var msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
var valid = true;

function form_validate_dates(ArrivalDate,DepartureDate){
  if(validateFormatDate(ArrivalDate) && validateFormatDate(DepartureDate)){
    if(DateGreatherToday(ArrivalDate)){
      if(!validateDates(ArrivalDate,DepartureDate)){
        msgStr += " - The departure date should be later than the arrival date\n";
        valid = false;
      }
    }
    //else{
    //  msgStr += " - The arrival date should be in the future\n";
    //  valid = false;
    //}
    if(validateDaysbetweenDates(ArrivalDate,DepartureDate)>366){
      msgStr += " - The stay should be one year or less\n";
      valid = false;
    }
  }
  else {
    msgStr += " - The format of the arrival/departure date is not correct\n";
    valid = false;
  }

}
function form_validate_dates_for_reports(FromDate,ToDate){
  if(validateFormatDate(FromDate) && validateFormatDate(ToDate)){
    if(!DateGreatherToday(FromDate) && !DateGreatherToday(ToDate)){
      if(!validateDates(FromDate,ToDate)){
        msgStr += " - The first date should be later than the second date\n";
        valid = false;
      }
    }
    else{
      msgStr += " - The dates should be in the past\n";
      valid = false;
    }
    if(validateDaysbetweenDates(FromDate,ToDate)>9){
      msgStr += " - The period should be no greater than 9 days\n";
      valid = false;
    }
  }
  else {
    msgStr += " - The format of the first/second date is not correct\n";
    valid = false;
  }

}

function form_validate_name(Name){
  if(!validateBlank(Name)){
    msgStr += " - Please provide us with your name\n";
    valid = false;
  }
}

function form_validate_GENERAL(field){
  if(!validateBlank(field)){
    msgStr += " - Please provide us with your "+field.name+"\n";
    valid = false;
  }
}

function form_validate_email(Email){
  if(!validateBlank(Email)){
    msgStr += " - Please provide us with your email\n";
    valid = false;
  }
  else{
    if(!validateEmail(Email)){
      msgStr += " - Email addres doesn't seem to be valid\n";
      valid = false;
    }
  }
}

function form_validate_phone(Phone){
  //Phone.value = "hola4";
  if(validateBlank(Phone) && !validatePhone(Phone)){
    msgStr += " - Please enter a valid phone number\n";
    valid = false;
  }
}

function form_validate_phoneObligatory(Phone){
  //Phone.value = "hola4";
  if(!validatePhone(Phone)){
    msgStr += " - Please enter a valid phone number\n";
    valid = false;
  }
}

function form_validate_AgentCertified(AgentCertified){
  if(!AgentCertified.checked){
    msgStr += " - Your must be a certified travel agent in order to submit an inquiry as a travel agent. If you are not a travel agent, please uncheck the \"I am a certified travel agent\" option.\n";
    valid = false;
  }
}

function form_validate_TravelerPassword(TravelerPassword,ConfirmPassword){
  if(!validateBlank(TravelerPassword)){
    msgStr += " - Please select a Password\n";
    valid = false;
  }
  else{
    if(TravelerPassword.value != ConfirmPassword.value){
      msgStr += " - Password diferent of Confirm password try again\n";
      valid = false;
    }
  }
}


function validateBasicSearchForm() {
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");

  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_dates(ArrivalDate,DepartureDate);
  if(!valid){
    alert(msgStr);
    return false;
  }
  return valid;
}

function validateInquiryPrivateForm() {
  var Name = document.getElementById("Name");
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");
  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phone(Phone);
  form_validate_dates(ArrivalDate,DepartureDate);
  
  if(!valid){
    alert(msgStr);
    return false;
  }
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}

