Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion app/Http/Controllers/LanguageController.php
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ public function __construct()
*/
public function switchLang(string $lang): RedirectResponse
{
// Fallback to 'en' for any unsupported locale (e.g. /lang/fr → 'en').
// Fallback to 'en' for any unsupported locale (e.g. /lang/xx → 'en').
$locale = in_array($lang, Locale::SUPPORTED_LOCALES, true) ? $lang : 'en';

App::setLocale($locale);
Expand Down
2 changes: 1 addition & 1 deletion app/Http/Middleware/Locale.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
class Locale
{
/** Supported application locales. */
public const SUPPORTED_LOCALES = ['en', 'it', 'nl', 'zh-TW'];
public const SUPPORTED_LOCALES = ['en', 'it', 'nl', 'fr', 'zh-TW'];

/**
* Handle an incoming request.
Expand Down
23 changes: 23 additions & 0 deletions resources/lang/fr.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"Overview": "Vue générale",
"Resources": "Ressources",
"Facilities": "Installations",
"Research": "Recherche",
"Shipyard": "Chantier spatial",
"Defense": "Défense",
"Fleet": "Flotte",
"Galaxy": "Galaxie",
"Empire": "Empire",
"Alliance": "Alliance",
"Trade": "Commerce",
"Premium": "Premium",

"Player": "Joueur",
"All rights reserved.": "Tous droits réservés.",

"No fleet movement": "Aucun mouvement de flotte",

"end_of_file": "end_of_file",

"Research: do you really want to cancel :object_title level :level_target on planet :planet_name [:planet_coordinates]?": "Recherche : voulez-vous vraiment annuler :object_title niveau :level_target sur la planète :planet_name [:planet_coordinates] ?"
}
92 changes: 92 additions & 0 deletions resources/lang/fr/t_buddies.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
<?php

return [
'error' => [
'cannot_send_to_self' => 'Vous ne pouvez pas vous envoyer une demande d\'amitié.',
'user_not_found' => 'Utilisateur introuvable.',
'cannot_send_to_admin' => 'Impossible d\'envoyer des demandes d\'amis aux administrateurs.',
'cannot_send_to_user' => 'Impossible d\'envoyer une demande de contact à cet utilisateur.',
'already_buddies' => 'Vous êtes déjà amis avec cet utilisateur.',
'request_exists' => 'Une demande de contact existe déjà entre ces utilisateurs.',
'request_not_found' => 'Demande de contact introuvable.',
'not_authorized_accept' => 'Vous n\'êtes pas autorisé à accepter cette demande.',
'not_authorized_reject' => 'Vous n\'êtes pas autorisé à rejeter cette demande.',
'not_authorized_cancel' => 'Vous n\'êtes pas autorisé à annuler cette demande.',
'already_processed' => 'Cette demande a déjà été traitée.',
'relationship_not_found' => 'Relation amicale introuvable.',
'cannot_ignore_self' => 'Je ne peux pas m\'ignorer.',
'already_ignored' => 'Le joueur est déjà ignoré.',
'not_in_ignore_list' => 'Le joueur n\'est pas dans votre liste ignorée.',
'send_request_failed' => 'Échec de l\'envoi de la demande de contact.',
'ignore_player_failed' => 'Impossible d\'ignorer le joueur.',
'delete_buddy_failed' => 'Échec de la suppression du copain',
'search_too_short' => 'Trop peu de personnages ! Veuillez saisir au moins 2 caractères.',
'invalid_action' => 'Action invalide',
],
'success' => [
'request_sent' => 'Demande de contact envoyée avec succès !',
'request_cancelled' => 'La demande de contact a été annulée avec succès.',
'request_accepted' => 'Demande de copain acceptée !',
'request_rejected' => 'Demande de contact rejetée',
'request_accepted_symbol' => '✓ Demande de copain acceptée',
'request_rejected_symbol' => '✗ Demande de contact rejetée',
'buddy_deleted' => 'Mon ami a été supprimé avec succès !',
'player_ignored' => 'Joueur ignoré avec succès !',
'player_unignored' => 'Le joueur a été ignoré avec succès.',
],
'ui' => [
'page_title' => 'Amis',
'my_buddies' => 'Mes copains',
'ignored_players' => 'Joueurs ignorés',
'buddy_request' => 'demande de copain',
'buddy_request_title' => 'Demande d\'ami',
'buddy_request_to' => 'Demande d\'ami à',
'buddy_requests' => 'Demandes d\'amis',
'new_buddy_request' => 'Nouvelle demande de contact',
'write_message' => 'Écrire un message',
'send_message' => 'Envoyer un message',
'send' => 'envoyer',
'search_placeholder' => 'Recherche...',
'no_buddies_found' => 'Aucun ami trouvé',
'no_buddy_requests' => 'Vous n\'avez actuellement aucune demande d\'amis.',
'no_requests_sent' => 'Vous n\'avez envoyé aucune demande de contact.',
'no_ignored_players' => 'Aucun joueur ignoré',
'requests_received' => 'demandes reçues',
'requests_sent' => 'demandes envoyées',
'new' => 'nouveau',
'new_label' => 'Nouveau',
'from' => 'Depuis:',
'to' => 'À:',
'online' => 'en ligne',
'status_on' => 'Sur',
'status_off' => 'Désactivé',
'received_request_from' => 'Vous avez reçu une nouvelle demande de contact de',
'buddy_request_to_player' => 'Demande d\'ami au joueur',
'ignore_player_title' => 'Ignorer le joueur',
],
'action' => [
'accept_request' => 'Accepter la demande de contact',
'reject_request' => 'Rejeter la demande de contact',
'withdraw_request' => 'Retirer la demande de contact',
'delete_buddy' => 'Supprimer un ami',
'confirm_delete_buddy' => 'Voulez-vous vraiment supprimer votre copain',
'add_as_buddy' => 'Ajouter comme ami',
'ignore_player' => 'Êtes-vous sûr de vouloir ignorer',
'remove_from_ignore' => 'Supprimer de la liste des ignorés',
'report_message' => 'Signaler ce message à un opérateur de jeu ?',
],
'table' => [
'id' => 'IDENTIFIANT',
'name' => 'Nom',
'points' => 'Points',
'rank' => 'Rang',
'alliance' => 'Alliance',
'coords' => 'Coordonnées',
'actions' => 'Actes',
],
'common' => [
'yes' => 'Oui',
'no' => 'Non',
'caution' => 'Prudence',
],
];
86 changes: 86 additions & 0 deletions resources/lang/fr/t_external.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
<?php

return [
'browser_warning' => [
'title' => 'Votre navigateur n\'est pas à jour.',
'desc1' => 'Votre version d\'Internet Explorer ne correspond pas aux standards existants et n\'est plus supportée par ce site.',
'desc2' => 'Pour utiliser ce site Web, veuillez mettre à jour votre navigateur Web vers une version actuelle ou utiliser un autre navigateur Web. Si vous utilisez déjà la dernière version, veuillez recharger la page pour l\'afficher correctement.',
'desc3' => 'Voici une liste des navigateurs les plus populaires. Cliquez sur l\'un des symboles pour accéder à la page de téléchargement :',
],
'login' => [
'page_title' => 'OGame - Conquérir l\'univers',
'btn' => 'Se connecter',
'email_label' => 'Adresse email:',
'password_label' => 'Mot de passe:',
'universe_label' => 'Univers:',
'universe_option_1' => '1. Univers',
'submit' => 'Se connecter',
'forgot_password' => 'Vous avez oublié votre mot de passe ?',
'forgot_email' => 'Vous avez oublié votre adresse email ?',
'terms_accept_html' => 'Avec le login j\'accepte les <a class="" href="#" target="_blank" title="T&amp;Cs">CGV</a>',
],
'register' => [
'play_free' => 'JOUEZ GRATUITEMENT !',
'email_label' => 'Adresse email:',
'password_label' => 'Mot de passe:',
'universe_label' => 'Univers:',
'distinctions' => 'Distinctions',
'terms_html' => 'Nos <a class="" target="_blank" href="#" title="T&amp;Cs"> CGU </a> et <a class="" target="_blank" href="#" title="Privacy Policy"> Politique de confidentialité </a> s\'appliquent dans le jeu',
'submit' => 'S\'inscrire',
],
'nav' => [
'home' => 'Accueil',
'about' => 'À propos d\'OGame',
'media' => 'Médias',
'wiki' => 'Wiki',
],
'home' => [
'title' => 'OGame - Conquérir l\'univers',
'description_html' => '<em>OGame</em> est un jeu de stratégie se déroulant dans l\'espace, avec des milliers de joueurs du monde entier s\'affrontant en même temps. Vous n\'avez besoin que d\'un navigateur Web classique pour jouer.',
'board_btn' => 'Forum',
'trailer_title' => 'Bande-annonce',
],
'footer' => [
'legal' => 'Mentions légales',
'privacy_policy' => 'Politique de confidentialité',
'terms' => 'Conditions générales',
'contact' => 'Contact',
'rules' => 'Règles',
'copyright' => '© OGameX. Tous droits réservés.',
],
'js' => [
'login' => 'Se connecter',
'close' => 'Fermer',
'age_check_failed' => 'Nous sommes désolés, mais vous n\'êtes pas éligible pour vous inscrire. Veuillez consulter nos conditions générales pour plus d\'informations.',
],
'validation' => [
'required' => 'Ce champ est obligatoire',
'make_decision' => 'Prendre une décision',
'accept_terms' => 'Vous devez accepter les CGV.',
'length' => 'Entre 3 et 20 caractères autorisés.',
'pw_length' => 'Entre 4 et 20 caractères autorisés.',
'email' => 'Vous devez saisir une adresse email valide !',
'invalid_chars' => 'Contient des caractères non valides.',
'no_begin_end_underscore' => 'Votre nom ne peut pas commencer ou se terminer par un trait de soulignement.',
'no_begin_end_whitespace' => 'Votre nom ne peut pas commencer ou se terminer par un espace.',
'max_three_underscores' => 'Votre nom ne peut pas contenir plus de 3 traits de soulignement au total.',
'max_three_whitespaces' => 'Votre nom ne peut pas comporter plus de 3 espaces au total.',
'no_consecutive_underscores' => 'Vous ne pouvez pas utiliser deux ou plusieurs traits de soulignement l\'un après l\'autre.',
'no_consecutive_whitespaces' => 'Vous ne pouvez pas utiliser deux ou plusieurs espaces l\'un après l\'autre.',
'username_available' => 'Ce nom d\'utilisateur est disponible.',
'username_loading' => 'Veuillez patienter, chargement...',
'username_taken' => 'Ce nom d\'utilisateur n\'est plus disponible.',
'only_letters' => 'Utilisez uniquement des caractères.',
],
'universe_characteristics' => [
'fleet_speed' => 'Vitesse de la flotte : plus la valeur est élevée, moins il vous reste de temps pour réagir à une attaque.',
'economy_speed' => 'Vitesse économique : plus la valeur est élevée, plus les constructions et les recherches seront achevées et les ressources collectées rapidement.',
'debris_ships' => 'Certains des navires détruits au combat entreront dans le champ de débris.',
'debris_defence' => 'Certaines des structures défensives détruites au combat entreront dans le champ de débris.',
'dark_matter_gift' => 'Vous recevrez Dark Matter en récompense pour avoir confirmé votre adresse e-mail.',
'aks_on' => 'Système de combat de l\'Alliance activé',
'planet_fields' => 'Le nombre maximum d\'emplacements de construction a été augmenté.',
'wreckfield' => 'Space Dock activé : certains vaisseaux détruits peuvent être restaurés à l\'aide du Space Dock.',
'universe_big' => 'Nombre de galaxies dans l\'univers',
],
];
61 changes: 61 additions & 0 deletions resources/lang/fr/t_facilities.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
<?php

return [
'space_dock' => [
'name' => 'Quai spatial',
'description' => 'Les épaves peuvent être réparées dans le Space Dock.',
'description_long' => 'Le Space Dock offre la possibilité de réparer les navires détruits au combat et qui ont laissé des épaves. Le temps de réparation dure au maximum 12 heures, mais il faut au moins 30 minutes jusqu\'à ce que les navires puissent être remis en service.

Puisque le Space Dock flotte en orbite, il ne nécessite pas de champ planétaire.',
'requirements' => 'Nécessite le niveau 2 du chantier naval',
'field_consumption' => 'Ne consomme pas les champs planétaires (flotte en orbite)',
'wreck_field_section' => 'Champ d\'épaves',
'no_wreck_field' => 'Aucun champ d\'épave disponible à cet endroit.',
'wreck_field_info' => 'Un champ d\'épaves est disponible contenant des navires réparables.',
'ships_available' => 'Navires disponibles pour réparation : {count}',
'repair_capacity' => 'Capacité de réparation basée sur le niveau du Space Dock {level}',
'start_repair' => 'Commencer à réparer le champ d\'épave',
'repair_in_progress' => 'Réparations en cours',
'repair_completed' => 'Réparations terminées',
'deploy_ships' => 'Déployer des navires réparés',
'burn_wreck_field' => 'Champ d\'épaves brûlées',
'repair_time' => 'Temps de réparation estimé : {time}',
'repair_progress' => 'Progression de la réparation : {progress} %',
'completion_time' => 'Achèvement : {heure}',
'auto_deploy_warning' => 'Les vaisseaux seront automatiquement déployés {hours} heures après la fin de la réparation s\'ils ne sont pas déployés manuellement.',
'level_effects' => [
'repair_speed' => 'Vitesse de réparation augmentée de {bonus} %',
'capacity_increase' => 'Le nombre maximum de navires réparables a augmenté',
],
'status' => [
'no_dock' => 'Space Dock requis pour réparer les champs d\'épaves',
'level_too_low' => 'Space Dock niveau 1 requis pour réparer les champs d\'épaves',
'no_wreck_field' => 'Aucun champ d\'épave disponible',
'repairing' => 'Actuellement en réparation du champ d\'épave',
'ready_to_deploy' => 'Réparations terminées, navires prêts à être déployés',
],
],
'actions' => [
'build' => 'Construire',
'upgrade' => 'Passez au niveau {level}',
'downgrade' => 'Rétrograder au niveau {level}',
'demolish' => 'Démolir',
'cancel' => 'Annuler',
],
'requirements' => [
'met' => 'Exigences remplies',
'not_met' => 'Exigences non remplies',
'research' => 'Recherche : {exigence}',
'building' => 'Bâtiment : niveau {exigence} {niveau}',
],
'cost' => [
'metal' => 'Métal : {montant}',
'crystal' => 'Cristal : {montant}',
'deuterium' => 'Deutérium : {quantité}',
'energy' => 'Énergie : {quantité}',
'dark_matter' => 'Matière noire : {quantité}',
'total' => 'Coût total : {montant}',
],
'construction_time' => 'Temps de construction : {heure}',
'upgrade_time' => 'Heure de mise à niveau : {time}',
];
18 changes: 18 additions & 0 deletions resources/lang/fr/t_galaxy.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?php

return [
'planet' => [
'description' => [
'nearest' => 'En raison de la proximité du soleil, la collecte de l\'énergie solaire est très efficace. Cependant, les planètes dans cette position ont tendance à être petites et ne fournissent que de petites quantités de deutérium.',
'normal' => 'Normalement, dans cette Position, il y a des planètes équilibrées avec des sources suffisantes de deutérium, un bon approvisionnement en énergie solaire et suffisamment d\'espace pour le développement.',
'biggest' => 'Généralement, les plus grandes planètes du système solaire se trouvent dans cette position. Le soleil fournit suffisamment d\'énergie et on peut s\'attendre à des sources suffisantes de deutérium.',
'farthest' => 'En raison de la grande distance qui nous sépare du soleil, la collecte de l\'énergie solaire est limitée. Cependant, ces planètes fournissent généralement d’importantes sources de deutérium.',
],
],
'mission' => [
'colonize' => [
'name' => 'Coloniser',
'no_ship' => 'Il n’est pas possible de coloniser une planète sans vaisseau colonisateur.',
],
],
];
Loading
Loading