// Execute the function hideInStoreShipping() when the page loads.	-RTH

//window.onload = function(e) {

	//var a;

	//if(a = hideInStoreShipping()) {
	
		//displayInStoreShippingButton(a);
	//}
//}



//Macromedia built-in functions
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_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_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 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];}
}

function newwindow(url, name)
{
	popupWin = window.open(url, name, "width=550,height=550,resizable=yes,scrollbars=yes,valign=top,align=left");
}

//function to highlight an object by changing its class
//(appends highlight to the class name)
function highlight(obj)
{
	//declare variables
	var append="Highlight"; /* string to append to class name to highlight the object */
	var className=obj.className;
	
	/* check if class name is greater than the append string */
	if(className.length>=append.length)
	{
		/* check if end of class name is already equal to append string */
		if(className.substr(className.length-append.length,append.length)==append)
		{
			//do nothing
		}
		else
		{
			/* append string to class name to highlight object */
			className=className+append;
		}
	}
	else
	{
		/* append string to class name to highlight object */
		className=className+append;
	}
	
	/* apply new class name to object */
	obj.className=className;
}
//function to unhighlight an object by changing its class
//(removes highlight from the class name)
function unhighlight(obj)
{
	//declare variables
	var append="Highlight";
	var className=obj.className;
	var pos=0;
	
	pos=className.indexOf(append);
	if(pos>=0)
	{
		className=className.substring(0,pos);
	}
	
	obj.className=className;
}

//function to randomize image on 
function randomizeImage()
{
	//declare variables
	var imageArray=new Array; //1st passed argument
	var toRoot=""; //2nd passed argument
	var imageObject; //3rd passed argument
	
	//get argument values
	if(arguments[0])
	{
		imageArray=arguments[0];
	}
	if(arguments[1])
	{
		toRoot=arguments[1];
	}
	if(arguments[2])
	{
		imageObject=arguments[2];
	}
	
	var randomNumber = Math.floor(Math.random()*(imageArray.length))
	imageObject.src = toRoot + imageArray[randomNumber]
}

//function to prevent mailto: links from being written explicitly
function mailTo()
{
	//declare variables
	var prefix=""; //1st passed argument
	var domain=""; //2nd passed argument
	var extra=""; //3rd passed argument
	var atsign="&#64;";
	var addr="";
	
	//get argument values
	if(arguments[0])
	{
		prefix=arguments[0];
	}
	if(arguments[1])
	{
		domain=arguments[1];
	}
	if(arguments[2])
	{
		extra=arguments[2];
	}

	addr=prefix+atsign+domain;
	document.write("<" + "a" + " " + "href=" + "\"mail" + "to:" + addr + extra + "\">" + addr + "<\/a>");
}

//creates text in a mailto tag for an email address, but can display alternate text
function mailtoHidden(username, domain, displayText)
{
	var atsign = "&#64;";
	var addr = username + atsign + domain;
	document.write('<' + 'a' + ' ' + 'href="' + 'mail' + 'to:' + addr + '">' + displayText + '<\/a>');
}

//function to prevent mailto: links from being written explicitly
function mailToOpeningAnchor()
{
	//declare variables
	var prefix=""; //1st passed argument
	var domain=""; //2nd passed argument
	var extra=""; //3rd passed argument
	var atsign="&#64;";
	var addr="";
	
	//get argument values
	if(arguments[0])
	{
		prefix=arguments[0];
	}
	if(arguments[1])
	{
		domain=arguments[1];
	}
	if(arguments[2])
	{
		extra=arguments[2];
	}

	addr=prefix+atsign+domain;
	document.write("<" + "a" + " " + "href=" + "\"mail" + "to:" + addr + extra + "\">");
}

//function to prevent mailto: links from being written explicitly
function emailAddress(prefix, domain)
{
	//declare variables
	var atsign="&#64;";
	var addr="";
	
	addr=prefix+atsign+domain;
	document.write(addr);
}

