mirror of https://github.com/go-gitea/gitea
Fix webauthn regression and improve code (#25113)
Follow: * #22697 There are some bugs in #22697: * https://github.com/go-gitea/gitea/pull/22697#issuecomment-1577957966 * the webauthn failure message is never shown and causes console error * The `document.getElementById('register-button')` and `document.getElementById('login-button')` is wrong * there is no such element in code * it causes JS error when a browser doesn't provide webauthn * the end user can't see the real error message These bugs are fixed in this PR. Other changes: * Use simple HTML/CSS layouts, no need to use too many `gt-` patches * Make the webauthn page have correct "page-content" layout * The "data-webauthn-error-msg" elements are only used to provide locale texts, so move them into a single "gt-hidden", then no need to repeat a lot of "gt-hidden" in code * The `{{.CsrfTokenHtml}}` is a no-op because there is no form * Many `hideElem('#webauthn-error')` in code is no-op because the `webauthn-error` already has "gt-hidden" by default * Make the tests for "URLEncodedBase64" really test with concrete cases. Screenshots: * Error message when webauthn fails (before, there is no error message): <details> ![image](https://github.com/go-gitea/gitea/assets/2114189/93cf9559-d93b-4f06-9d98-0f7032d9c65b) </details> * Error message when webauthn is unavailable <details> ![image](https://github.com/go-gitea/gitea/assets/2114189/ffc0fcd9-b93b-4418-979c-c89bb627aaf2) </details>pull/25110/head^2
parent
58536093b3
commit
027014d7de
@ -1,13 +1,13 @@ |
||||
<div id="webauthn-error" class="ui small gt-hidden"> |
||||
<div class="content ui negative message gt-df gt-fc gt-gap-3"> |
||||
<div class="header">{{.locale.Tr "webauthn_error"}}</div> |
||||
<div id="webauthn-error-msg"></div> |
||||
<div class="gt-hidden" data-webauthn-error-msg="browser">{{.locale.Tr "webauthn_unsupported_browser"}}</div> |
||||
<div class="gt-hidden" data-webauthn-error-msg="unknown">{{.locale.Tr "webauthn_error_unknown"}}</div> |
||||
<div class="gt-hidden" data-webauthn-error-msg="insecure">{{.locale.Tr "webauthn_error_insecure"}}</div> |
||||
<div class="gt-hidden" data-webauthn-error-msg="unable-to-process">{{.locale.Tr "webauthn_error_unable_to_process"}}</div> |
||||
<div class="gt-hidden" data-webauthn-error-msg="duplicated">{{.locale.Tr "webauthn_error_duplicated"}}</div> |
||||
<div class="gt-hidden" data-webauthn-error-msg="empty">{{.locale.Tr "webauthn_error_empty"}}</div> |
||||
<div class="gt-hidden" data-webauthn-error-msg="timeout">{{.locale.Tr "webauthn_error_timeout"}}</div> |
||||
<div id="webauthn-error" class="ui negative message gt-hidden"> |
||||
<div class="header">{{.locale.Tr "webauthn_error"}}</div> |
||||
<div id="webauthn-error-msg" class="gt-pt-3"></div> |
||||
<div class="gt-hidden"> |
||||
<div data-webauthn-error-msg="browser">{{.locale.Tr "webauthn_unsupported_browser"}}</div> |
||||
<div data-webauthn-error-msg="unknown">{{.locale.Tr "webauthn_error_unknown"}}</div> |
||||
<div data-webauthn-error-msg="insecure">{{.locale.Tr "webauthn_error_insecure"}}</div> |
||||
<div data-webauthn-error-msg="unable-to-process">{{.locale.Tr "webauthn_error_unable_to_process"}}</div> |
||||
<div data-webauthn-error-msg="duplicated">{{.locale.Tr "webauthn_error_duplicated"}}</div> |
||||
<div data-webauthn-error-msg="empty">{{.locale.Tr "webauthn_error_empty"}}</div> |
||||
<div data-webauthn-error-msg="timeout">{{.locale.Tr "webauthn_error_timeout"}}</div> |
||||
</div> |
||||
</div> |
||||
|
Loading…
Reference in new issue