//REVISADO ETV(paso de variables lang para alerts y confirmar)

// valida si el caracter que se le pasa es uno de los de la lista

/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> character    es una letra de un string se la pasa la funcion valid_campo.
//NOTA : a esta funcion no la llamamos directamente desde el html
/*------------------------------------------------------------------------------------------------------------*/



function validateCharacter(character)
{
    if ((character >= 'a' && character <= 'z' && character != 'ñ')
            || ( character >='A' && character <='Z' && character !='Ñ')
            || ( character >= '0' && character <= '9')
            || ( character =='-') || ( character == '.') || ( character == ',')
            || ( character == ' ') || ( character == '_') || ( character == '\@')
            || ( character == 'á') || ( character == 'é') || ( character == '!')
            || ( character == 'Á') || ( character == 'É') || ( character == '¡')
            || ( character == 'í') || ( character == 'ó') || ( character == '¿')
            || ( character == 'Í') || ( character == 'Ó') || ( character == '?')
            || ( character == 'ú') || ( character == 'Ú') || ( character == '/')
            )
    {
         return true;
    }
    else
    {
         return false;
    }
} //fin de funcion
/*------------------------------------------------------------------------------------------------------------*/



//funcion que voltea un string y si es un caracter ñ lo sustituimos por un comodin
// si es un caracter no recojido en la funcion anterior lo quitamos.

/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> campo    nombre del objeto del formulario a validar  ejemplo: document.registrate.name
//---> texto1 "caracter " error que saldra del archivo del languaje oportuno
//---> texto2 "no válido" error que saldra del archivo del languaje oportuno
/*------------------------------------------------------------------------------------------------------------*/


function valid_campo(campo,texto1,texto2)
{
    var validString=campo.value;
    var isCharValid = true;
    var i,invalidChar;
    var comodin="7exnegj981";
    var er=0;
    var co=0;
    for (i=0; i<validString.length; i++)
    {
       if (validateCharacter(validString.charAt(i)) == false)
       {
           if((validString.charAt(i)!='ñ')&&(validString.charAt(i)!='Ñ'))
           {
             er++;
             co=i;
           }
           isCharValid = false;
           invalidChar = validString.charAt(i);
           if ((validString.charAt(i)=='ñ')||(validString.charAt(i)=='Ñ'))
           {
              validString = validString.substr(0, i) + comodin + validString.substr(i+1, validString.length-1);
              er--;
           }
           else
           {
              validString = validString.substr(0, i) + validString.substr(i+1, validString.length-1);
           }
           i = validString.length;
       }

    }

    if (er>0)
    {
          alert(texto1+texto2);
          campo.focus();
          return false;
    }
    else
    {
    	return true;
    }


} // fin de funcion
//-------------------------------------------------------------------------------------------->

/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> character    es una letra de un string se la pasa la funcion valid_campo_restringido_minus_excep.
//NOTA : a esta funcion no la llamamos directamente desde el html
/*------------------------------------------------------------------------------------------------------------*/

//solo validos de la a a la z y NO ñ
// PERMITE SOLO MINUSCULAS y - _
function validateCharacter_restringido_minus_excep(character)
{
    if ((character >= 'a' && character <= 'z' && character != 'ñ')||(character == '-')||(character == '_') )
    {
         return true;
    }
    else
    {
         return false;
    }
} //fin de funcion
/*------------------------------------------------------------------------------------------------------------*/

//funcion que voltea un string y solo permite caracteres encontrados por la funcion anterior
/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> campo    nombre del objeto del formulario a validar  ejemplo: document.registrate.name
//---> texto1 "Caracter " error que saldra del archivo del languaje oportuno
//---> texto2 "no válido.\nRecuerde,solo minúsculas ( menos la ñ ) y '-' o '_' " error que saldra del archivo del languaje oportuno
/*------------------------------------------------------------------------------------------------------------*/
function valid_campo_restringido_minus_excep(campo,texto1,texto2)
{
    var isCharValid = true;
    var i,invalidChar;
    var validString=campo.value;
    var er=0;
    for (i=0; i<validString.length; i++)
    {
       if (validateCharacter_restringido_minus_excep(validString.charAt(i)) == false)
       {
           er++;
           isCharValid = false;
           invalidChar = validString.charAt(i);
           validString = validString.substr(0, i) + validString.substr(i+1, validString.length-1);
           i = validString.length;
       }

    }
    if (er>0)
    {
          alert(texto1+texto2);
          campo.focus();
          return false;
    }
    else
    {
    	return true
    }

} // fin de funcion
//-------------------------------------------------------------------------------------------->



