WinterCMS research
This commit is contained in:
133
docs/research/wintercms/quotifypro-12-i18n-backend/12-01-PLAN.md
Normal file
133
docs/research/wintercms/quotifypro-12-i18n-backend/12-01-PLAN.md
Normal file
@@ -0,0 +1,133 @@
|
||||
---
|
||||
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 \\["
|
||||
---
|
||||
|
||||
<objective>
|
||||
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.
|
||||
</objective>
|
||||
|
||||
<execution_context>
|
||||
@~/.claude/get-shit-done/workflows/execute-plan.md
|
||||
@~/.claude/get-shit-done/templates/summary.md
|
||||
</execution_context>
|
||||
|
||||
<context>
|
||||
@.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
|
||||
</context>
|
||||
|
||||
<tasks>
|
||||
|
||||
<task type="auto">
|
||||
<name>Task 1: Create Polish translation file for Quotify plugin</name>
|
||||
<files>plugins/golem15/quotify/lang/pl/lang.php</files>
|
||||
<action>
|
||||
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.
|
||||
</action>
|
||||
<verify>
|
||||
php-legacy -l plugins/golem15/quotify/lang/pl/lang.php
|
||||
# Should return "No syntax errors detected"
|
||||
</verify>
|
||||
<done>Polish translation file exists with all keys translated, no PHP syntax errors</done>
|
||||
</task>
|
||||
|
||||
<task type="auto">
|
||||
<name>Task 2: Verify translation completeness</name>
|
||||
<files>plugins/golem15/quotify/lang/pl/lang.php</files>
|
||||
<action>
|
||||
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"
|
||||
</action>
|
||||
<verify>
|
||||
# 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';"
|
||||
</verify>
|
||||
<done>Translation file has same number of top-level keys as English, all values are in Polish</done>
|
||||
</task>
|
||||
|
||||
</tasks>
|
||||
|
||||
<verification>
|
||||
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)
|
||||
</verification>
|
||||
|
||||
<success_criteria>
|
||||
- Polish translation file created with all 546+ keys
|
||||
- PHP syntax valid
|
||||
- Terminology consistent with User/PaymentGateway Polish translations
|
||||
- Ready for backend locale switching
|
||||
</success_criteria>
|
||||
|
||||
<output>
|
||||
After completion, create `.planning/phases/12-backend-translations/12-01-SUMMARY.md`
|
||||
</output>
|
||||
Reference in New Issue
Block a user