// JavaScript Document
function irmatriculacion(){
//	arriba=(screen.height-700)/2;
//	izquierda=(screen.width-1000)/2;
//	matricula=window.open("http://matriculacion.campusdocente.com","Matriculacion","width=1000,height=700,resizable,scrollbars,top="+arriba+",left="+izquierda);
//	matricula.focus();
	location.href="matriculacion.php";
}

function chatSoporte(){
	vent=window.open("/entrada/chat_soporte.php","SOPORTE","width=950px,height=500px,resizable");
	vent.focus();
}

function matriculaCurso(idCurso){
	var curso=document.getElementById("curso"+idCurso);
	var celda = document.getElementById("celdaPeriodo"+idCurso);
	if(curso.checked){ //Curso marcado para matricula
		var div = document.createElement("div");
		var enl = document.createElement("a");
		enl.setAttribute('class', 'texto-matriculacion');
		enl.setAttribute('href', 'javascript:abreSeleccionPeriodo('+idCurso+')');
		enl.innerHTML = " selecciona periodo ";
		div.appendChild(enl);
		var img = document.createElement("img");
		img.setAttribute("src","/images/flecha_enlace.gif");
		img.setAttribute("border","0");
		enl.appendChild(img);
		celda.appendChild(div);
        abreSeleccionPeriodo(idCurso);
	}else{ //Curso no marcado
		while(celda.childNodes[0]){
			celda.removeChild(celda.childNodes[0]);
		}
	}
}

function abreSeleccionPeriodo(idCurso){
	var strURL = "verPeriodosDisponibles.php?IdCurso="+idCurso;
	var strOptions = "type:ajax";
	var strTitle = "";
	var strHTML = "";
	fb.start( {href: strURL, rev: strOptions, title: strTitle, html: strHTML} )
}

function seleccionPeriodo(idCurso,idPeriodo,Inicio,Fin){
	var clean_idCurso = parseInt(idCurso);
	var clean_idPeriodo = parseInt(idPeriodo);
	var celda = document.getElementById("celdaPeriodo" + clean_idCurso);
	if (celda){
		while(celda.childNodes[0]){
			celda.removeChild(celda.childNodes[0]);
		}
		var div = document.createElement("div");
		var enl = document.createElement("a");
		enl.setAttribute('class', 'texto-matriculacion');
		enl.setAttribute('href', 'javascript:abreSeleccionPeriodo(' + clean_idCurso + ')');
		enl.innerHTML = " " + Inicio + " a " + Fin + " ";
		div.appendChild(enl);
		var hid = document.createElement("input");
		hid.setAttribute('type', 'hidden');
		hid.setAttribute('value', clean_idPeriodo);
		hid.setAttribute('id', 'periodo'+clean_idCurso);
		div.appendChild(hid);
		celda.appendChild(div);
	}
	fb.end();
}

