function quickSearchController(){var n=this,t="",i,r,u,f,e,o,s,h,c,l,a;this.init=function(t,i,r,u,f){n.parentControl=t,n.moduleID=i,n.searchKeyword=$(t).find(".searchInput"),n.dynamicResults=$(t).find(".dynamic-results"),n.dynamicResultsMask=$(t).find(".dynamic-results-mask"),n.dynamicResultsInner=$(t).find(".dynamic-results-inner"),n.dynamicResultsLinks=$(t).find(".dynamic-results-links"),n.searchDelay=u,n.minCharInput=r,n.maxItems=f,n.initPageEvents()},this.keyup=function(t){(t.keyCode>="48"&&t.keyCode<="90"||t.keyCode=="8"||t.keyCode=="46"||t.keyCode=="13")&&(window.clearTimeout(n.timer),n.searchKeyword.val().length>=n.minCharInput&&t.keyCode!="13"&&n.startTimer())},this.startTimer=function(){n.timer=window.setTimeout(function(){n.loadResults()},n.searchDelay)},this.initPageEvents=function(){n.searchKeyword.bind("keyup",n.keyup),$(n.parentControl).find("#close-results").bind("click",n.hideResults)},this.getSearchData=function(){return{moduleID:n.moduleID,keywords:n.searchKeyword.val(),maxItems:n.maxItems}},this.loadResults=function(){var t="/WebServices/InternalLookupServices.asmx/GetModuleSearchResult",i=n.getSearchData();n.dynamicResultsInner.hide(),n.dynamicResultsInner.css("height","auto"),n.dynamicResultsInner.html(""),n.dynamicResults.show(),n.dynamicResultsMask.show(),validation.callValidatingJsonReturnValueService(t,"GET",i,n.presentData,n.displayInfo,null,n.displayError)},this.presentData=function(t){var u=t,i,r,f,e;if(n.dynamicResultsMask.hide(),u.Results.length==0)n.dynamicResultsInner.html("
No results found<\/p>"),n.dynamicResultsInner.show();else{for(i="
Info: "+t+"<\/p>"),n.dynamicResultsInner.show()},this.displayError=function(t){n.dynamicResultsMask.hide(),n.dynamicResultsInner.html("
Error: "+t+"<\/p>"),n.dynamicResultsInner.show()}}var validation={resetValidation:function(){$("[data-validation-key]").removeClass("invalid"),$("[data-validation-message]").removeClass("validationMessageVisible").addClass("validationMessageHidden")},presentValidationErrors:function(n){if(validation.resetValidation(),n){var t=n.getUniqueArrayFromProperty("Key");$(t).each(function(t,i){$('[data-validation-key="'+i+'"]').addClass("invalid");var u=n.where(function(n){return n.Key==i}).select(function(n){return n}),r="