function returnObjById( id )
{
    if (document.getElementById)
        var returnVar = document.getElementById(id);
    else if (document.all)
        var returnVar = document.all[id];
    else if (document.layers)
        var returnVar = document.layers[id];
    else
		var returnVar=id;
	return returnVar;
}

function isNull(val){return(val==null);}
function isBlank(val){if(val==null){return true;}for(var i=0;i<val.length;i++){if((val.charAt(i)!=' ')&&(val.charAt(i)!="\t")&&(val.charAt(i)!="\n")&&(val.charAt(i)!="\r")){return false;}}return true;}
function isInteger(val){if(isBlank(val)){return false;}for(var i=0;i<val.length;i++){if(!isDigit(val.charAt(i))){return false;}}return true;}
function isNumeric(val){return(parseFloat(val,10)==(val*1));}
function isString(val){
	var v = new RegExp();
	v.compile("^[A-Za-z]+[A-Za-z]+$");
	if (!v.test(val)) {
        return false;
    }
	else return true;
}
function isEmail(str){return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);}
function isUrl(val){
    var v = new RegExp();
	v.compile("^[A-Za-z]+://[A-Za-z0-9-_]+\\.[A-Za-z0-9-_%&\?\/.=]+$");
	if (!v.test(val)) {
        return false;
    }
	else return true;
} 	

function valid_field(sid)
{	
	var field=returnObjById( sid );
	var fieldname=sid+'-msg';
	var msgfield=returnObjById( fieldname );
	var val=field.value;
	var func=field.rel;
	var error=0;
	switch (func){
		default:if (isBlank(val) || isNull(val))
		{
			msgfield.style.display='inline';
			msgfield.innerHTML='<img src="images/form/stop_sharp.png"/>';
			field.setAttribute("class","error"); 
			error=1;			
		}
		else {
			msgfield.style.display='inline';//class='error';
			msgfield.innerHTML='<img src="images/form/success.png"/>';
			field.setAttribute("class","noerror"); 
		}
		break;
		case 'isEmail':
		if(!isEmail(val))
		{
			msgfield.style.display='inline';
			msgfield.innerHTML='<img src="images/form/stop_sharp.png"/>';
			field.setAttribute("class","error"); 
			error=1;			
		}
		else {
			msgfield.style.display='inline';//class='error';
			msgfield.innerHTML='<img src="images/form/success.png"/>';
			field.setAttribute("class","noerror"); 
		}
		break;
		case 'isUrl':
		if(!isUrl(val))
		{
			msgfield.style.display='inline';
			msgfield.innerHTML='<img src="images/form/stop_sharp.png"/>';
			field.setAttribute("class","error"); 
			error=1;			
		}
		else {
			msgfield.style.display='inline';//class='error';
			msgfield.innerHTML='<img src="images/form/success.png"/>';
			field.setAttribute("class","noerror"); 
		}
		break;	
		case 'isNumeric':
		if(!isNumeric(val))
		{
			msgfield.style.display='inline';
			msgfield.innerHTML='<img src="images/form/stop_sharp.png"/>';
			field.setAttribute("class","error"); 
			error=1;			
		}
		else {
			msgfield.style.display='inline';//class='error';
			msgfield.innerHTML='<img src="images/form/success.png"/>';
			field.setAttribute("class","noerror"); 
		}
		break;	
		case 'isString':
		if(!isString(val))
		{
			msgfield.style.display='inline';
			msgfield.innerHTML='<img src="images/form/stop_sharp.png"/>';
			field.setAttribute("class","error"); 
			error=1;			
		}
		else {
			msgfield.style.display='inline';//class='error';
			msgfield.innerHTML='<img src="images/form/success.png"/>';
			field.setAttribute("class","noerror"); 
		}
		break;	
	}
	return error;
}
function check_all()
{
	var field=returnObjById( 'required' );
	var	form=returnObjById( 'form' );		
	var brokenfields=field.value.split(",");
	error=0;
	for(i = 0; i < brokenfields.length; i++)
	{
		if (valid_field(brokenfields[i])==1)
		{
			error=1;
		}
	}
	if (error==0){form.submit();}
}
