// validation minified: version 2.6

var originalBG='#FFFFFF';var errorBG='#010600';var radioOriginalBG='#FFFFFF';var radioErrorBG='#010600';processButton=new Image();processButtonHeight=24;processButtonWidth=79;var validationSet={'state':{'regexp':/^[a-zA-Z][a-zA-Z]$/,'error':'Please enter a valid state.  Ex. TX'},'phone':{'regexp':/^[- ()0-9+]+$/,'error':'Please enter a valid phone number.  Ex. 806-123-4567'},'price':{'regexp':/^[.0-9]+$/,'error':'Please enter a valid amount.  Ex. 19.95'},'integer':{'regexp':/^[0-9]+$/,'error':'Please enter a number.  Ex. 10001'},'email':{'regexp':/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,6})+$/,'error':'Please enter a valid email address. Ex. name@domain.com'},'zip':{'regexp':/^[0-9][0-9][0-9][0-9][0-9]$/,'error':'Please enter a valid zip code.  Ex. 79414'},'date':{'regexp':/^[0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]$/,'error':'Please enter a valid date.  Ex. 05-27-2006'},'required':{'regexp':/.+?/,'error':'This information is required.'},'radio':{'regexp':/.+?/,'error':'Please select one.'},'select':{'regexp':/.+?/,'error':'Please select one.'}}
var formValidate={addEvent:function(elem,eventType,funct)
{if(elem.addEventListener)
{elem.addEventListener(eventType,funct,false);}
else if(elem.attachEvent)
{elem.attachEvent('on'+eventType,funct);}
else
{elem['on'+eventType]=funct;}},stopEvent:function(e)
{if(e.stopPropagation)
{e.stopPropagation();e.preventDefault();}
else
{e.returnValue=false;e.cancelBubble=true;}},init:function()
{if(document.getElementsByTagName('form'))
{htmlForms=document.getElementsByTagName('form');for(i=0;i<htmlForms.length;i++)
{var thisElem=document.getElementById(htmlForms[i].getAttribute('id'));var thisId=thisElem.getAttribute('id');formValidate.addEvent(thisElem,'submit',formValidate.getFields);}}},getFields:function(e)
{var fields=new Array();var launchForm=false;if(!e)
{e=window.event;}
if(e.target)
{targ=e.target;}
else if(e.srcElement)
{targ=e.srcElement;}
if(targ.nodeType==3)
{targ=targ.parentNode;}
if(targ.tagName!='FORM')
{while(targ.tagName!='FORM')
{targ=targ.parentNode;}}
formId=targ.getAttribute('id');targ=document.getElementById(formId);if(targ.getElementsByTagName('input'))
{inputs=targ.getElementsByTagName('input');for(i=0;i<inputs.length;i++)
{var thisElem=document.getElementById(inputs[i].getAttribute('id'));if(thisElem.type=='text')
{fields.push(formId+"-"+inputs[i].getAttribute('id')+"-text");}
else if(thisElem.type=='password')
{fields.push(formId+"-"+inputs[i].getAttribute('id')+"-password");}
else if(thisElem.type=='file')
{fields.push(formId+"-"+inputs[i].getAttribute('id')+"-file");}
else if(thisElem.type=='radio')
{fields.push(formId+"-"+inputs[i].getAttribute('id')+"-radio");}
else if(thisElem.type=='submit'||thisElem.type=='image')
{submitId=thisElem.getAttribute('id');}}
if(targ.getElementsByTagName('textarea'))
{inputs=targ.getElementsByTagName('textarea');}
for(i=0;i<inputs.length;i++)
{var thisElem=document.getElementById(inputs[i].getAttribute('id'));fields.push(formId+"-"+inputs[i].getAttribute('id')+"-textarea");}
if(targ.getElementsByTagName('select'))
{inputs=targ.getElementsByTagName('select');}
for(i=0;i<inputs.length;i++)
{var thisElem=document.getElementById(inputs[i].getAttribute('id'));fields.push(formId+"-"+inputs[i].getAttribute('id')+"-select");}
formValidate.validateFields(e,formId,fields,submitId);}},validateFields:function(e,thisFormId,fields,buttonId)
{var validForm=true;var errorMsg;var errorId;var isChecked=new Array();for(i=0;i<fields.length;i++)
{var formField=fields[i].split('-');var fieldId=formField[1];var formId=formField[0];var fieldType=formField[2];var clearElem=document.getElementById(fieldId);clearElem.style.backgroundColor=originalBG;if(fieldType=='radio')
{document.getElementById(clearElem.name+"Span").style.background=radioOriginalBG;}
var idArray=fieldId.split('_');if(formId==thisFormId)
{if(fieldType=='text'||fieldType=='password'||fieldType=='file')
{if(idArray[0].match('email')&&idArray[1]=='required')
{var fieldElem=document.getElementById(fieldId);var re=validationSet['email']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['email']['error'];validForm=false;errorId=fieldId;}}
else if(idArray[0].match('phone')&&idArray[1]=='required')
{var fieldElem=document.getElementById(fieldId);var re=validationSet['phone']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['phone']['error'];validForm=false;errorId=fieldId;}}
else if(idArray[0].match('state')&&idArray[1]=='required')
{var fieldElem=document.getElementById(fieldId);var re=validationSet['state']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['state']['error'];validForm=false;errorId=fieldId;}}
else if(idArray[0].match('zip')&&idArray[1]=='required')
{var fieldElem=document.getElementById(fieldId);var re=validationSet['zip']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['zip']['error'];validForm=false;errorId=fieldId;}}
else if(idArray[0].match('date')&&idArray[1]=='required')
{var fieldElem=document.getElementById(fieldId);var re=validationSet['date']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['date']['error'];validForm=false;errorId=fieldId;}}
else if(idArray[0].match('integer')&&idArray[1]=='required')
{var fieldElem=document.getElementById(fieldId);var re=validationSet['integer']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['integer']['error'];validForm=false;errorId=fieldId;}}
else if(idArray[0].match('price')&&idArray[1]=='required')
{var fieldElem=document.getElementById(fieldId);var re=validationSet['price']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['price']['error'];validForm=false;errorId=fieldId;}}
else if(idArray[1]==('required'))
{var fieldElem=document.getElementById(fieldId);var re=validationSet['required']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['required']['error'];validForm=false;errorId=fieldId;}}}
if(fieldType=='textarea')
{if(idArray[1]==('required'))
{var fieldElem=document.getElementById(fieldId);var re=validationSet['required']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['required']['error'];validForm=false;errorId=fieldId;}}}
if(fieldType=='select')
{if(idArray[1]==('required'))
{var fieldElem=document.getElementById(fieldId);var re=validationSet['select']['regexp'];if(!fieldElem.value.match(re))
{errorMsg=validationSet['select']['error'];validForm=false;errorId=fieldId;}}}
if(fieldType=='radio')
{if(idArray[1]==('required'))
{var fieldElem=document.getElementById(fieldId);var thisForm=document.getElementById(formId);if(!fieldElem.checked)
{isChecked.push(fieldElem.name+"-"+fieldId+"-"+formId+"-invalid");}
else
{isChecked.push(fieldElem.name+"-"+fieldId+"-"+formId+"-valid");}}}}}
if(isChecked.length>0)
{var invalidArray=new Array();for(var u=0;u<isChecked.length;u++)
{invalidArray[u]=isChecked[u];}
for(x=0;x<isChecked.length;x++)
{var thisItem=isChecked[x].split('-');var thisName=thisItem[0];var thisId=thisItem[1];var thisForm=thisItem[2];var status=thisItem[3];if(status=='valid')
{for(a=0;a<invalidArray.length;a++)
{var invalidItem=invalidArray[a].split('-');if(thisName==invalidItem[0]);{invalidArray[a]=false;}}}}
for(x=0;x<invalidArray.length;x++)
{if(invalidArray[x]!=false)
{var thisItem=invalidArray[x].split('-');var thisName=thisItem[0];var thisId=thisItem[1];var thisForm=thisItem[2];var status=thisItem[3];var thisElem=document.getElementById(thisId);if(thisId!=false)
{errorMsg=validationSet['radio']['error'];validForm=false;errorId=thisElem.name+"Span";}}}}
if(validForm==false)
{formValidate.displayMessage(e,errorId,errorMsg);}
else
{formValidate.submitForm(thisFormId,buttonId);}},displayMessage:function(e,errorId,errorMsg)
{if(document.getElementsByTagName('label'))
{labels=document.getElementsByTagName('label');}
for(i=0;i<labels.length;i++)
{if(labels[i].htmlFor==errorId)
{var thisLabelValue=labels[i].innerHTML;}}
thisLabelValue=thisLabelValue.replace(/<[a-zA-Z\/][^>]*>/g,'').replace(':','');alert(thisLabelValue+': '+errorMsg);var fieldElem=document.getElementById(errorId);fieldElem.style.background=errorBG;fieldElem.focus();formValidate.stopEvent(e);},submitForm:function(formId,buttonId)
{var button=document.getElementById(buttonId);var form=document.getElementById(formId);if(button.type=='button'||button.type=='submit')
{button.value="Processing...";button.disabled=true;}
if(button.type=='image')
{button.src=processButton.src;button.setAttribute('height',processButtonHeight);button.setAttribute('width',processButtonWidth);button.disabled=true;}}}
$(document).ready(function(){formValidate.init();});

