/*
 * Archivo JavaScript.
 * Funciones:
 * formatos para varios tipos de campos
 * Revisa
 * validarEmail
 * validDate
 * IsUnsignedInt
 * LeapYear
 * Activar
 */

//------------------------------------------------------------------------------
//formatos para varios tipos de campos
var letras = /^[a-zA-Z]$/
var tlf = /^[2-9]+[0-9]{6,}$/
var date = /^[0-9]{2}\/+[0-9]{2}\/+[0-9]{4}$/
var number = /^[0-9]{0,}$/
var decimal = /^[1-9]+[0-9]{1,}\.+[0-9]{2}/

var porcent = /^[0-9]{0,2}(\.+[0-9]{1,2}){0,1}$/    

var email = /^[a-zA-Z].+@[a-zA-Z_0-9-\.]+\.[a-zA-Z]{2,3}$/
var rif = /^[jJ|vV|gG|eE|pP]{1,1}[0-9]{9}$/
var alfanumerico = /^[0-9A-Za-z]+$/


//------------------------------------------------------------------------------
//funcion que permite el uso de los conjuntos
function Revisa(conjunto, cadena)	
{
	return conjunto.test(cadena)
}//Revisa


//------------------------------------------------------------------------------
//funcion obtiene objetos cross-browser

function obtenerObjeto(control,opcion) {
    var obj = null;
  
    if (document.all) { 
       obj = document.all[control];
    } else if (document.getElementById) { 
       obj = document.getElementById(control); 
    } else { 
       obj = document.forms['0'].elements[control];
    }

    if (obj != null && opcion != null) {
        if (opcion == 'value') {
          return obj.value;
        }
    }
    return obj;
}

function obtenerObjetoFormulario(control,opcion,indice) {
    var obj = null;
  
    if (document.all) { 
       obj = document.all[control];
    } else if (document.getElementById) { 
       obj = document.getElementById(control); 
    } else { 
       obj = document.forms[indice].elements[control];
    }

    if (obj != null && opcion != null) {
        if (opcion == 'value') {
          return obj.value;
        }
    }
    return obj;
}

//------------------------------------------------------------------------------
// Funcion que valida el email
function ValidarCedula(cedula){
  if(!cedula.value == null || !cedula.value == ""){
    if(cedula.value.length>9 || 
       (cedula.value.charAt(0)!= 'v' && cedula.value.charAt(0)!= 'V' && cedula.value.charAt(0)!= 'e' && cedula.value.charAt(0)!= 'E') || 
       !Revisa(number,cedula.value.substring(1,9))){
      alert("Cedula Inválida. El formato de cédula debe ser vV, eE seguido de ocho dígitos numéricos, ej.: V12345678");
      //cedula.value="";
      cedula.focus();      
      return false;
    }
  }
  return true;
}

function ValidarDoc(indice){
  var doc = document.forms[indice].elements['rif']
  var radioObj = document.forms[indice].elements['tipodocumento'];
  if (radioObj[0].checked) { 
    return ValidarCedula(doc);
  } else {
    return ValidarRif(doc);
  }
}

//------------------------------------------------------------------------------
// Funcion que valida el email
function ValidarPorcentaje(porcentaje){
  if(!porcentaje.value == null || !porcentaje.value == ""){
    if(Number(porcentaje.value)<100 && !Revisa(porcent,porcentaje.value)){
         alert("El porcentaje no es válido, debe ser un número menor o igual a 100 y máximo con 2 decimales, ej: 12.75");
         porcentaje.value="";
         porcentaje.focus();      
         return false;
    } else {
        if (Number(porcentaje.value)>100){
             alert("El porcentaje de paticipación no es válido, debe ser menor a 100%");
             porcentaje.value="";
             porcentaje.focus();      
             return false;
        }
    }
  }
  return true;
}

//------------------------------------------------------------------------------
// Funcion que valida el email
function ValidarEmail(correo){
  if(!correo.value == null || !correo.value == ""){
    if(!Revisa(email,correo.value)){
      alert("email inválido");
      correo.value="";
      correo.focus();      
      return false;
    }
  }
  return true;
}


//------------------------------------------------------------------------------
// Funcion que valida el telefono
function ValidarTelefono(tlf){
  if(!tlf.value == null || !tlf.value == ""){
    if(Revisa(letras,tlf.value)){
      alert("teléfono inválido");
      tlf.value="";
      tlf.focus();      
      return false;
    }
  }
  return true;
}

//------------------------------------------------------------------------------
// Funcion que valida el email
function ValidarRif(text){
  if(!text.value == null || !text.value == ""){
    if(!Revisa(rif,text.value)){
      alert("el formato del RIF debe ser jJ, vV, gG, eE, seguido de nueve dígitos numéricos");
      text.value="";
      text.focus();
      return false;
    }
  }
  return true;
}


function EsNumeroCC(text){
  comboPersonalidad = obtenerObjeto('personalidad',null);
  
  if (comboPersonalidad != null) {
    personalidad = obtenerObjeto('personalidad','value');  
    indice = obtenerObjeto('personalidad',null).selectedIndex;
  }
  
  if (comboPersonalidad == null || (personalidad == 3 && (indice == 8 || indice == 10))) {
      if(!text.value == null || !text.value == ""){
        
        if(!Revisa(number,text.value) || text.value.length != 6){
          alert("el formato del Nro MPPCPS debe ser 6 dígitos numéricos");
          text.value="";
          text.focus();
          return false;
        }
      }
      return true;
  }
  return true;
}


function EsAlfaNumCC(text){
  comboPersonalidad = obtenerObjeto('personalidad',null);
  
  if (comboPersonalidad != null) {
    personalidad = obtenerObjeto('personalidad','value');  
    indice = obtenerObjeto('personalidad',null).selectedIndex;
  }
  
  if (comboPersonalidad == null || (personalidad == 3 && (indice == 8 || indice == 10))) {
      if(!text.value == null || !text.value == ""){
        
        if(!Revisa(alfanumerico,text.value) || text.value.length != 13){
          alert("el formato del Nro Registro debe ser 13 caracteres alfanuméricos");
          text.value="";
          text.focus();
          return false;
        }
      }
      return true;
  }
  return true;
}

//------------------------------------------------------------------------------
function FormatoFecha(fecha) {
  if (fecha.value.length == 2 || fecha.value.length == 5){
    fecha.value = fecha.value + '/';
  }
}

