示例#1
0
def new_user(request, response):
    content = request['content']
    session_data = server.get_session(request)
    if session_data and 'user' in session_data:
        new_user = content['user'][0]
        redis_server.sadd('all_users', new_user)
    return home(request, response)
示例#2
0
def new_user(request, response):
    content = request['content']
    session_data = server.get_session(request, response)
    if session_data and 'user' in session_data:
        new_user = content['user'][0]
        redis_server.sadd('all_users', new_user)
    return home(request, response)
示例#3
0
def update_profile(request, response):
    session_data = server.get_session(request, response)
    if session_data and 'user' in session_data:
        name = request['content']['name'][0]
        email = request['content']['email'][0]
        redis_key = 'user_profile' + ':' + session_data['user']
        user_details = {'name': name, 'email': email}
        redis_server.hmset(redis_key, user_details)
        return home(request, response)
示例#4
0
def update_profile(request, response):
    session_data = server.get_session(request)
    if session_data and 'user' in session_data:
        name = request['content']['name'][0]
        email = request['content']['email'][0]
        redis_key = 'user_profile' + ':' + session_data['user']
        user_details = {'name': name, 'email': email}
        redis_server.hmset(redis_key, user_details)
        return home(request, response)
示例#5
0
def login(request, response):
    session_data = server.get_session(request)
    if session_data and "user_id" in session_data:
        with open("./public/html/index.html", "rb") as file_descriptor:
            res = file_descriptor.read()
        return server.send_html_handler(request, response, res)
    with open("./public/html/pyExamLogin.html", "rb") as file_descriptor:
        res = file_descriptor.read()
    return server.send_html_handler(request, response, res)
示例#6
0
def fetch_bus_info(request):
	bus_no = request.params.get('bus_no','')
	assert bus_no, 'Keyword expected as bus_no. Got nothing instead'
	engine = create_engine('sqlite:///buses.db', echo=True)
	Session = get_session(engine)
	results = Session.query(BusRoute).filter(BusRoute.bus_no==bus_no)
	if results.count():
		bus_route = results.one()
		return Response("Starting:{0}<br/>Ending:{1}<br/>Route Info:{2}".format(bus_route.start_point, bus_route.end_point, bus_route.route))
	return Response("Invalid Bus No:%s" % bus_no)
示例#7
0
def track_session(qList, request):
    session_data = server.get_session(request)
    print("\n\nsession data : {0}".format(session_data))
    # l = []
    # l.append(session_data["user_id"])
    # l.append(qList)
    cursor.execute("INSERT INTO sessionTrack VALUES(?,?)", (
        session_data["user_id"],
        str(qList),
    ))
示例#8
0
def login_success_get(request, response):
    print("login_success - User already logged in")
    session_data = server.get_session(request)
    if session_data and "user_id" in session_data:
        with open("./public/html/index.html", "rb") as file_descriptor:
            res = file_descriptor.read()
        return server.send_html_handler(request, response, res)
    else:
        with open("./public/html/pyExamLogin.html", "rb") as file_descriptor:
            res = file_descriptor.read()
        return server.send_html_handler(request, response, res)
示例#9
0
def new_blog(request, response):
    session_data = server.get_session(request, response)
    if session_data and 'user' in session_data:
        title = request['content']['title'][0]
        blog = request['content']['blog'][0]
        redis_server.incr('counter')
        counter = redis_server.get('counter')
        blog_id = 'blog' + counter
        blog_details = {'title': title, 'content': blog, 'time': time.time()}
        redis_server.hmset(blog_id, blog_details)
        redis_server.sadd('user_blogs' + ':' + session_data['user'], blog_id)
        redis_server.sadd('all_blogs', blog_id)
        redis_server.save()
    return home(request, response)
