function init() {
  // quit if this function has already been called
  if (arguments.callee.done) return;

  // flag this function so we don't do the same thing twice
  arguments.callee.done = true;

  // kill the timer
  if (_timer) clearInterval(_timer);


};

/* for Mozilla/Opera9 */
if (document.addEventListener) {
  document.addEventListener("DOMContentLoaded", init, false);
}


/* for Safari */
if (/WebKit/i.test(navigator.userAgent)) { // sniff
  var _timer = setInterval(function() {
    if (/loaded|complete/.test(document.readyState)) {
      init(); // call the onload handler
    }
  }, 10);
}

/* for other browsers */
window.onload = init;



function noop() {
}

function lol() {
	alert("lol");
}

function rand( min, max ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Leslie Hoare
    // *     example 1: rand(1, 1);
    // *     returns 1: 1
 
    if( max ) {
        return Math.floor(Math.random() * (max - min + 1)) + min;
    } else {
        return Math.floor(Math.random() * (min + 1));
    }
}

function CenterFrame() {
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
  }
  var winMargin = ((myWidth - 1000) / 2);
  if (winMargin > 0)
  {
  	var mainFrame = document.getElementById("t0-mainframe");
  	mainFrame.setAttribute("style", "margin-left: " + winMargin + "px;");
  	mainFrame.style.marginLeft = winMargin;
  	
  }
}

function CenterTopBar() 
{
	var bar = document.getElementById("t0-bar");
	var loader = document.getElementById("t1-bar");

	var tds = bar.getElementsByTagName("td");

	loader.style.display = "none";
	bar.style.display = "block";

	var wtotal = 0;
	var margin = 0;	
	var btotal = 0;

	for (i=0; i < tds.length; i++)
	{
		if(tds[i].className != 'sep')
			{
			wtotal += (tds[i].clientWidth || tds[i].innerWidth);
			btotal++;
			}
	}
	
	margin = ((865 - wtotal) / btotal) / 2;

	for (i=0; i < tds.length; i++)
	{
		if(tds[i].className != 'sep')
		{
		tds[i].setAttribute("style", "padding: 0px " + margin + "px;");
  	tds[i].style.padding = "0px " + margin + "px";
		}
	}

}




function IsNumeric(sText)
{
	var ValidChars = "0123456789";
	var IsNumber=true;
	var Char;

	for (z=0; z<sText.length && IsNumber==true; z++) 
	{
		Char = sText.charAt(z); 
		if ((ValidChars.indexOf(Char) == -1) || (z == 6))
		{
			IsNumber = false;
		}
	}
	return IsNumber;
}

function SideMenuCascade(item)
{
	var categoryList = item.parentNode;
	var subitemList = categoryList.getElementsByTagName("ul")[0];
	var subitemImage = categoryList.getElementsByTagName("img")[0];
	if (subitemList.className == "on") 
	{
		subitemImage.src = "img/button/cat_plus.jpg";
		subitemList.className = "off";
	}
	else if (subitemList.className == "off") {
		subitemList.className = "on";
		subitemImage.src = "img/button/cat_minus.jpg";
	}
}
function SubOptionFade(item)
{
	var allItemOptions = item.parentNode.getElementsByTagName("div");
	var thisItemRadio = item.getElementsByTagName("input")[0];

	for (i=0; i < allItemOptions.length; i++)
	{
		if (allItemOptions[i].id == "t4-iteminfo-option")
		{
			allItemOptions[i].className = "out";
		}
	}
	item.className = "in";

	if (thisItemRadio.getAttribute("type") == "radio"){
		thisItemRadio.click();
	}
	else {
		alert("Error");
	}
}
function AddImagePlus(item, show)
{
	var plusDiv = item.getElementsByTagName("div")[0];
	if (show == "on")
	{
		plusDiv.className = "on";
	}
	else if (show == "off")
	{
		plusDiv.className = "off";
	}
}
function ReplaceItemImage(item)
{
	var itemImage = document.getElementById("t3-iteminfo-image").getElementsByTagName("img")[0];
	itemImage.src = "img/item/" + item;
}

