codelets-mongodb / notification
这是一个自定义通知,用于在应用程序内部保存用户收到的通知。
v1.2.2
2019-07-16 05:42 UTC
Requires
- jenssegers/mongodb: ^3.5
- webpatser/laravel-uuid: ^3.0
This package is auto-updated.
Last update: 2024-09-16 17:17:09 UTC
README
这个包为管理员和用户提供了自定义通知,所以不再使用laravel通知。我为了我的项目构建了这个自定义通知包,所以如果你想试用它,请阅读文档。此包基于mongodb
安装
推荐通过Composer安装codelets-mv/notification。
# Install package via composer
composer require codelets-mv/notification
接下来,运行Composer命令以安装最新的稳定版本codelets-mv/notification
# Update package via composer
composer require codelets-mv/notification --lock
安装后,包将自动被发现,但如果需要,你可以运行
# run for auto discovery <-- If the package is not detected automatically -->
composer dump-autoload
然后运行这个命令,以获取配置的config/mv-notification.php
# run this to get the configuartion file at config/mv-notification.php <-- read through it --> php artisan vendor:publish --provider="MV\Notification\MvNotificationService"
你需要在.env文件中提供这些信息以进行API配置
# This is the pagination number you want to paginate with <-- default(10) --> MV_NOTIFICATION_PAGINATE=
用法
请按照以下步骤使用此包
/** * Create a new controller instance. * * @return void */ public function __construct() { //The instance should be either this $this->middleware('auth:admin');//for your admin controller //or $this->middleware('auth');//for your user Controller } /** * --------------------------------- * Fetch Latest Notification Here * -------------------------------- * Passing bool - true - to the function will query admin notification only * @return void */ public function latestNotifications() { Mv::latestNotifications();//Fetching latest notification for user Mv::latestNotifications(true);//Fetching latest notification for admin } /** * -------------------------------- * Fetching all notifications * ------------------------------- * Passing bool - true - to the function will query admin notification only * @return void */ public function allNotifications() { Mv::allNotifications();//Fetching all notifications for user Mv::allNotifications(true);//Fetching all notifications for admin } /** * =------------------------------- * Deleting a single notification * -------------------------------- * Passing bool - true - to the function will query admin notification only * ------------------------------------------------------------------------------ * To achieve single notification create a route that receives a (string) notification_id * Note that this package uses uuids so the notification_id has to be a string * ---------------------------------------------------------------------------------------- * Passing bool - true - to the function will query admin notification only * ----------------------------------------------------------------------------------------------- * @param string $notification_id * @return void */ public function deleteSingleNotification(string $notification_id) { Mv::deleteSingleNotification($notification_id);//For user Mv::deleteSingleNotification($notification_id, true);//For admin } /** * =------------------------------- * Deleting a all notification * -------------------------------- * Passing bool - true - to the function will query admin notification only * ------------------------------------------------------------------------------ * Passing bool - true - to the function will query admin notification only * ---------------------------------------------------------------------------------- * @return void */ public function deleteAllNotifications() { Mv::deleteAllNotifications();//For user Mv::deleteAllNotifications(true);//For admin } /** * -------------------------------- * Creating new notification here * -------------------------------- * In creating notification we need 4 parameters of which 2 are optional that is for user_id and admin_id * ------------------------------------------------------------------------------------------------------- * Also you can have your function that receives the parameters and passes them to Mv::createSystemNotification * -------------------------------------------------------------------------------------------------------------- * @return void */ public function createSystemNotification() { //This is for creating user notifications Mv::createSystemNotification(null, auth()->id(), 'My Notification Subject', 'My Notification Message'); //This is for creating admin notifications Mv::createSystemNotification(auth('admin')->id(), null, 'My Notification Subject', 'My Notification Message'); } /** * --------------------------- * TODO SIMPLE PACKAGE NOTES * ----------------------------------------------------------------------------------------- * For the functions used above can be changed to your own names to call the package names * ----------------------------------------------------------------------------------------- */
版本指南
安全漏洞
对于任何安全漏洞,请通过MvTechZone发送电子邮件。
许可证
此包是开源软件,根据MIT许可证授权。