﻿			var inputRequirments = [];var pairRequirments = [];		function inputRequirement(regE, errorMes){			this.re = regE;			this.err = errorMes;			return(this);		}						function pairRequirement(regE1, regE2, errorMes, resetValue){			this.re1 = regE1;			this.re2 = regE2;			this.err = errorMes;			this.reset = resetValue;			return(this);		}						function registerInputRequirement(name, regE, errorMes){			if (!inputRequirments[name])				inputRequirments[name] = [];			inputRequirments[name][inputRequirments[name].length] = new inputRequirement(regE, errorMes);		}						function registerPairRequirement(name, regE1,regE2, errorMes, resetValue){			if (!pairRequirments[name])				pairRequirments[name] = [];			pairRequirments[name][pairRequirments[name].length] = new pairRequirement(regE1, regE2, errorMes, resetValue);		}								function validateInput(name){							// Check name for required contents			if (inputRequirments[name]){						// Only check if name is in inputRequirments[]				for (i=0; i<inputRequirments[name].length; i++){	// Check inputValue satisfies all inputRequirments[]					var re = new RegExp(inputRequirments[name][i].re);								if (!re.test(document.forms['orderForm'][name].value)){						alert(inputRequirments[name][i].err);						return(false);					}				} 			}			return(true);		}								function validatePair(name){										// Check inputName1_inputName2 for required contents			var testRE = new RegExp('^([^_]+)_([^_]+)$');			if ((results = testRE.exec(name)) != null){				name1 = results[1];				name2 = results[2];			}			if (pairRequirments[name]){									// Only check if name1_name2 is in pairRequirments[]				for (i=0; i<pairRequirments[name].length; i++){				// Check all pairs for name1_name2					var validateRE1 = new RegExp(pairRequirments[name][i].re1);					var validateRE2 = new RegExp(pairRequirments[name][i].re2);					if (validateRE1.test(document.forms['orderForm'][name1].value)){		// If first of pair meets requirements 						if (!validateRE2.test(document.forms['orderForm'][name2].value)){ 	// then stop testing if second fails							alert(pairRequirments[name][i].err);  // Error message and return false							if (pairRequirments[name][i].reset != ''){								document.forms['orderForm'][name2].value = pairRequirments[name][i].reset;							}							return(false);						}					}				} 			}			return(true);		}		function validateAll(){			var re = new RegExp();						for (var j in inputRequirments){	// Check all inputs				if (!validateInput(j)){					return(false);				}			}			for (var k in pairRequirments){	// Check all pairs				if (!validatePair(k)){					return(false);				}			}			return(true);		}		