function ImprimeFecha()
{
	var months=new Array(13);
	months[1]="Enero";
	months[2]="Febrero";
	months[3]="Marzo";
	months[4]="Abril";
	months[5]="Mayo";
	months[6]="Junio";
	months[7]="Julio";
	months[8]="Agosto";
	months[9]="Septiembre";
	months[10]="Octubre";
	months[11]="Noviembre";
	months[12]="Diciembre";
	var time=new Date();
	var lmonth=months[time.getMonth() + 1];
	var date=time.getDate();
	var year=time.getYear();
	if (year < 2000)
	year = year + 1900;	
	document.write("Ecuador, " + lmonth + " " + date + " del " + year + "&nbsp;");
}
function select(field) {
  field.select();
  field.focus();
}

function relocation(path)
{
location.href=path;
}

function windows(page) 
{
window.open(page, 'Winname', 'width=525,height=500,scrollbars=1,top=10');
}


function solofun_windows(page) 
{
 w=screen.width-10;
 h=screen.height-10;
//alert(w);
//alert(h);
window.open(page, "Winname", "scrollbars=1,top=10,left=10,width="+w+",height="+h);
}

function windows2(page)
{
window.open(page, 'Winname', 'width=800,scrollbars=1,height=500,resizable,top=10');
}

function AbrirVentana(msg,fecha,nombre)
{
var pagina;
  pagina='trn_observacion.asp?msg='+msg+'&fecha='+fecha +'&nombre='+nombre;
  window.open(pagina,'titulo','width=200,height=100,top=350,left=500'); 
}

function AbrirDialogo(p1)
{
 var pagina='trn_busquedaAlumno.asp?Alumno='+p1;
//alert(pagina)
 showModalDialog(pagina,window,'status:false;dialogwidth:32em;dialogheight:15em');
}

function TraerMatricula(valor1,valor2)
{
 document.frmIngreso.ATxtMatricula.value=valor1;
 document.frmIngreso.ATxtCodigo.value=valor2;
}


 function submitir()
 {
  document.frmIngreso.opc.value="C";
  document.frmIngreso.action="trn_Transaccion.asp";
  document.frmIngreso.submit();
 }

 function submitir2()
 {
  document.frmIngreso.opc.value="C";
  document.frmIngreso.action="trn_Pregunta.asp";
  document.frmIngreso.submit();
 }

 function submitir3()
 {
  document.frmIngreso.opc.value="C";
  document.frmIngreso.action="trn_Categorias.asp";
  document.frmIngreso.submit();
 }
  function submitir4()
 {
  document.frmIngreso.opc.value="T";
  document.frmIngreso.action="trn_SubCategorias.asp";
  document.frmIngreso.submit();
 }
   function submitir5()
 {
  document.frmIngreso.opc.value="R";
  document.frmIngreso.action="trn_SubCategorias.asp";
  document.frmIngreso.submit();
 }
 
   function submitpage(page,param)
 {
  document.frmIngreso.opc.value=param;
  document.frmIngreso.action=page;
  document.frmIngreso.submit();
 }
 
function Submit_Form(forma)
{   
//alert('tito');<input type="hidden" name="opc" value="C">
    if (valida_campos(forma)) {
	forma.submit();	
	}
}


function valida_campos(form){
  var valido;
  var no_campo;
  var tp_camp;
  
  valido=true;
  for (var e = 0; e < form.elements.length; e++) { // se recorre todos los campos que existan en el formulario
	  tipo_campo = form.elements[e].name;		   // obtiene el nombre del control.
	  tp_camp = tipo_campo.substring(0,1);         // obtiene el primer caracter del nombre del control.
	  //tp_camp=tp_camp.toUpperCase();
	  //alert(tipo_campo + tp_camp + form.elements[e].disabled);
	  if (form.elements[e].disabled==false) { // valida solo los controles que no estan desabilitados
	  switch (tp_camp) {
				 // validacion alfabetica o alfanumerica
				 case 'A' : if (form.elements[e].value.length==0) {
							  valido=false;
						   }  break;
				 // validacion alfanumerica
				 case 'X' : if (form.elements[e].value.length==0) {
							  valido=false;
						   }  break;						   
				 // validacion numerica
				 case 'N' : if (form.elements[e].value.length==0 || isNaN(form.elements[e].value) || parseFloat(form.elements[e].value) < 0) {
							  valido=false;
						   }  break;
				 // validacion numerica para montos
				 case 'M':  if (form.elements[e].value.length==0 || parseFloat(form.elements[e].value) < 0) {					   						   
							  valido=false;
						   }  break;
	   } // End switch
	   } //end if
	   if (valido==false) {
		  alert("Este Campo es requerido, favor ingrese un valor.");
		  form.elements[e].select();
		  form.elements[e].focus();
		  break;  // break del for
	   }
   }// End for

   return valido;
}// End Function

