Fix Token
Alle Prüfungen waren erfolgreich
SteamWarCI Build successful

Dieser Commit ist enthalten in:
Chaoscaot 2024-01-06 21:36:22 +01:00
Ursprung 925db8b356
Commit 36c7505c5d
4 geänderte Dateien mit 40 neuen und 62 gelöschten Zeilen

Datei anzeigen

@ -1,5 +1,5 @@
import type { AstroIntegration } from "astro"; import type { AstroIntegration } from "astro";
import { mkdir, access, constants, copyFile, rename } from 'node:fs/promises' import { mkdir, access, constants, copyFile, rename } from "node:fs/promises";
const locales = ["de"]; const locales = ["de"];
@ -8,30 +8,30 @@ export default function configureI18n(): AstroIntegration {
name: "astro-i18n-renamer", name: "astro-i18n-renamer",
hooks: { hooks: {
"astro:build:done": async ({pages, dir, logger, routes}) => { "astro:build:done": async ({pages, dir, logger, routes}) => {
for (let page of pages) { for (const page of pages) {
let [locale, ...rest] = page.pathname.split("/"); const [locale, ...rest] = page.pathname.split("/");
if (locales.includes(locale)) { if (locales.includes(locale)) {
let path = rest.join("/"); const path = rest.join("/");
let oldPath = `${dir.pathname}${page.pathname}` const oldPath = `${dir.pathname}${page.pathname}`;
let newPath = `${dir.pathname}${path}` const newPath = `${dir.pathname}${path}`;
try { try {
await access(cutPrefix(newPath), constants.R_OK | constants.W_OK) await access(cutPrefix(newPath), constants.R_OK | constants.W_OK);
} catch (e) { } catch (e) {
await mkdir(cutPrefix(newPath), {recursive: true}); await mkdir(cutPrefix(newPath), {recursive: true});
} }
await copyFile(`${cutPrefix(oldPath)}index.html`, `${cutPrefix(newPath)}index.html.${locale}`) await copyFile(`${cutPrefix(oldPath)}index.html`, `${cutPrefix(newPath)}index.html.${locale}`);
logger.info(`Copied ${oldPath}index.html to ${newPath}index.html.${locale}`) logger.info(`Copied ${oldPath}index.html to ${newPath}index.html.${locale}`);
} else { } else {
let oldPath = cutPrefix(`${dir.pathname}${page.pathname}`) const oldPath = cutPrefix(`${dir.pathname}${page.pathname}`);
await rename(`${oldPath}index.html`, `${oldPath}index.html.en`) await rename(`${oldPath}index.html`, `${oldPath}index.html.en`);
}
} }
} }
} }
} }
};
} }
function cutPrefix(path: string): string { function cutPrefix(path: string): string {
return process.platform === "win32" ? path.substring(1) : path return process.platform === "win32" ? path.substring(1) : path;
} }

Datei anzeigen

@ -1,4 +1,4 @@
import { defineAstroI18nConfig } from "astro-i18n" import { defineAstroI18nConfig } from "astro-i18n";
export default defineAstroI18nConfig({ export default defineAstroI18nConfig({
primaryLocale: "en", primaryLocale: "en",
@ -25,4 +25,4 @@ export default defineAstroI18nConfig({
"set-password": "passwort-setzen" "set-password": "passwort-setzen"
} }
}, },
}) });

Datei anzeigen

@ -62,7 +62,7 @@
<input type="password" id="password" name="password" placeholder={t("login.placeholder.password")} bind:value={pw} /> <input type="password" id="password" name="password" placeholder={t("login.placeholder.password")} bind:value={pw} />
</div> </div>
<p class="mt-2"> <p class="mt-2">
<a class="text-neutral-500 hover:underline" href={l("/token-erstellen")}>{t("login.setPassword")}</a></p> <a class="text-neutral-500 hover:underline" href={l("/set-password")}>{t("login.setPassword")}</a></p>
{#if error} {#if error}
<p class="mt-2 text-red-500">{error}</p> <p class="mt-2 text-red-500">{error}</p>

Datei anzeigen

@ -1,22 +0,0 @@
---
title: Erstelle einen Token für die Webseite
description: Erstelle einen Token für die Webseite
slug: token-erstellen
---
Ein Token ist ein Schlüssel, mit dem du dich auf der Webseite als Spieler identifizieren kannst. Dieser wird benötigt, um z.B. deine Schematics anzuzeigen.
## Token erstellen
Um einen Token zu erstellen, musst du dich auf dem Minecraftserver einloggen und `/token create <name>` eingeben. Der Name ist frei wählbar und dient nur zur Identifikation. Du kannst auch mehrere Tokens erstellen.
Du erhältst dann eine Nachricht, auf der du mit einem Klick den Token in die Zwischenablage kopieren kannst. Dieser Token ist nur einmal sichtbar, bei Verlust musst du einen neuen erstellen.
## Token verwenden
Um den Token zu verwenden, kannst du ihn unter dem Menüpunkt `Konto` auf der Webseite eingeben um dich zu identifizieren. Dazu wird dann auch dein Minecraftname benötigt.
Wenn du erfolgreich mit dem Token eingeloggt wurdest, wirst du auf die Dashboardseite weitergeleitet. Dort kannst du dann deine Schematics und Statistiken sehen.
## Token löschen
Um einen Token zu löschen, musst du auf dem Minecraftserver `/token` eingeben. Dadurch wird eine Liste mit allen deinen Tokens angezeigt. Mit einem Klick auf den Token kannst du ihn löschen.