def post(self, project): form = MemberForm(project, meta={"csrf": False}) if form.validate(): member = Person() form.save(project, member) db.session.commit() return member.id, 201 return form.errors, 400
def post(self, project): form = MemberForm(project, meta={'csrf': False}) if form.validate(): member = Person() form.save(project, member) db.session.commit() return member.id, 201 return form.errors, 400
def add(self, project): form = MemberForm(project, meta={'csrf': False}) if form.validate(): member = Person() form.save(project, member) db.session.commit() return 201, member.id return 400, form.errors
def update(self, project, member_id): form = MemberForm(project, meta={'csrf': False}) if form.validate(): member = Person.query.get(member_id, project) form.save(project, member) db.session.commit() return 200, member return 400, form.errors
def add_member(): # FIXME manage form errors on the list_bills page form = MemberForm(g.project) if request.method == "POST": if form.validate(): member = form.save(g.project, Person()) db.session.commit() flash(_("%(member)s has been added", member=member.name)) return redirect(url_for(".list_bills")) return render_template("add_member.html", form=form)
def add_member(): # FIXME manage form errors on the list_bills page form = MemberForm(g.project) if request.method == "POST": if form.validate(): member = form.save(g.project, Person()) db.session.commit() flash(_("%(member)s had been added", member=member.name)) return redirect(url_for(".list_bills")) return render_template("add_member.html", form=form)
def list_bills(): bill_form = get_billform_for(g.project) # set the last selected payer as default choice if exists if 'last_selected_payer' in session: bill_form.payer.data = session['last_selected_payer'] # Preload the "owers" relationship for all bills bills = g.project.get_bills().options(orm.subqueryload(Bill.owers)) return render_template("list_bills.html", bills=bills, member_form=MemberForm(g.project), bill_form=bill_form, add_bill=request.values.get('add_bill', False), current_view="list_bills", )
def edit_member(member_id): member = Person.query.get(member_id, g.project) if not member: raise NotFound() form = MemberForm(g.project, edit=True) if request.method == "POST" and form.validate(): form.save(g.project, member) db.session.commit() flash(_("User '%(name)s' has been edited", name=member.name)) return redirect(url_for(".list_bills")) form.fill(member) return render_template("edit_member.html", form=form, edit=True)
def edit_member(member_id): member = Person.query.get(member_id, g.project) if not member: raise NotFound() form = MemberForm(g.project, edit=True) if request.method == 'POST' and form.validate(): form.save(g.project, member) db.session.commit() flash(_("User '%(name)s' has been edited", name=member.name)) return redirect(url_for(".list_bills")) form.fill(member) return render_template("edit_member.html", form=form, edit=True)
def post_delete(): # this functions identically to list_bills, however # the undo action button is added bill_form = get_billform_for(g.project) # set the last selected payer as default choice if exists if "last_selected_payer" in session: bill_form.payer.data = session["last_selected_payer"] # Preload the "owers" relationship for all bills bills = ( g.project.get_bills() .options(orm.subqueryload(Bill.owers)) .paginate(per_page=100, error_out=True) ) return render_template( "list_bills_post_delete.html", bills=bills, member_form=MemberForm(g.project), bill_form=bill_form, add_bill=request.values.get("add_bill", False), current_view="list_bills_post_delete", )
def list_bills(): bill_form = get_billform_form(g.project) # set the form to set weighted values for each participant # if the project has advanced weighting enabled if g.project.advanced_weighting_enabled: bill_form.advanced = True # set the last selected payer as default choice if exists if "last_selected_payer" in session: bill_form.payer.data = session["last_selected_payer"] # Preload the "owers" relationship for all bills bills = ( g.project.get_bills() .options(orm.subqueryload(Bill.owers)) .paginate(per_page=100, error_out=True) ) return render_template( "list_bills.html", bills=bills, member_form=MemberForm(g.project), bill_form=bill_form, add_bill=request.values.get("add_bill", False), current_view="list_bills", )