def update_workout(id): if request.method == 'OPTION': return Response() user_id = session.get('user_id', None) if user_id is None: return jsonify({'success': False}), 403 workout = Workout.get(id) if workout.user.id != user_id: return jsonify({'success': False}), 403 name = request.get_json().get('name') Workout.update(id, name) return jsonify({'success': True})
def create_workout(): try: all_data = request.get_json() name = all_data['name'] focus = all_data['focus'] repeat = all_data['repeat'] if 'exercises' in all_data.keys(): exercises = all_data['exercises'] else: exercises = None for value in [name, focus, repeat]: if value is None: abort(400) workout = Workout(name=name, focus=focus, repeat=repeat) except Exception: abort(400) if exercises is None: # insert Workout with no WorkoutExercises rows try: workout.insert() except Exception: abort(400) else: # insert Workout, get id, then create WorkoutExercises rows try: workout.insert_without_commit() for exercise in exercises: e_id = Exercise.query.filter( Exercise.name == exercise['name']).first().id workout_exercise = WorkoutExercise( workout_id=workout.id, exercise_id=e_id, sets=exercise['sets'], reps=exercise['reps'], weight=exercise['weight']) workout_exercise.insert_without_commit() workout.update() except Exception: abort(404) return jsonify({'success': True, 'id': workout.id})
def update_workout(id): try: workout = Workout.update({ 'end_time': datetime.now() }).where(Workout.id == id) workout.execute() return Workout.get(Workout.id == id) except Exception as e: print("HUGE", str(e)) return str(e)