function GetXmlHttpObject()
{
	var xmlHttp=null;
	try
	 {
	 // Firefox, Opera 8.0+, Safari
	 xmlHttp=new XMLHttpRequest();
	 }
	catch (e)
	 {
	 //Internet Explorer
	 try
	  {
	  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
	  }
	 catch (e)
	  {
	  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
	  }
	 }
	return xmlHttp;
}

function ItemPagesClick(category, item, meta)
{
	var itemAllSpans = item.parentNode.parentNode.getElementsByTagName("span");
	var itemNumSpans = itemAllSpans.length;
	var itemValue = item.innerHTML;

	if (itemValue.match("Next") || itemValue.match("Previous"))
	{
		for (i=1; i < itemNumSpans-1; i++)
		{
			if (isInteger(itemAllSpans[i].innerHTML))
			{
				if (itemValue.match("Next"))
				{
					itemValue = parseInt(itemAllSpans[i].innerHTML) + 1;
				}
				else if (itemValue.match("Previous"))
				{
					itemValue = parseInt(itemAllSpans[i].innerHTML) - 1;
				}
				i = itemNumSpans-1;
			}
		}
	}
	
	//alert(itemValue);
	for (i=1; i < itemNumSpans-1; i++)
	{
		if (i == itemValue)
		{
			itemAllSpans[i].className = "inactive";
			itemAllSpans[i].innerHTML = itemValue;
		}
		else
		{
			itemAllSpans[i].className = "active";
			itemAllSpans[i].innerHTML = "<a class=\"num\" href=\"#items_pointer\" onclick=\"javascript:ItemPagesClick(" + category + ", this, " + meta + ");\">" + i + "</a>";
		}
		//alert(itemAllSpans[i].innerHTML);
	}
	if (itemValue == 1)
	{
		itemAllSpans[0].className = "inactive";
		itemAllSpans[0].innerHTML = "&lt;&lt;&nbsp;Previous";
	}
	else
	{
		itemAllSpans[0].className = "active";
		itemAllSpans[0].innerHTML = "<a href=\"#items_pointer\" onclick=\"javascript:ItemPagesClick(" + category + ", this, " + meta + ");\">&lt;&lt;&nbsp;Previous</a>";
	}
	
	if (itemValue == (itemNumSpans - 2))
	{
		itemAllSpans[itemNumSpans-1].className = "inactive";
		itemAllSpans[itemNumSpans-1].innerHTML = "Next&nbsp;&gt;&gt;";
	}
	else
	{
		itemAllSpans[itemNumSpans-1].className = "active";
		itemAllSpans[itemNumSpans-1].innerHTML = "<a href=\"#items_pointer\" onclick=\"javascript:ItemPagesClick(" + category + ", this, " + meta + ");\">Next&nbsp;&gt;&gt;</a>";
	}

	//itemSpan.innerHTML = "1";
	//itemSpan.className = "inactive";
	FeedItems(category, itemValue, meta);
	
	
}

function mv_top()
{
  window.scrollTo(0,0);
}


