var AviarcShoppingCart;(function(){AviarcShoppingCart=function(){AviarcShoppingCart.superclass.constructor.apply(this,arguments)};YAHOO.lang.extend(AviarcShoppingCart,AviarcWidget,{startup:function(){this.container=document.getElementById(this.name+":div");this.items=[];var a=this;this._refreshItemsArray();this._renderItems(true,false);$(document).ready(function(){a._setupSpinners()})},_setupSpinners:function(){var a=this.container.getElementsByTagName("input");for(var b=0;b<a.length;b++){if(a[b].type=="text"){$(a[b]).attr("cartspinner","true");a[b].widgetobj=this;$("#"+a[b].id).spinner({max:100,min:1})}}},_template:new Util.StringTemplate("<div id='cartitem{@index}' class='droppable' style='width:100%;background-color:{@bgcolor};border-bottom:{@borderwidth}px solid #1B1107'><div class='column-content-thin' style='padding:5px 0px 0px 0px;position:relative;'>		<span style='color:#D0C7B6'>{@pretext}</span>		<span style='font-size:16px;font-weight:bold;display:block;'>{@productname}</span>		<span style='font-size:11px;display:block;'>{@scale}#{@productcode}</span>		<div style='padding-top:2px'>			<span style='float:left;padding-top:2px;padding-right:5px;font-size:12px;color:#1B1107;'>US${@usdprice}</span>			<span style='float:left;padding: 2px 3px 3px 0px;'>Qty:</span>			<div class='ui-spinner' style='top:0px;left:0px;padding:0px 0px 0px 2px;width:40px;'>				<input id='spinner{@index}' type='text' style='width:30px;' value='{@quantity}' pc='{@productcode}'/>				<button class='ui-spinner-up' type='button'></button>	  			<button class='ui-spinner-down' type='button'></button>			</div>     </div>		<div id='remove{@index}' class='cart_iconremove'></div></div><div class='column-content-thin' style='padding:5px;position:relative;'></div></div>"),_refreshItemsArray:function(){var b=dataset(this.attributes.dataset);this.items=[];for(var a=0;a<b.rows.length;a++){this.items.push({productname:b.rows[a].getField("name"),productcode:b.rows[a].getField("code"),scale:b.rows[a].getField("scale"),productid:b.rows[a].getField("productid"),usdprice:b.rows[a].getField("usdprice"),quantity:Number(b.rows[a].getField("quantity")),datarow:b.rows[a],setQuantity:function(c){this.quantity=Number(c);
this.datarow.setField("quantity",c)}})}},addProduct:function(j){var g=this.container,d,f,a=false,h=[],k=[];d={productcode:j.code,scale:j.scale,productname:j.name,productid:j.productid,usdprice:j.usdprice,quantity:Number(j.quantity),datarow:j.datarow,setQuantity:function(c){this.quantity=Number(c);this.datarow.setField("quantity",c)}};for(var e=0;e<this.items.length;e++){if(this.items[e].productid==d.productid){a=true;this.items[e].quantity+=d.quantity;h.push(this.items[e])}else{k.push(this.items[e])}}if(a){h=h.concat(k)}else{h=[d].concat(k)}this.items=h;this._renderItems(true,true,"Just added:","transparent");this._setupSpinners();if(!a){this.raiseEvent("oncartitemadded")}var b=getSessionID();Aviarc.doAjaxRequestDatasetReplace({ajaxAction:"cart/wf-cart-ajax",handlerFunc:function(){},customErrorFunc:function(c){},formFields:[{name:"action",value:"add product"},{name:"sessionid",value:b}]})},_getSubHeaderHTML:function(a){return a+" item"+(a!=1?"s":"")},_getSubTotalHTML:function(a){return"Subtotal: <b>US$"+a+"</b>"},_renderItems:function(o,a,e,j){var l=this,k=this.container,g="",h='<div class="droppable cartheader" style="width:100%;height:25px;"><div class="column-content-thin" style="padding:3px">  <span class=\'shoppingcarttitle\'></span></div></div>';if(this.items.length>0){var m=30,r,n,p=0,q=0;if(m>this.items.length){m=this.items.length}for(var f=0;f<m;f++){if(f==0){n=(e||"");r=(j||"transparent")}else{n="";r="transparent"}if(o){g+=this._template.makeString({productcode:this.items[f].productcode,productname:this.items[f].productname,productid:this.items[f].productid,usdprice:this._formatCurrency(this.items[f].usdprice),quantity:this.items[f].quantity,pretext:n,bgcolor:r,index:f,borderwidth:(f<(m-1)?"1":"0"),scale:(this.items[f].scale!=""?"<b>"+this.items[f].scale+"</b> - ":"")})}q+=Number(this.items[f].quantity);p+=Number(this.items[f].usdprice)*Number(this.items[f].quantity)}p=this._formatCurrency(p);if(o){h+='<div id=\'subheader\' class="droppable" style="width:100%;"><span style="font-size:12px;font-weight:bold;display:block;text-align:center;color:#1B1107;background-color:#C2B69E;padding:3px;">'+this._getSubHeaderHTML(q)+"</span></div>";
h+=g;h+='<div id=\'subtotal\' class="droppable" style="width:100%;background-color:#C2B69E;color:#1B1107;"><div class="column-content-thin" style="padding:3px;display:block;text-align:center;font-size:13px;">'+this._getSubTotalHTML(p)+"</div></div>";h+='<div id=\'checkout\' class="droppable" style="width:100%;border-bottom:1px solid black"><div class="column-content-thin" style="padding:3px"><a style="display:block;" href="shoppingcart">    <div class=\'cart_btncheckout\'></div></a></div></div>'}}else{if(o){h+='<div class="droppable" style="width:100%;"><div class="column-content-thin" style="padding:3px">  <span style="font-size:12px;font-weight:bold;display:block;text-align:center;color:#C1B59D;">Your Cart is Empty</span></div></div>'}}if(o){k.innerHTML=h;var d=k.getElementsByTagName("div");for(var f=0;f<d.length;f++){if(d[f].id.substring(0,8)=="cartitem"){var b=d[f].id.replace("cartitem","");d[f].datarow=this.items[b].datarow}else{if(d[f].id.substring(0,6)=="remove"){d[f].onclick=function(){l.removeItem(this)}}}}if(a){}}else{$(k).find("#subheader").children()[0].innerHTML=this._getSubHeaderHTML(q);$(k).find("#subtotal").children()[0].innerHTML=this._getSubTotalHTML(p)}},setValue:function(c,a){var b=this._getItemByProductCode(a);if(b){b.setQuantity(c);this._renderItems(false,false)}},saveValue:function(e,a){var d=dataset("ds-cart");for(var b=0;b<d.rows.length;b++){if(d.rows[b].getField("code")==a){d.rows[b].setField("quantity",e);d.rows[b].markRowEdited();var c=getSessionID();Aviarc.doAjaxRequestDatasetReplace({ajaxAction:"cart/wf-cart-ajax",handlerFunc:function(){},customErrorFunc:function(f){},formFields:[{name:"action",value:"edit product"}]})}}},_getItemByProductCode:function(a){for(var b=0;b<this.items.length;b++){if(this.items[b].productcode==a){return this.items[b]}}return null},_formatCurrency:function(a){a=a.toString().replace(/\$|\,/g,"");if(isNaN(a)){a="0"}a=Math.floor(a*100+0.50000000001);cents=a%100;a=Math.floor(a/100).toString();if(cents<10){cents="0"+cents
}for(var b=0;b<Math.floor((a.length-(1+b))/3);b++){a=a.substring(0,a.length-(4*b+3))+","+a.substring(a.length-(4*b+3))}return(a+"."+cents)},removeItem:function(e){var f=e.parentNode.parentNode.datarow;f.makeCurrentRow();var b=f.getField("productid");f.markRowDeleted();var a=[];for(var c=0;c<this.items.length;c++){if(this.items[c].productid!=b){a.push(this.items[c])}}this.items=a;var d=this;$("#"+e.parentNode.parentNode.id).fadeOut("slow",function(){d._renderItems(true,false);d._setupSpinners();var g=getSessionID();Aviarc.doAjaxRequestDatasetReplace({ajaxAction:"cart/wf-cart-ajax",handlerFunc:function(){d.raiseEvent("oncartitemremoved")},customErrorFunc:function(h){},formFields:[{name:"action",value:"remove product"},{name:"sessionid",value:g}]})})}})})();

