{ "packages": { "title": "Gestion des Forfaits", "subtitle": "Administration des niveaux d'abonnement — chargés depuis la base de données", "loading": "Chargement des forfaits...", "retry": "Réessayer", "create_new": "Créer un nouveau forfait", "no_packages": "Pas encore de forfaits", "no_packages_desc": "Aucun niveau d'abonnement n'a encore été créé. Cliquez sur le bouton pour créer le premier.", "create_first": "Créer le premier forfait", "popular": "Populaire", "month": "mois", "allowances": "Limites", "max_vehicles": "Max véhicules", "max_garages": "Max garages", "monthly_credits": "Crédits mensuels", "tier_level": "Niveau", "edit": "Modifier", "delete": "Supprimer", "edit_title": "Modifier le forfait", "create_title": "Créer un nouveau forfait", "cancel": "Annuler", "save": "Enregistrer", "create": "Créer", "save_success": "Modifications enregistrées", "set_as_default": "Définir par défaut", "set_as_default_success": "défini comme forfait par défaut", "delete_title": "Supprimer le forfait", "delete_confirm": "Êtes-vous sûr de vouloir désactiver \"{name}\"? Il sera caché aux utilisateurs, mais les abonnements existants resteront valides.", "delete_btn": "Désactiver", "form_name": "Nom du forfait", "form_name_placeholder": "ex. private_pro_v2", "form_display_name": "Nom d'affichage", "form_display_name_placeholder": "ex. Forfait Premium", "form_type": "Type", "type_private": "Privé", "type_corporate": "Entreprise", "form_tier_level": "Niveau", "form_tier_level_hint": "0=gratuit, 1=premium, 2=entreprise", "form_monthly_price": "Prix mensuel", "form_yearly_price": "Prix annuel", "form_currency": "Devise", "form_subtitle": "Description / Sous-titre", "form_subtitle_placeholder": "Brève description sur la carte", "form_badge": "Badge", "form_badge_placeholder": "ex. Le plus populaire", "form_is_custom": "Forfait personnalisé" }, "permissions": { "title": "Gestion des Permissions", "subtitle": "Permissions Management — Role-based access control & subscription feature flags", "loading": "Chargement des données de permissions...", "error_title": "Échec du chargement des permissions", "retry": "Réessayer", "save_changes": "Enregistrer les modifications", "discard": "Annuler", "modified_count": "{count} modification(s)", "current_tier": "Niveau actuel", "expires": "Expire", "superadmin": "Superadmin", "superadmin_desc": "Accès complet au système — gestion des utilisateurs, facturation, robots et configuration système.", "garages": "Garages", "garages_desc": "Accès au niveau garage — gestion des véhicules, réservation de services, données clients.", "feature_flags": "Feature Flags", "feature_flags_desc": "Interrupteurs de fonctionnalités d'abonnement — résolus depuis votre niveau actuel ({tier}).", "rbac_title": "Matrice de permissions RBAC", "rbac_desc": "Contrôle d'accès basé sur les rôles — quels rôles peuvent effectuer quelles actions admin.", "action": "Action", "perms": { "user_mgmt": "Gestion des utilisateurs", "billing_admin": "Administration de la facturation", "robot_config": "Configuration des robots", "system_logs": "Accès aux journaux système", "api_keys": "Gestion des clés API", "vehicle_crud": "CRUD véhicules", "service_booking": "Réservation de services", "customer_view": "Consultation des données clients", "report_export": "Export de rapports", "bulk_import": "Import en masse" } }, "garages": { "analytics": { "ltv": "Valeur à vie (LTV)", "mrr": "Revenu mensuel (MRR)", "monthly_recurring": "Revenu mensuel récurrent", "outstanding": "Impayé", "all_settled": "Toutes les factures réglées", "earned_credits": "Crédits gagnés", "contribution_xp": "XP gagné des contributions à la plateforme", "invited_companies": "Entreprises invitées", "companies_joined": "Entreprises ayant rejoint via votre invitation", "validated_garages": "Garages validés", "garages_confirmed": "Garages vérifiés avec succès", "utilization": "Utilisation", "vehicle_quota": "Quota de véhicules", "employee_quota": "Quota d'employés", "utilized": "utilisé", "marketplace_engagement": "Marketplace & Engagement", "avg_rating": "Note moyenne", "reviews": "Avis", "reviews_count": "avis", "last_activity": "Dernière activité", "last_login_mock": "Il y a 2 heures", "services_30d": "Services terminés (30 jours)" } }, "persons": { "title": "Gestion des Personnes", "subtitle": "Administration des enregistrements de personnes — chargés depuis la base de données", "loading": "Chargement des personnes...", "retry": "Réessayer", "search_placeholder": "Rechercher par nom ou téléphone...", "all_ghost_statuses": "Tous les statuts fantômes", "ghost_no": "Pas fantôme", "ghost_yes": "Fantôme", "all_active_statuses": "Tous les statuts", "active_yes": "Actif", "active_no": "Inactif", "all_user_statuses": "Toutes les connexions utilisateur", "has_user_yes": "A un utilisateur", "has_user_no": "Pas d'utilisateur", "all_merged_statuses": "Tous les statuts de fusion", "merged_no": "Non fusionné", "merged_yes": "Fusionné", "total_persons": "Personnes totales", "active_persons": "Personnes actives", "ghost_persons": "Personnes fantômes", "merged_persons": "Personnes fusionnées", "filtered_results": "Résultats filtrés", "name": "Nom", "phone": "Téléphone", "birth_date": "Date de naissance", "status": "Statut", "users_count": "Utilisateurs", "active_user": "Utilisateur actif", "address": "Adresse", "actions": "Actions", "active": "Actif", "inactive": "Inactif", "ghost": "Fantôme", "merged": "Fusionné", "view": "Voir", "no_results": "Aucun résultat trouvé avec les filtres actuels.", "showing": "Affichage", "prev": "Précédent", "next": "Suivant", "details": { "loading": "Chargement des détails de la personne...", "retry": "Réessayer", "back": "Retour aux personnes", "sales_agent": "Agent commercial", "edit": "Modifier", "profile_tab": "Profil", "users_tab": "Utilisateurs", "memberships_tab": "Adhésions", "owned_orgs_tab": "Organisations possédées", "merge_history_tab": "Historique des fusions", "personal_info": "Informations personnelles", "person_id": "ID personne", "uuid": "UUID", "last_name": "Nom de famille", "first_name": "Prénom", "birth_place": "Lieu de naissance", "mothers_name": "Nom de la mère", "mothers_last_name": "Nom de famille de la mère", "mothers_first_name": "Prénom de la mère", "address": "Adresse", "zip": "Code postal", "city": "Ville", "street": "Rue", "house_number": "Numéro", "stairwell": "Cage d'escalier", "floor": "Étage", "door": "Porte", "parcel_id": "ID parcelle", "full_address": "Adresse complète", "system_info": "Informations système", "is_sales_agent": "Agent commercial", "lifetime_xp": "XP à vie", "penalty_points": "Points de pénalité", "social_reputation": "Réputation sociale", "created_at": "Créé", "updated_at": "Mis à jour", "deleted_at": "Supprimé", "identity_docs": "Documents d'identité", "ice_contact": "Contact ICE (Urgence)", "connected_users": "Utilisateurs connectés", "users_count": "{count} utilisateur(s)", "no_users": "Aucun utilisateur connecté.", "email": "E-mail", "role": "Rôle", "status": "Statut", "plan": "Forfait", "language": "Langue", "registered_at": "Inscrit le", "memberships": "Adhésions", "memberships_count": "{count} adhésion(s)", "no_memberships": "Aucune adhésion.", "org_name": "Nom de l'organisation", "org_type": "Type d'organisation", "org_role": "Rôle", "member_status": "Statut membre", "verified": "Vérifié", "verified_yes": "Oui", "verified_no": "Non", "joined_at": "Rejoint le", "owned_orgs": "Organisations possédées", "owned_orgs_count": "{count} organisation(s)", "no_owned_orgs": "Aucune organisation possédée.", "merge_history": "Historique des fusions", "no_merge_history": "Cette personne n'a pas été fusionnée.", "merged_into": "Fusionné dans:", "merged_at": "Date de fusion", "edit_title": "Modifier la personne", "status_section": "Paramètres de statut", "is_active": "Actif", "is_ghost": "Fantôme", "cancel": "Annuler", "save": "Enregistrer", "saving": "Enregistrement...", "yes": "Oui", "no": "Non" }, "trend_title": "Tendance des inscriptions", "trend_subtitle": "Nouvelles inscriptions quotidiennes sur la période sélectionnée", "trend_7d": "7 jours", "trend_14d": "14 jours", "trend_30d": "30 jours", "trend_90d": "90 jours", "trend_no_data": "Aucune donnée disponible pour afficher la tendance.", "trend_daily": "Inscriptions quotidiennes", "trend_avg": "Moyenne", "trend_total": "Total", "trend_vs_prev": "vs période précédente" }, "users": { "title": "Gestion des Utilisateurs", "subtitle": "Liste des utilisateurs, recherche, filtres et actions groupées", "loading": "Chargement des utilisateurs...", "retry": "Réessayer", "search_placeholder": "Rechercher par email, nom ou téléphone...", "all_statuses": "Tous les statuts", "status_active": "Actif", "status_inactive": "Inactif", "status_deleted": "Supprimé", "status_banned": "Banni", "all_roles": "Tous les rôles", "role_user": "Utilisateur", "role_admin": "Admin", "role_staff": "Personnel", "role_superadmin": "Superadmin", "all_plans": "Tous les forfaits", "plan_free": "Gratuit", "plan_premium": "Premium", "plan_enterprise": "Enterprise", "total_users": "Utilisateurs totaux", "active_users": "Utilisateurs actifs", "deleted_users": "Utilisateurs supprimés", "banned_users": "Utilisateurs bannis", "new_today": "Nouveaux aujourd'hui", "filtered_results": "Résultats filtrés", "selected_count": "{count} utilisateur(s) sélectionné(s)", "bulk_activate": "Activer", "bulk_deactivate": "Désactiver", "clear_selection": "Effacer", "email": "E-mail", "name": "Nom", "role": "Rôle", "status": "Statut", "package": "Forfait", "registration": "Inscription", "language": "Langue", "actions": "Actions", "view": "Voir", "activate": "Activer", "deactivate": "Désactiver", "no_results": "Aucun utilisateur ne correspond à votre recherche.", "showing": "Affichage", "prev": "Précédent", "next": "Suivant", "details": { "loading": "Chargement des détails de l'utilisateur...", "retry": "Réessayer", "back": "Retour aux utilisateurs", "edit": "Modifier l'utilisateur", "edit_user": "Modifier l'utilisateur", "profile_tab": "Profil", "memberships_tab": "Adhésions", "account_info": "Informations du compte", "user_id": "ID utilisateur", "registration_date": "Date d'inscription", "last_login": "Dernière connexion", "ui_mode": "Mode UI", "region": "Région", "currency": "Devise", "subscription_info": "Informations d'abonnement", "subscription_expires": "Expire le", "scope_level": "Niveau de portée", "scope_id": "ID de portée", "max_vehicles": "Max véhicules", "max_garages": "Max garages", "personal_info": "Informations personnelles", "last_name": "Nom de famille", "first_name": "Prénom", "phone": "Téléphone", "birth_place": "Lieu de naissance", "birth_date": "Date de naissance", "mothers_name": "Nom de la mère", "mothers_first_name": "Prénom de la mère", "address": "Adresse", "zip": "Code postal", "city": "Ville", "street": "Rue", "house_number": "Numéro", "no_person_record": "Aucune information personnelle trouvée pour cet utilisateur.", "memberships": "Adhésions à des organisations", "memberships_count": "{count} adhésion(s)", "no_memberships": "Cet utilisateur n'est membre d'aucune organisation.", "org_name": "Organisation", "org_role": "Rôle", "member_status": "Statut", "joined_at": "Rejoint", "verified": "Vérifié", "verified_yes": "Oui", "verified_no": "Non", "preferred_language": "Langue préférée", "is_active": "Actif", "is_vip": "VIP", "cancel": "Annuler", "save": "Enregistrer les modifications", "saving": "Enregistrement..." } }, "dashboard": { "title": "Tableau de Bord", "subtitle": "Aperçu de l'administration ServiceFinder", "active_users": "Utilisateurs actifs", "total_vehicles": "Véhicules totaux", "organizations": "Organisations", "memberships": "Adhésions", "new_users": "Nouveaux utilisateurs", "new_this_month": "nouveaux ce mois-ci", "new_today": "nouveaux aujourd'hui", "new_this_week": "nouveaux cette semaine", "deleted_users": "Supprimés", "banned_users": "Bannis", "users_with_person": "Avec personne", "users_without_person": "Sans personne", "users_by_role": "Utilisateurs par rôle", "users_by_plan": "Utilisateurs par forfait", "users_by_language": "Utilisateurs par langue", "registration_trend": "Tendance des inscriptions (30 jours)", "quick_actions": "Actions rapides", "invite_admin": "Inviter un nouvel administrateur", "add_vehicle": "Ajouter un véhicule", "view_reports": "Voir les rapports de service", "recent_activity": "Activité récente", "loading": "Chargement du tableau de bord...", "error": "Échec du chargement des données du tableau de bord" }, "gamification": { "dashboard": { "title": "Gamification HQ", "subtitle": "Tableau de bord d'aperçu du système de gamification", "total_users": "Utilisateurs totaux", "active_season": "Saison active", "pending_contributions": "Contributions en attente", "xp_today": "XP gagné aujourd'hui", "quick_actions": "Actions rapides", "manage_point_rules": "Gérer les règles de points", "manage_badges": "Gérer les badges", "manage_seasons": "Gérer les saisons", "recent_ledger": "Entrées récentes du grand livre", "top_5_leaderboard": "Top 5 du classement" }, "badges": { "title": "Badges", "subtitle": "Gestion des badges — CRUD", "loading": "Chargement des badges...", "error": "Échec du chargement des badges", "create_new": "Créer un nouveau badge", "edit": "Modifier le badge", "delete": "Supprimer le badge", "name": "Nom", "description": "Description", "icon_url": "URL de l'icône", "cancel": "Annuler", "save": "Enregistrer", "create": "Créer", "delete_confirm": "Êtes-vous sûr de vouloir supprimer ce badge?", "save_success": "Badge enregistré avec succès!", "create_success": "Badge créé avec succès!", "no_badges": "Pas encore de badges. Créez-en un avec le bouton ci-dessus!" }, "competitions": { "title": "Compétitions", "subtitle": "Gestion des compétitions saisonnières", "create_new": "Créer une compétition", "filter_season": "Filtrer par saison:", "all_seasons": "Toutes les saisons", "active": "(Actif)", "loading": "Chargement des compétitions...", "error": "Échec du chargement des compétitions", "no_competitions": "Aucune compétition créée.", "create_first": "Créer la première compétition", "name": "Nom", "description": "Description", "season": "Saison", "start_date": "Date de début", "end_date": "Date de fin", "status": "Statut", "status_draft": "Brouillon", "status_active": "Actif", "status_completed": "Terminé", "status_cancelled": "Annulé", "view_rules": "Voir les règles", "edit": "Modifier", "invalid_json": "Format JSON invalide!" }, "config": { "title": "Configuration système", "subtitle": "Éditeur de configuration maître de gamification", "loading": "Chargement de la configuration...", "error": "Échec du chargement de la configuration", "last_saved": "Dernière sauvegarde:", "save": "Enregistrer la configuration", "xp_logic": "Logique XP", "conversion_logic": "Logique de conversion", "penalty_logic": "Logique de pénalité", "level_rewards": "Récompenses de niveau", "impact_calculator": "Calculateur d'impact", "raw_json_editor": "Éditeur JSON brut", "user_level": "Niveau utilisateur:", "daily_activities": "Activités quotidiennes:", "social_points": "Points sociaux:", "estimated_results": "Résultats estimés", "daily_xp": "XP quotidien", "xp_to_next_level": "XP jusqu'au prochain niveau" }, "leaderboard": { "title": "Classement", "subtitle": "Vue admin du classement de gamification", "search": "Rechercher", "search_placeholder": "Nom ou email...", "level": "Niveau", "all_levels": "Tous les niveaux", "min_xp": "XP min", "sort": "Trier", "sort_xp": "Par XP", "sort_points": "Par points", "sort_social": "Par points sociaux", "sort_level": "Par niveau", "filter": "Filtrer", "reset": "Réinitialiser", "ascending": "Croissant", "descending": "Décroissant", "rank": "#", "user": "Utilisateur", "email": "Email", "xp": "XP", "points": "Points", "social": "Social", "penalty": "Pénalité", "restriction": "Restriction", "discoveries": "Découvertes", "services": "Services", "last_modified": "Dernière modification", "actions": "Actions", "restriction_mild": "Légère", "restriction_moderate": "Modérée", "restriction_severe": "Sévère", "prev": "Précédent", "next": "Suivant", "per_page": "/ page" }, "ledger": { "title": "Grand livre des points", "subtitle": "Grand livre des points de gamification avec filtrage et journalisation détaillée", "loading": "Chargement du grand livre...", "error": "Échec du chargement du grand livre", "user_id": "ID utilisateur", "date_from": "Date de", "date_to": "Date à", "reason": "Motif (texte)", "search": "Rechercher", "clear": "Effacer", "csv": "Export CSV", "no_results": "Aucun résultat avec les filtres actuels.", "id": "ID", "user": "Utilisateur", "points": "Points", "penalty": "Pénalité", "xp": "XP", "reason_col": "Motif", "source": "Source", "date": "Date", "prev": "Précédent", "next": "Suivant", "of": "sur", "showing": "Affichage", "filtered": "(filtré)" }, "levels": { "title": "Niveaux", "subtitle": "Gestion des configurations de niveaux — CRUD", "create_new": "Créer un nouveau niveau", "level": "Niveau", "rank": "Rang", "min_points": "Points min", "type": "Type", "actions": "Actions", "type_penalty": "Pénalité", "type_normal": "Normal", "level_tree": "Diagramme des niveaux", "no_levels": "Pas encore de configurations de niveaux.", "level_number": "Numéro de niveau", "rank_name": "Nom du rang", "minimum_points": "Points minimum", "is_penalty": "Niveau de pénalité", "positive_hint": "Positif: niveau normal, Négatif: niveau de pénalité" }, "parameters": { "title": "Paramètres système", "subtitle": "Paramètres système de catégorie gamification", "loading": "Chargement des paramètres...", "key": "Clé", "value": "Valeur", "category": "Catégorie", "scope": "Portée", "scope_id": "ID de portée", "actions": "Actions", "edit": "Modifier le paramètre", "cancel": "Annuler", "save": "Enregistrer" }, "point_rules": { "title": "Règles de points", "subtitle": "Gestion des règles de points de gamification — CRUD", "create_new": "Créer une nouvelle règle de points", "action_key": "Clé d'action", "points": "Points", "description": "Description", "status": "Statut", "active": "Actif", "inactive": "Inactif", "edit": "Modifier la règle de points", "point_value": "Valeur du point", "cancel": "Annuler", "save": "Enregistrer", "delete": "Supprimer", "duplicate_key": "Une règle avec cette clé d'action existe déjà.", "save_success": "Règle de points enregistrée avec succès!", "create_success": "Règle de points créée avec succès!" }, "seasons": { "title": "Saisons", "subtitle": "Gestion des saisons de gamification", "create_new": "Créer une saison", "loading": "Chargement des saisons...", "error": "Échec du chargement des saisons", "no_seasons": "Aucune saison créée.", "create_first": "Créer la première saison", "active": "Actif", "inactive": "Inactif", "edit": "Modifier la saison", "new_season": "Nouvelle saison", "name": "Nom", "start_date": "Date de début", "end_date": "Date de fin", "activate_on_create": "Activer à la création", "activate": "Activer la saison", "activate_confirm": "Êtes-vous sûr de vouloir activer cette saison?", "save_success": "Saison enregistrée avec succès!", "create_success": "Saison créée avec succès!" }, "users": { "title": "Utilisateurs de gamification", "subtitle": "Gestion des statistiques de gamification des utilisateurs", "level": "Niveau", "all_levels": "Tous les niveaux", "min_xp": "XP min", "max_xp": "XP max", "penalty": "Pénalité", "all_penalty": "Tous", "only_penalized": "Pénalisés uniquement", "only_non_penalized": "Non pénalisés uniquement", "filter": "Filtrer", "reset": "Réinitialiser", "user_id": "ID utilisateur", "xp": "XP", "points": "Points", "restriction": "Restriction", "services": "Services", "discoveries": "Découvertes", "last_modified": "Dernière modification", "actions": "Actions", "restriction_mild": "Légère", "restriction_moderate": "Modérée", "restriction_severe": "Sévère", "restriction_none": "Aucune", "details": "Détails", "prev": "Précédent", "next": "Suivant", "user_detail_title": "Détails de gamification de l'utilisateur", "back_to_list": "Retour à la liste", "total_xp": "XP total", "total_points": "Points totaux", "social_points": "Points sociaux", "penalty_points": "Points de pénalité", "restriction_level": "Niveau de restriction", "penalty_quota": "Quota de pénalité", "banned": "Banni", "discovered_places": "Lieux découverts", "validated_places": "Lieux validés", "added_providers": "Fournisseurs ajoutés", "assign_penalty": "Attribuer une pénalité", "assign_reward": "Attribuer une récompense", "penalty_points_label": "Points de pénalité", "reason": "Motif", "xp_reward": "Récompense XP", "social_reward": "Récompense points sociaux", "apply_penalty": "Appliquer la pénalité", "apply_reward": "Appliquer la récompense", "ledger": "Grand livre des points", "entries": "entrées", "date": "Date", "source": "Source" } } }