aboutsummaryrefslogtreecommitdiffstats
path: root/templates/repo/issue
diff options
context:
space:
mode:
authorBrecht Van Lommel <brecht@blender.org>2023-03-12 21:39:56 +0100
committerGitHub <noreply@github.com>2023-03-12 22:39:56 +0200
commit43c136200a181858cf36a0a876cb6609aa804120 (patch)
tree8742b4e18b9336bd23c72192d97c6923c45c5787 /templates/repo/issue
parenta04eeb2a548d4fd2b63873fc2acff49c52e19723 (diff)
downloadgitea-43c136200a181858cf36a0a876cb6609aa804120.tar.gz
gitea-43c136200a181858cf36a0a876cb6609aa804120.zip
Deduplicate template code for label selection menu (#23431)
Diffstat (limited to 'templates/repo/issue')
-rw-r--r--templates/repo/issue/labels/labels_selector_field.tmpl43
-rw-r--r--templates/repo/issue/new_form.tmpl45
-rw-r--r--templates/repo/issue/view_content/sidebar.tmpl44
3 files changed, 45 insertions, 87 deletions
diff --git a/templates/repo/issue/labels/labels_selector_field.tmpl b/templates/repo/issue/labels/labels_selector_field.tmpl
new file mode 100644
index 0000000000..00d852bba9
--- /dev/null
+++ b/templates/repo/issue/labels/labels_selector_field.tmpl
@@ -0,0 +1,43 @@
+<div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-label dropdown">
+ <a class="text gt-df gt-ac muted">
+ <strong>{{.locale.Tr "repo.issues.new.labels"}}</strong>
+ {{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
+ {{svg "octicon-gear" 16 "gt-ml-2"}}
+ {{end}}
+ </a>
+ <div class="filter menu" {{if .Issue}}data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/labels"{{else}}data-id="#label_ids"{{end}}>
+ <div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_labels_title"}}</div>
+ {{if or .Labels .OrgLabels}}
+ <div class="ui icon search input">
+ <i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
+ <input type="text" placeholder="{{.locale.Tr "repo.issues.filter_labels"}}">
+ </div>
+ {{end}}
+ <a class="no-select item" href="#">{{.locale.Tr "repo.issues.new.clear_labels"}}</a>
+ {{if or .Labels .OrgLabels}}
+ {{$previousExclusiveScope := "_no_scope"}}
+ {{range .Labels}}
+ {{$exclusiveScope := .ExclusiveScope}}
+ {{if and (ne $previousExclusiveScope "_no_scope") (ne $previousExclusiveScope $exclusiveScope)}}
+ <div class="ui divider"></div>
+ {{end}}
+ {{$previousExclusiveScope = $exclusiveScope}}
+ <a class="{{if .IsChecked}}checked{{end}} item" href="#" data-id="{{.ID}}" data-id-selector="#label_{{.ID}}" data-scope="{{$exclusiveScope}}"><span class="octicon-check {{if not .IsChecked}}invisible{{end}}">{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}</span>&nbsp;&nbsp;{{RenderLabel $.Context .}}
+ {{if .Description}}<br><small class="desc">{{.Description | RenderEmoji $.Context}}</small>{{end}}</a>
+ {{end}}
+ <div class="ui divider"></div>
+ {{$previousExclusiveScope := "_no_scope"}}
+ {{range .OrgLabels}}
+ {{$exclusiveScope := .ExclusiveScope}}
+ {{if and (ne $previousExclusiveScope "_no_scope") (ne $previousExclusiveScope $exclusiveScope)}}
+ <div class="ui divider"></div>
+ {{end}}
+ {{$previousExclusiveScope = $exclusiveScope}}
+ <a class="{{if .IsChecked}}checked{{end}} item" href="#" data-id="{{.ID}}" data-id-selector="#label_{{.ID}}" data-scope="{{$exclusiveScope}}"><span class="octicon-check {{if not .IsChecked}}invisible{{end}}">{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}</span>&nbsp;&nbsp;{{RenderLabel $.Context .}}
+ {{if .Description}}<br><small class="desc">{{.Description | RenderEmoji $.Context}}</small>{{end}}</a>
+ {{end}}
+ {{else}}
+ <div class="header" style="text-transform: none;font-size:14px;">{{.locale.Tr "repo.issues.new.no_items"}}</div>
+ {{end}}
+ </div>
+</div>
diff --git a/templates/repo/issue/new_form.tmpl b/templates/repo/issue/new_form.tmpl
index 9fd6c99a5b..a99ceb0451 100644
--- a/templates/repo/issue/new_form.tmpl
+++ b/templates/repo/issue/new_form.tmpl
@@ -36,50 +36,7 @@
{{template "repo/issue/branch_selector_field" .}}
<input id="label_ids" name="label_ids" type="hidden" value="{{.label_ids}}">
- <div class="ui {{if not .HasIssuesOrPullsWritePermission}}disabled{{end}} floating jump select-label dropdown">
- <span class="text">
- <strong>{{.locale.Tr "repo.issues.new.labels"}}</strong>
- {{if .HasIssuesOrPullsWritePermission}}
- {{svg "octicon-gear"}}
- {{end}}
- </span>
- <div class="filter menu" data-id="#label_ids">
- <div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_labels_title"}}</div>
- {{if or .Labels .OrgLabels}}
- <div class="ui icon search input">
- <i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
- <input type="text" placeholder="{{.locale.Tr "repo.issues.filter_labels"}}">
- </div>
- {{end}}
- <div class="no-select item">{{.locale.Tr "repo.issues.new.clear_labels"}}</div>
- {{if or .Labels .OrgLabels}}
- {{$previousExclusiveScope := "_no_scope"}}
- {{range .Labels}}
- {{$exclusiveScope := .ExclusiveScope}}
- {{if and (ne $previousExclusiveScope "_no_scope") (ne $previousExclusiveScope $exclusiveScope)}}
- <div class="ui divider"></div>
- {{end}}
- {{$previousExclusiveScope = $exclusiveScope}}
- <a class="{{if .IsChecked}}checked{{end}} item" href="#" data-id="{{.ID}}" data-id-selector="#label_{{.ID}}" data-scope="{{$exclusiveScope}}"><span class="octicon-check {{if not .IsChecked}}invisible{{end}}">{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}</span>&nbsp;&nbsp;{{RenderLabel $.Context .}}
- {{if .Description}}<br><small class="desc">{{.Description | RenderEmoji $.Context}}</small>{{end}}</a>
- {{end}}
-
- <div class="ui divider"></div>
- {{$previousExclusiveScope := "_no_scope"}}
- {{range .OrgLabels}}
- {{$exclusiveScope := .ExclusiveScope}}
- {{if and (ne $previousExclusiveScope "_no_scope") (ne $previousExclusiveScope $exclusiveScope)}}
- <div class="ui divider"></div>
- {{end}}
- {{$previousExclusiveScope = $exclusiveScope}}
- <a class="{{if .IsChecked}}checked{{end}} item" href="#" data-id="{{.ID}}" data-id-selector="#label_{{.ID}}" data-scope="{{$exclusiveScope}}"><span class="octicon-check {{if not .IsChecked}}invisible{{end}}">{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}</span>&nbsp;&nbsp;{{RenderLabel $.Context .}}
- {{if .Description}}<br><small class="desc">{{.Description | RenderEmoji $.Context}}</small>{{end}}</a>
- {{end}}
- {{else}}
- <div class="header" style="text-transform: none;font-size:14px;">{{.locale.Tr "repo.issues.new.no_items"}}</div>
- {{end}}
- </div>
- </div>
+ {{template "repo/issue/labels/labels_selector_field" .}}
{{template "repo/issue/labels/labels_sidebar" dict "root" $}}
<div class="ui divider"></div>
diff --git a/templates/repo/issue/view_content/sidebar.tmpl b/templates/repo/issue/view_content/sidebar.tmpl
index 29bfac7c27..e58f94aff3 100644
--- a/templates/repo/issue/view_content/sidebar.tmpl
+++ b/templates/repo/issue/view_content/sidebar.tmpl
@@ -106,49 +106,7 @@
<div class="ui divider"></div>
{{end}}
- <div class="ui {{if or (not .HasIssuesOrPullsWritePermission) .Repository.IsArchived}}disabled{{end}} floating jump select-label dropdown">
- <a class="text gt-df gt-ac muted">
- <strong>{{.locale.Tr "repo.issues.new.labels"}}</strong>
- {{if and .HasIssuesOrPullsWritePermission (not .Repository.IsArchived)}}
- {{svg "octicon-gear" 16 "gt-ml-2"}}
- {{end}}
- </a>
- <div class="filter menu" data-action="update" data-issue-id="{{$.Issue.ID}}" data-update-url="{{$.RepoLink}}/issues/labels">
- <div class="header" style="text-transform: none;font-size:16px;">{{.locale.Tr "repo.issues.new.add_labels_title"}}</div>
- {{if or .Labels .OrgLabels}}
- <div class="ui icon search input">
- <i class="icon gt-df gt-ac gt-jc">{{svg "octicon-search" 16}}</i>
- <input type="text" placeholder="{{.locale.Tr "repo.issues.filter_labels"}}">
- </div>
- {{end}}
- <a class="no-select item" href="#">{{.locale.Tr "repo.issues.new.clear_labels"}}</a>
- {{if or .Labels .OrgLabels}}
- {{$previousExclusiveScope := "_no_scope"}}
- {{range .Labels}}
- {{$exclusiveScope := .ExclusiveScope}}
- {{if and (ne $previousExclusiveScope "_no_scope") (ne $previousExclusiveScope $exclusiveScope)}}
- <div class="ui divider"></div>
- {{end}}
- {{$previousExclusiveScope = $exclusiveScope}}
- <a class="{{if .IsChecked}}checked{{end}} item" href="#" data-id="{{.ID}}" data-id-selector="#label_{{.ID}}" data-scope="{{$exclusiveScope}}"><span class="octicon-check {{if not .IsChecked}}invisible{{end}}">{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}</span>&nbsp;&nbsp;{{RenderLabel $.Context .}}
- {{if .Description}}<br><small class="desc">{{.Description | RenderEmoji $.Context}}</small>{{end}}</a>
- {{end}}
- <div class="ui divider"></div>
- {{$previousExclusiveScope := "_no_scope"}}
- {{range .OrgLabels}}
- {{$exclusiveScope := .ExclusiveScope}}
- {{if and (ne $previousExclusiveScope "_no_scope") (ne $previousExclusiveScope $exclusiveScope)}}
- <div class="ui divider"></div>
- {{end}}
- {{$previousExclusiveScope = $exclusiveScope}}
- <a class="{{if .IsChecked}}checked{{end}} item" href="#" data-id="{{.ID}}" data-id-selector="#label_{{.ID}}" data-scope="{{$exclusiveScope}}"><span class="octicon-check {{if not .IsChecked}}invisible{{end}}">{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}</span>&nbsp;&nbsp;{{RenderLabel $.Context .}}
- {{if .Description}}<br><small class="desc">{{.Description | RenderEmoji $.Context}}</small>{{end}}</a>
- {{end}}
- {{else}}
- <div class="header" style="text-transform: none;font-size:14px;">{{.locale.Tr "repo.issues.new.no_items"}}</div>
- {{end}}
- </div>
- </div>
+ {{template "repo/issue/labels/labels_selector_field" .}}
{{template "repo/issue/labels/labels_sidebar" dict "root" $}}
<div class="ui divider"></div>