示例#10
0
def new_blog(request, response):
    session_data = server.get_session(request)
    if session_data and 'user' in session_data:
        title = request['content']['title'][0]
        blog = request['content']['blog'][0]
        redis_server.incr('counter')
        counter = redis_server.get('counter')
        blog_id = 'blog' + counter
        blog_details = {'title': title, 'content': blog, 'time': time.time()}
        redis_server.hmset(blog_id, blog_details)
        redis_server.sadd('user_blogs' + ':' + session_data['user'], blog_id)
        redis_server.sadd('all_blogs', blog_id)
        redis_server.save()
    return home(request, response)
示例#11
0
def home(request, response):
    data = html_header()
    session_data = server.get_session(request, response)
    if session_data and 'user' in session_data:
        data += 'Hi '
        user = str(session_data['user'])
        data += user
        blogs = redis_server.smembers('user_blogs' + ':' + user)
    else:
        blogs = redis_server.smembers('all_blogs')
    for blog in blogs:
        data += '<p>'
        data += redis_server.hget(blog, 'title')
        data += '<br>'
        data += redis_server.hget(blog, 'content')
        data += '</p>'
    data += html_tail()
    server.send_html_handler(request, response, data)
示例#12
0
def home(request, response):
    data = html_header()
    session_data = server.get_session(request)
    if session_data and 'user' in session_data:
        data += 'Hi '
        user = str(session_data['user'])
        data += user
        blogs = redis_server.smembers('user_blogs' + ':' + user)
    else:
        blogs = redis_server.smembers('all_blogs')
    for blog in blogs:
        data += '<p>'
        data += redis_server.hget(blog, 'title')
        data += '<br>'
        data += redis_server.hget(blog, 'content')
        data += '</p>'
    data += html_tail()
    server.send_html_handler(request, response, data)
示例#13
0
def showQuestionPost(request, response):
    score = 0
    flag = 0
    global data
    session_data = server.get_session(request)
    que_list = db.get_qlist(session_data["user_id"])
    for qno in list(request['content'].keys()):
        if qno not in que_list:
            flag = 1
    if flag == 1:
        return server.send_html_handler(request, response, str(-1))
    for qno in list(request['content'].keys()):
        for q in data:
            if str(q['QNo']) == qno:
                if str(q['Answer']) == request['content'][qno]:
                    score += q["Score"]
    print("\n\nScore : {0}".format(score))
    return server.send_html_handler(request, response, str(score))
示例#14
0
def login_success(request, response):
    print("login_success - User already logged in")
    session_data = server.get_session(request)
    if session_data and "user_id" in session_data:
        with open("./public/html/index.html", "rb") as file_descriptor:
            res = file_descriptor.read()
        return server.send_html_handler(request, response, res)
    csrf_guid = str(uuid.uuid4())
    account_kit_api_version = 'v1.0'
    app_id = '611513125703977'
    app_secret = 'c35593347c45e6047165f99811b39c6c'
    me_endpoint_base_url = 'https://graph.accountkit.com/v1.0/me'
    token_exchange_base_url = 'https://graph.accountkit.com/v1.0/access_token'
    token_exchange_url = token_exchange_base_url + '?grant_type=authorization_code&code=' + request[
        'content']['code'] + '&access_token=AA|' + app_id + '|' + app_secret
    r = requests.get(token_exchange_url)
    rJson = json.loads(r.text)
    print("\n\nid: ", rJson['access_token'], "\n\n")
    me_endpoint_url = 'https://graph.accountkit.com/v1.0/me?access_token=' + rJson[
        'access_token']
    print(me_endpoint_url)
    s = requests.get(me_endpoint_url)
    sJson = json.loads(s.text)

    user_id = rJson['id']
    content = {"user_id": user_id}
    server.add_session(request, content)
    # print(sJson)
    #   res = """<head>
    # <title>Account Kit Python App</title>
    # </head>
    # <body>
    # <div>User ID: {0}</div>
    # <div>Phone: {1}</div>
    # <div>Access Token: {2}</div>
    # <div>Refresh Interval: {3}</div>
    # </body>""".format(rJson['id'],sJson['phone']['number'],rJson['access_token'],rJson['token_refresh_interval_sec'])
    with open("./public/html/index.html", "rb") as file_descriptor:
        res = file_descriptor.read()
    return server.send_html_handler(request, response, res)