var AdmContenidoSetValue=""

/******** Funcion utilizada para el RollOver de las Imagenes *******************/
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

/************** Funcion que despliega o habre ua nueva ventana de modo OPEN *****/
function abreventana(url, w, h, nombre){
      v_x = 200;
      v_y = 100;
      
      window.open(url,nombre,"top=" + v_y + ",left=" + v_x + ",width="+ w +",height=" + h +",scrollbar=yes,resizable=yes");
}

function abremenu(cod_men_pri, cod_men_sec, cod_men_ver, est_men_ver, cod_sub_ver, url, abre_ventana, w, h, nombre, especial, abre_menu_vertical, RutaPageRedirect)
{
   abremenu_principal(cod_men_pri, cod_men_sec, cod_men_ver, est_men_ver, cod_sub_ver, url, abre_ventana, w, h, nombre, especial, abre_menu_vertical, RutaPageRedirect,"","");
}

function abremenu_producto(cod_men_pri, cod_men_sec, cod_men_ver, cod_sub_ver, url, abre_ventana, w, h, nombre, especial, abre_menu_vertical, RutaPageRedirect, codigo_producto, id_lista_producto)
{
   abremenu_principal(cod_men_pri, cod_men_sec, cod_men_ver, '0', cod_sub_ver, url, abre_ventana, w, h, nombre, especial, abre_menu_vertical, RutaPageRedirect, codigo_producto, id_lista_producto);
}


function abremenu_principal(cod_men_pri, cod_men_sec, cod_men_ver, est_men_ver, cod_sub_ver, url, abre_ventana, w, h, nombre, especial, abre_menu_vertical, RutaPageRedirect, codigo_producto, id_lista_producto){
    var v_parametros="";
    var d = new Date();
    var fecha_hora = d.getDate().toString() + d.getMonth().toString() + d.getFullYear().toString() + d.getTime().toString();
    AdmContenidoSetValue = RutaPageRedirect+'PAG_ADMCONTENIDOSETVALUE';

    if(especial!="S")
    {
      if (cod_men_pri>0)
      {
          v_parametros = v_parametros + "cod_men_pri="+ cod_men_pri +"&";
      }
  
      if (cod_men_sec>0)
      {
          v_parametros = v_parametros + "cod_men_sec="+ cod_men_sec +"&";
      }
  
      if (cod_men_ver>0)
      {
          v_parametros = v_parametros + "cod_men_ver="+ cod_men_ver +"&";
      }      

      if (est_men_ver>0)
      {
          v_parametros = v_parametros + "est_men_ver="+ est_men_ver +"&";
      }      

      if ((cod_sub_ver>0) || (cod_sub_ver==-1)) //-1 es para las aplicaciones como el consolidado
      {
          v_parametros = v_parametros + "cod_sub_ver="+ cod_sub_ver +"&";
      }
      if (abre_menu_vertical.length>0)
      {
          v_parametros = v_parametros + "abre_menu_vertical="+ abre_menu_vertical +"&";
      }
      if (codigo_producto.length>0)
      {
          v_parametros = v_parametros + codigo_producto + "=" + id_lista_producto +"&";
      }

      if(abre_ventana!="S")
      {
         if (url.length>0)
         {
             if(url!="X")
             {
               v_parametros = v_parametros + "hip_ult_con="+ url +"&";
             }
         }
      }
    }
    else
    {
        v_parametros = v_parametros + "hip_ult_con="+ url +"&";
    }
    try {
      parent.VARIOS.location = AdmContenidoSetValue + "&" + v_parametros.substring(0,v_parametros.length - 1) + "&fecha_hora="+ fecha_hora;
    }catch(e){}

    if(abre_ventana=="S")
    {
       if(url!="X")
       {
          abreventana(url, w, h, nombre);
       }
    }
}

//Acutaliza los n�meros de los productos
function numProducto(parametro, valor, RutaPageRedirect)
{
    AdmContenidoSetValue = RutaPageRedirect+'PAG_ADMCONTENIDOSETVALUE';

    //prompt("a",AdmContenidoSetValue + "&" + parametro + "=" + valor);
    
    try {
      parent.VARIOS.location = AdmContenidoSetValue + "&" + parametro + "=" + valor;
    } catch(e) {}
}

