# Mailadmin – Email Template System (R17 modular) Stand: 2025-08-31 ## Struktur mailadmin/ inc/ config.example.php # Deine echte config.php kommt hierhin (NICHT in public/) public/ index.php # Admin UI (helles Design) api.php # JSON API (Dual-DB + Prefix) tools/ config-doctor.php # Prüft inc/config.php db-doctor.php # Prüft DB-Verbindung assets/ css/toast.css js/ toast.js app.js # entry (type=module) api.js # API wrapper ui-tabs.js # Tabs ui-list.js # Liste + Vorschau + Löschen + Editor öffnen ui-create.js # „Neu …“ dialog ui-editor.js # Editor-Dialog + Handshake editor/ editor-core.php # LÄDT NUR LOKAL (kein CDN) bridge-core.js config.js # Bibliothek in Block-Leiste ## Vendor (lokal bereitstellen) Lege die GrapesJS-Dateien lokal ab (kein CDN): - mailadmin/public/vendor/grapesjs/grapes.min.css - mailadmin/public/vendor/grapesjs/grapes.min.js - mailadmin/public/vendor/grapesjs-preset-newsletter/grapesjs-preset-newsletter.min.js ## Datenbank Nutze `schema.sql` (inkl. *NULL‑fähiger* Fremdschlüssel & ON DELETE SET NULL). Prefix standardmäßig: `emailtemplate_`. ## Schnellstart 1) `mailadmin/inc/config.php` anlegen (siehe `config.example.php`). 2) `schema.sql` in deiner Templates-Datenbank ausführen. 3) Vendor-Dateien in `public/vendor/...` kopieren. 4) `public/tools/config-doctor.php` & `public/api.php?action=health` prüfen. 5) `public/index.php` öffnen → „Neu …“, „Vorschau“, „Im E‑Mail‑Editor öffnen“ etc.