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).parent().parent().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})}})})();
