Example #1
0
    def get_context_data(self, **kwargs):

        ofahrt = Ofahrt.current()

        max_members = ofahrt.max_members

        context = super(MemberlistView, self).get_context_data(**kwargs)
        context["members_cond"] = Member.objects.filter(
            money_received=False).filter(queue=True)
        context["members_queue"] = Member.objects.filter(
            money_received=False).filter(queue=False)
        context["members_fin"] = Member.objects.filter(money_received=True)
        context["width"] = math.ceil(
            (context["members_fin"].count() / max_members) * 100)
        context["max_members"] = max_members

        for index, member in enumerate(context["members_cond"]):
            context["members_cond"][
                index].last_name = member.last_name[:1] + "."

        for index, member in enumerate(context["members_fin"]):
            context["members_fin"][
                index].last_name = member.last_name[:1] + "."

        for index, member in enumerate(context["members_queue"]):
            context["members_queue"][
                index].last_name = member.last_name[:1] + "."

        return context
Example #2
0
    def get_context_data(self, **kwargs):

        ofahrt = Ofahrt.current()

        max_members = ofahrt.max_members

        context = super(MemberlistView, self).get_context_data(**kwargs)
        context["members_cond"] = Member.objects.filter(
            money_received=False).filter(queue=True)
        context["members_queue"] = Member.objects.filter(
            money_received=False).filter(queue=False)
        context["members_fin"] = Member.objects.filter(money_received=True)
        context["width"] = math.ceil(
            (context["members_fin"].count() / max_members) * 100)
        context["max_members"] = max_members

        for index, member in enumerate(context["members_cond"]):
            context["members_cond"][
                index].last_name = member.last_name[:1] + "."

        for index, member in enumerate(context["members_fin"]):
            context["members_fin"][
                index].last_name = member.last_name[:1] + "."

        for index, member in enumerate(context["members_queue"]):
            context["members_queue"][
                index].last_name = member.last_name[:1] + "."

        return context
Example #3
0
 def clean_birth_date(self):
     begin_date = Ofahrt.current().begin_date
     if begin_date.replace(
             year=begin_date.year - 18) < self.cleaned_data["birth_date"]:
         raise forms.ValidationError(
             "Eine Anmeldung ist nur für Teilnehmer*innen möglich, welche zum Zeitpunkt der Ofahrt volljährig sind."
         )
     return self.cleaned_data["birth_date"]
Example #4
0
 def clean_birth_date(self):
     begin_date = Ofahrt.current().begin_date
     if begin_date.replace(year=begin_date.year -
                           18) < self.cleaned_data["birth_date"]:
         raise forms.ValidationError(
             "Eine Anmeldung ist nur für Teilnehmer*innen möglich, welche zum Zeitpunkt der Ofahrt volljährig sind."
         )
     return self.cleaned_data["birth_date"]
Example #5
0
    def form_valid(self, form):
        member = form.save(commit=False)
        member.base = Ofahrt.current()

        mail = EmailMessage()
        mail.subject = settings.MAIL_NEW_ORGA_SUBJECT
        mail.body = settings.MAIL_NEW_ORGA_TEXT % {
            'firstname': member.first_name,
            'lastname': member.last_name
        }
        mail.to = [settings.SERVER_EMAIL]
        mail.send()

        return super(SignUpOrgaView, self).form_valid(form)
Example #6
0
    def get_context_data(self, **kwargs):

        ofahrt = Ofahrt.current()

        max_members = ofahrt.max_members
        queue_size = ofahrt.queue_tolerance
        members_fin = Member.objects.filter(money_received=True).count()
        members_queue = Member.objects.filter(money_received=False).filter(
            queue=True).count()

        context = super(SignUpView, self).get_context_data(**kwargs)
        context["member_reg_open"] = ofahrt.member_reg_open
        context["members_fin"] = members_fin
        context["queue"] = (members_fin + members_queue) < (max_members +
                                                            queue_size)

        return context
Example #7
0
    def get_context_data(self, **kwargs):

        ofahrt = Ofahrt.current()

        max_members = ofahrt.max_members
        queue_size = ofahrt.queue_tolerance
        members_fin = Member.objects.filter(money_received=True).count()
        members_queue = Member.objects.filter(money_received=False).filter(
            queue=True).count()

        context = super(SignUpView, self).get_context_data(**kwargs)
        context["member_reg_open"] = ofahrt.member_reg_open
        context["members_fin"] = members_fin
        context["queue"] = (members_fin + members_queue) < (
                max_members + queue_size)

        return context
