
function validateBrochureFields() {
  
  var recipientName = $F('recipient_name');
  var recipientEmail = $F('recipient_email');
  var recipientContact = $F('recipient_contact');
  var status = "";
  var contactStatus = "good"
  
  if (recipientName == "") {
    $("recipient_name").addClassName('validate_field');
    Element.show("validate_name_msg");
    nameStatus = "bad";
  } else {
    Element.removeClassName($('recipient_name'),'validate_field');
    Element.hide("validate_name_msg"); 
    nameStatus = "good";
  }
  
  if
    (recipientEmail == "") {
    $("recipient_email").addClassName('validate_field');
    Element.hide("validate_email_format_msg")
    Element.show("validate_email_msg");
    emailStatus = "bad";
  } else {
    var objRegExp  =/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
    if(!objRegExp.test(recipientEmail)) {
      Element.hide("validate_email_msg"); 
      $("recipient_email").addClassName('validate_field');
      Element.show("validate_email_format_msg"); 
      emailStatus = "bad";
    } else {
      Element.removeClassName($("recipient_email"), 'validate_field');
      Element.hide("validate_email_msg");
      Element.hide("validate_email_format_msg");
      emailStatus = "good";
    }
  }
  
  if ($('via_phone').checked == true && $('contact_yes').checked == true){
    if (recipientContact == '') {
      $("recipient_contact").addClassName('validate_field');
      Element.show("validate_recipient_contact");
      Element.hide("validate_recipient_contact_format");
      contactStatus = '';
    } else {
      var objRegExp  =/[689]+([0-9]{7})/;
      if(!objRegExp.test(recipientContact) || recipientContact.length > 8) {
        Element.hide("validate_recipient_contact"); 
        $("recipient_contact").addClassName('validate_field');
        Element.show("validate_recipient_contact_format"); 
        contactstatus = '';
      } else {
        Element.removeClassName($("recipient_contact"), 'validate_field');
        Element.hide("validate_recipient_contact");
        Element.hide("validate_recipient_contact_format");
        contactStatus = 'good';
      }
    }
  }
}


function validateBrochureForm() {
  

  var recipientName = $F('recipient_name');
  var recipientEmail = $F('recipient_email');
  var recipientContact = $F('recipient_contact');
  var status = "";
  
  if (recipientName == "") {
    $("recipient_name").addClassName('validate_field');
    Element.show("validate_name_msg");
    nameStatus = "bad";
  } else {
    Element.removeClassName($('recipient_name'),'validate_field');
    Element.hide("validate_name_msg"); 
    nameStatus = "good";
  }
  
  if
    (recipientEmail == "") {
    $("recipient_email").addClassName('validate_field');
    Element.hide("validate_email_format_msg")
    Element.show("validate_email_msg");
    emailStatus = "bad";
  } else {
    var objRegExp  =/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
    if(!objRegExp.test(recipientEmail)) {
      Element.hide("validate_email_msg"); 
      $("recipient_email").addClassName('validate_field');
      Element.show("validate_email_format_msg"); 
      emailStatus = "bad";
    } else {
      Element.removeClassName($("recipient_email"), 'validate_field');
      Element.hide("validate_email_msg");
      Element.hide("validate_email_format_msg");
      emailStatus = "good";
    }
  }
  
  if ($('contact_yes').checked == true && $('gen2').checked == false && $('savvy').checked == false && $('satria').checked == false && $('persona').checked == false && $('saga').checked == false && $('exora').checked == false) {
      Element.show('validate_contact_model');
     $('interested_models').setAttribute('class', 'validate_field');
     modelStatus = "bad"
  }  else {
    modelStatus = "good"
  }
  
  if ($('via_phone').checked == true && $('contact_yes').checked == true){
    if (recipientContact == '') {
      $("recipient_contact").addClassName('validate_field');
      Element.show("validate_recipient_contact");
      Element.hide("validate_recipient_contact_format");
      contactStatus = '';
    } else {
      var objRegExp  =/[689]+([0-9]{7})/;
      if(!objRegExp.test(recipientContact) || recipientContact.length > 8) {
        Element.hide("validate_recipient_contact"); 
        $("recipient_contact").addClassName('validate_field');
        Element.show("validate_recipient_contact_format"); 
        contactStatus = '';
      } else {
        Element.removeClassName($("recipient_contact"), 'validate_field');
        Element.hide("validate_recipient_contact");
        Element.hide("validate_recipient_contact_format");
        contactStatus = 'good';
      }
    }
  }
  
  if ($('via_phone').checked == false && $('via_email').checked == false && $('contact_yes').checked == true) {
    contactStatus = '';
  }
  
  if ($('contact_yes').checked == false || $('via_email').checked == true){
    contactStatus = 'good';
  }

  
  if (nameStatus == "good" && emailStatus == "good" && contactStatus == "good" && modelStatus == "good" && $('checker').value == 'go') {
    $('brochure_form').submit();
  } else {
    $('checker').value = 'nopost';
  }
}

