mirror of https://gitlab.crans.org/bde/nk20
Add shortcuts for transfers and credits in the activity entry page
This commit is contained in:
parent
6498a20b87
commit
9d584ae87a
|
@ -155,4 +155,8 @@ class ActivityEntryView(LoginRequiredMixin, TemplateView):
|
|||
ctx["noteuser_ctype"] = ContentType.objects.get_for_model(NoteUser).pk
|
||||
ctx["notespecial_ctype"] = ContentType.objects.get_for_model(NoteSpecial).pk
|
||||
|
||||
ctx["activities_open"] = Activity.objects.filter(open=True).filter(
|
||||
PermissionBackend.filter_queryset(self.request.user, Activity, "view")).filter(
|
||||
PermissionBackend.filter_queryset(self.request.user, Activity, "change")).all()
|
||||
|
||||
return ctx
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
from django.conf import settings
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
@ -29,7 +30,7 @@ class TransactionCreateView(ProtectQuerysetMixin, LoginRequiredMixin, SingleTabl
|
|||
table_class = HistoryTable
|
||||
|
||||
def get_queryset(self, **kwargs):
|
||||
return super().get_queryset(**kwargs).order_by("-id").all()[:50]
|
||||
return super().get_queryset(**kwargs).order_by("-id").all()[:20]
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
"""
|
||||
|
@ -44,6 +45,12 @@ class TransactionCreateView(ProtectQuerysetMixin, LoginRequiredMixin, SingleTabl
|
|||
.filter(PermissionBackend.filter_queryset(self.request.user, NoteSpecial, "view"))\
|
||||
.order_by("special_type").all()
|
||||
|
||||
if "activity" in settings.INSTALLED_APPS:
|
||||
from activity.models import Activity
|
||||
context["activities_open"] = Activity.objects.filter(open=True).filter(
|
||||
PermissionBackend.filter_queryset(self.request.user, Activity, "view")).filter(
|
||||
PermissionBackend.filter_queryset(self.request.user, Activity, "change")).all()
|
||||
|
||||
return context
|
||||
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-04-05 15:39+0200\n"
|
||||
"POT-Creation-Date: 2020-04-06 06:43+0200\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"
|
||||
|
@ -171,13 +171,14 @@ msgstr ""
|
|||
msgid "Type"
|
||||
msgstr ""
|
||||
|
||||
#: apps/activity/tables.py:77 apps/registration/forms.py:49
|
||||
#: apps/treasury/forms.py:121
|
||||
#: apps/activity/tables.py:77 apps/member/forms.py:75
|
||||
#: apps/registration/forms.py:49 apps/treasury/forms.py:121
|
||||
msgid "Last name"
|
||||
msgstr ""
|
||||
|
||||
#: apps/activity/tables.py:79 apps/registration/forms.py:54
|
||||
#: apps/treasury/forms.py:123 templates/note/transaction_form.html:92
|
||||
#: apps/activity/tables.py:79 apps/member/forms.py:80
|
||||
#: apps/registration/forms.py:54 apps/treasury/forms.py:123
|
||||
#: templates/note/transaction_form.html:97
|
||||
msgid "First name"
|
||||
msgstr ""
|
||||
|
||||
|
@ -193,7 +194,7 @@ msgstr ""
|
|||
msgid "Activities"
|
||||
msgstr ""
|
||||
|
||||
#: apps/activity/views.py:153
|
||||
#: apps/activity/views.py:154
|
||||
msgid "Entry for activity \"{}\""
|
||||
msgstr ""
|
||||
|
||||
|
@ -254,6 +255,35 @@ msgstr ""
|
|||
msgid "member"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/forms.py:54 apps/registration/forms.py:29
|
||||
msgid "Inscription paid by Société Générale"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/forms.py:56 apps/registration/forms.py:31
|
||||
msgid "Check this case is the Société Générale paid the inscription."
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/forms.py:61 apps/registration/forms.py:36
|
||||
msgid "Credit type"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/forms.py:62 apps/registration/forms.py:37
|
||||
msgid "No credit"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/forms.py:64
|
||||
msgid "You can credit the note of the user."
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/forms.py:68 apps/registration/forms.py:42
|
||||
msgid "Credit amount"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/forms.py:85 apps/registration/forms.py:59
|
||||
#: apps/treasury/forms.py:125 templates/note/transaction_form.html:103
|
||||
msgid "Bank"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/models.py:32
|
||||
#: templates/registration/future_profile_detail.html:47
|
||||
msgid "phone number"
|
||||
|
@ -382,11 +412,11 @@ msgstr ""
|
|||
msgid "fee"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/models.py:261 apps/member/views.py:385
|
||||
#: apps/member/models.py:261 apps/member/views.py:447
|
||||
msgid "User is not a member of the parent club"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/models.py:271 apps/member/views.py:394
|
||||
#: apps/member/models.py:271 apps/member/views.py:456
|
||||
msgid "User is already a member of the club"
|
||||
msgstr ""
|
||||
|
||||
|
@ -407,39 +437,41 @@ msgstr ""
|
|||
msgid "Renew"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:59 apps/registration/forms.py:20
|
||||
#: apps/member/views.py:56 apps/registration/forms.py:20
|
||||
msgid "This address must be valid."
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:62 templates/member/profile_info.html:45
|
||||
#: apps/member/views.py:59 templates/member/profile_info.html:45
|
||||
#: templates/registration/future_profile_detail.html:55
|
||||
msgid "Update Profile"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:72
|
||||
#: apps/member/views.py:69
|
||||
msgid "An alias with a similar name already exists."
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:167
|
||||
#: apps/member/views.py:164
|
||||
msgid "Search user"
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:381
|
||||
#: apps/member/views.py:442
|
||||
msgid ""
|
||||
"This user don't have enough money to join this club, and can't have a "
|
||||
"negative balance."
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:398 apps/member/views.py:430
|
||||
#: apps/member/views.py:460
|
||||
msgid "The membership must start after {:%m-%d-%Y}."
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:403 apps/member/views.py:435
|
||||
#: apps/member/views.py:465
|
||||
msgid "The membership must begin before {:%m-%d-%Y}."
|
||||
msgstr ""
|
||||
|
||||
#: apps/member/views.py:457
|
||||
msgid "This membership is already renewed"
|
||||
#: apps/member/views.py:472 apps/member/views.py:474 apps/member/views.py:476
|
||||
#: apps/registration/views.py:237 apps/registration/views.py:239
|
||||
#: apps/registration/views.py:241
|
||||
msgid "This field is required."
|
||||
msgstr ""
|
||||
|
||||
#: apps/note/admin.py:120 apps/note/models/transactions.py:99
|
||||
|
@ -617,9 +649,10 @@ msgstr ""
|
|||
msgid "transactions"
|
||||
msgstr ""
|
||||
|
||||
#: apps/note/models/transactions.py:207 templates/base.html:84
|
||||
#: apps/note/models/transactions.py:207
|
||||
#: templates/activity/activity_entry.html:13 templates/base.html:84
|
||||
#: templates/note/transaction_form.html:19
|
||||
#: templates/note/transaction_form.html:140
|
||||
#: templates/note/transaction_form.html:145
|
||||
msgid "Transfer"
|
||||
msgstr ""
|
||||
|
||||
|
@ -635,7 +668,9 @@ msgstr ""
|
|||
msgid "bank"
|
||||
msgstr ""
|
||||
|
||||
#: apps/note/models/transactions.py:253 templates/note/transaction_form.html:24
|
||||
#: apps/note/models/transactions.py:253
|
||||
#: templates/activity/activity_entry.html:17
|
||||
#: templates/note/transaction_form.html:24
|
||||
msgid "Credit"
|
||||
msgstr ""
|
||||
|
||||
|
@ -672,11 +707,11 @@ msgstr ""
|
|||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: apps/note/views.py:39
|
||||
#: apps/note/views.py:40
|
||||
msgid "Transfer money"
|
||||
msgstr ""
|
||||
|
||||
#: apps/note/views.py:100 templates/base.html:79
|
||||
#: apps/note/views.py:107 templates/base.html:79
|
||||
msgid "Consumptions"
|
||||
msgstr ""
|
||||
|
||||
|
@ -702,31 +737,6 @@ msgstr ""
|
|||
msgid "registration"
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/forms.py:29
|
||||
msgid "Inscription paid by Société Générale"
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/forms.py:31
|
||||
msgid "Check this case is the Société Générale paid the inscription."
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/forms.py:36
|
||||
msgid "Credit type"
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/forms.py:37
|
||||
msgid "No credit"
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/forms.py:42
|
||||
msgid "Credit amount"
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/forms.py:59 apps/treasury/forms.py:125
|
||||
#: templates/note/transaction_form.html:98
|
||||
msgid "Bank"
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/forms.py:64
|
||||
msgid "Join BDE Club"
|
||||
msgstr ""
|
||||
|
@ -760,11 +770,6 @@ msgid ""
|
|||
"The entered amount is not enough for the memberships, should be at least {}"
|
||||
msgstr ""
|
||||
|
||||
#: apps/registration/views.py:237 apps/registration/views.py:239
|
||||
#: apps/registration/views.py:241
|
||||
msgid "This field is required."
|
||||
msgstr ""
|
||||
|
||||
#: apps/treasury/apps.py:12 templates/base.html:111
|
||||
msgid "Treasury"
|
||||
msgstr ""
|
||||
|
@ -791,7 +796,7 @@ msgid "You can't change the type of the remittance."
|
|||
msgstr ""
|
||||
|
||||
#: apps/treasury/forms.py:127 apps/treasury/tables.py:47
|
||||
#: templates/note/transaction_form.html:128
|
||||
#: templates/note/transaction_form.html:133
|
||||
#: templates/treasury/remittance_form.html:18
|
||||
msgid "Amount"
|
||||
msgstr ""
|
||||
|
@ -812,7 +817,7 @@ msgstr ""
|
|||
msgid "Description"
|
||||
msgstr ""
|
||||
|
||||
#: apps/treasury/models.py:46 templates/note/transaction_form.html:86
|
||||
#: apps/treasury/models.py:46 templates/note/transaction_form.html:91
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
|
||||
|
@ -938,15 +943,20 @@ msgstr ""
|
|||
msgid "Guests list"
|
||||
msgstr ""
|
||||
|
||||
#: templates/activity/activity_entry.html:10
|
||||
#: templates/activity/activity_entry.html:22
|
||||
#: templates/note/transaction_form.html:33
|
||||
msgid "Entries"
|
||||
msgstr ""
|
||||
|
||||
#: templates/activity/activity_entry.html:30
|
||||
msgid "Return to activity page"
|
||||
msgstr ""
|
||||
|
||||
#: templates/activity/activity_entry.html:18
|
||||
#: templates/activity/activity_entry.html:38
|
||||
msgid "entries"
|
||||
msgstr ""
|
||||
|
||||
#: templates/activity/activity_entry.html:18
|
||||
#: templates/activity/activity_entry.html:38
|
||||
msgid "entry"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1145,7 +1155,7 @@ msgstr ""
|
|||
msgid "Save Changes"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/conso_form.html:28 templates/note/transaction_form.html:50
|
||||
#: templates/note/conso_form.html:28 templates/note/transaction_form.html:55
|
||||
msgid "Select emitters"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1169,7 +1179,7 @@ msgstr ""
|
|||
msgid "Double consumptions"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/conso_form.html:141 templates/note/transaction_form.html:147
|
||||
#: templates/note/conso_form.html:141 templates/note/transaction_form.html:152
|
||||
msgid "Recent transactions history"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1177,29 +1187,29 @@ msgstr ""
|
|||
msgid "Gift"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/transaction_form.html:68
|
||||
#: templates/note/transaction_form.html:73
|
||||
msgid "External payment"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/transaction_form.html:76
|
||||
#: templates/note/transaction_form.html:81
|
||||
msgid "Transfer type"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/transaction_form.html:111
|
||||
#: templates/note/transaction_form.html:164
|
||||
#: templates/note/transaction_form.html:171
|
||||
#: templates/note/transaction_form.html:116
|
||||
#: templates/note/transaction_form.html:169
|
||||
#: templates/note/transaction_form.html:176
|
||||
msgid "Select receivers"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/transaction_form.html:133
|
||||
#: templates/note/transaction_form.html:138
|
||||
msgid "Reason"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/transaction_form.html:178
|
||||
#: templates/note/transaction_form.html:183
|
||||
msgid "Credit note"
|
||||
msgstr ""
|
||||
|
||||
#: templates/note/transaction_form.html:185
|
||||
#: templates/note/transaction_form.html:190
|
||||
msgid "Debit note"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2020-04-05 15:31+0200\n"
|
||||
"POT-Creation-Date: 2020-04-06 06:43+0200\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"
|
||||
|
@ -167,13 +167,14 @@ msgstr "supprimer"
|
|||
msgid "Type"
|
||||
msgstr "Type"
|
||||
|
||||
#: apps/activity/tables.py:77 apps/registration/forms.py:49
|
||||
#: apps/treasury/forms.py:121
|
||||
#: apps/activity/tables.py:77 apps/member/forms.py:75
|
||||
#: apps/registration/forms.py:49 apps/treasury/forms.py:121
|
||||
msgid "Last name"
|
||||
msgstr "Nom de famille"
|
||||
|
||||
#: apps/activity/tables.py:79 apps/registration/forms.py:54
|
||||
#: apps/treasury/forms.py:123 templates/note/transaction_form.html:92
|
||||
#: apps/activity/tables.py:79 apps/member/forms.py:80
|
||||
#: apps/registration/forms.py:54 apps/treasury/forms.py:123
|
||||
#: templates/note/transaction_form.html:97
|
||||
msgid "First name"
|
||||
msgstr "Prénom"
|
||||
|
||||
|
@ -189,7 +190,7 @@ msgstr "Solde du compte"
|
|||
msgid "Activities"
|
||||
msgstr "Activités"
|
||||
|
||||
#: apps/activity/views.py:153
|
||||
#: apps/activity/views.py:154
|
||||
msgid "Entry for activity \"{}\""
|
||||
msgstr "Entrées pour l'activité « {} »"
|
||||
|
||||
|
@ -250,6 +251,35 @@ msgstr "Les logs ne peuvent pas être détruits."
|
|||
msgid "member"
|
||||
msgstr "adhérent"
|
||||
|
||||
#: apps/member/forms.py:54 apps/registration/forms.py:29
|
||||
msgid "Inscription paid by Société Générale"
|
||||
msgstr "Inscription payée par la Société générale"
|
||||
|
||||
#: apps/member/forms.py:56 apps/registration/forms.py:31
|
||||
msgid "Check this case is the Société Générale paid the inscription."
|
||||
msgstr "Cochez cette case si la Société Générale a payé l'inscription."
|
||||
|
||||
#: apps/member/forms.py:61 apps/registration/forms.py:36
|
||||
msgid "Credit type"
|
||||
msgstr "Type de rechargement"
|
||||
|
||||
#: apps/member/forms.py:62 apps/registration/forms.py:37
|
||||
msgid "No credit"
|
||||
msgstr "Pas de rechargement"
|
||||
|
||||
#: apps/member/forms.py:64
|
||||
msgid "You can credit the note of the user."
|
||||
msgstr "Vous pouvez créditer la note de l'utisateur avant l'adhésion."
|
||||
|
||||
#: apps/member/forms.py:68 apps/registration/forms.py:42
|
||||
msgid "Credit amount"
|
||||
msgstr "Montant à créditer"
|
||||
|
||||
#: apps/member/forms.py:85 apps/registration/forms.py:59
|
||||
#: apps/treasury/forms.py:125 templates/note/transaction_form.html:103
|
||||
msgid "Bank"
|
||||
msgstr "Banque"
|
||||
|
||||
#: apps/member/models.py:32
|
||||
#: templates/registration/future_profile_detail.html:47
|
||||
msgid "phone number"
|
||||
|
@ -382,11 +412,11 @@ msgstr "l'adhésion finit le"
|
|||
msgid "fee"
|
||||
msgstr "cotisation"
|
||||
|
||||
#: apps/member/models.py:261 apps/member/views.py:385
|
||||
#: apps/member/models.py:261 apps/member/views.py:447
|
||||
msgid "User is not a member of the parent club"
|
||||
msgstr "L'utilisateur n'est pas membre du club parent"
|
||||
|
||||
#: apps/member/models.py:271 apps/member/views.py:394
|
||||
#: apps/member/models.py:271 apps/member/views.py:456
|
||||
msgid "User is already a member of the club"
|
||||
msgstr "L'utilisateur est déjà membre du club"
|
||||
|
||||
|
@ -407,42 +437,44 @@ msgstr "adhésions"
|
|||
msgid "Renew"
|
||||
msgstr "Renouveler"
|
||||
|
||||
#: apps/member/views.py:59 apps/registration/forms.py:20
|
||||
#: apps/member/views.py:56 apps/registration/forms.py:20
|
||||
msgid "This address must be valid."
|
||||
msgstr "Cette adresse doit être valide."
|
||||
|
||||
#: apps/member/views.py:62 templates/member/profile_info.html:45
|
||||
#: apps/member/views.py:59 templates/member/profile_info.html:45
|
||||
#: templates/registration/future_profile_detail.html:55
|
||||
msgid "Update Profile"
|
||||
msgstr "Modifier le profil"
|
||||
|
||||
#: apps/member/views.py:72
|
||||
#: apps/member/views.py:69
|
||||
msgid "An alias with a similar name already exists."
|
||||
msgstr "Un alias avec un nom similaire existe déjà."
|
||||
|
||||
#: apps/member/views.py:167
|
||||
#: apps/member/views.py:164
|
||||
msgid "Search user"
|
||||
msgstr "Chercher un utilisateur"
|
||||
|
||||
#: apps/member/views.py:381
|
||||
#: apps/member/views.py:442
|
||||
msgid ""
|
||||
"This user don't have enough money to join this club, and can't have a "
|
||||
"negative balance."
|
||||
msgstr ""
|
||||
"Cet utilisateur n'a pas assez d'argent pour rejoindre ce club et ne "
|
||||
"peut pas avoir un solde négatif."
|
||||
"Cet utilisateur n'a pas assez d'argent pour rejoindre ce club et ne peut pas "
|
||||
"avoir un solde négatif."
|
||||
|
||||
#: apps/member/views.py:398 apps/member/views.py:430
|
||||
#: apps/member/views.py:460
|
||||
msgid "The membership must start after {:%m-%d-%Y}."
|
||||
msgstr "L'adhésion doit commencer après le {:%d/%m/%Y}."
|
||||
|
||||
#: apps/member/views.py:403 apps/member/views.py:435
|
||||
#: apps/member/views.py:465
|
||||
msgid "The membership must begin before {:%m-%d-%Y}."
|
||||
msgstr "L'adhésion doit commencer avant le {:%d/%m/%Y}."
|
||||
|
||||
#: apps/member/views.py:457
|
||||
msgid "This membership is already renewed"
|
||||
msgstr "Cette adhésion est déjà renouvelée"
|
||||
#: apps/member/views.py:472 apps/member/views.py:474 apps/member/views.py:476
|
||||
#: apps/registration/views.py:237 apps/registration/views.py:239
|
||||
#: apps/registration/views.py:241
|
||||
msgid "This field is required."
|
||||
msgstr "Ce champ est requis."
|
||||
|
||||
#: apps/note/admin.py:120 apps/note/models/transactions.py:99
|
||||
msgid "source"
|
||||
|
@ -620,9 +652,10 @@ msgstr "transaction"
|
|||
msgid "transactions"
|
||||
msgstr "transactions"
|
||||
|
||||
#: apps/note/models/transactions.py:207 templates/base.html:84
|
||||
#: apps/note/models/transactions.py:207
|
||||
#: templates/activity/activity_entry.html:13 templates/base.html:84
|
||||
#: templates/note/transaction_form.html:19
|
||||
#: templates/note/transaction_form.html:140
|
||||
#: templates/note/transaction_form.html:145
|
||||
msgid "Transfer"
|
||||
msgstr "Virement"
|
||||
|
||||
|
@ -638,7 +671,9 @@ msgstr "prénom"
|
|||
msgid "bank"
|
||||
msgstr "banque"
|
||||
|
||||
#: apps/note/models/transactions.py:253 templates/note/transaction_form.html:24
|
||||
#: apps/note/models/transactions.py:253
|
||||
#: templates/activity/activity_entry.html:17
|
||||
#: templates/note/transaction_form.html:24
|
||||
msgid "Credit"
|
||||
msgstr "Crédit"
|
||||
|
||||
|
@ -675,11 +710,11 @@ msgstr "Supprimer"
|
|||
msgid "Edit"
|
||||
msgstr "Éditer"
|
||||
|
||||
#: apps/note/views.py:39
|
||||
#: apps/note/views.py:40
|
||||
msgid "Transfer money"
|
||||
msgstr "Transférer de l'argent"
|
||||
|
||||
#: apps/note/views.py:100 templates/base.html:79
|
||||
#: apps/note/views.py:107 templates/base.html:79
|
||||
msgid "Consumptions"
|
||||
msgstr "Consommations"
|
||||
|
||||
|
@ -705,31 +740,6 @@ msgstr ""
|
|||
msgid "registration"
|
||||
msgstr "inscription"
|
||||
|
||||
#: apps/registration/forms.py:29
|
||||
msgid "Inscription paid by Société Générale"
|
||||
msgstr "Inscription payée par la Société générale"
|
||||
|
||||
#: apps/registration/forms.py:31
|
||||
msgid "Check this case is the Société Générale paid the inscription."
|
||||
msgstr "Cochez cette case si la Société Générale a payé l'inscription."
|
||||
|
||||
#: apps/registration/forms.py:36
|
||||
msgid "Credit type"
|
||||
msgstr "Type de rechargement"
|
||||
|
||||
#: apps/registration/forms.py:37
|
||||
msgid "No credit"
|
||||
msgstr "Pas de rechargement"
|
||||
|
||||
#: apps/registration/forms.py:42
|
||||
msgid "Credit amount"
|
||||
msgstr "Montant à créditer"
|
||||
|
||||
#: apps/registration/forms.py:59 apps/treasury/forms.py:125
|
||||
#: templates/note/transaction_form.html:98
|
||||
msgid "Bank"
|
||||
msgstr "Banque"
|
||||
|
||||
#: apps/registration/forms.py:64
|
||||
msgid "Join BDE Club"
|
||||
msgstr "Adhérer au club BDE"
|
||||
|
@ -761,12 +771,9 @@ msgstr "Vous devez adhérer au club BDE avant d'adhérer au club Kfet."
|
|||
#: apps/registration/views.py:230
|
||||
msgid ""
|
||||
"The entered amount is not enough for the memberships, should be at least {}"
|
||||
msgstr "Le montant crédité est trop faible pour adhérer, il doit être au minimum de {}"
|
||||
|
||||
#: apps/registration/views.py:237 apps/registration/views.py:239
|
||||
#: apps/registration/views.py:241
|
||||
msgid "This field is required."
|
||||
msgstr "Ce champ est requis."
|
||||
msgstr ""
|
||||
"Le montant crédité est trop faible pour adhérer, il doit être au minimum de "
|
||||
"{}"
|
||||
|
||||
#: apps/treasury/apps.py:12 templates/base.html:111
|
||||
msgid "Treasury"
|
||||
|
@ -794,7 +801,7 @@ msgid "You can't change the type of the remittance."
|
|||
msgstr "Vous ne pouvez pas changer le type de la remise."
|
||||
|
||||
#: apps/treasury/forms.py:127 apps/treasury/tables.py:47
|
||||
#: templates/note/transaction_form.html:128
|
||||
#: templates/note/transaction_form.html:133
|
||||
#: templates/treasury/remittance_form.html:18
|
||||
msgid "Amount"
|
||||
msgstr "Montant"
|
||||
|
@ -815,7 +822,7 @@ msgstr "Objet"
|
|||
msgid "Description"
|
||||
msgstr "Description"
|
||||
|
||||
#: apps/treasury/models.py:46 templates/note/transaction_form.html:86
|
||||
#: apps/treasury/models.py:46 templates/note/transaction_form.html:91
|
||||
msgid "Name"
|
||||
msgstr "Nom"
|
||||
|
||||
|
@ -941,15 +948,20 @@ msgstr "Inviter"
|
|||
msgid "Guests list"
|
||||
msgstr "Liste des invités"
|
||||
|
||||
#: templates/activity/activity_entry.html:10
|
||||
#: templates/activity/activity_entry.html:22
|
||||
#: templates/note/transaction_form.html:33
|
||||
msgid "Entries"
|
||||
msgstr "Entrées"
|
||||
|
||||
#: templates/activity/activity_entry.html:30
|
||||
msgid "Return to activity page"
|
||||
msgstr "Retour à la page de l'activité"
|
||||
|
||||
#: templates/activity/activity_entry.html:18
|
||||
#: templates/activity/activity_entry.html:38
|
||||
msgid "entries"
|
||||
msgstr "entrées"
|
||||
|
||||
#: templates/activity/activity_entry.html:18
|
||||
#: templates/activity/activity_entry.html:38
|
||||
msgid "entry"
|
||||
msgstr "entrée"
|
||||
|
||||
|
@ -975,7 +987,7 @@ msgstr "La note du BDE de l'ENS Paris-Saclay."
|
|||
|
||||
#: templates/base.html:89
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
msgstr "Utilisateurs"
|
||||
|
||||
#: templates/base.html:94
|
||||
msgid "Clubs"
|
||||
|
@ -1150,7 +1162,7 @@ msgstr "Voir mes adhésions"
|
|||
msgid "Save Changes"
|
||||
msgstr "Sauvegarder les changements"
|
||||
|
||||
#: templates/note/conso_form.html:28 templates/note/transaction_form.html:50
|
||||
#: templates/note/conso_form.html:28 templates/note/transaction_form.html:55
|
||||
msgid "Select emitters"
|
||||
msgstr "Sélection des émetteurs"
|
||||
|
||||
|
@ -1174,7 +1186,7 @@ msgstr "Consommations simples"
|
|||
msgid "Double consumptions"
|
||||
msgstr "Consommations doubles"
|
||||
|
||||
#: templates/note/conso_form.html:141 templates/note/transaction_form.html:147
|
||||
#: templates/note/conso_form.html:141 templates/note/transaction_form.html:152
|
||||
msgid "Recent transactions history"
|
||||
msgstr "Historique des transactions récentes"
|
||||
|
||||
|
@ -1182,29 +1194,29 @@ msgstr "Historique des transactions récentes"
|
|||
msgid "Gift"
|
||||
msgstr "Don"
|
||||
|
||||
#: templates/note/transaction_form.html:68
|
||||
#: templates/note/transaction_form.html:73
|
||||
msgid "External payment"
|
||||
msgstr "Paiement externe"
|
||||
|
||||
#: templates/note/transaction_form.html:76
|
||||
#: templates/note/transaction_form.html:81
|
||||
msgid "Transfer type"
|
||||
msgstr "Type de transfert"
|
||||
|
||||
#: templates/note/transaction_form.html:111
|
||||
#: templates/note/transaction_form.html:164
|
||||
#: templates/note/transaction_form.html:171
|
||||
#: templates/note/transaction_form.html:116
|
||||
#: templates/note/transaction_form.html:169
|
||||
#: templates/note/transaction_form.html:176
|
||||
msgid "Select receivers"
|
||||
msgstr "Sélection des destinataires"
|
||||
|
||||
#: templates/note/transaction_form.html:133
|
||||
#: templates/note/transaction_form.html:138
|
||||
msgid "Reason"
|
||||
msgstr "Raison"
|
||||
|
||||
#: templates/note/transaction_form.html:178
|
||||
#: templates/note/transaction_form.html:183
|
||||
msgid "Credit note"
|
||||
msgstr "Note à recharger"
|
||||
|
||||
#: templates/note/transaction_form.html:185
|
||||
#: templates/note/transaction_form.html:190
|
||||
msgid "Debit note"
|
||||
msgstr "Note à débiter"
|
||||
|
||||
|
@ -1424,3 +1436,6 @@ msgstr "Il n'y a pas de transaction associée à une remise ouverte."
|
|||
#: templates/treasury/remittance_list.html:54
|
||||
msgid "Closed remittances"
|
||||
msgstr "Remises fermées"
|
||||
|
||||
#~ msgid "This membership is already renewed"
|
||||
#~ msgstr "Cette adhésion est déjà renouvelée"
|
||||
|
|
|
@ -19,23 +19,32 @@ function pretty_money(value) {
|
|||
* Add a message on the top of the page.
|
||||
* @param msg The message to display
|
||||
* @param alert_type The type of the alert. Choices: info, success, warning, danger
|
||||
* @param timeout The delay (in millis) after that the message is auto-closed. If negative, then it is ignored.
|
||||
*/
|
||||
function addMsg(msg, alert_type) {
|
||||
function addMsg(msg, alert_type, timeout=-1) {
|
||||
let msgDiv = $("#messages");
|
||||
let html = msgDiv.html();
|
||||
let id = Math.floor(10000 * Math.random() + 1);
|
||||
html += "<div class=\"alert alert-" + alert_type + " alert-dismissible\">" +
|
||||
"<button class=\"close\" data-dismiss=\"alert\" href=\"#\"><span aria-hidden=\"true\">×</span></button>"
|
||||
"<button id=\"close-message-" + id + "\" class=\"close\" data-dismiss=\"alert\" href=\"#\"><span aria-hidden=\"true\">×</span></button>"
|
||||
+ msg + "</div>\n";
|
||||
msgDiv.html(html);
|
||||
|
||||
if (timeout > 0) {
|
||||
setTimeout(function () {
|
||||
$("#close-message-" + id).click();
|
||||
}, timeout);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* add Muliple error message from err_obj
|
||||
* @param errs_obj [{error_code:erro_message}]
|
||||
* @param timeout The delay (in millis) after that the message is auto-closed. If negative, then it is ignored.
|
||||
*/
|
||||
function errMsg(errs_obj){
|
||||
function errMsg(errs_obj, timeout=-1) {
|
||||
for (const err_msg of Object.values(errs_obj)) {
|
||||
addMsg(err_msg,'danger');
|
||||
addMsg(err_msg,'danger', timeout);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -28,6 +28,7 @@ function reset() {
|
|||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
console.log(42);
|
||||
autoCompleteNote("source_note", "source_alias_matched", "source_note_list", sources, sources_notes_display,
|
||||
"source_alias", "source_note", "user_note", "profile_pic");
|
||||
autoCompleteNote("dest_note", "dest_alias_matched", "dest_note_list", dests, dests_notes_display,
|
||||
|
@ -61,16 +62,25 @@ $(document).ready(function() {
|
|||
|
||||
|
||||
// Ensure we begin in gift mode. Removing these lines may cause problems when reloading.
|
||||
$("#type_gift").prop('checked', 'true');
|
||||
let type_gift = $("#type_gift"); // Default mode
|
||||
type_gift.removeAttr('checked');
|
||||
$("#type_transfer").removeAttr('checked');
|
||||
$("#type_credit").removeAttr('checked');
|
||||
$("#type_debit").removeAttr('checked');
|
||||
$("label[for='type_gift']").attr('class', 'btn btn-sm btn-outline-primary');
|
||||
$("label[for='type_transfer']").attr('class', 'btn btn-sm btn-outline-primary');
|
||||
$("label[for='type_credit']").attr('class', 'btn btn-sm btn-outline-primary');
|
||||
$("label[for='type_debit']").attr('class', 'btn btn-sm btn-outline-primary');
|
||||
|
||||
console.log("#type_" + location.hash.substr(1));
|
||||
if (location.hash)
|
||||
$("#type_" + location.hash.substr(1)).click();
|
||||
else
|
||||
type_gift.click();
|
||||
location.hash = "";
|
||||
});
|
||||
|
||||
$("#transfer").click(function() {
|
||||
$("#btn_transfer").click(function() {
|
||||
if ($("#type_gift").is(':checked')) {
|
||||
dests_notes_display.forEach(function (dest) {
|
||||
$.post("/api/note/transaction/transaction/",
|
||||
|
|
|
@ -6,6 +6,26 @@
|
|||
{% load perms %}
|
||||
|
||||
{% block content %}
|
||||
<div class="row">
|
||||
<div class="col-xl-12">
|
||||
<div class="btn-group btn-group-toggle" style="width: 100%; padding: 0 0 2em 0" data-toggle="buttons">
|
||||
<a href="{% url "note:transfer" %}#transfer" class="btn btn-sm btn-outline-primary">
|
||||
{% trans "Transfer" %}
|
||||
</a>
|
||||
{% if "note.notespecial"|not_empty_model_list %}
|
||||
<a href="{% url "note:transfer" %}#credit" class="btn btn-sm btn-outline-primary">
|
||||
{% trans "Credit" %}
|
||||
</a>
|
||||
{% endif %}
|
||||
{% for a in activities_open %}
|
||||
<a href="{% url "activity:activity_entry" pk=a.pk %}" class="btn btn-sm btn-outline-primary{% if a.pk == activity.pk %} active{% endif %}">
|
||||
{% trans "Entries" %} {{ a.name }}
|
||||
</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<a href="{% url "activity:activity_detail" pk=activity.pk %}">
|
||||
<button class="btn btn-light">{% trans "Return to activity page" %}</button>
|
||||
</a>
|
||||
|
@ -56,10 +76,10 @@
|
|||
note: id,
|
||||
guest: null
|
||||
}).done(function () {
|
||||
addMsg("Entrée effectuée !", "success");
|
||||
addMsg("Entrée effectuée !", "success", 4000);
|
||||
reloadTable(true);
|
||||
}).fail(function(xhr) {
|
||||
errMsg(xhr.responseJSON);
|
||||
errMsg(xhr.responseJSON, 4000);
|
||||
});
|
||||
}
|
||||
else {
|
||||
|
@ -84,10 +104,10 @@
|
|||
note: target.attr("data-inviter"),
|
||||
guest: id
|
||||
}).done(function () {
|
||||
addMsg("Entrée effectuée !", "success");
|
||||
addMsg("Entrée effectuée !", "success", 4000);
|
||||
reloadTable(true);
|
||||
}).fail(function (xhr) {
|
||||
errMsg(xhr.responseJSON);
|
||||
errMsg(xhr.responseJSON, 4000);
|
||||
});
|
||||
};
|
||||
|
||||
|
@ -111,7 +131,7 @@
|
|||
makeTransaction();
|
||||
reset();
|
||||
}).fail(function (xhr) {
|
||||
errMsg(xhr.responseJSON);
|
||||
errMsg(xhr.responseJSON, 4000);
|
||||
});
|
||||
};
|
||||
};
|
||||
|
|
|
@ -28,6 +28,11 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
|||
{% trans "Debit" %}
|
||||
</label>
|
||||
{% endif %}
|
||||
{% for activity in activities_open %}
|
||||
<a href="{% url "activity:activity_entry" pk=activity.pk %}" class="btn btn-sm btn-outline-primary">
|
||||
{% trans "Entries" %} {{ activity.name }}
|
||||
</a>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -137,7 +142,7 @@ SPDX-License-Identifier: GPL-2.0-or-later
|
|||
|
||||
<div class="form-row">
|
||||
<div class="col-md-12">
|
||||
<button id="transfer" class="form-control btn btn-primary">{% trans 'Transfer' %}</button>
|
||||
<button id="btn_transfer" class="form-control btn btn-primary">{% trans 'Transfer' %}</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
Loading…
Reference in New Issue