Admin-Einstellung hinzufügen, um die Standardkalenderansicht zu ändern (Monat / Woche / Agenda)

Hallo :waving_hand:

Für Websites, die stark von der Seite “Anstehende Ereignisse” abhängen, bevorzugen viele Community-Mitglieder standardmäßig eine Wochenansicht. Derzeit lädt /upcoming-events immer zuerst die Monatsansicht, auch wenn ein Benutzer Woche (oder Tag, Jahr) bevorzugt.


Funktionsanfrage

Fügen Sie eine einfache Einstellung in der Admin-Oberfläche hinzu, um zu konfigurieren, welche Ansicht /upcoming-events standardmäßig lädt:

upcoming events default view:
  - /upcoming-events/month   (aktueller Standard)
  - /upcoming-events/week
  - /upcoming-events/year

Warum das wichtig ist

  • Die Wochenansicht ist praktischer für Stundenpläne, Schichtpläne und ereignisreiche Gemeinschaften
  • Reduziert wiederholtes Umschalten bei jedem Besuch der Seite
  • Verbessert die UX-Parität mit mobilen Kalender-Apps, die standardmäßig die Wochenansicht verwenden

Aktuelle Problemumgehung

Administratoren können mit einer Theme-Komponente auf /upcoming-events/week umleiten, aber das:

  • ist eine Notlösung
  • gilt für alle global (schwer einzugrenzen)
  • bietet keine echte Admin-UX-Kontrolle

Vielen Dank! Dies wäre eine kleine Änderung mit einer großen Verbesserung der Benutzerfreundlichkeit für ereignisfokussierte Communities :raising_hands:

2 „Gefällt mir“

Dies dient dazu, die Standardeinstellung auf Woche statt Monat festzulegen. Es ist einfach, aber noch keine Site-Einstellung. Es legt den Grundstein für die akzeptablere Verbesserung.

Warum nicht einfach eine app.yml-Variable?

Ember-Code liest keine beliebigen Umgebungsvariablen. Discourse gibt nur deklarierte Website-Einstellungen (config/settings.yml, client: true) an den Client weiter. Deshalb müssen Sie entweder:

  • die Einstellung im Kern hinzufügen (dann über app.yml festlegen) oder
  • Einstellungen vermeiden und eine Theme-Komponenten-Umleitung verwenden.

Wie wäre es, generische URLs aufzulösen, damit Sie einen benutzerdefinierten Link in der Seitenleiste verwenden könnten?

Derzeit würden diese nicht funktionieren:

/upcoming-events/day
/upcoming-events/week
/upcoming-events/month
/upcoming-events/year
1 „Gefällt mir“

Ich bin an den Button für bevorstehende Ereignisse “gewöhnt”, der nicht in der Seitenleiste konfiguriert werden kann. Außerdem könnte eine Admin-Einstellung den Standardwert einer Benutzereinstellung festlegen. Anstatt dass alle Benutzer ihren eigenen Seitenleisten-Button/ihre eigene Seitenleisten-Sektion einrichten müssen oder eine globale Sektion akzeptieren.

Ich hoffe, ich habe den richtigen Code in meinem PR geändert, dass wir einfach umschalten müssen, was ich geändert habe, basierend auf einer Einstellung?..

@yuriy, kannst du dafür eine Website-Einstellung hinzufügen? Sollte einfach sein.

4 „Gefällt mir“

@Ethsim2, das hast du tatsächlich :smiley:
Die neue Einstellung Kalender kommende Ereignisse Standardansicht ist jetzt verfügbar. Die Änderungen wurden implementiert in:

5 „Gefällt mir“

Vielen Dank noch einmal, dass Sie dies umgesetzt haben – die Standardansichtseinstellung für Administratoren ist ein großer UX-Gewinn :+1:

Da dies nun existiert, könnte es sich lohnen, eine kleine Nachbesserung in Betracht zu ziehen: Benutzern die Möglichkeit geben, die Standardeinstellung der Website optional durch eine persönliche Präferenz zu überschreiben, wobei die Einstellung des Administrators als Fallback beibehalten wird.

Dies würde Websites eine starke Standardidentität geben (Woche vs. Monat), aber den Einzelpersonen immer noch ermöglichen, zu wählen, was für sie am besten funktioniert – ähnlich wie sich die meisten Kalenderanwendungen verhalten. Eine einfache Priorität wie

explizite URL → Benutzereinstellung → Website-Standard

würde das Verhalten vorhersagbar und abwärtskompatibel halten.

Ich schlage nicht vor, dass dies die aktuelle Einstellung ersetzt – nur einen möglichen nächsten Schritt, wenn Sie denken, dass es zur allgemeineren UX-Richtung passt.

1 „Gefällt mir“