You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

53 lines
1.4 KiB

var Search = {
timer : null,
init : function() {
document.querySelector('input[name=keyword]').focus();
},
roster : function(key) {
var selector_clear = '#search > #roster > li.found';
var subheader = document.querySelector('#search > #roster > li.subheader');
document.querySelectorAll(selector_clear)
.forEach(item => item.classList.remove('found'));
if(key == '') return;
var founds = document.querySelectorAll(
'#search > #roster > li[name*="' + MovimUtils.cleanupId(key).slice(3) + '"]'
)
if(founds.length > 0) {
subheader.classList.add('found');
founds.forEach(item => item.classList.add('found'));
} else if(subheader) {
subheader.classList.remove('found');
}
},
searchSomething : function(value) {
clearTimeout(Search.timer);
if(value !== '') {
document.querySelector('#searchbar span.primary i').className = 'zmdi zmdi-rotate-right zmdi-hc-spin';
}
Search.timer = setTimeout(() => {
Search_ajaxSearch(value);
Search.roster(value);
},
700);
},
searchClear : function() {
document.querySelector('#searchbar span.primary i').className = 'zmdi zmdi-search';
}
}
document.addEventListener('keydown', function(e) {
if (e.keyCode == 77 && e.ctrlKey) {
Search_ajaxRequest();
}
});