


window.onload = function (){

	init_links();
	init_forms();
}


function init_links(){
	var links = document.getElementsByTagName("a");

	for(n=0; n<links.length; n++){
		var link = links[n];
		link.onfocus = function (){
			this.blur();
		}
	}
}


function init_forms(){
	var forms = document.getElementsByTagName("form");

	for(n=0; n<forms.length; n++){
		var form = forms[n];
		form.onsubmit = form_submit;
	}
}

function form_submit(){
	this.valid = true;
	
	var elems = this.elements;
	for(n=0; n<elems.length && this.valid; n++){
		elem = elems[n];
		
		
			var validation = elem.getAttribute("required");

			switch(validation){
				case "true":
					if(elem.value.trim().length == 0){
						this.valid = false;
						elem.select();
						elem.className += " invalid";
						//wndow.status = elem.getAttribute("onvalidate");
					}
					else{
						elem.className =  elem.className.replace(/invalid/g ,"");
						//window.status = "";
					}
					break;

				case "email":
					if(is_email(elem.value)){
						this.valid = false;
						elem.select();
						elem.className += " invalid";
						//window.status = elem.getAttribute("onvalidate");
					}
					else{
						elem.className =  elem.className.replace(/invalid/g ,"");
						//window.status = "";
					}
					break;

				default:
					break;
			}
		
	}

	return this.valid;
}


function is_email(email){
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return ! (!r1.test(email) && r2.test(email));	
}

String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); };
