  function openWin(page,winName,xWidth,yHeight){
  	window.open(page,winName,'width='+xWidth+',height='+yHeight+',toolbar=no,location=no,status=no,menubar=no,scrollbars=Yes,resizable=Yes,top=0,left=0');
  }
  function openPic(page,winName,xWidth,yHeight){
  	window.open(page,winName,'width='+xWidth+',height='+yHeight+',toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,top=0,left=0');
  }
  function openWith(page,winName,xWidth,yHeight){
	window.open(page,winName,'width='+xWidth+',height='+yHeight+',toolbar=yes,location=no,status=yes,menubar=no,scrollbars=yes,resizable=yes,top=0,left=0');
  }
  function search(where){
        window.location=('results.asp?keyword='+where);
  }

  function valSearch(search) {
	if (document.frmkeyword.keyword.value == "Keyword"){
  	 clearkeyword()
  	}
 	if (document.frmkeyword.keyword.value.length < 3) {
		 alert("Minimum of 3 characters please!");
		 document.frmkeyword.keyword.focus();
		 return false;
	}
	document.frmkeyword.submit()
	return true
  }

  function clearkeyword(){
  if (document.frmkeyword.keyword.value == "Keyword")
	document.frmkeyword.keyword.value = "";
  }

  function valList(search) {
 	if (document.frmsearch.frCategory.value == "0" && document.frmsearch.frRegion.value == "0" && document.frmsearch.frPrice.value == "0") {
		 alert("Please use at least one listbox!");
		 document.frmsearch.frCategory.focus();
		 return false;
	}
	document.frmsearch.submit()
	return true
   }


	function selectorSink(theForm) {
		if (Form1.frOption1.value == "" && Form1.frOption2.value == "" && Form1.frOption3.value == ""){
			alert("Please select at least one option.");
			Form1.frOption1.focus();
		} else {
			window.location='results.aspx?txtSearch=Product Search&cateId=20&Fin='+ Form1.frOption1.value +'&Bow='+ Form1.frOption2.value +'&Fit='+ Form1.frOption3.value;
	}
	}

	function selectorOth(tType,cateId) {
		if (Form1.frOption4.value == "" && Form1.frOption5.value == ""){
			alert("Please select at least one option.");
			Form1.frOption4.focus();
		} else {
			if (tType == 'Hoods') {
				window.location='results.aspx?txtSearch=Product Search&cateId='+ cateId +'&Siz='+ Form1.frOption4.value +'&Fin='+ Form1.frOption5.value;
			} else {
				window.location='results.aspx?txtSearch=Product Search&cateId='+ cateId +'&Fun='+ Form1.frOption4.value +'&Fin='+ Form1.frOption5.value;
			}
	}
	}

	function selectorHod(theForm) {
		if (Form1.frOption8.value == "" && Form1.frOption9.value == ""){
			alert("Please select at least one option.");
			Form1.frOption8.focus();
		} else {
			window.location='results.aspx?txtSearch=Product Selector&cateId=62&Wid='+ Form1.frOption8.value +'&Typ='+ Form1.frOption9.value;
	}
	}


//--------------COMPARE IT
function valCompare() {
   var user_input="";
   var mCount=1;
   for (i=0;i<document.Form1.Compare.length;i++)
   {
	if (document.Form1.Compare[i].checked)
	{
		user_input += document.Form1.Compare[i].value + ",";
		mCount += 1;
	}
   }
   
   if (mCount <= 1) {
   	alert("You need to select at 2 or 3 products.");
   	return false;
   }
   if (mCount > 3) {
   	alert("You have selected too many product. You need to select at 2 or 3 products.");
   	return false;
   }
   
   window.location=('other.aspx?comparison=yes&cateId=20&Compare='+ user_input);
}


//confirm deletion
function confirmMe(msg)
{
var agree=confirm(msg);
if (agree)
	return true ;
else
	return false ;
}



//--------------validation
// email
function checkEmail (strng) {
var error="";
if (strng == "") {
   error = "You didn't enter an email address.\n";
}

    var emailFilter=/^.+@.+\..{2,3}$/;
    if (!(emailFilter.test(strng))) { 
       error = "Please enter a valid email address.\n";
    }
    else {
//test email for illegal characters
       var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/
         if (strng.match(illegalChars)) {
          error = "The email address contains illegal characters.\n";
       }
    }
return error;    
}


// phone number - strip out delimiters and check for 10 digits
function checkPhone (strng) {
var error = "";
if (strng == "") {
   error = "You didn't enter a phone number.\n";
}

var stripped = strng.replace(/[\(\)\.\-\ ]/g, ''); //strip out acceptable non-numeric characters
    if (isNaN(parseInt(stripped))) {
       error = "The phone number contains illegal characters.";
  
    }
    if (!(stripped.length == 10)) {
	error = "The phone number is the wrong length. Make sure you included an area code.\n";
    } 
return error;
}