function matriculate(){
	var elementos = document.getElementsByTagName("input");
	var activados = 0;
	var conPeriodo = 0;
	for (i=0;i<elementos.length;i++){
		if (elementos[i].type=='checkbox' && elementos[i].checked){
			activados++;
			if (document.getElementById("periodo" + elementos[i].value)) conPeriodo++;
		}
	}
	if (activados==0){
		alert("Debe seleccionar al menos un curso para continuar con el proceso de matriculaci\u00f3n.");
	}else{
		if (activados!=conPeriodo){
			alert("Debe indicar el periodo de realizaci\u00f3n deseado en cada uno de los cursos seleccionados.");
			return -1;
		}else{
			var form=document.createElement("form");
			form.setAttribute("name","form_matriculacion");
			form.setAttribute("id","form_matriculacion");
			form.setAttribute("method","post");
			form.setAttribute("action","matriculacion.php");
			var elemento=document.createElement("input");
			elemento.setAttribute("type","hidden");
			elemento.setAttribute("name","matriculaOptionProcess");
			elemento.setAttribute("id","matriculaOptionProcess");
			elemento.setAttribute("value","1");
			form.appendChild(elemento);
			for (i=0;i<elementos.length;i++){
				if (elementos[i].type=='checkbox' && elementos[i].checked){
					elemento=document.createElement("input");
					elemento.setAttribute("type","hidden");
					elemento.setAttribute("name","curso"+elementos[i].value);
					elemento.setAttribute("id","curso"+elementos[i].value);
					elemento.setAttribute("value",document.getElementById("periodo" + elementos[i].value).value);
					form.appendChild(elemento);
				}
			}
            var inputs=document.getElementsByTagName("input");
            var variables= new Array();
            var valores= new Array();
            for(i=0;i<inputs.length;i++){
                if (inputs[i].type=='hidden' && !variables.in_array(inputs[i].name)){
                    variables.push(inputs[i].name);
                    valores[inputs[i].name]=inputs[i].value;
                }
            }
            var elem=document.createElement("input");
            for (i=0;i<variables.length;i++){
                if (variables[i].length && typeof(eval("form."+variables[i]))=="undefined"){
                    elem=document.createElement("input");
                    elem.setAttribute("type","hidden");
                    elem.setAttribute("name",variables[i]);
                    elem.setAttribute("id",variables[i]);
                    elem.setAttribute("value",valores[variables[i]]);
                    form.appendChild(elem);
                }
            }
			document.body.appendChild(form);
			form.submit();
		}
	}
	return false;
}

function matricula_identificacion_cancela(){ //volvemos a la ventana de descripci�n de cursos.
	document.location.replace("matriculacion.php")
}

function matricula_identificacion_acepta(){ //Comprobamos que ha introducido un DNI valido y que la longitud del apellido es mayor que cero.
	dni=document.getElementById("matricula_identificacion_dni").value.toUpperCase();
	if (dni.length>0){
		while (dni.length<9) dni="0"+dni;
		if (valida_nif_cif_nie(dni)>0){ //El DNI es valido
			usuario=document.getElementById("matricula_identificacion_apellido1").value.toUpperCase();
			if (!usuario.length){
				alert("Para poder continuar el proceso de identificaci\u00f3n debe insertar su primer Apellido.");
				document.getElementById("matricula_identificacion_apellido1").focus();
			}else{
				if (typeof(document.matricula_identificacion.matricula_identificacion_fase) == "undefined"){
					campo=document.createElement("input");
					campo.setAttribute("type","hidden");
					campo.setAttribute("name","matricula_identificacion_fase");
					campo.setAttribute("value","1");
					document.getElementsByName("matricula_identificacion")[0].appendChild(campo);
				}else
    				document.matricula_identificacion.matricula_identificacion_fase.value=1;
				if (typeof(document.matricula_identificacion.matricula_identificacion_dni) == "undefined"){
					campo=document.createElement("input");
					campo.setAttribute("type","hidden");
					campo.setAttribute("name","matricula_identificacion_dni");
					campo.setAttribute("value",dni);
					document.getElementsByName("matricula_identificacion")[0].appendChild(campo);
				}else
    				document.matricula_identificacion.matricula_identificacion_dni.value=dni;
				if (typeof(document.matricula_identificacion.matricula_identificacion_apellido1) == "undefined"){
					var campo=document.createElement("input");
					campo.setAttribute("type","hidden");
					campo.setAttribute("name","matricula_identificacion_apellido1");
					campo.setAttribute("value",usuario);
					document.getElementsByName("matricula_identificacion")[0].appendChild(campo);
				}else
    				document.matricula_identificacion.matricula_identificacion_apellido1.value=usuario;
				document.matricula_identificacion.submit();
			}
		}else{
			alert("El DNI/NIF indicado no es correcto. Revise que lo ha tecleado correctamente.");
			document.getElementById("matricula_identificacion_dni").focus();
		}
	}else{
		alert("Debe introducir su n\u00famero de NIF o pasaporte.");
		document.getElementById("matricula_identificacion_dni").focus();
	}
}

