h2. Default Template vers 0.6.1 | in DEV | created 11.11.2024 (sic!)
h3. *Hinweis:* Die Superkategorien sind im Entwurf noch nicht eingearbeitet.
h1. Konzept CAT-Pages
TC hat eine eigene Implementierung von Kategorieseiten. Da TC (wie auch "DokuWiki":https://www.dokuwiki.org/dokuwiki) alle Daten in einfachen Files speichert (also keine Datenbank), ist die Implementierung von Kategorienseiten aufwendiger.
Ab TC (Version 0.7) soll dieses Konzept für Kategorieseiten eingebaut werden:
* Kategorien werden, wie auch bis Version 0.6 über die Syntax * "(cat)$":tc:category:categorie-level-1:...:categorie-level-n definiert/beschrieben
* Über den Kategorienamen %(text-blue)(* "(cat)$":tc:category:categorie-level-1:...:categorie-level-n)% ist auch ein Wiki-Subpage definiert, die aus dem Kategorienamen und einem konfigurierbaren Pre-Seitennamen besteht (*Beispiel:* _subpages_)
* Dadurch entsteht eine Kategorieseite subpages:tc:category:categorie-level-1:...:categorie-level-n
* Alle Kategorieseiten werden über eine [_+PageBuilder+_]-Funktion gebildet, die die vorhandene Kategorieseite scannt und die vorhandenen Inhalte zur aktuellen Seite ersetzt oder erstellt. Der PageBuilder wird jedesmal erneut aufgerufen und aktualisiert alle Kategorieseiten der aktuellen Wiki-Seite, wenn diese aktualisiert (gespeichert) wird.
Der PageBuilder erzeugt dabei diese Inhalte pro Kategorieverlinkung:
* Einen unsichtbaren Teil, der die Rohdaten enthält. Das sind:
** Rohdaten der Texte, die angezeigt werden sollen.
** Seitennamen und Seitennamenlink zur Kategorieeintrag.
** Metadaten wie Creation Date, user etc.
* Einen sichtbaren Teil, der dann auf der Kategorieseiten angezeigt wird.
* Metadaten, die über die Konfiguration sichtbar gemacht wurden.
h3. Beispiel
Kategorieseite Albert Mangelsdorf %(text-blue)(* "(cat)$":tc:category:music:jazz:albert-mangelsdorf)% auf der Audio-Seite media:album:live-in-tokyo
* Überschrift: Kategorie Albert Mangelsdorf
* Seitendetails: Link "(page)Live in Tokyo":media:album:live-in-tokyo
Um die Kategorieseite zu aktualiesieren, wird sie unsichtbar in die aktuelle Seite geladen und danach die Inhalte zur aktuellen Wiki-Seite aktualisiert (oder angelegt). Danach erzeugt der PageBuilder wieder die neue Kategorieseite und speichert sie ab. Fertig!
h2. SUPER Kategorien
Außerdem sollen SUPER-Kategorien eingebaut werden. Dazu werden die Daten der jeweils bearbeiteten Kategorie-Seite in die SUPER-CAT-Bereiche der SUPER-Kategorie-Seiten geladen und dann entsprechend angezeigt.