mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-06-05 01:44:36 -04:00
Add notify watcher action
This commit is contained in:
parent
c5ff58272b
commit
d3b8e9daa1
8 changed files with 119 additions and 95 deletions
|
@ -19,6 +19,7 @@ const (
|
|||
OP_STAR_REPO
|
||||
OP_FOLLOW_REPO
|
||||
OP_COMMIT_REPO
|
||||
OP_CREATE_ISSUE
|
||||
OP_PULL_REQUEST
|
||||
)
|
||||
|
||||
|
@ -67,34 +68,10 @@ func CommitRepoAction(userId int64, userName string,
|
|||
return err
|
||||
}
|
||||
|
||||
// Add feeds for user self and all watchers.
|
||||
watches, err := GetWatches(repoId)
|
||||
if err != nil {
|
||||
log.Error("action.CommitRepoAction(get watches): %d/%s", userId, repoName)
|
||||
if err = NotifyWatchers(userId, repoId, OP_COMMIT_REPO, userName, repoName, refName, string(bs)); err != nil {
|
||||
log.Error("action.CommitRepoAction(notify watchers): %d/%s", userId, repoName)
|
||||
return err
|
||||
}
|
||||
watches = append(watches, Watch{UserId: userId})
|
||||
|
||||
for i := range watches {
|
||||
if userId == watches[i].UserId && i > 0 {
|
||||
continue // Do not add twice in case author watches his/her repository.
|
||||
}
|
||||
|
||||
_, err = orm.InsertOne(&Action{
|
||||
UserId: watches[i].UserId,
|
||||
ActUserId: userId,
|
||||
ActUserName: userName,
|
||||
OpType: OP_COMMIT_REPO,
|
||||
Content: string(bs),
|
||||
RepoId: repoId,
|
||||
RepoName: repoName,
|
||||
RefName: refName,
|
||||
})
|
||||
if err != nil {
|
||||
log.Error("action.CommitRepoAction(notify watches): %d/%s", userId, repoName)
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
// Update repository last update time.
|
||||
repo, err := GetRepositoryByName(userId, repoName)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue