1
0
mirror of https://gitlab.crans.org/bde/nk20 synced 2025-06-30 21:11:15 +02:00

Compare commits

...

32 Commits

Author SHA1 Message Date
0a89ff8670 Merge branch 'FAQ' into 'main'
Ajout d'un lien vers la FAQ de la note.

See merge request bde/nk20!209
2023-04-14 19:30:36 +02:00
a79df8f1f6 Merge branch 'invoice_bg_storlist' into 'main'
changement du fond des factures

See merge request bde/nk20!211
2023-04-14 19:29:26 +02:00
364b18e188 migrations 2023-04-14 16:52:46 +02:00
10a883b2e5 new treasury phone number 2023-04-14 16:00:48 +02:00
1410ab6c4f Almost on time, the SIRET number is now changed 2023-04-14 15:35:18 +02:00
623dd61be6 Remove phone number 2023-04-14 14:56:34 +02:00
48a0a87e7c changement du fond des factures 2023-04-14 00:25:26 +02:00
563f525b11 Merge branch 'cron' into 'main'
fréquence des mails de négatif aux trez : 1 mois -> 1 semaine, et les notes liées au BDE n'apparaissent plus

See merge request bde/nk20!210
2023-04-08 13:04:59 +02:00
63c1d74f1a Ignore notes containing '- BDE-' in the list of negative balances 2023-04-07 15:47:06 +02:00
c42fb380a6 frequence des mails de négatif aux trez : 1 mois -> 1 semiane 2023-04-06 09:04:27 +02:00
c636d52a73 traduction (allemand et espagnol probablement pas optimal) 2023-03-31 17:21:58 +02:00
6a9021ec14 Merge branch 'couleur_totalist_spies' into 'main'
Couleur totalist spies

See merge request bde/nk20!208
2023-03-31 12:37:24 +02:00
9c9149b53a Ajout d'un lien vers la FAQ de la note. 2023-03-31 12:34:14 +02:00
cb74311e7b Commit migration, j'étais triggered 2023-03-30 19:14:52 +02:00
9d7dd566c9 Ignore /tmp/ 2023-03-30 17:26:06 +02:00
9944ebcaad changement des couleurs de la note vers les couleurs totalist spies 2023-03-25 02:13:16 +01:00
8537f043f7 changement des couleurs de la note vers les couleurs totalist spies 2023-03-25 00:57:19 +01:00
c89a95f8d2 Merge branch 'invoice-logo-totalist' into 'main'
changement du fond des factures

See merge request bde/nk20!207
2023-01-30 13:06:39 +01:00
73640b1dfa changement du fond des factures 2023-01-30 00:06:45 +01:00
84b16ab603 Merge branch 'SogeCreditDate' into 'main'
link SogeCredit to WEI by creation date instead of civil year

See merge request bde/nk20!206
2023-01-17 15:58:52 +01:00
6a1b51dbbf Merge branch 'api_pagination' into 'main'
Add custom pagination size as an API parameter

See merge request bde/nk20!205
2023-01-11 22:46:13 +01:00
c441a43a8b link SogeCredit to WEI by creation date instead of civil year 2023-01-10 21:40:03 +01:00
87f3b51b04 Add custom pagination size as an API parameter 2022-12-14 18:37:13 +01:00
0a853fd3e6 Merge branch 'permission_trez' into 'main'
fix trez perm

See merge request bde/nk20!204
2022-12-10 14:41:57 +01:00
c429734810 fix bug 2022-11-12 14:51:22 +01:00
5d759111b6 Merge branch 'weiWords' into 'main'
change wei words

See merge request bde/nk20!203
2022-09-05 13:24:24 +02:00
70baf7566c change wei words 2022-09-05 13:20:00 +02:00
eb355f547c Merge branch 'SogeNotForMembership' into 'main'
Soge not for membership

See merge request bde/nk20!202
2022-09-04 22:56:07 +02:00
7068170f18 fixing grammar in comments 2022-09-04 13:24:39 +02:00
45ee9a8941 Soge only payd WEI (not bde/kfet membership) 2022-09-04 12:52:40 +02:00
454ea19603 hide Soge during registration 2022-09-04 12:31:08 +02:00
5a77a66391 Merge branch 'beta' into 'main'
Friendships

See merge request bde/nk20!200
2022-04-13 12:45:06 +02:00
24 changed files with 320 additions and 175 deletions

1
.gitignore vendored
View File

@ -42,6 +42,7 @@ map.json
backups/
/static/
/media/
/tmp/
# Virtualenv
env/

5
apps/api/pagination.py Normal file
View File

@ -0,0 +1,5 @@
from rest_framework.pagination import PageNumberPagination
class CustomPagination(PageNumberPagination):
page_size_query_param = 'page_size'

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.26 on 2022-09-04 21:25
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('member', '0008_auto_20211005_1544'),
]
operations = [
migrations.AlterField(
model_name='profile',
name='promotion',
field=models.PositiveSmallIntegerField(default=2022, help_text='Year of entry to the school (None if not ENS student)', null=True, verbose_name='promotion'),
),
]

View File

