function getDatalistFirstLiData(selector, data){ var index=1; var elementRoot = $(selector).parents('.datalist'); var num = elementRoot.find('ul li:not(.not-selectable)').length; if(index < num){ while(elementRoot.find('ul li:nth-child('+index+')').hasClass("not-selectable") && index <= num){ index++; } var element = elementRoot.find('ul li:nth-child('+index+')'); return element.data(data); } } function borraInsignia(insignia, evidencia){ $.ajax({ url: './action/insigniapersonal_delete.php', type: 'POST', dataType: 'json', data: {'insignia':insignia, 'alumno':alumno, 'evidencia':evidencia}, success: function(result) { if(result["error"]!= "" && result["error"] !== undefined){ $("#errorBox").collapse('show'); $("#errorBox_text").html(result["error"]); $('#messageBox')[0].scrollIntoView({ block: "end" }); }else{ $("#"+insignia).remove(); $("#successBox").collapse('show'); $("#successBox_text").html(result["ok"]); $('#modal_confirm').modal('hide'); } }, error: function(jqXHR, textStatus, errorThrown ){ $("#errorBox").collapse('show'); $("#errorBox_text").html("Error al insertar la insignia del alumno"); $('#messageBox')[0].scrollIntoView({ block: "end" }); } });//ajax } function validaForma(){ var error = false; $("#modal").find(".is-invalid").removeClass("is-invalid"); if(trim($("#titulo").val()) == ""){ error = true; $("#titulo").addClass("is-invalid"); } if(trim($("#desc").val()) == ""){ error = true; $("#desc").addClass("is-invalid"); } if($("#fecha_inicial").val()!= "" && !validaFecha($("#fecha_inicial").val())){ error = true; $("#fecha_inicial").addClass("is-invalid"); } if($("#fecha_final").val()=="" || !validaFecha($("#fecha_final").val())){ error = true; $("#fecha_final").addClass("is-invalid"); } if($("#fecha_inicial").val()!= "" && $("#fecha_final").val()!= ""){ if(!error && fechaMayor( trim($("#fecha_inicial").val()), trim($("#fecha_final").val()) ) > 0 ){ error = true; //$("#fecha_inicial").addClass("is-invalid"); $("#fecha_final").addClass("is-invalid"); } } return !error; } function hideBorraAtributo(){ var total = $("#atributo-list >tr").length;//cuenta renglones actuales if(total == 1){ $('.borra-atributo').hide(); }else{ $('.borra-atributo').show(); } } $(document).ready(function(){ setDatalistFirst('#categoria'); setDatalist('#puesto',12); $("#categoria_color").css("color", getDatalistFirstLiData('#categoria', 'color') ); $(".date-picker" ).datepicker({ dateFormat: "dd/mm/yy", changeMonth: true, changeYear: true}); $(".date-picker" ).datepicker( $.datepicker.regional[ "es" ] ); $('#submitBtn').click(function(){ if(validaForma()){ $("#formaModal").submit(); $('#modal').modal('hide'); } }); $('.btn-borrar').click(function(){ borraInsignia($("#id_borrar").val(), $("#evidencia_borrar").val()); }); $('#modal').on('show.bs.modal', function (event) { var button = $(event.relatedTarget); // Button that triggered the modal var tipo = button.data("tipo"); //Borra atributos while($('#atributo-list tr').length > 1){ $("#atributo-list tr:last-child").remove(); } $("#atributo-list tr .atributo_select").val(0); $("#atributo-list tr .nivel_select").val(0); if(tipo == 2){ var insingia_id = button.parents(".alumno-row").data("id"); $("#insignia_id").val(insingia_id); $("#formaModal").prop("action", "./action/insigniapersonal_update.php"); $("#modalLabel").html("Editar insignia de alumno"); $("#evidenciaBlock").hide(); $("#atributo-list_ver") $.ajax({ url: './action/insigniapersonal_select.php', type: 'POST', dataType: 'json', data: { id: insingia_id, alumno: alumno},//alumno en php inicial success: function(result) { if(result["error"]!= "" && result["error"] !== undefined){ $("#errorBox").collapse('show'); $("#errorBox_text").html("Error al leer la insignia.
"+result["error"]); $('#messageBox')[0].scrollIntoView({ block: "end" }); }else{ $("#titulo").val(result["titulo"]); $("#desc").val(result["desc"]); setDatalist("#categoria",result["tipo_id"]); $("#categoria_color_ver").css("color",result["tipo_color"]); setDatalist("#puesto",result["puesto_id"]); $("#fecha_inicial").val(result["fecha_ini"]); $("#fecha_final").val(result["fecha_fin"]); if(result["atributos"].length > 1){ var rows = $("#atributo-list > tr").length;//cuenta renglones actuales for(var i=0; i<(result["atributos"].length - rows); i++){ $("#atributo-list tr:first-child").clone().appendTo("#atributo-list"); } $("#avanzadoBox").collapse('show'); $("#atributo-list tr").each(function(index) { $(this).find('.atributo_select').val(result["atributos"][index]["id"]); $(this).find('.nivel_select').val(result["atributos"][index]["nivel_id"]); }); }else{ $("#avanzadoBox").collapse('hide'); } if(result["evidencia"] != "" && result["evidencia"] != null){ $("#evidencia").attr("href", "./files/evidencias/"+result["evidencia"]); $("#evidencia").parent().show(); }else{ $("#evidencia").parent().hide(); } } }, error: function(jqXHR, textStatus, errorThrown ){ $("#errorBox").collapse('show'); $("#errorBox_text").html("Error al obtener los datos"); $('#messageBox')[0].scrollIntoView({ block: "end" }); } });//ajax }else{ $("#formaModal").prop("action", "./action/insigniapersonal_insert.php"); $("#modalLabel").html("Asignar insignia al alumno"); $("#avanzadoBox").collapse('hide'); $("#evidenciaBlock").show(); $("#evidencia").parent().hide(); } hideBorraAtributo(); }); $('#modal_confirm').on('show.bs.modal', function (event) { var button = $(event.relatedTarget); // Button that triggered the modal var id = button.parents(".alumno-row").data("id"); var evidencia = button.parents(".alumno-row").data("evidencia"); $("#id_borrar").val(id); $("#evidencia_borrar").val(evidencia); }); $('#archivo').customFile({ maxFiles: 1, maxKBperFile: 20*1024, popup : { active : true, // false if you don’t like popup messages autoclose : true, // or false delay : 4000 // delay for close (in miliseconds), of course, if autoclose is set true }, callbacks : { beforeRemove : function(item){ $("#previo").addClass("d-none"); }, /*onSuccess : function(item, callback){ $.customFile.ajax(item, { url : "./action/alumnos_importar_previo.php", type: "POST", dataType: "json", progressBar : { appendTo: item.node, closeAfterComplete: false }, success: function(result) { if(result["error"]!= "" && result["error"] !== undefined){ $("#errorBox").collapse('show'); $("#errorBox_text").html(result["error"]); $('#messageBox')[0].scrollIntoView({ block: "end" }); }else{ if(result["alumnosArr"].length == 0){//alumnos $("#previo").addClass("d-none"); $("#errorBox").collapse('show'); $("#errorBox_text").html("No se encontraron alumnos para importar"); $('#messageBox')[0].scrollIntoView({ block: "end" }); }else{ $('#forma')[0].scrollIntoView({ block: "start" }); $("#al_total").html(result["alumnosArr"].length); $("#al_omitidos").html(result["omitidosArr"].length); $("#previo").removeClass("d-none"); $("#sin_alumnos").addClass("d-none"); if(result["omitidosArr"].length > 0){ $("#omitidos_block").removeClass("d-none"); //$("#al_list").find("td").html("");//limpia tabla actual var rows = $("#al_list > tr").length;//cuenta accesos actuales if(rows > result["omitidosArr"].length){//sobran //borrar renglones extra (rows - result.length) pero dejar al menos 1 while(rows > result["omitidosArr"].length && rows > 1){ $("#al_list .alumno:last-child").remove(); rows--; } }else{//faltan // clone the rest of the rows for(var i=0; i<(result["omitidosArr"].length - rows); i++){ $("#al_list .alumno:first-child").clone().appendTo("#al_list"); } } $("#al_list tr").each(function(index) { if(index < result["omitidosArr"].length){//llenar info //$(this).find(".num").html(index+1); $(this).find(".apellidos span").text(result["omitidosArr"][index]["apellidos"]); $(this).find(".nombre span").html(result["omitidosArr"][index]["nombre"]); $(this).find(".clave span").html(result["omitidosArr"][index]["clave"]); $(this).find(".curp span").html(result["omitidosArr"][index]["curp"]); $(this).find(".ingreso span").html(result["omitidosArr"][index]["ingreso"]); $(this).find(".generacion span").html(result["omitidosArr"][index]["generacion"]); $(this).find(".correo span").html(result["omitidosArr"][index]["correo"]); $(this).find(".telcasa span").html(result["omitidosArr"][index]["telcasa"]); $(this).find(".telcel span").html(result["omitidosArr"][index]["telcel"]); } });//each }else{ $("#omitidos_block").addClass("d-none"); } //----- var rows = $("#upload_list > .alumno").length;//cuenta accesos actuales if(rows > result["alumnosArr"].length){//sobran //borrar renglones extra (rows - result.length) pero dejar al menos 1 while(rows > result["alumnosArr"].length && rows > 1){ $("#upload_list .alumno:last-child").remove(); rows--; } }else{//faltan // clone the rest of the rows for(var i=0; i<(result["alumnosArr"].length - rows); i++){ $("#upload_list .alumno:first-child").clone().appendTo("#upload_list"); } } $("#upload_list .alumno").each(function(index) { if(index < result["alumnosArr"].length){//llenar info //$(this).find(".num").html(index+1); $(this).find(".apellidos").val(result["alumnosArr"][index]["apellidos"]); $(this).find(".nombre").val(result["alumnosArr"][index]["nombre"]); $(this).find(".clave").val(result["alumnosArr"][index]["clave"]); $(this).find(".curp").val(result["alumnosArr"][index]["curp"]); $(this).find(".ingreso").val(result["alumnosArr"][index]["ingreso"]); $(this).find(".generacion").val(result["alumnosArr"][index]["generacion"]); $(this).find(".correo").val(result["alumnosArr"][index]["correo"]); $(this).find(".telcasa").val(result["alumnosArr"][index]["telcasa"]); $(this).find(".telcel").val(result["alumnosArr"][index]["telcel"]); $(this).find(".ingreso").val(result["alumnosArr"][index]["ingreso"]); } });//each }//fin alumnos }//fin else error }, error: function(jqXHR, textStatus, errorThrown ){ console.log("error"); $("#errorBox").collapse('show'); $("#errorBox_text").html("Error de PHP"); $('#messageBox')[0].scrollIntoView({ block: "end" }); }, complete : function(){ callback(); } }); return false; // Required for callback only fires once (when uploading is finished) }*/ } }); $("#agrega-atributo").click(function(){ var cloned = $("#atributo-list >tr:first-child").clone(true).appendTo("#atributo-list"); cloned.find('select').get(0).selectedIndex = 0; hideBorraAtributo(); }); $(".borra-atributo").click(function(){//quita profesor $(this).parents("tr").remove(); hideBorraAtributo(); }); }); function hideBorraAtributo(){ var total = $("#atributo-list >tr").length;//cuenta renglones actuales if(total == 1){ $('.borra-atributo').hide(); }else{ $('.borra-atributo').show(); } }