// AJAX DOCUMENT
function nuevoAjax(xmlhttp){
	
	   try {
		   xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} 
	   catch (e) {
		   try {
			 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		  } 
		  catch (E) {
			  xmlhttp = false;
		  }
	   }
	   if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
		  xmlhttp = new XMLHttpRequest();
	   }
	   return xmlhttp
	}


				
//functiones propias y validaciones
function cargarContenido(pagina,destino){
	   var contenedor;
	   var ajax;
	   
	   contenedor = document.getElementById(destino);
	   ajax = nuevoAjax(ajax);
	   ajax.open("GET", pagina, true);
	   ajax.onreadystatechange=function() {
		  if (ajax.readyState==4) {
			 contenedor.innerHTML = ajax.responseText;
		  }
	   }
	   ajax.send(null);
}


function valEmail(valor){
    re=/^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$/
    if(!re.exec(valor))    {
        return false;
    }else{
        return true;
    }
}
    
//de un conjto de controles con el mismo nombre, te devuelve el valor seleccionado.
function mostrar_valor_seleccionado(objeto)
{
           valor=new Array();
 nombres=document.getElementsByName(objeto);
 j=0;
  for(i=0; i<nombres.length;i++)
  	  {
		  if(nombres[i].checked)
                  {  valor[j]=nombres[i].value ;
                     j=j+1 ;}
	  } return valor;
}

    
function mostrar_etiqueta(objeto,valorfiltro,etiqueta)
{
	valor=mostrar_valor_seleccionado(objeto) ;
	div=document.getElementById(etiqueta)
	if(valor==valorfiltro){
		div.style.display='block' ;
	} else {
		div.style.display='none' ;
	}
}

function mostrar_etiquetas(objeto,valorfiltro,etiquetas,etiquetasel)
{
	valor=mostrar_valor_seleccionado(objeto) ;
        etiquetas=etiquetas.split(',') ;
          i=0;
           for(i=0;i<etiquetas.length;i++) { 
                div=document.getElementById(etiquetas[i]);
                //if(valor-1==i) div.style.display='block' ;
                 div.style.display='none' ;
           }
             div=document.getElementById(etiquetasel);
             div.style.display='block' ;
}

//modificado del anterior
function mostrar_dosetiquetas(objeto,valorfiltro,etiqueta,etiqueta1)
{
	valor=mostrar_valor_seleccionado(objeto) ;
	if(valor==valorfiltro){
		etiqueta.style.display='block' ;
		etiqueta1.style.display='none' ;
	} else {
		etiqueta.style.display='none' ;
		etiqueta1.style.display='block' ;
	}
}

