def bazar_request_sent(request): if request.method == "POST": content = PollSetUp().for_poll_home(user=request.user) content["bazarform"] = BazarForm() content["poll_id"] = request.POST["poll_id"] bazar_form = BazarForm(request.POST) if bazar_form.is_valid(): poll = Poll.objects.get(id=content["poll_id"]) bazar = Bazar.objects.create( poll=poll, member=request.user, cradit_tk=bazar_form.cleaned_data["cradit_tk"], date_created=Date().human_to_cp(date=request.POST["date"])) notify = Notification.objects.create( notification=Member.objects.get(email=poll.manager).profile, from_member=request.user, status="baz", date=Date().human_to_cp(date=request.POST["date"]), m_id=bazar.id) messages.add_message(request, level=messages.SUCCESS, message="Sent message to the manager", extra_tags="success") else: messages.add_message(request, level=messages.ERROR, message="Bazar cost must be positive.", extra_tags="negative") print(bazar_form) return render(request, "poll/member_poll.html", content)
def meal_form_save(request): if request.method == "POST": content = PollSetUp().for_poll_setting(poll_id=request.POST["poll_id"], user=request.user, is_true=True) meal_form = MealForm(request.POST) if meal_form.is_valid(): poll = Poll.objects.get(id=request.POST["poll_id"]) try: DefaultMeal.objects.create( poll=poll, b=meal_form.cleaned_data["brake_fast"], l=meal_form.cleaned_data["lunch"], d=meal_form.cleaned_data["dinner"]) messages.add_message(request, level=messages.SUCCESS, message="Successfully set the meal", extra_tags="success") content["form"] = MealForm() return render(request, "poll/poll_setting.html", content) except: messages.add_message(request, level=messages.ERROR, message="Already exist.", extra_tags="negative") content["form"] = MealForm() return render(request, "poll/poll_setting.html", content) else: content["form"] = meal_form return render(request, "poll/poll_setting.html", content)
def edit_service_charge(request): if request.method == "POST": service_charge = ServiceCharge.objects.get( id=request.POST["servicecharge_id"]) content = PollSetUp().for_get_manager_poll( poll_id=request.POST["poll_id"]) members_id = request.POST.getlist("member", False) members = [] if members_id: for member_id in members_id: members.append(Member.objects.get(id=int(member_id))) else: print(members) members = service_charge.member.all() if (service_charge.service_name != request.POST["service_name"] or service_charge.debit_tk != request.POST["debit_tk"] or service_charge.date != Date().human_to_cp(request.POST["date"]) or request.POST.getlist("member", False)): service_charge.service_name = request.POST["service_name"] service_charge.debit_tk = float(request.POST["debit_tk"]) service_charge.date = Date().human_to_cp(request.POST["date"]) service_charge.save() service_charge.member.clear() for member in members: service_charge.member.add(member) messages.add_message(request, level=messages.SUCCESS, message="Successfully Edited.", extra_tags="success") else: messages.add_message(request, level=messages.ERROR, message="Nothing Edited", extra_tags="negative") return render(request, "poll/manager_poll.html", content)
def service_charge_save(request): if request.method == "POST": service_form = ServiceForm(request.POST) content = PollSetUp().for_poll_setting(poll_id=request.POST["poll_id"], user=request.user) if service_form.is_valid(): try: service_charge = ServiceCharge.objects.create( service_name=service_form.cleaned_data["service_name"], poll=content["poll"], debit_tk=service_form.cleaned_data["debit_tk"], date=Date().human_to_cp(request.POST["date_created"])) for member_id in request.POST.getlist("member"): member = Member.objects.get(id=member_id) service_charge.member.add(member) messages.add_message(request, level=messages.SUCCESS, message="Successfully created", extra_tags="negative") return render(request, "poll/poll_setting.html", content) except: messages.add_message(request, level=messages.ERROR, message="Can not created Service Charge.") else: messages.add_message(request, level=messages.ERROR, message="Something wrong happen.") return render(request, "poll/poll_setting.html", content)
def delete_bazar_for_manager(request): if request.method == "POST": content = PollSetUp().for_get_manager_poll( poll_id=request.POST["poll_id"]) if request.user.email == content["poll"].manager: content["poll"].bazar_set.get(id=request.POST["bazar_id"]).delete() messages.add_message(request, level=messages.SUCCESS, message="Successfully deleted.", extra_tags="success") else: messages.add_message(request, level=messages.ERROR, message="You are not Manager.", extra_tags="negative") return render(request, "poll/manager_poll.html", content)
def delete_service_charge(request): if request.method == "POST": content = PollSetUp().for_get_manager_poll( poll_id=request.POST["poll_id"]) try: servicecharge = ServiceCharge.objects.get( id=request.POST["service_id"]) servicecharge.delete() messages.add_message( request, level=messages.SUCCESS, message="Successfully deleted your Service charge", extra_tags="success") except: messages.add_message(request, level=messages.ERROR, message="Some error happen", extra_tags="negative") return render(request, "poll/manager_poll.html", content)
def edit_bazar_for_manager(request): if request.method == "POST": content = PollSetUp().for_get_manager_poll( poll_id=request.POST["poll_id"]) if request.user.email == content["poll"].manager: bazar = content["poll"].bazar_set.get(id=request.POST["bazar_id"]) bazar.date_created = Date().human_to_cp( date=request.POST["date_created"]) bazar.cradit_tk = float(request.POST["cradit_tk"]) bazar.save() messages.add_message( request, level=messages.SUCCESS, message= f"Successfully edited bazar for member: {bazar.member.email}.", extra_tags="success") else: messages.add_message(request, level=messages.ERROR, message="You are not manager.", extra_tags="negative") return render(request, 'poll/manager_poll.html', content)
def meal_edit_for_manager(request): if request.method == "POST": content = PollSetUp().for_get_manager_poll( poll_id=request.POST["poll_id"]) if request.user.email == content["poll"].manager: meal = Meal.objects.get(id=request.POST["meal_id"]) meal.b = float(request.POST["b"]) meal.l = float(request.POST["l"]) meal.d = float(request.POST["d"]) meal.save() messages.add_message( request, level=messages.SUCCESS, message= f"Successfully edited meal of member: {meal.member.email}", extra_tags="success") else: messages.add_message(request, level=messages.ERROR, message="You are not manager", extra_tags="negative") return render(request, "poll/manager_poll.html", content)
def edit_default_meal(request): if request.method == "POST": if float(request.POST["b"]) < 0 or float( request.POST["l"]) < 0 or float(request.POST["d"]) < 0: messages.add_message(request, level=messages.ERROR, message="Meal can not be less than 0") else: default_meal = DefaultMeal.objects.get( id=int(request.POST["default_meal_id"])) default_meal.b = float(request.POST["b"]) default_meal.l = float(request.POST["l"]) default_meal.d = float(request.POST["d"]) default_meal.save() messages.add_message(request, level=messages.SUCCESS, message="Your Default Meal is Edited.", extra_tags="success") content = PollSetUp().for_poll_setting(poll_id=request.POST["poll_id"], user=request.user) return render(request, "poll/poll_setting.html", content)
def edit_meal_member(request): if request.method == "POST": content = PollSetUp().for_get_member_poll( user=request.user, poll_id=request.POST["poll_id"]) meal = content["poll"].meal_set.get(id=request.POST["meal_id"]) meal.pending = True meal.save() editmeal = EditedMeal.objects.create(meal=meal, b=float(request.POST["b"]), l=float(request.POST["l"]), d=float(request.POST["d"])) Notification.objects.create( notification=Member.objects.get(email=meal.poll.manager).profile, from_member=request.user, status="ed", m_id=editmeal.id, ) messages.add_message(request, level=messages.SUCCESS, message="Successfully sent the Edition.", extra_tags="success") return render(request, "poll/member_poll.html", content)