def increase_data(request): dir_name = os.path.dirname( os.path.abspath(__file__)) + "\\csv_uploads\\file.csv" params = request.GET if request.method == 'POST': if 'upload' in request.POST: dir_name = os.path.dirname( os.path.abspath(__file__)) + "\\csv_uploads\\values_data.csv" content = request.POST['file'].file content = content.read() content = content.decode('utf-8', 'ignore') my_dict = p.get_book(file_type="csv", file_content=content, delimiter=';') my_dict.save_as(dir_name, delimiter=';') with open(dir_name) as f: keys_data = f.readline().rstrip().split(";") params.update({'id': request.POST['achievement_id']}) return render_to_response( 'gengine.app:templates/index/increase_data.jinja2', { 'keys_data': keys_data, 'params': params }, request=request) elif 'value' in request.POST: user_id = request.POST["user_id"] variable = request.POST["variable"] value = request.POST["value"] user_id_value = request.POST["user_id_value"] achievement_id = request.POST['achievement_id'] res_id_user = User.get_by_id(user_id, user_id_value) Value.increaseByValue(variable, res_id_user, value) Achievement.update_user_value(achievement_id, res_id_user) return HTTPFound(request.route_url('increase_data', _query=params)) else: user_id = request.POST["user_id"] variable = request.POST["variable"] achievement_id = params["id"] Value.increase(achievement_id, variable, user_id, dir_name) return HTTPFound(request.route_url('leaderboard', _query=params)) else: with open(dir_name) as f: keys = f.readline().rstrip().split(";") achievements = Achievement.get_all_achievements() return {'achievements': achievements, 'params': params, 'keys': keys}
def goal(request): params = request.GET dir_name = os.path.dirname( os.path.abspath(__file__)) + "\\csv_uploads\\file.csv" if request.method == 'POST': user_id = params["user_id"] variable = request.POST["variable"] goal_name = request.POST["goal_name"] goal_goal = request.POST["goal_goal"] achievement_id = params["id"] goal_condition = request.POST["goal_condition"] Variable.add_variable(variable) Goal.add_goal(goal_name, goal_condition, goal_goal, achievement_id) Value.increase(achievement_id, variable, user_id, dir_name) return HTTPFound(request.route_url('leaderboard', _query=params)) else: with open(dir_name) as f: keys = f.readline().rstrip().split(";") return {'keys': keys, 'params': params}