summaryrefslogtreecommitdiffstats
path: root/templates/admin/auth/new.tmpl
blob: 9882cde03bcd4b9d73b10def08faced2735c0455 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
{{template "base/head" .}}
<div class="page-content admin new authentication">
	{{template "admin/navbar" .}}
	<div class="ui container">
		{{template "base/alert" .}}
		<h4 class="ui top attached header">
			{{.i18n.Tr "admin.auths.new"}}
		</h4>
		<div class="ui attached segment">
			<form class="ui form" action="{{.Link}}" method="post">
				{{template "base/disable_form_autofill"}}
				{{.CsrfTokenHtml}}
				<!-- Types and name -->
				<div class="inline required field {{if .Err_Type}}error{{end}}">
					<label>{{.i18n.Tr "admin.auths.auth_type"}}</label>
					<div class="ui selection type dropdown">
						<input type="hidden" id="auth_type" name="type" value="{{.type}}">
						<div class="text">{{.CurrentTypeName}}</div>
						{{svg "octicon-triangle-down" 14 "dropdown icon"}}
						<div class="menu">
							{{range .AuthSources}}
								<div class="item" data-value="{{.Type.Int}}">{{.Name}}</div>
							{{end}}
						</div>
					</div>
				</div>
				<div class="required inline field {{if .Err_Name}}error{{end}}">
					<label for="name">{{.i18n.Tr "admin.auths.auth_name"}}</label>
					<input id="name" name="name" value="{{.name}}" autofocus required>
				</div>

				<!-- LDAP and DLDAP -->
				{{ template "admin/auth/source/ldap" . }}

				<!-- SMTP -->
				{{ template "admin/auth/source/smtp" . }}

				<!-- PAM -->
				<div class="pam required field {{if not (eq .type 4)}}hide{{end}}">
					<label for="pam_service_name">{{.i18n.Tr "admin.auths.pam_service_name"}}</label>
					<input id="pam_service_name" name="pam_service_name" value="{{.pam_service_name}}" />
					<label for="pam_email_domain">{{.i18n.Tr "admin.auths.pam_email_domain"}}</label>
					<input id="pam_email_domain" name="pam_email_domain" value="{{.pam_email_domain}}">
				</div>
				<div class="pam optional field {{if not (eq .type 4)}}hide{{end}}">
					<div class="ui checkbox">
						<label for="skip_local_two_fa"><strong>{{.i18n.Tr "admin.auths.skip_local_two_fa"}}</strong></label>
						<input id="skip_local_two_fa" name="skip_local_two_fa" type="checkbox" {{if .skip_local_two_fa}}checked{{end}}>
						<p class="help">{{.i18n.Tr "admin.auths.skip_local_two_fa_helper"}}</p>
					</div>
				</div>

				<!-- OAuth2 -->
				{{ template "admin/auth/source/oauth" . }}

				<!-- SSPI -->
				{{ template "admin/auth/source/sspi" . }}

				<div class="ldap field">
					<div class="ui checkbox">
						<label><strong>{{.i18n.Tr "admin.auths.attributes_in_bind"}}</strong></label>
						<input name="attributes_in_bind" type="checkbox" {{if .attributes_in_bind}}checked{{end}}>
					</div>
				</div>
				<div class="ldap inline field {{if not (eq .type 2)}}hide{{end}}">
					<div class="ui checkbox">
						<label><strong>{{.i18n.Tr "admin.auths.syncenabled"}}</strong></label>
						<input name="is_sync_enabled" type="checkbox" {{if .is_sync_enabled}}checked{{end}}>
					</div>
				</div>
				<div class="inline field">
					<div class="ui checkbox">
						<label><strong>{{.i18n.Tr "admin.auths.activated"}}</strong></label>
						<input name="is_active" type="checkbox" {{if .is_active}}checked{{end}}>
					</div>
				</div>

				<div class="field">
					<button class="ui green button">{{.i18n.Tr "admin.auths.new"}}</button>
				</div>
			</form>
		</div>

		<h4 class="ui top attached header">
			{{.i18n.Tr "admin.auths.tips"}}
		</h4>
		<div class="ui attached segment">
			<h5>GMail Settings:</h5>
			<p>Host: smtp.gmail.com, Port: 587, Enable TLS Encryption: true</p>

			<h5>{{.i18n.Tr "admin.auths.tips.oauth2.general"}}:</h5>
			<p>{{.i18n.Tr "admin.auths.tips.oauth2.general.tip"}}</p>

			<h5 class="ui top attached header">{{.i18n.Tr "admin.auths.tip.oauth2_provider"}}</h5>
			<div class="ui attached segment">
				<li>Bitbucket</li>
				<span>{{.i18n.Tr "admin.auths.tip.bitbucket"}}</span>
				<li>Dropbox</li>
				<span>{{.i18n.Tr "admin.auths.tip.dropbox"}}</span>
				<li>Facebook</li>
				<span>{{.i18n.Tr "admin.auths.tip.facebook"}}</span>
				<li>GitHub</li>
				<span>{{.i18n.Tr "admin.auths.tip.github"}}</span>
				<li>GitLab</li>
				<span>{{.i18n.Tr "admin.auths.tip.gitlab"}}</span>
				<li>Google</li>
				<span>{{.i18n.Tr "admin.auths.tip.google_plus"}}</span>
				<li>OpenID Connect</li>
				<span>{{.i18n.Tr "admin.auths.tip.openid_connect"}}</span>
				<li>Twitter</li>
				<span>{{.i18n.Tr "admin.auths.tip.twitter"}}</span>
				<li>Discord</li>
				<span>{{.i18n.Tr "admin.auths.tip.discord"}}</span>
				<li>Gitea</li>
				<span>{{.i18n.Tr "admin.auths.tip.gitea"}}</span>
				<li>Nextcloud</li>
				<span>{{.i18n.Tr "admin.auths.tip.nextcloud"}}</span>
				<li>Yandex</li>
				<span>{{.i18n.Tr "admin.auths.tip.yandex"}}</span>
				<li>Mastodon</li>
				<span>{{.i18n.Tr "admin.auths.tip.mastodon"}}</span>
			</div>
		</div>
	</div>
</div>
{{template "base/footer" .}}