diff --git a/modules/backend/lang/fr/lang.php b/modules/backend/lang/fr/lang.php new file mode 100644 index 000000000..de3c3a6d4 --- /dev/null +++ b/modules/backend/lang/fr/lang.php @@ -0,0 +1,201 @@ + [ + 'invalid_type' => 'Type de champ invalide :type.', + 'options_method_not_exists' => 'The model class :model must define a method :method() returning options for the ":field" form field.', + ], + 'widget' => [ + 'not_registered' => "La classe ':name' du widget non enregistrée", + 'not_bound' => "La classe ':name' du widget n'a pas pu s'authentifier avec le controller", + ], + 'page' => [ + 'untitled' => "Sans titre", + 'access_denied' => [ + 'label' => "Accès refusé", + 'help' => "Vous n'avez pas l'autorisation pour visualiser cette page.", + 'cms_link' => "Retour à l'administration", + ], + ], + 'partial' => [ + 'not_found' => "Le partial ':name' est introuvable.", + ], + 'account' => [ + 'sign_out' => 'Déconnexion', + 'login' => 'Identifiant', + 'reset' => 'Réinitialiser', + 'restore' => 'Restaurer', + 'login_placeholder' => 'Identifiant', + 'password_placeholder' => 'Mot de passe', + 'forgot_password' => "Mot de passe oublié ?", + 'enter_email' => "Entrez votre email", + 'enter_login' => "Entrez votre identifiant", + 'email_placeholder' => "email", + 'enter_new_password' => "Entrez votre nouveau mot de passe", + 'password_reset' => "Réinitialiser le mot de passe", + 'restore_success' => "Un email contenant les instructions de réinitialisation de mot de passe a été envoyé sur l'email de votre compte.", + 'restore_error' => "A user could not be found with a login value of ':login'", + 'reset_success' => "Mot de passe réinitialisé avec succes. You may now sign in.", + 'reset_error' => "Invalid password reset data supplied. Please try again!", + 'reset_fail' => "Réinitialisation du mot de passe impossible!", + 'apply' => 'Appliquer', + 'cancel' => 'Annuler', + 'delete' => 'Delete', + 'ok' => 'OK', + ], + 'dashboard' => [ + 'menu_label' => 'Tableau de bord', + ], + 'user' => [ + 'name' => 'Administrateur', + 'menu_label' => 'Administrateurs', + 'menu_description' => 'Gérer les utilisateurs, groupes et permissions de l\'administration.', + 'list_title' => 'Gérer les administrateur', + 'new' => 'Ajouter un administrateur', + 'login' => "Identifiant", + 'first_name' => "Prénom", + 'last_name' => "Nom", + 'full_name' => "Nom complet", + 'email' => "Email", + 'groups' => "Groupes", + 'groups_comment' => "Specify which groups this person belongs to.", + 'avatar' => "Avatar", + 'password' => "Mot de passe", + 'password_confirmation' => "Confirmer le mot de passe", + 'superuser' => "Super User", + 'superuser_comment' => "Check this box to allow this person to access all areas.", + 'send_invite' => 'Envoyer une invitation par email', + 'send_invite_comment' => 'Use this checkbox to send an invitation to the user by email', + 'delete_confirm' => 'Voulez-vous vraiment supprimer cette administrateurr?', + 'return' => 'Retour à la liste des administrateurs', + 'group' => [ + 'name' => 'Groupe', + 'name_field' => 'Nom', + 'menu_label' => 'Groupes', + 'list_title' => 'Gérer les groupes', + 'new' => 'Ajouter un groupe administrateur', + 'delete_confirm' => 'Voulez-vous vraiment supprimer ce groupe administrateur?', + 'return' => 'Retour à la liste de groupe', + ], + 'preferences' => [ + 'not_authenticated' => 'There is no an authenticated user to load or save preferences for.' + ] + ], + 'list' => [ + 'default_title' => 'Liste', + 'search_prompt' => 'Rechercher...', + 'no_records' => 'There are no records in this view.', + 'missing_model' => 'List behavior used in :class does not have a model defined.', + 'missing_column' => 'There are no column definitions for :columns.', + 'missing_columns' => 'List used in :class has no list columns defined.', + 'missing_definition' => "List behavior does not contain a column for ':field'.", + 'behavior_not_ready' => 'List behavior has not been initialized, check that you have called makeLists() in your controller.', + 'invalid_column_datetime' => "Column value ':column' is not a DateTime object, are you missing a \$dates reference in the Model?", + ], + 'form' => [ + 'create_title' => "Nouveau :name", + 'update_title' => "Éditer :name", + 'preview_title' => "Aperçu :name", + 'create_success' => 'Le :name a été créé avec succès', + 'update_success' => 'Le :name a été modifié avec succès', + 'delete_success' => 'Le :name a été supprimé avec succès', + 'missing_id' => "Form record ID has not been specified.", + 'missing_model' => 'Form behavior used in :class does not have a model defined.', + 'missing_definition' => "Form behavior does not contain a field for ':field'.", + 'not_found' => 'Form record with an ID of :id could not be found.', + 'create' => 'Créer', + 'create_and_close' => 'Créer et fermer', + 'creating' => 'Création en cours...', + 'save' => 'Enregistrer', + 'save_and_close' => 'Enregistrer et fermer', + 'saving' => 'Enregistrement en cours...', + 'delete' => 'Supprimer', + 'deleting' => 'Suppression en cours...', + 'undefined_tab' => 'Misc', + 'field_off' => 'Off', + 'field_on' => 'On', + 'apply' => 'Appliquer', + 'cancel' => 'Annuler', + 'close' => 'Fermer', + 'ok' => 'OK', + 'or' => 'et', + 'confirm_tab_close' => 'Voulez-vous vraiment fermer cet onglet? Les modifications que vous avez faites seront perdues.', + 'behavior_not_ready' => 'Form behavior has not been initialized, check that you have called initForm() in your controller.', + 'preview_no_files_message' => 'Files are not uploaded', + 'select' => 'Sélectionner', + 'select_all' => 'tout', + 'select_none' => 'aucun', + ], + 'relation' => [ + 'missing_definition' => "Relation behavior does not contain a definition for ':field'.", + 'missing_model' => "Relation behavior used in :class does not have a model defined.", + 'invalid_action_single' => "This action cannot be performed on a singular relationship.", + 'invalid_action_multi' => "This action cannot be performed on a multiple relationship.", + 'add' => "Add", + 'add_name' => "Ajouter :name", + 'create' => "Créer", + 'create_name' => "Créer :name", + 'update' => "Mettre à jour", + 'update_name' => "Mise à jour :name", + 'remove' => "Remove", + 'remove_name' => "Remove :name", + 'delete' => "Supprimer", + 'delete_name' => "Suppression :name", + ], + 'model' => [ + 'name' => "Model", + 'not_found' => "Model ':class' with an ID of :id could not be found", + 'missing_id' => "There is no ID specified for looking up the model record.", + 'missing_relation' => "Model ':class' does not contain a definition for ':relation'.", + 'invalid_class' => "Model :model used in :class is not valid, it must inherit the \Model class.", + 'mass_assignment_failed' => "Mass assignment failed for Model attribute ':attribute'.", + ], + 'warnings' => [ + 'tips' => 'System configuration tips', + 'tips_description' => 'There are issues you need to pay attention to in order to configure the system properly.', + 'permissions' => 'Directory :name or its subdirectories is not writable for PHP. Please set corresponding permissions for the webserver on this directory.', + 'extension' => 'The PHP extension :name is not installed. Please install this library and activate the extension.' + ], + 'editor' => [ + 'menu_label' => 'Préférences de l\'éditeur de code', + 'menu_description' => 'Visualiser et personnaliser la configuration de l\'éditeur de code.', + 'font_size' => 'Taille de police', + 'tab_size' => 'Taille de tabulation', + 'use_hard_tabs' => 'Indentation par tabulation', + 'code_folding' => 'Code folding', + 'word_wrap' => 'Word wrap', + 'highlight_active_line' => 'Sélectionner la ligne active', + 'show_invisibles' => 'Afficher les caractères invisibles', + 'show_gutter' => 'Afficher le gutter', + 'theme' => 'Color scheme', + ], + 'tooltips' => [ + 'preview_website' => 'Aperçu du site' + ], + 'mysettings' => [ + 'menu_label' => 'Mes Paramètres', + 'menu_description' => 'Paramètres en relation avec votre compte', + ], + 'myaccount' => [ + 'menu_label' => 'Mon compte', + 'menu_description' => 'Modifier les informations de votre compte comme le nom, l\'email ou le mot de passe.', + 'menu_keywords' => 'security login' + ], + 'backend_preferences' => [ + 'menu_label' => 'Préférences de l\'administration', + 'menu_description' => 'Gérer la langue de préférence et l\'apparence de l\'administration.', + 'locale' => 'Langue', + 'locale_comment' => 'Choisir une langue.', + ], + 'access_log' => [ + 'hint' => 'This log displays a list of successful sign in attempts by administrators. Records are kept for a total of :days days.', + 'menu_label' => 'Log des accès', + 'menu_description' => 'Affiche la liste des utilisateurs connecté avec succès à l\'administration.', + 'created_at' => 'Date & heure', + 'login' => 'Identifiant', + 'ip_address' => 'Addresse IP', + 'first_name' => 'Prénom', + 'last_name' => 'Nom', + 'email' => 'Email', + ], +]; diff --git a/modules/cms/lang/fr/lang.php b/modules/cms/lang/fr/lang.php index e18721b67..3dcfbc514 100644 --- a/modules/cms/lang/fr/lang.php +++ b/modules/cms/lang/fr/lang.php @@ -15,12 +15,18 @@ return [ 'theme' => [ 'active' => [ 'not_set' => "Aucun thème activé.", + 'not_found' => "Thème activé 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." - ] + ], + 'settings_menu' => 'Front-end theme', + '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.', + 'activate_button' => 'Activer', + 'active_button' => 'Activer', ], 'page' => [ 'not_found' => [ diff --git a/modules/system/lang/fr/lang.php b/modules/system/lang/fr/lang.php new file mode 100644 index 000000000..7ee8f5759 --- /dev/null +++ b/modules/system/lang/fr/lang.php @@ -0,0 +1,209 @@ + [ + 'name' => 'October CMS', + 'motto' => 'Getting back to basics', + ], + 'locale' => [ + 'en' => 'English', + 'nl' => 'Dutch', + 'ja' => 'Japanese', + 'sv' => 'Swedish', + 'tr' => 'Turkish', + 'br' => 'Brazilian Portuguese', + 'de' => 'German', + 'ru' => 'Russian', + 'fr' => 'French', + ], + 'directory' => [ + 'create_fail' => "Impossible de créer le répertoire: :name", + ], + 'file' => [ + 'create_fail' => "Impossible de créer le fichier: :name", + ], + 'system' => [ + 'name' => 'Système', + 'menu_label' => 'Système', + ], + 'plugin' => [ + 'unnamed' => 'Plugin sans nom', + 'name' => [ + 'label' => 'Nom du plugin', + 'help' => 'Nommer le plugin avec son nom de code unique. Par exemple, RainLab.Blog', + ], + ], + 'plugins' => [ + 'manage' => 'Gérer les plugins', + 'enable_or_disable' => 'Activer ou désactiver', + 'enable_or_disable_title' => 'Activer ou désactiver les plugins', + 'remove' => 'Supprimé', + 'refresh' => 'Actualisé', + 'disabled_label' => 'Désactivé', + 'disabled_help' => 'Les plugins désactivés sont ignoré par l\'application.', + 'selected_amount' => 'Plugins selectioné: :amount', + 'remove_success' => "Successfully removed those plugins from the system.", + 'refresh_success' => "Successfully refreshed those plugins in the system.", + 'disable_success' => "Successfully disabled those plugins.", + 'enable_success' => "Successfully enabled those plugins.", + ], + 'project' => [ + 'name' => 'Projet', + 'owner_label' => 'Autheur', + 'attach' => 'Attaché un project', + 'detach' => 'Detaché le Project', + 'none' => 'Aucun', + 'id' => [ + 'label' => 'Projet ID', + 'help' => 'Comment trouver votre project ID', + 'missing' => 'Spécifier un ID de project.', + ], + 'detach_confirm' => 'Êtes-vous sûr de vouloir detaché ce projet?', + 'unbind_success' => 'Le projet a été detaché avec succès.', + ], + 'settings' => [ + 'menu_label' => 'Réglages', + 'missing_model' => 'The settings page is missing a Model definition.', + 'update_success' => 'Settings for :name have been updated successfully.', + 'return' => 'Retourner a la page des reglages système', + 'search' => 'Rechercher' + ], + 'mail' => [ + 'menu_label' => 'Configuration des emails', + 'menu_description' => 'Gérer la configuration des emails.', + 'general' => 'Generale', + 'method' => 'Mail Method', + 'sender_name' => 'Nom de l\'expéditeur', + 'sender_email' => 'Email de l\'expéditeur', + 'smtp' => 'SMTP', + 'smtp_address' => 'Adresse SMTP', + 'smtp_authorization' => 'Authorisation SMTP requise', + 'smtp_authorization_comment' => 'Use this checkbox if your SMTP server requires authorization.', + 'smtp_username' => 'Identifiant', + 'smtp_password' => 'Mot de passe', + 'smtp_port' => 'Port SMTP', + 'smtp_ssl' => 'Connection SSL requise', + 'sendmail' => 'Sendmail', + 'sendmail_path' => 'Sendmail chemin', + 'sendmail_path_comment' => 'Spécifié le chemin du programme sendmail.', + ], + 'mail_templates' => [ + 'menu_label' => 'Email modèles', + 'menu_description' => 'Gérer les modèles et layouts d\'Email envoyés par l\'administration.', + 'new_template' => 'Nouveau modèle', + 'new_layout' => 'Nouveau Layout', + 'template' => 'Modèle', + 'templates' => 'Modèles', + 'menu_layouts_label' => 'Email Layouts', + 'layout' => 'Layout', + 'layouts' => 'Layouts', + 'name' => 'Nom', + 'name_comment' => 'Unique name used to refer to this template', + 'code' => 'Code', + 'code_comment' => 'Unique code used to refer to this template', + 'subject' => 'Sujet', + 'subject_comment' => 'Email message subject', + 'description' => 'Description', + 'content_html' => 'HTML', + 'content_css' => 'CSS', + 'content_text' => 'Plaintext', + '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', + 'plugin_label' => 'Installer un plugin', + 'missing_plugin_name' => 'Please specify a Plugin name to install.', + 'install_completing' => 'Finishing installation process', + 'install_success' => 'The plugin has been installed successfully.', + ], + 'updates' => [ + 'title' => 'Gérer les mises à jour', + 'name' => 'Software update', + 'menu_label' => 'Mise à jour', + 'menu_description' => 'Mise à jour du système, gestion et installation des plugins et thèmes.', + 'check_label' => 'Vérifier les mises à jour', + 'retry_label' => 'Try again', + 'plugin_name' => 'Nom', + 'plugin_description' => 'Description', + 'plugin_version' => 'Version', + 'plugin_author' => 'Auteur', + 'core_build' => 'Current build', + 'core_build_old' => 'Current build :build', + 'core_build_new' => 'Build :build', + 'core_build_new_help' => 'Latest build is available.', + 'core_downloading' => 'Downloading application files', + 'core_extracting' => 'Unpacking application files', + 'plugin_downloading' => 'Downloading plugin: :name', + 'plugin_extracting' => 'Unpacking plugin: :name', + 'plugin_version_none' => 'New plugin', + 'plugin_version_old' => 'Actuelle v:version', + 'plugin_version_new' => 'v:version', + 'theme_label' => 'Thème', + 'theme_new_install' => 'Installation du nouveau thème.', + 'theme_downloading' => 'Téléchargement du thème: :name', + 'theme_extracting' => 'Décompression du thème: :name', + 'update_label' => 'Update software', + 'update_completing' => 'Finalisation du processus de mise à jour', + 'update_loading' => 'Loading available updates...', + 'update_success' => 'Mise à jour terminée avec succès.', + 'update_failed_label' => 'Echec de la mise à jour', + 'force_label' => 'Forcé la mise à jour', + 'found' => [ + 'label' => 'Nouvelle mise à jour disponible!', + 'help' => 'Click Update software to begin the update process.', + ], + 'none' => [ + 'label' => 'Aucune mise à jour disponible.', + 'help' => 'Aucune donnée de mise à jour applicable trouvée.', + ], + ], + 'server' => [ + 'connect_error' => 'Error connecting to the server.', + 'response_not_found' => 'The update server could not be found.', + 'response_invalid' => 'Invalid response from the server.', + 'response_empty' => 'Empty response from the server.', + 'file_error' => 'Server failed to deliver the package.', + 'file_corrupt' => 'File from server is corrupt.', + ], + 'behavior' => [ + 'missing_property' => 'Class :class must define property $:property used by :behavior behavior.', + ], + 'config' => [ + 'not_found' => 'Unable to find configuration file :file defined for :location.', + 'required' => "Configuration used in :location must supply a value ':property'.", + ], + 'zip' => [ + 'extract_failed' => "Impossible de décompresser le fichier ':file'.", + ], + 'event_log' => [ + 'hint' => 'This log displays a list of potential errors that occur in the application, such as exceptions and debugging information.', + 'menu_label' => 'Log des événements', + 'menu_description' => 'Affiche les événements du système avec la date et details.', + 'empty_link' => 'Purger le log des événements', + 'empty_loading' => 'Emptying event log...', + 'empty_success' => 'Successfully emptied the event log.', + 'return_link' => 'Retour au log événements', + 'id' => 'ID', + 'id_label' => 'événement ID', + 'created_at' => 'Date & heure', + 'message' => 'Message', + 'level' => 'Level', + ], + 'request_log' => [ + 'hint' => 'This log displays a list of browser requests that may require attention. For example, if a visitor opens a CMS page that cannot be found, a record is created with the status code 404.', + 'menu_label' => 'Log des requêtes', + 'menu_description' => 'Affiche les redirections et mauvaises requêtes, comme Page non trouvée(404).', + 'empty_link' => 'Purger le log des requêtes', + 'empty_loading' => 'Emptying request log...', + 'empty_success' => 'Successfully emptied the request log.', + 'return_link' => 'Retour au log des requêtes', + 'id' => 'ID', + 'id_label' => 'Log ID', + 'count' => 'Compteur', + 'referer' => 'Référer', + 'url' => 'URL', + 'status_code' => 'Statut', + ], +]; diff --git a/modules/system/lang/fr/validation.php b/modules/system/lang/fr/validation.php new file mode 100644 index 000000000..783396d13 --- /dev/null +++ b/modules/system/lang/fr/validation.php @@ -0,0 +1,98 @@ + "The :attribute must be accepted.", + "active_url" => "The :attribute is not a valid URL.", + "after" => "The :attribute must be a date after :date.", + "alpha" => "The :attribute may only contain letters.", + "alpha_dash" => "The :attribute may only contain letters, numbers, and dashes.", + "alpha_num" => "The :attribute may only contain letters and numbers.", + "array" => "The :attribute must be an array.", + "before" => "The :attribute must be a date before :date.", + "between" => array( + "numeric" => "The :attribute must be between :min - :max.", + "file" => "The :attribute must be between :min - :max kilobytes.", + "string" => "The :attribute must be between :min - :max characters.", + "array" => "The :attribute must have between :min - :max items.", + ), + "confirmed" => "The :attribute confirmation does not match.", + "date" => "The :attribute is not a valid date.", + "date_format" => "The :attribute does not match the format :format.", + "different" => "The :attribute and :other must be different.", + "digits" => "The :attribute must be :digits digits.", + "digits_between" => "The :attribute must be between :min and :max digits.", + "email" => "The :attribute format is invalid.", + "exists" => "The selected :attribute is invalid.", + "image" => "The :attribute must be an image.", + "in" => "The selected :attribute is invalid.", + "integer" => "The :attribute must be an integer.", + "ip" => "The :attribute must be a valid IP address.", + "max" => array( + "numeric" => "The :attribute may not be greater than :max.", + "file" => "The :attribute may not be greater than :max kilobytes.", + "string" => "The :attribute may not be greater than :max characters.", + "array" => "The :attribute may not have more than :max items.", + ), + "mimes" => "The :attribute must be a file of type: :values.", + "min" => array( + "numeric" => "The :attribute must be at least :min.", + "file" => "The :attribute must be at least :min kilobytes.", + "string" => "The :attribute must be at least :min characters.", + "array" => "The :attribute must have at least :min items.", + ), + "not_in" => "The selected :attribute is invalid.", + "numeric" => "The :attribute must be a number.", + "regex" => "The :attribute format is invalid.", + "required" => "The :attribute field is required.", + "required_if" => "The :attribute field is required when :other is :value.", + "required_with" => "The :attribute field is required when :values is present.", + "required_without" => "The :attribute field is required when :values is not present.", + "same" => "The :attribute and :other must match.", + "size" => array( + "numeric" => "The :attribute must be :size.", + "file" => "The :attribute must be :size kilobytes.", + "string" => "The :attribute must be :size characters.", + "array" => "The :attribute must contain :size items.", + ), + "unique" => "The :attribute has already been taken.", + "url" => "The :attribute format is invalid.", + + /* + |-------------------------------------------------------------------------- + | Custom Validation Language Lines + |-------------------------------------------------------------------------- + | + | Here you may specify custom validation messages for attributes using the + | convention "attribute.rule" to name the lines. This makes it quick to + | specify a specific custom language line for a given attribute rule. + | + */ + + 'custom' => array(), + + /* + |-------------------------------------------------------------------------- + | Custom Validation Attributes + |-------------------------------------------------------------------------- + | + | The following language lines are used to swap attribute place-holders + | with something more reader friendly such as E-Mail Address instead + | of "email". This simply helps us make messages a little cleaner. + | + */ + + 'attributes' => array(), + +);