//<![CDATA[

function check(id, type) {
	if(type=="on") {
		temp = true;
	} else {
		temp = false;
	}
	var inputs = document.getElementsByTagName('input');
	for(var i=0;i<inputs.length; i++) {
		if(inputs[i].id==id) {
			inputs[i].checked = temp;
		}
	}
}


function popper(linker,url,x,y) {
	var myWindow = window.open(url,"PopWindow","width="+x+",height="+y+",scrollbars=yes,resizable=no,status=no");
	myWindow.focus();
	linker.blur();
	return false;
}


function validate(form) {
 var error = "";
 var email = /^[\w\.=-_]+@[\w\.-]+\.[a-zA-Z]{2,4}$/;
 var url = /^http(s)?:\/\/[a-zA-Z0-9\.-_]/;
 var date = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
 var els = form.elements;
 for (var i=0;i<els.length;i++) {
	elRequired = els[i].getAttribute('gm_required'); 
	elPhrase = els[i].getAttribute('gm_phrase');
	elValid = els[i].getAttribute('gm_validation'); 
	elMax = els[i].getAttribute('gm_maxlength');
	elConditional = els[i].getAttribute('gm_conditional');
	elDependent = els[i].getAttribute('gm_dependent');
	if(elDependent) elDependent = elDependent.split(",");
	elName = els[i].name; elValue = els[i].value; 
	elType = els[i].type;
	if(elValue == "  ") elValue = "";
	if (elRequired || (elValid && elValue) || elMax || elConditional || elDependent) {
		switch(elValid) {			
			case "email":
			if(!email.test(elValue)) { error += " - " + elPhrase + "\n"; } break;	
			
			case "url":
			if(!url.test(elValue)) { error += " - " + elPhrase + " (Please include http:\/\/)\n"; } break;	
			
			case "select":
			if((els[i].selectedIndex/1) ==0) { error += " - " + elPhrase + " (Please make a choice)\n"; } break;	
			
			case "ssn":
			if(elValue.length != 9 || isNaN(elValue)) { error += " - Social Security No. (No dashes or spaces)\n"; } break;
			
			case "zip":
			if(elValue.length != 5 || isNaN(elValue)) { error += " - " + elPhrase + " (5 digits only)\n"; } break;
			
			case "date":
			if(date.test(elValue)) {
				var dArr = elValue.split("/"); var d = new Date(elValue);
				if(!(d.getMonth()+1==dArr[0] && d.getDate() == dArr[1] && d.getFullYear() == dArr[2])) {
					error += " - " + elPhrase + " (i.e. 1/5/1986)\n";
				}
			} else {
					error += " - " + elPhrase + " (i.e. 1/5/1986)\n";
			}
			break;
			
			case "radio":
			
			if(form[elName].length) {
				elR = form[elName].length;
				checked = false;
				for(var y =0; y<elR;y++) {
					if(form[elName][y].checked) {
						checked = true;
						break;
					}
				}
			} else {
				checked = form[elName].checked;
			}
			if(checked==false) { error += " - " + elPhrase + " (Please make a choice)\n"; }
			break;
			
			case "numeric":
			if(isNaN(elValue.replace(/,/gi,""))) { error += " - " + elPhrase + " (Must be a number)\n"; }
			break;
			
			case "checkbox":
			if(!form[elName].checked && type==1) { error += " - " + elPhrase + "\n"; }
			break;
			
			case "conditional":
			if(elValue == "" && form[elConditional].value == "") { error += " - " + elPhrase + "\n"; }
			break;
			
			case "dependent":
			if(elValue == "" && radio(form[elDependent[0]]) == elDependent[1]) { error += " - " + elPhrase + "\n"; }
			break;
			
			default:
			if(elType=="textarea") {
				if(elMax && (elValue.length > elMax)) {
						error += " - " + elPhrase + " can be no longer than " + elMax + " characters\n";
				}
				if(elRequired && elValue.length <1) {
					  error += " - " + elPhrase + "\n";
				}
			} else if (elRequired) { 
				if(!elValue) { error += " - " + elPhrase + "\n"; } break;
			}
			break;
		}
	}  
 }
 if(error != "") {
	 error = "The following information is missing and/or invalid:\n\n" + error;
	 alert(error);
	 return false;
 } else {
	 return true;
 }
}

function radio(element) {
	elR = element.length;
		for(var y =0; y<elR;y++) {
			if(element[y].checked) {
				return element[y].value;
				break;
			}
		}
		return null;
}

function ShipToBillPerson(form) {
if (form.CopyBilling.checked) {
	form.ShipFirstName.value = form.FirstName.value;
	form.ShipLastName.value = form.LastName.value;
	form.ShipAddress1.value = form.BillAddress1.value;
	form.ShipAddress2.value = form.BillAddress2.value;
	form.ShipCity.value = form.BillCity.value;
	form.ShipZip.value = form.BillZip.value;
	form.ShipState.value = form.BillState.value;

}
else {
	form.ShipFirstName.value = "";
	form.ShipLastName.value = "";
	form.ShipAddress1.value = "";
	form.ShipAddress2.value = "";
	form.ShipCity.value = "";
	form.ShipZip.value = "";
	form.ShipState.value = "";
   }
}
function deleteConfirm(text) {
	temp = confirm(text);
	if(temp==true) {
		return true;
	} else {
		return false;
	}
}


function deleteConfirmLink(form,text) {
	temp = confirm(text);
	if(temp==true) {
		form.submit();
		return true;
	} else {
		return false;
	}
}

function updateCart(form,text) {
	if(text=="true") {
		form.Checkout.value = "true";
		form.submit();
	} else {
		form.submit();
	}
}
//]]>