//solo validos de la a a la z y NO ñ
// PERMITE SOLO MINUSCULAS y - _ Y Números
/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> character    es una letra de un string se la pasa la funcion valid_campo_restringido_minus_excep_con_num.
//NOTA : a esta funcion no la llamamos directamente desde el html
/*------------------------------------------------------------------------------------------------------------*/

function validateCharacter_restringido_minus_excep_con_num(character)
{
    if ((character >= 'a' && character <= 'z' && character != 'ñ')||(character == '-')||(character == '_')||(character >= '0' && character <= '9') )
    {
         return true;
    }
    else
    {
         return false;
    }
} //fin de funcion
/*------------------------------------------------------------------------------------------------------------*/



//funcion que voltea un string y solo permite caracteres encontrados por la funcion anterior
/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> campo    nombre del objeto del formulario a validar  ejemplo: document.registrate.name
//---> texto1 "Caracter " error que saldra del archivo del languaje oportuno
//---> texto2 " no válido.\nRecuerde,solo minúsculas ( menos la ñ ) y números y '-' o '_' " error que saldra del archivo del languaje oportuno
/*------------------------------------------------------------------------------------------------------------*/
function valid_campo_restringido_minus_excep_con_num(campo,texto1,texto2)
{
    var isCharValid = true;
    var i,invalidChar;
    var validString=campo.value;
    var er=0;
    for (i=0; i<validString.length; i++)
    {
       if (validateCharacter_restringido_minus_excep_con_num(validString.charAt(i)) == false)
       {
           er++;
           isCharValid = false;
           invalidChar = validString.charAt(i);
           validString = validString.substr(0, i) + validString.substr(i+1, validString.length-1);
           i = validString.length;
       }

    }
    if (er>0)
    {
          alert(texto1+texto2);
          campo.focus();
          return false;
    }
    else
    {
    	return true
    }




} // fin de funcion
//-------------------------------------------------------------------------------------------->



/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> character    es una letra de un string se la pasa la funcion valid_campo_text_area_limita.
//NOTA : a esta funcion no la llamamos directamente desde el html
/*------------------------------------------------------------------------------------------------------------*/
function validateCharacter_text_area(character)
{
    if ((character >= 'a' && character <= 'z' )
            || ( character >='A' && character <='Z')
            || ( character >='0' && character <='9')
            || ( character =='-') || ( character == '.')
            || ( character == ' ') || ( character == '_')
            || ( character == 'á') || ( character == 'é')
            || ( character == 'Á') || ( character == 'É')
            || ( character == 'í') || ( character == 'ó')
            || ( character == 'Í') || ( character == 'Ó')
            || ( character == 'ú') || ( character == 'Ú')
            || ( character == 'ñ') || ( character == 'Ñ')
            || ( character == '\n')
            || ( character == '\r')
            || ( character == '!')
            || ( character == '¡')
            || ( character == '?')
            || ( character == '¿')
            || ( character == '(')
            || ( character == ')')
            || ( character == '.')
            || ( character == ':')
            || ( character == ',')
            || ( character == 'º')
            || ( character == '´')
            || ( character == 'ª')
            || ( character == '%')

       )


    {
         return true;
    }
    else
    {
         return false;
    }
} // fin de funcion
/*------------------------------------------------------------------------------------------------------------*/


//Funcion que nos permite los caracteres de la anterior y que limita a peticion de la llamada mediante variable num_max_carac
/*------------------------------------------------------------------------------------------------------------*/
//VARIABLES DE ENTRADA:
//---> campo    nombre del objeto del formulario a validar  ejemplo: document.registrate.name
//---> num_max_carac    número máximo de caracteres que vamos a permitir en el texarea.
//---> textoa1 "Caracter " error que saldra del archivo del languaje oportuno
//---> textoa2 " no válido." error que saldra del archivo del languaje oportuno
//---> textob "Demasiado largo.\n Sea mas breve en este campo." error que saldra del archivo del languaje oportuno
/*------------------------------------------------------------------------------------------------------------*/
function valid_campo_text_area_limita(campo,num_max_carac,textoa1,textoa2,textob)
{

    var validString=campo.value;
    var isCharValid = true;
    var i,invalidChar;
    var limitacion=num_max_carac;
    if(validString.length<limitacion)
    {
       for (i=0; i<validString.length; i++)
       {
         if (validateCharacter_text_area(validString.charAt(i)) == false)
         {
            alert(textoa1+ validString.charAt(i)+textoa2);
            isCharValid = false;
            invalidChar = validString.charAt(i);
            validString = validString.substr(0, i) + validString.substr(i+1, validString.length-1);
            i = validString.length;
            return false;
         }

       }
       return true;
    }
    else
    {
        alert(textob);
    	return false;
    }
 //return validString;
}





