mirror of
				https://gitlab.crans.org/bde/nk20
				synced 2025-11-04 09:12:11 +01:00 
			
		
		
		
	Delete registrations
This commit is contained in:
		@@ -60,7 +60,7 @@ class WEIRegistrationTable(tables.Table):
 | 
			
		||||
    )
 | 
			
		||||
 | 
			
		||||
    delete = tables.LinkColumn(
 | 
			
		||||
        'wei:wei_detail',
 | 
			
		||||
        'wei:wei_delete_registration',
 | 
			
		||||
        args=[A('pk')],
 | 
			
		||||
        verbose_name=_("delete"),
 | 
			
		||||
        text=_("Delete"),
 | 
			
		||||
 
 | 
			
		||||
@@ -5,8 +5,8 @@ from django.urls import path
 | 
			
		||||
 | 
			
		||||
from .views import CurrentWEIDetailView, WEIListView, WEICreateView, WEIDetailView, WEIUpdateView,\
 | 
			
		||||
    BusCreateView, BusManageView, BusUpdateView, BusTeamCreateView, BusTeamManageView, BusTeamUpdateView,\
 | 
			
		||||
    WEIRegister1AView, WEIRegister2AView, WEIUpdateRegistrationView, WEIValidateRegistrationView,\
 | 
			
		||||
    WEISurveyView, WEISurveyEndView, WEIClosedView
 | 
			
		||||
    WEIRegister1AView, WEIRegister2AView, WEIUpdateRegistrationView, WEIDeleteRegistrationView,\
 | 
			
		||||
    WEIValidateRegistrationView, WEISurveyView, WEISurveyEndView, WEIClosedView
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
app_name = 'wei'
 | 
			
		||||
@@ -27,6 +27,7 @@ urlpatterns = [
 | 
			
		||||
    path('register/<int:wei_pk>/1A/myself/', WEIRegister1AView.as_view(), name="wei_register_1A_myself"),
 | 
			
		||||
    path('register/<int:wei_pk>/2A+/myself/', WEIRegister2AView.as_view(), name="wei_register_2A_myself"),
 | 
			
		||||
    path('edit-registration/<int:pk>/', WEIUpdateRegistrationView.as_view(), name="wei_update_registration"),
 | 
			
		||||
    path('delete-registration/<int:pk>/', WEIDeleteRegistrationView.as_view(), name="wei_delete_registration"),
 | 
			
		||||
    path('validate/<int:pk>/', WEIValidateRegistrationView.as_view(), name="validate_registration"),
 | 
			
		||||
    path('survey/<int:pk>/', WEISurveyView.as_view(), name="wei_survey"),
 | 
			
		||||
    path('survey/<int:pk>/end/', WEISurveyEndView.as_view(), name="wei_survey_end"),
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@ from django.shortcuts import redirect
 | 
			
		||||
from django.urls import reverse_lazy
 | 
			
		||||
from django.views.generic import DetailView, UpdateView, CreateView, RedirectView, TemplateView
 | 
			
		||||
from django.utils.translation import gettext_lazy as _
 | 
			
		||||
from django.views.generic.edit import BaseFormView
 | 
			
		||||
from django.views.generic.edit import BaseFormView, DeleteView
 | 
			
		||||
from django_tables2 import SingleTableView
 | 
			
		||||
from member.models import Membership, Club
 | 
			
		||||
from note.models import Transaction, NoteClub
 | 
			
		||||
@@ -350,6 +350,19 @@ class WEIRegister1AView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView):
 | 
			
		||||
    def form_valid(self, form):
 | 
			
		||||
        form.instance.wei = WEIClub.objects.get(pk=self.kwargs["wei_pk"])
 | 
			
		||||
        form.instance.first_year = True
 | 
			
		||||
 | 
			
		||||
        if not form.instance.pk:
 | 
			
		||||
            # Check if the user is not already registered to the WEI
 | 
			
		||||
            if WEIRegistration.objects.filter(wei=form.instance.wei, user=form.instance.user).exists():
 | 
			
		||||
                form.add_error('user', _("This user is already registered to this WEI."))
 | 
			
		||||
                return self.form_invalid(form)
 | 
			
		||||
 | 
			
		||||
            # Check if the user can be in her/his first year (yeah, no cheat)
 | 
			
		||||
            if WEIRegistration.objects.filter(user=form.instance.user).exists():
 | 
			
		||||
                form.add_error('user', _("This user can't be in her/his first year since he/she has already"
 | 
			
		||||
                                         " participed to a WEI."))
 | 
			
		||||
                return self.form_invalid(form)
 | 
			
		||||
 | 
			
		||||
        return super().form_valid(form)
 | 
			
		||||
 | 
			
		||||
    def get_success_url(self):
 | 
			
		||||
@@ -406,9 +419,15 @@ class WEIRegister2AView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView):
 | 
			
		||||
        form.instance.wei = WEIClub.objects.get(pk=self.kwargs["wei_pk"])
 | 
			
		||||
        form.instance.first_year = False
 | 
			
		||||
 | 
			
		||||
        if not form.instance.pk:
 | 
			
		||||
            # Check if the user is not already registered to the WEI
 | 
			
		||||
            if WEIRegistration.objects.filter(wei=form.instance.wei, user=form.instance.user).exists():
 | 
			
		||||
                form.add_error('user', _("This user is already registered to this WEI."))
 | 
			
		||||
                return self.form_invalid(form)
 | 
			
		||||
 | 
			
		||||
        choose_bus_form = WEIChooseBusForm(self.request.POST)
 | 
			
		||||
        if not choose_bus_form.is_valid():
 | 
			
		||||
            return self.form_invalid(choose_bus_form)
 | 
			
		||||
            return self.form_invalid(form)
 | 
			
		||||
 | 
			
		||||
        information = form.instance.information
 | 
			
		||||
        information["preferred_bus_pk"] = [bus.pk for bus in choose_bus_form.cleaned_data["bus"]]
 | 
			
		||||
