// extend the current rules with new groovy ones
function live_type_focus(element, str_text)
{
  $("#"+element).parent().parent("li").attr("class","");
  $("#"+element).parent().parent("li").attr("class","live_type");
  $("#"+element).parent().next("p").text(str_text);
}

function live_type_blur(element)
{
  $("#"+element).parent().parent("li").attr("class","");
  $("#"+element).parent().next("p").text("");
}

function validate_forename(str_element)
{
  if (!str_element)
  {
    str_element = 'name';
  }
  var bln_return = true;
	var str_name = $("#"+str_element).attr("value");

  var onameReg = /^[a-zA-Z\xC0-\xC6\xE0-\xE6\xC8-\xCB\xE8-\xEB\xCC-\xCF\xEC-\xEF\xD2-\xD6\xF2-\xF6\xD9-\xDC\xF9-\xFC\xD1\xF1\ \-\']+$/;
 	//'
	if (!str_name)
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","error");
 		$("#"+str_element).parent("div").next("p").text(str_error_code_no_forename);
	}
	else 
	{
  	if (str_name.length < int_forename_min_length)
  	{
  		bln_return = false;
   		$("#"+str_element).parent("div").parent("li").attr("class","error");
   		$("#"+str_element).parent("div").next("p").text(str_msg_forename_too_short);
   	}
  	else
  	{
    	if (str_name.length > int_forename_max_length)
    	{
    		bln_return = false;
     		$("#"+str_element).parent("div").parent("li").attr("class","error");
     		$("#"+str_element).parent("div").next("p").text(str_msg_forename_too_long);
     	}
    	else
    	{
        if (!onameReg.test(str_name)) 
      	{
      		bln_return = false;
       		$("#"+str_element).parent("div").parent("li").attr("class","error");
      		$("#"+str_element).parent("div").next("p").text(str_msg_invalid_forename);
       	}
      	else
      	{
       		$("#"+str_element).parent("div").parent("li").attr("class","");
      		$("#"+str_element).parent("div").next("p").text('');
      	}
    	}
    }
	}
  return bln_return;
}

function validate_middle_names(str_element)
{
  if (!str_element)
  {
    str_element = 'name';
  }
  var bln_return = true;
	var str_name = $("#"+str_element).attr("value");

  var onameReg = /^[a-zA-Z\xC0-\xC6\xE0-\xE6\xC8-\xCB\xE8-\xEB\xCC-\xCF\xEC-\xEF\xD2-\xD6\xF2-\xF6\xD9-\xDC\xF9-\xFC\xD1\xF1\ \-\']+$/;
 	//'
  if (str_name && !onameReg.test(str_name)) 
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","error");
		$("#"+str_element).parent("div").next("p").text(str_msg_invalid_middle_names);
 	}
	else
	{
 		$("#"+str_element).parent("div").parent("li").attr("class","");
		$("#"+str_element).parent("div").next("p").text('');
	}
  return bln_return;
}

function validate_surname(str_element)
{
  if (!str_element)
  {
    str_element = 'surname';
  }
  var bln_return = true;
	var str_name = $("#"+str_element).attr("value");

  var onameReg = /^[a-zA-Z\xC0-\xC6\xE0-\xE6\xC8-\xCB\xE8-\xEB\xCC-\xCF\xEC-\xEF\xD2-\xD6\xF2-\xF6\xD9-\xDC\xF9-\xFC\xD1\xF1\ \-\']+$/;
 	//'
	if (!str_name)
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","error");
 		$("#"+str_element).parent("div").next("p").text(str_error_code_no_surname);
	}
	else 
	{
  	if (str_name.length < int_surname_min_length)
  	{
  		bln_return = false;
   		$("#"+str_element).parent("div").parent("li").attr("class","error");
   		$("#"+str_element).parent("div").next("p").text(str_msg_surname_too_short);
   	}
  	else
  	{
    	if (str_name.length > int_surname_max_length)
    	{
    		bln_return = false;
     		$("#"+str_element).parent("div").parent("li").attr("class","error");
     		$("#"+str_element).parent("div").next("p").text(str_msg_surname_too_long);
     	}
    	else
    	{
        if (!onameReg.test(str_name)) 
      	{
      		bln_return = false;
       		$("#"+str_element).parent("div").parent("li").attr("class","error");
      		$("#"+str_element).parent("div").next("p").text(str_msg_invalid_surname);
       	}
      	else
      	{
       		$("#"+str_element).parent("div").parent("li").attr("class","");
      		$("#"+str_element).parent("div").next("p").text('');
      	}
    	}
    }
	}
  return bln_return;
}