//coloca un objeto(control o arreglo de controles) a un valor  de una propiedad, predeterminadas
//ColocarValorObjeto('TABRE,TABDP,TABFP,TABEL,TABID','TABFP','tab','className');
//ColocarValorObjeto(tabmuestra,'tabsel','className') ;
function ColocarValorObjeto(Objeto,Valor,Propiedad,TipObjeto,NroItems,Indice){
	switch(TipObjeto)
	{
	case 'TEXT':
	break;
	case 'CHECKBOX':
	break;
	case 'SELECT':
	break;
	case 'RADIO':
		if(Propiedad!=undefined && Propiedad!='undefined' &&  Propiedad!='')
		{	
			if(Valor==true || Valor==false)
			{			
				if (document.getElementsByName(Objeto)!=null)
				{
					var ctrl=document.getElementsByName(Objeto);
					eval("ctrl["+Indice+"]."+Propiedad+"="+Valor);
				}
				else if(document.getElementById(Objeto)!=null)
				{
					var ctrl=document.getElementById(Objeto);
					eval("ctrl["+Indice+"]."+Propiedad+"="+Valor);				
				}
			}
			else
			{
				if (document.getElementsByName(Objeto)!=null)
				{
					var ctrl=document.getElementsByName(Objeto);
					eval("ctrl["+Indice+"]."+Propiedad+"='"+Valor+"'");
				}
				else if(document.getElementById(Objeto)!=null)
				{
					var ctrl=document.getElementById(Objeto);
					eval("ctrl["+Indice+"]."+Propiedad+"='"+Valor+"'");				
				}
			}
		}
		else
		{
			if (document.getElementsByName(Objeto)!=null)
			{
				var ctrl=document.getElementsByName(Objeto);
					ctrl.value=Valor;
			}
			else if(document.getElementById(Objeto)!=null)
			{
				var ctrl=document.getElementById(Objeto);
					ctrl.value=Valor;
			}			
		}
	
	break;	
	default:

		var a=new Array();
		a=CadenaConvertirArreglo(Objeto,',');
		for (x=0;x<a.length;x++)
		{
			Objeto=a[x];
			if(Propiedad!=undefined && Propiedad!='undefined' &&  Propiedad!=''){
				if(Valor==true || Valor==false)
				{
					if(document.getElementById(Objeto)!=null)
						eval("document.getElementById('"+Objeto+"')."+Propiedad+"="+Valor);
					else if (document.getElementsByName(Objeto)!=null && document.getElementsByName(Objeto).value!=undefined)
						eval("document.getElementsByName('"+Objeto+"')."+Propiedad+"="+Valor);
				}
				else
				{
					if(document.getElementById(Objeto)!=null)
						eval("document.getElementById('"+Objeto+"')."+Propiedad+"='"+Valor+"'");
					else if (document.getElementsByName(Objeto)!=null && document.getElementsByName(Objeto).value!=undefined)
						eval("document.getElementsByName('"+Objeto+"')."+Propiedad+"='"+Valor+"'");
				}
			}
			else
			{
				if(document.getElementById(Objeto)!=null)
					document.getElementById(Objeto).value=Valor;		
				else if (document.getElementsByName(Objeto)!=null)
					document.getElementsByName(Objeto).value=Valor;
			}
		}
	break;	
	}
}
//Convierte en un array una cadena
function CadenaConvertirArreglo(cadena,parametro){
	var temp=""+cadena;
	if(temp.length>0)
	{	
	  	var a = new Array();
		var pos=temp.indexOf(parametro);
		var len=parametro.length;
		while(pos!=-1){
			a.push(temp.substring(0, pos));
			pos=parseInt(pos)+parseInt(len);
			temp = "" + temp.substring(pos,temp.length);
			pos=temp.indexOf(parametro);
		}
		a.push(temp.substring(0,temp.length));
	}
	return a;
}

function onlyLetras(e) {
var key = (isIE) ? window.event.keyCode : e.which;
var obj = (isIE) ? event.srcElement : e.target;
var isNum = ((key > 64 && key < 91) || (key > 96 && key < 123) || (key==165) || (key==164) || (key==32)) ? true:false;
window.event.keyCode = (!isNum && isIE) ? 0:key;
e.which = (!isNum && isNS) ? 0:key;
return (isNum);
}

function mostrardiv(accion,id){
           if(accion==1)         document.getElementById(id).style.display='block';
           else                  document.getElementById(id).style.display='none';
}

function FocoNoFoco(opcion,Campo){ 
   bfs=ObtenerValorObjeto("bfs");
   ffs=ObtenerValorObjeto("ffs");
   ffns=ObtenerValorObjeto("ffns");
   bfns=ObtenerValorObjeto("bfns");
	if(opcion==1){
		ColocarValorObjeto(Campo,ffs,'style.background');		
	}
	else{
		ColocarValorObjeto(Campo,ffns,'style.background');		
	}
}

function convertirMayusculas(){
    var caracter = String.fromCharCode(event.keyCode);
    caracter = caracter.toUpperCase();
    event.keyCode = caracter.charCodeAt(0);

    return true;
}

function filtrar_tabla(texto,tabla){
	texto=texto.toLowerCase();
    table = $(tabla);
            for (var r = 1; r < table.rows.length; r++){
            ele = table.rows[r].innerHTML.replace(/<[^>]+>/g,"");
            if (ele.toLowerCase().indexOf(texto)>=0 )
                table.rows[r].style.display = '';
            else table.rows[r].style.display = 'none';           
            }
}   


function cerrar_ventana(ventana){
	window.close(ventana);
}

function mostrar_universidadxpais(id){
	 $('div_revalidacion').style.display='none' ; $('div_reconocimiento').style.display='none'; 
	if(id!=1) { $('div_revalidacion').style.display='block' ; $('div_reconocimiento').style.display='block'; }
	mostrar_entidad('mostrar-universidad','universidad-pais',id)
}

