mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-10-31 20:44:07 +00:00
7eac5feb74
- when the PR title has the maximum length, the WIP toggle switch does nothing - work around this by slightly reducing the max input size (- 10 characters for eventually long prefixes) - test WIP toggling edge case in playwright fix(e2e): increase timeouts A look at recent runs suggests they should be increased globally. The timeouts in the config file have no timeout by default.
146 lines
7.7 KiB
Go HTML Template
146 lines
7.7 KiB
Go HTML Template
{{if .Flash}}
|
|
<div class="sixteen wide column tw-mb-2">
|
|
{{template "base/alert" .}}
|
|
</div>
|
|
{{end}}
|
|
<div class="issue-title-header">
|
|
{{$canEditIssueTitle := and (or .HasIssuesOrPullsWritePermission .IsIssuePoster) (not .Repository.IsArchived)}}
|
|
<div class="issue-title" id="issue-title-display">
|
|
<h1 class="tw-break-anywhere">
|
|
{{RenderIssueTitle $.Context .Issue.Title ($.Repository.ComposeMetas ctx) | RenderCodeBlock}}
|
|
<span class="index">#{{.Issue.Index}}</span>
|
|
</h1>
|
|
<div class="button-row">
|
|
{{if $canEditIssueTitle}}
|
|
<button id="issue-title-edit-show" class="ui small basic button">{{ctx.Locale.Tr "repo.issues.edit"}}</button>
|
|
{{end}}
|
|
{{if not .Issue.IsPull}}
|
|
<a role="button" class="ui small primary button" href="{{.RepoLink}}/issues/new{{if .NewIssueChooseTemplate}}/choose{{end}}">{{ctx.Locale.Tr "repo.issues.new"}}</a>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
{{if $canEditIssueTitle}}
|
|
<div class="ui form issue-title tw-hidden" id="issue-title-editor">
|
|
<div class="ui input tw-flex-1">
|
|
<input value="{{.Issue.Title}}" data-old-title="{{.Issue.Title}}" maxlength="245" autocomplete="off" class="js-quick-submit">
|
|
</div>
|
|
<div class="button-row">
|
|
<button class="ui small basic cancel button">{{ctx.Locale.Tr "repo.issues.cancel"}}</button>
|
|
<button class="ui small primary button"
|
|
data-update-url="{{$.RepoLink}}/issues/{{.Issue.Index}}/title">
|
|
{{ctx.Locale.Tr "repo.issues.save"}}
|
|
</button>
|
|
</div>
|
|
</div>
|
|
{{end}}
|
|
<div class="issue-title-meta">
|
|
{{if .HasMerged}}
|
|
<div class="ui purple label issue-state-label">{{svg "octicon-git-merge" 16 "tw-mr-1"}} {{if eq .Issue.PullRequest.Status 3}}{{ctx.Locale.Tr "repo.pulls.manually_merged"}}{{else}}{{ctx.Locale.Tr "repo.pulls.merged"}}{{end}}</div>
|
|
{{else if .Issue.IsClosed}}
|
|
<div class="ui red label issue-state-label">{{if .Issue.IsPull}}{{svg "octicon-git-pull-request-closed"}}{{else}}{{svg "octicon-issue-closed"}}{{end}} {{ctx.Locale.Tr "repo.issues.closed_title"}}</div>
|
|
{{else if .Issue.IsPull}}
|
|
{{if .IsPullWorkInProgress}}
|
|
<div class="ui grey label issue-state-label">{{svg "octicon-git-pull-request-draft"}} {{ctx.Locale.Tr "repo.issues.draft_title"}}</div>
|
|
{{else}}
|
|
<div class="ui green label issue-state-label">{{svg "octicon-git-pull-request"}} {{ctx.Locale.Tr "repo.issues.open_title"}}</div>
|
|
{{end}}
|
|
{{else}}
|
|
<div class="ui green label issue-state-label">{{svg "octicon-issue-opened"}} {{ctx.Locale.Tr "repo.issues.open_title"}}</div>
|
|
{{end}}
|
|
<div class="tw-ml-2 tw-flex-1 tw-break-anywhere">
|
|
{{if .Issue.IsPull}}
|
|
{{$headHref := .HeadTarget}}
|
|
{{if .HeadBranchLink}}
|
|
{{$headHref = HTMLFormat `<a href="%s">%s</a>` .HeadBranchLink $headHref}}
|
|
{{end}}
|
|
{{if not .MadeUsingAGit}}
|
|
{{$headHref = HTMLFormat `%s <button class="btn interact-fg" data-tooltip-content="%s" data-clipboard-text="%s">%s</button>` $headHref (ctx.Locale.Tr "copy_branch") .HeadTarget (svg "octicon-copy" 14)}}
|
|
{{end}}
|
|
{{$baseHref := .BaseTarget}}
|
|
{{if .BaseBranchLink}}
|
|
{{$baseHref = HTMLFormat `<a href="%s">%s</a>` .BaseBranchLink $baseHref}}
|
|
{{end}}
|
|
{{if .Issue.PullRequest.HasMerged}}
|
|
{{$mergedStr:= TimeSinceUnix .Issue.PullRequest.MergedUnix ctx.Locale}}
|
|
{{if .Issue.OriginalAuthor}}
|
|
{{.Issue.OriginalAuthor}}
|
|
<span class="pull-desc">{{ctx.Locale.TrN .NumCommits "repo.pulls.merged_title_desc_one" "repo.pulls.merged_title_desc_few" .NumCommits $headHref $baseHref $mergedStr}}</span>
|
|
{{else}}
|
|
<a {{if gt .Issue.PullRequest.Merger.ID 0}}href="{{.Issue.PullRequest.Merger.HomeLink}}"{{end}}>{{.Issue.PullRequest.Merger.GetDisplayName}}</a>
|
|
<span class="pull-desc">{{ctx.Locale.TrN .NumCommits "repo.pulls.merged_title_desc_one" "repo.pulls.merged_title_desc_few" .NumCommits $headHref $baseHref $mergedStr}}</span>
|
|
{{end}}
|
|
{{if .MadeUsingAGit}}
|
|
{{/* TODO: Move documentation link to the instructions at the bottom of the PR, show instructions when clicking label */}}
|
|
{{/* Note: #agit-label is necessary for testing whether the label appears when it should in tests/integration/git_test.go */}}
|
|
<a target="_blank" rel="noopener" href="https://forgejo.org/docs/latest/user/agit-support/">
|
|
<span id="agit-label" data-tooltip-content="{{ctx.Locale.Tr "repo.pulls.agit_explanation"}}" class="ui small label">
|
|
{{ctx.Locale.Tr "repo.pulls.made_using_agit"}}
|
|
</span>
|
|
</a>
|
|
{{end}}
|
|
{{else}}
|
|
{{if .Issue.OriginalAuthor}}
|
|
<span id="pull-desc-display" class="pull-desc">{{.Issue.OriginalAuthor}} {{ctx.Locale.TrN .NumCommits "repo.pulls.title_desc_one" "repo.pulls.title_desc_few" .NumCommits $headHref $baseHref}}</span>
|
|
{{else}}
|
|
<span id="pull-desc-display" class="pull-desc">
|
|
<a {{if gt .Issue.Poster.ID 0}}href="{{.Issue.Poster.HomeLink}}"{{end}}>{{.Issue.Poster.GetDisplayName}}</a>
|
|
{{ctx.Locale.TrN .NumCommits "repo.pulls.title_desc_one" "repo.pulls.title_desc_few" .NumCommits $headHref $baseHref}}
|
|
</span>
|
|
{{end}}
|
|
{{if .MadeUsingAGit}}
|
|
{{/* TODO: Move documentation link to the instructions at the bottom of the PR, show instructions when clicking label */}}
|
|
{{/* Note: #agit-label is necessary for testing whether the label appears when it should in tests/integration/git_test.go */}}
|
|
<a target="_blank" rel="noopener" href="https://forgejo.org/docs/latest/user/agit-support/">
|
|
<span id="agit-label" data-tooltip-content="{{ctx.Locale.Tr "repo.pulls.agit_explanation"}}" class="ui small label">
|
|
{{ctx.Locale.Tr "repo.pulls.made_using_agit"}}
|
|
</span>
|
|
</a>
|
|
{{end}}
|
|
<span id="pull-desc-editor" class="tw-hidden flex-text-block" data-target-update-url="{{$.RepoLink}}/pull/{{.Issue.Index}}/target_branch">
|
|
<div class="ui floating filter dropdown">
|
|
<div class="ui basic small button tw-mr-0">
|
|
<span class="text">{{ctx.Locale.Tr "repo.pulls.compare_compare"}}: {{$.HeadTarget}}</span>
|
|
</div>
|
|
</div>
|
|
{{svg "octicon-arrow-right"}}
|
|
<div class="ui floating filter dropdown" data-no-results="{{ctx.Locale.Tr "repo.pulls.no_results"}}">
|
|
<div class="ui basic small button">
|
|
<span class="text" id="pull-target-branch" data-basename="{{$.BaseName}}" data-branch="{{$.BaseBranch}}">{{ctx.Locale.Tr "repo.pulls.compare_base"}}: {{$.BaseName}}:{{$.BaseBranch}}</span>
|
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
|
</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.pulls.filter_branch"}}...">
|
|
</div>
|
|
<div class="scrolling menu" id="branch-select">
|
|
{{range .Branches}}
|
|
{{$sameBase := ne $.BaseName $.HeadUserName}}
|
|
{{$differentBranch := ne . $.HeadBranch}}
|
|
{{if or $sameBase $differentBranch}}
|
|
<div class="item {{if eq $.BaseBranch .}}selected{{end}}" data-branch="{{.}}">{{$.BaseName}}{{if $.HeadRepo}}/{{$.HeadRepo}}{{end}}:{{.}}</div>
|
|
{{end}}
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</span>
|
|
{{end}}
|
|
{{else}}
|
|
{{$createdStr:= TimeSinceUnix .Issue.CreatedUnix ctx.Locale}}
|
|
<span class="time-desc">
|
|
{{if .Issue.OriginalAuthor}}
|
|
{{ctx.Locale.Tr "repo.issues.opened_by_fake" $createdStr .Issue.OriginalAuthor}}
|
|
{{else if gt .Issue.Poster.ID 0}}
|
|
{{ctx.Locale.Tr "repo.issues.opened_by" $createdStr .Issue.Poster.HomeLink .Issue.Poster.GetDisplayName}}
|
|
{{else}}
|
|
{{ctx.Locale.Tr "repo.issues.opened_by_fake" $createdStr .Issue.Poster.GetDisplayName}}
|
|
{{end}}
|
|
·
|
|
{{ctx.Locale.TrN .Issue.NumComments "repo.issues.num_comments_1" "repo.issues.num_comments" .Issue.NumComments}}
|
|
</span>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|