mirror of
https://github.com/go-gitea/gitea
synced 2024-11-10 20:24:24 +00:00
91745ae46f
closes #22015 After adding a passkey, you can now simply login with it directly by clicking `Sign in with a passkey`. ![Screenshot from 2024-06-26 12-18-17](https://github.com/go-gitea/gitea/assets/6918444/079013c0-ed70-481c-8497-4427344bcdfc) Note for testing. You need to run gitea using `https` to get the full passkeys experience. --------- Co-authored-by: silverwind <me@silverwind.io>
77 lines
2.6 KiB
Handlebars
77 lines
2.6 KiB
Handlebars
{{if or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeSignIn)}}
|
|
{{template "base/alert" .}}
|
|
{{end}}
|
|
<h4 class="ui top attached header center">
|
|
{{if .LinkAccountMode}}
|
|
{{ctx.Locale.Tr "auth.oauth_signin_title"}}
|
|
{{else}}
|
|
{{ctx.Locale.Tr "auth.login_userpass"}}
|
|
{{end}}
|
|
</h4>
|
|
<div class="ui attached segment">
|
|
{{template "user/auth/webauthn_error" .}}
|
|
|
|
<form class="ui form tw-max-w-2xl tw-m-auto" action="{{.SignInLink}}" method="post">
|
|
{{.CsrfTokenHtml}}
|
|
<div class="required field {{if and (.Err_UserName) (or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeSignIn))}}error{{end}}">
|
|
<label for="user_name">{{ctx.Locale.Tr "home.uname_holder"}}</label>
|
|
<input id="user_name" type="text" name="user_name" value="{{.user_name}}" autofocus required>
|
|
</div>
|
|
{{if or (not .DisablePassword) .LinkAccountMode}}
|
|
<div class="required field {{if and (.Err_Password) (or (not .LinkAccountMode) (and .LinkAccountMode .LinkAccountModeSignIn))}}error{{end}}">
|
|
<label for="password">{{ctx.Locale.Tr "password"}}</label>
|
|
<input id="password" name="password" type="password" value="{{.password}}" autocomplete="current-password" required>
|
|
</div>
|
|
{{end}}
|
|
{{if not .LinkAccountMode}}
|
|
<div class="inline field">
|
|
<div class="ui checkbox">
|
|
<label>{{ctx.Locale.Tr "auth.remember_me"}}</label>
|
|
<input name="remember" type="checkbox">
|
|
</div>
|
|
</div>
|
|
{{end}}
|
|
|
|
{{template "user/auth/captcha" .}}
|
|
|
|
<div class="field">
|
|
<button class="ui primary button">
|
|
{{if .LinkAccountMode}}
|
|
{{ctx.Locale.Tr "auth.oauth_signin_submit"}}
|
|
{{else}}
|
|
{{ctx.Locale.Tr "sign_in"}}
|
|
{{end}}
|
|
</button>
|
|
<a href="{{AppSubUrl}}/user/forgot_password">{{ctx.Locale.Tr "auth.forgot_password"}}</a>
|
|
</div>
|
|
|
|
{{if .ShowRegistrationButton}}
|
|
<div class="field">
|
|
<a href="{{AppSubUrl}}/user/sign_up">{{ctx.Locale.Tr "auth.sign_up_now"}}</a>
|
|
</div>
|
|
{{end}}
|
|
|
|
<div class="field">
|
|
<a class="signin-passkey">{{ctx.Locale.Tr "auth.signin_passkey"}}</a>
|
|
</div>
|
|
|
|
{{if .OAuth2Providers}}
|
|
<div class="divider divider-text">
|
|
{{ctx.Locale.Tr "sign_in_or"}}
|
|
</div>
|
|
<div id="oauth2-login-navigator" class="tw-py-1">
|
|
<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 tw-gap-2">
|
|
{{range $provider := .OAuth2Providers}}
|
|
<a class="{{$provider.Name}} ui button tw-flex tw-items-center tw-justify-center tw-py-2 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>
|