mirror of
				https://gitlab.crans.org/bde/nk20
				synced 2025-10-31 07:49:57 +01:00 
			
		
		
		
	2A+ can select a bus (and fix random bugs)
This commit is contained in:
		| @@ -44,4 +44,4 @@ class BusTeamViewSet(ReadProtectedModelViewSet): | ||||
|     serializer_class = BusTeamSerializer | ||||
|     filter_backends = [SearchFilter, DjangoFilterBackend] | ||||
|     search_fields = ['$name', ] | ||||
|     filterset_fields = ['name', 'bus', 'wei', ] | ||||
|     filterset_fields = ['name', 'bus', 'bus__wei', ] | ||||
|   | ||||
| @@ -3,6 +3,7 @@ | ||||
|  | ||||
| from django import forms | ||||
| from django.contrib.auth.models import User | ||||
| from django.db.models import Q | ||||
| from django.utils.translation import gettext_lazy as _ | ||||
| from note_kfet.inputs import AmountInput, DatePickerInput, Autocomplete, ColorWidget | ||||
|  | ||||
| @@ -40,13 +41,35 @@ class WEIRegistrationForm(forms.ModelForm): | ||||
|         } | ||||
|  | ||||
|  | ||||
| class WEIChooseBusForm(forms.Form): | ||||
|     bus = forms.ModelMultipleChoiceField( | ||||
|         queryset=Bus.objects, | ||||
|         label=_("bus"), | ||||
|         help_text=_("This choice is not definitive. The WEI organizers are free to attribute for you a bus and a team," | ||||
|                     + " in particular if you are a free eletron."), | ||||
|     ) | ||||
|  | ||||
|     team = forms.ModelMultipleChoiceField( | ||||
|         queryset=BusTeam.objects, | ||||
|         label=_("Team"), | ||||
|         required=False, | ||||
|         help_text=_("Leave this field empty if you won't be in a team (staff, bus chief, free electron)"), | ||||
|     ) | ||||
|  | ||||
|     roles = forms.ModelMultipleChoiceField( | ||||
|         queryset=WEIRole.objects.filter(~Q(name="1A")), | ||||
|         label=_("WEI Roles"), | ||||
|         help_text=_("Select the roles that you are interested in."), | ||||
|     ) | ||||
|  | ||||
|  | ||||
| class WEIMembershipForm(forms.ModelForm): | ||||
|     roles = forms.ModelMultipleChoiceField(queryset=WEIRole.objects) | ||||
|     roles = forms.ModelMultipleChoiceField(queryset=WEIRole.objects, label=_("WEI Roles")) | ||||
|  | ||||
|     def clean(self): | ||||
|         cleaned_data = super().clean() | ||||
|         if cleaned_data["team"] is not None and cleaned_data["team"].bus != cleaned_data["bus"]: | ||||
|             self.add_error('bus', _("This team doesn't belong to the given team.")) | ||||
|             self.add_error('bus', _("This team doesn't belong to the given bus.")) | ||||
|         return cleaned_data | ||||
|  | ||||
|     class Meta: | ||||
|   | ||||
| @@ -248,7 +248,7 @@ class WEIRegistration(models.Model): | ||||
|     def is_validated(self): | ||||
|         try: | ||||
|             return self.membership is not None | ||||
|         except KeyError: | ||||
|         except AttributeError: | ||||
|             return False | ||||
|  | ||||
|     def __str__(self): | ||||
|   | ||||
| @@ -6,6 +6,7 @@ from datetime import datetime, date | ||||
| from django.contrib.auth.mixins import LoginRequiredMixin | ||||
| from django.contrib.auth.models import User | ||||
| from django.db.models import Q | ||||
| from django.forms import HiddenInput | ||||
| from django.shortcuts import redirect | ||||
| from django.urls import reverse_lazy | ||||
| from django.views.generic import DetailView, UpdateView, CreateView, RedirectView, TemplateView | ||||
| @@ -18,6 +19,7 @@ from note.tables import HistoryTable | ||||
| from permission.backends import PermissionBackend | ||||
| from permission.views import ProtectQuerysetMixin | ||||
|  | ||||
| from .forms.registration import WEIChooseBusForm | ||||
| from .models import WEIClub, WEIRegistration, WEIMembership, Bus, BusTeam, WEIRole | ||||
| from .forms import WEIForm, WEIRegistrationForm, BusForm, BusTeamForm, WEIMembershipForm, CurrentSurvey | ||||
| from .tables import WEITable, WEIRegistrationTable, BusTable, BusTeamTable, WEIMembershipTable | ||||
| @@ -333,13 +335,13 @@ class WEIRegister1AView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView): | ||||
|         context = super().get_context_data(**kwargs) | ||||
|         context['title'] = _("Register 1A") | ||||
|         context['club'] = WEIClub.objects.get(pk=self.kwargs["wei_pk"]) | ||||
|         if "myself" in self.request.path: | ||||
|             context["form"].fields["user"].disabled = True | ||||
|         return context | ||||
|  | ||||
|     def get_form(self, form_class=None): | ||||
|         form = super().get_form(form_class) | ||||
|         form.fields["user"].initial = self.request.user | ||||
|         if "myself" in self.request.path: | ||||
|             form.fields["user"].disabled = True | ||||
|         del form.fields["first_year"] | ||||
|         del form.fields["caution_check"] | ||||
|         del form.fields["information_json"] | ||||
| @@ -374,16 +376,23 @@ class WEIRegister2AView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView): | ||||
|         context = super().get_context_data(**kwargs) | ||||
|         context['title'] = _("Register 2A+") | ||||
|         context['club'] = WEIClub.objects.get(pk=self.kwargs["wei_pk"]) | ||||
|  | ||||
|         if "myself" in self.request.path: | ||||
|             context["form"].fields["user"].disabled = True | ||||
|  | ||||
|         choose_bus_form = WEIChooseBusForm() | ||||
|         choose_bus_form.fields["bus"].queryset = Bus.objects.filter(wei=context["club"]) | ||||
|         choose_bus_form.fields["team"].queryset = BusTeam.objects.filter(bus__wei=context["club"]) | ||||
|         context['membership_form'] = choose_bus_form | ||||
|  | ||||
|         return context | ||||
|  | ||||
|     def get_form(self, form_class=None): | ||||
|         form = super().get_form(form_class) | ||||
|         form.fields["user"].initial = self.request.user | ||||
|         if "myself" in self.request.path: | ||||
|             form.fields["user"].disabled = True | ||||
|             if self.request.user.profile.soge: | ||||
|                 form.fields["soge_credit"].disabled = True | ||||
|                 form.fields["soge_credit"].help_text = _("You already opened an account in the Société générale.") | ||||
|         if "myself" in self.request.path and self.request.user.profile.soge: | ||||
|             form.fields["soge_credit"].disabled = True | ||||
|             form.fields["soge_credit"].help_text = _("You already opened an account in the Société générale.") | ||||
|  | ||||
|         del form.fields["first_year"] | ||||
|         del form.fields["ml_events_registration"] | ||||
| @@ -396,8 +405,28 @@ class WEIRegister2AView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView): | ||||
|     def form_valid(self, form): | ||||
|         form.instance.wei = WEIClub.objects.get(pk=self.kwargs["wei_pk"]) | ||||
|         form.instance.first_year = False | ||||
|  | ||||
|         choose_bus_form = WEIChooseBusForm(self.request.POST) | ||||
|         if not choose_bus_form.is_valid(): | ||||
|             return self.form_invalid(choose_bus_form) | ||||
|  | ||||
|         information = form.instance.information | ||||
|         information["preferred_bus_pk"] = [bus.pk for bus in choose_bus_form.cleaned_data["bus"]] | ||||
|         information["preferred_bus_name"] = [bus.name for bus in choose_bus_form.cleaned_data["bus"]] | ||||
|         information["preferred_team_pk"] = [team.pk for team in choose_bus_form.cleaned_data["team"]] | ||||
|         information["preferred_team_name"] = [team.name for team in choose_bus_form.cleaned_data["team"]] | ||||
|         information["preferred_roles_pk"] = [role.pk for role in choose_bus_form.cleaned_data["roles"]] | ||||
|         information["preferred_roles_name"] = [role.name for role in choose_bus_form.cleaned_data["roles"]] | ||||
|         form.instance.information = information | ||||
|         form.instance.save() | ||||
|  | ||||
|         return super().form_valid(form) | ||||
|  | ||||
|     def form_invalid(self, form): | ||||
|         print(form.data) | ||||
|         print(form.cleaned_data) | ||||
|         return super().form_invalid(form) | ||||
|  | ||||
|     def get_success_url(self): | ||||
|         self.object.refresh_from_db() | ||||
|         return reverse_lazy("wei:wei_survey", kwargs={"pk": self.object.pk}) | ||||
| @@ -421,16 +450,72 @@ class WEIUpdateRegistrationView(ProtectQuerysetMixin, LoginRequiredMixin, Update | ||||
|     def get_context_data(self, **kwargs): | ||||
|         context = super().get_context_data(**kwargs) | ||||
|         context["club"] = self.object.wei | ||||
|  | ||||
|         if self.object.is_validated: | ||||
|             membership_form = WEIMembershipForm(instance=self.object.membership) | ||||
|             for field_name, field in membership_form.fields.items(): | ||||
|                 if not PermissionBackend.check_perm( | ||||
|                         self.request.user, "wei.change_membership_" + field_name, self.object.membership): | ||||
|                     field.widget = HiddenInput() | ||||
|             context["membership_form"] = membership_form | ||||
|         elif not self.object.first_year and PermissionBackend.check_perm( | ||||
|                 self.request.user, "wei.change_weiregistration_information_json", self.object): | ||||
|             choose_bus_form = WEIChooseBusForm( | ||||
|                 dict( | ||||
|                     bus=Bus.objects.filter(pk__in=self.object.information["preferred_bus_pk"]).all(), | ||||
|                     team=BusTeam.objects.filter(pk__in=self.object.information["preferred_team_pk"]).all(), | ||||
|                     roles=WEIRole.objects.filter(pk__in=self.object.information["preferred_roles_pk"]).all(), | ||||
|                 ) | ||||
|             ) | ||||
|             choose_bus_form.fields["bus"].queryset = Bus.objects.filter(wei=context["club"]) | ||||
|             choose_bus_form.fields["team"].queryset = BusTeam.objects.filter(bus__wei=context["club"]) | ||||
|             context["membership_form"] = choose_bus_form | ||||
|  | ||||
|         if not self.object.soge_credit and self.object.user.profile.soge: | ||||
|             form = context["form"] | ||||
|             form.fields["soge_credit"].disabled = True | ||||
|             form.fields["soge_credit"].help_text = _("You already opened an account in the Société générale.") | ||||
|  | ||||
|         return context | ||||
|  | ||||
|     def get_form(self, form_class=None): | ||||
|         form = super().get_form(form_class) | ||||
|         if "user" in form.fields: | ||||
|             del form.fields["user"] | ||||
|         del form.fields["user"] | ||||
|         if not self.object.first_year: | ||||
|             del form.fields["information_json"] | ||||
|         return form | ||||
|  | ||||
|     def form_valid(self, form): | ||||
|         # If the membership is already validated, then we update the bus and the team (and the roles) | ||||
|         if form.instance.is_validated: | ||||
|             membership_form = WEIMembershipForm(self.request.POST) | ||||
|             if not membership_form.is_valid(): | ||||
|                 return self.form_invalid(membership_form) | ||||
|             membership_form.save() | ||||
|         # If it is not validated and if this is an old member, then we update the choices | ||||
|         elif not form.instance.first_year and PermissionBackend.check_perm( | ||||
|                 self.request.user, "wei.change_weiregistration_information_json", self.object): | ||||
|             choose_bus_form = WEIChooseBusForm(self.request.POST) | ||||
|             if not choose_bus_form.is_valid(): | ||||
|                 return self.form_invalid(choose_bus_form) | ||||
|             information = form.instance.information | ||||
|             information["preferred_bus_pk"] = [bus.pk for bus in choose_bus_form.cleaned_data["bus"]] | ||||
|             information["preferred_bus_name"] = [bus.name for bus in choose_bus_form.cleaned_data["bus"]] | ||||
|             information["preferred_team_pk"] = [team.pk for team in choose_bus_form.cleaned_data["team"]] | ||||
|             information["preferred_team_name"] = [team.name for team in choose_bus_form.cleaned_data["team"]] | ||||
|             information["preferred_roles_pk"] = [role.pk for role in choose_bus_form.cleaned_data["roles"]] | ||||
|             information["preferred_roles_name"] = [role.name for role in choose_bus_form.cleaned_data["roles"]] | ||||
|             form.instance.information = information | ||||
|             form.instance.save() | ||||
|  | ||||
|         return super().form_valid(form) | ||||
|  | ||||
|     def get_success_url(self): | ||||
|         self.object.refresh_from_db() | ||||
|         if self.object.first_year: | ||||
|             survey = CurrentSurvey(self.object) | ||||
|             if not survey.is_complete(): | ||||
|                 return reverse_lazy("wei:wei_survey", kwargs={"pk": self.object.pk}) | ||||
|         return reverse_lazy("wei:wei_detail", kwargs={"pk": self.object.wei.pk}) | ||||
|  | ||||
|  | ||||
| @@ -474,10 +559,21 @@ class WEIValidateRegistrationView(ProtectQuerysetMixin, LoginRequiredMixin, Crea | ||||
|         registration = WEIRegistration.objects.get(pk=self.kwargs["pk"]) | ||||
|         form.fields["bus"].widget.attrs["api_url"] = "/api/wei/bus/?wei=" + str(registration.wei.pk) | ||||
|         if registration.first_year: | ||||
|             # Use the results of the survey to fill initial data | ||||
|             # A first year has no other role than "1A" | ||||
|             del form.fields["roles"] | ||||
|             survey = CurrentSurvey(registration) | ||||
|             if survey.information.valid: | ||||
|                 form.fields["bus"].initial = survey.information.get_selected_bus() | ||||
|         else: | ||||
|             # Use the choice of the member to fill initial data | ||||
|             information = registration.information | ||||
|             if "preferred_bus_pk" in information and len(information["preferred_bus_pk"]) == 1: | ||||
|                 form["bus"].initial = Bus.objects.get(pk=information["preferred_bus_pk"][0]) | ||||
|             if "preferred_team_pk" in information and len(information["preferred_team_pk"]) == 1: | ||||
|                 form["team"].initial = Bus.objects.get(pk=information["preferred_team_pk"][0]) | ||||
|             if "preferred_roles_pk" in information: | ||||
|                 form["roles"].initial = WEIRole.objects.filter(pk__in=information["preferred_roles_pk"]).all() | ||||
|         return form | ||||
|  | ||||
|     def form_valid(self, form): | ||||
|   | ||||
| @@ -8,7 +8,7 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: PACKAGE VERSION\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2020-04-17 17:51+0200\n" | ||||
| "POT-Creation-Date: 2020-04-20 22:34+0200\n" | ||||
| "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | ||||
| "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | ||||
| "Language-Team: LANGUAGE <LL@li.org>\n" | ||||
| @@ -47,7 +47,7 @@ msgstr "" | ||||
| #: apps/member/models.py:99 apps/member/models.py:203 | ||||
| #: apps/note/models/notes.py:188 apps/note/models/transactions.py:24 | ||||
| #: apps/note/models/transactions.py:44 apps/note/models/transactions.py:237 | ||||
| #: apps/wei/models.py:54 templates/member/club_info.html:13 | ||||
| #: apps/wei/models.py:61 templates/member/club_info.html:13 | ||||
| #: templates/member/profile_info.html:14 | ||||
| #: templates/registration/future_profile_detail.html:16 | ||||
| #: templates/wei/weiclub_info.html:13 templates/wei/weimembership_form.html:18 | ||||
| @@ -71,7 +71,7 @@ msgid "activity types" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/activity/models.py:53 apps/note/models/transactions.py:74 | ||||
| #: apps/permission/models.py:103 apps/wei/models.py:60 apps/wei/models.py:95 | ||||
| #: apps/permission/models.py:103 apps/wei/models.py:67 apps/wei/models.py:123 | ||||
| #: templates/activity/activity_detail.html:16 | ||||
| msgid "description" | ||||
| msgstr "" | ||||
| @@ -83,7 +83,8 @@ msgid "type" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/activity/models.py:66 apps/logs/models.py:21 apps/member/models.py:224 | ||||
| #: apps/note/models/notes.py:117 apps/wei/models.py:126 | ||||
| #: apps/note/models/notes.py:117 apps/wei/models.py:154 | ||||
| #: templates/wei/survey.html:16 | ||||
| msgid "user" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -438,7 +439,7 @@ msgstr "" | ||||
| msgid "fee" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/member/models.py:267 apps/member/views.py:500 apps/wei/views.py:356 | ||||
| #: apps/member/models.py:267 apps/member/views.py:500 apps/wei/views.py:592 | ||||
| msgid "User is not a member of the parent club" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -469,7 +470,7 @@ msgstr "" | ||||
|  | ||||
| #: apps/member/views.py:65 templates/member/profile_info.html:45 | ||||
| #: templates/registration/future_profile_detail.html:55 | ||||
| #: templates/wei/weimembership_form.html:87 | ||||
| #: templates/wei/weimembership_form.html:105 | ||||
| msgid "Update Profile" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -481,7 +482,7 @@ msgstr "" | ||||
| msgid "Search user" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/member/views.py:495 apps/wei/views.py:347 | ||||
| #: apps/member/views.py:495 apps/wei/views.py:583 | ||||
| msgid "" | ||||
| "This user don't have enough money to join this club, and can't have a " | ||||
| "negative balance." | ||||
| @@ -496,8 +497,8 @@ msgid "The membership must begin before {:%m-%d-%Y}." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/member/views.py:528 apps/member/views.py:530 apps/member/views.py:532 | ||||
| #: apps/registration/views.py:326 apps/registration/views.py:328 | ||||
| #: apps/registration/views.py:330 | ||||
| #: apps/registration/views.py:327 apps/registration/views.py:329 | ||||
| #: apps/registration/views.py:331 | ||||
| msgid "This field is required." | ||||
| msgstr "" | ||||
|  | ||||
| @@ -732,7 +733,7 @@ msgstr "" | ||||
| #: apps/note/tables.py:146 apps/wei/tables.py:42 apps/wei/tables.py:43 | ||||
| #: templates/member/club_info.html:60 templates/note/conso_form.html:121 | ||||
| #: templates/wei/bus_tables.html:15 templates/wei/busteam_tables.html:15 | ||||
| #: templates/wei/busteam_tables.html:33 templates/wei/weiclub_info.html:61 | ||||
| #: templates/wei/busteam_tables.html:33 templates/wei/weiclub_info.html:66 | ||||
| msgid "Edit" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -804,31 +805,31 @@ msgstr "" | ||||
| msgid "Join Kfet Club" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/registration/views.py:115 | ||||
| #: apps/registration/views.py:116 | ||||
| msgid "Email validation" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/registration/views.py:161 | ||||
| #: apps/registration/views.py:162 | ||||
| msgid "Email validation unsuccessful" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/registration/views.py:172 | ||||
| #: apps/registration/views.py:173 | ||||
| msgid "Email validation email sent" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/registration/views.py:225 | ||||
| #: apps/registration/views.py:226 | ||||
| msgid "Unregistered users" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/registration/views.py:292 | ||||
| #: apps/registration/views.py:293 | ||||
| msgid "You must join the BDE." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/registration/views.py:314 | ||||
| #: apps/registration/views.py:315 | ||||
| msgid "You must join BDE club before joining Kfet club." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/registration/views.py:319 | ||||
| #: apps/registration/views.py:320 | ||||
| msgid "" | ||||
| "The entered amount is not enough for the memberships, should be at least {}" | ||||
| msgstr "" | ||||
| @@ -844,7 +845,7 @@ msgstr "" | ||||
| #: templates/member/add_members.html:14 templates/member/club_form.html:9 | ||||
| #: templates/treasury/invoice_form.html:46 templates/wei/bus_form.html:13 | ||||
| #: templates/wei/busteam_form.html:13 templates/wei/weiclub_form.html:15 | ||||
| #: templates/wei/weiregistration_form.html:9 | ||||
| #: templates/wei/weiregistration_form.html:14 | ||||
| msgid "Submit" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -997,11 +998,35 @@ msgstr "" | ||||
| msgid "Remove" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/apps.py:10 apps/wei/models.py:37 apps/wei/models.py:38 | ||||
| #: apps/wei/models.py:49 apps/wei/models.py:133 templates/base.html:115 | ||||
| #: apps/wei/apps.py:10 apps/wei/models.py:44 apps/wei/models.py:45 | ||||
| #: apps/wei/models.py:56 apps/wei/models.py:161 templates/base.html:115 | ||||
| msgid "WEI" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/forms/registration.py:47 | ||||
| msgid "" | ||||
| "This choice is not definitive. The WEI organizers are free to attribute for " | ||||
| "you a bus and a team, in particular if you are a free eletron." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/forms/registration.py:54 | ||||
| msgid "" | ||||
| "Leave this field empty if you won't be in a team (staff, bus chief, free " | ||||
| "electron)" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/forms/registration.py:59 | ||||
| msgid "Select the roles that you are interested in." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/forms/registration.py:65 apps/wei/forms/registration.py:75 | ||||
| msgid "This team doesn't belong to the given bus." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/management/commands/wei_algorithm.py:11 | ||||
| msgid "Attribute to each first year member a bus for the WEI" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:19 templates/wei/weiclub_info.html:23 | ||||
| msgid "year" | ||||
| msgstr "" | ||||
| @@ -1014,139 +1039,147 @@ msgstr "" | ||||
| msgid "date end" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:67 | ||||
| #: apps/wei/models.py:72 | ||||
| msgid "survey information" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:73 | ||||
| msgid "Information about the survey for new members, encoded in JSON" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:95 | ||||
| msgid "Bus" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:68 templates/wei/weiclub_tables.html:66 | ||||
| #: apps/wei/models.py:96 templates/wei/weiclub_tables.html:79 | ||||
| msgid "Buses" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:80 apps/wei/models.py:234 | ||||
| #: apps/wei/models.py:108 apps/wei/models.py:269 | ||||
| msgid "bus" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:88 | ||||
| #: apps/wei/models.py:116 | ||||
| msgid "color" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:89 | ||||
| #: apps/wei/models.py:117 | ||||
| msgid "The color of the T-Shirt, stored with its number equivalent" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:103 | ||||
| #: apps/wei/models.py:131 | ||||
| msgid "Bus team" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:104 | ||||
| #: apps/wei/models.py:132 | ||||
| msgid "Bus teams" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:113 | ||||
| #: apps/wei/models.py:141 | ||||
| msgid "WEI Role" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:114 | ||||
| #: apps/wei/models.py:142 | ||||
| msgid "WEI Roles" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:138 | ||||
| #: apps/wei/models.py:166 | ||||
| msgid "Credit from Société générale" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:143 | ||||
| #: apps/wei/models.py:171 | ||||
| msgid "Caution check given" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:147 templates/wei/weimembership_form.html:56 | ||||
| #: apps/wei/models.py:175 templates/wei/weimembership_form.html:56 | ||||
| msgid "birth date" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:153 | ||||
| #: apps/wei/models.py:181 | ||||
| msgid "Male" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:154 | ||||
| #: apps/wei/models.py:182 | ||||
| msgid "Female" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:155 | ||||
| #: apps/wei/models.py:183 | ||||
| msgid "Non binary" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:157 templates/wei/weimembership_form.html:53 | ||||
| #: apps/wei/models.py:185 templates/wei/weimembership_form.html:53 | ||||
| msgid "gender" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:163 templates/wei/weimembership_form.html:59 | ||||
| #: apps/wei/models.py:191 templates/wei/weimembership_form.html:59 | ||||
| msgid "health issues" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:168 templates/wei/weimembership_form.html:62 | ||||
| #: apps/wei/models.py:196 templates/wei/weimembership_form.html:62 | ||||
| msgid "emergency contact name" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:173 templates/wei/weimembership_form.html:65 | ||||
| #: apps/wei/models.py:201 templates/wei/weimembership_form.html:65 | ||||
| msgid "emergency contact phone" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:178 templates/wei/weimembership_form.html:68 | ||||
| #: apps/wei/models.py:206 templates/wei/weimembership_form.html:68 | ||||
| msgid "" | ||||
| "Register on the mailing list to stay informed of the events of the campus (1 " | ||||
| "mail/week)" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:183 templates/wei/weimembership_form.html:71 | ||||
| #: apps/wei/models.py:211 templates/wei/weimembership_form.html:71 | ||||
| msgid "" | ||||
| "Register on the mailing list to stay informed of the sport events of the " | ||||
| "campus (1 mail/week)" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:188 templates/wei/weimembership_form.html:74 | ||||
| #: apps/wei/models.py:216 templates/wei/weimembership_form.html:74 | ||||
| msgid "" | ||||
| "Register on the mailing list to stay informed of the art events of the " | ||||
| "campus (1 mail/week)" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:193 templates/wei/weimembership_form.html:50 | ||||
| #: apps/wei/models.py:221 templates/wei/weimembership_form.html:50 | ||||
| msgid "first year" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:194 | ||||
| #: apps/wei/models.py:222 | ||||
| msgid "Tells if the user is new in the school." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:199 | ||||
| #: apps/wei/models.py:227 | ||||
| msgid "registration information" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:200 | ||||
| #: apps/wei/models.py:228 | ||||
| msgid "" | ||||
| "Information about the registration (buses for old members, survey fot the " | ||||
| "new members), encoded in JSON" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:224 | ||||
| #: apps/wei/models.py:259 | ||||
| msgid "WEI User" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:225 | ||||
| #: apps/wei/models.py:260 | ||||
| msgid "WEI Users" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:244 | ||||
| #: apps/wei/models.py:279 | ||||
| msgid "team" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:254 | ||||
| #: apps/wei/models.py:289 | ||||
| msgid "WEI registration" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:258 | ||||
| #: apps/wei/models.py:293 | ||||
| msgid "WEI membership" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/models.py:259 | ||||
| #: apps/wei/models.py:294 | ||||
| msgid "WEI memberships" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -1159,10 +1192,28 @@ msgstr "" | ||||
| msgid "Teams" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/views.py:351 | ||||
| #: apps/wei/views.py:336 templates/wei/weiclub_info.html:62 | ||||
| msgid "Register 1A" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/views.py:377 templates/wei/weiclub_info.html:63 | ||||
| msgid "Register 2A+" | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/views.py:394 | ||||
| msgid "You already opened an account in the Société générale." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/views.py:587 | ||||
| msgid "This user didn't give her/his caution check." | ||||
| msgstr "" | ||||
|  | ||||
| #: apps/wei/views.py:655 apps/wei/views.py:675 apps/wei/views.py:685 | ||||
| #: templates/wei/survey.html:12 templates/wei/survey_closed.html:12 | ||||
| #: templates/wei/survey_end.html:12 | ||||
| msgid "Survey WEI" | ||||
| msgstr "" | ||||
|  | ||||
| #: note_kfet/settings/__init__.py:63 | ||||
| msgid "" | ||||
| "The Central Authentication Service grants you access to most of our websites " | ||||
| @@ -1357,12 +1408,12 @@ msgstr "" | ||||
| msgid "Club listing" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/member/club_tables.html:7 templates/wei/weiclub_tables.html:79 | ||||
| #: templates/member/club_tables.html:7 templates/wei/weiclub_tables.html:92 | ||||
| msgid "Member of the Club" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/member/club_tables.html:20 templates/member/profile_tables.html:28 | ||||
| #: templates/wei/weiclub_tables.html:92 | ||||
| #: templates/wei/weiclub_tables.html:105 | ||||
| msgid "Transaction history" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -1538,8 +1589,8 @@ msgid "Validate account" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/registration/future_profile_detail.html:71 | ||||
| #: templates/wei/weimembership_form.html:97 | ||||
| #: templates/wei/weimembership_form.html:147 | ||||
| #: templates/wei/weimembership_form.html:115 | ||||
| #: templates/wei/weimembership_form.html:173 | ||||
| msgid "Validate registration" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -1763,6 +1814,22 @@ msgstr "" | ||||
| msgid "Members" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/survey.html:24 | ||||
| msgid "Next" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/survey_closed.html:16 | ||||
| msgid "The inscription for this WEI are now closed." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/survey_closed.html:22 | ||||
| msgid "Return to WEI detail" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/survey_end.html:16 | ||||
| msgid "The survey is now ended. Your answers have been saved." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:31 | ||||
| msgid "WEI fee / including BDE and Kfet fee (paid students)" | ||||
| msgstr "" | ||||
| @@ -1772,14 +1839,14 @@ msgid "WEI fee / including BDE and Kfet fee (unpaid students)" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:58 | ||||
| msgid "Register 2A+" | ||||
| msgid "WEI list" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:64 | ||||
| #: templates/wei/weiclub_info.html:69 | ||||
| msgid "Add bus" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:68 | ||||
| #: templates/wei/weiclub_info.html:73 | ||||
| msgid "View WEI" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -1795,7 +1862,19 @@ msgstr "" | ||||
| msgid "WEI listing" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:107 | ||||
| #: templates/wei/weiclub_tables.html:63 | ||||
| msgid "Register to the WEI! – 1A" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:65 | ||||
| msgid "Register to the WEI! – 2A+" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:67 | ||||
| msgid "Update my registration" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:120 | ||||
| msgid "Unvalidated registrations" | ||||
| msgstr "" | ||||
|  | ||||
| @@ -1808,52 +1887,84 @@ msgid "Payment from Société générale" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:81 | ||||
| msgid "Suggested bus from the survey:" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:86 | ||||
| msgid "Raw survey information" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:96 | ||||
| msgid "The algorithm didn't run." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:99 | ||||
| msgid "caution check given" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:88 | ||||
| #: templates/wei/weimembership_form.html:106 | ||||
| msgid "Update registration" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:101 | ||||
| msgid "" | ||||
| "\n" | ||||
| "                        The WEI will be paid by Société générale. The " | ||||
| "membership will be created even if the bank didn't pay the BDE yet.\n" | ||||
| "                        The membership transaction will be created but will " | ||||
| "be invalid. You will have to validate it once the bank\n" | ||||
| "                        validated the creation of the account, or to change " | ||||
| "the payment method.\n" | ||||
| "                    " | ||||
| #: templates/wei/weimembership_form.html:119 | ||||
| msgid "The registration is already validated and can't be unvalidated." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:111 | ||||
| #, python-format | ||||
| #: templates/wei/weimembership_form.html:120 | ||||
| msgid "The user joined the bus" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:121 | ||||
| msgid "in the team" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:122 | ||||
| msgid "in no team (staff)" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:122 | ||||
| msgid "with the following roles:" | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:127 | ||||
| msgid "" | ||||
| "\n" | ||||
| "                            The note don't have enough money (%(balance)s, " | ||||
| "%(pretty_fee)s required). The registration may fail.\n" | ||||
| "                            The WEI will be paid by Société générale. The " | ||||
| "membership will be created even if the bank didn't pay the BDE yet.\n" | ||||
| "                            The membership transaction will be created but " | ||||
| "will be invalid. You will have to validate it once the bank\n" | ||||
| "                            validated the creation of the account, or to " | ||||
| "change the payment method.\n" | ||||
| "                        " | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:118 | ||||
| msgid "The note has enough money." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:125 | ||||
| msgid "The user didn't give her/his caution check." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:133 | ||||
| #: templates/wei/weimembership_form.html:137 | ||||
| #, python-format | ||||
| msgid "" | ||||
| "\n" | ||||
| "                        This user is not a member of the Kfet club. Please " | ||||
| "adhere\n" | ||||
| "                        <a href=\"%(future_user_detail)s\">here if he/she is " | ||||
| "in her/his first year</a>\n" | ||||
| "                        or <a href=\"%(club_detail)s\">here if he/she was an " | ||||
| "old member</a> before you validate\n" | ||||
| "                        the registration of the WEI.\n" | ||||
| "                    " | ||||
| "                                The note don't have enough money " | ||||
| "(%(balance)s, %(pretty_fee)s required). The registration may fail.\n" | ||||
| "                            " | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:144 | ||||
| msgid "The note has enough money, the registration is possible." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:151 | ||||
| msgid "The user didn't give her/his caution check." | ||||
| msgstr "" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:159 | ||||
| #, python-format | ||||
| msgid "" | ||||
| "\n" | ||||
| "                            This user is not a member of the Kfet club. " | ||||
| "Please adhere\n" | ||||
| "                            <a href=\"%(future_user_detail)s\">here if he/" | ||||
| "she is in her/his first year</a>\n" | ||||
| "                            or <a href=\"%(club_detail)s\">here if he/she " | ||||
| "was an old member</a> before you validate\n" | ||||
| "                            the registration of the WEI.\n" | ||||
| "                        " | ||||
| msgstr "" | ||||
|   | ||||
| @@ -3,7 +3,7 @@ msgid "" | ||||
| msgstr "" | ||||
| "Project-Id-Version: PACKAGE VERSION\n" | ||||
| "Report-Msgid-Bugs-To: \n" | ||||
| "POT-Creation-Date: 2020-04-17 17:51+0200\n" | ||||
| "POT-Creation-Date: 2020-04-20 22:34+0200\n" | ||||
| "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | ||||
| "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | ||||
| "Language-Team: LANGUAGE <LL@li.org>\n" | ||||
| @@ -43,7 +43,7 @@ msgstr "Vous ne pouvez pas inviter plus de 3 personnes à cette activité." | ||||
| #: apps/member/models.py:99 apps/member/models.py:203 | ||||
| #: apps/note/models/notes.py:188 apps/note/models/transactions.py:24 | ||||
| #: apps/note/models/transactions.py:44 apps/note/models/transactions.py:237 | ||||
| #: apps/wei/models.py:54 templates/member/club_info.html:13 | ||||
| #: apps/wei/models.py:61 templates/member/club_info.html:13 | ||||
| #: templates/member/profile_info.html:14 | ||||
| #: templates/registration/future_profile_detail.html:16 | ||||
| #: templates/wei/weiclub_info.html:13 templates/wei/weimembership_form.html:18 | ||||
| @@ -67,7 +67,7 @@ msgid "activity types" | ||||
| msgstr "types d'activité" | ||||
|  | ||||
| #: apps/activity/models.py:53 apps/note/models/transactions.py:74 | ||||
| #: apps/permission/models.py:103 apps/wei/models.py:60 apps/wei/models.py:95 | ||||
| #: apps/permission/models.py:103 apps/wei/models.py:67 apps/wei/models.py:123 | ||||
| #: templates/activity/activity_detail.html:16 | ||||
| msgid "description" | ||||
| msgstr "description" | ||||
| @@ -79,7 +79,8 @@ msgid "type" | ||||
| msgstr "type" | ||||
|  | ||||
| #: apps/activity/models.py:66 apps/logs/models.py:21 apps/member/models.py:224 | ||||
| #: apps/note/models/notes.py:117 apps/wei/models.py:126 | ||||
| #: apps/note/models/notes.py:117 apps/wei/models.py:154 | ||||
| #: templates/wei/survey.html:16 | ||||
| msgid "user" | ||||
| msgstr "utilisateur" | ||||
|  | ||||
| @@ -438,7 +439,7 @@ msgstr "l'adhésion finit le" | ||||
| msgid "fee" | ||||
| msgstr "cotisation" | ||||
|  | ||||
| #: apps/member/models.py:267 apps/member/views.py:500 apps/wei/views.py:356 | ||||
| #: apps/member/models.py:267 apps/member/views.py:500 apps/wei/views.py:592 | ||||
| msgid "User is not a member of the parent club" | ||||
| msgstr "L'utilisateur n'est pas membre du club parent" | ||||
|  | ||||
| @@ -469,7 +470,7 @@ msgstr "Cette adresse doit être valide." | ||||
|  | ||||
| #: apps/member/views.py:65 templates/member/profile_info.html:45 | ||||
| #: templates/registration/future_profile_detail.html:55 | ||||
| #: templates/wei/weimembership_form.html:87 | ||||
| #: templates/wei/weimembership_form.html:105 | ||||
| msgid "Update Profile" | ||||
| msgstr "Modifier le profil" | ||||
|  | ||||
| @@ -481,7 +482,7 @@ msgstr "Un alias avec un nom similaire existe déjà." | ||||
| msgid "Search user" | ||||
| msgstr "Chercher un utilisateur" | ||||
|  | ||||
| #: apps/member/views.py:495 apps/wei/views.py:347 | ||||
| #: apps/member/views.py:495 apps/wei/views.py:583 | ||||
| msgid "" | ||||
| "This user don't have enough money to join this club, and can't have a " | ||||
| "negative balance." | ||||
| @@ -498,8 +499,8 @@ msgid "The membership must begin before {:%m-%d-%Y}." | ||||
| msgstr "L'adhésion doit commencer avant le {:%d/%m/%Y}." | ||||
|  | ||||
| #: apps/member/views.py:528 apps/member/views.py:530 apps/member/views.py:532 | ||||
| #: apps/registration/views.py:326 apps/registration/views.py:328 | ||||
| #: apps/registration/views.py:330 | ||||
| #: apps/registration/views.py:327 apps/registration/views.py:329 | ||||
| #: apps/registration/views.py:331 | ||||
| msgid "This field is required." | ||||
| msgstr "Ce champ est requis." | ||||
|  | ||||
| @@ -735,7 +736,7 @@ msgstr "Supprimer" | ||||
| #: apps/note/tables.py:146 apps/wei/tables.py:42 apps/wei/tables.py:43 | ||||
| #: templates/member/club_info.html:60 templates/note/conso_form.html:121 | ||||
| #: templates/wei/bus_tables.html:15 templates/wei/busteam_tables.html:15 | ||||
| #: templates/wei/busteam_tables.html:33 templates/wei/weiclub_info.html:61 | ||||
| #: templates/wei/busteam_tables.html:33 templates/wei/weiclub_info.html:66 | ||||
| msgid "Edit" | ||||
| msgstr "Éditer" | ||||
|  | ||||
| @@ -799,7 +800,8 @@ msgid "" | ||||
| "will be able to register later, after validating your account in the Kfet." | ||||
| msgstr "" | ||||
| "Cochez cette case si vous voulez vous inscrire au WEI. Si vous hésitez, vous " | ||||
| "pourrez toujours vous inscrire plus tard, après avoir validé votre compte à la Kfet." | ||||
| "pourrez toujours vous inscrire plus tard, après avoir validé votre compte à " | ||||
| "la Kfet." | ||||
|  | ||||
| #: apps/registration/forms.py:79 | ||||
| msgid "Join BDE Club" | ||||
| @@ -809,31 +811,31 @@ msgstr "Adhérer au club BDE" | ||||
| msgid "Join Kfet Club" | ||||
| msgstr "Adhérer au club Kfet" | ||||
|  | ||||
| #: apps/registration/views.py:115 | ||||
| #: apps/registration/views.py:116 | ||||
| msgid "Email validation" | ||||
| msgstr "Validation de l'adresse mail" | ||||
|  | ||||
| #: apps/registration/views.py:161 | ||||
| #: apps/registration/views.py:162 | ||||
| msgid "Email validation unsuccessful" | ||||
| msgstr " La validation de l'adresse mail a échoué" | ||||
|  | ||||
| #: apps/registration/views.py:172 | ||||
| #: apps/registration/views.py:173 | ||||
| msgid "Email validation email sent" | ||||
| msgstr "L'email de vérification de l'adresse email a bien été envoyé." | ||||
|  | ||||
| #: apps/registration/views.py:225 | ||||
| #: apps/registration/views.py:226 | ||||
| msgid "Unregistered users" | ||||
| msgstr "Utilisateurs en attente d'inscription" | ||||
|  | ||||
| #: apps/registration/views.py:292 | ||||
| #: apps/registration/views.py:293 | ||||
| msgid "You must join the BDE." | ||||
| msgstr "Vous devez adhérer au BDE." | ||||
|  | ||||
| #: apps/registration/views.py:314 | ||||
| #: apps/registration/views.py:315 | ||||
| msgid "You must join BDE club before joining Kfet club." | ||||
| msgstr "Vous devez adhérer au club BDE avant d'adhérer au club Kfet." | ||||
|  | ||||
| #: apps/registration/views.py:319 | ||||
| #: apps/registration/views.py:320 | ||||
| msgid "" | ||||
| "The entered amount is not enough for the memberships, should be at least {}" | ||||
| msgstr "" | ||||
| @@ -851,7 +853,7 @@ msgstr "Trésorerie" | ||||
| #: templates/member/add_members.html:14 templates/member/club_form.html:9 | ||||
| #: templates/treasury/invoice_form.html:46 templates/wei/bus_form.html:13 | ||||
| #: templates/wei/busteam_form.html:13 templates/wei/weiclub_form.html:15 | ||||
| #: templates/wei/weiregistration_form.html:9 | ||||
| #: templates/wei/weiregistration_form.html:14 | ||||
| msgid "Submit" | ||||
| msgstr "Envoyer" | ||||
|  | ||||
| @@ -1004,11 +1006,39 @@ msgstr "Ajouter" | ||||
| msgid "Remove" | ||||
| msgstr "supprimer" | ||||
|  | ||||
| #: apps/wei/apps.py:10 apps/wei/models.py:37 apps/wei/models.py:38 | ||||
| #: apps/wei/models.py:49 apps/wei/models.py:133 templates/base.html:115 | ||||
| #: apps/wei/apps.py:10 apps/wei/models.py:44 apps/wei/models.py:45 | ||||
| #: apps/wei/models.py:56 apps/wei/models.py:161 templates/base.html:115 | ||||
| msgid "WEI" | ||||
| msgstr "WEI" | ||||
|  | ||||
| #: apps/wei/forms/registration.py:47 | ||||
| msgid "" | ||||
| "This choice is not definitive. The WEI organizers are free to attribute for " | ||||
| "you a bus and a team, in particular if you are a free eletron." | ||||
| msgstr "" | ||||
| "Ce choix n'est pas définitif. Les organisateurs du WEI sont libres de vous " | ||||
| "attribuer un bus et une équipe, en particulier si vous êtes un électron libre." | ||||
|  | ||||
| #: apps/wei/forms/registration.py:54 | ||||
| msgid "" | ||||
| "Leave this field empty if you won't be in a team (staff, bus chief, free " | ||||
| "electron)" | ||||
| msgstr "" | ||||
| "Laissez ce champ vide si vous ne serez pas dans une équipe (staff, chef " | ||||
| "de bus ou électron libre)" | ||||
|  | ||||
| #: apps/wei/forms/registration.py:59 | ||||
| msgid "Select the roles that you are interested in." | ||||
| msgstr "Sélectionnez les rôles qui vous intéressent." | ||||
|  | ||||
| #: apps/wei/forms/registration.py:65 apps/wei/forms/registration.py:75 | ||||
| msgid "This team doesn't belong to the given bus." | ||||
| msgstr "Cette équipe n'appartient pas à ce bus." | ||||
|  | ||||
| #: apps/wei/management/commands/wei_algorithm.py:11 | ||||
| msgid "Attribute to each first year member a bus for the WEI" | ||||
| msgstr "Attribuer à chaque première année un bus pour le WEI" | ||||
|  | ||||
| #: apps/wei/models.py:19 templates/wei/weiclub_info.html:23 | ||||
| msgid "year" | ||||
| msgstr "année" | ||||
| @@ -1021,83 +1051,92 @@ msgstr "début" | ||||
| msgid "date end" | ||||
| msgstr "fin" | ||||
|  | ||||
| #: apps/wei/models.py:67 | ||||
| #: apps/wei/models.py:72 | ||||
| msgid "survey information" | ||||
| msgstr "informations sur le questionnaire" | ||||
|  | ||||
| #: apps/wei/models.py:73 | ||||
| msgid "Information about the survey for new members, encoded in JSON" | ||||
| msgstr "Informations sur le sondage pour les nouveaux membres, encodées en JSON" | ||||
|  | ||||
| #: apps/wei/models.py:95 | ||||
| msgid "Bus" | ||||
| msgstr "Bus" | ||||
|  | ||||
| #: apps/wei/models.py:68 templates/wei/weiclub_tables.html:66 | ||||
| #: apps/wei/models.py:96 templates/wei/weiclub_tables.html:79 | ||||
| msgid "Buses" | ||||
| msgstr "Bus" | ||||
|  | ||||
| #: apps/wei/models.py:80 apps/wei/models.py:234 | ||||
| #: apps/wei/models.py:108 apps/wei/models.py:269 | ||||
| msgid "bus" | ||||
| msgstr "Bus" | ||||
|  | ||||
| #: apps/wei/models.py:88 | ||||
| #: apps/wei/models.py:116 | ||||
| msgid "color" | ||||
| msgstr "couleur" | ||||
|  | ||||
| #: apps/wei/models.py:89 | ||||
| #: apps/wei/models.py:117 | ||||
| msgid "The color of the T-Shirt, stored with its number equivalent" | ||||
| msgstr "La couleur du T-Shirt, stocké sous la forme de son équivalent numérique" | ||||
| msgstr "" | ||||
| "La couleur du T-Shirt, stocké sous la forme de son équivalent numérique" | ||||
|  | ||||
| #: apps/wei/models.py:103 | ||||
| #: apps/wei/models.py:131 | ||||
| msgid "Bus team" | ||||
| msgstr "Équipe de bus" | ||||
|  | ||||
| #: apps/wei/models.py:104 | ||||
| #: apps/wei/models.py:132 | ||||
| msgid "Bus teams" | ||||
| msgstr "" | ||||
| msgstr "Équipes de bus" | ||||
|  | ||||
| #: apps/wei/models.py:113 | ||||
| #: apps/wei/models.py:141 | ||||
| msgid "WEI Role" | ||||
| msgstr "Rôle au WEI" | ||||
|  | ||||
| #: apps/wei/models.py:114 | ||||
| #: apps/wei/models.py:142 | ||||
| msgid "WEI Roles" | ||||
| msgstr "Rôles au WEI" | ||||
|  | ||||
| #: apps/wei/models.py:138 | ||||
| #: apps/wei/models.py:166 | ||||
| msgid "Credit from Société générale" | ||||
| msgstr "Crédit de la Société générale" | ||||
|  | ||||
| #: apps/wei/models.py:143 | ||||
| #: apps/wei/models.py:171 | ||||
| msgid "Caution check given" | ||||
| msgstr "Chèque de caution donné" | ||||
|  | ||||
| #: apps/wei/models.py:147 templates/wei/weimembership_form.html:56 | ||||
| #: apps/wei/models.py:175 templates/wei/weimembership_form.html:56 | ||||
| msgid "birth date" | ||||
| msgstr "date de naissance" | ||||
|  | ||||
| #: apps/wei/models.py:153 | ||||
| #: apps/wei/models.py:181 | ||||
| msgid "Male" | ||||
| msgstr "Homme" | ||||
|  | ||||
| #: apps/wei/models.py:154 | ||||
| #: apps/wei/models.py:182 | ||||
| msgid "Female" | ||||
| msgstr "Femme" | ||||
|  | ||||
| #: apps/wei/models.py:155 | ||||
| #: apps/wei/models.py:183 | ||||
| msgid "Non binary" | ||||
| msgstr "Non-binaire" | ||||
|  | ||||
| #: apps/wei/models.py:157 templates/wei/weimembership_form.html:53 | ||||
| #: apps/wei/models.py:185 templates/wei/weimembership_form.html:53 | ||||
| msgid "gender" | ||||
| msgstr "genre" | ||||
|  | ||||
| #: apps/wei/models.py:163 templates/wei/weimembership_form.html:59 | ||||
| #: apps/wei/models.py:191 templates/wei/weimembership_form.html:59 | ||||
| msgid "health issues" | ||||
| msgstr "problèmes de santé" | ||||
|  | ||||
| #: apps/wei/models.py:168 templates/wei/weimembership_form.html:62 | ||||
| #: apps/wei/models.py:196 templates/wei/weimembership_form.html:62 | ||||
| msgid "emergency contact name" | ||||
| msgstr "Nom du contact en cas d'urgence" | ||||
|  | ||||
| #: apps/wei/models.py:173 templates/wei/weimembership_form.html:65 | ||||
| #: apps/wei/models.py:201 templates/wei/weimembership_form.html:65 | ||||
| msgid "emergency contact phone" | ||||
| msgstr "Téléphone du contact en cas d'urgence" | ||||
|  | ||||
| #: apps/wei/models.py:178 templates/wei/weimembership_form.html:68 | ||||
| #: apps/wei/models.py:206 templates/wei/weimembership_form.html:68 | ||||
| msgid "" | ||||
| "Register on the mailing list to stay informed of the events of the campus (1 " | ||||
| "mail/week)" | ||||
| @@ -1105,7 +1144,7 @@ msgstr "" | ||||
| "S'inscrire sur la liste de diffusion pour rester informé des événements sur " | ||||
| "le campus (1 mail par semaine)" | ||||
|  | ||||
| #: apps/wei/models.py:183 templates/wei/weimembership_form.html:71 | ||||
| #: apps/wei/models.py:211 templates/wei/weimembership_form.html:71 | ||||
| msgid "" | ||||
| "Register on the mailing list to stay informed of the sport events of the " | ||||
| "campus (1 mail/week)" | ||||
| @@ -1113,7 +1152,7 @@ msgstr "" | ||||
| "S'inscrire sur la liste de diffusion pour rester informé des actualités " | ||||
| "sportives sur le campus (1 mail par semaine)" | ||||
|  | ||||
| #: apps/wei/models.py:188 templates/wei/weimembership_form.html:74 | ||||
| #: apps/wei/models.py:216 templates/wei/weimembership_form.html:74 | ||||
| msgid "" | ||||
| "Register on the mailing list to stay informed of the art events of the " | ||||
| "campus (1 mail/week)" | ||||
| @@ -1121,47 +1160,51 @@ msgstr "" | ||||
| "S'inscrire sur la liste de diffusion pour rester informé des actualités " | ||||
| "artistiques sur le campus (1 mail par semaine)" | ||||
|  | ||||
| #: apps/wei/models.py:193 templates/wei/weimembership_form.html:50 | ||||
| #: apps/wei/models.py:221 templates/wei/weimembership_form.html:50 | ||||
| msgid "first year" | ||||
| msgstr "première année" | ||||
|  | ||||
| #: apps/wei/models.py:194 | ||||
| #: apps/wei/models.py:222 | ||||
| msgid "Tells if the user is new in the school." | ||||
| msgstr "Indique si l'utilisateur est nouveau dans l'école." | ||||
|  | ||||
| #: apps/wei/models.py:199 | ||||
| #: apps/wei/models.py:227 | ||||
| msgid "registration information" | ||||
| msgstr "informations sur l'inscription" | ||||
|  | ||||
| #: apps/wei/models.py:200 | ||||
| #: apps/wei/models.py:228 | ||||
| msgid "" | ||||
| "Information about the registration (buses for old members, survey fot the " | ||||
| "new members), encoded in JSON" | ||||
| msgstr "" | ||||
| "Informations sur l'inscription (bus pour les 2A+, questionnaire pour les 1A)," | ||||
| " encodées en JSON" | ||||
| "Informations sur l'inscription (bus pour les 2A+, questionnaire pour les " | ||||
| "1A), encodées en JSON" | ||||
|  | ||||
| #: apps/wei/models.py:224 | ||||
| #: apps/wei/models.py:259 | ||||
| msgid "WEI User" | ||||
| msgstr "Participant au WEI" | ||||
|  | ||||
| #: apps/wei/models.py:225 | ||||
| #: apps/wei/models.py:260 | ||||
| msgid "WEI Users" | ||||
| msgstr "Participants au WEI" | ||||
|  | ||||
| #: apps/wei/models.py:244 | ||||
| #: apps/wei/models.py:279 | ||||
| msgid "team" | ||||
| msgstr "équipe" | ||||
|  | ||||
| #: apps/wei/models.py:254 | ||||
| #: apps/wei/models.py:279 | ||||
| msgid "Team" | ||||
| msgstr "Équipe" | ||||
|  | ||||
| #: apps/wei/models.py:289 | ||||
| msgid "WEI registration" | ||||
| msgstr "inscription au WEI" | ||||
|  | ||||
| #: apps/wei/models.py:258 | ||||
| #: apps/wei/models.py:293 | ||||
| msgid "WEI membership" | ||||
| msgstr "adhésion au WEI" | ||||
|  | ||||
| #: apps/wei/models.py:259 | ||||
| #: apps/wei/models.py:294 | ||||
| msgid "WEI memberships" | ||||
| msgstr "adhésions au WEI" | ||||
|  | ||||
| @@ -1174,10 +1217,28 @@ msgstr "Valider" | ||||
| msgid "Teams" | ||||
| msgstr "Équipes" | ||||
|  | ||||
| #: apps/wei/views.py:351 | ||||
| #: apps/wei/views.py:336 templates/wei/weiclub_info.html:62 | ||||
| msgid "Register 1A" | ||||
| msgstr "Inscrire un 1A" | ||||
|  | ||||
| #: apps/wei/views.py:377 templates/wei/weiclub_info.html:63 | ||||
| msgid "Register 2A+" | ||||
| msgstr "Inscrire un 2A+" | ||||
|  | ||||
| #: apps/wei/views.py:394 | ||||
| msgid "You already opened an account in the Société générale." | ||||
| msgstr "Vous avez déjà ouvert un compte auprès de la société générale." | ||||
|  | ||||
| #: apps/wei/views.py:587 | ||||
| msgid "This user didn't give her/his caution check." | ||||
| msgstr "Cet utilisateur n'a pas donné son chèque de caution." | ||||
|  | ||||
| #: apps/wei/views.py:655 apps/wei/views.py:675 apps/wei/views.py:685 | ||||
| #: templates/wei/survey.html:12 templates/wei/survey_closed.html:12 | ||||
| #: templates/wei/survey_end.html:12 | ||||
| msgid "Survey WEI" | ||||
| msgstr "Questionnaire WEI" | ||||
|  | ||||
| #: note_kfet/settings/__init__.py:63 | ||||
| msgid "" | ||||
| "The Central Authentication Service grants you access to most of our websites " | ||||
| @@ -1376,12 +1437,12 @@ msgstr "Créer un club" | ||||
| msgid "Club listing" | ||||
| msgstr "Liste des clubs" | ||||
|  | ||||
| #: templates/member/club_tables.html:7 templates/wei/weiclub_tables.html:79 | ||||
| #: templates/member/club_tables.html:7 templates/wei/weiclub_tables.html:92 | ||||
| msgid "Member of the Club" | ||||
| msgstr "Membre du club" | ||||
|  | ||||
| #: templates/member/club_tables.html:20 templates/member/profile_tables.html:28 | ||||
| #: templates/wei/weiclub_tables.html:92 | ||||
| #: templates/wei/weiclub_tables.html:105 | ||||
| msgid "Transaction history" | ||||
| msgstr "Historique des transactions" | ||||
|  | ||||
| @@ -1561,8 +1622,8 @@ msgid "Validate account" | ||||
| msgstr "Valider le compte" | ||||
|  | ||||
| #: templates/registration/future_profile_detail.html:71 | ||||
| #: templates/wei/weimembership_form.html:97 | ||||
| #: templates/wei/weimembership_form.html:147 | ||||
| #: templates/wei/weimembership_form.html:115 | ||||
| #: templates/wei/weimembership_form.html:173 | ||||
| msgid "Validate registration" | ||||
| msgstr "Valider l'inscription" | ||||
|  | ||||
| @@ -1715,13 +1776,15 @@ msgid "" | ||||
| "        " | ||||
| msgstr "" | ||||
| "\n" | ||||
| "            Si vous vous êtes déjà inscrits, votre inscription a bien été prise en " | ||||
| "compte. Le BDE doit d'abord valider votre compte avant\n" | ||||
| "            que vous puissiez vous connecter. Vous devez vous rendre à la Kfet et payer " | ||||
| "les frais d'adhésion. Vous devez également valider votre adresse\n" | ||||
| "            email en suivant le lien que vous avez reçu. Si vous aviez oublié de vous " | ||||
| "inscrire au WEI, vous pourrez vous pré-inscrire à nouveau\n" | ||||
| "            après avoir validé votre compte, merci alors de vous rendre à la Kfet.\n" | ||||
| "            Si vous vous êtes déjà inscrits, votre inscription a bien été " | ||||
| "prise en compte. Le BDE doit d'abord valider votre compte avant\n" | ||||
| "            que vous puissiez vous connecter. Vous devez vous rendre à la " | ||||
| "Kfet et payer les frais d'adhésion. Vous devez également valider votre " | ||||
| "adresse\n" | ||||
| "            email en suivant le lien que vous avez reçu. Si vous aviez " | ||||
| "oublié de vous inscrire au WEI, vous pourrez vous pré-inscrire à nouveau\n" | ||||
| "            après avoir validé votre compte, merci alors de vous rendre à la " | ||||
| "Kfet.\n" | ||||
| "        " | ||||
|  | ||||
| #: templates/treasury/invoice_form.html:6 | ||||
| @@ -1801,6 +1864,22 @@ msgstr "Ajouter une équipe" | ||||
| msgid "Members" | ||||
| msgstr "Membres" | ||||
|  | ||||
| #: templates/wei/survey.html:24 | ||||
| msgid "Next" | ||||
| msgstr "Suivant" | ||||
|  | ||||
| #: templates/wei/survey_closed.html:16 | ||||
| msgid "The inscription for this WEI are now closed." | ||||
| msgstr "Les inscriptions pour le WEI sont fermées." | ||||
|  | ||||
| #: templates/wei/survey_closed.html:22 | ||||
| msgid "Return to WEI detail" | ||||
| msgstr "Retour aux détails du WEI" | ||||
|  | ||||
| #: templates/wei/survey_end.html:16 | ||||
| msgid "The survey is now ended. Your answers have been saved." | ||||
| msgstr "Le sondage est désormais terminé, vos réponses ont bien été enregistrées." | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:31 | ||||
| msgid "WEI fee / including BDE and Kfet fee (paid students)" | ||||
| msgstr "Prix du WEI / incluant l'adhésion BDE/Kfet (élèves)" | ||||
| @@ -1810,14 +1889,14 @@ msgid "WEI fee / including BDE and Kfet fee (unpaid students)" | ||||
| msgstr "Prix du WEI / incluant l'adhésion BDE/Kfet (étudiants)" | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:58 | ||||
| msgid "Register 2A+" | ||||
| msgstr "Inscrire un 2A+" | ||||
| msgid "WEI list" | ||||
| msgstr "Liste des WEI" | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:64 | ||||
| #: templates/wei/weiclub_info.html:69 | ||||
| msgid "Add bus" | ||||
| msgstr "Ajouter un bus" | ||||
|  | ||||
| #: templates/wei/weiclub_info.html:68 | ||||
| #: templates/wei/weiclub_info.html:73 | ||||
| msgid "View WEI" | ||||
| msgstr "Voir le WEI" | ||||
|  | ||||
| @@ -1833,7 +1912,19 @@ msgstr "Créer un WEI" | ||||
| msgid "WEI listing" | ||||
| msgstr "Liste des WEI" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:107 | ||||
| #: templates/wei/weiclub_tables.html:63 | ||||
| msgid "Register to the WEI! – 1A" | ||||
| msgstr "M'inscrire au WEI ! – 1A" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:65 | ||||
| msgid "Register to the WEI! – 2A+" | ||||
| msgstr "M'inscrire au WEI ! – 2A+" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:67 | ||||
| msgid "Update my registration" | ||||
| msgstr "Mettre à jour mon inscription" | ||||
|  | ||||
| #: templates/wei/weiclub_tables.html:120 | ||||
| msgid "Unvalidated registrations" | ||||
| msgstr "Inscriptions non validées" | ||||
|  | ||||
| @@ -1846,73 +1937,101 @@ msgid "Payment from Société générale" | ||||
| msgstr "Paiement de la Société générale" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:81 | ||||
| msgid "Suggested bus from the survey:" | ||||
| msgstr "Bus suggéré par le sondage :" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:86 | ||||
| msgid "Raw survey information" | ||||
| msgstr "Informations brutes du sondage" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:96 | ||||
| msgid "The algorithm didn't run." | ||||
| msgstr "L'algorithme n'a pas été exécuté." | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:99 | ||||
| msgid "caution check given" | ||||
| msgstr "chèque de caution donné" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:88 | ||||
| #: templates/wei/weimembership_form.html:106 | ||||
| msgid "Update registration" | ||||
| msgstr "Mettre à jour l'inscription" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:101 | ||||
| #: templates/wei/weimembership_form.html:119 | ||||
| msgid "The registration is already validated and can't be unvalidated." | ||||
| msgstr "L'inscription a déjà été validée et ne peut pas être dévalidée." | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:120 | ||||
| msgid "The user joined the bus" | ||||
| msgstr "L'utilisateur a rejoint le bus" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:121 | ||||
| msgid "in the team" | ||||
| msgstr "dans l'équipe" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:122 | ||||
| msgid "in no team (staff)" | ||||
| msgstr "dans aucune équipe (staff)" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:122 | ||||
| msgid "with the following roles:" | ||||
| msgstr "avec les rôles suivants :" | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:127 | ||||
| msgid "" | ||||
| "\n" | ||||
| "                        The WEI will be paid by Société générale. The " | ||||
| "                            The WEI will be paid by Société générale. The " | ||||
| "membership will be created even if the bank didn't pay the BDE yet.\n" | ||||
| "                        The membership transaction will be created but will " | ||||
| "be invalid. You will have to validate it once the bank\n" | ||||
| "                        validated the creation of the account, or to change " | ||||
| "the payment method.\n" | ||||
| "                    " | ||||
| "                            The membership transaction will be created but " | ||||
| "will be invalid. You will have to validate it once the bank\n" | ||||
| "                            validated the creation of the account, or to " | ||||
| "change the payment method.\n" | ||||
| "                        " | ||||
| msgstr "" | ||||
| "\n" | ||||
| "                        Le WEI va être payé par la Société générale. " | ||||
| "Le WEI va être payé par la Société générale. " | ||||
| "L'adhésion sera créée même si la banque n'a pas encore payé le BDE.\n" | ||||
| "                        La transaction d'adhésion sera créée mais invalide. " | ||||
| "La transaction d'adhésion sera créée mais invalide. " | ||||
| "Vous devrez la valider une fois que la banque\n" | ||||
| "                        aura validé la création du compte, ou bien changer " | ||||
| "aura validé la création du compte, ou bien changer " | ||||
| "de moyen de paiement.\n" | ||||
| "                    " | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:111 | ||||
| #, python-format | ||||
| #: templates/wei/weimembership_form.html:137 | ||||
| msgid "" | ||||
| "\n" | ||||
| "                            The note don't have enough money (%(balance)s, " | ||||
| "%(pretty_fee)s required). The registration may fail.\n" | ||||
| "                        " | ||||
| "The note don't have enough money " | ||||
| "(%(balance)s, %(pretty_fee)s required). The registration may fail.\n" | ||||
| "                            " | ||||
| msgstr "" | ||||
| "\n" | ||||
| "                            La note n'a pas assez d'argent (%(balance)s, " | ||||
| "La note n'a pas assez d'argent (%(balance)s, " | ||||
| "%(pretty_fee)s requis). L'inscription va échouer.\n" | ||||
| "                        " | ||||
| "                            " | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:118 | ||||
| msgid "The note has enough money." | ||||
| msgstr "La note n'a pas assez d'argent." | ||||
| #: templates/wei/weimembership_form.html:144 | ||||
| msgid "The note has enough money, the registration is possible." | ||||
| msgstr "La note a assez d'argent, l'inscription est possible." | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:125 | ||||
| #: templates/wei/weimembership_form.html:151 | ||||
| msgid "The user didn't give her/his caution check." | ||||
| msgstr "L'utilisateur n'a pas donné son chèque de caution." | ||||
|  | ||||
| #: templates/wei/weimembership_form.html:133 | ||||
| #, python-format | ||||
| #: templates/wei/weimembership_form.html:159 | ||||
| msgid "" | ||||
| "\n" | ||||
| "                        This user is not a member of the Kfet club. Please " | ||||
| "adhere\n" | ||||
| "                        <a href=\"%(future_user_detail)s\">here if he/she is " | ||||
| "in her/his first year</a>\n" | ||||
| "                        or <a href=\"%(club_detail)s\">here if he/she was an " | ||||
| "old member</a> before you validate\n" | ||||
| "                        the registration of the WEI.\n" | ||||
| "                    " | ||||
| "                            This user is not a member of the Kfet club. " | ||||
| "Please adhere\n" | ||||
| "                            <a href=\"%(future_user_detail)s\">here if he/" | ||||
| "she is in her/his first year</a>\n" | ||||
| "                            or <a href=\"%(club_detail)s\">here if he/she " | ||||
| "was an old member</a> before you validate\n" | ||||
| "                            the registration of the WEI.\n" | ||||
| "                        " | ||||
| msgstr "" | ||||
| "\n" | ||||
| "                        Cet utilisateur n'est pas membre du club Kfet. Merci " | ||||
| "Cet utilisateur n'est pas membre du club Kfet. Merci " | ||||
| "de le faire adhérer\n" | ||||
| "                        <a href=\"%(future_user_detail)s\">ici s'il est en " | ||||
| "première année</a>\n" | ||||
| "                        ou <a href=\"%(club_detail)s\">ici s'il est un ancien " | ||||
| "membre</a> avant de valider\n" | ||||
| "                        l'inscription au WEI.\n" | ||||
| "                    " | ||||
| "<a href=\"%(future_user_detail)s\">ici s'il est en première année</a>\n" | ||||
| "ou <a href=\"%(club_detail)s\">ici s'il est un ancien membre</a> avant de valider\n" | ||||
| "l'inscription au WEI.\n" | ||||
| "                        " | ||||
|   | ||||
| @@ -13,9 +13,7 @@ | ||||
|         </div> | ||||
|         <div class="card-body"> | ||||
|             <p> | ||||
|                 {% blocktrans %} | ||||
| The inscription for this WEI are now closed. | ||||
|                 {% endblocktrans %} | ||||
|                 {% trans "The inscription for this WEI are now closed." %} | ||||
|             </p> | ||||
|         </div> | ||||
|         <div class="card-footer text-center"> | ||||
|   | ||||
| @@ -13,9 +13,7 @@ | ||||
|         </div> | ||||
|         <div class="card-body"> | ||||
|             <p> | ||||
|                 {% blocktrans %} | ||||
| The survey is now ended. Your answers have been saved. | ||||
|                 {% endblocktrans %} | ||||
|                 {% trans "The survey is now ended. Your answers have been saved." %} | ||||
|             </p> | ||||
|         </div> | ||||
|     </div> | ||||
|   | ||||
| @@ -63,8 +63,8 @@ | ||||
|                     <a href="{% url "wei:wei_register_1A_myself" wei_pk=club.pk %}"><button class="btn btn-success">{% trans "Register to the WEI! – 1A" %}</button></a> | ||||
|                 {% endif %} | ||||
|                 <a href="{% url "wei:wei_register_2A_myself" wei_pk=club.pk %}"><button class="btn btn-success">{% trans "Register to the WEI! – 2A+" %}</button></a> | ||||
|             {% elif my_registration.is_validated %} | ||||
|                 <a href="{% url "wei:wei_update_registration" pk=user.pk %}"><button class="btn btn-warning">{% trans "Update my registration" %}</button></a> | ||||
|             {% else %} | ||||
|                 <a href="{% url "wei:wei_update_registration" pk=my_registration.pk %}"><button class="btn btn-warning">{% trans "Update my registration" %}</button></a> | ||||
|             {% endif %} | ||||
|         </div> | ||||
|     {% endif %} | ||||
|   | ||||
| @@ -98,12 +98,23 @@ | ||||
|                 {% else %} | ||||
|                     <dt class="col-xl-6">{% trans 'caution check given'|capfirst %}</dt> | ||||
|                     <dd class="col-xl-6">{{ registration.caution_check|yesno }}</dd> | ||||
|  | ||||
|                     {% with information=registration.information %} | ||||
|                         <dt class="col-xl-6">{% trans 'preferred bus'|capfirst %}</dt> | ||||
|                         <dd class="col-xl-6">{{ information.preferred_bus_name|join:', ' }}</dd> | ||||
|  | ||||
|                         <dt class="col-xl-6">{% trans 'preferred team'|capfirst %}</dt> | ||||
|                         <dd class="col-xl-6">{{ information.preferred_team_name|join:', ' }}</dd> | ||||
|  | ||||
|                         <dt class="col-xl-6">{% trans 'preferred roles'|capfirst %}</dt> | ||||
|                         <dd class="col-xl-6">{{ information.preferred_roles_name|join:', ' }}</dd> | ||||
|                     {% endwith %} | ||||
|                 {% endif %} | ||||
|             </dl> | ||||
|         </div> | ||||
|         <div class="card-footer text-center"> | ||||
|             <a class="btn btn-primary btn-sm" href="{% url 'member:user_update_profile' registration.user.pk %}">{% trans 'Update Profile' %}</a> | ||||
|             <a class="btn btn-primary btn-sm" href="{% url 'wei:wei_update_registration' registration.user.pk %}">{% trans 'Update registration' %}</a> | ||||
|             <a class="btn btn-primary btn-sm" href="{% url 'wei:wei_update_registration' registration.pk %}">{% trans 'Update registration' %}</a> | ||||
|         </div> | ||||
|     </div> | ||||
|  | ||||
| @@ -114,56 +125,65 @@ | ||||
|             <div class="card-header text-center" > | ||||
|                 <h4> {% trans "Validate registration" %}</h4> | ||||
|             </div> | ||||
|             {% if registration.soge_credit %} | ||||
|             {% if registration.is_validated %} | ||||
|                 <div class="alert alert-warning"> | ||||
|                     {% blocktrans %} | ||||
|                         The WEI will be paid by Société générale. The membership will be created even if the bank didn't pay the BDE yet. | ||||
|                         The membership transaction will be created but will be invalid. You will have to validate it once the bank | ||||
|                         validated the creation of the account, or to change the payment method. | ||||
|                     {% endblocktrans %} | ||||
|                     {% trans "The registration is already validated and can't be unvalidated." %} | ||||
|                     {% trans "The user joined the bus" %} {{ registration.membership.bus }} | ||||
|                     {% if registration.membership.team %}{% trans "in the team" %} {{ registration.membership.team }}, | ||||
|                     {% else %}{% trans "in no team (staff)" %},{% endif %} {% trans "with the following roles:" %} {{ registration.membership.roles.all|join:", " }} | ||||
|                 </div> | ||||
|             {% else %} | ||||
|                 {% if registration.user.note.balance < fee %} | ||||
|                     <div class="alert alert-danger"> | ||||
|                         {% with pretty_fee=fee|pretty_money %} | ||||
|                         {% blocktrans with balance=registration.user.note.balance|pretty_money %} | ||||
|                             The note don't have enough money ({{ balance }}, {{ pretty_fee }} required). The registration may fail. | ||||
|                 {% if registration.soge_credit %} | ||||
|                     <div class="alert alert-warning"> | ||||
|                         {% blocktrans %} | ||||
|                             The WEI will be paid by Société générale. The membership will be created even if the bank didn't pay the BDE yet. | ||||
|                             The membership transaction will be created but will be invalid. You will have to validate it once the bank | ||||
|                             validated the creation of the account, or to change the payment method. | ||||
|                         {% endblocktrans %} | ||||
|                         {% endwith %} | ||||
|                     </div> | ||||
|                 {% else %} | ||||
|                     <div class="alert alert-success"> | ||||
|                         {% trans "The note has enough money." %} | ||||
|                     {% if registration.user.note.balance < fee %} | ||||
|                         <div class="alert alert-danger"> | ||||
|                             {% with pretty_fee=fee|pretty_money %} | ||||
|                             {% blocktrans with balance=registration.user.note.balance|pretty_money %} | ||||
|                                 The note don't have enough money ({{ balance }}, {{ pretty_fee }} required). The registration may fail. | ||||
|                             {% endblocktrans %} | ||||
|                             {% endwith %} | ||||
|                         </div> | ||||
|                     {% else %} | ||||
|                         <div class="alert alert-success"> | ||||
|                             {% trans "The note has enough money, the registration is possible." %} | ||||
|                         </div> | ||||
|                     {% endif %} | ||||
|                 {% endif %} | ||||
|  | ||||
|                 {% if not registration.caution_check and not registration.first_year %} | ||||
|                     <div class="alert alert-danger"> | ||||
|                         {% trans "The user didn't give her/his caution check." %} | ||||
|                     </div> | ||||
|                 {% endif %} | ||||
|             {% endif %} | ||||
|  | ||||
|             {% if not registration.caution_check and not registration.first_year %} | ||||
|                 <div class="alert alert-danger"> | ||||
|                     {% trans "The user didn't give her/his caution check." %} | ||||
|                 {% if not kfet_member %} | ||||
|                     <div class="alert alert-danger"> | ||||
|                         {% url 'registration:future_user_detail' pk=registration.user.pk as future_user_detail %} | ||||
|                     {% url 'member:club_detail' pk=club.parent_club.parent_club.pk as club_detail %} | ||||
|                         {% blocktrans %} | ||||
|                             This user is not a member of the Kfet club. Please adhere | ||||
|                             <a href="{{ future_user_detail }}">here if he/she is in her/his first year</a> | ||||
|                             or <a href="{{ club_detail }}">here if he/she was an old member</a> before you validate | ||||
|                             the registration of the WEI. | ||||
|                         {% endblocktrans %} | ||||
|                     </div> | ||||
|                 {% endif %} | ||||
|  | ||||
|                 <div class="card-body" id="profile_infos"> | ||||
|                     {% csrf_token %} | ||||
|                     {{ form|crispy }} | ||||
|                 </div> | ||||
|                 <div class="card-footer text-center"> | ||||
|                     <button class="btn btn-success btn-sm">{% trans 'Validate registration' %}</button> | ||||
|                 </div> | ||||
|             {% endif %} | ||||
|  | ||||
|             {% if not kfet_member %} | ||||
|                 <div class="alert alert-danger"> | ||||
|                     {% url 'registration:future_user_detail' pk=registration.user.pk as future_user_detail %} | ||||
|                 {% url 'member:club_detail' pk=club.parent_club.parent_club.pk as club_detail %} | ||||
|                     {% blocktrans %} | ||||
|                         This user is not a member of the Kfet club. Please adhere | ||||
|                         <a href="{{ future_user_detail }}">here if he/she is in her/his first year</a> | ||||
|                         or <a href="{{ club_detail }}">here if he/she was an old member</a> before you validate | ||||
|                         the registration of the WEI. | ||||
|                     {% endblocktrans %} | ||||
|                 </div> | ||||
|             {% endif %} | ||||
|  | ||||
|             <div class="card-body" id="profile_infos"> | ||||
|                 {% csrf_token %} | ||||
|                 {{ form|crispy }} | ||||
|             </div> | ||||
|             <div class="card-footer text-center"> | ||||
|                 <button class="btn btn-success btn-sm">{% trans 'Validate registration' %}</button> | ||||
|             </div> | ||||
|         </form> | ||||
|     </div> | ||||
| {% endblock %} | ||||
|   | ||||
| @@ -10,6 +10,7 @@ | ||||
| <form method="post"> | ||||
| {% csrf_token %} | ||||
| {{ form|crispy }} | ||||
| {{ membership_form|crispy }} | ||||
| <button class="btn btn-primary" type="submit">{% trans "Submit" %}</button> | ||||
| </form> | ||||
| {% endblock %} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user