/* * Codificación UTF-8 * Eventos asociados a los botones ToolTip */ /************************************************************************************************************************ * BOTÓN TOOLTIP INSERTAR *************************************************************************************************************************/ /* * FUNCIÓN: Botón tooltip pasar a modo inserción en un panel Tabular-Registro */ $('button[id*=bttl][data-gvhFunction=insert][data-gvhposition=botonera][data-gvhPatronPanel=TR]').filter('[data-gvhWindow='+ambito+']').on({ click: function() { $(this).controllerJS({ id: $(this).attr('id'), destino: $(this).attr('data-gvhDestino'), panel: $(this).attr('data-gvhActSobre'), claseM: $(this).attr('data-gvhClaseManejadora'), newWindow: 'false', confirm: '' }) } }); /* * FUNCIÓN: Botón tooltip pasar a modo inserción en un panel Simple */ $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=insert][data-gvhposition=botonera][data-gvhPatronPanel=simple]').on({ click: function() { $('div[data-gvhpagina=block][data-gvhWindow='+ambito+']').hide(); var panel = $(this).attr('data-gvhPanelOn'); $('div[id=P_'+panel+'][data-gvhWindow='+ambito+']').attr('data-gvhestadopanel','I'); $destino = $(this).attr('data-gvhDestino'); if ((panel != 'fil') && (($destino == '') || ($destino == undefined))) { $(this).formOnInsert({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), patron: $(this).attr('data-gvhPatronPanel'), claseM: $(this).attr('data-gvhClaseManejadora') }) } else { $(this).controllerJS({ id: $(this).attr('id'), destino: $(this).attr('data-gvhDestino'), panel: $(this).attr('data-gvhActSobre'), claseM: $(this).attr('data-gvhClaseManejadora'), newWindow: 'false', confirm: '' }) } } }); /* * FUNCIÓN: Botón tooltip pasar a modo inserción en un maestro */ $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=insert][data-gvhposition=botonera][data-gvhPatronPanel=maestro]').on({ click: function() { $('div[data-gvhpagina=block][data-gvhWindow='+ambito+']').hide(); var panel = $(this).attr('data-gvhPanelOn'); $('div[id=P_'+panel+'][data-gvhWindow='+ambito+']').attr('data-gvhestadopanel','I'); $destino = $(this).attr('data-gvhDestino'); if ((panel != 'fil') && (($destino == '') || ($destino == undefined))) { $(this).formOnInsert({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), patron: 'maestro', claseM: $(this).attr('data-gvhClaseManejadora') }) } else { $(this).controllerJS({ id: $(this).attr('id'), destino: $(this).attr('data-gvhDestino'), panel: $(this).attr('data-gvhActSobre'), claseM: $(this).attr('data-gvhClaseManejadora'), newWindow: 'false', confirm: '' }) } } }); /* * FUNCIÓN: Botón tooltip pasar a modo inserción en un detalle */ $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=insert][data-gvhposition=botonera][data-gvhPatronPanel=detalle]').on({ click: function() { $('div[data-gvhpagina=block]').hide(); $TR = $(this).attr('data-gvhtr'); $destino = $(this).attr('data-gvhDestino'); if (($TR == 'TR') || (($destino != undefined) && ($destino != ''))) { $(this).controllerJS({ id: $(this).attr('id'), destino: $(this).attr('data-gvhDestino'), panel: $(this).attr('data-gvhActSobre'), claseM: $(this).attr('data-gvhClaseManejadora'), newWindow: 'false', confirm: '' }) } else { var panel = $(this).attr('data-gvhPanelOn'); $('div[id=P_'+panel+']').attr('data-gvhestadopanel','I'); $(this).formOnInsert({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), patron: 'detalle', claseM: $(this).attr('data-gvhClaseManejadora') }); } } }); /************************************************************************************************************************ * BOTÓN TOOLTIP ELIMINAR *************************************************************************************************************************/ /* * FUNCIÓN: Botón tooltip ELIMINAR que actúa directamente en un panel Tabular */ //$('#'+ambito).on('click','button[id*=bttl][data-gvhFunction=delete][data-gvhposition=botonera][data-gvhPanelOn*=lis]',function(e) { $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=delete][data-gvhposition=botonera][data-gvhPanelOn*=lis]').on({ click: function() { var panelOn = $(this).attr('data-gvhPanelOn'); var vSufijos = []; if ($('input:checkbox[id^=checkAll_]').is(':checked')) { $(this).formOnDeleteTable({ id: $(this).attr('id'), panel: panelOn, sufijos: $('input:checkbox[id^=checkAll_]').attr('data-gvhTotalReg'), checked: 'all' }); } else { $('input[id*=check_'+panelOn+']:checked').each(function() { sufijo = $(this).attr('id').split('check_')[1]; estado = $('#est_'+sufijo).val(); if (estado == 'nada') { vSufijos.push(sufijo); } }); if (vSufijos.length > 0) { $(this).formOnDeleteTable({ id: $(this).attr('id'), panel: panelOn, sufijos: vSufijos }); } else { $(this).showMessage('gvhlang_msj16','alert'); } } } }); /* * FUNCIÓN: Botón tooltip ELIMINAR que actúa directamente en un panel Registro */ //$('#'+ambito).on('click','button[id*=bttl][data-gvhFunction=delete][data-gvhposition=botonera][data-gvhPanelOn*=edi]',function(e) { $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=delete][data-gvhposition=botonera][data-gvhPanelOn*=edi]').on({ click: function() { var panelOn = $(this).attr('data-gvhPanelOn'); var sufijo = ''; $('div[id*=pag_'+panelOn+'_]').each(function() { if ($(this).is(':visible')) { sufijo = $(this).attr('id').substring(3,$(this).attr('id').length); } }); $(this).formOnDeleteReg({ id: $(this).attr('id'), panel: panelOn, pag: sufijo }); } }); /************************************************************************************************************************ * BOTÓN TOOLTIP MODIFICAR *************************************************************************************************************************/ /* * FUNCIÓN: Botón tooltip MODIFICAR que actúa directamente en un panel Registro */ //$('#'+ambito).on('click','button[id*=bttl][data-gvhFunction=update][data-gvhposition=botonera][data-gvhPanelOn*=edi]',function(e) { $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=update][data-gvhposition=botonera][data-gvhPanelOn*=edi]').on({ click: function() { console.log('edición EDI'); var panelOn = $(this).attr('data-gvhPanelOn'); $('div[id*=pag_'+panelOn+'_]').each(function() { // Activamos los campos del formulario if ($(this).is(':visible')) { id = $(this).attr('id'); sufijo = id.substring(3,id.length); } }); $(this).formOnUpdateReg({ id: $(this).attr('id'), panel: panelOn, sufijo: sufijo }) } }); /* * FUNCIÓN: Botón tooltip MODIFICAR que actúa directamente en un panel Tabular */ //$('#'+ambito).on('click','button[id*=bttl][data-gvhFunction=update][data-gvhposition=botonera][data-gvhPanelOn*=lis][data-gvhTR=simple]',function(e) { $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=update][data-gvhposition=botonera][data-gvhPanelOn*=lis][data-gvhTR=simple]').on({ click: function() { console.log('edición LIS'); var panelOn = $(this).attr('data-gvhPanelOn'); var vSufijos = []; if ($('input:checkbox[id^=checkAll_]').is(':checked')) { $(this).formStateFieldsTable({ id: $(this).attr('id'), panel: panelOn, sufijos: $('input:checkbox[id^=checkAll_]').attr('data-gvhTotalReg'), checked: 'all' }) } else { $('input[id*=check_'+panelOn+']:checked').each(function() { sufijo = $(this).attr('id').split('check_')[1]; estado = $('#est_'+sufijo).val(); if (estado == 'nada') { vSufijos.push(sufijo); } }); if (vSufijos.length > 0) { $(this).formStateFieldsTable({ id: $(this).attr('id'), panel: panelOn, sufijos: vSufijos }) } else { $(this).showMessage('gvhlang_msj16','alert'); } } } }); /* * FUNCIÓN: Botón tooltip MODIFICAR que actúa directamente en un panel Tabular-Registro */ $('button[data-gvhWindow='+ambito+'][id*=bttl][data-gvhFunction=update][data-gvhposition=botonera][data-gvhTR=TR]').on({ click: function() { console.log('edición TR'); filaCheck = false; $('input:checkbox[id^=check_]').filter('[data-gvhPanelOn='+$(this).attr('data-gvhPanelOn')+']').map(function(){ if ($(this).is(':checked')) { filaCheck = true; return false; } }) if (filaCheck) { $(this).controllerJS({ id: $(this).attr('id'), destino: $(this).attr('data-gvhDestino'), panel: $(this).attr('data-gvhPanelOn'), claseM: $(this).attr('data-gvhClaseManejadora'), newWindow: 'false', confirm: '' }) } else { $(this).showMessage('gvhlang_msj16','alert'); } } }); /************************************************************************************************************************ * BOTÓN TOOLTIP rowEdit *************************************************************************************************************************/ /* * FUNCIÓN: Botón tooltip rowEDIT que actúa directamente en un panel tabular */ //$('#'+ambito).on('click','button[id*=btnEdit_][data-gvhTR=simple][data-gvhPanelOn*=lis]',function(e) { $('button[data-gvhWindow='+ambito+'][id*=btnEdit_][data-gvhTR=simple][data-gvhPanelOn*=lis]').on({ click: function() { console.log('rowEdit click '); vID = $(this).attr('id').split('_'); vSufijos = []; idCheck = 'check_'+vID[1]+'_'+vID[2]; vSufijos.push(vID[1]+'_'+vID[2]); panel = $(this).attr('data-gvhPanelOn'); claseM = $(this).attr('data-gvhClaseManejadora'); if ($('input:checkbox[id='+idCheck+']').is(':checked')) { $('input:checkbox[id='+idCheck+']').prop('checked',false); $('input:checkbox[id='+idCheck+']').prop('disabled',false); $(this).formStateFieldsTable({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), sufijos: vSufijos, modo: 'off' }) } else { $('button[data-gvhFunction=update]').filter('[data-gvhClaseManejadora='+claseM+']').prop('disabled',true); /*raizJSON = datosJSON[claseM]['lis']; rowsPag = raizJSON['panel']['rowsPag']; pagAct = $('input[id=pagActual___'+claseM+']').val(); row = parseInt(pagAct*rowsPag)+parseInt(vID[2]);*/ $(this).checkRow( { id: $(this).attr('id'), fila: vID[2], check: 'selected', panel: $(this).attr('data-gvhPanelOn'), type: $(this).attr('data-gvhCheck'), claseM: claseM }); $(this).formStateFieldsTable( { id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), sufijos: vSufijos, checked: 'unique', modo: 'on' }) $('input:checkbox[id='+idCheck+']').prop('checked',true); $('input:checkbox[id='+idCheck+']').prop('disabled',true); } checkeado = false; $('input:checkbox[id^=check_]').map(function() { if (($(this).attr('data-gvhClaseManejadora') == claseM) && ($(this).is(':checked'))) checkeado = true; }); if (checkeado == false) { $('button[data-gvhFunction=update]').filter('[data-gvhClaseManejadora='+claseM+']').prop('disabled',false); } } }); /* * FUNCIÓN: Botón tooltip rowEDIT que actúa directamente en un panel Tabular-Registro */ //$('#'+ambito).on('click','button[id*=btnEdit_][data-gvhTR=TR]',function(e) { $('button[data-gvhWindow='+ambito+'][id*=btnEdit_][data-gvhTR=TR]').on({ click: function() { id = $(this).attr('id'); vID = id.split('_'); idCheck = 'check_'+vID[1]+'_'+vID[2]; $('input:checkbox[id='+idCheck+']').prop('checked',true); panel = $(this).attr('data-gvhPanelOn'); console.log(datosJSON); claseM = $(this).attr('data-gvhClaseManejadora'); panelJSON = $(this).attr('data-gvhPanelJSON'); indiceJSON = $(this).indexDataJSON({ claseManejadora: claseM, panel: panelJSON, row: vID[2] }); raizJSON = datosJSON[claseM][panelJSON]; raizJSON['data'][indiceJSON]['gvhJS_selected'] = 'selected'; $(this).controllerJS({ id: $(this).attr('id'), destino: $(this).attr('data-gvhDestino'), panel: $(this).attr('data-gvhPanelOn'), claseM: $(this).attr('data-gvhClaseManejadora'), newWindow: 'false', confirm: '' }) } }); /************************************************************************************************************************ * BOTÓN TOOLTIP LIMPIAR *************************************************************************************************************************/ /* * FUNCIÓN: BOTÓN limpiar formulario */ $('button[id*=bttlLimpiar][data-gvhFunction=clean]').on({ click: function() { $(this).cleanForm({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), claseM: $(this).attr('data-gvhClaseManejadora') }) } }); /************************************************************************************************************************ * BOTÓN TOOLTIP exportCSV *************************************************************************************************************************/ /* * FUNCIÓN: BOTÓN ejecutará una acción exportCSV que vendrá en data-gvhDestino */ $('button[data-gvhWindow='+ambito+'][data-gvhFunction=exportCSV]').on({ click: function() { $(this).controllerJS({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), destino: $(this).attr('data-gvhDestino'), newWindow: 'false', confirm: '' }) } }); /************************************************************************************************************************ * BOTÓN TOOLTIP help *************************************************************************************************************************/ /* * FUNCIÓN: BOTÓN que muestra la ayuda */ $('button[data-gvhWindow='+ambito+'][data-gvhFunction=help]').on({ click: function() { $(this).popupWindow({ windowURL: $(this).attr('data-gvhDestino'), centerScreen: 1, height: 600, width: 800, windowName:'help' }); } }); /************************************************************************************************************************ * BOTÓN TOOLTIP openDoc *************************************************************************************************************************/ /* * FUNCIÓN: botón que abre un documento que viene dado por la BD * */ //$('#'+ambito).on('click','button[data-gvhFunction=openDoc]',function(e) { $('button[data-gvhWindow='+ambito+'][data-gvhFunction=openDoc]').on({ click: function() { $(this).popupWindow({ windowURL: $(this).attr('data-gvhDestino'), centerScreen: 1, height: 600, width: 800, windowName:'document' }); } }); /************************************************************************************************************************ * BOTÓN TOOLTIP particular *************************************************************************************************************************/ /* * FUNCIӓN: BOTÓN que ejecutará una acción definida por el usuario (data-gvhDestino) */ //$('#'+ambito).on('click','button[data-gvhFunction=particular][class=btnTooltip]',function(e) { $('button[data-gvhWindow='+ambito+'][data-gvhFunction=particular][class=btnTooltip]').on({ click: function() { var panelOn = $(this).attr('data-gvhPanelOn'); var vSufijos = []; if ((panelOn == 'lis') || (panelOn == 'lisDetalle')) { $('input[id*=check_'+panelOn+']:checked').each(function() { sufijo = $(this).attr('id').split('check_')[1]; vSufijos.push(sufijo); }); } if ((vSufijos.length > 0) || ((panelOn == 'edi') || (panelOn == 'ediDetalle'))) { $(this).controllerJS({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), destino: $(this).attr('data-gvhDestino') }) } else { $(this).showMessage('gvhlang_msj16','alert'); } } }); /************************************************************************************************************************ * BOTÓN TOOLTIP saltar *************************************************************************************************************************/ /* * FUNCIÓN: salto * */ //$('#'+ambito).on('click','button[data-gvhFunction=jump]',function(e) { $('button[data-gvhFunction=jump][data-gvhWindow='+ambito+']').on({ click: function() { console.log('gvh_botonTooltip.js - saltar'); var panelOn = $(this).attr('data-gvhPanelOn'); var vSufijos = []; if ((panelOn == 'lis') || (panelOn == 'lisDetalle')) { $('input[id*=check_'+panelOn+']:checked').each(function() { sufijo = $(this).attr('id').split('check_')[1]; vSufijos.push(sufijo); }); } formulario = "F_"+panelOn; destinoLength = $(this).attr('data-gvhDestino').length; if (destinoLength > 0) { destino = $(this).attr('data-gvhDestino'); } else { destino = $('#'+formulario).attr('action'); } newWindow = $(this).attr('data-gvhNewWindow'); if (newWindow === undefined) { newWindow = 'false'; } $(this).controllerJS({ id: $(this).attr('id'), panel: panelOn, destino: destino, newWindow: newWindow, claseM: $(this).attr('data-gvhClaseManejadora'), message: $(this).attr('title') }) } }); /************************************************************************************************************************ * BOTÓN TOOLTIP updateField *************************************************************************************************************************/ /* * FUNCIӓN: */ //$('#'+ambito).on('click','button[data-gvhFunction=updateField]',function(e) { $('button[data-gvhWindow='+ambito+'][data-gvhFunction=updateField]').on({ click: function() { var id = $(this).attr('id'); $('input[id=h_'+$(this).attr('id')+']').val('S'); var campo = $(this).attr('data-gvhActualizaA'); var panel = $(this).attr('data-gvhPanelOn'); var claseM = $(this).attr('data-gvhClaseManejadora'); var formulario = $(this).closest('form'); var actionOld = $(formulario).attr('action'); var classMain = $('#claseManejadora___'+panel).val(); console.log(' ****** CLICK updateField() *******'); $('#'+id).updateEvent({ id: id, actualizaA: campo, panel: panel, claseM: claseM, formulario: formulario, message: $(this).attr('title') }); } }); /************************************************************************************************************************ * BOTÓN TOOLTIP print *************************************************************************************************************************/ /* * FUNCIӓN: Imprime pantalla */ $('button[data-gvhWindow='+ambito+'][data-gvhFunction=print]').on({ click: function() { window.print(); } }); /************************************************************************************************************************ * BOTÓN TOOLTIP que abre popover *************************************************************************************************************************/ /* * BOTÓN TOOLTIP infImg * FUNCIÓN: Muestra una capa con información relativa a un campo (cwinformation) */ //$('button[data-gvhWindow='+ambito+'][id*=infImg_][data-toggle=popover]').on({ $('button[data-toggle=popover]').on({ click: function() { $(this).popover({ html: true }); } }); $('body').on('hidden.bs.popover', function (e) { $(e.target).data("bs.popover").inState = { click: false, hover: false, focus: false } }); /* * BOTÓN TOOLTIP infoLang * FUNCIÓN: Muestra la información del multiidioma */ //$('button[data-toggle="popover"]').popover({html:true}); /************************************************************************************************************************ * BOTÓN TOOLTIP árbol *************************************************************************************************************************/ /* * BOTÓN TOOLTIP árbol */ //$('#'+ambito).on('click','button[data-gvhArbol]',function(e) { $('button[data-gvhWindow='+ambito+'][data-gvhArbol]').on({ click: function() { $('div[id=divArbol]').toggle(); } }); /************************************************************************************************************************ * BOTÓN TOOLTIP url *************************************************************************************************************************/ /* * BOTÓN TOOLTIP url */ //$('#'+ambito).on('click','button[data-gvhFunction=url]',function(e) { $('button[data-gvhWindow='+ambito+'][data-gvhFunction=url]').on({ click: function() { var id = $(this).attr('id'); campo = id.split('gvhURL_')[1]; url = $('#'+campo).val(); var http = url.indexOf("http"); var ftp = url.indexOf("ftp"); if (url != '') { if ((url.indexOf("file:///") > -1)) { $(this).popupWindow({ windowURL: url, centerScreen: 1, height: 600, width: 800, windowName: 'url' }); } else { if ((url.indexOf("http") == -1) && (url.indexOf("ftp") == -1)) { url = "//"+url; } if ((url.indexOf("http") > -1) || (url.indexOf("ftp") > -1)) { $(this).popupWindow({ windowURL: url, centerScreen: 1, height: 600, width: 800, windowName: 'url' }); } } } } }); /************************************************************************************************************************ * BOTÓN TOOLTIP DEBUG *************************************************************************************************************************/ /* * BOTÓN TOOLTIP DEBUG */ //$('#'+ambito).on('click','button[data-gvhFunction=gvHidraDebug]',function(e) { $('button[data-gvhWindow='+ambito+'][data-gvhFunction=gvHidraDebug]').on({ click: function() { $(this).popupWindow({ windowURL: $(this).attr('data-gvhDestino'), scrollbars: 1, centerScreen: 1, height: '700', width: '1300', windowName:'newWindow' }); } }); /* * BOTÓN TOOLTIP OPENWS * abre una ventana de selección */ $('button[data-gvhWindow='+ambito+'][data-gvhFunction=openWS]').on({ click: function(e) { e.stopPropagation(); var panel = $(this).attr('data-gvhPanelOn'); var modoPanel = $('div[id=P_'+panel+']').attr('data-gvhestadopanel'); var id = $(this).attr('id').split('___'); modoPanel = 'W'; if (id[0] == 'ins') modoPanel = 'I'; $(this).openWS({ destino: $(this).attr('data-gvhDestino'), campo: $(this).attr('data-gvhActSobre'), formOrigen: $(this).closest('form'), panelActua: panel, claseManejadora: $(this).attr('data-gvhClaseManejadora'), modoPanelOrigen: modoPanel, message: $(this).attr('title') }); } }); $('button[data-gvhWindow='+ambito+'][data-gvhFunction=findWS]').on({ click: function() { var destino = $(this).attr('data-gvhDestino'); $('#F_vSeleccion').prop('action',destino); $('#F_vSeleccion').submit(); } });