// JavaScript Document
var lowercaseLetters = "abcdefghijklmnopqrstuvwxyzáéíóúñü. "
var uppercaseLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZÁÉÍÓÚÑ. "
var numeritos = "0123456789"

function isLetter (c)
{
    return( ( uppercaseLetters.indexOf( c ) != -1 ) ||
            ( lowercaseLetters.indexOf( c ) != -1 ) )
}

function isDigit (c2)
{   return ((c2 >= "0") && (c2 <= "9"))
}

function atras(){window.location=("main.php");}

function redirige(url)
	{
	self.location = url;
	}
	
 function abrir_ventana(URL) 
 {
	var load = window.open(URL,'','scrollbars=yes,menubar=yes,height=600,width=800,resizable=yes,toolbar=no,location=no,status=no');
 }
 
 function ventana_popup(x,px,py){
	 alert(x);
      popupWin = window.open(x,"nwin",'resizable,width='+px+',height='+py+',screenX=50,screenY=50,resizable=yes,scrollbars=yes,status=no');
 }


function abrir_ventana_no(URL) 
 {
	var load = self.window.open(URL,'','scrollbars=yes,menubar=no,height=600,width=800,resizable=yes,toolbar=no,location=no,status=no');
 }

function confirma_borrar(cad,url)
	{
	if ( confirm('¿Estás seguro de borrar ' + cad) )
		self.location = url;
	}
function confirma_borrar_boton(cad,url,c,op,idhorario,idgrupo)
	{
		var dir=url+"?c="+c+"&op="+op+"&idhorario="+idhorario+"&idgrupo="+idgrupo;		
		self.location =dir;
	}

function confirmar(cad)
	{
	if ( confirm('¿Estás seguro de ' + cad + '?') )
		return true;
	return false;
	}
	
function isAlphabetic (s)
{   var i;

    if (isEmpty(s)) 
       if (isAlphabetic.arguments.length == 1) return defaultEmptyOK;
       else return (isAlphabetic.arguments[1] == true);
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is letter.
        var c = s.charAt(i);

        if (!isLetter(c))
        return false;
    }
    return true;
}

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//  											SCRIPTS PARA VALIDAR FORMAS DE ALUMNOS
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function Verifica_forma_alumno()
{
	
	var matricula = document.Forma_Alumno.elements[4].value;
	var nombre = document.Forma_Alumno.elements[5].value;
	var ap_pat = document.Forma_Alumno.elements[6].value;
	var ap_mat = document.Forma_Alumno.elements[7].value;
	var id  = document.Forma_Alumno.elements[0].value;//34 
	var clave = document.Forma_Alumno.elements[1].value;//35
	var confirmacion = document.Forma_Alumno.elements[2].value;
	var i;
	
	//MATRICULA
	if (matricula =='')
	{
			alert("Error: Proporcione la matrícula del alumno.");
			return false;
	}
	
	//NOMBRE
	if (nombre =='')
	{
			alert("Error: Proporcione el nombre del alumno.");
			return false;
	}


	for (i = 0; i < nombre.length; i++)
    {   
        // Check that current character is letter.
        var c = nombre.charAt(i);

        if (!isLetter(c))
		{
		alert("Error: Introduzca sólo letras del alfabeto en el nombre del alumno.");
        return false;
		}
		//return true
    }
	
	//APELLIDO PATERNO
	if (ap_pat =='')
	{
			alert("Error: Proporcione el apellido paterno del alumno.");
			return false;
	}


	for (i = 0; i < ap_pat.length; i++)
    {   
        // Check that current character is letter.
        var c = ap_pat.charAt(i);

        if (!isLetter(c))
		{
		alert("Error: Introduzca sólo letras del alfabeto en el apellido paterno del alumno.");
        return false;
		}
		//return true
    }
	
	//APELLIDO MATERNO
	if (ap_mat !='')
	{
		for (i = 0; i < ap_mat.length; i++)
    	{   
        	// Check that current character is letter.
	        var c = ap_mat.charAt(i);

    	    if (!isLetter(c))
			{
				alert("Error: Introduzca sólo letras del alfabeto en el apellido materno del alumno.");
    	    	return false;
			}
		}
	}
	
	//IDENTIFICACION
	if (id =='')
	{
			alert("Error: Proporcione la identificación del usuario.");
			return false;
	}
	if (id.length < 4)
	{
			alert("Error: La identificación debe contener mínimo 4 carácteres.");
			return false;
	}
	for (i = 0; i < id.length; i++)
    {   
        var c2 = id.charAt(i);
        if (! (isLetter(c2) || isDigit(c2) ) ){
        alert("Error: Introducir sólo letras o dígitos en la identificación.");
		return false;
		}
	}
	
	//CLAVE
	if (clave =='')
	{
			alert("Error: Proporcione la clave del usuario.");
			return false;
	}
	if (clave.length < 8)
	{
			alert("Error: La clave debe contener mínimo 8 carácteres.");
			return false;
	}
	
	if (confirmacion =='')
	{
			alert("Error: Proporcione la confirmación de la clave del usuario.");
			return false;
	}
	if(clave != confirmacion)
	{
			alert("Error: La clave y la confirmación son diferentes: " + clave + ", " + confirmacion);
			return false;			
	}
	return true;
}