function validateServiceRequest() {
  var vehicleNo = $F('vehicle_no');
  var ownerName = $F('owner_name');
  var vehicleModel = $F('vehicle_model');
  var ownerContact = $F('owner_contact');
  var ownerEmail = $F('owner_email');
  var genServicing = $F('gen_service');
  var repairFault = $F('repair_fault');
/*  var serviceType = Form.getInputs('booking_form', 'radio', 'service_type').find(function(radio) { return radio.checked }).value; */

  if (ownerName == "") {
    $("owner_name").addClassName('validate_field');
    Element.show("validate_owner_name_msg");
    namestatus = '';
  } else {
    Element.removeClassName($('owner_name'),'validate_field');
    Element.hide("validate_owner_name_msg"); 
    namestatus = 'good';
  }
  
  var objRegExp  =/(^[a-zA-Z]{1,3})[0-9]{1,4}[a-zA-Z]{1}$/;
  
  if (vehicleNo == "") {
    $("vehicle_no").addClassName('validate_field');
    Element.hide("validate_vehicle_no_format_msg");
    Element.show("validate_vehicle_no_msg");
    vehiclestatus = '';
  }
  
  if(!objRegExp.test(vehicleNo)) {
    Element.hide("validate_vehicle_no_msg"); 
    $("vehicle_no").addClassName('validate_field');
    Element.show("validate_vehicle_no_format_msg"); 
    vehiclestatus = '';
  } else {
    Element.removeClassName($("vehicle_no"), 'validate_field');
    Element.hide("validate_vehicle_no_msg");
    Element.hide("validate_vehicle_no_format_msg");
    vehiclestatus = 'good';
  }
  
  if (vehicleModel == "") {
    $("vehicle_model").addClassName('validate_field');
    Element.show("validate_vehicle_model_msg");
    modelstatus = '';
  } else {
    Element.removeClassName($('vehicle_model'),'validate_field');
    Element.hide("validate_vehicle_model_msg");
    modelstatus = 'good'; 
  }  
  
  if (ownerContact == "") {
    $("owner_contact").addClassName('validate_field');
    Element.show("validate_owner_contact_msg");
    contactstatus = '';
  } else {
    var objRegExp  =/[689]+([0-9]{7})/;
    if(!objRegExp.test(ownerContact) || ownerContact.length > 8) {
      Element.hide("validate_owner_contact_msg"); 
      $("owner_contact").addClassName('validate_field');
      Element.show("validate_owner_contact_format_msg"); 
      contactstatus = '';
    } else {
      Element.removeClassName($("owner_contact"), 'validate_field');
      Element.hide("validate_owner_contact_msg");
      Element.hide("validate_owner_contact_format_msg");
      contactstatus = 'good';
    }
  }
  
  var objRegExp  =/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
  if(ownerEmail !== '' && !objRegExp.test(ownerEmail)) {
    $("owner_email").addClassName('validate_field');
    Element.show("validate_owner_email_msg"); 
    emailstatus = "bad";
  } else {
    Element.removeClassName($("owner_email"), 'validate_field');
    Element.hide("validate_owner_email_msg");
    emailstatus = "good";
  }

  var myDate = new Date();
  var todayDate = myDate.getDate();
  var todayMonth = myDate.getMonth() + 1;
  var todayYear = myDate.getFullYear();
  
  var choosenDate = $F('date-from');  
  var choosenMonth = choosenDate.substring(0,2);
  var choosenDay = choosenDate.substring(3,5);
  var choosenYear = choosenDate.substring(6,10); 
  
  if (choosenDay.substring(0,1) == 0) {
    choosenDay = choosenDay.substring(1,2);
  }  
  
  if (choosenMonth.substring(0,1) == 0) {
    choosenMonth = choosenMonth.substring(1,2);
  }
    
  if (choosenYear < todayYear) {
    $("date-from").addClassName('validate_field');
    Element.show("validate_date_msg");
    datestatus = '';
  } else {
      if (choosenMonth < todayMonth) {
        $("date-from").addClassName('validate_field');
        Element.show("validate_date_msg");
        datestatus = '';
      } else {
        if (choosenDay < todayDate && choosenMonth == todayMonth) {
          $("date-from").addClassName('validate_field');
          Element.show("validate_date_msg");
          datestatus = '';
        } else {
          Element.removeClassName($("date-from"), 'validate_field');
          Element.hide("validate_date_msg");
          datestatus = 'good';
        }
      }
    } 
    
  if ($('gen_service').checked == true) {
    faultstatus = 'good'
    var mileage = $F('mileage');
    if (mileage == '') {
      $("mileage").addClassName('validate_field');
      Element.show("validate_mileage_msg");
      mileagestatus = '';
    } else {
      Element.removeClassName($("mileage"), 'validate_field');
      Element.hide("validate_mileage_msg");
      mileagestatus = 'good';
    }
  } else {
      Element.removeClassName($("mileage"), 'validate_field');
      Element.hide("validate_mileage_msg");
  }
  
  if ($('repair_fault').checked == true) {
    mileagestatus = 'good'
    var descripeFault = $F('describe_fault');
    if (descripeFault == '') {
      $("describe_fault").addClassName('validate_field');
      Element.show("validate_fault_msg");
      faultstatus = '';
    } else {
      Element.removeClassName($("describe_fault"), 'validate_field');
      Element.hide("validate_fault_msg");
      faultstatus = 'good';
    }
  } else {
    Field.clear($('describe_fault'));
    Element.removeClassName($("describe_fault"), 'validate_field');
    Element.hide("validate_fault_msg");
    $('describe_fault').setAttribute('disabled', true);
  }
  
  if ($('repair_fault').checked == true || $('gen_service').checked == true){
  requeststatus = 'good'
  } else {
  requeststatus = ''
  }
    
  if (namestatus == 'good' && vehiclestatus == 'good' && modelstatus == 'good' && contactstatus == 'good' && emailstatus == 'good' && datestatus == 'good' && mileagestatus == 'good' && faultstatus == 'good' && requeststatus == 'good' && $('checker').value == 'go') {
  $('booking_form').submit();
  } else {
    $('checker').value = 'nopost';
  }
  
/*  var currentDate = todayMonth.toString() + '/' + todayDate.toString() + '/' + todayYear.toString(); 
  alert(currentDate);
  alert(todayYear);
  alert(choosenYear);
  alert(todayMonth);
  alert(choosenMonth);
  alert(myDate.getDate());
  alert(choosenDay); */
  
}


