// scripts que serão aplicados aos campos configurados 
// com o parâmetro script
var CHECK_SCRIPT = {
  
  // Verifica se o elemento 'id' possui valor ''.
  blank : function(id, label) { if ($(id) && jQuery.trim($(id).val()) == '') return 'Por favor, preencha o campo "' + label + '".'; },
  
  // Verifica se o elemento 'id' possui valor maior que 'len' em tamanho.
  len : function (id, label, len) { if ($(id) && jQuery.trim($(id).val()).length > (len * 1)) return 'Desculpe, mas o campo "' + label + '" não pode ultrapassar ' + len + ' caracteres.'; },
 
  // Verifica se o elemento 'id' possui os characteres 'in'
  chars : function (id, label, chars) { var reg = new RegExp('[' + chars + ']', "gi"); if ($(id)) { var result = jQuery.trim($(id).val()).match(reg); if (result && result[0]) return 'Desculpe, mas o campo "' + label + '" não pode conter os seguintes caracteres: ' + chars; }; },

  // Verifica se o elemento 'id' possui os caracteres para compor um email xxx@xxx.xxx
  email : function (id, label) { var regEx = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i; if ($(id).val().search(regEx) == -1) return "Por favor, entre com um email válido."; },

  // Verifica se o elemento 'id' é igual ao elemento 'id2comp'
  isequal : function (id, label, id2comp) {  if ($(id).val() != $('#' + id2comp).val()) return "Desculpe, mas o campo '" + label + "' não confere."; }

};
_PREVIOUS_FIELD_OBJ = '';
function displayBoxMsg(idField){
  var boxMsg = document.getElementById('erroAssinatura');
  if (boxMsg){
    boxMsg.style.display="block";
  }
  
  var newIdField = idField.substr(1,idField.length);
  var fieldObj = document.getElementById(newIdField);
  
  if (fieldObj){
    if (_PREVIOUS_FIELD_OBJ != fieldObj){
      if (_PREVIOUS_FIELD_OBJ != '')
        _PREVIOUS_FIELD_OBJ.style.border = "1px solid #D0D1D3";
          
      _PREVIOUS_FIELD_OBJ = fieldObj;
    }
    fieldObj.style.border = "3px solid #EB7808";
  }
}


function checkSubmit()
{
  for (var i = 0; i < fields.length; i++)
  {
    if (fields[i].script)
    {
      for (var j = 0; j < fields[i].script.length; j++)
      {
        var msg = CHECK_SCRIPT[ fields[i].script[j].id ](fields[i].id, fields[i].label, fields[i].script[j].value);
        if (msg) 
        { 
          if (fields[i].script[j].msg && fields[i].script[j].msg != '')
          {
            $(fields[i].id).focus();
            //alert(msg);
            displayBoxMsg(fields[i].id);
            return false;
          }
          else
          {
          	if ($(fields[i].id).disabled != true)
          	{
              $(fields[i].id).focus();
              displayBoxMsg(fields[i].id);
              //alert(msg);
              return false;
            }
          };
        };
      };
    };
  }
  return true;
}

$(document).ready(function(){
  $('#formitem').submit(function(e){
    return checkSubmit();    
  });
});

