diff --git a/locale/fr/LC_MESSAGES/django.mo b/locale/fr/LC_MESSAGES/django.mo index bf842ded..8667ce29 100644 Binary files a/locale/fr/LC_MESSAGES/django.mo and b/locale/fr/LC_MESSAGES/django.mo differ diff --git a/locale/fr/LC_MESSAGES/django.po b/locale/fr/LC_MESSAGES/django.po index 2df6d543..265295a3 100644 --- a/locale/fr/LC_MESSAGES/django.po +++ b/locale/fr/LC_MESSAGES/django.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-01-03 14:35+0100\n" +"POT-Creation-Date: 2017-01-07 13:15+0100\n" "PO-Revision-Date: 2016-07-18\n" "Last-Translator: Skia \n" "Language-Team: AE info \n" @@ -17,10 +17,10 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: accounting/models.py:36 accounting/models.py:58 accounting/models.py:85 -#: accounting/models.py:144 club/models.py:19 counter/models.py:71 -#: counter/models.py:96 counter/models.py:131 launderette/models.py:15 -#: launderette/models.py:60 launderette/models.py:85 stock/models.py:11 -#: stock/models.py:24 stock/models.py:45 +#: accounting/models.py:144 club/models.py:18 counter/models.py:70 +#: counter/models.py:95 counter/models.py:130 launderette/models.py:13 +#: launderette/models.py:58 launderette/models.py:83 stock/models.py:13 +#: stock/models.py:29 stock/models.py:52 stock/models.py:72 msgid "name" msgstr "nom" @@ -40,7 +40,7 @@ msgstr "code postal" msgid "country" msgstr "pays" -#: accounting/models.py:41 core/models.py:168 +#: accounting/models.py:41 core/models.py:155 msgid "phone" msgstr "téléphone" @@ -64,8 +64,8 @@ msgstr "IBAN" msgid "account number" msgstr "numero de compte" -#: accounting/models.py:61 accounting/models.py:86 club/models.py:146 -#: counter/models.py:105 counter/models.py:132 +#: accounting/models.py:61 accounting/models.py:86 club/models.py:145 +#: com/models.py:34 counter/models.py:104 counter/models.py:131 msgid "club" msgstr "club" @@ -86,12 +86,13 @@ msgstr "Compte club" msgid "%(club_account)s on %(bank_account)s" msgstr "%(club_account)s sur %(bank_account)s" -#: accounting/models.py:142 club/models.py:147 counter/models.py:388 -#: launderette/models.py:122 +#: accounting/models.py:142 club/models.py:146 counter/models.py:399 +#: election/models.py:18 launderette/models.py:120 msgid "start date" msgstr "date de début" -#: accounting/models.py:143 club/models.py:148 counter/models.py:389 +#: accounting/models.py:143 club/models.py:147 counter/models.py:400 +#: election/models.py:19 msgid "end date" msgstr "date de fin" @@ -103,8 +104,8 @@ msgstr "est fermé" msgid "club account" msgstr "compte club" -#: accounting/models.py:147 accounting/models.py:193 counter/models.py:29 -#: counter/models.py:241 +#: accounting/models.py:147 accounting/models.py:193 counter/models.py:28 +#: counter/models.py:239 msgid "amount" msgstr "montant" @@ -124,18 +125,19 @@ msgstr "numéro" msgid "journal" msgstr "classeur" -#: accounting/models.py:194 core/models.py:515 core/models.py:818 -#: counter/models.py:244 counter/models.py:287 counter/models.py:405 -#: eboutic/models.py:15 eboutic/models.py:48 stock/models.py:44 +#: accounting/models.py:194 core/models.py:517 core/models.py:862 +#: core/models.py:902 counter/models.py:242 counter/models.py:290 +#: counter/models.py:416 eboutic/models.py:15 eboutic/models.py:48 +#: stock/models.py:51 msgid "date" msgstr "date" -#: accounting/models.py:195 counter/models.py:406 +#: accounting/models.py:195 counter/models.py:417 stock/models.py:54 msgid "comment" msgstr "commentaire" -#: accounting/models.py:196 counter/models.py:245 counter/models.py:288 -#: subscription/models.py:57 +#: accounting/models.py:196 counter/models.py:243 counter/models.py:291 +#: subscription/models.py:29 msgid "payment method" msgstr "méthode de paiement" @@ -160,9 +162,9 @@ msgid "accounting type" msgstr "type comptable" #: accounting/models.py:205 accounting/models.py:299 accounting/models.py:325 -#: accounting/models.py:348 counter/models.py:279 +#: accounting/models.py:348 counter/models.py:282 msgid "label" -msgstr "intitulé" +msgstr "étiquette" #: accounting/models.py:206 msgid "target type" @@ -174,11 +176,15 @@ msgstr "type de cible" #: core/templates/core/user_clubs.jinja:41 #: counter/templates/counter/cash_summary_list.jinja:32 #: counter/templates/counter/stats.jinja:15 +#: counter/templates/counter/stats.jinja:52 +#: counter/templates/counter/stats.jinja:77 #: launderette/templates/launderette/launderette_admin.jinja:44 msgid "User" msgstr "Utilisateur" #: accounting/models.py:207 club/templates/club/club_detail.jinja:5 +#: com/templates/com/news_admin_list.jinja:17 +#: com/templates/com/news_admin_list.jinja:51 #: counter/templates/counter/invoices_call.jinja:20 msgid "Club" msgstr "Club" @@ -191,7 +197,8 @@ msgstr "Compte" msgid "Company" msgstr "Entreprise" -#: accounting/models.py:207 sith/settings.py:305 +#: accounting/models.py:207 sith/settings.py:314 +#: stock/templates/stock/shopping_list_items.jinja:37 msgid "Other" msgstr "Autre" @@ -233,7 +240,7 @@ msgstr "" "Vous devez fournir soit un type comptable simplifié ou un type comptable " "standard" -#: accounting/models.py:294 counter/models.py:100 +#: accounting/models.py:294 counter/models.py:99 msgid "code" msgstr "code" @@ -245,11 +252,17 @@ msgstr "Un code comptable ne contient que des numéros" msgid "movement type" msgstr "type de mouvement" -#: accounting/models.py:300 accounting/views.py:388 +#: accounting/models.py:300 +#: accounting/templates/accounting/journal_statement_nature.jinja:8 +#: accounting/templates/accounting/journal_statement_person.jinja:11 +#: accounting/views.py:417 msgid "Credit" msgstr "Crédit" -#: accounting/models.py:300 accounting/views.py:388 +#: accounting/models.py:300 +#: accounting/templates/accounting/journal_statement_nature.jinja:27 +#: accounting/templates/accounting/journal_statement_person.jinja:39 +#: accounting/views.py:417 msgid "Debit" msgstr "Débit" @@ -278,7 +291,7 @@ msgstr "Liste des types comptable" #: accounting/templates/accounting/label_list.jinja:9 #: accounting/templates/accounting/operation_edit.jinja:9 #: accounting/templates/accounting/simplifiedaccountingtype_list.jinja:9 -#: core/templates/core/user_tools.jinja:52 +#: core/templates/core/user_tools.jinja:54 msgid "Accounting" msgstr "Comptabilité" @@ -297,7 +310,7 @@ msgstr "Il n'y a pas de types comptable dans ce site web." #: accounting/templates/accounting/bank_account_details.jinja:4 #: accounting/templates/accounting/bank_account_details.jinja:13 -#: core/templates/core/user_tools.jinja:60 +#: core/templates/core/user_tools.jinja:63 msgid "Bank account: " msgstr "Compte en banque : " @@ -305,23 +318,28 @@ msgstr "Compte en banque : " #: accounting/templates/accounting/club_account_details.jinja:16 #: accounting/templates/accounting/label_list.jinja:21 #: club/templates/club/club_sellings.jinja:49 -#: core/templates/core/file_detail.jinja:43 +#: core/templates/core/file_detail.jinja:25 +#: core/templates/core/file_detail.jinja:62 #: core/templates/core/file_moderation.jinja:24 -#: core/templates/core/group_list.jinja:13 core/templates/core/macros.jinja:66 +#: core/templates/core/group_list.jinja:13 core/templates/core/macros.jinja:49 +#: core/templates/core/macros.jinja:68 #: core/templates/core/user_account_detail.jinja:38 #: core/templates/core/user_edit.jinja:19 #: counter/templates/counter/last_ops.jinja:29 #: counter/templates/counter/last_ops.jinja:59 +#: election/templates/election/election_detail.jinja:280 +#: election/templates/election/election_detail.jinja:327 #: launderette/templates/launderette/launderette_admin.jinja:16 -#: launderette/views.py:146 sas/templates/sas/moderation.jinja:35 -#: sas/templates/sas/picture.jinja:66 +#: launderette/views.py:154 sas/templates/sas/album.jinja:26 +#: sas/templates/sas/moderation.jinja:18 sas/templates/sas/picture.jinja:66 +#: sas/templates/sas/picture.jinja.py:116 #: stock/templates/stock/stock_shopping_list.jinja:43 #: stock/templates/stock/stock_shopping_list.jinja:69 msgid "Delete" msgstr "Supprimer" #: accounting/templates/accounting/bank_account_details.jinja:17 -#: club/views.py:32 core/views/user.py:130 sas/templates/sas/picture.jinja:78 +#: club/views.py:33 core/views/user.py:130 sas/templates/sas/picture.jinja:78 msgid "Infos" msgstr "Infos" @@ -340,15 +358,19 @@ msgstr "Nouveau compte club" #: accounting/templates/accounting/bank_account_details.jinja:26 #: accounting/templates/accounting/bank_account_list.jinja:21 #: accounting/templates/accounting/club_account_details.jinja:55 -#: accounting/templates/accounting/journal_details.jinja:71 club/views.py:54 -#: core/templates/core/file.jinja:38 core/templates/core/page.jinja:31 -#: core/templates/core/user_tools.jinja:37 core/views/user.py:152 -#: counter/templates/counter/cash_summary_list.jinja:53 +#: accounting/templates/accounting/journal_details.jinja:82 club/views.py:55 +#: com/templates/com/news_admin_list.jinja:39 +#: com/templates/com/news_admin_list.jinja:71 core/templates/core/file.jinja:38 +#: core/templates/core/page.jinja:31 core/templates/core/user_tools.jinja:39 +#: core/views/user.py:152 counter/templates/counter/cash_summary_list.jinja:53 #: counter/templates/counter/counter_list.jinja:17 #: counter/templates/counter/counter_list.jinja:32 #: counter/templates/counter/counter_list.jinja:53 +#: election/templates/election/election_detail.jinja:279 +#: election/templates/election/election_detail.jinja:324 +#: election/templates/election/election_detail.jinja:370 #: launderette/templates/launderette/launderette_list.jinja:16 -#: sas/templates/sas/album.jinja:18 sas/templates/sas/picture.jinja:88 +#: sas/templates/sas/album.jinja:18 sas/templates/sas/picture.jinja:92 msgid "Edit" msgstr "Éditer" @@ -401,22 +423,26 @@ msgstr "Vous ne pouvez pas créer de journal tant qu'il y en a un d'ouvert" #: accounting/templates/accounting/club_account_details.jinja:28 #: launderette/templates/launderette/launderette_admin.jinja:43 -#: stock/templates/stock/shopping_list_items.jinja:19 +#: stock/templates/stock/shopping_list_items.jinja:20 #: stock/templates/stock/stock_shopping_list.jinja:26 #: stock/templates/stock/stock_shopping_list.jinja:55 msgid "Name" msgstr "Nom" #: accounting/templates/accounting/club_account_details.jinja:29 +#: com/templates/com/news_admin_list.jinja:20 +#: com/templates/com/news_admin_list.jinja:53 msgid "Start" -msgstr "" +msgstr "Début" #: accounting/templates/accounting/club_account_details.jinja:30 +#: com/templates/com/news_admin_list.jinja:21 +#: com/templates/com/news_admin_list.jinja:54 msgid "End" msgstr "Fin" #: accounting/templates/accounting/club_account_details.jinja:31 -#: accounting/templates/accounting/journal_details.jinja:31 +#: accounting/templates/accounting/journal_details.jinja:33 #: core/templates/core/user_account_detail.jinja:53 #: core/templates/core/user_account_detail.jinja:80 #: counter/templates/counter/last_ops.jinja:17 @@ -432,55 +458,80 @@ msgid "Closed" msgstr "Fermé" #: accounting/templates/accounting/club_account_details.jinja:34 -#: accounting/templates/accounting/journal_details.jinja:39 +#: accounting/templates/accounting/journal_details.jinja:41 +#: com/templates/com/news_admin_list.jinja:22 +#: com/templates/com/news_admin_list.jinja:55 msgid "Actions" msgstr "Actions" #: accounting/templates/accounting/club_account_details.jinja:50 -#: accounting/templates/accounting/journal_details.jinja:59 +#: accounting/templates/accounting/journal_details.jinja:61 msgid "Yes" msgstr "Oui" #: accounting/templates/accounting/club_account_details.jinja:52 -#: accounting/templates/accounting/journal_details.jinja:61 +#: accounting/templates/accounting/journal_details.jinja:63 msgid "No" msgstr "Non" #: accounting/templates/accounting/club_account_details.jinja:54 -#: core/templates/core/file.jinja:36 core/templates/core/page.jinja:28 +#: com/templates/com/news_admin_list.jinja:38 +#: com/templates/com/news_admin_list.jinja:70 core/templates/core/file.jinja:36 +#: core/templates/core/page.jinja:28 msgid "View" msgstr "Voir" +#: accounting/templates/accounting/co_list.jinja:4 +#: accounting/templates/accounting/journal_details.jinja:18 +#: core/templates/core/user_tools.jinja:59 +msgid "Company list" +msgstr "Liste des entreprises" + +#: accounting/templates/accounting/co_list.jinja:8 +msgid "Create new company" +msgstr "Nouvelle entreprise" + +#: accounting/templates/accounting/co_list.jinja:14 +msgid "Companies" +msgstr "Entreprises" + #: accounting/templates/accounting/journal_details.jinja:4 #: accounting/templates/accounting/journal_details.jinja:15 +#: accounting/templates/accounting/journal_statement_accounting.jinja:4 +#: accounting/templates/accounting/journal_statement_nature.jinja:4 +#: accounting/templates/accounting/journal_statement_person.jinja:4 msgid "General journal:" msgstr "Classeur : " -#: accounting/templates/accounting/journal_details.jinja:18 +#: accounting/templates/accounting/journal_details.jinja:19 +#: accounting/templates/accounting/journal_statement_accounting.jinja:29 #: core/templates/core/user_account.jinja:38 #: core/templates/core/user_account_detail.jinja:10 #: counter/templates/counter/counter_click.jinja:32 msgid "Amount: " msgstr "Montant : " -#: accounting/templates/accounting/journal_details.jinja:19 +#: accounting/templates/accounting/journal_details.jinja:20 +#: accounting/templates/accounting/journal_statement_accounting.jinja:30 msgid "Effective amount: " msgstr "Montant effectif: " -#: accounting/templates/accounting/journal_details.jinja:21 +#: accounting/templates/accounting/journal_details.jinja:22 msgid "Journal is closed, you can not create operation" msgstr "Le classeur est fermé, vous ne pouvez pas créer d'opération" -#: accounting/templates/accounting/journal_details.jinja:23 +#: accounting/templates/accounting/journal_details.jinja:24 msgid "New operation" msgstr "Nouvelle opération" -#: accounting/templates/accounting/journal_details.jinja:28 +#: accounting/templates/accounting/journal_details.jinja:30 #: counter/templates/counter/stats.jinja:14 +#: counter/templates/counter/stats.jinja:51 +#: counter/templates/counter/stats.jinja:76 msgid "Nb" msgstr "No" -#: accounting/templates/accounting/journal_details.jinja:29 +#: accounting/templates/accounting/journal_details.jinja:31 #: club/templates/club/club_sellings.jinja:19 #: core/templates/core/user_account_detail.jinja:17 #: core/templates/core/user_account_detail.jinja:50 @@ -493,51 +544,112 @@ msgstr "No" msgid "Date" msgstr "Date" -#: accounting/templates/accounting/journal_details.jinja:30 +#: accounting/templates/accounting/journal_details.jinja:32 #: club/templates/club/club_sellings.jinja:23 #: core/templates/core/user_account_detail.jinja:20 #: counter/templates/counter/last_ops.jinja:42 msgid "Label" msgstr "Étiquette" -#: accounting/templates/accounting/journal_details.jinja:32 +#: accounting/templates/accounting/journal_details.jinja:34 msgid "Payment mode" msgstr "Méthode de paiement" -#: accounting/templates/accounting/journal_details.jinja:33 +#: accounting/templates/accounting/journal_details.jinja:35 msgid "Target" msgstr "Cible" -#: accounting/templates/accounting/journal_details.jinja:34 +#: accounting/templates/accounting/journal_details.jinja:36 msgid "Code" msgstr "Code" -#: accounting/templates/accounting/journal_details.jinja:35 +#: accounting/templates/accounting/journal_details.jinja:37 msgid "Nature" msgstr "Nature" -#: accounting/templates/accounting/journal_details.jinja:36 +#: accounting/templates/accounting/journal_details.jinja:38 #: stock/templates/stock/stock_shopping_list.jinja:50 msgid "Done" msgstr "Effectuées" -#: accounting/templates/accounting/journal_details.jinja:37 +#: accounting/templates/accounting/journal_details.jinja:39 #: counter/templates/counter/cash_summary_list.jinja:37 counter/views.py:728 msgid "Comment" msgstr "Commentaire" -#: accounting/templates/accounting/journal_details.jinja:38 +#: accounting/templates/accounting/journal_details.jinja:40 msgid "File" msgstr "Fichier" -#: accounting/templates/accounting/journal_details.jinja:40 +#: accounting/templates/accounting/journal_details.jinja:42 msgid "PDF" -msgstr "" +msgstr "PDF" -#: accounting/templates/accounting/journal_details.jinja:74 +#: accounting/templates/accounting/journal_details.jinja:68 +msgid "" +"Warning: this operation has no linked operation because the targeted club " +"account has no opened journal." +msgstr "" +"Attention: cette opération n'a pas d'opération liée parce qu'il n'y a pas de " +"classeur ouvert dans le compte club cible" + +#: accounting/templates/accounting/journal_details.jinja:71 +#, python-format +msgid "" +"Open a journal in this club account, then save this " +"operation again to make the linked operation." +msgstr "" +"Ouvrez un classeur dans ce compte club, puis sauver " +"cette opération à nouveau pour créer l'opération liée." + +#: accounting/templates/accounting/journal_details.jinja:85 msgid "Generate" msgstr "Générer" +#: accounting/templates/accounting/journal_statement_accounting.jinja:9 +msgid "Accounting statement: " +msgstr "Bilan comptable : " + +#: accounting/templates/accounting/journal_statement_accounting.jinja:14 +msgid "Operation type" +msgstr "Type d'opération" + +#: accounting/templates/accounting/journal_statement_accounting.jinja:15 +#: accounting/templates/accounting/journal_statement_nature.jinja:13 +#: accounting/templates/accounting/journal_statement_nature.jinja:32 +#: accounting/templates/accounting/journal_statement_person.jinja:17 +#: accounting/templates/accounting/journal_statement_person.jinja:45 +#: counter/templates/counter/invoices_call.jinja:21 +msgid "Sum" +msgstr "Somme" + +#: accounting/templates/accounting/journal_statement_nature.jinja:12 +#: accounting/templates/accounting/journal_statement_nature.jinja:31 +msgid "Nature of operation" +msgstr "Nature de l'opération" + +#: accounting/templates/accounting/journal_statement_nature.jinja:25 +#: accounting/templates/accounting/journal_statement_nature.jinja:44 +#: club/templates/club/club_sellings.jinja:14 +#: counter/templates/counter/counter_click.jinja:70 +#: counter/templates/counter/counter_main.jinja:28 +#: eboutic/templates/eboutic/eboutic_main.jinja:34 +msgid "Total: " +msgstr "Total : " + +#: accounting/templates/accounting/journal_statement_nature.jinja:48 +msgid "Statement by nature: " +msgstr "Bilan par nature : " + +#: accounting/templates/accounting/journal_statement_person.jinja:9 +msgid "Statement by person: " +msgstr "Bilan par personne : " + +#: accounting/templates/accounting/journal_statement_person.jinja:16 +#: accounting/templates/accounting/journal_statement_person.jinja:44 +msgid "Target of the operation" +msgstr "Cible de l'opération" + #: accounting/templates/accounting/label_list.jinja:14 msgid "Back to club account" msgstr "Retour au compte club" @@ -552,10 +664,15 @@ msgstr "Il n'y a pas d'étiquette dans ce compte club." msgid "Edit operation" msgstr "Éditer l'opération" -#: accounting/templates/accounting/operation_edit.jinja:41 -#: core/templates/core/create.jinja:12 core/templates/core/edit.jinja:7 -#: core/templates/core/edit.jinja.py:15 core/templates/core/edit.jinja:20 -#: core/templates/core/file_edit.jinja:8 core/templates/core/page_prop.jinja:8 +#: accounting/templates/accounting/operation_edit.jinja:43 +msgid "Linked operation:" +msgstr "Opération liée : " + +#: accounting/templates/accounting/operation_edit.jinja:51 +#: com/templates/com/news_edit.jinja:66 core/templates/core/create.jinja:12 +#: core/templates/core/edit.jinja:7 core/templates/core/edit.jinja.py:15 +#: core/templates/core/edit.jinja:20 core/templates/core/file_edit.jinja:8 +#: core/templates/core/page_prop.jinja:8 #: core/templates/core/pagerev_edit.jinja:24 #: core/templates/core/user_godfathers.jinja:35 #: counter/templates/counter/cash_register_summary.jinja:22 @@ -565,7 +682,7 @@ msgstr "Sauver" #: accounting/templates/accounting/refound_account.jinja:4 #: accounting/templates/accounting/refound_account.jinja:8 -#: accounting/views.py:530 +#: accounting/views.py:680 msgid "Refound account" msgstr "Remboursement de compte" @@ -586,54 +703,83 @@ msgstr "Types simplifiés" msgid "New simplified type" msgstr "Nouveau type simplifié" -#: accounting/views.py:365 accounting/views.py:371 -msgid "Operation" -msgstr "Opération" - -#: accounting/views.py:371 +#: accounting/views.py:172 accounting/views.py:179 accounting/views.py:399 msgid "Journal" msgstr "Classeur" -#: accounting/views.py:382 +#: accounting/views.py:184 +msgid "Statement by nature" +msgstr "Bilan par nature" + +#: accounting/views.py:189 +msgid "Statement by person" +msgstr "Bilan par personne" + +#: accounting/views.py:194 +msgid "Accounting statement" +msgstr "Bilan comptable" + +#: accounting/views.py:393 accounting/views.py:399 +msgid "Operation" +msgstr "Opération" + +#: accounting/views.py:410 msgid "Financial proof: " msgstr "Justificatif de libellé : " -#: accounting/views.py:383 +#: accounting/views.py:411 #, python-format msgid "Club: %(club_name)s" msgstr "Club : %(club_name)s" -#: accounting/views.py:384 +#: accounting/views.py:412 #, python-format msgid "Label: %(op_label)s" msgstr "Libellé : %(op_label)s" -#: accounting/views.py:390 +#: accounting/views.py:413 +#, python-format +msgid "Date: %(date)s" +msgstr "Date : %(date)s" + +#: accounting/views.py:419 #, python-format msgid "Amount: %(amount).2f €" msgstr "Montant : %(amount).2f €" -#: accounting/views.py:402 +#: accounting/views.py:431 msgid "Debtor" msgstr "Débiteur" -#: accounting/views.py:402 +#: accounting/views.py:431 msgid "Creditor" msgstr "Créditeur" -#: accounting/views.py:404 +#: accounting/views.py:433 msgid "Comment:" msgstr "Commentaire :" -#: accounting/views.py:491 +#: accounting/views.py:452 +msgid "Signature:" +msgstr "Signature :" + +#: accounting/views.py:506 +msgid "General statement" +msgstr "Bilan général" + +#: accounting/views.py:509 +msgid "No label operations" +msgstr "Opérations sans étiquette" + +#: accounting/views.py:642 msgid "Refound this account" msgstr "Rembourser ce compte" -#: club/models.py:21 +#: club/models.py:20 msgid "unix name" msgstr "nom unix" -#: club/models.py:25 +#: club/models.py:24 msgid "" "Enter a valid unix name. This value may contain only letters, numbers ./-/_ " "characters." @@ -641,50 +787,52 @@ msgstr "" "Entrez un nom UNIX valide. Cette valeur peut contenir uniquement des " "lettres, des nombres, et les caractères ./-/_" -#: club/models.py:30 +#: club/models.py:29 msgid "A club with that unix name already exists." msgstr "Un club avec ce nom UNIX existe déjà." -#: club/models.py:33 core/models.py:170 +#: club/models.py:32 core/models.py:157 msgid "address" msgstr "Adresse" -#: club/models.py:39 core/models.py:118 +#: club/models.py:38 core/models.py:118 msgid "home" msgstr "home" -#: club/models.py:48 +#: club/models.py:47 msgid "You can not make loops in clubs" msgstr "Vous ne pouvez pas faire de boucles dans les clubs" -#: club/models.py:62 +#: club/models.py:61 msgid "A club with that unix_name already exists" msgstr "Un club avec ce nom UNIX existe déjà." -#: club/models.py:145 counter/models.py:386 counter/models.py:403 -#: eboutic/models.py:14 eboutic/models.py:47 launderette/models.py:89 -#: launderette/models.py:126 sas/models.py:101 +#: club/models.py:144 counter/models.py:397 counter/models.py:414 +#: eboutic/models.py:14 eboutic/models.py:47 election/models.py:126 +#: launderette/models.py:87 launderette/models.py:124 sas/models.py:131 msgid "user" msgstr "nom d'utilisateur" -#: club/models.py:149 core/models.py:137 +#: club/models.py:148 core/models.py:137 election/models.py:125 +#: election/models.py:141 msgid "role" msgstr "rôle" -#: club/models.py:151 core/models.py:33 counter/models.py:72 -#: counter/models.py:97 +#: club/models.py:150 core/models.py:33 counter/models.py:71 +#: counter/models.py:96 election/models.py:15 election/models.py:82 +#: election/models.py:127 msgid "description" msgstr "description" -#: club/models.py:156 +#: club/models.py:155 msgid "User must be subscriber to take part to a club" msgstr "L'utilisateur doit être cotisant pour faire partie d'un club" -#: club/models.py:158 +#: club/models.py:157 msgid "User is already member of that club" msgstr "L'utilisateur est déjà membre de ce club" -#: club/models.py:167 +#: club/models.py:161 msgid "past member" msgstr "Anciens membres" @@ -697,7 +845,7 @@ msgstr "Liste des clubs" msgid "New club" msgstr "Nouveau club" -#: club/templates/club/club_list.jinja:31 +#: club/templates/club/club_list.jinja:31 club/templates/club/stats.jinja:44 msgid "There is no club in this website." msgstr "Il n'y a pas de club dans ce site web." @@ -717,7 +865,7 @@ msgstr "Rôle" #: core/templates/core/user_clubs.jinja:17 #: core/templates/core/user_clubs.jinja:43 msgid "Description" -msgstr "description" +msgstr "Description" #: club/templates/club/club_members.jinja:11 #: core/templates/core/user_clubs.jinja:18 @@ -732,7 +880,7 @@ msgstr "Marquer comme ancien" #: club/templates/club/club_members.jinja:30 #: core/templates/core/file_detail.jinja:19 core/views/forms.py:203 -#: launderette/views.py:146 +#: launderette/views.py:154 msgid "Add" msgstr "Ajouter" @@ -750,13 +898,13 @@ msgstr "Du" msgid "To" msgstr "Au" -#: club/templates/club/club_sellings.jinja:5 club/views.py:59 club/views.py:216 +#: club/templates/club/club_sellings.jinja:5 club/views.py:60 club/views.py:220 #: counter/templates/counter/counter_main.jinja:19 #: counter/templates/counter/last_ops.jinja:35 msgid "Sellings" msgstr "Ventes" -#: club/templates/club/club_sellings.jinja:9 +#: club/templates/club/club_sellings.jinja:9 club/templates/club/stats.jinja:19 #: counter/templates/counter/cash_summary_list.jinja:15 msgid "Show" msgstr "Montrer" @@ -773,14 +921,7 @@ msgstr "Quantité : " msgid "units" msgstr "unités" -#: club/templates/club/club_sellings.jinja:14 -#: counter/templates/counter/counter_click.jinja:70 -#: counter/templates/counter/counter_main.jinja:28 -#: eboutic/templates/eboutic/eboutic_main.jinja:34 -msgid "Total: " -msgstr "Total : " - -#: club/templates/club/club_sellings.jinja:20 club/views.py:167 +#: club/templates/club/club_sellings.jinja:20 club/views.py:171 #: core/templates/core/user_account_detail.jinja:18 #: core/templates/core/user_account_detail.jinja:51 #: counter/templates/counter/cash_summary_list.jinja:33 counter/views.py:82 @@ -827,62 +968,289 @@ msgid "Payment method" msgstr "Méthode de paiement" #: club/templates/club/club_tools.jinja:4 -#: core/templates/core/user_tools.jinja:84 +#: core/templates/core/user_tools.jinja:91 msgid "Club tools" msgstr "Outils club" #: club/templates/club/club_tools.jinja:6 +msgid "Communication:" +msgstr "Communication : " + +#: club/templates/club/club_tools.jinja:8 +msgid "Create a news" +msgstr "Créer une nouvelle" + +#: club/templates/club/club_tools.jinja:10 msgid "Counters:" msgstr "Comptoirs : " -#: club/templates/club/club_tools.jinja:22 +#: club/templates/club/club_tools.jinja:26 msgid "Accouting: " msgstr "Comptabilité : " -#: club/templates/club/club_tools.jinja:30 +#: club/templates/club/club_tools.jinja:34 msgid "Manage launderettes" msgstr "Gestion des laveries" -#: club/views.py:38 +#: club/templates/club/stats.jinja:4 club/templates/club/stats.jinja.py:9 +msgid "Club stats" +msgstr "Statistiques du club" + +#: club/views.py:39 msgid "Members" msgstr "Membres" -#: club/views.py:43 +#: club/views.py:44 msgid "Old members" msgstr "Anciens membres" -#: club/views.py:49 core/templates/core/base.jinja:42 core/views/user.py:146 -#: sas/templates/sas/picture.jinja:83 +#: club/views.py:50 core/templates/core/base.jinja:64 core/views/user.py:146 +#: sas/templates/sas/picture.jinja:87 msgid "Tools" msgstr "Outils" -#: club/views.py:65 counter/templates/counter/counter_list.jinja:21 +#: club/views.py:66 counter/templates/counter/counter_list.jinja:21 #: counter/templates/counter/counter_list.jinja:42 #: counter/templates/counter/counter_list.jinja:57 msgid "Props" msgstr "Propriétés" -#: club/views.py:103 core/views/forms.py:204 counter/views.py:39 +#: club/views.py:107 core/views/forms.py:204 counter/views.py:39 msgid "Select user" msgstr "Choisir un utilisateur" -#: club/views.py:150 sas/views.py:71 sas/views.py:117 sas/views.py:159 +#: club/views.py:154 sas/views.py:82 sas/views.py:132 sas/views.py:201 msgid "You do not have the permission to do that" msgstr "Vous n'avez pas la permission de faire cela" -#: club/views.py:165 counter/views.py:926 +#: club/views.py:169 counter/views.py:949 msgid "Begin date" msgstr "Date de début" -#: club/views.py:166 counter/views.py:927 +#: club/views.py:170 com/views.py:81 counter/views.py:950 election/views.py:131 msgid "End date" msgstr "Date de fin" -#: club/views.py:180 core/templates/core/user_stats.jinja:27 -#: counter/views.py:1007 +#: club/views.py:184 core/templates/core/user_stats.jinja:27 +#: counter/views.py:1030 msgid "Product" msgstr "Produit" +#: com/models.py:11 +msgid "alert message" +msgstr "message d'alerte" + +#: com/models.py:12 +msgid "info message" +msgstr "message d'info" + +#: com/models.py:13 +msgid "index page" +msgstr "page d'accueil" + +#: com/models.py:22 +msgid "Notice" +msgstr "Information" + +#: com/models.py:23 +msgid "Event" +msgstr "Événement" + +#: com/models.py:24 com/templates/com/news_list.jinja:79 +msgid "Weekly" +msgstr "Hebdomadaire" + +#: com/models.py:25 +msgid "Call" +msgstr "Appel" + +#: com/models.py:30 election/models.py:14 election/models.py:81 +#: election/models.py:114 +msgid "title" +msgstr "titre" + +#: com/models.py:31 +msgid "summary" +msgstr "résumé" + +#: com/models.py:32 +msgid "content" +msgstr "contenu de la nouvelle" + +#: com/models.py:33 core/models.py:901 launderette/models.py:60 +#: launderette/models.py:85 launderette/models.py:121 stock/models.py:34 +#: stock/models.py:73 +msgid "type" +msgstr "type" + +#: com/models.py:35 +msgid "author" +msgstr "auteur" + +#: com/models.py:36 core/models.py:518 +msgid "is moderated" +msgstr "est modéré" + +#: com/models.py:37 +msgid "moderator" +msgstr "modérateur" + +#: com/models.py:61 +msgid "news_date" +msgstr "date de la nouvelle" + +#: com/models.py:62 +msgid "start_date" +msgstr "date de début" + +#: com/models.py:63 +msgid "end_date" +msgstr "date de fin" + +#: com/templates/com/news_admin_list.jinja:5 +msgid "News admin" +msgstr "Administration des nouvelles" + +#: com/templates/com/news_admin_list.jinja:9 +#: com/templates/com/news_detail.jinja:5 com/templates/com/news_detail.jinja:11 +#: com/templates/com/news_list.jinja:4 com/templates/com/news_list.jinja:28 +msgid "News" +msgstr "Nouvelles" + +#: com/templates/com/news_admin_list.jinja:10 +msgid "Displayed news" +msgstr "Nouvelles affichées" + +#: com/templates/com/news_admin_list.jinja:14 +#: com/templates/com/news_admin_list.jinja:48 +#: launderette/templates/launderette/launderette_admin.jinja:42 +#: launderette/views.py:156 +msgid "Type" +msgstr "Type" + +#: com/templates/com/news_admin_list.jinja:15 +#: com/templates/com/news_admin_list.jinja:49 +msgid "Title" +msgstr "Titre" + +#: com/templates/com/news_admin_list.jinja:16 +#: com/templates/com/news_admin_list.jinja:50 +msgid "Summary" +msgstr "Résumé" + +#: com/templates/com/news_admin_list.jinja:18 +#: com/templates/com/news_admin_list.jinja:52 +msgid "Author" +msgstr "Auteur" + +#: com/templates/com/news_admin_list.jinja:19 +msgid "Moderator" +msgstr "Modérateur" + +#: com/templates/com/news_admin_list.jinja:44 +msgid "News to moderate" +msgstr "Nouvelles à modérer" + +#: com/templates/com/news_admin_list.jinja:72 +#: com/templates/com/news_detail.jinja:26 +#: core/templates/core/file_detail.jinja:65 +#: core/templates/core/file_moderation.jinja:23 +#: sas/templates/sas/moderation.jinja:17 sas/templates/sas/picture.jinja:114 +msgid "Moderate" +msgstr "Modérer" + +#: com/templates/com/news_detail.jinja:10 +msgid "Back to news" +msgstr "Retour aux nouvelles" + +#: com/templates/com/news_detail.jinja:22 com/templates/com/news_edit.jinja:34 +msgid "Author: " +msgstr "Auteur : " + +#: com/templates/com/news_detail.jinja:24 sas/templates/sas/picture.jinja:82 +msgid "Moderator: " +msgstr "Modérateur : " + +#: com/templates/com/news_detail.jinja:29 +msgid "Edit (will be remoderated)" +msgstr "Éditer (sera resoumise à modération)" + +#: com/templates/com/news_edit.jinja:6 com/templates/com/news_edit.jinja:38 +msgid "Edit news" +msgstr "Éditer la nouvelle" + +#: com/templates/com/news_edit.jinja:8 com/templates/com/news_edit.jinja:40 +msgid "Create news" +msgstr "Créer nouvelle" + +#: com/templates/com/news_edit.jinja:48 +msgid "Notice: Information, election result - no date" +msgstr "Information, resultat d'élection - sans date" + +#: com/templates/com/news_edit.jinja:49 +msgid "Event: punctual event, associated with one date" +msgstr "Événement : événement ponctuel associé à une date" + +#: com/templates/com/news_edit.jinja:50 +msgid "" +"Weekly: recurrent event, associated with many dates (specify the first one, " +"and a deadline)" +msgstr "" +"Hebdomadaire : événement récurrent, associé à plusieurs dates (spécifier la " +"première, ainsi que la date de fin)" + +#: com/templates/com/news_edit.jinja:51 +msgid "" +"Call: long time event, associated with a long date (election appliance, ...)" +msgstr "" +"Appel : événement de longue durée, associé à une longue date (candidature, " +"concours, ...)" + +#: com/templates/com/news_edit.jinja:65 +#: core/templates/core/pagerev_edit.jinja:23 +msgid "Preview" +msgstr "Prévisualiser" + +#: com/templates/com/news_list.jinja:48 +msgid "Events today and the next few days" +msgstr "Événement aujourd'hui et dans les prochains jours" + +#: com/templates/com/news_list.jinja:65 +msgid "Coming soon... don't miss!" +msgstr "Prochainement... à ne pas rater!" + +#: com/views.py:27 +msgid "Communication administration" +msgstr "Administration de la communication" + +#: com/views.py:34 +msgid "Index page" +msgstr "Page d'accueil" + +#: com/views.py:39 +msgid "Info message" +msgstr "Message d'info" + +#: com/views.py:44 +msgid "Alert message" +msgstr "Message d'alerte" + +#: com/views.py:80 election/views.py:130 +msgid "Start date" +msgstr "Date de début" + +#: com/views.py:82 +msgid "Until" +msgstr "Jusqu'à" + +#: com/views.py:83 +msgid "Automoderation" +msgstr "Automodération" + +#: com/views.py:89 com/views.py:91 com/views.py:93 +msgid "This field is required." +msgstr "Ce champ est obligatoire." + #: core/models.py:29 msgid "meta group status" msgstr "status du meta-groupe" @@ -1066,246 +1434,203 @@ msgstr "Service" msgid "department" msgstr "département" -#: core/models.py:147 -msgid "TC" -msgstr "TC" - #: core/models.py:148 -msgid "IMSI" -msgstr "IMSI" - -#: core/models.py:149 -msgid "IMAP" -msgstr "IMAP" - -#: core/models.py:150 -msgid "INFO" -msgstr "INFO" - -#: core/models.py:151 -msgid "GI" -msgstr "GI" - -#: core/models.py:152 -msgid "E" -msgstr "E" - -#: core/models.py:153 -msgid "EE" -msgstr "EE" - -#: core/models.py:154 -msgid "GESC" -msgstr "GESC" - -#: core/models.py:155 -msgid "GMC" -msgstr "GMC" - -#: core/models.py:156 -msgid "MC" -msgstr "MC" - -#: core/models.py:157 -msgid "EDIM" -msgstr "EDIM" - -#: core/models.py:158 -msgid "Humanities" -msgstr "Humanités" - -#: core/models.py:159 -msgid "N/A" -msgstr "N/A" - -#: core/models.py:161 msgid "dpt option" msgstr "Filière" -#: core/models.py:162 +#: core/models.py:149 msgid "semester" msgstr "semestre" -#: core/models.py:163 +#: core/models.py:150 msgid "quote" msgstr "citation" -#: core/models.py:164 +#: core/models.py:151 msgid "school" msgstr "école" -#: core/models.py:165 +#: core/models.py:152 msgid "promo" msgstr "promo" -#: core/models.py:166 +#: core/models.py:153 msgid "forum signature" msgstr "signature du forum" -#: core/models.py:167 +#: core/models.py:154 msgid "second email address" msgstr "adresse email secondaire" -#: core/models.py:169 +#: core/models.py:156 msgid "parent phone" msgstr "téléphone des parents" -#: core/models.py:171 +#: core/models.py:158 msgid "parent address" msgstr "adresse des parents" -#: core/models.py:172 +#: core/models.py:159 msgid "is subscriber viewable" msgstr "profil visible par les cotisants" -#: core/models.py:301 +#: core/models.py:292 msgid "A user with that username already exists" msgstr "Un utilisateur de ce nom d'utilisateur existe déjà" -#: core/models.py:426 core/templates/core/macros.jinja:17 +#: core/models.py:417 core/templates/core/macros.jinja:17 #: core/templates/core/user_detail.jinja:14 #: core/templates/core/user_detail.jinja:16 #: core/templates/core/user_edit.jinja:17 +#: election/templates/election/election_detail.jinja:316 msgid "Profile" msgstr "Profil" -#: core/models.py:484 +#: core/models.py:486 msgid "Visitor" msgstr "Visiteur" -#: core/models.py:489 +#: core/models.py:491 msgid "define if we show a users stats" msgstr "Definit si l'on montre les statistiques de l'utilisateur" -#: core/models.py:491 +#: core/models.py:493 msgid "Show your account statistics to others" msgstr "Montrez vos statistiques de compte aux autres" -#: core/models.py:504 +#: core/models.py:506 msgid "file name" msgstr "nom du fichier" -#: core/models.py:505 core/models.py:665 +#: core/models.py:507 core/models.py:707 msgid "parent" msgstr "parent" -#: core/models.py:506 core/models.py:521 +#: core/models.py:508 core/models.py:524 msgid "file" msgstr "fichier" -#: core/models.py:507 +#: core/models.py:509 msgid "compressed file" msgstr "version allégée" -#: core/models.py:508 +#: core/models.py:510 msgid "thumbnail" msgstr "miniature" -#: core/models.py:509 +#: core/models.py:511 core/models.py:519 msgid "owner" msgstr "propriétaire" -#: core/models.py:510 core/models.py:671 +#: core/models.py:512 core/models.py:713 msgid "edit group" msgstr "groupe d'édition" -#: core/models.py:511 core/models.py:672 +#: core/models.py:513 core/models.py:714 msgid "view group" msgstr "groupe de vue" -#: core/models.py:512 +#: core/models.py:514 msgid "is folder" msgstr "est un dossier" -#: core/models.py:513 +#: core/models.py:515 msgid "mime type" msgstr "type mime" -#: core/models.py:514 +#: core/models.py:516 msgid "size" msgstr "taille" -#: core/models.py:516 -msgid "is moderated" -msgstr "est modéré" - -#: core/models.py:517 +#: core/models.py:520 msgid "asked for removal" msgstr "retrait demandé" -#: core/models.py:518 +#: core/models.py:521 msgid "is in the SAS" msgstr "est dans le SAS" -#: core/models.py:555 +#: core/models.py:560 msgid "Character '/' not authorized in name" msgstr "Le caractère '/' n'est pas autorisé dans les noms de fichier" -#: core/models.py:558 core/models.py:563 +#: core/models.py:563 core/models.py:568 msgid "Loop in folder tree" msgstr "Boucle dans l'arborescence des dossiers" -#: core/models.py:567 +#: core/models.py:572 msgid "You can not make a file be a children of a non folder file" msgstr "" "Vous ne pouvez pas mettre un fichier enfant de quelque chose qui n'est pas " "un dossier" -#: core/models.py:571 +#: core/models.py:576 msgid "Duplicate file" msgstr "Un fichier de ce nom existe déjà" -#: core/models.py:585 +#: core/models.py:590 msgid "You must provide a file" msgstr "Vous devez fournir un fichier" -#: core/models.py:617 +#: core/models.py:656 msgid "Folder: " msgstr "Dossier : " -#: core/models.py:619 +#: core/models.py:658 msgid "File: " msgstr "Fichier : " -#: core/models.py:664 core/models.py:668 +#: core/models.py:706 core/models.py:710 msgid "page name" msgstr "nom de la page" -#: core/models.py:669 +#: core/models.py:711 msgid "owner group" msgstr "groupe propriétaire" -#: core/models.py:673 +#: core/models.py:715 msgid "lock user" msgstr "utilisateur bloquant" -#: core/models.py:674 +#: core/models.py:716 msgid "lock_timeout" msgstr "décompte du déblocage" -#: core/models.py:701 +#: core/models.py:743 msgid "Duplicate page" msgstr "Une page de ce nom existe déjà" -#: core/models.py:707 +#: core/models.py:749 msgid "Loop in page tree" msgstr "Boucle dans l'arborescence des pages" -#: core/models.py:815 +#: core/models.py:859 msgid "revision" msgstr "révision" -#: core/models.py:816 +#: core/models.py:860 msgid "page title" msgstr "titre de la page" -#: core/models.py:817 +#: core/models.py:861 msgid "page content" msgstr "contenu de la page" +#: core/models.py:899 +msgid "url" +msgstr "url" + +#: core/models.py:900 +msgid "param" +msgstr "param" + +#: core/models.py:903 +msgid "viewed" +msgstr "vue" + #: core/templates/core/403.jinja:5 msgid "403, Forbidden" -msgstr "403. Non autorisé" +msgstr "403, Non autorisé" #: core/templates/core/404.jinja:5 msgid "404, Not Found" @@ -1319,83 +1644,91 @@ msgstr "Bienvenue!" msgid "Logo" msgstr "Logo" -#: core/templates/core/base.jinja:22 core/templates/core/login.jinja:4 +#: core/templates/core/base.jinja:33 core/templates/core/login.jinja:4 #: core/templates/core/password_reset_complete.jinja:5 msgid "Login" msgstr "Connexion" -#: core/templates/core/base.jinja:23 core/templates/core/register.jinja:18 +#: core/templates/core/base.jinja:34 core/templates/core/register.jinja:18 msgid "Register" msgstr "S'enregister" -#: core/templates/core/base.jinja:43 +#: core/templates/core/base.jinja:61 +msgid "View more" +msgstr "Voir plus" + +#: core/templates/core/base.jinja:62 +msgid "Mark all as read" +msgstr "Marquer tout commme lu" + +#: core/templates/core/base.jinja:65 msgid "Logout" msgstr "Déconnexion" -#: core/templates/core/base.jinja:45 core/templates/core/base.jinja.py:46 +#: core/templates/core/base.jinja:67 core/templates/core/base.jinja.py:68 msgid "Search" msgstr "Recherche" -#: core/templates/core/base.jinja:68 +#: core/templates/core/base.jinja:90 msgid "Main" msgstr "Accueil" -#: core/templates/core/base.jinja:69 +#: core/templates/core/base.jinja:91 msgid "Matmatronch" msgstr "Matmatronch" -#: core/templates/core/base.jinja:70 +#: core/templates/core/base.jinja:92 msgid "Wiki" msgstr "Wiki" -#: core/templates/core/base.jinja:71 sas/templates/sas/album.jinja:4 +#: core/templates/core/base.jinja:93 sas/templates/sas/album.jinja:4 #: sas/templates/sas/main.jinja:4 sas/templates/sas/main.jinja.py:8 #: sas/templates/sas/picture.jinja:26 msgid "SAS" msgstr "SAS" -#: core/templates/core/base.jinja:72 +#: core/templates/core/base.jinja:94 msgid "Forum" msgstr "Forum" -#: core/templates/core/base.jinja:73 +#: core/templates/core/base.jinja:95 msgid "Services" msgstr "Services" -#: core/templates/core/base.jinja:74 core/templates/core/file.jinja:20 -#: core/views/files.py:48 +#: core/templates/core/base.jinja:96 core/templates/core/file.jinja:20 +#: core/views/files.py:50 msgid "Files" msgstr "Fichiers" -#: core/templates/core/base.jinja:75 +#: core/templates/core/base.jinja:97 msgid "Sponsors" msgstr "Partenaires" -#: core/templates/core/base.jinja:76 +#: core/templates/core/base.jinja:98 msgid "Help" msgstr "Aide" -#: core/templates/core/base.jinja:109 +#: core/templates/core/base.jinja:131 msgid "Contacts" msgstr "Contacts" -#: core/templates/core/base.jinja:110 +#: core/templates/core/base.jinja:132 msgid "Legal notices" msgstr "Mentions légales" -#: core/templates/core/base.jinja:111 +#: core/templates/core/base.jinja:133 msgid "Intellectual property" msgstr "Propriété intellectuelle" -#: core/templates/core/base.jinja:112 +#: core/templates/core/base.jinja:134 msgid "Help & Documentation" msgstr "Aide & Documentation" -#: core/templates/core/base.jinja:113 +#: core/templates/core/base.jinja:135 msgid "R&D" msgstr "R&D" -#: core/templates/core/base.jinja:115 +#: core/templates/core/base.jinja:137 msgid "Site made by good people" msgstr "Site réalisé par des gens bons" @@ -1437,7 +1770,7 @@ msgstr "Éditer %(obj)s" #: core/templates/core/file.jinja:7 core/templates/core/file_list.jinja:6 msgid "File list" -msgstr "Liste de fichiers" +msgstr "Liste des fichiers" #: core/templates/core/file.jinja:9 msgid "New file" @@ -1457,42 +1790,52 @@ msgstr "Propriétés" #: core/templates/core/file_detail.jinja:13 #: core/templates/core/file_moderation.jinja:20 -#: sas/templates/sas/moderation.jinja:23 +#: sas/templates/sas/picture.jinja:80 msgid "Owner: " msgstr "Propriétaire : " -#: core/templates/core/file_detail.jinja:34 +#: core/templates/core/file_detail.jinja:26 sas/templates/sas/album.jinja:27 +msgid "Clear clipboard" +msgstr "Vider le presse-papier" + +#: core/templates/core/file_detail.jinja:27 sas/templates/sas/album.jinja:28 +msgid "Cut" +msgstr "Couper" + +#: core/templates/core/file_detail.jinja:28 sas/templates/sas/album.jinja:29 +msgid "Paste" +msgstr "Coller" + +#: core/templates/core/file_detail.jinja:31 sas/templates/sas/album.jinja:32 +msgid "Clipboard: " +msgstr "Presse-papier : " + +#: core/templates/core/file_detail.jinja:53 msgid "Real name: " msgstr "Nom réel : " -#: core/templates/core/file_detail.jinja:35 +#: core/templates/core/file_detail.jinja:54 #: core/templates/core/file_moderation.jinja:21 -#: sas/templates/sas/moderation.jinja:24 sas/templates/sas/picture.jinja:79 +#: sas/templates/sas/picture.jinja:79 msgid "Date: " msgstr "Date : " -#: core/templates/core/file_detail.jinja:37 +#: core/templates/core/file_detail.jinja:56 msgid "Type: " msgstr "Type : " -#: core/templates/core/file_detail.jinja:38 +#: core/templates/core/file_detail.jinja:57 msgid "Size: " msgstr "Taille : " -#: core/templates/core/file_detail.jinja:38 +#: core/templates/core/file_detail.jinja:57 msgid "bytes" msgstr "octets" -#: core/templates/core/file_detail.jinja:40 +#: core/templates/core/file_detail.jinja:59 msgid "Download" msgstr "Télécharger" -#: core/templates/core/file_detail.jinja:46 -#: core/templates/core/file_moderation.jinja:23 -#: sas/templates/sas/moderation.jinja:31 -msgid "Moderate" -msgstr "Modérer" - #: core/templates/core/file_list.jinja:19 msgid "There is no file in this website." msgstr "Il n'y a pas de fichier sur ce site web." @@ -1503,7 +1846,6 @@ msgid "File moderation" msgstr "Modération des fichiers" #: core/templates/core/file_moderation.jinja:19 -#: sas/templates/sas/moderation.jinja:22 msgid "Full name: " msgstr "Nom complet : " @@ -1530,10 +1872,6 @@ msgstr "Liste des groupes" msgid "New group" msgstr "Nouveau groupe" -#: core/templates/core/index.jinja:7 -msgid "Welcome to the new AE's website!" -msgstr "Bienvenue sur le nouveau site de l'AE ! " - #: core/templates/core/login.jinja:10 msgid "Your username and password didn't match. Please try again." msgstr "" @@ -1578,11 +1916,11 @@ msgstr "Cotisant jusqu'au %(subscription_end)s" msgid "Account number: " msgstr "Numero de compte : " -#: core/templates/core/macros.jinja:44 launderette/models.py:129 +#: core/templates/core/macros.jinja:44 launderette/models.py:127 msgid "Slot" msgstr "Créneau" -#: core/templates/core/macros.jinja:55 +#: core/templates/core/macros.jinja:57 #: launderette/templates/launderette/launderette_admin.jinja:20 msgid "Tokens" msgstr "Jetons" @@ -1631,6 +1969,11 @@ msgstr "L'équipe AE" msgid "New subscription to the UTBM student association" msgstr "Nouvelle cotisation à l'Association des Étudiants de l'UTBM" +#: core/templates/core/notification_list.jinja:4 +#: core/templates/core/notification_list.jinja:8 +msgid "Notification list" +msgstr "Liste des notifications" + #: core/templates/core/page.jinja:7 core/templates/core/page_list.jinja:4 #: core/templates/core/page_list.jinja:9 msgid "Page list" @@ -1684,10 +2027,6 @@ msgstr "Propriétés de la page" msgid "Edit page" msgstr "Éditer la page" -#: core/templates/core/pagerev_edit.jinja:23 -msgid "Preview" -msgstr "Prévisualiser" - #: core/templates/core/password_change.jinja:6 #, python-format msgid "Change password for %(user)s" @@ -1826,7 +2165,8 @@ msgstr "Rechargements" msgid "Eboutic invoices" msgstr "Facture eboutic" -#: core/templates/core/user_account.jinja:53 counter/views.py:496 +#: core/templates/core/user_account.jinja:53 +#: core/templates/core/user_tools.jinja:33 counter/views.py:496 msgid "Etickets" msgstr "Etickets" @@ -1836,7 +2176,7 @@ msgid "User has no account" msgstr "L'utilisateur n'a pas de compte" #: core/templates/core/user_account_detail.jinja:11 -#: core/templates/core/user_account_detail.jinja:104 launderette/views.py:146 +#: core/templates/core/user_account_detail.jinja:104 launderette/views.py:154 #: stock/templates/stock/shopping_list_items.jinja:9 msgid "Back" msgstr "Retour" @@ -1856,7 +2196,7 @@ msgstr "Clubs" #: core/templates/core/user_clubs.jinja:10 msgid "Current club(s) :" -msgstr "Club(s) actuel(s) : " +msgstr "Clubs actuels : " #: core/templates/core/user_clubs.jinja:36 msgid "Old club(s) :" @@ -1955,7 +2295,7 @@ msgstr "Éditer les groupes pour %(user_name)s" msgid "User list" msgstr "Liste d'utilisateurs" -#: core/templates/core/user_pictures.jinja:5 +#: core/templates/core/user_pictures.jinja:4 #, python-format msgid "%(user_name)s's pictures" msgstr "Photos de %(user_name)s" @@ -2029,60 +2369,93 @@ msgstr "Gestion des types de produit" msgid "Cash register summaries" msgstr "Relevés de caisse" -#: core/templates/core/user_tools.jinja:38 core/views/user.py:174 +#: core/templates/core/user_tools.jinja:32 +#: counter/templates/counter/invoices_call.jinja:4 counter/views.py:491 +msgid "Invoices call" +msgstr "Appels à facture" + +#: core/templates/core/user_tools.jinja:40 core/views/user.py:174 #: counter/templates/counter/counter_list.jinja:18 #: counter/templates/counter/counter_list.jinja:33 #: counter/templates/counter/counter_list.jinja:54 msgid "Stats" msgstr "Stats" -#: core/templates/core/user_tools.jinja:42 +#: core/templates/core/user_tools.jinja:44 #: counter/templates/counter/counter_list.jinja:37 #: stock/templates/stock/stock_item_list.jinja:11 #: stock/templates/stock/stock_list.jinja:16 msgid "Shopping lists" -msgstr "" +msgstr "Liste de course" -#: core/templates/core/user_tools.jinja:44 +#: core/templates/core/user_tools.jinja:46 #: counter/templates/counter/counter_list.jinja:39 msgid "Create new stock" -msgstr "Créer un stock" +msgstr "Créer nouveau stock" -#: core/templates/core/user_tools.jinja:55 +#: core/templates/core/user_tools.jinja:57 msgid "Refound Account" msgstr "Rembourser un compte" -#: core/templates/core/user_tools.jinja:56 +#: core/templates/core/user_tools.jinja:58 msgid "General accounting" msgstr "Comptabilité générale" -#: core/templates/core/user_tools.jinja:65 +#: core/templates/core/user_tools.jinja:68 msgid "Club account: " msgstr "Compte club : " -#: core/templates/core/user_tools.jinja:72 +#: core/templates/core/user_tools.jinja:75 msgid "Communication" msgstr "Communication" -#: core/templates/core/user_tools.jinja:75 +#: core/templates/core/user_tools.jinja:78 +msgid "Moderate news" +msgstr "Modérer les nouvelles" + +#: core/templates/core/user_tools.jinja:79 +msgid "Edit index page" +msgstr "Éditer la page d'accueil" + +#: core/templates/core/user_tools.jinja:80 +msgid "Edit alert message" +msgstr "Éditer le message d'alerte" + +#: core/templates/core/user_tools.jinja:81 +msgid "Edit information message" +msgstr "Éditer le message d'informations" + +#: core/templates/core/user_tools.jinja:82 msgid "Moderate files" msgstr "Modérer les fichiers" -#: core/templates/core/user_tools.jinja:78 +#: core/templates/core/user_tools.jinja:85 msgid "Moderate pictures" msgstr "Modérer les photos" -#: core/views/files.py:47 +#: core/templates/core/user_tools.jinja:98 +msgid "Elections" +msgstr "Élections" + +#: core/templates/core/user_tools.jinja:100 +msgid "See available elections" +msgstr "Voir les élections disponibles" + +#: core/templates/core/user_tools.jinja:102 +msgid "Create a new election" +msgstr "Créer une nouvelle élection" + +#: core/views/files.py:49 msgid "Add a new folder" msgstr "Ajouter un nouveau dossier" -#: core/views/files.py:58 +#: core/views/files.py:62 #, python-format msgid "Error creating folder %(folder_name)s: %(msg)s" msgstr "Erreur de création du dossier %(folder_name)s : %(msg)s" -#: core/views/files.py:67 core/views/forms.py:181 core/views/forms.py:185 -#: sas/views.py:46 +#: core/views/files.py:72 core/views/forms.py:181 core/views/forms.py:185 +#: sas/views.py:53 #, python-format msgid "Error uploading file %(file_name)s: %(msg)s" msgstr "Erreur d'envoi du fichier %(file_name)s : %(msg)s" @@ -2135,148 +2508,148 @@ msgstr "Photos" msgid "User already has a profile picture" msgstr "L'utilisateur a déjà une photo de profil" -#: counter/models.py:28 +#: counter/models.py:27 msgid "account id" msgstr "numéro de compte" -#: counter/models.py:32 +#: counter/models.py:31 msgid "customer" msgstr "client" -#: counter/models.py:33 +#: counter/models.py:32 msgid "customers" msgstr "clients" -#: counter/models.py:48 counter/templates/counter/counter_click.jinja:48 +#: counter/models.py:47 counter/templates/counter/counter_click.jinja:48 #: counter/templates/counter/counter_click.jinja:82 msgid "Not enough money" msgstr "Solde insuffisant" -#: counter/models.py:76 counter/models.py:98 +#: counter/models.py:75 counter/models.py:97 msgid "product type" msgstr "type du produit" -#: counter/models.py:101 +#: counter/models.py:100 msgid "purchase price" msgstr "prix d'achat" -#: counter/models.py:102 +#: counter/models.py:101 msgid "selling price" msgstr "prix de vente" -#: counter/models.py:103 +#: counter/models.py:102 msgid "special selling price" msgstr "prix de vente spécial" -#: counter/models.py:104 +#: counter/models.py:103 msgid "icon" msgstr "icône" -#: counter/models.py:106 +#: counter/models.py:105 msgid "limit age" msgstr "âge limite" -#: counter/models.py:107 +#: counter/models.py:106 msgid "tray price" msgstr "prix plateau" -#: counter/models.py:108 +#: counter/models.py:107 msgid "parent product" msgstr "produit parent" -#: counter/models.py:110 +#: counter/models.py:109 msgid "buying groups" msgstr "groupe d'achat" -#: counter/models.py:111 +#: counter/models.py:110 msgid "archived" msgstr "archivé" -#: counter/models.py:114 counter/models.py:486 +#: counter/models.py:113 counter/models.py:497 msgid "product" msgstr "produit" -#: counter/models.py:133 +#: counter/models.py:132 msgid "products" msgstr "produits" -#: counter/models.py:134 +#: counter/models.py:133 msgid "counter type" msgstr "type de comptoir" -#: counter/models.py:136 +#: counter/models.py:135 msgid "Bar" msgstr "Bar" -#: counter/models.py:136 +#: counter/models.py:135 msgid "Office" msgstr "Bureau" -#: counter/models.py:136 counter/templates/counter/counter_list.jinja:11 +#: counter/models.py:135 counter/templates/counter/counter_list.jinja:11 #: eboutic/templates/eboutic/eboutic_main.jinja:4 #: eboutic/templates/eboutic/eboutic_main.jinja:24 #: eboutic/templates/eboutic/eboutic_makecommand.jinja:8 #: eboutic/templates/eboutic/eboutic_payment_result.jinja:4 -#: sith/settings.py:304 sith/settings.py:312 +#: sith/settings.py:313 sith/settings.py:321 msgid "Eboutic" msgstr "Eboutic" -#: counter/models.py:137 +#: counter/models.py:136 msgid "sellers" msgstr "vendeurs" -#: counter/models.py:140 launderette/models.py:125 +#: counter/models.py:139 launderette/models.py:123 msgid "token" msgstr "jeton" -#: counter/models.py:143 counter/models.py:387 counter/models.py:404 -#: launderette/models.py:16 stock/models.py:12 +#: counter/models.py:142 counter/models.py:398 counter/models.py:415 +#: launderette/models.py:14 stock/models.py:14 msgid "counter" msgstr "comptoir" -#: counter/models.py:247 +#: counter/models.py:245 msgid "bank" msgstr "banque" -#: counter/models.py:249 counter/models.py:290 +#: counter/models.py:247 counter/models.py:293 msgid "is validated" msgstr "est validé" -#: counter/models.py:252 +#: counter/models.py:250 msgid "refilling" msgstr "rechargement" -#: counter/models.py:283 eboutic/models.py:103 +#: counter/models.py:286 eboutic/models.py:103 msgid "unit price" msgstr "prix unitaire" -#: counter/models.py:284 counter/models.py:476 eboutic/models.py:104 +#: counter/models.py:287 counter/models.py:487 eboutic/models.py:104 msgid "quantity" msgstr "quantité" -#: counter/models.py:289 +#: counter/models.py:292 msgid "Sith account" msgstr "Compte utilisateur" -#: counter/models.py:289 sith/settings.py:297 sith/settings.py:302 -#: sith/settings.py:324 +#: counter/models.py:292 sith/settings.py:306 sith/settings.py:311 +#: sith/settings.py:333 msgid "Credit card" msgstr "Carte bancaire" -#: counter/models.py:293 +#: counter/models.py:296 msgid "selling" msgstr "vente" -#: counter/models.py:312 +#: counter/models.py:315 msgid "Unknown event" msgstr "Événement inconnu" -#: counter/models.py:313 +#: counter/models.py:316 #, python-format msgid "Eticket bought for the event %(event)s" msgstr "Eticket acheté pour l'événement %(event)s" -#: counter/models.py:315 counter/models.py:327 +#: counter/models.py:318 counter/models.py:330 #, python-format msgid "" "You bought an eticket for the event %(event)s.\n" @@ -2285,51 +2658,51 @@ msgstr "" "Vous avez acheté un Eticket pour l'événement %(event)s.\n" "Vous pouvez le télécharger sur cette page: %(url)s" -#: counter/models.py:390 +#: counter/models.py:401 msgid "last activity date" msgstr "dernière activité" -#: counter/models.py:393 +#: counter/models.py:404 msgid "permanency" msgstr "permanence" -#: counter/models.py:407 +#: counter/models.py:418 msgid "emptied" msgstr "coffre vidée" -#: counter/models.py:410 +#: counter/models.py:421 msgid "cash register summary" msgstr "relevé de caisse" -#: counter/models.py:474 +#: counter/models.py:485 msgid "cash summary" msgstr "relevé" -#: counter/models.py:475 +#: counter/models.py:486 msgid "value" msgstr "valeur" -#: counter/models.py:477 +#: counter/models.py:488 msgid "check" msgstr "chèque" -#: counter/models.py:480 +#: counter/models.py:491 msgid "cash register summary item" msgstr "élément de relevé de caisse" -#: counter/models.py:487 +#: counter/models.py:498 msgid "banner" msgstr "bannière" -#: counter/models.py:488 +#: counter/models.py:499 msgid "event date" msgstr "date de l'événement" -#: counter/models.py:489 +#: counter/models.py:500 msgid "event title" msgstr "titre de l'événement" -#: counter/models.py:490 +#: counter/models.py:501 msgid "secret" msgstr "secret" @@ -2407,14 +2780,14 @@ msgstr "Non autorisé pour ce produit" #: counter/templates/counter/counter_click.jinja:45 #: counter/templates/counter/counter_click.jinja:79 msgid "No date of birth provided" -msgstr "Pas de date de naissance renseigné" +msgstr "Pas de date de naissance renseignée" #: counter/templates/counter/counter_click.jinja:55 #: counter/templates/counter/counter_click.jinja:103 #: counter/templates/counter/invoices_call.jinja:16 #: launderette/templates/launderette/launderette_admin.jinja:35 #: launderette/templates/launderette/launderette_click.jinja:13 -#: sas/templates/sas/moderation.jinja:39 sas/templates/sas/picture.jinja:74 +#: sas/templates/sas/picture.jinja:74 msgid "Go" msgstr "Valider" @@ -2501,10 +2874,6 @@ msgstr "Nouveau eticket" msgid "There is no eticket in this website." msgstr "Il n'y a pas de eticket sur ce site web." -#: counter/templates/counter/invoices_call.jinja:4 counter/views.py:491 -msgid "Invoices call" -msgstr "Appels à facture" - #: counter/templates/counter/invoices_call.jinja:8 #, python-format msgid "Invoices call for %(date)s" @@ -2514,10 +2883,6 @@ msgstr "Appels à facture pour %(date)s" msgid "Choose another month: " msgstr "Choisir un autre mois : " -#: counter/templates/counter/invoices_call.jinja:21 -msgid "Sum" -msgstr "Somme" - #: counter/templates/counter/last_ops.jinja:5 #: counter/templates/counter/last_ops.jinja:9 #, python-format @@ -2573,6 +2938,21 @@ msgstr "Promo" msgid "Percentage" msgstr "Pourcentage" +#: counter/templates/counter/stats.jinja:47 +#, python-format +msgid "Top 100 barman %(counter_name)s" +msgstr "Top 100 barman %(counter_name)s" + +#: counter/templates/counter/stats.jinja:53 +#: counter/templates/counter/stats.jinja:78 +msgid "Time" +msgstr "Heure" + +#: counter/templates/counter/stats.jinja:72 +#, python-format +msgid "Top 100 barman %(counter_name)s (all semesters)" +msgstr "Top 100 barman %(counter_name)s (tous les semestres)" + #: counter/views.py:55 msgid "User not found" msgstr "Utilisateur non trouvé" @@ -2587,7 +2967,7 @@ msgstr "Dernières opérations" #: counter/views.py:101 msgid "Take items from stock" -msgstr "" +msgstr "Prendre des éléments du stock" #: counter/views.py:135 msgid "Bad credentials" @@ -2619,7 +2999,7 @@ msgstr "Administration des comptoirs" #: counter/views.py:461 msgid "Stocks" -msgstr "" +msgstr "Stocks" #: counter/views.py:471 msgid "Products" @@ -2691,7 +3071,7 @@ msgstr "Montant du chèque" msgid "Check quantity" msgstr "Nombre de chèque" -#: counter/views.py:1078 +#: counter/views.py:1101 msgid "people(s)" msgstr "personne(s)" @@ -2754,47 +3134,204 @@ msgstr "Le paiement a été effectué" msgid "Return to eboutic" msgstr "Retourner à l'eboutic" -#: eboutic/views.py:141 +#: eboutic/views.py:145 msgid "You do not have enough money to buy the basket" msgstr "Vous n'avez pas assez d'argent pour acheter le panier" -#: launderette/models.py:19 +#: election/models.py:16 +msgid "start candidature" +msgstr "début des candidatures" + +#: election/models.py:17 +msgid "end candidature" +msgstr "fin des candidatures" + +#: election/models.py:21 +msgid "edit groups" +msgstr "groupe d'édition" + +#: election/models.py:22 +msgid "view groups" +msgstr "groupe de vue" + +#: election/models.py:23 +msgid "vote groups" +msgstr "groupe de vote" + +#: election/models.py:24 +msgid "candidature groups" +msgstr "groupe de candidature" + +#: election/models.py:80 election/models.py:115 +msgid "election" +msgstr "élection" + +#: election/models.py:83 +msgid "max choice" +msgstr "nombre de choix maxi" + +#: election/models.py:128 +msgid "election list" +msgstr "liste électorale" + +#: election/models.py:142 +msgid "candidature" +msgstr "candidature" + +#: election/templates/election/candidate_form.jinja:4 +#: election/templates/election/candidate_form.jinja:13 +#: election/templates/election/election_detail.jinja:363 +msgid "Candidate" +msgstr "Candidater" + +#: election/templates/election/candidate_form.jinja:17 +msgid "Candidature are closed for this election" +msgstr "Les candidatures sont fermées pour cette élection" + +#: election/templates/election/election_detail.jinja:237 +msgid "Polls close " +msgstr "Votes fermés" + +#: election/templates/election/election_detail.jinja:239 +msgid "Polls closed " +msgstr "Votes fermés" + +#: election/templates/election/election_detail.jinja:241 +msgid "Polls will open " +msgstr "Les votes ouvriront " + +#: election/templates/election/election_detail.jinja:243 +#: election/templates/election/election_detail.jinja:247 +#: election/templates/election/election_list.jinja:31 +#: election/templates/election/election_list.jinja:34 +#: election/templates/election/election_list.jinja:39 +#: election/templates/election/election_list.jinja:42 +msgid " at " +msgstr " à " + +#: election/templates/election/election_detail.jinja:244 +msgid "and will close " +msgstr "et fermeront" + +#: election/templates/election/election_detail.jinja:252 +msgid "You already have submitted your vote." +msgstr "Vous avez déjà soumis votre vote." + +#: election/templates/election/election_detail.jinja:254 +msgid "You have voted in this election." +msgstr "Vous avez déjà voté pour cette élection." + +#: election/templates/election/election_detail.jinja:266 election/views.py:82 +msgid "Blank vote" +msgstr "Vote blanc" + +#: election/templates/election/election_detail.jinja:283 +msgid "You may choose up to" +msgstr "Vous pouvez choisir jusqu'à" + +#: election/templates/election/election_detail.jinja:283 +msgid "people." +msgstr "personne(s)" + +#: election/templates/election/election_detail.jinja:297 +msgid "Choose blank vote" +msgstr "Choisir de voter blanc" + +#: election/templates/election/election_detail.jinja:304 +#: election/templates/election/election_detail.jinja:342 +msgid "votes" +msgstr "votes" + +#: election/templates/election/election_detail.jinja:335 +#: launderette/templates/launderette/launderette_book.jinja:12 +msgid "Choose" +msgstr "Choisir" + +#: election/templates/election/election_detail.jinja:358 +msgid "Submit the vote !" +msgstr "Envoyer le vote !" + +#: election/templates/election/election_detail.jinja:365 +msgid "Add a new list" +msgstr "Ajouter une nouvelle liste" + +#: election/templates/election/election_detail.jinja:368 +msgid "Add a new role" +msgstr "Ajouter un nouveau rôle" + +#: election/templates/election/election_list.jinja:4 +msgid "Election list" +msgstr "Liste des élections" + +#: election/templates/election/election_list.jinja:21 +msgid "Current elections" +msgstr "Élections actuelles" + +#: election/templates/election/election_list.jinja:29 +msgid "Applications open from" +msgstr "Candidatures ouvertes à partir du" + +#: election/templates/election/election_list.jinja:32 +#: election/templates/election/election_list.jinja:40 +msgid "to" +msgstr "au" + +#: election/templates/election/election_list.jinja:37 +msgid "Polls open from" +msgstr "Votes ouverts du" + +#: election/views.py:44 +msgid "You have selected too much candidates." +msgstr "Vous avez sélectionné trop de candidats." + +#: election/views.py:59 +msgid "User to candidate" +msgstr "Utilisateur se présentant" + +#: election/views.py:102 +msgid "This role already exists for this election" +msgstr "Ce rôle existe déjà pour cette élection" + +#: election/views.py:132 +msgid "Start candidature" +msgstr "Début des candidatures" + +#: election/views.py:133 +msgid "End candidature" +msgstr "Fin des candidatures" + +#: launderette/models.py:17 #: launderette/templates/launderette/launderette_book.jinja:5 #: launderette/templates/launderette/launderette_book_choose.jinja:4 #: launderette/templates/launderette/launderette_main.jinja:4 msgid "Launderette" msgstr "Laverie" -#: launderette/models.py:61 launderette/models.py:86 +#: launderette/models.py:59 launderette/models.py:84 msgid "launderette" msgstr "laverie" -#: launderette/models.py:62 launderette/models.py:87 launderette/models.py:123 -#: stock/models.py:30 -msgid "type" -msgstr "type" - -#: launderette/models.py:63 +#: launderette/models.py:61 msgid "is working" msgstr "fonctionne" -#: launderette/models.py:66 +#: launderette/models.py:64 msgid "Machine" msgstr "Machine" -#: launderette/models.py:88 +#: launderette/models.py:86 msgid "borrow date" msgstr "date d'emprunt" -#: launderette/models.py:92 +#: launderette/models.py:90 msgid "Token" msgstr "Jeton" -#: launderette/models.py:98 +#: launderette/models.py:96 msgid "Token name can not be blank" msgstr "Le nom du jeton ne peut pas être vide" -#: launderette/models.py:124 +#: launderette/models.py:122 msgid "machine" msgstr "machine" @@ -2814,26 +3351,17 @@ msgstr "Machines" msgid "New machine" msgstr "Nouvelle machine" -#: launderette/templates/launderette/launderette_admin.jinja:42 -#: launderette/views.py:148 -msgid "Type" -msgstr "Type" - -#: launderette/templates/launderette/launderette_book.jinja:12 -msgid "Choose" -msgstr "Choisir" - #: launderette/templates/launderette/launderette_book.jinja:23 msgid "Washing and drying" msgstr "Lavage et séchage" #: launderette/templates/launderette/launderette_book.jinja:27 -#: sith/settings.py:444 +#: sith/settings.py:454 msgid "Washing" msgstr "Lavage" #: launderette/templates/launderette/launderette_book.jinja:31 -#: sith/settings.py:444 +#: sith/settings.py:454 msgid "Drying" msgstr "Séchage" @@ -2858,29 +3386,29 @@ msgstr "Éditer la page de présentation" msgid "Book launderette slot" msgstr "Réserver un créneau de laverie" -#: launderette/views.py:147 +#: launderette/views.py:155 msgid "Action" msgstr "Action" -#: launderette/views.py:150 +#: launderette/views.py:158 msgid "Tokens, separated by spaces" msgstr "Jetons, séparés par des espaces" -#: launderette/views.py:165 launderette/views.py:179 +#: launderette/views.py:173 launderette/views.py:187 #, python-format msgid "Token %(token_name)s does not exists" msgstr "Le jeton %(token_name)s n'existe pas" -#: launderette/views.py:173 +#: launderette/views.py:181 #, python-format msgid "Token %(token_name)s already exists" msgstr "Un jeton %(token_name)s existe déjà" -#: launderette/views.py:229 +#: launderette/views.py:237 msgid "User has booked no slot" msgstr "L'utilisateur n'a pas réservé de créneau" -#: launderette/views.py:319 +#: launderette/views.py:327 msgid "Token not found" msgstr "Jeton non trouvé" @@ -2892,25 +3420,25 @@ msgstr "Fusionner deux utilisateurs" msgid "Merge" msgstr "Fusion" -#: rootplace/views.py:66 +#: rootplace/views.py:65 msgid "User that will be kept" msgstr "Utilisateur qui sera conservé" -#: rootplace/views.py:67 +#: rootplace/views.py:66 msgid "User that will be deleted" msgstr "Utilisateur qui sera supprimé" -#: sas/models.py:102 +#: sas/models.py:132 msgid "picture" msgstr "photo" -#: sas/templates/sas/album.jinja:26 sas/templates/sas/album.jinja.py:28 -#: sas/templates/sas/album.jinja:30 sas/templates/sas/main.jinja:17 -#: sas/templates/sas/main.jinja.py:19 sas/templates/sas/main.jinja:21 +#: sas/templates/sas/album.jinja:52 sas/templates/sas/album.jinja.py:54 +#: sas/templates/sas/main.jinja:17 sas/templates/sas/main.jinja.py:19 +#: sas/templates/sas/main.jinja:21 msgid "preview" msgstr "miniature" -#: sas/templates/sas/album.jinja:52 +#: sas/templates/sas/album.jinja:86 msgid "Upload" msgstr "Envoyer" @@ -2922,197 +3450,323 @@ msgstr "Créer" msgid "SAS moderation" msgstr "Modération du SAS" -#: sas/templates/sas/moderation.jinja:27 -msgid "Asked for removal" -msgstr "Retrait demandé" +#: sas/templates/sas/moderation.jinja:10 +msgid "Albums" +msgstr "Albums" #: sas/templates/sas/picture.jinja:60 msgid "People" msgstr "Personne(s)" -#: sas/templates/sas/picture.jinja:85 +#: sas/templates/sas/picture.jinja:89 msgid "HD version" msgstr "Version HD" -#: sas/templates/sas/picture.jinja:89 +#: sas/templates/sas/picture.jinja:93 msgid "Rotate left" msgstr "Tourner vers la gauche" -#: sas/templates/sas/picture.jinja:90 +#: sas/templates/sas/picture.jinja:94 msgid "Rotate right" msgstr "Tourner vers la droite" -#: sas/templates/sas/picture.jinja:91 +#: sas/templates/sas/picture.jinja:95 msgid "Ask for removal" msgstr "Demander le retrait" -#: sas/views.py:25 +#: sas/templates/sas/picture.jinja:111 +msgid "Asked for removal" +msgstr "Retrait demandé" + +#: sas/views.py:27 msgid "Add a new album" msgstr "Ajouter un nouvel album" -#: sas/views.py:26 +#: sas/views.py:28 msgid "Upload images" msgstr "Envoyer les images" -#: sas/views.py:36 +#: sas/views.py:40 #, python-format msgid "Error creating album %(album)s: %(msg)s" msgstr "Erreur de création de l'album %(album)s : %(msg)s" -#: sas/views.py:53 +#: sas/views.py:64 msgid "Add user" msgstr "Ajouter une personne" -#: sith/settings.py:167 +#: sas/views.py:256 +msgid "Apply rights recursively" +msgstr "Appliquer les droits récursivement" + +#: sith/settings.py:177 msgid "English" msgstr "Anglais" -#: sith/settings.py:168 +#: sith/settings.py:178 msgid "French" msgstr "Français" -#: sith/settings.py:294 sith/settings.py:301 sith/settings.py:322 +#: sith/settings.py:287 +msgid "TC" +msgstr "TC" + +#: sith/settings.py:288 +msgid "IMSI" +msgstr "IMSI" + +#: sith/settings.py:289 +msgid "IMAP" +msgstr "IMAP" + +#: sith/settings.py:290 +msgid "INFO" +msgstr "INFO" + +#: sith/settings.py:291 +msgid "GI" +msgstr "GI" + +#: sith/settings.py:292 +msgid "E" +msgstr "E" + +#: sith/settings.py:293 +msgid "EE" +msgstr "EE" + +#: sith/settings.py:294 +msgid "GESC" +msgstr "GESC" + +#: sith/settings.py:295 +msgid "GMC" +msgstr "GMC" + +#: sith/settings.py:296 +msgid "MC" +msgstr "MC" + +#: sith/settings.py:297 +msgid "EDIM" +msgstr "EDIM" + +#: sith/settings.py:298 +msgid "Humanities" +msgstr "Humanités" + +#: sith/settings.py:299 +msgid "N/A" +msgstr "N/A" + +#: sith/settings.py:303 sith/settings.py:310 sith/settings.py:331 msgid "Check" msgstr "Chèque" -#: sith/settings.py:295 sith/settings.py:303 sith/settings.py:323 +#: sith/settings.py:304 sith/settings.py:312 sith/settings.py:332 msgid "Cash" msgstr "Espèces" -#: sith/settings.py:296 +#: sith/settings.py:305 msgid "Transfert" msgstr "Virement" -#: sith/settings.py:309 +#: sith/settings.py:318 msgid "Belfort" msgstr "Belfort" -#: sith/settings.py:310 +#: sith/settings.py:319 msgid "Sevenans" msgstr "Sevenans" -#: sith/settings.py:311 +#: sith/settings.py:320 msgid "Montbéliard" msgstr "Montbéliard" -#: sith/settings.py:351 +#: sith/settings.py:361 msgid "One semester" msgstr "Un semestre, 15 €" -#: sith/settings.py:356 +#: sith/settings.py:366 msgid "Two semesters" msgstr "Deux semestres, 28 €" -#: sith/settings.py:361 +#: sith/settings.py:371 msgid "Common core cursus" msgstr "Cursus tronc commun, 45 €" -#: sith/settings.py:366 +#: sith/settings.py:376 msgid "Branch cursus" msgstr "Cursus branche, 45 €" -#: sith/settings.py:371 +#: sith/settings.py:381 msgid "Alternating cursus" msgstr "Cursus alternant, 30 €" -#: sith/settings.py:376 +#: sith/settings.py:386 msgid "Honorary member" msgstr "Membre honoraire, 0 €" -#: sith/settings.py:381 +#: sith/settings.py:391 msgid "Assidu member" msgstr "Membre d'Assidu, 0 €" -#: sith/settings.py:386 +#: sith/settings.py:396 msgid "Amicale/DOCEO member" msgstr "Membre de l'Amicale/DOCEO, 0 €" -#: sith/settings.py:391 +#: sith/settings.py:401 msgid "UT network member" msgstr "Cotisant du réseau UT, 0 €" -#: sith/settings.py:396 +#: sith/settings.py:406 msgid "CROUS member" msgstr "Membres du CROUS, 0 €" -#: sith/settings.py:401 +#: sith/settings.py:411 msgid "Sbarro/ESTA member" msgstr "Membre de Sbarro ou de l'ESTA, 15 €" -#: sith/settings.py:409 +#: sith/settings.py:419 msgid "President" msgstr "Président" -#: sith/settings.py:410 +#: sith/settings.py:420 msgid "Vice-President" msgstr "Vice-Président" -#: sith/settings.py:411 +#: sith/settings.py:421 msgid "Treasurer" msgstr "Trésorier" -#: sith/settings.py:412 +#: sith/settings.py:422 msgid "Communication supervisor" msgstr "Responsable com" -#: sith/settings.py:413 +#: sith/settings.py:423 msgid "Secretary" msgstr "Secrétaire" -#: sith/settings.py:414 +#: sith/settings.py:424 msgid "IT supervisor" msgstr "Responsable info" -#: sith/settings.py:415 +#: sith/settings.py:425 msgid "Board member" msgstr "Membre du bureau" -#: sith/settings.py:416 +#: sith/settings.py:426 msgid "Active member" msgstr "Membre actif" -#: sith/settings.py:417 +#: sith/settings.py:427 msgid "Curious" msgstr "Curieux" -#: stock/models.py:25 +#: sith/settings.py:461 +msgid "A fresh new to be moderated" +msgstr "Une nouvelle toute neuve à modérer" + +#: sith/settings.py:462 +msgid "New files to be moderated" +msgstr "Nouveaux fichiers à modérer" + +#: sith/settings.py:463 +msgid "New pictures/album to be moderated in the SAS" +msgstr "Nouvelles photos/albums à modérer dans le SAS" + +#: sith/settings.py:464 +msgid "You've been identified on some pictures" +msgstr "Vous avez été identifié sur des photos" + +#: sith/settings.py:465 +#, python-format +msgid "You just refilled of %s €" +msgstr "Vous avez rechargé votre compte de %s €" + +#: sith/settings.py:466 +#, python-format +msgid "You just bought %s" +msgstr "Vous avez acheté %s" + +#: sith/settings.py:467 +msgid "You have a notification" +msgstr "Vous avez une notification" + +#: stock/models.py:30 msgid "unit quantity" -msgstr "quantité unitaire" +msgstr "quantité unitaire " -#: stock/models.py:26 +#: stock/models.py:30 +msgid "number of element in one box" +msgstr "nombre d'éléments dans une boite" + +#: stock/models.py:31 msgid "effective quantity" -msgstr "quantité effective" +msgstr "qunatité effective" -#: stock/models.py:27 +#: stock/models.py:31 +msgid "number of box" +msgstr "nombre de boites" + +#: stock/models.py:32 msgid "minimal quantity" msgstr "quantité minimale" -#: stock/models.py:29 -msgid "quantity to buy" -msgstr "quantité à acheter" +#: stock/models.py:33 +msgid "" +"if the effective quantity is less than the minimal, item is added to the " +"shopping list" +msgstr "" +"si la quantité effective est plus petite que la minimale, l'élément est " +"ajouté à la liste de courses" -#: stock/models.py:46 +#: stock/models.py:53 msgid "todo" msgstr "à faire" -#: stock/models.py:47 -msgid "items to buy" -msgstr "éléments à acheter" +#: stock/models.py:70 +msgid "shopping lists" +msgstr "Listes de courses" + +#: stock/models.py:75 +msgid "quantity to buy" +msgstr "quantité à acheter" + +#: stock/models.py:75 +msgid "quantity to buy during the next shopping session" +msgstr "quantité à acheter pendant les prochaines courses" + +#: stock/models.py:76 +msgid "quantity bought" +msgstr "quantité achetée" + +#: stock/models.py:76 +msgid "quantity bought during the last shopping session" +msgstr "quantité achetée pendant les dernières courses" #: stock/templates/stock/shopping_list_items.jinja:4 #, python-format msgid "%(shoppinglist)s's items" msgstr "Éléments de %(shoppinglist)s" -#: stock/templates/stock/shopping_list_items.jinja:20 -msgid "Number" -msgstr "Nombre" +#: stock/templates/stock/shopping_list_items.jinja:21 +msgid "Quantity asked" +msgstr "Quantité demandée" + +#: stock/templates/stock/shopping_list_items.jinja:22 +msgid "Quantity bought" +msgstr "Quantité achetée" + +#: stock/templates/stock/shopping_list_items.jinja:42 stock/views.py:188 +msgid "Comments" +msgstr "Commentaires" #: stock/templates/stock/shopping_list_quantity.jinja:4 #: stock/templates/stock/shopping_list_quantity.jinja:8 #, python-format msgid "%(s)s's quantity to buy" -msgstr "Quantité à acheter pour %(s)s" +msgstr "Quantité à acheter de %(s)s" #: stock/templates/stock/shopping_list_quantity.jinja:13 #: stock/templates/stock/stock_shopping_list.jinja:9 @@ -3129,7 +3783,7 @@ msgstr "Autres" #: stock/templates/stock/stock_item_list.jinja:30 msgid "There is no items in this stock." -msgstr "Il n'y a pas d'éléments dans ce comptoir." +msgstr "Il n'y a pas d'éléments dans ce stock." #: stock/templates/stock/stock_list.jinja:4 #: stock/templates/stock/stock_list.jinja:9 @@ -3140,19 +3794,10 @@ msgstr "Liste des stocks" msgid "There is no stocks in this website." msgstr "Il n'y a pas de stock sur ce site web." -#: stock/templates/stock/stock_main.jinja:9 -msgid "New Item" -msgstr "Nouvel élément" - -#: stock/templates/stock/stock_shopping_list.jinja:4 -#, python-format -msgid "Shopping list for %(s)s" -msgstr "Liste de courses pour %(s)s" - #: stock/templates/stock/stock_shopping_list.jinja:11 #, python-format msgid "Shopping lists history for %(s)s" -msgstr "Historique des listes de courses pour %(s)s" +msgstr "Historique des listes de courses de %(s)s" #: stock/templates/stock/stock_shopping_list.jinja:14 msgid "Information :" @@ -3163,17 +3808,17 @@ msgid "" "Use the \"update stock\" action when you get back from shopping to add the " "effective quantity bought for each shopping list item." msgstr "" -"L'action \"Mettre à jour le stock\" doit être utilisée lorsque vous revenez " -"des courses pour ajouter les quantités effectivement achetées pour chaque " -"élément." +"Utiliser l'action \"Mettre le stock à jour\" quand vous revenez des courses " +"pour ajouter les quantités réellement achétées pour chacun des éléments de " +"la liste" #: stock/templates/stock/stock_shopping_list.jinja:18 msgid "" -"For example, 3 Cheesburger (boxes) are aksing in the list, but there were " +"For example, 3 Cheeseburger (boxes) are aksing in the list, but there were " "only 2 so, 2 have to be added in the stock quantity." msgstr "" -"Par exemple, 3 boites de cheeseburger sont demandées dans la liste, mais il " -"n'y en avait plus que 2, donc 2 doivent être ajoutées au stock." +"Par exemple, 3 Cheeseburger (boites) sont demandées dans la liste, mais il " +"n'en restait plus que 2, donc seulement 2 doivent être ajoutés au stock" #: stock/templates/stock/stock_shopping_list.jinja:21 msgid "To do" @@ -3186,11 +3831,11 @@ msgstr "Nombre d'éléments" #: stock/templates/stock/stock_shopping_list.jinja:37 msgid "Update stock" -msgstr "Mettre à jour le stock" +msgstr "Mettre le stock à jour" #: stock/templates/stock/stock_shopping_list.jinja:40 msgid "Mark as done" -msgstr "Marquer comme effectué(e)" +msgstr "Marquer comme ancien" #: stock/templates/stock/stock_shopping_list.jinja:66 msgid "Mark as to do" @@ -3199,24 +3844,46 @@ msgstr "Marquer comme à faire" #: stock/templates/stock/stock_take_items.jinja:5 #: stock/templates/stock/stock_take_items.jinja:9 #, python-format -msgid "Take items form %(s)s" -msgstr "" +msgid "Take items from %(s)s" +msgstr "Prendre des éléments dans %(s)s" #: stock/templates/stock/stock_take_items.jinja:14 -#, fuzzy -#| msgid "Take picture" msgid "Take items" -msgstr "Prendre une photo" +msgstr "Prendre un élément" #: stock/templates/stock/update_after_shopping.jinja:4 #: stock/templates/stock/update_after_shopping.jinja:8 #, python-format msgid "Update %(s)s's quantity after shopping" -msgstr "Mise à jour des stocks selon les quantités achetées pour %(s)s" +msgstr "Mettre à jour les quantités de %(s)s après les courses" #: stock/templates/stock/update_after_shopping.jinja:13 msgid "Update stock quantities" +msgstr "Mettre à jour les quantités du stock" + +#: stock/views.py:181 +msgid "Shopping list name" +msgstr "Nom de la liste de course" + +#: stock/views.py:187 +msgid " left" +msgstr " restant(s)" + +#: stock/views.py:189 +msgid "" +"Add here, items to buy that are not reference as a stock item (example : " +"sponge, knife, mugs ...)" msgstr "" +"Ajouter ici les éléments à acheter qui ne sont pas référencés comme un " +"élément du stock (exemple : éponges, couteaux, tasses ..." + +#: stock/views.py:317 +msgid " asked" +msgstr " demandé(s)" + +#: stock/views.py:383 +msgid "(" +msgstr "(" #: subscription/models.py:16 msgid "Bad subscription type" @@ -3226,38 +3893,35 @@ msgstr "Mauvais type de cotisation" msgid "Bad payment method" msgstr "Mauvais type de paiement" -#: subscription/models.py:52 +#: subscription/models.py:24 msgid "subscription type" msgstr "type d'inscription" -#: subscription/models.py:55 +#: subscription/models.py:27 msgid "subscription start" msgstr "début de la cotisation" -#: subscription/models.py:56 +#: subscription/models.py:28 msgid "subscription end" msgstr "fin de la cotisation" -#: subscription/models.py:59 +#: subscription/models.py:31 msgid "location" msgstr "lieu" -#: subscription/models.py:68 +#: subscription/models.py:40 msgid "You can not subscribe many time for the same period" msgstr "Vous ne pouvez pas cotiser plusieurs fois pour la même période" -#: subscription/models.py:72 +#: subscription/models.py:44 msgid "Subscription error" msgstr "Erreur de cotisation" -#: subscription/views.py:54 +#: subscription/views.py:50 msgid "A user with that email address already exists" msgstr "Un utilisateur avec cette adresse email existe déjà" -#: subscription/views.py:70 +#: subscription/views.py:66 msgid "You must either choose an existing user or create a new one properly" msgstr "" -"Vous devez soit choisir un utilisateur existant, ou en créer un proprement." - -#~ msgid "Stock items list" -#~ msgstr "Liste des éléments du stock" +"Vous devez soit choisir un utilisateur existant, soit en créer un proprement" diff --git a/stock/models.py b/stock/models.py index 903be49a..760fa262 100644 --- a/stock/models.py +++ b/stock/models.py @@ -27,10 +27,10 @@ class StockItem(models.Model): The StockItem class, element of the stock """ name = models.CharField(_('name'), max_length=64) - unit_quantity = models.IntegerField(_('unit quantity'), default=0, help_text='number of element in one box') - effective_quantity = models.IntegerField(_('effective quantity'), default=0, help_text='number of box') + unit_quantity = models.IntegerField(_('unit quantity'), default=0, help_text=_('number of element in one box')) + effective_quantity = models.IntegerField(_('effective quantity'), default=0, help_text=_('number of box')) minimal_quantity = models.IntegerField(_('minimal quantity'), default=1, - help_text='if the effective quantity is less than the minimal, item is added to the shopping list') + help_text=_('if the effective quantity is less than the minimal, item is added to the shopping list')) type = models.ForeignKey(ProductType, related_name="stock_items", verbose_name=_("type"), null=True, blank=True, on_delete=models.SET_NULL) stock_owner = models.ForeignKey(Stock, related_name="items") @@ -67,13 +67,13 @@ class ShoppingList(models.Model): class ShoppingListItem(models.Model): """ """ - shopping_lists = models.ManyToManyField(ShoppingList, verbose_name=_('shopping lists'), related_name="shopping_items_to_buy") + shopping_lists = models.ManyToManyField(ShoppingList, verbose_name=_("shopping lists"), related_name="shopping_items_to_buy") stockitem_owner = models.ForeignKey(StockItem, related_name="shopping_item", null=True) name = models.CharField(_('name'), max_length=64) type = models.ForeignKey(ProductType, related_name="shoppinglist_items", verbose_name=_("type"), null=True, blank=True, on_delete=models.SET_NULL) - tobuy_quantity = models.IntegerField(_('quantity to buy'), default=6, help_text="quantity to buy during the next shopping session") - bought_quantity = models.IntegerField(_('quantity bought'), default=0, help_text="quantity bought during the last shopping session") + tobuy_quantity = models.IntegerField(_('quantity to buy'), default=6, help_text=_("quantity to buy during the next shopping session")) + bought_quantity = models.IntegerField(_('quantity bought'), default=0, help_text=_("quantity bought during the last shopping session")) def __str__(self): return "%s - %s" % (self.name, self.shopping_lists.first()) diff --git a/stock/templates/stock/shopping_list_items.jinja b/stock/templates/stock/shopping_list_items.jinja index 24f3b93c..bafcd872 100644 --- a/stock/templates/stock/shopping_list_items.jinja +++ b/stock/templates/stock/shopping_list_items.jinja @@ -34,7 +34,7 @@ {% endif %} {% endfor %} -

