Example #1
0
    def dispatch(self, request, *args, **kwargs):
        if request.user_attendance:
            if not request.user_attendance.team_complete():
                raise exceptions.TemplatePermissionDenied(
                    format_html(
                        _("Nejdříve se {join_team} a pak si vyberte tričko."),
                        join_team=format_html(
                            "<a href='{}'>{}</a>",
                            reverse("zmenit_tym"),
                            _("přidejte k týmu"),
                        ),
                    ),
                    self.template_name,
                    title=_("Buďte týmovým hráčem!"),
                    error_level="warning",
                )
            if request.user_attendance.package_shipped():
                raise NotImplementedError(
                    "This should never be reached - it should be already treated in view function"
                )

            if not request.user_attendance.campaign.has_any_tshirt:
                if request.user_attendance.has_admission_fee():
                    return redirect(reverse("typ_platby"))
                else:
                    return redirect(reverse("dpnk_registration_complete"))
        return self.testing_passthrough(request, *args, **kwargs)
Example #2
0
 def no_permissions_fail(self, request):
     if request.user.is_authenticated:
         raise exceptions.TemplatePermissionDenied(
             _("Pro přístup k této stránce musíte být ve skupině %s") % self.group_required,
             template_name=getattr(self, 'template_name', None),
         )
     return super().no_permissions_fail(request)
Example #3
0
    def dispatch(self, request, *args, **kwargs):
        if request.user_attendance:
            if not request.user_attendance.team_complete():
                raise exceptions.TemplatePermissionDenied(
                    _("Velikost trička nemůžete měnit, dokud nemáte zvolený tým."
                      ), self.template_name)
            if request.user_attendance.package_shipped():
                raise exceptions.TemplatePermissionDenied(
                    _("Vaše tričko již je na cestě k vám, už se na něj můžete těšit."
                      ), self.template_name)

            if not request.user_attendance.campaign.has_any_tshirt:
                if request.user_attendance.has_admission_fee():
                    return redirect(reverse('typ_platby'))
                else:
                    return redirect(reverse('profil'))
        return super().dispatch(request, *args, **kwargs)
Example #4
0
 def get_phase(self, request):
     try:
         return request.campaign.phase_set.get(phase_type=self.must_be_in_phase)
     except ObjectDoesNotExist:
         raise exceptions.TemplatePermissionDenied(
             _("Tato stránka nemůže být v této kampani zobrazena. Neexistuje v ní fáze %s." % PHASE_TYPE_DICT[self.must_be_in_phase]),
             template_name=getattr(self, 'template_name', None),
         )
Example #5
0
    def dispatch(self, request, *args, **kwargs):
        if request.user_attendance and not request.user_attendance.team:
            raise exceptions.TemplatePermissionDenied(
                mark_safe_lazy(_("Napřed musíte mít <a href='%s'>vybraný tým</a>.") % reverse_lazy("zmenit_tym")),
                template_name=getattr(self, 'template_name', None),
            )

        return super().dispatch(request, *args, **kwargs)
Example #6
0
    def dispatch(self, request, *args, **kwargs):
        phase = self.get_phase(request)

        if phase.is_actual() or (getattr(self, 'user_attendance', False) and self.user_attendance.entered_competition()):
            return super().dispatch(request, *args, **kwargs)

        if phase.has_started():
            raise exceptions.TemplatePermissionDenied(
                _("Registrace již byla ukončena."),
                template_name=getattr(self, 'template_name', None),
            )
        raise exceptions.TemplatePermissionDenied(
            mark_safe_lazy(
                _("Registrace ještě nezačala.<br/>Registrovat se budete moct od %s")
                % formats.date_format(phase.date_from, "SHORT_DATE_FORMAT"),
            ),
            template_name=getattr(self, 'template_name', None),
        )
