function formValidate(info){
	
	switch(this.name){
		case "card.number":	
			info.reason = this.cardType;
			info.level = ScriptingMagic.Validation.INFO;// number 1
			break;
		case "keyWords":
			var words = this.value.split(",");
			numWords = words.length;
			if(words[numWords-1]=="") numWords--;
			info.reason = numWords+" key words";
			info.level = ScriptingMagic.Validation.INFO; // number 1
			break;
		case "order.description":
			numChars = this.value.length;
			info.reason = numChars+" characters";
			info.level = ScriptingMagic.Validation.INFO; // number 1
			break;
		case "customer.email":
			matchEmails(this,document.getElementById('confirmEmail'));
//			alert(this,document.getElementById('confirmEmail')
			break;
		case "confirmEmail":
			var reason = matchEmails(document.getElementById('customer.email'),this);
            if (reason)
           {
               info.reason = reason;
               info.message = reason;
               info.level =  ScriptingMagic.Validation.ERROR; // number 3
           }
           break;
			
			
			
	}
	
	//return info;
}
function matchEmails(email, confEmail){
	
	if(confEmail.value && (email.value != confEmail.value)){
		var confMsg = getEmptyDiv(confEmail);
		var reason = "Email addresses do not match";
		confMsg.appendChild(document.createTextNode(reason));
		return reason;
	}
	return "";
}
function setId(elements){
var i;
for(i = 0; i < elements.length; i++){
	if(!elements[i].id)
		elements[i].setAttribute('id',elements[i].name);
 }
}
setId(document.getElementsByTagName('input'));
setId(document.getElementsByTagName('select'));
setId(document.getElementsByTagName('textarea'));

document.signUpForm.setAttribute("sm:validator","formValidate");

function addImg(div,imgPath){
	var img = document.createElement("img");
	img.src = imgPath;
	img.align = 'absMiddle';
	div.appendChild(img);
}
function onValid(info){
	var div = getEmptyDiv(this);
	reason = info.reason || '';
	div.appendChild(document.createTextNode(reason));
	
	switch(this.name){
		case "card.number":	
			var imgPath = "";
				switch(this.cardType){
					case "VISA":
						//imgPath = "images/logo_ccVisa.gif";
						break;
					case "MasterCard":
						//imgPath = "images/logo_ccMC.gif";
						break;
					case "AMEX":
						//imgPath = "images/logo_Amex.gif";
						break;
					case "Discover":
						//imgPath = "images/logo_ccDiscover.gif";
						break;
				}
			if(imgPath != ""){
				addImg(div,imgPath);
				
				div.removeChild(div.firstChild);
			}
			break;
	}
	
}
	
function getEmptyDiv(element){
	var div = document.getElementById(element.name.replace(/\./,"-")+"-msg");
	while(div.firstChild){
		div.removeChild(div.firstChild);
	}
	return div;
}

function onInValid(info){
	var div = getEmptyDiv(this);
	div.appendChild(document.createTextNode(info.reason));
}
