Cómo Añadir Avisos
Los avisos son notificaciones temporales que no se almacenan en la base de datos, y que resultan útiles para alertar a los usuarios sobre situaciones específicas, como mensajes no leídos en el chat o correos electrónicos pendientes.
Tanto las notificaciones como los avisos no se muestran al usuario en tiempo real. En cambio, existe un método AJAX que se ejecuta cada cierto tiempo (configurable por el usuario receptor). Una vez completada la petición AJAX, se muestran los nuevos mensajes.
Añadir un Aviso Directamente
Utilizando esta opción, puedes añadir un aviso de forma directa sin realizar comprobaciones adicionales:
NotificationNotice::addNotice(
'titulo del aviso',
'mensaje del aviso',
'admin', // Nick del usuario al que va el aviso, utiliza '*' para enviarlo a todos los usuarios
'Dashboard' // Enlace interno a un controlador
);
Añadir un Aviso Mediante Función
Esta opción permite añadir una función que realizará las comprobaciones necesarias antes de añadir el aviso si corresponde. La función recibirá el nick del usuario para el que se está ejecutando:
NotificationNotice::addFunction(function(string $nick) {
// Obtener todas las facturas creadas hoy
$facturas = new FacturaCliente();
$where = [new DataBaseWhere('fecha', Tools::date())];
foreach ($facturas->all($where, [], 0, 0) as $factura) {
NotificationNotice::addNotice(
'Factura creada ' . $factura->code,
'Se creó la factura a las ' . $factura->hora,
'admin', // Nick del usuario al que va el aviso, utiliza '*' para enviarlo a todos los usuarios
$factura->url() // Enlace interno a un controlador
);
}
});