function matricula_identificacion_nuevo(){ //Mostramos el formulario de registro para nuevo alumno.
	if (typeof(document.matricula_identificacion.matricula_identificacion_fase) == "undefined"){
		var campo=document.createElement("input");
		campo.setAttribute("name","matricula_identificacion_fase");
        campo.setAttribute("type","hidden");
        campo.setAttribute("value","2");
		document.getElementsByName("matricula_identificacion")[0].appendChild(campo);
	}else
    	document.matricula_identificacion.matricula_identificacion_fase.value=2;
	document.matricula_identificacion.submit();
}

function creaCampo(nombre,valor){
	var campo, formu;
	if (!document.getElementById('matricula_identificacion')){
		formu=document.createElement("form");
		formu.setAttribute("name","matricula_identificacion");
		document.body.appendChild(formu);
	}else
        formu = document.getElementById("matricula_identificacion");
	if (typeof(eval("formu."+nombre)) == "undefined"){
		campo=document.createElement("input");
		campo.setAttribute("name",nombre);
		campo.setAttribute("type","hidden");
		campo.setAttribute("value", valor);
		formu.appendChild(campo);
	}else{
		campo=eval("formu."+nombre);
		campo.value=valor;
	}
}

function matricula_identificacion_enviaNuevo(){
	var error="";
	var inputs=document.getElementsByTagName("input");
	var sexo=false;
	for(i=0;i<inputs.length;i++){
	  if (inputs[i].type=='text' || (inputs[i].type=='radio' && inputs[i].checked)){
            switch (inputs[i].name){
                case "matricula_identificacion_dni":
                    var dni=inputs[i].value.toUpperCase();
                    if (dni.length>0){
                        while (dni.length<9) dni="0"+dni;
                    }
                    creaCampo(inputs[i].name,dni);
                    if(valida_nif_cif_nie(dni)<=0) error += "El DNI/NIF indicado no es correcto.\n";
                    break;
                case "matricula_identificacion_nombre":
                    creaCampo(inputs[i].name,inputs[i].value.toUpperCase());
                	if (inputs[i].value.length==0) error += "Debe indicar su Nombre.\n";
                    break;
                case "matricula_identificacion_apellido1":
                    creaCampo(inputs[i].name,inputs[i].value.toUpperCase());
                    if (inputs[i].value.length==0) error += "Debe indicar su primer apellido.\n";
                    break;
                case "matricula_identificacion_apellido2":
                    creaCampo(inputs[i].name,inputs[i].value.toUpperCase());
                    break;
                case "matricula_identificacion_sexo":
                    creaCampo(inputs[i].name,inputs[i].value);
                    sexo=true;
                    break;
                case "matricula_identificacion_domicilio":
                    creaCampo(inputs[i].name,inputs[i].value);
                	if (inputs[i].value.length==0) error += "Debe indicar su domicilio para el envio de los certificados.\n";
                    break;
                case "matricula_identificacion_municipio":
                    creaCampo(inputs[i].name,inputs[i].value);
                	if (inputs[i].value.length==0) error += "Debe indicar su localidad para el envio de los certificados.\n";
                    break;
                case "matricula_identificacion_codpos":
                    creaCampo(inputs[i].name,inputs[i].value);
                	if (inputs[i].value.length==0) error += "Debe indicar su Codigo Postal para el envio de los certificados.\n";
                    break;
                case "matricula_identificacion_provincia":
                    creaCampo(inputs[i].name,inputs[i].value);
                	if (inputs[i].value.length==0) error += "Debe indicar su provincia para el envio de los certificados.\n";
                    break;
                default:
                    creaCampo(inputs[i].name,inputs[i].value);
            }
		}
	}
    if (!sexo) error += "Debe indicar su Sexo.\n";
    inputs=document.getElementsByTagName("select");
	for(i=0;i<inputs.length;i++){
		creaCampo(inputs[i].name,inputs[i].value);
        switch (inputs[i].name){
            case "matricula_identificacion_provincia":
                if (inputs[i].value.length==0) error += "Debe indicar su provincia para el envio de los certificados.\n";
                break;
            case "matricula_identificacion_tipoprof":
                if (inputs[i].value.length==0) error += "Debe indicar su tipo profesional.\n";
                break;
            case "matricula_identificacion_nivelprofesor":
                if (inputs[i].value.length==0) error += "Debe indicar el Nivel que imparte.\n";
                break;
        }
    }
    if (error==""){
        creaCampo("matricula_identificacion_fase",3);
        document.getElementById('matricula_identificacion').submit();
    }else
        alert(error);
}

