Notification when changing issue ref

This commit is contained in:
Gitea 2020-01-26 23:27:28 +00:00
parent 6c8e3e0d73
commit d7cd33ed4b
5 changed files with 18 additions and 2 deletions

View File

@ -27,6 +27,7 @@ type Notifier interface {
NotifyIssueChangeContent(doer *models.User, issue *models.Issue, oldContent string)
NotifyIssueClearLabels(doer *models.User, issue *models.Issue)
NotifyIssueChangeTitle(doer *models.User, issue *models.Issue, oldTitle string)
NotifyIssueChangeRef(doer *models.User, issue *models.Issue, oldRef string)
NotifyIssueChangeLabels(doer *models.User, issue *models.Issue,
addedLabels []*models.Label, removedLabels []*models.Label)

View File

@ -94,6 +94,10 @@ func (*NullNotifier) NotifyIssueClearLabels(doer *models.User, issue *models.Iss
func (*NullNotifier) NotifyIssueChangeTitle(doer *models.User, issue *models.Issue, oldTitle string) {
}
// NotifyIssueChangeRef places a place holder function
func (*NullNotifier) NotifyIssueChangeRef(doer *models.User, issue *models.Issue, oldTitle string) {
}
// NotifyIssueChangeLabels places a place holder function
func (*NullNotifier) NotifyIssueChangeLabels(doer *models.User, issue *models.Issue,
addedLabels []*models.Label, removedLabels []*models.Label) {

View File

@ -132,3 +132,7 @@ func (r *indexerNotifier) NotifyIssueChangeContent(doer *models.User, issue *mod
func (r *indexerNotifier) NotifyIssueChangeTitle(doer *models.User, issue *models.Issue, oldTitle string) {
issue_indexer.UpdateIssueIndexer(issue)
}
func (r *indexerNotifier) NotifyIssueChangeRef(doer *models.User, issue *models.Issue, oldRef string) {
issue_indexer.UpdateIssueIndexer(issue)
}

View File

@ -164,6 +164,13 @@ func NotifyIssueChangeTitle(doer *models.User, issue *models.Issue, oldTitle str
}
}
// NotifyIssueChangeRef notifies change reference to notifiers
func NotifyIssueChangeRef(doer *models.User, issue *models.Issue, oldRef string) {
for _, notifier := range notifiers {
notifier.NotifyIssueChangeRef(doer, issue, oldRef)
}
}
// NotifyIssueChangeLabels notifies change labels to notifiers
func NotifyIssueChangeLabels(doer *models.User, issue *models.Issue,
addedLabels []*models.Label, removedLabels []*models.Label) {

View File

@ -48,8 +48,8 @@ func ChangeIssueRef(issue *models.Issue, doer *models.User, ref string) (err err
if err = issue.ChangeRef(doer, oldRef); err != nil {
return
}
// TODO: implement notifications
//notification.NotifyIssueChangeTitle(doer, issue, oldRef)
notification.NotifyIssueChangeRef(doer, issue, oldRef)
return nil
}