feat: module Garage — véhicules, entretiens, pièces (intégration GarageManager)
Deploy to Pacha Family / deploy (push) Failing after 3s

- modules/garage/api.php : API REST MySQL (vehicles, maintenances, parts, stats, photos)
- modules/garage/assets/garage.css + garage.js : UI adaptée (chemins API mis à jour)
- garage.php : page principale avec header/footer HouseHub + i18n
- docker/schema_family.sql : tables pf_vehicles, pf_maintenances, pf_parts
- docker-compose.yml : volume househub_uploads pour photos
- includes/lang/fr|ca|en.php : ~50 clés de traduction garage
- header.php : lien Garage dans nav desktop + mobile
- settings.php : module garage dans les toggles
- README.md : tableau des modules + mise à jour description

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
perco
2026-05-11 15:57:24 +02:00
co-authored by Claude Sonnet 4.6
parent f6de4918bd
commit 62eabfb5ee
12 changed files with 1388 additions and 6 deletions
+53 -2
View File
@@ -544,5 +544,56 @@ return [
'gift_filter_all_adults' => 'Tots els adults',
'gift_empty_state_no_gifts' => 'Cap regal de moment.',
'gift_empty_state_no_filter' => 'Cap regal correspon al filtre.',
'gift_view_matrix' => 'Veure la matriu detallada',
];
// ==========================================
// GARAGE MANAGER
// ==========================================
'menu_garage' => 'Garatge',
'garage_page_title' => 'HouseHub - Garatge',
'garage_stat_vehicles' => 'Vehicles',
'garage_stat_maintenances' => 'Manteniments',
'garage_stat_parts' => 'Peces',
'garage_stat_cost' => 'Cost total',
'garage_my_vehicles' => 'Els meus vehicles',
'garage_reminders' => 'Recordatoris i propers manteniments',
'garage_vehicles_title' => 'Els meus vehicles',
'garage_all_parts' => 'Totes les peces',
'garage_parts_count' => 'peces',
'garage_maintenances' => 'Manteniments',
'garage_parts' => 'Peces',
'garage_add' => 'Afegir',
'garage_add_vehicle' => 'Afegir un vehicle',
'garage_add_maintenance' => 'Afegir un manteniment',
'garage_add_part' => 'Afegir una peça',
'garage_vehicle_name' => 'Nom del vehicle',
'garage_brand' => 'Marca',
'garage_model' => 'Model',
'garage_year' => 'Any',
'garage_plate' => 'Matrícula',
'garage_fuel' => 'Combustible',
'garage_km' => 'Quilometratge actual',
'garage_color' => 'Color',
'garage_purchase_date' => 'Data de compra',
'garage_purchase_price' => 'Preu de compra (€)',
'garage_photo' => 'Foto',
'garage_notes' => 'Notes',
'garage_maint_type' => 'Tipus de manteniment',
'garage_date' => 'Data',
'garage_km_at' => 'Quilometratge en el moment',
'garage_labor_cost' => 'Cost mà d\'obra (€)',
'garage_description' => 'Descripció',
'garage_mechanic' => 'Mecànic',
'garage_garage' => 'Taller',
'garage_next_reminder' => 'Proper manteniment (recordatori)',
'garage_next_date' => 'Data prevista',
'garage_next_km' => 'Quilometratge previst',
'garage_part_name' => 'Nom de la peça',
'garage_category' => 'Categoria',
'garage_reference' => 'Referència',
'garage_unit_price' => 'Preu unitari (€)',
'garage_quantity' => 'Quantitat',
'garage_unit' => 'Unitat',
'garage_supplier' => 'Proveïdor',
'garage_change_photo' => 'Canviar la foto',
'garage_new_photo' => 'Nova foto',
'garage_update_photo' => 'Actualitzar',
];