mirror of
https://gitlab.crans.org/bde/nk20
synced 2025-07-25 10:05:23 +02:00
Better Membership update
This commit is contained in:
@ -1181,6 +1181,49 @@ class WEIValidateRegistrationView(ProtectQuerysetMixin, ProtectedCreateView):
|
||||
return reverse_lazy("wei:wei_registrations", kwargs={"pk": self.object.club.pk})
|
||||
|
||||
|
||||
class WEIUpdateMembershipView(ProtectQuerysetMixin, LoginRequiredMixin, UpdateView):
|
||||
"""
|
||||
Update a membership for the WEI
|
||||
"""
|
||||
model = WEIMembership
|
||||
context_object_name = "membership"
|
||||
template_name = "wei/weimembership_update.html"
|
||||
extra_context = {"title": _("Update WEI Membership")}
|
||||
|
||||
def dispatch(self, request, *args, **kwargs):
|
||||
wei = self.get_object().registration.wei
|
||||
today = date.today()
|
||||
# We can't update a registration once the WEI is started and before the membership start date
|
||||
if today >= wei.date_start or today < wei.membership_start:
|
||||
return redirect(reverse_lazy('wei:wei_closed', args=(wei.pk,)))
|
||||
# Store the validate parameter in the view's state
|
||||
return super().dispatch(request, *args, **kwargs)
|
||||
|
||||
def get_form(self):
|
||||
form = WEIMembershipForm(
|
||||
self.request.POST or None,
|
||||
self.request.FILES or None,
|
||||
instance=self.object,
|
||||
wei=self.object.registration.wei,
|
||||
)
|
||||
|
||||
form.fields["roles"].initial = self.object.roles.all()
|
||||
form.fields["bus"].initial = self.object.bus
|
||||
form.fields["team"].initial = self.object.team
|
||||
|
||||
del form.fields["credit_type"]
|
||||
del form.fields["credit_amount"]
|
||||
del form.fields["first_name"]
|
||||
del form.fields["last_name"]
|
||||
del form.fields["bank"]
|
||||
|
||||
return form
|
||||
|
||||
def get_success_url(self):
|
||||
print("get_success_url")
|
||||
return reverse_lazy("wei:wei_detail", kwargs={"pk": self.object.registration.wei.pk})
|
||||
|
||||
|
||||
class WEISurveyView(LoginRequiredMixin, BaseFormView, DetailView):
|
||||
"""
|
||||
Display the survey for the WEI for first year members.
|
||||
|
Reference in New Issue
Block a user