var TBB=TBB||{};TBB.Signup={init:function(b){var a=this;a.namespace=b.namespace;a.url=b.url;a.coachScreenNameInput=jQuery("#"+a.namespace+b.coachScreenNameInput);a.coachDefaultInput=jQuery("#"+a.namespace+b.coachDefaultInput);a.coachSelectedScreenNameInput=jQuery("#"+a.namespace+b.coachSelectedScreenNameInput);a.coachSelectedInput=jQuery("#"+a.namespace+b.coachSelectedInput);a.coachSelectedDiv=jQuery("#"+a.namespace+b.coachSelectedDiv);a.coachSelectedMessage=jQuery("#"+a.namespace+b.coachSelectedMessage);a.coachExistingInput=jQuery("#"+a.namespace+b.coachExistingInput);a.coachExistingMessage=jQuery("#"+a.namespace+b.coachExistingMessage);a.coachErrorMessage=jQuery("#"+a.namespace+b.coachErrorMessage);a.coachErrorMessageDiv=jQuery("#"+a.namespace+b.coachErrorMessageDiv);a._assignEvents();a.loadStartupData()},loadCoachSelector:function(){var a=this;jQuery.ajax({url:a.url,dataType:"json",success:function(b){a._jsonUsers=b;a.loadJSONCoachAutocomplete()},type:"POST"})},loadJSONCoachAutocomplete:function(){var a=this;a.coachScreenNameInput.autocomplete({source:function(d){this.width=a.coachScreenNameInput.width();var b=a._jsonUsers.users;var e=[];for(i=0;i<b.length;i++){var f=b[i].fullName+" (screen name: <strong>"+b[i].screenName+"</strong>)";var c=b[i].screenName;var g=b[i].screenName+" &#40;"+b[i].fullName+"&#41;";if(f.toLowerCase().indexOf(d.toLowerCase())!=-1){e.push({data:g,result:c,value:f})}}return e},width:a.coachScreenNameInput.width(),formatItem:function(e,d,b,c){return e},dataType:"json",delay:0,multiple:false,mutipleSeparator:";",minChars:3,hide:function(b,c){jQuery(this).removeClass("showing-list")},show:function(b,c){jQuery(this).addClass("showing-list");this._LFR_listShowing=true},result:function(d,e){var b=this.value.length;if(this.createTextRange){var c=this.createTextRange();c.moveStart("character",b);c.select()}else{if(this.selectionStart){this.selectionStart=b;this.selectionEnd=b}}a.updateCoachDisplay(this.value,this.value,e)}})},loadStartupData:function(){var a=this;jQuery.ajax({url:a.url,dataType:"json",success:function(b){a.loadCoachSelector()},type:"POST"})},findCoachByEmail:function(b,c){var a=this;jQuery.ajax({url:b,data:{coachEmailAddress:c},dataType:"json",success:function(d){if(d.exception){a.updateCoachDisplay(c)}else{a.updateCoachDisplay(c,d.screenName,d.fullName)}},type:"POST"})},findCoachByRepNumber:function(b,c){var a=this;jQuery.ajax({url:b,dataType:"json",data:{coachRepNumber:c},success:function(d){if(d.exception){a.updateCoachDisplay(c)}else{a.updateCoachDisplay(c,d.screenName,d.fullName)}},type:"POST"})},findCoachByScreenName:function(b,c){var a=this;jQuery.ajax({url:b,data:{coachScreenName:c},dataType:"json",success:function(d){if(d.exception){a.updateCoachDisplay(c)}else{a.updateCoachDisplay(c,d.screenName,d.fullName)}},type:"POST"})},updateCoachDisplay:function(d,b,e,c){var a=this;a.coachErrorMessageDiv.hide();if(c){a.coachSelectedInput.attr("checked",false);a.coachSelectedInput.hide();a.coachSelectedDiv.hide();a.coachExistingInput.attr("checked",true);a.coachExistingInput.show();a.coachExistingMessage.html("I want to keep "+e+" as my Coach.")}else{if(!d&&!b&&!e){a.coachSelectedInput.attr("checked",false);a.coachSelectedInput.hide();a.coachSelectedDiv.hide();a.coachDefaultInput.attr("checked",true)}else{if(!b&&!e){a.coachErrorMessage.addClass("portlet-form-error");a.coachErrorMessage.html("No coach found searching for <b>"+d+"</b>.");a.coachErrorMessageDiv.show()}else{a.coachSelectedScreenNameInput.val(b);a.coachSelectedMessage.removeClass("portlet-form-error");a.coachSelectedMessage.html("<span class='note'> Yes, I want "+e+" to be my Coach.");a.coachSelectedInput.attr("checked",true);a.coachSelectedInput.show();a.coachDefaultInput.attr("checked",false);a.coachExistingInput.attr("checked",false);a.coachExistingInput.hide();a.coachExistingMessage.hide();a.coachSelectedDiv.show()}}}},_assignEvents:function(){var a=this},_jsonUsers:{}};TBB.BasicInfo={initBasicInfo:function(b){var a=this;a.namespace=b.namespace;a.templateURL=b.templateURL},checkScreenName:function(f,d,b,e,c){var a=this;if(f!=""){jQuery.ajax({url:a.templateURL,data:{cmd:"check_screen_name",screenName:f,companyId:d},dataType:"json",success:function(h){var j=h.available=="true";var g=h.message||"";var k=jQuery("#"+b);if(j){k.html("Available");k.removeClass("portlet-form-error");k.addClass("portlet-form-success")}else{k.html(g);k.removeClass("portlet-form-success");k.addClass("portlet-form-error")}}})}}};TBB.Order={initProducts:function(b){var a=this;a.namespace=b.namespace;a.bundles=[];a.upsells=[];a.products=b.products},initUpsells:function(b){var a=this;a.namespace=b.namespace;a.bundles=b.bundles;a.upsells=b.upsells;a.products=[]},initOrder:function(b){var a=this;a.namespace=b.namespace;a.products=b.products;a.shippingMethods=b.shippingMethods;a.shippingMethodId=b.shippingMethodId;a.subTotal=b.subTotal;a.taxableAmount=b.taxableAmount;a.taxRate=b.taxRate},addProducts:function(c,b){var a=this;a.products[c]=b},getProducts:function(b){var a=this},getProductIdQueryString:function(c){var a=this;var b="";jQuery.each(a.products,function(){b+="&"+a.namespace+"signupProductIds="+this+","});return b.substring(0,b.length-1)},getCoachPrice:function(c){var a=this;var b=a.upsells[c][0];return Number(b)},getCoachPriceWithoutDefaultUpsells:function(b){var a=this;var c=a.bundles[b][0];return Number(c)},getRetailPrice:function(c){var a=this;var b=a.upsells[c][1];return Number(b)},getRetailPriceWithoutDefaultUpsells:function(b){var a=this;var c=a.bundles[b][1];return Number(c)},getVolumePoints:function(c){var a=this;var b=a.upsells[c][2];return Number(b)},getVolumePointsWithoutDefaultUpsells:function(b){var a=this;var c=a.bundles[b][2];return Number(c)},getSavings:function(d,b){var a=this;var c=(Number(100)-(((Number(b)/Number(d))*100)));return c},updateShipping:function(b){var a=this;a.shippingMethodId=b},getShippingCost:function(){var a=this;var b=Number((a.shippingMethods[a.shippingMethodId]));return b.toFixed(2)},getSubTotal:function(){var a=this;return Number(a.subTotal)},getTaxableAmount:function(){var a=this;return Number(a.taxableAmount)},getTaxRate:function(){var a=this;return Number(a.taxRate)},getTax:function(){var a=this;var b=Number((Number(a.getTaxableAmount())+Number(a.getShippingCost()))*a.getTaxRate());return b.toFixed(2)},getTotal:function(){var a=this;var b=Number(Number(a.getSubTotal())+Number(a.getShippingCost())+Number(a.getTax()));return b.toFixed(2)}};