[SOLUCIONADO] Chequear permisos de usuario antes de navegar_a una operacion

Hola! como va? quería hacer una operación que se ejecute cuando los usuarios se logueen. Es una ventana de aviso (operación en popup, cuadro y formulario) que se ejecutaría al inicio de la sesión unicamente si se cumplen ciertas condiciones y si el usuario recientemente logueado tiene permiso para acceder a dicha operación.
Mi idea era en item_inicio.php, hacer el chequeo de condiciones, y llamar a la operacion a través de vinculador()->navegar_a(operacion). Previo a esto tendría que verificar si la operacion está en los permisos del usuario.
Pude pescar como acceder a los perfiles del usuario, pero no al contenido de dichos perfiles.
En http://foro.comunidad.siu.edu.ar/index.php?topic=2722 hay una idea que es similar a la que yo pensé, pero también está este comentario de Richard…

``` toba::vinculador()->navegar_a('toba_referencia', '1000230'); ```

Con eso redireccionas al cliente a la operacion que vos queres, siempre y cuando el usuario tenga permisos para poder navegarla.


El punto sería que pasa si el usuario no tiene permisos, o como chequear si los tiene antes de hacer la llamada.
Desde ya, gracias!

Hola Martin, como te va? Lo que podés hacer es

$url = toba::vinculador()->get_url('toba_referencia', '1000230');

Si el usuario tiene permisos para acceder a esa operación, $url se va a cargar con la url a esa operación. Luego podés hacer un navegar_a. Sino mejor todavía, podés chequear si el grupo de acceso a los que pertenece el usuario puede acceder a esa operación

toba::proyecto()->puede_grupo_acceder_item('1000230')

Y luego si haces un navegar_a.

Fijate que si seguís una traza del get_url, este llama a un generar_solicitud en la misma clase toba_vinculador y es este último el que chequea los permisos del usuario para esa operación. Tené en cuenta que esto solo controla a nivel de proyecto.

Espero te sirva. Abrazo.