def post(self): workout_title = self.request.get("workout") new_workout = Workout(parent = PARENT_KEY, title = workout_title) new_workout.put() arguments = self.request.arguments() exercises = [ {} for i in range( utils.findLength(arguments) ) ] print exercises for argu in arguments: if str(argu) != 'workout': num = utils.findPosition(argu) if utils.is_time(argu): exercises[num]['time'] = int(self.request.get(argu)) if utils.is_rest(argu): exercises[num]['rest'] = int(self.request.get(argu)) if utils.is_name(argu): exercises[num]['name'] = str(self.request.get(argu)) print exercises for counter, exercise in enumerate(exercises): ## Needs to be ordered print counter print exercise new_exercise = Exercise(parent = PARENT_KEY, name = exercise['name'], time = exercise['time'], rest = exercise['rest'], workout_title = workout_title, order = counter) new_exercise.put() self.redirect('/home')
def upload(): failed = False # Need 'force=True' for file upload data = request.get_json(force=True) # So very, very insecure username = data.get('username') password = data.get('password') user = query_user(username, password) if user is None: return redirect(url_for('page_unauthorized'), 'No such user') action = data.get('action') user_key = user.key if action == 'workout': photo_url, blob_key = get_photo_url_and_blob_key() try: workout_dict = data.get('workout') new_workout = Workout( user_key = user_key, name = workout_dict.get('name'), blob_key = blob_key, photo_url = photo_url, text = workout_dict.get('text'), exercises = workout_dict.get('exercises') ) new_workout.put() except: print("Failed to create new workout: {0}".format(sys.exc_info()[0])) failed = True elif action == 'stats': try: stats_dict = data.get('stats') new_stats = Stats( user_key = user_key, weight = stats_dict.get('weight'), height_inches = stats_dict.get('height_inches'), height_feet = stats_dict.get('height_feet'), body_fat = stats_dict.get('body_fat'), ) new_stats.put() except: print("Failed to create new workout: {0}".format(sys.exc_info()[0])) failed = True else: return redirect(url_for('page_unauthorized'), 'No such operation') if failed: return "failed" return "success"
def upload(): failed = False # Need 'force=True' for file upload data = request.get_json(force=True) # So very, very insecure username = data.get('username') password = data.get('password') user = query_user(username, password) if user is None: return redirect(url_for('page_unauthorized'), 'No such user') action = data.get('action') user_key = user.key if action == 'workout': photo_url, blob_key = get_photo_url_and_blob_key() try: workout_dict = data.get('workout') new_workout = Workout(user_key=user_key, name=workout_dict.get('name'), blob_key=blob_key, photo_url=photo_url, text=workout_dict.get('text'), exercises=workout_dict.get('exercises')) new_workout.put() except: print("Failed to create new workout: {0}".format( sys.exc_info()[0])) failed = True elif action == 'stats': try: stats_dict = data.get('stats') new_stats = Stats( user_key=user_key, weight=stats_dict.get('weight'), height_inches=stats_dict.get('height_inches'), height_feet=stats_dict.get('height_feet'), body_fat=stats_dict.get('body_fat'), ) new_stats.put() except: print("Failed to create new workout: {0}".format( sys.exc_info()[0])) failed = True else: return redirect(url_for('page_unauthorized'), 'No such operation') if failed: return "failed" return "success"
def create_workout(form, user_key=None, photo_url=None, blob_key=None): try: new_workout = Workout(user_key=user_key, name=form.name.data, blob_key=blob_key, photo_url=photo_url, exercises=form.workout_set.data) new_workout.put() except: print("Failed to create new workout: {0}".format(sys.exc_info()[0])) return None return new_workout
def create_workout(form, user_key=None, photo_url=None, blob_key=None): try: new_workout = Workout( user_key = user_key, name = form.name.data, blob_key = blob_key, photo_url = photo_url, exercises = form.workout_set.data ) new_workout.put() except: print("Failed to create new workout: {0}".format(sys.exc_info()[0])) return None return new_workout