/*

DEPENDENCIES:
divs.js


*/

var can_validate_field = true;


function submit_gb_form() {
  if (validate_gb_form()) {
    document.getElementById('cnc_gb_form').submit();
  }
}


function validate_gb_form() {
  if (get_radio_value(document.cnc_gb_form.elements['cnc_gb_subscribe']) == 0) {
    document.getElementById('cnc_gb_email').style.backgroundColor = "#FFFFFF";
    document.getElementById('cnc_gb_email').style.color = "black";
    set_div_innerhtml('cnc_gb_email_errdiv', "&nbsp;");
  }
  if ( !validate_empty('cnc_gb_name', 'Please fill in your name. (required)', 'cnc_gb_name_errdiv') ) {
    return false;
  }
  if ( !is_field_empty('cnc_gb_email') || get_radio_value(document.cnc_gb_form.elements['cnc_gb_subscribe']) == 1 ) {
    //alert("not empty or no letter " + document.getElementById('cnc_gb_subscribe').value);
    if ( !validate_email('cnc_gb_email', 'Please enter a valid email.', 'cnc_gb_email_errdiv') ) {
      return false;
    }
  }
  if ( !validate_empty('cnc_gb_entry', 'Please fill in an entry. (required)', 'cnc_gb_entry_errdiv') ) {
    return false;
  }
  return true;
}


function validate_empty(elem_id, error_msg, error_div_id){
  var obj = document.getElementById(elem_id);
  var obj_val = trim(obj.value);
  if ( obj_val.length == 0 ) {
    setTimeout("document.getElementById('" + elem_id + "').focus();", 50);
    setTimeout("document.getElementById('" + elem_id + "').select();", 52);
    set_div_innerhtml(error_div_id, error_msg);
    obj.style.backgroundColor = "#BA0404";
    obj.style.color = "white";
    return false;
  } else {
    obj.style.backgroundColor = "#FFFFFF";
    obj.style.color = "black";
    set_div_innerhtml(error_div_id, "&nbsp;");
    return true;
  }
}


function validate_email(elem_id, error_msg, error_div_id){
  var obj = document.getElementById(elem_id);
  var obj_val = trim(obj.value);
  var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
  if ( obj_val.match(emailExp) ) {
    obj.style.backgroundColor = "#FFFFFF";
    obj.style.color = "black";
    set_div_innerhtml(error_div_id, "&nbsp;");
    return true;
  }else{
    setTimeout("document.getElementById('" + elem_id + "').focus();", 50);
    setTimeout("document.getElementById('" + elem_id + "').select();", 52);
    set_div_innerhtml(error_div_id, error_msg);
    obj.style.backgroundColor = "#BA0404";
    obj.style.color = "white";
    return false;
  }
}


function is_field_empty(elem_id) {
  var obj = document.getElementById(elem_id);
  var obj_val = trim(obj.value);
  if ( obj_val.length == 0 ) {
    return true;
  } else {
    return false;
  }
}


function get_radio_value(obj) {
  if (!obj)
    return null;
  if (obj.length == 'undefined') {
    if (obj.checked)
      return obj.value;
    else
      return null;
  }
  for (var i=0; i < obj.length; i++) {
    if (obj[i].checked)
      return obj[i].value;
  }
  return null;
}

function trim(str) {
  return str.replace(/^\s+|\s+$/g,"");
}

function trim_L(str) {
  return str.replace(/^\s+/,"");
}

function trim_R(str) {
  return str.replace(/\s+$/,"");
}

/*
function isNumeric(elem, error_msg, error_div_id){
  var numericExpression = /^[0-9]+$/;
  if(elem.value.match(numericExpression)){
    return true;
  }else{
    set_div_innerhtml(error_div_id, error_msg);
    elem.border = "solid 1px black";
    elem.focus();
    return false;
  }
}

function isAlphabet(elem, error_msg, error_div_id){
  var alphaExp = /^[a-zA-Z]+$/;
  if(elem.value.match(alphaExp)){
    return true;
  }else{
    set_div_innerhtml(error_div_id, error_msg);
    elem.border = "solid 1px black";
    elem.focus();
    return false;
  }
}

function isAlphanumeric(elem, error_msg, error_div_id){
  var alphaExp = /^[0-9a-zA-Z]+$/;
  if(elem.value.match(alphaExp)){
    return true;
  }else{
    set_div_innerhtml(error_div_id, error_msg);
    elem.border = "solid 1px black";
    elem.focus();
    return false;
  }
}

function lengthRestriction(elem, min, max){
  var uInput = elem.value;
  if(uInput.length >= min && uInput.length <= max){
    return true;
  }else{
    alert("Please enter between " +min+ " and " +max+ " characters");
    elem.focus();
    return false;
  }
}

function madeSelection(elem, error_msg, error_div_id){
  if(elem.value == "Please Choose"){
    set_div_innerhtml(error_div_id, error_msg);
    elem.border = "solid 1px black";
    elem.focus();
    return false;
  }else{
    return true;
  }
}


*/