function cadenasincero(string){
var str="";
var i=-1;
while(string.charAt(++i)==0);
// en "i" esta el indice del primer caracter no igual a cero
str=string.substring(i,string.length);
return str;
} 
//Verifica que en un arreglo  de objetos no contengan cadenas vacias
function validarVacio(array){
	var control,est=true,cad='';
	for(i=0;i<array.length;i++){
		control = document.getElementById(array[i]);
		control.style.backgroundColor="#ffffff";
		     
                if(control.value==''){
			control.style.backgroundColor="#ff0000";
			est=false;
		} 
	}
           return est;   
}

function soloNumeros(evento){
	var key; 
         
    if(window.event){ 
	    key = evento.keyCode; 
        if ((key < 48 || key > 57) && key != 8) { 
	        window.event.keyCode=0; 
            return false; 
        } 
    } else if(evento.which){ 
	    key = evento.which; 
        if ((key < 48 || key >  57) && key != 8){ 
	        return false; 
        } 
    } 
    return true; 
}
function abrir_ventana(src,nomb_ventana,ancho,alto)
	   { 
	     popup = window.open(src,nomb_ventana,'width=' + ancho + ',height='+ alto) ;

	     popup.focus() ;
	   }
//comparar valores fechas

function esDigito(sChr){ 
    var sCod = sChr.charCodeAt(0); 
    return ((sCod > 47) && (sCod < 58)); 
   } 

   function valSep(oTxt){ 
    var bOk = false; 
    bOk = bOk || (($(oTxt).value.charAt(2) == "-") && ($(oTxt).value.charAt(5) == "-")); 
    bOk = bOk || (($(oTxt).value.charAt(2) == "/") && ($(oTxt).value.charAt(5) == "/")); 
    return bOk; 
   } 

   function finMes(oTxt){ 
    var nMes = parseInt($(oTxt).value.substr(3, 2), 10); 
    var nAno = parseInt($(oTxt).value.substr(6), 10); 
    var nRes = 0; 
    switch (nMes){ 
     case 1: nRes = 31; break; 
     case 2: nRes = 28; break; 
     case 3: nRes = 31; break; 
     case 4: nRes = 30; break; 
     case 5: nRes = 31; break; 
     case 6: nRes = 30; break; 
     case 7: nRes = 31; break; 
     case 8: nRes = 31; break; 
     case 9: nRes = 30; break; 
     case 10: nRes = 31; break; 
     case 11: nRes = 30; break; 
     case 12: nRes = 31; break; 
    } 
    return nRes + (((nMes == 2) && (nAno % 4) == 0)? 1: 0); 
   } 

   function valDia(oTxt){ 
    var bOk = false; 
    var nDia = parseInt($(oTxt).value.substr(0, 2), 10); 
    bOk = bOk || ((nDia >= 1) && (nDia <= finMes(oTxt))); 
    return bOk; 
   } 

   function valMes(oTxt){ 
    var bOk = false; 
    var nMes = parseInt($(oTxt).value.substr(3, 2), 10); 
    bOk = bOk || ((nMes >= 1) && (nMes <= 12)); 
    return bOk; 
   } 

 function valAno(oTxt){ 
    var bOk = true; 
    var nAno = $(oTxt).value.substr(6); 
    bOk = bOk && ((nAno.length == 2) || (nAno.length == 4)); 
    if (bOk){ 
     for (var i = 0; i < nAno.length; i++){ 
      bOk = bOk && esDigito(nAno.charAt(i)); 
     } 
    } 
    return bOk; 
   } 

 function valFecha(oTxt){ 
    var bOk = true; 
    if (oTxt.value != ""){ 
     bOk = bOk && (valAno(oTxt)); 
     bOk = bOk && (valMes(oTxt)); 
     bOk = bOk && (valDia(oTxt)); 
     bOk = bOk && (valSep(oTxt)); 
     return bOk; 
    } 
   } 

   function fechaMayorOIgualQue(fec0, fec1){ 
    var bRes = false; 
    var sDia0 = fec0.value.substr(0, 2); 
    var sMes0 = fec0.value.substr(3, 2); 
    var sAno0 = fec0.value.substr(6, 4); 
    var sDia1 = fec1.value.substr(0, 2); 
    var sMes1 = fec1.value.substr(3, 2); 
    var sAno1 = fec1.value.substr(6, 4); 
    if (sAno0 > sAno1) bRes = true; 
    else { 
     if (sAno0 == sAno1){ 
      if (sMes0 > sMes1) bRes = true; 
      else { 
       if (sMes0 == sMes1) 
        if (sDia0 >= sDia1) bRes = true; 
      } 
     } 
    } 
    return bRes; 
   } 

 function valFechas(obj1,obj2){
      if(obj1.value!='' || obj2.value!='') {
                   var bOk = false;  
                   if (valFecha(obj1)){ 
                    if (valFecha(obj2)){ 
                     if (fechaMayorOIgualQue(obj2, obj1)){ 
                             bOk = true; 
                             return "ok"; 
                           } else {  return "fall"; 
                            obj2.focus(); 
                          } 
                    } else { 
                      return "fall"; 
                     obj1.focus(); 
                    } 
                   } else { 
                          return "fall"; 
                           obj1.focus(); 
                   }
       }
   } 
