var inCart=false;if(window.location.pathname.match(/\/checkout\/cart\/?$/)){inCart=true;}
function replaceDelUrls(){$$('a').each(function(el){if(el.href.search('checkout/cart/delete')!==-1&&el.href.search('javascript:cartDelete')==-1){el.href='javascript:cartDelete(\''+el.href+'\'); void(0);';}});}
function replaceAddUrls(){$$('a').each(function(el){if(el.href.search('checkout/cart/add')!==-1&&el.href.search('javascript:cartAdd')==-1){el.href='javascript:cartAdd(\''+el.href+'\'); void(0);';}});}
function replaceUpdateUrls(){$$('a').each(function(el){if(el.href.search('checkout/cart/updateItemOptions')!==-1&&el.href.search('javascript:cartUpdate')==-1){el.href='javascript:cartUpdate(\''+el.href+'\'); void(0);';}});}
function cartAdd(url){if(false===inCart){sendcart(url,'url','');}else{window.location.href=url;}}
function cartUpdate(url){if(true===inCart){sendcart(url,'url','');}else{window.location.href=url;}}
function cartDelete(url){var url=url.replace('checkout','ajaxcart');ajaxCartShowLoading();var myAjax=new Ajax.Request(url,{method:'post',postBody:'',onException:function(xhr,e){ajaxCartHideOverlay();alert('Oops, there might have been a problem saving. Please check your cart and try again.');},onComplete:function(xhr){$('ajaxcart_response').innerHTML=xhr.responseText;var response_message=$('ajaxcart_response').down('#response_message');var notice_msg=response_message.down('.notice-msg');var success_msg=response_message.down('.success-msg');var response_actions=$('ajaxcart_response').down('#response_actions');var cart_link=$('ajaxcart_response').down('#cart_link');var cart_side=$('ajaxcart_response').down('#cart_sidebar');var cart_header=$('ajaxcart_response').down('#cart_header');var cart_full=$('ajaxcart_response').down('#cart_full');$('ajaxcart_confirm').innerHTML=''+'<div id="ajaxcart_confirm_wrapper">'+
response_message.innerHTML+'</div>';$$('.header-cart').each(function(el){el.innerHTML=cart_link.innerHTML;});$('header-cart').innerHTML=cart_header.innerHTML;$$('.block-cart').each(function(el){el.replace(cart_side.innerHTML);});var process_reload_cart=false;$$('.cart').each(function(el){el.replace(cart_full.innerHTML);process_reload_cart=true;});if(false===process_reload_cart){$$('.checkout-cart-index .col-main').each(function(el){el.replace(cart_full.innerHTML);});}
ajaxCartHideOverlay();ajaxCartInit();}});}
function sendcart(url,type,id){var ajaxUrl='',ajaxMethod='post',ajaxPostBody='',ajaxParameters='';if(type==='form'){ajaxUrl=$(id).action.replace('checkout','ajaxcart');ajaxPostBody=$(id).serialize();ajaxParameters=Form.serialize(id);}else if(type==='url'){ajaxUrl=url.replace('checkout','ajaxcart');}else{return true;}
ajaxCartShowLoading();if(typeof myLightWindow!=='undefined'&&!window.shopTheLook){myLightWindow.deactivate();}
var myAjax=new Ajax.Request(ajaxUrl,{method:ajaxMethod,postBody:ajaxPostBody,parameters:ajaxParameters,onException:function(xhr,e){ajaxCartHideOverlay();alert('Oops, there might have been a problem saving. Please check your cart and try again.');},onComplete:function(xhr){$('ajaxcart_response').innerHTML=xhr.responseText;var response_message=$('ajaxcart_response').down('#response_message');var notice_msg=response_message.down('.notice-msg');var success_msg=response_message.down('.success-msg');var response_actions=$('ajaxcart_response').down('#response_actions');var cart_link=$('ajaxcart_response').down('#cart_link');var cart_side=$('ajaxcart_response').down('#cart_sidebar');var cart_header=$('ajaxcart_response').down('#cart_header');var cart_full=$('ajaxcart_response').down('#cart_full');$('ajaxcart_confirm').innerHTML=''+'<div id="ajaxcart_confirm_wrapper">'+
response_message.innerHTML+'</div>';$$('.header-cart').each(function(el){el.innerHTML=cart_link.innerHTML;});$('header-cart').innerHTML=cart_header.innerHTML;$$('.block-cart').each(function(el){el.replace(cart_side.innerHTML);});var process_reload_cart=false;$$('.cart').each(function(el){el.replace(cart_full.innerHTML);process_reload_cart=true;});if(false===process_reload_cart){$$('.checkout-cart-index .col-main').each(function(el){el.replace(cart_full.innerHTML);});}
if(notice_msg){ajaxCartShowConfirm();}else{ajaxCartHideOverlay();if(false===inCart){DO.ui.headerCart.show();DO.ui.magicZoom.lwGalleryFix();DO.ui.headerCart.hide.delay(7);window.scrollTo(0,0);}else{lightWindowInit();}}
ajaxCartInit();}});}
function ajaxCartShowOverlay(){new Effect.Appear($('ajaxcart_overlay'),{duration:0.5,to:0.7});}
function ajaxCartHideOverlay(){$('ajaxcart_overlay','ajaxcart_progress','ajaxcart_confirm').invoke('hide');}
function ajaxCartCenterWindow(element){var el=$(element);if(el){var elDims=el.getDimensions();var viewPortScrollOffsets=document.viewport.getScrollOffsets();var x,y;if(Prototype.Browser.IE){if(document.documentElement.clientWidth==0){y=(viewPortScrollOffsets.top+(document.body.clientHeight-elDims.height)/2);x=(viewPortScrollOffsets.left+(document.body.clientWidth-elDims.width)/2);}else{y=(viewPortScrollOffsets.top+(document.documentElement.clientHeight-elDims.height)/2);x=(viewPortScrollOffsets.left+(document.documentElement.clientWidth-elDims.width)/2);}}else{y=Math.round(viewPortScrollOffsets.top+((window.innerHeight-elDims.height))/2);x=Math.round(viewPortScrollOffsets.left+((window.innerWidth-elDims.width))/2);}
el.setStyle({position:'absolute',top:y+'px',left:x+'px'});}}
function ajaxCartShowLoading(){ajaxCartShowOverlay();var progress_box=$('ajaxcart_progress');progress_box.show();$('ajaxcart_progress').innerHTML=$('ajaxcart_progress_data').innerHTML;progress_box.setStyle({position:'absolute'});ajaxCartCenterWindow(progress_box);}
function ajaxCartShowConfirm(){ajaxCartShowOverlay();$('ajaxcart_progress').hide();var confirm_box=$('ajaxcart_confirm');confirm_box.show();confirm_box.setStyle({position:'absolute'});ajaxCartCenterWindow(confirm_box);}
function ajaxCartInit(){replaceDelUrls();replaceAddUrls();replaceUpdateUrls();if($('ajaxcart_overlay')){$('ajaxcart_overlay').observe('click',ajaxCartHideOverlay);var canUseAjax=!(false===inCart&&$('product_addtocart_form')&&$('product_addtocart_form').action.search('checkout/cart/updateItemOptions')!=-1);if(true===canUseAjax){var cartInt=setInterval(function(){if(typeof productAddToCartForm!='undefined'){if($('ajaxcart_overlay')){$('ajaxcart_overlay').observe('click',ajaxCartHideOverlay);}
productAddToCartForm.submit=function(el){if(this.validator&&this.validator.validate()){sendcart('','form','product_addtocart_form');clearInterval(cartInt);}
return false;};}else{clearInterval(cartInt);}},500);}}}
if(Prototype.Browser.IE){Event.observe(window,'load',ajaxCartInit);}else{document.observe('dom:loaded',ajaxCartInit);}
