diff --git a/functions.js b/functions.js index 0ac603ecb30fc06bd1854ce7c3970fbc4663aae1..460559e00d21a1231e6417cfb55609b66a365aaf 100644 --- a/functions.js +++ b/functions.js @@ -33,9 +33,11 @@ function applyfilter() { if (oFilter) { var q = document.getElementById('filter').value; var aQ = q.split(" "); + var iElements = document.getElementsByClassName('idp').length; + var iShown=0; // reduce boxes based on filter using AND condition - for (var i = 0; i < document.getElementsByClassName('idp').length; i++) { + for (var i = 0; i < iElements; i++) { var idp = document.getElementsByClassName('idp')[i]; var bShow = true; @@ -48,7 +50,7 @@ function applyfilter() { } } idp.className = bShow ? 'idp' : 'idp hide'; - document.getElementById('resetfilter').style.display = (q > "") ? 'inline' : 'none'; + iShown += bShow ? 1 : 0; } var aBtns = document.getElementsByClassName('filterbutton'); @@ -56,7 +58,7 @@ function applyfilter() { var bMarked = false; for (var iPart = 0; iPart < aQ.length; iPart++) { var qPart = aQ[iPart]; - var id2search = 'filterbtn-dot-' + qPart.replace(/^./, ''); + var id2search = 'filterbtn-dot-' + qPart.replace(/^#/, ''); var qPart = aQ[iPart]; if (aBtns[i].id == id2search) { bMarked = true; @@ -66,6 +68,16 @@ function applyfilter() { aBtns[i].className = bMarked ? 'filterbutton active' : 'filterbutton'; } + var sCounter=(iShown<iElements) + ? ( + iShown==0 + ? t('filter-none') + : t('filter-visible') + ': <strong>' + iShown+'</strong> / '+iElements + ) + : t('filter-total') +': <strong>'+ iElements + '</strong>'; + + document.getElementById('filterCounter').innerHTML = sCounter; + document.getElementById('resetfilter').style.visibility = (q > '' ? '' : 'hidden'); document.getElementById('filter').focus(); localStorage.setItem(sLsvar, q); }; @@ -99,13 +111,13 @@ function showFilterBox() { q = ''; } - oFilter.style.display = 'block'; - - oFilter.innerHTML = '' - // + t('filter-idps-label') + '<br>' - + '<input type="text" id="filter" placeholder="'+t('filter-idps-placeholder')+'" onchange="applyfilter()" onkeydown="applyfilter()" onkeyup="applyfilter()" value=""/>' - + '<a href="#" id="resetfilter" onclick="resetFilter(); return false;" title="'+t('resetfilter-title')+'"> X </a><br>' - ; + // oFilter.innerHTML = '' + // // + t('filter-idps-label') + '<br>'MAXRECORDS + // + '<input type="text" id="filter" placeholder="'+t('filter-idps-placeholder')+'" onchange="applyfilter()" onkeydown="applyfilter()" onkeyup="applyfilter()" value=""/>' + // + '<a href="#" id="resetfilter" onclick="resetFilter(); return false;" title="'+t('resetfilter-title')+'"> X </a>' + // + '<span id="filterCounter"></span>' + // +'<br>' + // ; setFilter(q); for (var i = 0; i < document.getElementsByClassName('idp').length; i++) {