Guillermo Trutner wrote:
Hola:
Se nos presenta la siguiente situación: al finalizar de grabar una operación, queremos mostrar un mensaje al usuario con el resultado de dicha operación y además saltar a otra operación. Como el mensaje aparece antes que el salto de operación, nunca se muestra. De qué forma resultaría más sencillo hacer esto? (sin tener que pasar el resultado como parámetro a la segunda operación que es totalmente genérica y no tiene nada que ver con la primera).
Saludos,

Hola Guille,
Se me ocurren dos formas:

Con Javascript se puede atrapar el cerrar de la notificación y ahí hacer la navegación a la otra operación. Lo feo es que atraparloar no es tán sencillo como debería, además no se porque motivo no anda si le das a la tecla Escape para cerrarlo. Por si interesa dejo el snippet

$vinculo = toba::vinculador()->get_url(null, 1000070);
echo "<script>
var callback = 'overlay();window.location.href = \"$vinculo\"; ';
var titulo = 'Hola';
var mensaje = '<div class=\"overlay-mensaje\">';
mensaje += 'Mundo';
mensaje += \"</div><div class='overlay-botonera'><input id='boton_overlay' class='ei-boton' type='button' value='Aceptar' onclick='\" + callback + \"'/></div>\";
var ancho = null;
notificacion.mostrar_ventana_modal(titulo, mensaje, ancho, callback);
</script>";

Usando php una manera segura sería dejar el mensaje en sesión y en el contexto de ejecución mostrarlo. Esto es independiente de la operación.

En la operación original:

toba::memoria()->set_dato("mensaje", "Hola Mundo!");
toba::vinculador()->navegar_a(null, 1000070);

En el contexto de ejeución:

class contexto_ejecucion implements toba_interface_contexto_ejecucion
{
   function conf__inicial()
   {
       $mensaje = toba::memoria()->get_dato("mensaje");
       if (isset($mensaje)) {
toba::memoria()->eliminar_dato("mensaje"); //Para no repetirlo
           toba::notificacion()->info($mensaje);
       }
...
}

Si para cambiar de operación usas un evento, podés setear el mensaje en memoria en la configuración del componente.
Espero que sirva.
Saludos,
Seba






_______________________________________________
toba.usuarios mailing list
toba.usuarios@siu.edu.ar
https://listas.siu.edu.ar/mailman/listinfo/toba.usuarios

Responder a