123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- {{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings edit")}}
- <div class="repo-setting-content">
- {{if .Repository.IsArchived}}
- <div class="ui warning message tw-text-center">
- {{ctx.Locale.Tr "repo.settings.archive.tagsettings_unavailable"}}
- </div>
- {{else}}
- <h4 class="ui top attached header">
- {{ctx.Locale.Tr "repo.settings.tags.protection"}}
- </h4>
-
- <div class="ui attached segment">
- <div class="ui grid">
- <div class="sixteen wide column">
- <div class="ui segment">
- <form class="ui form" action="{{.Link}}" method="post">
- {{.CsrfTokenHtml}}
- <div class="field">
- <label>{{ctx.Locale.Tr "repo.settings.tags.protection.pattern"}}</label>
- <div id="search-tag-box" class="ui search">
- <div class="ui input">
- <input class="prompt" name="name_pattern" autocomplete="off" value="{{.name_pattern}}" placeholder="v*" autofocus required>
- </div>
- <div class="help">{{ctx.Locale.Tr "repo.settings.tags.protection.pattern.description"}}</div>
- </div>
- </div>
- <div class="whitelist field">
- <label>{{ctx.Locale.Tr "repo.settings.tags.protection.allowed.users"}}</label>
- <div class="ui multiple search selection dropdown">
- <input type="hidden" name="allowlist_users" value="{{.allowlist_users}}">
- <div class="default text">{{ctx.Locale.Tr "search.user_kind"}}</div>
- <div class="menu">
- {{range .Users}}
- <div class="item" data-value="{{.ID}}">
- {{ctx.AvatarUtils.Avatar . 28 "mini"}}{{template "repo/search_name" .}}
- </div>
- {{end}}
- </div>
- </div>
- </div>
- {{if .Owner.IsOrganization}}
- <div class="whitelist field">
- <label>{{ctx.Locale.Tr "repo.settings.tags.protection.allowed.teams"}}</label>
- <div class="ui multiple search selection dropdown">
- <input type="hidden" name="allowlist_teams" value="{{.allowlist_teams}}">
- <div class="default text">{{ctx.Locale.Tr "search.team_kind"}}</div>
- <div class="menu">
- {{range .Teams}}
- <div class="item" data-value="{{.ID}}">
- {{svg "octicon-people"}}
- {{.Name}}
- </div>
- {{end}}
- </div>
- </div>
- </div>
- {{end}}
- <div class="field">
- {{if .PageIsEditProtectedTag}}
- <button class="ui primary button">
- {{ctx.Locale.Tr "save"}}
- </button>
- <a class="ui primary button" href="{{$.RepoLink}}/settings/tags">
- {{ctx.Locale.Tr "cancel"}}
- </a>
- {{else}}
- <button class="ui primary button">
- {{ctx.Locale.Tr "repo.settings.tags.protection.create"}}
- </button>
- {{end}}
- </div>
- </form>
- </div>
- </div>
-
- <div class="sixteen wide column">
- <table class="ui single line table">
- <thead>
- <th>{{ctx.Locale.Tr "repo.settings.tags.protection.pattern"}}</th>
- <th>{{ctx.Locale.Tr "repo.settings.tags.protection.allowed"}}</th>
- <th></th>
- </thead>
- <tbody>
- {{range .ProtectedTags}}
- <tr>
- <td><pre>{{.NamePattern}}</pre></td>
- <td>
- {{if or .AllowlistUserIDs (and $.Owner.IsOrganization .AllowlistTeamIDs)}}
- {{$userIDs := .AllowlistUserIDs}}
- {{range $.Users}}
- {{if SliceUtils.Contains $userIDs .ID}}
- <a class="ui basic label" href="{{.HomeLink}}">{{ctx.AvatarUtils.Avatar . 26}} {{.GetDisplayName}}</a>
- {{end}}
- {{end}}
- {{if $.Owner.IsOrganization}}
- {{$teamIDs := .AllowlistTeamIDs}}
- {{range $.Teams}}
- {{if SliceUtils.Contains $teamIDs .ID}}
- <a class="ui basic label" href="{{$.Owner.OrganisationLink}}/teams/{{PathEscape .LowerName}}">{{.Name}}</a>
- {{end}}
- {{end}}
- {{end}}
- {{else}}
- {{ctx.Locale.Tr "repo.settings.tags.protection.allowed.noone"}}
- {{end}}
- </td>
- <td class="right aligned">
- <a class="ui tiny primary button" href="{{$.RepoLink}}/settings/tags/{{.ID}}">{{ctx.Locale.Tr "edit"}}</a>
- <form class="tw-inline-block" action="{{$.RepoLink}}/settings/tags/delete" method="post">
- {{$.CsrfTokenHtml}}
- <input type="hidden" name="id" value="{{.ID}}">
- <button class="ui tiny red button">{{ctx.Locale.Tr "remove"}}</button>
- </form>
- </td>
- </tr>
- {{else}}
- <tr class="center aligned"><td colspan="3">{{ctx.Locale.Tr "repo.settings.tags.protection.none"}}</td></tr>
- {{end}}
- </tbody>
- </table>
- </div>
- </div>
- </div>
- {{end}}
- </div>
- {{template "repo/settings/layout_footer" .}}
|