summaryrefslogtreecommitdiffstats
path: root/templates
diff options
context:
space:
mode:
Diffstat (limited to 'templates')
-rw-r--r--templates/repo/issue/view_content/pull.tmpl249
-rw-r--r--templates/repo/pulls/status.tmpl9
-rw-r--r--templates/repo/settings/protected_branch.tmpl32
3 files changed, 174 insertions, 116 deletions
diff --git a/templates/repo/issue/view_content/pull.tmpl b/templates/repo/issue/view_content/pull.tmpl
index f0e39d5e37..f5ce8e0886 100644
--- a/templates/repo/issue/view_content/pull.tmpl
+++ b/templates/repo/issue/view_content/pull.tmpl
@@ -41,6 +41,7 @@
{{else if .IsFilesConflicted}}grey
{{else if .IsPullRequestBroken}}red
{{else if .IsBlockedByApprovals}}red
+ {{else if and .EnableStatusCheck (not .IsRequiredStatusCheckSuccess)}}red
{{else if .Issue.PullRequest.IsChecking}}yellow
{{else if .Issue.PullRequest.CanAutoMerge}}green
{{else}}red{{end}}"><span class="mega-octicon octicon-git-merge"></span></a>
@@ -104,130 +105,150 @@
<span class="octicon octicon-sync"></span>
{{$.i18n.Tr "repo.pulls.is_checking"}}
</div>
+ {{else if and (not .Issue.PullRequest.CanAutoMerge) .EnableStatusCheck (not .IsRequiredStatusCheckSuccess)}}
+ <div class="item text red">
+ <span class="octicon octicon-x"></span>
+ {{$.i18n.Tr "repo.pulls.required_status_check_failed"}}
+ </div>
{{else if .Issue.PullRequest.CanAutoMerge}}
- <div class="item text green">
- <span class="octicon octicon-check"></span>
- {{$.i18n.Tr "repo.pulls.can_auto_merge_desc"}}
+ {{if and .EnableStatusCheck (not .IsRequiredStatusCheckSuccess)}}
+ <div class="item text red">
+ <span class="octicon octicon-x"></span>
+ {{$.i18n.Tr "repo.pulls.required_status_check_failed"}}
</div>
- {{if .AllowMerge}}
- {{$prUnit := .Repository.MustGetUnit $.UnitTypePullRequests}}
- {{if or $prUnit.PullRequestsConfig.AllowMerge $prUnit.PullRequestsConfig.AllowRebase $prUnit.PullRequestsConfig.AllowRebaseMerge $prUnit.PullRequestsConfig.AllowSquash}}
- <div class="ui divider"></div>
- {{if $prUnit.PullRequestsConfig.AllowMerge}}
- <div class="ui form merge-fields" style="display: none">
- <form action="{{.Link}}/merge" method="post">
- {{.CsrfTokenHtml}}
- <div class="field">
- <input type="text" name="merge_title_field" value="{{.Issue.PullRequest.GetDefaultMergeMessage}}">
- </div>
- <div class="field">
- <textarea name="merge_message_field" rows="5" placeholder="{{$.i18n.Tr "repo.editor.commit_message_desc"}}"></textarea>
- </div>
- <button class="ui green button" type="submit" name="do" value="merge">
- {{$.i18n.Tr "repo.pulls.merge_pull_request"}}
- </button>
- <button class="ui button merge-cancel">
- {{$.i18n.Tr "cancel"}}
- </button>
- </form>
- </div>
- {{end}}
- {{if $prUnit.PullRequestsConfig.AllowRebase}}
- <div class="ui form rebase-fields" style="display: none">
- <form action="{{.Link}}/merge" method="post">
- {{.CsrfTokenHtml}}
- <button class="ui green button" type="submit" name="do" value="rebase">
- {{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}
- </button>
- <button class="ui button merge-cancel">
- {{$.i18n.Tr "cancel"}}
- </button>
- </form>
- </div>
- {{end}}
- {{if $prUnit.PullRequestsConfig.AllowRebaseMerge}}
- <div class="ui form rebase-merge-fields" style="display: none">
- <form action="{{.Link}}/merge" method="post">
- {{.CsrfTokenHtml}}
- <div class="field">
- <input type="text" name="merge_title_field" value="{{.Issue.PullRequest.GetDefaultMergeMessage}}">
- </div>
- <div class="field">
- <textarea name="merge_message_field" rows="5" placeholder="{{$.i18n.Tr "repo.editor.commit_message_desc"}}"></textarea>
- </div>
- <button class="ui green button" type="submit" name="do" value="rebase-merge">
- {{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}
- </button>
- <button class="ui button merge-cancel">
- {{$.i18n.Tr "cancel"}}
- </button>
- </form>
+ {{end}}
+ {{if or $.IsRepoAdmin (not .EnableStatusCheck) .IsRequiredStatusCheckSuccess}}
+ {{if and $.IsRepoAdmin .EnableStatusCheck (not .IsRequiredStatusCheckSuccess)}}
+ <div class="item text yellow">
+ <span class="octicon octicon-primitive-dot"></span>
+ {{$.i18n.Tr "repo.pulls.required_status_check_administrator"}}
</div>
- {{end}}
- {{if $prUnit.PullRequestsConfig.AllowSquash}}
- <div class="ui form squash-fields" style="display: none">
- <form action="{{.Link}}/merge" method="post">
- {{.CsrfTokenHtml}}
- <div class="field">
- <input type="text" name="merge_title_field" value="{{.Issue.PullRequest.GetDefaultSquashMessage}}">
- </div>
- <div class="field">
- <textarea name="merge_message_field" rows="5" placeholder="{{$.i18n.Tr "repo.editor.commit_message_desc"}}"></textarea>
- </div>
- <button class="ui green button" type="submit" name="do" value="squash">
- {{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}
- </button>
- <button class="ui button merge-cancel">
- {{$.i18n.Tr "cancel"}}
- </button>
- </form>
+ {{else}}
+ <div class="item text green">
+ <span class="octicon octicon-check"></span>
+ {{$.i18n.Tr "repo.pulls.can_auto_merge_desc"}}
</div>
- {{end}}
- <div class="ui green buttons merge-button">
- <button class="ui button" data-do="{{.MergeStyle}}">
- <span class="octicon octicon-git-merge"></span>
- <span class="button-text">
- {{if eq .MergeStyle "merge"}}
- {{$.i18n.Tr "repo.pulls.merge_pull_request"}}
- {{end}}
- {{if eq .MergeStyle "rebase"}}
- {{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}
- {{end}}
- {{if eq .MergeStyle "rebase-merge"}}
- {{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}
- {{end}}
- {{if eq .MergeStyle "squash"}}
- {{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}
- {{end}}
- </span>
- </button>
- <div class="ui dropdown icon button">
- <i class="dropdown icon"></i>
- <div class="menu">
- {{if $prUnit.PullRequestsConfig.AllowMerge}}
- <div class="item{{if eq .MergeStyle "merge"}} active selected{{end}}" data-do="merge">{{$.i18n.Tr "repo.pulls.merge_pull_request"}}</div>
+ {{end}}
+ {{if .AllowMerge}}
+ {{$prUnit := .Repository.MustGetUnit $.UnitTypePullRequests}}
+ {{if or $prUnit.PullRequestsConfig.AllowMerge $prUnit.PullRequestsConfig.AllowRebase $prUnit.PullRequestsConfig.AllowRebaseMerge $prUnit.PullRequestsConfig.AllowSquash}}
+ <div class="ui divider"></div>
+ {{if $prUnit.PullRequestsConfig.AllowMerge}}
+ <div class="ui form merge-fields" style="display: none">
+ <form action="{{.Link}}/merge" method="post">
+ {{.CsrfTokenHtml}}
+ <div class="field">
+ <input type="text" name="merge_title_field" value="{{.Issue.PullRequest.GetDefaultMergeMessage}}">
+ </div>
+ <div class="field">
+ <textarea name="merge_message_field" rows="5" placeholder="{{$.i18n.Tr "repo.editor.commit_message_desc"}}"></textarea>
+ </div>
+ <button class="ui green button" type="submit" name="do" value="merge">
+ {{$.i18n.Tr "repo.pulls.merge_pull_request"}}
+ </button>
+ <button class="ui button merge-cancel">
+ {{$.i18n.Tr "cancel"}}
+ </button>
+ </form>
+ </div>
+ {{end}}
+ {{if $prUnit.PullRequestsConfig.AllowRebase}}
+ <div class="ui form rebase-fields" style="display: none">
+ <form action="{{.Link}}/merge" method="post">
+ {{.CsrfTokenHtml}}
+ <button class="ui green button" type="submit" name="do" value="rebase">
+ {{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}
+ </button>
+ <button class="ui button merge-cancel">
+ {{$.i18n.Tr "cancel"}}
+ </button>
+ </form>
+ </div>
+ {{end}}
+ {{if $prUnit.PullRequestsConfig.AllowRebaseMerge}}
+ <div class="ui form rebase-merge-fields" style="display: none">
+ <form action="{{.Link}}/merge" method="post">
+ {{.CsrfTokenHtml}}
+ <div class="field">
+ <input type="text" name="merge_title_field" value="{{.Issue.PullRequest.GetDefaultMergeMessage}}">
+ </div>
+ <div class="field">
+ <textarea name="merge_message_field" rows="5" placeholder="{{$.i18n.Tr "repo.editor.commit_message_desc"}}"></textarea>
+ </div>
+ <button class="ui green button" type="submit" name="do" value="rebase-merge">
+ {{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}
+ </button>
+ <button class="ui button merge-cancel">
+ {{$.i18n.Tr "cancel"}}
+ </button>
+ </form>
+ </div>
+ {{end}}
+ {{if $prUnit.PullRequestsConfig.AllowSquash}}
+ <div class="ui form squash-fields" style="display: none">
+ <form action="{{.Link}}/merge" method="post">
+ {{.CsrfTokenHtml}}
+ <div class="field">
+ <input type="text" name="merge_title_field" value="{{.Issue.PullRequest.GetDefaultSquashMessage}}">
+ </div>
+ <div class="field">
+ <textarea name="merge_message_field" rows="5" placeholder="{{$.i18n.Tr "repo.editor.commit_message_desc"}}"></textarea>
+ </div>
+ <button class="ui green button" type="submit" name="do" value="squash">
+ {{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}
+ </button>
+ <button class="ui button merge-cancel">
+ {{$.i18n.Tr "cancel"}}
+ </button>
+ </form>
+ </div>
+ {{end}}
+ <div class="ui green buttons merge-button">
+ <button class="ui button" data-do="{{.MergeStyle}}">
+ <span class="octicon octicon-git-merge"></span>
+ <span class="button-text">
+ {{if eq .MergeStyle "merge"}}
+ {{$.i18n.Tr "repo.pulls.merge_pull_request"}}
{{end}}
- {{if $prUnit.PullRequestsConfig.AllowRebase}}
- <div class="item{{if eq .MergeStyle "rebase"}} active selected{{end}}" data-do="rebase">{{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}</div>
+ {{if eq .MergeStyle "rebase"}}
+ {{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}
{{end}}
- {{if $prUnit.PullRequestsConfig.AllowRebaseMerge}}
- <div class="item{{if eq .MergeStyle "rebase-merge"}} active selected{{end}}" data-do="rebase-merge">{{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}</div>
+ {{if eq .MergeStyle "rebase-merge"}}
+ {{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}
{{end}}
- {{if $prUnit.PullRequestsConfig.AllowSquash}}
- <div class="item{{if eq .MergeStyle "squash"}} active selected{{end}}" data-do="squash">{{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}</div>
+ {{if eq .MergeStyle "squash"}}
+ {{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}
{{end}}
+ </span>
+ </button>
+ <div class="ui dropdown icon button">
+ <i class="dropdown icon"></i>
+ <div class="menu">
+ {{if $prUnit.PullRequestsConfig.AllowMerge}}
+ <div class="item{{if eq .MergeStyle "merge"}} active selected{{end}}" data-do="merge">{{$.i18n.Tr "repo.pulls.merge_pull_request"}}</div>
+ {{end}}
+ {{if $prUnit.PullRequestsConfig.AllowRebase}}
+ <div class="item{{if eq .MergeStyle "rebase"}} active selected{{end}}" data-do="rebase">{{$.i18n.Tr "repo.pulls.rebase_merge_pull_request"}}</div>
+ {{end}}
+ {{if $prUnit.PullRequestsConfig.AllowRebaseMerge}}
+ <div class="item{{if eq .MergeStyle "rebase-merge"}} active selected{{end}}" data-do="rebase-merge">{{$.i18n.Tr "repo.pulls.rebase_merge_commit_pull_request"}}</div>
+ {{end}}
+ {{if $prUnit.PullRequestsConfig.AllowSquash}}
+ <div class="item{{if eq .MergeStyle "squash"}} active selected{{end}}" data-do="squash">{{$.i18n.Tr "repo.pulls.squash_merge_pull_request"}}</div>
+ {{end}}
+ </div>
</div>
</div>
- </div>
- {{else}}
- <div class="item text red">
- <span class="octicon octicon-x"></span>
- {{$.i18n.Tr "repo.pulls.no_merge_desc"}}
- </div>
- <div class="item text grey">
- <span class="octicon octicon-info"></span>
- {{$.i18n.Tr "repo.pulls.no_merge_helper"}}
- </div>
+ {{else}}
+ <div class="item text red">
+ <span class="octicon octicon-x"></span>
+ {{$.i18n.Tr "repo.pulls.no_merge_desc"}}
+ </div>
+ <div class="item text grey">
+ <span class="octicon octicon-info"></span>
+ {{$.i18n.Tr "repo.pulls.no_merge_helper"}}
+ </div>
+ {{end}}
{{end}}
{{end}}
{{else}}
diff --git a/templates/repo/pulls/status.tmpl b/templates/repo/pulls/status.tmpl
index e1401aa8bb..76a4eb5423 100644
--- a/templates/repo/pulls/status.tmpl
+++ b/templates/repo/pulls/status.tmpl
@@ -15,7 +15,12 @@
<div class="ui attached segment">
<span>{{template "repo/commit_status" .}}</span>
<span class="ui">{{.Context}} <span class="text grey">{{.Description}}</span></span>
- <div class="ui right">{{if .TargetURL}}<a href="{{.TargetURL}}">Details</a>{{end}}</div>
+ <div class="ui right">
+ {{if $.is_context_required}}
+ {{if (call $.is_context_required .Context)}}<div class="ui label">Required</div>{{end}}
+ {{end}}
+ <span class="ui">{{if .TargetURL}}<a href="{{.TargetURL}}">Details</a>{{end}}</span>
+ </div>
</div>
{{end}}
-{{end}} \ No newline at end of file
+{{end}}
diff --git a/templates/repo/settings/protected_branch.tmpl b/templates/repo/settings/protected_branch.tmpl
index 066350f97a..067d1d9761 100644
--- a/templates/repo/settings/protected_branch.tmpl
+++ b/templates/repo/settings/protected_branch.tmpl
@@ -105,6 +105,38 @@
</div>
<div class="field">
+ <div class="ui checkbox">
+ <input class="enable-statuscheck" name="enable_status_check" type="checkbox" data-target="#statuscheck_contexts_box" {{if .Branch.EnableStatusCheck}}checked{{end}}>
+ <label>{{.i18n.Tr "repo.settings.protect_check_status_contexts"}}</label>
+ <p class="help">{{.i18n.Tr "repo.settings.protect_check_status_contexts_desc"}}</p>
+ </div>
+ </div>
+
+ <div id="statuscheck_contexts_box" class="fields {{if not .Branch.EnableStatusCheck}}disabled{{end}}">
+ <div class="field">
+ <table class="ui celled table six column">
+ <thead>
+ <tr><th>
+ {{.i18n.Tr "repo.settings.protect_check_status_contexts_list"}}
+ </th>
+ </tr>
+ </thead>
+ <tbody>
+ {{range $.branch_status_check_contexts}}
+ <tr><td>
+ <span class="ui checkbox">
+ <input class="enable-whitelist" name="status_check_contexts" value="{{.}}" type="checkbox" {{if $.is_context_require}}{{if call $.is_context_required .}}checked{{end}}{{end}}>
+ </span>
+ {{.}}
+ {{if $.is_context_required}}{{if call $.is_context_required .}}<div class="ui label right">Required</div>{{end}}{{end}}
+ </td></tr>
+ {{end}}
+ </tbody>
+ </table>
+ </div>
+ </div>
+
+ <div class="field">
<label for="required-approvals">{{.i18n.Tr "repo.settings.protect_required_approvals"}}</label>
<input name="required_approvals" id="required-approvals" type="number" value="{{.Branch.RequiredApprovals}}">
<p class="help">{{.i18n.Tr "repo.settings.protect_required_approvals_desc"}}</p>