2$dir = dirname(__DIR__) .
'/tpl/htm/';
4'admin-help-dashboard' => <<<
'HTML'
6<p>Das Admin-Dashboard bündelt Systemstatus, Datenbanken, Module und letzte Aktivitaeten.</p>
9<li>Oben Kennzahlen prüfen (DB-Verbindungen, Tabellen, Module).</li>
10<li>Über die Aktionskarten direkt in häufige Admin-Bereiche springen.</li>
11<li>Performance- und Aktivitätsbereiche für Engpässe nutzen.</li>
13<div
class=
"help-flow">Dashboard → Bereich wählen → Detail-Admin → Aktion ausführen → Dashboard prüfen</div>
14<div
class=
"help-example"><strong>Beispiel:</strong> Hohe Trace-Zahl → Trace öffnen → betroffene Tabelle filtern → Datensatz-Historie ansehen.</div>
16'admin-help-cache' => <<<
'HTML'
18<p>Der Gast-Full-Page-Cache speichert bei gueltigen Permalink-Aufrufen die vollstaendige Endausgabe. Titel, Description, Keywords, weitere Head-Metadaten, Design, Menues, Interpreter-Platzhalter und enthaltene Module sind darin bereits aufgeloest. Der Cache gilt ausschliesslich fuer Gaeste mit Benutzer-ID 0; angemeldete Benutzer bleiben dynamisch.</p>
19<p>Ein Treffer wird vor der Content-Permalink-/CID-Aufloesung direkt aus der Permalink-Datei geliefert. Dabei ist kein Content-Datenbankzugriff erforderlich; nur die normale Session-Aktualisierung darf bei aktivem Session-DB-Modus die Datenbank verwenden. Sessiongebundene Formular-Tokens werden ohne Modul- oder Interpreterlauf frisch in die Gast-Session eingesetzt.</p>
20<p>Die Cachedatei selbst folgt dem lesbaren Muster <code>permalink_sprache_skin.htm</code>, zum Beispiel <code>kunden-nutzen_de_blau.htm</code>. Ein <code>user_0</code>-Zusatz ist nicht erforderlich, weil nur Benutzer-ID 0 den Cache verwenden darf. Design-, Host-, Query- und Gastzustandsvarianten liegen kollisionsfrei in getrennten Kontext-Unterordnern.</p>
23<li>Anzahl der gecachten Gast-Full-Pages je Sprache lesen.</li>
24<li>Full-Page-Cache bei Template-, Menue- oder Content-Aenderungen manuell leeren.</li>
26<div
class=
"help-flow">Content speichern → Cache invalidiert automatisch (CMS)
27Manuell: Admin → Page-Cache → Leeren → Seite neu laden</div>
28<div
class=
"help-example"><strong>Beispiel:</strong> Content-Aenderung fehlt auf der Live-Seite → Cache leeren → gueltigen Permalink erneut aufrufen.</div>
30'admin-help-dd-list' => <<<
'HTML'
32<p>DD Sync vergleicht DataDictionary-Dateien (<code>*.dd.php</code>) mit der physischen Datenbankstruktur.</p>
33<h4>Vorgehensweise</h4>
35<li>Modul/DD in der Liste wählen.</li>
36<li>Sync-Plan prüfen (fehlende Felder, Indizes).</li>
37<li><em>Apply</em> schrittweise ausführen, nicht blind resetten.</li>
39<div
class=
"help-flow">DD-Datei ändern → DD Sync → Diff prüfen → Apply → DB Sync testen</div>
40<div
class=
"help-example"><strong>Beispiel:</strong> Neues Feld in <code>contactRequest.dd.php</code> → DD Sync → Feld erscheint als pending → Apply.</div>
42'admin-help-dd-fields' => <<<
'HTML'
44<p>Feldvergleich zwischen DD-Definition und Datenbank-Spalten einer Tabelle.</p>
47<li>Abweichungen pro Feld (Typ, Länge, Index) erkennen.</li>
48<li>Mapping und Batch-Aktionen für Korrekturen.</li>
50<div
class=
"help-flow">Tabelle wählen → Fields Grid → Abweichung markieren → Sync Apply</div>
52'admin-help-dd-backup' => <<<
'HTML'
54<p>Backup und Restore der SQLite-Datenbanken über den Admin.</p>
55<h4>Vorgehensweise</h4>
57<li>Vor strukturellen Änderungen Backup erstellen.</li>
58<li>Restore nur auf Test-/Dev-Umgebung oder mit Vorsicht auf Produktion.</li>
60<div
class=
"help-example"><strong>Beispiel:</strong> Vor DD-Reset Backup → Apply → bei Fehler Restore.</div>
62'admin-help-db-list' => <<<
'HTML'
64<p>DB Sync verwaltet Datensätze direkt in Tabellen (Lesen, Einfügen, Bearbeiten, Löschen).</p>
67<li>Tabellendaten paginiert anzeigen und filtern.</li>
68<li>CSV Import/Export pro Tabelle.</li>
69<li>Einzelne Tabellen backup/restore.</li>
71<div
class=
"help-flow">DB Sync → Tabelle → Daten prüfen → Zeile bearbeiten → Speichern</div>
73'admin-help-edit-dd' => <<<
'HTML'
75<p>DD-Editor pflegt Tabellen-Metadaten und Felddefinitionen in <code>dd/{name}.dd.php</code>.</p>
76<h4>Vorgehensweise</h4>
78<li>Tabelle + Felder im Editor öffnen.</li>
79<li>Feldtyp, Regeln, Index anpassen.</li>
80<li>Reihenfolge per Drag speichern.</li>
81<li>Danach DD Sync ausführen.</li>
83<div
class=
"help-flow">DD Editor → Feld hinzufügen → Speichern → DD Sync Apply</div>
85'admin-help-edit-fd' => <<<
'HTML'
87<p>FD-Editor definiert Formularfelder (<code>fd/{name}.fd.php</code>) für
dbxForm/
dbxReport.</p>
90<li>Labels, TPL-Typ, Validierung, Optionen pflegen.</li>
91<li>Aus DD-Feldern FD automatisch erzeugen.</li>
93<div
class=
"help-example"><strong>Beispiel:</strong> Neues Report-Filterfeld → FD anlegen → Report <code>create_selection_fields()</code> nutzen.</div>
95'admin-help-server' => <<<
'HTML'
97<p>Server-Verwaltung listet registrierte SQLite-Server und deren Tabellen.</p>
98<h4>Vorgehensweise</h4>
100<li>Server-Eintrag prüfen (Pfad, Name).</li>
101<li>Tabellen zuordnen und DD-Verknüpfung kontrollieren.</li>
104'admin-help-server-tables' => <<<
'HTML'
106<p>Tabellen eines Datenbank-Servers verwalten und DD-Zuordnung prüfen.</p>
108'admin-help-modules-list' => <<<
'HTML'
110<p>Übersicht aller installierten Module mit Version, Aktiv-Status und Zugriff.</p>
111<h4>Möglichkeiten</h4>
113<li>Modul aktivieren/deaktivieren.</li>
114<li>Zugriffsrechte (Gruppen) pro Modul setzen.</li>
115<li>Avatar/Icon des Moduls anpassen.</li>
118'admin-help-modules-new' => <<<
'HTML'
120<p>Assistent zum Anlegen eines neuen Modul-Grundgerüsts.</p>
121<div
class=
"help-flow">Name wählen → Verzeichnisstruktur → Klasse + Config → Modul aktivieren</div>
123'admin-help-modules-access' => <<<
'HTML'
125<p>Legt fest, welche Benutzergruppen ein Modul sehen und nutzen dürfen.</p>
126<div
class=
"help-example"><strong>Beispiel:</strong> dbxWorkflow nur für <code>admin</code> → Zugriff speichern → Menü prüfen.</div>
128'admin-help-config' => <<<
'HTML'
130<p>System- und Modul-Konfiguration (<code>cfg/config.php</code>) zentral bearbeiten.</p>
131<h4>Vorgehensweise</h4>
133<li>Modul in der Auswahl wählen (z. B.
dbx, dbxContact).</li>
134<li>Werte ändern und speichern.</li>
135<li>Bei Mail/Cache-Einstellungen Auswirkung im Zielmodul testen.</li>
138'admin-help-session' => <<<'HTML'
140<p>Zeigt aktive Benutzer-Sessions und Login-Metadaten.</p>
141<h4>Möglichkeiten</h4>
143<li>Verdächtige Sessions identifizieren.</li>
144<li>Bei Support-Fällen letzte Aktivität prüfen.</li>
147'admin-help-trace' => <<<'HTML'
149<p>Trace protokolliert Änderungen an Datensätzen (wer, wann, was).</p>
150<h4>Vorgehensweise</h4>
152<li>Nach Tabelle/Datensatz filtern.</li>
153<li>Historie per Lupe in openWin öffnen.</li>
154<li>Optional Wiederherstellen / Undelete.</li>
156<div class=
"help-flow">Änderung → Trace-Liste → Detail → Restore (optional)</div>
158'admin-help-sysmsg' => <<<'HTML'
160<p>System-Meldungen und Fehlerprotokoll des Kernels.</p>
161<h4>Möglichkeiten</h4>
163<li>Fehler nach Modul/Aktion filtern.</li>
164<li>Error-Log-Box für PHP/Kernel-Hinweise.</li>
167'admin-help-missing' => <<<'HTML'
169<p>Listet fehlende Dateien, DD-Einträge oder Referenzen im System.</p>
170<p>Nutzen Sie die Liste nach Deployments oder Modul-Updates zur Integritätsprüfung.</p>
172'admin-help-contact' => <<<'HTML'
174<p>Verwaltung eingehender Kontaktanfragen aus dbxContact.</p>
175<h4>Vorgehensweise</h4>
177<li>Offene Anfragen in der Liste prüfen.</li>
178<li><em>Antwort</em> öffnet Formular (Status, reply_text, optional Mail).</li>
179<li>Alternativ Workflow <code>ticket_demo</code> über Modul-Binding.</li>
181<div class=
"help-flow">Anfrage → Antwort/Workflow → Status + Text → Speichern → optional Mail</div>
183'admin-help-
user' => <<<'HTML'
185<p>Benutzer- und Gruppenverwaltung im dbxAdmin-Bereich (klassische Reports).</p>
186<p>Für Grid-basierte Verwaltung siehe dbxUser_admin.</p>
188'admin-help-export-sql' => <<<'HTML'
190<p>SQL-Dump/Export von Datenbankinhalten für Backup oder Migration.</p>
192'admin-help-datadic' => <<<'HTML'
194<p>Gesamtübersicht aller DataDictionaries im System.</p>
196'admin-help-workflow-list' => <<<'HTML'
197<h4>Workflow-Definitionen</h4>
198<p>dbxWorkflow_admin ist die Quelle der Abläufe, die dbxWorkflow ausführt.</p>
199<div class=
"help-flow">Definition → aktivieren → Start → Instanz mit Snapshot → Schritte → Abschluss</div>
200<p>Nur aktive Definitionen können neu gestartet werden. Beim Start wird der Definitionsstand für die Instanz gespeichert.</p>
202'admin-help-workflow-edit' => <<<'HTML'
203<h4>Workflow im Designer erstellen</h4>
205<li>Stabilen Workflow Key, Name, Ziel und Beschreibung festlegen.</li>
206<li>Eingaben, Aktionen, Prüfungen und Entscheidungen aus der Palette in den Ablauf ziehen.</li>
207<li>Pflichtangaben, Bearbeitungsarten und Verzweigungen konfigurieren.</li>
208<li>Optional ein aktives Binding als <code>modul|bind_key</code> zuordnen.</li>
209<li>Speichern, aktivieren und über dbxWorkflow vollständig testen.</li>
211<p>Die JSON-Definition wird automatisch erzeugt. Änderungen gelten für neu gestartete Instanzen.</p>
213'admin-help-workflow-binds' => <<<'HTML'
214<h4>Modul-Bindings</h4>
215<p>Bindings verbinden Workflows deklarativ mit DD, FD, Templates und Finish-Logik eines Fachmoduls.</p>
217<li>Modul + DD mit dem Generator als Grundgerüst scannen.</li>
218<li>record, needs und finish fachlich prüfen.</li>
219<li>Aktivieren und im Workflow als <code>bind_ref = modul|bind_key</code> referenzieren.</li>
222'admin-help-workflow-bind-edit' => <<<'HTML'
224<p><code>record</code> beschreibt DD und Datensatz-ID, <code>needs</code> Auswahl/Vorbelegung/Kontext und <code>finish</code> die erlaubte Fachänderung.</p>
225<p>Generatorergebnis immer auf Feldnamen, Rechte, Filter und Folgeaktionen prüfen.</p>
227'admin-help-workflow-instances' => <<<'HTML'
229<p>Laufende und abgeschlossene Workflow-Durchläufe mit Status, Schritt und Fortschritt.</p>
230<p>Neue Instanzen verwenden den beim Start gespeicherten Definitions-Snapshot. Letzte Meldung und Fachstatus vor einem Neustart prüfen.</p>
232'admin-help-workflow-install' => <<<'HTML'
234<p>Synchronisiert die Workflow-DDs und ergänzt fehlende Demo-Definitionen und Standard-Bindings.</p>
235<p>Bestehende, im Admin bearbeitete Definitionen und Bindings werden nicht durch PHP-Vorgaben überschrieben.</p>
237'admin-help-workflow-use' => <<<'HTML'
238<h4>Workflow starten</h4>
239<p>Ziel und Beschreibung prüfen. Jeder Start erzeugt eine neue Instanz mit eigenem Definitions-Snapshot.</p>
240<p>Für einen vorhandenen Durchlauf den Fortsetzen-Link nutzen. Unbekannte oder deaktivierte Keys werden nicht ersetzt.</p>
242'admin-help-workflow-run' => <<<'HTML'
243<h4>Workflow ausführen</h4>
244<p>Aktuellen Schritt bearbeiten, Fachmodul-Aktionen dort speichern und anschließend im Workflow bestätigen.</p>
245<p>Prüfung und Schrittnavigation zeigen vollständige, offene und gesperrte Angaben. Erst nach erfolgreichem Review und Finish ist der Durchlauf fertig.</p>
247'admin-help-content' => <<<'HTML'
249<p>Seitenbaum, Editor, Medien und Permalinks für dbxContent.</p>
250<div class=
"help-flow">Ordner → Seite wählen → Inhalt bearbeiten → Speichern → Vorschau
251Cache wird bei Save invalidiert.</div>
254<li>Links: Baum (Ordner/Seiten)</li>
255<li>Mitte: Editor + Module auf Seite</li>
256<li>Rechts: Meta, Medien, Einstellungen</li>
259'admin-help-
user-admin' => <<<'HTML'
260<h4>Benutzer-Grid</h4>
261<p>Tabulator-Grid für schnelle Bearbeitung von Benutzern und Gruppen.</p>
263<li>Autosave optional aktivieren.</li>
264<li>Neuer Benutzer öffnet Formular im Fenster (openWin).</li>
265<li>Gruppen-Rechte steuern Modulzugriff.</li>
275 if (str_starts_with(
$file,
'admin-help-workflow-') && is_file(
$dir .
$file .
'.htm')) {
282echo
'Created ' .
$written .
' help templates; preserved ' .
$preserved .
" workflow templates.\n";
user($key='id')
Liest einen Wert des aktuellen Benutzers.
if(preg_match('/core\.js\? foreach[^"\']*v=(\d+)/', $designTemplate, $assetMatch) !== 1 || !str_contains($shopReference, 'dbxapp-Asset-Version ' . $assetMatch[1])) foreach (array( 'reference\\archive', 'provision_docs_content.php', 'dbxSelfTest') as $needle)(array('Installation'=> $installation, 'Installations-Tutorial'=> $installationTutorial, 'SelfTest'=> $selfTest) as $label=> $html)
DBX schema administration.