Beispiel #1
0
def add_day_data():
    log.info("/add_day_data")
    pretty_print_POST(request)
    response = json.loads(request.data)
    ok_add, ok_once, ok_inc = False, False, False
    if len(db_fetch(query.add_day_data_check_rows.format(response["date"],response["userid"]))) == 0:
        log.info("adding row for date {} for user {}".format(response["date"],response["userid"]))
        statement = query.add_day_data_add_row.format(response["date"],response["userid"])
        log.info("query: {}".format(statement))
        ok_add = db_insup(statement)
    
    if response["add_type"] == "once":
        statement = query.add_day_data_set_value_once.format(response["type"],response["value"],response["date"],response["userid"])
        log.info("query: {}".format(statement))
        ok_once = db_insup(statement)

    if response["add_type"] == "increment":
        statement = query.add_day_data_fetch_value.format(response["type"],response["date"],response["userid"])
        log.info("query: {}".format(statement))
        result = db_fetch(statement)
        new_val = float(response["value"])
        if result[0][0]:
            new_val += float(result[0][0])
        log.info("updating value")
        statement = query.add_day_data_set_value_once.format(response["type"],new_val,response["date"],response["userid"])
        log.info("query: {}".format(statement))
        ok_inc = db_insup(statement)

    return Response(json.dumps({"inserted": ok_add or ok_once or ok_inc}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #2
0
def update_session_info():
    log.info("/update_session_info")
    pretty_print_POST(request)
    response = json.loads(request.data)
    session_id = response["session_id"]
    answers = response["answers"]
    start_ts,end_ts = response["start"],response["end"]
    if not response["date"]:
        date = str(datetime.datetime.now()).split(' ')[0]
    else:
        date = response["date"]
    start_ts = ' '.join([date,start_ts])
    end_ts = ' '.join([date,end_ts])
    start = datetime.datetime.strptime(start_ts, '%Y-%m-%d %H:%M:%S')
    end   = datetime.datetime.strptime(end_ts, '%Y-%m-%d %H:%M:%S')
    duration = math.ceil(float((end-start).seconds/60.0))
    for ans in answers:
        if ans["q_id"] == "0":
            rating = ans["val"]

    statement = query.update_session_info1.format(start,end,duration,rating,session_id)
    log.info("query: {}".format(statement))
    ok_1 = db_insup(statement)

    ok_2 = True
    for ans in answers:
        statement = query.update_session_info2.format(ans["val"],session_id,ans["q_id"])
        log.info("query: {}".format(statement))
        ok = db_insup(statement)
        ok_2 = ok_2 and ok

    return Response(json.dumps({"insert":ok_1 and ok_2}), headers=HEADER, status=200, mimetype='application/json')   
Beispiel #3
0
def register_app_instance():
    log.info("/register_app_instance")
    pretty_print_POST(request)
    response = json.loads(request.data)
    statement = query.register_app_instance.format(response["userid"],response["appid"])
    log.info("query: {}".format(statement))
    ok = db_insup(statement)

    return Response(json.dumps({"event_created": ok}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #4
0
def register_device_key():
    log.info("/register_device_key")
    pretty_print_POST(request)
    response = json.loads(request.data)
    statement = query.register_device_key.format(response["device_key"],response["user_id"])
    log.info("query: {}".format(statement))
    ok = db_insup(statement)

    return Response(json.dumps({"msg": ok}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #5
0
def login_info():
    log.info('/login_info')
    pretty_print_POST(request)
    response = json.loads(request.data)
    for_users_table_vals = "('{}','{}','{}','{}','{}')".format(response["name"],response["email"],response\
                                                   ["userid"],response["password"],generate_device_key())
    statement = query.login_info.format(for_users_table_vals)
    log.info("query: {}".format(statement))
    ok = db_insup(statement)

    return Response(json.dumps({"msg": ok}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #6
0
def save_response():
    log.info("/save_response")
    pretty_print_POST(request)
    response = json.loads(request.data)
    uid = response["user_id"]
    val = ""
    for a in response["answers"]:
        val += ",('{}','{}','{}','{}')".format(uid,a["qid"],a["ans"],str(datetime.datetime.now()).split('.')[0])
    log.info("query: {}".format(query.save_response_ins.format(val[1:])))
    ok = db_insup(query.save_response_ins.format(val[1:]))

    return Response(json.dumps({"msg": ok}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #7
0
def register_coach_student():
    log.info("/register_coach_student")
    pretty_print_POST(request)
    response = json.loads(request.data)
    send_data = []
    for ath in response["athlete_ids"]:
        statement = query.register_coach_student.format(ath,response["userid"],\
                    str(datetime.datetime.now()).split('.')[0],response["type_id"])   
        log.info("query: {}".format(statement))
        if db_insup(statement):
            send_data.append(ath)

    return Response(json.dumps({"inserted": send_data}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #8
0
def register_user_info():
    log.info("/register_user_info")
    pretty_print_POST(request)
    response = json.loads(request.data)
    for_users_info_table_vals = "('{}',{},'{}',{},{},'{}','{}',{})".\
                                format(response["userid"],response["age"],\
                                response["gender"],response["height"],response["weight"],\
                                response["s_id"],response["org"],response["role"])
    statement = query.register_user_info.format(for_users_info_table_vals)
    log.info("query: {}".format(statement))
    ok = db_insup(statement)

    return Response(json.dumps({"register": ok}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #9
0
def get_user_info_post():
    log.info('/get_user_info')
    pretty_print_POST(request)
    response = json.loads(request.data)
    statement_validate = query.get_user_info_validate_user.format(response["userid"])
    log.info("query: {}".format(statement_validate))
    result = db_fetch(statement_validate)
    if len(result) == 0:
        return Response(json.dumps({"error": "user not registered"}), headers=HEADER, status=200, mimetype='application/json')
    if result[0][0] != response["password"]:
        return Response(json.dumps({"error": "password invalid"}), headers=HEADER, status=200, mimetype='application/json')
    user_data = get_user_details(response["userid"])

    return Response(json.dumps(user_data), headers=HEADER, status=200, mimetype='application/json')
Beispiel #10
0
def edit_qstn_response():
    pretty_print_POST(request)
    log.info("/edit_qstn_response")
    response = json.loads(request.data)
    uid = response["user_id"]
    send_response = []
    for a in response["answers"]:
        statement = query.edit_qstn_response.format(a["ans"],uid,a["qid"])
        log.info("query: {}".format(statement))
        ok = db_insup(statement)
        if ok:
            send_response.append(a["qid"])

    return Response(json.dumps({"updated_qids":send_response}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #11
0
def register_injury():
    log.info("/register_injury")
    pretty_print_POST(request)
    response = json.loads(request.data)
    if response["date"]:
        date = response["date"]
    else:
        date = str(datetime.datetime.now()).split('.')[0]
    val = "('{}','{}','{}','{}','{}','{}',{})".format(response["userid"],response["desc"],\
          date,response["type"],response["location"],response["region"],response["intensity"])
    statement = query.register_injury.format(val)
    log.info("query: {}".format(statement))
    ok = db_insup(statement)

    return Response(json.dumps({"msg": ok}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #12
0
def update_user_info():
    pretty_print_POST(request)
    log.info("/update_user_info")
    response = json.loads(request.data)
    uid = response["userid"]
    statement_update_users = query.update_user_info_1.format(response["name"],response["email"],uid)
    log.info("query: {}".format(statement_update_users))
    ok_users = db_insup(statement_update_users)

    statement_update_user_info = query.update_user_info_2.format(response["age"],response["gender"],\
                                 response["height"],response["weight"],response["sport_id"],\
                                 response["organization"],response["role"],uid)
    log.info("query: {}".format(statement_update_user_info))
    ok_user_information = db_insup(statement_update_user_info)
    ok = ok_users and ok_user_information

    return Response(json.dumps({"update":ok}), headers=HEADER, status=200, mimetype='application/json')
Beispiel #13
0
def post_event():
    log.info("/post_event")
    pretty_print_POST(request)
    response = json.loads(request.data)
    start_date = '-'.join([response["start"]["year"],response["start"]["month"],response["start"]["day"]])
    start_time = ':'.join([response["start"]["hours"],response["start"]["minutes"],response["start"]["seconds"]])
    start = ' '.join([start_date,start_time])
    end_date = '-'.join([response["end"]["year"],response["end"]["month"],response["end"]["day"]])
    end_time = ':'.join([response["end"]["hours"],response["end"]["minutes"],response["end"]["seconds"]])
    end = ' '.join([end_date,end_time])
    created = str(datetime.datetime.now()).split('.')[0]
    
    vals = "('{}','{}','{}','{}','{}','{}')".format(start,created,response["desc"],response["title"],end,response["userid"])
    statement = query.post_event.format(vals)
    log.info("query: {}".format(statement))
    ok = db_insup(statement)

    return Response(json.dumps({"event_created": ok}), headers=HEADER, status=200, mimetype='application/json')