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 gt-text-center">
- {{.locale.Tr "repo.settings.archive.tagsettings_unavailable"}}
- </div>
- {{else}}
- <h4 class="ui top attached header">
- {{.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>{{.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">{{.locale.Tr "repo.settings.tags.protection.pattern.description" | Safe}}</div>
- </div>
- </div>
- <div class="whitelist field">
- <label>{{.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">{{.locale.Tr "repo.settings.protect_whitelist_search_users"}}</div>
- <div class="menu">
- {{range .Users}}
- <div class="item" data-value="{{.ID}}">
- {{avatar $.Context . 28 "mini"}}{{template "repo/search_name" .}}
- </div>
- {{end}}
- </div>
- </div>
- </div>
- {{if .Owner.IsOrganization}}
- <div class="whitelist field">
- <label>{{.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">{{.locale.Tr "repo.settings.protect_whitelist_search_teams"}}</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 green button">
- {{$.locale.Tr "save"}}
- </button>
- <a class="ui primary button" href="{{$.RepoLink}}/settings/tags">
- {{$.locale.Tr "cancel"}}
- </a>
- {{else}}
- <button class="ui green button">
- {{$.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>{{.locale.Tr "repo.settings.tags.protection.pattern"}}</th>
- <th>{{.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}}">{{avatar $.Context . 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}}
- {{$.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}}">{{$.locale.Tr "edit"}}</a>
- <form class="gt-dib" action="{{$.RepoLink}}/settings/tags/delete" method="post">
- {{$.CsrfTokenHtml}}
- <input type="hidden" name="id" value="{{.ID}}">
- <button class="ui tiny red button">{{$.locale.Tr "remove"}}</button>
- </form>
- </td>
- </tr>
- {{else}}
- <tr class="center aligned"><td colspan="3">{{.locale.Tr "repo.settings.tags.protection.none"}}</td></tr>
- {{end}}
- </tbody>
- </table>
- </div>
- </div>
- </div>
- {{end}}
- </div>
- {{template "repo/settings/layout_footer" .}}
|