// JavaScript Document

//   **************  Funciones para la validación de un formulario **************************
function validaVacios(campo , nombre) {
    var valor = false;
    if (campo.value == '') {
        alert('Por favor especifique ' + nombre);
        campo.focus();
    }
    else {
        valor = true;
    } 
    return valor;
}

function validaSel(campo , nombre) {
    valor = false;
    if (campo.options[campo.selectedIndex].value == 0) {
        alert('Por favor seleccione ' + nombre);
        campo.focus(); 
    }
    else {
        valor = true;
    }
    return valor;
} 

function SoloLetras(campo , nombre_campo){
    var valor = true;  
    var patrontexto = /^[a-z\sáéíóúÁÉÍÓÚñÑ]+$/i;
    obj_elem = eval(campo);
    if (!(patrontexto.test(obj_elem.value))) {
        alert('El campo ' + nombre_campo + ' no  debe contener números');
        campo.focus();
        valor = false;
    }
    return valor;
}

function SoloNumeros(campo, nombre_campo){
    var valor = true;  
    var patronnumerico = /^[0-9]+$/;
    obj_elem = eval(campo);
    if (!(patronnumerico.test(obj_elem.value))){
            alert('El campo ' + nombre_campo + ' solo debe tener números');
            campo.focus();
            valor = false;
    }
    return valor;
}

function confirmaPass(password, confirm) {
    var valor = false;
    if (password.value == confirm.value) {
        valor = true;
    }
    else {
        alert('el password no coincide con la confirmacion de password');
        password.focus();
    }
    return valor;
}

function Email(campo){
  var valor = true;  
  var patroncorreo = /^.+\@.+\..+$/;
  obj_elem = eval(campo);
    if (!(patroncorreo.test(obj_elem.value))) {
        alert('El Email no es válido');
        campo.focus();
        valor = false;
    }
  return valor;
}

function Telefono(campo, nombre_campo){
  var valor = true;
  var patrontelefono = /^[0-9]+$/;
  obj_elem = eval(campo);
     if (!(patrontelefono.test(obj_elem.value))) {
        alert('El ' + nombre_campo + ' no es válido')
        campo.focus();
        valor = false;
    }
    return valor;
}


// *********************************************************************************************
// **********************   Funciones generales *************************************
function loadFecNac(forma)
{
	/* 
		Esta función carga las listas para fechas de nacimiento 
		de los  formularios de solicitud de admisión de cada uno de los programas.
	*/
		var gNow = new Date();
		var dYear = gNow.getFullYear();
		var i = 1;
		
		if(forma == 'frmAdmPos' || forma == 'frmAdmEdu')
			for(dIni = 1950;dIni<=dYear;dIni++)
				window.document.forms[forma].lstYear.options[i++] = new Option(dIni,dIni);
		else if (forma == 'frmAdmBac')
			for(dIni = 1980;dIni<=dYear;dIni++)
				window.document.forms[forma].lstYear.options[i++] = new Option(dIni,dIni);
		else
			for(dIni = 1970;dIni<=dYear;dIni++)
				window.document.forms[forma].lstYear.options[i++] = new Option(dIni,dIni);
		
		var aMes = ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio","Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"];
		for(i=1;i<=aMes.length;i++)
			window.document.forms[forma].lstMes.options[i] = new Option(aMes[i-1],i);
		
		for(i=1;i<=31;i++)
			window.document.forms[forma].lstDia.options[i] = new Option(i,i);
}

function getCP(codPost)
{
	/*	
		Envia el numero de código postal a la pagina para regresar la colonia
		a la que pertenece el código postal escrito
	*/
	var ptnNum = /^[0-9]+$/;
	var wCodPost;
	var strCP = 'infoCodPost.asp?cp=' + codPost
	
	if(codPost == '' || codPost.length < 5)
		alert('Por favor coloque un Código Postal valido');
	else{
    	if (!(ptnNum.test(codPost)))
			alert('El Código Postal solo debe tener números');
		else
			wCodPost = window.open(strCP,'','width=300,height=120');
	}
}

