// Enviar formulario con enter
function SubmitEnter(oEvento, oFormulario){
     var iAscii;

     if (oEvento.keyCode)
         iAscii = oEvento.keyCode;
     else if (oEvento.which)
         iAscii = oEvento.which;
     else
         return false;

     if (iAscii == 13) oFormulario.submit();

     return true;
}

// Función enlace
function ir_a(pagina_){
  document.location = pagina_;
}

// Función ir al principio de página
function ir_arriba(scroll){
if(scroll=='si'){
con_scroll('sobe');
}
else{
window.scrollTo(0,0);
}
}

// Función que mueve la página de forma suave
function con_scroll($sobe_ou_desce) {
	if($sobe_ou_desce=='sobe') {
		while(document.body.scrollTop>1) {
			window.scrollTo(0,document.body.scrollTop - 3);
		}
	}
	else {
		while(document.body.scrollTop<document.body.scrollHeight - document.body.clientHeight) {
			window.scrollTo(0,document.body.scrollTop + 3);
		}
	}
}

//Comprobar formulario
function checkrequired(formulario) {
  //if (document.images) {
     for (i=0;i<formulario.length;i++) {
         var tempobj=formulario.elements[i]; 
         var valor = tempobj.value;		
         var tipo = tempobj.id.substring(0,3); 
         var nombre_campo = tempobj.id.substring(4,30).toUpperCase(); 
         if (tempobj.id.length > 0) {  
            if (((tempobj.type=="text")||(tempobj.type=="textarea")||(tempobj.type=="password")||(tempobj.type=="file"))&&(valor.length==0)&&(nombre_campo.length >0)){
               alert("El campo "+nombre_campo+" es obligatorio.");	 
	           //tempobj.style.background = "#CCCCCC";  //permitir cambiar el color de fondo del campo
               tempobj.focus();
			   return false;
            }  
			if ((tipo.length > 0)&&(valor.length > 0)) {
 		       switch (tipo){
		          case "num": 
		               if (isNaN(valor)) {
				          alert("El campo "+nombre_campo+" debe ser numérico"); 
                          tempobj.select();
			              return false;						  						  
				       }
                       break;					
		          case "dts": 
			           if (!validar_fecha(tempobj.name, formulario)) {
                          tempobj.select();
			              return false;						  
				       }
                       break;
			      case "@@@": 
			           var inicio = valor.indexOf("@"); 
					   var fin = valor.lastIndexOf("@");
                       if ((inicio != fin) || ((inicio == -1) && (fin == -1)) || ((inicio == 0) && (fin == 0)) || ((inicio == valor.length-1) && (fin == valor.length-1))){
					      alert("El campo "+nombre_campo+" no contiene un formato válido de correo electrónico.");
                          tempobj.select();
			              return false;						  
                       }
			           break; 
				  case "hhh": 
                       var horas=valor.split(":")[0];
                       var minutos=valor.split(":")[1];
                       var segundos=valor.split(":")[2];
                       if (valor.indexOf(":")==-1) {
                          alert("La hora indicada no tiene el formato correcto: hh:mm o hh:mm:ss");
                          tempobj.select();						  
                     	  return false;
                       }					   
					   if ((horas > "23")||(horas < "0")) {
					      alert("La parte horaria de la hora es incorrecta.\nLas parte horaria va desde 00 a 23.");
                          tempobj.select();
                          return false;						  
					   }
					   if ((minutos > "59")||(minutos < "0")) {
					      alert("Los minutos de la hora son incorrectos.");
                          tempobj.select();
                          return false;						  
					   }
					   if ((segundos > "59")||(segundos < "0")) {
					      alert("La segundos de la hora son incorrectos.");
                          tempobj.select();
                          return false;						  
					   }
				       break;
		          case "txt": break;
		          case "bit": break; 
		          case "ids": break; 
		       } 
            }  
         } 
	 } 
  //} //fin document.images
  formulario.submit();  
} 

// Contar caracteres
function textCounter(field, countfield, maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else 
countfield.value = maxlimit - field.value.length;
}

