Umschalter in den Einstellungen und auf der Anmeldeseite; Meldungen des Launchers (Lang.cs) und der Website (Accept-Language) in der gewaehlten Sprache. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
93 lines
4.1 KiB
HTML
93 lines
4.1 KiB
HTML
<!doctype html>
|
|
<html lang="de">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>BSO Launcher</title>
|
|
<link rel="stylesheet" href="app.css">
|
|
<script src="i18n.js" defer></script>
|
|
<script src="app.js" defer></script>
|
|
</head>
|
|
<body>
|
|
<!-- Eigene Titelleiste (das Fenster hat keine von Windows). data-t = wird uebersetzt (i18n.js) -->
|
|
<header class="titlebar">
|
|
<div class="titlebar-drag" id="titlebarDrag">
|
|
<img src="logo.png" alt="">
|
|
<span>BSO Launcher</span>
|
|
<span class="dev-badge hidden" id="devBadge"></span>
|
|
</div>
|
|
<div class="window-buttons">
|
|
<button type="button" data-window="minimize" data-t-title="Minimieren"></button>
|
|
<button type="button" data-window="maximize" id="maximizeButton" data-t-title="Maximieren"></button>
|
|
<button type="button" data-window="close" class="close" data-t-title="Schliessen"></button>
|
|
</div>
|
|
</header>
|
|
|
|
<!-- Anmeldung / Registrierung -->
|
|
<main id="auth" class="auth hidden">
|
|
<form id="authForm" class="auth-card" autocomplete="on">
|
|
<div class="brand big">
|
|
<img src="logo.svg" alt="">
|
|
<div>
|
|
<div class="brand-title">BSO <span class="beta-pill">BETA</span></div>
|
|
<div class="brand-sub">Bus Simulator Online</div>
|
|
</div>
|
|
</div>
|
|
<div class="tabs">
|
|
<button type="button" class="tab on" id="tabLogin" data-t>Anmelden</button>
|
|
<button type="button" class="tab" id="tabRegister" data-t>Konto erstellen</button>
|
|
</div>
|
|
<label><span data-t>Benutzername</span>
|
|
<input id="username" autocomplete="username" maxlength="32" required>
|
|
</label>
|
|
<label id="emailRow" class="hidden"><span data-t>E-Mail (optional)</span>
|
|
<input id="email" type="email" autocomplete="email" maxlength="190">
|
|
</label>
|
|
<label><span data-t>Passwort</span>
|
|
<input id="password" type="password" autocomplete="current-password" maxlength="200" required>
|
|
</label>
|
|
<label id="password2Row" class="hidden"><span data-t>Passwort wiederholen</span>
|
|
<input id="password2" type="password" autocomplete="new-password" maxlength="200">
|
|
</label>
|
|
<p id="authError" class="error hidden"></p>
|
|
<button class="btn primary wide" id="authButton" type="submit">Anmelden</button>
|
|
<p class="muted small center" data-t>Dein Benutzername ist auch dein Name im Spiel. Passwoerter liegen nur verschluesselt auf dem BSO-Server.</p>
|
|
<p class="muted small center" id="authServer"></p>
|
|
</form>
|
|
<div class="auth-lang lang-switch" data-lang-switch></div>
|
|
</main>
|
|
|
|
<!-- Launcher -->
|
|
<div id="app" class="layout hidden">
|
|
<aside class="sidebar">
|
|
<div class="brand">
|
|
<img src="logo.svg" alt="">
|
|
<div>
|
|
<div class="brand-title">BSO <span class="beta-pill">BETA</span></div>
|
|
<div class="brand-sub">Launcher</div>
|
|
</div>
|
|
</div>
|
|
<nav id="nav">
|
|
<button type="button" data-page="home" class="on"><span class="nav-icon"></span><span data-t>Spielen</span></button>
|
|
<button type="button" data-page="friends"><span class="nav-icon"></span><span data-t>Freunde</span><span class="nav-badge hidden" id="friendsBadge"></span></button>
|
|
<button type="button" data-page="news"><span class="nav-icon"></span><span data-t>Neuigkeiten</span></button>
|
|
<button type="button" data-page="settings"><span class="nav-icon"></span><span data-t>Einstellungen</span></button>
|
|
</nav>
|
|
<div class="sidebar-foot">
|
|
<div class="lang-switch" data-lang-switch></div>
|
|
<div class="me-card">
|
|
<span class="avatar" id="meAvatar">?</span>
|
|
<span class="me-text"><b id="meName"></b><small id="meVersion"></small></span>
|
|
<button class="icon-btn" id="logout" type="button" data-t-title="Abmelden"></button>
|
|
</div>
|
|
</div>
|
|
</aside>
|
|
<section class="content">
|
|
<div id="page" class="page"></div>
|
|
</section>
|
|
</div>
|
|
|
|
<div id="toasts" class="toasts"></div>
|
|
</body>
|
|
</html>
|