function validateFields() {
  var vehicleNo = $F('vehicle_no');
  var ownerName = $F('owner_name');
  var vehicleModel = $F('vehicle_model');
  var ownerContact = $F('owner_contact');
  var ownerEmail = $F('owner_email');
  var genServicing = $F('gen_service');
  var repairFault = $F('repair_fault');
/*  var serviceType = Form.getInputs('booking_form', 'radio', 'service_type').find(function(radio) { return radio.checked }).value; */

  if (ownerName == "") {
    $("owner_name").addClassName('validate_field');
    Element.show("validate_owner_name_msg");
    namestatus = '';
  } else {
    Element.removeClassName($('owner_name'),'validate_field');
    Element.hide("validate_owner_name_msg"); 
    namestatus = 'good';
  }
  
  var objRegExp  =/(^[a-zA-Z]{1,3})[0-9]{1,4}[a-zA-Z]{1}$/;
  //var objRegExp  =/[a-zA-Z]{1,3}[0-9]{1,4}[a-zA-Z]{1}$/;
  //var objRegExp  =/[sSpPwW]+([a-zA-Z]{2})+([0-9]{4})+[a-zA-Z]/;
  
  if (vehicleNo == "") {
    $("vehicle_no").addClassName('validate_field');
    Element.hide("validate_vehicle_no_format_msg");
    Element.show("validate_vehicle_no_msg");
    vehiclestatus = '';
  }
  
  if(!objRegExp.test(vehicleNo)) {
    Element.hide("validate_vehicle_no_msg"); 
    $("vehicle_no").addClassName('validate_field');
    Element.show("validate_vehicle_no_format_msg"); 
    vehiclestatus = '';
  } else {
    Element.removeClassName($("vehicle_no"), 'validate_field');
    Element.hide("validate_vehicle_no_msg");
    Element.hide("validate_vehicle_no_format_msg");
    vehiclestatus = 'good';
  }
  
  if (vehicleModel == "") {
    $("vehicle_model").addClassName('validate_field');
    Element.show("validate_vehicle_model_msg");
    modelstatus = '';
  } else {
    Element.removeClassName($('vehicle_model'),'validate_field');
    Element.hide("validate_vehicle_model_msg");
    modelstatus = 'good'; 
  }  
  
  if (ownerContact == "") {
    $("owner_contact").addClassName('validate_field');
    Element.show("validate_owner_contact_msg");
    Element.hide("validate_owner_contact_format_msg");
    contactstatus = '';
  } else {
    var objRegExp  =/[689]+([0-9]{7})/;
    if(!objRegExp.test(ownerContact) || ownerContact.length > 8) {
      Element.hide("validate_owner_contact_msg"); 
      $("owner_contact").addClassName('validate_field');
      Element.show("validate_owner_contact_format_msg"); 
      contactstatus = '';
    } else {
      Element.removeClassName($("owner_contact"), 'validate_field');
      Element.hide("validate_owner_contact_msg");
      Element.hide("validate_owner_contact_format_msg");
      contactstatus = 'good';
    }
  }
  
  var objRegExp  =/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
  if(ownerEmail !== '' && !objRegExp.test(ownerEmail)) {
    $("owner_email").addClassName('validate_field');
    Element.show("validate_owner_email_msg"); 
    emailstatus = "bad";
  } else {
    Element.removeClassName($("owner_email"), 'validate_field');
    Element.hide("validate_owner_email_msg");
    emailstatus = "good";
  }

  var myDate = new Date();
  var todayDate = myDate.getDate();
  var todayMonth = myDate.getMonth() + 1;
  var todayYear = myDate.getFullYear();
  
  var choosenDate = $F('date-from');  
  var choosenMonth = choosenDate.substring(0,2);
  var choosenDay = choosenDate.substring(3,5);
  var choosenYear = choosenDate.substring(6,10); 
  
  if (choosenDay.substring(0,1) == 0) {
    choosenDay = choosenDay.substring(1,2);
  }  
  
  if (choosenMonth.substring(0,1) == 0) {
    choosenMonth = choosenMonth.substring(1,2);
  }
    
  if (choosenYear < todayYear) {
    $("date-from").addClassName('validate_field');
    Element.show("validate_date_msg");
    datestatus = '';
  } else {
      if (choosenMonth < todayMonth) {
        $("date-from").addClassName('validate_field');
        Element.show("validate_date_msg");
        datestatus = '';
      } else {
        if (choosenDay < todayDate && choosenMonth == todayMonth) {
          $("date-from").addClassName('validate_field');
          Element.show("validate_date_msg");
          datestatus = '';
        } else {
          Element.removeClassName($("date-from"), 'validate_field');
          Element.hide("validate_date_msg");
          datestatus = 'good';
        }
      }
    }
 
    
  if ($('gen_service').checked == true) {
    faultstatus = 'good'
    var mileage = $F('mileage');
    if (mileage == '') {
      $("mileage").addClassName('validate_field');
      Element.show("validate_mileage_msg");
      mileagestatus = '';
    } else {
      Element.removeClassName($("mileage"), 'validate_field');
      Element.hide("validate_mileage_msg");
      mileagestatus = 'good';
    }
  } else {
      Element.removeClassName($("mileage"), 'validate_field');
      Element.hide("validate_mileage_msg");
  }
  
  if ($('repair_fault').checked == true) {
    mileagestatus = 'good'
    var descripeFault = $F('describe_fault');
    if (descripeFault == '') {
      $("describe_fault").addClassName('validate_field');
      Element.show("validate_fault_msg");
      faultstatus = '';
    } else {
      Element.removeClassName($("describe_fault"), 'validate_field');
      Element.hide("validate_fault_msg");
      faultstatus = 'good';
    }
  } else {
    Field.clear($('describe_fault'));
    Element.removeClassName($("describe_fault"), 'validate_field');
    Element.hide("validate_fault_msg");
    $('describe_fault').setAttribute('disabled', true);
  }
  
  if ($('repair_fault').checked == true || $('gen_service').checked == true){
    requeststatus = 'good';
    Element.removeClassName($("service_request"), 'validate_field');
    Element.hide("validate_service_request_msg");
  } else {
    requeststatus = '';
    $("service_request").addClassName('validate_field');
    Element.show("validate_service_request_msg");
  }
    
  if (namestatus == 'good' && vehiclestatus == 'good' && modelstatus == 'good' && contactstatus == 'good' && emailstatus == 'good' && datestatus == 'good' && mileagestatus == 'good' && faultstatus == 'good' && $('checker').value == 'go') {
  $('booking_form').submit();
  } else {
    $('checker').value = 'nopost';
  } 
}