//----------------------------------------------------------------------------------------------------------------------------------
// Autor:     Mario Velez P.
// Fecha :    28/03/2003
// Parametros: campo --> Es el nombre del control que se desea  bloquear su entrada (su nombre debe empezar con: 'a','n' o 'm')
// Objetivo:  Bloque entrada de datos a solo numeros, solo letras(incluido espacio) o montos (numeros y el punto decimal)
//            dependiendo si el nombre del campo que recibe como parametro empieza con el caracter ('a','m' o'n')
//            Alfabetico, Montos, Numerico. Además permite que la tecla Enter se comporte como la tecla TAB.
//----------------------------------------------------------------------------------------------------------------------------------

function Lock_Field(campo) {
  //var isIE = document.all?true:false;
  var _ret = true;
  tipo_campo = campo.name;		   		// obtiene el nombre del control.
  tp_camp = tipo_campo.substring(0,1);  // obtiene el primer caracter del nombre del control.
  tp_camp = tp_camp.toUpperCase();
//  alert(window.event.keyCode)
  // si se pulso ENTER, pasa el focus al siguiente campo (control) 
  // y deja formateado a miles si se trata de un campo de montos
   if ( window.event.keyCode == 13) {  
	   if ( tp_camp == 'M' ) {
		   //campo.value = asMoney(campo.value);
	   }
	   campo = tabOnEnter(campo, event);
   }
   //if ( tp_camp == 'M' ) {
       //alert(campo.value)
	//   campo.value = asMoney(campo.value);
  //} 
  if (campo.disabled==false) {
  switch (tp_camp) {
		 // validacion numerica
		 case 'N' : if ((window.event.keyCode < 48 || window.event.keyCode > 57) && (window.event.keyCode < 96 || window.event.keyCode > 105)) {   //no setrata de un numero
					   window.event.keyCode = 0;
					  _ret = false;
					} break;
		 case 'T' : if (window.event.keyCode < 48 || window.event.keyCode > 57) {   //no setrata de un numero
					   window.event.keyCode = 0;
					  _ret = false;
					} break;
		 // validacion de campos fecha en formato AA/MM
		 case 'F' : if (window.event.keyCode < 48 || window.event.keyCode > 57) {   //no setrata de un numero
					   window.event.keyCode = 0;
					  _ret = false;
					} break;															
		 // validacion de montos (con el punto decimal)
		 case 'M' : if (window.event.keyCode < 46 || window.event.keyCode == 47  || window.event.keyCode > 57 ) {   //no setrata de un numero o del punto ecimal
					   window.event.keyCode = 0;
					  _ret = false;
					} break;
		 // validacion de alfabéticos y la barra espaciadora
		 case 'A' : 
//		 alert(window.event.keyCode);
		 if ((window.event.keyCode < 32 || window.event.keyCode > 32 ) && (window.event.keyCode < 65 || window.event.keyCode > 90 ) && (window.event.keyCode < 97 || window.event.keyCode > 122 ) && (window.event.keyCode!= 241) && (window.event.keyCode!=209)  ) {
					   window.event.keyCode = 0;
					  _ret = false;
					} break;
		 // validacion de montos (con el punto decimal)
		/* case 'U' : if (window.event.keyCode < 46 || window.event.keyCode == 47  || window.event.keyCode > 57 ) {   //no setrata de un numero o del punto ecimal
					   window.event.keyCode = 0;
					  _ret = false;
					} break; */
   }// End switch
   //------------------------
   if (tp_camp == 'T') { // numeros de tarjetas separadas de 4 en 4 ejem: 1223-2323-4444-5567
	   if ((campo.value.length==4) || (campo.value.length==9) || (campo.value.length==14) || (campo.value.length==19) || (campo.value.length==24)) {
		  campo.value=campo.value + '-';
	   }   
   }
   //------------------------
   if (tp_camp == 'F') { // fecha en formato AA/MM ejem: 03/12
	   if ((campo.value.length==2) || (campo.value.length==5)) {
		  campo.value=campo.value + '/';         //               99/99/9999
	   } 
   }
   //------------------------   
   /*if (tp_camp == 'U') { // numeros de tarjetas separadas de 4 en 4 ejem: 1223-2323-4444-5567
	   if ((campo.value.length==3) || (campo.value.length==7) || (campo.value.length==11)) {
		  campo.value=campo.value + ',';
	   }   
   }*/
   //------------------------   
   }
   return (_ret); 
}


