def create_new_trip(): """Create a new Trip instance""" if "user_id" in session: trip_name = request.form.get("trip-name") accommodations = request.form.get("accommodations") creator_id = session.get("user_id") # Create new trip instance new_trip = Trip(trip_name=trip_name, creator_id=creator_id, trip_accommodations=accommodations) # If accommodations field was filled in, find the lat/long # and add the values to new_trip if accommodations: lat_long = call_geocoding_api(accommodations) if lat_long != "Invalid search terms": accomm_long = lat_long["lng"] accomm_lat = lat_long["lat"] new_trip.accom_lat = accomm_lat new_trip.accom_long = accomm_long db.session.add(new_trip) db.session.commit() # Add Trip_User instance for creator of the trip upon creation of the trip user_id = session.get("user_id") new_tu = Trip_User(trip_id=new_trip.trip_id, user_id=user_id) db.session.add(new_tu) db.session.commit() return redirect(f"/trip/{new_trip.trip_id}") else: flash("You need to be logged in to access that page") return redirect("/login")