// JavaScript Document
//eliminates white spaces from a string
function trim(str)
{  
	while(str.charAt(0) == (" ") )
		str = str.substring(1);
  	while(str.charAt(str.length-1) == " " )
		str = str.substring(0,str.length-1);
  return str;
}
//checks if a field is not empty
function field_required(input,name)
{
	if(document.getElementById(input)!=null)
	{
		document.getElementById(input).value=trim(document.getElementById(input).value);	
		if(document.getElementById(input).value=="")
		{
			return "\n- "+name;
		}
	}
	return "";
}
//checks if a field is valid calling the specific function
function field_validate(input,err_msg,checkFunction)
{
	if(document.getElementById(input).value!="")
	{
		checkValue = eval(checkFunction+'(document.getElementById("'+input+'").value)');
		if(checkValue==false)
		{
			alert(err_msg);
			return false;
		}
	}
	return true;
}
//validates an email address
function check_mail(str) 
{
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1)
	   return false
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
	   return false
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
		return false
	 if (str.indexOf(at,(lat+1))!=-1)
		return false
	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
		return false
	 if (str.indexOf(dot,(lat+2))==-1)
		return false
	 if (str.indexOf(" ")!=-1)
		return false
	 return true					
}
function validate_login()
{
	var fields = "";
	fields += field_required('input_login','login');
	fields += field_required('input_pass','password');
	if(fields!="")
	{
		alert("Fields below must be informed :"+fields);
		return false;
	}
	document.getElementById('submit_button').innerHTML = '<img src="images/loading_login.gif" style="margin:0 24px 0 25px;">';
	return true;
}
function validate_access()
{
	var fields = "";
	fields += field_required('input_first_name','first name');
	fields += field_required('input_last_name','last name');
	fields += field_required('input_job','job title');
	fields += field_required('input_company','company');
	if(fields!="")
	{
		alert("Fields below must be informed :"+fields);
		return false;
	}
	else
	{
		if(document.getElementById("cb_legal").checked==false)	
		{
			alert("You must accept the specific obligations.");
			return false;
		}
	}
	return true;
}
function validate_pass()
{
	var fields = "";
	fields += field_required('input_mail','e-mail');
	if(fields!="")
	{
		alert("Fields below must be informed :"+fields);
		return false;
	}
	else
	{
		if(!field_validate("input_mail","E-mail field doesn't contain a correct value!","check_mail")) return false;
	}
	return true;
}
