function ErrorObj(retCharV){	this.retChar = retCharV;	this.hasError = false;	this.errorString = "";	this.add = erroObjAdd;}function erroObjAdd(errStr){	this.hasError = true;	this.errorString += this.retChar+errStr;}var monName = new Array("January","February","March","April","May","June","July","August","September","October","November","December");function isblank(s){	for(var i = 0; i < s.length; i++){		var c = s.charAt(i);		if((c != ' ') && (c != '\n') && (c != '')){			return false;		}	}	return true;}function checkForm2(f,havePreviousEmptyFieldsError, previousEmptyFieldsErrorStr,havePreviousError, previousErrorStr){	var retChar = "\n";	if((window.navigator.platform).indexOf("Mac") >= 0){		if(window.navigator.appName.indexOf("Microsoft Internet Explorer") >= 0){			var myvarparamarray = f.variableparameters.value.split("\r");			var retChar = "\n";		}else{			var myvarparamarray = f.variableparameters.value.split("\n");		}	}else{		var myvarparamarray = f.variableparameters.value.split("\n");	}	for(var i = 0; i < myvarparamarray.length; i++){		var e = myvarparamarray[i];		//set all the variables needed from the variableparameters parameter		eval("f."+e);	}		var empty_fields_msg = "";	var errors_msg = "";	var empty_fields_bool = havePreviousEmptyFieldsError;	var empty_fields = previousEmptyFieldsErrorStr;	var errors_bool = havePreviousError;	var errors = previousErrorStr;		for(var i = 0; i < f.length; i++){		var e = f.elements[i];		if((e.type == "text") || (e.type == "textarea") || e.type=="radio" || e.type=="select-one"){			if(e.required){				if((e.value == null) || isblank(e.value)){					empty_fields_bool = true;					empty_fields += retChar+e.realName;					//cancels this loop					continue;				}			}			if(e.numeric){				if(!e.required && isblank(e.value)){					//don't need to check anymore it's blank				}else{ 					var v = parseFloat(e.value);					if(isNaN(v) || (e.min != null && e.value < e.min) || (e.max != null && e.value > e.max)){						errors_bool = true;						if(e.type=="select-one"){							errors += "You must chose a "+e.realName;						}else{							errors += retChar+e.realName + " must be a number";							if(e.min != null){								errors += " that is greater than "+e.min;							}							if(e.max != null){								if(e.min != null){									errors += " and less than "+e.max;								}else{									errors += " that is less than "+e.max;								}							}						}					}				}				continue;			}			if(e.date){				if(!e.required && isblank(e.value)){					//don't need to check anymore it's blank				}else{					//if(!Date.parse(e.value)){					if(!checkDate(e.value)){						errors_bool = true;						errors += retChar+e.realName + " must be a valid date format";					}								}			}			if(e.email){				if(!e.required && isblank(e.value)){					//don't need to check anymore it's blank				}else{					if(!checkEmail(e.value)){						errors_bool = true;						errors += retChar+e.realName + " must be a valid email format";					}								}			}		}	}			if(empty_fields_bool || errors_bool){		var empty_fields_msg = "";		var errors_msg = "";		if(empty_fields_bool){			empty_fields_msg = retChar+"The following fields cannot be blank: "+retChar;		}		if(errors_bool){			var droplines;			if(empty_fields_bool){				droplines = retChar+retChar;			}else{				droplines = retChar;			}			errors_msg = droplines+"The following fields contain an error: "+retChar;		}		alert(empty_fields_msg+empty_fields+errors_msg+errors);		return false;	}else{		f.submit();		//return true;	}}function checkForm(form, reqBlank, reqBlankStr, malformedError, malformedErrorStr){var retChar = "\n";	if((window.navigator.platform).indexOf("Mac") >= 0){		if(window.navigator.appName.indexOf("Microsoft Internet Explorer") >= 0){			var myvarparamarray = form.variableparameters.value.split("\r");		}else{			var myvarparamarray = form.variableparameters.value.split("\n");		}	}else{		var myvarparamarray = form.variableparameters.value.split("\n");	}	var requiredErrorObj = new ErrorObj(retChar);	var malformedErrorObj = new ErrorObj(retChar);	if(reqBlank){		requiredErrorObj.add(reqBlankStr);	}	if(malformedError){		malformedErrorObj.add(malformedErrorStr);	}		//alert(myvarparamarray.length);for(var i = 0; i < myvarparamarray.length; i++){		var e = myvarparamarray[i];//alert(e);		eval("form."+e);	}		//alert(form.length);for(var i = 0; i < form.length; i++){		var e = form.elements[i];		if((e.type == "text") || (e.type == "textarea") || e.type=="radio" || e.type=="select-one" || e.type=="password"){			if(e.required){				if((e.value == null) || isblank(e.value)){					requiredErrorObj.add(e.realName);					continue;				}			}			if(e.date){				if(!isblank(e.value) && !checkDate(e.value)){					malformedErrorObj.add(e.realName+" must be a valid date format");				}				continue;			}			if(e.email){				if(!isblank(e.value) && !checkEmail(e.value)){					malformedErrorObj.add(e.realName+" must be a valid email format");				}				continue;			}			if(e.numeric && !isblank(e.value)){				var v = parseFloat(e.value);				if(isNaN(v) || (e.min != null && e.value < e.min) || (e.max != null && e.value > e.max)){					errStr = "";					if(e.type=="select-one"){						errStr += "You must chose a "+e.realName;					}else{						errStr += e.realName + " must be a number";						if(e.min != null){							errStr += " that is greater than "+e.min;						}						if(e.max != null){							errStr += (e.min != null)?" and":" that is";							errStr += " less than "+e.max;						}					}					malformedErrorObj.add(errStr);				}			}		}	}		if(requiredErrorObj.hasError || malformedErrorObj.hasError){		var errors = "";		if(requiredErrorObj.hasError){			errors += retChar+"These fields cannot be empty: "+retChar+requiredErrorObj.errorString;		}		if(malformedErrorObj.hasError){			var droplines = retChar;			if(requiredErrorObj.hasError){				droplines += retChar;			}			errors += droplines+"These fields contain errors: "+retChar+malformedErrorObj.errorString;		}		alert(errors);		return false;	}else{		return true;	}/*if(empty_fields_bool || errors_bool){alert();		var empty_fields_msg = "";		var errors_msg = "";		if(empty_fields_bool){			empty_fields_msg = retChar+"The following fields cannot be blank: "+retChar;		}		if(errors_bool){			var droplines;			if(empty_fields_bool){				droplines = retChar+retChar;			}else{				droplines = retChar;			}			errors_msg = droplines+"The following fields contain an error: "+retChar;		}		alert(empty_fields_msg+empty_fields+errors_msg+errors);		return false;	}else{		f.submit();		//return true;	}*/}function checkEmail(emailString){	return emailString.match(/^[\w\d\-\.]+@[\w\d\-\.]+[\.][\w]{1,4}$/);}function checkDate(dateString){	var results = dateString.match(/(\d{1,2})\/(\d{1,2})\/(\d{1,4})/);	if(results != null){		//10 is radix		month = parseInt(results[1],10);		day = parseInt(results[2],10);		year = parseInt(results[3],10);		if(month < 13 && month > 0 && day < 32 && day > 0 && year < 3000 && year > 0){			if(year < 1000){				year += (year > 29)?1900:2000;			}			var parsedDate = new Date(year,month,day);			if(parsedDate.getMonth()+1 != month){				return false;			}			return true;		}		return false; 	}	return false;}