diff options
author | Jimmy Praet <jimmy.praet@telenet.be> | 2021-01-02 18:04:02 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-02 18:04:02 +0100 |
commit | e6acce649b348cc497b999100a170866a90c87b8 (patch) | |
tree | 2a1bb838fe8b36f016c638190651e61e6b27acd3 /modules/notification/notification.go | |
parent | ac88b0ee839bfbfae5759e211d0f9a69abe4d8f7 (diff) | |
download | gitea-e6acce649b348cc497b999100a170866a90c87b8.tar.gz gitea-e6acce649b348cc497b999100a170866a90c87b8.zip |
Send notifications for mentions in pulls, issues, (code-)comments (#14218)
Fixes #14187: mention handling extracted from email notification code
Fixes #14013: add notification for mentions in pull request code comments
Fixes #13450: Not receiving any emails with setting "Only Email on Mention"
Diffstat (limited to 'modules/notification/notification.go')
-rw-r--r-- | modules/notification/notification.go | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/modules/notification/notification.go b/modules/notification/notification.go index 21f9dc87a8..7ced57ce2d 100644 --- a/modules/notification/notification.go +++ b/modules/notification/notification.go @@ -39,16 +39,16 @@ func NewContext() { // NotifyCreateIssueComment notifies issue comment related message to notifiers func NotifyCreateIssueComment(doer *models.User, repo *models.Repository, - issue *models.Issue, comment *models.Comment) { + issue *models.Issue, comment *models.Comment, mentions []*models.User) { for _, notifier := range notifiers { - notifier.NotifyCreateIssueComment(doer, repo, issue, comment) + notifier.NotifyCreateIssueComment(doer, repo, issue, comment, mentions) } } // NotifyNewIssue notifies new issue to notifiers -func NotifyNewIssue(issue *models.Issue) { +func NotifyNewIssue(issue *models.Issue, mentions []*models.User) { for _, notifier := range notifiers { - notifier.NotifyNewIssue(issue) + notifier.NotifyNewIssue(issue, mentions) } } @@ -67,9 +67,9 @@ func NotifyMergePullRequest(pr *models.PullRequest, doer *models.User) { } // NotifyNewPullRequest notifies new pull request to notifiers -func NotifyNewPullRequest(pr *models.PullRequest) { +func NotifyNewPullRequest(pr *models.PullRequest, mentions []*models.User) { for _, notifier := range notifiers { - notifier.NotifyNewPullRequest(pr) + notifier.NotifyNewPullRequest(pr, mentions) } } @@ -81,9 +81,16 @@ func NotifyPullRequestSynchronized(doer *models.User, pr *models.PullRequest) { } // NotifyPullRequestReview notifies new pull request review -func NotifyPullRequestReview(pr *models.PullRequest, review *models.Review, comment *models.Comment) { +func NotifyPullRequestReview(pr *models.PullRequest, review *models.Review, comment *models.Comment, mentions []*models.User) { for _, notifier := range notifiers { - notifier.NotifyPullRequestReview(pr, review, comment) + notifier.NotifyPullRequestReview(pr, review, comment, mentions) + } +} + +// NotifyPullRequestCodeComment notifies new pull request code comment +func NotifyPullRequestCodeComment(pr *models.PullRequest, comment *models.Comment, mentions []*models.User) { + for _, notifier := range notifiers { + notifier.NotifyPullRequestCodeComment(pr, comment, mentions) } } |