Commits

Olemis Lang  committed cbcdc01

BH Multiproduct #694 : Move French translation patch into t694/ folder

  • Participants
  • Parent commits 8c7292b
  • Branches t694_bh_i18n

Comments (0)

Files changed (3)

 t694/t694_r1534486_bloodhound_i18n.diff
-t694_french
+t694/t694_french.diff
 

File t694/t694_french.diff

+# HG changeset patch
+# Parent e9da4f695311ea3604c2ec681eb211aefdb8f102
+
+diff -r e9da4f695311 bloodhound_dashboard/bhdashboard/locale/fr/LC_MESSAGES/bhdashboard.po
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/bloodhound_dashboard/bhdashboard/locale/fr/LC_MESSAGES/bhdashboard.po	Wed Nov 20 03:26:01 2013 +0100
+@@ -0,0 +1,433 @@
++# Translations template for BloodhoundDashboardPlugin.
++# Copyright (C) 2013 ORGANIZATION
++# This file is distributed under the same license as the BloodhoundDashboardPlugin project.
++# Translators:
++# SaintGermain <saintger@gmail.com>, 2013
++msgid ""
++msgstr ""
++"Project-Id-Version: bloodhound\n"
++"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
++"POT-Creation-Date: 2013-11-20 03:06+0100\n"
++"PO-Revision-Date: 2013-11-20 02:11+0000\n"
++"Last-Translator: SaintGermain <saintger@gmail.com>\n"
++"Language-Team: French (http://www.transifex.com/projects/p/bloodhound/language/fr/)\n"
++"MIME-Version: 1.0\n"
++"Content-Type: text/plain; charset=UTF-8\n"
++"Content-Transfer-Encoding: 8bit\n"
++"Generated-By: Babel 0.9.6\n"
++"Language: fr\n"
++"Plural-Forms: nplurals=2; plural=(n > 1);\n"
++
++#: bhdashboard/admin.py:103
++#, python-format
++msgid "Ignoring %(page)s : The page %(new_page)s already exists"
++msgstr "Ignore %(page)s : la page %(new_page)s existe déjà"
++
++#: bhdashboard/admin.py:111
++#, python-format
++msgid "Error moving %(page)s : %(message)s"
++msgstr "Erreur lors du déplacement de %(page)s : %(message)s"
++
++#: bhdashboard/admin.py:117
++#, python-format
++msgid "See [wiki:\"%(name)s\"]."
++msgstr "Voir [wiki:\"%(name)s\"]."
++
++#: bhdashboard/admin.py:169
++#, python-format
++msgid "The file '%(fname)s' does not exist"
++msgstr "Le fichier '%(fname)s' n'existe pas"
++
++#: bhdashboard/admin.py:176
++msgid ""
++"This command is only intended to run on fresh environments as it will overwrite the database.\n"
++"If it is safe to lose bloodhound data, delete the environment and re-run python bloodhound_setup.py before attempting to load the fixture again."
++msgstr "Cette commande est seulement destinée à être exécutée sur des nouveaux environnements car cela écrasera la base de données.\nSi vous êtes sûr qu'il est acceptable de perdre les données de bloodhound, effacez l'environnement et re-exécutez python bloodhound_setup avant de tenter de charger de nouveau le fixture."
++
++#: bhdashboard/api.py:171 bhdashboard/api.py:190
++msgid "Widget documentation"
++msgstr "Documentation du widget"
++
++#: bhdashboard/api.py:195
++msgid "Help"
++msgstr "Aide"
++
++#: bhdashboard/api.py:243
++msgid "Parameters"
++msgstr "Paramètres"
++
++#: bhdashboard/api.py:328
++msgid "Invalid argument"
++msgstr "Argument invalide"
++
++#: bhdashboard/api.py:365 bhdashboard/api.py:371
++msgid "Datetime conversion error"
++msgstr "Erreur de conversion de datetime"
++
++#: bhdashboard/api.py:393
++msgid "List conversion error"
++msgstr "Erreur de conversion de liste"
++
++#: bhdashboard/api.py:410
++#, python-format
++msgid "Expected one of `%s` but got `%s`"
++msgstr "Il était attendu un choix `%s`, mais `%s` a été reçu"
++
++#: bhdashboard/api.py:411
++msgid "Enum conversion error"
++msgstr "Erreur de conversion de l'énumération"
++
++#: bhdashboard/macros.py:77
++msgid "Table of Contents"
++msgstr "Table des matières"
++
++#: bhdashboard/web_ui.py:58
++msgid "Dashboard label in mainnav"
++msgstr "Label du Dashboard dans mainnav"
++
++#: bhdashboard/web_ui.py:61
++msgid "Default widget height in pixels"
++msgstr "Hauteur par défaut du widget en pixels"
++
++#: bhdashboard/web_ui.py:88 bhdashboard/web_ui.py:105
++msgid "Reports"
++msgstr "Rapports"
++
++#: bhdashboard/web_ui.py:103 bhdashboard/widgets/query.py:134
++msgid "Custom Query"
++msgstr "Requête personnalisée"
++
++#: bhdashboard/web_ui.py:266
++#, python-format
++msgid "Unknown widget %(name)s"
++msgstr "Widget %(name)s inconnu"
++
++#: bhdashboard/web_ui.py:280
++msgid ""
++"Exception raised while rendering widget. Contact your administrator for "
++"further details."
++msgstr "Exception levée lors du rendu du widget. Contactez votre administrateur pour plus de détails."
++
++#: bhdashboard/web_ui.py:289
++msgid "Widget error"
++msgstr "Erreur dans le widget"
++
++#: bhdashboard/layouts/templates/bs_btnbar_full.html:36
++#: bhdashboard/layouts/templates/bs_grid_full.html:38
++msgid ""
++"[1:Note:] See\n"
++"        [2:BloodhoundDashboard]\n"
++"        for help on using the dashboard."
++msgstr "[1:Note:] Voir [2:BloodhoundDashboard] pour l'aide concernant l'utilisation de ce tableau de bord."
++
++#: bhdashboard/layouts/templates/bs_grid_full.html:35
++#, python-format
++msgid "Dashboard for product [1:%(name)s]"
++msgstr "Tableau de bord pour le produit [1:%(name)s]"
++
++#: bhdashboard/templates/bh_model_view.html:61
++#: bhdashboard/widgets/timeline.py:151 bhdashboard/widgets/timeline.py:224
++msgid "Activity"
++msgstr "Activité"
++
++#: bhdashboard/templates/bh_model_view.html:71
++msgid "compact"
++msgstr "compact"
++
++#: bhdashboard/templates/widget_macros.html:42
++msgid "Download"
++msgstr "Télécharger"
++
++#: bhdashboard/templates/widget_macros.html:59
++msgid ""
++"[1:Error]\n"
++"    Dashboard data is missing . \n"
++"    Is [2:bhdashboard.web_ui.DashboardModule] component disabled?"
++msgstr "[1:Error] Données de tableau de bord manquantes.\nEst-ce que le composant [2:bhdashboard.web_ui.DashboardModule] est désactivé ?"
++
++#: bhdashboard/widgets/product.py:114
++msgid "... more"
++msgstr "... plus"
++
++#: bhdashboard/widgets/product.py:150
++msgid "Products"
++msgstr "Produits"
++
++#: bhdashboard/widgets/product.py:158 bhdashboard/widgets/query.py:137
++#: bhdashboard/widgets/report.py:106
++msgid "More"
++msgstr "Plus"
++
++#: bhdashboard/widgets/report.py:99
++msgid "Report"
++msgstr "Rapport"
++
++#: bhdashboard/widgets/report.py:108
++msgid "Edit"
++msgstr "Modifier"
++
++#: bhdashboard/widgets/ticket.py:109
++msgid "Types"
++msgstr "Types"
++
++#: bhdashboard/widgets/ticket.py:112
++msgid "Statuses"
++msgstr "Status"
++
++#: bhdashboard/widgets/ticket.py:115
++msgid "Priorities"
++msgstr "Priorités"
++
++#: bhdashboard/widgets/ticket.py:118
++#: bhdashboard/widgets/templates/widget_product.html:40
++msgid "Milestones"
++msgstr "Jalons"
++
++#: bhdashboard/widgets/ticket.py:121
++#: bhdashboard/widgets/templates/widget_product.html:54
++msgid "Components"
++msgstr "Composants"
++
++#: bhdashboard/widgets/ticket.py:124
++#: bhdashboard/widgets/templates/widget_product.html:68
++msgid "Versions"
++msgstr "Versions"
++
++#: bhdashboard/widgets/ticket.py:127
++msgid "Severities"
++msgstr "Sévérités"
++
++#: bhdashboard/widgets/ticket.py:130
++msgid "Resolutions"
++msgstr "Résolutions"
++
++#: bhdashboard/widgets/ticket.py:139
++msgid "Error loading ticket system (disabled?)"
++msgstr "Erreur lors du chargement du système de ticket (désactivé ?)"
++
++#: bhdashboard/widgets/ticket.py:150
++#, python-format
++msgid "You can add one or more <a href=\"%(url)s\">here</a>."
++msgstr "Vous pouvez en ajouter un ou plusieurs <a href=\"%(url)s\">ici</a>."
++
++#: bhdashboard/widgets/ticket.py:152
++msgid "Contact your administrator for further details"
++msgstr "Contactez votre administrateur pour plus de détails"
++
++#: bhdashboard/widgets/ticket.py:158
++#, python-format
++msgid ""
++"No values are\n"
++"                                        defined for ticket field\n"
++"                                        <em>%(field)s</em>. %(hint)s"
++msgstr "Aucune valeur n'est définie pour les champs de ticket <em>%(field)s</em>. %(hint)s"
++
++#: bhdashboard/widgets/timeline.py:79
++msgid "Maximum number of items displayed by default"
++msgstr "Nombre maximum d'éléments affichés par défaut"
++
++#: bhdashboard/widgets/timeline.py:146
++msgid "administration page."
++msgstr "page d'administration."
++
++#: bhdashboard/widgets/timeline.py:147
++msgid "Plugin Administration Page"
++msgstr "Page du plugin d'administration"
++
++#: bhdashboard/widgets/timeline.py:155
++#, python-format
++msgid ""
++"The TimelineWidget is disabled because the Timeline component is not "
++"available. Is the component disabled? You can enable from the %(page)s"
++msgstr "Le TimelineWidget est désactivé car le composant Timeline n'est pas disponible. Est-ce que le composant est désactivé ? Vous pouvez l'activer à partir de %(page)s"
++
++#: bhdashboard/widgets/timeline.py:304
++msgid "Ticket updates"
++msgstr "Mises à jour du ticket"
++
++#: bhdashboard/widgets/templates/widget_cloud.html:31
++#: bhdashboard/widgets/templates/widget_cloud.html:34
++#: bhdashboard/widgets/templates/widget_grid.html:72
++msgid "empty"
++msgstr "vide"
++
++#: bhdashboard/widgets/templates/widget_cloud.html:88
++msgid "Qty"
++msgstr "Qté"
++
++#: bhdashboard/widgets/templates/widget_grid.html:32
++#, python-format
++msgid "Results [1:(%(displayed_items)s)]"
++msgstr "Résultats [1:(%(displayed_items)s)]"
++
++#: bhdashboard/widgets/templates/widget_grid.html:37
++#, python-format
++msgid "(%(numrows)s total rows)"
++msgstr "(%(numrows)s lignes totales)"
++
++#: bhdashboard/widgets/templates/widget_grid.html:84
++#: bhdashboard/widgets/templates/widget_grid.html:90
++msgid "View report"
++msgstr "Voir le rapport"
++
++#: bhdashboard/widgets/templates/widget_grid.html:131
++#: bhdashboard/widgets/templates/widget_query_results.html:116
++msgid "View milestone"
++msgstr "Voir le jalon"
++
++#: bhdashboard/widgets/templates/widget_grid.html:150
++msgid "Info"
++msgstr "Info"
++
++#: bhdashboard/widgets/templates/widget_grid.html:150
++msgid "Items list is empty"
++msgstr "La liste d'éléments est vide"
++
++#: bhdashboard/widgets/templates/widget_product.html:30
++#, python-format
++msgid ""
++"☆ [1:%(name)s (%(prefix)s)]\n"
++"            \n"
++"              [2:]\n"
++"              [3:owned by\n"
++"                [4:%(owner)s]\n"
++"              ]"
++msgstr "☆ [1:%(name)s (%(prefix)s)]\n            \n              [2:]\n              [3:appartenant à\n                [4:%(owner)s]\n              ]"
++
++#: bhdashboard/widgets/templates/widget_product.html:49
++msgid "(No milestones for this product)"
++msgstr "(Aucun jalons pour ce produit)"
++
++#: bhdashboard/widgets/templates/widget_product.html:63
++msgid "(No components for this product)"
++msgstr "(Aucun composant pour ce produit)"
++
++#: bhdashboard/widgets/templates/widget_product.html:77
++msgid "(No versions for this product)"
++msgstr "(Aucune versions pour ce produit)"
++
++#: bhdashboard/widgets/templates/widget_progress.html:33
++#, python-format
++msgid "%(count)s/%(total)s %(title)s"
++msgstr "%(count)s/%(total)s %(title)s"
++
++#: bhdashboard/widgets/templates/widget_progress.html:41
++msgid "completed"
++msgstr "complété"
++
++#: bhdashboard/widgets/templates/widget_progress.html:45
++#, python-format
++msgid "Total number of %(unit)s: %(count)s"
++msgstr "Nombre total de %(unit)s: %(count)s"
++
++#: bhdashboard/widgets/templates/widget_progress.html:54
++msgid "progress-success"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:55
++msgid "progress-info"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:56
++msgid "progress-warning"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:57
++msgid "progress-danger"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:73
++#, python-format
++msgid "%(title)s (%(count)s)"
++msgstr "%(title)s (%(count)s)"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:40
++msgid "Results"
++msgstr "Résultats"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:46
++#, python-format
++msgid "%(grouplabel)s: %(groupname)s [1:(%(count)s)]"
++msgstr "%(grouplabel)s: %(groupname)s [1:(%(count)s)]"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:59
++msgid "(ascending)"
++msgstr "(croissant)"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:59
++msgid "(descending)"
++msgstr "(décroissant)"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:60
++#, python-format
++msgid "Sort by %(col)s %(direction)s"
++msgstr "Trier selon %(col)s %(direction)s"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:94
++msgid "No tickets found"
++msgstr "Aucun ticket trouvé"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:108
++#: bhdashboard/widgets/templates/widget_query_results.html:111
++msgid "View ticket"
++msgstr "Voir le ticket"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:128
++msgid "(this ticket)"
++msgstr "(ce ticket)"
++
++#: bhdashboard/widgets/templates/widget_query_results.html:144
++msgid "(more results for this group on next page)"
++msgstr "(suite des résultats pour ce groupe page suivante)"
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Type"
++msgstr "Type"
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Product"
++msgstr "Produit"
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Ticket"
++msgstr "Ticket"
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Comment"
++msgstr "Commentaire"
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Author"
++msgstr "Auteur"
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Changed"
++msgstr "Modifié"
++
++#: bhdashboard/widgets/templates/widget_relations.html:56
++msgid "No defined relations for this ticket."
++msgstr "Aucune relation définie pour ce ticket."
++
++#: bhdashboard/widgets/templates/widget_relations.html:64
++msgid "Manage relations"
++msgstr "Gérer les relations"
++
++#: bhdashboard/widgets/templates/widget_timeline.html:45
++#, python-format
++msgid ""
++"[1:%(time)s]: [2:%(event)s]\n"
++"              by [3:%(author)s]"
++msgstr "[1:%(time)s]: [2:%(event)s]\n              par [3:%(author)s]"
++
++#: bhdashboard/widgets/templates/widget_timeline.html:58
++#, python-format
++msgid ""
++"No events reported \n"
++"      \n"
++"        for [1:%(resource)s]\n"
++"      \n"
++"      in the last [2:%(daysback)s] days since \n"
++"      [3:%(fromdate)s].\n"
++"      This may happen if system is not configured correctly. \n"
++"      Please contact your administrator if you think this is the case."
++msgstr "Aucun évènement rapporté \n      \n        pour [1:%(resource)s]\n      \n      durant les derniers [2:%(daysback)s] jours depuis \n      [3:%(fromdate)s].\n      Cela peut arriver si le système n'est pas configuré correctement. \n      Merci de contacter votre administrateur si vous pensez que c'est le cas."
+diff -r e9da4f695311 bloodhound_dashboard/bhdashboard/locale/messages.pot
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/bloodhound_dashboard/bhdashboard/locale/messages.pot	Wed Nov 20 03:26:01 2013 +0100
+@@ -0,0 +1,428 @@
++# Translations template for BloodhoundDashboardPlugin.
++# Copyright (C) 2013 ORGANIZATION
++# This file is distributed under the same license as the BloodhoundDashboardPlugin project.
++# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
++##, fuzzy
++msgid ""
++msgstr ""
++"Project-Id-Version: BloodhoundDashboardPlugin 0.8.0\n"
++"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
++"POT-Creation-Date: 2013-11-20 03:06+0100\n"
++"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
++"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
++"Language-Team: LANGUAGE <LL@li.org>\n"
++"MIME-Version: 1.0\n"
++"Content-Type: text/plain; charset=utf-8\n"
++"Content-Transfer-Encoding: 8bit\n"
++"Generated-By: Babel 0.9.6\n"
++
++#: bhdashboard/admin.py:103
++#, python-format
++msgid "Ignoring %(page)s : The page %(new_page)s already exists"
++msgstr ""
++
++#: bhdashboard/admin.py:111
++#, python-format
++msgid "Error moving %(page)s : %(message)s"
++msgstr ""
++
++#: bhdashboard/admin.py:117
++#, python-format
++msgid "See [wiki:\"%(name)s\"]."
++msgstr ""
++
++#: bhdashboard/admin.py:169
++#, python-format
++msgid "The file '%(fname)s' does not exist"
++msgstr ""
++
++#: bhdashboard/admin.py:176
++msgid ""
++"This command is only intended to run on fresh environments as it will overwrite the database.\n"
++"If it is safe to lose bloodhound data, delete the environment and re-run python bloodhound_setup.py before attempting to load the fixture again."
++msgstr ""
++
++#: bhdashboard/api.py:171 bhdashboard/api.py:190
++msgid "Widget documentation"
++msgstr ""
++
++#: bhdashboard/api.py:195
++msgid "Help"
++msgstr ""
++
++#: bhdashboard/api.py:243
++msgid "Parameters"
++msgstr ""
++
++#: bhdashboard/api.py:328
++msgid "Invalid argument"
++msgstr ""
++
++#: bhdashboard/api.py:365 bhdashboard/api.py:371
++msgid "Datetime conversion error"
++msgstr ""
++
++#: bhdashboard/api.py:393
++msgid "List conversion error"
++msgstr ""
++
++#: bhdashboard/api.py:410
++#, python-format
++msgid "Expected one of `%s` but got `%s`"
++msgstr ""
++
++#: bhdashboard/api.py:411
++msgid "Enum conversion error"
++msgstr ""
++
++#: bhdashboard/macros.py:77
++msgid "Table of Contents"
++msgstr ""
++
++#: bhdashboard/web_ui.py:58
++msgid "Dashboard label in mainnav"
++msgstr ""
++
++#: bhdashboard/web_ui.py:61
++msgid "Default widget height in pixels"
++msgstr ""
++
++#: bhdashboard/web_ui.py:88 bhdashboard/web_ui.py:105
++msgid "Reports"
++msgstr ""
++
++#: bhdashboard/web_ui.py:103 bhdashboard/widgets/query.py:134
++msgid "Custom Query"
++msgstr ""
++
++#: bhdashboard/web_ui.py:266
++#, python-format
++msgid "Unknown widget %(name)s"
++msgstr ""
++
++#: bhdashboard/web_ui.py:280
++msgid "Exception raised while rendering widget. Contact your administrator for further details."
++msgstr ""
++
++#: bhdashboard/web_ui.py:289
++msgid "Widget error"
++msgstr ""
++
++#: bhdashboard/layouts/templates/bs_btnbar_full.html:36
++#: bhdashboard/layouts/templates/bs_grid_full.html:38
++msgid ""
++"[1:Note:] See\n"
++"        [2:BloodhoundDashboard]\n"
++"        for help on using the dashboard."
++msgstr ""
++
++#: bhdashboard/layouts/templates/bs_grid_full.html:35
++#, python-format
++msgid "Dashboard for product [1:%(name)s]"
++msgstr ""
++
++#: bhdashboard/templates/bh_model_view.html:61
++#: bhdashboard/widgets/timeline.py:151 bhdashboard/widgets/timeline.py:224
++msgid "Activity"
++msgstr ""
++
++#: bhdashboard/templates/bh_model_view.html:71
++msgid "compact"
++msgstr ""
++
++#: bhdashboard/templates/widget_macros.html:42
++msgid "Download"
++msgstr ""
++
++#: bhdashboard/templates/widget_macros.html:59
++msgid ""
++"[1:Error]\n"
++"    Dashboard data is missing . \n"
++"    Is [2:bhdashboard.web_ui.DashboardModule] component disabled?"
++msgstr ""
++
++#: bhdashboard/widgets/product.py:114
++msgid "... more"
++msgstr ""
++
++#: bhdashboard/widgets/product.py:150
++msgid "Products"
++msgstr ""
++
++#: bhdashboard/widgets/product.py:158 bhdashboard/widgets/query.py:137
++#: bhdashboard/widgets/report.py:106
++msgid "More"
++msgstr ""
++
++#: bhdashboard/widgets/report.py:99
++msgid "Report"
++msgstr ""
++
++#: bhdashboard/widgets/report.py:108
++msgid "Edit"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:109
++msgid "Types"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:112
++msgid "Statuses"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:115
++msgid "Priorities"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:118
++#: bhdashboard/widgets/templates/widget_product.html:40
++msgid "Milestones"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:121
++#: bhdashboard/widgets/templates/widget_product.html:54
++msgid "Components"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:124
++#: bhdashboard/widgets/templates/widget_product.html:68
++msgid "Versions"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:127
++msgid "Severities"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:130
++msgid "Resolutions"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:139
++msgid "Error loading ticket system (disabled?)"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:150
++#, python-format
++msgid "You can add one or more <a href=\"%(url)s\">here</a>."
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:152
++msgid "Contact your administrator for further details"
++msgstr ""
++
++#: bhdashboard/widgets/ticket.py:158
++#, python-format
++msgid ""
++"No values are\n"
++"                                        defined for ticket field\n"
++"                                        <em>%(field)s</em>. %(hint)s"
++msgstr ""
++
++#: bhdashboard/widgets/timeline.py:79
++msgid "Maximum number of items displayed by default"
++msgstr ""
++
++#: bhdashboard/widgets/timeline.py:146
++msgid "administration page."
++msgstr ""
++
++#: bhdashboard/widgets/timeline.py:147
++msgid "Plugin Administration Page"
++msgstr ""
++
++#: bhdashboard/widgets/timeline.py:155
++#, python-format
++msgid "The TimelineWidget is disabled because the Timeline component is not available. Is the component disabled? You can enable from the %(page)s"
++msgstr ""
++
++#: bhdashboard/widgets/timeline.py:304
++msgid "Ticket updates"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_cloud.html:31
++#: bhdashboard/widgets/templates/widget_cloud.html:34
++#: bhdashboard/widgets/templates/widget_grid.html:72
++msgid "empty"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_cloud.html:88
++msgid "Qty"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_grid.html:32
++#, python-format
++msgid "Results [1:(%(displayed_items)s)]"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_grid.html:37
++#, python-format
++msgid "(%(numrows)s total rows)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_grid.html:84
++#: bhdashboard/widgets/templates/widget_grid.html:90
++msgid "View report"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_grid.html:131
++#: bhdashboard/widgets/templates/widget_query_results.html:116
++msgid "View milestone"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_grid.html:150
++msgid "Info"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_grid.html:150
++msgid "Items list is empty"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_product.html:30
++#, python-format
++msgid ""
++"☆ [1:%(name)s (%(prefix)s)]\n"
++"            \n"
++"              [2:]\n"
++"              [3:owned by\n"
++"                [4:%(owner)s]\n"
++"              ]"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_product.html:49
++msgid "(No milestones for this product)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_product.html:63
++msgid "(No components for this product)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_product.html:77
++msgid "(No versions for this product)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:33
++#, python-format
++msgid "%(count)s/%(total)s %(title)s"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:41
++msgid "completed"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:45
++#, python-format
++msgid "Total number of %(unit)s: %(count)s"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:54
++msgid "progress-success"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:55
++msgid "progress-info"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:56
++msgid "progress-warning"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:57
++msgid "progress-danger"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_progress.html:73
++#, python-format
++msgid "%(title)s (%(count)s)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:40
++msgid "Results"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:46
++#, python-format
++msgid "%(grouplabel)s: %(groupname)s [1:(%(count)s)]"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:59
++msgid "(ascending)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:59
++msgid "(descending)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:60
++#, python-format
++msgid "Sort by %(col)s %(direction)s"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:94
++msgid "No tickets found"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:108
++#: bhdashboard/widgets/templates/widget_query_results.html:111
++msgid "View ticket"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:128
++msgid "(this ticket)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_query_results.html:144
++msgid "(more results for this group on next page)"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Type"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Product"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Ticket"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Comment"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Author"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:32
++msgid "Changed"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:56
++msgid "No defined relations for this ticket."
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_relations.html:64
++msgid "Manage relations"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_timeline.html:45
++#, python-format
++msgid ""
++"[1:%(time)s]: [2:%(event)s]\n"
++"              by [3:%(author)s]"
++msgstr ""
++
++#: bhdashboard/widgets/templates/widget_timeline.html:58
++#, python-format
++msgid ""
++"No events reported \n"
++"      \n"
++"        for [1:%(resource)s]\n"
++"      \n"
++"      in the last [2:%(daysback)s] days since \n"
++"      [3:%(fromdate)s].\n"
++"      This may happen if system is not configured correctly. \n"
++"      Please contact your administrator if you think this is the case."
++msgstr ""
++
+diff -r e9da4f695311 bloodhound_multiproduct/multiproduct/locale/fr/LC_MESSAGES/multiproduct.po
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/bloodhound_multiproduct/multiproduct/locale/fr/LC_MESSAGES/multiproduct.po	Wed Nov 20 03:26:01 2013 +0100
+@@ -0,0 +1,506 @@
++# Translations template for BloodhoundMultiProduct.
++# Copyright (C) 2013 ORGANIZATION
++# This file is distributed under the same license as the BloodhoundMultiProduct project.
++# Translators:
++# SaintGermain <saintger@gmail.com>, 2013
++msgid ""
++msgstr ""
++"Project-Id-Version: bloodhound\n"
++"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
++"POT-Creation-Date: 2013-11-17 02:18+0100\n"
++"PO-Revision-Date: 2013-11-17 14:52+0000\n"
++"Last-Translator: SaintGermain <saintger@gmail.com>\n"
++"Language-Team: French (http://www.transifex.com/projects/p/bloodhound/language/fr/)\n"
++"MIME-Version: 1.0\n"
++"Content-Type: text/plain; charset=UTF-8\n"
++"Content-Transfer-Encoding: 8bit\n"
++"Generated-By: Babel 0.9.6\n"
++"Language: fr\n"
++"Plural-Forms: nplurals=2; plural=(n > 1);\n"
++
++#: multiproduct/api.py:82
++msgid ""
++"Prefix used for default product when migrating single-product\n"
++"installations to multi-product."
++msgstr "Préfixe utilisé pour le produit par défaut lors de la migration d'une installation mono-produit vers le multi-produit."
++
++#: multiproduct/api.py:89
++msgid ""
++"A pattern used to generate the base URL of product environments,\n"
++"e.g. the use cases listed in bh:wiki:/Proposals/BEP-0003#url-mapping .\n"
++"Both absolute as well as relative URLs are supported. The later \n"
++"will be resolved with respect to the base URL of the parent global\n"
++"environment. The pattern may contain references to $(envname)s,\n"
++"$(prefix)s and $(name)s placeholders representing the environment name,\n"
++"product prefix and product name respectively . If nothing is set the\n"
++"following will be used `products/$(prefix)s`\n"
++"\n"
++"Note the usage of `$(...)s` instead of `%(...)s` as the later form \n"
++"would be interpreted by the ConfigParser itself. "
++msgstr "Un motif utilisé pour générer l'URL de base des environnements de produit, e.g. le cas d'utilisation listé dans  bh:wiki:/Proposals/BEP-0003#url-mapping .\nLes URLs absolus ou relatifs sont acceptés. Ces derniers seront résolus par rapport à l'URL de base de l'environnement global parent. Le motif peut contenir des références aux variables réservées $(envname)s, $(prefix)s ou $(name)s représentant respectivement le nom de l'environnement, le préfixe du produit ou le nom du produit. Si rien n'est spécifié, le motif suivant sera utilisé `products/$(prefix)s`\n\nNotez l'usage de `$(...)s` au lieu de `%(...)s` car cette dernière forme aurait été interprétée par le ConfigParser lui-même."
++
++#: multiproduct/api.py:103
++msgid ""
++"The path to the configuration file containing the settings shared\n"
++"by sibling product environments. By default will inherit \n"
++"global environment configuration."
++msgstr "Le chemin vers le fichier de configuration contenant les paramètres utilisés par les environnement produits en relation. Par défaut la configuration de l'environnement global est héritée."
++
++#: multiproduct/api.py:632 multiproduct/templates/product_view.html:30
++#: multiproduct/templates/product_view.html:37
++msgid "Product"
++msgstr "Produit"
++
++#: multiproduct/api.py:651
++#, python-format
++msgid "Product %(name)s"
++msgstr "Produit %(name)s"
++
++#: multiproduct/api.py:679
++#, python-format
++msgid "Unsupported neighborhood %(realm)s"
++msgstr "Voisinage %(realm)s non pris en charge"
++
++#: multiproduct/api.py:684
++#, python-format
++msgid "Unknown product prefix %(prefix)s"
++msgstr "Préfixe de produit %(prefix)s inconnu"
++
++#: multiproduct/api.py:744
++#, python-format
++msgid "The user \"%s\" does not exist."
++msgstr "L'utilisateur « %s » n'existe pas."
++
++#: multiproduct/env.py:424
++msgid ""
++"Reference URL for the Trac deployment.\n"
++"\n"
++"This is the base URL that will be used when producing\n"
++"documents that will be used outside of the web browsing\n"
++"context, like for example when inserting URLs pointing to Trac\n"
++"resources in notification e-mails."
++msgstr "URL de référence pour le déploiement de Trac\n\nC'est l'URL de base qui sera utilisé pour produire des documents qui seront utilisé à l'extérieur du contexte de navigation web, comme par exemple lors de l'insertion d'URLs pointant vers les ressources Trac dans les courriels de notification."
++
++#: multiproduct/env.py:439
++msgid ""
++"Optionally use `[trac] base_url` for redirects.\n"
++"\n"
++"In some configurations, usually involving running Trac behind\n"
++"a HTTP proxy, Trac can't automatically reconstruct the URL\n"
++"that is used to access it. You may need to use this option to\n"
++"force Trac to use the `base_url` setting also for\n"
++"redirects. This introduces the obvious limitation that this\n"
++"environment will only be usable when accessible from that URL,\n"
++"as redirects are frequently used. ''(since 0.10.5)''"
++msgstr "Utilisation optionnelle de `[trac] base_url` pour les redirections.\n\nDans certaines configurations, habituellement impliquant les instances Trac s'exécutant derrière un proxy, Trac ne peut automatiquement reconstruire l'URL qui a été utilisé pour y accéder. Vous pourriez avoir besoin de cette option pour forcer Trac à utiliser un paramètre `base_url` aussi pour les redirections. Cela introduit une limitation évidente que cet environnement ne sera utilisable qu'à partir de cet URL car les redirections sont fréquemment utilisées. ''(depuis 0.10.5)''"
++
++#: multiproduct/env.py:473
++msgid "E-Mail address of the product's leader / administrator."
++msgstr "Adresse de courriel du responsable de produit / administrateur."
++
++#: multiproduct/env.py:484
++msgid "URL of the icon of the product."
++msgstr "URL de l'icône du produit."
++
++#: multiproduct/env.py:487
++msgid ""
++"Logging facility to use.\n"
++"\n"
++"Should be one of (`inherit`, `none`, `file`, `stderr`, \n"
++"`syslog`, `winlog`)."
++msgstr "Mécanisme de logging à utiliser.\n\nDoit être un parmis (`inherit`, `none`, `file`, `stderr`, `syslog`, `winlog`"
++
++#: multiproduct/env.py:493
++msgid ""
++"If `log_type` is `file`, this should be a path to the\n"
++"log-file.  Relative paths are resolved relative to the `log`\n"
++"directory of the environment."
++msgstr "Si `log_type` est `file`, cela doit être un chemin vers le log-file. Les chemins relatifs sont résolus relativement au répertoire `log` de l'environnement."
++
++#: multiproduct/env.py:498
++msgid ""
++"Level of verbosity in log.\n"
++"\n"
++"Should be one of (`CRITICAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`)."
++msgstr "Niveau de verbosité dans les logs.\n\nDoit être un parmi (`CRITICAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`)."
++
++#: multiproduct/env.py:504
++msgid ""
++"Custom logging format.\n"
++"\n"
++"If nothing is set, the following will be used:\n"
++"\n"
++"Trac[$(module)s] $(levelname)s: $(message)s\n"
++"\n"
++"In addition to regular key names supported by the Python\n"
++"logger library (see\n"
++"http://docs.python.org/library/logging.html), one could use:\n"
++"\n"
++"- $(path)s     the path for the current environment\n"
++"- $(basename)s the last path component of the current environment\n"
++"- $(project)s  the project name\n"
++"\n"
++"Note the usage of `$(...)s` instead of `%(...)s` as the latter form\n"
++"would be interpreted by the ConfigParser itself.\n"
++"\n"
++"Example:\n"
++"`($(thread)d) Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s`\n"
++"\n"
++"''(since 0.10.5)''"
++msgstr "Format personnalisé de logging.\n\nSi rien n'est enregistré, alors la règle suivant sera utilisée :\n\nTrac[$(module)s] $(levelname)s: $(message)s\n\nEn plus des noms standards de clés pris en charge par la bibliothèque Python logger (voir http://docs.python.org/library/logging.html), vous pouvez utiliser :\n\n- $(path)s le chemin vers l'environnement courant\n- $(basename)s le dernier composant du chemin de l'environnement courant\n- $(project)s le nom du projet\n\nNotez l'utilisation de `$(...)s` au lieu de `%(...)s` car ce dernier aurait été interprété par le ConfigParser lui-même.\n\nExemple :\n`($(thread)d) Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s`\n\n''(depuis 0.10.5)''"
++
++#: multiproduct/product_admin.py:98 multiproduct/web_ui.py:175
++msgid "Your changes have been saved."
++msgstr "Vos modifications ont été enregistrées."
++
++#: multiproduct/product_admin.py:112
++msgid "All fields are required!"
++msgstr "Tous les champs sont obligatoires !"
++
++#: multiproduct/product_admin.py:122 multiproduct/web_ui.py:195
++#, python-format
++msgid "The product \"%(id)s\" has been added."
++msgstr "Le composant \"%(id)s\" a été ajouté."
++
++#: multiproduct/product_admin.py:127
++msgid "Invalid product id."
++msgstr "ID de produit invalide."
++
++#: multiproduct/product_admin.py:128
++#, python-format
++msgid "Product %(id)s already exists."
++msgstr "Le produit %(id)s existe déjà."
++
++#: multiproduct/product_admin.py:133 multiproduct/web_ui.py:103
++#: multiproduct/web_ui.py:107
++msgid "Product removal is not allowed!"
++msgstr "La suppression de produit n'est pas autorisée !"
++
++#: multiproduct/product_admin.py:190
++#: multiproduct/templates/admin_products.html:106
++msgid "Prefix"
++msgstr "Préfixe"
++
++#: multiproduct/product_admin.py:190
++#: multiproduct/templates/admin_products.html:106
++msgid "Owner"
++msgstr "Propriétaire"
++
++#: multiproduct/product_admin.py:190
++#: multiproduct/templates/admin_products.html:106
++#: multiproduct/templates/repository_links.html:43
++msgid "Name"
++msgstr "Nom"
++
++#: multiproduct/product_admin.py:193
++msgid "Command 'product remove' not supported yet"
++msgstr "La commande 'suppression de produit' n'est pas encore prise en charge"
++
++#: multiproduct/product_admin.py:230
++msgid ""
++"Do not show any product admin panels in this list even if\n"
++"allowed by white list. Value must be a comma-separated list of\n"
++"`cat:id` strings respectively identifying the section and identifier\n"
++"of target admin panel. Empty values of `cat` and `id` will be ignored\n"
++"and warnings emitted if TracLogging is enabled. If `id` is set\n"
++"to `*` then all panels in `cat` section will be added to blacklist\n"
++"while in product context."
++msgstr "Ne pas afficher les panneaux d'administration de produit de cette liste même si cela est autorisé par la liste blanche. Les valeurs doivent être une liste séparée par des virgules de chaînes `cat:id` identifiant respectivement la section et l'identifiant du panneau d'administration cible. Les valeurs vides de `cat` et `id` seront ignorées et des avertissements émis si TracLogging est activé. Si `id` est positionné à `*`, alors tous les panneaux de la section `cat` seront ajoutés à la liste noire dans le contexte du produit."
++
++#: multiproduct/product_admin.py:314
++#, python-format
++msgid ""
++"No documentation found for '%(cmd)s'. Use 'help' to see the list of "
++"commands."
++msgstr "Aucune documentation trouvée pour « %(cmd)s ». Utilisez « help » pour lister les commandes disponibles."
++
++#: multiproduct/product_admin.py:320
++msgid "Did you mean this?"
++msgid_plural "Did you mean one of these?"
++msgstr[0] "S'agissait-il de cette commande ?"
++msgstr[1] "S'agissait-il d'une de ces commandes ?"
++
++#: multiproduct/product_admin.py:324
++#, python-format
++msgid "trac-admin - The Trac Administration Console %(version)s"
++msgstr "trac-admin - La console d'administration de Trac %(version)s"
++
++#: multiproduct/product_admin.py:362
++msgid "Unknown administration panel"
++msgstr "Page d'administration inconnue"
++
++#: multiproduct/product_admin.py:413
++msgid "Version Control"
++msgstr "Contrôle des versions"
++
++#: multiproduct/product_admin.py:414
++#: multiproduct/templates/repository_links.html:30
++msgid "Repository Links"
++msgstr "Liens des dépôts"
++
++#: multiproduct/product_admin.py:415
++msgid "Repositories"
++msgstr "Dépôts"
++
++#: multiproduct/web_ui.py:87 multiproduct/web_ui.py:112
++#, python-format
++msgid "Product %(pid)s not found"
++msgstr "Produit %(pid)s n'a pas été trouvé"
++
++#: multiproduct/web_ui.py:91
++msgid "Unable to render product page. Wrong setup?"
++msgstr "Impossible de représenter la page de produit. Mauvaise installation ?"
++
++#: multiproduct/web_ui.py:94 multiproduct/templates/admin_products.html:30
++#: multiproduct/templates/product_list.html:30
++#: multiproduct/templates/product_list.html:35
++msgid "Products"
++msgstr "Produits"
++
++#: multiproduct/web_ui.py:167 multiproduct/web_ui.py:187
++#, python-format
++msgid ""
++"A product with name \"%(name)s\" already exists, please choose a different "
++"name."
++msgstr "Un produit avec le nom « %(name)s » existe déjà, veuillez choisir un nom différent"
++
++#: multiproduct/web_ui.py:170 multiproduct/web_ui.py:185
++msgid "You must provide a name for the product."
++msgstr "Vous devez donner un nom pour ce produit."
++
++#: multiproduct/web_ui.py:180
++msgid "You must provide a prefix for the product."
++msgstr "Vous devez donner un préfixe pour ce produit."
++
++#: multiproduct/web_ui.py:182
++#, python-format
++msgid "Product \"%(id)s\" already exists, please choose another prefix."
++msgstr "Le produit « %(id)s » existe déjà, veuillez choisir un préfixe différent"
++
++#: multiproduct/templates/admin_products.html:34
++msgid "Manage Products"
++msgstr "Gérer les produits"
++
++#: multiproduct/templates/admin_products.html:38
++msgid "Owner:"
++msgstr "Propriétaire :"
++
++#: multiproduct/templates/admin_products.html:55
++msgid "Modify Product:"
++msgstr "Modifier le Produit :"
++
++#: multiproduct/templates/admin_products.html:57
++#: multiproduct/templates/admin_products.html:89
++msgid "Prefix:"
++msgstr "Préfixe :"
++
++#: multiproduct/templates/admin_products.html:60
++#: multiproduct/templates/admin_products.html:92
++msgid "Name:"
++msgstr "Nom :"
++
++#: multiproduct/templates/admin_products.html:65
++msgid ""
++"Description (you may use\n"
++"                [1:WikiFormatting]\n"
++"                here):"
++msgstr "Description (l'utilisation du\n                [1:WikiFormatting]\n                est possible ici) :"
++
++#: multiproduct/templates/admin_products.html:78
++msgid "Save"
++msgstr "Enregistrer"
++
++#: multiproduct/templates/admin_products.html:79
++#: multiproduct/templates/product_delete.html:44
++#: multiproduct/templates/product_edit.html:64
++msgid "Cancel"
++msgstr "Annuler"
++
++#: multiproduct/templates/admin_products.html:87
++msgid "Add Product:"
++msgstr "Ajouter Produit :"
++
++#: multiproduct/templates/admin_products.html:96
++#: multiproduct/templates/repository_links.html:83
++msgid "Add"
++msgstr "Ajouter"
++
++#: multiproduct/templates/admin_products.html:106
++msgid "Default"
++msgstr "Défaut"
++
++#: multiproduct/templates/admin_products.html:125
++#: multiproduct/templates/repository_links.html:69
++msgid "Remove selected items"
++msgstr "Supprimer les éléments sélectionnés"
++
++#: multiproduct/templates/admin_products.html:126
++msgid "Apply changes"
++msgstr "Enregistrer les changements"
++
++#: multiproduct/templates/admin_products.html:128
++msgid ""
++"You can remove all items from this list to completely hide this\n"
++"              field from the user interface."
++msgstr "La suppression de l'intégralité des éléments de cette liste permet de\n              masquer ce champ dans l'interface utilisateur."
++
++#: multiproduct/templates/admin_products.html:134
++msgid ""
++"As long as you don't add any items to the list, this field\n"
++"            will remain completely hidden from the user interface."
++msgstr "Tant qu'aucun élément n'est ajouté à cette liste, ce champ ne sera pas\n            visible dans l'interface utilisateur."
++
++#: multiproduct/templates/product_delete.html:30
++#: multiproduct/templates/product_delete.html:35
++msgid "Delete Product"
++msgstr "Supprimer le Produit"
++
++#: multiproduct/templates/product_delete.html:40
++msgid "Are you sure you want to delete this product?"
++msgstr "Voulez-vous réellement supprimer le produit ?"
++
++#: multiproduct/templates/product_delete.html:43
++#: multiproduct/templates/product_view.html:54
++msgid "Delete product"
++msgstr "Supprimer le produit"
++
++#: multiproduct/templates/product_edit.html:31
++#: multiproduct/templates/product_edit.html:39
++msgid "Edit Product"
++msgstr "Modifier le Produit"
++
++#: multiproduct/templates/product_edit.html:32
++#: multiproduct/templates/product_edit.html:40
++msgid "New Product"
++msgstr "Nouveau Produit"
++
++#: multiproduct/templates/product_edit.html:46
++msgid "Short name for the product (prefix):"
++msgstr "Abréviation pour le produit (préfixe) :"
++
++#: multiproduct/templates/product_edit.html:49
++msgid "Name of the product:"
++msgstr "Nom du produit :"
++
++#: multiproduct/templates/product_edit.html:55
++msgid "Description (you may use [1:WikiFormatting] here):"
++msgstr "Description (l'utilisation du [1:WikiFormatting] est possible ici) :"
++
++#: multiproduct/templates/product_edit.html:62
++msgid "Submit changes"
++msgstr "Enregistrer les modifications"
++
++#: multiproduct/templates/product_edit.html:63
++msgid "Add Product"
++msgstr "Ajouter Produit"
++
++#: multiproduct/templates/product_list.html:53
++msgid "Add new product"
++msgstr "Ajouter un nouveau Produit"
++
++#: multiproduct/templates/product_view.html:31
++msgid "Edit this product"
++msgstr "Modifier ce produit"
++
++#: multiproduct/templates/product_view.html:48
++msgid "Edit product"
++msgstr "Modifier le produit"
++
++#: multiproduct/templates/repository_links.html:33
++msgid "Manage repository links"
++msgstr "Gérer les liens de dépôts"
++
++#: multiproduct/templates/repository_links.html:44
++msgid "Type"
++msgstr "Type"
++
++#: multiproduct/templates/repository_links.html:45
++msgid "Directory"
++msgstr "Répertoire"
++
++#: multiproduct/templates/repository_links.html:46
++msgid "Revision"
++msgstr "Révision"
++
++#: multiproduct/templates/repository_links.html:53
++#: multiproduct/templates/repository_links.html:55
++msgid "(default)"
++msgstr "(défaut)"
++
++#: multiproduct/templates/repository_links.html:58
++#, python-format
++msgid "Alias of %(repo)s"
++msgstr "Alias de %(repo)s"
++
++#: multiproduct/templates/repository_links.html:65
++msgid "No linked repositories."
++msgstr "Aucun dépôts liés."
++
++#: multiproduct/templates/repository_links.html:68
++msgid "Refresh"
++msgstr "Mise à jour"
++
++#: multiproduct/templates/repository_links.html:76
++msgid "Add repository link"
++msgstr "Ajouter un lien de dépôt"
++
++#: multiproduct/templates/repository_links.html:87
++msgid "No repositories to add."
++msgstr "Aucun dépôt à ajouter."
++
++#: multiproduct/ticket/batch.py:49
++msgid "add"
++msgstr "ajouter"
++
++#: multiproduct/ticket/batch.py:50
++msgid "remove"
++msgstr "supprimer"
++
++#: multiproduct/ticket/batch.py:51
++msgid "add / remove"
++msgstr "ajouter / supprimer"
++
++#: multiproduct/ticket/batch.py:52
++msgid "set to"
++msgstr "égal à"
++
++#: multiproduct/ticket/query.py:115
++#, python-format
++msgid "Page %(page)s is beyond the number of pages in the query"
++msgstr "La page %(page)s dépasse le nombre de pages de la requête"
++
++#: multiproduct/ticket/query.py:294
++#, python-format
++msgid "Ticket completion status for each %(group)s"
++msgstr "Status d'achèvement des tickets pour chaque %(group)s"
++
++#: multiproduct/ticket/query.py:309
++msgid "No results"
++msgstr "Aucun résultat"
++
++#: multiproduct/ticket/query.py:342
++#, python-format
++msgid "%(groupvalue)s %(groupname)s tickets matching %(query)s"
++msgstr "%(groupvalue)s %(groupname)s tickets correspondant à %(query)s"
++
++#: multiproduct/ticket/query.py:366
++#, python-format
++msgid "%(groupvalue)s %(groupname)s tickets:"
++msgstr "%(groupvalue)s %(groupname)s tickets :"
++
++#: multiproduct/ticket/web_ui.py:63
++msgid "id can't be set for a new ticket request."
++msgstr "L'ID d'un nouveau ticket ne peut pas être changé."
++
++#: multiproduct/ticket/web_ui.py:70 multiproduct/ticket/web_ui.py:80
++msgid "Invalid ticket number"
++msgstr "Numéro de ticket non valide"
++
++#: multiproduct/ticket/web_ui.py:135
++#, python-format
++msgid "%(title)s: %(message)s"
++msgstr "%(title)s : %(message)s"
++
++#: multiproduct/ticket/web_ui.py:155
++msgid "View Tickets"
++msgstr "Voir les tickets"
+diff -r e9da4f695311 bloodhound_multiproduct/multiproduct/locale/messages.pot
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/bloodhound_multiproduct/multiproduct/locale/messages.pot	Wed Nov 20 03:26:01 2013 +0100
+@@ -0,0 +1,501 @@
++# Translations template for BloodhoundMultiProduct.
++# Copyright (C) 2013 ORGANIZATION
++# This file is distributed under the same license as the BloodhoundMultiProduct project.
++# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
++##, fuzzy
++msgid ""
++msgstr ""
++"Project-Id-Version: BloodhoundMultiProduct 0.8.0\n"
++"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
++"POT-Creation-Date: 2013-11-17 02:18+0100\n"
++"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
++"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
++"Language-Team: LANGUAGE <LL@li.org>\n"
++"MIME-Version: 1.0\n"
++"Content-Type: text/plain; charset=utf-8\n"
++"Content-Transfer-Encoding: 8bit\n"
++"Generated-By: Babel 0.9.6\n"
++
++#: multiproduct/api.py:82
++msgid ""
++"Prefix used for default product when migrating single-product\n"
++"installations to multi-product."
++msgstr ""
++
++#: multiproduct/api.py:89
++msgid ""
++"A pattern used to generate the base URL of product environments,\n"
++"e.g. the use cases listed in bh:wiki:/Proposals/BEP-0003#url-mapping .\n"
++"Both absolute as well as relative URLs are supported. The later \n"
++"will be resolved with respect to the base URL of the parent global\n"
++"environment. The pattern may contain references to $(envname)s,\n"
++"$(prefix)s and $(name)s placeholders representing the environment name,\n"
++"product prefix and product name respectively . If nothing is set the\n"
++"following will be used `products/$(prefix)s`\n"
++"\n"
++"Note the usage of `$(...)s` instead of `%(...)s` as the later form \n"
++"would be interpreted by the ConfigParser itself. "
++msgstr ""
++
++#: multiproduct/api.py:103
++msgid ""
++"The path to the configuration file containing the settings shared\n"
++"by sibling product environments. By default will inherit \n"
++"global environment configuration."
++msgstr ""
++
++#: multiproduct/api.py:632 multiproduct/templates/product_view.html:30
++#: multiproduct/templates/product_view.html:37
++msgid "Product"
++msgstr ""
++
++#: multiproduct/api.py:651
++#, python-format
++msgid "Product %(name)s"
++msgstr ""
++
++#: multiproduct/api.py:679
++#, python-format
++msgid "Unsupported neighborhood %(realm)s"
++msgstr ""
++
++#: multiproduct/api.py:684
++#, python-format
++msgid "Unknown product prefix %(prefix)s"
++msgstr ""
++
++#: multiproduct/api.py:744
++#, python-format
++msgid "The user \"%s\" does not exist."
++msgstr ""
++
++#: multiproduct/env.py:424
++msgid ""
++"Reference URL for the Trac deployment.\n"
++"\n"
++"This is the base URL that will be used when producing\n"
++"documents that will be used outside of the web browsing\n"
++"context, like for example when inserting URLs pointing to Trac\n"
++"resources in notification e-mails."
++msgstr ""
++
++#: multiproduct/env.py:439
++msgid ""
++"Optionally use `[trac] base_url` for redirects.\n"
++"\n"
++"In some configurations, usually involving running Trac behind\n"
++"a HTTP proxy, Trac can't automatically reconstruct the URL\n"
++"that is used to access it. You may need to use this option to\n"
++"force Trac to use the `base_url` setting also for\n"
++"redirects. This introduces the obvious limitation that this\n"
++"environment will only be usable when accessible from that URL,\n"
++"as redirects are frequently used. ''(since 0.10.5)''"
++msgstr ""
++
++#: multiproduct/env.py:473
++msgid "E-Mail address of the product's leader / administrator."
++msgstr ""
++
++#: multiproduct/env.py:484
++msgid "URL of the icon of the product."
++msgstr ""
++
++#: multiproduct/env.py:487
++msgid ""
++"Logging facility to use.\n"
++"\n"
++"Should be one of (`inherit`, `none`, `file`, `stderr`, \n"
++"`syslog`, `winlog`)."
++msgstr ""
++
++#: multiproduct/env.py:493
++msgid ""
++"If `log_type` is `file`, this should be a path to the\n"
++"log-file.  Relative paths are resolved relative to the `log`\n"
++"directory of the environment."
++msgstr ""
++
++#: multiproduct/env.py:498
++msgid ""
++"Level of verbosity in log.\n"
++"\n"
++"Should be one of (`CRITICAL`, `ERROR`, `WARN`, `INFO`, `DEBUG`)."
++msgstr ""
++
++#: multiproduct/env.py:504
++msgid ""
++"Custom logging format.\n"
++"\n"
++"If nothing is set, the following will be used:\n"
++"\n"
++"Trac[$(module)s] $(levelname)s: $(message)s\n"
++"\n"
++"In addition to regular key names supported by the Python\n"
++"logger library (see\n"
++"http://docs.python.org/library/logging.html), one could use:\n"
++"\n"
++"- $(path)s     the path for the current environment\n"
++"- $(basename)s the last path component of the current environment\n"
++"- $(project)s  the project name\n"
++"\n"
++"Note the usage of `$(...)s` instead of `%(...)s` as the latter form\n"
++"would be interpreted by the ConfigParser itself.\n"
++"\n"
++"Example:\n"
++"`($(thread)d) Trac[$(basename)s:$(module)s] $(levelname)s: $(message)s`\n"
++"\n"
++"''(since 0.10.5)''"
++msgstr ""
++
++#: multiproduct/product_admin.py:98 multiproduct/web_ui.py:175
++msgid "Your changes have been saved."
++msgstr ""
++
++#: multiproduct/product_admin.py:112
++msgid "All fields are required!"
++msgstr ""
++
++#: multiproduct/product_admin.py:122 multiproduct/web_ui.py:195
++#, python-format
++msgid "The product \"%(id)s\" has been added."
++msgstr ""
++
++#: multiproduct/product_admin.py:127
++msgid "Invalid product id."
++msgstr ""
++
++#: multiproduct/product_admin.py:128
++#, python-format
++msgid "Product %(id)s already exists."
++msgstr ""
++
++#: multiproduct/product_admin.py:133 multiproduct/web_ui.py:103
++#: multiproduct/web_ui.py:107
++msgid "Product removal is not allowed!"
++msgstr ""
++
++#: multiproduct/product_admin.py:190
++#: multiproduct/templates/admin_products.html:106
++msgid "Prefix"
++msgstr ""
++
++#: multiproduct/product_admin.py:190
++#: multiproduct/templates/admin_products.html:106
++msgid "Owner"
++msgstr ""
++
++#: multiproduct/product_admin.py:190
++#: multiproduct/templates/admin_products.html:106
++#: multiproduct/templates/repository_links.html:43
++msgid "Name"
++msgstr ""
++
++#: multiproduct/product_admin.py:193
++msgid "Command 'product remove' not supported yet"
++msgstr ""
++
++#: multiproduct/product_admin.py:230
++msgid ""
++"Do not show any product admin panels in this list even if\n"
++"allowed by white list. Value must be a comma-separated list of\n"
++"`cat:id` strings respectively identifying the section and identifier\n"
++"of target admin panel. Empty values of `cat` and `id` will be ignored\n"
++"and warnings emitted if TracLogging is enabled. If `id` is set\n"
++"to `*` then all panels in `cat` section will be added to blacklist\n"
++"while in product context."
++msgstr ""
++
++#: multiproduct/product_admin.py:314
++#, python-format
++msgid "No documentation found for '%(cmd)s'. Use 'help' to see the list of commands."
++msgstr ""
++
++#: multiproduct/product_admin.py:320
++msgid "Did you mean this?"
++msgid_plural "Did you mean one of these?"
++msgstr[0] ""
++msgstr[1] ""
++
++#: multiproduct/product_admin.py:324
++#, python-format
++msgid "trac-admin - The Trac Administration Console %(version)s"
++msgstr ""
++
++#: multiproduct/product_admin.py:362
++msgid "Unknown administration panel"
++msgstr ""
++
++#: multiproduct/product_admin.py:413
++msgid "Version Control"
++msgstr ""
++
++#: multiproduct/product_admin.py:414
++#: multiproduct/templates/repository_links.html:30
++msgid "Repository Links"
++msgstr ""
++
++#: multiproduct/product_admin.py:415
++msgid "Repositories"
++msgstr ""
++
++#: multiproduct/web_ui.py:87 multiproduct/web_ui.py:112
++#, python-format
++msgid "Product %(pid)s not found"
++msgstr ""
++
++#: multiproduct/web_ui.py:91
++msgid "Unable to render product page. Wrong setup?"
++msgstr ""
++
++#: multiproduct/web_ui.py:94 multiproduct/templates/admin_products.html:30
++#: multiproduct/templates/product_list.html:30
++#: multiproduct/templates/product_list.html:35
++msgid "Products"
++msgstr ""
++
++#: multiproduct/web_ui.py:167 multiproduct/web_ui.py:187
++#, python-format
++msgid "A product with name \"%(name)s\" already exists, please choose a different name."
++msgstr ""
++
++#: multiproduct/web_ui.py:170 multiproduct/web_ui.py:185
++msgid "You must provide a name for the product."
++msgstr ""
++
++#: multiproduct/web_ui.py:180
++msgid "You must provide a prefix for the product."
++msgstr ""
++
++#: multiproduct/web_ui.py:182
++#, python-format
++msgid "Product \"%(id)s\" already exists, please choose another prefix."
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:34
++msgid "Manage Products"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:38
++msgid "Owner:"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:55
++msgid "Modify Product:"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:57
++#: multiproduct/templates/admin_products.html:89
++msgid "Prefix:"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:60
++#: multiproduct/templates/admin_products.html:92
++msgid "Name:"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:65
++msgid ""
++"Description (you may use\n"
++"                [1:WikiFormatting]\n"
++"                here):"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:78
++msgid "Save"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:79
++#: multiproduct/templates/product_delete.html:44
++#: multiproduct/templates/product_edit.html:64
++msgid "Cancel"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:87
++msgid "Add Product:"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:96
++#: multiproduct/templates/repository_links.html:83
++msgid "Add"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:106
++msgid "Default"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:125
++#: multiproduct/templates/repository_links.html:69
++msgid "Remove selected items"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:126
++msgid "Apply changes"
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:128
++msgid ""
++"You can remove all items from this list to completely hide this\n"
++"              field from the user interface."
++msgstr ""
++
++#: multiproduct/templates/admin_products.html:134
++msgid ""
++"As long as you don't add any items to the list, this field\n"
++"            will remain completely hidden from the user interface."
++msgstr ""
++
++#: multiproduct/templates/product_delete.html:30
++#: multiproduct/templates/product_delete.html:35
++msgid "Delete Product"
++msgstr ""
++
++#: multiproduct/templates/product_delete.html:40
++msgid "Are you sure you want to delete this product?"
++msgstr ""
++
++#: multiproduct/templates/product_delete.html:43
++#: multiproduct/templates/product_view.html:54
++msgid "Delete product"
++msgstr ""
++
++#: multiproduct/templates/product_edit.html:31
++#: multiproduct/templates/product_edit.html:39
++msgid "Edit Product"
++msgstr ""
++
++#: multiproduct/templates/product_edit.html:32
++#: multiproduct/templates/product_edit.html:40
++msgid "New Product"
++msgstr ""
++
++#: multiproduct/templates/product_edit.html:46
++msgid "Short name for the product (prefix):"
++msgstr ""
++
++#: multiproduct/templates/product_edit.html:49
++msgid "Name of the product:"
++msgstr ""
++
++#: multiproduct/templates/product_edit.html:55
++msgid "Description (you may use [1:WikiFormatting] here):"
++msgstr ""
++
++#: multiproduct/templates/product_edit.html:62
++msgid "Submit changes"
++msgstr ""
++
++#: multiproduct/templates/product_edit.html:63
++msgid "Add Product"
++msgstr ""
++
++#: multiproduct/templates/product_list.html:53
++msgid "Add new product"
++msgstr ""
++
++#: multiproduct/templates/product_view.html:31
++msgid "Edit this product"
++msgstr ""
++
++#: multiproduct/templates/product_view.html:48
++msgid "Edit product"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:33
++msgid "Manage repository links"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:44
++msgid "Type"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:45
++msgid "Directory"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:46
++msgid "Revision"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:53
++#: multiproduct/templates/repository_links.html:55
++msgid "(default)"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:58
++#, python-format
++msgid "Alias of %(repo)s"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:65
++msgid "No linked repositories."
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:68
++msgid "Refresh"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:76
++msgid "Add repository link"
++msgstr ""
++
++#: multiproduct/templates/repository_links.html:87
++msgid "No repositories to add."
++msgstr ""
++
++#: multiproduct/ticket/batch.py:49
++msgid "add"
++msgstr ""
++
++#: multiproduct/ticket/batch.py:50
++msgid "remove"
++msgstr ""
++
++#: multiproduct/ticket/batch.py:51
++msgid "add / remove"
++msgstr ""
++
++#: multiproduct/ticket/batch.py:52
++msgid "set to"
++msgstr ""
++
++#: multiproduct/ticket/query.py:115
++#, python-format
++msgid "Page %(page)s is beyond the number of pages in the query"
++msgstr ""
++
++#: multiproduct/ticket/query.py:294
++#, python-format
++msgid "Ticket completion status for each %(group)s"
++msgstr ""
++
++#: multiproduct/ticket/query.py:309
++msgid "No results"
++msgstr ""
++
++#: multiproduct/ticket/query.py:342
++#, python-format
++msgid "%(groupvalue)s %(groupname)s tickets matching %(query)s"
++msgstr ""
++
++#: multiproduct/ticket/query.py:366
++#, python-format
++msgid "%(groupvalue)s %(groupname)s tickets:"
++msgstr ""
++
++#: multiproduct/ticket/web_ui.py:63
++msgid "id can't be set for a new ticket request."
++msgstr ""
++
++#: multiproduct/ticket/web_ui.py:70 multiproduct/ticket/web_ui.py:80
++msgid "Invalid ticket number"
++msgstr ""
++
++#: multiproduct/ticket/web_ui.py:135
++#, python-format
++msgid "%(title)s: %(message)s"
++msgstr ""
++
++#: multiproduct/ticket/web_ui.py:155
++msgid "View Tickets"
++msgstr ""
++
+diff -r e9da4f695311 bloodhound_relations/bhrelations/locale/fr/LC_MESSAGES/bhrelations.po
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/bloodhound_relations/bhrelations/locale/fr/LC_MESSAGES/bhrelations.po	Wed Nov 20 03:26:01 2013 +0100
+@@ -0,0 +1,184 @@
++# Translations template for BloodhoundRelationsPlugin.
++# Copyright (C) 2013 ORGANIZATION
++# This file is distributed under the same license as the BloodhoundRelationsPlugin project.
++# Translators:
++# SaintGermain <saintger@gmail.com>, 2013
++msgid ""
++msgstr ""
++"Project-Id-Version: bloodhound\n"
++"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
++"POT-Creation-Date: 2013-11-17 02:22+0100\n"
++"PO-Revision-Date: 2013-11-17 14:04+0000\n"
++"Last-Translator: SaintGermain <saintger@gmail.com>\n"
++"Language-Team: French (http://www.transifex.com/projects/p/bloodhound/language/fr/)\n"
++"MIME-Version: 1.0\n"
++"Content-Type: text/plain; charset=UTF-8\n"
++"Content-Transfer-Encoding: 8bit\n"
++"Generated-By: Babel 0.9.6\n"
++"Language: fr\n"
++"Plural-Forms: nplurals=2; plural=(n > 1);\n"
++
++#: bhrelations/api.py:197
++msgid ""
++"Validators used to validate all relations,\n"
++"regardless of their type."
++msgstr "Validateurs utilisés pour valider toutes les relations, indépendamment de leur type."
++
++#: bhrelations/api.py:207
++msgid "Relation type to be used with the resolve as duplicate workflow."
++msgstr "Type de relation à utiliser avec le flux de tâche de résolution en tant que doublon"
++
++#: bhrelations/web_ui.py:58
++msgid "No ticket id provided."
++msgstr "Aucun id de ticket n'est fourni."
++
++#: bhrelations/web_ui.py:63
++msgid "Invalid ticket id."
++msgstr "ID de ticket non valide."
++
++#: bhrelations/web_ui.py:92 bhrelations/web_ui.py:102
++msgid "Invalid ticket ID."
++msgstr "ID de ticket invalide."
++
++#: bhrelations/web_ui.py:104
++msgid "Unknown relation type."
++msgstr "Type de relation inconnu."
++
++#: bhrelations/web_ui.py:118
++#, python-format
++msgid ""
++"The relation has been added, but an error occurred while "
++"sendingnotifications: %(message)s"
++msgstr "La relation a été créée, mais une erreur est survenue lors de l'envoi des notifications : %(message)s"
++
++#: bhrelations/web_ui.py:123
++msgid "Invalid operation."
++msgstr "Opération invalide."
++
++#: bhrelations/web_ui.py:190
++#, python-format
++msgid "Not enough permissions to remove relation \"%s\""
++msgstr "Permissions insuffisantes pour enlever la relation \"%s\""
++
++#: bhrelations/templates/relation_notify_email.txt:1
++#, python-format
++msgid ""
++"{#\n"
++"  Licensed to the Apache Software Foundation (ASF) under one\n"
++"  or more contributor license agreements.  See the NOTICE file\n"
++"  distributed with this work for additional information\n"
++"  regarding copyright ownership.  The ASF licenses this file\n"
++"  to you under the Apache License, Version 2.0 (the\n"
++"  \"License\"); you may not use this file except in compliance\n"
++"  with the License.  You may obtain a copy of the License at\n"
++"\n"
++"   http://www.apache.org/licenses/LICENSE-2.0\n"
++"\n"
++"  Unless required by applicable law or agreed to in writing,\n"
++"  software distributed under the License is distributed on an\n"
++"  \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n"
++"  KIND, either express or implied.  See the License for the\n"
++"  specific language governing permissions and limitations\n"
++"  under the License.\n"
++"#}\\\n"
++"\n"
++"{% choose created %}\\\n"
++"    {% when True %}\\"
++msgstr ""
++
++#: bhrelations/templates/relation_notify_email.txt:21
++#, python-format
++msgid "Relation %(type)s %(source)s -> %(destination)s created."
++msgstr "Relation %(type)s %(source)s -> %(destination)s créée."
++
++#: bhrelations/templates/relation_notify_email.txt:21
++#, python-format
++msgid ""
++"{% end %}\\\n"
++"    {% otherwise %}"
++msgstr ""
++
++#: bhrelations/templates/relation_notify_email.txt:22
++#, python-format
++msgid "Relation %(type)s %(source)s -> %(destination)s deleted."
++msgstr "Relation %(type)s %(source)s -> %(destination)s supprimée."
++
++#: bhrelations/templates/relation_notify_email.txt:22
++#, python-format
++msgid ""
++"{% end %}\\\n"
++"{% end %}\n"
++"\n"
++"--"
++msgstr ""
++
++#: bhrelations/templates/relations_manage.html:33
++#, python-format
++msgid "Ticket relations for #%(ticket_id)s"
++msgstr "Relations de ticket pour #%(ticket_id)s"
++
++#: bhrelations/templates/relations_manage.html:37
++#, python-format
++msgid "Manage relations for ticket [1:#%(ticket_id)s]"
++msgstr "Gérer les relations pour le ticket [1:#%(ticket_id)s]"
++
++#: bhrelations/templates/relations_manage.html:42
++#, python-format
++msgid ""
++"[1:Oops !]\n"
++"            Could not create relation.\n"
++"            %(error)s"
++msgstr "[1:Oops !]\n            Ne peut créer la relation.\n            %(error)s"
++
++#: bhrelations/templates/relations_manage.html:51
++msgid "Add relation"
++msgstr "Ajouter relation"
++
++#: bhrelations/templates/relations_manage.html:55
++msgid "This ticket"
++msgstr "Ce ticket"
++
++#: bhrelations/templates/relations_manage.html:64
++msgid "Related ticket"
++msgstr "Ticket en relation"
++
++#: bhrelations/templates/relations_manage.html:71
++#: bhrelations/templates/relations_manage.html:94
++msgid "Comment"
++msgstr "Commentaire"
++
++#: bhrelations/templates/relations_manage.html:79
++msgid "Add"
++msgstr "Ajouter"
++
++#: bhrelations/templates/relations_manage.html:94
++msgid "Type"
++msgstr "Type"
++
++#: bhrelations/templates/relations_manage.html:94
++msgid "Product"
++msgstr "Produit"
++
++#: bhrelations/templates/relations_manage.html:94
++msgid "Ticket"
++msgstr "Ticket"
++
++#: bhrelations/templates/relations_manage.html:94
++msgid "Author"
++msgstr "Auteur"
++
++#: bhrelations/templates/relations_manage.html:94
++msgid "Changed"
++msgstr "Modifié"
++
++#: bhrelations/templates/relations_manage.html:118
++msgid "Remove selected relations"
++msgstr "Supprimer les relations sélectionnées"
++
++#: bhrelations/templates/relations_manage.html:122
++msgid "No defined relations for this ticket."
++msgstr "Aucune relation définie pour ce ticket."
++
++#: bhrelations/widgets/relations.py:61
++msgid "Related tickets"
++msgstr "Tickets en relation"
+diff -r e9da4f695311 bloodhound_relations/bhrelations/locale/messages.pot
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/bloodhound_relations/bhrelations/locale/messages.pot	Wed Nov 20 03:26:01 2013 +0100
+@@ -0,0 +1,181 @@
++# Translations template for BloodhoundRelationsPlugin.
++# Copyright (C) 2013 ORGANIZATION
++# This file is distributed under the same license as the BloodhoundRelationsPlugin project.
++# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
++##, fuzzy
++msgid ""
++msgstr ""
++"Project-Id-Version: BloodhoundRelationsPlugin 0.8.0\n"
++"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
++"POT-Creation-Date: 2013-11-17 02:22+0100\n"
++"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
++"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
++"Language-Team: LANGUAGE <LL@li.org>\n"
++"MIME-Version: 1.0\n"
++"Content-Type: text/plain; charset=utf-8\n"
++"Content-Transfer-Encoding: 8bit\n"
++"Generated-By: Babel 0.9.6\n"
++
++#: bhrelations/api.py:197
++msgid ""
++"Validators used to validate all relations,\n"
++"regardless of their type."
++msgstr ""
++
++#: bhrelations/api.py:207
++msgid "Relation type to be used with the resolve as duplicate workflow."
++msgstr ""
++
++#: bhrelations/web_ui.py:58
++msgid "No ticket id provided."
++msgstr ""
++
++#: bhrelations/web_ui.py:63
++msgid "Invalid ticket id."
++msgstr ""
++
++#: bhrelations/web_ui.py:92 bhrelations/web_ui.py:102
++msgid "Invalid ticket ID."
++msgstr ""
++
++#: bhrelations/web_ui.py:104
++msgid "Unknown relation type."
++msgstr ""
++
++#: bhrelations/web_ui.py:118
++#, python-format
++msgid "The relation has been added, but an error occurred while sendingnotifications: %(message)s"
++msgstr ""
++
++#: bhrelations/web_ui.py:123