/*

FUNCIONES PARA EMPLEADO

*/

function Verifica_forma_empleado()
{
	var no_emp = document.Forma_Empleado.elements[3].value;
	var nombre = document.Forma_Empleado.elements[4].value;
	var ap_pat = document.Forma_Empleado.elements[5].value;
	var ap_mat = document.Forma_Empleado.elements[6].value;
	var id  = document.Forma_Empleado.elements[0].value; 
	var clave = document.Forma_Empleado.elements[1].value;
	var confirmacion = document.Forma_Empleado.elements[2].value;
	var i;
	
	//IDENTIFICACION
	if (id =='')
	{
			alert("Error: Proporcione la identificación del empleado.");
			return false;
	}
	if (id.length < 4)
	{
			alert("Error: La identificación debe contener mínimo 4 carácteres.");
			return false;
	}
	for (i = 0; i < id.length; i++)
    {   
        var c2 = id.charAt(i);
        if (! (isLetter(c2) || isDigit(c2) ) ){
        alert("Error: Introducir sólo letras o dígitos en la identificación.");
		return false;
		}
	}
	
	//CLAVE
	if (clave =='')
	{
			alert("Error: Proporcione la clave del empleado.");
			return false;
	}
	if (clave.length < 8)
	{
			alert("Error: La clave debe contener mínimo 8 carácteres.");
			return false;
	}
	
	if (confirmacion =='')
	{
			alert("Error: Proporcione la confirmación de la clave del empleado.");
			return false;
	}
	if(clave != confirmacion)
	{
			alert("Error: La clave y la confirmación son diferentes." + clave + ", " + confirmacion);
			return false;			
	}
		
	//NUMERO DE EMPLEADO
	if (no_emp =='')
	{
			alert("Error: Proporcione el número de empleado.");
			return false;
	}
	
	//NOMBRE
	if (nombre =='')
	{
			alert("Error: Proporcione el nombre del empleado.");
			return false;
	}


	for (i = 0; i < nombre.length; i++)
    {   
        // Check that current character is letter.
        var c = nombre.charAt(i);

        if (!isLetter(c))
		{
		alert("Error: Introduzca sólo letras del alfabeto en el nombre del empleado.");
        return false;
		}
		//return true
    }
	
	//APELLIDO PATERNO
	if (ap_pat =='')
	{
			alert("Error: Proporcione el apellido paterno del empleado.");
			return false;
	}


	for (i = 0; i < ap_pat.length; i++)
    {   
        // Check that current character is letter.
        var c = ap_pat.charAt(i);

        if (!isLetter(c))
		{
		alert("Error: Introduzca sólo letras del alfabeto en el apellido paterno del empleado.");
        return false;
		}
		//return true
    }
	
	//APELLIDO MATERNO
	if (ap_mat !='')
	{
		for (i = 0; i < ap_mat.length; i++)
    	{   
        	// Check that current character is letter.
	        var c = ap_mat.charAt(i);

    	    if (!isLetter(c))
			{
				alert("Error: Introduzca sólo letras del alfabeto en el apellido materno del empleado.");
    	    	return false;
			}
		}
	}
	
	
	return true;
}

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//  											SCRIPTS PARA VALIDAR FORMAS USUARIOS
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function Verifica_forma_usuario()
{
	var nombre = document.AddUser.elements[0].value;
	var ap_pat = document.AddUser.elements[1].value;
	var ap_mat = document.AddUser.elements[2].value;
	var id  = document.AddUser.elements[4].value; 
	var clave = document.AddUser.elements[5].value;
	var confirmacion = document.AddUser.elements[6].value;
	var i;
	
	//NOMBRE
	if (nombre =='')
	{
			alert("Error: Proporcione el nombre del usuario.");
			return false;
	}


	for (i = 0; i < nombre.length; i++)
    {   
        // Check that current character is letter.
        var c = nombre.charAt(i);

        if (!isLetter(c))
		{
		alert("Error: Introduzca sólo letras del alfabeto en el nombre del usuario.");
        return false;
		}
		//return true
    }
	
	//APELLIDO PATERNO
	if (ap_pat =='')
	{
			alert("Error: Proporcione el apellido paterno del usuario.");
			return false;
	}


	for (i = 0; i < ap_pat.length; i++)
    {   
        // Check that current character is letter.
        var c = ap_pat.charAt(i);

        if (!isLetter(c))
		{
		alert("Error: Introduzca sólo letras del alfabeto en el apellido paterno del usuario.");
        return false;
		}
		//return true
    }

	//IDENTIFICACION
	if (id =='')
	{
			alert("Error: Proporcione la identificación del usuario.");
			return false;
	}
	if (id.length < 4)
	{
			alert("Error: La identificación debe contener mínimo 4 carácteres.");
			return false;
	}
	for (i = 0; i < id.length; i++)
    {   
        var c2 = id.charAt(i);
        if (! (isLetter(c2) || isDigit(c2) ) ){
        alert("Error: Introducir sólo letras o dígitos en la identificación.");
		return false;
		}
	}
	
	//CLAVE
	if (clave =='')
	{
			alert("Error: Proporcione la clave del usuario.");
			return false;
	}
	if (clave.length < 8)
	{
			alert("Error: La clave debe contener mínimo 8 carácteres.");
			return false;
	}
	
	if (confirmacion =='')
	{
			alert("Error: Proporcione la confirmación de la clave del usuario.");
			return false;
	}
	if(clave != confirmacion)
	{
			alert("Error: La clave y la confirmación son diferentes.");
			return false;			
	}
	return true;
}