// password - between 6-8 chars, uppercase, lowercase, and numeral
function checkPassword (strng) {
var error = "";
if (strng == "") {
   error = "You didn't enter a password.\n";
}

    var illegalChars = /[\W_]/; // allow only letters and numbers
    
    if ((strng.length < 6) || (strng.length > 8)) {
       error = "The password is the wrong length.\n";
    }
    else if (illegalChars.test(strng)) {
      error = "The password contains illegal characters.\n";
    } 
    else if (!((strng.search(/(a-z)+/)) && (strng.search(/(A-Z)+/)) && (strng.search(/(0-9)+/)))) {
       error = "The password must contain at least one uppercase letter, one lowercase letter, and one numeral.\n";
    }  
return error;    
}    


// username - 4-10 chars, uc, lc, and underscore only.
function checkUsername (strng) {
var error = "";
if (strng == "") {
   error = "You didn't enter a username.\n";
}


    var illegalChars = /\W/; // allow letters, numbers, and underscores
    if ((strng.length < 4) || (strng.length > 10)) {
       error = "The username is the wrong length.\n";
    }
    else if (illegalChars.test(strng)) {
    error = "The username contains illegal characters.\n";
    } 
return error;
}       


// non-empty textbox
function isEmpty(strng, str) {
var error = "";
  if (strng.length == 0) {
     error = "The mandatory text area '"+str+"' has not been filled in.\n"
  }
return error;	  
}

// was textbox altered
function isDifferent(strng) {
var error = ""; 
  if (strng != "Can\'t touch this!") {
     error = "You altered the inviolate text area.\n";
  }
return error;
}

// exactly one radio button is chosen
function checkRadio(checkvalue) {
var error = "";
   if (!(checkvalue)) {
       error = "Please check a radio button.\n";
    }
return error;
}

// valid selector from dropdown list
function checkDropdown(choice) {
var error = "";
    if (choice == 0) {
    error = "You didn't choose an option from the drop-down list.\n";
    }    
return error;
}

// check checkbox
function checkCheckbox(bool) {
var error = "";
    if (bool == false) {
    error = "You have to agree to the Term & Conditions\n";
	}
return error;
}


// compare
function compare(strng1, strng2) {
var error="";
  if (strng1 != strng2){
    error = "Confirmation field is different\n";
  }	
return error;    
}


// show the correct price
function dotag(tagclass, tagstyle) {
 zxcobjs=document.getElementsByTagName("TR");
 for (zxc0=0;zxc0<zxcobjs.length;zxc0++){
  if (zxcobjs[zxc0].className==tagclass){
  	zxcobjs[zxc0].style.cssText=tagstyle;
  }
 }
}

function hidePrices(fromObject) {
  for (var i=0, l=fromObject.options.length;i<l;i++) {
    dotag('priceSwitch_'+ i +'', 'display:none');
  }
}

// change prices
function changePrice(On) {
    dotag('priceSwitch_'+ On +'', 'display:block');
    var obj = 'stock_'+document.Form1.prodSize.value ;
  try {
    if (document.getElementById(obj).value == 0) {
    	document.getElementById('status').innerHTML = "Not Available";
    }else{
    	document.getElementById('status').innerHTML = "Available";
    }
  } catch (e) {}
}



var IE = document.all?true:false

function dotagg(tagclass, tagstyle) {
 zxcobjs=document.getElementsByTagName("SPAN");
 for (zxc0=0;zxc0<zxcobjs.length;zxc0++){
 if (zxcobjs[zxc0].id.indexOf(tagclass) != -1){
  	zxcobjs[zxc0].style.cssText=tagstyle;
 }
 }
}

function toggletag(tagclass) {
 var tCount = 0;
 zxcobj=document.getElementsByTagName("SPAN");
 for (zxc0=0;zxc0<zxcobj.length;zxc0++){
 //alert(tagclass);
 //alert(zxcobj[zxc0].style.cssText);
 if (zxcobj[zxc0].id==tagclass){
  if (IE) {
 	if (zxcobj[zxc0].style.cssText=='DISPLAY: none'){
 	   //alert('here');
 	   zxcobj[zxc0].style.cssText='display: block'
 	   tCount = 1;
	}
 	if (zxcobj[zxc0].style.cssText='DISPLAY: block' && tCount==0){
 	   //alert('there');
 	   zxcobj[zxc0].style.cssText='display: none'
	}
  } else {
 	if (zxcobj[zxc0].style.cssText=='display: none;'){
 	   //alert('here');
 	   zxcobj[zxc0].style.cssText='display: block'
 	   tCount = 1;
	}
 	if (zxcobj[zxc0].style.cssText='display: block;' && tCount==0){
 	   //alert('there');
 	   zxcobj[zxc0].style.cssText='display: none'
	}
  }  
 }
}
tCount = 0;
}
