summaryrefslogtreecommitdiffstats
path: root/models/action.go
diff options
context:
space:
mode:
authorLanre Adelowo <adelowomailbox@gmail.com>2019-02-05 12:38:11 +0100
committerLauris BH <lauris@nix.lv>2019-02-05 13:38:11 +0200
commit539079122418c485347506110bef232c99a75d37 (patch)
treea00aa1ae7a7bb0e82dcae461b7c53c3921731cb2 /models/action.go
parent5bd594c85883d713f9d94f6e93cd8f08b253b369 (diff)
downloadgitea-539079122418c485347506110bef232c99a75d37.tar.gz
gitea-539079122418c485347506110bef232c99a75d37.zip
Automatically clear stopwatch on merging a PR (#4327)
* Don't display buttons if there are no notices * clear stopwatch on merging a PR * remove redundant gt check * use ctx.Flash as per @bkcsoft comment * stop timer on closing issues/PRs too * updated translation as per review * redirect to login page after successfully activating account * remove unrelated changes * stop timer for issues that are closed via commits too..Not just the 'close' UI button
Diffstat (limited to 'models/action.go')
-rw-r--r--models/action.go16
1 files changed, 14 insertions, 2 deletions
diff --git a/models/action.go b/models/action.go
index 5dc0eb18e6..c886408b2f 100644
--- a/models/action.go
+++ b/models/action.go
@@ -491,15 +491,27 @@ func changeIssueStatus(repo *Repository, doer *User, ref string, refMarked map[i
return nil
}
+ stopTimerIfAvailable := func(doer *User, issue *Issue) error {
+
+ if StopwatchExists(doer.ID, issue.ID) {
+ if err := CreateOrStopIssueStopwatch(doer, issue); err != nil {
+ return err
+ }
+ }
+
+ return nil
+ }
+
issue.Repo = repo
if err = issue.ChangeStatus(doer, status); err != nil {
// Don't return an error when dependencies are open as this would let the push fail
if IsErrDependenciesLeft(err) {
- return nil
+ return stopTimerIfAvailable(doer, issue)
}
return err
}
- return nil
+
+ return stopTimerIfAvailable(doer, issue)
}
// UpdateIssuesCommit checks if issues are manipulated by commit message.