<!--
// JavaScript Document





function cerrarExito(){
  limpiarDiv('div-msj-exito');
  esconderElemento('div-exito');
}

function cerrarError(){
  limpiarDiv('div-msj-error');
  esconderElemento('div-error');
}

function cerrarAlerta(){
  limpiarDiv('div-msj-alerta');
  esconderElemento('div-alerta');
}

function mostrarError(msj){
  inyectarHtml('div-msj-error', msj);
  mostrarElemento('div-error');
}

function mostrarAlerta(msj){
  inyectarHtml('div-msj-alerta', msj);
  mostrarElemento('div-alerta');
}

function mostrarExito(msj){
  inyectarHtml('div-msj-exito', msj);
  mostrarElemento('div-exito');
}


function cerrarConfirmacion(){
  escondeElementos('div-bgConfirmacion', 'div-confirmacion');
}



function trim(myString){
return myString.replace(/^\s+/g,'').replace(/\s+$/g,'');
}


function irPagina(url){
  location.replace(url);
}


function vacio(q) {    //q == value
  var caracteres = 0;
  for (var i=0; i<q.length; i++ ) {  
    if(q.charAt(i) != " " ) caracteres++
  }  
  return caracteres;  
}  

function estaVacio(clave, div, nombre){
  var letras = vacio(clave)
  if(clave == '' || clave == 'undefined' || clave == null || letras == 0){
    div.innerHTML = 'Debe llenar el campo de ' + nombre;    
    return false;	
  }
  else return true;
}

function existe(nombreElemento){
  var variable_name = getObj(nombreElemento);
  try {
     if (typeof(eval(variable_name)) != 'undefined')
     if (eval(variable_name) != null)
     return true;
  } catch(e) { }
  return false;
}

function trim(myString){
return myString.replace(/^\s+/g,'').replace(/\s+$/g,'');
}

function in_array( what, where ){
 var a = false;  
 for(var i=0;i<where.length;i++){
   if(what == where[i]){
      a=true;
      break;
   }//if
 }//for
 return a;
}//funcion


function getObj(nombreItem){
  return document.getElementById(nombreItem);
}

function getVal(nombreItem){
  if(!existe(nombreItem)) alert(nombreItem);
  else{
    var valor = document.getElementById(nombreItem).value;
    if(valor == 'undefined') valor = '';
    return valor;
  }
}

function getCont(nombreItem){
  return document.getElementById(nombreItem).innerHTML;
}

function getEstilo(nombreItem){
  return document.getElementById(nombreItem).className;
}


function valorRadio(objeto){
  var x = '';
  var elemento = document.getElementsByName(objeto);
  for(var a=0; a<elemento.length; a++){
    if(elemento[a].checked == true) x = elemento[a].value;
  }//for
  return x;
}//esRadio


function setRadio(objeto, valor){
  var elemento = document.getElementsByName(objeto);
  for(var a=0; a<elemento.length; a++){
    if(elemento[a].value == valor) elemento[a].checked = true;
    else elemento[a].checked = false;
  }//for
}//esRadio



function cambiarValue(nombreElemento, valor){
  document.getElementById(nombreElemento).value = valor;
}

function cambiarEstilo(obj, estilo){
  //obj.setAttribute('class', estilo);
  obj.className = estilo;
}

function cambiarSrc(nombreElemento, url){
  var obj = getObj(nombreElemento);
  obj.src = url;
}


function cambiarZindez(nombreElemento, zindex){
  var obj = getObj(nombreElemento);
  obj.style.zIndex = zindex;
}


function esconderElemento(nombreElemento){
  var elementoEsconder=document.getElementById(nombreElemento);
  elementoEsconder.style.display="none";
  //elementoEsconder.setAttribute('display','none');
}
	
function mostrarElemento(nombreElemento){
  var elementoMostrar = document.getElementById(nombreElemento);
  elementoMostrar.style.display="block";
}

function desplegarElemento(nombreMostrar, nombreEsconder){
  mostrarElemento(nombreMostrar);
  esconderElemento(nombreEsconder);
}

function escondeElementos(){//lenght argumentos
  var tope = arguments.length;
  for(var i=0; i<tope; i++){
      esconderElemento(arguments[i]);
  }//for
}//funcion

function muestraElementos(){//lenght argumentos
  var tope = arguments.length;
  for(var i=0; i<tope; i++){
      mostrarElemento(arguments[i]);
  }//for
}//funcion

function show_hide(nombre_elemento){  
 if(getObj(nombre_elemento).style.display == 'none') 
   mostrarElemento(nombre_elemento);
 else esconderElemento(nombre_elemento);
}//funcion

function deshabilitarElemento(nombreElemento){
  document.getElementById(nombreElemento).disabled=true;
}
	
function habilitarElemento(nombreElemento){
  document.getElementById(nombreElemento).disabled=false;
}

function limpiarValue(){//lenght argumentos
  var tope = arguments.length;
  for(var i=0; i<tope; i++){
    cambiarValue(arguments[i], '');
  }//for
}//funcion

function inicializarValue(){//lenght argumentos
  var tope = arguments.length;
  for(var i=0; i<tope; i++){
    cambiarValue(arguments[i], 0);
  }//for
}//funcion


function esSelect(nombreElemento){
  if(getObj(nombreElemento) == "[object HTMLSelectElement]") return true;
  else return false;
}

function esInput(nombreElemento){
  if(getObj(nombreElemento) == "[object HTMLInputElement]") return true;
  else return false;
}

function valorFrame(frame, input, valor){
  var iframe = document.getElementById(frame);
  var input  = iframe.contentWindow.document.getElementById(input);
  input.value = valor;
}

/*--.-.-.-.-.-.----..-..-.-.-.  CHECKBOX .-.-.-.-.-.-.-.-.-.-.*/
function seleccCheckbox(fila){
 var input = fila.parentNode.getElementsByTagName('INPUT');  //INPUTS DE LA FILA 1ero ES EL CHECK
 if(!input[0].checked) input[0].checked = true;              //SI NO TIENE PALOMA SE LE PONE
 else input[0].checked = false;                              //SI SI SE LE QUITA
}


function seleccTodosChecks(contenedor){
 var cont = getObj(contenedor);
 var input = cont.parentNode.getElementsByTagName('INPUT');
 for(x=0; x<input.length; x++){ 
   if(input[x].type == 'checkbox' && !input[x].checked) input[x].checked = true
 }
}



/*___________________ CREACION DE ELEMENTOS DOM ______________________________________*/
function crearDiv(nombre, clase){
  var div = document.createElement('DIV');
  if(nombre != '' && nombre != 0){
    div.id   = nombre;
    div.name = nombre;
  }//if
  if(clase != '' && clase != 0) div.className = clase;
  return div;
}//  crear div 


function crearInput(nombre, size, type, maxlength, value, clase){
  var input = document.createElement('INPUT');
  input.name = nombre;
  input.id = nombre;
  if(size != '' && size != 0) input.size = size;
  input.type = type;
  if(maxlength != '' && maxlength != 0) input.maxLength = maxlength;
  input.value = value;
  if(clase != '') input.className = clase;
  return input;
}//crearInput

function crearTextArea(nombre, rows, cols, clase){
  var txt = document.createElement('TEXTAREA');
  txt.name      = nombre;
  txt.id        = nombre;
  txt.rows      = rows;
  txt.cols      = cols;
  txt.className = clase;
  return txt;
}//creartxtArea

function crearImagen(nombre, src, clase, ayuda){
  var img = document.createElement('IMG');
  img.name      = nombre;
  img.id        = nombre;
  img.src       = src;
  img.className = clase;
  img.title     = ayuda;
  img.alt       = ayuda;
  return img;
}//crearImagen


/*------------------------------- ALERTS  ------------------------*/
function crearAlert(div, posicion, mensaje){
  quitarAlert(div);
  var divPadre = getObj(div);
  if(getObj(div+'_alert') == null){
     var divPpal  = crearDiv(div+'_alert', 'alert-'+posicion);
     divPadre.appendChild(divPpal);
     var divEsquina = crearDiv('', 'flecha-'+posicion);
     divPpal.appendChild(divEsquina);
     var divCuadrado = crearDiv('', 'bordeado caja '+posicion);
     if(posicion == "abajo") divCuadrado.style.width="200px"; 
     divPpal.appendChild(divCuadrado);
     divCuadrado.innerHTML = mensaje;
  }//if
}//crear alert

