
Type.registerNamespace('Monster.Client.Behavior.BuyWidgets');Monster.Client.Behavior.BuyWidgets.ResumeSearchAdapter=function(element)
{Monster.Client.Behavior.BuyWidgets.ResumeSearchAdapter.initializeBase(this,[element]);this._isLocal=true;this._isRegional=false;this._isDiversitySelected=false;this._regionalProductTally={};this._productLookUp={};this.createProperty("btnBuy");this.createProperty("txtZipCode");this.createProperty("listLocations");this.createProperty("btnAddRegion");this.createProperty("btnRemoveRegion");this.createProperty("cbDiversity");this.createProperty("msgErrorLocation");this.createProperty("msgErrorDuration");this.createProperty("hasLocalPricing");this.createProperty("hasRegionalPricing");this.createProperty("cultureInfoName");this.createProperty("hasExtraBoardDiversity");}
Monster.Client.Behavior.BuyWidgets.ResumeSearchAdapter.prototype={initialize:function(){Monster.Client.Behavior.BuyWidgets.ResumeSearchAdapter.callBaseMethod(this,'initialize');if(!MonsPageManager.enableInitOnDemand){this.initOnDemand();}else{MonsPageManager.registerInitState(this._id,false,null);}
this._webService=Monster.EBiz.Web.Services.Products.RegionalPricing;this._isLocal=Boolean.parse(this.hasLocalPricing);var _hasRegionalPricing=Boolean.parse(this.hasRegionalPricing);var _hasDiversity=Boolean.parse(this.hasExtraBoardDiversity);this.registerDataProperty("ZipCode");this.registerDataProperty("IsValidZipCode");this._dataStore.set_property("ZipCode","");this._dataStore.set_property("IsValidZipCode",false);if(this._isLocal){$addHandlers($(".location-national a")[0],{click:this.handleRadiusToggle},this);$addHandlers(this.txtZipCode,{keyup:this.handleZipCodeUpdate},this);}
var elemArray=jQuery.makeArray($(".rate-card tbody tr"));for(var i=0;i<elemArray.length;i++){$addHandlers(elemArray[i],{click:this.handleRowSelect},this);}
if(_hasRegionalPricing){var optionArray=jQuery.makeArray($(".regional-toggle input[type=radio]"));for(var j=0;j<optionArray.length;j++){$addHandlers(optionArray[j],{click:this.handleRegionalToggle},this);}
$addHandlers(this.btnAddRegion,{click:this.handleAddRegion},this);$addHandlers(this.btnRemoveRegion,{click:this.handleRemoveRegion},this);}
if(_hasDiversity){$addHandlers(this.cbDiversity,{click:this.handleDiversityCheckbox},this);}
$addHandlers(this.btnBuy,{click:this.handleBuyButton},this);if(this._isLocal){this.txtZipCode.value="";}
if(_hasRegionalPricing){$(".regional-toggle input[type=radio]:first").attr("checked",true);}
if(_hasDiversity){$(this.cbDiversity).attr("checked",false);}},initOnDemand:function(){},initHandlers:function(element,evt,context){},dispose:function(){},onSuccess:function(result,context,methodName){switch(methodName){case"GetRegionalProducts":var productList=result.RegionalProductList;var val,text;var opts=$(".region-tally select option").get();for(var i=0,l=productList.length;i<l;i++){var currentProductListItem=productList[i];val=currentProductListItem.RegionalProductId;text=currentProductListItem.RegionalProductName;opts[opts.length]=$('<option></option>').val(val).html(text).get(0);context._productLookUp[currentProductListItem.RegionalProductId]={"LocationID":currentProductListItem.LocationID,"DurationView":currentProductListItem.DurationView};}
var uniqueOpts=context.getUniqueOptions(opts);var sel=$(".region-tally select");sel.empty();sel.append(uniqueOpts);$(".total-amount").html(context.getRegionalProductsTotal()).formatCurrency({region:context.cultureInfoName});break;case"ValidateZipcode":context._dataStore.set_property("IsValidZipCode",result);_zipCode=context.txtZipCode.value;break;default:break;}},onFailure:function(result,context,methodName){Sys.Debug.trace("error in ResumeSearchAdapter.js");},onDataStoreEvent:function(sender,args){switch(args.get_propertyName()){default:break;}},handleRadiusToggle:function(evt){evt.preventDefault();this._isLocal=!this._isLocal;this.toggleRadius();},handleRegionalToggle:function(evt){var opt=$(evt.target);if(opt.hasClass("regional-all")){this._isRegional=false;$(".rate-card.national").removeClass("initial-view");$(".regional-form").addClass("initial-view");}else if(opt.hasClass("regional-single")){this._isRegional=true;$(".rate-card.national").addClass("initial-view");$(".regional-form").removeClass("initial-view");}},handleZipCodeUpdate:function(evt){var z=this.txtZipCode.value.substr(0,5);this._dataStore.set_property("ZipCode",z);this._dataStore.set_property("IsValidZipCode",false);$(".error-field").html("");$(".error-field").css("display","none");if((z.length==5)&&(!isNaN(parseInt(z)))){this.callServer("ValidateZipcode",[z]);}},handleRowSelect:function(evt){$(".rate-card tr").removeClass("highlight-row");$(".rate-card input:checked").parent().parent().addClass("highlight-row");if(!this._isRegional){this.updateTotalPrice();}},handleBuyButton:function(evt){evt.preventDefault();if(this._isRegional){this.addRegionalProductsToCart();}else{this.addToCart();}},handleAddRegion:function(evt){evt.preventDefault();var locations=[];$(this.listLocations).find(":selected").each(function(i,selected){locations[i]={LocationId:$(selected).val(),LocationName:$(selected).text()};});var durationViewString=$("input[name='regional-product']:checked").val();if(locations.length>0&&durationViewString!==""){this.updateRegionalTally(locations,durationViewString);}},handleRemoveRegion:function(evt){evt.preventDefault();var sel=$(".region-tally select");var SelectedItem=sel.find(":selected");SelectedItem.remove();$(".total-amount").html(this.getRegionalProductsTotal()).formatCurrency({region:this.cultureInfoName});if(SelectedItem)
{for(var i=0,l=SelectedItem.length;i<l;i++)
{this.deleteFromRegionalTally(SelectedItem[i].value);}}},handleDiversityCheckbox:function(evt){this._isDiversitySelected=!this._isDiversitySelected;this.toggleDiversity();},toggleRadius:function(){var isLocal=this._isLocal;var elemActive,elemInactive,elemActiveParent,elemInactiveParent;var tempA=document.createElement("A");var tempSpan=document.createElement("SPAN");if(!isLocal){elemActive=$(".location-local *")[0];elemInactive=$(".location-national *")[0];$(".res-zip-field").css("display","none");$(".rate-card.local").addClass("initial-view");$(".rate-card.national").removeClass("initial-view");publishResumeNationalClickWT();}else{elemActive=$(".location-national *")[0];elemInactive=$(".location-local *")[0];$(".res-zip-field").css("display","block");$(".rate-card.national").addClass("initial-view");$(".rate-card.local").removeClass("initial-view");publishResumeRadiusClickWT();}
if(Boolean.parse(this.hasExtraBoardDiversity)){this.toggleDiversity();}
this.updateTotalPrice();elemActiveParent=elemActive.parentNode;elemInactiveParent=elemInactive.parentNode;tempA.innerHTML=elemActive.innerHTML;tempA.setAttribute("href","#local");$addHandlers(tempA,{click:this.handleRadiusToggle},this);elemActiveParent.removeChild(elemActive);elemActiveParent.appendChild(tempA);tempSpan.innerHTML=elemInactive.innerHTML;elemInactiveParent.removeChild(elemInactive);elemInactiveParent.appendChild(tempSpan);},toggleDiversity:function(){var isDiversitySelected=this._isDiversitySelected;var ratecards;if(this._isLocal){ratecards=$(".rate-card.local");}else{ratecards=$(".rate-card.national")}
if(isDiversitySelected){ratecards.each(function(i,rc){if($(rc).hasClass("diversity")){$(rc).removeClass("initial-view");}else{$(rc).addClass("initial-view");}});}else{ratecards.each(function(i,rc){if($(rc).hasClass("diversity")){$(rc).addClass("initial-view");}else{$(rc).removeClass("initial-view");}});}
this.updateTotalPrice();},validateForm:function(){var errArr=[];var z;if(this._isLocal){z=this.txtZipCode.value;if((z.length!==5)||(isNaN(parseInt(z)))){errArr.push(this.msgErrorLocation);}else if(!this._dataStore.get_property("IsValidZipCode")){errArr.push(this.msgErrorLocation);}}
return errArr;},updateTotalPrice:function(){var price=$(this.getSelectedInput()).parent().parent().children(".rate-card-price").html();$(".total-amount").html(price);},updateRegionalTally:function(locations,durationViewString){var newRegionalTally=this._regionalProductTally;var newLocations=locations;var oldLocations=[];var i,j,k;if(typeof newRegionalTally[durationViewString]!="undefined"){oldLocations=newRegionalTally[durationViewString];for(i=0;i<oldLocations.length;i++){var isExistingLocation=false;for(j=0;j<locations.length;j++){if(oldLocations[i].LocationId==locations[j].LocationId){isExistingLocation=true;break;}}
if(!isExistingLocation){newLocations[newLocations.length]=oldLocations[i];}}}
if(newLocations.length>0){newRegionalTally[durationViewString]=newLocations;this._regionalProductTally=newRegionalTally;this.callServer("GetRegionalProducts",[newLocations,durationViewString]);}},deleteFromRegionalTally:function(regionalProductId)
{var durationViewString,locationID;if(this._productLookUp)
{var product=this._productLookUp[regionalProductId];if(product)
{durationViewString=product.DurationView;locationID=product.LocationID;var newTally=new Array();var tally=this._regionalProductTally[durationViewString];if(tally!=null)
{for(var i=0,l=tally.length;i<l;i++)
{if(tally[i].LocationId!=locationID)
{newTally.push(tally[i]);}}}
if(newTally!=null||newTally.length!=0)
{this._regionalProductTally[durationViewString]=newTally;}
else
{if(newTally.length=0)
{delete this._regionalProductTally[durationViewString];}}}}},addToCart:function(){var errArr=this.validateForm();if(errArr.length>0){$(".error-field").html(errArr.join("<br />"));$(".error-field").css("display","block");return false;}
publishResumeGadgetClick();var urlPath;var params=[];urlPath=$(this.getSelectedInput()).val();if(this._isLocal){params.push("localpostalcode="+this._dataStore.get_property("ZipCode"));}
var redirLoc=urlPath;if(params.length>0){redirLoc+=("&"+params.join("&"));}
if(this.getQueryStringValue("debug-buy",false)){alert(redirLoc);}else{var redirLink=document.createElement("A");if(typeof(redirLink.click)==="undefined"){window.location=redirLoc;}else{redirLink.href=redirLoc;document.body.appendChild(redirLink);redirLink.click();}}},addRegionalProductsToCart:function(){var opts=$(".region-tally select option").get();if(opts.length===0)return false;var urlPath="/products/resumeproductszip.aspx?";var params=[];params.push("regionalproductid="+this.getRegionalProductIds().join(","));var redirLoc=urlPath+params.join("$");if(this.getQueryStringValue("debug-buy",false)){alert(redirLoc);}else{var redirLink=document.createElement("A");if(typeof(redirLink.click)==="undefined"){window.location=redirLoc;}else{redirLink.href=redirLoc;document.body.appendChild(redirLink);redirLink.click();}}},getQueryStringValue:function(key,default_){if(default_==null)default_="";key=key.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");var regex=new RegExp("[\\?&]"+key+"=([^&#]*)");var qs=regex.exec(window.location.href);if(qs==null){return default_;}else{return qs[1];}},getSelectedInput:function(){var rb;if(this._isLocal){if(this._isDiversitySelected){rb=$(".local input:checked")[1];}else{rb=$(".local input:checked")[0];}}else{if(this._isDiversitySelected){rb=$(".national input:checked")[1];}else{rb=$(".national input:checked")[0];}}
return rb;},getUniqueOptions:function(optArr){var newOptArr=[];var i,j,isUnique;for(i=0;i<optArr.length;i++){var isUnique=true;for(j=0;j<newOptArr.length;j++){if($(optArr[i]).val()==$(newOptArr[j]).val()){isUnique=false;break;}}
if(isUnique){newOptArr[newOptArr.length]=optArr[i];}}
return newOptArr;},getRegionalProductsTotal:function(){var t=0;var tempVal,tempTotal;$(".region-tally select option").each(function(i,prodOption){tempVal=$(prodOption).val();tempTotal=tempVal.substr(tempVal.indexOf("-")+1)
tempTotal=parseFloat(tempTotal);if(!isNaN(tempTotal)){t+=tempTotal;}});return t;},getRegionalProductIds:function(){var rpids=[];var tempVal;$(".region-tally select option").each(function(i,prodOption){tempVal=$(prodOption).val();rpids[rpids.length]=tempVal.substring(0,tempVal.indexOf("-"));});return rpids;}}
Monster.Client.Behavior.BuyWidgets.ResumeSearchAdapter.registerClass('Monster.Client.Behavior.BuyWidgets.ResumeSearchAdapter',Monster.Client.Behavior.DataAdapterBase);if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
;