function validateContactInfoForm(type) {
  var Name = document.getElementById("Name");
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");
  var countryCodePhone = document.getElementById("countryCodePhone");
  var captchaCode = document.getElementById('vcode');
  
  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  if( type == 'requestcall' || type == 'call' || type == 'email') {
	if(!validateBlank(Phone) || !validatePhoneSevenInt(Phone)){
		msgStr += " - Please enter a valid phone number\n";
		valid = false;
	}	
    if(!validateEmail(Email)){
      msgStr += " - Email addres doesn't seem to be valid\n";
      valid = false;
    }
  /*} else if( type == 'call' ) {
    if(Email.value != '' && !validateEmail(Email)){
      msgStr += " - Email addres doesn't seem to be valid\n";
      valid = false;
    }
	form_validate_phone(Phone);
	*/
  } else {
	form_validate_email(Email);
	form_validate_phone(Phone);
  }
  if ( type == 'email' || type == 'requestcall' ) {
	form_validate_dates(ArrivalDate,DepartureDate);
  }
  if ((type == 'call' || type == 'email' || type == 'requestcall') && countryCodePhone.value == 0){
      msgStr += " - Please Select country (Country Code) \n";
      valid = false;
  }
  
  if(captchaCode!=null){
  	if(!validateBlank(captchaCode)){
		msgStr += " - Please enter the letters as they are shown in the image\n";
		valid = false; 
	}
  }		
  
  if(!valid){
    alert(msgStr);
    return false;
  }
  
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}

function validateInquiryForm() {

  var Name = document.getElementById("Name"); 
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");

  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phone(Phone);
  form_validate_dates(ArrivalDate,DepartureDate);
  if (document.getElementById("propFinderFlag") && document.inquiryForm[0]){
    var propertyTypes = document.inquiryForm[0].elements['PropertyTypeID'];
  } else {
    var propertyTypes = document.inquiryForm.elements['PropertyTypeID'];
  }
  var propertytypeselected = false;
  for(var i=0;i<propertyTypes.length;i++){
    if(propertyTypes[i].checked) propertytypeselected = true;
  }
  if(!propertytypeselected){
    msgStr += " - At least one property type should be selected\n";
    valid = false;
  }

  if(!valid){
    alert(msgStr);
    return false;
  } else { 
  	if(!verifyBudgetValue('Budget','MinimumBudget')){
  		return false;
  	}
  }
  
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}



function validateInquiryFormS1() {

    var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  
  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

 
  form_validate_dates(ArrivalDate,DepartureDate);
  var propertyTypes = document.inquiryForm.elements['PropertyTypeID'];
  
  var propertytypeselected = false;
  for(var i=0;i<propertyTypes.length;i++){
    if(propertyTypes[i].checked) propertytypeselected = true;
  }
  if(!propertytypeselected){
    msgStr += " - At least one property type should be selected\n";
    valid = false;
  }

  if(!valid){
    alert(msgStr);
    return false;
  } 
  
  return true;
}


function validateInquiryFormS2() {

  var Name = document.getElementById("Name"); 
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");

  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phone(Phone);


  if(!valid){
    alert(msgStr);
    return false;
  } else { 
  	if(!verifyBudgetValue('Budget','MinimumBudget')){
  		return false;
  	}
  }
  
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}




function validateInquiryFormMPI(){

  var Name = document.getElementById("Name"); 
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");
  var countryCodePhone = document.getElementById("countryCodePhone");

  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  
  if(Phone.value != ''){
  	form_validate_phone(Phone);
  }else{
  	form_validate_GENERAL(Phone);
  }
  
  
  if(countryCodePhone.value == 0){
      msgStr += " - Please Select country (Country Code) \n";
      valid = false;
  }


  if(!valid){
    alert(msgStr);
    return false;
  } 
  
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}

// this script has been create for http://rentalo.com/i/add-your-site.html form
function validateFormConversions() {

  var Name = document.getElementById("Name"); 
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");
  var Destination = document.getElementById("Destination");
  

  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phoneObligatory(Phone);
  form_validate_GENERAL(Destination);

  

  if(!valid){
    alert(msgStr);
    return false;
  } 
  
  return true;
}



// this script has been create for http://rentalo.com/owners.html
function validateFormOwnersConversions() {

  var Name = document.getElementById("Name"); 
  var Email = document.getElementById("Email2");
  var Phone = document.getElementById("Phone");
  var Destination = document.getElementById("Destination");
  

  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phoneObligatory(Phone);
  form_validate_GENERAL(Destination);

  

  if(!valid){
    alert(msgStr);
    return false;
  } 
  
  return true;
}



function sendInquiryForm(){
	if(validateInquiryForm()){
		document.inquiryForm.submit();
		return true;
	}
	return false;
}