// funcion que valida que un dato input numerico tenga valores ingresados mayores de 0
function validaNumero(param,mensaje){
  if ((isNaN(param.value)) || (param.value <= 0) ){
    alert("Dato invalido, debe ingresar un numero mayor que cero en "+ mensaje +".")
    return false;
  }
  else
    return true;
}

// funcion que limpia los datos input de un formulario
function limpiar(){  
  var selects = window.document.getElementsByTagName("SELECT");
  var inputs  = window.document.getElementsByTagName("INPUT");
  for (i=0; i < selects.length; i++) { //>
     try {
       selects[i].options[0].selected = true;
     } catch(e) {}
  }
			
  for (i=0; i < inputs.length; i++) { //>
    try {
     if (inputs[i].type == "text")
       inputs[i].value = "";
    } catch(e) {}
  } 
}

//funcion que valida que los meses de gracia no sean consecutivos.
function validaGracia(){
  var primerMes   = window.document.getElementById("primerMes");
  var segundoMes  = window.document.getElementById("segundoMes");
  if ( (primerMes.value != "0") && (segundoMes.value != "0") ){
    var diferencia = primerMes.value - segundoMes.value;
    if (diferencia < 0 ) diferencia = diferencia * (-1)
    if (diferencia <2){  
      alert("Los meses sin pago no deben ser consecutivos.");
      primerMes.value = "0";
      segundoMes.value = "0";
      return false;
    }
    else
      return true;
  }
  return true;
}

//funcion que imprime una pagina mostrando un div oculto.
function imprimir(){
	var StrDiv = window.document.getElementById("datoCliente");
	StrDiv.style.display="inline";
	if (confirm("Desea imprimir esta pagina?"))
		window.print();
	StrDiv.style.display="none";
	
}
function imprimirDoc()
{
	if (confirm("Desea imprimir esta pagina?"))
		window.print();

}
/** Funcion PopUp para login */
function popup(mylink, windowname)
{
  if (! window.focus)return true;
  var href;
  if (typeof(mylink) == 'string')
   href=mylink;
  else
   href=mylink.href;
  window.open(href, windowname, 'width=400,height=200,scrollbars=yes');
  //return false;
}

/** Funcion Separadora de Miles.  */
function formatMiles(num) {
  num = num.toString().replace(/\$|\,/g,'');
  if(isNaN(num))
    num = "0";
  sign = (num == (num = Math.abs(num)));
  num = Math.floor(num*100+0.50000000001);
  cents = num%100;
  num = Math.floor(num/100).toString();
  if(cents<10)
    cents = "0" + cents;
  for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
    num = num.substring(0,num.length-(4*i+3))+'.'+
  num.substring(num.length-(4*i+3));
  return (((sign)?'':'-') + num );
}

/** Funcion para imprimir */

function imprimir(){
	var StrDiv = window.document.getElementById("datoCliente");
	StrDiv.style.display="inline";
	if (confirm("Desea imprimir esta pagina?"))
		window.print();
	StrDiv.style.display="none";
	
}


function validaRut(rut) {

  var erut = window.document.getElementById("erut");
  var tmpstr = "";
  for ( i=0; i < rut.length ; i++ )
    if ( rut.charAt(i) != ' ' && rut.charAt(i) != '.' && rut.charAt(i) != '-' )
      tmpstr = tmpstr + rut.charAt(i);
  rut = tmpstr;
  largo = rut.length;
  tmpstr = "";
  for ( i=0; rut.charAt(i) == '0' ; i++ );
  for (; i < rut.length ; i++ )
     tmpstr = tmpstr + rut.charAt(i);
  rut = tmpstr;
  largo = rut.length;
  if ( largo < 2 )
  {
    alert("Debe ingresar el rut completo.");
    erut.focus();
    erut.select();
    return false;
  }

  for (i=0; i < largo ; i++ )
  {
    if( (rut.charAt(i) != '0') && (rut.charAt(i) != '1') && (rut.charAt(i) !='2') && (rut.charAt(i) != '3') && (rut.charAt(i) != '4') && (rut.charAt(i) !='5') && (rut.charAt(i) != '6') && (rut.charAt(i) != '7') && (rut.charAt(i) != '8') && (rut.charAt(i) != '9') && (rut.charAt(i) !='k') && (rut.charAt(i) != 'K') )
    {
      alert("El valor ingresado no corresponde a un R.U.T valido.");
      erut.focus();
      erut.select();
      return false;
    }
  }
  var invertido = "";
  for ( i=(largo-1),j=0; i>=0; i--,j++ )
    invertido = invertido + rut.charAt(i);
  var drut = "";
  drut = drut + invertido.charAt(0);
  drut = drut + '-';
  cnt = 0;
  for ( i=1,j=2; i<largo; i++,j++ )
    {
    if ( cnt == 3 )
    {
      drut = drut + '.';
      j++;
      drut = drut + invertido.charAt(i);
      cnt = 1;
    }
    else
    {
      drut = drut + invertido.charAt(i);
      cnt++;
    }
  }
  invertido = "";
  for ( i=(drut.length-1),j=0; i>=0; i--,j++ )
    invertido = invertido + drut.charAt(i);
  erut.value = invertido;
  if(!checkDV(rut))
    return false;
  return true;
}

