More improvements in French translation.
[timetracker.git] / WEB-INF / resources / fr.lang.php
index 09f38aa..bf0534e 100644 (file)
@@ -41,70 +41,61 @@ $i18n_key_words = array(
 'menu.logout' => 'Quitter',
 'menu.forum' => 'Forum',
 'menu.help' => 'Aide',
-// Note to translators: menu.create_team needs a more accurate translation.
-// Meaning that we are now creating a "team", not a manager account. The translation should reflect that (creating a TEAM).
-// 'menu.create_team' => 'Créer un compte pour un responsable',
+'menu.create_team' => 'Créer une équipe',
 'menu.profile' => 'Profil',
 'menu.time' => 'Temps',
-// TODO: translate the following string.
-// 'menu.expenses' => 'Expenses',
+'menu.expenses' => 'Dépenses',
 'menu.reports' => 'Rapports',
 'menu.charts' => 'Graphiques',
 'menu.projects' => 'Projets',
 'menu.tasks' => 'Tâches',
-'menu.users' => 'Personnes',
+'menu.users' => 'Utilisateurs',
 'menu.teams' => 'Équipes',
-'menu.export' => 'Export',
+'menu.export' => 'Exporter',
 'menu.clients' => 'Clients',
 'menu.options' => 'Options',
 
 // Footer - strings on the bottom of most pages.
-'footer.mobile_phones' => 'Time Tracker est disponible sur les smartphones.',
-'footer.credits' => 'Credits',
+'footer.contribute_msg' => 'Vous pouvez contribuer à Time Tracker de différentes façons.',
+'footer.credits' => 'Crédits',
 'footer.license' => 'License',
+'footer.improve' => 'Contribuer', // This is a link to a webpage that describes how to contribute to the project.
 
 // Error messages.
-// TODO: translate the following string.
-// 'error.access_denied' => 'Access denied.',
+'error.access_denied' => 'Accès refusé.',
 'error.sys' => 'Erreur système.',
 'error.db' => 'Erreur de base de données.',
-'error.field' => 'Données "{0}" incorrecte.',
+'error.field' => 'Donnée "{0}" incorrecte.',
 'error.empty' => 'Le champ "{0}" est vide.',
 'error.not_equal' => 'Le champ "{0}" n\\\'est pas égal au champ "{1}".',
-// TODO: trabslate error.interval.
-// 'error.interval' => 'Field "{0}" must be greater than "{1}".',
+'error.interval' => 'Le champ "{0}" doit être supérieur à "{1}".',
 'error.project' => 'Sélectionner un projet.',
-'error.task' => 'Selectionner une tâche.',
-'error.client' => 'Selectionner un client.',
-// TODO: translate the following string.
-// 'error.report' => 'Select report.',
+'error.task' => 'Sélectionner une tâche.',
+'error.client' => 'Sélectionner un client.',
+'error.report' => 'Sélectionner un rapport.',
 'error.auth' => 'Nom d\\\'utilisateur ou mot de passe incorrect.',
-'error.user_exists' => 'Un utilisateur avec ce login existe déjà.',
+'error.user_exists' => 'Un utilisateur avec cet identifiant existe déjà.',
 'error.project_exists' => 'Un projet avec ce nom existe déjà.',
 'error.task_exists' => 'Une tâche avec ce nom existe déjà.',
 'error.client_exists' => 'Un client avec ce nom existe déjà.',
 'error.invoice_exists' => 'Une facture avec ce numéro existe déjà.',
 'error.no_invoiceable_items' => 'Il n\\\'y a pas d\\\'éléments à facturer.',
-// Note to translators: this string needs to be properly translated (e-mail replaced with login).
-// Meaning that email should not be referenced at all here. There are no user with this LOGIN (not email).
-// 'error.no_login' => 'Aucun utilisateur avec cette adresse email.',
+'error.no_login' => 'Aucun utilisateur avec cet identifiant.',
 'error.no_teams' => 'Votre base de données est vide. Connectez-vous comme administrateur et créez une nouvelle équipe.',
-'error.upload' => 'Erreur de chargement de fichier.',
-'error.period_locked' => 'Impossible de terminer l\\\'opération. Les éléments datés de plus d\\\'un certain nombre de jours ne peuvent être créés ou modifiés. Le responsable d\\\'équipe définit cela dans la valeur "Intervalle de verrouillage en jours" dans la page "Profil". Mettre à 0 pour enlever le verrou. <br><br>Les éléments non terminés (avec une durée à 0 ou vide) peuvent être supprimés.',
-'error.mail_send' => 'Erreur durant l\\\'envoi de l\\\'e-mail.',
-'error.no_email' => 'Aucun e-mail associé à ce login.',
+'error.upload' => 'Erreur de chargement du fichier.',
+'error.range_locked' => 'Plage de date vérouillée.',
+'error.mail_send' => 'Erreur lors de l\\\'envoi du courriel.',
+'error.no_email' => 'Aucune adresse courriel n\\\'est associée à cet identifiant.',
 'error.uncompleted_exists' => 'Une entrée non terminée existe déjà. Fermer ou supprimer.',
 'error.goto_uncompleted' => 'Aller à l\\\'entrée non terminée.',
-// TODO: translate the following strings.
-// 'error.overlap' => 'Time interval overlaps with existing records.',
-// 'error.future_date' => 'Date is in future.',
+'error.overlap' => 'Les heures des projets ne peuvent se chevaucher.',
+'error.future_date' => 'Date ultérieure.',
 
 // Labels for buttons.
 'button.login' => 'Connexion',
 'button.now' => 'Maintenant',
 'button.save' => 'Sauvegarder',
-// TODO: translate the following string.
-// 'button.copy' => 'Copy',
+'button.copy' => 'Copier',
 'button.cancel' => 'Annuler',
 'button.submit' => 'Soumettre',
 'button.add_user' => 'Ajouter un utilisateur',
@@ -117,31 +108,33 @@ $i18n_key_words = array(
 'button.generate' => 'Générer',
 'button.reset_password' => 'Réinitialiser',
 'button.send' => 'Envoyer',
-'button.send_by_email' => 'Envoyer par email',
+'button.send_by_email' => 'Envoyer par courriel',
 'button.create_team' => 'Créer une équipe',
 'button.export' => 'Exporter l\\\'équipe',
 'button.import' => 'Importer une équipe',
 'button.close' => 'Fermer',
-// TODO: translate the following string. 
-// 'button.stop' => 'Stop',
+'button.stop' => 'Arrêter',
 
 // Labels for controls on forms. Labels in this section are used on multiple forms.
 'label.team_name' => 'Nom équipe',
 'label.address' => 'Adresse',
 'label.currency' => 'Devise',
 'label.manager_name' => 'Nom du responsable',
-'label.manager_login' => 'Identifiant responsable',
+'label.manager_login' => 'Identifiant du responsable',
 'label.person_name' => 'Nom',
 'label.thing_name' => 'Nom',
 'label.login' => 'Identifiant',
 'label.password' => 'Mot de passe',
 'label.confirm_password' => 'Confirmez le mot de passe',
-'label.email' => 'Email',
+'label.email' => 'Adresse courriel',
+'label.cc' => 'Cc',
+'label.bcc' => 'Cci',
+'label.subject' => 'Objet',
 'label.date' => 'Date',
 'label.start_date' => 'Date de début',
 'label.end_date' => 'Date de fin',
 'label.user' => 'Utilisateur',
-'label.users' => 'Personnes',
+'label.users' => 'Utilisateurs',
 'label.client' => 'Client',
 'label.clients' => 'Clients',
 'label.option' => 'Option',
@@ -155,26 +148,23 @@ $i18n_key_words = array(
 'label.finish' => 'Fin',
 'label.duration' => 'Durée',
 'label.note' => 'Note',
-// TODO: translate label.item
-// 'label.item' => 'Item',
+'label.item' => 'Item',
 'label.cost' => 'Coût',
+'label.day_total' => 'Total quotidien',
 'label.week_total' => 'Total hebdomadaire',
-// TODO: translate the following string.
-// 'label.day_total' => 'Day total',
+'label.month_total' => 'Total mensuel',
 'label.today' => 'Aujourd\\\'hui',
-'label.total_hours' => 'Total d\\\'heures',
+'label.total_hours' => 'Total des heures',
 'label.total_cost' => 'Coût total',
-'label.view' => 'Voir',
+'label.view' => 'Visionner',
 'label.edit' => 'Modifier',
 'label.delete' => 'Supprimer',
 'label.configure' => 'Configurer',
 'label.select_all' => 'Tout sélectionner',
-'label.select_none' => 'Tout désélectionner',
+'label.select_none' => 'Aucun',
 'label.id' => 'ID',
 'label.language' => 'Langage',
-// TODO: translate the following string.
-// 'label.decimal_mark' => 'Decimal mark',
-'label.lock_interval' => 'Intervalle de verrouillage en jours',
+'label.decimal_mark' => 'Séparateur de décimale',
 'label.date_format' => 'Format date',
 'label.time_format' => 'Format heure',
 'label.week_start' => '1er jour de la semaine',
@@ -193,85 +183,85 @@ $i18n_key_words = array(
 'label.role_manager' => '(responsable)',
 'label.role_comanager' => '(co-responsable)',
 'label.role_admin' => '(administrateur)',
-
+'label.page' => 'Page',
+'label.condition' => 'Condition',
 // Labels for plugins (extensions to Time Tracker that provide additional features).
 'label.custom_fields' => 'Champs personalisés',
+'label.monthly_quotas' => 'Quotas mensuels',
 'label.type' => 'Type',
-'label.type_dropdown' => 'liste déroulante',
-'label.type_text' => 'texte',
+'label.type_dropdown' => 'Liste déroulante',
+'label.type_text' => 'Texte',
 'label.required' => 'Obligatoire',
 'label.fav_report' => 'Rapport favori',
-// TODO: translate the following strings.
-// 'label.cron_schedule' => 'Cron schedule',
-// 'label.what_is_it' => 'What is it?',
+'label.cron_schedule' => 'Horaire Cron',
+'label.what_is_it' => 'Qu\\\'est-ce que c\\\'est?',
 
 // Form titles.
 'title.login' => 'Connexion',
 'title.teams' => 'Équipes',
-// TODO: for consistency, the titles below need to be refactored. Recommended way is using nouns such as in 'Modification du projet', not 'Modifier la tâche'.
-// Notice usage of the noun Modification versus the verb Modifier.
-'title.create_team' => 'Créez une nouvelle équipe', // TODO: use a noun.
-// TODO: translate the following string.
-// 'title.edit_team' => 'Editing Team',
-'title.delete_team' => 'Suppression de l\\\'équipe',
-'title.reset_password' => 'Réinitialisation du mot de passer',
+'title.create_team' => 'Création d\\\'une nouvelle équipe',
+'title.edit_team' => 'Modification d\\\'une équipe',
+'title.delete_team' => 'Suppression d\\\'une équipe',
+'title.reset_password' => 'Réinitialisation du mot de passe',
 'title.change_password' => 'Modification du mot de passe',
 'title.time' => 'Temps',
-'title.edit_time_record' => 'Édition du l\\\'entrée de temps',
-'title.delete_time_record' => 'Supprimer l\\\'entrée de temps', // TODO: use a noun.
-// TODO: translate the following strings.
-// 'title.expenses' => 'Expenses',
-// 'title.edit_expense' => 'Editing Expense Item',
-// 'title.delete_expense' => 'Deleting Expense Item',
+'title.edit_time_record' => 'Modification de l\\\'entrée de temps',
+'title.delete_time_record' => 'Suppression de l\\\'entrée de temps',
+'title.expenses' => 'Dépenses',
+'title.edit_expense' => 'Modification d\\\'une dépense',
+'title.delete_expense' => 'Suppression d\\\'une dépense',
 'title.reports' => 'Rapports',
 'title.report' => 'Rapport',
-'title.send_report' => 'Envoyer rapport', // TODO: use a noun.
+'title.send_report' => 'Envoi du rapport',
 'title.invoice' => 'Facture',
 'title.send_invoice' => 'Envoi de la facture',
 'title.charts' => 'Graphiques',
 'title.projects' => 'Projets',
-'title.add_project' => 'Ajout du projet',
-'title.edit_project' => 'Modification du projet',
-'title.delete_project' => 'Suppression du projet',
+'title.add_project' => 'Ajout d\\\'un projet',
+'title.edit_project' => 'Modification d\\\'un projet',
+'title.delete_project' => 'Suppression d\\\'un projet',
 'title.tasks' => 'Tâches',
-'title.add_task' => 'Ajouter une tâche', // TODO: use a noun.
-'title.edit_task' => 'Modifier la tâche', // TODO: use a noun.
-'title.delete_task' => 'Supprimer une tâche', // TODO: use a noun.
-'title.users' => 'Personnes',
-'title.add_user' => 'Création de l\\\'utilisateur',
-'title.edit_user' => 'Modification de l\\\'utilisateur',
-'title.delete_user' => 'Suppression de l\\\'utilisateur',
+'title.add_task' => 'Ajout d\\\'une tâche',
+'title.edit_task' => 'Modification d\\\'une tâche',
+'title.delete_task' => 'Suppression d\\\'une tâche',
+'title.users' => 'Utilisateurs',
+'title.add_user' => 'Création d\\\'un utilisateur',
+'title.edit_user' => 'Modification d\\\'un utilisateur',
+'title.delete_user' => 'Suppression d\\\'un utilisateur',
 'title.clients' => 'Clients',
-'title.add_client' => 'Ajouter un client', // TODO: use a noun.
-'title.edit_client' => 'Modifier un client', // TODO: use a noun.
-'title.delete_client' => 'Supprimer un client', // TODO: use a noun.
+'title.add_client' => 'Ajout d\\\'un client',
+'title.edit_client' => 'Modification d\\\'un client',
+'title.delete_client' => 'Suppression d\\\'un client',
 'title.invoices' => 'Factures',
-'title.add_invoice' => 'Ajouter une facture', // TODO: use a noun.
-'title.view_invoice' => 'Voir la facture', // TODO: use a noun.
-'title.delete_invoice' => 'Supprimer la facture', // TODO: use a noun.
-// TODO: translate the following strings.
-// 'title.notifications' => 'Notifications',
-// 'title.add_notification' => 'Adding Notification',
-// 'title.edit_notification' => 'Editing Notification',
-// 'title.delete_notification' => 'Deleting Notification',
-'title.export' => 'Exporter les données', // TODO: use a noun.
-'title.import' => 'Importer les données', // TODO: use a noun.
+'title.add_invoice' => 'Ajout d\\\'une facture',
+'title.view_invoice' => 'Visionnement d\\\'une facture',
+'title.delete_invoice' => 'Suppression d\\\'une facture',
+'title.notifications' => 'Notifications',
+'title.add_notification' => 'Ajout d\\\'une notification',
+'title.edit_notification' => 'Modification d\\\'une notification',
+'title.delete_notification' => 'Suppression d\\\'une notification',
+'title.monthly_quotas' => 'Quotas mensuels',
+'title.export' => 'Exportation des données',
+'title.import' => 'Importation des données',
 'title.options' => 'Options',
 'title.profile' => 'Profil',
 'title.cf_custom_fields' => 'Champs personalisés',
-'title.cf_add_custom_field' => 'Ajouter un champ', // TODO: use a noun.
-'title.cf_edit_custom_field' => 'Editer un champ', // TODO: use a noun.
-'title.cf_delete_custom_field' => 'Supprimer un champ', // TODO: use a noun.
+'title.cf_add_custom_field' => 'Ajout d\\\'un champ',
+'title.cf_edit_custom_field' => 'Édition d\\\'un champ',
+'title.cf_delete_custom_field' => 'Suppression d\\\'un champ',
 'title.cf_dropdown_options' => 'Options de liste',
-'title.cf_add_dropdown_option' => 'Ajouter une option', // TODO: use a noun.
-'title.cf_edit_dropdown_option' => 'Modifier l\\\'option', // TODO: use a noun.
-'title.cf_delete_dropdown_option' => 'Supprimer l\\\'option', // TODO: use a noun.
+'title.cf_add_dropdown_option' => 'Ajout d\\\'une option',
+'title.cf_edit_dropdown_option' => 'Modification d\\\'une option',
+'title.cf_delete_dropdown_option' => 'Suppression d\\\'une option',
+'title.locking' => 'Vérouillage',
 
 // Section for common strings inside combo boxes on forms. Strings shared between forms shall be placed here.
 // Strings that are used in a single form must go to the specific form section.
 'dropdown.all' => '--- tous ---',
 'dropdown.no' => '--- non ---',
 'dropdown.this_day' => 'ce jour',
+// TODO: translate the following.
+// 'dropdown.last_day' => 'last day',
 'dropdown.this_week' => 'cette semaine',
 'dropdown.last_week' => 'la semaine passée',
 'dropdown.this_month' => 'ce mois',
@@ -322,6 +312,9 @@ $i18n_key_words = array(
 'form.time.duration_format' => '(hh:mm ou 0.0h)',
 'form.time.billable' => 'Facturable',
 'form.time.uncompleted' => 'Non terminée',
+// TODO: translate the following.
+// 'form.time.remaining_quota' => 'Remaining quota',
+// 'form.time.over_quota' => 'Over quota',
 
 // Editing Time Record form. See example at https://timetracker.anuko.com/time_edit.php (get there by editing an uncompleted time record).
 'form.time_edit.uncompleted' => 'Cet enregistrement a été enregistré avec seulement une heure de début. Il ne s\\\'agit pas d\\\'une erreur.',
@@ -375,6 +368,7 @@ $i18n_key_words = array(
 // TODO: translate the following strings.
 // 'form.users.active_users' => 'Active Users',
 // 'form.users.inactive_users' => 'Inactive Users',
+// 'form.users.uncompleted_entry' => 'User has an uncompleted time entry',
 'form.users.role' => 'Rôle',
 'form.users.manager' => 'Responsable',
 'form.users.comanager' => 'Co-responsable',
@@ -425,13 +419,18 @@ $i18n_key_words = array(
 // Mail form. See example at https://timetracker.anuko.com/report_send.php when emailing a report.
 'form.mail.from' => 'De',
 'form.mail.to' => 'À',
-'form.mail.cc' => 'Cc',
-'form.mail.subject' => 'Objet',
 'form.mail.report_subject' => 'Rapport Time Tracker',
 // Note to translators: the following strings need to be translated.
 // The problem seems to be that the first sentence does not seem like a complete sentence.
 // 'form.mail.footer' => 'Anuko Time Tracker système de gestion des temps open source simple et facile à utiliser. Visiter <a href="https://www.anuko.com">www.anuko.com</a> pour plus d\\\'informations.',
 'form.mail.report_sent' => 'Le rapport a été envoyé.',
 'form.mail.invoice_sent' => 'La facture a été envoyée.',
+
+// Quotas configuration form.
+// TODO: translate the following.
+// 'form.quota.year' => 'Year',
+// 'form.quota.month' => 'Month',
+// 'form.quota.quota' => 'Quota',
+// 'form.quota.workday_hours' => 'Hours in a work day',
+// 'form.quota.hint' => 'If values are empty, quotas are calculated automatically based on workday hours and holidays.',
 );
-?>
\ No newline at end of file