示例#1
0
def create_sit_request():
    form = SitRequestForm(request.form)

    families = Family.query.filter_by(active=True).order_by(Family.name).all()

    form.family.query = [f for f in families if not f.is_bank]
    form.sitter.query = form.family.query

    # Set the default for the user in the admin case to their own family.
    if not form.family.data:
        form.family.data = current_user.family

    if form.validate_on_submit():
        start_date = datetime.combine(form.date.data, form.start.data)
        end_date = datetime.combine(form.date.data, form.end.data)

        # Check for after midnight, set the day to be +1
        if start_date.hour > 12 > end_date.hour:
            end_date = end_date + timedelta(days=1)

        SitRequest.create(start_date, end_date, form.family.data, form.sitter.data)

        flash("Sit Request Created!", 'info')

        return redirect(url_for('create_sit_request'), 303)

    return render_template('www/create_sit_request.html', form=form)