function validateInquiryFormAgent() {
  var Name = document.getElementById("Name");
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  var Phone = document.getElementById("Phone");
  
  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_phone(Phone);
  form_validate_dates(ArrivalDate,DepartureDate);

  var propertyTypes = document.inquiryForm.elements['PropertyTypeID'];
  var propertytypeselected = false;
  for(var i=0;i<propertyTypes.length;i++){
    if(propertyTypes[i].checked) propertytypeselected = true;
  }
  if(!propertytypeselected){
    msgStr += " - At least one property type should be selected\n";
    valid = false;
  }

  if(!valid){
    alert(msgStr);
    return false;
  }
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}

function validateInquiryFormSingUpAgent() {
  var Name = document.getElementById("Name");
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");
  var AgentCertified = document.getElementById("AgentCertified");
  var TravelerPassword = document.getElementById("AgentPass");
  var ConfirmPassword = document.getElementById("AgentPass2");
  
  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phone(Phone);
  form_validate_dates(ArrivalDate,DepartureDate);
  form_validate_AgentCertified(AgentCertified);
  form_validate_TravelerPassword(TravelerPassword,ConfirmPassword);
  

  var propertyTypes = document.inquiryForm.elements['PropertyTypeID'];
  var propertytypeselected = false;
  for(var i=0;i<propertyTypes.length;i++){
    if(propertyTypes[i].checked) propertytypeselected = true;
  }
  if(!propertytypeselected){
    msgStr += " - At least one property type should be selected\n";
    valid = false;
  }

  if(!valid){
    alert(msgStr);
    return false;
  }
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}



function validatePLSForm() {
  var Name = document.getElementById("Name");
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");
  var Budget = document.getElementById("Budget");
  
  msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phone(Phone);
  form_validate_dates(ArrivalDate,DepartureDate);

  if(!validateBlank(Budget)){
    msgStr += " - Please provide a budget\n";
    valid = false;
  }

  var propertyTypes = document.PLSform.elements['PropertyTypeID'];
  var propertytypeselected = false;
  for(var i=0;i<propertyTypes.length;i++){
    if(propertyTypes[i].checked) propertytypeselected = true;
  }
  if(!propertytypeselected){
    msgStr += " - At least one property type should be selected\n";
    valid = false;
  }
  
  if(!valid){
    alert(msgStr);
    return false;
  }
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}

function validateBookForm() {
  var Name = document.getElementById("Name");
  var Email = document.getElementById("Email");
  var Phone = document.getElementById("Phone");

  var msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  var valid = true;

  form_validate_name(Name);
  form_validate_email(Email);
  form_validate_phone(Phone);

  if(!valid){
    alert(msgStr);
    return false;
  }
  return valid;
}

function validateModifyForm() {
  var ArrivalDate = document.getElementById("InquiryArrival");
  var DepartureDate = document.getElementById("InquiryDeparture");
  var Phone = document.getElementById("Phone");

  var msgStr = "Oops! It seems that the form has been completed improperly:\n\n";
  var valid = true;

  form_validate_phone(Phone);
  form_validate_dates(ArrivalDate,DepartureDate);

  var propertyTypes = document.searchinquiry.elements['PropertyTypeID'];
  var propertytypeselected = false;
  for(var i=0;i<propertyTypes.length;i++){
    if(propertyTypes[i].checked) propertytypeselected = true;
  }
  if(!propertytypeselected){
    msgStr += " - At least one property type should be selected\n";
    valid = false;
  }

  if(!valid){
    alert(msgStr);
    return false;
  } else { 
  	if(!verifyBudgetValue('Budget','MinimumBudget')){
  		return false;
  	}
  }
  return confirm("To submit your inquiry, please verify that the information is correct and then click 'OK'.");
}

function showWarningBox(pId,pMsg){
	var element = document.getElementById(pId);

	for( var i = 0; element.childNodes[i]; i++ ){
		node = element.childNodes[i];
		//alert('type:' + node.nodeType+',name:'+node.nodeName+',parent:'+node.parentNode+',valeu:'+node.Value);
	}
}

function locateMessageDiv(){
	//alert('width:'+Screen.width);
}