var AviarcProductListC1;(function(){AviarcProductListC1=function(){AviarcProductListC1.superclass.constructor.apply(this,arguments);this.template=null};YAHOO.lang.extend(AviarcProductListC1,AviarcWidget,{startup:function(){this.recalculate();this.container=document.getElementById(this.name+":div");var a=this;if(this.attributes.mode=="image"){this._attachAddToCartEvent(this.container)}this._attachHoverEvent(this.container.childNodes);$(document).ready(function(){a._setupSpinners();a._bind();a.template=$(a.container).find("#template")[0]})},_setupSpinners:function(){var a=this.container.getElementsByTagName("input");for(var b=0;b<a.length;b++){if(a[b].type=="text"){a[b].widgetobj=this;if(a[b].id.indexOf("[!")==-1){$("#"+a[b].id).spinner({max:100,min:1})}}}},_getProductPrice:function(a){var c=dataset(this.attributes.dataset);for(var b=0;b<c.rows.length;b++){if(c.rows[b].getField("code")==a){return Number(c.rows[b].getField("usdprice"))}}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)},_getTemplateHTML:function(){return $(this.container).find("#template")[0].innerHTML},_bind:function(){var a=this;$(this.container).find(".editbutton").bind("click",function(){a._editProduct(this.getAttribute("pc"))});$(this.container).find(".deletebutton").bind("click",function(){a._deleteProduct(this.getAttribute("pc"))})},_attachHoverEvent:function(b){var c=this;if($(b).find(".image-homeproduct").length>0){$(b).find(".image-homeproduct").each(function(d,e){e.onmouseover=function(){c._imageMouseEvent(e,"over")};e.onmouseout=function(){c._imageMouseEvent(e,"out")}})}else{for(var a=0;a<b.length;a++){if(b[a].tagName=="DIV"&&b[a].style.display!="none"){b[a].onmouseover=function(){YAHOO.util.Dom.addClass(this.childNodes[0],"producthover")
};b[a].onmouseout=function(){YAHOO.util.Dom.removeClass(this.childNodes[0],"producthover")}}}}},_imageMouseEvent:function(c,d){var a,b=(d=="over"?YAHOO.util.Dom.addClass:YAHOO.util.Dom.removeClass);$(c).parent().parent().parent().find(".backlight").each(function(e,f){b(f,"backlight-lit")})},_attachAddToCartEvent:function(b){var a=this;$(b).find(".image-addtocart").bind("click",function(){addToCart($(this).attr("pid"),$(this).parents(".floater").find(".ui-spinner-box").val(),a.attributes.dataset)})},setValue:function(e,b){var a=this._getProductPrice(b),d="US$"+this._formatCurrency(a*e),c=$(this.container).find("#linetotal"+b);if(c.length>0){c[0].innerHTML=d}this.recalculate()},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"}]})}}},recalculate:function(){var c=0,d=dataset(this.attributes.dataset);if(d&&$(this.container).find(".carttotal").length>0){for(var a=0;a<d.rows.length;a++){var e=Number($("#qty"+d.rows[a].getField("code")).val());c+=Number(d.rows[a].getField("usdprice")*e)}var b=this;$(this.container).find(".cartsubtotal").each(function(f,g){this.innerHTML="US$"+b._formatCurrency(c)});$(this.container).find(".carttotal").each(function(f,g){this.innerHTML="US$"+b._formatCurrency(c)});if(d.rows.length==0&&$(this.container).find("#emptyrow")[0]!=undefined){$(this.container).find("#emptyrow").show()}}},refresh:function(){var d=dataset(this.attributes.dataset),c=this._getTemplateHTML(),b="",e;for(var a=0;a<d.rows.length;a++){b+=c.replace(/\[\!productid\]/g,d.rows[a].getField("productid")).replace(/\[\!code\]/g,d.rows[a].getField("code")).replace(/\[\!name\]/g,d.rows[a].getField("name")).replace(/\[\!quantity\]/g,d.rows[a].getField("quantity")).replace(/\[\!usdprice\]/g,d.rows[a].getField("usdprice"))
}if(b==""){b="No products found."}document.body.appendChild(this.template);this.container.innerHTML=b;this.container.appendChild(this.template);this._bind();if(this.attributes.mode!="image"){this._attachHoverEvent(this.container.childNodes)}},_editProduct:function(a){this.raiseEvent("onedititem",{productcode:a})},_deleteProduct:function(a){this.raiseEvent("ondeleteitem",{productcode:a})}})})();

