	//link back to the product page
function linkToProduct(url){
	window.opener.location=url;
	window.close();
	return false;
}

// Grab all classes by classname
function getElementsByClassName(classname)
{
    var a = [];
    var re = new RegExp('\\b' + classname + '\\b');
    var els = document.getElementsByTagName("*");
    for(var i=0,j=els.length; i<j; i++)
        if(re.test(els[i].className))a.push(els[i]);
    return a;
}

// Changes the classes used in a document, turns all onclasses to off then sets the one ID element to on
//offClass = faqOff, onClass = faqOn, faqId = id to turn on
function changeFaqHead(offClass, onClass, faqID)
{
	var list		= new Array();
	var faqNumber 	= document.getElementById(faqID);
	
	list 			= getElementsByClassName(onClass);

	for (var i = 0; i < list.length; i++)
	{ 
		if(list[i].className==onClass)
		{
			list[i].className = offClass;
		}
	}
	
	faqNumber.className = onClass;
}

	function theProductChanging() 
    {
	//productID is set in the product page script tag
    var url = '/product/Product_Image_Options.aspx?ProductID='+productID +
              getDropdownOption('theProductSize',1) +
              getDropdownOption('theProductColour',2);
    if (window.ActiveXObject) // for IE
      httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
    else if (window.XMLHttpRequest) // for other browsers
      httpRequest = new XMLHttpRequest();

    httpRequest.open("GET", url, false);
    httpRequest.onreadystatechange = function() {processRequest('DoDynamicChanges'); } ;
    httpRequest.send(null);
    }

    function getDropdownOption(theOption,theNumber)
    {
    if(MM_findObj("ctl00$ContentPlaceHolder$"+theOption))
        return '&Option'+theNumber+'='+MM_findObj("ctl00$ContentPlaceHolder$"+theOption)[MM_findObj("ctl00$ContentPlaceHolder$"+theOption).selectedIndex].value;
    else
        return '';
    }
    
  /*  function processRequest(sHandlerName)
    {
      if (httpRequest.readyState == 4)
      {
        if(httpRequest.status == 200)
          eval(sHandlerName + '(httpRequest.responseXML);');
        else
          alert("Error loading page\n"+ httpRequest.status +":"+ httpRequest.statusText);
      }
    } */
    
    function DoDynamicChanges(xXML) 
    {
        if(getValueFromXML('ItemImage', xXML))
            {
            ItemID=getValueFromXML('ItemID', xXML);
            theImage=getValueFromXML('ItemImage', xXML);
            if(theImage.length>0)
				//the var used in this next line is set in the product page
                MM_findObj("ctl00_ContentPlaceHolder_imgProduct").src=JavascriptImageLocation+theImage;
            //ItemRetailPrice=getValueFromXML('ItemRetailPrice', xXML);
            //MM_findObj("ctl00_ContentPlaceHolder_lblRRP").innerHTML="&pound;"+parseFloat(ItemRetailPrice,2);
            ItemPrice=getValueFromXML('ItemPrice', xXML);
            MM_findObj("prodPrice").innerHTML="&pound;"+parseFloat(ItemPrice,2);
            ItemStock=getValueFromXML('ItemStock', xXML)
            if(ItemStock.length>0 && ItemStock>0)
            {
                //MM_findObj("Availability").innerHTML="<span>Availability:</span> In-Stock";
                MM_findObj("divButton").style.visibility='visible';
                
                }
            else
            {
                //MM_findObj("Availability").innerHTML="<span>Availability:</span> Out-Of-Stock (" + ItemID + ")";
                MM_findObj("divButton").style.visibility='hidden';
                }
            }
    }
    
  /*  function getValueFromXML(sTagName, xXML) 
	{
        if (xXML.getElementsByTagName(sTagName)[0].childNodes.length > 0)  
          return (xXML.getElementsByTagName(sTagName)[0].childNodes[0].nodeValue); 
        else
          return '';
    }*/
    
     function rollout()
 {
        var img;
        img = document.getElementById('ctl00_ContentPlaceHolder_hidImagedefault').value
        document.getElementById('ctl00_ContentPlaceHolder_imgProduct').src = img
 }
 
 function showrolloverimage(imagenumber)
 {
 var img;
    if (imagenumber==1)
    {   
        img = document.getElementById('ctl00_ContentPlaceHolder_hidImage1').value;
        document.getElementById('ctl00_ContentPlaceHolder_imgProduct').src = img;
  
        //set thumb to previous img
    }
    
    if (imagenumber==2)
    {
        img = document.getElementById('ctl00_ContentPlaceHolder_hidImage2').value;         
        document.getElementById('ctl00_ContentPlaceHolder_imgProduct').src = img;
    }
    if (imagenumber==3)
    {
        img = document.getElementById('ctl00_ContentPlaceHolder_hidImage3').value;         
        document.getElementById('ctl00_ContentPlaceHolder_imgProduct').src = img;
    }
 }
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function subscribeToNewsletter()
{
var email=MM_findObj("newsemail").value;
var name=MM_findObj("newsname").value;
if(name!='' && email!='' & name!='Enter Name' & email!='Enter Email Address')
{
    var url = '/subscribe.aspx?email=' + email + '&name=' + name ;
    if (window.ActiveXObject) // for IE
      httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
    else if (window.XMLHttpRequest) // for other browsers
      httpRequest = new XMLHttpRequest();

    httpRequest.open("GET", url, false);
    httpRequest.onreadystatechange = function() {processRequest('DoNewsletter'); } ;
    httpRequest.send(null);
 }   
}
    function processRequest(sHandlerName)
    {
      if (httpRequest.readyState == 4)
      {
        if(httpRequest.status == 200)
          eval(sHandlerName + '(httpRequest.responseXML);');
        else
          alert("Error loading page\n"+ httpRequest.status +":"+ httpRequest.statusText);
      }
    } 
    
    function DoNewsletter(xXML) 
    {
    if (getValueFromXML('status',xXML)=='OK')
    {
        MM_findObj("Newsletter_Signup_Content").innerHTML="<p>Thank you for subscribing<br>to our newsletter.</p><p>&nbsp;</p><p>We will be sending you details of promotions and special offers soon.</p>"
    }
    else
    {
        MM_findObj("Newsletter_Signup_Content").innerHTML="<p>An error occured.</p><p>&nbsp;</p><p>Please try again later.</p>"
        //"::" + xXML + "::" + getValueFromXML('status',xXML);
        //
    }
    }
    function getValueFromXML(sTagName, xXML) 
	{
        if (xXML.getElementsByTagName(sTagName)[0].childNodes.length > 0)  
          return (xXML.getElementsByTagName(sTagName)[0].childNodes[0].nodeValue); 
        else
          return '';
    }

