Änderungsprotokoll

NeoFrag Reborn 1.2.26

Luandre 5 Okt. 2026 6 Min. Lesezeit 36
Inhaltsverzeichnis
Inhaltsverzeichnis

Der Discord-Bot geht auf Version 0.2.3: Er schreibt nicht mehr bei jeder privaten Antwort eine Warnung von discord.js (siehe sein eigenes Änderungsprotokoll). Version 0.2.2 funktioniert weiterhin.

Hinzugefügt

  • Die Regeln und die Willkommensnachricht werden Sprache für Sprache übersetzt: Einstellungen → Registrierungsverwaltung hat einen Reiter pro Sprache der Website, und jeder Besucher liest die Regeln — und erhält die Nachricht — in der Sprache der Seite. Eine Sprache, die noch keinen eigenen Text hat, zeigt den gemeinsamen Text: Eine Website, die nur einen hatte, behält ihn für alle ihre Sprachen, nichts ändert sich, bis er übersetzt ist.
  • Das Änderungsprotokoll gibt es auf Englisch (CHANGELOG.en.md; die französische Version bleibt die Referenz).
  • Jedes Addon hat jetzt sein Vorschaubild, im selben Format (960 × 600): Die Module API und Discord hatten keines, die vier Themes des Katalogs behielten ein älteres, kleineres Bild, und drei Widgets des Kerns hatten keines in Themes & Addons. Einige zeigen noch ein leeres oder nicht konfiguriertes Addon. Ein neues Addon kann nicht mehr ohne sein eigenes veröffentlicht werden.

Geändert

  • Die Beschreibungen des Katalogs sagen, was jedes Addon tut: Dreißig davon passten in wenige Wörter oder stellten sich nur als „Gaming“ vor. Sie beschreiben jetzt, was das Addon wirklich tut und für wen es ist, in allen sechs Sprachen; fünf waren sogar falsch (das Widget Teams zeigt keine Mitglieder, das Widget Downloads zeigt die meist heruntergeladenen Dateien…).
  • Das Modul Ereignisse heißt „Ereignisse“, nicht mehr „Gaming-Ereignisse“: Kein Titel im Katalog trägt mehr das Wort „Gaming“.
  • Das Modul Zahlungen verlangt das Modul Gamification, das die gekauften Punkte und VIP-Tage gutschreibt: Ohne es wurde eine Zahlung eingezogen und nichts gutgeschrieben. Bei der Installation der Website fügt die Wahl von Zahlungen Gamification hinzu; aus dem Marketplace muss es zuerst installiert werden. Fehlt es später oder ist es deaktiviert, schließen die Verkäufe, und die Verwaltung sagt es; eine eingegangene Zahlung wird nicht als bearbeitet markiert, und Stripe schickt sie erneut.

Behoben

  • Ein in den Texteditor eingefügtes (Strg+V) oder hineingezogenes Bild wird gespeichert — Antwort im Forum, Kommentar, Verwaltungsseite, Team-Raum der privaten Nachrichten: Es erschien kaputt und verschwand beim Veröffentlichen. Es wird jetzt an die Website geschickt und bleibt in der Nachricht. Das ist angemeldeten Mitgliedern vorbehalten: ein Bild in JPEG, PNG, GIF oder WebP von höchstens 5 MB. Die Website speichert eine neue Kopie, die die versteckten Informationen eines Fotos entfernt (zum Beispiel, wo es aufgenommen wurde). Über 2.000 Pixel pro Seite wird das Bild verkleinert; über 8.192 Pixel pro Seite oder etwa 12,6 Millionen Pixel wird es abgelehnt. Ein animiertes GIF wird zu einem Standbild. Auf der Demo-Website bleibt das Hochladen von Bildern geschlossen.
  • Die Willkommensnachricht wird sauber angezeigt: Im Rich-Text-Editor geschrieben, kam sie mit sichtbaren Tags in den Nachrichten an (<h3>, <p>…). Sie wird jetzt in Text verwandelt (Überschriften, Aufzählungen oder nummerierte Listen, anklickbar gemachte Links), und ihr Titel zeigt nicht mehr &eacute; statt eines Buchstabens mit Akzent.
  • Die Willkommensnachricht wird auch verschickt, wenn sich jemand mit Discord, GitHub oder Google registriert: Nur das Registrierungsformular verschickte sie.
  • Der QR-Code der Zwei-Faktor-Authentifizierung wird angezeigt: Der Aktivierungsbildschirm (Kontosicherheit → 2FA aktivieren) zeigte den Code des Bildes in einem Textfeld statt des zu scannenden Bildes — die Formulare kannten diese Art von Feld nicht und behandelten sie als Text.
  • Die Logos des Widgets Partner führen zur Website des Partners und zählen den Besuch: Sie führten seit 1.0.0 zu einer fehlenden Seite, und der Zähler „Besuche“ bewegte sich nicht mehr. Auch die Seite der Partner geht über den gezählten Besuch.
  • Die Schaltflächen „Bezahlen“ (Zahlungen) und „Kaufen“ (Shop) funktionieren: Sie riefen eine fehlende Adresse auf.
  • Das Abonnieren des Newsletters aus dem Widget funktioniert: Die eingegebene Adresse ging unterwegs verloren. Der Bestätigungslink in der E-Mail war relativ (in einem E-Mail-Programm nutzlos), wie der Abmeldelink der Kampagnen: Beide sind jetzt vollständige Adressen. Und wenn die E-Mail nicht verschickt werden kann, wird das Abonnement storniert und der Besucher informiert, statt „verschickt“ zu lesen.
  • Die Links in den E-Mails des Forums und der Nachrichten (Erwähnung, Abonnement, Unterhaltung) sind vollständige Adressen: relativ führten sie nirgendwohin.
  • Umfragen folgen der Einstellung „Ergebnisse anzeigen“ (nach der Abstimmung, wenn geschlossen, nie) — auf ihrer Seite wie in ihrem Widget, das sie immer zeigte. Verwalter sehen sie immer, mit einem Hinweis.
  • Widgets folgen den Regeln ihres Moduls: Das Widget Galerien zeigt keine Alben mehr im Entwurf, geplant, im Papierkorb oder auf Gruppen beschränkt; das Widget Forum keinen Auszug aus den VIP-Kategorien und keine leeren Zeilen für gelöschte Beiträge; das Widget Ereignisse und der Kalender kein geplantes Ereignis vor seiner Zeit; das Widget Rekrutierung folgt „Nicht verfügbare Angebote ausblenden“.
  • Ein im Editor eingefügter Link zu einer Seite der Website behält seine vollständige Adresse: Der Editor kürzte ihn zu einem Pfad (../../…), der nur von der Bearbeitungsseite aus funktionierte — anderswo angezeigt, führte er nirgendwohin.
  • Die Roadmap (ROADMAP.md) sagt, dass der Code seit dem 4. Oktober 2026 veröffentlicht ist.

