Use lookup by default

Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
This commit is contained in:
John Molakvoæ (skjnldsv) 2019-12-03 13:42:40 +01:00 committed by Roeland Jago Douma
parent 5e14b299bc
commit 9b82225966
No known key found for this signature in database
GPG Key ID: F941078878347C0C
3 changed files with 20 additions and 7 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -23,6 +23,7 @@
<template> <template>
<Multiselect ref="multiselect" <Multiselect ref="multiselect"
class="sharing-input" class="sharing-input"
:clear-on-select="false"
:disabled="!canReshare" :disabled="!canReshare"
:hide-selected="true" :hide-selected="true"
:internal-search="false" :internal-search="false"
@ -176,10 +177,12 @@ export default {
* @param {string} search the search query * @param {string} search the search query
* @param {boolean} [lookup=false] search on lookup server * @param {boolean} [lookup=false] search on lookup server
*/ */
async getSuggestions(search, lookup) { async getSuggestions(search, lookup = false) {
this.loading = true this.loading = true
lookup = lookup || false
console.info(search, lookup) if (OC.getCapabilities().files_sharing.sharee.query_lookup_default === true) {
lookup = true
}
const request = await axios.get(generateOcsUrl('apps/files_sharing/api/v1') + 'sharees', { const request = await axios.get(generateOcsUrl('apps/files_sharing/api/v1') + 'sharees', {
params: { params: {
@ -215,8 +218,9 @@ export default {
.sort((a, b) => a.shareType - b.shareType) .sort((a, b) => a.shareType - b.shareType)
// lookup clickable entry // lookup clickable entry
// show if enabled and not already requested
const lookupEntry = [] const lookupEntry = []
if (data.lookupEnabled) { if (data.lookupEnabled && !lookup) {
lookupEntry.push({ lookupEntry.push({
isNoUser: true, isNoUser: true,
displayName: t('files_sharing', 'Search globally'), displayName: t('files_sharing', 'Search globally'),
@ -388,9 +392,18 @@ export default {
*/ */
async addShare(value) { async addShare(value) {
if (value.lookup) { if (value.lookup) {
return this.getSuggestions(this.query, true) await this.getSuggestions(this.query, true)
// focus the input again
this.$nextTick(() => {
this.$refs.multiselect.$el.querySelector('.multiselect__input').focus()
})
return true
} }
// TODO: reset the search string when done
// https://github.com/shentao/vue-multiselect/issues/633
// handle externalResults from OCA.Sharing.ShareSearch // handle externalResults from OCA.Sharing.ShareSearch
if (value.handler) { if (value.handler) {
const share = await value.handler(this) const share = await value.handler(this)