示例#1
0
def anon_profile(user_id_hash):
    try:
        user = User.query.get(user_id_hash)
    except:
        user = False
    if not user:
        return authorise()
    else:
        token = get_facebook_oauth_token()
        recalculate = False
        if token:
            try:
                visit_user_id = fb(token, "me")["id"]
                if str(user.user_id) == visit_user_id:
                    recalculate = True
            except:
                pass
        user.first_name = "Anon"
        user.last_name = ""
        user.name = "Anon"
        user.avatar = "https://randomuser.me/api/portraits/lego/" + str(
            randint(1, 5)) + ".jpg"
        return render_template("profile.html",
                               user=user,
                               recalculate=recalculate,
                               anon=False)
示例#2
0
def profile(user_id):
    try:
        user = User.query.get(md5(user_id))
        print(user)
    except:
        user = False
    if not user:
        try:
            token = get_facebook_oauth_token()
        except:
            return authorise()
        me = User(token, user_id)
        return render_template("incomplete_profile.html", user=me)
    else:
        token = get_facebook_oauth_token()
        recalculate = False
        if token:
            try:
                visit_user_id = fb(token, "me")["id"]
                if str(user_id) == visit_user_id:
                    recalculate = True
            except:
                pass
        return render_template("profile.html",
                               user=user,
                               recalculate=recalculate,
                               anon=True)
示例#3
0
def remove_entry(user_id):
    try:
        token = get_facebook_oauth_token()
        me = fb(token, "me")
        if str(user_id) == me["id"]:
            User.query.filter_by(id=user_id).delete()
            db.session.commit()
        return authorise()
    except:  # If anything goes wrong, reauthorise
        return authorise()
示例#4
0
def facebook_authorized(resp):
    if resp is None:
        return 'Access denied: reason=%s error=%s' % (
            request.args['error_reason'], request.args['error_description'])
    session['oauth_token'] = (resp['access_token'], '')
    try:
        user_id = fb(resp['access_token'], "me")["id"]
        session['user_id'] = (str(user_id), '')
    except:
        return authorise()
    return redirect(url_for('profile', user_id=user_id))
示例#5
0
def go_anon(user_id):
    token = get_facebook_oauth_token()
    if token:
        try:
            visit_user_id = fb(token, "me")["id"]
            try:
                user = User.query.get(md5(user_id))
            except:
                return authorise()
            if str(user_id) == visit_user_id:
                return redirect("/anon/" + user.hash_id)
        except:
            return authorise()