Merge pull request #13544 from MrPetovan/bug/13542-frio-circle-search

[frio] Add search in contact address to filter circle member list
This commit is contained in:
Michael Vogel 2023-10-15 08:03:50 +02:00 committed by GitHub
commit a5fb1e53a9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -66,20 +66,14 @@ function switchCircleViewMode(elm) {
* @returns {undefined} * @returns {undefined}
*/ */
function filterList() { function filterList() {
// Declare variables const search = document.getElementById("contacts-search").value.toUpperCase();
var input, filter, ul, li, a, i; const li = document.querySelectorAll("#contact-circle-list>li");
input = document.getElementById("contacts-search");
filter = input.value.toUpperCase();
li = document.querySelectorAll("#contact-circle-list>li");
// Loop through all list items, and hide those who don't match the search query for (let i = 0; i < li.length; i++) {
for (i = 0; i < li.length; i++) { let foundInDisplayName = li[i].getElementsByClassName("media-heading")[0].firstChild.textContent.toUpperCase().indexOf(search) > -1;
// Get the heading element let foundInAddr = li[i].getElementsByClassName("contact-entry-url")[0].textContent.toUpperCase().indexOf(search) > -1;
var mh = li[i].getElementsByClassName("media-heading")[0];
// The first child of the heading element should contain if (foundInDisplayName || foundInAddr) {
// the text which we want to filter
a = mh.firstChild;
if (a.innerHTML.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = ""; li[i].style.display = "";
} else { } else {
li[i].style.display = "none"; li[i].style.display = "none";