| <?php |
|
|
| namespace Kanboard\Notification; |
|
|
| use Kanboard\Core\Base; |
| use Kanboard\Core\Notification\NotificationInterface; |
|
|
| |
| |
| |
| |
| |
| |
| class MailNotification extends Base implements NotificationInterface |
| { |
| |
| |
| |
| |
| |
| const TYPE = 'email'; |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| public function notifyUser(array $user, $event_name, array $event_data) |
| { |
| if (! empty($user['email'])) { |
| $this->emailClient->send( |
| $user['email'], |
| $user['name'] ?: $user['username'], |
| $this->getMailSubject($event_name, $event_data), |
| $this->getMailContent($event_name, $event_data) |
| ); |
| } |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| public function notifyProject(array $project, $event_name, array $event_data) |
| { |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| public function getMailContent($event_name, array $event_data) |
| { |
| return $this->template->render('notification/'.str_replace('.', '_', $event_name), $event_data); |
| } |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| public function getMailSubject($eventName, array $eventData) |
| { |
| return sprintf( |
| '[%s] %s', |
| isset($eventData['project_name']) ? $eventData['project_name'] : $eventData['task']['project_name'], |
| $this->notificationModel->getTitleWithoutAuthor($eventName, $eventData) |
| ); |
| } |
| } |
|
|