function quitarAlert(div){
  if(getObj(div+'_alert') != null){//si existe el alert
    var divPadre = getObj(div);
    var divAlert = getObj(div+'_alert');
    divPadre.removeChild(divAlert);
  }
}


function limpiarAlerts(){
  var tope = arguments.length;
  for(var i=0; i<tope; i++){
   quitarAlert(arguments[i]);
  }//for
}


/*------------------------------- FIlAS  ------------------------*/
function filasNormales(objeto, contenedor, esitlo_activo){ 
 var estilo;
 var cont  = getObj(contenedor);  
 var fila  = cont.getElementsByTagName('DIV')
 
 for(x=0; x<fila.length; x++){ 
   estilo = fila[x].className.split(" ");
   if(estilo[1] == esitlo_activo) fila[x].className = estilo[0];
 } 
 
 if(objeto != ''){
   var clase = objeto.className.split(" ");
   objeto.className = clase[0] + " " + esitlo_activo;
 }//if hay objeto
}//funcion



function contarFilas(contenedor, clase){
  var filas = 0;
  for(var x=0; x< contenedor.getElementsByTagName('DIV').length; x++){ 
    if(contenedor.getElementsByTagName('DIV').item(x).className == clase) filas++;
  }//for
  return filas;
}


function reestablecerIdFilas(contenedor, id, clase){
 var i = 1;
 for(var x=0; x< contenedor.getElementsByTagName('DIV').length; x++){ 
  if(contenedor.getElementsByTagName('DIV').item(x).className == clase){
     contenedor.getElementsByTagName('DIV').item(x).id = id + i;
     i++;
  }//if
 }//for
}//funcion



function limpiarFilaNva(fila){ 
 for(var x=0; x< fila.getElementsByTagName('INPUT').length; x++){ 
    fila.getElementsByTagName('INPUT').item(x).value = '';
 }//for  
 
 for(var x=0; x< fila.getElementsByTagName('SELECT').length; x++){ 
    fila.getElementsByTagName('SELECT').item(x).value = '';
 }//for  
}



function agregarFila(fila, contenedor, prefijo, clase, limite, funcion){
 var abuelo    = getObj(contenedor);          //div que contiene las filas
 var num_filas = contarFilas(abuelo, clase);
 
 if(num_filas < limite){
    
   //sacamos el numero que le va a corresponeder a la nueva fila
   var id  = fila.id.split("_");
   var num = parseInt(id[1], 10) + 1;
   
   //INSTANCIAS
   var fila_nva  = crearDiv(prefijo + num, clase);
   var contenido = fila.innerHTML;
   fila_nva.innerHTML = contenido;
   limpiarFilaNva(fila_nva);
   
   //Calculamos donde vamos a agregar la nueva fila
   if(num_filas == id[1]) abuelo.appendChild(fila_nva);
   else{
     var existente = getObj(prefijo + num);
     abuelo.insertBefore(fila_nva, existente);
     reestablecerIdFilas(abuelo, prefijo, clase);
   }//else
   
 }//if filas limite
 else mostrarAlerta('No puedes agregar mas de ' + limite + ' elementos.');    
 
 if(funcion != '') funcion();
}//funcion



function eliminarFila(fila, contenedor, prefijo, clase, funcion){
  var abuelo     = getObj(contenedor);         //div que tiene a todas las filas
  var num_filas  = contarFilas(abuelo, clase); //numero de filas del contenedor
  var id = fila.id.split("_");                 //sacamos el numero de fila
  if(num_filas == 1) mostrarAlerta('No puede eliminar todos.');  
  else{
    abuelo.removeChild(fila);
    if(id[1] != num_filas) reestablecerIdFilas(abuelo, prefijo, clase);
  }//else
  
  if(funcion != '') funcion();
}//funcion


-->
