/* * Codificación UTF-8 * * FUNCIONES: * - deselectAllCheckTable(claseManejadora) * - checkUnique(id, fila, json, claseManejadora, panel) * - checkRow(id, fila, check, panel, type, claseM) * - checkAll(id, check, panel) */ var gvh = gvh || {}; /* ***************************************** * FUNCIONES PARA INTERACTUAR CON UNA TABLA ****************************************** */ (function ($) { /* * FUNCIÓN: deselectCheckTable() */ $.fn.deselectAllCheckTable = function(options) { var defaults = $.extend({ claseManejadora: '', panel: 'lis' },options); var raizJSON = gvh.getRoot(claseManejadora,'lis'); var numReg = gvh.getNumReg(raizJSON); for(i=0;i 0 || target.is('[id^="check_lis_"]') ) { return; } e.stopImmediatePropagation(); e.preventDefault(); e.stopPropagation(); var id = $(this).closest('[data-gvhtable="DataTable"]').attr('id'); var panel = $(this).attr('data-gvhpanelon'); var claseM = $(this).attr('data-gvhClaseManejadora'); // Deseleccionamos las tuplas $(this).checkAll( { id: id, check: 'false', panel: panel, claseM: claseM } ); var tr = $( e.target ).closest( 'tr[data-gvhpaneljson="lis"]' ); if( tr ) { var checkbox = tr.find( '[id^="check_lis_"]'); if( checkbox ) { if( !checkbox.is(':checked') ) { checkbox.click(); } $( '[data-gvhclasemanejadora='+claseM+'] #'+idButton ).click(); } } return false; }; })(jQuery); /* ********************* * EVENTOS DESDE EL DOM *********************** */ /* * click: check general */ $('#gvhPage').offon( 'click', 'input:checkbox[data-gvhFunction=checkAll]', function(e) { $(this).checkAll({ id: $(this).attr('id'), check: $(this).is(':checked'), panel: $(this).attr('data-gvhPanelOn') }); }); /* * mouseover/mouseout: ratón sobre las filas */ // TODO : Revisar para gvhMain y gvhModal $('table[data-gvhOverRow=true] tbody tr').hover( function() { $( this ).addClass("rowOver"); }, function() { $( this ).removeClass("rowOver"); }); /* * mouseover/mouseout: ratón sobre las filas */ //$('#'+ambito).on('click','span[id=down],span[id=up]',function(e) { $('#gvhPage').offon( 'click', 'span[id=down],span[id=up]', function(e) { destino = $(this).attr('data-gvhDestino'); formulario = $(this).closest('form'); claseM = $(this).attr('data-gvhClaseManejadora'); $(this).controllerJS({ id: $(this).attr('id'), panel: $(this).attr('data-gvhPanelOn'), destino: destino, newWindow: 'false', claseM: claseM }) }); /* * click sobre una fila de la tabla de un panel LIS */ $('#gvhPage').offon( 'select', 'tr[data-gvhpaneljson="lis"][data-gvhclasemanejadora] .form-control', function(e) { gvh.onSelectionActive = true; e.preventDefault(); e.stopImmediatePropagation(); e.stopPropagation(); } ); $('#gvhPage').offon( 'click', 'tr[data-gvhpaneljson="lis"][data-gvhclasemanejadora]', function(e) { e.preventDefault(); if( gvh.onSelectionActive ) { e.stopImmediatePropagation(); gvh.onSelectionActive = false; return; } var idButton = $(this).closest('[data-onrowclick]').attr('data-onrowclick'); if( idButton ) { $(this).onRowEvent( e, idButton ); } } ); /* * Click doble sobre una fila de la tabla de un panel LIS */ $('#gvhPage').offon( 'dblclick', 'tr[data-gvhpaneljson="lis"][data-gvhclasemanejadora]', function(e) { e.preventDefault(); var idButton = $(this).closest('[data-onrowdoubleclick]').attr('data-onrowdoubleclick'); if( idButton ) { $(this).onRowEvent( e, idButton ); } gvh.onSelectionActive = false; } ); /* * Al hacer doble click sobre la cabecera de un panel, alterna el estado de colapso del panel. */ $('#gvhPage').offon( 'dblclick', '[data-gvhcollapsible] > .panel-heading', function(e) { console.log(' toggle collapse!!!' ); var panel = $(this).closest( '.panel' ); if( !panel ) return; console.log( panel.find( '.panel-body' ) ); panel.find( '.panel-body' ).toggle(); console.log( panel.find( '.gvhBarraInfPanel' ) ); panel.find( '.gvhBarraInfPanel' ).toggle(); } );