//funcion para reemplazar los espacios de ambos lados de la cadena
function Trim(txt)
{
  return txt.replace(/^\s*|\s*$/g,"" );
}

//funcion para la verificacion
function requeridos()
{
  for (var i=0; i<requeridos.arguments.length; i=i+2)
  {
    obj=requeridos.arguments[i];
    obj.value=Trim(obj.value);
    if(obj.value=="")
    {
       alert('Error : '+requeridos.arguments[i+1]+'\nplease input required data');
       obj.focus();
       obj.select();
       return false;
    }
  }
  return true;
}

function fil_requeridos()
{
  for (var i=0; i<fil_requeridos.arguments.length; i=i+3)
  {
    obj=fil_requeridos.arguments[i];
    obj2=fil_requeridos.arguments[i+1];
    var cadena=Trim(obj.value);
    var cadena2=Trim(obj2.value);
    if(cadena=="" && cadena2=="")
    {
       alert('Error : '+fil_requeridos.arguments[i+2]+'\nplease input required data');
       obj.focus();
       obj.select();
       return false;
    }
  }
  return true;
}

//funcion para la verificacion
function sel_requeridos()
{
  for (var i=0; i<sel_requeridos.arguments.length; i=i+2)
  {
    obj=sel_requeridos.arguments[i];
    obj.value=obj.options[obj.selectedIndex].value;
    if(obj.value=="")
    {
       alert('Error : '+sel_requeridos.arguments[i+1]+'\nplease input required data');
       obj.focus();
       return false;
    }
  }
  return true;
}

//funcion para la verificacion
function selm_requeridos()
{
  for (var i=0; i<selm_requeridos.arguments.length; i=i+2)
  {
    obj=selm_requeridos.arguments[i];
    if(document.getElementById(obj).selectedIndex==-1)
    {
       alert('Error : '+selm_requeridos.arguments[i+1]+'\npor favor, ingrese el dato requerido');
       document.getElementById(obj).focus();
       return false;
    }
  }
  return true;
}

//funcion para validar el email
function EsMail()
{
  for (var i=0; i<EsMail.arguments.length; i=i+2)
  {
    obj=EsMail.arguments[i];  
    var txtin=obj.value;
    re=/^[a-zA-Z0-9]+[a-zA-Z0-9_\.]*[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/;
    if(!re.test(txtin) && txtin!="")
    {
      alert ('Error: '+EsMail.arguments[i+1]+'\nplease, input a valid mail');
      obj.focus();
      obj.select();
      return false;
    }
  }            
  return true;      
}
function EsEMail(ema)
{
    var txtin=ema;
    re=/^[a-zA-Z0-9]+[a-zA-Z0-9_\.]*[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/;
    if(!re.test(txtin) && txtin!="")
    {
      alert ('Error: '+EsMail.arguments[i+1]+'\nplease, input a valid mail');
      
      return false;
    }
    return true;      
}

//funcion para la validacion de numeros
function EsNumerico()
{
  for (var i=0; i<EsNumerico.arguments.length; i=i+2)
  {
    obj=EsNumerico.arguments[i];  
    var txtin=obj.value;
    re=/^\d+$/;
    if(!re.test(txtin))
    {
      alert ('Error: '+EsNumerico.arguments[i+1]+'\nplease, input a number');
      obj.focus();
      obj.select();
      return false;
    }
  }            
  return true;    
}

//funcion para la validacion de numeros reales
function EsReal()
{
  for (var i=0; i<EsReal.arguments.length; i=i+2)
  {
    obj=EsReal.arguments[i];  
    var txtin=obj.value;
    re=/^((\d+\.\d+)|\d+)$/;
    if(!re.test(txtin))
    {
      alert ('Error: '+EsReal.arguments[i+1]+'\nplease, input a number');
      obj.focus();
      obj.select();
      return false;
    }
  }            
  return true;      
}

function check_date(tfrm,cyear,cmonth,cday)
{
  m=eval('document.'+tfrm+'.'+cmonth+'.options[document.'+tfrm+'.'+cmonth+'.selectedIndex].value')*1;        
  day=eval('document.'+tfrm+'.'+cday);
  sel_day=eval('document.'+tfrm+'.'+cday+'.options[document.'+tfrm+'.'+cday+'.selectedIndex].value')*1;              
  if((m==4 || m==6 || m==9 || m==11) && sel_day>=30)
  {
    day.options[29].selected=true;
  }
  else if(m==2) 
  {
    y=eval('document.'+tfrm+'.'+cyear+'.options[document.'+tfrm+'.'+cyear+'.selectedIndex].value')*1;        
    if (((y % 4 == 0) && ((y % 100 != 0) || (y % 400 == 0))) && sel_day>=29)         
    {
      day.options[28].selected=true;
    }
    else if(sel_day>=28)
    {
      day.options[27].selected=true;
    }
  }
}    
//funcion para validar solo alfanumericos
function esAlphaNum()
{
  for (var i=0; i<esAlphaNum.arguments.length; i=i+2)
  {
    obj=esAlphaNum.arguments[i];  
    var txtin=obj.value;
    re=/^\w+$/;
    if(!re.test(txtin) && txtin!="")
    {
      alert ('Error: '+esAlphaNum.arguments[i+1]+'\nplease, input only alphanumeric chars');
      obj.focus();
      obj.select();
      return false;
    }
  }            
  return true;      
}

function password(passwd, cpasswd)
{ 
  passwd.value=Trim(passwd.value);
  cpasswd.value=Trim(cpasswd.value);
  re=/^\w+$/;
  if(passwd.value.length<4 || !re.test(passwd.value))
  {
    alert ('Error: Password\nplease, input a password of 5 characters alphanumeric minimum');
    passwd.focus();
    passwd.select();
    return false;
  }
  if(passwd.value!=cpasswd.value)
  {
    alert ('Error: Confirm Password\nplease, the password are diferents');
    cpasswd.focus();
    cpasswd.select();
    return false;
  }  
  return true;
}
