
   var tab_off = "#e0e0e0";
   var tab_on = "silver";
   var event = "";

function detectarCaracteresInvalidos() {
	if (!event.shiftKey && !event.ctrlKey && !event.ctrlLeft && !event.altLeft && !event.altKey) {
		if(window.event && window.event.keyCode==219){
			window.event.keyCode = 0;
			return false;
		}
	}
}
document.onkeydown = detectarCaracteresInvalidos;

function AbrirMyBosch(){

}
function AbrirContacto(){

}

function AbrirAvisosEIntrucciones(){

}

function cadena_valida(s){
//***********************************************************************
//* DESCRIPCION: Verifica que la cadena mandada sea valida
//* CONDICIONES:
//* RETORNA: Boolean
//* CAMBIOS: ninguno.
//***********************************************************************
	var i;
	sw = 0;
    for (i = 0; i < s.length; i++){
        // Revisa que alguno de los caracteres al menos no sea un espacio
        var c = s.charAt(i);
        if (c != " ")
        	sw = 1
    }
    if (sw==0)
    	return false;
    else
    	return true;
}

function isInteger(s){
//***********************************************************************
//* DESCRIPCION: Verifica que un numero dado sea en realidad un valor numerico
//* y que no sea posterior a la fecha actual
//* CONDICIONES:
//* RETORNA: Boolean
//* CAMBIOS: ninguno.
//***********************************************************************
	var i;
	if (s.length == 0)
		return false;
    for (i = 0; i < s.length; i++){
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9")))
		return false;
    }
    // All characters are numbers.
    return true;
}

function Fijar_Fecha(url, campo){
//***********************************************************************
//* DESCRIPCION: funcion que valida si el campo esta habilitado para
//* mostrar el calendario
//* CONDICIONES: la url de destino y el campo a validar
//* RETORNA: abre una ventana con el calendario
//* CAMBIOS: ninguno.
//***********************************************************************
	if(campo.disabled)
		alert('Este campo no se puede modificar');
	else
		Abrir_Calendario(url);
}

function Abrir_Calendario(url){
//***********************************************************************
//* DESCRIPCION: funcion similar a la funcion que Fijar_Fecha, con la
//* diferencia que no se valida si el campo donde ira el valor
//* CONDICIONES: la url de destino
//* RETORNA: abre una ventana con el calendario
//* CAMBIOS: ninguno.
//***********************************************************************
	window.open(url, 'cal', 'status=1,width=225,height=210,left=270,top=180');
}

function isEmail(email) {
//***********************************************************************
//* DESCRIPCION: Valida que 'email' sea una dirección de correo valida
//* CONDICIONES:
//* RETORNA: true or false
//* CAMBIOS: ninguno.
//***********************************************************************

		// valid format "a@b.cd"
		invalidChars = " /;,:";
		if (email == "")
			return false;

		for (i=0; i< invalidChars.length; i++)
		{
			badChar = invalidChars.charAt(i)
			if (email.indexOf(badChar,0) > -1)
			{
				return false;
			}
		}

		atPos = email.indexOf("@",1)
		// there must be one "@" symbol
		if (atPos == -1)
			return false;

		// and only one "@" symbol
		if (email.indexOf("@", atPos+1) != -1)
			return false;

		// and at least one "." after the "@"
		periodPos = email.indexOf(".",atPos)
		if(periodPos == -1)
			return false;

		// and at least one character between "@" and "."
		if ( atPos +2 > periodPos)
			return false;

		if ( periodPos +3 > email.length)
			return false;

		return true;
}

function Abrir_Ventana(url, ancho, alto){
//***********************************************************************
//* DESCRIPCION: funcion que abre una ventana nueva
//* CONDICIONES: la url de destino, el ancho w y el alto h
//* RETORNA: abre una ventana nueva
//* CAMBIOS: ninguno.
//***********************************************************************

	var numero = Math.round((Math.random()*100));

	posL = (screen.width) ? (screen.width - ancho) / 2 : 0;
	posT = (screen.height) ? (screen.height - alto) / 2 : 0;

	a = window.open(url,numero,"height=" + alto + ",width="+ ancho + ",top=50,left=50,toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=1,resizable=1");
}

function Abrir_Ventana_Completa(url, ancho, alto){
//***********************************************************************
//* DESCRIPCION: funcion que abre una ventana nueva
//* CONDICIONES: la url de destino, el ancho w y el alto h
//* RETORNA: abre una ventana nueva
//* CAMBIOS: ninguno.
//***********************************************************************

	var numero = Math.round((Math.random()*100));

	posL = (screen.width) ? (screen.width - ancho) / 2 : 0;
	posT = (screen.height) ? (screen.height - alto) / 2 : 0;

	a = window.open(url,numero,"height=" + alto + ",width="+ ancho + ",top=0,left=0,toolbar=1,location=1,directories=1,status=1,menubar=1,scrollbars=1,resizable=1");
}

