{{template "base/head" .}} <div role="main" aria-label="{{.Title}}" class="page-content repository release"> {{template "repo/header" .}} <div class="ui container"> {{template "base/alert" .}} <h2 class="ui compact small menu header"> {{if .Permission.CanRead $.UnitTypeReleases}} <a class="{{if (and (not .PageIsSingleTag) (not .PageIsTagList))}}active {{end}}item" href="{{.RepoLink}}/releases">{{.locale.Tr "repo.release.releases"}}</a> {{end}} {{if .Permission.CanRead $.UnitTypeCode}} <a class="{{if (or .PageIsSingleTag .PageIsTagList)}}active {{end}}item" href="{{.RepoLink}}/tags">{{.locale.Tr "repo.release.tags"}}</a> {{end}} </h2> {{if .EnableFeed}} <a href="{{.RepoLink}}/{{if .PageIsTagList}}tags{{else}}releases{{end}}.rss"><i class="ui grey icon gt-ml-3" data-tooltip-content="{{.locale.Tr "rss_feed"}}">{{svg "octicon-rss" 18}}</i></a> {{end}} {{if (and .CanCreateRelease (not .PageIsTagList))}} <a class="ui right small green button" href="{{$.RepoLink}}/releases/new"> {{.locale.Tr "repo.release.new_release"}} </a> {{end}} {{if .PageIsTagList}} <div class="ui divider"></div> {{if gt .ReleasesNum 0}} <h4 class="ui top attached header"> <div class="five wide column gt-df gt-ac"> {{svg "octicon-tag" 16 "gt-mr-2"}}{{.locale.Tr "repo.release.tags"}} </div> </h4> <div class="ui attached table segment"> <table class="ui very basic striped fixed table single line" id="tags-table"> <thead></thead> <tbody class="tag-list"> {{range $idx, $release := .Releases}} <tr> <td class="tag"> <h3 class="release-tag-name gt-mb-3"> <a class="gt-df gt-ac" href="{{$.RepoLink}}/releases/tag/{{.TagName | PathEscapeSegments}}" rel="nofollow">{{.TagName}}</a> </h3> <div class="download gt-df gt-ac"> {{if $.Permission.CanRead $.UnitTypeCode}} {{if .CreatedUnix}} <span class="gt-mr-3">{{svg "octicon-clock" 16 "gt-mr-2"}}{{TimeSinceUnix .CreatedUnix $.locale}}</span> {{end}} <a class="gt-mr-3 gt-mono muted" href="{{$.RepoLink}}/src/commit/{{.Sha1}}" rel="nofollow">{{svg "octicon-git-commit" 16 "gt-mr-2"}}{{ShortSha .Sha1}}</a> {{if not $.DisableDownloadSourceArchives}} <a class="archive-link gt-mr-3 muted" href="{{$.RepoLink}}/archive/{{.TagName | PathEscapeSegments}}.zip" rel="nofollow">{{svg "octicon-file-zip" 16 "gt-mr-2"}}ZIP</a> <a class="archive-link gt-mr-3 muted" href="{{$.RepoLink}}/archive/{{.TagName | PathEscapeSegments}}.tar.gz" rel="nofollow">{{svg "octicon-file-zip" 16 "gt-mr-2"}}TAR.GZ</a> {{end}} {{if (and $.CanCreateRelease $release.IsTag)}} <a class="gt-mr-3 muted" href="{{$.RepoLink}}/releases/new?tag={{.TagName}}">{{svg "octicon-tag" 16 "gt-mr-2"}}{{$.locale.Tr "repo.release.new_release"}}</a> {{end}} {{if (and ($.Permission.CanWrite $.UnitTypeCode) $release.IsTag)}} <a class="ui delete-button gt-mr-3 muted" data-url="{{$.RepoLink}}/tags/delete" data-id="{{.ID}}"> {{svg "octicon-trash" 16 "gt-mr-2"}}{{$.locale.Tr "repo.release.delete_tag"}} </a> {{end}} {{if (not $release.IsTag)}} <a class="gt-mr-3 muted" href="{{$.RepoLink}}/releases/tag/{{.TagName | PathEscapeSegments}}">{{svg "octicon-tag" 16 "gt-mr-2"}}{{$.locale.Tr "repo.release.detail"}}</a> {{end}} {{end}} </div> </td> </tr> {{end}} </tbody> </table> </div> {{end}} {{else}} <ul id="release-list"> {{range $idx, $release := .Releases}} <li class="ui grid"> <div class="ui four wide column meta gt-mt-2"> <a class="gt-df gt-ac gt-je muted" href="{{if not .Sha1}}#{{else}}{{$.RepoLink}}/src/tag/{{.TagName | PathEscapeSegments}}{{end}}" rel="nofollow">{{svg "octicon-tag" 16 "gt-mr-2"}}{{.TagName}}</a> {{if .Sha1}} <span class="commit"> <a class="gt-mono muted" href="{{$.RepoLink}}/src/commit/{{.Sha1}}" rel="nofollow">{{svg "octicon-git-commit" 16 "gt-mr-2"}}{{ShortSha .Sha1}}</a> </span> {{template "repo/branch_dropdown" dict "root" $ "release" .}} {{end}} </div> <div class="ui twelve wide column detail"> <div class="gt-df gt-ac gt-sb gt-fw gt-mb-3"> <h4 class="release-list-title gt-df gt-ac"> <a href="{{$.RepoLink}}/releases/tag/{{.TagName | PathEscapeSegments}}">{{.Title}}</a> {{if .IsDraft}} <span class="ui yellow label gt-ml-3 gt-mt-1">{{$.locale.Tr "repo.release.draft"}}</span> {{else if .IsPrerelease}} <span class="ui orange label gt-ml-3 gt-mt-1">{{$.locale.Tr "repo.release.prerelease"}}</span> {{else if not .IsTag}} <span class="ui green label gt-ml-3 gt-mt-1">{{$.locale.Tr "repo.release.stable"}}</span> {{end}} </h4> <div class="gt-df gt-ac"> {{if and $.CanCreateRelease (not .IsTag)}} <a class="muted gt-ml-3 gt-df gt-ac" data-tooltip-content="{{$.locale.Tr "repo.release.edit"}}" href="{{$.RepoLink}}/releases/edit/{{.TagName | PathEscapeSegments}}" rel="nofollow"> {{svg "octicon-pencil"}} </a> {{end}} </div> </div> {{if .IsTag}} <p class="text grey"> {{if gt .Publisher.ID 0}} <span class="author"> {{avatar $.Context .Publisher 20}} <a href="{{.Publisher.HomeLink}}">{{.Publisher.Name}}</a> </span> <span class="released"> {{$.locale.Tr "repo.tagged_this"}} </span> {{if .CreatedUnix}} <span class="time">{{TimeSinceUnix .CreatedUnix $.locale}}</span> {{end}} | {{end}} <span class="ahead"><a href="{{$.RepoLink}}/compare/{{.TagName | PathEscapeSegments}}{{if .Target}}...{{.Target | PathEscapeSegments}}{{end}}">{{$.locale.Tr "repo.release.ahead.commits" .NumCommitsBehind | Str2html}}</a> {{$.locale.Tr "repo.tag.ahead.target" $.DefaultBranch}}</span> </p> {{else}} <p class="text grey"> <span class="author"> {{if .OriginalAuthor}} {{svg "octicon-mark-github" 16 "gt-mr-2"}}{{.OriginalAuthor}} {{else if .Publisher}} {{avatar $.Context .Publisher 20}} <a href="{{.Publisher.HomeLink}}">{{.Publisher.GetDisplayName}}</a> {{else}} Ghost {{end}} </span> <span class="released"> {{$.locale.Tr "repo.released_this"}} </span> {{if .CreatedUnix}} <span class="time">{{TimeSinceUnix .CreatedUnix $.locale}}</span> {{end}} {{if not .IsDraft}} | <span class="ahead"><a href="{{$.RepoLink}}/compare/{{.TagName | PathEscapeSegments}}...{{.Target | PathEscapeSegments}}">{{$.locale.Tr "repo.release.ahead.commits" .NumCommitsBehind | Str2html}}</a> {{$.locale.Tr "repo.release.ahead.target" .Target}}</span> {{end}} </p> {{end}} <div class="markup desc"> {{Str2html .Note}} </div> <details class="download gt-border-secondary-top gt-mt-4 gt-pt-4" {{if eq $idx 0}}open{{end}}> <summary class="gt-mb-4"> {{$.locale.Tr "repo.release.downloads"}} </summary> <ul class="list"> {{if and (not $.DisableDownloadSourceArchives) (not .IsDraft) ($.Permission.CanRead $.UnitTypeCode)}} <li> <a class="archive-link" href="{{$.RepoLink}}/archive/{{.TagName | PathEscapeSegments}}.zip" rel="nofollow"><strong>{{svg "octicon-file-zip" 16 "gt-mr-2"}}{{$.locale.Tr "repo.release.source_code"}} (ZIP)</strong></a> </li> <li> <a class="archive-link" href="{{$.RepoLink}}/archive/{{.TagName | PathEscapeSegments}}.tar.gz" rel="nofollow"><strong>{{svg "octicon-file-zip" 16 "gt-mr-2"}}{{$.locale.Tr "repo.release.source_code"}} (TAR.GZ)</strong></a> </li> {{end}} {{if .Attachments}} {{range .Attachments}} <li> <span class="ui text middle aligned right"> <span class="ui text grey">{{.Size | FileSize}}</span> <span data-tooltip-content="{{$.locale.Tr "repo.release.download_count" ($.locale.PrettyNumber .DownloadCount)}}"> {{svg "octicon-info"}} </span> </span> <a target="_blank" rel="noopener noreferrer" href="{{.DownloadURL}}"> <strong>{{svg "octicon-package" 16 "gt-mr-2"}}{{.Name}}</strong> </a> </li> {{end}} {{end}} </ul> </details> <span class="dot"> </span> </div> </li> {{end}} </ul> {{end}} {{template "base/paginate" .}} </div> </div> {{if (and ($.Permission.CanWrite $.UnitTypeCode) .PageIsTagList)}} <div class="ui small basic delete modal"> <div class="ui header"> {{svg "octicon-trash" 16 "gt-mr-2"}} {{.locale.Tr "repo.release.delete_tag"}} </div> <div class="content"> <p>{{.locale.Tr "repo.release.deletion_tag_desc"}}</p> </div> {{template "base/delete_modal_actions" .}} </div> {{end}} {{template "base/footer" .}}