function validate_email(str_element)
{
  var bln_return = true;
  if (!str_element)
  {
    str_element = 'name';
  }
	var str_email = $("#"+str_element).attr("value");
  var oEmailReg = /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;
	if (!str_email)
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","error");
 		$("#"+str_element).parent("div").next("p").text(str_error_code_no_email);
	}
	else
	{
		if (!oEmailReg.test(str_email)) 
		{
			bln_return = false;
 			$("#"+str_element).parent("div").parent("li").attr("class","error");
 			$("#"+str_element).parent("div").next("p").text(str_error_code_invalid_email);
 		}
		else
		{
 			$("#"+str_element).parent("div").parent("li").attr("class","");
 			$("#"+str_element).parent("div").next("p").text('');
 		}
		
	}
  return bln_return;
}

function check_forename(str_element)
{
  var bln_return = true;
  if (!str_element)
  {
    str_element = 'forename';
  }

 	var str_name = 	$("#"+str_element).attr("value");
  var onameReg = /^[a-zA-Z\xC0-\xC6\xE0-\xE6\xC8-\xCB\xE8-\xEB\xCC-\xCF\xEC-\xEF\xD2-\xD6\xF2-\xF6\xD9-\xDC\xF9-\xFC\xD1\xF1\ \-\']+$/;
 	//'
  if (str_name && !onameReg.test(str_name)) 
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_msg_invalid_forename_warn);
	}
	else
	{
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_error_code_no_forename);
	}
  return bln_return;
}

function check_middle_names(str_element)
{
  var bln_return = true;
  if (!str_element)
  {
    str_element = 'name';
  }

 	var str_name = 	$("#"+str_element).attr("value");
  var onameReg = /^[a-zA-Z\xC0-\xC6\xE0-\xE6\xC8-\xCB\xE8-\xEB\xCC-\xCF\xEC-\xEF\xD2-\xD6\xF2-\xF6\xD9-\xDC\xF9-\xFC\xD1\xF1\ \-\']+$/;
 	//'
  if (str_name && !onameReg.test(str_name)) 
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_msg_invalid_middle_names_warn);
	}
	else
	{
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_error_code_no_middle_names);
	}
  return bln_return;
}

function check_surname(str_element)
{
  var bln_return = true;
  if (!str_element)
  {
    str_element = 'surname';
  }

 	var str_name = 	$("#"+str_element).attr("value");
  var onameReg = /^[a-zA-Z\xC0-\xC6\xE0-\xE6\xC8-\xCB\xE8-\xEB\xCC-\xCF\xEC-\xEF\xD2-\xD6\xF2-\xF6\xD9-\xDC\xF9-\xFC\xD1\xF1\ \-\']+$/;
 	//'
  if (str_name && !onameReg.test(str_name)) 
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_msg_invalid_surname_warn);
	}
	else
	{
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_error_code_no_surname);
	}
  return bln_return;
}

function check_email(str_element)
{
  var bln_return = true;
  if (!str_element)
  {
    str_element = 'name';
  }
	var str_email = $("#"+str_element).attr("value");
  var oEmailReg = /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;
	if (str_email && !oEmailReg.test(str_email)) 
	{
		bln_return = false;
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_msg_invalid_email_warn);
	}
	else
	{
 		$("#"+str_element).parent("div").parent("li").attr("class","live_type");
 		$("#"+str_element).parent("div").next("p").text(str_error_code_no_email);
	}
  return bln_return;
}

