From 891391689a26e0bc3dcb1558512d3c2b6857232d Mon Sep 17 00:00:00 2001 From: jladbrook <jhladbrook@gmail.com> Date: Fri, 3 Feb 2023 06:24:45 +0000 Subject: [PATCH] Update button is shown when a Pull Request is marked WIP - Issue #21740 (#22683) Fix #21740. Updated the Pull Request template so that the 'Update branch by merge' button is visible for WIP PR's. Making the behaviour match a non WIP-PR. Previous WIP page with changes pending on the branch: ![image](https://user-images.githubusercontent.com/1656302/215738307-e68a2f92-5ff8-4f48-a541-35ca81d1f1a4.png) Updated UI adding the update button: ![image](https://user-images.githubusercontent.com/1656302/215737872-e0e9d712-b7aa-4b90-b7ed-6a92a14fc182.png) ## Notes * have not removed the **$canAutoMerge** variable from the pull.tmpl on this [line](https://github.com/go-gitea/gitea/blob/36dc11869d0401b796a7a3f74627fec842a4a89a/templates/repo/issue/view_content/pull.tmpl#L131) - doesn't appear to be used elsewhere but wasn't sure * In order to avoid duplicating code corresponding UI code was added to a new tmpl file, ```update_branch_by_merge.tmpl``` and is called in two places from ```pull.tmpl```. --------- Signed-off-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Andrew Thornton <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> --- templates/repo/issue/view_content/pull.tmpl | 40 +------------------ .../view_content/update_branch_by_merge.tmpl | 39 ++++++++++++++++++ 2 files changed, 41 insertions(+), 38 deletions(-) create mode 100644 templates/repo/issue/view_content/update_branch_by_merge.tmpl diff --git a/templates/repo/issue/view_content/pull.tmpl b/templates/repo/issue/view_content/pull.tmpl index 1f94001db0..dc671eb6d6 100644 --- a/templates/repo/issue/view_content/pull.tmpl +++ b/templates/repo/issue/view_content/pull.tmpl @@ -190,6 +190,7 @@ {{end}} </div> </div> + {{template "repo/issue/view_content/update_branch_by_merge" (dict "locale" .locale "Issue" .Issue "UpdateAllowed" .UpdateAllowed "UpdateByRebaseAllowed" .UpdateByRebaseAllowed "Link" .Link)}} {{else if .Issue.PullRequest.IsChecking}} <div class="item"> <i class="icon icon-octicon">{{svg "octicon-sync"}}</i> @@ -282,44 +283,7 @@ </div> {{end}} {{end}} - {{if and (gt .Issue.PullRequest.CommitsBehind 0) (not .Issue.IsClosed) (not .Issue.PullRequest.IsChecking) (not .IsPullFilesConflicted) (not .IsPullRequestBroken) (not $canAutoMerge)}} - <div class="ui divider"></div> - <div class="item item-section"> - <div class="item-section-left"> - <i class="icon icon-octicon">{{svg "octicon-alert"}}</i> - {{$.locale.Tr "repo.pulls.outdated_with_base_branch"}} - </div> - <div class="item-section-right"> - {{if and .UpdateAllowed .UpdateByRebaseAllowed}} - <div class="dib"> - <div class="ui buttons update-button"> - <button class="ui button" data-do="{{.Link}}/update" data-redirect="{{.Link}}"> - <span class="button-text"> - {{$.locale.Tr "repo.pulls.update_branch"}} - </span> - </button> - - <div class="ui dropdown icon button no-text"> - {{svg "octicon-triangle-down" 14 "dropdown icon"}} - <div class="menu"> - <div class="item active selected" data-do="{{.Link}}/update">{{$.locale.Tr "repo.pulls.update_branch"}}</div> - <div class="item" data-do="{{.Link}}/update?style=rebase">{{$.locale.Tr "repo.pulls.update_branch_rebase"}}</div> - </div> - </div> - </div> - </div> - {{end}} - {{if and .UpdateAllowed (not .UpdateByRebaseAllowed)}} - <form action="{{.Link}}/update" method="post" class="ui update-branch-form"> - {{.CsrfTokenHtml}} - <button class="ui compact button" data-do="update"> - <span class="ui text">{{$.locale.Tr "repo.pulls.update_branch"}}</span> - </button> - </form> - {{end}} - </div> - </div> - {{end}} + {{template "repo/issue/view_content/update_branch_by_merge" (dict "locale" .locale "Issue" .Issue "UpdateAllowed" .UpdateAllowed "UpdateByRebaseAllowed" .UpdateByRebaseAllowed "Link" .Link)}} {{if .Issue.PullRequest.IsEmpty}} <div class="ui divider"></div> diff --git a/templates/repo/issue/view_content/update_branch_by_merge.tmpl b/templates/repo/issue/view_content/update_branch_by_merge.tmpl new file mode 100644 index 0000000000..3bc8dcca97 --- /dev/null +++ b/templates/repo/issue/view_content/update_branch_by_merge.tmpl @@ -0,0 +1,39 @@ +{{$canAutoMerge := false}} +{{if and (gt .Issue.PullRequest.CommitsBehind 0) (not .Issue.IsClosed) (not .Issue.PullRequest.IsChecking) (not .IsPullFilesConflicted) (not .IsPullRequestBroken) (not $canAutoMerge)}} + <div class="ui divider"></div> + <div class="item item-section"> + <div class="item-section-left"> + <i class="icon icon-octicon">{{svg "octicon-alert"}}</i> + {{$.locale.Tr "repo.pulls.outdated_with_base_branch"}} + </div> + <div class="item-section-right"> + {{if and .UpdateAllowed .UpdateByRebaseAllowed}} + <div class="dib"> + <div class="ui buttons update-button"> + <button class="ui button" data-do="{{.Link}}/update" data-redirect="{{.Link}}"> + <span class="button-text"> + {{$.locale.Tr "repo.pulls.update_branch"}} + </span> + </button> + + <div class="ui dropdown icon button no-text"> + {{svg "octicon-triangle-down" 14 "dropdown icon"}} + <div class="menu"> + <div class="item active selected" data-do="{{.Link}}/update">{{$.locale.Tr "repo.pulls.update_branch"}}</div> + <div class="item" data-do="{{.Link}}/update?style=rebase">{{$.locale.Tr "repo.pulls.update_branch_rebase"}}</div> + </div> + </div> + </div> + </div> + {{end}} + {{if and .UpdateAllowed (not .UpdateByRebaseAllowed)}} + <form action="{{.Link}}/update" method="post" class="ui update-branch-form"> + {{.CsrfTokenHtml}} + <button class="ui compact button" data-do="update"> + <span class="ui text">{{$.locale.Tr "repo.pulls.update_branch"}}</span> + </button> + </form> + {{end}} + </div> + </div> +{{end}}