<div class="box box-info" >
    <div class="box-header">
        <h3 class="box-title">Notificaciones Recibidas</h3>
        <div class="box-tools pull-right">
            {{ boton( 'tabla', "mostrarTodosUsuariosNotificaciones", "cargarTablaUsuariosNotificaciones()", "Actualizar") }}
            {{ boton( 'correo', "mostrarFormularioNuevoUsuariosNotificaciones") }}
            {{ boton( 'marcarComo', "cambiarEstadoUsuariosNotificaciones", "cambiarEstadoUsuariosNotificaciones('LEIDA')", "Leida") }}
            {{ boton( 'marcarComo', "cambiarEstadoUsuariosNotificaciones", "ejecutarOperacionUsuariosNotificaciones()", "Ejecutar") }}
        </div>
    </div>
    <form id="frm-Usuarios-Notificaciones">
        <div class="box-body" >
            <div id="div-tbl-Usuarios-Notificaciones" ></div>
        </div>
    </form>
</div>
<script type="text/javascript" >
    /**
     * Verifica que se haya seleccionado solo un registro, y abre un vista con 
     * un formulario que permite ver y editar todos los datos de un Notificaciones
     * @returns {HTML} Formulario de Datos para Notificaciones
     */
    function ejecutarOperacionUsuariosNotificaciones() {
        var seleccionNotificaciones = unoSoloSeleccionadoTabla('frm-Usuarios-Notificaciones', "EJECUTAR LA OPERACIÓN ASOCIADA");
        if (seleccionNotificaciones) {
            confirmacionOperacion(
                    "¿Seguro que desea EJEJCUTAR LA OPERACIÓN asociada la notificación?",
                    "Una vez que inicies la operación debes terminar porque no podrás acceder a ella nuevamente.",
                    function () {
                        ejecutarOperacion(
                                "Usuarios", "Notificaciones", "ejecutarOperacionAsociada",
                                "" + $("#frm-Usuarios-Notificaciones").serialize(),
                                function (notificacion) {
                                     ejecutarOperacionNotificacion(notificacion.notificacionID);
                                }
                        );
                    }
            );
        }
    }
    /**
     * Cambiar el estado de un registro de Notificaciones.
     * @param {String} NUEVO_ESTADO
     * @returns {JSON} Respuesta del Sistema
     */
    function cambiarEstadoUsuariosNotificaciones(NUEVO_ESTADO) {
        var seleccionNotificaciones = variosSeleccionadosTabla('frm-Usuarios-Notificaciones', "CAMBIAR AL ESTADO " + NUEVO_ESTADO );
        if (seleccionNotificaciones) {
            confirmacionOperacion(
                    "¿Seguro que desea MARCAR COMO LEIDO los elementos seleccionados?",
                    "Con esto confirmas que leiste la notificación o mensaje enviado.",
                    function () {
                        ejecutarOperacion(
                                "Usuarios", "Notificaciones", "marcarComoLeida",
                                "nuevoEstado=" + NUEVO_ESTADO + "&" + $("#frm-Usuarios-Notificaciones").serialize(),
                                function (respuesta) {
                                    cargarTablaUsuariosNotificaciones();
                                }
                        );
                    }
            );
        }
    }
    
    /**
     * Solcita la vista de tabla y la carga en una division (DIV)
     * con identificador div-tbl-Notificaciones.
     * @returns {HTML} Vista Solicitada
     */
    function cargarTablaUsuariosNotificaciones() {
        cargarDivision('div-tbl-Usuarios-Notificaciones', 'Usuarios', 'Notificaciones', 'tablaListado');
    }

    /**
     * Carga inicial de plugins y funciones
     */
    $(document).ready(function () {
        cargarTablaUsuariosNotificaciones();
    });
</script>

