var EC_LithoCalc={flag_form:true,opts:false,skus:false,area:0,selectedArea:0,widthText:0,heightText:0,weights:false,extra:false,prices:false,printRate:0,currentSku:"",currentName:"",currentTitle:"",formContents:"",sizeID:0,timer:0,selWeight:0,localText:false,shipOpts:false,shipRates:[],shipTimes:[],foldRate:0,names:false,titles:false,shipVals:false,foldingOpts:false,formContents:"",international:1,country_code:'<select id="country_code" name="country_code" class="textInput" onchange="EC_LithoCalc.updatePrice()"><option value="CA">Canada</option><option value="MX">Mexico</option><option value="US" selected>United States</option></select>',handling_fee:1,order_action:"",green:false,folding:false,additional:false,setOpts:function(){this.opts=[];this.opts.product=[];this.opts.product[44]="Vinyl Banners";this.opts.coating=[];this.opts.color=[];this.opts.paper=[];this.opts.size=[];this.opts.turnaround=[];this.opts.size[177]="3 X 10";this.opts.size[180]="3.5 X 6";this.opts.size[183]="3.5 X 12";this.opts.size[170]="2 X 6";this.opts.size[173]="2 X 12";this.opts.size[176]="3 X 8";this.opts.size[179]="3.5 X 4";this.opts.size[169]="2 X 4";this.opts.size[182]="3.5 X 10";this.opts.size[172]="2 X 10";this.opts.size[175]="3 X 6";this.opts.size[178]="3 X 12";this.opts.paper[168]="14 mil Scrim Vinyl";this.opts.size[181]="3.5 X 8";this.opts.size[171]="2 X 8";this.opts.size[174]="3 X 4";this.opts.turnaround[91]="3-5 Day";this.opts.color[13]="4/0 (Full Color Front Side)";this.opts.coating[6]="No Coating";},setSkus:function(){this.skus=new Hash();this.addSKU([44,"169",168,13,6,91],2168);this.addSKU([44,"170",168,13,6,91],2169);this.addSKU([44,"171",168,13,6,91],2170);this.addSKU([44,"172",168,13,6,91],2171);this.addSKU([44,"173",168,13,6,91],2172);this.addSKU([44,"174",168,13,6,91],2173);this.addSKU([44,"175",168,13,6,91],2174);this.addSKU([44,"176",168,13,6,91],2175);this.addSKU([44,"177",168,13,6,91],2176);this.addSKU([44,"178",168,13,6,91],2177);this.addSKU([44,"179",168,13,6,91],2178);this.addSKU([44,"180",168,13,6,91],2179);this.addSKU([44,"181",168,13,6,91],2180);this.addSKU([44,"182",168,13,6,91],2181);this.addSKU([44,"183",168,13,6,91],2182);},setWeights:function(){this.weights=[];this.weights[2168]=900;this.weights[2169]=1350;this.weights[2170]=1800;this.weights[2171]=2250;this.weights[2172]=2700;this.weights[2173]=1350;this.weights[2174]=2025;this.weights[2175]=2700;this.weights[2176]=3375;this.weights[2177]=4050;this.weights[2178]=1575;this.weights[2179]=2363;this.weights[2180]=3150;this.weights[2181]=3938;this.weights[2182]=4725;},setPrices:function(){this.prices=new Hash();this.prices.set(2168,new Hash());this.prices.get(2168).set(1,new Hash());this.prices.get(2168).get(1).set("i",10669);this.prices.get(2168).get(1).set("p",59);this.prices.get(2168).set(2,new Hash());this.prices.get(2168).get(2).set("i",10670);this.prices.get(2168).get(2).set("p",115);this.prices.get(2168).set(3,new Hash());this.prices.get(2168).get(3).set("i",10671);this.prices.get(2168).get(3).set("p",159);this.prices.get(2168).set(4,new Hash());this.prices.get(2168).get(4).set("i",10672);this.prices.get(2168).get(4).set("p",199);this.prices.get(2168).set(5,new Hash());this.prices.get(2168).get(5).set("i",10673);this.prices.get(2168).get(5).set("p",239);this.prices.set(2169,new Hash());this.prices.get(2169).set(1,new Hash());this.prices.get(2169).get(1).set("i",10674);this.prices.get(2169).get(1).set("p",89);this.prices.get(2169).set(2,new Hash());this.prices.get(2169).get(2).set("i",10675);this.prices.get(2169).get(2).set("p",165);this.prices.get(2169).set(3,new Hash());this.prices.get(2169).get(3).set("i",10676);this.prices.get(2169).get(3).set("p",229);this.prices.get(2169).set(4,new Hash());this.prices.get(2169).get(4).set("i",10677);this.prices.get(2169).get(4).set("p",289);this.prices.get(2169).set(5,new Hash());this.prices.get(2169).get(5).set("i",10678);this.prices.get(2169).get(5).set("p",345);this.prices.set(2170,new Hash());this.prices.get(2170).set(1,new Hash());this.prices.get(2170).get(1).set("i",10679);this.prices.get(2170).get(1).set("p",115);this.prices.get(2170).set(2,new Hash());this.prices.get(2170).get(2).set("i",10680);this.prices.get(2170).get(2).set("p",219);this.prices.get(2170).set(3,new Hash());this.prices.get(2170).get(3).set("i",10681);this.prices.get(2170).get(3).set("p",299);this.prices.get(2170).set(4,new Hash());this.prices.get(2170).get(4).set("i",10682);this.prices.get(2170).get(4).set("p",385);this.prices.get(2170).set(5,new Hash());this.prices.get(2170).get(5).set("i",10683);this.prices.get(2170).get(5).set("p",449);this.prices.set(2171,new Hash());this.prices.get(2171).set(1,new Hash());this.prices.get(2171).get(1).set("i",10684);this.prices.get(2171).get(1).set("p",139);this.prices.get(2171).set(2,new Hash());this.prices.get(2171).get(2).set("i",10685);this.prices.get(2171).get(2).set("p",269);this.prices.get(2171).set(3,new Hash());this.prices.get(2171).get(3).set("i",10686);this.prices.get(2171).get(3).set("p",379);this.prices.get(2171).set(4,new Hash());this.prices.get(2171).get(4).set("i",10687);this.prices.get(2171).get(4).set("p",475);this.prices.get(2171).set(5,new Hash());this.prices.get(2171).get(5).set("i",10688);this.prices.get(2171).get(5).set("p",559);this.prices.set(2172,new Hash());this.prices.get(2172).set(1,new Hash());this.prices.get(2172).get(1).set("i",10689);this.prices.get(2172).get(1).set("p",169);this.prices.get(2172).set(2,new Hash());this.prices.get(2172).get(2).set("i",10690);this.prices.get(2172).get(2).set("p",319);this.prices.get(2172).set(3,new Hash());this.prices.get(2172).get(3).set("i",10691);this.prices.get(2172).get(3).set("p",449);this.prices.get(2172).set(4,new Hash());this.prices.get(2172).get(4).set("i",10692);this.prices.get(2172).get(4).set("p",569);this.prices.get(2172).set(5,new Hash());this.prices.get(2172).get(5).set("i",10693);this.prices.get(2172).get(5).set("p",669);this.prices.set(2173,new Hash());this.prices.get(2173).set(1,new Hash());this.prices.get(2173).get(1).set("i",10694);this.prices.get(2173).get(1).set("p",79);this.prices.get(2173).set(2,new Hash());this.prices.get(2173).get(2).set("i",10695);this.prices.get(2173).get(2).set("p",155);this.prices.get(2173).set(3,new Hash());this.prices.get(2173).get(3).set("i",10696);this.prices.get(2173).get(3).set("p",219);this.prices.get(2173).set(4,new Hash());this.prices.get(2173).get(4).set("i",10697);this.prices.get(2173).get(4).set("p",279);this.prices.get(2173).set(5,new Hash());this.prices.get(2173).get(5).set("i",10698);this.prices.get(2173).get(5).set("p",325);this.prices.set(2174,new Hash());this.prices.get(2174).set(1,new Hash());this.prices.get(2174).get(1).set("i",10699);this.prices.get(2174).get(1).set("p",119);this.prices.get(2174).set(2,new Hash());this.prices.get(2174).get(2).set("i",10700);this.prices.get(2174).get(2).set("p",229);this.prices.get(2174).set(3,new Hash());this.prices.get(2174).get(3).set("i",10701);this.prices.get(2174).get(3).set("p",319);this.prices.get(2174).set(4,new Hash());this.prices.get(2174).get(4).set("i",10702);this.prices.get(2174).get(4).set("p",405);this.prices.get(2174).set(5,new Hash());this.prices.get(2174).get(5).set("i",10703);this.prices.get(2174).get(5).set("p",479);this.prices.set(2175,new Hash());this.prices.get(2175).set(1,new Hash());this.prices.get(2175).get(1).set("i",10704);this.prices.get(2175).get(1).set("p",159);this.prices.get(2175).set(2,new Hash());this.prices.get(2175).get(2).set("i",10705);this.prices.get(2175).get(2).set("p",305);this.prices.get(2175).set(3,new Hash());this.prices.get(2175).get(3).set("i",10706);this.prices.get(2175).get(3).set("p",425);this.prices.get(2175).set(4,new Hash());this.prices.get(2175).get(4).set("i",10707);this.prices.get(2175).get(4).set("p",535);this.prices.get(2175).set(5,new Hash());this.prices.get(2175).get(5).set("i",10708);this.prices.get(2175).get(5).set("p",629);this.prices.set(2176,new Hash());this.prices.get(2176).set(1,new Hash());this.prices.get(2176).get(1).set("i",10709);this.prices.get(2176).get(1).set("p",199);this.prices.get(2176).set(2,new Hash());this.prices.get(2176).get(2).set("i",10710);this.prices.get(2176).get(2).set("p",379);this.prices.get(2176).set(3,new Hash());this.prices.get(2176).get(3).set("i",10711);this.prices.get(2176).get(3).set("p",529);this.prices.get(2176).set(4,new Hash());this.prices.get(2176).get(4).set("i",10712);this.prices.get(2176).get(4).set("p",665);this.prices.get(2176).set(5,new Hash());this.prices.get(2176).get(5).set("i",10713);this.prices.get(2176).get(5).set("p",779);this.prices.set(2177,new Hash());this.prices.get(2177).set(1,new Hash());this.prices.get(2177).get(1).set("i",10714);this.prices.get(2177).get(1).set("p",239);this.prices.get(2177).set(2,new Hash());this.prices.get(2177).get(2).set("i",10715);this.prices.get(2177).get(2).set("p",455);this.prices.get(2177).set(3,new Hash());this.prices.get(2177).get(3).set("i",10716);this.prices.get(2177).get(3).set("p",629);this.prices.get(2177).set(4,new Hash());this.prices.get(2177).get(4).set("i",10717);this.prices.get(2177).get(4).set("p",795);this.prices.get(2177).set(5,new Hash());this.prices.get(2177).get(5).set("i",10718);this.prices.get(2177).get(5).set("p",929);this.prices.set(2178,new Hash());this.prices.get(2178).set(1,new Hash());this.prices.get(2178).get(1).set("i",10719);this.prices.get(2178).get(1).set("p",95);this.prices.get(2178).set(2,new Hash());this.prices.get(2178).get(2).set("i",10720);this.prices.get(2178).get(2).set("p",179);this.prices.get(2178).set(3,new Hash());this.prices.get(2178).get(3).set("i",10721);this.prices.get(2178).get(3).set("p",249);this.prices.get(2178).set(4,new Hash());this.prices.get(2178).get(4).set("i",10722);this.prices.get(2178).get(4).set("p",315);this.prices.get(2178).set(5,new Hash());this.prices.get(2178).get(5).set("i",10723);this.prices.get(2178).get(5).set("p",369);this.prices.set(2179,new Hash());this.prices.get(2179).set(1,new Hash());this.prices.get(2179).get(1).set("i",10724);this.prices.get(2179).get(1).set("p",139);this.prices.get(2179).set(2,new Hash());this.prices.get(2179).get(2).set("i",10725);this.prices.get(2179).get(2).set("p",265);this.prices.get(2179).set(3,new Hash());this.prices.get(2179).get(3).set("i",10726);this.prices.get(2179).get(3).set("p",369);this.prices.get(2179).set(4,new Hash());this.prices.get(2179).get(4).set("i",10727);this.prices.get(2179).get(4).set("p",459);this.prices.get(2179).set(5,new Hash());this.prices.get(2179).get(5).set("i",10728);this.prices.get(2179).get(5).set("p",545);this.prices.set(2180,new Hash());this.prices.get(2180).set(1,new Hash());this.prices.get(2180).get(1).set("i",10729);this.prices.get(2180).get(1).set("p",185);this.prices.get(2180).set(2,new Hash());this.prices.get(2180).get(2).set("i",10730);this.prices.get(2180).get(2).set("p",349);this.prices.get(2180).set(3,new Hash());this.prices.get(2180).get(3).set("i",10731);this.prices.get(2180).get(3).set("p",489);this.prices.get(2180).set(4,new Hash());this.prices.get(2180).get(4).set("i",10732);this.prices.get(2180).get(4).set("p",609);this.prices.get(2180).set(5,new Hash());this.prices.get(2180).get(5).set("i",10733);this.prices.get(2180).get(5).set("p",719);this.prices.set(2181,new Hash());this.prices.get(2181).set(1,new Hash());this.prices.get(2181).get(1).set("i",10734);this.prices.get(2181).get(1).set("p",229);this.prices.get(2181).set(2,new Hash());this.prices.get(2181).get(2).set("i",10735);this.prices.get(2181).get(2).set("p",435);this.prices.get(2181).set(3,new Hash());this.prices.get(2181).get(3).set("i",10736);this.prices.get(2181).get(3).set("p",605);this.prices.get(2181).set(4,new Hash());this.prices.get(2181).get(4).set("i",10737);this.prices.get(2181).get(4).set("p",759);this.prices.get(2181).set(5,new Hash());this.prices.get(2181).get(5).set("i",10738);this.prices.get(2181).get(5).set("p",889);this.prices.set(2182,new Hash());this.prices.get(2182).set(1,new Hash());this.prices.get(2182).get(1).set("i",10739);this.prices.get(2182).get(1).set("p",275);this.prices.get(2182).set(2,new Hash());this.prices.get(2182).get(2).set("i",10740);this.prices.get(2182).get(2).set("p",519);this.prices.get(2182).set(3,new Hash());this.prices.get(2182).get(3).set("i",10741);this.prices.get(2182).get(3).set("p",719);this.prices.get(2182).set(4,new Hash());this.prices.get(2182).get(4).set("i",10742);this.prices.get(2182).get(4).set("p",909);this.prices.get(2182).set(5,new Hash());this.prices.get(2182).get(5).set("i",10743);this.prices.get(2182).get(5).set("p",1065);},init:function(){if($("myForm")){this.order_action=$("myForm").action;$("myForm").addEvent("submit",function(a){if(EC_LithoCalc.flag_form){new Event(a).stop();}});}this.setLocalVars();this.setOpts();this.setSkus();this.setWeights();this.setPrices();if(window.EC_Mailing){EC_Mailing.init();}this.updateForm();},setLocalVars:function(){this.localText=[];this.localText.titleText="Pricing Calculator";this.localText.headingText="Select A Product";this.localText.priceText="Printing Total";this.localText.productText="Product";this.localText.sizeText="Size";this.localText.trimSizeText="Custom Trim Size (Not Required)";this.localText.widthText="Width";this.localText.heightText="Height";this.localText.paperText="Paper";this.localText.colorText="Color";this.localText.coatingText="Coating";this.localText.pageText="Pages";this.localText.turnaroundText="Turnaround";this.localText.foldingText="Folding";this.localText.quantityText="Quantity";this.localText.orderText="Place Order";this.localText.estimateText="Print Estimate";this.localText.chooseText="Choose Here...";this.localText.shippingText="Estimate Shipping";this.localText.zipcodeText="Zip / Postal Code";this.localText.countrycodeText="Country";this.localText.ratesText="Get Rates";this.localText.shipmethodText="Ship Method";this.localText.shiprateText="Shipping Rate";this.localText.shiptimeText="Shipping Time";this.localText.pleaseclickText="<p>Please Click &quot;Get Rates&quot;</p>";this.localText.ziperrorText="Please Enter A 5 Digit Zip Code.";this.localText.pleasewaitText="Please Wait";this.names=[];this.titles=[];this.names=["product","size","paper","color","coating","turnaround"];this.titles=[this.localText.productText,this.localText.sizeText,this.localText.paperText,this.localText.colorText,this.localText.coatingText,this.localText.turnaroundText];shipOpts=new Hash({"03":"UPS Ground","12":"UPS 3 Day Select","02":"UPS 2nd Day","01":"UPS Next Day",WC:"Will Call",FR:"Freight",DL:"Delivery",RO:"Recycle Overages"});},createForm:function(a){this.formContents='<h3 class="formTitle">'+this.localText.titleText+"</h3>";this.formContents+="<table>";this.formContents+=calcFI_TPL("",'<h4 class="formHeading">'+this.localText.headingText+"</h4>","");this.formContents+=a;this.formContents+="</table>";this.formContents+='<input type="hidden" name="price_id" value="" />';this.formContents+='<input type="hidden" name="quote" value="" />';this.formContents+='<input type="hidden" id="totals" name="totals" value="" />';$("myForm").setHTML(this.formContents);if(window.datePickerController){datePickerController.create();}},createSelect:function(h,d,f,g,b){if(window.EC_Mailing&&d=="quantity"){f="EC_Mailing.setQuantity();"+f;}var a='<select id="'+d+'" name="'+d+'" onchange="'+f+'">';if(d=="quantity"){a+=this.createQuantityOptions(g);}else{if(d=="folding"&&this.folding==true){a+=this.createFoldingOptions(g);}else{if(b){a+=this.createOptions(g,true);}else{a+=this.createOptions(g);}}}a+="</select>";var e="";var c="";if(this.green==true&&d=="paper"){c=calcFI_TPL("","","","greenBadgeTD");}return c+calcFI_TPL(h,a,d,e);},createSizeInput:function(f,c,d){var e=(c=="width")?this.widthText:this.heightText;var b=[];if($(c+"Fract")){b[$(c+"Fract").selectedIndex]=" selected";}var a="";return calcFI_TPL(f,a,c);},createTrimSizeInput:function(e,b,c){var d=this.opts.size[this.sizeID];if($(b)){d=$(b).getValue();}var a='<input type="text" id="'+b+'" name="'+b+'" value="'+d+'" onblur="'+c+'" class="textInput" />';return calcFI_TPL(e,a,b);},createOptions:function(e,g){var j,f,h;var k=[];var l="";var c="";var d="";k=e.keys();h=k.length;for(f=0;f<h;f++){j=k[f];if(!isNaN(j)){d=($(this.currentName)&&j==$(this.currentName).getValue())?" selected":"";if(this.currentName=="size"&&f==0){this.sizeID=j;}if(!g){}var b=(g)?this.additionalOpts.get(this.currentName).get(j).get("name"):this.opts[this.currentName][j];l+='<option value="'+j+'"'+d+">"+b+"</option>";}}return l;},createQuantityOptions:function(e){var b;var c="";var f="";var d="";if(e.length>0){e.each(function(g){if(!isNaN(g)){d=($("quantity")&&g==$("quantity").getValue())?" selected":"";c+='<option value="'+g+'"'+d+">"+g+"</option>";}});}return c;},createFoldingOptions:function(e){var a="";var b="";var c=false;if($("paper")){var d=$("paper").options[$("paper").selectedIndex].text;if(d.indexOf("Cover")!=-1){c=true;}}e.each(function(g,f){($("folding")&&f==$("folding").getValue())?b=" selected":b="";if(c){if(g.get("name").indexOf("Cover")!=-1||g.get("name").indexOf("None")!=-1){a+='<option value="'+f+'"'+b+">"+g.get("name")+"</option>";}}else{if(g.get("name").indexOf("Cover")==-1){a+='<option value="'+f+'"'+b+">"+g.get("name")+"</option>";}}});return a;},updateForm:function(){var e=0;var c;var g;this.formContents="";this.currentSku=this.skus;var b=false;for(var e=0;e<this.names.length;e++){this.currentName=this.names[e];this.currentTitle=this.titles[e];if(this.currentName=="width"||this.currentName=="height"){this.formContents+=this.createSizeInput(this.currentTitle,this.currentName,"EC_LithoCalc.updateForm()");if(this.currentName=="width"){continue;}}else{g=(this.currentName=="size")?"EC_LithoCalc.resetTrimSize();":"";this.formContents+=this.createSelect(this.currentTitle,this.currentName,g+"EC_LithoCalc.updateForm()",this.currentSku);if(this.currentName=="size"){this.formContents+=this.createTrimSizeInput(this.localText.trimSizeText,"trim_size","EC_LithoCalc.updateTrimSize()");}}var d=0;var h="";this.currentSku.each(function(i,a){d++;if(d==1){h=a;}});if(this.currentName=="height"){var f=this.currentSku.keys();f.sort(EC_Base.sortNumber);f.reverse();f.each(function(a){if(EC_LithoCalc.area<=a){h=a.toString();EC_LithoCalc.selectedArea=a;}});}if($(this.currentName)&&this.currentSku.hasKey($(this.currentName).getValue())){this.currentSku=this.currentSku.get($(this.currentName).getValue());}else{if(this.currentSku.hasKey(h)){this.currentSku=this.currentSku.get(h);}else{break;}}}if(this.currentSku>0){this.setupQuantities();}else{this.createForm(this.formContents);}},updateArea:function(){if($("width")&&$("height")){this.widthText=Math.floor(Number($("width").getValue())).toString();this.heightText=Math.floor(Number($("height").getValue())).toString();if(this.widthText=="NaN"){this.widthText=0;}if(this.heightText=="NaN"){this.heightText=0;}var a=Math.floor(Number($("width").getValue()))+Number($("widthFract").getValue());var b=Math.floor(Number($("height").getValue()))+Number($("heightFract").getValue());if(isNaN(a)){a=$("width").value=0;$("widthFract").selectedIndex=0;}if(isNaN(b)){b=$("height").value=0;$("heightFract").selectedIndex=0;}if(a<this.opts.min_width&&a>0){alert("The minimum width is "+this.opts.min_width);return;}if(b<this.opts.min_height&&b>0){alert("The minimum height is "+this.opts.min_height);return;}if(a>this.opts.max_width){alert("The maximum width is "+this.opts.max_width);return;}if(b>this.opts.max_height){alert("The maximum height is "+this.opts.max_height);return;}this.area=a*b;}},updateTrimSize:function(){if($("trim_size")){var e=$("trim_size").getValue();e=e.replace(/([^0-9. Xx])/g,"");var d=$("size").options[$("size").selectedIndex].text;d=d.replace(/([^0-9. Xx])/g,"");var a=Number(e.replace(/(\d[.]*\d{0,4})([ Xx]+)(\d[.]*\d{0,4})(.*)/,"$1"));var c=Number(e.replace(/(\d[.]*\d{0,4})([ Xx]+)(\d[.]*\d{0,4})(.*)/,"$3"));var f=Number(d.replace(/(\d[.]*\d{0,4})([ Xx]+)(\d[.]*\d{0,4})(.*)/,"$1"));var b=Number(d.replace(/(\d[.]*\d{0,4})([ Xx]+)(\d[.]*\d{0,4})(.*)/,"$3"));a=(a>f)?f:a;c=(c>b)?b:c;$("trim_size").value=a+" X "+c;}},resetTrimSize:function(){if($("trim_size")){$("trim_size").value=$("size").options[$("size").selectedIndex].text;}},setupQuantities:function(){var a=0;var c=0;if(this.folding){this.formContents+=this.createSelect(this.localText.foldingText,"folding","EC_LithoCalc.updatePrice()",this.foldingOpts);}if(this.additional){this.additionalOpts.each(function(g,f){EC_LithoCalc.currentName=f;EC_LithoCalc.formContents+=EC_LithoCalc.createSelect(EC_LithoCalc.localText[f+"Text"],f,"EC_LithoCalc.updatePrice()",g,true);});}var e=this.prices.get(this.currentSku).keys();e.sort(this.numOrdA);this.formContents+=this.createSelect(this.localText.quantityText,"quantity","EC_LithoCalc.updatePrice()",e);if($("quantity")){var d=$("quantity").getValue();if(this.prices.get(this.currentSku).hasKey(d)){c=this.prices.get(this.currentSku).get(d).get("p");}}else{var b=this.prices.get(this.currentSku).keys();c=this.prices.get(this.currentSku).get(b[0]).get("p");}if(window.EC_Mailing){this.formContents+=EC_Mailing.updateForm();}else{this.formContents+=calcHR_TPL();}this.formContents+=calcTotalFI_TPL(this.localText.priceText,'<div id="printRate" class="price">'+EC_Base.moneyFormat(c)+"</div>","");if(window.EC_Mailing){this.formContents+=EC_Mailing.totalsForm();}else{this.formContents+=calcHR_TPL();}this.formContents+=calcFI_TPL("",calcBTN_TPL(this.localText.orderText,"EC_LithoCalc.placeOrder()"),"");this.formContents+=calcFI_TPL("",calcBTN_TPL(this.localText.estimateText,"EC_LithoCalc.printEstimate()"),"");if(!window.EC_Mailing){this.formContents+=this.setupShipping();}else{this.formContents+=postageWarning();}this.createForm(this.formContents);this.updatePrice();},updateFolding:function(){var d=$("myForm");var c=$("folding").getValue();if(c==undefined){var f=this.foldingOpts.keys();c=f[0];}var b=this.foldingOpts.get(c).get("price");var a=this.foldingOpts.get(c).get("setup");var e=($("quantity").options)?$("quantity").options[$("quantity").selectedIndex].text:$("quantity").getValue();var g=parseInt(e)/1000;this.foldRate=(Number(b)*g)+Number(a);},updatePrice:function(){this.foldRate=0;if($("folding")&&this.folding==true){this.updateFolding();}if($("quantity")){this.currentSku=this.skus;for(var c=0;c<this.names.length;c++){this.currentName=this.names[c];if($(this.currentName)&&this.currentName!="width"&&this.currentName!="height"){this.currentSku=this.currentSku.get($(this.currentName).value);}if($(this.currentName)&&this.currentName=="height"){this.currentSku=this.skus.get($("product").value).get(this.selectedArea);}}var a=this.prices.get(this.currentSku).get($("quantity").value).get("p");if(this.additional){this.additionalOpts.each(function(h,f){if($(f)){var g=Number(EC_LithoCalc.additionalOpts.get(f).get($(f).value).get("price"));var e=Number(EC_LithoCalc.additionalOpts.get(f).get($(f).value).get("setup"));a+=g*($("quantity").value/1000)+e;}});}this.printRate=a+this.foldRate;$("printRate").setHTML(EC_Base.moneyFormat(this.printRate));if(window.EC_Mailing){EC_Mailing.updatePrice();}if($("zipcode")){var d=$("zipcode").getValue();if(d.length==5){this.getShipRates();}}var b={print:this.printRate,folding:this.foldRate,shipping:this.shipRates};if(window.EC_Mailing){b.setup=Number($("setupRate").getText().replace(/([^0-9.])/,""));b.inkjet=Number($("inkjetRate").getText().replace(/([^0-9.])/,""));b.tabbing=Number($("tabbingRate").getText().replace(/([^0-9.])/,""));b.postage=Number($("postageRate").getText().replace(/([^0-9.])/,""));if($("listRate")){b.list=Number($("listRate").getText().replace(/([^0-9.])/,""));}b.total=Number($("totalRate").getText().replace(/([^0-9.])/,""));}if($("totals")){$("totals").value=Json.toString(b);}else{EC_LithoSku.updatePrice.delay(100);}}},printEstimate:function(){if(this.order_action==""){alert("This feature is not available right now. Please try again later.");return;}$("myForm").action=estimateURL;$("myForm").target="estimatepopup";estimatePopup($("myForm").target);setTimeout(function(){$("myForm").submit();},100);},placeOrder:function(){$("myForm").target="_self";if(this.order_action!=""){$("myForm").action=this.order_action;}if(this.currentSku!=null){var a=this.prices.get(this.currentSku).get($("quantity").getValue()).get("i");}else{var c=this.prices.keys();var a=this.prices.get(c[0]).get($("quantity").getValue()).get("i");}var b=$("myForm");b.price_id.value=a;this.flag_form=false;b.submit();},addSKU:function(f,g){var d;var e;var c;var b=f.length;f.each(function(h,a){if(a>0){c=c.get(f[a-1]);}else{c=EC_LithoCalc.skus;}if(!c.hasKey(h)){c.set(h,new Hash());}if(a==b-1){c.set(h,g);}});},setupShipping:function(){var a=calcHR_TPL();a+=calcFI_TPL("",'<h4 class="formHeading">'+this.localText.shippingText+"</h4>","");if(this.international==1){a+=calcFI_TPL(this.localText.countrycodeText,this.country_code,"");}else{a+=this.country_code;}a+=calcFI_TPL(this.localText.zipcodeText,'<input type="text" class="zipTI" id="zipcode" name="zipcode" onkeyup="EC_LithoCalc.checkEnter(event, \'EC_LithoCalc.getShipRates()\')" /><input id="getRatesBTN" type="button" class="rateBTN" value="'+this.localText.ratesText+'" onclick="EC_LithoCalc.getShipRates()" />',"");a+=calcShipGrid_TPL("<br />");return a;},shipSelect:function(){},getShipRates:function(){if(!this.currentSku){this.updateForm();}var b=$("getRatesBTN");var c=$("zipcode").getValue();if(b.disabled){return;}var e=$("country_code").getValue();if((c.length!=5||isNaN(c))&&e=="US"){alert(this.localText.ziperrorText);return;}b.value=this.localText.pleasewaitText;b.disabled=true;this.timer=setTimeout("EC_LithoCalc.stopRates()",10000);this.selWeight=Math.ceil((Number($("quantity").getValue())/1000)*this.weights[this.currentSku]);var a="/ws/shipping/getRates/zip/"+c+"/country/"+e+"/weight/"+this.selWeight+"/handling_fee/"+this.handling_fee;var d=new Ajax(a,{method:"get",onSuccess:function(g){EC_LithoCalc.shipRates=Json.evaluate(g);EC_LithoCalc.stopRates();EC_LithoCalc.changeShipRates();if(EC_LithoCalc.shipRates.error){alert(EC_LithoCalc.shipRates.error);}if($("totals")){var f=Json.evaluate($("totals").getValue());f.shipping=EC_LithoCalc.shipRates;$("totals").value=Json.toString(f);}}}).request();},stopRates:function(){var a=$("getRatesBTN");a.value=this.localText.ratesText;a.disabled=false;clearTimeout(this.timer);},changeShipRates:function(){var a=" checked";$$("input[name=shipMethod]").each(function(b){if(b.checked!=false){a=b.value.toString();}});$("shipGrid").setHTML("<br />"+this.shipGrid(a));},shipGrid:function(e){var b='<table width="100%">';var c="";var d=$("country_code").getValue();var a=false;if($("delivery")&&$("delivery_zipcode")&&$("delivery_countrycode")){if($("delivery").getValue()==1&&($("delivery_zipcode").getValue()==$("zipcode").getValue()||$("delivery_zipcode").getValue()=="ANY")&&d==$("delivery_countrycode").getValue()){a=true;}}shipOpts.each(function(h,f){if(!h.match(/Recycle/)){var g=EC_LithoCalc.shipRates[f.toString()];if(e==f.toString()){e=" checked";}if(g!==false&&!isNaN(g)){g=EC_Base.moneyFormat(g);}if(g!==false){if(f!="DL"||(f=="DL"&&a==true)){b+='<tr><td class="ship_desc"><input type="radio" name="shipMethod" value="'+f.toString()+'"'+e+" />";b+=h+'</td><td class="ship_price">'+g+"</td></tr>";}if(e==" checked"){e="";}}}});b+="</table>";return b;},checkEnter:function(event,func){event=new Event(event);if(event.key=="enter"){if(func){eval(func);}event.stop();this.flag_form=true;}},numOrdA:function(d,c){return(d-c);},numOrdD:function(d,c){return(c-d);},debug:function(c,b){var a="";if(b){a=EC_Base.dumpObj(c,true);}else{a=c;}$("calcDebug").setHTML(a+"<br />=======================================<br /><br />");}};window.addEvent("domready",function(){EC_LithoCalc.init();});
