function validate_reg_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#firstname').val() == "")
	{
		$("#firstname").addClass("validate_empty_field");
			error = true;
	}
	if($('#lastname').val() == "")
	{
		$("#lastname").addClass("validate_empty_field");
			error = true;
	}
	if(! isValidEmailAddress($('#email').val()))
	{
		$("#email").addClass("validate_empty_field");
			error = true;
	}
	if($('#country_id').val() == "")
	{
		$("#country_id").addClass("validate_empty_field");
			error = true;
	}
	if($('#password').val() == "")
	{
		$("#password").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}
function validate_reg_form_agent() //when signing up from stratch
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#company').val() == "")
	{
		$("#company").addClass("validate_empty_field");
			error = true;
	}
	if($('#branch').val() == "")
	{
		$("#branch").addClass("validate_empty_field");
			error = true;
	}
	if($('#firstname').val() == "")
	{
		$("#firstname").addClass("validate_empty_field");
			error = true;
	}
	if($('#lastname').val() == "")
	{
		$("#lastname").addClass("validate_empty_field");
			error = true;
	}
	if(! isValidEmailAddress($('#email').val()))
	{
		$("#email").addClass("validate_empty_field");
			error = true;
	}
	if($('#country_id').val() == "")
	{
		$("#country_id").addClass("validate_empty_field");
			error = true;
	}
	if($('#password').val() == "")
	{
		$("#password").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_agent_branch_reg_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#branch_title').val() == "")
	{
		$("#branch_title").addClass("validate_empty_field");
			error = true;
	}
	
	if($('.new_branch_option_signup').attr('checked'))
	{
		if($('#firstname').val() == "")
		{
			$("#firstname").addClass("validate_empty_field");
				error = true;
		}
		if($('#lastname').val() == "")
		{
			$("#lastname").addClass("validate_empty_field");
				error = true;
		}
		if(! isValidEmailAddress($('#email').val()))
		{
			$("#email").addClass("validate_empty_field");
				error = true;
		}
		if($('#country_id').val() == "")
		{
			$("#country_id").addClass("validate_empty_field");
				error = true;
		}
	}
	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_agent_reg_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#firstname').val() == "")
	{
		$("#firstname").addClass("validate_empty_field");
			error = true;
	}
	if($('#lastname').val() == "")
	{
		$("#lastname").addClass("validate_empty_field");
			error = true;
	}
	if(! isValidEmailAddress($('#email').val()))
	{
		$("#email").addClass("validate_empty_field");
			error = true;
	}
	if($('#country_id').val() == "")
	{
		$("#country_id").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_new_property_address_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#street').val() == "")
	{
		$("#street").addClass("validate_empty_field");
			error = true;
	}
	/* 
	if($('#postcode').val() == "")
	{
		$("#postcode").addClass("validate_empty_field");
			error = true;
	}*/
	if($('#town').val() == "")
	{
		$("#town").addClass("validate_empty_field");
			error = true;
	}
	
	if(($('#latitude').val() == 0)&&
		($('#longitude').val() == 0))
	{
		$("#areaname").addClass("validate_empty_field");
			error = true;
	}
	
	/*
	if($('#l2-a-photo-uploaded').val() == "")
	{
		if($('#l2-a-photo').val() == "")
		{
			$("#l2-a-photo").addClass("validate_empty_field");
				error = true;
		}
		if($('#l2-a-photo-title').val() == "")
		{
			$("#l2-a-photo-title").addClass("validate_empty_field");
				error = true;
		}
	}*/
	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_new_property_enter_address_form()
{
	//In ls1.php
	$('form').resetValidationErrorStyle();
	$('#validation_error_message_ls1').hide();
	var error = false;

	if($('#areaname').val() == "")
	{
		$("#areaname").addClass("validate_empty_field");
		error = true;
	}

	if(error)
	{
		$('#validation_error_message_ls1').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_new_property_whole_form()
{
	//$('form').resetValidationErrorStyle();
	//$('#validation_error_message').hide();
	var error = false;

	if($('#property_summary').val() == "")
	{
		$("#property_summary").addClass("validate_empty_field");
			error = true;
	}
	if($('#date_available_from').val() == "")
	{
		$("#date_available_from").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#letting_period').val()) || $('#letting_period').val() == 0)
	{
		$("#letting_period").addClass("validate_empty_field");
			error = true;
	}
	
	if(isNaN($('#people').val()) || $('#people').val() == 0)
	{
		$("#people").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#rooms').val()) || $('#rooms').val() == 0)
	{
		$("#rooms").addClass("validate_empty_field");
			error = true;
	}
	//if(isNaN($('#bedrooms').val()) || $('#bedrooms').val() == 0)
	//{
	//	$("#bedrooms").addClass("validate_empty_field");
	//		error = true;
	//}
	//if(isNaN($('#bathrooms').val()) || $('#bathrooms').val() == 0)
	//{
	//	$("#bathrooms").addClass("validate_empty_field");
	//		error = true;
	//}
	if(isNaN($('#price').val()) || $('#price').val() == 0)
	{
		$("#price").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_new_property_shared_form()
{
	//$('form').resetValidationErrorStyle();
	//$('#validation_error_message').hide();
	var error = false;

	if($('#room_summary').val() == "")
	{
		$("#room_summary").addClass("validate_empty_field");
			error = true;
	}
	if($('#date_available_from').val() == "")
	{
		$("#date_available_from").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#letting_period').val()) || $('#letting_period').val() == 0)
	{
		$("#letting_period").addClass("validate_empty_field");
			error = true;
	}
	
	
	
	if(isNaN($('#people').val()) || $('#people').val() == 0)
	{

		$("#people").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#price').val()) || $('#price').val() == 0)
	{
		$("#price").addClass("validate_empty_field");
			error = true;
	}
	if($('#property_summary').val() == "")
	{
		$("#property_summary").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#rooms').val()) || $('#rooms').val() == 0)
	{
		$("#rooms").addClass("validate_empty_field");
			error = true;
	}
	//if(isNaN($('#bedrooms').val()) || $('#bedrooms').val() == 0)
	//{
	//	$("#bedrooms").addClass("validate_empty_field");
	//		error = true;
	//}
	//if(isNaN($('#bathrooms').val()) || $('#bathrooms').val() == 0)
	//{
	//	$("#bathrooms").addClass("validate_empty_field");
	//		error = true;
	//}
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}


function validate_new_room_shared_form()
{
	//$('form').resetValidationErrorStyle();
	//$('#validation_error_message').hide();
	var error = false;

	if($('#room_summary').val() == "")
	{
		$("#room_summary").addClass("validate_empty_field");
			error = true;
	}
	if($('#date_available_from').val() == "")
	{
		$("#date_available_from").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#letting_period').val()) || $('#letting_period').val() == 0)
	{
		$("#letting_period").addClass("validate_empty_field");
			error = true;
	}
	
	
	
	if(isNaN($('#people').val()) || $('#people').val() == 0)
	{

		$("#people").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#price').val()) || $('#price').val() == 0)
	{
		$("#price").addClass("validate_empty_field");
			error = true;
	}

	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}


function validate_edit_property_shared_form()
{
	
	
	$('form').resetValidationErrorStyle();
	$('#validation_error_message_property').hide();
	var error = false;

	if($('#pc6-property-summary').val() == "")
	{
		$("#pc6-property-summary").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#rooms').val()) || $('#rooms').val() == 0)
	{
		$("#rooms").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#bedrooms').val()) || $('#bedrooms').val() == 0)
	{
		$("#bedrooms").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#bathrooms').val()) || $('#bathrooms').val() == 0)
	{
		$("#bathrooms").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#internal_area_size').val()) || $('#internal_area_size').val() == 0)
	{
		$("#internal_area_size").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message_property').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_edit_property_shared_room_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;
	
	//alert('In here!');
	
	//alert('In here!');

	if($('#pc6-summary').val() == "")
	{
		$("#pc6-summary").addClass("validate_empty_field");
			error = true;
	}
	if($('#room_title').val() == "")
	{
		$("#room_title").addClass("validate_empty_field");
			error = true;
	}
	/*Old if($('#room_description').val() == "")
	{
		$("#room_description").addClass("validate_empty_field");
			error = true;
	}*/
	if(isNaN($('#room_letting_period').val()) || $('#room_letting_period').val() == 0)
	{
		$("#room_letting_period").addClass("validate_empty_field");
			error = true;
	}
	/*
	if(isNaN($('#people').val()) || $('#people').val() == 0)
	{
		$("#people").addClass("validate_empty_field");
			error = true;
	}*/
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_edit_property_shared_new_room_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#pc6-room-summary').val() == "")
	{
		$("#pc6-room-summary").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#room_letting_period').val()) || $('#room_letting_period').val() == 0)
	{
		$("#room_letting_period").addClass("validate_empty_field");
			error = true;
	}
	/*
	if(isNaN($('#people').val()) || $('#people').val() == 0)
	{
		$("#people").addClass("validate_empty_field");
			error = true;
	}*/
	if(isNaN($('#pc6-price').val()) || $('#pc6-price').val() == 0)
	{
		$("#pc6-price").addClass("validate_empty_field");
			error = true;
	}
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_edit_property_whole_form()
{
	//$('form').resetValidationErrorStyle();
	//$('#validation_error_message').hide();
	var error = false;

	if($('#pc6-summary').val() == "")
	{
		$("#pc6-summary").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#letting_period').val()) || $('#letting_period').val() == 0)
	{
		$("#letting_period").addClass("validate_empty_field");
			error = true;
	}
	/*
	if(isNaN($('#people').val()) || $('#people').val() == 0)
	{
		$("#people").addClass("validate_empty_field");
			error = true;
	}*/
	if(isNaN($('#rooms').val()) || $('#rooms').val() == 0)
	{
		$("#rooms").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#bedrooms').val()) || $('#bedrooms').val() == 0)
	{
		$("#bedrooms").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#bathrooms').val()) || $('#bathrooms').val() == 0)
	{
		$("#bathrooms").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#internal_area_size').val()) || $('#internal_area_size').val() == 0)
	{
		$("#internal_area_size").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}

}

function validate_photo_upload()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#l2-a-photo').val() == "")
	{
		$("#l2-a-photo").addClass("validate_empty_field");
			error = true;
	}
	if($('#l2-a-photo-title').val() == "")
	{
		$("#l2-a-photo-title").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_photo_upload_property()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message_property').hide();
	var error = false;

	if($('#l2-a-photo').val() == "")
	{
		$("#l2-a-photo").addClass("validate_empty_field");
			error = true;
	}
	if($('#l2-a-photo-title').val() == "")
	{
		$("#l2-a-photo-title").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message_property').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_photo_upload_room()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message_room').hide();
	var error = false;

	if($('#l2-a-photo-room').val() == "")
	{
		$("#l2-a-photo-room").addClass("validate_empty_field");
			error = true;
	}
	if($('#l2-a-photo-title-room').val() == "")
	{
		$("#l2-a-photo-title-room").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message_room').show();
		return false;
	}
	else
	{
		return true;
	}
}



function validate_floorplan_upload()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#l2-a-floorplan').val() == "")
	{
		$("#l2-a-floorplan").addClass("validate_empty_field");
			error = true;
	}
	if($('#l2-a-floorplan-title').val() == "")
	{
		$("#l2-a-floorplan-title").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_transport()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message_transport').hide();
	var error = false;

	if($('#desc').val() == "")
	{
		$("#desc").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#dist').val()) || $('#dist').val() == 0)
	{
		$("#dist").addClass("validate_empty_field");
			error = true;
	}
	
	if(error)
	{
		$('#validation_error_message_transport').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_location_address_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#street').val() == "")
	{
		$("#street").addClass("validate_empty_field");
			error = true;
	}
	/*
	if($('#postcode').val() == "")
	{
		$("#postcode").addClass("validate_empty_field");
			error = true;
	}
	*/
	if($('#town').val() == "")
	{
		$("#town").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_property_review_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#subject').val() == "")
	{
		$("#subject").addClass("validate_empty_field");
			error = true;
	}
	if($('#feedback').val() == "")
	{
		$("#feedback").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_property_feedback_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#subject').val() == "")
	{
		$("#subject").addClass("validate_empty_field");
			error = true;
	}
	if($('#feedback').val() == "")
	{
		$("#feedback").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_send_to_friend_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#recp_name').val() == "")
	{
		$("#recp_name").addClass("validate_empty_field");
			error = true;
	}
	if($('#recp_email').val() == "")
	{
		$("#recp_email").addClass("validate_empty_field");
			error = true;
	}
	if($('#name').val() == "")
	{
		$("#name").addClass("validate_empty_field");
			error = true;
	}
	if($('#email').val() == "")
	{
		$("#email").addClass("validate_empty_field");
			error = true;
	}
	if($('#message').val() == "")
	{
		$("#message").addClass("validate_empty_field");
			error = true;
	}	

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_forward_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#recp_name').val() == "")
	{
		$("#recp_name").addClass("validate_empty_field");
			error = true;
	}
	if($('#recp_email').val() == "")
	{
		$("#recp_email").addClass("validate_empty_field");
			error = true;
	}
	if($('#name').val() == "")
	{
		$("#name").addClass("validate_empty_field");
			error = true;
	}
	if($('#email').val() == "")
	{
		$("#email").addClass("validate_empty_field");
			error = true;
	}
	if($('#message').val() == "")
	{
		$("#message").addClass("validate_empty_field");
			error = true;
	}	

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_report_form()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#report-name').val() == "")
	{
		$("#report-name").addClass("validate_empty_field");
			error = true;
	}
	if($('#report-email').val() == "")
	{
		$("#report-email").addClass("validate_empty_field");
			error = true;
	}
	if($('#report-message').val() == "")
	{
		$("#report-message").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}

function validate_area_link()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#title').val() == "")
	{
		$("#title").addClass("validate_empty_field");
			error = true;
	}
	if($('#url').val() == "" || $('#url').val() == "http://")
	{
		$("#url").addClass("validate_empty_field");
			error = true;
	}
	if($('#description').val() == "")
	{
		$("#description").addClass("validate_empty_field");
			error = true;
	}
	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}

}

function validate_account_settings()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;

	if($('#firstname').val() == "")
	{
		$("#firstname").addClass("validate_empty_field");
			error = true;
	}
	if($('#lastname').val() == "")
	{
		$("#lastname").addClass("validate_empty_field");
			error = true;
	}
	/*if($('#username').val() == "")
	{
		$("#username").addClass("validate_empty_field");
			error = true;
	}*/

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		$('form').submit();
		return true;
	}
}


function validate_deposit()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;


	if(isNaN($('#room_deposit').val()))
	{
		$("#room_deposit").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#room_fees').val()))
	{
		$("#room_fees").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}



function validate_looking_for()
{
	$('form').resetValidationErrorStyle();
	$('#validation_error_message').hide();
	var error = false;


	if(isNaN($('#min_price').val()))
	{
		$("#min_price").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#max_price').val()))
	{
		$("#max_price").addClass("validate_empty_field");
			error = true;
	}
	if(isNaN($('#stay-period-length').val()))
	{
		$("#stay-period-length").addClass("validate_empty_field");
			error = true;
	}

	if(error)
	{
		$('#validation_error_message').show();
		return false;
	}
	else
	{
		return true;
	}
}





function isValidEmailAddress(emailAddress)
{
   /* Check for empty address or invalid characters */
   if (emailAddress == "" || hasInvalidChar(emailAddress))
   {
      return false;
   }

   /* check for presence of the @ character */
   var atPos = emailAddress.indexOf("@", 1)
   if (atPos == -1)
   {
      return false;
   }
   
   /* Check that there are no more @ characters */
   if (emailAddress.indexOf("@", atPos + 1) > -1)
   {
      return false;
   }

   /* Check for the presence of a dot somewhere after @ */
   var dotPos = emailAddress.indexOf(".", atPos + 1);
   if (dotPos == -1)
   {
      return false;
   }

   /* Check for presence of two or more characters after last dot */
   var lastDotPos = emailAddress.lastIndexOf(".");
   if (lastDotPos + 3 >  emailAddress.length)
   {
      return false;
   }
   return true;
}

function hasInvalidChar(emailAddress)
{
   var invalidChars = "/;:,"; // this list is not complete

   for (var k = 0; k < invalidChars.length; k++)
   {
      var ch = invalidChars.charAt(k);
      if (emailAddress.indexOf(ch) > -1)
      {
         return true;
      }
   }
   return false;
}

function validate_date_calendar()
{
	$('form').resetValidationErrorStyle();	
	var error = false;
	if($('#start_date_view_adv').val() > $('#end_date_view').val())
	{
		$("#end_date_view").addClass("validate_empty_field");
		$('#validation_error_message_date').show();
		return false;
	}

	else
	{
		return true;
	}
}