Mensagens de Notificação
Adicionar avisos a uma página de configurações pode fornecer mais detalhes sobre como lidar com as configurações exibidas. Isso pode incluir como obter uma chave de API ou o que precisa ser feito para que as configurações funcionem corretamente. Independentemente do motivo, o NexoPOS inclui uma forma de exibir quatro tipos de avisos: informações, erro, aviso e sucesso.
O tipo de aviso aqui define suas cores. Você usará uma dessas cores para corresponder à expressão da gravidade do aviso.
Para prosseguir, você deve primeiro definir suas Configurações criando uma classe que estenda “App\Services\SettingsPage”. Nessa classe, definiremos nossas configurações da seguinte forma:
<?php
namespace Modules\YourModule\Settings;
use App\Services\SettingsPage;
use App\Classes\SettingForm;
class MySettings extends SettingsPage
{
const IDENTIFIER = 'my-settings';
const AUTOLOAD = true;
public function __construct()
{
$this->form = SettingsForm::form(
title: __m( 'My Settings', 'YourModule' ),
description: __m( 'Configure your settings', 'YourModule' ),
tabs: SettingsForm::tabs(
SettingsForm::tab(
identifier: 'general',
label: __m( 'General Settings', 'YourModule' ),
fields: SettingsForm::fields(
// ... fields here
)
)
)
)
}
}
Agora, vamos adicionar ao método SettingsForm::tab as notificações que queremos exibir.
<?php
namespace Modules\YourModule\Settings;
use App\Services\SettingsPage;
use App\Classes\SettingForm;
use App\Classes\Notice;
class MySettings extends SettingsPage
{
const IDENTIFIER = 'my-settings';
const AUTOLOAD = true;
public function __construct()
{
$this->form = SettingsForm::form(
title: __m( 'My Settings', 'YourModule' ),
description: __m( 'Configure your settings', 'YourModule' ),
tabs: SettingsForm::tabs(
SettingsForm::tab(
identifier: 'general',
notices: [
Notice::info(
title: __m( 'How It Works', 'YourModule' ),
description: __m( 'You must retreive the API from your account...', 'YourModule' ),
)
],
label: __m( 'General Settings', 'YourModule' ),
fields: SettingsForm::fields(
// ... fields here
)
)
)
)
}
}
Além disso, adicionamos a classe App\Classes\Notice, que fornece o quarto tipo de aviso como um método. Por exemplo, usaremos “info” para um aviso azul, “error” para um aviso vermelho, etc.
Agora, devemos ter a seguinte saída na nossa página de configurações.
O formulário não tem campos, pois não definimos nenhum campo.