Improve notification classes and move interface to core
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
namespace Kanboard\Controller;
|
||||
|
||||
use Kanboard\Core\Security\Role;
|
||||
use Kanboard\Notification\Mail as MailNotification;
|
||||
use Kanboard\Notification\MailNotification;
|
||||
|
||||
/**
|
||||
* Class UserCreationController
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<?php
|
||||
|
||||
namespace Kanboard\Notification;
|
||||
namespace Kanboard\Core\Notification;
|
||||
|
||||
/**
|
||||
* Notification Interface
|
||||
*
|
||||
* @package core
|
||||
* @package Kanboard\Core\Notification
|
||||
* @author Frederic Guillot
|
||||
*/
|
||||
interface NotificationInterface
|
||||
@@ -3,14 +3,15 @@
|
||||
namespace Kanboard\Notification;
|
||||
|
||||
use Kanboard\Core\Base;
|
||||
use Kanboard\Core\Notification\NotificationInterface;
|
||||
|
||||
/**
|
||||
* Activity Stream Notification
|
||||
*
|
||||
* @package notification
|
||||
* @package Kanboard\Notification
|
||||
* @author Frederic Guillot
|
||||
*/
|
||||
class ActivityStream extends Base implements NotificationInterface
|
||||
class ActivityStreamNotification extends Base implements NotificationInterface
|
||||
{
|
||||
/**
|
||||
* Send notification to a user
|
||||
@@ -3,6 +3,7 @@
|
||||
namespace Kanboard\Notification;
|
||||
|
||||
use Kanboard\Core\Base;
|
||||
use Kanboard\Core\Notification\NotificationInterface;
|
||||
use Kanboard\Model\Task;
|
||||
use Kanboard\Model\TaskFile;
|
||||
use Kanboard\Model\Comment;
|
||||
@@ -11,10 +12,10 @@ use Kanboard\Model\Subtask;
|
||||
/**
|
||||
* Email Notification
|
||||
*
|
||||
* @package notification
|
||||
* @package Kanboard\Notification
|
||||
* @author Frederic Guillot
|
||||
*/
|
||||
class Mail extends Base implements NotificationInterface
|
||||
class MailNotification extends Base implements NotificationInterface
|
||||
{
|
||||
/**
|
||||
* Notification type
|
||||
@@ -3,14 +3,15 @@
|
||||
namespace Kanboard\Notification;
|
||||
|
||||
use Kanboard\Core\Base;
|
||||
use Kanboard\Core\Notification\NotificationInterface;
|
||||
|
||||
/**
|
||||
* Web Notification
|
||||
*
|
||||
* @package notification
|
||||
* @package Kanboard\Notification
|
||||
* @author Frederic Guillot
|
||||
*/
|
||||
class Web extends Base implements NotificationInterface
|
||||
class WebNotification extends Base implements NotificationInterface
|
||||
{
|
||||
/**
|
||||
* Notification type
|
||||
@@ -3,14 +3,15 @@
|
||||
namespace Kanboard\Notification;
|
||||
|
||||
use Kanboard\Core\Base;
|
||||
use Kanboard\Core\Notification\NotificationInterface;
|
||||
|
||||
/**
|
||||
* Webhook Notification
|
||||
*
|
||||
* @package notification
|
||||
* @package Kanboard\Notification
|
||||
* @author Frederic Guillot
|
||||
*/
|
||||
class Webhook extends Base implements NotificationInterface
|
||||
class WebhookNotification extends Base implements NotificationInterface
|
||||
{
|
||||
/**
|
||||
* Send notification to a user
|
||||
@@ -6,8 +6,8 @@ use Pimple\Container;
|
||||
use Pimple\ServiceProviderInterface;
|
||||
use Kanboard\Model\UserNotificationType;
|
||||
use Kanboard\Model\ProjectNotificationType;
|
||||
use Kanboard\Notification\Mail as MailNotification;
|
||||
use Kanboard\Notification\Web as WebNotification;
|
||||
use Kanboard\Notification\MailNotification as MailNotification;
|
||||
use Kanboard\Notification\WebNotification as WebNotification;
|
||||
|
||||
/**
|
||||
* Notification Provider
|
||||
@@ -28,15 +28,15 @@ class NotificationProvider implements ServiceProviderInterface
|
||||
{
|
||||
$container['userNotificationType'] = function ($container) {
|
||||
$type = new UserNotificationType($container);
|
||||
$type->setType(MailNotification::TYPE, t('Email'), '\Kanboard\Notification\Mail');
|
||||
$type->setType(WebNotification::TYPE, t('Web'), '\Kanboard\Notification\Web');
|
||||
$type->setType(MailNotification::TYPE, t('Email'), '\Kanboard\Notification\MailNotification');
|
||||
$type->setType(WebNotification::TYPE, t('Web'), '\Kanboard\Notification\WebNotification');
|
||||
return $type;
|
||||
};
|
||||
|
||||
$container['projectNotificationType'] = function ($container) {
|
||||
$type = new ProjectNotificationType($container);
|
||||
$type->setType('webhook', 'Webhook', '\Kanboard\Notification\Webhook', true);
|
||||
$type->setType('activity_stream', 'ActivityStream', '\Kanboard\Notification\ActivityStream', true);
|
||||
$type->setType('webhook', 'Webhook', '\Kanboard\Notification\WebhookNotification', true);
|
||||
$type->setType('activity_stream', 'ActivityStream', '\Kanboard\Notification\ActivityStreamNotification', true);
|
||||
return $type;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user