@@ -422,11 +441,6 @@ class WEIRegister2AView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView):
 | 
			
		||||
 | 
			
		||||
        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})
 | 
			
		||||
@@ -490,14 +504,14 @@ class WEIUpdateRegistrationView(ProtectQuerysetMixin, LoginRequiredMixin, Update
 | 
			
		||||
        if form.instance.is_validated:
 | 
			
		||||
            membership_form = WEIMembershipForm(self.request.POST)
 | 
			
		||||
            if not membership_form.is_valid():
 | 
			
		||||
                return self.form_invalid(membership_form)
 | 
			
		||||
                return self.form_invalid(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)
 | 
			
		||||
                return self.form_invalid(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"]]
 | 
			
		||||
@@ -519,6 +533,26 @@ class WEIUpdateRegistrationView(ProtectQuerysetMixin, LoginRequiredMixin, Update
 | 
			
		||||
        return reverse_lazy("wei:wei_detail", kwargs={"pk": self.object.wei.pk})
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class WEIDeleteRegistrationView(ProtectQuerysetMixin, LoginRequiredMixin, DeleteView):
 | 
			
		||||
    model = WEIRegistration
 | 
			
		||||
 | 
			
		||||
    def dispatch(self, request, *args, **kwargs):
 | 
			
		||||
        wei = self.get_object().wei
 | 
			
		||||
        today = date.today()
 | 
			
		||||
        # We can't delete a registration of a past WEI
 | 
			
		||||
        if today > wei.membership_end:
 | 
			
		||||
            return redirect(reverse_lazy('wei:wei_closed', args=(wei.pk,)))
 | 
			
		||||
        return super().dispatch(request, *args, **kwargs)
 | 
			
		||||
 | 
			
		||||
    def get_context_data(self, **kwargs):
 | 
			
		||||
        context = super().get_context_data(**kwargs)
 | 
			
		||||
        context["club"] = self.object.wei
 | 
			
		||||
        return context
 | 
			
		||||
 | 
			
		||||
    def get_success_url(self):
 | 
			
		||||
        return reverse_lazy('wei:wei_detail', args=(self.object.wei.pk,))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class WEIValidateRegistrationView(ProtectQuerysetMixin, LoginRequiredMixin, CreateView):
 | 
			
		||||
    """
 | 
			
		||||
    Validate WEI Registration
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: \n"
 | 
			
		||||
"POT-Creation-Date: 2020-04-20 22:34+0200\n"
 | 
			
		||||
"POT-Creation-Date: 2020-04-21 01:01+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"
 | 
			
		||||
@@ -439,7 +439,7 @@ msgstr ""
 | 
			
		||||
msgid "fee"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/member/models.py:267 apps/member/views.py:500 apps/wei/views.py:592
 | 
			
		||||
#: apps/member/models.py:267 apps/member/views.py:500 apps/wei/views.py:645
 | 
			
		||||
msgid "User is not a member of the parent club"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@@ -470,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:105
 | 
			
		||||
#: templates/wei/weimembership_form.html:116
 | 
			
		||||
msgid "Update Profile"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@@ -482,7 +482,7 @@ msgstr ""
 | 
			
		||||
msgid "Search user"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/member/views.py:495 apps/wei/views.py:583
 | 
			
		||||
#: apps/member/views.py:495 apps/wei/views.py:636
 | 
			
		||||
msgid ""
 | 
			
		||||
"This user don't have enough money to join this club, and can't have a "
 | 
			
		||||
"negative balance."
 | 
			
		||||
@@ -727,6 +727,7 @@ msgid "No reason specified"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/note/tables.py:122 apps/note/tables.py:151 apps/wei/tables.py:66
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:32
 | 
			
		||||
msgid "Delete"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@@ -1003,23 +1004,37 @@ msgstr ""
 | 
			
		||||
msgid "WEI"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:47
 | 
			
		||||
#: apps/wei/forms/registration.py:47 apps/wei/models.py:108
 | 
			
		||||
#: apps/wei/models.py:269
 | 
			
		||||
msgid "bus"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:48
 | 
			
		||||
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 "Team"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:56
 | 
			
		||||
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
 | 
			
		||||
#: apps/wei/forms/registration.py:61 apps/wei/forms/registration.py:67
 | 
			
		||||
#: apps/wei/models.py:142
 | 
			
		||||
msgid "WEI Roles"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:62
 | 
			
		||||
msgid "Select the roles that you are interested in."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:65 apps/wei/forms/registration.py:75
 | 
			
		||||
#: apps/wei/forms/registration.py:72
 | 
			
		||||
msgid "This team doesn't belong to the given bus."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@@ -1055,10 +1070,6 @@ msgstr ""
 | 
			
		||||
msgid "Buses"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:108 apps/wei/models.py:269
 | 
			
		||||
msgid "bus"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:116
 | 
			
		||||
msgid "color"
 | 
			
		||||
msgstr ""
 | 
			
		||||
@@ -1079,10 +1090,6 @@ msgstr ""
 | 
			
		||||
msgid "WEI Role"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:142
 | 
			
		||||
msgid "WEI Roles"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:166
 | 
			
		||||
msgid "Credit from Société générale"
 | 
			
		||||
msgstr ""
 | 
			
		||||
@@ -1196,19 +1203,29 @@ msgstr ""
 | 
			
		||||
msgid "Register 1A"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:377 templates/wei/weiclub_info.html:63
 | 
			
		||||
#: apps/wei/views.py:357 apps/wei/views.py:425
 | 
			
		||||
msgid "This user is already registered to this WEI."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:362
 | 
			
		||||
msgid ""
 | 
			
		||||
"This user can't be in her/his first year since he/she has already participed "
 | 
			
		||||
"to a WEI."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:390 templates/wei/weiclub_info.html:63
 | 
			
		||||
msgid "Register 2A+"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:394
 | 
			
		||||
#: apps/wei/views.py:408 apps/wei/views.py:491
 | 
			
		||||
msgid "You already opened an account in the Société générale."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:587
 | 
			
		||||
#: apps/wei/views.py:640
 | 
			
		||||
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
 | 
			
		||||
#: apps/wei/views.py:708 apps/wei/views.py:728 apps/wei/views.py:738
 | 
			
		||||
#: templates/wei/survey.html:12 templates/wei/survey_closed.html:12
 | 
			
		||||
#: templates/wei/survey_end.html:12
 | 
			
		||||
msgid "Survey WEI"
 | 
			
		||||
@@ -1581,6 +1598,7 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/registration/future_profile_detail.html:56
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:12
 | 
			
		||||
msgid "Delete registration"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@@ -1589,8 +1607,8 @@ msgid "Validate account"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/registration/future_profile_detail.html:71
 | 
			
		||||
#: templates/wei/weimembership_form.html:115
 | 
			
		||||
#: templates/wei/weimembership_form.html:173
 | 
			
		||||
#: templates/wei/weimembership_form.html:126
 | 
			
		||||
#: templates/wei/weimembership_form.html:184
 | 
			
		||||
msgid "Validate registration"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@@ -1822,7 +1840,7 @@ msgstr ""
 | 
			
		||||
msgid "The inscription for this WEI are now closed."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/survey_closed.html:22
 | 
			
		||||
#: templates/wei/survey_closed.html:20
 | 
			
		||||
msgid "Return to WEI detail"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
@@ -1902,31 +1920,44 @@ msgstr ""
 | 
			
		||||
msgid "caution check given"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:103
 | 
			
		||||
msgid "preferred bus"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:106
 | 
			
		||||
msgid "preferred team"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:109
 | 
			
		||||
msgid "preferred roles"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:117
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:31
 | 
			
		||||
msgid "Update registration"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:119
 | 
			
		||||
#: templates/wei/weimembership_form.html:130
 | 
			
		||||
msgid "The registration is already validated and can't be unvalidated."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:120
 | 
			
		||||
#: templates/wei/weimembership_form.html:131
 | 
			
		||||
msgid "The user joined the bus"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:121
 | 
			
		||||
#: templates/wei/weimembership_form.html:132
 | 
			
		||||
msgid "in the team"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:122
 | 
			
		||||
#: templates/wei/weimembership_form.html:133
 | 
			
		||||
msgid "in no team (staff)"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:122
 | 
			
		||||
#: templates/wei/weimembership_form.html:133
 | 
			
		||||
msgid "with the following roles:"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:127
 | 
			
		||||
#: templates/wei/weimembership_form.html:138
 | 
			
		||||
msgid ""
 | 
			
		||||
"\n"
 | 
			
		||||
"                            The WEI will be paid by Société générale. The "
 | 
			
		||||
@@ -1938,7 +1969,7 @@ msgid ""
 | 
			
		||||
"                        "
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:137
 | 
			
		||||
#: templates/wei/weimembership_form.html:148
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"\n"
 | 
			
		||||
@@ -1947,15 +1978,15 @@ msgid ""
 | 
			
		||||
"                            "
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:144
 | 
			
		||||
#: templates/wei/weimembership_form.html:155
 | 
			
		||||
msgid "The note has enough money, the registration is possible."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:151
 | 
			
		||||
#: templates/wei/weimembership_form.html:162
 | 
			
		||||
msgid "The user didn't give her/his caution check."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:159
 | 
			
		||||
#: templates/wei/weimembership_form.html:170
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"\n"
 | 
			
		||||
@@ -1968,3 +1999,14 @@ msgid ""
 | 
			
		||||
"                            the registration of the WEI.\n"
 | 
			
		||||
"                        "
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:17
 | 
			
		||||
msgid "This registration is already validated and can't be deleted."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:24
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"Are you sure you want to delete the registration of %(user)s for the WEI "
 | 
			
		||||
"%(wei_name)s? This action can't be undoed."
 | 
			
		||||
msgstr ""
 | 
			
		||||
 
 | 
			
		||||
@@ -3,7 +3,7 @@ msgid ""
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Project-Id-Version: PACKAGE VERSION\n"
 | 
			
		||||
"Report-Msgid-Bugs-To: \n"
 | 
			
		||||
"POT-Creation-Date: 2020-04-20 22:34+0200\n"
 | 
			
		||||
"POT-Creation-Date: 2020-04-21 01:01+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"
 | 
			
		||||
@@ -439,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:592
 | 
			
		||||
#: apps/member/models.py:267 apps/member/views.py:500 apps/wei/views.py:645
 | 
			
		||||
msgid "User is not a member of the parent club"
 | 
			
		||||
msgstr "L'utilisateur n'est pas membre du club parent"
 | 
			
		||||
 | 
			
		||||
@@ -470,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:105
 | 
			
		||||
#: templates/wei/weimembership_form.html:116
 | 
			
		||||
msgid "Update Profile"
 | 
			
		||||
msgstr "Modifier le profil"
 | 
			
		||||
 | 
			
		||||
@@ -482,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:583
 | 
			
		||||
#: apps/member/views.py:495 apps/wei/views.py:636
 | 
			
		||||
msgid ""
 | 
			
		||||
"This user don't have enough money to join this club, and can't have a "
 | 
			
		||||
"negative balance."
 | 
			
		||||
@@ -730,6 +730,7 @@ msgid "No reason specified"
 | 
			
		||||
msgstr "Pas de motif spécifié"
 | 
			
		||||
 | 
			
		||||
#: apps/note/tables.py:122 apps/note/tables.py:151 apps/wei/tables.py:66
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:32
 | 
			
		||||
msgid "Delete"
 | 
			
		||||
msgstr "Supprimer"
 | 
			
		||||
 | 
			
		||||
@@ -1011,27 +1012,42 @@ msgstr "supprimer"
 | 
			
		||||
msgid "WEI"
 | 
			
		||||
msgstr "WEI"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:47
 | 
			
		||||
#: apps/wei/forms/registration.py:47 apps/wei/models.py:108
 | 
			
		||||
#: apps/wei/models.py:269
 | 
			
		||||
msgid "bus"
 | 
			
		||||
msgstr "Bus"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:48
 | 
			
		||||
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."
 | 
			
		||||
"attribuer un bus et une équipe, en particulier si vous êtes un électron "
 | 
			
		||||
"libre."
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:54
 | 
			
		||||
msgid "Team"
 | 
			
		||||
msgstr "Équipe"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:56
 | 
			
		||||
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)"
 | 
			
		||||
"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
 | 
			
		||||
#: apps/wei/forms/registration.py:61 apps/wei/forms/registration.py:67
 | 
			
		||||
#: apps/wei/models.py:142
 | 
			
		||||
msgid "WEI Roles"
 | 
			
		||||
msgstr "Rôles au WEI"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/forms/registration.py:62
 | 
			
		||||
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
 | 
			
		||||
#: apps/wei/forms/registration.py:72
 | 
			
		||||
msgid "This team doesn't belong to the given bus."
 | 
			
		||||
msgstr "Cette équipe n'appartient pas à ce bus."
 | 
			
		||||
 | 
			
		||||
@@ -1057,7 +1073,8 @@ 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"
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Informations sur le sondage pour les nouveaux membres, encodées en JSON"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:95
 | 
			
		||||
msgid "Bus"
 | 
			
		||||
@@ -1067,10 +1084,6 @@ msgstr "Bus"
 | 
			
		||||
msgid "Buses"
 | 
			
		||||
msgstr "Bus"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:108 apps/wei/models.py:269
 | 
			
		||||
msgid "bus"
 | 
			
		||||
msgstr "Bus"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:116
 | 
			
		||||
msgid "color"
 | 
			
		||||
msgstr "couleur"
 | 
			
		||||
@@ -1092,10 +1105,6 @@ msgstr "Équipes de bus"
 | 
			
		||||
msgid "WEI Role"
 | 
			
		||||
msgstr "Rôle au WEI"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:142
 | 
			
		||||
msgid "WEI Roles"
 | 
			
		||||
msgstr "Rôles au WEI"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:166
 | 
			
		||||
msgid "Credit from Société générale"
 | 
			
		||||
msgstr "Crédit de la Société générale"
 | 
			
		||||
@@ -1192,10 +1201,6 @@ msgstr "Participants au WEI"
 | 
			
		||||
msgid "team"
 | 
			
		||||
msgstr "équipe"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:279
 | 
			
		||||
msgid "Team"
 | 
			
		||||
msgstr "Équipe"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/models.py:289
 | 
			
		||||
msgid "WEI registration"
 | 
			
		||||
msgstr "inscription au WEI"
 | 
			
		||||
@@ -1221,19 +1226,31 @@ msgstr "Équipes"
 | 
			
		||||
msgid "Register 1A"
 | 
			
		||||
msgstr "Inscrire un 1A"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:377 templates/wei/weiclub_info.html:63
 | 
			
		||||
#: apps/wei/views.py:357 apps/wei/views.py:425
 | 
			
		||||
msgid "This user is already registered to this WEI."
 | 
			
		||||
msgstr "Cette personne est déjà inscrite au WEI."
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:362
 | 
			
		||||
msgid ""
 | 
			
		||||
"This user can't be in her/his first year since he/she has already participed "
 | 
			
		||||
"to a WEI."
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Cet utilisateur ne peut pas être en première année puisqu'iel a déjà "
 | 
			
		||||
"participé à un WEI."
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:390 templates/wei/weiclub_info.html:63
 | 
			
		||||
msgid "Register 2A+"
 | 
			
		||||
msgstr "Inscrire un 2A+"
 | 
			
		||||
 | 
			
		||||
#: apps/wei/views.py:394
 | 
			
		||||
#: apps/wei/views.py:408 apps/wei/views.py:491
 | 
			
		||||
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
 | 
			
		||||
#: apps/wei/views.py:640
 | 
			
		||||
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
 | 
			
		||||
#: apps/wei/views.py:708 apps/wei/views.py:728 apps/wei/views.py:738
 | 
			
		||||
#: templates/wei/survey.html:12 templates/wei/survey_closed.html:12
 | 
			
		||||
#: templates/wei/survey_end.html:12
 | 
			
		||||
msgid "Survey WEI"
 | 
			
		||||
@@ -1614,6 +1631,7 @@ msgstr ""
 | 
			
		||||
"pour activer votre compte."
 | 
			
		||||
 | 
			
		||||
#: templates/registration/future_profile_detail.html:56
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:12
 | 
			
		||||
msgid "Delete registration"
 | 
			
		||||
msgstr "Supprimer l'inscription"
 | 
			
		||||
 | 
			
		||||
@@ -1622,8 +1640,8 @@ msgid "Validate account"
 | 
			
		||||
msgstr "Valider le compte"
 | 
			
		||||
 | 
			
		||||
#: templates/registration/future_profile_detail.html:71
 | 
			
		||||
#: templates/wei/weimembership_form.html:115
 | 
			
		||||
#: templates/wei/weimembership_form.html:173
 | 
			
		||||
#: templates/wei/weimembership_form.html:126
 | 
			
		||||
#: templates/wei/weimembership_form.html:184
 | 
			
		||||
msgid "Validate registration"
 | 
			
		||||
msgstr "Valider l'inscription"
 | 
			
		||||
 | 
			
		||||
@@ -1872,13 +1890,14 @@ msgstr "Suivant"
 | 
			
		||||
msgid "The inscription for this WEI are now closed."
 | 
			
		||||
msgstr "Les inscriptions pour le WEI sont fermées."
 | 
			
		||||
 | 
			
		||||
#: templates/wei/survey_closed.html:22
 | 
			
		||||
#: templates/wei/survey_closed.html:20
 | 
			
		||||
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."
 | 
			
		||||
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)"
 | 
			
		||||
@@ -1952,31 +1971,44 @@ msgstr "L'algorithme n'a pas été exécuté."
 | 
			
		||||
msgid "caution check given"
 | 
			
		||||
msgstr "chèque de caution donné"
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:103
 | 
			
		||||
msgid "preferred bus"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:106
 | 
			
		||||
msgid "preferred team"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:109
 | 
			
		||||
msgid "preferred roles"
 | 
			
		||||
msgstr ""
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:117
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:31
 | 
			
		||||
msgid "Update registration"
 | 
			
		||||
msgstr "Mettre à jour l'inscription"
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:119
 | 
			
		||||
#: templates/wei/weimembership_form.html:130
 | 
			
		||||
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
 | 
			
		||||
#: templates/wei/weimembership_form.html:131
 | 
			
		||||
msgid "The user joined the bus"
 | 
			
		||||
msgstr "L'utilisateur a rejoint le bus"
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:121
 | 
			
		||||
#: templates/wei/weimembership_form.html:132
 | 
			
		||||
msgid "in the team"
 | 
			
		||||
msgstr "dans l'équipe"
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:122
 | 
			
		||||
#: templates/wei/weimembership_form.html:133
 | 
			
		||||
msgid "in no team (staff)"
 | 
			
		||||
msgstr "dans aucune équipe (staff)"
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:122
 | 
			
		||||
#: templates/wei/weimembership_form.html:133
 | 
			
		||||
msgid "with the following roles:"
 | 
			
		||||
msgstr "avec les rôles suivants :"
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:127
 | 
			
		||||
#: templates/wei/weimembership_form.html:138
 | 
			
		||||
msgid ""
 | 
			
		||||
"\n"
 | 
			
		||||
"                            The WEI will be paid by Société générale. The "
 | 
			
		||||
@@ -1988,15 +2020,15 @@ msgid ""
 | 
			
		||||
"                        "
 | 
			
		||||
msgstr ""
 | 
			
		||||
"\n"
 | 
			
		||||
"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. "
 | 
			
		||||
"Vous devrez la valider une fois que la banque\n"
 | 
			
		||||
"aura validé la création du compte, ou bien changer "
 | 
			
		||||
"de moyen de paiement.\n"
 | 
			
		||||
"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. Vous devrez la valider "
 | 
			
		||||
"une fois que la banque\n"
 | 
			
		||||
"aura validé la création du compte, ou bien changer de moyen de paiement.\n"
 | 
			
		||||
"                    "
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:137
 | 
			
		||||
#: templates/wei/weimembership_form.html:148
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"\n"
 | 
			
		||||
"                                The note don't have enough money "
 | 
			
		||||
@@ -2004,19 +2036,20 @@ msgid ""
 | 
			
		||||
"                            "
 | 
			
		||||
msgstr ""
 | 
			
		||||
"\n"
 | 
			
		||||
"La note n'a pas assez d'argent (%(balance)s, "
 | 
			
		||||
"%(pretty_fee)s requis). L'inscription va échouer.\n"
 | 
			
		||||
"La note n'a pas assez d'argent (%(balance)s, %(pretty_fee)s requis). "
 | 
			
		||||
"L'inscription va échouer.\n"
 | 
			
		||||
"                            "
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weimembership_form.html:144
 | 
			
		||||
#: templates/wei/weimembership_form.html:155
 | 
			
		||||
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:151
 | 
			
		||||
#: templates/wei/weimembership_form.html:162
 | 
			
		||||
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:159
 | 
			
		||||
#: templates/wei/weimembership_form.html:170
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"\n"
 | 
			
		||||
"                            This user is not a member of the Kfet club. "
 | 
			
		||||
@@ -2029,9 +2062,22 @@ msgid ""
 | 
			
		||||
"                        "
 | 
			
		||||
msgstr ""
 | 
			
		||||
"\n"
 | 
			
		||||
"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"
 | 
			
		||||
"Cet utilisateur n'est pas membre du club Kfet. Merci de le faire adhérer\n"
 | 
			
		||||
"<a href=\"%(future_user_detail)s\">ici s'iel est en première année</a>\n"
 | 
			
		||||
"ou <a href=\"%(club_detail)s\">ici s'iel est un ancien membre</a> avant de "
 | 
			
		||||
"valider\n"
 | 
			
		||||
"l'inscription au WEI.\n"
 | 
			
		||||
"                        "
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:17
 | 
			
		||||
msgid "This registration is already validated and can't be deleted."
 | 
			
		||||
msgstr "L'inscription a déjà été validée et ne peut pas être supprimée."
 | 
			
		||||
 | 
			
		||||
#: templates/wei/weiregistration_confirm_delete.html:24
 | 
			
		||||
#, python-format
 | 
			
		||||
msgid ""
 | 
			
		||||
"Are you sure you want to delete the registration of %(user)s for the WEI "
 | 
			
		||||
"%(wei_name)s? This action can't be undoed."
 | 
			
		||||
msgstr ""
 | 
			
		||||
"Êtes-vous sûr de vouloir supprimer l'inscription de %(user)s pour le WEI "
 | 
			
		||||
"%(wei_name)s ? Cette action ne pourra pas être annulée."
 | 
			
		||||
 
 | 
			
		||||
@@ -111,9 +111,11 @@ SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
                        <a class="nav-link" href="{% url 'treasury:invoice_list' %}"><i class="fa fa-money"></i> {% trans 'Treasury' %}</a>
 | 
			
		||||
                    </li>
 | 
			
		||||
                {% endif %}
 | 
			
		||||
                {% if "wei.weiclub"|not_empty_model_change_list %}
 | 
			
		||||
                    <li class="nav-item active">
 | 
			
		||||
                        <a class="nav-link" href="{% url 'wei:current_wei_detail' %}"><i class="fa fa-bus"></i> {% trans 'WEI' %}</a>
 | 
			
		||||
                    </li>
 | 
			
		||||
                {% endif %}
 | 
			
		||||
            </ul>
 | 
			
		||||
            <ul class="navbar-nav ml-auto">
 | 
			
		||||
                {% if user.is_authenticated %}
 | 
			
		||||
 
 | 
			
		||||
@@ -13,7 +13,7 @@
 | 
			
		||||
        <div class="card-header text-center">
 | 
			
		||||
            <h4>{% trans "Review registration" %}</h4>
 | 
			
		||||
        </div>
 | 
			
		||||
        <div class="card-body" id="profile_infos">
 | 
			
		||||
        <div class="card-body">
 | 
			
		||||
            <dl class="row">
 | 
			
		||||
                <dt class="col-xl-6">{% trans 'name'|capfirst %}, {% trans 'first name' %}</dt>
 | 
			
		||||
                <dd class="col-xl-6">{{ registration.user.last_name }} {{ registration.user.first_name }}</dd>
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										37
									
								
								templates/wei/weiregistration_confirm_delete.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								templates/wei/weiregistration_confirm_delete.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,37 @@
 | 
			
		||||
{% extends "member/noteowner_detail.html" %}
 | 
			
		||||
{% load i18n %}
 | 
			
		||||
{% load crispy_forms_tags %}
 | 
			
		||||
 | 
			
		||||
{% block profile_info %}
 | 
			
		||||
{% include "wei/weiclub_info.html" %}
 | 
			
		||||
{% endblock %}
 | 
			
		||||
 | 
			
		||||
{% block profile_content %}
 | 
			
		||||
    <div class="card bg-light shadow">
 | 
			
		||||
        <div class="card-header text-center">
 | 
			
		||||
            <h4>{% trans "Delete registration" %}</h4>
 | 
			
		||||
        </div>
 | 
			
		||||
        {% if object.is_validated %}
 | 
			
		||||
            <div class="card-body">
 | 
			
		||||
            <div class="alert alert-danger">
 | 
			
		||||
                {% blocktrans %}This registration is already validated and can't be deleted.{% endblocktrans %}
 | 
			
		||||
            </div>
 | 
			
		||||
            </div>
 | 
			
		||||
        {% else %}
 | 
			
		||||
            <div class="card-body">
 | 
			
		||||
                <div class="alert alert-warning">
 | 
			
		||||
                    {% with user=object.user wei_name=object.wei.name %}
 | 
			
		||||
                    {% blocktrans %}Are you sure you want to delete the registration of {{ user }} for the WEI {{ wei_name }}? This action can't be undoed.{% endblocktrans %}
 | 
			
		||||
                    {% endwith %}
 | 
			
		||||
                </div>
 | 
			
		||||
            </div>
 | 
			
		||||
            <div class="card-footer text-center">
 | 
			
		||||
                <form method="post">
 | 
			
		||||
                    {% csrf_token %}
 | 
			
		||||
                    <a class="btn btn-warning" href="{% url 'wei:wei_update_registration' object.pk %}">{% trans "Update registration" %}</a>
 | 
			
		||||
                    <button class="btn btn-danger" type="submit">{% trans "Delete" %}</button>
 | 
			
		||||
                </form>
 | 
			
		||||
            </div>
 | 
			
		||||
        {% endif %}
 | 
			
		||||
    </div>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
		Reference in New Issue
	
	Block a user