Merge pull request #450 from camfindlay/feature/config-spam-notifications

Config spam notifications
This commit is contained in:
Daniel Hensby 2017-07-05 14:30:24 +01:00 committed by GitHub
commit 91d9e42ba0
2 changed files with 27 additions and 0 deletions

View File

@ -7,6 +7,12 @@
*/ */
class BlogPostNotifications extends DataExtension class BlogPostNotifications extends DataExtension
{ {
/**
* Configure whether to send notifications even for spam comments
* @config
*/
private static $notification_on_spam = true;
/** /**
* Notify all authors of notifications. * Notify all authors of notifications.
* *
@ -15,7 +21,13 @@ class BlogPostNotifications extends DataExtension
*/ */
public function updateNotificationRecipients(&$list, &$comment) public function updateNotificationRecipients(&$list, &$comment)
{ {
//default is notification is on regardless of spam status
$list = $this->owner->Authors(); $list = $this->owner->Authors();
// If comment is spam and notification are set to not send on spam clear the recipient list
if (Config::inst()->get(__CLASS__, 'notification_on_spam') == false && $comment->IsSpam) {
$list = array();
}
} }
/** /**

View File

@ -0,0 +1,15 @@
# Configuring notifications
## Configuring whether notifications will send to authors of blogs if comments are spam
Default behaviour using the `silverstripe/comment-notifications` module is to send notification to authors of comments occuring regardless if they are spam or not.
In some cases you may wish to not send a notification email to an author if the comment is spam, this is a configurable option.
Add the following into your yaml config:
```
BlogPostNotifications:
notification_on_spam: false
```