@ -1967,7 +1967,7 @@
"note",
"transaction"
],
"query": "[\"AND\", [\"OR\", {\"source\": [\"club\", \"note\"]}, {\"destination\": [\"club\", \"note\"]}], [\"OR\", {\"source__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": true}, {\"destination__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": false}]]",
"query": "[\"AND\", [\"OR\", {\"source\": [\"club\", \"note\"]}, {\"destination\": [\"club\", \"note\"]}], [\"OR\", {\"source__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": false}, {\"destination__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": true}]]",
"type": "change",
"mask": 2,
"field": "valid",
@ -2607,7 +2607,7 @@
"note",
"transaction"
],
"query": "[\"OR\", {\"source__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": true}, {\"destination__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": false}]",
"query": "[\"OR\", {\"source__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": false}, {\"destination__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": true}]",
"type": "change",
"mask": 2,
"field": "valid",
@ -2623,7 +2623,7 @@
"note",
"transaction"
],
"query": "[\"OR\", {\"source__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": true}, {\"destination__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": false}]",
"query": "[\"OR\", {\"source__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": false}, {\"destination__balance__gte\": {\"F\": [\"SUB\", [\"MUL\", [\"F\", \"amount\"], [\"F\", \"quantity\"]], 5000]}, \"valid\": true}]",
"type": "change",
"mask": 2,
"field": "invalidity_reason",

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.28 on 2023-01-29 22:48
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('treasury', '0004_auto_20211005_1544'),
]
operations = [
migrations.AlterField(
model_name='invoice',
name='bde',
field=models.CharField(choices=[('TotalistSpies', 'Tota[list]Spies'), ('Saperlistpopette', 'Saper[list]popette'), ('Finalist', 'Fina[list]'), ('Listorique', '[List]orique'), ('Satellist', 'Satel[list]'), ('Monopolist', 'Monopo[list]'), ('Kataclist', 'Katac[list]')], default='TotalistSpies', max_length=32, verbose_name='BDE'),
),
]

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.28 on 2023-04-14 14:51
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('treasury', '0005_auto_20230129_2348'),
]
operations = [
migrations.AlterField(
model_name='invoice',
name='bde',
field=models.CharField(choices=[('SecretStorlist', 'SecretStor[list]'), ('TotalistSpies', 'Tota[list]Spies'), ('Saperlistpopette', 'Saper[list]popette'), ('Finalist', 'Fina[list]'), ('Listorique', '[List]orique'), ('Satellist', 'Satel[list]'), ('Monopolist', 'Monopo[list]'), ('Kataclist', 'Katac[list]')], default='SecretStorlist', max_length=32, verbose_name='BDE'),
),
]

View File