function checkDV(crut)
{
  var erut = window.document.getElementById("erut");
  largo = crut.length;
  if(largo < 2){
    alert("Debe ingresar el rut completo.");
    erut.select();
    erut.focus();
    return false;
  }
  if(largo > 2){
    rut = crut.substring(0, largo - 1);
  }
  else{
    rut = crut.charAt(0);
  }
  dv = crut.charAt(largo-1);

  if(!checkCDV(dv))
     return false;

  if(rut == null || dv == null){
      return false;
  }

  var dvr = '0';
  suma = 0;
  mul  = 2;
  for (i= rut.length -1 ; i >= 0; i--){
    suma = suma + rut.charAt(i) * mul;
    if(mul == 7){
      mul = 2;
    }
    else{
      mul++;
    }
  }
  res = suma % 11;
  if (res==1){
    dvr = 'k';
  }
  else{
    if(res==0){
      dvr = '0';
    }
    else{
      dvi = 11-res;
      dvr = dvi + "";
    }
  }
  if(dvr != dv.toLowerCase()){
    alert("El RUT ingresado no es v\u00E1lido.");
    erut.focus();
    erut.value = "";
    return false;
  }
  return true;
}

function checkCDV(dvr)
{
  var erut = window.document.getElementById("erut");
  dv = dvr + "";
  if(dv != '0' && dv != '1' && dv != '2' && dv != '3' && dv != '4' && dv != '5' && dv != '6' && dv != '7' && dv != '8' && dv != '9' && dv != 'k'  && dv != 'K'){
    alert("Debe ingresar un digito verificador valido.");
    erut.focus();
	erut.value = "";
    return false;
  }
  return true;
}

function esDV(dvr)
{
  var dv = dvr + "";
  if(dv != '0' && dv != '1' && dv != '2' && dv != '3' && dv != '4' && dv != '5' && dv != '6' && dv != '7' && dv != '8' && dv != '9' && dv != 'k'  && dv != 'K')
  {
    alert("Debe ingresar un digito verificador valido.");
    return false;
  }
  return true;
}

/** Funciones booleana que verifica si se presiono ENTER */
function esENTER(ev)
{
 if (ev.keyCode==13) return true
 return false;
}

/** Funciones para validar el ingreso de fechas */
function Fechas( obj )
{
	var newobj = "";
	var chrnum = "0123456789";
	var chrpun = "/";
	var objeto="" + obj;
	if (objeto != "undefined"){

		if((event.keyCode==8)||(event.keyCode==9)||(event.keyCode==37)||(event.keyCode==39)|| (event.keyCode==35)||(event.keyCode==36)||(event.keyCode==46))
			  return
		if((event.keyCode<48)||(event.keyCode>57))
		  if((event.keyCode<96)||(event.keyCode>105))
			  event.returnValue=false

	  for (var i =  0; i < obj.value.length; i++){
		if ( obj.value.substr( i,  1 ) != "/" ){
		  if ( chrnum.indexOf( obj.value.substr( i,  1 ) ) != -1 )
			newobj += obj.value.substr( i,  1 ) ;
		  else
			newobj += "" ;
		}
	  }
	  if(event.keyCode!=8){
		if(newobj.length <=  1){
		  obj.value = newobj ;
		}
		if ( newobj.length >  1 && newobj.length <=  3 ){
		  obj1 = newobj.substr( 0, 2 ) ;
		  obj2 = newobj.substr( 2, 2 ) ;
		  obj.value = obj1 + "/" + obj2 ;
		}
		if ( newobj.length >  3 && newobj.length <=  7 ){
		  obj1 = newobj.substr( 0, 2 ) ;
		  obj2 = newobj.substr( 2, 2 ) ;
		  obj3 = newobj.substr( 4, 4 ) ;
		  obj.value = obj1 + "/" + obj2 + "/" + obj3 ;
		}
	  }
	}
}