/*
FIN DE USUARIOS
*/

////////////////// 

/*
Grupos
*/

function verifica_forma_grupo()
{
	//valida nivel
	var indice = document.Forma_Grupo.elements['grupo[nivel]'].selectedIndex;
	var nivel = document.Forma_Grupo.elements['grupo[nivel]'].options[indice].value; 
	if(nivel == 'Seleccione Nivel')
	{
		alert('Error: Seleccione un nivel.');
		return false;
	}
	
	//valida grado
	var indice = document.Forma_Grupo.elements['grupo[grado]'].selectedIndex;
	var grado = document.Forma_Grupo.elements['grupo[grado]'].options[indice].value; 
	if(grado == 'Seleccione Grado')
	{
		alert('Error: Seleccione un grado.');
		return false;
	}
	
	//valida grupo
	var grupo  = document.Forma_Grupo.elements['grupo[grupo]'].value; 
	if (grupo =='')
	{
			alert("Error: Proporcione el nombre del grupo.");
			return false;
	}
	return true;
}

function removeAllOptions(selectbox)
{
	var i;
	for(i=selectbox.options.length-1;i>=0;i--)
	{
		//selectbox.options.remove(i);
		selectbox.remove(i);
	}
}


function addOption(selectbox, value, text )
{
	var optn = document.createElement("OPTION");
	optn.text = text;
	optn.value = value;

	selectbox.options.add(optn);
}
//////////
function PonerGrados()
{
	// ON selection of category this function will work
	removeAllOptions(document.Forma_Grupo.elements['grupo[grado]']);
	addOption(document.Forma_Grupo.elements['grupo[grado]'], "", "Seleccionar Grado", "");
	
	if(document.Forma_Grupo.elements['grupo[nivel]'].value == 'Primaria')
	{
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Primero", "Primero");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Segundo", "Segundo");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Tercero", "Tercero");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Cuarto", "Cuarto");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Quinto", "Quinto");		
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Sexto", "Sexto");		
	}
	if(document.Forma_Grupo.elements['grupo[nivel]'].value == 'Secundaria')
	{
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Primero", "Primero");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Segundo", "Segundo");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Tercero", "Tercero");				
	}
	if(document.Forma_Grupo.elements['grupo[nivel]'].value == 'Preparatoria')
	{
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Primero", "Primero");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Segundo", "Segundo");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Tercero", "Tercero");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Cuarto", "Cuarto");
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Quinto", "Quinto");		
		addOption(document.Forma_Grupo.elements['grupo[grado]'],"Sexto", "Sexto");
	}
}