//sets a cookie value, expiration date is optional
function setCookie(name, value, expire)
{
	document.cookie = name + "=" + escape(value) + ((expire == null) ? "" : ("; expires=" + expire.toGMTString()))
}
//gets a cookie value
function getCookie(name)
{
	//declare variables
	var search = name + "="
	
	if (document.cookie.length > 0)
	{ // if there are any cookies
		offset = document.cookie.indexOf(search)
		if (offset != -1) // if cookie name exists
		{
			offset += search.length // set index of beginning of value
			end = document.cookie.indexOf(";", offset) // set index of end of cookie value
			if (end == -1)
			{
				end = document.cookie.length
			}
			return unescape(document.cookie.substring(offset, end))
		}           
	}
}

function isValidEmailAddress(email)
{
	//declare variables
	var atPos=email.indexOf("@");
	var dotPos=email.lastIndexOf(".");
	var returnValue=true;
	
	if(email.length==0) //check if email is blank
	{
		returnValue=false;
	}
	else if(atPos<1) //check if there are any characters before the "@" sign
	{
		returnValue=false;
	}
	else if(email.length-dotPos<2) //check if there are any characters after the "."
	{
		returnValue=false;
	}
	else if(dotPos-atPos<2) //check if there are any characters between the "@" and the "." and make sure they're in the right order
	{
		returnValue=false;
	}
	
	return returnValue;
}

function isValidPostalZipCode(postalCode,countryCode)
{
	var returnValue=true;
	
	//validate specific content
	if(postalCode.length>0)
	{
		//verify postal code
		if(countryCode=="CA")
		{
			//ensure it is long enough
			if(postalCode.length<6)
			{
				returnValue=false;
			}
			//check for valid format
			else
			{
				var j=0;
				
				// Check for legal characters in string - note index starts at zero
				if('ABCEHJKLMNPRSTVXY'.indexOf(postalCode.charAt(j)) < 0)
				{
					returnValue=false;
				}
				j++;
				if('0123456789'.indexOf(postalCode.charAt(j)) < 0)
				{
					returnValue=false;
				}
				j++;
				if('ABCDEFGHJKLMNPQRSTUVWXYZ'.indexOf(postalCode.charAt(j)) < 0)
				{
					returnValue=false;
				}
				j++;
				
				if(postalCode.charAt(j)==' ')
				{
					j++;
				}
				
				if('0123456789'.indexOf(postalCode.charAt(j)) < 0)
				{
					returnValue=false;
				}
				j++;
				if('ABCDEFGHJKLMNPQRSTUVWXYZ'.indexOf(postalCode.charAt(j)) < 0)
				{
					returnValue=false;
				}
				j++;
				if('0123456789'.indexOf(postalCode.charAt(j)) < 0)
				{
					returnValue=false;
				}
			}
		}
		//verify zip code
		else if(countryCode=="US")
		{
			//ensure it is long enough
			if(postalCode.length<5)
			{
				returnValue=false;
			}
			//check for valid format
			else
			{
				//check to make sure each character is numeric (or a space)
				for(var i=0;i<postalCode.length;i++)
				{
					if('0123456789 '.indexOf(postalCode.charAt(i)) < 0)
					{
						returnValue=false;
					}
				}
			}
		}
	}
	else
	{
		returnValue=false;
	}
	
	return returnValue;
}


// Function to hide the In Store shipping option.	-RTH

function hideInStoreShipping() {

	// First find the correct table to hide.

	var i, a, inner;
	var found = false;
	
	var regex = new RegExp('Store Pickup');
	
	for(i = 0; (a = document.getElementsByTagName("table")[i]); i++) {
	
		// Get contents of first row of the table.
		
		inner = a.rows[0].cells[0].innerHTML;

		if(inner.match(regex))	{
			found = true;
			break;
		}	
	}

	if(found) {
		
		a.style.display = 'none';
		return a;
	}

	return null;
}


function displayInStoreShippingButton(a) {

	document.getElementById('fs-button').style.visibility = 'visible';
}

function displayInStoreShipping() {

	// First find the correct table to hide.


	var i, a, inner;
	var found = false;
	
	var regex = new RegExp('Store Pickup');
	
	for(i = 0; (a = document.getElementsByTagName("table")[i]); i++) {
	
		// Get contents of first row of the table.
		
		inner = a.rows[0].cells[0].innerHTML;

		if(inner.match(regex))	{
			
			found = true;
			break;
		}	
	}

	if(found) {
		
		a.style.display = 'block';
	}
	
	return;
}