function objetoAjax(){
	var xmlhttp=false;
	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;
}
///////////////////////////////////////////////////////////////////////////
// funcion para validar el email
function verifica_email (emailStr) {
	
	var emailPat=/^(.+)@(.+)$/
	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
	var validChars="\[^\\s" + specialChars + "\]"
	var quotedUser="(\"[^\"]*\")"
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
	var atom=validChars + '+'
	var word="(" + atom + "|" + quotedUser + ")"
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

	var matchArray=emailStr.match(emailPat)
	if (matchArray==null) {
		alert("La dirección de correo parece invalida (comprobar @ y dominio)")
		return false
	}
	
	var user=matchArray[1]
	var domain=matchArray[2]

	if (user.match(userPat)==null) {
    	// user is not valid
	    alert("El usuario no parece ser valido.")
    	return false
	}

	var IPArray=domain.match(ipDomainPat)
	if (IPArray!=null) {
    	// this is an IP address
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
	    	    alert("IP de destino incorrecta.")
			return false
		}
    }
    return true
}

	var domainArray=domain.match(domainPat)
	if (domainArray==null) {
		alert("El dominio no parece ser valido.")
	    return false
	}

	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length<2 || 
    	domArr[domArr.length-1].length>3) {
	   // the address must end in a two letter or three letter word.
	   alert("La dirección debe terminar con un dominio de 3 letras, o un nombre de pais de dos letras.")
	   return false
	}

	if (len<2) {
		var errStr="¡A esta dirección le falta un nombre de host (dominio.)!"
		alert(errStr)
		return false
	}

	return true;
}

///valida que solo sean valores numericos
function solo_num(valor){ 
	if ( isNaN(valor.value) ){
        alert("Debe poner valores numéricos.")
		valor.value = 0
		valor.focus()
		return false
	}
}
///valida que solo sean valores cadena
function solo_cadena(valor){
	
	var er_valor = /^([a-z]|[A-Z]|á|é|í|ó|ú|ñ|ü|\s|\.|-)+$/;            //letras, '.' y '-' o vacio
	valor.value = valor.value.toUpperCase();
	
	//comprueba campo de texto
    if(!er_valor.test(valor.value)) {    
        alert('Contenido del campo no válido, solo caracteres de la A - Z.');
		valor.value = '';
		valor.focus();
        return false;
    }
	
}
///////////////////////////////////////////////////////////
//funcion para validar la longitud de la cadena si es vacia
function vacio(q) {   

	for ( i = 0; i < q.length; i++ ) {   
		if ( q.charAt(i) != " " ) {   
			return true   
		}   
	}   
	return false
	
}
//////////////////////////////////////////////
//cargar pagina ajax
function cargar_pagina(page,datos,div){
	
	//donde se mostrará lo resultados
	//div = document.getElementById('datos');
	div.innerHTML= '<center><img src="imagenes/2009/cargando.gif"></center>';
	
	//instanciamos el objetoAjax
	ajax=objetoAjax();
	//usando del medoto POST
	ajax.open("POST", page);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar los nuevos registros en esta capa
			div.innerHTML = ajax.responseText;
			//una vez actualizacion ocultamos formulario
			div.style.display="block";

		}
	}
	//muy importante este encabezado ya que hacemos uso de un formulario
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
	ajax.send(datos);
	
}

function Pagina(nropagina){
	//donde se mostrará los registros
	divContenido = document.getElementById('contenido');
	
	ajax=objetoAjax();
	//uso del medoto GET
	//indicamos el archivo que realizará el proceso de paginar
	//junto con un valor que representa el nro de pagina
	ajax.open("GET", "controles/noticias.php?pag="+nropagina);
	divContenido.innerHTML= '<center><img src="imagenes/2009/cargando.gif"></center>';
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar resultados en esta capa
			divContenido.innerHTML = ajax.responseText
		}
	}
	//como hacemos uso del metodo GET
	//colocamos null ya que enviamos 
	//el valor por la url ?pag=nropagina
	ajax.send(null)
}