@ -28,8 +28,10 @@ class Invoice(models.Model):
bde = models.CharField(
max_length=32,
default='Saperlistpopette',
default='SecretStorlist',
choices=(
('SecretStorlist', 'SecretStor[list]'),
('TotalistSpies', 'Tota[list]Spies'),
('Saperlistpopette', 'Saper[list]popette'),
('Finalist', 'Fina[list]'),
('Listorique', '[List]orique'),
@ -95,7 +97,7 @@ class Invoice(models.Model):
products = self.products.all()
self.place = "Gif-sur-Yvette"
self.my_name = "BDE ENS Cachan"
self.my_name = "BDE ENS Paris Saclay"
self.my_address_street = "4 avenue des Sciences"
self.my_city = "91190 Gif-sur-Yvette"
self.bank_code = 30003
@ -310,8 +312,8 @@ class SogeCredit(models.Model):
amount = sum(transaction.total for transaction in self.transactions.all())
if 'wei' in settings.INSTALLED_APPS:
from wei.models import WEIMembership
if not WEIMembership.objects.filter(club__weiclub__year=datetime.date.today().year, user=self.user)\
.exists():
if not WEIMembership.objects\
.filter(club__weiclub__year=self.credit_transaction.created_at.year, user=self.user).exists():
# 80 € for people that don't go to WEI
amount += 8000
return amount
@ -329,17 +331,18 @@ class SogeCredit(models.Model):
bde_qs = Membership.objects.filter(user=self.user, club=bde, date_start__gte=bde.membership_start)
kfet_qs = Membership.objects.filter(user=self.user, club=kfet, date_start__gte=kfet.membership_start)
if bde_qs.exists():
m = bde_qs.get()
if MembershipTransaction.objects.filter(membership=m).exists(): # non-free membership
if m.transaction not in self.transactions.all():
self.transactions.add(m.transaction)
if kfet_qs.exists():
m = kfet_qs.get()
if MembershipTransaction.objects.filter(membership=m).exists(): # non-free membership
if m.transaction not in self.transactions.all():
self.transactions.add(m.transaction)
## Soge do not pay BDE and kfet memberships this year (2022-2023)
# if bde_qs.exists():
# m = bde_qs.get()
# if MembershipTransaction.objects.filter(membership=m).exists(): # non-free membership
# if m.transaction not in self.transactions.all():
# self.transactions.add(m.transaction)
#
# if kfet_qs.exists():
# m = kfet_qs.get()
# if MembershipTransaction.objects.filter(membership=m).exists(): # non-free membership
# if m.transaction not in self.transactions.all():
# self.transactions.add(m.transaction)
if 'wei' in settings.INSTALLED_APPS:
from wei.models import WEIClub

Binary file not shown.

After

Width:  |  Height:  |  Size: 690 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

View File

@ -105,8 +105,8 @@
\renewcommand{\headrulewidth}{0pt}
\cfoot{
\small{\MonNom ~--~ \MonAdresseRue ~ \MonAdresseVille ~--~ Téléphone : +33(0)6 89 88 56 50\newline
Site web : bde.ens-cachan.fr ~--~ E-mail : tresorerie.bde@lists.crans.org \newline Numéro SIRET : 399 485 838 00011
\small{\MonNom ~--~ \MonAdresseRue ~ \MonAdresseVille ~--~ Téléphone : +33(0)7 78 17 22 34\newline
Site web : bde.ens-cachan.fr ~--~ E-mail : tresorerie.bde@lists.crans.org \newline Numéro SIRET : 399 485 838 00029
}
}

View File

@ -14,14 +14,17 @@ from .base import WEISurvey, WEISurveyInformation, WEISurveyAlgorithm, WEIBusInf
from ...models import WEIMembership
WORDS = [
'13 organisé', '3ième mi temps', 'Années 2000', 'Apéro', 'BBQ', 'BP', 'Beauf', 'Binge drinking', 'Bon enfant',
'Cartouche', 'Catacombes', 'Chansons paillardes', 'Chansons populaires', 'Chanteur', 'Chartreuse', 'Chill',
'Core', 'DJ', 'Dancefloor', 'Danse', 'David Guetta', 'Disco', 'Eau de vie', 'Électro', 'Escalade', 'Familial',
'Fanfare', 'Fracassage', 'Féria', 'Hard rock', 'Hoeggarden', 'House', 'Huit-six', 'IPA', 'Inclusif', 'Inferno',
'Introverti', 'Jager bomb', 'Jazz', 'Jeux d\'alcool', 'Jeux de rôles', 'Jeux vidéo', 'Jul', 'Jus de fruit',
'Karaoké', 'LGBTQI+', 'Lady Gaga', 'Loup garou', 'Morning beer', 'Métal', 'Nuit blanche', 'Ovalie', 'Psychedelic',
'Pétanque', 'Rave', 'Reggae', 'Rhum', 'Ricard', 'Rock', 'Rosé', 'Rétro', 'Séducteur', 'Techno', 'Thérapie taxi',
'Théâtre', 'Trap', 'Turn up', 'Underground', 'Volley', 'Wati B', 'Zinédine Zidane',
'ABBA', 'After', 'Alcoolique anonyme', 'Ambiance festive', 'Années 2000', 'Apéro', 'Art',
'Baby foot billard biere pong', 'BBQ', 'Before', 'Bière pong', 'Bon enfant', 'Calme', 'Canapé',
'Chanson paillarde', 'Chanson populaire', 'Chartreuse', 'Cheerleader', 'Chill', 'Choré',
'Cinéma', 'Cocktail', 'Comédie musicle', 'Commercial', 'Copaing', 'Danse', 'Dancefloor',
'Electro', 'Fanfare', 'Gin tonic', 'Inclusif', 'Jazz', "Jeux d'alcool", 'Jeux de carte',
'Jeux de rôle', 'Jeux de société', 'JUL', 'Jus de fruit', 'Kfet', 'Kleptomanie assurée',
'LGBTQ+', 'Livre', 'Morning beer', 'Musique', 'NAPS', 'Paillettes', 'Pastis', 'Paté Hénaff',
'Peluche', 'Pena baiona', "Peu d'alcool", 'Pilier de bar', 'PMU', 'Poulpe', 'Punch', 'Rap',
'Réveil', 'Rock', 'Rugby', 'Sandwich', 'Serge', 'Shot', 'Sociable', 'Spectacle', 'Techno',
'Techno house', 'Thérapie Taxi', 'Tradition kchanaises', 'Troisième mi-temps', 'Turn up',
'Vodka', 'Vodka pomme', 'Volley', 'Vomi stratégique'
]

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.26 on 2022-09-04 21:25
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('wei', '0003_bus_size'),
]
operations = [
migrations.AlterField(
model_name='weiclub',
name='year',
field=models.PositiveIntegerField(default=2022, unique=True, verbose_name='year'),
),
]

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.28 on 2023-01-28 17:50
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('wei', '0004_auto_20220904_2325'),
]
operations = [
migrations.AlterField(
model_name='weiclub',
name='year',
field=models.PositiveIntegerField(default=2023, unique=True, verbose_name='year'),
),
]

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-10 22:34+0200\n"
"POT-Creation-Date: 2023-03-31 17:08+0200\n"
"PO-Revision-Date: 2020-11-16 20:02+0000\n"
"Last-Translator: Yohann D'ANELLO <ynerant@crans.org>\n"
"Last-Translator: bleizi <bleizi@crans.org>\n"
"Language-Team: German <http://translate.ynerant.fr/projects/nk20/nk20/de/>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
@ -115,7 +115,7 @@ msgid "type"
msgstr "Type"
#: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:307
#: apps/note/models/notes.py:148 apps/treasury/models.py:285
#: apps/note/models/notes.py:148 apps/treasury/models.py:286
#: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13
#: apps/wei/templates/wei/survey.html:15
msgid "user"
@ -258,7 +258,7 @@ msgstr "Eingetreten um "
msgid "remove"
msgstr "entfernen"
#: apps/activity/tables.py:82 apps/note/forms.py:68 apps/treasury/models.py:199
#: apps/activity/tables.py:82 apps/note/forms.py:68 apps/treasury/models.py:200
msgid "Type"
msgstr "Type"
@ -1570,7 +1570,7 @@ msgstr "Sondertranskationen"
msgid "membership transaction"
msgstr "Mitgliedschafttransaktion"
#: apps/note/models/transactions.py:385 apps/treasury/models.py:292
#: apps/note/models/transactions.py:385 apps/treasury/models.py:293
msgid "membership transactions"
msgstr "Mitgliedschaftttransaktionen"
@ -1689,7 +1689,7 @@ msgid "Amount"
msgstr "Anzahl"
#: apps/note/templates/note/transaction_form.html:132
#: apps/treasury/models.py:54
#: apps/treasury/models.py:55
msgid "Name"
msgstr "Name"
@ -2183,7 +2183,7 @@ msgstr "Ungültige Vorregistrierung"
msgid "Treasury"
msgstr "Quaestor"
#: apps/treasury/forms.py:26 apps/treasury/models.py:93
#: apps/treasury/forms.py:26 apps/treasury/models.py:94
#: apps/treasury/templates/treasury/invoice_form.html:22
msgid "This invoice is locked and can no longer be edited."
msgstr "Diese Rechnung ist gesperrt und kann nicht mehr bearbeitet werden."
@ -2196,7 +2196,7 @@ msgstr "Überweisung ist bereits geschlossen."
msgid "You can't change the type of the remittance."
msgstr "Sie können die Art der Überweisung nicht ändern."
#: apps/treasury/forms.py:125 apps/treasury/models.py:267
#: apps/treasury/forms.py:125 apps/treasury/models.py:268
#: apps/treasury/tables.py:97 apps/treasury/tables.py:105
#: apps/treasury/templates/treasury/invoice_list.html:16
#: apps/treasury/templates/treasury/remittance_list.html:16
@ -2212,116 +2212,116 @@ msgstr "Keine beigefügte Überweisung"
msgid "Invoice identifier"
msgstr "Rechnungskennung"
#: apps/treasury/models.py:40
#: apps/treasury/models.py:41
msgid "BDE"
msgstr "BDE"
#: apps/treasury/models.py:45
#: apps/treasury/models.py:46
msgid "Object"
msgstr "Objekt"
#: apps/treasury/models.py:49
#: apps/treasury/models.py:50
msgid "Description"
msgstr "Beschreibung"
#: apps/treasury/models.py:58
#: apps/treasury/models.py:59
msgid "Address"
msgstr "Adresse"
#: apps/treasury/models.py:63 apps/treasury/models.py:193
#: apps/treasury/models.py:64 apps/treasury/models.py:194
msgid "Date"
msgstr "Datum"
#: apps/treasury/models.py:67
#: apps/treasury/models.py:68
msgid "Acquitted"
msgstr "Bezahlt"
#: apps/treasury/models.py:72
#: apps/treasury/models.py:73
msgid "Locked"
msgstr "Gesperrt"
#: apps/treasury/models.py:73
#: apps/treasury/models.py:74
msgid "An invoice can't be edited when it is locked."
msgstr "Eine Rechnung kann nicht bearbeitet werden, wenn sie gesperrt ist."
#: apps/treasury/models.py:79
#: apps/treasury/models.py:80
msgid "tex source"
msgstr "Tex Quelle"
#: apps/treasury/models.py:113 apps/treasury/models.py:129
#: apps/treasury/models.py:114 apps/treasury/models.py:130
msgid "invoice"
msgstr "Rechnung"
#: apps/treasury/models.py:114
#: apps/treasury/models.py:115
msgid "invoices"
msgstr "Rechnungen"
#: apps/treasury/models.py:117
#: apps/treasury/models.py:118
#, python-brace-format
msgid "Invoice #{id}"
msgstr "Rechnung #{id}"
#: apps/treasury/models.py:134
#: apps/treasury/models.py:135
msgid "Designation"
msgstr "Bezeichnung"
#: apps/treasury/models.py:140
#: apps/treasury/models.py:141
msgid "Quantity"
msgstr "Qualität"
#: apps/treasury/models.py:145
#: apps/treasury/models.py:146
msgid "Unit price"
msgstr "Einzelpreis"
#: apps/treasury/models.py:161
#: apps/treasury/models.py:162
msgid "product"
msgstr "Produkt"
#: apps/treasury/models.py:162
#: apps/treasury/models.py:163
msgid "products"
msgstr "Produkten"
#: apps/treasury/models.py:182
#: apps/treasury/models.py:183
msgid "remittance type"
msgstr "Überweisungstyp"
#: apps/treasury/models.py:183
#: apps/treasury/models.py:184
msgid "remittance types"
msgstr "Überweisungstypen"
#: apps/treasury/models.py:204
#: apps/treasury/models.py:205
msgid "Comment"
msgstr "Kommentar"
#: apps/treasury/models.py:209
#: apps/treasury/models.py:210
msgid "Closed"
msgstr "Geschlossen"
#: apps/treasury/models.py:213
#: apps/treasury/models.py:214
msgid "remittance"
msgstr "Überweisung"
#: apps/treasury/models.py:214
#: apps/treasury/models.py:215
msgid "remittances"
msgstr "Überweisungen"
#: apps/treasury/models.py:247
#: apps/treasury/models.py:248
msgid "Remittance #{:d}: {}"
msgstr "Überweisung #{:d}:{}"
#: apps/treasury/models.py:271
#: apps/treasury/models.py:272
msgid "special transaction proxy"
msgstr "spezielle Transaktion Proxy"
#: apps/treasury/models.py:272
#: apps/treasury/models.py:273
msgid "special transaction proxies"
msgstr "spezielle Transaktion Proxies"
#: apps/treasury/models.py:298
#: apps/treasury/models.py:299
msgid "credit transaction"
msgstr "Kredit Transaktion"
#: apps/treasury/models.py:430
#: apps/treasury/models.py:432
msgid ""
"This user doesn't have enough money to pay the memberships with its note. "
"Please ask her/him to credit the note before invalidating this credit."
@ -2329,16 +2329,16 @@ msgstr ""
"Dieser Benutzer hat nicht genug Geld, um die Mitgliedschaften mit seiner "
"Note zu bezahlen."
#: apps/treasury/models.py:451
#: apps/treasury/models.py:453
#: apps/treasury/templates/treasury/sogecredit_detail.html:10
msgid "Credit from the Société générale"
msgstr "Kredit von der Société générale"
#: apps/treasury/models.py:452
#: apps/treasury/models.py:454
msgid "Credits from the Société générale"
msgstr "Krediten von der Société générale"
#: apps/treasury/models.py:455
#: apps/treasury/models.py:457
#, python-brace-format
msgid "Soge credit for {user}"
msgstr "Kredit von der Société générale für {user}"
@ -2640,7 +2640,7 @@ msgstr "Wählen Sie die Rollen aus, an denen Sie interessiert sind."
msgid "This team doesn't belong to the given bus."
msgstr "Dieses Team gehört nicht zum angegebenen Bus."
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:35
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38
msgid "Choose a word:"
msgstr "Wählen Sie ein Wort:"
@ -3361,6 +3361,10 @@ msgstr "Kontakt"
msgid "Technical Support"
msgstr ""
#: note_kfet/templates/base.html:198
msgid "FAQ (FR)"
msgstr "FAQ (FR)"
#: note_kfet/templates/base_search.html:15
msgid "Search by attribute such as name…"
msgstr "Suche nach Attributen wie Name…"
@ -3611,7 +3615,6 @@ msgstr ""
#~ msgid "This user didn't give her/his caution check."
#~ msgstr "Dieser User hat seine / ihre Vorsicht nicht überprüft."
#, python-format
#~ msgid ""
#~ "A new version of the application is available. This instance runs "
#~ "%(VERSION)s and the last version is %(LAST_VERSION)s. Please consider "

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-10 22:34+0200\n"
"POT-Creation-Date: 2023-03-31 17:08+0200\n"
"PO-Revision-Date: 2022-04-11 23:12+0200\n"
"Last-Translator: elkmaennchen <elkmaennchen@crans.org>\n"
"Last-Translator: bleizi <bleizi@crans.org>\n"
"Language-Team: \n"
"Language: es\n"
"MIME-Version: 1.0\n"
@ -114,7 +114,7 @@ msgid "type"
msgstr "tipo"
#: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:307
#: apps/note/models/notes.py:148 apps/treasury/models.py:285
#: apps/note/models/notes.py:148 apps/treasury/models.py:286
#: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13
#: apps/wei/templates/wei/survey.html:15
msgid "user"
@ -257,7 +257,7 @@ msgstr "Entrado el "
msgid "remove"
msgstr "quitar"
#: apps/activity/tables.py:82 apps/note/forms.py:68 apps/treasury/models.py:199
#: apps/activity/tables.py:82 apps/note/forms.py:68 apps/treasury/models.py:200
msgid "Type"
msgstr "Tipo"
@ -1557,7 +1557,7 @@ msgstr "Transacciones especiales"
msgid "membership transaction"
msgstr "transacción de afiliación"
#: apps/note/models/transactions.py:385 apps/treasury/models.py:292
#: apps/note/models/transactions.py:385 apps/treasury/models.py:293
msgid "membership transactions"
msgstr "transacciones de afiliación"
@ -1676,7 +1676,7 @@ msgid "Amount"
msgstr "Monto"
#: apps/note/templates/note/transaction_form.html:132
#: apps/treasury/models.py:54
#: apps/treasury/models.py:55
msgid "Name"
msgstr "Nombre"
@ -2163,7 +2163,7 @@ msgstr "Invalidar la afiliación"
msgid "Treasury"
msgstr "Tesorería"
#: apps/treasury/forms.py:26 apps/treasury/models.py:93
#: apps/treasury/forms.py:26 apps/treasury/models.py:94
#: apps/treasury/templates/treasury/invoice_form.html:22
msgid "This invoice is locked and can no longer be edited."
msgstr "Esta factura esta bloqueada y no puede ser modificada."
@ -2176,7 +2176,7 @@ msgstr "El descuento ya esta cerrado."
msgid "You can't change the type of the remittance."
msgstr "No puede cambiar el tipo de descuento."
#: apps/treasury/forms.py:125 apps/treasury/models.py:267
#: apps/treasury/forms.py:125 apps/treasury/models.py:268
#: apps/treasury/tables.py:97 apps/treasury/tables.py:105
#: apps/treasury/templates/treasury/invoice_list.html:16
#: apps/treasury/templates/treasury/remittance_list.html:16
@ -2192,116 +2192,116 @@ msgstr "No hay descuento relacionado"
msgid "Invoice identifier"
msgstr "Numero de factura"
#: apps/treasury/models.py:40
#: apps/treasury/models.py:41
msgid "BDE"
msgstr "BDE"
#: apps/treasury/models.py:45
#: apps/treasury/models.py:46
msgid "Object"
msgstr "Asunto"
#: apps/treasury/models.py:49
#: apps/treasury/models.py:50
msgid "Description"
msgstr "Descripción"
#: apps/treasury/models.py:58
#: apps/treasury/models.py:59
msgid "Address"
msgstr "Dirección"
#: apps/treasury/models.py:63 apps/treasury/models.py:193
#: apps/treasury/models.py:64 apps/treasury/models.py:194
msgid "Date"
msgstr "Fecha"
#: apps/treasury/models.py:67
#: apps/treasury/models.py:68
msgid "Acquitted"
msgstr "Pagada"
#: apps/treasury/models.py:72
#: apps/treasury/models.py:73
msgid "Locked"
msgstr "Bloqueada"
#: apps/treasury/models.py:73
#: apps/treasury/models.py:74
msgid "An invoice can't be edited when it is locked."
msgstr "Une factura no puede ser modificada cuando esta bloqueada."
#: apps/treasury/models.py:79
#: apps/treasury/models.py:80
msgid "tex source"
msgstr "código fuente TeX"
#: apps/treasury/models.py:113 apps/treasury/models.py:129
#: apps/treasury/models.py:114 apps/treasury/models.py:130
msgid "invoice"
msgstr "factura"
#: apps/treasury/models.py:114
#: apps/treasury/models.py:115
msgid "invoices"
msgstr "facturas"
#: apps/treasury/models.py:117
#: apps/treasury/models.py:118
#, python-brace-format
msgid "Invoice #{id}"
msgstr "Factura n°{id}"
#: apps/treasury/models.py:134
#: apps/treasury/models.py:135
msgid "Designation"
msgstr "Designación"
#: apps/treasury/models.py:140
#: apps/treasury/models.py:141
msgid "Quantity"
msgstr "Cantidad"
#: apps/treasury/models.py:145
#: apps/treasury/models.py:146
msgid "Unit price"
msgstr "Precio unitario"
#: apps/treasury/models.py:161
#: apps/treasury/models.py:162
msgid "product"
msgstr "producto"
#: apps/treasury/models.py:162
#: apps/treasury/models.py:163
msgid "products"
msgstr "productos"
#: apps/treasury/models.py:182
#: apps/treasury/models.py:183
msgid "remittance type"
msgstr "tipo de descuento"
#: apps/treasury/models.py:183
#: apps/treasury/models.py:184
msgid "remittance types"
msgstr "tipos de descuentos"
#: apps/treasury/models.py:204
#: apps/treasury/models.py:205
msgid "Comment"
msgstr "Comentario"
#: apps/treasury/models.py:209
#: apps/treasury/models.py:210
msgid "Closed"
msgstr "Cerrada"
#: apps/treasury/models.py:213
#: apps/treasury/models.py:214
msgid "remittance"
msgstr "descuento"
#: apps/treasury/models.py:214
#: apps/treasury/models.py:215
msgid "remittances"
msgstr "descuentos"
#: apps/treasury/models.py:247
#: apps/treasury/models.py:248
msgid "Remittance #{:d}: {}"
msgstr "Descuento n°{:d} : {}"
#: apps/treasury/models.py:271
#: apps/treasury/models.py:272
msgid "special transaction proxy"
msgstr "proxy de transacción especial"
#: apps/treasury/models.py:272
#: apps/treasury/models.py:273
msgid "special transaction proxies"
msgstr "proxys de transacciones especiales"
#: apps/treasury/models.py:298
#: apps/treasury/models.py:299
msgid "credit transaction"
msgstr "transacción de crédito"
#: apps/treasury/models.py:430
#: apps/treasury/models.py:432
msgid ""
"This user doesn't have enough money to pay the memberships with its note. "
"Please ask her/him to credit the note before invalidating this credit."
@ -2310,16 +2310,16 @@ msgstr ""
"afiliaciones. Por favor pídelo acreditar su note antes de invalidar este "
"crédito."
#: apps/treasury/models.py:451
#: apps/treasury/models.py:453
#: apps/treasury/templates/treasury/sogecredit_detail.html:10
msgid "Credit from the Société générale"
msgstr "Crédito de la Société Générale"
#: apps/treasury/models.py:452
#: apps/treasury/models.py:454
msgid "Credits from the Société générale"
msgstr "Créditos de la Société Générale"
#: apps/treasury/models.py:455
#: apps/treasury/models.py:457
#, python-brace-format
msgid "Soge credit for {user}"
msgstr "Crédito de la Société Générale para {user}"
@ -2612,7 +2612,7 @@ msgstr "Elegir los papeles que le interesa."
msgid "This team doesn't belong to the given bus."
msgstr "Este equipo no pertenece al bus dado."
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:35
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38
msgid "Choose a word:"
msgstr "Elegir una palabra :"
@ -3316,6 +3316,10 @@ msgstr "Contactarnos"
msgid "Technical Support"
msgstr "Soporte técnico"
#: note_kfet/templates/base.html:198
msgid "FAQ (FR)"
msgstr "FAQ (FR)"
#: note_kfet/templates/base_search.html:15
msgid "Search by attribute such as name…"
msgstr "Buscar con atributo, como el nombre…"

View File

@ -7,9 +7,9 @@ msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-10 22:34+0200\n"
"POT-Creation-Date: 2023-03-31 17:08+0200\n"
"PO-Revision-Date: 2022-04-11 22:05+0200\n"
"Last-Translator: elkmaennchen <elkmaennchen@crans.org>\n"
"Last-Translator: bleizi <bleizi@crans.org>\n"
"Language-Team: French <http://translate.ynerant.fr/projects/nk20/nk20/fr/>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
@ -115,7 +115,7 @@ msgid "type"
msgstr "type"
#: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:307
#: apps/note/models/notes.py:148 apps/treasury/models.py:285
#: apps/note/models/notes.py:148 apps/treasury/models.py:286
#: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13
#: apps/wei/templates/wei/survey.html:15
msgid "user"
@ -258,7 +258,7 @@ msgstr "Entré le "
msgid "remove"
msgstr "supprimer"
#: apps/activity/tables.py:82 apps/note/forms.py:68 apps/treasury/models.py:199
#: apps/activity/tables.py:82 apps/note/forms.py:68 apps/treasury/models.py:200
msgid "Type"
msgstr "Type"
@ -1563,7 +1563,7 @@ msgstr "Transactions de crédit/retrait"
msgid "membership transaction"
msgstr "transaction d'adhésion"
#: apps/note/models/transactions.py:385 apps/treasury/models.py:292
#: apps/note/models/transactions.py:385 apps/treasury/models.py:293
msgid "membership transactions"
msgstr "transactions d'adhésion"
@ -1682,7 +1682,7 @@ msgid "Amount"
msgstr "Montant"
#: apps/note/templates/note/transaction_form.html:132
#: apps/treasury/models.py:54
#: apps/treasury/models.py:55
msgid "Name"
msgstr "Nom"
@ -2171,7 +2171,7 @@ msgstr "Invalider l'inscription"
msgid "Treasury"
msgstr "Trésorerie"
#: apps/treasury/forms.py:26 apps/treasury/models.py:93
#: apps/treasury/forms.py:26 apps/treasury/models.py:94
#: apps/treasury/templates/treasury/invoice_form.html:22
msgid "This invoice is locked and can no longer be edited."
msgstr "Cette facture est verrouillée et ne peut plus être éditée."
@ -2184,7 +2184,7 @@ msgstr "La remise est déjà fermée."
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:125 apps/treasury/models.py:267
#: apps/treasury/forms.py:125 apps/treasury/models.py:268
#: apps/treasury/tables.py:97 apps/treasury/tables.py:105
#: apps/treasury/templates/treasury/invoice_list.html:16
#: apps/treasury/templates/treasury/remittance_list.html:16
@ -2200,116 +2200,116 @@ msgstr "Pas de remise associée"
msgid "Invoice identifier"
msgstr "Numéro de facture"
#: apps/treasury/models.py:40
#: apps/treasury/models.py:41
msgid "BDE"
msgstr "BDE"
#: apps/treasury/models.py:45
#: apps/treasury/models.py:46
msgid "Object"
msgstr "Objet"
#: apps/treasury/models.py:49
#: apps/treasury/models.py:50
msgid "Description"
msgstr "Description"
#: apps/treasury/models.py:58
#: apps/treasury/models.py:59
msgid "Address"
msgstr "Adresse"
#: apps/treasury/models.py:63 apps/treasury/models.py:193
#: apps/treasury/models.py:64 apps/treasury/models.py:194
msgid "Date"
msgstr "Date"
#: apps/treasury/models.py:67
#: apps/treasury/models.py:68
msgid "Acquitted"
msgstr "Acquittée"
#: apps/treasury/models.py:72
#: apps/treasury/models.py:73
msgid "Locked"
msgstr "Verrouillée"
#: apps/treasury/models.py:73
#: apps/treasury/models.py:74
msgid "An invoice can't be edited when it is locked."
msgstr "Une facture ne peut plus être modifiée si elle est verrouillée."
#: apps/treasury/models.py:79
#: apps/treasury/models.py:80
msgid "tex source"
msgstr "fichier TeX source"
#: apps/treasury/models.py:113 apps/treasury/models.py:129
#: apps/treasury/models.py:114 apps/treasury/models.py:130
msgid "invoice"
msgstr "facture"
#: apps/treasury/models.py:114
#: apps/treasury/models.py:115
msgid "invoices"
msgstr "factures"
#: apps/treasury/models.py:117
#: apps/treasury/models.py:118
#, python-brace-format
msgid "Invoice #{id}"
msgstr "Facture n°{id}"
#: apps/treasury/models.py:134
#: apps/treasury/models.py:135
msgid "Designation"
msgstr "Désignation"
#: apps/treasury/models.py:140
#: apps/treasury/models.py:141
msgid "Quantity"
msgstr "Quantité"
#: apps/treasury/models.py:145
#: apps/treasury/models.py:146
msgid "Unit price"
msgstr "Prix unitaire"
#: apps/treasury/models.py:161
#: apps/treasury/models.py:162
msgid "product"
msgstr "produit"
#: apps/treasury/models.py:162
#: apps/treasury/models.py:163
msgid "products"
msgstr "produits"
#: apps/treasury/models.py:182
#: apps/treasury/models.py:183
msgid "remittance type"
msgstr "type de remise"
#: apps/treasury/models.py:183
#: apps/treasury/models.py:184
msgid "remittance types"
msgstr "types de remises"
#: apps/treasury/models.py:204
#: apps/treasury/models.py:205
msgid "Comment"
msgstr "Commentaire"
#: apps/treasury/models.py:209
#: apps/treasury/models.py:210
msgid "Closed"
msgstr "Fermée"
#: apps/treasury/models.py:213
#: apps/treasury/models.py:214
msgid "remittance"
msgstr "remise"
#: apps/treasury/models.py:214
#: apps/treasury/models.py:215
msgid "remittances"
msgstr "remises"
#: apps/treasury/models.py:247
#: apps/treasury/models.py:248
msgid "Remittance #{:d}: {}"
msgstr "Remise n°{:d} : {}"
#: apps/treasury/models.py:271
#: apps/treasury/models.py:272
msgid "special transaction proxy"
msgstr "proxy de transaction spéciale"
#: apps/treasury/models.py:272
#: apps/treasury/models.py:273
msgid "special transaction proxies"
msgstr "proxys de transactions spéciales"
#: apps/treasury/models.py:298
#: apps/treasury/models.py:299
msgid "credit transaction"
msgstr "transaction de crédit"
#: apps/treasury/models.py:430
#: apps/treasury/models.py:432
msgid ""
"This user doesn't have enough money to pay the memberships with its note. "
"Please ask her/him to credit the note before invalidating this credit."
@ -2317,16 +2317,16 @@ msgstr ""
"Cet utilisateur n'a pas assez d'argent pour payer les adhésions avec sa "
"note. Merci de lui demander de recharger sa note avant d'invalider ce crédit."
#: apps/treasury/models.py:451
#: apps/treasury/models.py:453
#: apps/treasury/templates/treasury/sogecredit_detail.html:10
msgid "Credit from the Société générale"
msgstr "Crédit de la Société générale"
#: apps/treasury/models.py:452
#: apps/treasury/models.py:454
msgid "Credits from the Société générale"
msgstr "Crédits de la Société générale"
#: apps/treasury/models.py:455
#: apps/treasury/models.py:457
#, python-brace-format
msgid "Soge credit for {user}"
msgstr "Crédit de la société générale pour l'utilisateur {user}"
@ -2624,7 +2624,7 @@ msgstr "Sélectionnez les rôles qui vous intéressent."
msgid "This team doesn't belong to the given bus."
msgstr "Cette équipe n'appartient pas à ce bus."
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:35
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38
msgid "Choose a word:"
msgstr "Choisissez un mot :"
@ -3335,6 +3335,10 @@ msgstr "Nous contacter"
msgid "Technical Support"
msgstr "Support technique"
#: note_kfet/templates/base.html:198
msgid "FAQ (FR)"
msgstr "FAQ (FR)"
#: note_kfet/templates/base_search.html:15
msgid "Search by attribute such as name…"
msgstr "Chercher par un attribut tel que le nom …"

View File

@ -18,7 +18,7 @@ MAILTO=notekfet2020@lists.crans.org
# Spammer les gens en négatif
00 5 * * 2 root cd /var/www/note_kfet && env/bin/python manage.py send_mail_to_negative_balances --spam --negative-amount 1 -v 0
# Envoyer le rapport mensuel aux trésoriers et respos info
00 8 6 * * root cd /var/www/note_kfet && env/bin/python manage.py send_mail_to_negative_balances --report --add-years 1 -v 0
00 8 * * 5 root cd /var/www/note_kfet && env/bin/python manage.py send_mail_to_negative_balances --report --add-years 1 -v 0
# Envoyer les rapports aux gens
55 6 * * * root cd /var/www/note_kfet && env/bin/python manage.py send_reports -v 0
# Mettre à jour les boutons mis en avant

View File

@ -252,7 +252,7 @@ REST_FRAMEWORK = {
'rest_framework.authentication.TokenAuthentication',
'oauth2_provider.contrib.rest_framework.OAuth2Authentication',
],
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
'DEFAULT_PAGINATION_CLASS': 'apps.api.pagination.CustomPagination',
'PAGE_SIZE': 20,
}