Example #7
0
    def dispatch(self, request, *args, **kwargs):
        phase = self.get_phase(request)

        if phase.is_actual():
            return super().dispatch(request, *args, **kwargs)

        if phase.has_started():
            raise exceptions.TemplatePermissionDenied(
                _("Již skončil čas, kdy se tato stránka zobrazuje."),
                template_name=getattr(self, 'template_name', None),
            )
        raise exceptions.TemplatePermissionDenied(
            mark_safe_lazy(
                _("Ještě nenastal čas, kdy by se měla tato stránka zobrazit.<br/>Stránka se zobrazí až %s")
                % formats.date_format(phase.date_from, "SHORT_DATE_FORMAT"),
            ),
            template_name=getattr(self, 'template_name', None),
        )
    def dispatch(self, request, *args, **kwargs):
        phase = self.get_phase(request)

        if phase.is_actual():
            return super().dispatch(request, *args, **kwargs)

        if phase.has_started():
            raise exceptions.TemplatePermissionDenied(
                _("Pro jahody ke dvanácti měsíčkům na kole dojedete i mimo sezónu, ale na novou soutěž musíte ještě chvilku počkat."
                  ),
                template_name=getattr(self, 'template_name', None),
                title=_("Ještě je příliš brzy"),
            )
        raise exceptions.TemplatePermissionDenied(
            mark_safe_lazy(
                _("Ještě nenastal čas, kdy by se měla tato stránka zobrazit.<br/>Stránka se zobrazí až %s"
                  ) %
                formats.date_format(phase.date_from, "SHORT_DATE_FORMAT"), ),
            template_name=getattr(self, 'template_name', None),
        )
    def dispatch(self, request, *args, **kwargs):
        phase = self.get_phase(request)

        user_attendance = self.request.user_attendance
        if not user_attendance:
            user_attendance = getattr(self, 'user_attendance', False)

        if phase.is_actual() or (user_attendance
                                 and user_attendance.entered_competition()):
            return super().dispatch(request, *args, **kwargs)

        if user_attendance and not user_attendance.personal_data_opt_in:
            raise exceptions.TemplatePermissionDenied(
                format_html(
                    _("Nemáte potvrzený souhlas se zpracováním osobních údajů. "
                      "Než budete moci pokračovat v práci se systémem, prosím {aggree_terms}."
                      ),
                    aggree_terms=format_html(
                        "<a href='{}'>{}</a>",
                        reverse("upravit_profil"),
                        _('ověřte svůj souhlas'),
                    ),
                ),
                template_name=getattr(self, 'template_name', None),
            )

        if phase.has_started():
            raise exceptions.TemplatePermissionDenied(
                _("Registrace již byla ukončena."),
                template_name=getattr(self, 'template_name', None),
            )
        raise exceptions.TemplatePermissionDenied(
            mark_safe_lazy(
                _("Registrace ještě nezačala.<br/>Registrovat se budete moct od %s"
                  ) %
                formats.date_format(phase.date_from, "SHORT_DATE_FORMAT"), ),
            template_name=getattr(self, 'template_name', None),
        )
Example #10
0
 def dispatch(self, request, *args, **kwargs):
     if (
             request.user_attendance and
             request.user_attendance.team and
             not (request.user_attendance.team and request.user_attendance.is_team_approved())
     ):
         raise exceptions.TemplatePermissionDenied(
             format_html_lazy(
                 _("Vaše členství v týmu {team} nebylo odsouhlaseno. <a href='{address}'>Znovu požádat o ověření členství</a>."),
                 team=request.user_attendance.team.name, address=reverse("zaslat_zadost_clenstvi"),
             ),
             template_name=getattr(self, 'template_name', None),
         )
     return super().dispatch(request, *args, **kwargs)
    def dispatch(self, request, *args, **kwargs):
        if request.user_attendance and not request.user_attendance.team:
            raise exceptions.TemplatePermissionDenied(
                format_html(
                    _("Pokud jeli napřed tak je dohoňte a {join_team}."),
                    join_team=format_html(
                        "<a href='{}'>{}</a>",
                        reverse("zmenit_tym"),
                        _('přidejte se k týmu'),
                    ),
                ),
                template_name=getattr(self, 'template_name', None),
                title=_("Kde jsou ostatní?"),
            )

        return super().dispatch(request, *args, **kwargs)
 def dispatch(self, request, *args, **kwargs):
     if (request.user_attendance and request.user_attendance.team
             and not (request.user_attendance.team
                      and request.user_attendance.is_team_approved())):
         raise exceptions.TemplatePermissionDenied(
             format_html_lazy(
                 _("Tým {team} rebeluje proti Vašemu členství. Je načase {link}, kteří si Vás budou vážit."
                   ),
                 link=format_html_lazy(
                     "<a href='{address}'>{link_title}</a>",
                     link_title=_("si najít opravdové parťáky"),
                     address=reverse("zmenit_tym"),
                 ),
                 team=request.user_attendance.team.name,
             ),
             title=_("Slyšíme cinkání klíčů"),
             template_name=getattr(self, 'template_name', None),
         )
     return super().dispatch(request, *args, **kwargs)
    def dispatch(self, request, *args, **kwargs):
        if not request.user_attendance:
            return super().dispatch(request, *args, **kwargs)

        self.company_admin = request.user_attendance.related_company_admin
        if self.company_admin and self.company_admin.is_approved():
            return super().dispatch(request, *args, **kwargs)

        raise exceptions.TemplatePermissionDenied(
            mark_safe_lazy(
                _("Tato stránka je určená pouze ověřeným firemním koordinátorům. "
                  "K této funkci se musíte nejdříve <a href='{admin_application}'>přihlásit</a>, a vyčkat na naše ověření. "
                  "Pokud na ověření čekáte příliš dlouho, kontaktujte naši podporu na "
                  "<a href='mailto:{contact_email}?subject=Přihlásit koordinátora'>{contact_email}</a>."
                  ).format(
                      admin_application=reverse("company_admin_application"),
                      contact_email=request.user_attendance.campaign.
                      campaign_type.contact_email,
                  ), ),
            template_name=getattr(self, 'template_name', None),
        )