//------------------------------------------------------------------------------
// Script que valida las fechas
function ValidDate(fecha){
   if (fecha.value != "" ) {
      var fec_err=h_err=dia=mes=anio=hh=minutos=segundos=0;
      var mesaux = 0;
      fec_err = (fecha.value.substring(2,3) == "/" &&
                 fecha.value.substring(5,6) == "/")? "0":"1";

      if (IsUnsignedInt(fecha.value.substring(0,2))) {
         dia = fecha.value.substring(0,2);
      } else { 
        fec_err = 1;
      }
      mesaux = fecha.value.substring(3,5);
      if (mesaux == '01' || mesaux == '02' || mesaux == '03' || mesaux == '04' ||
         mesaux == '05' || mesaux == '06' || mesaux == '07' || mesaux == '08' ||
         mesaux == '09' || mesaux == '10' || mesaux == '11' || mesaux == '12') {
         mes = mesaux;
      } else {
        fec_err = 1;
      }

      if ( IsUnsignedInt(fecha.value.substring(6,10))) {
         anio = fecha.value.substring(6,10);
      } else {
        fec_err = 1;
      }

      if (anio < 1000) { fec_err=1 }

      if ((dia > 31 || mes > 12 || dia <= 0 || mes <= 0 ) ||
         ((!LeapYear(anio)) && mes == '02' && dia > 28) || ((LeapYear(anio)) && mes == '02' && dia > 29)
         ||(fec_err == 1)||((mes == 04 || mes == 06 || mes == 09 || mes == 11) && dia > 30)) {
        
         alert("La Fecha no es Valida. El formato es DD/MM/AAAA");
         fecha.value = "";
         fecha.focus();
         return false;
      } else {
          var hoy=new Date();
          var dia=hoy.getDate();
          
          var mesActual=hoy.getMonth() +1 ;
          if (mesActual<10)
              mesActual  = "0"+mesActual;
         
          var anoActual=hoy.getFullYear();      
          if (dia<10)
              diaActual  = "0"+dia;
          else
              diaActual  = dia;          
              
          var fechaHoy = diaActual+"/"+mesActual+"/"+anoActual;
          
          if (!validarFechas(fecha.value, fechaHoy)) {
              alert("La Fecha no debe ser mayor a la fecha de hoy");
              fecha.value = "";
              fecha.focus();
              return false;              
          } 
      }
   }
   return true;
}//validDate

function ValidDateCierreNatural(fecha){
   
   if (document.forms[0].elements['tipoSociedad.codigo'].value != '31' && 
       document.forms[0].elements['personalidad.codigo'].value != '6') { 
      var anoActual = new Date().getFullYear();    
      document.forms[0].elements['fechaCierreFiscal'].value = '31/12/'+anoActual;
      return true;
   }
    
   if (fecha.value != "" ) {
      var fec_err=h_err=dia=mes=anio=hh=minutos=segundos=0;
      var mesaux = 0;
      fec_err = (fecha.value.substring(2,3) == "/" &&
                 fecha.value.substring(5,6) == "/")? "0":"1";

      if (IsUnsignedInt(fecha.value.substring(0,2))) {
         dia = fecha.value.substring(0,2);
      } else { 
        fec_err = 1;
      }
      mesaux = fecha.value.substring(3,5);
      if (mesaux == '01' || mesaux == '02' || mesaux == '03' || mesaux == '04' ||
         mesaux == '05' || mesaux == '06' || mesaux == '07' || mesaux == '08' ||
         mesaux == '09' || mesaux == '10' || mesaux == '11' || mesaux == '12') {
         mes = mesaux;
      } else {
        fec_err = 1;
      }

      if ( IsUnsignedInt(fecha.value.substring(6,10))) {
         anio = fecha.value.substring(6,10);
      } else {
        fec_err = 1;
      }

      if (anio < 1000) { fec_err=1 }

      if ((dia > 31 || mes > 12 || dia <= 0 || mes <= 0 ) ||
         ((!LeapYear(anio)) && mes == '02' && dia > 28) || ((LeapYear(anio)) && mes == '02' && dia > 29)
         ||(fec_err == 1)||((mes == 04 || mes == 06 || mes == 09 || mes == 11) && dia > 30)) {
        
         alert("La Fecha no es Valida. El formato es DD/MM/AAAA");
         fecha.value = "";
         fecha.focus();
         return false;
      } 
   }
   return true;
}//validDate


function ValidDateCierre(fecha){
   if (fecha.value != "" ) {
      var fec_err=h_err=dia=mes=anio=hh=minutos=segundos=0;
      var mesaux = 0;
      fec_err = (fecha.value.substring(2,3) == "/" &&
                 fecha.value.substring(5,6) == "/")? "0":"1";

      if (IsUnsignedInt(fecha.value.substring(0,2))) {
         dia = fecha.value.substring(0,2);
      } else { 
        fec_err = 1;
      }
      mesaux = fecha.value.substring(3,5);
      if (mesaux == '01' || mesaux == '02' || mesaux == '03' || mesaux == '04' ||
         mesaux == '05' || mesaux == '06' || mesaux == '07' || mesaux == '08' ||
         mesaux == '09' || mesaux == '10' || mesaux == '11' || mesaux == '12') {
         mes = mesaux;
      } else {
        fec_err = 1;
      }

      if ( IsUnsignedInt(fecha.value.substring(6,10))) {
         anio = fecha.value.substring(6,10);
      } else {
        fec_err = 1;
      }

      if (anio < 1000) { fec_err=1 }

      if ((dia > 31 || mes > 12 || dia <= 0 || mes <= 0 ) ||
         ((!LeapYear(anio)) && mes == '02' && dia > 28) || ((LeapYear(anio)) && mes == '02' && dia > 29)
         ||(fec_err == 1)||((mes == 04 || mes == 06 || mes == 09 || mes == 11) && dia > 30)) {
        
         alert("La Fecha no es Valida. El formato es DD/MM/AAAA");
         fecha.value = "";
         fecha.focus();
         return false;
      } 
   }
   return true;
}//validDate

function validarFechas(fechaMenor, fechaMayor) {
    diaMenor  = fechaMenor.substring(0,2);
    mesMenor  = fechaMenor.substring(3,5);
    anoMenor  = fechaMenor.substring(6,10);
    
    diaMayor  = fechaMayor.substring(0,2);
    mesMayor  = fechaMayor.substring(3,5);
    anoMayor  = fechaMayor.substring(6,10);
    
    if(anoMayor < anoMenor){
          return false;
    }else if(anoMayor == anoMenor && mesMayor < mesMenor){
          return false;
    }else if(anoMayor == anoMenor && mesMayor == mesMenor && diaMayor < diaMenor){
          return false;
    }

  return true;
}


function validarFechaMayor(fechaMenor, label1, fechaMayor, label2) {
          if (!validarFechas(fechaMenor.value, fechaMayor.value)) {
              alert("La "+label2+" debe ser mayor o igual a la "+label1);
              fechaMayor.value = "";
              fechaMayor.focus();
              return false;              
          } 
          return true;
}

