Merge branch 'VSS' into 'main'

anti VSS

See merge request bde/nk20!219
This commit is contained in:
bleizi 2023-08-31 15:58:52 +02:00
commit 18a5b65a1c
9 changed files with 302 additions and 166 deletions

View File

@ -47,6 +47,13 @@ class ProfileForm(forms.ModelForm):
last_report = forms.DateTimeField(required=False, disabled=True, label=_("Last report date")) last_report = forms.DateTimeField(required=False, disabled=True, label=_("Last report date"))
VSS_charter_read = forms.BooleanField(
required=True,
label=_("Anti-VSS (<em>Violences Sexistes et Sexuelles</em>) charter read and approved"),
help_text=_("Tick after having read and accepted the anti-VSS charter \
<a href=https://perso.crans.org/club-bde/Charte-anti-VSS.pdf target=_blank> available here in pdf</a>")
)
def clean_promotion(self): def clean_promotion(self):
promotion = self.cleaned_data["promotion"] promotion = self.cleaned_data["promotion"]
if promotion > timezone.now().year: if promotion > timezone.now().year:

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.28 on 2023-08-31 09:50
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('member', '0010_new_default_year'),
]
operations = [
migrations.AddField(
model_name='profile',
name='VSS_charter_read',
field=models.BooleanField(default=False, verbose_name='VSS charter read'),
),
]

View File

@ -134,6 +134,11 @@ class Profile(models.Model):
default=False, default=False,
) )
VSS_charter_read = models.BooleanField(
verbose_name=_("VSS charter read"),
default=False
)
@property @property
def ens_year(self): def ens_year(self):
""" """

View File

@ -335,6 +335,7 @@ class TestMemberships(TestCase):
ml_sports_registration=True, ml_sports_registration=True,
ml_art_registration=True, ml_art_registration=True,
report_frequency=7, report_frequency=7,
VSS_charter_read=True
)) ))
self.assertRedirects(response, self.user.profile.get_absolute_url(), 302, 200) self.assertRedirects(response, self.user.profile.get_absolute_url(), 302, 200)
self.assertTrue(User.objects.filter(username="toto changed").exists()) self.assertTrue(User.objects.filter(username="toto changed").exists())

View File

