Case Studies
-
'); } if(i == searchSuggestLength){ break; } } if (autoCompleteData.length) { $(themeSuggestedSearchId).append(''); A.one(themeSearchViewAll).on('click',function(){ validateAndSubmitSearch(); }); } for(var i = 0; i 0) { $(searchInputId).val(''); $(searchInputId).focus(); $(themeSuggestedSearchId).empty(); $(themeSuggestedSearchId).hide(); $(".popular-searches").show(); $('.search-field.web-search ~ .btn-close-history i').attr("class", "icon ico-clock-3-line"); $('.search-field.web-search ~ .btn-search i').attr("class", "icon ico-search"); $(themeRecentSearchButton).css("color", "silver"); } else { setTimeout(function() { recentSearchLists(); }, 300); } } $(themeDesktopSearchBtnCloseHistory).on('click',function(){ initialRecentSearchClick(); }); $(searchInputId).keypress(function(e) { var searchKeyword=$(searchInputId).val(); if(e.which == 13) { if(validateSearchKeyword(searchKeyword)){ // addSearchHistory(searchKeyword); var redirectUrl=resultsPageFullUrl+'&'+resultsPortletNameSpace+searchQueryParamUrl+'='+encodeURIComponent(searchKeyword); window.location.href = redirectUrl; } } }); function routeToResults(event){ var searchKeyword=event.data.searchKey; var actionType=event.data.actionType; matomoSearchList(actionType,searchKeyword); var searchKeywordLength=searchKeyword.length; var redirectUrl=resultsPageFullUrl+'&'+resultsPortletNameSpace+searchQueryParamUrl+'='+encodeURIComponent(searchKeyword); window.location.href = redirectUrl; } function validateAndSubmitSearch() { var searchKeyword=$(searchInputId).val(); if(validateSearchKeyword(searchKeyword)){ // addSearchHistory(searchKeyword); var redirectUrl=resultsPageFullUrl+'&'+resultsPortletNameSpace+searchQueryParamUrl+'='+encodeURIComponent(searchKeyword); window.location.href = redirectUrl; } } if($(themeSearchIconSubmitId).length){ A.one(themeSearchIconSubmitId).on('click',function(){ validateAndSubmitSearch(); }); } function recentSearchLogic(){ setTimeout(function() { recentSearchLists(); }, 300); $(themeSuggestedSearchId).empty(); $(themeSuggestedSearchId).hide(); $(".popular-searches").show(); $(themeRecentSearchId).show(); } function suggestSearchLogic(){ $(themeRecentSearchId).empty(); /*$(themeRecentSearchId).hide();*/ hideSearchHistory(); /* $(themeSuggestedSearchId).show(); */ setTimeout(function() { suggestSearchLists(); }, 300); } /* Adding the history item while the user stops typing */ var typingTimer; //timer identifier var doneTypingInterval = 500; //time in ms, 500 ms //on keyup, start the countdown $(searchInputId).on('keyup', function () { clearTimeout(typingTimer); typingTimer = setTimeout(doneTyping, doneTypingInterval); }); //on keydown, clear the countdown $(searchInputId).on('keydown', function () { clearTimeout(typingTimer); }); function doneTyping() { console.log("inside done typing in search",$(searchInputId).val()); if($(searchInputId).val().length>=minQueryLenght){ addSearchHistory($(searchInputId).val()); } } /* END of the history item while the user stops typing */ $('html').not(".search .dropdown-menu.show").click(function() { $(themeRecentSearchId).hide(); $(themeSuggestedSearchId).hide(); $(themeRecentSearchId).empty(); $(themeSuggestedSearchId).empty(); $(searchInputId).val(''); $(".popular-searches").show(); }); $("#searchMenuButton").on("click",function() { $(themeRecentSearchId).hide(); $(themeSuggestedSearchId).hide(); $(themeSuggestedSearchId).empty(); $(searchInputId).val(''); $(".popular-searches").show(); }); $(searchInputId).on('paste', function(e) { var copied = ""; if (isIE()) { copied = window.clipboardData.getData('text'); } else { copied = e.originalEvent.clipboardData.getData('text/plain'); } var searchCopyLength=copied.length; if(searchCopyLength >= minQueryLenght){ suggestSearchLogic(); } }); function isIE() { var ua = window.navigator.userAgent; return ua.indexOf('MSIE ') > 0 || ua.indexOf('Trident/') > 0 || ua.indexOf('Edge/') > 0 } /* A.one(themeSearchIconClose).on('click',function(){ $(themeRecentSearchId).hide(); $(themeSuggestedSearchId).hide(); $(themeRecentSearchId).empty(); $(themeSuggestedSearchId).empty(); $(searchInputId).val(''); }); */ window.cutEventSearches = function(){ var searchKeyword=$(searchInputId).val(); var searchKeywordLength=searchKeyword.length; if(searchKeywordLength >= minQueryLenght){ suggestSearchLogic(); } } $(searchInputId).on('keyup', function(e) { var searchKeyword=$(searchInputId).val(); var searchKeywordLength=searchKeyword.length; if(searchKeywordLength >= minQueryLenght){ suggestSearchLogic(); } else { $(themeSuggestedSearchId).hide(); $(".popular-searches").show(); } }); var userRecentSearches = getSearchHistory(); var userRecentSearchesKey = 'q'; var themeRecentSearchButton = "#nav-bar .nav-bar-inner .header-navigation ul.header-menu li .search .dropdown-menu .search-group .btn-close-history .icon"; var themeRecentSearchId = "#recent-results"; var searchInputId="#search-input-field"; function addSearchHistory(searchKeyword) { console.log("DEBUG addSearchHistory userRecentSearches before:: ", userRecentSearches); console.log("searchKeyword before adding to history",searchKeyword); var searchKeywordVar = searchKeyword; if(searchKeywordVar){ console.log("inside if searchKeywordVar",searchKeywordVar); for( var i = userRecentSearches.length-1; i>=0; i--){ if(userRecentSearches[i] ===searchKeywordVar){ console.log("userRecentSearches[i]:searchKeywordVar: ", userRecentSearches[i],searchKeywordVar); userRecentSearches.splice(i,1); } } userRecentSearches.push(searchKeyword); localStorage.setItem(userRecentSearchesKey, JSON.stringify(userRecentSearches)); console.log("DEBUG addSearchHistory userRecentSearches after:: ", searchKeyword,userRecentSearches); } } function hideSearchHistory() { $(themeRecentSearchId).hide(); $(themeRecentSearchButton).css('color', 'silver'); if($(searchInputId).val().length userRecentSearches.indexOf(value) != index); // end of adding it console.log("After removing duplicates",userRecentSearches); if (userRecentSearches == null) { userRecentSearches = []; } else if (userRecentSearches.length) { console.log("setting search history to existing local storage..."); for (var i = 0; i