You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

list.tmpl 5.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. {{template "base/head" .}}
  2. <div role="main" aria-label="{{.Title}}" class="page-content repository releases">
  3. {{template "repo/header" .}}
  4. <div class="ui container">
  5. {{template "base/alert" .}}
  6. {{template "repo/release_tag_header" .}}
  7. <ul id="release-list">
  8. {{range $idx, $info := .Releases}}
  9. {{$release := $info.Release}}
  10. <li class="ui grid">
  11. <div class="ui four wide column meta">
  12. <a class="muted" href="{{if not (and $release.Sha1 ($.Permission.CanRead $.UnitTypeCode))}}#{{else}}{{$.RepoLink}}/src/tag/{{$release.TagName | PathEscapeSegments}}{{end}}" rel="nofollow">{{svg "octicon-tag" 16 "tw-mr-1"}}{{$release.TagName}}</a>
  13. {{if and $release.Sha1 ($.Permission.CanRead $.UnitTypeCode)}}
  14. <a class="muted tw-font-mono" href="{{$.RepoLink}}/src/commit/{{$release.Sha1}}" rel="nofollow">{{svg "octicon-git-commit" 16 "tw-mr-1"}}{{ShortSha $release.Sha1}}</a>
  15. {{template "repo/branch_dropdown" dict "root" $ "release" $release}}
  16. {{end}}
  17. </div>
  18. <div class="ui twelve wide column detail">
  19. <div class="tw-flex tw-items-center tw-justify-between tw-flex-wrap tw-mb-2">
  20. <h4 class="release-list-title gt-word-break">
  21. {{if $.PageIsSingleTag}}{{$release.Title}}{{else}}<a href="{{$.RepoLink}}/releases/tag/{{$release.TagName | PathEscapeSegments}}">{{$release.Title}}</a>{{end}}
  22. {{template "repo/commit_statuses" dict "Status" $info.CommitStatus "Statuses" $info.CommitStatuses "AdditionalClasses" "tw-flex"}}
  23. {{if $release.IsDraft}}
  24. <span class="ui yellow label">{{ctx.Locale.Tr "repo.release.draft"}}</span>
  25. {{else if $release.IsPrerelease}}
  26. <span class="ui orange label">{{ctx.Locale.Tr "repo.release.prerelease"}}</span>
  27. {{else if (not $release.IsTag)}}
  28. <span class="ui green label">{{ctx.Locale.Tr "repo.release.stable"}}</span>
  29. {{end}}
  30. </h4>
  31. <div>
  32. {{if and $.CanCreateRelease (not $.PageIsSingleTag)}}
  33. <a class="muted" data-tooltip-content="{{ctx.Locale.Tr "repo.release.edit"}}" href="{{$.RepoLink}}/releases/edit/{{$release.TagName | PathEscapeSegments}}" rel="nofollow">
  34. {{svg "octicon-pencil"}}
  35. </a>
  36. {{end}}
  37. </div>
  38. </div>
  39. <p class="text grey">
  40. <span class="author">
  41. {{if $release.OriginalAuthor}}
  42. {{svg (MigrationIcon $release.Repo.GetOriginalURLHostname) 20 "tw-mr-1"}}{{$release.OriginalAuthor}}
  43. {{else if $release.Publisher}}
  44. {{ctx.AvatarUtils.Avatar $release.Publisher 20 "tw-mr-1"}}
  45. <a href="{{$release.Publisher.HomeLink}}">{{$release.Publisher.GetDisplayName}}</a>
  46. {{else}}
  47. Ghost
  48. {{end}}
  49. </span>
  50. <span class="released">
  51. {{ctx.Locale.Tr "repo.released_this"}}
  52. </span>
  53. {{if $release.CreatedUnix}}
  54. <span class="time">{{TimeSinceUnix $release.CreatedUnix ctx.Locale}}</span>
  55. {{end}}
  56. {{if and (not $release.IsDraft) ($.Permission.CanRead $.UnitTypeCode)}}
  57. | <span class="ahead"><a href="{{$.RepoLink}}/compare/{{$release.TagName | PathEscapeSegments}}...{{$release.TargetBehind | PathEscapeSegments}}">{{ctx.Locale.Tr "repo.release.ahead.commits" $release.NumCommitsBehind}}</a> {{ctx.Locale.Tr "repo.release.ahead.target" $release.TargetBehind}}</span>
  58. {{end}}
  59. </p>
  60. <div class="markup desc">
  61. {{$release.RenderedNote}}
  62. </div>
  63. <div class="divider"></div>
  64. <details class="download" {{if eq $idx 0}}open{{end}}>
  65. <summary class="tw-my-4">
  66. {{ctx.Locale.Tr "repo.release.downloads"}}
  67. </summary>
  68. <ul class="list">
  69. {{if and (not $.DisableDownloadSourceArchives) (not $release.IsDraft) ($.Permission.CanRead $.UnitTypeCode)}}
  70. <li>
  71. <a class="archive-link" href="{{$.RepoLink}}/archive/{{$release.TagName | PathEscapeSegments}}.zip" rel="nofollow"><strong>{{svg "octicon-file-zip" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.release.source_code"}} (ZIP)</strong></a>
  72. </li>
  73. <li>
  74. <a class="archive-link" href="{{$.RepoLink}}/archive/{{$release.TagName | PathEscapeSegments}}.tar.gz" rel="nofollow"><strong>{{svg "octicon-file-zip" 16 "tw-mr-1"}}{{ctx.Locale.Tr "repo.release.source_code"}} (TAR.GZ)</strong></a>
  75. </li>
  76. {{end}}
  77. {{range $release.Attachments}}
  78. <li>
  79. <a target="_blank" rel="nofollow" href="{{.DownloadURL}}" download>
  80. <strong>{{svg "octicon-package" 16 "tw-mr-1"}}{{.Name}}</strong>
  81. </a>
  82. <div>
  83. <span class="text grey">{{.Size | FileSize}}</span>
  84. <span data-tooltip-content="{{ctx.Locale.Tr "repo.release.download_count" (ctx.Locale.PrettyNumber .DownloadCount)}}">
  85. {{svg "octicon-info"}}
  86. </span>
  87. </div>
  88. </li>
  89. {{end}}
  90. </ul>
  91. </details>
  92. <div class="dot"></div>
  93. </div>
  94. </li>
  95. {{end}}
  96. </ul>
  97. {{template "base/paginate" .}}
  98. </div>
  99. </div>
  100. {{if (and ($.Permission.CanWrite $.UnitTypeCode) .PageIsTagList)}}
  101. <div class="ui g-modal-confirm delete modal">
  102. <div class="header">
  103. {{svg "octicon-trash"}}
  104. {{ctx.Locale.Tr "repo.release.delete_tag"}}
  105. </div>
  106. <div class="content">
  107. <p>{{ctx.Locale.Tr "repo.release.deletion_tag_desc"}}</p>
  108. </div>
  109. {{template "base/modal_actions_confirm" .}}
  110. </div>
  111. {{end}}
  112. {{template "base/footer" .}}