adding files of assets
This commit is contained in:
@@ -0,0 +1,92 @@
|
||||
"use strict";
|
||||
|
||||
// Class definition
|
||||
var KTDocsSearch = function() {
|
||||
// Private variables
|
||||
var element;
|
||||
var formElement;
|
||||
var mainElement;
|
||||
var resultsElement;
|
||||
var wrapperElement;
|
||||
var emptyElement;
|
||||
var searchObject;
|
||||
|
||||
// Private functions
|
||||
var processs = function(search) {
|
||||
var results = 0;
|
||||
|
||||
// Elements
|
||||
var searchable = [].slice.call(resultsElement.querySelectorAll('[data-kt-searchable="true"]'));
|
||||
|
||||
// Match elements
|
||||
searchable.map(function (element) {
|
||||
var query = searchObject.getQuery();
|
||||
|
||||
if (element.innerText.toLowerCase().indexOf(query.toLowerCase()) !== -1) {
|
||||
element.classList.remove('d-none');
|
||||
results++;
|
||||
} else {
|
||||
element.classList.add('d-none');
|
||||
}
|
||||
});
|
||||
|
||||
// Hide recently viewed
|
||||
mainElement.classList.add('d-none');
|
||||
|
||||
if (results === 0) {
|
||||
// Hide results
|
||||
resultsElement.classList.add('d-none');
|
||||
// Show empty message
|
||||
emptyElement.classList.remove('d-none');
|
||||
} else {
|
||||
// Show results
|
||||
resultsElement.classList.remove('d-none');
|
||||
// Hide empty message
|
||||
emptyElement.classList.add('d-none');
|
||||
}
|
||||
|
||||
// Complete search
|
||||
search.complete();
|
||||
}
|
||||
|
||||
var clear = function(search) {
|
||||
// Show recently viewed
|
||||
mainElement.classList.remove('d-none');
|
||||
// Hide results
|
||||
resultsElement.classList.add('d-none');
|
||||
// Hide empty message
|
||||
emptyElement.classList.add('d-none');
|
||||
}
|
||||
|
||||
// Public methods
|
||||
return {
|
||||
init: function() {
|
||||
// Elements
|
||||
element = document.querySelector('#kt_docs_search');
|
||||
|
||||
if (!element) {
|
||||
return;
|
||||
}
|
||||
|
||||
wrapperElement = element.querySelector('[data-kt-search-element="wrapper"]');
|
||||
formElement = element.querySelector('[data-kt-search-element="form"]');
|
||||
mainElement = element.querySelector('[data-kt-search-element="main"]');
|
||||
resultsElement = element.querySelector('[data-kt-search-element="results"]');
|
||||
emptyElement = element.querySelector('[data-kt-search-element="empty"]');
|
||||
|
||||
// Initialize search handler
|
||||
searchObject = new KTSearch(element);
|
||||
|
||||
// Search handler
|
||||
searchObject.on('kt.search.process', processs);
|
||||
|
||||
// Clear handler
|
||||
searchObject.on('kt.search.clear', clear);
|
||||
}
|
||||
};
|
||||
}();
|
||||
|
||||
// On document ready
|
||||
KTUtil.onDOMContentLoaded(function() {
|
||||
KTDocsSearch.init();
|
||||
});
|
||||
Reference in New Issue
Block a user