72
note_kfet/static/css/custom.css Normal file → Executable file
View File

@ -65,7 +65,10 @@ mark {
/* Last BDE colors */
.bg-primary {
background-color: rgb(102, 83, 105) !important;
/* background-color: rgb(18, 67, 4) !important; */
/* MODE VIEUXCON=ON */
/* background-color: rgb(166, 0, 2) !important; */
background-color: rgb(0, 0, 0) !important;
}
html {
@ -80,15 +83,15 @@ body {
.btn-outline-primary:hover,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active {
color: #fff;
background-color: rgb(102, 83, 105);
border-color: rgb(102, 83, 105);
color: rgb(241, 229, 52);
background-color: rgb(228, 35, 132);
border-color: rgb(228, 35, 132);
}
.btn-outline-primary {
color: rgb(102, 83, 105);
background-color: rgba(248, 249, 250, 0.9);
border-color: rgb(102, 83, 105);
color: #fff;
background-color: #000;
border-color: #464647;
}
.turbolinks-progress-bar {
@ -98,36 +101,63 @@ body {
.btn-primary:hover,
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active {
color: #fff;
background-color: rgb(102, 83, 105);
border-color: rgb(102, 83, 105);
color: rgb(241, 229, 52);
background-color: rgb(228, 35, 132);
border-color: rgb(228, 35, 132);
}
.btn-primary {
color: rgba(248, 249, 250, 0.9);
background-color: rgb(102, 83, 105);
border-color: rgb(102, 83, 105);
color: #fff;
background-color: #000;
border-color: #adb5bd;
}
.border-primary {
border-color: rgb(115, 15, 115) !important;
border-color: rgb(228, 35, 132) !important;
}
.btn-secondary {
color: #fff;
background-color: #000;
border-color: #adb5bd;
}
.btn-secondary:hover,
.btn-secondary:not(:disabled):not(.disabled).active,
.btn-secondary:not(:disabled):not(.disabled):active {
color: rgb(241, 229, 52);
background-color: rgb(228, 35, 132);
border-color: rgb(228, 35, 132);
}
.btn-outline-dark {
color: #343a40;
border-color: #343a40;
}
.btn-outline-dark:hover,
.btn-outline-dark:not(:disabled):not(.disabled).active,
.btn-outline-dark:not(:disabled):not(.disabled):active {
color: rgb(241, 229, 52);
background-color: rgb(228, 35, 132);
border-color: rgb(228, 35, 132);
}
a {
color: rgb(102, 83, 105);
color: rgb(228, 35, 132);
}
a:hover {
color: rgb(200, 30, 200);
color: rgb(228, 35, 132);
}
.form-control:focus {
box-shadow: 0 0 0 0.25rem rgba(200, 30, 200, 0.25);
border-color: rgb(200, 30, 200);
box-shadow: 0 0 0 0.25rem rgb(228 35 132 / 50%);
border-color: rgb(228, 35, 132);
}
.btn-outline-primary.focus {
box-shadow: 0 0 0 0.25rem rgba(200, 30, 200, 0.5);
box-shadow: 0 0 0 0.25rem rgb(228 35 132 / 10%);
}

View File

@ -194,6 +194,8 @@ SPDX-License-Identifier: GPL-3.0-or-later
class="text-muted">{% trans "Contact us" %}</a> &mdash;
<a href="mailto:{{ "SUPPORT_EMAIL" | getenv }}"
class="text-muted">{% trans "Technical Support" %}</a> &mdash;
<a href="https://note.crans.org/doc/faq/"
class="text-muted">{% trans "FAQ (FR)" %}</a> &mdash;
</span>
{% csrf_token %}
<select title="language" name="language"

View File

@ -23,7 +23,7 @@ SPDX-License-Identifier: GPL-3.0-or-later
{% csrf_token %}
{{ form|crispy }}
{{ profile_form|crispy }}
{{ soge_form|crispy }}
{% comment "Soge not for membership (only WEI)" %} {{ soge_form|crispy }} {% endcomment %}
<button class="btn btn-success" type="submit">
{% trans "Sign up" %}
</button>