Fix layouts of admin table / adapt repo / email test (#24370)
Ref: https://github.com/go-gitea/gitea/pull/24315#pullrequestreview-1403034993 And fix the incorrect layout for "dasbboard", the "form" shouldn't follow `<h4 class="ui top attached header">`, so move it to inner. Diff with ignoring spaces: https://github.com/go-gitea/gitea/pull/24370/files?diff=unified&w=1 A known bug: the adapt/delete button doesn't work due to a historical messy logic, will fix it in next PR (#24374) ![image](https://user-images.githubusercontent.com/2114189/234754656-d160b098-b8d4-4783-962a-27d5c764863c.png) ![image](https://user-images.githubusercontent.com/2114189/234762327-3e77e2e4-a156-4498-8a8b-092e14cf9204.png) ![image](https://user-images.githubusercontent.com/2114189/234767811-74b7272c-e40c-4850-8e3c-499e3b53b827.png) ![image](https://user-images.githubusercontent.com/2114189/234761247-e6aad889-dcad-443c-948f-2d44df68725b.png)
This commit is contained in:
parent
63a401ac40
commit
83022013c8
10 changed files with 69 additions and 87 deletions
|
@ -2959,6 +2959,7 @@ config.mailer_sendmail_timeout = Sendmail Timeout
|
||||||
config.mailer_use_dummy = Dummy
|
config.mailer_use_dummy = Dummy
|
||||||
config.test_email_placeholder = Email (e.g. test@example.com)
|
config.test_email_placeholder = Email (e.g. test@example.com)
|
||||||
config.send_test_mail = Send Testing Email
|
config.send_test_mail = Send Testing Email
|
||||||
|
config.send_test_mail_submit = Send
|
||||||
config.test_mail_failed = Failed to send a testing email to "%s": %v
|
config.test_mail_failed = Failed to send a testing email to "%s": %v
|
||||||
config.test_mail_sent = A testing email has been sent to "%s".
|
config.test_mail_sent = A testing email has been sent to "%s".
|
||||||
|
|
||||||
|
|
|
@ -238,16 +238,18 @@
|
||||||
<dd>{{.Mailer.SMTPPort}}</dd>
|
<dd>{{.Mailer.SMTPPort}}</dd>
|
||||||
{{end}}
|
{{end}}
|
||||||
<dt>{{.locale.Tr "admin.config.mailer_user"}}</dt>
|
<dt>{{.locale.Tr "admin.config.mailer_user"}}</dt>
|
||||||
<dd>{{if .Mailer.User}}{{.Mailer.User}}{{else}}(empty){{end}}</dd><br>
|
<dd>{{if .Mailer.User}}{{.Mailer.User}}{{else}}(empty){{end}}</dd>
|
||||||
<form class="ui form ignore-dirty" action="{{AppSubUrl}}/admin/config/test_mail" method="post">
|
<div class="ui divider"></div>
|
||||||
{{.CsrfTokenHtml}}
|
<dt class="gt-py-2">{{.locale.Tr "admin.config.send_test_mail"}}</dt>
|
||||||
<div class="inline field ui left">
|
<dd>
|
||||||
<div class="ui input">
|
<form class="ui form ignore-dirty" action="{{AppSubUrl}}/admin/config/test_mail" method="post">
|
||||||
|
{{.CsrfTokenHtml}}
|
||||||
|
<div class="ui tiny input">
|
||||||
<input type="email" name="email" placeholder="{{.locale.Tr "admin.config.test_email_placeholder"}}" size="29" required>
|
<input type="email" name="email" placeholder="{{.locale.Tr "admin.config.test_email_placeholder"}}" size="29" required>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<button class="ui tiny green button">{{.locale.Tr "admin.config.send_test_mail_submit"}}</button>
|
||||||
<button class="ui green button" id="test-mail-btn">{{.locale.Tr "admin.config.send_test_mail"}}</button>
|
</form>
|
||||||
</form>
|
</dd>
|
||||||
{{end}}
|
{{end}}
|
||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -16,9 +16,9 @@
|
||||||
<h4 class="ui top attached header">
|
<h4 class="ui top attached header">
|
||||||
{{.locale.Tr "admin.dashboard.operations"}}
|
{{.locale.Tr "admin.dashboard.operations"}}
|
||||||
</h4>
|
</h4>
|
||||||
<form method="post" action="{{AppSubUrl}}/admin">
|
<div class="ui attached table segment">
|
||||||
{{.CsrfTokenHtml}}
|
<form method="post" action="{{AppSubUrl}}/admin">
|
||||||
<div class="ui attached table segment">
|
{{.CsrfTokenHtml}}
|
||||||
<table class="ui very basic table gt-px-4">
|
<table class="ui very basic table gt-px-4">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -71,8 +71,8 @@
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</form>
|
||||||
</form>
|
</div>
|
||||||
|
|
||||||
<h4 class="ui top attached header">
|
<h4 class="ui top attached header">
|
||||||
{{.locale.Tr "admin.dashboard.system_status"}}
|
{{.locale.Tr "admin.dashboard.system_status"}}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin user")}}
|
{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin")}}
|
||||||
<div class="admin-setting-content">
|
<div class="admin-setting-content">
|
||||||
<h4 class="ui top attached header">
|
<h4 class="ui top attached header">
|
||||||
{{.locale.Tr "admin.repos.repo_manage_panel"}} ({{.locale.Tr "admin.total" .Total}})
|
{{.locale.Tr "admin.repos.repo_manage_panel"}} ({{.locale.Tr "admin.total" .Total}})
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin user")}}
|
{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin")}}
|
||||||
<div class="admin-setting-content">
|
<div class="admin-setting-content">
|
||||||
<h4 class="ui top attached header">
|
<h4 class="ui top attached header">
|
||||||
{{.locale.Tr "admin.repos.unadopted"}}
|
{{.locale.Tr "admin.repos.unadopted"}}
|
||||||
|
@ -18,47 +18,44 @@
|
||||||
{{if .search}}
|
{{if .search}}
|
||||||
<div class="ui attached segment settings">
|
<div class="ui attached segment settings">
|
||||||
{{if .Dirs}}
|
{{if .Dirs}}
|
||||||
<div class="ui middle aligned divided list">
|
<div class="ui aligned divided list">
|
||||||
{{range $dirI, $dir := .Dirs}}
|
{{range $dirI, $dir := .Dirs}}
|
||||||
<div class="item">
|
<div class="item gt-df gt-ac">
|
||||||
<div class="content">
|
<span class="gt-f1"> {{svg "octicon-file-directory-fill"}} {{$dir}}</span>
|
||||||
<span class="icon">{{svg "octicon-file-directory-fill"}}</span>
|
<div>
|
||||||
<span class="name">{{$dir}}</span>
|
<button class="ui button green show-modal gt-p-3" data-modal="#adopt-unadopted-modal-{{$dirI}}">{{svg "octicon-plus"}} {{$.locale.Tr "repo.adopt_preexisting_label"}}</button>
|
||||||
<div class="right floated content">
|
<div class="ui g-modal-confirm modal" id="adopt-unadopted-modal-{{$dirI}}">
|
||||||
<button class="ui button submit tiny green adopt show-modal" data-modal="#adopt-unadopted-modal-{{$dirI}}"><span class="icon">{{svg "octicon-plus"}}</span><span class="label">{{$.locale.Tr "repo.adopt_preexisting_label"}}</span></button>
|
<div class="header">
|
||||||
<div class="ui g-modal-confirm modal" id="adopt-unadopted-modal-{{$dirI}}">
|
<span class="label">{{$.locale.Tr "repo.adopt_preexisting"}}</span>
|
||||||
<div class="header">
|
|
||||||
<span class="label">{{$.locale.Tr "repo.adopt_preexisting"}}</span>
|
|
||||||
</div>
|
|
||||||
<div class="content">
|
|
||||||
<p>{{$.locale.Tr "repo.adopt_preexisting_content" $dir}}</p>
|
|
||||||
</div>
|
|
||||||
<form class="ui form" method="POST" action="{{AppSubUrl}}/admin/repos/unadopted">
|
|
||||||
{{$.CsrfTokenHtml}}
|
|
||||||
<input type="hidden" name="id" value="{{$dir}}">
|
|
||||||
<input type="hidden" name="action" value="adopt">
|
|
||||||
<input type="hidden" name="q" value="{{$.Keyword}}">
|
|
||||||
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
|
||||||
{{template "base/modal_actions_confirm" (dict "locale" $.locale)}}
|
|
||||||
</form>
|
|
||||||
</div>
|
</div>
|
||||||
<button class="ui button submit tiny red delete show-modal" data-modal="#delete-unadopted-modal-{{$dirI}}"><span class="icon">{{svg "octicon-x"}}</span><span class="label">{{$.locale.Tr "repo.delete_preexisting_label"}}</span></button>
|
<div class="content">
|
||||||
<div class="ui g-modal-confirm modal" id="delete-unadopted-modal-{{$dirI}}">
|
<p>{{$.locale.Tr "repo.adopt_preexisting_content" $dir}}</p>
|
||||||
<div class="header">
|
|
||||||
<span class="label">{{$.locale.Tr "repo.delete_preexisting"}}</span>
|
|
||||||
</div>
|
|
||||||
<div class="content">
|
|
||||||
<p>{{$.locale.Tr "repo.delete_preexisting_content" $dir}}</p>
|
|
||||||
</div>
|
|
||||||
<form class="ui form" method="POST" action="{{AppSubUrl}}/admin/repos/unadopted">
|
|
||||||
{{$.CsrfTokenHtml}}
|
|
||||||
<input type="hidden" name="id" value="{{$dir}}">
|
|
||||||
<input type="hidden" name="action" value="delete">
|
|
||||||
<input type="hidden" name="q" value="{{$.Keyword}}">
|
|
||||||
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
|
||||||
{{template "base/modal_actions_confirm" (dict "locale" $.locale "ModalButtonColors" "yellow")}}
|
|
||||||
</form>
|
|
||||||
</div>
|
</div>
|
||||||
|
<form class="ui form" method="POST" action="{{AppSubUrl}}/admin/repos/unadopted">
|
||||||
|
{{$.CsrfTokenHtml}}
|
||||||
|
<input type="hidden" name="id" value="{{$dir}}">
|
||||||
|
<input type="hidden" name="action" value="adopt">
|
||||||
|
<input type="hidden" name="q" value="{{$.Keyword}}">
|
||||||
|
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
||||||
|
{{template "base/modal_actions_confirm" (dict "locale" $.locale)}}
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<button class="ui button red show-modal gt-p-3" data-modal="#delete-unadopted-modal-{{$dirI}}">{{svg "octicon-x"}} {{$.locale.Tr "repo.delete_preexisting_label"}}</button>
|
||||||
|
<div class="ui g-modal-confirm modal" id="delete-unadopted-modal-{{$dirI}}">
|
||||||
|
<div class="header">
|
||||||
|
<span class="label">{{$.locale.Tr "repo.delete_preexisting"}}</span>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<p>{{$.locale.Tr "repo.delete_preexisting_content" $dir}}</p>
|
||||||
|
</div>
|
||||||
|
<form class="ui form" method="POST" action="{{AppSubUrl}}/admin/repos/unadopted">
|
||||||
|
{{$.CsrfTokenHtml}}
|
||||||
|
<input type="hidden" name="id" value="{{$dir}}">
|
||||||
|
<input type="hidden" name="action" value="delete">
|
||||||
|
<input type="hidden" name="q" value="{{$.Keyword}}">
|
||||||
|
<input type="hidden" name="page" value="{{$.CurrentPage}}">
|
||||||
|
{{template "base/modal_actions_confirm" (dict "locale" $.locale "ModalButtonColors" "yellow")}}
|
||||||
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<h4 class="ui top attached header">
|
<h4 class="ui top attached header">
|
||||||
{{.Title}}
|
{{.Title}}
|
||||||
<div class="ui right">
|
<div class="ui right">
|
||||||
<div class="ui floating1 jump dropdown">
|
<div class="ui jump dropdown">
|
||||||
<div class="ui primary tiny button">{{.locale.Tr "repo.settings.add_webhook"}}</div>
|
<div class="ui primary tiny button">{{.locale.Tr "repo.settings.add_webhook"}}</div>
|
||||||
<div class="menu">
|
<div class="menu">
|
||||||
<a class="item" href="{{.BaseLinkNew}}/gitea/new">
|
<a class="item" href="{{.BaseLinkNew}}/gitea/new">
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
<div class="ui middle aligned divided list">
|
<div class="ui middle aligned divided list">
|
||||||
{{range $dirI, $dir := .Dirs}}
|
{{range $dirI, $dir := .Dirs}}
|
||||||
{{$repo := index $.ReposMap $dir}}
|
{{$repo := index $.ReposMap $dir}}
|
||||||
<div class="item">
|
<div class="item {{if not $repo}}gt-py-2{{end}}">{{/* if not repo, then there are "adapt" buttons, so the padding shouldn't be that default large*/}}
|
||||||
<div class="content">
|
<div class="content">
|
||||||
{{if $repo}}
|
{{if $repo}}
|
||||||
{{if $repo.IsPrivate}}
|
{{if $repo.IsPrivate}}
|
||||||
|
@ -30,11 +30,11 @@
|
||||||
<span><a href="{{$repo.BaseRepo.Link}}">{{$repo.BaseRepo.OwnerName}}/{{$repo.BaseRepo.Name}}</a></span>
|
<span><a href="{{$repo.BaseRepo.Link}}">{{$repo.BaseRepo.OwnerName}}/{{$repo.BaseRepo.Name}}</a></span>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{else}}
|
{{else}}
|
||||||
<span class="icon">{{svg "octicon-file-directory-fill"}}</span>
|
<span class="icon gt-dib gt-pt-3">{{svg "octicon-file-directory-fill"}}</span>
|
||||||
<span class="name">{{$.ContextUser.Name}}/{{$dir}}</span>
|
<span class="name gt-dib gt-pt-3">{{$.ContextUser.Name}}/{{$dir}}</span>
|
||||||
<div class="right floated content">
|
<div class="ui right">
|
||||||
{{if $.allowAdopt}}
|
{{if $.allowAdopt}}
|
||||||
<button class="ui button submit tiny green adopt show-modal" data-modal="#adopt-unadopted-modal-{{$dirI}}"><span class="icon">{{svg "octicon-plus"}}</span><span class="label">{{$.locale.Tr "repo.adopt_preexisting_label"}}</span></button>
|
<button class="ui button green show-modal gt-p-3" data-modal="#adopt-unadopted-modal-{{$dirI}}"><span class="icon">{{svg "octicon-plus"}}</span><span class="label">{{$.locale.Tr "repo.adopt_preexisting_label"}}</span></button>
|
||||||
<div class="ui g-modal-confirm modal" id="adopt-unadopted-modal-{{$dirI}}">
|
<div class="ui g-modal-confirm modal" id="adopt-unadopted-modal-{{$dirI}}">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<span class="label">{{$.locale.Tr "repo.adopt_preexisting"}}</span>
|
<span class="label">{{$.locale.Tr "repo.adopt_preexisting"}}</span>
|
||||||
|
@ -51,7 +51,7 @@
|
||||||
</div>
|
</div>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if $.allowDelete}}
|
{{if $.allowDelete}}
|
||||||
<button class="ui button submit tiny red delete show-modal" data-modal="#delete-unadopted-modal-{{$dirI}}"><span class="icon">{{svg "octicon-x"}}</span><span class="label">{{$.locale.Tr "repo.delete_preexisting_label"}}</span></button>
|
<button class="ui button red show-modal gt-p-3" data-modal="#delete-unadopted-modal-{{$dirI}}"><span class="icon">{{svg "octicon-x"}}</span><span class="label">{{$.locale.Tr "repo.delete_preexisting_label"}}</span></button>
|
||||||
<div class="ui g-modal-confirm modal" id="delete-unadopted-modal-{{$dirI}}">
|
<div class="ui g-modal-confirm modal" id="delete-unadopted-modal-{{$dirI}}">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<span class="label">{{$.locale.Tr "repo.delete_preexisting"}}</span>
|
<span class="label">{{$.locale.Tr "repo.delete_preexisting"}}</span>
|
||||||
|
|
|
@ -4,18 +4,7 @@
|
||||||
margin: 12px -1rem -1rem;
|
margin: 12px -1rem -1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.admin .settings .button.adopt,
|
.admin.user table.table .email {
|
||||||
.admin .settings .button.delete {
|
|
||||||
margin-top: -15px;
|
|
||||||
margin-bottom: -15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.admin .settings .button.adopt .label,
|
|
||||||
.admin .settings .button.delete .label {
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
|
|
||||||
.admin.user .email {
|
|
||||||
max-width: 200px;
|
max-width: 200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -51,12 +40,12 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.admin.config #test-mail-btn {
|
|
||||||
margin-left: 5px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.admin code,
|
.admin code,
|
||||||
.admin pre {
|
.admin pre {
|
||||||
white-space: pre-wrap;
|
white-space: pre-wrap;
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.admin .ui.table.segment {
|
||||||
|
overflow-x: auto; /* if the screen width is small, many wide tables (eg: user list) need scroll bars */
|
||||||
|
}
|
||||||
|
|
|
@ -2,6 +2,10 @@
|
||||||
padding-bottom: 30px;
|
padding-bottom: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.runner-container .ui.table.segment {
|
||||||
|
overflow-x: auto;
|
||||||
|
}
|
||||||
|
|
||||||
.runner-container .runner-ops > a {
|
.runner-container .runner-ops > a {
|
||||||
margin-left: 0.5em;
|
margin-left: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
|
@ -90,17 +90,6 @@
|
||||||
padding: 8px 15px;
|
padding: 8px 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.user .button.adopt,
|
|
||||||
.user .button.delete {
|
|
||||||
margin-top: -15px;
|
|
||||||
margin-bottom: -15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.user .button.adopt .label,
|
|
||||||
.user .button.delete .label {
|
|
||||||
vertical-align: middle;
|
|
||||||
}
|
|
||||||
|
|
||||||
.user.link-account:not(.icon) {
|
.user.link-account:not(.icon) {
|
||||||
padding-top: 15px;
|
padding-top: 15px;
|
||||||
padding-bottom: 5px;
|
padding-bottom: 5px;
|
||||||
|
|
Loading…
Reference in a new issue