//------------------------------------------------------------------------------
function IsUnsignedInt(campo) {
	for (var i = 0; i < campo.length - 1; i++)	{
    	var pos = campo.charAt(i);
      if (pos < "0" || pos > "9") {
         return false; 
      }
  }
	return true;
}//IsUnsignedInt

//------------------------------------------------------------------------------
function LeapYear(anio) { 
	if ((anio % 400) == 0) {
     return true; 
  }
  if ((app = anio % 100) == 0) {
     return true;
  }
  if ((app = anio % 4) == 0) {
     return true;
  } else {
    return false;
  }
}//LeapYear


//------------------------------------------------------------------------------
//Funcion que activa y desactiva objetos en la busqueda de contribuyentes preinscritos
function ActivarBusqPreinscritos() {
  
  	var retorno = true;  
    var personalidad = obtenerObjeto('personalidad','value');    

    obtenerObjeto('cedulaPasaporte',null).value = "";
    obtenerObjeto('fecha',null).value = "";
    obtenerObjeto('razonSocial',null).value = "";
    obtenerObjeto('registroProvidencia',null).value = "";
    obtenerObjeto('tomoGaceta',null).value = "";   
    obtenerObjeto('correo',null).value = "";  
    obtenerObjeto('noresidenciado',null).value = 'N';
    obtenerObjeto('consejocomunal',null).value = 'N';

    if (personalidad == '1' || personalidad == '2' || personalidad == '4' || personalidad == '6') { //NATURALES

      if (obtenerObjeto('personalidad',null).selectedIndex == 7) {			//SUCESION
        	obtenerObjeto('fecha',null).className               = 'activo';
			obtenerObjeto('registroProvidencia',null).className = 'activo';
			obtenerObjeto('tomoGaceta',null).className          = 'activo';
        	obtenerObjeto('razonSocial',null).className         = 'activo';
        	obtenerObjeto('cedulaPasaporte',null).className     = 'inactivo';
			obtenerObjeto('correo',null).className              = 'inactivo';

        	obtenerObjeto('cedulaPasaporte',null).disabled     = "false";
			obtenerObjeto('correo',null).disabled              = "false";
        	obtenerObjeto('fecha',null).disabled               = null;
        	obtenerObjeto('razonSocial',null).disabled         = null;
			obtenerObjeto('registroProvidencia',null).disabled = null;
			obtenerObjeto('tomoGaceta',null).disabled          = null;
        	obtenerObjeto('p_calend',null).className           = 'visibles';
          
			obtenerObjeto('labelfechanac',null).value = 'Fecha Fallecimiento';
			obtenerObjeto('labelregistro',null).value = 'Nro Acta';
			obtenerObjeto('labeltomo',null).value     = 'Año';
			obtenerObjeto('labelnombre',null).value   = 'Parroquia';
			obtenerObjeto('labelcedula',null).value   = 'Cédula / Pasaporte';
         
      } else {
		  
          if (obtenerObjeto('personalidad',null).selectedIndex == 8 ||		//NATURALES NO RESIDENCIADOS
			 (obtenerObjeto('personalidad',null).selectedIndex == 3 && obtenerObjeto('personalidad',null).length == 4)) {
              obtenerObjeto('noresidenciado',null).value   = 'S'; 
          }
		  
          obtenerObjeto('fecha',null).className = 'activo';
          obtenerObjeto('cedulaPasaporte',null).className     = 'activo';
          obtenerObjeto('razonSocial',null).className         = 'inactivo';
          obtenerObjeto('registroProvidencia',null).className = 'inactivo';
          obtenerObjeto('tomoGaceta',null).className          = 'inactivo';
          obtenerObjeto('p_calend',null).className            = 'visibles';
          obtenerObjeto('correo',null).className              = 'inactivo';
          
          obtenerObjeto('cedulaPasaporte',null).disabled      = null;
          obtenerObjeto('fecha',null).disabled                = null;
          obtenerObjeto('razonSocial',null).disabled          = "false";
          obtenerObjeto('registroProvidencia',null).disabled  = "false";
          obtenerObjeto('tomoGaceta',null).disabled           = "false";
          obtenerObjeto('correo',null).disabled               = "false";
    
          obtenerObjeto('labelregistro',null).value = 'Nro Registro / Providencia';
          obtenerObjeto('labeltomo',null).value     = 'Nro Tomo / Gaceta';  
          obtenerObjeto('labelnombre',null).value   = 'Razón Social'; 
          
          if (personalidad == '6')	//SUCESION
            obtenerObjeto('labelfechanac',null).value           = 'Fecha Fallecimiento';
          else
            obtenerObjeto('labelfechanac',null).value           = 'Fecha Nacimiento';      
    
          if (personalidad == '4')	//PASAPORTE
            obtenerObjeto('labelcedula',null).value           = 'Pasaporte';
          else
			obtenerObjeto('labelcedula',null).value           = 'Cédula';            
      }
        
	  } else { 																		//JURIDICOS
		  switch(personalidad){
		    case '': 
			obtenerObjeto('fecha',null).className               = 'inactivo';
        	obtenerObjeto('cedulaPasaporte',null).className     = 'inactivo';
			obtenerObjeto('registroProvidencia',null).className = 'inactivo';
			obtenerObjeto('tomoGaceta',null).className          = 'inactivo';
        	obtenerObjeto('razonSocial',null).className         = 'inactivo';
        	obtenerObjeto('p_calend',null).className            = 'novisibles';
			obtenerObjeto('correo',null).className              = 'inactivo';

        	obtenerObjeto('cedulaPasaporte',null).disabled      = "false";
        	obtenerObjeto('fecha',null).disabled                = "false";
        	obtenerObjeto('razonSocial',null).disabled          = "false";
			obtenerObjeto('registroProvidencia',null).disabled  = "false";
			obtenerObjeto('tomoGaceta',null).disabled           = "false";
			obtenerObjeto('correo',null).disabled               = "false";
         
			obtenerObjeto('labelcedula',null).value   = 'Cédula / Pasaporte';
			obtenerObjeto('labelfechanac',null).value = 'Fecha Nacimiento / Constitución';
			obtenerObjeto('labelregistro',null).value = 'Nro Registro / Providencia';
			obtenerObjeto('labeltomo',null).value     = 'Nro Tomo / Gaceta';   
			obtenerObjeto('labelnombre',null).value   = 'Razón Social'; 
			break;
          
		    case '3':
			if (obtenerObjeto('personalidad',null).selectedIndex == 9) {			//JURIDICO NO DOMICILIADO
              obtenerObjeto('noresidenciado',null).value   = 'S'; 
              
              obtenerObjeto('fecha',null).className               = 'inactivo';
              obtenerObjeto('cedulaPasaporte',null).className     = 'inactivo';
              obtenerObjeto('registroProvidencia',null).className = 'inactivo';
              obtenerObjeto('tomoGaceta',null).className          = 'inactivo';
              obtenerObjeto('razonSocial',null).className         = 'activo';
              obtenerObjeto('correo',null).className              = 'activo';
              
              obtenerObjeto('cedulaPasaporte',null).disabled     = "false";
              obtenerObjeto('fecha',null).disabled               = "false";
              obtenerObjeto('registroProvidencia',null).disabled = "false";
              obtenerObjeto('tomoGaceta',null).disabled          = "false";
              obtenerObjeto('p_calend',null).className           = 'novisibles';
              obtenerObjeto('razonSocial',null).disabled         = null;
              obtenerObjeto('correo',null).disabled              = null;
              
              obtenerObjeto('labelnombre',null).value   = 'Razón Social'; 
          
          } else {																	//CONSEJO COMUNAL
              if (obtenerObjeto('personalidad',null).selectedIndex == 8 || obtenerObjeto('personalidad',null).selectedIndex == 10) {
                  obtenerObjeto('consejocomunal',null).value   = 'S';
                  
                  obtenerObjeto('cedulaPasaporte',null).className     = 'inactivo';
                  obtenerObjeto('correo',null).className              = 'inactivo';

                  obtenerObjeto('razonSocial',null).className         = 'activo';
                  obtenerObjeto('fecha',null).className               = 'activo';                  
                  obtenerObjeto('registroProvidencia',null).className = 'activo';
                  obtenerObjeto('tomoGaceta',null).className          = 'activo';
                  
                  obtenerObjeto('cedulaPasaporte',null).disabled     = "false";
                  obtenerObjeto('correo',null).disabled              = "false";                

                  obtenerObjeto('razonSocial',null).disabled         = null;
                  obtenerObjeto('fecha',null).disabled               = null;
                  obtenerObjeto('registroProvidencia',null).disabled = null;
                  obtenerObjeto('tomoGaceta',null).disabled          = null;
                  obtenerObjeto('p_calend',null).className           = 'visibles';    
                  
                  obtenerObjeto('labelfechanac',null).value = 'Fecha Registro';
                  obtenerObjeto('labeltomo',null).value     = 'Nro Registro';
                  obtenerObjeto('labelregistro',null).value = 'Nro MPPCPS';
                  obtenerObjeto('labelcedula',null).value   = 'Cédula / Pasaporte';
                  obtenerObjeto('labelnombre',null).value   = 'Razón Social';                   
                  
              } else {																//JURIDICO
                  obtenerObjeto('fecha',null).className               = 'activo';
                  obtenerObjeto('registroProvidencia',null).className = 'activo';
                  obtenerObjeto('tomoGaceta',null).className          = 'activo';
                  obtenerObjeto('razonSocial',null).className         = 'activo';
                  obtenerObjeto('cedulaPasaporte',null).className     = 'inactivo';
                  obtenerObjeto('correo',null).className              = 'inactivo';
        
                  obtenerObjeto('cedulaPasaporte',null).disabled = "false";
                  obtenerObjeto('fecha',null).disabled               = null;
                  obtenerObjeto('razonSocial',null).disabled         = null;
                  obtenerObjeto('registroProvidencia',null).disabled = null;
                  obtenerObjeto('tomoGaceta',null).disabled          = null;
                  obtenerObjeto('p_calend',null).className           = 'visibles';
                  obtenerObjeto('correo',null).disabled              = "false";
                  
                  obtenerObjeto('labelfechanac',null).value = 'Fecha Constitución';
                  obtenerObjeto('labelregistro',null).value = 'Nro Registro';
                  obtenerObjeto('labeltomo',null).value     = 'Nro Tomo';
                  obtenerObjeto('labelcedula',null).value   = 'Cédula / Pasaporte';
                  obtenerObjeto('labelnombre',null).value   = 'Razón Social'; 
              }
          }
		  		break;
          
		    case '5': 																//GOBIERNO
        	obtenerObjeto('fecha',null).className               = 'activo';
        	obtenerObjeto('cedulaPasaporte',null).className     = 'inactivo';
			obtenerObjeto('registroProvidencia',null).className = 'activo';
			obtenerObjeto('tomoGaceta',null).className          = 'activo';
        	obtenerObjeto('razonSocial',null).className         = 'activo';
			obtenerObjeto('correo',null).className              = 'inactivo';
          
        	obtenerObjeto('cedulaPasaporte',null).disabled     = "false";
        	obtenerObjeto('fecha',null).disabled               = null;
        	obtenerObjeto('razonSocial',null).disabled         = null;
			obtenerObjeto('registroProvidencia',null).disabled = null;
			obtenerObjeto('tomoGaceta',null).disabled          = null;
        	obtenerObjeto('p_calend',null).className           = 'visibles';
			obtenerObjeto('correo',null).disabled              = "false";
          
			obtenerObjeto('labelfechanac',null).value = 'Fecha Constitución';
			obtenerObjeto('labeltomo',null).value     = 'Nro Gaceta';
			obtenerObjeto('labelregistro',null).value = 'Nro Providencia';
			obtenerObjeto('labelcedula',null).value   = 'Cédula / Pasaporte';
			obtenerObjeto('labelnombre',null).value   = 'Razón Social'; 
			break;
		  }
    }

    return retorno;
}//ActivarBusqPreinscritos

