mirror of
https://github.com/go-gitea/gitea
synced 2024-12-23 00:54:28 +00:00
0f4b0cf892
1. correct the modal usage on "admin email list" page (then `web_src/js/features/admin/emails.ts` is removed) 2. use `addDelegatedEventListener` instead of `jQuery().on` 3. more jQuery related changes and remove jQuery from `web_src/js/features/common-button.ts` 4. improve `confirmModal` to make it support header, and remove incorrect double-escaping 5. fix more typescript related types 6. fine tune devtest pages and add more tests
102 lines
4.2 KiB
Handlebars
102 lines
4.2 KiB
Handlebars
{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin user")}}
|
|
<div class="admin-setting-content">
|
|
<h4 class="ui top attached header">
|
|
{{ctx.Locale.Tr "admin.emails.email_manage_panel"}} ({{ctx.Locale.Tr "admin.total" .Total}})
|
|
</h4>
|
|
<div class="ui attached segment">
|
|
<div class="ui secondary filter menu tw-items-center tw-mx-0">
|
|
<form class="ui form ignore-dirty tw-flex-1">
|
|
{{template "shared/search/combo" dict "Value" .Keyword}}
|
|
</form>
|
|
<!-- Sort -->
|
|
<div class="ui dropdown type jump item tw-mr-0">
|
|
<span class="text">
|
|
{{ctx.Locale.Tr "repo.issues.filter_sort"}}
|
|
</span>
|
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
|
<div class="menu">
|
|
<a class="{{if or (eq .SortType "email") (not .SortType)}}active {{end}}item" href="?sort=email&q={{$.Keyword}}">{{ctx.Locale.Tr "admin.emails.filter_sort.email"}}</a>
|
|
<a class="{{if eq .SortType "reverseemail"}}active {{end}}item" href="?sort=reverseemail&q={{$.Keyword}}">{{ctx.Locale.Tr "admin.emails.filter_sort.email_reverse"}}</a>
|
|
<a class="{{if eq .SortType "username"}}active {{end}}item" href="?sort=username&q={{$.Keyword}}">{{ctx.Locale.Tr "admin.emails.filter_sort.name"}}</a>
|
|
<a class="{{if eq .SortType "reverseusername"}}active {{end}}item" href="?sort=reverseusername&q={{$.Keyword}}">{{ctx.Locale.Tr "admin.emails.filter_sort.name_reverse"}}</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="ui attached table segment">
|
|
<table class="ui very basic striped table unstackable">
|
|
<thead>
|
|
<tr>
|
|
<th data-sortt-asc="username" data-sortt-desc="reverseusername">
|
|
{{ctx.Locale.Tr "admin.users.name"}}
|
|
{{SortArrow "username" "reverseusername" $.SortType false}}
|
|
</th>
|
|
<th>{{ctx.Locale.Tr "admin.users.full_name"}}</th>
|
|
<th data-sortt-asc="email" data-sortt-desc="reverseemail" data-sortt-default="true">
|
|
{{ctx.Locale.Tr "email"}}
|
|
{{SortArrow "email" "reverseemail" $.SortType true}}
|
|
</th>
|
|
<th>{{ctx.Locale.Tr "admin.emails.primary"}}</th>
|
|
<th>{{ctx.Locale.Tr "admin.emails.activated"}}</th>
|
|
<th></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{{range .Emails}}
|
|
<tr>
|
|
<td><a href="{{AppSubUrl}}/{{.Name | PathEscape}}">{{.Name}}</a></td>
|
|
<td class="gt-ellipsis tw-max-w-48">{{.FullName}}</td>
|
|
<td class="gt-ellipsis tw-max-w-48">{{.Email}}</td>
|
|
<td>{{svg (Iif .IsPrimary "octicon-check" "octicon-x")}}</td>
|
|
<td>
|
|
{{if .CanChange}}
|
|
<a class="show-modal" href data-modal="#change-email-modal" data-modal-uid="{{.UID}}"
|
|
data-modal-email="{{.Email}}"
|
|
data-modal-primary="{{if .IsPrimary}}1{{else}}0{{end}}"
|
|
data-modal-activate="{{if .IsActivated}}0{{else}}1{{end}}">
|
|
{{svg (Iif .IsActivated "octicon-check" "octicon-x")}}
|
|
</a>
|
|
{{else}}
|
|
{{svg (Iif .IsActivated "octicon-check" "octicon-x")}}
|
|
{{end}}
|
|
</td>
|
|
<td>
|
|
<a class="link-action negative" href data-url="{{$.Link}}/delete?id={{.ID}}&uid={{.UID}}"
|
|
data-modal-confirm-header="{{ctx.Locale.Tr "admin.emails.delete"}}"
|
|
data-modal-confirm-content="{{ctx.Locale.Tr "admin.emails.delete_desc"}}"
|
|
>{{svg "octicon-trash"}}</a>
|
|
</td>
|
|
</tr>
|
|
{{end}}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
{{template "base/paginate" .}}
|
|
|
|
<div class="ui g-modal-confirm modal" id="change-email-modal">
|
|
<div class="header">
|
|
{{ctx.Locale.Tr "admin.emails.change_email_header"}}
|
|
</div>
|
|
<form class="content ui form" action="{{AppSubUrl}}/-/admin/emails/activate" method="post">
|
|
<p class="center">{{ctx.Locale.Tr "admin.emails.change_email_text"}}</p>
|
|
|
|
{{$.CsrfTokenHtml}}
|
|
|
|
<input type="hidden" name="sort" value="{{.SortType}}">
|
|
<input type="hidden" name="q" value="{{.Keyword}}">
|
|
<input type="hidden" name="is_primary" value="{{.IsPrimary}}">
|
|
<input type="hidden" name="is_activated" value="{{.IsActivated}}">
|
|
|
|
<input type="hidden" name="uid">
|
|
<input type="hidden" name="email">
|
|
<input type="hidden" name="primary">
|
|
<input type="hidden" name="activate">
|
|
|
|
{{template "base/modal_actions_confirm" .}}
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
{{template "admin/layout_footer" .}}
|