You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gitea/web_src/js
wxiaoguang 027014d7de
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>
2 years ago
..
components Use correct selector for hiding RSS icon link in the branch selector dropdown (#25080) 2 years ago
features Fix webauthn regression and improve code (#25113) 2 years ago
markup Fix math and mermaid rendering bugs (#24049) 2 years ago
modules Refactor diffFileInfo / DiffTreeStore (#24998) 2 years ago
render Add PDF rendering via PDFObject (#24086) 2 years ago
standalone Add new JS linter rules (#17699) 3 years ago
test Improve emoji and mention matching (#24255) 2 years ago
utils Add two eslint plugins (#24776) 2 years ago
webcomponents Refactor locale number (#24134) 2 years ago
bootstrap.js Improve template system and panic recovery (#24461) 2 years ago
index.js Redesign Scoped Access Tokens (#24767) 2 years ago
jquery.js Upgrade jQuery to 3.5.0, remove jQuery-Migrate, fix deprecations (#11055) 5 years ago
svg.js Add show timestamp/seconds and fullscreen options to action page (#24876) 2 years ago
svg.test.js Improve `<SvgIcon>` to make it output `svg` node and optimize performance (#23570) 2 years ago
utils.js Clean up WebAuthn javascript code and remove JQuery code (#22697) 2 years ago
utils.test.js Fix webauthn regression and improve code (#25113) 2 years ago