46 lines
1.7 KiB
Markdown
46 lines
1.7 KiB
Markdown
# 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.
|
||
|