function matricula_identificacion_cancelaNuevo(){
	creaCampo("matricula_identificacion_fase",0);
    var form=document.getElementById("matricula_identificacion");
    if (form)
    	form.submit();
}

function matricula_identificacion_enviaAfiliado(){
	var error="";
	var inputs=document.getElementsByTagName("input");
	for(i=0;i<inputs.length;i++){
		if (inputs[i].type=='radio' && inputs[i].checked){
            if (typeof(eval("document.getElementsByName(\"matricula_identificacion\")[0]."+inputs[i].name)) == "undefined"){
                campo=document.createElement("input");
                campo.setAttribute("name",inputs[i].name);
                campo.setAttribute("type","hidden");
                campo.setAttribute("value",inputs[i].value);
                document.getElementsByName("matricula_identificacion")[0].appendChild(campo);
            }else{
                campo=eval("document.getElementsByName(\"matricula_identificacion\")[0]."+inputs[i].name);
                campo.value=inputs[i].value;
            }
		}
	}
	inputs=document.getElementsByTagName("select");
	for(i=0;i<inputs.length;i++){
        if (typeof(eval("document.getElementsByName(\"matricula_identificacion\")[0]."+inputs[i].name)) == "undefined"){
            campo=document.createElement("input");
            campo.setAttribute("name",inputs[i].name);
            campo.setAttribute("type","hidden");
            campo.setAttribute("value",inputs[i].value);
            document.getElementsByName("matricula_identificacion")[0].appendChild(campo);
        }else{
            campo=eval("document.getElementsByName(\"matricula_identificacion\")[0]."+inputs[i].name);
            campo.value=inputs[i].value;
        }
    }
    if (typeof(document.matricula_identificacion.matricula_identificacion_fase) == "undefined"){
        campo=document.createElement("input");
        campo.setAttribute("type","hidden");
        campo.setAttribute("name","matricula_identificacion_fase");
        campo.setAttribute("value","4");
        document.getElementsByName("matricula_identificacion")[0].appendChild(campo);
    }else
    	document.matricula_identificacion.matricula_identificacion_fase.value=4;
	document.getElementsByName("matricula_identificacion")[0].submit();
}

function matricula_identificacion_modificar(){
	creaCampo("matriculaOptionProcess",0);
	document.matricula_identificacion.submit();
}

//Retorna: 1 = NIF ok, 2 = CIF ok, 3 = NIE ok, -1 = NIF error, -2 = CIF error, -3 = NIE error, 0 = ??? error
function valida_nif_cif_nie(a){
	var temp=a.toUpperCase();
	while(temp.length<9) temp="0"+temp;
	var cadenadni="TRWAGMYFPDXBNJZSQVHLCKE";

	let = temp.substr(temp.length-1,1);
	temp = temp.replace('X','0');
        temp = temp.replace('Y','1');
        temp = temp.replace('Z','2');
	numero = temp.substr(0,temp.length-1);
	numero = numero % 23;
	if(cadenadni.charAt(numero)==let){
		return 1;
	}else{
		return -1;
	}
}
Array.prototype.in_array=function(){
    for(var j in this){
        if(this[j]==arguments[0]){
            return true;
        }
    }
    return false;
}