function FeedItems(category, page, meta)
{
	function stateChanged() 
	{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	 { 
	 	itemsDiv.innerHTML = xmlHttp.responseText;
	 	mv_top();
	 } 
	}
	

	var xmlHttp;
	var itemsDiv = document.getElementById("t2-items");

	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
	 {
	 alert ("Browser does not support HTTP Request");
	 return;
	 }
	var url="get_items.php";
	url=url+"?c="+category;
	url=url+"&p="+page;
	url=url+"&s="+meta;
	xmlHttp.onreadystatechange=stateChanged ;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function ChangePreview(item)
{

	var itemAllTD = item.parentNode.parentNode.parentNode.getElementsByTagName("td");
	var itemAllPreview;
	
	var image = '';

	for (f in JSON_OPTIONS)
		for (z in JSON_OPTIONS[f]['options']) if("o" + JSON_OPTIONS[f]['options'][z]['id'] == item.getAttribute("value")) image = JSON_OPTIONS[f]['options'][z];


	html = '';

	for (i=0; i < itemAllTD.length; i++)
	{
		if (itemAllTD[i].className == "preview")
		{
			if(image['image'] != '' && image['image'] != undefined && image['name'] != undefined)
			{	
				html = '<div name="o'+ z['id'] +'" class="on" onmouseover="showtrail(\'img/color/' + image['image'] + '\', \'\', \'1\', 1);" onmouseout="hidetrail();">';
				html += '<img src="img/color/mini/'+ image['image'] +'" alt="' + image['name'] + '" /></div>';
			}
			else
			{
				html = '<div name="o0" class="on">';
				html += '<img src="img/color/mini/no_preview.jpg" alt="No Preview" />';
				html += '</div>';
			}
			itemAllTD[i].innerHTML = html;
			
		}
	}
}

function ResetSeatSelect(item)
{
	var radioInputs = document.getElementsByTagName("input");
	var thisRadio;
	var thisSelect;
	for (k=0; k<radioInputs.length; k++)
	{
		thisRadio = radioInputs[k];
		if (thisRadio.getAttribute("name") == "sr")
		{
			if (!thisRadio.checked)
			{
				//alert (thisRadio.getAttribute("name"));
				thisSelect = thisRadio.parentNode.parentNode.getElementsByTagName("select")[0];
				thisSelect.selectedIndex = 0;
				ChangePreview(thisSelect.options[0]);
			}
		}
	}
}

function newShowDiv(sDiv, opName, sHTML, nOffset)
{
    if (nOffset != null)
    {
        var oDiv = document.getElementById(sDiv);
        oDiv.style.display = "block";
        //alert(oDiv.innerHTML);
        Effect.ScrollTo(sDiv, { duration: 1, offset: nOffset,  queue: "begin" });
        oDiv.style.display = "none";
    }
    
   
    if (sHTML != null) 
        oDiv.innerHTML = sHTML;
   
   var Wrapper = document.getElementById('wrapper_item_colors_script');

   if (document.getElementById('optionName') == null)
      {   
										
    
        var optionName = "<div id=\"wrapper_item_colors_script\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" class=\"head\"><tbody><tr><td style=\"width: 33px\"><img alt=\"\" src=\"img/layout/menu_bg_left.gif\"/></td><td class=\"text\"><span id=\"optionName\">" + opName + " Options</span> </td><td style=\"width: 33px\"><img alt=\"\" src=\"img/layout/menu_bg_right.gif\"/></td></tr></tbody></table></div>";
        //var optionName = "<div id=\"wrapper_item_colors_script\"><h2 id=\"optionName\" class=\"box_title\">" + opName + " Options</h2></div>";
        Element.insert(oDiv, {'before':optionName});
      }
      else {
        var optionName = document.getElementById('optionName');
        optionName.innerHTML = opName + " Options";
      }

  Effect.BlindDown(sDiv, { duration: 0.8, queue: "end" });

   return false;

}

function ResetAllSelects()
{
	var radioInputs = document.getElementsByTagName("input");
	var thisRadio;
	var thisSelect;
	for (k=0; k<radioInputs.length; k++)
	{
		thisRadio = radioInputs[k];
		if (thisRadio.getAttribute("name") == "sr")
		{
				thisSelect = thisRadio.parentNode.parentNode.parentNode.parentNode.getElementsByTagName("select")[0];
				thisSelect.selectedIndex = 0;
				ChangePreview(thisSelect.options[0]);
		}
	}
}

function newSelectOption(sHideDiv, sOptionSelect, sOptionID, nOffset)
{
    var optionSelect = document.getElementById(sOptionSelect);
    var nCount;
   
    for (nCount = 0; nCount < optionSelect.length; nCount++)
    {
     
        if (optionSelect[nCount].value == sOptionID)
        {
            hidetrail();
            if (sOptionSelect.charAt(0) == 's')
            {
              ResetAllSelects();
              var thisRadio = optionSelect.parentNode.parentNode.parentNode.parentNode.getElementsByTagName("INPUT")[0];
              thisRadio.checked = true;
              SubOptionFade(optionSelect.parentNode.parentNode.parentNode.parentNode);
            }
            optionSelect.selectedIndex = nCount;
            ChangePreview(optionSelect.options[optionSelect.selectedIndex]);
            Effect.BlindUp(sHideDiv, { duration: 0.4, queue: "begin" });
            Effect.ScrollTo(sOptionSelect, { duration: 1.0, offset: nOffset, queue: "end" });
            $('wrapper_item_colors_script').remove();
            return false;
        }
    }
}

function ShowLoginPanel()
{
	var loginDiv2 = document.getElementById("t0-login2");
	var loginDiv = document.getElementById("t0-login");
	if (loginDiv2)
	{
		loginDiv2.className = "off";
	}
	loginDiv.className = "on";
}
function ShowLoginRetry()
{
	var loginDiv = document.getElementById("t2-login-left");
	var allBoxes = loginDiv.getElementsByTagName("div");
	for (i=0; i<allBoxes.length; i++)
	{
		if (allBoxes[i].id == "t2-login-box")
		{
			if (allBoxes[i].className == "on")
			{
				allBoxes[i].className = "off";
			}
			else if (allBoxes[i].className == "off")
			{
				allBoxes[i].className = "on";
			}
		}
	}
}
function CheckAddItem(catName)
{
	//var selectAll = document.getElementById("t3-iteminfo-advanced").getElementsByTagName("select");
	//alert (optionDiv.nodeName);
	
	var hasSeat = false;
	var inputSeat = document.itemform.sr;
	if (inputSeat)
	{
		hasSeat = true;
		selectSeat = false;

		if (inputSeat.length)
		{
			for (i=0; i<inputSeat.length; i++)
			{
				if (inputSeat[i].checked)
				{
					selectSeat = inputSeat[i].getAttribute("value");
				}
			}
		}
		else
		{
			if (inputSeat.checked)
			{
				selectSeat = inputSeat.getAttribute("value");				
			}
		}
	}

	var errorMsg = "";

	if ((hasSeat) && (!selectSeat))
	{
		errorMsg += "Please select a seat option.\n";
	}

	var selectOk = true;
	var selectAll = document.itemform.elements;
	var thisOpt;
	for (i=0; i<selectAll.length; i++)
	{
		thisOpt = selectAll[i];
		if (thisOpt.nodeName == "SELECT")
		{
			if ((thisOpt.getAttribute("name").charAt(0) == "c") || 
					(thisOpt.getAttribute("name").charAt(0) == "r") || 
					((thisOpt.getAttribute("name").charAt(0) == "s") && (thisOpt.getAttribute("name") == selectSeat)))
			{
				if (thisOpt.options[thisOpt.selectedIndex].getAttribute("value") == "o0")
				{
					if (selectOk)
					{
						errorMsg += "Please complete all required options.\n";
						selectOk = false;
					}
				}
			}
		}
		else if (thisOpt.nodeName == "INPUT")
		{
			if (thisOpt.getAttribute("name") == "q")
			{
				if ((thisOpt.value == "") || (!IsNumeric(thisOpt.value)) || (parseInt(thisOpt.value) <= 0))
				{
					errorMsg += "Please enter a valid quantity.\n";
				}
			}
		}
	}

	if (errorMsg == "")
	{
	 _gaq.push(['_trackPageview', 'add_to_cart/' + catName]);
		return true;
	}
	else
	{
		alert (errorMsg);
		return false;
	}

}
function CheckChangeCart()
{
	var errorMsg = "";

	var selectOk = true;
	var selectAll = document.cartform.elements;
	var thisOpt;
	for (i=0; i<selectAll.length; i++)
	{
		thisOpt = selectAll[i];
		if (thisOpt.nodeName == "INPUT")
		{
			if (thisOpt.getAttribute("name").charAt(0) == "q")
			{
				if ((thisOpt.value == "") || (!IsNumeric(thisOpt.value)) || (parseInt(thisOpt.value) <= 0))
				{
					if (selectOk)
					{
						errorMsg += "Please enter a valid quantity.\n";
						selectOk = false;
					}
				}
			}
		}
	}

	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert (errorMsg);
		return false;
	}
}
function CheckUserDetails(item)
{
	var selectAll = document.userdetailsform.elements;
	var thisOpt;
	var errorMsg = "";
	var emailPattern=/^([a-zA-Z0-9\_\.\-])+@([a-zA-Z0-9_\.\-])+\.([a-zA-Z])+([a-zA-Z])+$/;
	var passPattern=/^([a-zA-Z0-9\_\.\-\!\@\#\$\%\^\&\*\(\)\+\{\}\[\]\|\,\;\~\'\w]){6,64}$/;
	var phonePattern=/^([0-9\_\-\(\)\#\* ])+$/;
	var zipPattern=/^([0-9]){5}$/;
	var canadaZipPattern = /^[ABCEGHJKLMNPRSTVXY][0-9][A-Z]( |)[0-9][A-Z][0-9]$/; 

	var cbShipping = document.userdetailsform.b_info.checked;

	var valueOk = true;
	for (i=0; i<selectAll.length; i++)
	{
		thisOpt = selectAll[i];
		if (((item == "signup") && (thisOpt.getAttribute("name") != "b_company") && (thisOpt.getAttribute("name") != "s_address2") && (thisOpt.getAttribute("name") != "b_address2") && (thisOpt.getAttribute("name") != "s_ephone") && (thisOpt.getAttribute("name") != "b_ephone")) ||
				((item == "account") && (thisOpt.getAttribute("name") != "b_company") && (thisOpt.getAttribute("name") != "s_address2") && (thisOpt.getAttribute("name") != "b_address2") && (thisOpt.getAttribute("name") != "s_ephone") && (thisOpt.getAttribute("name") != "b_ephone") && (thisOpt.getAttribute("name") != "pass1") && (thisOpt.getAttribute("name") != "pass2")))
		{
			if (thisOpt.value == "")
			{
				if ((cbShipping) && (thisOpt.getAttribute("name").charAt(0) == "b") && (thisOpt.getAttribute("name").charAt(1) == "_"))
				{
				}
				else
				{
					if (valueOk)
					{
						errorMsg += "Please fill all required fields.\n";
						valueOk = false;
					}
				}
			}
		}
	}

	if (document.userdetailsform.pass1.value != document.userdetailsform.pass2.value)
	{
		errorMsg += "Please retype the password correctly.\n";
	}
	if ((document.userdetailsform.pass1.value != "") && (!passPattern.test(document.userdetailsform.pass1.value)))
	{
		errorMsg += "Please enter a valid password (atleast 6 characters).\n";
	}

	if ((item != "account") && (document.userdetailsform.email.value != "") && (!emailPattern.test(document.userdetailsform.email.value)))
	{
		errorMsg += "Please enter a valid email address.\n";
	}
	if (cbShipping)
	{
	 if ((document.userdetailsform.s_country.value == "US") || (document.userdetailsform.s_country.value == "MX"))
	  {
	     	if ((document.userdetailsform.s_zip.value != "") && (!zipPattern.test(document.userdetailsform.s_zip.value)))
		    {
			       errorMsg += "Please enter a valid zip code.\n";
		    }
	  }

		if(document.userdetailsform.s_country.value == "CA") 
    {
        if ((document.userdetailsform.s_zip.value != "") && (!canadaZipPattern.test(document.userdetailsform.s_zip.value)))
		    {
    			   errorMsg += "Please enter a valid postal code.\n";
  		  }
    }
		
		
		if (((document.userdetailsform.s_dphone.value != "") && (!phonePattern.test(document.userdetailsform.s_dphone.value))) || 
				((document.userdetailsform.s_ephone.value != "") && (!phonePattern.test(document.userdetailsform.s_ephone.value))))
		{
			errorMsg += "Please enter a valid phone number.\n";
		}
		if ((document.userdetailsform.s_country.value != "US") &&	(document.userdetailsform.s_country.value != "CA") && (document.userdetailsform.s_country.value != "MX"))
		{
			errorMsg += "Please choose a valid country.\n";
		}
	}
	else
	{
		if ((document.userdetailsform.s_country.value == "US") || (document.userdetailsform.s_country.value == "MX"))
	 {
	     	if ((document.userdetailsform.s_zip.value != "") && (!zipPattern.test(document.userdetailsform.s_zip.value)))
		    {
			       errorMsg += "Please enter a valid zip code.\n";
		    }
	 }

		if(document.userdetailsform.s_country.value == "CA") 
    {
        if ((document.userdetailsform.s_zip.value != "") && (!canadaZipPattern.test(document.userdetailsform.s_zip.value)))
		    {
    			   errorMsg += "Please enter a valid postal code.\n";
  		  }
    }
    
    if ((document.userdetailsform.b_country.value == "US") || (document.userdetailsform.b_country.value == "MX"))
	 {
	     	if ((document.userdetailsform.b_zip.value != "") && (!zipPattern.test(document.userdetailsform.b_zip.value)))
		    {
			       errorMsg += "Please enter a valid zip code.\n";
		    }
	 }

		if(document.userdetailsform.b_country.value == "CA") 
    {
        if ((document.userdetailsform.b_zip.value != "") && (!canadaZipPattern.test(document.userdetailsform.b_zip.value)))
		    {
    			   errorMsg += "Please enter a valid postal code.\n";
  		  }
    }
		
		
		if (((document.userdetailsform.s_dphone.value != "") && (!phonePattern.test(document.userdetailsform.s_dphone.value))) || 
				((document.userdetailsform.s_ephone.value != "") && (!phonePattern.test(document.userdetailsform.s_ephone.value))) || 
				((document.userdetailsform.b_dphone.value != "") && (!phonePattern.test(document.userdetailsform.b_dphone.value))) || 
				((document.userdetailsform.b_ephone.value != "") && (!phonePattern.test(document.userdetailsform.b_ephone.value))))
		{
			errorMsg += "Please enter valid phone numbers.\n";
		}
		if (((document.userdetailsform.s_country.value != "US") &&	(document.userdetailsform.s_country.value != "CA") && (document.userdetailsform.s_country.value != "MX")) ||
				((document.userdetailsform.b_country.value != "US") &&	(document.userdetailsform.b_country.value != "CA") && (document.userdetailsform.b_country.value != "MX")))
		{
			errorMsg += "Please choose a valid country.\n";
		}
	}

	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}
function ShowShipping(item)
{
	var allTDs = item.parentNode.parentNode.parentNode.getElementsByTagName("td");
	for (i=0; i<allTDs.length; i++)
	{
		if (allTDs[i].className == "on")
		{
			allTDs[i].className = "off";
		}
		else if (allTDs[i].className == "off")
		{
			allTDs[i].className = "on";
		}
	}
}
function CheckCheckout()
{
	var ccnumPattern=/^[0-9]{4}\-?[0-9]{4}\-?[0-9]{0,4}\-?[0-9]{0,4}$/;
	var errorMsg = "";
	
	var cbSelected = false;
	if (document.checkoutform.method.length)
	{
		for (i=0; i<document.checkoutform.method.length; i++)
		{
			if (document.checkoutform.method[i].checked)
			{
				cbSelected = document.checkoutform.method[i].getAttribute("value");
			}
		}
	}
	else
	{
		if (document.checkoutform.method.checked)
		{
			cbSelected = document.checkoutform.method.getAttribute("value");
		}
	}

	if (cbSelected)
	{
		if (cbSelected == "credit")
		{
			if ((document.checkoutform.cc_name.value == "") ||
					(document.checkoutform.cc_num.value == "") ||
					(document.checkoutform.cc_type.value == "") ||
					(document.checkoutform.cc_exp_month.value == "") ||
					(document.checkoutform.cc_exp_year.value == ""))
			{
				errorMsg += "Please fill all required fields.\n";
			}
			if ((document.checkoutform.cc_num.value != "") && (!ccnumPattern.test(document.checkoutform.cc_num.value)))
			{
				errorMsg += "Please enter a vaild credit card number.\n";
			}
		}
	}
	else
	{
		errorMsg += "Please select a payment method.\n";
	}
	
	if (!document.checkoutform.confirm.checked)
	{
		errorMsg += "Please confirm that you have read and agreed to our policies.\n";
	}
	
	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}
function ChoosePaymentMethod(item)
{
	var allInput = item.getElementsByTagName("input")
	for (i=0; i<allInput.length; i++)
	{
		if (allInput[i].getAttribute("name") == "method")
		{
			allInput[i].click();
		}
	}	
}
function CheckSearchString()
{
	var errorMsg = "";
	
	if (document.searchform.search_string.value == "")
	{
		errorMsg += "Please enter a search string.\n";
	}

	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}
function CheckResetPass()
{
	var passPattern=/^([a-zA-Z0-9\_\.\-\!\@\#\$\%\^\&\*\(\)\+\{\}\[\]\|\,\;\~\'\w]){6,64}$/;
	var errorMsg = "";
	
	if ((document.resetpassform.pass1.value == "") || (document.resetpassform.pass2.value == ""))
	{
		errorMsg += "Please fill all required fields.\n";
	}
	if (document.resetpassform.pass1.value != document.resetpassform.pass2.value)
	{
		errorMsg += "Please retype the password correctly.\n";
	}
	if ((document.resetpassform.pass1.value != "") && (!passPattern.test(document.resetpassform.pass1.value)))
	{
		errorMsg += "Please enter a valid password (atleast 6 characters).\n";
	}

	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}

function CheckLogin()
{
	var errorMsg = "";
	var emailPattern=/^([a-zA-Z0-9\_\.\-])+@([a-zA-Z0-9_\.\-])+\.([a-zA-Z])+([a-zA-Z])+$/;

	if ((document.loginform.email.value == "") || (document.loginform.password.value == ""))
	{
		errorMsg += "Please fill all required fields.\n";
	}
	if ((document.loginform.email.value != "") && (!emailPattern.test(document.loginform.email.value)))
	{
		errorMsg += "Please enter a valid email address.\n";
	}

	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}
function CheckForgot()
{
	var errorMsg = "";
	var emailPattern=/^([a-zA-Z0-9\_\.\-])+@([a-zA-Z0-9_\.\-])+\.([a-zA-Z])+([a-zA-Z])+$/;

	if (document.forgotform.forgot_email.value == "")
	{
		errorMsg += "Please fill all required fields.\n";
	}
	if ((document.forgotform.forgot_email.value != "") && (!emailPattern.test(document.forgotform.forgot_email.value)))
	{
		errorMsg += "Please enter a valid email address.\n";
	}

	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}
function CheckContact()
{
	var errorMsg = "";
	var emailPattern=/^([a-zA-Z0-9\_\.\-])+@([a-zA-Z0-9_\.\-])+\.([a-zA-Z])+([a-zA-Z])+$/;

	if ((document.contactform.email.value == "") ||
			(document.contactform.fullname.value == "") ||
			(document.contactform.subject.value == "") ||
			(document.contactform.message.value == ""))
	{
		errorMsg += "Please fill all required fields.\n";
	}

	if ((document.contactform.email.value != "") && (!emailPattern.test(document.contactform.email.value)))
	{
		errorMsg += "Please enter a valid email address.\n";
	}

	if (errorMsg == "")
	{
	  _gaq.push(['_trackPageview', 'contact_us']);
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}

function GetFreight(item)
{
	function stateChanged() 
	{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	 { 
	 	textTD.innerHTML = xmlHttp.responseText;
	 } 
	}

	var allTDs = document.getElementById("t3-cart-freight").getElementsByTagName("td");
	for (i=0; i<allTDs.length; i++)
	{
		if (allTDs[i].className == "name8")
		{
			textTD = allTDs[i];
		}
	}

	var zipPattern=/^([0-9]){5}$/;
	var inputZip = item.parentNode.parentNode.getElementsByTagName("input")[0].value;
	if (!zipPattern.test(inputZip))
	{
		alert ("Please enter a valid zip code.\n");
	}
	else
	{
		textTD.className = "name8 center";
		textTD.innerHTML = "Calculating freight costs...";

		var xmlHttp;

		xmlHttp=GetXmlHttpObject();
		if (xmlHttp==null)
		{
		 alert ("Browser does not support HTTP Request");
		 return;
		}

		var url="get_freight.php";
		url += "?id="+rand(100000, 999999)+"&zip="+inputZip;

		xmlHttp.onreadystatechange = stateChanged ;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
	}
}
function CheckOut(url)
{
	var allQuantities = document.getElementsByTagName("input");
	var totalItems = 0;
	var errorMsg = "";
	for (i=0; i<allQuantities.length; i++)
	{
		if (allQuantities[i].getAttribute("name").charAt(0) == "q")
		{
			totalItems += parseInt((allQuantities[i].value));
		}
	}
	if (totalItems < 10)
	{
		errorMsg += "Due to freight restrictions you are required to purchase at least 10 items.\n";
	}

	if (errorMsg == "")
	{
		return true;
	}
	else
	{
		alert(errorMsg);
		return false;
	}
}

