if (history.forward(1))
	history.forward=0;

//deshabilita el boton derecho

var message="Función deshabilitada";

///////////////////////////////////
function clickIE4(){
if (event.button==2){
//alert(message);
return false;
}
}

function clickNS4(e){
if (document.layers||document.getElementById&&!document.all){
if (e.which==2||e.which==3){
//alert(message);
return false;
}
}
}

if (document.layers){
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
document.onmousedown=clickIE4;
}

//document.oncontextmenu=new Function("alert(message);return false")
document.oncontextmenu=new Function("return false")





function muestracapa(id)
{
	document.getElementById(id).style.display='block'
}

function ocultacapa(id)
{
	document.getElementById(id).style.display='none'
}

function estadocapa(id)
{
	estadocap=document.getElementById(id).style.display;
	if(estadocap=="block") //se ve la capa
		return 1;
	if(estadocap=="none") //capa oculta
		return 0;
}


// revisa que los elementos del formulario no se encuentren en blanco
function enblancoval(numfor){
	 
    mensaje="";
    for (i=0; numfor.elements[i]; i++)
	{
		if (numfor.elements[i].id != "nb" && numfor.elements[i].id != "sb" && numfor.elements[i].id != "sct" )
        {
			if (numfor.elements[i].value=="" || cadena_incorrectaval(numfor.elements[i],"0") || cadena_incorrectaval(numfor.elements[i]," ") || cadena_incorrectaval(numfor.elements[i],"-"))
            	mensaje += "- " + numfor.elements[i].title + '\n';
		}
	}
	return mensaje;
}
// revisa que el elemento no tenga solamente algún caracter considerado como no válido (espacio en blanco, ceros, etc)
function cadena_incorrectaval (cad, car){
    var cadena = cad.value;
    for (j=0; cad.value.length > j && cadena.charAt(j) == car; j++);
    if (cad.value.length != j)
        return 0;
    else
        return 1;
}
// Revisa que el tipo de dato de los cuadros que deben ser numéricos sea correcto.
function tipoval (numfor){
    mensaje="";
    for (i=0; numfor.elements[i]; i++)
        if (numfor.elements[i].id == "n" || numfor.elements[i].id == "nt" || numfor.elements[i].id == "nb" )
            if (isNaN(numfor.elements[i].value))
                mensaje += "- " + numfor.elements[i].title + ": debe ser numerico" + '\n';
    return mensaje;
}
// Revisa que el tamaño de los elementos del formulario sea correcto
function tamanioval (numfor){
    mensaje="";
    for (i=0; numfor.elements[i]; i++)
        if (numfor.elements[i].id == "nt" || numfor.elements[i].id == "st" || numfor.elements[i].id == "sct")
            if (numfor.elements[i].value.length < numfor.elements[i].maxLength )
                mensaje += "- " +  numfor.elements[i].title + ": debe ser de " + numfor.elements[i].maxLength + '\n';
    return mensaje;
}

function validaform (numfor, mns1, vaction, vmethod, vtarget, vnumvar, vvalvar, eltipobj)
{
// revisa que no se encuentren vacios en los casos n, s, nt, st
	//alert("entre");
	mensaje= enblancoval (numfor);
	if (mensaje != "")
        alert ("No se puede llevar a cabo la operacion." + '\n' + "Faltan los siguientes datos: " +'\n\n' + mensaje);
	else
	{
// revisa el tipo de dato de los elementos, en los casos n, nt, nb

		mensaje = tipoval (numfor);
        if (mensaje != "")
            alert ("No se puede llevar a cabo la operacion." + '\n' + "Los siguientes datos son incorrectos: " + '\n\n' + mensaje);
        else
		{
// revisa el correcto tamaño de los elementos, en los casos nt, st
			mensaje = tamanioval (numfor);
			if (mensaje != "")
				alert ("No se puede llevar a cabo la operacion." + '\n' + "La longitud de: " + '\n\n' + mensaje);
			else
			{
					if (mns1)
						if (!confirm(mns1))
							return (1);					
					
					if (vaction)
						numfor.action = vaction;
					if (vtarget)
						numfor.target = vtarget;
					if (vmethod)
					{
						anterior = numfor.method;
						numfor.method = vmethod;
					}
					
					if(vnumvar)
					{	
						numfor.elements[vnumvar].value=vvalvar;
					}

					//si existe la capa cargando la posiciono y la pinto
					if(document.getElementById('esperamsj'))
					{	
						//posicion x del mensaje
						if(document.body.scrollTop )
						{
								val=event.clientY + document.body.scrollTop;
								val=document.body.scrollTop + 120;
								document.getElementById("esperamsj").style.top=val;			
						}	
						//posicion y del mensaje
						
						switch(screen.width)
						{
							case 800:
								avance_x=200;
							break;
							case 1024:
								avance_x=250;
							break;
							default:
								avance_x=200;
							break;							
						} //fin del sw
						val=document.body.scrollLeft+avance_x;
						document.getElementById("esperamsj").style.left=val;
						document.getElementById('esperamsj').style.display='block';
					}
					
					numfor.submit();
					
					if (vaction)
						numfor.action = "";
					if (vtarget)
						numfor.target = "_self";
					if (vmethod)
						numfor.method = anterior;	


					//desabilito el boton en caso de que se solicite
					//si solo indicaron el tipo de objeto significa que se desea dehabilitar algun elemento de etiqueta
					if(eltipobj )
						FDesactivaElementoval(numfor,eltipobj)
            }
		}
    }
}

//funcion que desactiva un elemento de la pagina condicionado a que no contenga etiqueta input
//parametros:
//	numfor:  numero del formulario
// tipo: tipo del objeto (debe tener etiqueta diferente a input>) que se desea encontrar, x ejemplo 'IMG'
// Requiere que el elemento tenga el siguiente atributo Deshabilitar="1" 
function FDesactivaElementoval(numfor,tipo)
{
	if(tipo=="Deshabilitar")
	{
		for (i=0; numfor.elements[i]; i++)
		{
        	if (numfor.elements[i].accept == "Deshabilitar" )
            	numfor.elements[i].disabled=true;
		}
		return;	
	}
	
	
	var elementos_tipo = document.getElementsByTagName(tipo);
	var len = elementos_tipo.length;
	for (var i=0; i<len; i++) 
	{
		//si el elemento tiene un atributo llamado "Deshabilitar"
		if (elementos_tipo[i].getAttribute("Deshabilitar")) 
		{
			elementos_tipo[i].disabled=true;
//			return; //comento esta linea para deshabilite todos los elementos del formulario que tengan el atributo  Deshabilitar
		}	
	}
} //fin de funcion


//funcion que abre la ventana hija
function FAbreVentanaHija(pagina)
{
	//abro el popup
	RefeVentana= window.open(pagina, "VentanaHija" , "scrollbars=no,width=435,height=210,Top=20,Left=100");	
	RefeVentana.focus();
}