function comprobarMateriales(){
	var error="";
	var inputs=document.getElementsByTagName("input");
	var cursos= new Array();
	var materiales= new Array();
	for(i=0;i<inputs.length;i++){
		if (inputs[i].type=='radio'){
			if (!cursos.in_array(inputs[i].name))	cursos.push(inputs[i].name);
			if (inputs[i].checked){
				materiales.push(inputs[i].value);
				creaCampo(inputs[i].name,inputs[i].value);
			}
		}
	}
	if (cursos.length==materiales.length){
		var form=document.getElementById("form_matriculacion");
		var elemento=document.createElement("input");
		elemento.setAttribute("type","hidden");
		elemento.setAttribute("name","matriculaOptionProcess");
		elemento.setAttribute("value","2");
		form.appendChild(elemento);
		for (i=0;i<inputs.length;i++){
			if (inputs[i].type=='radio' && inputs[i].checked){
				elemento=document.createElement("input");
				elemento.setAttribute("type","hidden");
				elemento.setAttribute("name",inputs[i].name);
				elemento.setAttribute("value",inputs[i].value);
				form.appendChild(elemento);
			}
		}
		form.submit();
	}else{
		alert("Debe indicar el tipo de material deseado en cada uno de los cursos seleccionados.");
	}
}

function retornoA(val){
	var form=document.getElementById("form_matriculacion");
	if (form==null){
		form=document.createElement("form");
		form.setAttribute("method","post");
		form.setAttribute("id","form_matriculacion");
		document.body.appendChild(form);
	}
	if (typeof(form.matriculaOptionProcess)=="undefined"){
		var elemento=document.createElement("input");
		elemento.setAttribute("type","hidden");
		elemento.setAttribute("name","matriculaOptionProcess");
		elemento.setAttribute("value",val);
		form.appendChild(elemento);
	}else
		form.matriculaOptionProcess.value=val;

    var inputs=document.getElementsByTagName("input");
    var variables= new Array();
    var valores= new Array();
	for(i=0;i<inputs.length;i++){
		if (
            (inputs[i].type=='radio' && inputs[i].checked) ||
            (inputs[i].type=='checkbox' && inputs[i].selected) ||
            (inputs[i].type=='hidden' && !variables.in_array(inputs[i].name))
           ){
            variables.push(inputs[i].name);
			valores[inputs[i].name]=inputs[i].value;
        }
	}
    var elem=document.createElement("input");
    for (i=0;i<variables.length;i++){
        if (variables[i].length && typeof(eval("form."+variables[i]))=="undefined"){
            elem=document.createElement("input");
            elem.setAttribute("type","hidden");
            elem.setAttribute("name",variables[i]);
            elem.setAttribute("value",valores[variables[i]]);
            form.appendChild(elem);
        }
    }
    form.submit();
}

function pago(operacion,tipo){
	var form=document.getElementById("form_matriculacion");
	var elemento;
	if (typeof(form.matriculaOptionProcess)=="undefined"){
		elemento=document.createElement("input");
		elemento.setAttribute("type","hidden");
		elemento.setAttribute("name","matriculaOptionProcess");
		elemento.setAttribute("value",4);
		form.appendChild(elemento);
	}else
		form.matriculaOptionProcess.value=4;
	elemento=document.createElement("input");
	elemento.setAttribute("type","hidden");
	elemento.setAttribute("name","tipoPago");
	elemento.setAttribute("value",tipo);
	form.appendChild(elemento);
	elemento=document.createElement("input");
	elemento.setAttribute("type","hidden");
	elemento.setAttribute("name","operacion");
	elemento.setAttribute("value",operacion);
	form.appendChild(elemento);
	form.submit();
}

function imprimeInscripcion(num,fase){
	ventana=window.open("about:blank","impfichaincripcion","location=no,resizable,scrollbars=yes,width=700,height=500");
	ventana.location.href="matriculacion_transferencia_pdf.php?id="+num;
	ventana.focus();
	if (fase>0)
		retornoA(fase);
}

function pagaTPV(fase){
	var form=document.getElementById("form-tpv");
	ventana=window.open("about:blank","ventanaTPV","location=no,resizable,scrollbars=yes,width=700,height=500");
	form.submit();
	ventana.focus();
	if (fase>0)
		retornoA(fase);
}