function jumpMenu(idmenu, secc)
{
	/*
		Realiza la carga de la pagina seleccionada el el Quick Link
	*/
	var idop = document.getElementById(idmenu).options[document.getElementById(idmenu).selectedIndex].id;
	var vaop = document.getElementById(idmenu).options[document.getElementById(idmenu).selectedIndex].value;
	//var vaop = accRap.options[accRap.selectedIndex].value;
	//alert(idop + " " + vaop);
	if (idop.search("g") != -1) window.location = vaop;
	if (idop.search("h") != -1) 
	{
		coMenu(vaop);
		return (loadIframe("cont", "./contenido/" + secc + "/" + vaop));
	}
}

function buscar(texto,secc)
{
	//Envia el texto a buscar al motor de busqueda del sitio
	var urlBusca;
	if(secc == undefined)
		urlBusca = 'site_search.asp?search=' + texto + '&submit=Buscar+%3E%3E&mode=allwords';
	else
		urlBusca = '../site_search.asp?search=' + texto + '&submit=Buscar+%3E%3E&mode=allwords';
	location.href = urlBusca; 
}

function getPage(local) {
	//Carga la pagina desde el Link de la pagina de resultados de la busqueda
	var query = window.document.location.href;
	var pairs = query.split("#");
	var page;
	var loadURL;
	
	if(pairs.length > 1)
	{
		page = pairs[1].split("=");
		loadURL = './contenido/' + local + '/' + page[1];
		coMenu(page[1]);
		//alert(page[1]);
		return loadIframe('cont',loadURL);
	}
}

function coMenu(nPage)
{
	//Funcion para activar en el menu lateral el comportamiento en función de la página mostrada en el iframe.
	var	secc = nPage.substring(0,2).toLowerCase();				//Sección.
	var ssec = nPage.substring(2,4).toLowerCase();				//Subsección.
	var idCap = 'm' + nPage.substring(2,4).toLowerCase();		//Id de la capa a desplegar.
	var idCel = 'c' + nPage.substring(2,4).toLowerCase();		//Id de la celda a cambiar de color.
	var idEnl = nPage.substring(2,6).toLowerCase();				//Id del enlace a activar.
	
	//Verifica si se trata de la primera página de la sección.
	if (ssec != '01')
	{
		//Verifica si se trata de una página de carreras de licenciatura
		if (secc == 'li' && ssec == 'ca')
		{
			cColor('0', 'cpr');
		}
		//Verifica si existe el id de enlace, lo que nos indica si se debe mostrar o no la capa.
		else if (document.getElementById(idEnl))
		{
			cColor(idCap, idCel);
			acEnl(idEnl);
		}
		else	cColor('0', idCel);
	}
	
}

function loadForm(frmHeight,frmPage,bParent)
{
	//Redimensiona el iFrame del contenedor y carga el formulario solicitado.
	var iframeWin;
	var iframeEl;
	
	if(bParent == 1)
	{
		iframeWin = parent.window.frames['cont'];
		iframeEl = parent.document.getElementById? parent.document.getElementById('cont'): parent.document.all? parent.document.all['cont']: null;
		iframeEl.style.height = frmHeight + "px"
		iframeWin.location='../../asp/' + frmPage;
	}
	else
	{
		iframeWin = window.frames['cont'];
		iframeEl = document.getElementById? document.getElementById('cont'): document.all? document.all['cont']: null;
		iframeEl.style.height = frmHeight + "px"
		iframeWin.location='./asp/' + frmPage;
	}
}
 
 
function NoEnter() 
{
	//Deshabilita la tecla enter
	var iKey;
	var eAny_Event = window.event;
	iKey = eAny_Event.keyCode;
	if (iKey != 13)
		return true;
	else
		return false;
}
 
function keySend(text,secc)
{
	var iKey
	var eEvent = window.event;
	iKey = eEvent.keyCode;
	if(iKey != 13)
		return true;
	else
		buscar(text);
}