// JS validator,Copyright (c) 2008 Arian Stolwijk, , MIT Style License. // Version: 0.5a function jsValidator(){var Validator={varsion:'0.5a',settings:{msg:'This field is not correctly filled in',msgStyle:{paddingLeft:'5px',color:'red',maxWidth:'300px'}},elmts:{},elmt:{},init:function(){for(var elem in this.elmts){if(document.getElementById(elem)==null){continue}if(document.getElementById(elem).tagName=='input'||document.getElementById(elem).tagName=='select'||document.getElementById(elem).tagName=='textarea'){continue}this.elmt[elem]=document.getElementById(elem);if(typeof this.elmts[elem].validators!='undefined'){this.addValidators(elem)}else{this.addValidator(elem)}}},addValidator:function(elem){this.elmt[elem].onblur=function(){if(typeof Validator.elmts[elem].validator!='undefined'){var result=Validator.validate(elem,Validator.elmts[elem].validator);if(result==false){if(Validator.elmts[elem].msg){var msg=Validator.elmts[elem].msg}else{var msg=Validator.settings.msg}Validator.inlineMsg(elem,msg);return}else if(result=='undefined'){}else{Validator.hideMsg1(elem)}}if(typeof Validator.elmts[elem].regex!='undefined'){Validator.validateRegex(elem)}}},addValidators:function(elem){if(typeof this.elmts[elem].validators=='object'){this.elmt[elem].onblur=function(){for(var validator in Validator.elmts[elem].validators){var result=Validator.validate(elem,validator);if(result==false){if(Validator.elmts[elem].validators[validator].msg){var msg=Validator.elmts[elem].validators[validator].msg}else if(Validator.elmts[elem].msg){var msg=Validator.elmts[elem].msg}else{var msg=Validator.settings.msg}Validator.inlineMsg(elem,msg);return}else if(result=='undefined'){}else{Validator.hideMsg1(elem)}}Validator.validateRegex(elem)}}},validate:function(elem,validator,regex){if(this.elmt[elem].tagName=='SELECT'){value=this.elmt[elem].options[Validator.elmt[elem].selectedIndex].value}else{value=this.elmt[elem].value}var valid=false;if(regex&&validator=='regex'){value=value+'';if(value.match(regex)){valid=true}}else if(typeof Validator.elmts[elem].validator=='function'){if(Validator.elmts[elem].validator(value)){valid=true}}else{if(typeof Validators[validator]=='function'){if(Validators[validator](value+'')){valid=true}}else{valid='undefined'}}return valid},validateRegex:function(elem){msg=true;if(typeof this.elmts[elem].regex[0]=='object'){var regexObj=this.elmts[elem].regex;for(var i=0;i]+)>)/ig,"")==value&&value.length>0},_NoHTML:function(value){return value.length==0||this.NoHTML(value)},IsPostcode:function(value){return value.match(/^[1-9][0-9]{3} ?[a-zA-Z]{2}$/)},_IsPostcode:function(value){return value.length==0||this.IsPostcode(value)},IsPhone:function(value){regex=/^[0-9]{2,4}[-]?[0-9]{6,8}$/;value=value.replace(' ','');value=value.replace('-','');return value.length==10&&value.match(regex)},_IsPhone:function(value){return value.length==0||this.IsPhone(value)},IsIp:function(ip){return ip.match(/^\d{1,3}\.\d{1,3}\.\d{1,3}.\d{1,3}:?\d*$/)},_IsIp:function(ip){return value.length==0||this.IsIp(value)}}