///////////////////////////////////////////////////
///aqui hacemos la paginacion de resultados
function Pagina_m(nropagina,tabla,where,campo){
	//donde se mostrará los registros
	divContenido = document.getElementById('tabla_paginada');
	
	ajax=objetoAjax();
	//uso del medoto GET
	//indicamos el archivo que realizará el proceso de paginar
	//junto con un valor que representa el nro de pagina
	ajax.open("GET", "controles/paginador.php?pag="+nropagina+"&opcion="+tabla+"&where="+where+"&campo="+campo);
	divContenido.innerHTML= '<center><img src="imagenes/2010/loader.gif"></center>';
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar resultados en esta capa
			divContenido.innerHTML = ajax.responseText
		}
	}
	//como hacemos uso del metodo GET
	//colocamos null ya que enviamos 
	//el valor por la url ?pag=nropagina
	ajax.send(null)
}

function consultar_fechas_bd(F,tipo){
	
	try {
		
		fecha1 = document.form1.fecha1.value
		fecha2 = document.form1.fecha2.value
		
		if ( vacio(fecha1) == false ){
			alert ("La fecha de inicio no fue seleccionada")
			return false
		} else if ( vacio(fecha2) == false ) {
			alert("La fecha fin no fue seleccionada")
			return false
		} else if ( compare_fechas(fecha2,fecha1) == 1 ){
			alert("La fecha de inicio debe ser mayor que la fecha final")
			return false
		} else {
		
			var div = document.getElementById('tabla_paginada');
			
			var datos = "consulta=bd_valores&f1="+fecha1+"&f2="+fecha2+"&tipo="+tipo
			
			cargar_pagina("controles/busqueda.php",datos,div)
			
			return false
			
		}
		
		return false
		
	}
	
	catch(er) {
  		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		return false
	}
	
}

function envio_email(){
	//donde se mostrará lo resultados
	divusu = document.getElementById('resultados');
	divFormulario = document.getElementById('formulario');
	divusu.innerHTML= '<center><img src="imagenes/2009/cargando.gif"></center>';
	
	to=document.form_mail.to.value;
	from=document.form_mail.from.value;
	name=document.form_mail.name.value;
	lastname=document.form_mail.lastname.value;
	phone=document.form_mail.phone.value;
	subject=document.form_mail.subject.value;
	message=document.form_mail.message.value;
	
	//instanciamos el objetoAjax
	ajax=objetoAjax();
	//usando del medoto POST
	ajax.open("POST", "controles/sendmail.php");
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar los nuevos registros en esta capa
			divusu.innerHTML = ajax.responseText
			//una vez actualizacion ocultamos formulario
			divFormulario.style.display="block";

		}
	}
	//muy importante este encabezado ya que hacemos uso de un formulario
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
	ajax.send("to="+to+"&from="+from+"&name="+escape(name)+"&lastname="+escape(lastname)+"&phone="+phone+"&subject="+escape(subject)+"&message="+escape(message));
}

function registro_atencion_usuarios(){

	try{
		
		nombre		= document.form_rweb.nombre.value
		apellido	= document.form_rweb.apellido.value
		correo		= document.form_rweb.correo.value
		tel			= document.form_rweb.tel.value
		consulta	= document.form_rweb.consulta.value
		
		captcha		= document.form_rweb.captcha.value
		
		if( vacio(nombre) == false ){
			alert("El campo Nombres, no puede quedar en blanco, por favor verifique")
			form_rweb.nombre.focus()
			return false
		} else if ( vacio(apellido) == false ) {
			alert("El campo Apellidos, no puede quedar en blanco, por favor verifique")
			form_rweb.apellido.focus()
			return false
		} else if ( vacio(correo) == false ) {
			alert("El campo E-mail, no puede quedar en blanco, por favor verifique")
			form_rweb.correo.focus()
			return false
		} else if ( verifica_email(correo) == false ){
			form_rweb.correo.focus()
			return false
		} else if ( vacio(tel) == false ) {
			alert("El campo No. Teléfono, no puede quedar en blanco, por favor verifique")
			form_rweb.tel.focus()
			return false
		} else if ( vacio(consulta) == false ) {
			alert("El campo Comentario, no puede quedar en blanco, por favor verifique")
			form_rweb.consulta.focus()
			return false
		}  else if ( vacio(captcha) == false ) {
			alert("El campo Captcha, no puede quedar en blanco, por favor verifique")
			form_rweb.captcha.focus()
			return false
		} else {
			guarda_registro_web_usuario(escape(nombre),escape(apellido),correo,tel,escape(consulta),captcha)
			form_rweb.reset()
			return false
		}
		
	}
	
	catch(er) {
  		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		return false
	}
	
}