//------------------------------------------------------------------------------
// Funcion que valida el formulario de busqueda de contribuyentes preinscritos
function ValidarBusquedaPreinscritos(reincorporar){
  //var frm = document.forms[0];

  var personalidad        = obtenerObjeto('personalidad','value');
  var razonSocial         = obtenerObjeto('razonSocial','value'); 
  var fecha               = obtenerObjeto('fecha','value'); 
  var cedulaPasaporte     = obtenerObjeto('cedulaPasaporte','value'); 
  var registroProvidencia = obtenerObjeto('registroProvidencia','value'); 
  var tomoGaceta          = obtenerObjeto('tomoGaceta','value');
  var correo              = obtenerObjeto('correo','value');
  var numeroControl       = obtenerObjeto('numeroControl','value'); 
  var rifReincorp         = null;
  
  if (numeroControl != null && numeroControl != '') {
    if(!Revisa(number,numeroControl) || numeroControl.lenght < 5){
      alert("El formato del Número de Control debe ser un número mayor de 5 dígitos");
      return false;
    }
    return true; 
  }

  if (reincorporar != null && reincorporar != ''){
      rifReincorp = obtenerObjeto('rif','value');
  }

  if(personalidad != null && personalidad != ''){
      if (reincorporar == 'S') {
          if (rifReincorp == null || rifReincorp == ''){
                alert("Debe ingresar el rif que se desea reincorporar");
                return false; 
          } else {
              if(!Revisa(rif,rifReincorp)){
                alert("El formato del RIF debe ser jJ, vV, gG, eE, seguido de nueve dígitos numéricos");
                return false;
              }
          }
      }  
      
      if(personalidad == '1' || personalidad == '2' || personalidad == '4' || personalidad == '6'){
        if (obtenerObjeto('personalidad',null).selectedIndex == 7) {
             if(fecha != '' && razonSocial != '' && registroProvidencia != '' && tomoGaceta != ''){ 
               var d = new Date();
               
               if((tomoGaceta.length != 4) || (!Revisa(number,tomoGaceta)) || (parseInt(tomoGaceta) < 1900) || (parseInt(tomoGaceta) > d.getFullYear())) {
                 alert("El formato del año debe ser un número de cuatro dígitos mayor a 1900. Ej: 2008");
                 return false;
               }              
             
               return true;
             }         
        } else {
            if(fecha != '' && cedulaPasaporte != ''){
              if ((personalidad == '1' && cedulaPasaporte.charAt(0) != 'V') || (personalidad == '2' && cedulaPasaporte.charAt(0) != 'E')){
                    alert("El tipo de persona no se corresponde con la cédula ingresada");
                    return false; 
              } else {
                return true; 
              }
            }
        }
      } else {
         if(personalidad == '3'){
            if (obtenerObjeto('personalidad',null).selectedIndex == 9) {
               if(razonSocial != '' && correo != ''){ 
                 return true;
               }             
            } else {
                 if(fecha != '' && razonSocial != '' && registroProvidencia != '' && tomoGaceta != ''){  
                     if (obtenerObjeto('personalidad',null).selectedIndex == 10) {
                         if(!Revisa(number,registroProvidencia) || registroProvidencia.length != 6 || !Revisa(alfanumerico,tomoGaceta) || tomoGaceta.length != 13){ 
                           return false;
                         }                  
                     } 
                     return true;
                 }
            }
         } else { 
             if(personalidad == '5'){
                 if(fecha != '' && razonSocial != '' && registroProvidencia != '' && tomoGaceta!= ''){  
                   return true;
                 } 
             } 
         }

      }
   
  }
  alert("Debe transcribir todos los datos solicitados");
  return false;
}
   
