var ShoppingCart=Class.create();ShoppingCart.prototype={initialize:function(){this.cartIcons=[];this.ajax={};this.ajaxTrigger=[];},setShoppingCart:function(d,b,a){try{this.cart=$(d);try{this.outerCart=$("outer_"+d);}catch(c){this.outerCart=$(d);}if(b.length>0){this.setCartItems(b,a);}if(this.outerCart!=null){Droppables.add(this.outerCart,{onDrop:function(g,e,f){this.addIconToShoppingCart(g,e,f);
}.bindAsEventListener(this)});}}catch(c){}loader.mergeIcons(true,"icon",false);this.setRemoveAllListener();},setCartItems:function(b,a){this.cartIcons=b;this.cart.update("");for(var c=0;c<this.cartIcons.length;c++){var d=this.cartIcons[c];loader.drawIcon(d,this.cart,"sh_icon");loader.drawRemoveIconWidget(d,"sh_icon",a);
loader.removeBuyIconWidget(d,"sh_icon");}},setRemoveAllListener:function(){var a=$("clearCart_button");if(a==null){return;}Event.observe(a,"click",function(){this.removeAllIconsFromShoppingCart("sh_icon",false);}.bindAsEventListener(this),this);},onCompleteRemoveIconFromShoppingCart:function(b,a){Effect.Fade($(b+a.id));
loader.mergeIcons(true,"icon",false);},removeIconFromShoppingCart:function(c,e,a){if(a){document.location="/cart_remove.jhtml?item="+c.id;}else{for(var b=0;b<this.cartIcons.length;b++){if(this.cartIcons[b]!=null){var d;if(searchedIconsArray.get(c.id)!=null){d=searchedIconsArray.get(c.id);}else{d="0";
}loader=this.getLoader(d);if(this.cartIcons[b].id==c.id){this.cartIcons[b]=null;loader.mergeIcons(true,"icon",true);if(this.ajaxTrigger["remove"+c.id]){return;}this.ajaxTrigger["remove"+c.id]=true;loader.ajax=new Ajax.Request("/cart_remove.jhtml",{method:"post",parameters:"ajax=true&item="+c.id,onSuccess:function(){cart.ajaxTrigger["remove"+c.id]=false;
cart.onCompleteRemoveIconFromShoppingCart(e,c);loader.messagesManager.hide();}.bind(loader),onFailure:function(){cart.ajaxTrigger["remove"+c.id]=false;loader.messagesManager.hide();}.bind(loader),onCreate:function(){loader.messagesManager.setText($(loader.messages["loading"]).innerHTML);loader.messagesManager.show();
}.bind(loader)});break;}}}}},getLoader:function(c){var a=iconLoader[c];if(a==null){a=iconLoader["0"];}if(a==null){for(var b=0;b<iconLoader.length;b++){if(iconLoader[b]!=null){a=iconLoader[b];break;}}}return a;},removeAllIconsFromShoppingCart:function(b,a){if(a){document.location="/cart_remove_all.jhtml";
return;}loader.mergeIcons(true,"icon",false);if(this.ajaxTrigger["removeAll"]){return;}this.ajaxTrigger["removeAll"]=true;this.ajax=new Ajax.Request("/cart_remove_all.jhtml",{method:"post",parameters:"ajax=true",onSuccess:function(){this.ajaxTrigger["removeAll"]=false;this.onCompleteRemoveAllIconsFromShoppingCart(b);
loader.messagesManager.hide();}.bind(this),onFailure:function(){this.ajaxTrigger["removeAll"]=false;loader.messagesManager.hide();}.bind(this),onCreate:function(){try{loader.messagesManager.setText($(loader.messages["loading"]).innerHTML);loader.messagesManager.show();}catch(c){}}.bind(this)});},onCompleteRemoveAllIconsFromShoppingCart:function(c){loader.mergeIcons(true,"icon",false);
for(var a=0;a<this.cartIcons.length;a++){var f=this.cartIcons[a];var b=f.packName;loader=cart.getLoader(b);loader.drawSearchedIcons();}try{for(a=0;a<this.cartIcons.length;a++){if(this.cartIcons[a]!=null&&this.cartIcons[a].id!=null){Effect.Fade($(c+this.cartIcons[a].id));this.cartIcons[a]=null;}}}catch(d){}loader.mergeIcons(true,"icon",false);
},setCartEmpty:function(){try{var b=(cart.cartIcons.length==0);$("empty_cart_note").setStyle({display:(b?"":"none"),overflow:(b?"":"hidden")});$("buyCart_link").href=b?"#":"/user_profile/buy_cart.jhtml";}catch(a){}},addIconToShoppingCart:function(k,j,b){try{var c=$(k).id.replace(/([a-zA-Z_]+)/,"");if(this.ajaxTrigger["add"+c]){return;
}var i={};var a=null;if(searchedIconsArray!=null){a=searchedIconsArray.get(c);}if(a!=null){loader=cart.getLoader(a);}else{loader=iconLoader["0"];}for(var f=0;f<loader.searchedIcons.length;f++){if(loader.searchedIcons[f].id==c){i=loader.searchedIcons[f];break;}}var h=false;for(var d=0;d<this.cartIcons.length;
d++){if(this.cartIcons[d]!=null){if(this.cartIcons[d].id==i.id){h=true;break;}}}if(!h){this.ajaxTrigger["add"+c]=true;this.ajax=new Ajax.Request("/cart_add.jhtml",{parameters:"item="+i.id,onSuccess:function(n){try{this.ajaxTrigger["add"+c]=false;var l=n.responseText.evalJSON();var e=l["error"];if(undefined!=e&&void 0!=e){loader.messagesManager.setText($(loader.messages[e]).innerHTML);
loader.messagesManager.show();loader.messagesManager.hide(5);}else{this.onCompleteAddIconToShoppingCart(l["icons"].evalJSON());loader.messagesManager.hide();}}catch(m){this.ajaxTrigger["removeAll"]=false;loader.messagesManager.hide();}}.bind(this),onCreate:function(){loader.messagesManager.setText($(loader.messages["loading"]).innerHTML);
loader.messagesManager.show();}.bind(this),onFailure:function(){this.ajaxTrigger["add"+c]=false;loader.messagesManager.hide();}.bind(this)});}else{loader.messagesManager.setText($(loader.messages["existIcon"]).innerHTML);loader.messagesManager.show();loader.messagesManager.hide(3);}}catch(g){}},onCompleteAddIconToShoppingCart:function(a){try{this.setCartItems(a,false);
loader.mergeIcons(true,"icon",false);}catch(b){}}};
