aboutsummaryrefslogtreecommitdiffstats
path: root/templates/user/auth/signup_inner.tmpl
blob: b96e9bfb02eadf96aa0e45a830e1bae564710d4b (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
<div class="ui container column fluid{{if .LinkAccountMode}} icon{{end}}">
	<h4 class="ui top attached header center">
		{{if .LinkAccountMode}}
			{{ctx.Locale.Tr "auth.oauth_signup_title"}}
		{{else}}
			{{ctx.Locale.Tr "sign_up"}}
		{{end}}
	</h4>
	<div class="ui attached segment">
		<form class="ui form tw-max-w-2xl tw-m-auto" action="{{.SignUpLink}}" method="post">
			{{.CsrfTokenHtml}}
			{{if or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeRegister)}}
			{{template "base/alert" .}}
			{{end}}
			{{if .DisableRegistration}}
				<p>{{ctx.Locale.Tr "auth.disable_register_prompt"}}</p>
			{{else}}
				<div class="required field {{if and (.Err_UserName) (or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeRegister))}}error{{end}}">
					<label for="user_name">{{ctx.Locale.Tr "username"}}</label>
					<input id="user_name" type="text" name="user_name" value="{{.user_name}}" autofocus required>
				</div>
				<div class="required field {{if .Err_Email}}error{{end}}">
					<label for="email">{{ctx.Locale.Tr "email"}}</label>
					<input id="email" name="email" type="email" value="{{.email}}" required>
				</div>

				{{if not .DisablePassword}}
					<div class="required field {{if and (.Err_Password) (or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeRegister))}}error{{end}}">
						<label for="password">{{ctx.Locale.Tr "password"}}</label>
						<input id="password" name="password" type="password" value="{{.password}}" autocomplete="new-password" required>
					</div>
					<div class="required field {{if and (.Err_Password) (or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeRegister))}}error{{end}}">
						<label for="retype">{{ctx.Locale.Tr "re_type"}}</label>
						<input id="retype" name="retype" type="password" value="{{.retype}}" autocomplete="new-password" required>
					</div>
				{{end}}

				{{template "user/auth/captcha" .}}

				<div class="inline field">
					<button class="ui primary button">
						{{if .LinkAccountMode}}
							{{ctx.Locale.Tr "auth.oauth_signup_submit"}}
						{{else}}
							{{ctx.Locale.Tr "auth.create_new_account"}}
						{{end}}
					</button>
				</div>

				{{if not .LinkAccountMode}}
				<div class="inline field">
					<a href="{{AppSubUrl}}/user/login">{{ctx.Locale.Tr "auth.register_helper_msg"}}</a>
				</div>
				{{end}}
			{{end}}

			{{if .OAuth2Providers}}
			<div class="divider divider-text">
				{{ctx.Locale.Tr "sign_in_or"}}
			</div>
			<div id="oauth2-login-navigator" class="gt-py-2">
				<div class="tw-flex tw-flex-col tw-justify-center">
					<div id="oauth2-login-navigator-inner" class="tw-flex tw-flex-col tw-flex-wrap tw-items-center gt-gap-3">
						{{range $provider := .OAuth2Providers}}
							<a class="{{$provider.Name}} ui button tw-flex tw-items-center tw-justify-center gt-py-3 tw-w-full oauth-login-link" href="{{AppSubUrl}}/user/oauth2/{{$provider.DisplayName}}">
								{{$provider.IconHTML 28}}
								{{ctx.Locale.Tr "sign_in_with_provider" $provider.DisplayName}}
							</a>
						{{end}}
					</div>
				</div>
			</div>
			{{end}}
		</form>
	</div>
</div>