//------------------------------------------------------------------------------
// Funcion que habilita los campos del formulario de relacion en base al tipo 
// de relacion seleccionada
function HabilitarCamposRelacion(tipoRelacion){
  if (tipoRelacion.value == '02') { //socio
    obtenerObjeto('cargo',null).value = 'NO INDICA';
    obtenerObjeto('participacion',null).value = '';
	  obtenerObjeto('cargo',null).disabled = true;
    obtenerObjeto('participacion',null).disabled = null;
  } else {
    if (tipoRelacion.value == '03') { //directivo
      obtenerObjeto('cargo',null).value = '';
      obtenerObjeto('participacion',null).value = '0.0';
      obtenerObjeto('cargo',null).disabled = null;
	    obtenerObjeto('participacion',null).disabled = true;      
    } else {
      obtenerObjeto('cargo',null).value = 'NO INDICA';
      obtenerObjeto('participacion',null).value = '0.0';    
      obtenerObjeto('cargo',null).disabled = true;
      obtenerObjeto('participacion',null).disabled = "true";
    }
  }
}

//------------------------------------------------------------------------------
// Funcion que valida la fecha de nacimiento de la carga familiar para la solicitud
// del nro de informe medico
function ValidarInformeMedico(){
  if (obtenerObjeto('fechaNacimiento','value') != '' && obtenerObjeto('parentesco.codigo','value') == '40') { 
    var parts = obtenerObjeto('fechaNacimiento','value').split('/'); 
    var textDate = new Date(parts[2], parts[1], parts[0]); 
    var mm    = textDate.getMonth(); 
    var bday  = textDate.getDate();
    var byear = textDate.getFullYear();
    if (100 > byear) byear = byear + 1900;
    thedate = new Date();
    mm2 = thedate.getMonth() + 1;
    dd2 = thedate.getDate();
    yy2 = thedate.getFullYear();
    if (byear > yy2) {
      alert("La fecha no es válida");
      obtenerObjeto('fechaNacimiento',null).value = "";
    } else {
      var yourage = yy2 - byear;     
      if (mm > mm2) yourage--;   
      if ((mm2 == mm) && (bday > dd2)) yourage--; 

      radioObj = document.forms[0].elements["radioinforme"];
      informeMedico = obtenerObjeto('nroInformeMedico',null);
    
      if (yourage > 25) { 
         informeMedico.value = "";
         radioObj[0].disabled = true;
         radioObj[1].disabled = null;          
      } else {
          if ((yourage < 25 || yourage == 25) && (yourage > 18 || yourage == 18)) {
              informeMedico.value = "";
              radioObj[0].disabled = null;
              radioObj[1].disabled = null;          
          } else {
              informeMedico.value = "NO APLICA";
              radioObj[0].disabled = true;
              radioObj[1].disabled = true;
          }
		  }
    }
	} else {
    obtenerObjeto('nroInformeMedico',null).value = "NO APLICA";
    radioObj = document.forms[0].elements["radioinforme"];
    radioObj[0].disabled = true;
    radioObj[1].disabled = true;    
  }
}

     
//------------------------------------------------------------------------------
//Funcion que abre la ventana de imprimir comprobante
function imprimirComprobante(){
      alert("Asegurese de tener encendida y conectada su impresora, ya que esta página se cerrara al finalizar la impresión");
      window.print();
      parent.close();
}//imprimirComprobante


function buscarExpediente(idContribuyente){
  obtenerObjetoFormulario('expidcontribuyente',null,'1').value= idContribuyente;
  document.forms[1].submit();
}

