From 35d9c05abfe25c6cf583f9aad37c8b4d5e11280e Mon Sep 17 00:00:00 2001 From: Bartuccio Antoine Date: Sun, 29 Sep 2019 11:52:48 +0200 Subject: [PATCH] trombi: fix trombi tools if user has a trombi profile but no trombi linked --- trombi/templates/trombi/user_tools.jinja | 3 ++- trombi/views.py | 15 +++++++++++---- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/trombi/templates/trombi/user_tools.jinja b/trombi/templates/trombi/user_tools.jinja index 8cda2bc3..19056111 100644 --- a/trombi/templates/trombi/user_tools.jinja +++ b/trombi/templates/trombi/user_tools.jinja @@ -12,7 +12,8 @@ {{ subscribe_form.as_p() }}

-{% else %} +{% endif %} +{% if trombi %}

{% trans trombi = user.trombi_user.trombi %}You are subscribed to the Trombi {{ trombi }}{% endtrans %}


{% set can_comment = trombi.subscription_deadline < date.today() and diff --git a/trombi/views.py b/trombi/views.py index 9b3b786c..fa8a78e6 100644 --- a/trombi/views.py +++ b/trombi/views.py @@ -313,9 +313,13 @@ class UserTrombiToolsView(QuickNotifMixin, TrombiTabsMixin, TemplateView): def post(self, request, *args, **kwargs): self.form = UserTrombiForm(request.POST) if self.form.is_valid(): - trombi_user = TrombiUser( - user=request.user, trombi=self.form.cleaned_data["trombi"] - ) + if hasattr(request.user, "trombi_user"): + trombi_user = request.user.trombi_user + trombi_user.trombi = self.form.cleaned_data["trombi"] + else: + trombi_user = TrombiUser( + user=request.user, trombi=self.form.cleaned_data["trombi"] + ) trombi_user.save() self.quick_notif_list += ["qn_success"] return super(UserTrombiToolsView, self).get(request, *args, **kwargs) @@ -323,7 +327,10 @@ class UserTrombiToolsView(QuickNotifMixin, TrombiTabsMixin, TemplateView): def get_context_data(self, **kwargs): kwargs = super(UserTrombiToolsView, self).get_context_data(**kwargs) kwargs["user"] = self.request.user - if not hasattr(self.request.user, "trombi_user"): + if not ( + hasattr(self.request.user, "trombi_user") + and self.request.user.trombi_user.trombi + ): kwargs["subscribe_form"] = UserTrombiForm() else: kwargs["trombi"] = self.request.user.trombi_user.trombi