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)