kotfire/system-alerts

Laravel 4 的简单系统警报

v0.4 2015-05-17 19:47 UTC

This package is not auto-updated.

Last update: 2024-09-28 17:33:14 UTC


README

这是一个 Laravel 4 的包,用于向 Web 应用程序添加警报系统。它设计用于轻松地在网页的某个部分显示一条或多条消息。这些消息通过 artisan 命令管理。

它包括一个 ServiceProvider 和一些用于管理警报并将其自动附加到输出的命令。

安装

此包可在 packagist 上找到,只需将其添加到您的 composer.json 文件中。

"kotfire/system-alerts": "0.4.*"

更新 composer 后,将 ServiceProvider 添加到 app/config/app.php 文件中的 providers 数组中。

'Kotfire\SystemAlerts\SystemAlertsServiceProvider',

警报将自动注入到输出中,但如果您想手动加载它们或执行一些额外操作,可以将外观添加到 app/config/app.php 文件中的外观中。

'SystemAlert' => 'Kotfire\SystemAlerts\Facades\SystemAlert',

配置

您可以通过 Laravel 发布资产并配置它。

要发布配置文件,请使用

$ php artisan config:publish kotfire/system-alerts

在配置文件中,您可以修改包中使用的默认值。

要发布视图,请使用

$ php artisan view:publish kotfire/system-alerts

通过发布视图,您可以编辑用于显示警报消息的模板,并使其符合您的风格。

用法

命令

该包设计用于在执行 artisan down 之前显示维护警报消息,但可以添加的警报类型不止这些。

维护警报

添加新的维护警报

$ php artisan alert:maintenance [-m "Custom message"] [-t "Next Maintenance (in minutes)"]

注意:参数是可选的,如果不存在,则将使用默认值

示例

$ php artisan alert:maintenance

$ php artisan alert:maintenance -m "Maintenance in {time}" -t 15

添加新的维护警报

  • 消息: "维护时间:{time}"
  • 日期时间:NOW + 15min

示例

"Maintenance in {time}" will be "Maintenance in 14 minutes"

使用 php artisan down 将应用程序置于维护模式后,维护警报消息将被删除

注意:如果您使用 Artisan::call('down'),则不会发生这种情况。

重要:一次只能添加一个维护警报,如果您尝试添加另一个,您将收到 维护警报已存在:"消息" 错误。

删除维护警报

$ php artisan alert:maintenance -d

信息警报

信息警报是一种向 Web 应用程序用户显示信息的简单方式。此类警报不会自动删除。

添加新的警报

$ php artisan alert "Message" [-d "datetime"]

示例

$ php artisan alert "This is an alert"

$ php artisan alert "This message will self-destruct in {time}" -d "12:50"

常见

按 ID 删除警报

$ php artisan alert:delete ID

查看所有警报

$ php artisan alert:list

删除所有警报

$ php artisan alert:clear

修饰符

您可以使用一些修饰符,它们在显示消息时将被替换

排序

重要:此功能是在 版本 0.3 中引入的,如果您在此版本之前使用此包,请重新发布配置文件 (配置)

警报可以使用一个或多个属性进行排序。

默认情况下,警报将按类型排序,然后按指定的日期时间排序,最后按创建的日期时间排序(所有这些都按升序排序)。

属性 'type' 稍微特殊一些,需要更多的配置。如果您正在使用类型排序,您必须设置优先级。这是一个数组,其中第一个元素是最优先的,最后一个元素是最不优先的。

'type_priority' => ['maintenance', 'info'],

配置

要配置警报排序,请转到配置文件。

排序可以是一个字符串(按一个属性排序)或字符串数组(按多个属性排序)。

单属性排序

'sort_by' => 'created_at',

多属性排序

'sort_by' => ['type', 'datetime', 'created_at'],

要定义属性中使用的顺序,请修改 order

顺序可以是一个字符串(所有属性使用相同的顺序)或字符串数组(每个属性使用不同的顺序)。

相同顺序

'order' => 'asc',

不同顺序

'order' => ['asc', 'desc', 'asc'],

事件

有一些事件将会触发

显示

显示警报有两种方式:自动和手动

自动

采用这种方式,警报将被注入到所有包含在配置文件中指定的ID的HTML元素(默认为:'alerts-container')的响应中,使用模板视图来渲染它们。

您只需将具有该ID的HTML容器添加到您想显示警报的所有视图中。

示例

<div id="alerts-container"></div>

手动

如果您想自己注入警报,这种方式非常适合您。

确保您已经添加了外观(安装)并将配置选项'inject'设置为false。

现在您可以加载警报

$alerts = SystemAlert::loadAlerts();

并将它们附加到一个视图或对它们进行一些逻辑操作。

许可证

系统警报是开源软件,受MIT许可证许可。