var click_in_process = [false,false]; /********** CARGA INICIAL **********/ $('#loading').show(); $('#error').hide(); $('#divTabs').hide(); var tipo = 1; var actual = true; var cid = $('#actual').val(); var etapa = $('#etapa').val(); $('#excel').data('id', cid); $('#excel').data('etapa', etapa); var pestana = $('#pestana').val(); cargaInfo(cid, etapa, tipo, actual, pestana); $('#mainTabs').show(); $('#loading').fadeOut(5); /********** MODAL FALTANTES **********/ $('#dlConcurso ul li').click(function() { $(this).parent('ul').siblings('span').removeClass('ing-cancelar iconoAzul pointer'); $(this).parent('ul').hide(); $('#mainTabs').fadeIn(50); $('#error').hide(); $('#divTabs').hide(); $('#nomConcurso').text('(' + $(this).text() + ' CIDIT)'); $('#inputConcurso').val(''); var actual; var tipo = 1; var cid = $(this).data('id'); var etapa = $('#etapa').val(); $('#excel').data('id', cid); $('#excel').data('etapa', etapa); var pestana = $('#pestana').val(); if ($(this).data('id') == $('#actual').val()){ actual = true; } else { $('#tabMomento').hide(); $('#momento').hide(); actual = false; } cargaInfo(cid, etapa, tipo, actual, pestana); }); function cargaInfo(cid, etapa, tipo, actual, pestana){ $.ajax({ url: 'action/reporte_action.php', type: 'POST', dataType: 'json', data: { id: cid, etapa: etapa, tipo: tipo, actual: actual, pestana: pestana }, success: function(result) { if(result['error']!= '' && result['error'] !== undefined){ $('#mainTabs').fadeOut(5); $('#error').children('div').children('div.msg').text(result['error']); $('#error').show(); $('#divTablas').hide(); }else{ if (actual) $('#momentoDiv').html(result['momento']); $('#divAsignaciones').html(result['asignaciones']); if (result['rubros'] != 'NO' && result['proyectos'] != 'NO'){ /* Inicializa tabs contents */ inicializaInfoInterna(); /* Carga información */ $('#rubros').html(result['rubros']); $('#leyenda').html(result['leyenda']); $('#ulProyecto').html(result['proyectos']); /* Agrega eventos */ $('#dlProyecto ul li').mousedown({index: 1},mousedownDataList); $('#dlProyecto ul li').mouseup({elem: 'Proyecto', index: 1},mouseupDataList); $('#inputProyecto').click({elem: 'Proyecto'},clickDataList); $('#inputProyecto').blur({elem: 'Proyecto', index: 1},blurDataList); $('#inputProyecto').keyup({elem: 'Proyecto'},inputKeyUp); $('#iconProyecto').mousedown({index: 1},mousedownDataList); $('#iconProyecto').mouseup({elem: 'Proyecto', index: 1},mouseupDataList); $('#iconProyecto').mousedown({elem: 'Proyecto'},limpiaInputDL); $('#rubros .elem').click(grafica); $('#dlProyecto ul li').click(seleccionaProyecto); $("input[type=radio]").click(validaRB); if ($('#btnLimpiar').length > 0) $('#btnLimpiar').click(limpiarRBCBX); if($('#btnAsignar').length > 0) $('#btnAsignar').click(asignaSeleccionados); /* Muestra tabs */ $('#bloqueExcel').show(); $('#divTabs > ul > li > a').removeClass('active'); $('#divTabs > div.tab-content > div.tab-pane').removeClass('show active'); $('#tabProyectos').show(); $('#tabGraficas').show(); if (!actual) { $('#tabGraficas > a').addClass('active'); $('#graficas').addClass('show active'); } else { $('#tabMomento > a').addClass('active'); $('#tabMomento').show(); $('#momento').addClass('show active'); $('#momento').show(); } } else { $('#divTabs > ul > li > a').removeClass('active'); $('#divTabs > div.tab-content > div.tab-pane').removeClass('show active'); if (!actual) { $('#tabAsignaciones > a').addClass('active'); $('#asignaciones').addClass('show active'); } else { $('#tabMomento > a').addClass('active'); $('#tabMomento').show(); $('#momento').addClass('show active'); $('#momento').show(); } $('#tabProyectos').hide(); $('#tabGraficas').hide(); $('#bloqueExcel').hide(); } $('#mainTabs').fadeOut(5); $('#divTabs').show(); $('#error').hide(); } }, error: function(jqXHR, textStatus, errorThrown ){ $('#mainTabs').fadeOut(5); $('#error').show(); $('#divTablas').hide(); } }); } function inicializaInfoInterna(){ $('#divCanvas').hide(); $('#eligeRubro').show(); $('#msgGrafica').text('Elige el rubro que deseas consultar'); $('#iconGrafica').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-azul1 ing-mi-cartel'); $('#divCanvas').hide(); $('#titProyecto').hide(); $('#datosProyecto').hide(); $('#msgProyecto').text('Por favor selecciona el proyecto que deseas consultar'); $('#iconMsgProyecto').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-azul1 ing-mi-cartel'); $('#errorProyecto').show(); } /********** MODAL FALTANTES **********/ function faltantes(elem){ if ($(elem).children('div.ing-aceptar').length == 0) { var tipo = 2; var cid = $(elem).data('id'); var etapa = $('#etapa').val(); $.ajax({ url: 'action/reporte_action.php', type: 'POST', dataType: 'json', data: { id: cid, etapa: etapa, tipo: tipo }, success: function(result) { if(result['faltan']!= ''){ $('#userFaltante').text($(elem).siblings('div.nombres').text()); $('#listaFaltantes').html(result['faltan']); $('#modalFaltantes').modal('show'); } }, }); } } /********** GRÁFICA **********/ Chart.defaults.global.defaultFontFamily = 'indivisa-text'; Chart.defaults.global.defaultFontColor = 'rgba(0,29,104,1)'; Chart.defaults.global.tooltips.enabled = false; Chart.defaults.global.aspectRatio = 2; Chart.defaults.global.legend.display = false; Chart.defaults.global.legend.labels.usePointStyle = true; Chart.defaults.global.legend.labels.fontColor = '#001D68'; Chart.defaults.global.title.display = false; Chart.defaults.global.animation.animateRotate = true; Chart.defaults.global.animation.animateScale = true; Chart.helpers.merge(Chart.defaults.global.plugins.datalabels, { labels: { name: { align: 'top', font: function(context) { var w = context.chart.width; return { size: w < 512 ? 12 : 16, weight: 'bold', }; }, color: 'white', formatter: function(value, ctx) { return ctx.chart.data.labels[ctx.dataIndex]; } }, value: { align: 'bottom', backgroundColor: 'white', borderColor: 'white', borderWidth: 0, borderRadius: 4, font: function(context) { var w = context.chart.width; return { size: w < 512 ? 14 : 18, weight: 'bold', }; }, color: function(ctx) { return ctx.dataset.backgroundColor[ctx.dataIndex]; }, padding: 4 }, }, offset: 0, padding: 0, }); function grafica(event){ var elem = event.currentTarget; var tipo = 3; var cid = $(elem).data('con'); var etapa = $('#etapa').val(); var preg = $(elem).data('id'); $('#divCanvas').hide(); $('#eligeRubro').hide(); $('#loaderGrafica').fadeIn(50); $('.elem').removeClass('active'); $(elem).addClass('active'); $.ajax({ url: 'action/reporte_action.php', type: 'POST', dataType: 'json', data: { id: cid, etapa: etapa, tipo: tipo, pregunta: preg }, success: function(result) { if (result['error'] == 'error'){ $('#divCanvas').hide(); $('#msgGrafica').text('No es posible mostrar la grafica'); $('#iconGrafica').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-danger ing-no-cargado'); $('#loaderGrafica').fadeOut(5); $('#eligeRubro').show(); } else { if(result['datos']!= '') { var configcanvas = {type: result['tipo'], data: { labels: result['etiquetas'], datasets: [{ data: result['datos'], backgroundColor: result['colores'], },], }, }; if ($('canvas')) $('canvas').remove(); $('#divCanvas').append(''); new Chart($('#canvas'), configcanvas); $('#loaderGrafica').fadeOut(5); $('#divCanvas').show(); $('#eligeRubro').hide(); } else { $('#divCanvas').hide(); $('#msgGrafica').text('No existen datos para graficar'); $('#iconGrafica').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-danger ing-no-cargado'); $('#loaderGrafica').fadeOut(5); $('#eligeRubro').show(); } } }, }); } /********** PROYECTOS ********/ function seleccionaProyecto(event){ var elem = event.currentTarget; $(elem).parent('ul').siblings('span').removeClass('ing-cancelar iconoAzul pointer'); $(elem).parent('ul').hide(); $('#errorProyecto').hide(); $('#datosProyecto').hide(); $('#loaderProyecto').fadeIn(50); var tipo = 4; var cid = $(elem).data('id'); var etapa = $('#etapa').val(); $('#titProyecto').text($(elem).text()); $('#iconMsgProyecto').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-danger ing-no-cargado'); $.ajax({ url: 'action/reporte_action.php', type: 'POST', dataType: 'json', data: { id: cid, etapa: etapa, tipo: tipo }, success: function(result) { if (result['error'] == 'error'){ $('#datosProyecto').hide(); $('#msgProyecto').text('No es posible mostrar los resultados'); $('#iconMsgProyecto').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-danger ing-no-cargado'); $('#loaderProyecto').fadeOut(5); $('#errorProyecto').show(); } else { if(result['tablas']!= '') { $('#datosProyecto').html(result['tablas']); $('#errorProyecto').hide(); $('#loaderProyecto').fadeOut(5); $('#datosProyecto').show(); } else { $('#datosProyecto').hide(); $('#msgProyecto').text('Aún no hay información del proyecto'); $('#iconMsgProyecto').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-danger ing-no-cargado'); $('#loaderProyecto').fadeOut(5); $('#errorProyecto').show(); } } }, error: function(jqXHR, textStatus, errorThrown ){ $('#datosProyecto').hide(); $('#msgProyecto').text('No es posible mostrar los resultados'); $('#iconMsgProyecto').removeClass('text-azul1 ing-mi-cartel text-danger ing-no-cargado').addClass('text-danger ing-no-cargado'); $('#loaderProyecto').fadeOut(5); $('#errorProyecto').show(); } }); } /********** FINALISTAS Y GANADORES **********/ var col=[], el=[]; function validaRB(event) { var elem = event.currentTarget; var tabla = $(elem).data('table'); el[tabla] = $(elem); col[tabla] = el[tabla].data("col"); $("input[data-col=" + col[tabla] + "][data-table=" + tabla + "]").prop("checked", false); el[tabla].prop("checked", true); } function limpiarRBCBX(event){ var btn = event.currentTarget; if ($('#oldSelecc').length > 0){ var tipoSelec = $(btn).data('tipo'); var seleccionados = $('#oldSelecc').val().split(','); switch(tipoSelec){ case 1: $("input[type=checkbox]").prop("checked", false); $("input[type=checkbox]").each(function(index, elem){ if (seleccionados.includes($(elem).val())) $(elem).prop('checked', true); else $(elem).addClass('disabledElem'); }); $("input[type=checkbox]").attr("disabled", true); break; case 2: seleccionados.forEach(arregla); function arregla (value, index, array){ var temp = value.split('-'); array[index] = [temp[0] + '-' + temp[1],temp[2]]; } $("input[type=radio]").prop("checked", false); $("input[type=radio]").each(function(index, elem){ var lugar = 0; var flag = false; for (var cont = 0; cont < seleccionados.length; cont++){ if (seleccionados[cont][0] == $(elem).val()){ flag = true; lugar = seleccionados[cont][1]; cont = seleccionados.length; } } if (flag && lugar == $(elem).data('col')) $(elem).prop('checked', true); else $(elem).addClass('disabledElem'); }); $("input[type=radio]").attr("disabled", true); break; } $('#btnAsignar').text('Editar'); } else { $("input[type=radio]").prop("checked", false); $("input[type=checkbox]").prop("checked", false); $('#btnAsignar').text('Publicar'); } $(btn).hide(); } function asignaSeleccionados (event){ $('#errorLblAsignar').hide(); var elem = event.currentTarget; var tipoSelec = $(elem).data('tipo'); if ($(elem).text() === 'Editar'){ $('#btnLimpiar').show(); $('.elemSelec').removeClass('disabledElem'); var elegidos = ''; switch (tipoSelec){ case 1: seleccionados = $("input[type=checkbox]:checked"); $("input[type=checkbox]").removeAttr("disabled"); break; case 2: seleccionados = $("input[type=radio]:checked"); $("input[type=radio]").removeAttr("disabled"); break; } $(seleccionados).each(function(index, elem){ if ($(elem).data('col') !== undefined) elegidos += ',' + $(elem).val() + '-' + $(elem).data('col'); else elegidos += ',' + $(elem).val(); }); if(elegidos.length > 0) elegidos = elegidos.substring(1); if ($('#oldSelecc').length == 0) $('#secBtns').append(''); else $('#oldSelecc').val(elegidos); $(elem).text('Publicar'); } else { var cid = $('#actual').val(); var etapa = $('#etapa').val(); var elegidos = ''; var seleccionados; var old = ''; if ($('#oldSelecc').length > 0) old = $('#oldSelecc').val(); switch (tipoSelec){ case 1: seleccionados = $("input[type=checkbox]:checked"); break; case 2: seleccionados = $("input[type=radio]:checked"); break; } if($(seleccionados).length > 0){ if ($(seleccionados).length < (3*$('.catSelec').length) && tipoSelec == 2) { $('#errorLblAsignar').show(); $('#errorLblAsignar').removeClass('text-primary text-danger').addClass('text-danger').text('Es necesario seleccionar a todos los ganadores'); } else { $(seleccionados).each(function(index, elem){ if ($(elem).data('col') !== undefined) elegidos += ',' + $(elem).val() + '-' + $(elem).data('col'); else elegidos += ',' + $(elem).val(); }); if(elegidos.length > 0) elegidos = elegidos.substring(1); $.ajax({ url: 'action/reporte_action.php', type: 'POST', dataType: 'json', data: { id: cid, etapa: etapa, tipo: 5, seleccionados: tipoSelec, elegidos: elegidos, old: old }, success: function(result) { if(result['error']!= '' && result['error'] !== undefined){ $('#errorLblAsignar').removeClass('text-primary text-danger').addClass('text-danger').text(result['error']); $('#btnLimpiar').click(); }else{ $('#msgPrincipal').html(result['titulo']); $('#errorLblAsignar').removeClass('text-primary text-danger').addClass('text-primary').text(result['msg']); $('#btnAsignar').text('Editar'); $('#btnLimpiar').hide(); } $('#errorLblAsignar').show(); }, error: function(jqXHR, textStatus, errorThrown ){ $('#errorLblAsignar').show(); $('#errorLblAsignar').removeClass('text-primary text-danger').addClass('text-danger').text('Se presentó un problema. Inténtalo nuevamente'); $('#btnLimpiar').click(); } }); } } else { $('#errorLblAsignar').show(); switch (tipo){ case 1: $('#errorLblAsignar').children('div').children('div.msg').text('Es necesario seleccionar al menos un finalista.'); break; case 2: $('#errorLblAsignar').children('div').children('div.msg').text('Es necesario seleccionar a los ganadores.'); break; } } } } /********** EXCEL *********/ $('#excel').click(function(){ $('#modalArchivo').modal('show'); $('#bodyArchivo').hide(); $('#loaderArchivo').show(); var cid = $('#excel').data('id'); var etapa = $(this).data('etapa'); $.ajax({ type:'POST', url:"action/xls_reporte.php", data: {id: cid, etapa: etapa}, dataType:'json', success: function(result) { if(result['error']!== '' && result['error'] !== undefined){ $('#msgArchivo').text(result['error']); $('#loaderArchivo').hide(); $('#bodyArchivo').fadeIn(50); } else $('#modalArchivo').modal('hide'); }, error: function(jqXHR, textStatus, errorThrown ){ $('#msgArchivo').text('No fue posible generar el archivo'); $('#loaderArchivo').hide(); $('#bodyArchivo').fadeIn(50); } }).done(function(data){ var $a = $(''); $a.attr('href',data.file); $('body').append($a); $a[0].click(); $a.remove(); }); });