var error = new Array(); 
var boolcheck = false;

function postmessage(spanid,message)
{
	var objcontainer = document.getElementById(spanid);
	//var objcontent = document.getElementById(content);
		
	var new_div = document.createElement('div');
	
	new_div.setAttribute('style','margin:5px');
	new_div.innerHTML = message;
	
	objcontainer.appendChild(new_div);
	
	//document.getElementById(spanid).innerHTML=message;
	error.push(spanid);
	
}

function checkform(elementid,spanid,checkwhat,attachthis)
{
		var numExp = /^[0-9]+$/;
		var alphaExp = /^[a-zA-Z]+$/;
		var alphaNumExp = /^[0-9a-zA-Z]+$/;
		var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
		
		var flag = false;
		switch (checkwhat)
		{
			case "email": 
						if(!document.getElementById(elementid).value.match(emailExp))
							{	
								postmessage(spanid,attachthis + ": Invalid email");
								document.getElementById(elementid).value="";
								document.getElementById(elementid).focus();
							}
						else flag = true;	
							break;
							
			case "alphanum":
						if(!document.getElementById(elementid).value.match(alphaNumExp))
							{	
								postmessage(spanid,attachthis + ": Only alphanumeric allowed");
								document.getElementById(elementid).value="";
								document.getElementById(elementid).focus();
							}
						else flag = true;	
							break;
			case "alphaExp":
						if(!document.getElementById(elementid).value.match(alphaExp))
							{	
								postmessage(spanid,attachthis + ": Only alphabets allowed");
								document.getElementById(elementid).value="";
								document.getElementById(elementid).focus();
							}
						else flag = true;	
							break;
			case "numExp" :
						if(!document.getElementById(elementid).value.match(numExp))
							{	
								postmessage(spanid,attachthis + ": Only num allowed");
								document.getElementById(elementid).value="";
								document.getElementById(elementid).focus();
							}
						else flag = true;	
							break;
			case "empty":			
						if(document.getElementById(elementid).value.length == 0)
							{	
								postmessage(spanid,attachthis + ": Can not be empty");
								document.getElementById(elementid).value="";
								document.getElementById(elementid).focus();
							}
						else flag = true;	
							break;
							
			case "year":
						if( checkform(elementid,spanid,"numExp"))
						if(document.getElementById(elementid).value < 1900)
						{	
							postmessage(spanid,attachthis + ": 1900+ only allowed ");
							document.getElementById(elementid).value="";
							document.getElementById(elementid).focus();
						}
						else flag = true;	
						break;
						
		}
		
		if(flag)
		{
			postmessage(spanid,"");
			return true;
		}
		else return false;
} 

function checkoldpassword(oldelement,newelement,spanid)
{
	flag = false;
	if(document.getElementById(oldelement).value.length != 0)
	{
		if(document.getElementById(newelement).value.length == 0)
			{	
				postmessage(spanid,"Invalid entry: Passwords cannot be empty");
			}
		else flag = true;	
	}
		
	if(flag)
		{
			postmessage(spanid,"");
			return true;
		}
	else 
	{
		document.getElementById(oldelement).value="";
		document.getElementById(newelement).value="";
		document.getElementById(oldelement).focus();		
	}
	return flag;
}


function checkpassword(element,element2,spanid)
{
	flag = false;
	
	if(document.getElementById(element).value.length != 0)
	{
		if(document.getElementById(element).value != document.getElementById(element2).value)
			{	
				postmessage(spanid,"Invalid entry: Two passwords didn't matched ");
			}
		else flag = true;	
	}
	else
	{
		postmessage(spanid,"Invalid entry: Passwords cannot be empty");
	}
	if(flag)
		{
			postmessage(spanid,"");
			return true;
		}
	else 
	{	
		document.getElementById(element).value="";
		document.getElementById(element2).value="";
		document.getElementById(element).focus();
	}

	return flag;
}

function validateform(message)
{
	
	var err=true;
	
	for(var i=0; i<error.length; i++ )
	{   
		var temp = error[i].toString();
		if(document.getElementById(temp).innerHTML !="")
		{
			err = false;
			break;
		}
		else err = true;

	}
		
	
	if(err)
		{
			return confirm(message);
			//return true;
		}
	else
	{
		alert("Some error persists: Correct them first");
	}
	return false;	
	
}