One-KVM/web/login/index.pug
mofeng-git 2c056ca3e3 feat: merge upstream master - version 4.94
Merge upstream PiKVM master branch updates:

- Bump version from 4.93 to 4.94
- HID: improved jiggler pattern for better compatibility
- Streamer: major refactoring for improved performance and maintainability
- Prometheus: tidying GPIO channel name formatting
- Web: added __gpio-label class for custom styling
- HID: customizable /api/hid/print delay configuration
- ATX: independent power/reset regions for better control
- OLED: added --fill option for display testing
- Web: improved keyboard handling in modal dialogs
- Web: enhanced login error messages
- Switch: added heartbeat functionality
- Web: mouse touch code simplification and refactoring
- Configs: use systemd-networkd-wait-online --any by default
- PKGBUILD: use cp -r to install systemd units properly
- Various bug fixes and performance improvements
2025-08-21 11:26:59 +08:00

68 lines
1.9 KiB
Plaintext

extends ../base.pug
mixin radio(name, items)
.radio-box
each item in items
-
let id = `${name}-${item["value"]}`
let checked = (item["checked"] || false)
input(type="radio" id=id name=name value=item["value"] checked=checked)
label(for=id) !{item["title"]}
append vars
-
root_prefix = "../"
title = "One-KVM Login"
main_js = "login/main"
css_list.push("window", "modal", "radio", "login/login")
block body
form(action="javascript:void(0)")
#login-box
#login
table
tr
td #[img.svg-gray#login-logo(src=`${svg_dir}/logo.svg` alt="π-kvm")]
td
tr
td(colspan=2) #[hr]
tr
td(i18n="username") Username: 
td #[input#user-input(type="text" autocapitalize="off")]
tr
td(i18n="password") Password: 
td #[input#passwd-input(type="password" autocapitalize="off")]
tr
td(i18n="2fa_code") 2FA code: 
td #[input#code-input(type="text" placeholder="if enabled" autocomplete="off" i18n="if_enabled")]
tr
td(colspan=2) #[hr]
tr
td #[a(target="_blank" href="https://docs.pikvm.org/auth/#session-expiration") Remember me]: 
td
+radio("expire-radio", [
{"title": "1h", "value": "3600"},
{"title": "12h", "value": "43200"},
{"title": "Forever", "value": "0", "checked": true},
])
tr
td(colspan=2) #[hr]
tr
td(i18n="select_language") Select language: 
td
select#selectLanguage(style="width:100%")
option#zh(selected="selected" i18n="chinese") Simplified Chinese
option#en(i18n="english") English
tr
td
td #[button.key#login-button(style="width:100%" i18n="login") Login]
ul.footer
li.left(i18n="footer-left")
| This site is actively using JavaScript.#[br]
| It doesn't contain ads, but is blocked by some ad filters.#[br]
| Please turn it off to continue and reload the page.