/*************************************************************
* Page: contact_us.js v 1.0  
* Description: Contact us Validation
* 
* Hospitality Recruitment - Online Strategies
* Copyright (C) 2005 Online Strategies, All rights reserved
* Email  info@hospitalityonline.co.uk
* 
*************************************************************/
function validate_apply_online(e){
	// Validate the form
	String.prototype.trim = function()
	{
		return this.replace(/^\s*|\s*$/g, '');
	}
	
	var grp, focus_el = null, msg = '';
	
	if(document.getElementById('logged_in').value == "on")
	{
		// title must be filled in
		e.title.value = e.title.value.trim();
		if (e.title.selectedIndex == 0)
		{
			msg += error[0];
			focus_el = focus_el || e.title;
		}
		// First Name is_empty
		e.first_name.value = e.first_name.value.trim();
		if (is_empty(e.first_name))
		{
			msg += error[1];
			focus_el = focus_el || e.first_name;
		}				
	
		// Surname is empty
		e.last_name.value = e.last_name.value.trim();
		if (is_empty(e.last_name))
		{
			msg += error[2];
			focus_el = focus_el || e.last_name;
		}
	
		// EMAIL *********************************************
		// Must give a valid email
		e.email.value = e.email.value.trim();
		if (is_empty(e.email))
		{
			msg += error[33];
			focus_el = focus_el || e.email;
		}
	
		// Must give a valid email
		e.email.value = e.email.value.trim();
		if (!is_empty(e.email))
		{
			if(!is_valid_email(e.email))
			{
				msg += error[5];
				focus_el = focus_el || e.email;			
			}
		}// end IF logged_in
	}



	// Is word docment empty
	if (is_empty(e.your_cv))
	{
		msg += error[245];
		focus_el = focus_el || e.your_cv;
	}
	
	// if its uploaded, then make sure the extention is correct
	if (!is_empty(e.your_cv))
	{
		if(!check_extention(e.your_cv, "word"))
		{
			msg += error[246];
			focus_el = focus_el || e.your_cv;
		}
	}
	
	// Surname is empty
	//e.cover_letter.value = e.cover_letter.value.trim();
	if (is_empty(e.cover_letter))
	{
		msg += error[361];
		focus_el = focus_el || e.cover_letter;
	}

// Username is empty
	e.username.value = e.username.value.trim();
	if (is_empty(e.username))
	{
		msg += error[25];
		focus_el = focus_el || e.username;
	}
	
	if(document.getElementById('logged_in').value == "on")
	{
		// Username is empty
		e.username.value = e.username.value.trim();
		if (!is_empty(e.username) && (e.username.value.length < USERNAME_MIN || e.username.value.length > USERNAME_MAX))
		{
			msg += error[26];
			focus_el = focus_el || e.username;
		}
	}
	
	/* PASSWORD VALICATION START HERE */
	// password empty
	e.password.value = e.password.value.trim();
	if (is_empty(e.password))
	{
		msg += error[55];
		focus_el = focus_el || e.password;
	}
	
	if(document.getElementById('logged_in').value == "on")
	{
		// password empty
		e.password.value = e.password.value.trim();
		if (!is_empty(e.password) && is_empty(e.confirm_password))
		{
			msg += error[56];
			focus_el = focus_el || e.password;
		}
		
		// password empty
		e.password.value = e.password.value.trim();
		if (!is_empty(e.password) && !is_empty(e.confirm_password))
		{
			// password's dont match
			e.password.value = e.password.value.trim();
			if (e.password.value != e.confirm_password.value)
			{
				msg += error[27];
				focus_el = focus_el || e.password;
			}
		
			// password incorrectly formattted
			e.password.value = e.password.value.trim();
			if (e.password.value.length < PASSWORD_MIN || e.password.value.length > PASSWORD_MAX)
			{
				msg += error[28];
				focus_el = focus_el || e.password;
			}
		}
		// Terms and conditions must be checked
		e.terms.value = e.terms.value.trim();
		if (is_checked(e.terms))
		{
			msg += error[32];
			focus_el = focus_el || e.terms;
		}
	}
	

	// If there is an error then send through an alert (var msg) and return false
	if (msg != '')
	{
		var prefix = "The form has been incorrectly completed:\n";
		alert(prefix + msg);
		if (focus_el.focus)
		{
			focus_el.focus();
		}
		return false;
	}
	showprocess('show','hide');
	return true;
}