function mostrar_opciones(tabmuestra,objeto,evento,key) { 
   ColocarValorObjeto('TABDG,TABR,TABFA,TABSE,TABFF','tab','className');
    ColocarValorObjeto(tabmuestra,'tabsel','className') ;
    ColocarValorObjeto('DATOS_GENERALES,RESIDENCIA,FORMACION_ACADEMICA,SEGUNDA_ESPECIALIDAD,FOTO_FIRMA','none','style.display');

switch(tabmuestra){	
    case 'TABDG':	ColocarValorObjeto("DATOS_GENERALES",'block','style.display');  	break;
    case 'TABR': 	ColocarValorObjeto("RESIDENCIA",'block','style.display');  	break ;
    case 'TABCL':  	ColocarValorObjeto("CENTRO_LABORAL",'block','style.display');	break ;
    case 'TABFA':	ColocarValorObjeto("FORMACION_ACADEMICA",'block','style.display'); break ;
    case 'TABSE':	ColocarValorObjeto("SEGUNDA_ESPECIALIDAD",'block','style.display'); break ;
    case 'TABFF': 	ColocarValorObjeto("FOTO_FIRMA",'block','style.display');  	break ;     
    }    
}

function uncheck_all(){
	count = document.forms.form.elements.length;
  for (i=0; i < count; i++)
    if(document.forms.form.elements[i].checked == 1)
      document.forms.form.elements[i].checked = 0;
    else
      document.forms.form.elements[i].checked = 1;
}

function validar_mail(txt){
	var control=document.getElementById(txt);
	var est=true;
	var s = control.value;
	var filter=/^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,3})$/;
        	
	if (s.length == 0 ) est=false;
	if (!filter.test(s)) est=false;
	
	return est;
}


function validarPage(nom){
	var est=false;
	control = document.getElementById(nom);
	var url=control.value;
	
	control.style.backgroundColor="#ffffff";
	//cad=control.name + '_span';
	//document.getElementById(cad).innerHTML="";
	
	var re=/'/;
	
	if(!re.exec(url)) {
		control.style.backgroundColor="#ff0000";
		//document.getElementById(cad).innerHTML="<font color='#ff0000'>*</font>";
		est=true;
	}
	
	return est;
}

function replaceChars(entry) {
//out = "'"; // reemplazar la letra a
out=Array("'","#");
add = ""; // por la letra z
//temp = "" + entry;
resp=Array();
charx='';
for(j=0;j<out.length;j++){
           charx=out[j];
           for(i=0;i<entry.length;i++){ 
                  if(j>0)  temp= resp[i];
                  else temp = "" +document.getElementById(entry[i]).value; //alert('item'+temp);
                   while (temp.indexOf(charx)>-1) {
                      pos= temp.indexOf(charx);
                      temp= "" + (temp.substring(0, pos) + add + 
                      temp.substring((pos + charx.length), temp.length));
                      } resp[i]=temp;
                  // alert('respuesta'+i+' : '+resp[i]) ;  
           }  
}

return resp ;
//document.subform.text.value = temp;
}



