/* * Codificación UTF-8 * Métodos que trabajan sobre el estado del panel según la operación a realizar sobre él (lectura, inserción, modificación, borrado) * * FUNCIONES: * iconUpdate( modo, panel ) * blockExit( exit, modo, panel ) * getStatePanel(panel) * cleanForm(id, panel) * updateEvent(objElemento, message = msgLoad) * changeField(objElemento) * setButtonDependPanel(objElemento,depend) * * offTooltipBasic(objElemento, modo) * formOnButtons(id,panel,modo) * formOnFields(objElemento, operacion, modo='on') * formOnInsert(objElemento) * formOnUpdate(objElemento, modo='on') * formOnDelete(objElemento) */ var gvh = gvh || {}; +function($) { 'use strict'; /** * iconUpdate() * FUNCIӓN: Mostrar icono barra inferior modificación * @access private * @var modo: ['R'|'I'|'W'] * @var panel: panel sobre el que se está trabajando * @var claseM: clase manejadora del panel */ gvh.iconUpdate = function( modo, panel, claseM ) { console.log(' *** gvh_panel.js - iconUpdate() -> '+panel+' modo '+modo+' claseM '+claseM ); if( (panel == 'fil') || (panel == 'P_fil') ) { return; } var imgMod = panel + '_imgModificado'; var imgModificado = $( '#' + imgMod ).filter('[data-gvhClaseManejadora='+claseM+']'); if( $( '#' + imgMod ).filter('[data-gvhClaseManejadora='+claseM+']').length < 0) { console.log('¡¡¡Error icono modificación "'+imgMod+'"!!!'); return } if( modo == 'R' ) { $( '#' + imgMod ).filter('[data-gvhClaseManejadora='+claseM+']').hide(); } else { $( '#' + imgMod ).filter('[data-gvhClaseManejadora='+claseM+']').show(); } } /** * blockExit: Bloquea la salida del panel mientras no se ejecute o cancele la acción que se haya indicado (insertar/modificar) * @access private * @var exit: booleano * @var panel: tipo de panel sobre el que se está trabajando ['edi'|'ediDetalle'|'lis'|'lisDetalle'] * @var modo: ['I' (inserción) | 'W' (modificación) | 'R' (lectura)] * @var claseM: clase manejadora del panel */ gvh.blockExit = function( exit, modo, panel, claseM, patron ) { console.log(' *** gvh_panel.js - blockExit() -> '+panel+' modo '+modo+' claseM '+claseM ); $( '#home' ).attr( 'data-gvhExit', exit ); $( '#close' ).attr( 'data-gvhExit', exit ); $( 'div[id=P_'+panel+'][data-gvhWindow='+ambito+'][data-gvhClaseManejadora='+claseM+']' ).attr( 'data-gvhestadopanel', modo ); $( '#'+ambito).attr( 'data-gvhestadopanel', modo ); gvh.iconUpdate( modo, panel, claseM ); } /** * getStatePanel: Obtenemos el estado del panel ('R', 'W', 'I') * @access private * @var exit: booleano * @var panel: tipo de panel sobre el que se está trabajando ['edi'|'ediDetalle'|'lis'|'lisDetalle'] */ gvh.getStatePanel = function( panel ) { console.log(' *** gvh_panel.js - getStatePanel()'); return $('#P_'+panel).attr('data-gvhEstadoPanel'); } /** * cleanForm: Marcará el estado del registro: insertada/modificada * @access private * @var id: id del botón limpiar */ gvh.cleanForm = function(id) { console.log(' *** gvh_panel.js - cleanForm()' ); var claseM = $('#'+id).attr( 'data-gvhClaseManejadora' ); var panel = $('#'+id).attr( 'data-gvhPanelOn' ); var panelJSON = panel.substr( 0, 3 ); var raizJSON = gvh.getRoot(claseM,panelJSON); var reg = 0; var vFields = gvh.getFieldsJSON(raizJSON,reg); var pagActiva = gvh.getPagActive(raizJSON); var numReg = 1; if (panelJSON != 'fil') { if (panelJSON == 'lis') { var vReg = gvh.getRegAlter(raizJSON); var numReg = count(vReg); var rowsPag = gvh.getRowsPag(raizJSON); var rowTab = row%rowsPag; var sufijoRow = panel+'_'+rowTab; } else { var reg = gvh.getPagActive(raizJSON); } } var vFields = gvh.getFieldsJSON(raizJSON,reg); for (var i=0;i 0 ) { gvh.addList(inputField, listOptions, valueOld); } } else { var idCampo = inputField.attr('id'); $('#'+idCampo+' option:selected').attr('selected',false); $('#'+idCampo+' option[value="'+valueOld+'"]').prop("selected", true); $('#'+idCampo+' option[value="'+valueOld+'"]').attr("selected", true); } gvh.setValue(raizJSON,field,reg,valueOld); break; case 'cwlistaradio': var radio = $('input:radio[name*='+field+']').filter('[data-gvhClaseManejadora='+claseManejadora+']'); if( inputField.is(':visible') ) { if (valueOld != '') radio.filter('[value='+valueOld+']').prop('checked',true); else radio.prop('checked',false); gvh.setValue(raizJSON,field,reg,valueOld); } break; case 'cwlista select2': var inputField = $('input[id*='+field+']').filter('[data-gvhClaseManejadora='+claseM+']'); var lista = gvh.getFieldList(raizJSON,field,false,pagActiva); var descripcion = ''; for( i=0;i 0) && (regAlter.length > 0)) { for (var index=0;index++;index
'; gvh.setClassField(raizJSON,field,numReg,'fieldRequired'); } } } } if (fieldsRequired == '') { gvh.blockExit(true,'R',panel,claseM); } return fieldsRequired; } // fieldsRequired() /** * updateEvent() * FUNCIӓN: lanzar acción de interfaz * @access private * @var objElemento: elemento dom que lanza la acción * @var message: texto que aparecerá en el mensaje */ gvh.updateEvent = function(objElemento, message = msgLoad) { console.log(' *** gvh_panel.js - updateEvent() -> '+objElemento.attr('id')); var id = objElemento.attr('id'); var name = objElemento.attr('name'); //if ($('input:radio[name='+name+']').length > 0) // Si el elemento es un radiobutton pasamos como id el atributo name if (objElemento.attr('data-gvhCWSource') == 'cwlistaradio') { var id = name; } var actualizaA = objElemento.attr('data-gvhActualizaA'); var panel = objElemento.attr('data-gvhPanelOn'); if ((actualizaA != '') && (actualizaA != undefined)) { var claseM = objElemento.attr('data-gvhClaseManejadora'); if ($('#'+id).is(':radio')) { id = $(this).attr('name'); } var panelJSON = panel; if (panel == 'ediDetalle') panelJSON = 'edi'; else if (panel == 'lisDetalle') panelJSON = 'lis'; var formulario = objElemento.closest('form'); var idForm = formulario.attr('id'); var value = objElemento.val(); var url = 'phrame.php?action=gvhJSRefreshUI&gvhcache=true&gvhpanel='+panelJSON+'&claseManejadora='+claseM+'&gvHclass='+claseM+'&gvHfname='+idForm+'&gvHfrom='+id+'&gvHvalue='+value+'&gvHtarget='+actualizaA; console.log(' ... Llamada a phrame: '+url); //Mostramos el progreso Pace.restart(); document.body.className = document.body.className; // Forzamos a actualizar la interfaz $.ajax({ data: datosJSON[claseM][panelJSON]['dataPerform'], type: "POST", cache: false, datatype: "script", url: url, beforeSend: function() { console.log(' ... Beforesend ...'); gvh.loading('on',message); }, success: function(response) { console.log(' ... Success: '+response); //EJECUTA JAVASCRIPT EN LA PÁGINA (acciones de interfaz) response.context.action = 'NoAction' var rspPhrameJSON = $.parseJSON(response); if (rspPhrameJSON.context.action == 'NoAction') { eval(rspPhrameJSON.context.script); } }, error:function( jqXHR, textStatus, errorThrown ) { console.log(' ... # ERROR updateEvent'); }, complete:function( jqXHR, textStatus, errorThrown ) { console.log('# COMPLETE updateEvent'); gvh.loading('off'); } }) } else { console.log(' ¡¡¡No se ha indicado el campo que debe ser actualizado. Param "actualizaA".!!!'); } }; // updateEvent() /** * changeField: Actualización del datosJSON con el cambio producido en el campo * El elemento necesita tener los siguientes atributos si se crea de forma directa en html: * -> data-gvhClaseManejadora * -> data-gvhPanelOn * -> data-gvhCWSource * @access private * @var objElemento: componente botón que se ha pulsado */ gvh.changeField = function( objElemento ) { console.groupCollapsed(' ** gvh_panel.js - changeField() '); var fieldAmbito = objElemento.attr( 'data-gvhWindow' ); if( fieldAmbito == ambito ) { var claseM = objElemento.attr( 'data-gvhClaseManejadora' ); var panel = objElemento.attr( 'data-gvhPanelOn' ); var plugin = objElemento.attr( 'data-gvhCWSource' ); var panelJSON = panel.substring( 0, 3 ); var idCampo = objElemento.attr( 'id' ); console.log( ' *** changeField() -> '+idCampo ); var campoJSON = idCampo; if( panelJSON != 'fil' ) { campoJSON = idCampo.split('___')[1]; if( plugin == 'cwlistaradio' ) { var name = objElemento.attr( 'name' ); campoJSON = name.split('___')[1]; } } var raizJSON = gvh.getRoot( claseM, panelJSON ); var plugin = ''; var external = objElemento.attr( 'data-gvhExternal' ); if( external == 'true' ) // Tratamiento de campos external { if (gvh.getExistField(raizJSON,campoJSON,0,true)) { plugin = gvh.getPlugin(raizJSON,campoJSON,0,true); } } else { var regJSON = 0; // Según el panel se calcula indice del datosJSON if (gvh.getStatePanel(panel) == 'I') { regJSON = gvh.getPagIns(raizJSON); } else { switch( panelJSON ) { case 'fil': regJSON = 0; break; case 'lis': var row = idCampo.split('___')[2].split('_')[1]; regJSON = gvh.indexDataJSON( raizJSON, row ); var sufijo = panel+'_'+row; break; case 'edi': var pagActual = gvh.getPagActive(raizJSON); regJSON = pagActual; break; default: regJSON = 0; break; } } if (gvh.getExistField(raizJSON,campoJSON,regJSON)) { var plugin = gvh.getPlugin(raizJSON,campoJSON,regJSON); var hidden = gvh.isHidden(raizJSON,campoJSON,regJSON); gvh.setSelectedReg( raizJSON, regJSON, 'add' ); var objPanel = $('div[id=P_'+panel+'][data-gvhWindow='+ambito+']'); var estado = $('div[id=P_'+panel+'][data-gvhWindow='+ambito+']').attr( 'data-gvhestadopanel' ); switch( estado ) { case 'W': estado = 'modificada'; gvh.setStateReg( raizJSON, 'updated', regJSON ); break; case 'D': estado = 'borrada'; gvh.setStateReg( raizJSON, 'deleted', regJSON ); break; case 'I': estado = 'insertada'; gvh.setStateReg( raizJSON , 'inserted', regJSON ); break; default: estado = 'nada'; gvh.setStateReg( raizJSON , 'nada', regJSON ); break; } if( hidden == 1 ) // Campo oculto { plugin = 'Hidden'; } } else { console.log( '¡¡¡ changeField() - '+campoJSON+' no existe este campo en el registro '+regJSON+' !!!' ); } } if( plugin != '' ) { var valorCampo = ''; switch( plugin ) { case 'cwcampotexto': case 'cwareatexto': case 'cwrichareatexto': valorCampo = objElemento.val(); break; case 'cwlista': valorCampo = objElemento.val(); var idCampo = objElemento.attr('id'); $('#'+idCampo+' option:selected').attr('selected',false); $('#'+idCampo+' option[value="'+valorCampo+'"]').prop("selected", true); var dependencia = gvh.isDependenceList(raizJSON,campoJSON,regJSON); break; case 'cwimagen': valorCampo = objElemento.attr( 'src' ); break; case 'cwlistaradio': valorCampo = $('input:radio[name='+name+'][data-gvhWindow='+ambito+']:checked').val(); var radio = $('input:radio[name='+name+'][data-gvhWindow='+ambito+']'); break; case 'cwcheckbox': if (objElemento.is(':checked')) { valorCampo = objElemento.attr('data-gvhValueCheck'); } else { valorCampo = objElemento.attr('data-gvhValueUnCheck'); } break; case 'Hidden': valorCampo = gvh.getValue(raizJSON,campoJSON,0); break; default: console.log( ' ¡¡¡ changeField() - '+plugin+' plugin no controlado !!!'); break; } if( external == 'true' ) { gvh.setValue(raizJSON,campoJSON,0,valorCampo,true); } else { gvh.setValue(raizJSON,campoJSON,regJSON,valorCampo,false); } var actualizaA = objElemento.attr( 'data-gvhActualizaA' ); if( (actualizaA != '') && (actualizaA != undefined) ) { var formulario = objElemento.closest( 'form' ); if (plugin == 'cwlistaradio') gvh.updateEvent(radio); else gvh.updateEvent($('#'+idCampo)); } if( panel != 'fil' ) { this.blockExit( false, $('#P_'+panel).attr('data-gvhEstadoPanel'), panel, claseM ); } console.log( raizJSON ); } } console.groupEnd(); } // changeField() /** * setButtonDependPanel() * FUNCIӓN: Marcamos el botón tooltip que pasamos por parámetro si es dependiente o no del panel * @access private * @var objElemento: componente botón que se ha pulsado * @var depend: ['true','false'] * */ gvh.setButtonDependPanel = function(objElemento,depend) { console.log( ' *** gvh_panel.js - setButtonDependPanel()'); var id = objElemento.attr('id'); var vId = id.split('___'); var claseM = objElemento.attr('data-gvhClaseManejadora'); var panel = objElemento.attr('data-gvhPanelOn'); var raizJSON = datosJSON[claseM][panel]; if (panelJSON == 'edi') { var nReg = gvh.getPagActive(raizJSON); } else { var row = vId[2].split('_')[1]; var nReg = gvh.indexDataJSON(raizJSON,row); } gvh.setDependPanelField(raizJSON,vId[1],nReg,depend); } /** * setFieldEnable() * FUNCIӓN: Marcamos el botón tooltip editable o no * @access private * @var objElemento: componente botón que se ha pulsado * @var depend: ['true','false'] * */ gvh.setFieldEnable = function(objElemento,depend) { console.log( ' *** gvh_panel.js - setFieldEnable()'); var id = objElemento.attr('id'); var plugin = objElemento.attr('data-gvhCWSource'); var name = objElemento.attr('name'); var panel = objElemento.attr('data-gvhPanelOn'); var panelJSON = panel.substring(0,3); var field = id; if ((id != undefined) && (panelJSON != 'fil')) { var vId = id.split('___'); var field = vId[1]; } else { console.log(' ¡¡¡ gvh.setFieldEnable() - id '+id+' del objElemento !!!'); } var claseM = objElemento.attr('data-gvhClaseManejadora'); var raizJSON = datosJSON[claseM][panel]; if (panelJSON == 'edi') { var nReg = gvh.getPagActive(raizJSON); } else if (panelJSON == 'lis') { var row = vId[2].split('_')[1]; var nReg = gvh.indexDataJSON(raizJSON,row); } else { var row = 0; var nReg = 0; } var plugin = gvh.getPlugin(raizJSON,field,nReg); if ((depend == 'true')) { var idCampoBtn = ''; switch( plugin ) { case 'cwcampotexto': objElemento.addClass('modify'); if (objElemento.hasClass('noEdit')) { objElemento.removeClass('noEdit'); objElemento.addClass('edit'); } objElemento.removeAttr('readonly'); var tipoCampo = gvh.getTypeField(raizJSON,field,nReg); if (tipoCampo != 'text') { if (tipoCampo == 'date') { idCampoBtn = 'calD_'+id; } else if (tipoCampo == 'datetime') { idCampoBtn = 'calDT_'+id; } else if (tipoCampo == 'time') { idCampoBtn = 'calT_'+id; } if (idCampoBtn != '') { $('#'+idCampoBtn).prop('disabled',false); $('#'+idCampoBtn).removeClass("disabled"); var tabindex = $('#'+idCampoBtn).attr('tabindex')*(-1); $('#'+idCampoBtn).attr('tabindex',tabindex); } } if (id != undefined) { var vs = $('#vs_'+id); var vsLength = vs.length; if (vsLength > 0) { vs.prop('disabled',false); tabindex = vs.attr('tabindex')*(-1); vs.attr('tabindex',tabindex); } } break; case 'cwareatexto': objElemento.addClass('modify'); if (objElemento.hasClass('noEdit')) { objElemento.removeClass('noEdit'); objElemento.addClass('edit'); } objElemento.removeAttr('readonly'); break; case 'cwrichareatexto': var idEditor = 'editor_'+id; $("div[id*='"+idEditor+"']").attr('contenteditable','true'); break; case 'cwupload': break; case 'cwlabel': objElemento.removeClass("linkDisabled"); objElemento.addClass("link"); objElemento.css('cursor','hand'); objElemento.click(function() { return (objElemento.attr('disabled')) ? false : true; }); break; case 'cwlista': case 'cwlista select2': break; case 'cwimagen': break; case 'cwlistaradio': objElemento.addClass('modify'); if (objElemento.hasClass('noEdit')) { objElemento.removeClass('noEdit'); objElemento.addClass('edit'); } objElemento.removeAttr('readonly'); break; case 'cwcheckbox': break; case 'cwbotontooltip': break; default: console.log( ' ¡¡¡ setFieldEnable() - '+plugin+' plugin no controlado !!!'); break; } objElemento.prop('disabled',false); objElemento.removeClass("disabled"); var tabindex = objElemento.attr('tabindex')*(-1); objElemento.attr('tabindex',tabindex); } else { var idCampoBtn = ''; switch( plugin ) { case 'cwcampotexto': objElemento.removeClass('modify'); if (objElemento.hasClass('edit')) { objElemento.removeClass('edit'); objElemento.addClass('noEdit'); } objElemento.prop('readonly',true); var tipoCampo = gvh.getTypeField(raizJSON,field,nReg); if (tipoCampo != 'text') { if (tipoCampo == 'date') { idCampoBtn = 'calD_'+id; } else if (tipoCampo == 'datetime') { idCampoBtn = 'calDT_'+id; } else if (tipoCampo == 'time') { idCampoBtn = 'calT_'+id; } if (idCampoBtn != '') { $('#'+idCampoBtn).prop('disabled',true); $('#'+idCampoBtn).addClass("disabled"); var tabindex = $('#'+idCampoBtn).attr('tabindex')*(-1); $('#'+idCampoBtn).attr('tabindex',tabindex); } } if (id != undefined) { var vs = $('#vs_'+id); var vsLength = vs.length; if (vsLength > 0) { vs.prop('disabled',true); tabindex = vs.attr('tabindex')*(-1); vs.attr('tabindex',tabindex); } } break; case 'cwareatexto': case 'cwlista': case 'cwlista select2': objElemento.removeClass('modify'); if (objElemento.hasClass('edit')) { objElemento.removeClass('edit'); objElemento.addClass('noEdit'); } objElemento.prop('readonly',true); break; case 'cwrichareatexto': var idEditor = 'editor_'+id; $("div[id*='"+idEditor+"']").attr('contenteditable','false'); break; case 'cwupload': break; case 'cwlabel': objElemento.addClass("linkDisabled"); objElemento.removeClass("link"); objElemento.css('cursor','none'); objElemento.click(function() { return (objElemento.attr('disabled')) ? false : true; }); break; case 'cwlistaradio': objElemento.removeClass('modify'); if (objElemento.hasClass('edit')) { objElemento.removeClass('edit'); objElemento.addClass('noEdit'); } objElemento.prop('readonly',true); break; case 'cwcheckbox': break; case 'cwbotontooltip': break; default: console.log( ' ¡¡¡ setFieldEnable() - '+plugin+' plugin no controlado !!!'); break; } objElemento.prop('disabled',true); var tabindex = objElemento.attr('tabindex')*(-1); objElemento.attr('tabindex',tabindex); } } /** * offTooltipBasic() * FUNCIӓN: Desactiva el resto de botones tooltip con funciones básicas (insertar/modificar/eliminar) al pinchar en uno de ellos * @access private * @var objElemento: componente botón que se ha pulsado * @var modo: ['on','off'] * */ gvh.offTooltipBasic = function(objElemento, modo) { console.log( ' *** gvh_panel.js - offTooltipBasic()'); var id = objElemento.attr('id'); var botonTooltip = $('button[data-gvhWindow='+ambito+'][data-gvhposition=botonera]').filter('[data-gvhfunction=insert],[data-gvhfunction=update],[data-gvhfunction=delete]').not( '[id='+id+']' ); botonTooltip.each( function() { if (modo == 'on') { $(this).removeClass( 'disabled' ); $(this).prop('disabled',false); } else if (modo == 'off') { $(this).addClass( 'disabled' ); $(this).prop('disabled',true); } } ); } // offTooltipBasic() /** * formOnButtons() * FUNCIÓN: Activar botones de la barra inferior * @access private * @var objPanel: panel sobre el que se quieren activar los paneles */ gvh.formOnButtons = function( objPanel ) { var idPanel = objPanel.attr('id'); var panelOn = idPanel.substr(2,idPanel.length); // P_lis console.log( ' *** gvh_panel.js - formOnButtons() '+idPanel ); $( 'button[data-gvhWindow='+ambito+'][id*=bttlTreeSelector_]' ) .filter( '[data-gvhstate=edit][data-gvhposition=panel]' ) .removeClass( 'disabled' ); var boton = $( 'button[data-gvhWindow='+ambito+'][data-gvhposition=cwbarrainfpanel][data-gvhpanelon='+panelOn+']' ); boton.each( function() { if( $(this).is( ':hidden' ) ) { $(this).show(); } } ); }; /** * formOnFields() * FUNCIÓN: Activar campos * @access private * @var objElemento: componente botón que se ha pulsado * @var operacion: ['insertar', 'modificar', 'eliminar'] * @var modo: ['on', 'off'] */ gvh.formOnFields = function(objElemento, operacion, modo='on') { console.groupCollapsed(' ** gvh_panel.js - formOnFields() '); console.log('operacion '+operacion); var id = objElemento.attr('id'); if ( objElemento.is( "div" ) ) { var panel = id.substring(2,id.length); } else { var panel = objElemento.attr('data-gvhPanelOn'); } var claseManejadora = objElemento.attr('data-gvhClaseManejadora'); var panelJSON = panel.substring(0,3); var raizJSON = gvh.getRoot(claseManejadora,panelJSON); var prefijo = ''; //var state = ''; var css = ''; var iter = 0; var numReg = 1; var sufijo = 0; if (panelJSON != 'fil') { if (panelJSON == 'lis') { var vReg = gvh.getRegSelected(raizJSON); var numRows = gvh.getRowsPag(raizJSON); var numReg = vReg.length; var regIns = gvh.getRegInsert(raizJSON); } else { var reg = gvh.getPagActive(raizJSON); var vFields = gvh.getFieldsJSON(raizJSON,reg); } } switch(operacion) { case 'inserted': prefijo = 'ins___'; //state = '[data-gvhstate=new],[data-gvhstate=edit]'; css = 'new'; reg = gvh.getPagIns(raizJSON); if (panelJSON == 'lis') { var vReg = gvh.getRegInsert(raizJSON); var numReg = vReg.length; } else { var vFields = gvh.getFieldsJSON(raizJSON,reg); var sufijo = reg; } break; case 'updated': prefijo = 'cam___'; //state = '[data-gvhstate=edit]'; break; case 'deleted': prefijo = 'cam___'; css = 'delete'; //state = '[data-gvhstate=edit]'; break; default: prefijo = 'cam___'; css = 'edit'; break; } if (panelJSON == 'edi') { if (modo == 'on') gvh.setStateReg( raizJSON, operacion, reg ); else gvh.setStateReg( raizJSON, operacion, reg ); } for (var i=0;i 0) { console.log(' ... Se muestra panel edi (TR).'); $(this).show(); }; break; default: console.log('¡¡¡ Revisar parámetro "data-gvhTipoPanel".!!!'); break; } var idSolapa = "solData__"+panel; if ($('div[id*='+idSolapa+']').length > 0) { console.log(' ... Existen solapas.'); $('div[id*='+idSolapa+']').each(function() { if ($(this).attr('data-gvhWindow') == ambito) { console.log(' ... Se muestra solapa '+$(this).attr('id')); $(this).show(); } }); } var idPanelIns = 'pag_'+panel+'_ins'; console.log(' ... Se muestra el panel de inserción '+idPanelIns); $('#'+idPanelIns).show(); gvh.formOnFields($('#'+id), 'inserted'); gvh.formOnButtons($('#'+idPanel)); console.groupEnd(); } /** * formOnUpdate() * FUNCIÓN: Panel en modo modificación * @access private * @var objElemento: componente botón que se ha pulsado * @var modo: 'on', 'off' */ gvh.formOnUpdate = function(objElemento,modo = 'on') { console.groupCollapsed(' ** gvh_panel.js - formOnUpdate() '); console.log(' ** gvh_panel.js - formOnUpdate() '+objElemento.attr('id')); var id = objElemento.attr('id'); var panel = objElemento.attr('data-gvhPanelOn'); var idPanel = 'P_'+panel; var claseManejadora = objElemento.attr('data-gvhClaseManejadora'); var panelJSON = panel.substring(0,3); var raizJSON = gvh.getRoot(claseManejadora,panelJSON); var numReg = gvh.getNumReg(raizJSON); var pagActive = gvh.getPagActive(raizJSON); var idPaginacion = panel + '_paginacion'; var paginador = $('#'+idPaginacion).attr( 'data-gvhFunction' ); if( paginador == 'pagination' ) { $( '#'+idPaginacion ).twbsPagination( {estado:'modificada'} ); } gvh.blockExit( false, 'W', panel, claseManejadora ); gvh.formOnFields($('#'+id), 'updated',modo); gvh.formOnButtons($('#P_'+panel)); gvh.offTooltipBasic($('#'+id),'off'); console.groupEnd(); } /** * formOnDelete() * FUNCIÓN: Panel en modo modificación * @access private * @var objElemento: componente botón que se ha pulsado */ gvh.formOnDelete = function(objElemento) { console.groupCollapsed(' ** gvh_panel.js - formOnDelete() '); console.log(' ** gvh_panel.js - formOnDelete() '+objElemento.attr('id')); var id = objElemento.attr('id'); var panel = objElemento.attr('data-gvhPanelOn'); var idPanel = 'P_'+panel; var claseManejadora = objElemento.attr('data-gvhClaseManejadora'); var panelJSON = panel.substring(0,3); var raizJSON = gvh.getRoot(claseManejadora,panelJSON); var numReg = gvh.getNumReg(raizJSON); var pagActive = gvh.getPagActive(raizJSON); var idPaginacion = panel + '_paginacion'; var paginador = $('#'+idPaginacion).attr( 'data-gvhFunction' ); if( paginador == 'pagination' ) { $( '#'+idPaginacion ).twbsPagination( {estado:'modificada'} ); } gvh.blockExit( false, 'W', panel, claseManejadora ); gvh.formOnFields($('#'+id), 'deleted'); gvh.formOnButtons($('#P_'+panel)); gvh.offTooltipBasic($('#'+id),'off'); console.groupEnd(); } } (jQuery);