function seleccionaPago(num){
	var form=document.getElementById("form_matriculacion");
	if (typeof(form.operacion)=="undefined"){
		elemento=document.createElement("input");
		elemento.setAttribute("type","hidden");
		elemento.setAttribute("name","operacion");
		elemento.setAttribute("value",num);
		form.appendChild(elemento);
	}else
		form.operacion.value=num;
	if (typeof(form.estadoFase)=="undefined"){
		elemento=document.createElement("input");
		elemento.setAttribute("type","hidden");
		elemento.setAttribute("name","estadoFase");
		elemento.setAttribute("value",2);
		form.appendChild(elemento);
	}else
		form.estadoFase.value=2;
	form.submit();
}

function eliminaSolicitud(num){
	if (confirm("Ha solicitado eliminar la solicitud de inscripci\u00f3n en el curso.\nSi elimina esta solicitud perder\u00e1 su reserva de plaza en el curso.\n\nPulse 'Aceptar' para eliminar la solicitud de inscripci\u00f3n.\nPulse 'Cancelar' para mantener la solicitud de inscripci\u00f3n.")){
		document.proceso.estadoFase.value=1;
		document.proceso.procCurso.value=num;
		document.proceso.submit();
	}
}

function eliminaSolicitado(val){
	var form=document.getElementById("form_matriculacion");
	if (confirm("Ha solicitado eliminar la solicitud de inscripci\u00f3n en el curso.\nSi elimina esta solicitud perder\u00e1 su reserva de plaza en el curso.\n\nPulse 'Aceptar' para eliminar la solicitud de inscripci\u00f3n.\nPulse 'Cancelar' para mantener la solicitud de inscripci\u00f3n.")){
		if (typeof(form.idSolicitud)=="undefined"){
			elemento=document.createElement("input");
			elemento.setAttribute("type","hidden");
			elemento.setAttribute("name","idSolicitud");
			elemento.setAttribute("value",val);
			form.appendChild(elemento);
		}else
			form.idSolicitud.value=val;
		if (typeof(form.estadoFase)=="undefined"){
			elemento=document.createElement("input");
			elemento.setAttribute("type","hidden");
			elemento.setAttribute("name","estadoFase");
			elemento.setAttribute("value",1);
			form.appendChild(elemento);
		}else
			form.estadoFase.value=1;
		form.submit();
	}
}

function irEstadoMatriculacion(){
	var form=document.getElementById("form_matriculacion");
	if (form==null){
		form=document.createElement("form");
		form.setAttribute("method","post");
		form.setAttribute("id","form_matriculacion");
		document.body.appendChild(form);
	}
	if (typeof(form.matriculaOptionProcess)=="undefined"){
		var elemento=document.createElement("input");
		elemento.setAttribute("type","hidden");
		elemento.setAttribute("name","matriculaOptionProcess");
		elemento.setAttribute("value",5);
		form.appendChild(elemento);
	}else
		form.matriculaOptionProcess.value=5;

    var inputs=document.getElementsByTagName("input");
    var variables= new Array();
    var valores= new Array();
	for(i=0;i<inputs.length;i++){
		if (
            (inputs[i].type=='radio' && inputs[i].checked) ||
            (inputs[i].type=='checkbox' && inputs[i].selected) ||
            (inputs[i].type=='hidden' && !variables.in_array(inputs[i].name))
           ){
            variables.push(inputs[i].name);
			valores[inputs[i].name]=inputs[i].value;
        }
	}
    var elem=document.createElement("input");
    for (i=0;i<variables.length;i++){
        if (variables[i].length && typeof(eval("form."+variables[i]))=="undefined"){
            elem=document.createElement("input");
            elem.setAttribute("type","hidden");
            elem.setAttribute("name",variables[i]);
            elem.setAttribute("value",valores[variables[i]]);
            form.appendChild(elem);
        }
    }
    form.submit();
}