//Funcion que activa y desactiva objetos en la clasificacion
function ActivarClasificacion() {
  	var retorno = true;  

    obtenerObjeto('nroRegistro',null).value = "";
    obtenerObjeto('nroGaceta',null).value = "";
    obtenerObjeto('fechaGaceta',null).value = "";
    obtenerObjeto('nroResolucion',null).value = "";
    obtenerObjeto('fechaResolucion',null).value = "";

    if (obtenerObjeto('tipoAuxiliar.codigo',null).value == '') {   // AGENTE DE ADUANAS
      obtenerObjeto('nroRegistro',null).className         = 'inactivo';
		  obtenerObjeto('nroGaceta',null).className           = 'inactivo';
		  obtenerObjeto('fechaGaceta',null).className         = 'inactivo';
		  obtenerObjeto('nroResolucion',null).className       = 'inactivo';
      obtenerObjeto('fechaResolucion',null).className     = 'inactivo';
      obtenerObjeto('calendarGaceta',null).className      = 'novisibles';      
      obtenerObjeto('calendarResolucion',null).className  = 'novisibles';
      
      obtenerObjeto('nroRegistro',null).disabled          = "true";
		  obtenerObjeto('nroGaceta',null).disabled            = "true";
		  obtenerObjeto('fechaGaceta',null).disabled          = "true";
		  obtenerObjeto('nroResolucion',null).disabled        = "true";
		  obtenerObjeto('fechaResolucion',null).disabled      = "true";

      obtenerObjeto('labelnumerogaceta',null).value       = 'Número de Gaceta / Comprobante';
      obtenerObjeto('labelfechagaceta',null).value        = 'Fecha de Gaceta / Comprobante'; 
      
     
    } else {
      if (obtenerObjeto('tipoAuxiliar.codigo',null).value == '1') {   // AGENTE DE ADUANAS
        obtenerObjeto('nroRegistro',null).className         = 'activo';
        obtenerObjeto('nroGaceta',null).className           = 'activo';
        obtenerObjeto('fechaGaceta',null).className         = 'activo';
        obtenerObjeto('nroResolucion',null).className       = 'activo';
        obtenerObjeto('fechaResolucion',null).className     = 'activo';
        obtenerObjeto('calendarGaceta',null).className      = 'visibles';
        obtenerObjeto('calendarResolucion',null).className  = 'visibles';
      
        obtenerObjeto('nroRegistro',null).disabled          = null;
        obtenerObjeto('nroGaceta',null).disabled            = null;
        obtenerObjeto('fechaGaceta',null).disabled          = null;
        obtenerObjeto('nroResolucion',null).disabled        = null;
        obtenerObjeto('fechaResolucion',null).disabled      = null;
        obtenerObjeto('calendarGaceta',null).disabled       = null;
        obtenerObjeto('calendarResolucion',null).disabled   = null;

        obtenerObjeto('labelnumerogaceta',null).value       = 'Número de Gaceta';
        obtenerObjeto('labelfechagaceta',null).value        = 'Fecha de Gaceta';  
        
      } else { 
        if (obtenerObjeto('tipoAuxiliar.codigo',null).value == '8') {  // EXPORTADOR
            obtenerObjeto('nroGaceta',null).className           = 'activo';
            obtenerObjeto('fechaGaceta',null).className         = 'activo';
            obtenerObjeto('calendarGaceta',null).className      = 'visibles';
            obtenerObjeto('nroRegistro',null).className         = 'inactivo';
            obtenerObjeto('nroResolucion',null).className       = 'inactivo';
            obtenerObjeto('fechaResolucion',null).className     = 'inactivo';
          
            obtenerObjeto('nroGaceta',null).disabled            = null;
            obtenerObjeto('fechaGaceta',null).disabled          = null;  
            obtenerObjeto('calendarResolucion',null).className  = 'novisibles';
            obtenerObjeto('nroRegistro',null).disabled          = "true";
            obtenerObjeto('nroResolucion',null).disabled        = "true";
            obtenerObjeto('fechaResolucion',null).disabled      = "true";

            obtenerObjeto('labelnumerogaceta',null).value       = 'Número de Comprobante';
            obtenerObjeto('labelfechagaceta',null).value        = 'Fecha de Comprobante'; 
      
        } else {
            obtenerObjeto('nroRegistro',null).className         = 'activo';
            obtenerObjeto('nroResolucion',null).className       = 'inactivo';
            obtenerObjeto('fechaResolucion',null).className     = 'inactivo';
            obtenerObjeto('nroGaceta',null).className           = 'inactivo';
            obtenerObjeto('fechaGaceta',null).className         = 'inactivo';
            obtenerObjeto('calendarGaceta',null).className      = 'novisibles';
            obtenerObjeto('calendarResolucion',null).className  = 'novisibles';
          
            obtenerObjeto('nroRegistro',null).disabled          = null;
            obtenerObjeto('nroResolucion',null).disabled        = "true";
            obtenerObjeto('fechaResolucion',null).disabled      = "true";
            obtenerObjeto('nroGaceta',null).disabled            = "true";
            obtenerObjeto('fechaGaceta',null).disabled          = "true";

            obtenerObjeto('labelnumerogaceta',null).value       = 'Número de Gaceta / Comprobante';
            obtenerObjeto('labelfechagaceta',null).value        = 'Fecha de Gaceta / Comprobante'; 
        }
      }
    }

    return retorno;

}

var dFilterStep
var dFilterMask = '####-#######'

function dFilterStrip (dFilterTemp, dFilterMask)
{
    dFilterMask = replace(dFilterMask,'#','');
    for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
		{
		    dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
		}
		return dFilterTemp;
}

function dFilterMax (dFilterMask)
{
 		dFilterTemp = dFilterMask;
    for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
		{
		 		if (dFilterMask.charAt(dFilterStep)!='#')
				{
		        dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
				}
		}
		return dFilterTemp.length;
}

var isNN = (navigator.appName.indexOf("Netscape")!=-1);

function dFilter (e, textbox)
{
    var key = (isNN) ? e.which : e.keyCode; 
    
   
		dFilterNum = dFilterStrip(textbox.value, dFilterMask);
		
		if (key==9)
		{
		    return true;
		}
		else if (key==8&&dFilterNum.length!=0)
		{
		 	 	dFilterNum = ''; //dFilterNum.substring(0,dFilterNum.length-1);
                                return true;
		}
 	  else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
		{
                var keychar = '';
                
                if(key==48 || key==96) keychar='0';
                else if(key==49 || key==97) keychar='1';
                else if(key==50 || key==98) keychar='2';
                else if(key==51 || key==99) keychar='3';
                else if(key==52 || key==100) keychar='4';
                else if(key==53 || key==101) keychar='5';
                else if(key==54 || key==102) keychar='6';
                else if(key==55 || key==103) keychar='7';
                else if(key==56 || key==104) keychar='8';
                else if(key==57 || key==105) keychar='9';
              
                   dFilterNum=dFilterNum+keychar;
		}

		var dFilterFinal='';
    for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
		{
        if (dFilterMask.charAt(dFilterStep)=='#')
				{
					  if (dFilterNum.length!=0)
					  {
				        dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
					      dFilterNum = dFilterNum.substring(1,dFilterNum.length);
					  }
				    else
				    {
				        dFilterFinal = dFilterFinal + "";
				    }
				}
		 		else if (dFilterMask.charAt(dFilterStep)!='#')
				{
				    dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep); 			
				}
//		    dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
		}


		textbox.value = dFilterFinal;
    return false;
}

