diff --git a/modules/backend/lang/fr/lang.php b/modules/backend/lang/fr/lang.php index 58271ea19..b7b49be19 100644 --- a/modules/backend/lang/fr/lang.php +++ b/modules/backend/lang/fr/lang.php @@ -107,6 +107,7 @@ return [ 'new' => 'Ajouter un groupe d’administrateur', 'delete_confirm' => 'Confirmer la suppression de ce groupe d’administrateurs ?', 'return' => 'Retour à la liste des groupes', + 'users_count' => 'Utilisateurs' ], 'preferences' => [ 'not_authenticated' => 'Il n’y a aucun utilisateur identifié pour lequel il est possible de charger ou modifier les préférences.' diff --git a/modules/cms/lang/fr/lang.php b/modules/cms/lang/fr/lang.php index cae392e9a..6cff7c175 100644 --- a/modules/cms/lang/fr/lang.php +++ b/modules/cms/lang/fr/lang.php @@ -2,156 +2,300 @@ return [ 'cms_object' => [ - 'invalid_file' => 'Nom de fichier invalide: :name. Les noms de fichiers ne peuvent contenir que des caractères alphanumériques, des underscores, des tirets et des points. Quelques exemples de noms de fichier valides: page.htm, page, subdirectory/page', - 'invalid_property' => 'L\'attribut ":name" ne peut pas être défini', + 'invalid_file' => 'Nom de fichier invalide : :name. Les noms de fichiers ne peuvent contenir que des caractères alphanumériques, des tiret bas, des tirets et des points. Voir ces exemples de noms de fichiers valides : page.htm, page, subdirectory/page', + 'invalid_property' => 'L’attribut ":name" ne peut pas être défini', 'file_already_exists' => 'Le fichier ":name" existe déjà.', - 'error_saving' => 'Erreur lors de l\'enregistrement du fichier ":name".', + 'error_saving' => 'Erreur lors de l’enregistrement du fichier ":name".', 'error_creating_directory' => 'Erreur lors de la création du répertoire :name', - 'invalid_file_extension' => 'Extension de fichier invalide: :invalid. Les extensions autorisées sont: :allowed.', - 'error_deleting' => 'Erreur lors de la suppression du template ":name".', - 'delete_success' => 'Les templates ont été supprimés avec succès: :count.', + 'invalid_file_extension' => 'Extension de fichier invalide : :invalid. Les extensions autorisées sont : :allowed.', + 'error_deleting' => 'Erreur lors de la suppression du modèle ":name".', + 'delete_success' => 'Les modèles ont été supprimés avec succès : :count.', 'file_name_required' => 'Le nom du fichier est requis.' ], 'theme' => [ + 'not_found_name' => 'Le thème ":name" n’a pas été trouvé.', 'active' => [ - 'not_set' => "Aucun thème activé.", - 'not_found' => "Thème activé introuvable.", + 'not_set' => 'Aucun thème n’est activé.', + 'not_found' => 'Le thème activé est introuvable.', ], 'edit' => [ - 'not_set' => "Le thème d'édition n'est pas activé.", - 'not_found' => "Thème d'édition introuvable.", - 'not_match' => "L'objet auquel vous essayez d'accéder n'appartient pas au thème en cours d'édition. Veuillez recharger la page." + 'not_set' => 'Le thème de rédaction n’est pas activé.', + 'not_found' => 'Le thème de rédaction est introuvable.', + 'not_match' => 'L’objet actuellement ouvert n’appartient pas au thème en cours de modification. Merci de recharger la page.' ], - 'settings_menu' => 'Front-end theme', + 'settings_menu' => 'Frontal du thème', 'settings_menu_description' => 'Aperçu des thèmes installés et sélection du thème actif.', - 'find_more_themes' => 'Trouvez plus de thèmes sur le marketplace de OctoberCMS.', + 'default_tab' => 'Propriétés', + 'name_label' => 'Nom', + 'name_create_placeholder' => 'Nom du nouveau thème', + 'author_label' => 'Auteur', + 'author_placeholder' => 'Nom de la personne ou de la compagnie', + 'description_label' => 'Description', + 'description_placeholder' => 'Description du thème', + 'homepage_label' => 'Page d’accueil', + 'homepage_placeholder' => 'Adresse URL du site Web', + 'code_label' => 'Code', + 'code_placeholder' => 'Un nom de code unique pour la distribution de ce thème', + 'dir_name_label' => 'Nom du répertoire', + 'dir_name_create_label' => 'Le répertoire de destination du thème', + 'theme_label' => 'Thème', + 'theme_title' => 'Thèmes', 'activate_button' => 'Activer', 'active_button' => 'Activer', + 'customize_theme' => 'Personnaliser le thème', + 'customize_button' => 'Personnaliser', + 'duplicate_button' => 'Dupliquer', + 'duplicate_title' => 'Dupliquer le thème', + 'duplicate_theme_success' => 'Duplication réalisée avec succès !', + 'manage_button' => 'Gérer', + 'manage_title' => 'Gérer le thème', + 'edit_properties_title' => 'Thème', + 'edit_properties_button' => 'Modifier les propriétés', + 'save_properties' => 'Sauvegarder les propriétés', + 'import_button' => 'Importer', + 'import_title' => 'Importer le thème', + 'import_theme_success' => 'Thème importé avec succès !', + 'import_uploaded_file' => 'Fichier archive du thème', + 'import_overwrite_label' => 'Écraser les fichiers existants', + 'import_overwrite_comment' => 'Décocher cette case pour importer uniquement les nouveaux fichiers', + 'import_folders_label' => 'Répertoires', + 'import_folders_comment' => 'Sélectionner les répertoires du thème à importer', + 'export_button' => 'Exporter', + 'export_title' => 'Exporter le thème', + 'export_folders_label' => 'Répertoire', + 'export_folders_comment' => 'Sélectionner les répertoires du thème à exporter', + 'delete_button' => 'Supprimer', + 'delete_confirm' => 'Confirmer la suppression de ce thème ? Cette action est irréversible !', + 'delete_active_theme_failed' => 'Impossible de supprimer le thème actif, merci d’activer une autre thème au préalable.', + 'delete_theme_success' => 'Thème supprimé avec succès !', + 'create_title' => 'Créer un thème', + 'create_button' => 'Créer', + 'create_new_blank_theme' => 'Créer un nouveau thème vierge', + 'create_theme_success' => 'Thème créé avec succès !', + 'create_theme_required_name' => 'Saisir un nom pour ce thème.', + 'new_directory_name_label' => 'Répertoire du thème', + 'new_directory_name_comment' => 'Indiquer un nouveau nom de répertoire pour le thème en dupliqué.', + 'dir_name_invalid' => 'Le nom doit contenir uniquement des chiffres, des symboles latins et les symboles suivants : _-', + 'dir_name_taken' => 'Le nom du répertoire indiqué existe déjà.', + 'find_more_themes' => 'Trouver davantage de thèmes sur le site du CMS October.', + 'saving' => 'Sauvegarder le thème…', + 'return' => 'Retourner à la liste des thèmes', + ], + 'maintenance' => [ + 'settings_menu' => 'Maintenance', + 'settings_menu_description' => 'Paramètres de la page de maintenance et ses options.', + 'is_enabled' => 'Activer la maintenance', + 'is_enabled_comment' => 'Si activé, les visiteurs du site Web verront la page choisie ci-dessous.' ], 'page' => [ + 'not_found_name' => 'La page ":name" est introuvable', 'not_found' => [ - 'label' => "Page introuvable", - 'help' => "La page demandée est introuvable.", + 'label' => 'La page est introuvable', + 'help' => 'La page demandée est introuvable.', ], 'custom_error' => [ - 'label' => "Erreur sur la page", - 'help' => "Nous sommes désolés, un problème est survenu et la page ne peut être affichée.", + 'label' => 'Erreur sur la page', + 'help' => 'Nous sommes désolés, un problème est survenu et la page ne peut être affichée.', ], 'menu_label' => 'Pages', - 'no_list_records' => 'Aucune page trouvée', + 'unsaved_label' => 'Page(s) non sauvegardée(s)', + 'no_list_records' => 'Aucune page n’a été trouvée', 'new' => 'Nouvelle page', - 'invalid_url' => 'Format d\'URL invalide. L\'URL doit commencer par un / et peut contenit des chiffres, des lettres et les symboles suivants: ._-[]:?|/+*^$', - 'delete_confirm_multiple' => 'Voulez-vous vraiment supprimer les pages sélectionnées ?', - 'delete_confirm_single' => 'Voulez-vous vraiment supprimer cette page ?', - 'no_layout' => '-- aucun layout --' + 'invalid_url' => 'Format d’adresse URL invalide. L’adresse URL doit commencer par un / et peut contenir des chiffres, des lettres et les symboles suivants : ._-[]:?|/+*^$', + 'delete_confirm_multiple' => 'Confirmer la suppression des pages sélectionnées ?', + 'delete_confirm_single' => 'Confirmer la suppression de cette page ?', + 'no_layout' => '-- aucune maquette --' ], 'layout' => [ - 'not_found_name' => "Le layout ':name' est introuvable", - 'menu_label' => 'Layouts', - 'no_list_records' => 'Aucun layout trouvé', - 'new' => 'Nouveau layout', - 'delete_confirm_multiple' => 'Voulez-vous vraiment supprimer les layouts sélectionnés ?', - 'delete_confirm_single' => 'Voulez-vous vraiment supprimer ce layout ?' + 'not_found_name' => 'La maquette ":name" est introuvable', + 'menu_label' => 'Maquettes', + 'unsaved_label' => 'Maquette(s) non sauvegardée(s)', + 'no_list_records' => 'Aucune maquette n’a été trouvée', + 'new' => 'Nouvelle maquette', + 'delete_confirm_multiple' => 'Confirmer la suppression des maquettes sélectionnées ?', + 'delete_confirm_single' => 'Confirmer la suppression de cette maquette ?' ], 'partial' => [ - 'not_found_name' => "Le partial ':name' est introuvable.", - 'invalid_name' => "nom de partial invalide: :name.", - 'menu_label' => 'Partials', - 'no_list_records' => 'Aucun partial trouvé', - 'delete_confirm_multiple' => 'Voulez-vous vraiment supprimer les partials sélectionnés ?', - 'delete_confirm_single' => 'Voulez-vous vraiment supprimer ce partial ?', - 'new' => 'Nouveau partial' + 'not_found_name' => 'Le modèle partiel ":name" est introuvable.', + 'invalid_name' => 'Nom du modèle partiel invalide : :name.', + 'menu_label' => ' Modèles partiels', + 'unsaved_label' => 'Modèle(s) partiel(s) non sauvegardé(s)', + 'no_list_records' => 'Aucun modèle partiel n’a été trouvé', + 'delete_confirm_multiple' => 'Confirmer la suppression des modèles partiels sélectionnés ?', + 'delete_confirm_single' => 'Confirmer la suppression de ce modèle partiel ?', + 'new' => 'Nouveau modèle partiel' ], 'content' => [ - 'not_found_name' => "Le fichier de contenu ':name' est introuvable.", + 'not_found_name' => 'Le fichier de contenu ":name" est introuvable.', 'menu_label' => 'Contenu', - 'no_list_records' => 'Aucun fichier de contenu trouvé', - 'delete_confirm_multiple' => 'Voulez-vous vraiment supprimer les fichiers de contenu ou répertoires sélectionnés ?', - 'delete_confirm_single' => 'Voulez-vous vraiment supprimer ce fichier de contenu ?', + 'unsaved_label' => 'Contenu non sauvegardé', + 'no_list_records' => 'Aucun fichier de contenu n’a été trouvé', + 'delete_confirm_multiple' => 'Confirmer la suppression des fichiers de contenu ou répertoires sélectionnés ?', + 'delete_confirm_single' => 'Confirmer la suppression de ce fichier de contenu ?', 'new' => 'Nouveau fichier de contenu' ], 'ajax_handler' => [ - 'invalid_name' => "Nom de gestionnaire AJAX invalide: :name.", - 'not_found' => "Le gestionnaire AJAX ':name' est introuvable.", + 'invalid_name' => 'Nom du gestionnaire AJAX invalide : :name.', + 'not_found' => 'Le gestionnaire AJAX ":name" est introuvable.', ], 'cms' => [ - 'menu_label' => "CMS" + 'menu_label' => 'CMS' ], 'sidebar' => [ 'add' => 'Ajouter', - 'search' => 'Rechercher...' + 'search' => 'Rechercher…' ], 'editor' => [ 'settings' => 'Configuration', 'title' => 'Titre', - 'new_title' => 'Nouveau titre de page', - 'url' => 'URL', - 'filename' => 'Nom de fichier', - 'layout' => 'Layout', + 'new_title' => 'Nouveau titre de la page', + 'url' => 'Adresse URL', + 'filename' => 'Nom du fichier', + 'layout' => 'Maquette', 'description' => 'Description', 'preview' => 'Aperçu', 'meta' => 'Meta', 'meta_title' => 'Meta Titre', 'meta_description' => 'Meta Description', - 'markup' => 'Markup', + 'markup' => 'Balisage', 'code' => 'Code', 'content' => 'Contenu', 'hidden' => 'Caché', - 'hidden_comment' => 'Les pages cachées sont seulement accessibles par les administrateurs connectés.' + 'hidden_comment' => 'Les pages cachées sont seulement accessibles aux administrateurs connectés.', + 'enter_fullscreen' => 'Activer le mode plein écran', + 'exit_fullscreen' => 'Annuler le mode plein écran' ], 'asset' => [ - 'menu_label' => "Assets", - 'drop_down_add_title' => 'Ajouter...', - 'drop_down_operation_title' => 'Action...', - 'upload_files' => 'Uploader un fichier', + 'menu_label' => 'Assets', + 'unsaved_label' => 'Asset(s) non sauvegardé(s)', + 'drop_down_add_title' => 'Ajouter…', + 'drop_down_operation_title' => 'Action…', + 'upload_files' => 'Télécharger un fichier', 'create_file' => 'Créer un fichier', 'create_directory' => 'Créer un répertoire', + 'directory_popup_title' => 'Nouveau répertoire', + 'directory_name' => 'Nom du répertoire', 'rename' => 'Renommer', 'delete' => 'Supprimer', 'move' => 'Déplacer', + 'select' => 'Sélectionner', 'new' => 'Nouveau fichier', 'rename_popup_title' => 'Renommer', 'rename_new_name' => 'Nouveau nom', - 'invalid_path' => 'Le chemin ne peut contenir que des chiffres, des lettres, des espaces et les symboles suivants: ._-/', + 'invalid_path' => 'Le chemin doit contenir uniquement des chiffres, des lettres, des espaces et les symboles suivants : ._-/', 'error_deleting_file' => 'Erreur lors de la suppression du fichier :name.', - 'error_deleting_dir_not_empty' => 'Erreur lors de la suppression du répertoire :name. Le répertoire n\'est pas vide.', + 'error_deleting_dir_not_empty' => 'Erreur lors de la suppression du répertoire :name. Le répertoire n’est pas vide.', 'error_deleting_dir' => 'Erreur lors de la suppression du répertoire :name.', - 'invalid_name' => 'Le nom ne peut contenir que des chiffres, des lettres, des espaces et les symboles suivants: ._-', - 'original_not_found' => 'Le fichier original ou le répertoire est introuvable', + 'invalid_name' => 'Le nom doit contenir uniquement des chiffres, des lettres, des espaces et les symboles suivants : ._-', + 'original_not_found' => 'Le fichier original ou son répertoire est introuvable', 'already_exists' => 'Un fichier ou un répertoire avec le même nom existe déjà', - 'error_renaming' => 'Erreur lors du renommage du fichier ou du répertoire', + 'error_renaming' => 'Erreur pour renommer le fichier ou le répertoire', 'name_cant_be_empty' => 'Le nom ne peut être vide', - 'too_large' => 'Le fichier uploadé est trop grand. La taille maximum autorisée est :max_size', - 'type_not_allowed' => 'Seuls les types de fichier suivants sont autorisés: :allowed_types', + 'too_large' => 'Le fichier téléchargé est trop grand. La taille maximum autorisée est de :max_size', + 'type_not_allowed' => 'Les types de fichiers autorisés sont les suivants : :allowed_types', 'file_not_valid' => 'Fichier invalide', - 'error_uploading_file' => 'Erreur lors de l\'upload du fichier ":name": :error', - 'move_please_select' => 'veuillez sélectionner', + 'error_uploading_file' => 'Erreur lors du téléchargement du fichier ":name" : :error', + 'move_please_select' => 'Faire une sélection', 'move_destination' => 'Répertoire de destination', 'move_popup_title' => 'Déplacer les assets', 'move_button' => 'Déplacer', - 'selected_files_not_found' => 'Fichiers sélectionnés introuvables', + 'selected_files_not_found' => 'Les fichiers sélectionnés sont introuvables', 'select_destination_dir' => 'Veuillez sélectionner un répertoire de destination', 'destination_not_found' => 'Le répertoire de destination est introuvable', 'error_moving_file' => 'Erreur lors du déplacement du fichier :file', 'error_moving_directory' => 'Erreur lors du déplacement du répertoire :dir', - 'error_deleting_directory' => 'Erreur lors de la suppression du répertoire d\'origine :dir', + 'error_deleting_directory' => 'Erreur lors de la suppression du répertoire d’origine :dir', 'path' => 'Chemin' ], 'component' => [ - 'menu_label' => "Composants", - 'unnamed' => "Sans nom", - 'no_description' => "Aucune description fournie", - 'alias' => "Alias", - 'alias_description' => "Un nom unique donné lors de l\'utilisation du composant sur une page ou un layout.", - 'validation_message' => "Les alias de composant sont requis et ne peuvent contenit que des symboles latins, des chiffres et des underscores. Les alias devraient commencer par un symbole latin.", - 'invalid_request' => "Le template ne peut être enregistré à cause de données invalides d'un composant.", - 'no_records' => 'Aucun composant trouvé', - 'not_found' => "Le composant ':name' est introuvable.", - 'method_not_found' => "Le composant ':name' ne contient pas de méthode ':method'.", + 'menu_label' => 'Composants', + 'unnamed' => 'Sans nom', + 'no_description' => 'Aucune description n’a été fournie', + 'alias' => 'Alias', + 'alias_description' => 'Nom unique fourni lors de l’utilisation du composant sur une page ou une maquette.', + 'validation_message' => 'Les alias du composant sont requis et ne peuvent contenir uniquement des symboles latins, des chiffres et des tirets bas. Les alias doivent commencer par un symbole latin.', + 'invalid_request' => 'Le modèle ne peut être enregistré puisque les données d’un composant sont invalides.', + 'no_records' => 'Aucun composant n’a été trouvé', + 'not_found' => 'Le composant ":name" est introuvable.', + 'method_not_found' => 'Le composant ":name" ne contient pas de méthode ":method".', ], 'template' => [ - 'invalid_type' => "Type de template inconnu.", - 'not_found' => "Le template demandé est introuvable.", - 'saved'=> "Le template demandé a été sauvegardé avec succès." + 'invalid_type' => 'Type de modèle inconnu.', + 'not_found' => 'Le modèle demandé est introuvable.', + 'saved'=> 'Le modèle demandé a été sauvegardé avec succès.' + ], + 'permissions' => [ + 'name' => 'CMS', + 'manage_content' => 'Gérer le contenu', + 'manage_assets' => 'Gérer les assets', + 'manage_pages' => 'Gérer les pages', + 'manage_layouts' => 'Gérer les maquettes', + 'manage_partials' => 'Gérer les modèles partiels', + 'manage_themes' => 'Gérer les thèmes', + 'manage_media' => 'Gérer les médias' + ], + 'mediafinder' => [ + 'default_prompt' => 'Cliquer su le bouton %s pour trouver un média' + ], + 'media' => [ + 'invalid_path' => "Le chemin du fichier indiqué est invalide : ':path'.", + 'menu_label' => 'Média', + 'upload' => 'Télécharger', + 'move' => 'Déplacer', + 'delete' => 'Supprimer', + 'add_folder' => 'Ajouter un répertoire', + 'search' => 'Rechercher', + 'display' => 'Affichage', + 'filter_everything' => 'Tout', + 'filter_images' => 'Images', + 'filter_video' => 'Vidéo', + 'filter_audio' => 'Audio', + 'filter_documents' => 'Documents', + 'library' => 'Librairie', + 'folder_size_items' => 'Articles(s)', + 'size' => 'Taille', + 'title' => 'Titre', + 'last_modified' => 'Dernière modification', + 'public_url' => 'Adresse URL publique', + 'click_here' => 'Cliquer ici', + 'thumbnail_error' => 'Erreur durant la création de la miniature.', + 'return_to_parent' => 'Retourner au répertoire parent', + 'return_to_parent_label' => 'Monter…', + 'nothing_selected' => 'Aucun sélection.', + 'multiple_selected' => 'Plusieurs articles sélectionnés.', + 'uploading_file_num' => 'Téléchargement de :number fichier(s)…', + 'uploading_complete' => 'Téléchargement complet', + 'order_by' => 'Trier par', + 'search' => 'Rechercher', + 'folder' => 'Répertoire', + 'no_files_found' => 'Aucun fichier trouvé.', + 'delete_empty' => 'Sélectionner les articles à supprimer.', + 'delete_confirm' => 'Confirmer la suppression de ces articles ?', + 'error_renaming_file' => 'Erreur pour renommer l’article.', + 'new_folder_title' => 'Nouveau répertoire', + 'folder_name' => 'Nom du répertoire', + 'error_creating_folder' => 'Erreur durant la création du répertoire', + 'folder_or_file_exist' => 'Un répertoire ou un fichier portant ce nom existe déjà.', + 'move_empty' => 'Sélectionner les articles à déplacer.', + 'move_popup_title' => 'Déplacer des fichiers ou répertoires', + 'move_destination' => 'Répertoire de destination', + 'please_select_move_dest' => 'Sélectionner un répertoire de destination.', + 'move_dest_src_match' => 'Sélectionner un autre répertoire de destination.', + 'empty_library' => 'La librairie multimédia est vide. Pour commencer, télécharger des fichiers ou répertoires.', + 'insert' => 'Insérer', + 'crop_and_insert' => 'Copier / coller', + 'select_single_image' => 'Sélectionner une seule image.', + 'selection_not_image' => 'L’article sélectionné n’est pas une image.', + 'restore' => 'Annuler tous les changements', + 'resize' => 'Redimensionner…', + 'selection_mode_normal' => 'Normal', + 'selection_mode_fixed_ratio' => 'Rapport fixe', + 'selection_mode_fixed_size' => 'Taille fixe', + 'height' => 'Hauteur', + 'width' => 'Largeur', + 'selection_mode' => 'Mode de sélection', + 'resize_image' => 'Redimensionner l’image', + 'image_size' => 'Taille de l’image :', + 'selected_size' => 'Sélectionnée :' ] -]; +]; \ No newline at end of file diff --git a/modules/system/lang/fr/lang.php b/modules/system/lang/fr/lang.php index 0d41b3ecf..323f9f25b 100644 --- a/modules/system/lang/fr/lang.php +++ b/modules/system/lang/fr/lang.php @@ -3,20 +3,30 @@ return [ 'app' => [ 'name' => 'October CMS', - 'tagline' => 'Getting back to basics', + 'tagline' => 'Retourner à l’essentiel', ], 'locale' => [ 'en' => 'Anglais', - 'nl' => 'Néerlandais', - 'ja' => 'Japonais', - 'se' => 'Suédois', - 'tr' => 'Turque', 'de' => 'Allemand', - 'ru' => 'Russe', + 'es' => 'Espangol', + 'es-ar' => 'Espagnol (Argentine)', + 'fa' => 'Persan', 'fr' => 'Français', + 'hu' => 'Hongrois', + 'id' => 'Indonésien', + 'it' => 'Italien', + 'ja' => 'Japonais', + 'lv' => 'Letton', + 'nb-no' => 'Norvégien (Bokmål)', + 'nl' => 'Néerlandais', + 'pl' => 'Polonais', 'pt-br' => 'Portugais-Brésilien', - 'fa' => 'Persian', - 'nb-no' => 'Norvégien (Bokmål)' + 'ro' => 'Roumain', + 'ru' => 'Russe', + 'se' => 'Suédois', + 'sk' => 'Slovaque (Slovaquie)', + 'tr' => 'Turque', + 'zh-cn' => 'Chinois (Chine)' ], 'directory' => [ 'create_fail' => "Impossible de créer le répertoire : :name", @@ -25,7 +35,7 @@ return [ 'create_fail' => "Impossible de créer le fichier : :name", ], 'combiner' => [ - 'not_found' => "Le fichier combiner ':name' est introuvable.", + 'not_found' => "Le fichier combinateur ':name' est introuvable.", ], 'system' => [ 'name' => 'Système', @@ -33,18 +43,33 @@ return [ 'categories' => [ 'cms' => 'CMS', 'misc' => 'Divers', - 'logs' => 'Logs', - 'mail' => 'Email', + 'logs' => 'Journaux', + 'mail' => 'E-mail', 'shop' => 'Boutique', - 'team' => 'Equipe', + 'team' => 'Équipe', 'users' => 'Utilisateurs', 'system' => 'Système', 'social' => 'Social', - 'events' => 'Evénement', + 'events' => 'Évènements', 'customers' => 'Clients', 'my_settings' => 'Mes réglages', + ] + ], + 'theme' => [ + 'unnamed' => 'Thème sans nom', + 'name' => [ + 'label' => 'Nom du thème', + 'help' => 'Nommer le thème en usant d’un code unique. Pour exemple, RainLab.Vanilla' ], ], + 'themes' => [ + 'install' => 'Installer des thèmes', + 'search' => 'Recherche des thème à installer…', + 'installed' => 'Thèmes installés', + 'no_themes' => 'Il n’y a aucun thème installé depuis le site du CMS October.', + 'recommended' => 'Recommandé', + 'remove_confirm' => 'Confirmer la suppression de ce thème ?' + ], 'plugin' => [ 'unnamed' => 'Plugin sans nom', 'name' => [ @@ -56,15 +81,25 @@ return [ 'manage' => 'Gérer les plugins', 'enable_or_disable' => 'Activer ou désactiver', 'enable_or_disable_title' => 'Activer ou désactiver les plugins', + 'install' => 'Installer des plugins', + 'install_products' => 'Installer des produits', + 'search' => 'Recherche des plugins à installer…', + 'installed' => 'Plugins installés', + 'no_plugins' => 'Il n’y a aucun plugin installé depuis le site du CMS October.', + 'recommended' => 'Recommandé', 'remove' => 'Supprimer', 'refresh' => 'Actualiser', 'disabled_label' => 'Désactivé', - 'disabled_help' => 'Les plugins désactivés sont ignoré par l\'application.', - 'selected_amount' => 'Plugins selectionés : :amount', + 'disabled_help' => 'Les plugins désactivés sont ignorés par l’application.', + 'selected_amount' => 'Plugins sélectionnés : :amount', + 'remove_confirm' => 'Confirmer la suppression de ce plugin ?', 'remove_success' => "Les plugins ont été supprimés avec succès.", + 'refresh_confirm' => 'Confirmer ?', 'refresh_success' => "Les plugins ont été actualisés avec succès.", + 'disable_confirm' => 'Confirmer ?', 'disable_success' => "Les plugins ont été désactivés avec succès.", - 'enable_success' => "Les plugins ont correctement été activés avec succès.", + 'enable_success' => "Les plugins ont été activés avec succès.", + 'unknown_plugin' => 'Le plugin a été supprimé avec succès.' ], 'project' => [ 'name' => 'Projet', @@ -74,67 +109,82 @@ return [ 'none' => 'Aucun', 'id' => [ 'label' => 'Projet ID', - 'help' => 'Comment trouver votre project ID', - 'missing' => 'Spécifier un ID de project.', + 'help' => 'Comment trouver l’ID de son projet', + 'missing' => 'Spécifier un ID de projet.', ], - 'detach_confirm' => 'Êtes-vous sûr de vouloir detacher ce projet?', - 'unbind_success' => 'Le projet a été detaché avec succès.', + 'detach_confirm' => 'Confirmer le détachement de ce projet ?', + 'unbind_success' => 'Le projet a été détaché avec succès.', ], 'settings' => [ 'menu_label' => 'Réglages', - 'missing_model' => 'La page de réglages nécéssite une définition de modèle.', - 'update_success' => 'Les réglages pour :name ont étés correctement mis à jour.', - 'return' => 'Retourner a la page des reglages système', + 'not_found' => 'Les paramètres spécifiés sont introuvables.', + 'missing_model' => 'La page de réglages nécessite une définition de modèle.', + 'update_success' => 'Les réglages pour :name ont étés mis à jour avec succès.', + 'return' => 'Retourner à la page des réglages du système', 'search' => 'Rechercher' ], 'mail' => [ - 'menu_label' => 'Configuration des emails', - 'menu_description' => 'Gérer la configuration des emails.', - 'general' => 'Generale', - 'method' => 'Méthode d\'envoi', - 'sender_name' => 'Nom de l\'expéditeur', - 'sender_email' => 'Email de l\'expéditeur', + 'log_file' => 'Journal du fichier', + 'menu_label' => 'Configuration des adresses e-mails', + 'menu_description' => 'Gérer la configuration des adresses e-mails.', + 'general' => 'Générale', + 'method' => 'Méthode d’envoi', + 'sender_name' => 'Nom de l’expéditeur', + 'sender_email' => 'Adresse e-mail de l’expéditeur', + 'php_mail' => 'Fonction mail de PHP', 'smtp' => 'SMTP', 'smtp_address' => 'Adresse SMTP', 'smtp_authorization' => 'Authentification SMTP requise', - 'smtp_authorization_comment' => 'Cochez cette case si votre serveur SMTP nécéssite une authentification.', + 'smtp_authorization_comment' => 'Cocher cette case si le serveur SMTP nécessite une authentification.', 'smtp_username' => 'Identifiant', 'smtp_password' => 'Mot de passe', 'smtp_port' => 'Port SMTP', - 'smtp_ssl' => 'Connection SSL requise', + 'smtp_ssl' => 'Connexion SSL requise', 'sendmail' => 'Sendmail', 'sendmail_path' => 'Chemin vers Sendmail', - 'sendmail_path_comment' => 'Spécifiez le chemin du programme sendmail.', + 'sendmail_path_comment' => 'Saisir le chemin du programme Sendmail.', + 'mailgun' => 'Mailgun', + 'mailgun_domain' => 'Domaine Mailgun', + 'mailgun_domain_comment' => 'Saisir le nom de domaine Mailgun.', + 'mailgun_secret' => 'Clé secrète Mailgun', + 'mailgun_secret_comment' => 'Saisir la clé de l’API Mailgun.', + 'mandrill' => 'Mandrill', + 'mandrill_secret' => 'Clé secrète Mandrill', + 'mandrill_secret_comment' => 'Saisir la clé de l’API Mandrill.', + 'drivers_hint_header' => 'Les drivers ne sont pas installés', + 'drivers_hint_content' => 'Cette méthode d’envoi d’e-mails nécessite que le plugin ":plugin" soit installé avant de pouvoir envoyer des e-mails.' ], 'mail_templates' => [ - 'menu_label' => 'Modèles des emails', - 'menu_description' => 'Gérer les modèles et layouts des emails envoyés par l\'administration.', + 'menu_label' => 'Modèles des adresses e-mails', + 'menu_description' => 'Gérer les modèles et maquettes des adresses e-mails envoyées par l’administration.', 'new_template' => 'Nouveau modèle', - 'new_layout' => 'Nouveau Layout', + 'new_layout' => 'Nouvelle maquette', 'template' => 'Modèle', 'templates' => 'Modèles', - 'menu_layouts_label' => 'Layouts des emails', - 'layout' => 'Layout', - 'layouts' => 'Layouts', + 'menu_layouts_label' => 'Maquettes des adresses e-mails', + 'layout' => 'Maquette', + 'layouts' => 'Maquettes', 'name' => 'Nom', 'name_comment' => 'Nom unique utilisé pour identifier ce modèle', 'code' => 'Code', 'code_comment' => 'Code unique utilisé pour identifier ce modèle', 'subject' => 'Sujet', - 'subject_comment' => 'Sujet de l\'Email', + 'subject_comment' => 'Sujet de l’e-mail', 'description' => 'Description', 'content_html' => 'HTML', 'content_css' => 'CSS', - 'content_text' => 'Plaintext', + 'content_text' => 'Texte brut', 'test_send' => 'Envoyer un message de test', 'test_success' => 'Le message de test a été envoyé avec succès.', 'return' => 'Retour à la liste des modèles.' ], 'install' => [ - 'project_label' => 'Attacher un project', + 'project_label' => 'Attacher un projet', 'plugin_label' => 'Installer un plugin', - 'missing_plugin_name' => 'Merci de spécifier le nom d\'un Plugin à installer.', - 'install_completing' => 'Fin du processus d\'installation', + 'theme_label' => 'Installer un thème', + 'missing_plugin_name' => 'Saisir le nom d’un plugin à installer.', + 'missing_theme_name' => 'Saisir le nom d’un thème à installer.', + 'install_completing' => 'Fin du processus d’installation', 'install_success' => 'Le plugin a été installé avec succès.', ], 'updates' => [ @@ -152,8 +202,11 @@ return [ 'core_build_old' => 'Version actuelle :build', 'core_build_new' => 'Version :build', 'core_build_new_help' => 'Une nouvelle version est disponible.', - 'core_downloading' => 'Téléchargement des fichiers de l\'application', - 'core_extracting' => 'Décompression des fichiers de l\'application', + 'core_downloading' => 'Téléchargement des fichiers de l’application', + 'core_extracting' => 'Décompression des fichiers de l’application', + 'plugins' => 'Plugins', + 'themes' => 'Thèmes', + 'disabled' => 'Désactivé', 'plugin_downloading' => 'Téléchargement du plugin : :name', 'plugin_extracting' => 'Décompression du plugin : :name', 'plugin_version_none' => 'Nouveau plugin', @@ -165,64 +218,75 @@ return [ 'theme_extracting' => 'Décompression du thème : :name', 'update_label' => 'Mettre à jour', 'update_completing' => 'Finalisation du processus de mise à jour', - 'update_loading' => 'Chargement des mises à jour disponibles...', + 'update_loading' => 'Chargement des mises à jour disponibles…', 'update_success' => 'Mise à jour terminée avec succès.', - 'update_failed_label' => 'Echec de la mise à jour', + 'update_failed_label' => 'Échec de la mise à jour', 'force_label' => 'Forcer la mise à jour', 'found' => [ - 'label' => 'Nouvelle mise à jour disponible!', - 'help' => 'Cliquez sur Mettre à jour pour démarrer le processus.', + 'label' => 'Nouvelle mise à jour disponible !', + 'help' => 'Cliquer sur « Mettre à jour » pour démarrer le processus.', ], 'none' => [ - 'label' => 'Aucune mise à jour disponible.', - 'help' => 'Aucune donnée de mise à jour applicable trouvée.', + 'label' => 'Aucune mise à jour n’est disponible.', + 'help' => 'Aucune nouvelle mise à jour n’a été trouvée.', ], ], 'server' => [ - 'connect_error' => 'Erreur lors de la connection au serveur.', - 'response_not_found' => 'La mise à jour du serveur n\'a pas été trouvé.', + 'connect_error' => 'Erreur lors de la connexion au serveur.', + 'response_not_found' => 'La mise à jour du serveur n’a pas été trouvée.', 'response_invalid' => 'Réponse invalide du serveur.', 'response_empty' => 'Réponse vide du serveur', - 'file_error' => 'Erreur du serveur lorsqu\'il tenta de délivrer le paquet.', - 'file_corrupt' => 'Le fichier venant du serveur est corrompu.', + 'file_error' => 'Erreur du serveur lors de la transmission du paquet.', + 'file_corrupt' => 'Le fichier provenant du serveur est corrompu.', ], 'behavior' => [ - 'missing_property' => 'Class :class must define property $:property used by :behavior behavior.', + 'missing_property' => 'La classe :class doit définir la propriété $:property utilisée par le fonctionnement :behavior.', ], 'config' => [ - 'not_found' => 'Unable to find configuration file :file defined for :location.', - 'required' => "Configuration used in :location must supply a value ':property'.", + 'not_found' => 'Impossible de trouver le fichier de configuration :file défini dans :location.', + 'required' => "La configuration utilisée dans :location doit fournir une valeur ':property'.", ], 'zip' => [ 'extract_failed' => "Impossible de décompresser le fichier ':file'.", ], 'event_log' => [ - 'hint' => 'Ce journal affiche une liste des erreurs potentielles dans l\'application, telle que des exceptions et des informations de déboggage.', - 'menu_label' => 'Journal des événements', - 'menu_description' => 'Affiche les événements du système avec la date et details.', - 'empty_link' => 'Vider le journal des événements', - 'empty_loading' => 'Vidage du journal des évènements...', - 'empty_success' => 'Le journal des évènement a été vidé avec succès.', - 'return_link' => 'Retour au journal des événements', + 'hint' => 'Ce journal affiche une liste des erreurs potentielles dans l’application, telles que les exceptions et les informations de débogage.', + 'menu_label' => 'Journal des évènements', + 'menu_description' => 'Affiche les évènements du système comprenant la date et les détails.', + 'empty_link' => 'Purger le journal des évènements', + 'empty_loading' => 'Purge du journal des évènements…', + 'empty_success' => 'Le journal des évènements a été purgé avec succès.', + 'return_link' => 'Retour au journal des évènements', 'id' => 'ID', - 'id_label' => 'événement ID', + 'id_label' => 'ID de l’évènement', 'created_at' => 'Date & heure', 'message' => 'Message', - 'level' => 'Level', + 'level' => 'Niveau', ], 'request_log' => [ - 'hint' => 'Ce journal affiche une liste de requêtes potentiellement suspectes. par exemple, si un visiteur ouvre une page de CMS introuvable, une ligne avec le status code 404 est alors crée.', + 'hint' => 'Ce journal affiche une liste de requêtes potentiellement suspectes. par exemple, si un visiteur ouvre une page introuvable du CMS, une ligne avec le statut code 404 est alors créée.', 'menu_label' => 'Journal des requêtes', 'menu_description' => 'Affiche les requêtes erronées ou redirigées, comme les erreurs 404.', - 'empty_link' => 'Vider le journal des requêtes', - 'empty_loading' => 'Vidage du journal des requêtes...', - 'empty_success' => 'Le journal des requêtes a été vidé avec succès.', + 'empty_link' => 'Purger le journal des requêtes', + 'empty_loading' => 'Purge du journal des requêtes…', + 'empty_success' => 'Le journal des requêtes a été purgé avec succès.', 'return_link' => 'Retour au journal des requêtes', 'id' => 'ID', - 'id_label' => 'Log ID', + 'id_label' => 'ID du journal', 'count' => 'Compteur', - 'referer' => 'Référer', - 'url' => 'URL', + 'referer' => 'Référents', + 'url' => 'Adresse URL', 'status_code' => 'Statut', ], -]; + 'permissions' => [ + 'name' => 'Système', + 'manage_system_settings' => 'Gérer les paramètres du système', + 'manage_software_updates' => 'Gérer les mises à jour du logiciel', + 'access_logs' => 'Voir les journaux système', + 'manage_mail_templates' => 'Gérer les modèles des e-mails', + 'manage_mail_settings' => 'Gérer les paramètres e-mail', + 'manage_other_administrators' => 'Gérer les autres paramètres administrateur', + 'view_the_dashboard' => 'Voir le tableau de bord', + 'manage_branding' => 'Personnaliser l’interface d’administration' + ] +]; \ No newline at end of file diff --git a/modules/system/lang/fr/validation.php b/modules/system/lang/fr/validation.php index 714e17fc9..48a68e53a 100644 --- a/modules/system/lang/fr/validation.php +++ b/modules/system/lang/fr/validation.php @@ -13,61 +13,61 @@ return array( | */ - "accepted" => "Le :attribute doit être accepté.", - "active_url" => "Le :attribute n'est pas une URL valide.", - "after" => "Le :attribute doit être une date après le :date.", - "alpha" => "Le :attribute ne peut contenir que des lettres.", - "alpha_dash" => "Le :attribute ne peut contenir que des lettres, des chiffres et des tirets.", - "alpha_num" => "Le :attribute ne peut contenir que des lettres et des chiffres.", - "array" => "Le :attribute doit être un groupe.", - "before" => "Le :attribute doit être une date avant le :date.", + "accepted" => 'Le :attribute doit être accepté.', + "active_url" => 'Le :attribute n’est pas une URL valide.', + "after" => 'Le :attribute doit être une date après le :date.', + "alpha" => 'Le :attribute ne peut contenir que des lettres.', + "alpha_dash" => 'Le :attribute ne peut contenir que des lettres, des chiffres et des tirets.', + "alpha_num" => 'Le :attribute ne peut contenir que des lettres et des chiffres.', + "array" => 'Le :attribute doit être un groupe.', + "before" => 'Le :attribute doit être une date avant le :date.', "between" => array( - "numeric" => "Le :attribute doit être compris entre :min - :max.", - "file" => "Le :attribute doit être compris entre :min - :max kilobytes.", - "string" => "Le :attribute doit être compris entre :min - :max caractères.", - "array" => "Le :attribute doit être compris entre :min - :max objets.", + "numeric" => 'Le :attribute doit être compris entre :min - :max.', + "file" => 'Le :attribute doit être compris entre :min - :max kilooctets.', + "string" => 'Le :attribute doit être compris entre :min - :max caractères.', + "array" => 'Le :attribute doit être compris entre :min - :max objets.', ), - "confirmed" => "Le :attribute de confirmation ne correspond pas.", - "date" => "Le :attribute n'est pas une date valide.", - "date_format" => "Le :attribute ne correspond pas au format :format.", - "different" => "Le :attribute et :other doivent être différents.", - "digits" => "Le :attribute doit être de :digits chiffres.", - "digits_between" => "Le :attribute doit être compris entre :min et :max chiffres.", - "email" => "Le format de l':attribute n'est pas valide.", - "exists" => "Le :attribute sélectionné n'est pas valide.", - "image" => "Le :attribute doit être une image.", - "in" => "Le :attribute sélectionné n'est pas valide.", - "integer" => "Le :attribute doit être un entier.", - "ip" => "Le :attribute doit être une adresse IP valide.", + "confirmed" => 'Le :attribute de confirmation ne correspond pas.', + "date" => 'Le :attribute n’est pas une date valide.', + "date_format" => 'Le :attribute ne correspond pas au format :format.', + "different" => 'Le :attribute et :other doivent être différents.', + "digits" => 'Le :attribute doit être de :digits chiffres.', + "digits_between" => 'Le :attribute doit être compris entre :min et :max chiffres.', + "email" => 'Le format de l’:attribute n’est pas valide.', + "exists" => 'Le :attribute sélectionné n’est pas valide.', + "image" => 'Le :attribute doit être une image.', + "in" => 'Le :attribute sélectionné n’est pas valide.', + "integer" => 'Le :attribute doit être un entier.', + "ip" => 'Le :attribute doit être une adresse IP valide.', "max" => array( - "numeric" => "Le :attribute ne peut pas être supérieure à :max.", - "file" => "Le :attribute ne peut pas être supérieure à :max kilobytes.", - "string" => "Le :attribute ne peut pas être supérieure à :max caractères.", - "array" => "Le :attribute ne peut pas être supérieure à :max objets.", + "numeric" => 'Le :attribute ne peut pas être supérieure à :max.', + "file" => 'Le :attribute ne peut pas être supérieure à :max kilooctets.', + "string" => 'Le :attribute ne peut pas être supérieure à :max caractères.', + "array" => 'Le :attribute ne peut pas être supérieure à :max objets.', ), - "mimes" => "Le :attribute doit être un fichier de type: :values.", + "mimes" => 'Le :attribute doit être un fichier de type: :values.', "min" => array( - "numeric" => "Le :attribute doit être au minimum de :min.", - "file" => "Le :attribute doit être au minimum de :min kilobytes.", - "string" => "Le :attribute doit être au minimum de :min caractères.", - "array" => "Le :attribute doit être au minimum de :min objets.", + "numeric" => 'Le :attribute doit être au minimum de :min.', + "file" => 'Le :attribute doit être au minimum de :min kilooctets.', + "string" => 'Le :attribute doit être au minimum de :min caractères.', + "array" => 'Le :attribute doit être au minimum de :min objets.', ), - "not_in" => "Le :attribute sélectionné n'est pas valide.", - "numeric" => "Le :attribute doit être un nombre.", - "regex" => "Le format de l':attribute n'est pas valide.", - "required" => "Le champ: :attribute est obligatoire.", - "required_if" => "Le champ: :attribute est obligatoire quand :other est :value.", - "required_with" => "Le champ: :attribute est obligatoire quand :values est présent.", - "required_without" => "Le champ: :attribute est obligatoire quand :values est absent.", - "same" => "Le :attribute et :other doivent correspondre.", + "not_in" => 'Le :attribute sélectionné n’est pas valide.', + "numeric" => 'Le :attribute doit être un nombre.', + "regex" => 'Le format de l’:attribute n’est pas valide.', + "required" => 'Le champ: :attribute est obligatoire.', + "required_if" => 'Le champ: :attribute est obligatoire quand :other est :value.', + "required_with" => 'Le champ: :attribute est obligatoire quand :values est présent.', + "required_without" => 'Le champ: :attribute est obligatoire quand :values est absent.', + "same" => 'Le :attribute et :other doivent correspondre.', "size" => array( - "numeric" => "Le :attribute doit être de :size.", - "file" => "Le :attribute doit être de :size kilobytes.", - "string" => "Le :attribute doit être de :size caractères.", - "array" => "Le :attribute doit contenir :size objets.", + "numeric" => 'Le :attribute doit être de :size.', + "file" => 'Le :attribute doit être de :size kilooctets.', + "string" => 'Le :attribute doit être de :size caractères.', + "array" => 'Le :attribute doit contenir :size objets.', ), - "unique" => "Le :attribute a déjà été pris.", - "url" => "Le format de l':attribute n'est pas valide.", + "unique" => 'Le :attribute a déjà été pris.', + "url" => 'Le format de l’:attribute n’est pas valide.', /* |-------------------------------------------------------------------------- @@ -95,4 +95,4 @@ return array( 'attributes' => array(), -); +); \ No newline at end of file