Flash Messages
As mensagens flashs são importantes para personalizar a experiência do usuário com retorno de sucesso, erro ou outros tipos de avisos:
namespace App\Controllers\Pages;
use \App\Utils\Flash;
class Product {
    public static function getProduct($req, $res) {
        // ...
        Flash::create("productNotFound", "Produto não encontrado", FLASH_DANGER);
    }
}Os tipos de flashs podem ser configurados no arquivo define.php:
Flash::define([
    'FLASH_ERROR' => 'error',
    'FLASH_DANGER' => 'danger',
    'FLASH_WARNING' => 'warning',
    'FLASH_INFO' => 'info',
    'FLASH_SUCCESS' => 'success'
]);Após criar uma mensagem é possível renderiza-la para adicionar em uma view:
Flash::create("productNotFound", "Produto não encontrado", FLASH_DANGER);
$flash = Flash::render("productNotFound");É possível também renderizar uma mensagem que não tenha sido criada previamente:
$flash = Flash::render(false, "Produto não encontrado", FLASH_DANGER);Caso deseje, renderize diversas mensagens de uma vez (apenas para mensagens criadas previamente):
$flashs = Flash::renderAll(["productNotFound", "productOutOfStock"]);Uma vez renderizada, adicione-a na view assim como outros parâmetros:
$content = View::render('pages/product', ['flash' => $flash]);O componente das mensagens flashs pode ser alterado em /resources/components/flash/alert.html.
Se necessário, crie outro componente no diretório e altere na criação ou renderização da mensagem:
Flash::create("productNotFound", "Produto não encontrado", FLASH_DANGER, 'alert-new');
// ou
Flash::render("Produto não encontrado", FLASH_DANGER, 'alert-new');Last updated