function replace(fullString,text,by) {
// Replaces text with by in string
    var strLength = fullString.length, txtLength = text.length;
    if ((strLength == 0) || (txtLength == 0)) return fullString;

    var i = fullString.indexOf(text);
    if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
    if (i == -1) return fullString;

    var newstr = fullString.substring(0,i) + by;

    if (i+txtLength < strLength)
        newstr += replace(fullString.substring(i+txtLength,strLength),text,by);

    return newstr;
}

function trim(cadena){
  for(i=0; i<cadena.length; i++) {
    if(cadena.charAt(i)==" ")
      cadena=cadena.substring(i+1, cadena.length);
    else
      break;
  }

  for(i=cadena.length-1; i>=0; i=cadena.length-1) {
    if(cadena.charAt(i)==" ")
      cadena=cadena.substring(0,i);
    else
      break;
  }
	
  return cadena;
}

function HabilitarEmpresa(){
  if (document.forms[0].elements['tipoSociedad.codigo'].value == '30') {
        document.forms[0].elements['empresa.rif'].disabled = null;
        document.forms[0].elements['empresa.cargo'].disabled = null;
        document.forms[0].elements['profesion.codigo'].disabled = null;
        document.forms[0].elements['fechaCierreFiscal'].disabled = 'true';
        obtenerObjeto('p_calendFC',null).className = 'novisibles';
        var anoActual = new Date().getFullYear();    
        document.forms[0].elements['fechaCierreFiscal'].value = '31/12/'+anoActual;        
  } else {   
      document.forms[0].elements['empresa.rif'].disabled = 'true';
      document.forms[0].elements['empresa.cargo'].disabled = 'true';

      if (document.forms[0].elements['tipoSociedad.codigo'].value == '31') {
            document.forms[0].elements['profesion.codigo'].disabled = null;
            document.forms[0].elements['fechaCierreFiscal'].disabled = null;
            obtenerObjeto('p_calendFC',null).className           = 'visibles';      
      } else {
            document.forms[0].elements['profesion.codigo'].disabled = 'true';  
            document.forms[0].elements['fechaCierreFiscal'].disabled = 'true';
            obtenerObjeto('p_calendFC',null).className           = 'novisibles';
            var anoActual = new Date().getFullYear();    
            document.forms[0].elements['fechaCierreFiscal'].value = '31/12/'+anoActual;
      }
  }
}


function ValidarPatrono(){
  if (document.forms[0].elements['tipoSociedad.codigo'].value == '30') {
/*
      if (trim(document.forms[0].elements['empresa.rif'].value) == '') {
        alert('Debe ingresar el rif de la empresa donde trabaja');
        return false;
      }  

      if (trim(document.forms[0].elements['empresa.cargo'].value) == '') {
        alert('Debe ingresar el cargo que ocupa en la empresa donde trabaja');
        return false;
      }  
*/
      if (document.forms[0].elements['profesion.codigo'].value == '') {
        alert('Debe seleccionar la profesion');
        return false;
      } 
  }
  if (document.forms[0].elements['tipoSociedad.codigo'].value == '31') {
      if (document.forms[0].elements['profesion.codigo'].value == '') {
        alert('Debe seleccionar la profesion');
        return false;
      } 
  }
  return true;  
}

function buscarFormulario(url){
    if (window.XMLHttpRequest){ // Non-IE browsers
      req = new XMLHttpRequest();
      req.onreadystatechange = processStateChange;
      try{
          req.open("GET", url, true);
      } 
      catch (e){
          alert(e);
      }
      req.send(null);
    }
    else{
      if (window.ActiveXObject){ // IE
        req = new ActiveXObject("Microsoft.XMLHTTP")  ;
        if (req){
          req.onreadystatechange = processStateChange;
          req.open("GET", url, true);
          req.send();
        }
      }
    }
  }

function processStateChange(){
  if (document.getElementById){
    document.getElementById(formulario).style.visibility = "visible";
  }
  if (req.readyState == 4){ // Complete  
    if (req.status == 200){ // OK response
      document.getElementById(formulario).innerHTML = req.responseText; 
    }
    else{
      alert("Problema: " + req.statusText);
    }
  }
}

function buscarDivisiones(){
   var selectGrupos     = window.parent.document.forms[0].elements["registroMercantil.grupoActividadEconomica.codigo"];
   var selectDivisiones = window.parent.document.forms[0].elements["registroMercantil.divisionActividadEconomica.codigo"];
   var selectClases     = window.parent.document.forms[0].elements["registroMercantil.claseActividadEconomica.codigo"];
   var selectActividadesGen = window.parent.document.forms[0].elements["registroMercantil.actividadEconomicaGeneral.codigo"];
   var selectActividadesEsp = window.parent.document.forms[0].elements["registroMercantil.actividadEconomicaEspecifica.codigo"];
   
   if (selectDivisiones != null && selectDivisiones.options != null) {
     selectDivisiones.options.length = 0;
     selectDivisiones.options[0] = new Option();
     selectDivisiones.options[0].value = "";
     selectDivisiones.options[0].text = "Cargando... ";
   }

   if (selectClases != null) selectClases.length = 0;
   if (selectActividadesGen != null) selectActividadesGen.length = 0;
   if (selectActividadesEsp != null) selectActividadesEsp.length = 0;

   var codgrupo = null;
   if (selectGrupos != null) codgrupo = selectGrupos.value;

   var url = contexto+'/buscaractividades.do?combo=25&codgrupo='+codgrupo; 
   formulario = 'comboDivision';
   
   buscarFormulario(url);
}  

function buscarClases(){
   var selectDivisiones = window.parent.document.forms[0].elements["registroMercantil.divisionActividadEconomica.codigo"];   
   var selectClases     = window.parent.document.forms[0].elements["registroMercantil.claseActividadEconomica.codigo"];

   if (selectClases != null && selectClases.options != null) {
     selectClases.options.length = 0;
     selectClases.options[0] = new Option();
     selectClases.options[0].value = "";
     selectClases.options[0].text = "Cargando... ";
   }

   var coddivision = null; 
   if (selectDivisiones != null) coddivision = selectDivisiones.value;

   var url = contexto+'/buscaractividades.do?combo=26&coddivision='+coddivision; 
   formulario = 'comboClase';
   
   buscarFormulario(url); 
}  