@ -3259,6 +3259,8 @@
136, 136,
137, 137,
150, 150,
163,
164,
166, 166,
167, 167,
168, 168,
@ -3578,6 +3580,20 @@
] ]
} }
}, },
{
"model": "permission.role",
"pk": 21,
"fields": {
"for_club": 1,
"name": "GC anti-VSS",
"permissions": [
150,
163,
164,
182
]
}
},
{ {
"model": "wei.weirole", "model": "wei.weirole",
"pk": 12, "pk": 12,

View File

@ -48,6 +48,7 @@ class TestSignup(TestCase):
ml_events_registration="en", ml_events_registration="en",
ml_sport_registration=True, ml_sport_registration=True,
ml_art_registration=True, ml_art_registration=True,
VSS_charter_read=True
)) ))
self.assertRedirects(response, reverse("registration:email_validation_sent"), 302, 200) self.assertRedirects(response, reverse("registration:email_validation_sent"), 302, 200)
self.assertTrue(User.objects.filter(username="toto").exists()) self.assertTrue(User.objects.filter(username="toto").exists())
@ -105,6 +106,7 @@ class TestSignup(TestCase):
ml_events_registration="en", ml_events_registration="en",
ml_sport_registration=True, ml_sport_registration=True,
ml_art_registration=True, ml_art_registration=True,
VSS_charter_read=True
)) ))
self.assertTrue(response.status_code, 200) self.assertTrue(response.status_code, 200)
@ -124,6 +126,7 @@ class TestSignup(TestCase):
ml_events_registration="en", ml_events_registration="en",
ml_sport_registration=True, ml_sport_registration=True,
ml_art_registration=True, ml_art_registration=True,
VSS_charter_read=True
)) ))
self.assertTrue(response.status_code, 200) self.assertTrue(response.status_code, 200)
@ -143,6 +146,27 @@ class TestSignup(TestCase):
ml_events_registration="en", ml_events_registration="en",
ml_sport_registration=True, ml_sport_registration=True,
ml_art_registration=True, ml_art_registration=True,
VSS_charter_read=True
))
self.assertTrue(response.status_code, 200)
# The VSS charter is not read
response = self.client.post(reverse("registration:signup"), dict(
first_name="Toto",
last_name="TOTO",
username="Ihaveanotherusername",
email="othertoto@example.com",
password1="toto1234",
password2="toto1234",
phone_number="+33123456789",
department="EXT",
promotion=Club.objects.get(name="BDE").membership_start.year,
address="Earth",
paid=False,
ml_events_registration="en",
ml_sport_registration=True,
ml_art_registration=True,
VSS_charter_read=False
)) ))
self.assertTrue(response.status_code, 200) self.assertTrue(response.status_code, 200)

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-09 14:46+0200\n" "POT-Creation-Date: 2023-08-31 13:25+0200\n"
"PO-Revision-Date: 2020-11-16 20:02+0000\n" "PO-Revision-Date: 2020-11-16 20:02+0000\n"
"Last-Translator: bleizi <bleizi@crans.org>\n" "Last-Translator: bleizi <bleizi@crans.org>\n"
"Language-Team: German <http://translate.ynerant.fr/projects/nk20/nk20/de/>\n" "Language-Team: German <http://translate.ynerant.fr/projects/nk20/nk20/de/>\n"
@ -53,7 +53,7 @@ msgid "You can't invite more than 3 people to this activity."
msgstr "Sie dürfen höchstens 3 Leute zu dieser Veranstaltung einladen." msgstr "Sie dürfen höchstens 3 Leute zu dieser Veranstaltung einladen."
#: apps/activity/models.py:28 apps/activity/models.py:63 #: apps/activity/models.py:28 apps/activity/models.py:63
#: apps/member/models.py:199 #: apps/member/models.py:204
#: apps/member/templates/member/includes/club_info.html:4 #: apps/member/templates/member/includes/club_info.html:4
#: apps/member/templates/member/includes/profile_info.html:4 #: apps/member/templates/member/includes/profile_info.html:4
#: apps/note/models/notes.py:263 apps/note/models/transactions.py:26 #: apps/note/models/notes.py:263 apps/note/models/transactions.py:26
@ -114,7 +114,7 @@ msgstr "Wo findet die Veranstaltung statt ? (z.B Kfet)."
msgid "type" msgid "type"
msgstr "Type" msgstr "Type"
#: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:307 #: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:312
#: apps/note/models/notes.py:148 apps/treasury/models.py:287 #: apps/note/models/notes.py:148 apps/treasury/models.py:287
#: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13 #: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13
#: apps/wei/templates/wei/survey.html:15 #: apps/wei/templates/wei/survey.html:15
@ -262,15 +262,15 @@ msgstr "entfernen"
msgid "Type" msgid "Type"
msgstr "Type" msgstr "Type"
#: apps/activity/tables.py:84 apps/member/forms.py:186 #: apps/activity/tables.py:84 apps/member/forms.py:193
#: apps/registration/forms.py:92 apps/treasury/forms.py:131 #: apps/registration/forms.py:93 apps/treasury/forms.py:131
#: apps/wei/forms/registration.py:104 #: apps/wei/forms/registration.py:104
msgid "Last name" msgid "Last name"
msgstr "Nachname" msgstr "Nachname"
#: apps/activity/tables.py:86 apps/member/forms.py:191 #: apps/activity/tables.py:86 apps/member/forms.py:198
#: apps/note/templates/note/transaction_form.html:138 #: apps/note/templates/note/transaction_form.html:138
#: apps/registration/forms.py:97 apps/treasury/forms.py:133 #: apps/registration/forms.py:98 apps/treasury/forms.py:133
#: apps/wei/forms/registration.py:109 #: apps/wei/forms/registration.py:109
msgid "First name" msgid "First name"
msgstr "Vorname" msgstr "Vorname"
@ -498,21 +498,21 @@ msgstr "Changelogs"
msgid "Changelog of type \"{action}\" for model {model} at {timestamp}" msgid "Changelog of type \"{action}\" for model {model} at {timestamp}"
msgstr "Changelog \"{action}\" für Model {model} an {timestamp}" msgstr "Changelog \"{action}\" für Model {model} an {timestamp}"
#: apps/member/admin.py:50 apps/member/models.py:226 #: apps/member/admin.py:50 apps/member/models.py:231
#: apps/member/templates/member/includes/club_info.html:34 #: apps/member/templates/member/includes/club_info.html:34
msgid "membership fee (paid students)" msgid "membership fee (paid students)"
msgstr "Mitgliedschaftpreis (bezahlte Studenten)" msgstr "Mitgliedschaftpreis (bezahlte Studenten)"
#: apps/member/admin.py:51 apps/member/models.py:231 #: apps/member/admin.py:51 apps/member/models.py:236
#: apps/member/templates/member/includes/club_info.html:37 #: apps/member/templates/member/includes/club_info.html:37
msgid "membership fee (unpaid students)" msgid "membership fee (unpaid students)"
msgstr "Mitgliedschaftpreis (unbezahlte Studenten)" msgstr "Mitgliedschaftpreis (unbezahlte Studenten)"
#: apps/member/admin.py:65 apps/member/models.py:319 #: apps/member/admin.py:65 apps/member/models.py:324
msgid "roles" msgid "roles"
msgstr "Rollen" msgstr "Rollen"
#: apps/member/admin.py:66 apps/member/models.py:333 #: apps/member/admin.py:66 apps/member/models.py:338
msgid "fee" msgid "fee"
msgstr "Preis" msgstr "Preis"
@ -532,65 +532,81 @@ msgstr "Bericht Frequenz"
msgid "Last report date" msgid "Last report date"
msgstr "Letzen Bericht Datum" msgstr "Letzen Bericht Datum"
#: apps/member/forms.py:52
msgid ""
"Anti-VSS (<em>Violences Sexistes et Sexuelles</em>) charter read and approved"
msgstr ""
"Anti-VSS (<em>Violences Sexistes et Sexuelles</em>) Charta gelesen und angenommen"
#: apps/member/forms.py:53 #: apps/member/forms.py:53
msgid ""
"Tick after having read and accepted the anti-VSS charter <a "
"href=https://perso.crans.org/club-bde/Charte-anti-VSS.pdf target=_blank> "
"available here in pdf</a>"
msgstr ""
"Kreuzen Sie an, nachdem Sie die Anti-VSS-Charta gelesen und akzeptiert haben, <a "
"href=https://perso.crans.org/club-bde/Charte-anti-VSS.pdf target=_blank> "
"die hier als pdf-Datei verfügbar ist</a>"
#: apps/member/forms.py:60
msgid "You can't register to the note if you come from the future." msgid "You can't register to the note if you come from the future."
msgstr "Sie dürfen nicht einloggen wenn sie aus der Zukunft kommen." msgstr "Sie dürfen nicht einloggen wenn sie aus der Zukunft kommen."
#: apps/member/forms.py:79 #: apps/member/forms.py:86
msgid "select an image" msgid "select an image"
msgstr "Wählen sie ein Bild aus" msgstr "Wählen sie ein Bild aus"
#: apps/member/forms.py:80 #: apps/member/forms.py:87
msgid "Maximal size: 2MB" msgid "Maximal size: 2MB"
msgstr "Maximal Größe: 2MB" msgstr "Maximal Größe: 2MB"
#: apps/member/forms.py:105 #: apps/member/forms.py:112
msgid "This image cannot be loaded." msgid "This image cannot be loaded."
msgstr "Dieses Bild kann nicht geladen werden." msgstr "Dieses Bild kann nicht geladen werden."
#: apps/member/forms.py:141 apps/member/views.py:103 #: apps/member/forms.py:148 apps/member/views.py:103
#: apps/registration/forms.py:34 apps/registration/views.py:266 #: apps/registration/forms.py:35 apps/registration/views.py:266
msgid "An alias with a similar name already exists." msgid "An alias with a similar name already exists."
msgstr "Ein ähnliches Alias ist schon benutzt." msgstr "Ein ähnliches Alias ist schon benutzt."
#: apps/member/forms.py:165 #: apps/member/forms.py:172
msgid "Inscription paid by Société Générale" msgid "Inscription paid by Société Générale"
msgstr "Mitgliedschaft von der Société Générale bezahlt" msgstr "Mitgliedschaft von der Société Générale bezahlt"
#: apps/member/forms.py:167 #: apps/member/forms.py:174
msgid "Check this case if the Société Générale paid the inscription." msgid "Check this case if the Société Générale paid the inscription."
msgstr "Die Société Générale die Mitgliedschaft bezahlt." msgstr "Die Société Générale die Mitgliedschaft bezahlt."
#: apps/member/forms.py:172 apps/registration/forms.py:79 #: apps/member/forms.py:179 apps/registration/forms.py:80
#: apps/wei/forms/registration.py:91 #: apps/wei/forms/registration.py:91
msgid "Credit type" msgid "Credit type"
msgstr "Kredittype" msgstr "Kredittype"
#: apps/member/forms.py:173 apps/registration/forms.py:80 #: apps/member/forms.py:180 apps/registration/forms.py:81
#: apps/wei/forms/registration.py:92 #: apps/wei/forms/registration.py:92
msgid "No credit" msgid "No credit"
msgstr "Kein Kredit" msgstr "Kein Kredit"
#: apps/member/forms.py:175 #: apps/member/forms.py:182
msgid "You can credit the note of the user." msgid "You can credit the note of the user."
msgstr "Sie dûrfen diese Note kreditieren." msgstr "Sie dûrfen diese Note kreditieren."
#: apps/member/forms.py:179 apps/registration/forms.py:85 #: apps/member/forms.py:186 apps/registration/forms.py:86
#: apps/wei/forms/registration.py:97 #: apps/wei/forms/registration.py:97
msgid "Credit amount" msgid "Credit amount"
msgstr "Kreditanzahl" msgstr "Kreditanzahl"
#: apps/member/forms.py:196 apps/note/templates/note/transaction_form.html:144 #: apps/member/forms.py:203 apps/note/templates/note/transaction_form.html:144
#: apps/registration/forms.py:102 apps/treasury/forms.py:135 #: apps/registration/forms.py:103 apps/treasury/forms.py:135
#: apps/wei/forms/registration.py:114 #: apps/wei/forms/registration.py:114
msgid "Bank" msgid "Bank"
msgstr "Bank" msgstr "Bank"
#: apps/member/forms.py:223 #: apps/member/forms.py:230
msgid "User" msgid "User"
msgstr "User" msgstr "User"
#: apps/member/forms.py:237 #: apps/member/forms.py:244
msgid "Roles" msgid "Roles"
msgstr "Rollen" msgstr "Rollen"
@ -777,15 +793,19 @@ msgstr "email bestätigt"
msgid "registration valid" msgid "registration valid"
msgstr "Anmeldung gültig" msgstr "Anmeldung gültig"
#: apps/member/models.py:162 apps/member/models.py:163 #: apps/member/models.py:138
msgid "VSS charter read"
msgstr "VSS-Charta gelesen"
#: apps/member/models.py:167 apps/member/models.py:168
msgid "user profile" msgid "user profile"
msgstr "Userprofile" msgstr "Userprofile"
#: apps/member/models.py:173 #: apps/member/models.py:178
msgid "Activate your Note Kfet account" msgid "Activate your Note Kfet account"
msgstr "Ihre Note Kfet Konto bestätigen" msgstr "Ihre Note Kfet Konto bestätigen"
#: apps/member/models.py:204 #: apps/member/models.py:209
#: apps/member/templates/member/includes/club_info.html:55 #: apps/member/templates/member/includes/club_info.html:55
#: apps/member/templates/member/includes/profile_info.html:40 #: apps/member/templates/member/includes/profile_info.html:40
#: apps/registration/templates/registration/future_profile_detail.html:22 #: apps/registration/templates/registration/future_profile_detail.html:22
@ -794,88 +814,88 @@ msgstr "Ihre Note Kfet Konto bestätigen"
msgid "email" msgid "email"
msgstr "Email" msgstr "Email"
#: apps/member/models.py:211 #: apps/member/models.py:216
msgid "parent club" msgid "parent club"
msgstr "Urclub" msgstr "Urclub"
#: apps/member/models.py:220 #: apps/member/models.py:225
msgid "require memberships" msgid "require memberships"
msgstr "erfordern Mitgliedschaft" msgstr "erfordern Mitgliedschaft"
#: apps/member/models.py:221 #: apps/member/models.py:226
msgid "Uncheck if this club don't require memberships." msgid "Uncheck if this club don't require memberships."
msgstr "" msgstr ""
"Deaktivieren Sie diese Option, wenn für diesen Club keine Mitgliedschaft " "Deaktivieren Sie diese Option, wenn für diesen Club keine Mitgliedschaft "
"erforderlich ist." "erforderlich ist."
#: apps/member/models.py:237 #: apps/member/models.py:242
#: apps/member/templates/member/includes/club_info.html:26 #: apps/member/templates/member/includes/club_info.html:26
msgid "membership duration" msgid "membership duration"
msgstr "Mitgliedscahftzeit" msgstr "Mitgliedscahftzeit"
#: apps/member/models.py:238 #: apps/member/models.py:243
msgid "The longest time (in days) a membership can last (NULL = infinite)." msgid "The longest time (in days) a membership can last (NULL = infinite)."
msgstr "Wie lang am höchsten eine Mitgliedschaft dauern kann." msgstr "Wie lang am höchsten eine Mitgliedschaft dauern kann."
#: apps/member/models.py:245 #: apps/member/models.py:250
#: apps/member/templates/member/includes/club_info.html:16 #: apps/member/templates/member/includes/club_info.html:16
msgid "membership start" msgid "membership start"
msgstr "Mitgliedschaftanfangsdatum" msgstr "Mitgliedschaftanfangsdatum"
#: apps/member/models.py:246 #: apps/member/models.py:251
msgid "Date from which the members can renew their membership." msgid "Date from which the members can renew their membership."
msgstr "Ab wann kann man sein Mitgliedschaft erneuern." msgstr "Ab wann kann man sein Mitgliedschaft erneuern."
#: apps/member/models.py:252 #: apps/member/models.py:257
#: apps/member/templates/member/includes/club_info.html:21 #: apps/member/templates/member/includes/club_info.html:21
msgid "membership end" msgid "membership end"
msgstr "Mitgliedschaftenddatum" msgstr "Mitgliedschaftenddatum"
#: apps/member/models.py:253 #: apps/member/models.py:258
msgid "Maximal date of a membership, after which members must renew it." msgid "Maximal date of a membership, after which members must renew it."
msgstr "" msgstr ""
"Maximales Datum einer Mitgliedschaft, nach dem Mitglieder es erneuern müssen." "Maximales Datum einer Mitgliedschaft, nach dem Mitglieder es erneuern müssen."
#: apps/member/models.py:288 apps/member/models.py:313 #: apps/member/models.py:293 apps/member/models.py:318
#: apps/note/models/notes.py:176 #: apps/note/models/notes.py:176
msgid "club" msgid "club"
msgstr "Club" msgstr "Club"
#: apps/member/models.py:289 #: apps/member/models.py:294
msgid "clubs" msgid "clubs"
msgstr "Clubs" msgstr "Clubs"
#: apps/member/models.py:324 #: apps/member/models.py:329
msgid "membership starts on" msgid "membership starts on"
msgstr "Mitgliedschaft fängt an" msgstr "Mitgliedschaft fängt an"
#: apps/member/models.py:328 #: apps/member/models.py:333
msgid "membership ends on" msgid "membership ends on"
msgstr "Mitgliedschaft endet am" msgstr "Mitgliedschaft endet am"
#: apps/member/models.py:430 #: apps/member/models.py:435
#, python-brace-format #, python-brace-format
msgid "The role {role} does not apply to the club {club}." msgid "The role {role} does not apply to the club {club}."
msgstr "Die Rolle {role} ist nicht erlaubt für das Club {club}." msgstr "Die Rolle {role} ist nicht erlaubt für das Club {club}."
#: apps/member/models.py:439 apps/member/views.py:712 #: apps/member/models.py:444 apps/member/views.py:712
msgid "User is already a member of the club" msgid "User is already a member of the club"
msgstr "User ist schon ein Mitglied dieser club" msgstr "User ist schon ein Mitglied dieser club"
#: apps/member/models.py:451 apps/member/views.py:721 #: apps/member/models.py:456 apps/member/views.py:721
msgid "User is not a member of the parent club" msgid "User is not a member of the parent club"
msgstr "User ist noch nicht Mitglied des Urclubs" msgstr "User ist noch nicht Mitglied des Urclubs"
#: apps/member/models.py:504 #: apps/member/models.py:509
#, python-brace-format #, python-brace-format
msgid "Membership of {user} for the club {club}" msgid "Membership of {user} for the club {club}"
msgstr "Mitgliedschaft von {user} für das Club {club}" msgstr "Mitgliedschaft von {user} für das Club {club}"
#: apps/member/models.py:507 apps/note/models/transactions.py:389 #: apps/member/models.py:512 apps/note/models/transactions.py:389
msgid "membership" msgid "membership"
msgstr "Mitgliedschaft" msgstr "Mitgliedschaft"
#: apps/member/models.py:508 #: apps/member/models.py:513
msgid "memberships" msgid "memberships"
msgstr "Mitgliedschaften" msgstr "Mitgliedschaften"
@ -1860,7 +1880,7 @@ msgstr "Angabefeld gilt nur zum Anzeigen und Ändern von Berechtigungstypen."
msgid "for club" msgid "for club"
msgstr "Für Club" msgstr "Für Club"
#: apps/permission/models.py:350 apps/permission/models.py:351 #: apps/permission/models.py:351 apps/permission/models.py:352
msgid "role permissions" msgid "role permissions"
msgstr "Berechtigung Rollen" msgstr "Berechtigung Rollen"
@ -1982,15 +2002,15 @@ msgstr "Alle Rechten"
msgid "registration" msgid "registration"
msgstr "Anmeldung" msgstr "Anmeldung"
#: apps/registration/forms.py:40 #: apps/registration/forms.py:41
msgid "This email address is already used." msgid "This email address is already used."
msgstr "Diese email adresse ist schon benutzt." msgstr "Diese email adresse ist schon benutzt."
#: apps/registration/forms.py:60 #: apps/registration/forms.py:61
msgid "Register to the WEI" msgid "Register to the WEI"
msgstr "Zu WEI anmelden" msgstr "Zu WEI anmelden"
#: apps/registration/forms.py:62 #: apps/registration/forms.py:63
msgid "" msgid ""
"Check this case if you want to register to the WEI. If you hesitate, you " "Check this case if you want to register to the WEI. If you hesitate, you "
"will be able to register later, after validating your account in the Kfet." "will be able to register later, after validating your account in the Kfet."
@ -1999,15 +2019,15 @@ msgstr ""
"falls Zweifel, können Sie sich später nach Bestätigung Ihres Kontos im Kfet " "falls Zweifel, können Sie sich später nach Bestätigung Ihres Kontos im Kfet "
"registrieren." "registrieren."
#: apps/registration/forms.py:107 #: apps/registration/forms.py:108
msgid "Join BDE Club" msgid "Join BDE Club"
msgstr "BDE Mitglieder werden" msgstr "BDE Mitglieder werden"
#: apps/registration/forms.py:114 #: apps/registration/forms.py:115
msgid "Join Kfet Club" msgid "Join Kfet Club"
msgstr "Kfet Mitglieder werden" msgstr "Kfet Mitglieder werden"
#: apps/registration/forms.py:123 #: apps/registration/forms.py:124
msgid "Join BDA Club" msgid "Join BDA Club"
msgstr "BDA Mitglieder werden" msgstr "BDA Mitglieder werden"
@ -2631,6 +2651,7 @@ msgid "This team doesn't belong to the given bus."
msgstr "Dieses Team gehört nicht zum angegebenen Bus." msgstr "Dieses Team gehört nicht zum angegebenen Bus."
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38 #: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38
#: apps/wei/forms/surveys/wei2023.py:38
msgid "Choose a word:" msgid "Choose a word:"
msgstr "Wählen Sie ein Wort:" msgstr "Wählen Sie ein Wort:"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-09 14:46+0200\n" "POT-Creation-Date: 2023-08-31 13:25+0200\n"
"PO-Revision-Date: 2022-04-11 23:12+0200\n" "PO-Revision-Date: 2022-04-11 23:12+0200\n"
"Last-Translator: bleizi <bleizi@crans.org>\n" "Last-Translator: bleizi <bleizi@crans.org>\n"
"Language-Team: \n" "Language-Team: \n"
@ -52,7 +52,7 @@ msgid "You can't invite more than 3 people to this activity."
msgstr "Usted no puede invitar más de 3 persona a esta actividad." msgstr "Usted no puede invitar más de 3 persona a esta actividad."
#: apps/activity/models.py:28 apps/activity/models.py:63 #: apps/activity/models.py:28 apps/activity/models.py:63
#: apps/member/models.py:199 #: apps/member/models.py:204
#: apps/member/templates/member/includes/club_info.html:4 #: apps/member/templates/member/includes/club_info.html:4
#: apps/member/templates/member/includes/profile_info.html:4 #: apps/member/templates/member/includes/profile_info.html:4
#: apps/note/models/notes.py:263 apps/note/models/transactions.py:26 #: apps/note/models/notes.py:263 apps/note/models/transactions.py:26
@ -113,7 +113,7 @@ msgstr "Lugar donde se organiza la actividad, por ejemplo la Kfet."
msgid "type" msgid "type"
msgstr "tipo" msgstr "tipo"
#: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:307 #: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:312
#: apps/note/models/notes.py:148 apps/treasury/models.py:287 #: apps/note/models/notes.py:148 apps/treasury/models.py:287
#: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13 #: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13
#: apps/wei/templates/wei/survey.html:15 #: apps/wei/templates/wei/survey.html:15
@ -261,15 +261,15 @@ msgstr "quitar"
msgid "Type" msgid "Type"
msgstr "Tipo" msgstr "Tipo"
#: apps/activity/tables.py:84 apps/member/forms.py:186 #: apps/activity/tables.py:84 apps/member/forms.py:193
#: apps/registration/forms.py:92 apps/treasury/forms.py:131 #: apps/registration/forms.py:93 apps/treasury/forms.py:131
#: apps/wei/forms/registration.py:104 #: apps/wei/forms/registration.py:104
msgid "Last name" msgid "Last name"
msgstr "Apellido" msgstr "Apellido"
#: apps/activity/tables.py:86 apps/member/forms.py:191 #: apps/activity/tables.py:86 apps/member/forms.py:198
#: apps/note/templates/note/transaction_form.html:138 #: apps/note/templates/note/transaction_form.html:138
#: apps/registration/forms.py:97 apps/treasury/forms.py:133 #: apps/registration/forms.py:98 apps/treasury/forms.py:133
#: apps/wei/forms/registration.py:109 #: apps/wei/forms/registration.py:109
msgid "First name" msgid "First name"
msgstr "Nombre" msgstr "Nombre"
@ -495,21 +495,21 @@ msgstr "diario de cambios"
msgid "Changelog of type \"{action}\" for model {model} at {timestamp}" msgid "Changelog of type \"{action}\" for model {model} at {timestamp}"
msgstr "" msgstr ""
#: apps/member/admin.py:50 apps/member/models.py:226 #: apps/member/admin.py:50 apps/member/models.py:231
#: apps/member/templates/member/includes/club_info.html:34 #: apps/member/templates/member/includes/club_info.html:34
msgid "membership fee (paid students)" msgid "membership fee (paid students)"
msgstr "pago de afiliación (estudiantes pagados)" msgstr "pago de afiliación (estudiantes pagados)"
#: apps/member/admin.py:51 apps/member/models.py:231 #: apps/member/admin.py:51 apps/member/models.py:236
#: apps/member/templates/member/includes/club_info.html:37 #: apps/member/templates/member/includes/club_info.html:37
msgid "membership fee (unpaid students)" msgid "membership fee (unpaid students)"
msgstr "pago de afiliación (estudiantes no pagados)" msgstr "pago de afiliación (estudiantes no pagados)"
#: apps/member/admin.py:65 apps/member/models.py:319 #: apps/member/admin.py:65 apps/member/models.py:324
msgid "roles" msgid "roles"
msgstr "papel" msgstr "papel"
#: apps/member/admin.py:66 apps/member/models.py:333 #: apps/member/admin.py:66 apps/member/models.py:338
msgid "fee" msgid "fee"
msgstr "pago" msgstr "pago"
@ -529,65 +529,81 @@ msgstr "Frecuencia de los informes (en días)"
msgid "Last report date" msgid "Last report date"
msgstr "Fecha del último informe" msgstr "Fecha del último informe"
#: apps/member/forms.py:52
msgid ""
"Anti-VSS (<em>Violences Sexistes et Sexuelles</em>) charter read and approved"
msgstr ""
"Carta Anti-VSS (<em>Violences Sexistes et Sexuelles</em>) leída y aprobada"
#: apps/member/forms.py:53 #: apps/member/forms.py:53
msgid ""
"Tick after having read and accepted the anti-VSS charter <a "
"href=https://perso.crans.org/club-bde/Charte-anti-VSS.pdf target=_blank> "
"available here in pdf</a>"
msgstr ""
"Marque después de leer y aceptar la carta anti-VVS <a "
"href=https://perso.crans.org/club-bde/Charte-anti-VSS.pdf target=_blank> "
"disponible en pdf aquí</a>"
#: apps/member/forms.py:60
msgid "You can't register to the note if you come from the future." msgid "You can't register to the note if you come from the future."
msgstr "Usted no puede registrar si viene del futuro." msgstr "Usted no puede registrar si viene del futuro."
#: apps/member/forms.py:79 #: apps/member/forms.py:86
msgid "select an image" msgid "select an image"
msgstr "elegir una imagen" msgstr "elegir una imagen"
#: apps/member/forms.py:80 #: apps/member/forms.py:87
msgid "Maximal size: 2MB" msgid "Maximal size: 2MB"
msgstr "Tamaño máximo : 2Mo" msgstr "Tamaño máximo : 2Mo"
#: apps/member/forms.py:105 #: apps/member/forms.py:112
msgid "This image cannot be loaded." msgid "This image cannot be loaded."
msgstr "Esta imagen no puede ser cargada." msgstr "Esta imagen no puede ser cargada."
#: apps/member/forms.py:141 apps/member/views.py:103 #: apps/member/forms.py:148 apps/member/views.py:103
#: apps/registration/forms.py:34 apps/registration/views.py:266 #: apps/registration/forms.py:35 apps/registration/views.py:266
msgid "An alias with a similar name already exists." msgid "An alias with a similar name already exists."
msgstr "Un alias similar ya existe." msgstr "Un alias similar ya existe."
#: apps/member/forms.py:165 #: apps/member/forms.py:172
msgid "Inscription paid by Société Générale" msgid "Inscription paid by Société Générale"
msgstr "Registración pagadas por Société Générale" msgstr "Registración pagadas por Société Générale"
#: apps/member/forms.py:167 #: apps/member/forms.py:174
msgid "Check this case if the Société Générale paid the inscription." msgid "Check this case if the Société Générale paid the inscription."
msgstr "Marcar esta casilla si Société Générale pagó la registración." msgstr "Marcar esta casilla si Société Générale pagó la registración."
#: apps/member/forms.py:172 apps/registration/forms.py:79 #: apps/member/forms.py:179 apps/registration/forms.py:80
#: apps/wei/forms/registration.py:91 #: apps/wei/forms/registration.py:91
msgid "Credit type" msgid "Credit type"
msgstr "Tipo de crédito" msgstr "Tipo de crédito"
#: apps/member/forms.py:173 apps/registration/forms.py:80 #: apps/member/forms.py:180 apps/registration/forms.py:81
#: apps/wei/forms/registration.py:92 #: apps/wei/forms/registration.py:92
msgid "No credit" msgid "No credit"
msgstr "No crédito" msgstr "No crédito"
#: apps/member/forms.py:175 #: apps/member/forms.py:182
msgid "You can credit the note of the user." msgid "You can credit the note of the user."
msgstr "Usted puede acreditar la note del usuario." msgstr "Usted puede acreditar la note del usuario."
#: apps/member/forms.py:179 apps/registration/forms.py:85 #: apps/member/forms.py:186 apps/registration/forms.py:86
#: apps/wei/forms/registration.py:97 #: apps/wei/forms/registration.py:97
msgid "Credit amount" msgid "Credit amount"
msgstr "Valor del crédito" msgstr "Valor del crédito"
#: apps/member/forms.py:196 apps/note/templates/note/transaction_form.html:144 #: apps/member/forms.py:203 apps/note/templates/note/transaction_form.html:144
#: apps/registration/forms.py:102 apps/treasury/forms.py:135 #: apps/registration/forms.py:103 apps/treasury/forms.py:135
#: apps/wei/forms/registration.py:114 #: apps/wei/forms/registration.py:114
msgid "Bank" msgid "Bank"
msgstr "Banco" msgstr "Banco"
#: apps/member/forms.py:223 #: apps/member/forms.py:230
msgid "User" msgid "User"
msgstr "Usuario" msgstr "Usuario"
#: apps/member/forms.py:237 #: apps/member/forms.py:244
msgid "Roles" msgid "Roles"
msgstr "Papeles" msgstr "Papeles"
@ -772,15 +788,19 @@ msgstr "correo electrónico confirmado"
msgid "registration valid" msgid "registration valid"
msgstr "registración valida" msgstr "registración valida"
#: apps/member/models.py:162 apps/member/models.py:163 #: apps/member/models.py:138
msgid "VSS charter read"
msgstr "Carta VSS leída"
#: apps/member/models.py:167 apps/member/models.py:168
msgid "user profile" msgid "user profile"
msgstr "perfil usuario" msgstr "perfil usuario"
#: apps/member/models.py:173 #: apps/member/models.py:178
msgid "Activate your Note Kfet account" msgid "Activate your Note Kfet account"
msgstr "Active su cuenta Note Kfet" msgstr "Active su cuenta Note Kfet"
#: apps/member/models.py:204 #: apps/member/models.py:209
#: apps/member/templates/member/includes/club_info.html:55 #: apps/member/templates/member/includes/club_info.html:55
#: apps/member/templates/member/includes/profile_info.html:40 #: apps/member/templates/member/includes/profile_info.html:40
#: apps/registration/templates/registration/future_profile_detail.html:22 #: apps/registration/templates/registration/future_profile_detail.html:22
@ -789,87 +809,87 @@ msgstr "Active su cuenta Note Kfet"
msgid "email" msgid "email"
msgstr "correo electrónico" msgstr "correo electrónico"
#: apps/member/models.py:211 #: apps/member/models.py:216
msgid "parent club" msgid "parent club"
msgstr "club pariente" msgstr "club pariente"
#: apps/member/models.py:220 #: apps/member/models.py:225
msgid "require memberships" msgid "require memberships"
msgstr "necesita afiliaciones" msgstr "necesita afiliaciones"
#: apps/member/models.py:221 #: apps/member/models.py:226
msgid "Uncheck if this club don't require memberships." msgid "Uncheck if this club don't require memberships."
msgstr "Desmarcar si este club no usa afiliaciones." msgstr "Desmarcar si este club no usa afiliaciones."
#: apps/member/models.py:237 #: apps/member/models.py:242
#: apps/member/templates/member/includes/club_info.html:26 #: apps/member/templates/member/includes/club_info.html:26
msgid "membership duration" msgid "membership duration"
msgstr "duración de la afiliación" msgstr "duración de la afiliación"
#: apps/member/models.py:238 #: apps/member/models.py:243
msgid "The longest time (in days) a membership can last (NULL = infinite)." msgid "The longest time (in days) a membership can last (NULL = infinite)."
msgstr "La duración máxima (en días) de una afiliación (NULL = infinito)." msgstr "La duración máxima (en días) de una afiliación (NULL = infinito)."
#: apps/member/models.py:245 #: apps/member/models.py:250
#: apps/member/templates/member/includes/club_info.html:16 #: apps/member/templates/member/includes/club_info.html:16
msgid "membership start" msgid "membership start"
msgstr "inicio de la afiliación" msgstr "inicio de la afiliación"
#: apps/member/models.py:246 #: apps/member/models.py:251
msgid "Date from which the members can renew their membership." msgid "Date from which the members can renew their membership."
msgstr "Fecha a partir de la cual los miembros pueden prorrogar su afiliación." msgstr "Fecha a partir de la cual los miembros pueden prorrogar su afiliación."
#: apps/member/models.py:252 #: apps/member/models.py:257
#: apps/member/templates/member/includes/club_info.html:21 #: apps/member/templates/member/includes/club_info.html:21
msgid "membership end" msgid "membership end"
msgstr "fin de la afiliación" msgstr "fin de la afiliación"
#: apps/member/models.py:253 #: apps/member/models.py:258
msgid "Maximal date of a membership, after which members must renew it." msgid "Maximal date of a membership, after which members must renew it."
msgstr "" msgstr ""
"Ultima fecha de una afiliación, después de la cual los miembros tienen que " "Ultima fecha de una afiliación, después de la cual los miembros tienen que "
"prorrogarla." "prorrogarla."
#: apps/member/models.py:288 apps/member/models.py:313 #: apps/member/models.py:293 apps/member/models.py:318
#: apps/note/models/notes.py:176 #: apps/note/models/notes.py:176
msgid "club" msgid "club"
msgstr "club" msgstr "club"
#: apps/member/models.py:289 #: apps/member/models.py:294
msgid "clubs" msgid "clubs"
msgstr "clubs" msgstr "clubs"
#: apps/member/models.py:324 #: apps/member/models.py:329
msgid "membership starts on" msgid "membership starts on"
msgstr "afiliación empezá el" msgstr "afiliación empezá el"
#: apps/member/models.py:328 #: apps/member/models.py:333
msgid "membership ends on" msgid "membership ends on"
msgstr "afiliación termina el" msgstr "afiliación termina el"
#: apps/member/models.py:430 #: apps/member/models.py:435
#, python-brace-format #, python-brace-format
msgid "The role {role} does not apply to the club {club}." msgid "The role {role} does not apply to the club {club}."
msgstr "El papel {role} no se encuentra en el club {club}." msgstr "El papel {role} no se encuentra en el club {club}."
#: apps/member/models.py:439 apps/member/views.py:712 #: apps/member/models.py:444 apps/member/views.py:712
msgid "User is already a member of the club" msgid "User is already a member of the club"
msgstr "Usuario ya esta un miembro del club" msgstr "Usuario ya esta un miembro del club"
#: apps/member/models.py:451 apps/member/views.py:721 #: apps/member/models.py:456 apps/member/views.py:721
msgid "User is not a member of the parent club" msgid "User is not a member of the parent club"
msgstr "Usuario no es un miembro del club pariente" msgstr "Usuario no es un miembro del club pariente"
#: apps/member/models.py:504 #: apps/member/models.py:509
#, python-brace-format #, python-brace-format
msgid "Membership of {user} for the club {club}" msgid "Membership of {user} for the club {club}"
msgstr "Afiliación of {user} for the club {club}" msgstr "Afiliación of {user} for the club {club}"
#: apps/member/models.py:507 apps/note/models/transactions.py:389 #: apps/member/models.py:512 apps/note/models/transactions.py:389
msgid "membership" msgid "membership"
msgstr "afiliación" msgstr "afiliación"
#: apps/member/models.py:508 #: apps/member/models.py:513
msgid "memberships" msgid "memberships"
msgstr "afiliaciones" msgstr "afiliaciones"
@ -1845,7 +1865,7 @@ msgstr ""
msgid "for club" msgid "for club"
msgstr "interesa el club" msgstr "interesa el club"
#: apps/permission/models.py:350 apps/permission/models.py:351 #: apps/permission/models.py:351 apps/permission/models.py:352
msgid "role permissions" msgid "role permissions"
msgstr "permisos por papeles" msgstr "permisos por papeles"
@ -1963,15 +1983,15 @@ msgstr "Todos los permisos"
msgid "registration" msgid "registration"
msgstr "afiliación" msgstr "afiliación"
#: apps/registration/forms.py:40 #: apps/registration/forms.py:41
msgid "This email address is already used." msgid "This email address is already used."
msgstr "Este correo electrónico ya esta utilizado." msgstr "Este correo electrónico ya esta utilizado."
#: apps/registration/forms.py:60 #: apps/registration/forms.py:61
msgid "Register to the WEI" msgid "Register to the WEI"
msgstr "Registrarse en el WEI" msgstr "Registrarse en el WEI"
#: apps/registration/forms.py:62 #: apps/registration/forms.py:63
msgid "" msgid ""
"Check this case if you want to register to the WEI. If you hesitate, you " "Check this case if you want to register to the WEI. If you hesitate, you "
"will be able to register later, after validating your account in the Kfet." "will be able to register later, after validating your account in the Kfet."
@ -1979,15 +1999,15 @@ msgstr ""
"Marcar esta casilla si usted quiere registrarse en el WEI. Si duda, podrá " "Marcar esta casilla si usted quiere registrarse en el WEI. Si duda, podrá "
"registrarse más tarde, después de validar su cuenta Note Kfet." "registrarse más tarde, después de validar su cuenta Note Kfet."
#: apps/registration/forms.py:107 #: apps/registration/forms.py:108
msgid "Join BDE Club" msgid "Join BDE Club"
msgstr "Afiliarse al club BDE" msgstr "Afiliarse al club BDE"
#: apps/registration/forms.py:114 #: apps/registration/forms.py:115
msgid "Join Kfet Club" msgid "Join Kfet Club"
msgstr "Afiliarse al club Kfet" msgstr "Afiliarse al club Kfet"
#: apps/registration/forms.py:123 #: apps/registration/forms.py:124
msgid "Join BDA Club" msgid "Join BDA Club"
msgstr "Afiliarse al club BDA" msgstr "Afiliarse al club BDA"
@ -2601,6 +2621,7 @@ msgid "This team doesn't belong to the given bus."
msgstr "Este equipo no pertenece al bus dado." msgstr "Este equipo no pertenece al bus dado."
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38 #: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38
#: apps/wei/forms/surveys/wei2023.py:38
msgid "Choose a word:" msgid "Choose a word:"
msgstr "Elegir una palabra :" msgstr "Elegir una palabra :"

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-07-09 14:46+0200\n" "POT-Creation-Date: 2023-08-31 13:25+0200\n"
"PO-Revision-Date: 2022-04-11 22:05+0200\n" "PO-Revision-Date: 2022-04-11 22:05+0200\n"
"Last-Translator: bleizi <bleizi@crans.org>\n" "Last-Translator: bleizi <bleizi@crans.org>\n"
"Language-Team: French <http://translate.ynerant.fr/projects/nk20/nk20/fr/>\n" "Language-Team: French <http://translate.ynerant.fr/projects/nk20/nk20/fr/>\n"
@ -53,7 +53,7 @@ msgid "You can't invite more than 3 people to this activity."
msgstr "Vous ne pouvez pas inviter plus de 3 personnes à cette activité." msgstr "Vous ne pouvez pas inviter plus de 3 personnes à cette activité."
#: apps/activity/models.py:28 apps/activity/models.py:63 #: apps/activity/models.py:28 apps/activity/models.py:63
#: apps/member/models.py:199 #: apps/member/models.py:204
#: apps/member/templates/member/includes/club_info.html:4 #: apps/member/templates/member/includes/club_info.html:4
#: apps/member/templates/member/includes/profile_info.html:4 #: apps/member/templates/member/includes/profile_info.html:4
#: apps/note/models/notes.py:263 apps/note/models/transactions.py:26 #: apps/note/models/notes.py:263 apps/note/models/transactions.py:26
@ -114,7 +114,7 @@ msgstr "Lieu où l'activité est organisée, par exemple la Kfet."
msgid "type" msgid "type"
msgstr "type" msgstr "type"
#: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:307 #: apps/activity/models.py:89 apps/logs/models.py:22 apps/member/models.py:312
#: apps/note/models/notes.py:148 apps/treasury/models.py:287 #: apps/note/models/notes.py:148 apps/treasury/models.py:287
#: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13 #: apps/wei/models.py:173 apps/wei/templates/wei/attribute_bus_1A.html:13
#: apps/wei/templates/wei/survey.html:15 #: apps/wei/templates/wei/survey.html:15
@ -262,15 +262,15 @@ msgstr "supprimer"
msgid "Type" msgid "Type"
msgstr "Type" msgstr "Type"
#: apps/activity/tables.py:84 apps/member/forms.py:186 #: apps/activity/tables.py:84 apps/member/forms.py:193
#: apps/registration/forms.py:92 apps/treasury/forms.py:131 #: apps/registration/forms.py:93 apps/treasury/forms.py:131
#: apps/wei/forms/registration.py:104 #: apps/wei/forms/registration.py:104
msgid "Last name" msgid "Last name"
msgstr "Nom de famille" msgstr "Nom de famille"
#: apps/activity/tables.py:86 apps/member/forms.py:191 #: apps/activity/tables.py:86 apps/member/forms.py:198
#: apps/note/templates/note/transaction_form.html:138 #: apps/note/templates/note/transaction_form.html:138
#: apps/registration/forms.py:97 apps/treasury/forms.py:133 #: apps/registration/forms.py:98 apps/treasury/forms.py:133
#: apps/wei/forms/registration.py:109 #: apps/wei/forms/registration.py:109
msgid "First name" msgid "First name"
msgstr "Prénom" msgstr "Prénom"
@ -497,21 +497,21 @@ msgstr "journaux de modifications"
msgid "Changelog of type \"{action}\" for model {model} at {timestamp}" msgid "Changelog of type \"{action}\" for model {model} at {timestamp}"
msgstr "Changelog de type « {action} » pour le modèle {model} à {timestamp}" msgstr "Changelog de type « {action} » pour le modèle {model} à {timestamp}"
#: apps/member/admin.py:50 apps/member/models.py:226 #: apps/member/admin.py:50 apps/member/models.py:231
#: apps/member/templates/member/includes/club_info.html:34 #: apps/member/templates/member/includes/club_info.html:34
msgid "membership fee (paid students)" msgid "membership fee (paid students)"
msgstr "cotisation pour adhérer (normalien élève)" msgstr "cotisation pour adhérer (normalien élève)"
#: apps/member/admin.py:51 apps/member/models.py:231 #: apps/member/admin.py:51 apps/member/models.py:236
#: apps/member/templates/member/includes/club_info.html:37 #: apps/member/templates/member/includes/club_info.html:37
msgid "membership fee (unpaid students)" msgid "membership fee (unpaid students)"
msgstr "cotisation pour adhérer (normalien étudiant)" msgstr "cotisation pour adhérer (normalien étudiant)"
#: apps/member/admin.py:65 apps/member/models.py:319 #: apps/member/admin.py:65 apps/member/models.py:324
msgid "roles" msgid "roles"
msgstr "rôles" msgstr "rôles"
#: apps/member/admin.py:66 apps/member/models.py:333 #: apps/member/admin.py:66 apps/member/models.py:338
msgid "fee" msgid "fee"
msgstr "cotisation" msgstr "cotisation"
@ -531,65 +531,81 @@ msgstr "Fréquence des rapports (en jours)"
msgid "Last report date" msgid "Last report date"
msgstr "Date de dernier rapport" msgstr "Date de dernier rapport"
#: apps/member/forms.py:52
msgid ""
"Anti-VSS (<em>Violences Sexistes et Sexuelles</em>) charter read and approved"
msgstr ""
"Charte Anti-VSS (Violences Sexistes et Sexuelles) lue et approuvée"
#: apps/member/forms.py:53 #: apps/member/forms.py:53
msgid ""
"Tick after having read and accepted the anti-VSS charter <a "
"href=https://perso.crans.org/club-bde/Charte-anti-VSS.pdf target=_blank> "
"available here in pdf</a>"
msgstr ""
"Cochez après avoir lu la chartre anti-VSS <a "
"href=https://perso.crans.org/club-bde/Charte-anti-VSS.pdf target=_blank> "
"disponible en pdf ici</a>"
#: apps/member/forms.py:60
msgid "You can't register to the note if you come from the future." msgid "You can't register to the note if you come from the future."
msgstr "Vous ne pouvez pas vous inscrire à la note si vous venez du futur." msgstr "Vous ne pouvez pas vous inscrire à la note si vous venez du futur."
#: apps/member/forms.py:79 #: apps/member/forms.py:86
msgid "select an image" msgid "select an image"
msgstr "choisissez une image" msgstr "choisissez une image"
#: apps/member/forms.py:80 #: apps/member/forms.py:87
msgid "Maximal size: 2MB" msgid "Maximal size: 2MB"
msgstr "Taille maximale : 2 Mo" msgstr "Taille maximale : 2 Mo"
#: apps/member/forms.py:105 #: apps/member/forms.py:112
msgid "This image cannot be loaded." msgid "This image cannot be loaded."
msgstr "Cette image ne peut pas être chargée." msgstr "Cette image ne peut pas être chargée."
#: apps/member/forms.py:141 apps/member/views.py:103 #: apps/member/forms.py:148 apps/member/views.py:103
#: apps/registration/forms.py:34 apps/registration/views.py:266 #: apps/registration/forms.py:35 apps/registration/views.py:266
msgid "An alias with a similar name already exists." msgid "An alias with a similar name already exists."
msgstr "Un alias avec un nom similaire existe déjà." msgstr "Un alias avec un nom similaire existe déjà."
#: apps/member/forms.py:165 #: apps/member/forms.py:172
msgid "Inscription paid by Société Générale" msgid "Inscription paid by Société Générale"
msgstr "Inscription payée par la Société générale" msgstr "Inscription payée par la Société générale"
#: apps/member/forms.py:167 #: apps/member/forms.py:174
msgid "Check this case if the Société Générale paid the inscription." msgid "Check this case if the Société Générale paid the inscription."
msgstr "Cochez cette case si la Société Générale a payé l'inscription." msgstr "Cochez cette case si la Société Générale a payé l'inscription."
#: apps/member/forms.py:172 apps/registration/forms.py:79 #: apps/member/forms.py:179 apps/registration/forms.py:80
#: apps/wei/forms/registration.py:91 #: apps/wei/forms/registration.py:91
msgid "Credit type" msgid "Credit type"
msgstr "Type de rechargement" msgstr "Type de rechargement"
#: apps/member/forms.py:173 apps/registration/forms.py:80 #: apps/member/forms.py:180 apps/registration/forms.py:81
#: apps/wei/forms/registration.py:92 #: apps/wei/forms/registration.py:92
msgid "No credit" msgid "No credit"
msgstr "Pas de rechargement" msgstr "Pas de rechargement"
#: apps/member/forms.py:175 #: apps/member/forms.py:182
msgid "You can credit the note of the user." msgid "You can credit the note of the user."
msgstr "Vous pouvez créditer la note de l'utilisateur avant l'adhésion." msgstr "Vous pouvez créditer la note de l'utilisateur avant l'adhésion."
#: apps/member/forms.py:179 apps/registration/forms.py:85 #: apps/member/forms.py:186 apps/registration/forms.py:86
#: apps/wei/forms/registration.py:97 #: apps/wei/forms/registration.py:97
msgid "Credit amount" msgid "Credit amount"
msgstr "Montant à créditer" msgstr "Montant à créditer"
#: apps/member/forms.py:196 apps/note/templates/note/transaction_form.html:144 #: apps/member/forms.py:203 apps/note/templates/note/transaction_form.html:144
#: apps/registration/forms.py:102 apps/treasury/forms.py:135 #: apps/registration/forms.py:103 apps/treasury/forms.py:135
#: apps/wei/forms/registration.py:114 #: apps/wei/forms/registration.py:114
msgid "Bank" msgid "Bank"
msgstr "Banque" msgstr "Banque"
#: apps/member/forms.py:223 #: apps/member/forms.py:230
msgid "User" msgid "User"
msgstr "Utilisateur" msgstr "Utilisateur"
#: apps/member/forms.py:237 #: apps/member/forms.py:244
msgid "Roles" msgid "Roles"
msgstr "Rôles" msgstr "Rôles"
@ -774,15 +790,19 @@ msgstr "adresse email confirmée"
msgid "registration valid" msgid "registration valid"
msgstr "inscription valide" msgstr "inscription valide"
#: apps/member/models.py:162 apps/member/models.py:163 #: apps/member/models.py:138
msgid "VSS charter read"
msgstr "Charte VSS lue"
#: apps/member/models.py:167 apps/member/models.py:168
msgid "user profile" msgid "user profile"
msgstr "profil utilisateur" msgstr "profil utilisateur"
#: apps/member/models.py:173 #: apps/member/models.py:178
msgid "Activate your Note Kfet account" msgid "Activate your Note Kfet account"
msgstr "Activez votre compte Note Kfet" msgstr "Activez votre compte Note Kfet"
#: apps/member/models.py:204 #: apps/member/models.py:209
#: apps/member/templates/member/includes/club_info.html:55 #: apps/member/templates/member/includes/club_info.html:55
#: apps/member/templates/member/includes/profile_info.html:40 #: apps/member/templates/member/includes/profile_info.html:40
#: apps/registration/templates/registration/future_profile_detail.html:22 #: apps/registration/templates/registration/future_profile_detail.html:22
@ -791,88 +811,88 @@ msgstr "Activez votre compte Note Kfet"
msgid "email" msgid "email"
msgstr "courriel" msgstr "courriel"
#: apps/member/models.py:211 #: apps/member/models.py:216
msgid "parent club" msgid "parent club"
msgstr "club parent" msgstr "club parent"
#: apps/member/models.py:220 #: apps/member/models.py:225
msgid "require memberships" msgid "require memberships"
msgstr "nécessite des adhésions" msgstr "nécessite des adhésions"
#: apps/member/models.py:221 #: apps/member/models.py:226
msgid "Uncheck if this club don't require memberships." msgid "Uncheck if this club don't require memberships."
msgstr "Décochez si ce club n'utilise pas d'adhésions." msgstr "Décochez si ce club n'utilise pas d'adhésions."
#: apps/member/models.py:237 #: apps/member/models.py:242
#: apps/member/templates/member/includes/club_info.html:26 #: apps/member/templates/member/includes/club_info.html:26
msgid "membership duration" msgid "membership duration"
msgstr "durée de l'adhésion" msgstr "durée de l'adhésion"
#: apps/member/models.py:238 #: apps/member/models.py:243
msgid "The longest time (in days) a membership can last (NULL = infinite)." msgid "The longest time (in days) a membership can last (NULL = infinite)."
msgstr "La durée maximale (en jours) d'une adhésion (NULL = infinie)." msgstr "La durée maximale (en jours) d'une adhésion (NULL = infinie)."
#: apps/member/models.py:245 #: apps/member/models.py:250
#: apps/member/templates/member/includes/club_info.html:16 #: apps/member/templates/member/includes/club_info.html:16
msgid "membership start" msgid "membership start"
msgstr "début de l'adhésion" msgstr "début de l'adhésion"
#: apps/member/models.py:246 #: apps/member/models.py:251
msgid "Date from which the members can renew their membership." msgid "Date from which the members can renew their membership."
msgstr "" msgstr ""
"Date à partir de laquelle les adhérents peuvent renouveler leur adhésion." "Date à partir de laquelle les adhérents peuvent renouveler leur adhésion."
#: apps/member/models.py:252 #: apps/member/models.py:257
#: apps/member/templates/member/includes/club_info.html:21 #: apps/member/templates/member/includes/club_info.html:21
msgid "membership end" msgid "membership end"
msgstr "fin de l'adhésion" msgstr "fin de l'adhésion"
#: apps/member/models.py:253 #: apps/member/models.py:258
msgid "Maximal date of a membership, after which members must renew it." msgid "Maximal date of a membership, after which members must renew it."
msgstr "" msgstr ""
"Date maximale d'une fin d'adhésion, après laquelle les adhérents doivent la " "Date maximale d'une fin d'adhésion, après laquelle les adhérents doivent la "
"renouveler." "renouveler."
#: apps/member/models.py:288 apps/member/models.py:313 #: apps/member/models.py:293 apps/member/models.py:318
#: apps/note/models/notes.py:176 #: apps/note/models/notes.py:176
msgid "club" msgid "club"
msgstr "club" msgstr "club"
#: apps/member/models.py:289 #: apps/member/models.py:294
msgid "clubs" msgid "clubs"
msgstr "clubs" msgstr "clubs"
#: apps/member/models.py:324 #: apps/member/models.py:329
msgid "membership starts on" msgid "membership starts on"
msgstr "l'adhésion commence le" msgstr "l'adhésion commence le"
#: apps/member/models.py:328 #: apps/member/models.py:333
msgid "membership ends on" msgid "membership ends on"
msgstr "l'adhésion finit le" msgstr "l'adhésion finit le"
#: apps/member/models.py:430 #: apps/member/models.py:435
#, python-brace-format #, python-brace-format
msgid "The role {role} does not apply to the club {club}." msgid "The role {role} does not apply to the club {club}."
msgstr "Le rôle {role} ne s'applique pas au club {club}." msgstr "Le rôle {role} ne s'applique pas au club {club}."
#: apps/member/models.py:439 apps/member/views.py:712 #: apps/member/models.py:444 apps/member/views.py:712
msgid "User is already a member of the club" msgid "User is already a member of the club"
msgstr "L'utilisateur est déjà membre du club" msgstr "L'utilisateur est déjà membre du club"
#: apps/member/models.py:451 apps/member/views.py:721 #: apps/member/models.py:456 apps/member/views.py:721
msgid "User is not a member of the parent club" msgid "User is not a member of the parent club"
msgstr "L'utilisateur n'est pas membre du club parent" msgstr "L'utilisateur n'est pas membre du club parent"
#: apps/member/models.py:504 #: apps/member/models.py:509
#, python-brace-format #, python-brace-format
msgid "Membership of {user} for the club {club}" msgid "Membership of {user} for the club {club}"
msgstr "Adhésion de {user} pour le club {club}" msgstr "Adhésion de {user} pour le club {club}"
#: apps/member/models.py:507 apps/note/models/transactions.py:389 #: apps/member/models.py:512 apps/note/models/transactions.py:389
msgid "membership" msgid "membership"
msgstr "adhésion" msgstr "adhésion"
#: apps/member/models.py:508 #: apps/member/models.py:513
msgid "memberships" msgid "memberships"
msgstr "adhésions" msgstr "adhésions"
@ -1851,7 +1871,7 @@ msgstr ""
msgid "for club" msgid "for club"
msgstr "s'applique au club" msgstr "s'applique au club"
#: apps/permission/models.py:350 apps/permission/models.py:351 #: apps/permission/models.py:351 apps/permission/models.py:352
msgid "role permissions" msgid "role permissions"
msgstr "permissions par rôles" msgstr "permissions par rôles"
@ -1972,15 +1992,15 @@ msgstr "Tous les droits"
msgid "registration" msgid "registration"
msgstr "inscription" msgstr "inscription"
#: apps/registration/forms.py:40 #: apps/registration/forms.py:41
msgid "This email address is already used." msgid "This email address is already used."
msgstr "Cet email est déjà pris." msgstr "Cet email est déjà pris."
#: apps/registration/forms.py:60 #: apps/registration/forms.py:61
msgid "Register to the WEI" msgid "Register to the WEI"
msgstr "S'inscrire au WEI" msgstr "S'inscrire au WEI"
#: apps/registration/forms.py:62 #: apps/registration/forms.py:63
msgid "" msgid ""
"Check this case if you want to register to the WEI. If you hesitate, you " "Check this case if you want to register to the WEI. If you hesitate, you "
"will be able to register later, after validating your account in the Kfet." "will be able to register later, after validating your account in the Kfet."
@ -1989,15 +2009,15 @@ msgstr ""
"pourrez toujours vous inscrire plus tard, après avoir validé votre compte à " "pourrez toujours vous inscrire plus tard, après avoir validé votre compte à "
"la Kfet." "la Kfet."
#: apps/registration/forms.py:107 #: apps/registration/forms.py:108
msgid "Join BDE Club" msgid "Join BDE Club"
msgstr "Adhérer au club BDE" msgstr "Adhérer au club BDE"
#: apps/registration/forms.py:114 #: apps/registration/forms.py:115
msgid "Join Kfet Club" msgid "Join Kfet Club"
msgstr "Adhérer au club Kfet" msgstr "Adhérer au club Kfet"
#: apps/registration/forms.py:123 #: apps/registration/forms.py:124
msgid "Join BDA Club" msgid "Join BDA Club"
msgstr "Adhérer au club BDA" msgstr "Adhérer au club BDA"
@ -2613,6 +2633,7 @@ msgid "This team doesn't belong to the given bus."
msgstr "Cette équipe n'appartient pas à ce bus." msgstr "Cette équipe n'appartient pas à ce bus."
#: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38 #: apps/wei/forms/surveys/wei2021.py:35 apps/wei/forms/surveys/wei2022.py:38
#: apps/wei/forms/surveys/wei2023.py:38
msgid "Choose a word:" msgid "Choose a word:"
msgstr "Choisissez un mot :" msgstr "Choisissez un mot :"
@ -2722,7 +2743,9 @@ msgstr "nom du contact en cas d'urgence"
#: apps/wei/models.py:240 #: apps/wei/models.py:240
msgid "The emergency contact must not be a WEI participant" msgid "The emergency contact must not be a WEI participant"
msgstr "Le contact en cas d'urgence ne doit pas être une personne qui participe au WEI" msgstr ""
"Le contact en cas d'urgence ne doit pas être une personne qui participe au "
"WEI"
#: apps/wei/models.py:245 apps/wei/templates/wei/weimembership_form.html:73 #: apps/wei/models.py:245 apps/wei/templates/wei/weimembership_form.html:73
msgid "emergency contact phone" msgid "emergency contact phone"