/*swiftype search */ var apiUrlTitle = "https://search-api.swiftype.com/api/v1/public/engines/search.json"; var engineKey = "pMxAEbPhCoGx5F_NENWd"; var maxPageSize = 10; var currentPageNum = 1; var strkeyWord = ""; var resultQuery = ""; var resultTotalResultCnt = 0; var resultPageNum = 0; $(document).ready(function() { /* input string checking */ showWaiting(); var qu = "qu"; strkeyWord = getQueryVariable(qu); $("#searchinput").val(strkeyWord); if (strkeyWord==null || strkeyWord=="") { stopWaiting() var description = "Enter keyword(s) to search for information on the ANZ website." $("#site-searchresultsum").html(description); } else { var o = "o"; var recordCountFind = getQueryVariable(o); if (recordCountFind==null || recordCountFind=="") { currentPageNum = 1; } else { var recordCnt = parseInt(recordCountFind, 10); currentPageNum = (recordCnt + 10)/10; } swiftypeSearch(); }; }); function swiftypeSearch() { /* extract one page from swiftype engine API */ var parameters = { q: strkeyWord, engine_key: engineKey, per_page: maxPageSize, page: currentPageNum, filters: {"page": {"site-section": "unitedarabemirates"}} }; $.get(apiUrlTitle, parameters, function(data){onSearchCallback(data)}) .fail(function (error) { stopWaiting() var description = "Error: Sorry, We're currently having problems with our site search. Please try again later." $("#site-searchresultsum").html(description); }) }; function onSearchCallback (data) { resultPageNum = data.info.page.num_pages; resultTotalResultCnt = data.info.page.total_result_count; resultQuery = data.info.page.query; currentPageNum = data.info.page.current_page; var resultEachPageSize = data.record_count; /* remove loading image */ stopWaiting() if (resultTotalResultCnt == 0 || currentPageNum > resultPageNum) { var description = "Sorry! No results matching '" + resultQuery + "' were found." + "
" + "Please refine your search, by reviewing/changing keywords and ensuring that you have not made any spelling errors."; $("#site-searchresultsum").html(description); } else { searchResultPageSum(); searchResultPage(resultEachPageSize, data); searchResultNav(); } } function searchResultPageSum() { if (resultTotalResultCnt == 1) { var resultSummary = resultTotalResultCnt + " result"; $("#site-searchresultsum").html(resultSummary); } else { var resultSummary = resultTotalResultCnt + " results"; $("#site-searchresultsum").html(resultSummary); } } function searchResultPage(pageSize, data) { if($("#searchresult").length>0) { $("#searchresult").remove(); } var sr = document.createElement("div"); sr.setAttribute("id", "searchresult"); sr.className = "site-search_result"; $("#searchcontent").append(sr); for(i=0; i$&"); } title.innerHTML = titleString; $(header).append(title) var description = document.createElement("p"); description.className = "site-search_resultdescription"; description.setAttribute("id", "description"); var bodyString = data.records.page[i].body; if (bodyString == null || bodyString == "") { bodyString = ""; } else { var reBodyString = new RegExp(resultQuery, 'gi'); var bodyString = bodyString.replace(reBodyString, "$&"); } description.innerHTML = bodyString; $(srd).append(description); var url = document.createElement("cite"); url.className = "site-search_resulturl"; var urlDtl = document.createTextNode(data.records.page[i].url); url.appendChild(urlDtl); $(srd).append(url); } wordlimit("site-search_resulttitle", 100); wordlimit("site-search_resultdescription", 250); } function searchResultNav() { var nav = document.createElement("nav"); nav.setAttribute("id", "navigation"); nav.setAttribute("role", "navigation"); nav.className = "site-search_resultnav"; $("#searchresult").append(nav); var navUl = document.createElement("ul"); navUl.className = "nav_ul"; navUl.setAttribute("id", "navul"); $(nav).append(navUl); var navButtonPre = document.createElement("li"); navButtonPre.setAttribute("id", "navbuttonp"); navButtonPre.className = "nav_li"; if (currentPageNum == 1) { var previousButton = ""; } else { var previousButton = ""; } $(navUl).append(navButtonPre); $("#navbuttonp").html(previousButton); var navMain = document.createElement("li"); navMain.setAttribute("id", "navmain"); navMain.className = "site-search_resultnav_main nav_li"; var navMainDtl = "Page " + currentPageNum + " of " + resultPageNum; $(navUl).append(navMain); $("#navmain").html(navMainDtl); var navButtonNext = document.createElement("li"); navButtonNext.setAttribute("id", "navbuttonn"); navButtonNext.className = "nav_li"; if (currentPageNum == resultPageNum) { var nextButton = ""; } else { var nextButton = ""; } $(navUl).append(navButtonNext); $("#navbuttonn").html(nextButton); } function onSearchContent() { var resultSummary = " "; $("#site-searchresultsum").html(resultSummary); if($("#searchresult").length>0) { $("#searchresult").remove(); } showWaiting(); searchNewWord(); } function onKeywordEnter(event) { var x = event.which || event.keyCode; if (x == 13) { var resultSummary = " "; $("#site-searchresultsum").html(resultSummary); if($("#searchresult").length>0) { $("#searchresult").remove(); } showWaiting(); searchNewWord(); } } function previousPage() { var resultSummary = " "; $("#site-searchresultsum").html(resultSummary); if($("#searchresult").length>0) { $("#searchresult").remove(); } currentPageNum = currentPageNum - 1; showWaiting(); updateUrlCount(); swiftypeSearch(); } function nextPage() { var resultSummary = " "; $("#site-searchresultsum").html(resultSummary); if($("#searchresult").length>0) { $("#searchresult").remove(); } currentPageNum = currentPageNum + 1; showWaiting(); updateUrlCount(); swiftypeSearch(); } function searchNewWord() { strkeyWord = $("#searchinput").val(); var url = decodeURI(document.location.href); var qu = "qu"; var o = "o"; var recordCountFind = 0; var newUrlKeyword = resetUrl(url, qu, strkeyWord); var newUrlCount = resetUrl(newUrlKeyword, o, recordCountFind); var newUrl = encodeURI(newUrlCount); var stateObject = {}; var title = "update url"; history.pushState(stateObject, title, newUrl); if (strkeyWord==null || strkeyWord=="") { stopWaiting(); var description = "Enter keyword(s) to search for information on the ANZ website."; $("#site-searchresultsum").html(description); } else { currentPageNum = 1; swiftypeSearch(); } }; function updateUrlCount() { url = decodeURI(document.location.href); var recordCntStart = (currentPageNum - 1) * 10; var o = "o"; var newUrl = resetUrl(url, o, recordCntStart); var newUrl = encodeURI(newUrl); var stateObject = {}; var title = "update url"; history.pushState(stateObject, title, newUrl); }; function getQueryVariable(variable) { var query = decodeURI(window.location.search.substring(1)); var vars = query.split("&"); var checkResult = ""; for (var i=0;i wordlength) { cname[i].innerHTML = cname[i].innerHTML.substr(0, wordlength) + '...'; }       } } function showWaiting() { var loading = document.createElement("div"); loading.setAttribute("id", "loading"); loading.className = "loading"; $("#searchcontent").append(loading); var img = document.createElement("div"); img.setAttribute("id", "loadingimg"); img.className = "loading_wait"; $(loading).append(img); } function stopWaiting() { /* remove loading image*/ if($("#loading").length>0) { $("#loading").remove(); }; }