function buscarActividadesGen(){
   var selectClases     = window.parent.document.forms[0].elements["registroMercantil.claseActividadEconomica.codigo"];
   var selectActividadGen = window.parent.document.forms[0].elements["registroMercantil.actividadEconomicaGeneral.codigo"];

   if (selectActividadGen != null && selectActividadGen.options != null) {
     selectActividadGen.options.length = 0;
     selectActividadGen.options[0] = new Option();
     selectActividadGen.options[0].value = "";
     selectActividadGen.options[0].text = "Cargando... ";   
   }

   var codclase = null; 
   if (selectClases != null) codclase = selectClases.value;
   
   var url = contexto+'/buscaractividades.do?combo=27&codclase='+codclase; 
   formulario = 'comboActividadGen';
   
   buscarFormulario(url);    
}  

function buscarActividadesEsp(){
   var selectActividadGen = window.parent.document.forms[0].elements["registroMercantil.actividadEconomicaGeneral.codigo"];
   var selectActividadEsp = window.parent.document.forms[0].elements["registroMercantil.actividadEconomicaEspecifica.codigo"];

   if (selectActividadEsp != null && selectActividadEsp.options != null) {
     selectActividadEsp.options.length = 0;
     selectActividadEsp.options[0] = new Option();
     selectActividadEsp.options[0].value = "";
     selectActividadEsp.options[0].text = "Cargando... ";   
   }

   var codactividad = null; 
   if (selectActividadGen != null) codactividad = selectActividadGen.value;
   
   var url = contexto+'/buscaractividades.do?combo=28&codactividad='+codactividad; 
   formulario = 'comboActividadEsp';
   
   buscarFormulario(url);    
}  


function ValidarActividad() {
   var selectActividadEsp = window.parent.document.forms[0].elements["registroMercantil.actividadEconomicaEspecifica.codigo"];

   if (selectActividadEsp != null && selectActividadEsp.options != null && selectActividadEsp.options.length > 1) {
      if (selectActividadEsp.value == '') {
        alert('Debe seleccionar la actividad económica especifica');
        return false;
      } 
   }

   return true;
}


function ValidarFechasCC() {
    var fechaEleccion = window.parent.document.forms[0].elements["registroMercantil.fechaInscripcionReg"];
    var fechaRegistro = window.parent.document.forms[0].elements["registroMercantil.fechaConstitucion"];
    var fechaInicio = window.parent.document.forms[0].elements["registroMercantil.fechaInicioActividad"];
    
    if (validarFechaMayor(fechaEleccion, 'Fecha de Elección', fechaRegistro, 'Fecha de Registro')) {
      if (validarFechaMayor(fechaRegistro, 'Fecha de Registro', fechaInicio, 'Fecha de Inicio')) {
        return true;
      }
    }
    return false;
}

function buscarDivisionesFirma(){
   var selectGrupos     = window.parent.document.forms[0].elements["grupoActividadEconomica.codigo"];
   var selectDivisiones = window.parent.document.forms[0].elements["divisionActividadEconomica.codigo"];
   var selectClases     = window.parent.document.forms[0].elements["claseActividadEconomica.codigo"];
   var selectActividadesGen = window.parent.document.forms[0].elements["actividadEconomicaGeneral.codigo"];
   var selectActividadesEsp = window.parent.document.forms[0].elements["actividadEconomicaEspecifica.codigo"];
   
   if (selectDivisiones != null && selectDivisiones.options != null) {
     selectDivisiones.options.length = 0;
     selectDivisiones.options[0] = new Option();
     selectDivisiones.options[0].value = "";
     selectDivisiones.options[0].text = "Cargando... ";
   }

   if (selectClases != null) selectClases.length = 0;
   if (selectActividadesGen != null) selectActividadesGen.length = 0;
   if (selectActividadesEsp != null) selectActividadesEsp.length = 0;

   var codgrupo = null;
   if (selectGrupos != null) codgrupo = selectGrupos.value;

   var url = contexto+'/buscaractividades.do?firma=S&combo=25&codgrupo='+codgrupo; 
   formulario = 'comboDivision';
   
   buscarFormulario(url);
}  

function buscarClasesFirma(){
   var selectDivisiones = window.parent.document.forms[0].elements["divisionActividadEconomica.codigo"];   
   var selectClases     = window.parent.document.forms[0].elements["claseActividadEconomica.codigo"];

   if (selectClases != null && selectClases.options != null) {
     selectClases.options.length = 0;
     selectClases.options[0] = new Option();
     selectClases.options[0].value = "";
     selectClases.options[0].text = "Cargando... ";
   }

   var coddivision = null; 
   if (selectDivisiones != null) coddivision = selectDivisiones.value;

   var url = contexto+'/buscaractividades.do?firma=S&combo=26&coddivision='+coddivision; 
   formulario = 'comboClase';
   
   buscarFormulario(url); 
}  

function buscarActividadesGenFirma(){
   var selectClases     = window.parent.document.forms[0].elements["claseActividadEconomica.codigo"];
   var selectActividadGen = window.parent.document.forms[0].elements["actividadEconomicaGeneral.codigo"];

   if (selectActividadGen != null && selectActividadGen.options != null) {
     selectActividadGen.options.length = 0;
     selectActividadGen.options[0] = new Option();
     selectActividadGen.options[0].value = "";
     selectActividadGen.options[0].text = "Cargando... ";   
   }

   var codclase = null; 
   if (selectClases != null) codclase = selectClases.value;
   
   var url = contexto+'/buscaractividades.do?firma=S&combo=27&codclase='+codclase; 
   formulario = 'comboActividadGen';
   
   buscarFormulario(url);    
}  

function buscarActividadesEspFirma(){
   var selectActividadGen = window.parent.document.forms[0].elements["actividadEconomicaGeneral.codigo"];
   var selectActividadEsp = window.parent.document.forms[0].elements["actividadEconomicaEspecifica.codigo"];

   if (selectActividadEsp != null && selectActividadEsp.options != null) {
     selectActividadEsp.options.length = 0;
     selectActividadEsp.options[0] = new Option();
     selectActividadEsp.options[0].value = "";
     selectActividadEsp.options[0].text = "Cargando... ";   
   }

   var codactividad = null; 
   if (selectActividadGen != null) codactividad = selectActividadGen.value;
   
   var url = contexto+'/buscaractividades.do?firma=S&combo=28&codactividad='+codactividad; 
   formulario = 'comboActividadEsp';
   
   buscarFormulario(url);    
}  

function ValidarActividadFirma() {
   var selectActividadEsp = window.parent.document.forms[0].elements["actividadEconomicaEspecifica.codigo"];

   if (selectActividadEsp != null && selectActividadEsp.options != null && selectActividadEsp.options.length > 1) {
      if (selectActividadEsp.value == '') {
        alert('Debe seleccionar la actividad económica especifica');
        return false;
      } 
   }

   return true;
}


