usingNamespace("Biz.Product")["ConfiguratorTools"]={Form:"ProductConfiguratorTools",SubmitForm:"SubmitProductConfiguratorTools",ViewType:Sys.Enum.create("Guiding","Searching"),QueryType:Sys.Enum.create("Platform","Brand","FirstProperty","SecondProperty","Model","Keywords","Undefined"),MessageType:Sys.Enum.create("Loading","NoData","NetworkError","NotSupport"),output:Web.Enum.Network.Request.Output.JSON,url:Web.UI.ResourceManager.Url.www("Common/Ajax/ProductConfiguratorRequest.aspx"),EndecaValue:{BASE_DIMENSION:2000,DIMENSION_SEED:10000000},request:null,cacheData:{"Guiding":null,"Searching":null},GuidingNoData:false,SearchingNoData:false,getQueryType:function(qtpv){return Sys.Enum.parse(Biz.Product.ConfiguratorTools.QueryType,qtpv);},currentView:"Guiding",switchView:function(vtpv){var bpc=Biz.Product.ConfiguratorTools;var vte=bpc.ViewType;var vtpe=Sys.Enum.parse(vte,vtpv);var cvtpe=Sys.Enum.parse(vte,bpc.currentView);if(vtpe!=cvtpe){bpc.switchViewBase($(vtpe+"_Tab"),$(vtpe+"_Content"),true);bpc.switchViewBase($(cvtpe+"_Tab"),$(cvtpe+"_Content"),false);bpc.currentView=vtpe;bpc.activeSearch();if(cvtpe == vte.Guiding){bpc.displayMessage(bpc.MessageType.NoData,bpc.SearchingNoData);}else{bpc.displayMessage(bpc.MessageType.NoData,bpc.GuidingNoData);};}else{if(cvtpe == vte.Guiding){bpc.displayMessage(bpc.MessageType.NoData,bpc.GuidingNoData);}else{bpc.displayMessage(bpc.MessageType.NoData,bpc.SearchingNoData);};}},switchViewBase:function(ot,oc,on){if (!(ot&&oc)){return;}var wuc=Web.UI.Control;var len=ot.src.length;var src;if (on){src=ot.src.substring(0,len-7)+"on.gif";}else{src=ot.src.substring(0,len-6)+"off.gif";};wuc.setAttribute(ot,{"src":src});wuc.setAttribute(oc,{"style.display":(on?"block":"none")});},clear:function(vt,qt,rt){var wuc=Web.UI.Control;if(rt){wuc.replaceInnerHTML($(vt+"_"+qt+"_title_box"),"");};wuc.replaceInnerHTML($(vt+"_"+qt+"_dropdownlist"),"");if($(vt+"_"+qt+"_dropdownlist")){$(vt+"_"+qt+"_dropdownlist").disabled=true;}},resetAll:function(){var bpc=Biz.Product.ConfiguratorTools;var vtp=bpc.ViewType;var wuf=Web.UI.Form;if(!String.isNullOrEmpty(wuf.getValue(bpc.SubmitForm,"IsHistoryBack"))){bpc.reset(vtp.Guiding);bpc.reset(vtp.Searching);}},reset:function(vtpv){var bpc=Biz.Product.ConfiguratorTools;var qte=bpc.QueryType;var wuf=Web.UI.Form;var wuc=Web.UI.Control;wuc.setAttribute($("Search_submit_button_disabled"),{"style.display":"inline"});wuc.setAttribute($("Search_submit_button_enabled"),{"style.display":"none"});wuf.setValue(bpc.SubmitForm,"IsHistoryBack","");wuf.selectedOptions(bpc.Form,vtpv+"_"+qte.Platform,-1);if(vtpv==bpc.ViewType.Searching){wuf.setValue(bpc.Form,vtpv+"_"+qte.Keywords,"");wuc.setAttribute($("Query_submit_button_disabled"),{"style.display":"inline"});wuc.setAttribute($("Query_submit_button_enabled"),{"style.display":"none"});}else{bpc.clear(vtpv,qte.Brand);bpc.clear(vtpv,qte.FirstProperty,true);bpc.clear(vtpv,qte.SecondProperty,true);};bpc.clear(vtpv,qte.Model);bpc.displayMessage(bpc.MessageType.NoData,false);bpc.displayMessage(bpc.MessageType.NetworkError,false);bpc.displayMessage(bpc.MessageType.NotSupport,false);},submit:function(qtpv){var bpc=Biz.Product.ConfiguratorTools;var vtpv=bpc.currentView;var qte=bpc.QueryType;var msp=bpc.MessageType;var querytype=bpc.getQueryType(qtpv);var wuf=Web.UI.Form;var wuc=Web.UI.Control;wuc.setAttribute($("Search_submit_button_disabled"),{"style.display":"inline"});wuc.setAttribute($("Search_submit_button_enabled"),{"style.display":"none"});if(!Web.Environment.Browser.isAjaxable()){bpc.displayMessage(msp.NotSupport,false);return;};bpc.displayMessage(msp.Loading,false);var ajaxquery=false;switch(querytype){case qte.Brand:case qte.FirstProperty:ajaxquery=true;case qte.Model:if(vtpv==bpc.ViewType.Searching){ajaxquery=true;};};bpc.displayMessage(msp.NoData,false);if(ajaxquery){bpc.query(qtpv);}else{bpc.filter(qtpv);};},filter:function(qtpv){var bpc=Biz.Product.ConfiguratorTools;var querytype=bpc.getQueryType(qtpv);var vtpv=String(bpc.currentView);var qte=bpc.QueryType;var wuf=Web.UI.Form;var wuc=Web.UI.Control;var prpName;var prpValue;switch(querytype){case qte.SecondProperty:prpName="firstPropertyValueId";prpValue=Number.parse(wuf.getValue(bpc.Form,vtpv+"_"+qte.FirstProperty));bpc.fetchModel(prpValue,prpName,"secondProperty");bpc.fetchModel(prpValue,prpName,"model");if(prpValue==-1){wuc.setAttribute($("Guiding_SecondProperty_dropdownlist"),{"disabled":"true"})};break;case qte.Model:prpName="secondPropertyValueId";prpValue=Number.parse(wuf.getValue(bpc.Form,vtpv+"_"+qte.SecondProperty));if(prpValue==-1){prpName="firstPropertyValueId";prpValue=wuf.getValue(bpc.Form,vtpv+"_"+qte.FirstProperty);bpc.fetchModel(prpValue,prpName,"model");}else{var prpNameOne=	"firstPropertyValueId";var prpValueOne=wuf.getValue(bpc.Form,vtpv+"_"+qte.FirstProperty);var o=Object.clone(bpc.cacheData[bpc.currentView].newegg.model);if(prpValue!=-1 && prpValueOne!=-1){var tmp=[];for(var i=0;i<o.items.length;++i){if(o.items[i][prpName]==prpValue && o.items[i][prpNameOne]==prpValueOne){tmp.add(o.items[i]);};};o.items.clear();o.items.addRange(tmp);};bpc.fetchHtml(o);};break;};},fetchModel:function(prpValue,prpName,dataName){var bpc=Biz.Product.ConfiguratorTools;prpValue=Number.parse(prpValue);var o=Object.clone(bpc.cacheData[bpc.currentView].newegg[dataName]);if(prpValue!=-1){var tmp=[];for(var i=0;i<o.items.length;++i){if(prpName=="firstPropertyValueId"){if(o.items[i][prpName].contains(prpValue)){tmp.add(o.items[i]);};}else{if(o.items[i][prpName]==prpValue){tmp.add(o.items[i]);};};};o.items.clear();o.items.addRange(tmp);};bpc.fetchHtml(o);},query:function(qtpv){var bpc=Biz.Product.ConfiguratorTools;var vtpv=String(bpc.currentView);var qte=bpc.QueryType;var wuc=Web.UI.Control;var wuf=Web.UI.Form;var querytype=bpc.getQueryType(qtpv);var wnr=Web.Enum.Network.Request;var plfv=wuf.getValue(bpc.Form,vtpv+"_"+qte.Platform);var brdv=wuf.getValue(bpc.Form,vtpv+"_"+qte.Brand);var fppv=wuf.getValue(bpc.Form,vtpv+"_"+qte.FirstProperty);var sppv=wuf.getValue(bpc.Form,vtpv+"_"+qte.SecondProperty);var kwdv=wuf.getValue(bpc.Form,vtpv+"_"+qte.Keywords);if(querytype==qte.Brand&&plfv==-1){bpc.reset(vtpv);return;};if(querytype==qte.FirstProperty&&brdv==-1){bpc.clear(vtpv,qte.FirstProperty,true);bpc.clear(vtpv,qte.SecondProperty,true);bpc.clear(vtpv,qte.Model);return;};bpc.displayMessage(bpc.MessageType.Loading,true);if(vtpv==bpc.ViewType.Guiding){if(querytype==qte.Brand){wuc.replaceInnerHTML($(vtpv+"_Brand_dropdownlist"),"");$(vtpv+"_Brand_dropdownlist").disabled=true;};wuc.replaceInnerHTML($(vtpv+"_FirstProperty_title_box"),"");wuc.replaceInnerHTML($(vtpv+"_FirstProperty_dropdownlist"),"");$(vtpv+"_FirstProperty_dropdownlist").disabled=true;wuc.replaceInnerHTML($(vtpv+"_SecondProperty_title_box"),"");wuc.replaceInnerHTML($(vtpv+"_SecondProperty_dropdownlist"),"");if($(vtpv+"_SecondProperty_dropdownlist")){$(vtpv+"_SecondProperty_dropdownlist").disabled=true;}};wuc.replaceInnerHTML($(vtpv+"_Model_dropdownlist"),"");var qsb=new Web.QueryStringBuilder();qsb.add("plf",plfv);qsb.add("brd",brdv);qsb.add("fpp",fppv);qsb.add("spp",sppv);qsb.add("kwd",kwdv);qsb.add("qtp",qtpv);qsb.add("vtp",bpc.currentView);qsb.add("output",bpc.output);bpc.abort();bpc.request=Web.Network.createRequest(wnr.Type.XML,bpc.url+"?"+qsb.toString(),{output:bpc.output,querytype:querytype},bpc.fetch,wnr.Method.Get);bpc.request.execute();},abort:function(){var bpc=Biz.Product.ConfiguratorTools;if(bpc.request){bpc.request.abort();};},fetch:function(el,context){var bpc=Biz.Product.ConfiguratorTools;var msp=bpc.MessageType;if(Web.Utility.isRequestSucceeded(el)){var wnr=Web.Enum.Network.Request;var successful=false;switch(context.output){case wnr.Output.JSON:successful=bpc.fetchJSON(Object.fromJSON(el.responseText),context.querytype);break;case wnr.Output.XML:break;};}else{bpc.displayMessage(msp.NetworkError,true);};bpc.displayMessage(msp.Loading,false);},fetchJSON:function(o,querytype){var bpc=Biz.Product.ConfiguratorTools;var wuc=Web.UI.Control;bpc.cacheData[bpc.currentView]=o;for(var oo in o.newegg){bpc.fetchHtml(o.newegg[oo]);};if(bpc.currentView==bpc.ViewType.Guiding){wuc.setAttribute($("Guiding_SecondProperty_dropdownlist"),{"disabled":"true"});};return true;return false;},fetchHtml:function(o){if(!o){return;}var bpc=Biz.Product.ConfiguratorTools;var qte=bpc.QueryType;var wuc=Web.UI.Control;var vtpv=String.parse(bpc.currentView);var items=o.items;var action=Sys.Enum.parse(qte,o.action);var title=o.title.decodeHtml();var querytype=o.type;var qtpv=String.parse(querytype);var option=(title.length==0)?qtpv:title;var slcSize=(querytype==qte.Model)?' size="8"':'';if(!String.isNullOrEmpty(title)){wuc.replaceInnerHTML($(vtpv+"_"+qtpv+"_title_box"),title.encodeHtml()+":");};var sb=new Sys.Text.StringBuilder();sb.appendLine('<select name="'+vtpv+'_'+qtpv+'" id="'+vtpv+'_'+qtpv+'_dropdownlist"'+slcSize+'>');if(querytype!=qte.Model&&items.length>0){sb.appendLine('<option value="-1">Please choose a '+option.encodeHtml()+'</option>');};for(var i=0;i<items.length;++i){sb.appendLine('<option value="'+ items[i].value +'">'+ items[i].description +'</option>');};sb.appendLine('</select>');wuc.replaceInnerHTML($(vtpv+"_"+qtpv+"_dropdownlist_box"),sb.toString());if($(vtpv+"_"+qtpv+"_dropdownlist")){$(vtpv+"_"+qtpv+"_dropdownlist").disabled=(items.length==0);}if(items.length==0){if(querytype==qte.Model||querytype==qte.Brand){bpc.displayMessage(bpc.MessageType.NoData,true);};};if(action!=qte.Undefined){if($(vtpv+"_"+qtpv+"_dropdownlist")){$(vtpv+"_"+qtpv+"_dropdownlist").attachEvent("onchange",(function(){bpc.submit(action);}));}};if(querytype==qte.Model){if($(vtpv+"_"+qtpv+"_dropdownlist")){$(vtpv+"_"+qtpv+"_dropdownlist").attachEvent("onchange",(function(){bpc.activeSearch();}));}};},displayMessage:function(msgtype,showmsgflag){var bpc=Biz.Product.ConfiguratorTools;var mstp=bpc.MessageType;var sb=new Sys.Text.StringBuilder();var wuc=Web.UI.Control;var vtpv=String(bpc.currentView);var vte=bpc.ViewType;if(msgtype==mstp.Loading){wuc.setAttribute($(mstp.Loading+"_message_box"),{"style.display":"none"});}else{wuc.setAttribute($(mstp.NoData+"_message_box"),{"style.display":"none"});wuc.setAttribute($(mstp.NetworkError+"_message_box"),{"style.display":"none"});wuc.setAttribute($(mstp.NotSupport+"_message_box"),{"style.display":"none"});};if(showmsgflag){if(msgtype==mstp.Loading){wuc.setAttribute($(mstp.Loading+"_message_box"),{"style.display":"block"});}else{wuc.setAttribute($(msgtype+"_message_box"),{"style.display":"block"});};};if(msgtype == mstp.NoData){if(vtpv == vte.Guiding){bpc.GuidingNoData = showmsgflag;}else{bpc.SearchingNoData = showmsgflag;};};},activeQuery:function(){var bpc=Biz.Product.ConfiguratorTools;var vtpv=String(bpc.currentView);var qte=bpc.QueryType;var wuc=Web.UI.Control;var wuf=Web.UI.Form;var plfv=wuf.getValue(bpc.Form,vtpv+"_"+qte.Platform);var kwdv=wuf.getValue(bpc.Form,vtpv+"_"+qte.Keywords);var kwdv1="";var kwdv2="";if(!String.isNullOrEmpty(kwdv)){kwdv = kwdv.trim();if(kwdv.indexOf(" ")>0){kwdv1 = kwdv.substr(0,kwdv.indexOf(" "));kwdv2 = kwdv.substr(kwdv1.length);}else{kwdv1 = kwdv;kwdv2 = kwdv;};kwdv1=kwdv1.trim();kwdv2=kwdv2.trim();}var disabled;var enabled;if(plfv!=-1&&kwdv1.length>1&&kwdv2.length>1){enabled="inline";disabled="none";}else{enabled="none";disabled="inline";};wuc.setAttribute($("Query_submit_button_disabled"),{"style.display":disabled});wuc.setAttribute($("Query_submit_button_enabled"),{"style.display":enabled});if(enabled=="inline"){return true;}else{return false;};},submitQuery:function(){var bpc=Biz.Product.ConfiguratorTools;var kwsFlag=false;kwsFlag=bpc.activeQuery();if(kwsFlag){if(window.event.keyCode == 13){bpc.submit(Biz.Product.ConfiguratorTools.QueryType.Model);};};},activeSearch:function(){var bpc=Biz.Product.ConfiguratorTools;var vtpv=String(bpc.currentView);var qte=bpc.QueryType;var wuc=Web.UI.Control;var wuf=Web.UI.Form;var mdlv=wuf.getValue(bpc.Form,vtpv+"_"+qte.Model);var disabled;var enabled;if(mdlv.length>0){enabled="inline";disabled="none";}else{enabled="none";disabled="inline";};wuc.setAttribute($("Search_submit_button_disabled"),{"style.display":disabled});wuc.setAttribute($("Search_submit_button_enabled"),{"style.display":enabled});},search:function(){var bpc=Biz.Product.ConfiguratorTools;var vtpv=String(bpc.currentView);var qte=bpc.QueryType;var wuc=Web.UI.Control;var wuf=Web.UI.Form;var cfg=Biz.ProductConfigurator.Config;var mdlv=Number.parse(wuf.getValue(bpc.Form,vtpv+"_"+qte.Model));var mdl=$(vtpv+"_"+qte.Model+"_dropdownlist");var mdlt=mdl.options[mdl.selectedIndex].text.trim();var n=mdlv+bpc.EndecaValue.DIMENSION_SEED;wuf.setValue(bpc.SubmitForm,"IsHistoryBack","ok");var qsb= new Web.QueryStringBuilder();qsb.add("submit","ENE");qsb.add("Configurator",cfg.ConfiguratorType);qsb.add("CFG",cfg.ConfiguratorName+mdlt);qsb.add("DEPA","0");bpc.resetAll();window.location.href=Web.UI.ResourceManager.Url.www("Product/ProductList.aspx?"+qsb.toString());},submitSearchQuery:function(){var bpc=Biz.Product.ConfiguratorTools;var kwsFlag=false;kwsFlag=bpc.CheckSearchQuery();if(kwsFlag){if(window.event.keyCode == 13){bpc.finderSubmitQuery(bpc.QueryType.Keywords);};};},CheckSearchQuery:function(){var bpc=Biz.Product.ConfiguratorTools;var vtpv=String(bpc.currentView);var qte=bpc.QueryType;var wuc=Web.UI.Control;var wuf=Web.UI.Form;var kwdv= $("txtKeywords").value;var kwdv1="";var kwdv2="";if(!String.isNullOrEmpty(kwdv)){kwdv = kwdv.trim();if(kwdv.indexOf(" ")>0){kwdv1 = kwdv.substr(0,kwdv.indexOf(" "));kwdv2 = kwdv.substr(kwdv1.length);}else{kwdv1 = kwdv;kwdv2 = "";};kwdv1=kwdv1.trim();kwdv2=kwdv2.trim();}var class1;var class2;if((kwdv1+kwdv2).length>1){class1="buttonOff";class2="buttonOn";}else{class1="buttonOn";class2="buttonOff";};wuc.clearCss($("disableSpan"));wuc.addCss($("disableSpan"),class1);wuc.clearCss($("activeSpan"));wuc.addCss($("activeSpan"),class2);if(class2=="buttonOn"){return true;}else{return false;};},finderSubmitQuery:function(qtpv){var bpc=Biz.Product.ConfiguratorTools;var vtpv=bpc.currentView;var qte=bpc.QueryType;var msp=bpc.MessageType;var querytype=bpc.getQueryType(qtpv);var wuf=Web.UI.Form;var wuc=Web.UI.Control;var qsb=new Web.QueryStringBuilder();qsb.add("cat",$("queryType").value);if($("hidCategoryID").value != "-1"){qsb.add("Category",$("hidCategoryID").value);}switch(querytype){case qte.Platform:qsb.add("qtp",1);break;case qte.Brand:qsb.add("qtp",2);if($("drpPlatform") != null && $("drpPlatform").value != ""){qsb.add("plf",$("drpPlatform").value);}break;case qte.FirstProperty:if($("drpBrand").value == "-1"){qsb.add("qtp",2);}else{qsb.add("qtp",3);}if($("drpPlatform") != null && $("drpPlatform").value != ""){qsb.add("plf",$("drpPlatform").value);}qsb.add("brd",$("drpBrand").value);break;case qte.Model:qsb.add("qtp",4);if($("drpPlatform") != null && $("drpPlatform").value != ""){qsb.add("plf",$("drpPlatform").value);}qsb.add("brd",$("drpBrand").value);qsb.add("fpp",$("drpSeries").value);break;case qte.Keywords:qsb.add("qtp",5);qsb.add("kwd",$("txtKeywords").value);break;};var url = Web.UI.ResourceManager.Url.www("Product/SupplyFinder.aspx");window.location = url+"?"+qsb.toString();},productFinderSearch:function(){var bpc=Biz.Product.ConfiguratorTools;var wuc=Web.UI.Control;var wuf=Web.UI.Form;var cfg=Biz.ProductConfigurator.Config;if($("drpModel").value == null || $("drpModel").value == "")return;var qsb= new Web.QueryStringBuilder();qsb.add("submit","ENE");qsb.add("Configurator",cfg.ConfiguratorType);qsb.add("CFG",cfg.ConfiguratorName+"M"+$("drpModel").value+"|"+$("drpModel").options[$("drpModel").selectedIndex].text);qsb.add("DEPA","0");var url =Web.UI.ResourceManager.Url.www("Product/ProductList.aspx?"+qsb.toString());window.location.href = url;}};