function guarda_registro_web_usuario(nombre,apellido,correo,tel,consulta,captcha){

	try {
		
		var div = document.getElementById('resultados');
		
		var datos = "consulta="+consulta+"&nom="+nombre+"&ape="+apellido+"&correo="+correo+"&tel="+tel+"&captcha="+captcha
		
		cargar_pagina("controles/registro_web.php",datos,div)
		
		return false
		
	}
	
	catch(er) {
  		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		return false
	}
	
}

function registro_web(){
	//donde se mostrará lo resultados
	divusu = document.getElementById('resultados');
	divFormulario = document.getElementById('formulario');
	divusu.innerHTML= '<center><img src="imagenes/2009/cargando.gif"></center>';
	
	nombre=document.form_rweb.nombre.value;
	apellido=document.form_rweb.apellido.value;
	correo=document.form_rweb.correo.value;
	tel=document.form_rweb.tel.value;
	if (document.form_rweb.e_bancos.checked)
		eb=document.getElementById("e_bancos").value;
	else eb=0;
	if (document.form_rweb.e_valores.checked)
		ev=document.getElementById("e_valores").value;
	else ev=0;
	if (document.form_rweb.e_seguros.checked)
		es=document.getElementById("e_seguros").value;
	else es=0;
	if (document.form_rweb.e_almacenes.checked)
		ea=document.getElementById("e_almacenes").value;
	else ea=0;
	captcha=document.form_rweb.captcha.value;
	
	//instanciamos el objetoAjax
	ajax=objetoAjax();
	//usando del medoto POST
	ajax.open("POST", "controles/registro_web.php");
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4) {
			//mostrar los nuevos registros en esta capa
			divusu.innerHTML = ajax.responseText
			//una vez actualizacion ocultamos formulario
			divFormulario.style.display="block";

		}
	}
	//muy importante este encabezado ya que hacemos uso de un formulario
	ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	//enviando los valores
	ajax.send("nom="+nombre+"&ape="+apellido+"&correo="+correo+"&tel="+tel+"&captcha="+captcha+"&eb="+eb+"&ev="+ev+"&es="+es+"&ea="+ea);
}

function validar_tabla_amortiza(F){

	try{
		
		var plazo_t	= document.form1.plazo_t.options[document.form1.plazo_t.selectedIndex].value
		
		if( vacio(form1.monto.value) == false ){
			alert("El campo Monto, no puede quedar en blanco, por favor verifique")
			form1.monto.focus()
			return false
		} else if ( vacio(form1.interes.value) == false ) {
			alert("El campo Interes, no puede quedar en blanco, por favor verifique")
			form1.interes.focus()
			return false
		} else if ( vacio(form1.plazo.value) == false ) {
			alert("El campo Plazo Meses, no puede quedar en blanco, por favor verifique")
			form1.plazo.focus()
			return false
		} else {
			crea_tabla_amortiza(form1.monto.value,form1.interes.value,form1.plazo.value,plazo_t)
			//form1.reset()
			return false
		}
		
	}
	
	catch(er) {
  		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		return false
	}
	
}

