mirror of
https://github.com/nextcloud/server.git
synced 2026-04-21 22:27:31 -04:00
Add authenicated user to person list for search filtering
As expected, a user does not see themselves in their contact list, however, when using the contact list for filtering search, a user, might want to limit the search to things that pertain to them. Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
This commit is contained in:
parent
527c51a18e
commit
c0374c79d7
2 changed files with 19 additions and 3 deletions
|
|
@ -22,6 +22,7 @@
|
|||
|
||||
import { generateOcsUrl, generateUrl } from '@nextcloud/router'
|
||||
import axios from '@nextcloud/axios'
|
||||
import { getCurrentUser } from '@nextcloud/auth'
|
||||
|
||||
/**
|
||||
* Create a cancel token
|
||||
|
|
@ -103,5 +104,20 @@ export async function getContacts({ searchTerm }) {
|
|||
const { data: { contacts } } = await axios.post(generateUrl('/contactsmenu/contacts'), {
|
||||
filter: searchTerm,
|
||||
})
|
||||
/*
|
||||
* Add authenticated user to list of contacts for search filter
|
||||
* If authtenicated user is searching/filtering, do not add them to the list
|
||||
*/
|
||||
if (!searchTerm) {
|
||||
let authenticatedUser = getCurrentUser()
|
||||
authenticatedUser = {
|
||||
id: authenticatedUser.uid,
|
||||
fullName: 'Me',
|
||||
emailAddresses: [],
|
||||
}
|
||||
contacts.unshift(authenticatedUser)
|
||||
return contacts
|
||||
}
|
||||
|
||||
return contacts
|
||||
}
|
||||
|
|
|
|||
|
|
@ -194,7 +194,7 @@ export default {
|
|||
filteredProviders: [],
|
||||
searching: false,
|
||||
searchQuery: '',
|
||||
placesFilter: '',
|
||||
placessearchTerm: '',
|
||||
dateTimeFilter: null,
|
||||
filters: [],
|
||||
results: [],
|
||||
|
|
@ -244,7 +244,7 @@ export default {
|
|||
this.providers = providers
|
||||
console.debug('Search providers', this.providers)
|
||||
})
|
||||
getContacts({ filter: '' }).then((contacts) => {
|
||||
getContacts({ searchTerm: '' }).then((contacts) => {
|
||||
this.contacts = this.mapContacts(contacts)
|
||||
console.debug('Contacts', this.contacts)
|
||||
})
|
||||
|
|
@ -364,7 +364,7 @@ export default {
|
|||
})
|
||||
},
|
||||
filterContacts(query) {
|
||||
getContacts({ filter: query }).then((contacts) => {
|
||||
getContacts({ searchTerm: query }).then((contacts) => {
|
||||
this.contacts = this.mapContacts(contacts)
|
||||
console.debug(`Contacts filtered by ${query}`, this.contacts)
|
||||
})
|
||||
|
|
|
|||
Loading…
Reference in a new issue