--- phase: 12-backend-translations plan: 01 type: execute wave: 1 depends_on: [] files_modified: - plugins/golem15/quotify/lang/pl/lang.php autonomous: true must_haves: truths: - "Backend admin panel shows Polish labels when locale is PL" - "Flash messages display in Polish for PL locale" - "Validation errors appear in Polish for PL locale" artifacts: - path: "plugins/golem15/quotify/lang/pl/lang.php" provides: "Complete Polish translations for Quotify plugin" min_lines: 500 key_links: - from: "plugins/golem15/quotify/lang/pl/lang.php" to: "Lang::get('golem15.quotify::lang.*')" via: "WinterCMS translation system" pattern: "return \\[" --- Translate all Quotify plugin backend strings to Polish. Purpose: Enable Polish-speaking administrators to use the Quotify backend panel in their native language. Output: Complete lang/pl/lang.php with all 546+ translation keys in Polish. @~/.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 # Reference - Existing Polish patterns from User plugin @plugins/golem15/user/lang/pl/lang.php # Reference - Existing Polish patterns from PaymentGateway plugin @plugins/golem15/paymentgateway/lang/pl/lang.php Task 1: Create Polish translation file for Quotify plugin plugins/golem15/quotify/lang/pl/lang.php Create the Polish translation file by: 1. Create directory: plugins/golem15/quotify/lang/pl/ 2. Copy the structure from lang/en/lang.php 3. Translate ALL values to Polish while preserving: - Array structure and keys (NEVER translate keys) - Placeholder syntax (:variable, :count) - Pluralization syntax (singular|plural) Translation guidelines: - Use formal Polish (Pan/Pani form) for user-facing text - Match terminology from existing User and PaymentGateway Polish translations - "Professional" → "Fachowiec" or "Profesjonalista" (context-dependent) - "Homeowner" → "Właściciel domu" or "Zleceniodawca" - "Quote" → "Wycena" (as in PaymentGateway) - "Job Request" → "Zlecenie" or "Zapytanie o pracę" - "Trade Category" → "Kategoria usług" or "Branża" - "Review" → "Opinia" or "Recenzja" - "Verification" → "Weryfikacja" - "Team" → "Zespół" - "Service Area" → "Obszar usług" IMPORTANT: Maintain exact array structure - all keys must remain in English. php-legacy -l plugins/golem15/quotify/lang/pl/lang.php # Should return "No syntax errors detected" Polish translation file exists with all keys translated, no PHP syntax errors Task 2: Verify translation completeness plugins/golem15/quotify/lang/pl/lang.php Verify the translation is complete by: 1. Count keys in en/lang.php and pl/lang.php - should match 2. Check no English text remains in pl/lang.php values (except technical terms) 3. Verify placeholders are preserved (:variable syntax) 4. Verify pluralization syntax is correct (Polish uses different rules than English) Polish pluralization note: - Polish has 3 plural forms: one, few (2-4), many (5+) - WinterCMS uses | separator: "singular|few|many" - Example: "1 opinia|:count opinie|:count opinii" # 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/pl/lang.php', true)) . ' PL keys';" Translation file has same number of top-level keys as English, all values are in Polish Before declaring plan complete: - [ ] plugins/golem15/quotify/lang/pl/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) - Polish translation file created with all 546+ keys - PHP syntax valid - Terminology consistent with User/PaymentGateway Polish translations - Ready for backend locale switching After completion, create `.planning/phases/12-backend-translations/12-01-SUMMARY.md`