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();
});
});