def post(self, request): create_party_form = CreatePartyForm(request.POST, user=request.user) members_form = PartyMemberFormSet(request.POST, user=request.user) if not create_party_form.is_valid(): errors = get_form_errors_as_str(create_party_form) messages.error(request, errors) return redirect(reverse(HomeView.name)) elif not members_form.is_valid(): errors = get_formset_errors_as_str(members_form) messages.error(request, errors) return redirect(reverse(HomeView.name)) else: name = create_party_form.cleaned_data.get('name') creator = ProfileService().get(id=request.user.id) members = [] for form in members_form: profile = form.cleaned_data.get('profile') if profile: members.append(profile) party = PartyService().create(name=name, creator=creator, members=members) return redirect(reverse(PartyView.name, kwargs={'party_id': party.id}))
def post(self, request, template_id, **kwargs): ps = TemplatePartyService() template = ps.get(id=template_id) form = AddMemberToTemplateForm(request.POST, party=template) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) else: info = form.cleaned_data.get('info') message_level = messages.ERROR try: ps.add_member_to_template(template, info) message = 'User successfully invited' message_level = messages.SUCCESS except Profile.DoesNotExist: message = 'Such user does not found' except MemberAlreadyInPartyException: message = 'This member is already in template' messages.add_message(request, message_level, message) return redirect( reverse(TemplatePartyView.name, kwargs={'template_id': template_id}))
def post(self, request): form = CreatePartyFromExistingForm(request.POST, user=request.user) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) return redirect(reverse(HomeView.name)) party = form.save() return redirect(reverse(PartyView.name, kwargs={'party_id': party.id}))
def post(self, request, party_id: int, **kwargs): party = PartyService().get(id=party_id) form = AddCustomFoodToPartyForm(request.POST, party=party) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) else: form.save() return redirect(reverse(PartyView.name, kwargs={'party_id': party_id}))
def post(self, request): form = CreateTemplateForm(request.POST, user=request.user) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) return redirect(TemplatesListView.name) template_party = form.save() return redirect( reverse(TemplatePartyView.name, kwargs={'template_id': template_party.id}))
def post(self, request, template_id: int, **kwargs): template = TemplatePartyService().get(id=template_id) form = AddCustomFoodToTemplateForm(request.POST, party=template) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) else: form.save() return redirect( reverse(TemplatePartyView.name, kwargs={'template_id': template_id}))
def post(self, request, party_id: int, **kwargs): profile = ProfileService().get(id=request.user.id) party = PartyService().get(id=party_id) member = MemberService().get(party=party, profile=profile) form = SponsorPartyForm(request.POST, member=member) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) else: amount = form.cleaned_data.get('amount') PartyService().sponsor_party(member, amount) return redirect(reverse(PartyView.name, kwargs={'party_id': party_id}))
def post(self, request, template_id: int, **kwargs): template = TemplatePartyService().get(id=template_id) form = SetScheduleForm(request.POST, template=template) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) else: form.save() messages.success(request, 'Template schedule is set') return redirect( reverse(TemplatePartyView.name, kwargs={'template_id': template.id}))
def post(self, request, party_id: int): ps = PartyService() party = ps.get(id=party_id) form = AddMemberToPartyForm(request.POST, party=party) if not form.is_valid(): errors = get_form_errors_as_str(form) messages.error(request, errors) else: info = form.cleaned_data.get('info') message_level = messages.ERROR try: ps.invite_member(party, info) message = 'User successfully invited' message_level = messages.SUCCESS except Profile.DoesNotExist: message = 'Such user does not found' except MemberAlreadyInPartyException: message = 'This member is already in party' messages.add_message(request, message_level, message) return redirect(reverse(PartyView.name, kwargs={'party_id': party_id}))