mirror of
https://github.com/go-gitea/gitea.git
synced 2026-06-23 04:40:40 +00:00
9c82394315
This PR fixes a bug in the UI that prevented non-collaborator users (the issue poster or creator) from setting the target branch (ref) of an issue. The backend API already supports this, but the UI was rigidly disabling the dropdown based only on collaborator status. Changes: - Enable the branch selector for the issue poster and during new issue creation. - Fix a typo (.IsIssueWriter -> .IsIssuePoster) that was preventing the reference update URL from being correctly set for posters.
65 lines
3.5 KiB
Handlebars
65 lines
3.5 KiB
Handlebars
{{/* TODO: RemoveIssueRef: the Issue.Ref will be removed in 1.24 or 1.25 if no end user really needs it or there could be better alternative then.
|
|
PR: https://github.com/go-gitea/gitea/pull/32744
|
|
|
|
The Issue.Ref was added by Add possibility to record branch or tag information in an issue (#780)
|
|
After 8 years, this "branch selector" does nothing more than saving the branch/tag name into database and displays it,
|
|
or sometimes auto-close a ref-matched issue by a commit message when CloseIssuesViaCommitInAnyBranch=false.
|
|
|
|
There are still users using it:
|
|
* @didim99: it is a really useful feature to specify a branch in which issue found.
|
|
|
|
Still needs to figure out:
|
|
* Could the "recording branch/tag name" be replaced by other approaches?
|
|
* Write the branch name in the issue title/body then it will still be displayed, eg: `[bug] (fix/ui-broken-bug) there is a bug ....`
|
|
* Is "GitHub-like development sidebar (`#31899`)" good enough (or better) for your usage?
|
|
*/}}
|
|
{{if and (not .Issue.IsPull) (not .PageIsComparePull)}}
|
|
{{$canChangeRef := or .IsIssuePoster .HasIssuesOrPullsWritePermission}}
|
|
<input id="ref_selector" name="ref" type="hidden" value="{{.Reference}}">
|
|
<div class="ui dropdown select-branch branch-selector-dropdown ellipsis-text-items {{if not $canChangeRef}}disabled{{end}}"
|
|
data-no-results="{{ctx.Locale.Tr "no_results_found"}}"
|
|
{{if and .Issue $canChangeRef}}data-url-update-issueref="{{$.RepoLink}}/issues/{{.Issue.Index}}/ref"{{end}}
|
|
>
|
|
<div class="ui button branch-dropdown-button">
|
|
<span class="text-branch-name gt-ellipsis">{{if .Reference}}{{$.RefEndName}}{{else}}{{ctx.Locale.Tr "repo.issues.no_ref"}}{{end}}</span>
|
|
{{if $canChangeRef}}{{svg "octicon-triangle-down" 14 "dropdown icon"}}{{end}}
|
|
</div>
|
|
<div class="menu">
|
|
<div class="ui icon search input">
|
|
<i class="icon">{{svg "octicon-filter" 16}}</i>
|
|
<input name="search" placeholder="{{ctx.Locale.Tr "repo.filter_branch_and_tag"}}...">
|
|
</div>
|
|
<div class="branch-tag-tab">
|
|
<a class="branch-tag-item reference column muted active" href="#" data-target="#branch-list">
|
|
{{svg "octicon-git-branch" 16 "tw-mr-1"}} {{ctx.Locale.Tr "repo.branches"}}
|
|
</a>
|
|
<a class="branch-tag-item reference column muted" href="#" data-target="#tag-list">
|
|
{{svg "octicon-tag" 16 "tw-mr-1"}} {{ctx.Locale.Tr "repo.tags"}}
|
|
</a>
|
|
</div>
|
|
<div class="branch-tag-divider"></div>
|
|
<div id="branch-list" class="scrolling menu reference-list-menu">
|
|
{{if or .Reference (not .Issue)}}
|
|
<div class="item tw-text-xs" data-id="" data-name="{{ctx.Locale.Tr "repo.issues.no_ref"}}" data-id-selector="#ref_selector"><strong><a href="#">{{ctx.Locale.Tr "repo.clear_ref"}}</a></strong></div>
|
|
{{end}}
|
|
{{range .Branches}}
|
|
<div class="item" data-id="refs/heads/{{.}}" data-name="{{.}}" data-id-selector="#ref_selector" title="{{.}}">{{.}}</div>
|
|
{{else}}
|
|
<div class="item disabled">{{ctx.Locale.Tr "no_results_found"}}</div>
|
|
{{end}}
|
|
</div>
|
|
<div id="tag-list" class="scrolling menu reference-list-menu tw-hidden">
|
|
{{if or .Reference (not .Issue)}}
|
|
<div class="item tw-text-xs" data-id="" data-name="{{ctx.Locale.Tr "repo.issues.no_ref"}}" data-id-selector="#ref_selector"><strong><a href="#">{{ctx.Locale.Tr "repo.clear_ref"}}</a></strong></div>
|
|
{{end}}
|
|
{{range .Tags}}
|
|
<div class="item" data-id="refs/tags/{{.}}" data-name="tags/{{.}}" data-id-selector="#ref_selector">{{.}}</div>
|
|
{{else}}
|
|
<div class="item disabled">{{ctx.Locale.Tr "no_results_found"}}</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="divider"></div>
|
|
{{end}}
|