Example #8
0
    def form_valid(self, form):
        member = form.save(commit=False)

        ofahrt = Ofahrt.current()
        member.base = ofahrt

        max_members = ofahrt.max_members
        queue_size = ofahrt.queue_tolerance
        members_fin = Member.objects.filter(money_received=True).count()
        members_queue = Member.objects.filter(money_received=False).filter(
            queue=True).count()

        email = EmailMessage()

        # Einstufung // Fall voll gibt es nicht
        if (members_fin + members_queue) < (max_members + queue_size):
            # Gesamtanmeldung noch nicht ausgelastet, Platz in der Queue
            # Neuanmeldungen fließen direkt in die vorläufige Anmeldeliste
            member.queue = True
            member.queue_deadline = datetime.datetime.now(
            ) + datetime.timedelta(7)

            email.subject = settings.MAIL_MEMBERSIGNUP_QUEUE_SUBJECT % (
                member.base.begin_date.year)
            email.body = settings.MAIL_MEMBERSIGNUP_QUEUE_TEXT % (
                member.first_name, member.base.begin_date.year,
                settings.BANK_ACCOUNT)

        else:
            # vorläufige Anmeldeliste ist voll, Anmeldungen kommen in die Warteschlange
            member.queue = False
            email.subject = settings.MAIL_MEMBERSIGNUP_SUBJECT % (
                member.base.begin_date.year)
            email.body = settings.MAIL_MEMBERSIGNUP_TEXT % (
                member.first_name, member.base.begin_date.year,
                settings.BANK_ACCOUNT)

        email.to = [member.email]
        email.send()

        return super(SignUpView, self).form_valid(form)
Example #9
0
    def form_valid(self, form):
        member = form.save(commit=False)

        ofahrt = Ofahrt.current()
        member.base = ofahrt

        max_members = ofahrt.max_members
        queue_size = ofahrt.queue_tolerance
        members_fin = Member.objects.filter(money_received=True).count()
        members_queue = Member.objects.filter(money_received=False).filter(
            queue=True).count()

        email = EmailMessage()

        # Einstufung // Fall voll gibt es nicht
        if (members_fin + members_queue) < (max_members + queue_size):
            # Gesamtanmeldung noch nicht ausgelastet, Platz in der Queue
            # Neuanmeldungen fließen direkt in die vorläufige Anmeldeliste
            member.queue = True
            member.queue_deadline = datetime.datetime.now(
            ) + datetime.timedelta(7)

            email.subject = settings.MAIL_MEMBERSIGNUP_QUEUE_SUBJECT % (
                member.base.begin_date.year)
            email.body = settings.MAIL_MEMBERSIGNUP_QUEUE_TEXT % (
                member.first_name, member.base.begin_date.year,
                settings.BANK_ACCOUNT)

        else:
            # vorläufige Anmeldeliste ist voll, Anmeldungen kommen in die Warteschlange
            member.queue = False
            email.subject = settings.MAIL_MEMBERSIGNUP_SUBJECT % (
                member.base.begin_date.year)
            email.body = settings.MAIL_MEMBERSIGNUP_TEXT % (
                member.first_name, member.base.begin_date.year,
                settings.BANK_ACCOUNT)

        email.to = [member.email]
        email.send()

        return super(SignUpView, self).form_valid(form)
Example #10
0
 def form_valid(self, form):
     form.instance.base = Ofahrt.current()
     return super(WorkshopProposeView, self).form_valid(form)
Example #11
0
 def defaultdate():
     return datetime.combine(Ofahrt.current().begin_date, time())
Example #12
0
    def get_context_data(self, **kwargs):
        ofahrt = Ofahrt.current()

        context = super(SuccessView, self).get_context_data(**kwargs)
        context["orga_reg_open"] = ofahrt.orga_reg_open
        return context
Example #13
0
 def get_context_data(self, **kwargs):
     ofahrt = Ofahrt.current()
     context = super(SignUpOrgaView, self).get_context_data(**kwargs)
     context["orga_reg_open"] = ofahrt.orga_reg_open
     context['open_orga_jobs'] = Group.objects.exclude(permissions__codename='group_full').count()
     return context
Example #14
0
 def form_valid(self, form):
     form.instance.base = Ofahrt.current()
     return super(WorkshopProposeView, self).form_valid(form)