Sicherheit

  • Zwei alte technische Adressen der Nachrichten zeigten Nachrichten an, ohne sie zu schützen: Eine Nachricht mit Code hätte dort im Browser ausgeführt werden können. Keine Seite benutzte sie mehr, und der Zugang zur Unterhaltung war bereits erforderlich; sie zeigen Nachrichten jetzt an wie die Unterhaltung selbst.
  • Die Schaltflächen Facebook und Twitter der Seite der Partner folgen keinem javascript:-Link mehr, der in der Verwaltung eingegeben wurde: Solche Adressen werden gefiltert und maskiert, wie es die Website des Partners bereits war.
  • Die Schaltfläche „Kaufen“ des Shops und die Schaltfläche „Bezahlen“ prüfen jetzt, dass die Anfrage wirklich von der Website kommt: Eine bösartige Seite kann ein angemeldetes Mitglied nicht mehr ohne sein Wissen einen Artikel kaufen lassen.
  • Ein Kauf kann nicht mehr doppelt gezählt werden: Die Abbuchung der Punkte, der Lagerbestand und der Besitz werden in einer einzigen Transaktion geprüft und geschrieben — zwei gleichzeitige Käufe verkaufen den letzten Artikel nicht mehr doppelt und buchen ein Guthaben nicht mehr doppelt ab. Verdiente Punkte und VIP-Tage werden ebenfalls in einem Zug addiert: Zwei Gewinne im selben Augenblick überschreiben sich nicht mehr. Ein Artikel zu 0 Punkten lässt sich jetzt ohne Abbuchung erhalten (er wurde abgelehnt, „nicht genug Punkte“).
  • Newsletter-Anmeldungen sind in ihrer Häufigkeit begrenzt: 5 Anfragen pro Stunde und IP-Adresse, 3 pro Tag und E-Mail-Adresse — genug, um den massenhaften Versand von Bestätigungs-E-Mails an gewählte Adressen zu stoppen.
  • Eine Umfrage mit verborgenen Ergebnissen zeigt ihre Gesamtzahl an Stimmen nicht mehr in der Liste.
Geschrieben von Luandre Alle Beiträge

Auch lesenswert

0
Kommentare

Meine Cookies verwalten

Die Website speichert nur die Cookies, die sie zum Funktionieren braucht: Dafür ist Ihre Zustimmung nicht erforderlich. Die anderen Dienste gehören anderen Unternehmen; sie werden nur geladen, wenn Sie sie akzeptieren. Ihre Wahl wird sechs Monate gespeichert, und Sie können sie jederzeit ändern.

Für die Website erforderlich Immer aktiv

  • __Host-session Hält Sie angemeldet und schützt die Formulare vor betrügerischen Übermittlungen. Bis zum Schließen des Browsers; ein Jahr mit „Angemeldet bleiben“
  • nf_consent Speichert die Entscheidungen, die Sie in diesem Fenster treffen. 6 Monate
  • nf_fuseau Zeigt Datum und Uhrzeit in Ihrer Zeitzone an. 1 Jahr
  • Browser-Speicher Speichert Ihre Wahl zwischen Tag- und Nachtmodus sowie die für die Artikelliste gewählte Darstellung. Bis Sie ihn leeren

Videos

In Seiten eingebettete Videos: Der Player stammt von der Plattform, die Ihre IP-Adresse erhält und ihre Cookies speichern kann.

Musik

In Seiten eingebettete Titel und Playlists: Der Player stammt von der Plattform, die Ihre IP-Adresse erhält und ihre Cookies speichern kann.