//ABRE VENTANA PARA BUSQUEDA DE REFERENCIA
function abrir_nueva(url) {
    link = window.open(url,"Link","toolbar=1,location=0,directories=0,status=1,menubar=1,scrollbars=1,resizable=1,width=450,height=300,left=250,top=50");
}
// funciones del banco de imagenes
function borrar_tabla (variable, tabla, numero, contador)
//***********************************************************************
//* DESCRIPCION: Elimina el contador de filas a partir de la fila numero
//* CONDICIONES:
//* RETORNA:
//* CAMBIOS: ninguno.
//***********************************************************************
{

	//SI EXISTE LA FILA A ELIMINAR
	if(eval("form1." + variable ) !=null && eval("form1." + variable + ".length > 0")) {
		//RECORE LAS FILAS
		for(lnContador=0;lnContador < eval("form1."+variable+".length");lnContador++) {
			//SI LA FILA ESTA CHEQUEADA PARA ELIMINAR
			if (eval("form1."+variable+"[lnContador].checked==true")) {
				for (intcontador=1; intcontador<=contador; intcontador++)
					//ELIMINA LAS FILAS TANTO CONTADOR HAYA LLEGADO
					eval(tabla +".deleteRow(lnContador*contador +numero)")
				lnContador=lnContador - 1
				if (! eval("form1."+variable)){ break;}
			}
		}
	} else {
		if (eval("form1." + variable ) != null && eval("form1." + variable + ".checked")==true) {
			for (intcontador=1; intcontador<=contador; intcontador++)
				eval(tabla+".deleteRow(numero)")
		}
	}

}
function abrir_nueva(url,intToolbar,intlocation,intdirectories,intstatus,intmenubar,intscrollbars,intresizable,intwidth,intheight,intleft,inttop) {
//***********************************************************************
//* DESCRIPCION: abre ventana pop up, Deprecada por Abrir ventana
//* se mantiene en el include por compatibilidad
//* CONDICIONES:
//* RETORNA: ventana pop up
//* CAMBIOS: ninguno.
//***********************************************************************
	  link = eval("window.open(url,'_blank','toolbar="+intToolbar+",location="+ intlocation +",directories="+ intdirectories+",status="+ intstatus +",menubar="+ intmenubar +",scrollbars="+ intscrollbars +",resizable="+ intresizable +",width="+ intwidth +",height="+ intheight +",left="+ intleft +",top="+ inttop+"')");
}

function abrir_nueva_3(url) {
//***********************************************************************
//* DESCRIPCION: abre ventana pop up, Deprecada por Abrir ventana
//* CONDICIONES:
//* RETORNA: ventana pop up
//* CAMBIOS: ninguno.
//***********************************************************************
    link = window.open(url,"blank","toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width=250, height=150,left=100,top=125");
}

function formatCurrency(strValue)
{
	strValue = strValue.toString().replace(/\$|\,/g,'');
	dblValue = parseFloat(strValue);

	blnSign = (dblValue == (dblValue = Math.abs(dblValue)));
	dblValue = Math.floor(dblValue*100+0.50000000001);
	intCents = dblValue%100;
	strCents = intCents.toString();
	dblValue = Math.floor(dblValue/100).toString();
	if(intCents<10)
		strCents = "0" + strCents;
	for (var i = 0; i < Math.floor((dblValue.length-(1+i))/3); i++)
		dblValue = dblValue.substring(0,dblValue.length-(4*i+3))+','+
		dblValue.substring(dblValue.length-(4*i+3));
	return (((blnSign)?'':'-') + '$' + dblValue + '.' + strCents);
}

function es_numero() {
	if (event.keyCode < 48 || event.keyCode > 57)
		event.returnValue = false;
}

function calcular_horas_dif(registro, validar) {
	var arr_algo = registro.split("_")
	var str_fecha_registro = new Date(arr_algo[0],  arr_algo[1]-1, arr_algo[2],arr_algo[3], arr_algo[4] );
	arr_algo = validar.split("_")
	var str_fecha_validar = new Date(arr_algo[0],  arr_algo[1]-1, arr_algo[2],arr_algo[3], arr_algo[4] );
	var RMayor = false;
	if (str_fecha_registro > str_fecha_validar)
		RMayor = true;
	return RMayor;
}

function habilitacion_campo(nombre, indice) {
	if (eval("form1."+nombre+"_"+indice) != null) {
		eval("form1."+nombre+"_"+indice+".disabled = true");
		//eval("form1."+nombre+"_"+indice+".style.background = '#CCCCCC'");
		if (cadena_habilitar.search("-"+nombre+"-") != -1) {
			eval("form1."+nombre+"_"+indice+".disabled = false");
			//eval("form1."+nombre+"_"+indice+".style.background = '#FFFFFF'");
		}
	}
}

function habilitar_todo() {
	for (i=0;i<=form1.elements.length-1;i++)
		form1.elements[i].disabled=false;
}

 function habilitar_perfiles() {
	 if (form1.perfil_usuario.checked) {
	 	tr_perfil_usuario.style.display = 'block'
	 	tr_politicas_usuario.style.display = 'block'
	 } else {
	 	tr_perfil_usuario.style.display = 'none'
	 	tr_politicas_usuario.style.display = 'none'
	 }

	 if (form1.perfil_telefonia.checked) {
	 	tr_perfil_telefonia.style.display = 'block'
	 	tr_politicas_telefonia.style.display = 'block'
	 } else {
	 	tr_perfil_telefonia.style.display = 'none'
	 	tr_politicas_telefonia.style.display = 'none'
	 }

	 if (form1.perfil_copiadora.checked) {
	 	tr_perfil_copiadora.style.display = 'block'
	 	tr_politicas_copiadora.style.display = 'block'
	 } else {
	 	tr_perfil_copiadora.style.display = 'none'
	 	tr_politicas_copiadora.style.display = 'none'
	 }

 	 if (form1.perfil_www.checked) {
	 	tr_perfil_www.style.display = 'block'
	 	tr_politicas_www.style.display = 'block'
	 } else {
	 	tr_perfil_www.style.display = 'none'
	 	tr_politicas_www.style.display = 'none'
	 }
}
