def update_info():
    if request.method == 'POST':
        if not request_wants_json():
            user = User.find_by_id(g.user.id)
        else:
            user = User.find_by_id(request.form['uid'])
        user.firstname = request.form['firstname']
        user.lastname = request.form['lastname']
        user.email = request.form['email']
        email_user = User.find_by_email(user.email)
        if not request_wants_json():
            if email_user != None and email_user.id != g.user.id:
                flash("Our record shows that you have an account under the given email address already.")
                return render_template("users/update_info.html")
        else:
            if email_user != None and str(email_user.id) != request.form['uid']:
                ret = {"result": "Email address already exist."}
                return json.dumps(ret)
        if len(request.form['gender']) > 0:
            user.sex = request.form['gender'][0].upper()
        user.location = request.form['location']
        user.date_of_birth = request.form['date_of_birth']
        user.avatar = request.form['gravatar']
        user.about_me = request.form['about-me']
        User.save_to_db(user)
        if request_wants_json():
            ret = {"result": "OK"}
            return json.dumps(ret)
        flash('Your changes have been made!')
    return render_template("users/update_info.html")
def post_status():
    body = request.form['body']
    if 'uid' not in request.form:
        g.user.add_newsfeed(body)
    else:
        user = User.find_by_id(request.form['uid'])
        user.add_newsfeed(body)
    return jsonify(result="success");
def all_user_feeds(uid):
    user = User.find_by_id(uid)
    posts = user.followed_posts().paginate(1, 100, False)
    feeds = '{"feed":['
    for post in posts.items:
        feeds += '{"username":"******",' + '"body":"' + post.body + '",' + '"time":"' + str(post.timestamp) + '",' + '"avatar":"' + post.get_feed_avatar(post.userName, 80) + '"},'
    feeds = feeds[:len(feeds)-1]
    feeds += "]}"
    return feeds
def display_splash_contents():
    ret = Workout.getNewest()
    nWorkout = ret.to_hash()
    
    ret = User.getNewest()
    nuPic = ret.get_avatar(200)
    nUser = ret.to_hash()
    
    ret = User.find_by_id(8)
    mfPic = ret.get_avatar(200)
    mFollowed = ret.to_hash()
        
    w = {"Result":"OK", "nUser":nUser, "nuPic": nuPic,"nWorkout":nWorkout, "mostFollowed":mFollowed, "mfPic":mfPic}
    return jsonify(w)
def follow_btn():
    followee = request.args.get('followee', '', type=int)
    state = request.args.get('state', '', type=str)
    user = User.find_by_id(followee)    
    if state.startswith("Follow"):
        follower = g.user.follow(user)
        User.save_to_db(follower)
        if g.user.is_following(user):
            return jsonify(result="Unfollow") #g.user successfully followed user. So, we must change the state of the button
        else:
            return jsonify(resul="error") #we could return 'Follow' to just keep the state. But returning 'error' will say that something went wrong. Could be a database problem.
    follower = g.user.unfollow(user)
    User.save_to_db(follower)
    if not g.user.is_following(user):
        return jsonify(result="Follow") #g.user successfully unfollowed user
    else:
        return jsonify(result="error")
Пример #6
0
def load_user(id):
    return User.find_by_id(int(id))
Пример #7
0
 def test_find_by_id(self):
     u = User(username = '******', password = "******", email =
             '*****@*****.**')
     User.save_to_db(u)
     user = User.find_by_id(1)
     assert user != None