Other

+

{% trans %}Other{% endtrans %}


diff --git a/stock/templates/stock/stock_shopping_list.jinja b/stock/templates/stock/stock_shopping_list.jinja index 8f659da6..b8ca84e3 100644 --- a/stock/templates/stock/stock_shopping_list.jinja +++ b/stock/templates/stock/stock_shopping_list.jinja @@ -15,7 +15,7 @@ Shopping list for {{ stock }}
{% trans %}Use the "update stock" action when you get back from shopping to add the effective quantity bought for each shopping list item.{% endtrans %}
- {% trans %}For example, 3 Cheesburger (boxes) are aksing in the list, but there were only 2 so, 2 have to be added in the stock quantity.{% endtrans %} + {% trans %}For example, 3 Cheeseburger (boxes) are aksing in the list, but there were only 2 so, 2 have to be added in the stock quantity.{% endtrans %}

{% trans %}To do{% endtrans %}

diff --git a/stock/templates/stock/stock_take_items.jinja b/stock/templates/stock/stock_take_items.jinja index f61a2d09..ed59b3bc 100644 --- a/stock/templates/stock/stock_take_items.jinja +++ b/stock/templates/stock/stock_take_items.jinja @@ -2,11 +2,11 @@ {% from 'core/macros.jinja' import user_profile_link %} {% block title %} -{% trans s = stock %}Take items form {{ s }}{% endtrans %} +{% trans s = stock %}Take items from {{ s }}{% endtrans %} {% endblock %} {% block content %} -