//========================================================================================================
// FORMATEAR CAMPOS DE TEXTO COMO MONTOS
//========================================================================================================
function scrubData(inputValue,signodec) {
    // esta funcion borra caracteres que no son digitos
    // o puntos. Si un caracter que no es "$", "," o espacio
    // retorna un error
    var returnValue = "";
    for (var i=0; i < inputValue.length; i++) {
        var digit = inputValue.charAt(i);
        if (parseFloat(digit) || digit == "." || digit == "0") {
            // caracter es un digito o un punto, aceptado
            returnValue += digit;
        } else {
            if (digit != " " && digit != "$" && digit != ",") {
                // caracteres no aceptados
                alert("Favor Ingrese un numero diferente de cero");
                returnValue = "0"+signodec+"00";
                break;
            }
        }
    }  // end for()
    return returnValue;
} // fin de scrubData()

function asMoney(inputValue,signodec) {
	var strnum = new String(3/2);
    var signodec = strnum.charAt(1);

    var scrubValue = scrubData(inputValue,signodec);
    if (scrubValue == "0"+signodec+"00") {
        return scrubValue;
    }
    //variables temporales
    var returnString ="";
    var tempString = "";
    var tempNumber = 0;
    tempNumber = Math.round(scrubValue * 100);
    if (tempNumber.toString() == "NaN") {
        return "0"+signodec+"00";
    }

    // Manipula el numero 
    if (tempNumber < 10) {
        tempString = "00"+tempNumber;
    } else if (tempNumber < 100) {
        tempString = "0"+tempNumber;
    } else {
        tempString = "" + tempNumber;
    }

    if (tempString.length > 12) {
        alert ("No se pueden procesar numeros mayores de mil millones\nFavor corrija");
        return scrubValue;
    }

    returnString = "."+tempString.substring((tempString.length-2),tempString.length);
    for (var i=tempString.length -2; i > 3; i -= 3) {
        returnString = "," + tempString.substring(i-3,i) + returnString;
    } // end for()
    returnString = tempString.substring(0,i) + returnString;

    //retorna el nuevo string formateado
    return returnString;

} // fin de asMoney()

// --------------------------------------------------------------------------------------------------------
// ESTA FUNCION PERMITE UTILIZAR AL <ENTER> COMO <TAB> DENTRO DE UN FORMULARIO
// NAVEGA POR LOS OBJETOS DEL FORMULARIO
// --------------------------------------------------------------------------------------------------------

function tabOnEnter(field, evt)
{
    var keyCode = document.layers ? evt.which : document.all ? evt.keyCode : evt.keyCode;
	var nextfield;
    if (keyCode != 13)
        return true;
    else {
        nextfield = getNextElement(field);
		while (nextfield.disabled == true || nextfield.type == 'hidden') {
			field = nextfield;
        	nextfield = getNextElement(field);
		}
		nextfield.focus();
        return false;
    }
}

// --------------------------------------------------------------------------------------------------------
//  OBTIENE EL SIGUIENTE ELEMENTO EN UN FORMULARIO
// --------------------------------------------------------------------------------------------------------
function getNextElement(field)
{
    var form = field.form;
    for (var e = 0; e < form.elements.length; e++)
        if (field == form.elements[e])
            break;
        return form.elements[++e % form.elements.length];
}

