2015-09-18 02:57:24 +08:00
|
|
|
{{template "base/head" .}}
|
2023-02-02 06:56:10 +08:00
|
|
|
<div role="main" aria-label="{{.Title}}" class="page-content user reset password">
|
2015-12-08 06:30:52 +08:00
|
|
|
<div class="ui middle very relaxed page grid">
|
|
|
|
<div class="column">
|
2018-03-23 22:10:42 +08:00
|
|
|
<form class="ui form ignore-dirty" action="{{.Link}}" method="post">
|
2015-12-08 06:30:52 +08:00
|
|
|
{{.CsrfTokenHtml}}
|
|
|
|
<input name="code" type="hidden" value="{{.Code}}">
|
|
|
|
<h2 class="ui top attached header">
|
2022-06-28 04:58:46 +08:00
|
|
|
{{.locale.Tr "auth.reset_password"}}
|
2015-12-08 06:30:52 +08:00
|
|
|
</h2>
|
|
|
|
<div class="ui attached segment">
|
|
|
|
{{template "base/alert" .}}
|
2022-08-31 23:58:54 +08:00
|
|
|
{{if .user_email}}
|
2019-04-18 15:23:59 +08:00
|
|
|
<div class="inline field">
|
2022-06-28 04:58:46 +08:00
|
|
|
<label for="user_name">{{.locale.Tr "email"}}</label>
|
2022-08-31 23:58:54 +08:00
|
|
|
<input id="user_name" type="text" value="{{.user_email}}" disabled>
|
2019-04-18 15:23:59 +08:00
|
|
|
</div>
|
|
|
|
{{end}}
|
2015-12-08 06:30:52 +08:00
|
|
|
{{if .IsResetForm}}
|
|
|
|
<div class="required inline field {{if .Err_Password}}error{{end}}">
|
2022-06-28 04:58:46 +08:00
|
|
|
<label for="password">{{.locale.Tr "settings.new_password"}}</label>
|
2020-10-09 15:32:30 +08:00
|
|
|
<input id="password" name="password" type="password" value="{{.password}}" autocomplete="new-password" autofocus required>
|
2015-12-08 06:30:52 +08:00
|
|
|
</div>
|
2019-04-18 15:23:59 +08:00
|
|
|
{{if not .user_signed_in}}
|
|
|
|
<div class="inline field">
|
|
|
|
<label></label>
|
|
|
|
<div class="ui checkbox">
|
2022-06-28 04:58:46 +08:00
|
|
|
<label>{{.locale.Tr "auth.remember_me"}}</label>
|
2019-04-18 15:23:59 +08:00
|
|
|
<input name="remember" type="checkbox">
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{{end}}
|
2020-01-20 04:17:12 +08:00
|
|
|
{{if .has_two_factor}}
|
|
|
|
<h4 class="ui dividing header">
|
2022-06-28 04:58:46 +08:00
|
|
|
{{.locale.Tr "twofa"}}
|
2020-01-20 04:17:12 +08:00
|
|
|
</h4>
|
2022-08-31 23:58:54 +08:00
|
|
|
<div class="ui warning visible message">{{.locale.Tr "settings.twofa_is_enrolled" | Str2html}}</div>
|
2020-01-20 04:17:12 +08:00
|
|
|
{{if .scratch_code}}
|
|
|
|
<div class="required inline field {{if .Err_Token}}error{{end}}">
|
2022-06-28 04:58:46 +08:00
|
|
|
<label for="token">{{.locale.Tr "auth.scratch_code"}}</label>
|
2020-01-20 04:17:12 +08:00
|
|
|
<input id="token" name="token" type="text" autocomplete="off" autofocus required>
|
|
|
|
</div>
|
|
|
|
<input type="hidden" name="scratch_code" value="true">
|
|
|
|
{{else}}
|
|
|
|
<div class="required inline field {{if .Err_Passcode}}error{{end}}">
|
2022-06-28 04:58:46 +08:00
|
|
|
<label for="passcode">{{.locale.Tr "passcode"}}</label>
|
2020-01-20 04:17:12 +08:00
|
|
|
<input id="passcode" name="passcode" type="number" autocomplete="off" autofocus required>
|
|
|
|
</div>
|
|
|
|
{{end}}
|
|
|
|
{{end}}
|
2023-06-29 20:24:22 +08:00
|
|
|
<div class="divider"></div>
|
2015-12-08 06:30:52 +08:00
|
|
|
<div class="inline field">
|
|
|
|
<label></label>
|
2022-06-28 04:58:46 +08:00
|
|
|
<button class="ui primary button">{{.locale.Tr "auth.reset_password_helper"}}</button>
|
2020-01-20 04:17:12 +08:00
|
|
|
{{if and .has_two_factor (not .scratch_code)}}
|
2022-06-28 04:58:46 +08:00
|
|
|
<a href="{{.Link}}?code={{.Code}}&scratch_code=true">{{.locale.Tr "auth.use_scratch_code" | Str2html}}</a>
|
2020-01-20 04:17:12 +08:00
|
|
|
{{end}}
|
2015-12-08 06:30:52 +08:00
|
|
|
</div>
|
|
|
|
{{else}}
|
2022-06-28 04:58:46 +08:00
|
|
|
<p class="center">{{.locale.Tr "auth.invalid_code"}}</p>
|
2015-12-08 06:30:52 +08:00
|
|
|
{{end}}
|
|
|
|
</div>
|
|
|
|
</form>
|
|
|
|
</div>
|
|
|
|
</div>
|
2014-04-06 00:32:34 +08:00
|
|
|
</div>
|
2015-09-18 02:57:24 +08:00
|
|
|
{{template "base/footer" .}}
|