feat(14-email-templates): CRUD szablonów e-mail z Quill.js + załączniki

Phase 14 complete (2 plans):
- 14-01: CRUD szablonów, Quill.js editor, system zmiennych {{grupa.pole}}, podgląd, toggle
- 14-02: Select "Załącznik nr 1" z mapą ATTACHMENT_TYPES, kolumna w liście, migracja attachment_1

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-16 23:59:25 +01:00
parent 4d091b2441
commit 2f73a940de
12 changed files with 479 additions and 25 deletions

View File

@@ -0,0 +1,91 @@
# PAUL Handoff
**Date:** 2026-03-16
**Status:** paused — checkpoint human-verify in progress
---
## READ THIS FIRST
You have no prior context. This document tells you everything.
**Project:** orderPRO — aplikacja do zarządzania zamówieniami z wielu platform
**Core value:** Sprzedawca może obsługiwać zamówienia ze wszystkich kanałów sprzedaży i nadawać przesyłki bez przełączania się między platformami.
---
## Current State
**Milestone:** v0.4 Moduł E-mail
**Phase:** 14 of 3 (in milestone) — Szablony wiadomości e-mail
**Plan:** 14-01 — APPLY in progress (checkpoint human-verify)
**Loop Position:**
```
PLAN ──▶ APPLY ──▶ UNIFY
✓ ◐ ○ [APPLY in progress — Task 1+2 done, Task 3 checkpoint awaiting approval]
```
---
## What Was Done
- Task 1: Created `EmailTemplateRepository` + `EmailTemplateController` + routes (6 endpoints)
- Task 2: Created view `email-templates.php` with Quill.js CDN editor, variable panel, preview modal, AJAX toggle
- Added sidebar link "Szablony e-mail" in `layouts/app.php`
- Compiled SCSS (modal-overlay, email-tpl-editor styles)
- Fixed 2 bugs discovered during deploy:
- `AuthService` namespace: `App\Core\Auth\AuthService``App\Modules\Auth\AuthService`
- `Flash` namespace: `App\Core\Session\Flash``App\Core\Support\Flash`
---
## What's In Progress
- **Task 3 checkpoint:human-verify** — user was testing the deployed page when session paused
- User reported 2 namespace errors which were fixed, needs to re-test
---
## What's Next
**Immediate:** User re-tests `/settings/email-templates` after namespace fixes. If approved → APPLY complete.
**After that:** Run `sonar-scanner` (required skill), then `/paul:unify .paul/phases/14-email-templates/14-01-PLAN.md`
---
## Key Files
| File | Purpose |
|------|---------|
| `.paul/STATE.md` | Live project state |
| `.paul/ROADMAP.md` | Phase overview |
| `.paul/phases/14-email-templates/14-01-PLAN.md` | Current plan |
| `src/Modules/Settings/EmailTemplateController.php` | Controller (CRUD + preview + variables) |
| `src/Modules/Settings/EmailTemplateRepository.php` | Repository (DB operations) |
| `resources/views/settings/email-templates.php` | View (list + form + Quill.js + variable panel) |
| `routes/web.php` | Routes (6 new endpoints) |
| `resources/views/layouts/app.php` | Sidebar link added |
| `resources/scss/app.scss` | Styles (modal-overlay, email-tpl-editor) |
---
## Namespace Fixes Applied
These were wrong in the initial controller and have been corrected:
- `use App\Core\Auth\AuthService``use App\Modules\Auth\AuthService`
- `use App\Core\Session\Flash``use App\Core\Support\Flash`
---
## Resume Instructions
1. Read `.paul/STATE.md` for latest position
2. Check loop position — APPLY in progress, Task 3 checkpoint
3. Run `/paul:resume` or ask user to re-test `/settings/email-templates`
4. On approval → finalize APPLY → sonar-scanner → `/paul:unify`
---
*Handoff created: 2026-03-16*