function crea_tabla_amortiza(monto,interes,plazo,plazo_t){

	try {
		
		var div = document.getElementById('tabla_amortiza');
		
		var datos = "monto="+monto+"&plazo_t="+plazo_t+"&interes="+interes+"&plazo="+plazo
		
		cargar_pagina("controles/ate_usuarios.php",datos,div)
		
		return false
		
	}
	
	catch(er) {
  		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		return false
	}
	
}


function listar_sub_opciones(id){

	try {
		
		div = document.getElementById("resultado")
		
		datos = 'AC=1&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}

}

function ver_cuadro_lista(id){

	try {
		
		div = document.getElementById('resultado');
		
		datos = 'AC=2&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}

}

function realizar_busqueda(){

	try {
		
		var div = document.getElementById('tabla_paginada');
		
		var tipo_b = document.form1.Tipo_B.value
		var combo1 = document.form1.cbo1.options[document.form1.cbo1.selectedIndex].value
		var combo2 = document.form1.cbo2.options[document.form1.cbo2.selectedIndex].value
		
		if (combo1 == 0 && combo2 == 0){
			alert ("Debe seleccionar al menos una opción")
		}
		else {
			if (tipo_b == "agentes") datos = 'AC=3&combo1=' + combo1 + '&combo2=' + combo2
			if (tipo_b == "emisores") datos = 'AC=4&combo1=' + combo1 + '&combo2=' + combo2
			if (tipo_b == "puesto_bolsa") datos = 'AC=5&combo1=' + combo1 + '&combo2=' + combo2
			if (tipo_b == "emisiones") datos = 'AC=6&combo1=' + escape(combo1) + '&combo2=' + escape(combo2)
		
			cargar_pagina('controles/valores.php',datos,div)
			
			return false
		
		}
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}
	
}

function ver_info_emisores(id){
	
	try {
		
		div = document.getElementById('tabla_paginada');
		
		datos = 'AC=7&tabla=1&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}
	
}

function ver_central_valores(id){

	try {
		
		div = document.getElementById('tabla_paginada');
		
		datos = 'AC=7&tabla=3&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}

}

function ver_bolsa_valores(id){

	try {
		
		div = document.getElementById('tabla_paginada');
		
		datos = 'AC=7&tabla=3&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}

}

function ver_info_pbolsa(id){

	try {
		
		div = document.getElementById('tabla_paginada');
		
		datos = 'AC=7&tabla=2&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}

}

function ver_informacion(id,opc,tabla){
	
	try {
		
		div = document.getElementById('datos_emisores');
		
		datos = 'tabla=' + tabla + '&AC=8&opc=' + opc + '&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}
	
}

function ver_info_agentes(id){

	try {
		
		div = document.getElementById('resultado');
		
		datos = 'AC=9&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}

}

function ver_calificadora(id){

	try {
		
		div = document.getElementById('resultado');
		
		datos = 'AC=10&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}

}

function ver_info_emisiones(id){
	
	try {
		
		div = document.getElementById('resultado');
		
		datos = 'AC=11&opc=0&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}
	
}

function ver_programa_emision(id){
	
	try {
		
		div = document.getElementById('resultado');
		
		datos = 'AC=11&opc=1&id_opc=' + id
		
		cargar_pagina('controles/valores.php',datos,div)
		
		return false
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}
	
}

function compare_fechas(fecha, fecha2){  

    try {
			
			var f1 = fecha.split('-')
			var f2 = fecha2.split('-')
			
			var Dia = f1[0]
			var Mes = f1[1]
			var Anio = f1[2]
			
			var Dia1 = f2[0]
			var Mes1 = f2[1]
			var Anio1 = f2[2]
			
			var Fecha_1 = new Date(Anio,Mes,Dia)
			var Fecha_2 = new Date(Anio1,Mes1,Dia1)
			
			if (Fecha_1 <= Fecha_2) {
				var txt = "Fecha Menor"
				return 1
			} else {
				var txt = "Fecha Mayor"
				return 0
			}
		
	}
	
	catch(er) {
  		
		if (er.description == null) {
		    alert("Error: " + er.message)
		  } else {
			   alert("Error: " + er.description)
		  }
		
		return false
		
	}
	
}


