From 273a24f22676b73a648fd2a5467e385ec41e84e2 Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Mon, 11 Nov 2019 11:39:41 +0800 Subject: [PATCH] Move notifywatchers from models to notification (#8907) --- models/repo.go | 10 ---------- modules/notification/action/action.go | 26 ++++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/models/repo.go b/models/repo.go index d79a8fdf6..176182e67 100644 --- a/models/repo.go +++ b/models/repo.go @@ -1470,16 +1470,6 @@ func createRepository(e *xorm.Session, doer, u *User, repo *Repository) (err err return fmt.Errorf("watchRepo: %v", err) } } - if err = notifyWatchers(e, &Action{ - ActUserID: doer.ID, - ActUser: doer, - OpType: ActionCreateRepo, - RepoID: repo.ID, - Repo: repo, - IsPrivate: repo.IsPrivate, - }); err != nil { - return fmt.Errorf("notify watchers '%d/%d': %v", doer.ID, repo.ID, err) - } if err = copyDefaultWebhooksToRepo(e, repo.ID); err != nil { return fmt.Errorf("copyDefaultWebhooksToRepo: %v", err) diff --git a/modules/notification/action/action.go b/modules/notification/action/action.go index 52471c110..d481bd8c4 100644 --- a/modules/notification/action/action.go +++ b/modules/notification/action/action.go @@ -91,3 +91,29 @@ func (a *actionNotifier) NotifyRenameRepository(doer *models.User, repo *models. log.Trace("action.renameRepoAction: %s/%s", doer.Name, repo.Name) } } + +func (a *actionNotifier) NotifyCreateRepository(doer *models.User, u *models.User, repo *models.Repository) { + if err := models.NotifyWatchers(&models.Action{ + ActUserID: doer.ID, + ActUser: doer, + OpType: models.ActionCreateRepo, + RepoID: repo.ID, + Repo: repo, + IsPrivate: repo.IsPrivate, + }); err != nil { + log.Error("notify watchers '%d/%d': %v", doer.ID, repo.ID, err) + } +} + +func (a *actionNotifier) NotifyForkRepository(doer *models.User, oldRepo, repo *models.Repository) { + if err := models.NotifyWatchers(&models.Action{ + ActUserID: doer.ID, + ActUser: doer, + OpType: models.ActionCreateRepo, + RepoID: repo.ID, + Repo: repo, + IsPrivate: repo.IsPrivate, + }); err != nil { + log.Error("notify watchers '%d/%d': %v", doer.ID, repo.ID, err) + } +}