Skip to content

Commit f46e67b

Browse files
qwerty287lunnywxiaoguang
authored
Move key forms before list and add cancel button (#17432)
* Move GPG form before list and add cancel button * Move SSH form before list and add cancel button Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
1 parent 54243ee commit f46e67b

File tree

4 files changed

+80
-89
lines changed

4 files changed

+80
-89
lines changed

templates/repo/settings/deploy_keys.tmpl

+15-23
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,18 @@
44
{{template "repo/settings/navbar" .}}
55
<div class="ui container">
66
{{template "base/alert" .}}
7-
<div {{if not .HasError}}class="hide"{{end}} id="add-deploy-key-panel">
8-
<h4 class="ui top attached header">
9-
{{.i18n.Tr "repo.settings.add_deploy_key"}}
10-
<div class="ui right">
11-
<button class="ui red tiny hide-panel button" data-panel="#add-deploy-key-panel">
12-
{{.i18n.Tr "cancel"}}
13-
</button>
14-
</div>
15-
</h4>
16-
<div class="ui attached segment">
7+
<h4 class="ui top attached header">
8+
{{.i18n.Tr "repo.settings.deploy_keys"}}
9+
<div class="ui right">
10+
{{if not .DisableSSH}}
11+
<div class="ui blue tiny show-panel button" data-panel="#add-deploy-key-panel">{{.i18n.Tr "repo.settings.add_deploy_key"}}</div>
12+
{{else}}
13+
<div class="ui blue tiny button disabled">{{.i18n.Tr "settings.ssh_disabled"}}</div>
14+
{{end}}
15+
</div>
16+
</h4>
17+
<div class="ui attached segment">
18+
<div class="{{if not .HasError}}hide{{end}} mb-4" id="add-deploy-key-panel">
1719
<form class="ui form" action="{{.Link}}" method="post">
1820
{{.CsrfTokenHtml}}
1921
<div class="field">
@@ -39,21 +41,11 @@
3941
<button class="ui green button">
4042
{{.i18n.Tr "repo.settings.add_deploy_key"}}
4143
</button>
44+
<button class="ui hide-panel button" data-panel="#add-deploy-key-panel">
45+
{{.i18n.Tr "cancel"}}
46+
</button>
4247
</form>
4348
</div>
44-
<br>
45-
</div>
46-
<h4 class="ui top attached header">
47-
{{.i18n.Tr "repo.settings.deploy_keys"}}
48-
<div class="ui right">
49-
{{if not .DisableSSH}}
50-
<div class="ui blue tiny show-panel button" data-panel="#add-deploy-key-panel">{{.i18n.Tr "repo.settings.add_deploy_key"}}</div>
51-
{{else}}
52-
<div class="ui blue tiny button disabled">{{.i18n.Tr "settings.ssh_disabled"}}</div>
53-
{{end}}
54-
</div>
55-
</h4>
56-
<div class="ui attached segment">
5749
{{if .Deploykeys}}
5850
<div class="ui key list">
5951
{{range .Deploykeys}}

templates/user/settings/keys_gpg.tmpl

+35-37
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,41 @@
55
</div>
66
</h4>
77
<div class="ui attached segment">
8-
<div class="ui key list">
8+
<div class="{{if not .HasGPGError}}hide{{end}} mb-4" id="add-gpg-key-panel">
9+
<form class="ui form{{if .HasGPGError}} error{{end}}" action="{{.Link}}" method="post">
10+
{{.CsrfTokenHtml}}
11+
<input type="hidden" name="title" value="none">
12+
<div class="field {{if .Err_Content}}error{{end}}">
13+
<label for="content">{{.i18n.Tr "settings.key_content"}}</label>
14+
<textarea id="gpg-key-content" name="content" placeholder="{{.i18n.Tr "settings.key_content_gpg_placeholder"}}" required>{{.content}}</textarea>
15+
</div>
16+
{{if .Err_Signature}}
17+
<div class="ui error message">
18+
<p>{{.i18n.Tr "settings.gpg_token_required"}}</p>
19+
</div>
20+
<div class="field">
21+
<label for="token">{{.i18n.Tr "setting.gpg_token"}}
22+
<input readonly="" value="{{.TokenToSign}}">
23+
<div class="help">
24+
<p>{{.i18n.Tr "settings.gpg_token_help"}}</p>
25+
<p><code>{{$.i18n.Tr "settings.gpg_token_code" .TokenToSign .KeyID}}</code></p>
26+
</div>
27+
</div>
28+
<div class="field">
29+
<label for="signature">{{.i18n.Tr "settings.gpg_token_signature"}}</label>
30+
<textarea id="gpg-key-signature" name="signature" placeholder="{{.i18n.Tr "settings.key_signature_gpg_placeholder"}}" required>{{.signature}}</textarea>
31+
</div>
32+
{{end}}
33+
<input name="type" type="hidden" value="gpg">
34+
<button class="ui green button">
35+
{{.i18n.Tr "settings.add_key"}}
36+
</button>
37+
<button class="ui hide-panel button" data-panel="#add-gpg-key-panel">
38+
{{.i18n.Tr "cancel"}}
39+
</button>
40+
</form>
41+
</div>
42+
<div class="ui key list mt-0">
943
<div class="item">
1044
{{.i18n.Tr "settings.gpg_desc"}}
1145
</div>
@@ -76,42 +110,6 @@
76110
</div>
77111
<br>
78112
<p>{{.i18n.Tr "settings.gpg_helper" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/about-commit-signature-verification#gpg-commit-signature-verification" | Str2html}}</p>
79-
<div {{if not .HasGPGError}}class="hide"{{end}} id="add-gpg-key-panel">
80-
<h4 class="ui top attached header">
81-
{{.i18n.Tr "settings.add_new_gpg_key"}}
82-
</h4>
83-
<div class="ui attached segment">
84-
<form class="ui form{{if .HasGPGError}} error{{end}}" action="{{.Link}}" method="post">
85-
{{.CsrfTokenHtml}}
86-
<input type="hidden" name="title" value="none">
87-
<div class="field {{if .Err_Content}}error{{end}}">
88-
<label for="content">{{.i18n.Tr "settings.key_content"}}</label>
89-
<textarea id="gpg-key-content" name="content" placeholder="{{.i18n.Tr "settings.key_content_gpg_placeholder"}}" required>{{.content}}</textarea>
90-
</div>
91-
{{if .Err_Signature}}
92-
<div class="ui error message">
93-
<p>{{.i18n.Tr "settings.gpg_token_required"}}</p>
94-
</div>
95-
<div class="field">
96-
<label for="token">{{.i18n.Tr "setting.gpg_token"}}
97-
<input readonly="" value="{{.TokenToSign}}">
98-
<div class="help">
99-
<p>{{.i18n.Tr "settings.gpg_token_help"}}</p>
100-
<p><code>{{$.i18n.Tr "settings.gpg_token_code" .TokenToSign .KeyID}}</code></p>
101-
</div>
102-
</div>
103-
<div class="field">
104-
<label for="signature">{{.i18n.Tr "settings.gpg_token_signature"}}</label>
105-
<textarea id="gpg-key-signature" name="signature" placeholder="{{.i18n.Tr "settings.key_signature_gpg_placeholder"}}" required>{{.signature}}</textarea>
106-
</div>
107-
{{end}}
108-
<input name="type" type="hidden" value="gpg">
109-
<button class="ui green button">
110-
{{.i18n.Tr "settings.add_key"}}
111-
</button>
112-
</form>
113-
</div>
114-
</div>
115113

116114
<div class="ui small basic delete modal" id="delete-gpg">
117115
<div class="ui icon header">

templates/user/settings/keys_ssh.tmpl

+28-28
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,37 @@
11
<h4 class="ui top attached header">
22
{{.i18n.Tr "settings.manage_ssh_keys"}}
33
<div class="ui right">
4-
{{if not .DisableSSH }}
5-
<div class="ui blue tiny show-panel button" data-panel="#add-ssh-key-panel">{{.i18n.Tr "settings.add_key"}}</div>
6-
{{else}}
7-
<div class="ui blue tiny button disabled">{{.i18n.Tr "settings.ssh_disabled"}}</div>
8-
{{end}}
4+
{{if not .DisableSSH }}
5+
<div id="add-ssh-button" class="ui blue tiny show-panel button" data-panel="#add-ssh-key-panel">
6+
{{.i18n.Tr "settings.add_key"}}
7+
</div>
8+
{{else}}
9+
<div class="ui blue tiny button disabled">{{.i18n.Tr "settings.ssh_disabled"}}</div>
10+
{{end}}
911
</div>
1012
</h4>
1113
<div class="ui attached segment">
12-
<div class="ui key list">
14+
<div class="{{if not .HasSSHError}}hide{{end}} mb-4" id="add-ssh-key-panel">
15+
<form class="ui form" action="{{.Link}}" method="post">
16+
{{.CsrfTokenHtml}}
17+
<div class="field {{if .Err_Title}}error{{end}}">
18+
<label for="title">{{.i18n.Tr "settings.key_name"}}</label>
19+
<input id="ssh-key-title" name="title" value="{{.title}}" autofocus required>
20+
</div>
21+
<div class="field {{if .Err_Content}}error{{end}}">
22+
<label for="content">{{.i18n.Tr "settings.key_content"}}</label>
23+
<textarea id="ssh-key-content" name="content" placeholder="{{.i18n.Tr "settings.key_content_ssh_placeholder"}}" required>{{.content}}</textarea>
24+
</div>
25+
<input name="type" type="hidden" value="ssh">
26+
<button class="ui green button">
27+
{{.i18n.Tr "settings.add_key"}}
28+
</button>
29+
<button id="cancel-ssh-button" class="ui hide-panel button" data-panel="#add-ssh-key-panel">
30+
{{.i18n.Tr "cancel"}}
31+
</button>
32+
</form>
33+
</div>
34+
<div class="ui key list mt-0">
1335
<div class="item">
1436
{{.i18n.Tr "settings.ssh_desc"}}
1537
</div>
@@ -38,28 +60,6 @@
3860
</div>
3961
<br>
4062
<p>{{.i18n.Tr "settings.ssh_helper" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/connecting-to-github-with-ssh" "https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/troubleshooting-ssh" | Str2html}}</p>
41-
<div {{if not .HasSSHError}}class="hide"{{end}} id="add-ssh-key-panel">
42-
<h4 class="ui top attached header">
43-
{{.i18n.Tr "settings.add_new_key"}}
44-
</h4>
45-
<div class="ui attached segment">
46-
<form class="ui form" action="{{.Link}}" method="post">
47-
{{.CsrfTokenHtml}}
48-
<div class="field {{if .Err_Title}}error{{end}}">
49-
<label for="title">{{.i18n.Tr "settings.key_name"}}</label>
50-
<input id="ssh-key-title" name="title" value="{{.title}}" autofocus required>
51-
</div>
52-
<div class="field {{if .Err_Content}}error{{end}}">
53-
<label for="content">{{.i18n.Tr "settings.key_content"}}</label>
54-
<textarea id="ssh-key-content" name="content" placeholder="{{.i18n.Tr "settings.key_content_ssh_placeholder"}}" required>{{.content}}</textarea>
55-
</div>
56-
<input name="type" type="hidden" value="ssh">
57-
<button class="ui green button">
58-
{{.i18n.Tr "settings.add_key"}}
59-
</button>
60-
</form>
61-
</div>
62-
</div>
6363

6464
<div class="ui small basic delete modal" id="delete-ssh">
6565
<div class="ui icon header">

web_src/js/features/common-global.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -288,8 +288,9 @@ export function initGlobalButtons() {
288288
$($(this).data('panel')).show();
289289
});
290290

291-
$('.hide-panel.button').on('click', function () {
291+
$('.hide-panel.button').on('click', function (event) {
292292
$($(this).data('panel')).hide();
293+
event.preventDefault();
293294
});
294295

295296
$('.show-modal.button').on('click', function () {

0 commit comments

Comments
 (0)