{% trans s = stock %}Take items form {{ s }}{% endtrans %}

+

{% trans s = stock %}Take items from {{ s }}{% endtrans %}

{% csrf_token %} diff --git a/stock/views.py b/stock/views.py index 2a31037b..8c68c13c 100644 --- a/stock/views.py +++ b/stock/views.py @@ -178,15 +178,15 @@ class StockItemQuantityBaseFormView(CounterAdminTabsMixin, CanEditMixin, DetailV def get_form_class(self): fields = OrderedDict() kwargs = {} - fields['name'] = forms.CharField(max_length=30, required=True, label='Shopping list name') + fields['name'] = forms.CharField(max_length=30, required=True, label=_('Shopping list name')) for t in ProductType.objects.order_by('name').all(): for i in self.stock.items.filter(type=t).order_by('name').all(): if i.effective_quantity <= i.minimal_quantity: field_name = "item-%s" % (str(i.id)) fields[field_name] = forms.IntegerField(required=True, label=str(i), - help_text=str(i.effective_quantity)+" left") - fields['comment'] = forms.CharField(widget=forms.Textarea(), required=False, - initial="Add here, items to buy that are not reference as a product (example : sponge, knife, mugs ...)") + help_text=_(str(i.effective_quantity)+" left")) + fields['comment'] = forms.CharField(widget=forms.Textarea(), required=False, label=_("Comments"), + initial=_("Add here, items to buy that are not reference as a stock item (example : sponge, knife, mugs ...)")) kwargs['stock_id'] = self.stock.id kwargs['base_fields'] = fields return type('StockItemQuantityForm', (StockItemQuantityForm,), kwargs) @@ -288,17 +288,12 @@ class StockUpdateAfterShopppingForm(forms.BaseForm): self.shoppinglist = ShoppingList.objects.filter(id=self.shoppinglist_id).first() for k,t in self.cleaned_data.items(): shoppinglist_item_id = int(k[5:]) - #item_id = int(k[5:]) if int(t) > 0 : shoppinglist_item = ShoppingListItem.objects.filter(id=shoppinglist_item_id).first() shoppinglist_item.bought_quantity = int(t) shoppinglist_item.save() shoppinglist_item.stockitem_owner.effective_quantity += int(t) shoppinglist_item.stockitem_owner.save() - #item = StockItem.objects.filter(id=item_id).first() - #item.bought_quantity = int(t) - #item.effective_quantity += int(t) - #item.save() self.shoppinglist.todo = False self.shoppinglist.save() return self.cleaned_data @@ -319,7 +314,7 @@ class StockUpdateAfterShopppingBaseFormView(CounterAdminTabsMixin, CanEditMixin, for i in self.shoppinglist.shopping_items_to_buy.filter(type=t).order_by('name').all(): field_name = "item-%s" % (str(i.id)) fields[field_name] = forms.CharField(max_length=30, required=True, label=str(i), - help_text=str(i.tobuy_quantity) + " asked") + help_text=_(str(i.tobuy_quantity) + " asked")) kwargs['shoppinglist_id'] = self.shoppinglist.id kwargs['base_fields'] = fields return type('StockUpdateAfterShopppingForm', (StockUpdateAfterShopppingForm,), kwargs) @@ -385,7 +380,7 @@ class StockTakeItemsBaseFormView(CounterTabsMixin, CanEditMixin, DetailView, Bas for t in ProductType.objects.order_by('name').all(): for i in self.stock.items.filter(type=t).order_by('name').all(): field_name = "item-%s" % (str(i.id)) - fields[field_name] = forms.IntegerField(required=False, label=str(i), help_text="("+ str(i.effective_quantity) + " left)") + fields[field_name] = forms.IntegerField(required=False, label=str(i), help_text=_("("+ str(i.effective_quantity) + " left)")) kwargs[field_name] = i.effective_quantity kwargs['stock_id'] = self.stock.id kwargs['counter_id'] = self.stock.counter.id