mirror of
https://github.com/logicog/RTLPlayground.git
synced 2026-10-29 17:54:14 +08:00
All 17 page scripts (i18n, shared helpers, navigation and the per-page scripts) are merged into one html/main.js that every page loads as its only script, so the browser fetches it once and gzip can compress across all of it. The page-specific initialisation is guarded by the presence of the matching page elements (it used to be selected implicitly by which script a page loaded); the sidebar fill and the stat popup wiring moved into DOMContentLoaded handlers because the bundle loads in <head>, before the body exists. tools/httpd_sim.h: BUFFER_SIZE 24000 -> 131072 so the simulator can serve the larger bundle (the firmware is unaffected, it serves the gzip'd bundle of ~17 KB). Measured (make MACHINE=KP_9000_6XHML_X2): the JS drops from 23,302 to 16,948 bytes gzip; the whole Web UI from 34,784 to 28,200 bytes (25.3 % of the raw 111,280); the data block ends at 0x46e28. Verified with a headless browser against httpd_sim and against a real PCB-K0402WS-V3: all pages render, the sidebar and the port strip are drawn, no JavaScript errors.
31 lines
966 B
HTML
31 lines
966 B
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<title data-i18n="login_title">RTL Switch Login</title>
|
|
<link rel="stylesheet" href="style.css">
|
|
<script src="/main.js"></script>
|
|
<script>
|
|
function removeNote() {
|
|
document.getElementById("incorrect").innerHTML = "";
|
|
}
|
|
window.addEventListener("load", function() {
|
|
if (document.referrer.endsWith("login.html"))
|
|
document.getElementById("incorrect").innerHTML = t('login_wrong');
|
|
});
|
|
</script>
|
|
</head>
|
|
|
|
<body class="login_page">
|
|
<div class = "center">
|
|
<h1 data-i18n="login_heading"> RTL Switch Login</h1>
|
|
<form method="post" action="login">
|
|
<div class="txt_field">
|
|
<input name="pwd" type="password" autocomplete="current-password" onclick="removeNote()" required />
|
|
<span></span>
|
|
<label data-i18n="login_password">Password</label>
|
|
</div>
|
|
<input type="submit" data-i18n="login_login" value="Login"/>
|
|
<h3 id="incorrect" style="margin-top: 5em;"></h3>
|
|
</form>
|
|
</body>
|
|
</html>
|