Das Laden des Watterblocks ist fehlgeschlagen.
+
diff --git a/style.css b/style.css
index 8f0eeb9..406f5f7 100644
--- a/style.css
+++ b/style.css
@@ -6,6 +6,7 @@
@import "/ui/round.css";
@import "/ui/session-list.css";
@import "/ui/session-view.css";
+@import "/ui/splash.css";
/* || COLORS
*
diff --git a/ui/layout.js b/ui/layout.js
index 4940991..7b3be8f 100644
--- a/ui/layout.js
+++ b/ui/layout.js
@@ -7,6 +7,7 @@ export default class Layout {
#dbErrorsHandled = false;
constructor() {
+ // set up event handler once db opens
this.#db.addEventListener(WbDb.EVENT_CHANGE, () => {
if (!this.#dbErrorsHandled) {
this.#db.addEventListener("error", this.#handleDbError.bind(this));
@@ -15,6 +16,7 @@ export default class Layout {
m.redraw();
});
+ // set up event handler if db is already open
if (this.#db.open && !this.#dbErrorsHandled) {
this.#db.addEventListener("error", this.#handleDbError.bind(this));
this.#dbErrorsHandled = true;
@@ -27,23 +29,32 @@ export default class Layout {
view({ children, attrs: { backHref }}) {
if (this.#db.failed)
- return m.fragment([
- m("h1", "Watterblock kann nicht geöffnet werden"),
- m("p", "Die IndexedDB-Verbindung funktioniert gerade nicht"),
+ return m(".wb-splash", [
+ m("h1", ["Watterblock", m("br"), "geht nit"]),
+ m("p", [
+ "Di Spieldatnbank kann nit aufgmacht werdn. Des is fast sicha a ",
+ "Fehla im Kod. Meld di doch bitte bei ",
+ m("a", { href: "mailto:tfld@tfld.dev" }, "tfld@tfld.dev"), " und ",
+ "gib ma bscheid, damit i des repariern kann.",
+ ]),
]);
if (this.#db.blocked)
- return m.fragment([
- m("h1", "Watterblock muss warten"),
- m("p",
- "Bitte schließe alle anderen Tabs, in denen der Watterblock " +
- "geöffnet ist"
- ),
- m("p", "Die Spieledatenbank muss aktualisiert werden."),
+ return m(".wb-splash", [
+ m("h1", ["Watterblock", m("br"), "muss warten"]),
+ m("p", [
+ "Di Spieldatnbank muas bessa gmacht werdn. Des geht aba nit, solang ",
+ "da Block no in am andern Tab offn is."
+ ]),
+ m("p", "Bitte mach alle andern Watterblock-Tabs zua oda lad si nei!"),
]);
if (!this.#db.open)
- return m("p", "Öffne Datenbank, bitte warten…");
+ return m(".wb-splash", [
+ m(".spinner"),
+ m("h1", "Watterblock"),
+ m("p", "Geduld, i mach grad di Datnbank auf…"),
+ ]);
return m.fragment([
m("header.header._alternate._apply", [