function ddmmyyyy(strFec) 
{
	strS1 = strFec.substring(2,3);
	strS2 = strFec.substring(5,6);
	if ((strS1 == "/") && (strS2 == "/")){
	  return true;
	}
	else {
	  return false;
	}
}

function validaFecha(dia,mes,ano)
{

  largodia= dia.length;
  if (largodia==1)
  {
   dia= "0" + dia
  }
  largomes=mes.length;
	if (largomes==1)
	{
	mes= "0" + mes
	}
	fec = dia + '-' + mes + '-' + ano
	if ( fec!="" )
	{
	largo = fec.length;
	if(( largo != 10 )&&(largo != 8 ))
	{

		alert("Fecha Incorrecta. Intente ingresar nuevamente.")
		return false;

	}
	{
	  di = fec.substring(0, 2);
	  if (isNaN(di))
	  {
		alert("Dia ingresado en la fecha es incorrecto. Intente ingresar nuevamente.")
		return false;
	  }
	  {
		d = parseInt(di);
		mi = fec.substring(3, 5);
		if ((isNaN(mi)) || (isNaN(mes)))
		{
		  alert("Mes ingresado en la fecha es incorrecto. Intente ingresar nuevamente.")
		  return false;
		}
		{
		  m = parseFloat(mi);
		  ai=fec.substring(6, 10);
		  if (isNaN(ai))
		  {
			alert("A&ntilde;o ingresado en la fecha es incorrecto. Intente ingresar nuevamente.")
			return false;
		  }
		  if ((m<1) || (m>12)){
			alert("El mes ingresado no es correcto");
			return false;
		  }
		  {
			a = parseInt(ai);
			if ((a<1900) || (a > intAnno))
			{
			  alert("A&ntilde;o ingresado en la fecha esta fuera de rango. Intente ingresar nuevamente.")
			  return false;
			}
			{
			  resto = a % 4;
			  if (resto==0)
			  {
				bis=1;
			  }
			  if (resto!=0)
			  {
				bis=0;
			  }

			  {
				if ((m==1) || (m==3) || (m==5) || (m==7) || (m==8) || (m==10) || (m==12)){
				  if ((d<=0) || (d>31)){
					alert("Dia ingresado en la fecha esta fuera de rango. Intente ingresar nuevamente.")
					return false;
				  }
				  {
					  return true
				  }
				}
				{
				  if ((m==4) || (m==6) || (m==9) || (m==11)){
					if ((d<=0) || (d>30)){
					  alert("Dia ingresado en la fecha esta fuera de rango. Intente ingresar nuevamente.")
					  return false;
					}
					{
					  return true
					}
				  }
				  {
					if (m==2)	{
					  if (bis==1) {
						if ((d<=0) || (d>29)){
						  alert("Dia ingresado en la fecha esta fuera de rango. Intente ingresar nuevamente.")
						  return false;
						}
						{
						  return true
						}

					  }
					  {
						if ((d<=0) || (d>28)){
						  alert("Dia ingresado en la fecha esta fuera de rango. Intente ingresar nuevamente.")
						  return false;
						}
						{
						  return true
						}

					  }
					}
				  }
				}
			  }
			}
		  }
		}
	  }
	}
  }
  else
  {
	alert("Debe ingresar Fecha")
	return false;
  }
}


/*************************************************************************/
/* Deja Fija la Fila de Titulos en la Grida de despliegue                */
/*************************************************************************/
function DataScroll()
{
  window.titulo.style.position = "relative";
  window.titulo.style.height   = "30px";
  window.titulo.style.top      = 0;
  
	window.titulo.style.top = window.div_grilla.scrollTop - 2;
}

/*************************************************************************/
/* Cambial el titulo de las paginas que se levantan como window open     */
/*************************************************************************/
function CambiaTitle( title ){
  document.title = title;
}