function DoChangeBrand()
{
var brandName;
var brandID;
var tempArray;
brandName=MM_findObj("ctl00_By_Brand_Select")[MM_findObj("ctl00_By_Brand_Select").selectedIndex].text;
brandID=MM_findObj("ctl00_By_Brand_Select")[MM_findObj("ctl00_By_Brand_Select").selectedIndex].value;
tempArray=brandName.split(" ")
brandName=tempArray.join("_")
tempArray=brandName.split("&")
brandName=tempArray.join("and")

location='/brands/' + brandName+'/br'+brandID+'.aspx';
}

function popup(mylink, windowname, width, height, scroll)
{
        if (! window.focus)return true;
        var href;
        if (typeof(mylink) == 'string')
        href=mylink;
        else
        href=mylink.href;
        if (scroll==1)
        window.open(href, windowname, 'scrollbars=yes,status=no,width='+width+',height='+height);
        else
        window.open(href, windowname, 'scrollbars=no,status=no,width='+width+',height='+height);
        return false;
} 
// Add bookmark for both browser engines...
function addBookmark(title,url) {
  if (window.sidebar) {
    window.sidebar.addPanel(title, url,"");
  } else if( document.all ) {
    window.external.AddFavorite( url, title);
  } else if( window.opera && window.print ) {
    return true;
  }
} 
//declare the last var and set an initial state (to stop errors)
last = '1';

function activateTip(which){
        //remove any existing highlight
        toTheTop();
        
        //apply the new highlight
		document.getElementById('faqDiv'+which).className = 'active';   
		
		//apply the new highlight on the faq menu
		document.getElementById('faqMenu'+which).className = 'active';   

        //set the last tag so we know which to remove next time
        last = which;
}

function toTheTop(){
        //reset the background image on the faq
		document.getElementById('faqDiv'+last).className = '';   

        //reset the background image on the faq menu
		document.getElementById('faqMenu'+last).className = '';      
        }
//To Use - add this line to your input boxes:
//onChange="capitalizeMe(this)" onkeypress="return handleEnter(this, event)"


function capitalizeMe(obj) {
        val = obj.value;
        newVal = '';
        val = val.split(' ');
        for(var c=0; c < val.length; c++) {
                newVal += val[c].substring(0,1).toUpperCase() + val[c].substring(1,val[c].length) + ' ';
        }
        obj.value = newVal;
}



function handleEnter (field, event) {
    var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
    if (keyCode == 13) {
	   return false;
    }
    else
    return true;
}


function popUpWindow( vURL, vWinName, vWidth, vHeight, vScrollbar)
{
	if (! window.focus)return true;
	
	var vhref;
	var vSWidth = screen.width
	var vSHeight = screen.height
	
	if(vScrollbar == "yes")
	{
		vWidth = new Number(vWidth) + 16
	}
	
	var vleftPos = (vSWidth / 2) - (vWidth / 2)
	var vtopPos = (vSHeight / 2) - (vHeight / 2)
	
	if (typeof(vURL) == 'string')
	{
		vhref = vURL;
	} else {
		vhref = vURL.href;
	}
	window.open(vhref, vWinName, 'scrollbars=' + vScrollbar + ',statusbar=no,menubar=0,width=' + vWidth + ',height=' + vHeight + ',left=' + vleftPos + ',top=' + vtopPos);
	
	return false;
}


function ValidateQty()
{		
	var bError = false;
	
	var quantity = document.getElementById("prod_quantity")

	if (quantity.value == "0" || quantity.value == "" || isNaN(quantity.value) )
	{
		alert("Please enter a quantity");
		//qty.value = "";
		quantity.focus();
		bError = true;
	}


	if (bError == false)
	{
		//Validation OK submit to basket	
		document.product_infoForm.submit();
	}
	else
	{
		return false;	
	}
	
	
}



function popup(mylink, windowname, width, height )
{
	if (! window.focus)return true;
	var href;
	if (typeof(mylink) == 'string')
	href=mylink;
	else
	href=mylink.href;
	window.open(href, windowname, 'scrollbars=no,status=no,width='+width+',height='+height);
	return false;
} 


function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}



function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}