
var numdrops;var ajaxresults;var defaultimg;var hashid;var tabClicked=false;document.observe("dom:loaded",function(){numdrops=$('product').select('select.opts_drops').length;initDropdowns();initHiders();loadOptionImageClicks();extraImageHovers();activeAjax();initVals();setupReviewsLinks();setupProductTabs();$('cmform').observe('submit',function(e){productCheck(e)});activateActiveTab();window.onhashchange=activateActiveTab;if($('restrictednojs')){$('restrictednojs').writeAttribute("id","restricted");$('wrapper').insert({top:$('restricted').remove().hide()});$('delpopup').writeAttribute("href","javascript:;").writeAttribute("target","").observe("click",function(){$('restricted').toggle();});Event.observe(document,'click',function(event){if(event.element().id!='delpopup'){$('restricted').hide();}});$('restricted').setStyle({"top":$('delpopup').cumulativeOffset()[1]+"px","left":$('overview').cumulativeOffset()[0]+"px"});}});var outOfStockLabel,defaultPrice,defaultStock,defaultSKU,defaultMPN,defaultEAN,defaultISBN,defaultUPC,defaultRRP;function getPanelHeights(){$$('.desc_area').each(function(element){var size=$(element).getHeight();panelHeights[element.id]=size;});}
function initVals(){if($F('opts_num')>0){new Ajax.Request('/includes/prodoptions.php?mode=getDefaults&pid='+$('mainProduct').value,{onSuccess:function(transport){var coords=transport.responseText.evalJSON();outOfStockLabel=coords.outOfStockLabel;defaultPrice=coords.defaultPrice;defaultStock=coords.defaultStock;defaultSKU=coords.defaultSKU;defaultMPN=coords.defaultMPN;defaultEAN=coords.defaultEAN;defaultISBN=coords.defaultISBN;defaultUPC=coords.defaultUPC;defaultRRP=coords.defaultRRP;}});}}
function initHiders(){if($('liveStock'))$('liveStock').show();}
function loadOptionImageClicks(){$$('#poptThumbs img').each(function(element){Event.observe($(element),'click',optionImageClicks.bindAsEventListener($(element)));});}
function activateActiveTab(){if(!$('noProdTabs')){hashid=(window.location.hash)?hashid=window.location.hash.replace("#tdesc_",""):hashid=1;$('tabwrapper').select('.tablink').each(function(e){$(e).id=($(e).rel=='tab_'+hashid)?'active':'';});$$('.desc_area').each(function(el){if($(el).id=='desc_'+hashid){$(el).appear({duration:0.3});}else{$(el).hide();}});}}
function activeAjax(){setTimeout("showActiveAjax()",10);}
function showActiveAjax(){var numCalls=activeAjaxCalls();if(numCalls>0){if($('activeAjax').empty())$('activeAjax').update('<img src="/images/loading.gif" />');setTimeout("activeAjax()",1000);}else{$('activeAjax').update();activeAjax();}}
function activeAjaxCalls(){return Ajax.activeRequestCount;}
function submitStatus(status){if(status=='show'){$('allowAdd').value='1';if($('action_button'))$('action_button').src='/images/buttons/add.gif';if($('collectinstore'))$('collect_action').src='/images/buttons/collect.gif';}else{$('allowAdd').value='0';if($('action_button'))$('action_button').src='/images/buttons/adddisabled.gif';if($('collectinstore'))$('collect_action').src='/images/buttons/collectdisabled.gif';}}
function highlightSelects(){$$('.opts_drops').each(function(element){new Effect.Highlight($(element));});}
function waitForAjax(){if(activeAjaxCalls()>0){setTimeout("waitForAjax()",250);}else{var sels=0;$$('.opts_drops').each(function(element){if($F(element)){sels++;}});if(sels==numdrops){var tochange=(numdrops+1);var str=$('cmform').serialize();new Ajax.Request('/includes/prodoptions.php?mode=getChosenValues&pid='+$('mainProduct').value+'&new='+tochange+'&num='+numdrops,{postBody:str,onSuccess:function(transport){var coords=transport.responseText.evalJSON();showProductValues(coords.showPrice,coords.stockLabel,coords.showSKU,coords.showMPN,coords.showEAN,coords.showISBN,coords.showUPC,coords.showRRP,coords.manageStockClass,coords.submitButtonChoose,coords.submitStatus);}});}else{showProductValues(defaultPrice,defaultStock,defaultSKU,defaultMPN,defaultEAN,defaultISBN,defaultUPC,defaultRRP,'default','in','hide');}}}
function initDropdowns(){if(numdrops&&(numdrops>1)){$('ah_1').update('<img src="/images/arrow.gif" />');for(var t=2;t<=numdrops;t++){$('opt_'+t).value='';$('opt_'+t).disable();}}}
function optionMenusMagic(num){productRemoveErrorMessages();var t;if($F('opt_'+num)){var str=$('cmform').serialize();for(t=num;t<=numdrops;t++){if(t!=num){$('opt_'+t).value='';$('opt_'+t).disable();}else{tochange=(t+1);$('opt_'+t).enable();}
$('ah_'+t).update();}
if(num<numdrops){new Ajax.Updater('opt_div_'+tochange,'/includes/prodoptions.php?mode=options&pid='+$('mainProduct').value+'&new='+tochange+'&num='+num,{postBody:str,onFailure:function(){window.location.reload();}});}
if($('poptThumbs')){new Ajax.Request('/includes/prodoptions.php?mode=image&pid='+$('mainProduct').value+'&new='+tochange+'&num='+num,{postBody:str,onComplete:function(transport){if(changeImage(transport.responseText))loadImgSrc(transport.responseText);optionImageHighlight(transport.responseText)}});}
if(num==numdrops){new Ajax.Request('/includes/prodoptions.php?mode=getChosenValues&pid='+$('mainProduct').value+'&new='+tochange+'&num='+num,{postBody:str,onSuccess:function(transport){var coords=transport.responseText.evalJSON();showProductValues(coords.showPrice,coords.stockLabel,coords.showSKU,coords.showMPN,coords.showEAN,coords.showISBN,coords.showUPC,coords.showRRP,coords.manageStockClass,coords.submitButtonChoose,coords.submitStatus);}});}else{showProductValues(defaultPrice,defaultStock,defaultSKU,defaultMPN,defaultEAN,defaultISBN,defaultUPC,defaultRRP,'default','in','hide');}}else{showProductValues(defaultPrice,defaultStock,defaultSKU,defaultMPN,defaultEAN,defaultISBN,defaultUPC,defaultRRP,'default','in','hide');for(t=num;t<=numdrops;t++){if(t!=num){$('opt_'+t).value='';$('opt_'+t).disable();}
$('ah_'+t).update();}
optionImageHighlight();loadDefImg();}}
function showProductValues(price,stock,sku,mpn,ean,isbn,upc,rrp,stockclass,submitbut,submitstat){if(price!=''){$('showProdPrice').update(price);}
if(stock!=''){$('liveStockLevel').update(stock);}
if(sku!=''){if($('prodModel')){$('prodModel').update(sku);}}
if(mpn!=''){if($('prodMPN')){$('prodMPN').update(mpn);}}
if(ean!=''){if($('prodEAN')){$('prodEAN').update(ean);}}
if(isbn!=''){if($('prodISBN')){$('prodISBN').update(isbn);}}
if(upc!=''){if($('prodUPC')){$('prodUPC').update(upc);}}
if(rrp!=''){if($('prodRRP')){$('prodRRP').update(rrp);}}
if(stockclass!=''){manageStockClass(stockclass);}
if(submitbut!=''){submitButtonChoose(submitbut);}
if(submitstat!=''){submitStatus(submitstat);}
sortArrowsOut();}
function sortArrowsOut(){var sels=0;$$('.opts_drops').each(function(element){if($F(element)){sels++;}});$$('.arw_holder').each(function(element){$(element).update();});if(sels<numdrops){var sele=(sels+1);$('ah_'+sele).update('<img src="/images/arrow.gif" />');}}
function manageStockClass(status){switch(status){case'default':if($('liveStock').hasClassName('instock'))$('liveStock').removeClassName('instock');if($('liveStock').hasClassName('outstock'))$('liveStock').removeClassName('outstock');break;case'in':if(!$('liveStock').hasClassName('instock'))$('liveStock').addClassName('instock');if($('liveStock').hasClassName('outstock'))$('liveStock').removeClassName('outstock');break;case'out':if($('liveStock').hasClassName('instock'))$('liveStock').removeClassName('instock');if(!$('liveStock').hasClassName('outstock'))$('liveStock').addClassName('outstock');break;}}
function FadeIm(how){(how=='hide')?new Effect.Fade('main_image'):new Effect.Appear('main_image');}
function changeImage(s){var main=((typeof MagicThumb)=='object')?($('def_image').firstDescendant()):'main_image';e=$(main).src;f=getImgSrcReg(s);return(e==f)?false:true;}
function extraImageHovers(){defaultimg=$('main_image').src;$$('#eimgHovers img').each(function(element){if(!$('footersearch')){$(element).observe("mouseover",function(){loadNewImage("/prodmainimg"+((element.id).replace("hoverimg_",""))+".jpg");});$(element).observe("mouseout",function(){loadNewImage(defaultimg);});}
$(element).observe("click",function(){var iNum=(element.id).replace("hoverimg_","");loadNewImage("/prodmainimg"+iNum+".jpg");defaultimg="/prodmainimg"+iNum+".jpg";$('def_image').href="/prodzoomimg"+iNum+".jpg";if((typeof Shadowbox)=='object')Shadowbox.setup($$('a[rel*=lightbox]'));if((typeof MagicThumb)=='object')refreshMagicThumb();$$('#eimgHovers img').each(function(el){if($(el).up("a").hasClassName("selected"))$(el).up("a").removeClassName('selected');});$(element).up("a").addClassName("selected");});});}
function loadNewImage(path){var main=((typeof MagicThumb)=='object')?($('def_image').firstDescendant().id):'main_image';var fullpath;if(!path.match(iPath)){if(path.charAt(0)=='/'){path=path.replace("/","");}
fullpath=iPath+path;}else{fullpath=path;}
var sizestr=imSizes[fullpath];var sizes=sizestr.split("x");$(main).width=sizes[0];$(main).height=sizes[1];$(main).src=path;}
function optionImageHighlight(t){t=getImgSrcReg(t);var a,b,c;if(t){c=t.replace('/prodmainimg','');a=c.split('.');b=a[0];}
$$('#poptThumbs img').each(function(element){iscr=element.src;osr=iscr.split('prodmicroimg');esr=osr[1].split('.');esrc=esr[0];element=$(element).up();(esrc==b)?$(element).addClassName('optsel'):$(element).removeClassName('optsel');});}
function optionImageClicks(){productRemoveErrorMessages();img=this.id.replace('opti_','');$$('#poptThumbs a').each(function(element){$(element).removeClassName('optsel');});this.up().addClassName('optsel');new Ajax.Updater('product_options','/includes/prodoptions.php?mode=chooseselects&pid='+$('mainProduct').value+'&img='+img+'&num='+numdrops,{onFailure:function(){loadImgID(img)},onComplete:function(){str='';used=0;for(var z=numdrops;z>0;z--){var thisval=$F('opt_'+z);if(thisval){str=str+'opt_'+z+'='+thisval+'&';used++;}}
(used)?new Ajax.Request('/includes/prodoptions.php?mode=image&pid='+$('mainProduct').value+'&num='+used,{postBody:str,onComplete:function(transport){if(changeImage(transport.responseText))loadImgSrc(transport.responseText);}}):loadImgID(img);}});waitForAjax();}
function loadDefImg(){if($F('defImg'))loadImgID($F('defImg'));if((typeof MagicThumb)=='object')refreshMagicThumb();}
function loadImgID(i){new Ajax.Request('/includes/prodoptions.php?mode=loadimage&img='+i,{onComplete:function(transport){var main=((typeof MagicThumb)=='object')?($('def_image').firstDescendant().id):'main_image';if($(main).src!=transport.responseText&&transport.responseText!='')loadImgSrc(transport.responseText);}});}
function getImgSrcReg(s){var myregexp=/src="(.*?)"/;var match=myregexp.exec(s);if(match!=null&&match.length>1){return match[1];}
return null;}
function loadImgSrc(s){var i=getImgSrcReg(s);if(i){var pic1=new Image();pic1.src=i;var main=((typeof MagicThumb)=='object')?($('def_image').firstDescendant()):'main_image';new Effect.Fade(main,{duration:.3,queue:'front',afterFinish:function(){if($('def_image'))$('def_image').href=i.replace('prodmainimg','prodzoomimg');$(main).replace(s);main=((typeof MagicThumb)=='object')?($('def_image').firstDescendant()):'main_image';new Effect.Appear(main,{duration:0.3});if((typeof Shadowbox)=='object')Shadowbox.setup($$('a[rel*=lightbox]'));if((typeof MagicThumb)=='object')refreshMagicThumb();}});}else{loadDefImg();}}
function refreshMagicThumb(){MagicZoom_stopZooms();if(Prototype.Browser.IE){setTimeout('MagicZoom_findZooms();MagicThumb.refresh();',10);}else{MagicZoom_findZooms();MagicThumb.refresh();}}
function productCheck(e){var f=$('cmform');if(activeAjaxCalls()>0){setTimeout("productCheck("+f+")",150);}else{var errors=new Array();$$('.opts_drops').each(function(element){if(!($F(element.id))){errors.push(element.id);}});if($('ptext')&&$('ptext').hasClassName('required')){if(!$('ptext').value){$('prod_text_err').appear();Event.stop(e);}else{if($('prod_text_err').visible()){$('prod_text_err').hide();}}}
if(errors.length>0){var erval=$(errors[0]);var id=(erval.id).replace('opt_','');var el='err_'+id;$(el).update(erval.title).hide();productCheckSortClassName(el,'notice error');new Effect.Appear($('err_'+id));$(errors[0]).focus();Event.stop(e);}
if(f.allowAdd.value==0&&$('basket_add').visible()){Event.stop(e);}}}
function productCheckSortClassName(el,newclass){if(!$(el).hasClassName(newclass)){$(el).addClassName(newclass);}}
function productRemoveErrorMessages(){$$('.err_msgs').each(function(el){new Effect.Fade(el,{duration:0.4,afterFinish:function(){$(el).update();}});});if($('outofstock'))$('outofstock').hide();}
function submitButtonChoose(status){if(status=='in'){if($('basket_add'))$('basket_add').show();if($('reminder_add'))$('reminder_add').hide();if($('collectinstore'))$('collectinstore').show();}else{if($('basket_add'))$('basket_add').hide();if($('reminder_add'))$('reminder_add').show();if($('collectinstore'))$('collectinstore').hide();}}
function switchDescArea(){var descArea;descArea=(this.rel)?this.rel:'tab_6';descArea=descArea.replace('tab_','desc_');window.location.hash='#t'+descArea;if(Prototype.Browser.IE){if(/MSIE (\d+\.\d+);/.test(navigator.userAgent))var version=new Number(RegExp.$1);if((version<=7)||(version==8&&document.documentMode==7))activateActiveTab();}}
function setupReviewsLinks(){if($('reviews_link')){$('reviews_link').href='javascript:;';$('reviews_link').observe('click',scrollToReview);}}
function scrollToReview(){if($('fixheight').innerHTML=='1'){new Effect.ScrollTo('open_reviews',{afterFinish:function(){switchDescArea();}});}else{new Effect.ScrollTo('open_reviews');}}
function setupProductTabs(){$('tabwrapper').select('.tablink').each(function(element){$(element).observe('click',switchDescArea.bindAsEventListener($(element)));});}
var Browser=Class.create({initialize:function(){var userAgent=navigator.userAgent.toLowerCase();this.version=(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1];this.webkit=/webkit/.test(userAgent);this.opera=/opera/.test(userAgent);this.msie=/msie/.test(userAgent)&&!/opera/.test(userAgent);this.mozilla=/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent);}});