function valida_horario()
{
	var lui = document.Forma_AHorario.elements['horario[lunes_inicio]'].value;
	var luf = document.Forma_AHorario.elements['horario[lunes_fin]'].value;
	var mai = document.Forma_AHorario.elements['horario[martes_inicio]'].value;
	var maf = document.Forma_AHorario.elements['horario[martes_fin]'].value;
	var mii = document.Forma_AHorario.elements['horario[miercoles_inicio]'].value;
	var mif = document.Forma_AHorario.elements['horario[miercoles_fin]'].value;
	var jui = document.Forma_AHorario.elements['horario[jueves_inicio]'].value;
	var juf = document.Forma_AHorario.elements['horario[jueves_fin]'].value;
	var vii = document.Forma_AHorario.elements['horario[viernes_inicio]'].value;
	var vif = document.Forma_AHorario.elements['horario[viernes_fin]'].value;
	var sai = document.Forma_AHorario.elements['horario[sabado_inicio]'].value;
	var saf = document.Forma_AHorario.elements['horario[sabado_fin]'].value;
	var doi = document.Forma_AHorario.elements['horario[domingo_inicio]'].value;
	var dof = document.Forma_AHorario.elements['horario[domingo_fin]'].value;
	if (!/\d{2}:\d{2}/.test(lui) && lui!='')
	{
        alert('Error: Formato invalido del horario inicial del día Lunes. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(luf) && luf!='')
	{
        alert('Error: Formato invalido del horario final del día Lunes. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(mai) && mai!='')
	{
        alert('Error: Formato invalido del horario inicial del día Martes. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(maf) && maf!='')
	{
        alert('Error: Formato invalido del horario final del día Martes. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(mii) && mii!='')
	{
        alert('Error: Formato invalido del horario inicial del día Miercoles. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(mif) && mif!='')
	{
        alert('Error: Formato invalido del horario final del día Miercoles. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(jui) && jui!='')
	{
        alert('Error: Formato invalido del horario inicial del día Jueves. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(juf) && juf!='')
	{
        alert('Error: Formato invalido del horario final del día Jueves. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(vii) && vii!='')
	{
        alert('Error: Formato invalido del horario inicial del día Viernes. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(vif) && vif!='')
	{
        alert('Error: Formato invalido del horario final del día Viernes. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(sai) && sai!='')
	{
        alert('Error: Formato invalido del horario inicial del día Sabádo. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(saf) && saf!='')
	{
        alert('Error: Formato invalido del horario final del día Sabádo. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(doi) && doi!='')
	{
        alert('Error: Formato invalido del horario inicial del día Domingo. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	if (!/\d{2}:\d{2}/.test(dof) && dof!='')
	{
        alert('Error: Formato invalido del horario final del día Domingo. Formato: HH:MM. Ejemplo: 08:30')
        return false;
   	}
	lui = lui.split(':');
	luf = luf.split(':');
	mai = mai.split(':');
	maf = maf.split(':');
	mii = mii.split(':');
	mif = mif.split(':');
	jui = jui.split(':');
	juf = juf.split(':');
	vii = vii.split(':');
	vif = vif.split(':');
	sai = sai.split(':');
	saf = saf.split(':');
	doi = doi.split(':');
	dof = dof.split(':');
	if(lui!='')
	if(lui[0]>luf[0] || (lui[0]==luf[0] && lui[1]>luf[1]))
	{
			alert('Error: En el horario del día LUNES, la hora final es menor que la hora inicial.');
			return false;
	}
	if(mai!='')
	if(mai[0]>maf[0] || (mai[0]==maf[0] && mai[1]>maf[1]))
	{
			alert('Error: En el horario del día MARTES, la hora final es menor que la hora inicial.');
			return false;
	}
	if(mii!='')
	if(mii[0]>mif[0] || (mii[0]==mif[0] && mii[1]>mif[1]))
	{
			alert('Error: En el horario del día MIERCOLES, la hora final es menor que la hora inicial.');
			return false;
	}
	if(jui!='')
	if(jui[0]>juf[0] || (jui[0]==juf[0] && jui[1]>juf[1]))
	{
			alert('Error: En el horario del día JUEVES, la hora final es menor que la hora inicial.');
			return false;
	}
	if(vii!='')
	if(vii[0]>vif[0] || (vii[0]==vif[0] && vii[1]>vif[1]))
	{
			alert('Error: En el horario del día VIERNES, la hora final es menor que la hora inicial.');
			return false;
	}
	if(sai!='')
	if(sai[0]>saf[0] || (sai[0]==saf[0] && sai[1]>saf[1]))
	{
			alert('Error: En el horario del día SABADO, la hora final es menor que la hora inicial.');
			return false;
	}
	if(doi!='')
	if(doi[0]>dof[0] || (doi[0]==dof[0] && doi[1]>dof[1]))
	{
			alert('Error: En el horario del día DOMINGO, la hora final es menor que la hora inicial.');
			return false;
	}
	return true;
}
