# Website Sale Aplicoop - Translations ## Language Support This module has complete translation support for **3 languages**: | Language | Code | Status | Coverage | |----------|------|--------|----------| | Spanish | `es` | ✅ Complete | 100% | | Catalan | `ca` | ✅ Complete | 100% | | Basque (Euskera) | `eu` | ✅ Complete | 100% | ## Translated Content Each `.po` file contains **388 translations** for: - **Selection Field Options** (Days of week, Recurrence periods) - Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday - Daily, Weekly, Biweekly, Monthly - **Order States** - Draft, Open, Closed, Cancelled - **Order Types** - Regular Order, Special Order, Promotional Order - **Field Labels & Help Text** - 40+ field definitions with labels, help text, and descriptions ## Usage When users switch their Odoo interface language to any of the supported languages, all UI strings will automatically display in that language. ### Example - English: "Group Order" - Spanish: "Pedido de Grupo" - Catalan: "Comanda de Grup" - Basque (Euskera): "Taldeko Eskaera" ## Translation Workflow To add or update translations: 1. Edit the corresponding `.po` file **with `polib`** (never `msgmerge`, it corrupts them) 2. Update the `msgstr` values (keep `msgid` unchanged) 3. Save and reload the module in Odoo 4. Translations apply immediately ### Adding a *new* string is not just a `.po` edit `website_sale_aplicoop.pot` is generated by Odoo and is gitignored, but it is not optional: Odoo merges every `.po` against it before importing, and polib's `merge()` drops entries the POT does not have and replaces their occurrences with the POT's. A brand new string, or an existing one that just became a view term, needs the POT regenerated (from the Odoo UI, against a database **without demo data**) before its translation applies anywhere. Three failure modes that produce no error at all — an untranslatable attribute (`data-bs-title` is not on QWeb's list, `title` is), a missing `model_terms:ir.ui.view` reference in the POT, and a missing `#. odoo-python` comment on `_()` strings — are written up in [`docs/TRANSLATIONS.md`](../../docs/TRANSLATIONS.md), under *Troubleshooting*. Example entry in a `.po` file: ```po #. module: website_sale_aplicoop msgid "Group Order" msgstr "Pedido de Grupo" # Spanish translation ``` ## Maintenance - All `.po` files were generated and tested: **40/40 tests passing** - Translation coverage: **100%** for all supported languages - Last updated: August 16, 2026 --- **Note**: The module includes English strings by default. No `en.po` file is needed as English is the source language.