--- phase: 12-backend-translations plan: 02 type: execute wave: 1 depends_on: [] files_modified: - plugins/golem15/quotify/lang/de/lang.php autonomous: true must_haves: truths: - "Backend admin panel shows German labels when locale is DE" - "Flash messages display in German for DE locale" - "Validation errors appear in German for DE locale" artifacts: - path: "plugins/golem15/quotify/lang/de/lang.php" provides: "Complete German translations for Quotify plugin" min_lines: 500 key_links: - from: "plugins/golem15/quotify/lang/de/lang.php" to: "Lang::get('golem15.quotify::lang.*')" via: "WinterCMS translation system" pattern: "return \\[" --- Translate all Quotify plugin backend strings to German. Purpose: Enable German-speaking administrators to use the Quotify backend panel in their native language. Output: Complete lang/de/lang.php with all 546+ translation keys in German. @~/.claude/get-shit-done/workflows/execute-plan.md @~/.claude/get-shit-done/templates/summary.md @.planning/PROJECT.md @.planning/ROADMAP.md @.planning/STATE.md # Reference - English source file to translate @plugins/golem15/quotify/lang/en/lang.php Task 1: Create German translation file for Quotify plugin plugins/golem15/quotify/lang/de/lang.php Create the German translation file by: 1. Create directory: plugins/golem15/quotify/lang/de/ 2. Copy the structure from lang/en/lang.php 3. Translate ALL values to German while preserving: - Array structure and keys (NEVER translate keys) - Placeholder syntax (:variable, :count) - Pluralization syntax (singular|plural) Translation guidelines: - Use formal German (Sie form) for user-facing text - "Professional" → "Fachmann" or "Handwerker" - "Homeowner" → "Hausbesitzer" or "Auftraggeber" - "Quote" → "Angebot" or "Kostenvoranschlag" - "Job Request" → "Auftrag" or "Anfrage" - "Trade Category" → "Gewerbekategorie" or "Branche" - "Review" → "Bewertung" or "Rezension" - "Verification" → "Verifizierung" or "Prüfung" - "Team" → "Team" - "Service Area" → "Servicegebiet" or "Einsatzgebiet" IMPORTANT: Maintain exact array structure - all keys must remain in English. php-legacy -l plugins/golem15/quotify/lang/de/lang.php # Should return "No syntax errors detected" German translation file exists with all keys translated, no PHP syntax errors Task 2: Verify translation completeness plugins/golem15/quotify/lang/de/lang.php Verify the translation is complete by: 1. Count keys in en/lang.php and de/lang.php - should match 2. Check no English text remains in de/lang.php values (except technical terms) 3. Verify placeholders are preserved (:variable syntax) 4. Verify pluralization syntax is correct German pluralization note: - German has 2 plural forms: singular (1), plural (2+) - WinterCMS uses | separator: "singular|plural" - Example: "1 Bewertung|:count Bewertungen" # Compare key counts php-legacy -r "echo count(array_keys(include 'plugins/golem15/quotify/lang/en/lang.php', true)) . ' EN keys';" php-legacy -r "echo count(array_keys(include 'plugins/golem15/quotify/lang/de/lang.php', true)) . ' DE keys';" Translation file has same number of top-level keys as English, all values are in German Before declaring plan complete: - [ ] plugins/golem15/quotify/lang/de/lang.php exists - [ ] PHP syntax validation passes - [ ] All translation keys match English file - [ ] No untranslated English text in values (except technical terms) - [ ] Placeholders preserved (:variable, :count) - German translation file created with all 546+ keys - PHP syntax valid - Professional German terminology used consistently - Ready for backend locale switching After completion, create `.planning/phases/12-backend-translations/12-02-SUMMARY.md`