///
addLoader();
$(document).ready(function () {
var keywords = $.urlParam("keywords");
if (keywords != null) {
keywords = keywords.replace(/\/g, ""); //for >
}
var category = $.urlParam("category");
var searchJSON;
var isLoading = false;
var nextPage = apiDomain + "/api/search/index?language=" + htmlLang + "&keywords=" + keywords + '&category=' + category;
var searchItem = $('script[data-template="searchItem"]').text().split(/\$\{(.+?)\}/g);
getJsonCards(nextPage);
//load more news
$('.loadMoreButton').click(function () {
addLoader();
$('.search__more').addClass('hidden');
getJsonCards(nextPage);
});
// get cards via JSON
function getJsonCards(currentPage) {
if (!isLoading) {
isLoading = true;
$.ajax({
url: currentPage
}).done(function (data) {
// get data
searchJSON = data.results;
if (searchJSON == null) {
$('.loader').remove();
$('.result_not_found').addClass('active');
}
else {
nextPage = data._metadata.next;
totalItemCount = data._metadata.total_count;
$('.search__result__numbers span').eq(1).text(totalItemCount);
if (totalItemCount > 0) {
$('.search__result__numbers').show();
}
else {
$('.search__result__numbers').hide();
}
$('.search__results__list').append(searchJSON.map(function (item, index) {
return searchItem.map(render(item)).join('');
}));
loadJSONCards({
cardsToDisplay: 10,
cardClass: 'search__results__list__item',
loadMoreButtonClass: 'search__more',
cardParent: 'search__results__list',
totalCards: totalItemCount
});
setTimeout(function () {
var showing = $('.search__results__list__item').length;
$('.search__result__numbers span').eq(0).text(showing);
}, 200);
templateReplaceAttribute();
isLoading = false;
}
});
}
}
// show keyword on input
if (keywords != null) {
var replaced = keywords.split('+').join(' ');
$('.search_inner input').val(replaced);
}
// let searchQuery = $.urlParam("searchField");
// let replaced = searchQuery.split('+').join(' ');
// $('.search_inner input').val(replaced);
//
// // set category from url para to selected
// let searchQueryCategory = $.urlParam("category");
// let replacedCategory = searchQueryCategory.split('+').join(' ');
// $.each($('.search .m-form__dropdown li li'), function(index:any){
// var text = $(this).text();
// if($(this).text() == replacedCategory){
// // set placeholder
// $(this).parents('.custom-dropdown').parent().find('span').text(text);
// // set value
// $(this).parents('.custom-dropdown').parent().find('input').val(text);
// // set selected
// $(this).addClass('selected');
// }
// })
});
function addLoader() {
var loaderHtml = '
';
$(loaderHtml).appendTo($(".search__results__list"));
}
$.urlParam = function (name) {
var results = new RegExp('[\?&]' + name + '=([^]*)').exec(window.location.href);
if (results == null) {
return null;
}
else {
return decodeURI(results[1]) || 0;
}
};