// Form Fields Checker
// http://www.eyemedia.ro
// Written by Marian Vlad (eyemedia@gmail.com)
// This code is private property.
// Redistribution and use of this code, with or without modification, is NOT permitted.

  function formCheckerRadio(field_name, field_input, field_form) {
    var fields = document[field_form].elements[field_input];
    for (var i=0; i < fields.length; i++) {
      if (fields[i].checked) {
        return true;
      }
    }
    alert(field_name + ' is required!');
    return false;
  }
   
  function formCheckerCheckbox(field_name, field_input, field_form) {
    var checkboxes = document.getElementsByName(field_input);
    for (var i = 0; i < checkboxes.length; i++) {
      if (checkboxes[i].checked) {
        return true;
      }
    }
    alert(field_name + ' is required!');
    return false;
  }
   
  function formChecker(field_name, field_id, set_required, set_email, set_numeric, set_numeric_min, set_numeric_max, set_length_min, set_length_max) {
    var myItem = document.getElementById(field_id).value;
    var myItemLen = myItem.length;
     
    if(myItem == '' && set_required == 1) {
      alert(field_name + ' is required!');
      document.getElementById(field_id).focus();
      return false;
    }
     
    if(myItem != '' && set_email == 1) {
      var myItemCheck = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i;
      if (myItem.search(myItemCheck) == -1) {
        alert(field_name + ' is not a valid email address!');
        document.getElementById(field_id).focus();
        return false;
      }
    }
     
    if(myItem != '' && set_numeric == 1) {
      var myItemChar = myItem.search('[^0-9]');
       
      if (myItem.length > 0 && myItemChar >= 0) {
        alert(field_name + ' must be a number!');
        document.getElementById(field_id).focus();
        return false;
         
      }
       
      if(myItem < set_numeric_min && set_numeric_min != 0) {
        alert(field_name + ' must be at least: ' + set_numeric_min);
        document.getElementById(field_id).focus();
        return false;
      }
       
      if(myItem > set_numeric_max && set_numeric_max != 0) {
        alert(field_name + ' must be at most: ' + set_numeric_max);
        document.getElementById(field_id).focus();
        return false;
      }
    }
     
    if(myItemLen < set_length_min && set_length_min != 0) {
      alert(field_name + ' must be at least ' + set_length_min + ' characters long!\n' + 'Current length: ' + myItemLen);
      document.getElementById(field_id).focus();
      return false;
    }
     
    if(myItemLen > set_length_max && set_length_max != 0) {
      alert(field_name + ' must be at most ' + set_length_max + ' characters long!\n' + 'Current length: ' + myItemLen);
      document.getElementById(field_id).focus();
      return false;
    }
    return true;
  }
