Merge pull request '[v7.0/forgejo] Fix the WIP prefix toggling on the sidebar' (#3390) from bp-v7.0/forgejo-a93a99e into v7.0/forgejo

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3390
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
This commit is contained in:
Earl Warren 2024-04-23 08:42:03 +00:00
commit 73c190af4c
2 changed files with 4 additions and 3 deletions

View file

@ -114,7 +114,7 @@
</div> </div>
</div> </div>
{{if and (or .HasIssuesOrPullsWritePermission .IsIssuePoster) (not .HasMerged) (not .Issue.IsClosed)}} {{if and (or .HasIssuesOrPullsWritePermission .IsIssuePoster) (not .HasMerged) (not .Issue.IsClosed)}}
<div class="toggle-wip" data-title="{{.Issue.Title}}" data-wip-prefix="{{index .PullRequestWorkInProgressPrefixes 0}}" data-update-url="{{.Issue.Link}}/title"> <div class="toggle-wip" data-title="{{.Issue.Title}}" data-wip-prefixes="{{JsonUtils.EncodeToString .PullRequestWorkInProgressPrefixes}}" data-update-url="{{.Issue.Link}}/title">
<a class="muted"> <a class="muted">
{{if .IsPullWorkInProgress}} {{if .IsPullWorkInProgress}}
{{ctx.Locale.Tr "repo.pulls.ready_for_review"}} {{ctx.Locale.Tr "repo.pulls.remove_prefix" (index .PullRequestWorkInProgressPrefixes 0)}} {{ctx.Locale.Tr "repo.pulls.ready_for_review"}} {{ctx.Locale.Tr "repo.pulls.remove_prefix" (index .PullRequestWorkInProgressPrefixes 0)}}

View file

@ -568,12 +568,13 @@ export function initRepoIssueWipToggle() {
e.preventDefault(); e.preventDefault();
const toggleWip = e.currentTarget.closest('.toggle-wip'); const toggleWip = e.currentTarget.closest('.toggle-wip');
const title = toggleWip.getAttribute('data-title'); const title = toggleWip.getAttribute('data-title');
const wipPrefix = toggleWip.getAttribute('data-wip-prefix'); const wipPrefixes = JSON.parse(toggleWip.getAttribute('data-wip-prefixes'));
const updateUrl = toggleWip.getAttribute('data-update-url'); const updateUrl = toggleWip.getAttribute('data-update-url');
const prefix = wipPrefixes.find((prefix) => title.startsWith(prefix));
try { try {
const params = new URLSearchParams(); const params = new URLSearchParams();
params.append('title', title?.startsWith(wipPrefix) ? title.slice(wipPrefix.length).trim() : `${wipPrefix.trim()} ${title}`); params.append('title', prefix !== undefined ? title.slice(prefix.length).trim() : `${wipPrefixes[0].trim()} ${title}`);
const response = await POST(updateUrl, {data: params}); const response = await POST(updateUrl, {data: params});
if (!response.ok) { if (!response.ok) {