Ejemplo n.º 1
0
 def post(self, *args, **kwargs):
     json_data = get_cleaned_json_data(self, ['opt', 'data'])
     data = json_data['data']
     opt = json_data['opt']
     # 支持某个回复
     if opt == 'support-postreply':
         try:
             postreply = PostReply.get(PostReply.id == data['postreply'])
         except:
             self.write(json_result(1, '请输入正确的回复'))
             return
         postreply.up_like()
         self.write(json_result(0, 'success'))
     # 收藏该主题
     elif opt == 'collect-post':
         try:
             post = Post.get(Post.id == data['post'])
         except:
             self.write(json_result(1, '请输入正确的Post'))
             return
         CollectPost.create(post=post, user=self.current_user)
         self.write(json_result(0, 'success'))
     # 取消收藏该主题
     elif opt == 'cancle-collect-post':
         try:
             post = Post.get(Post.id == data['post'])
         except:
             self.write(json_result(1, 'CollectPost不正确'))
             return
         collectpost = CollectPost.get(post=post, user=self.current_user)
         collectpost.delete_instance()
         self.write(json_result(0, 'success'))
     else:
         self.write(json_result(1, 'opt不支持'))
Ejemplo n.º 2
0
    def get(self, user_id, *args, **kwargs):
        user = User.get(User.id == user_id)
        profile = Profile.get_by_user(user)
        posts = Post.select().where(Post.user == user,
                                    Post.is_delete == False).limit(10)
        postreplys = PostReply.select().where(PostReply.user == user).limit(10)
        collectposts = CollectPost.select().where(
            CollectPost.user == user).limit(10)

        who_follow = Follower.select(
            Follower.follower).where(Follower.user == user)
        follow_who = Follower.select(
            Follower.user).where(Follower.follower == user)

        # 是否显示关注
        is_follow = True if Follower.is_follow(user,
                                               self.current_user) else False
        is_online = True if WebsocketChatHandler.is_online(
            user.username) else False
        self.render('user/profile.html',
                    user=user,
                    who_follow=who_follow,
                    follow_who=follow_who,
                    profile=profile,
                    posts=posts,
                    postreplys=postreplys,
                    is_follow=is_follow,
                    is_online=is_online,
                    collectposts=collectposts)
Ejemplo n.º 3
0
 def get(self, post_id, *args, **kwargs):
     post = Post.get(Post.id == post_id)
     post.up_visit()
     post_detail = post
     post_replys = PostReply.list_all(post)
     self.render('post/post_detail.html',
                 post_detail=post_detail,
                 post_replys=post_replys,
                 is_collect=CollectPost.is_collect(post, self.current_user),
                 hot_post_cache=hot_post_cache,
                 topic_category_cache=topic_category_cache)
Ejemplo n.º 4
0
def get_post_user_ext(post, user):
    ext = type('ext', (), {})
    is_collect = CollectPost.is_collect(post, user)
    if user:
        is_own = post.check_own(user)
        is_auth = user.is_admin()
    else:
        is_own = False
        is_auth = False

    setattr(ext, 'is_collect', is_collect)
    setattr(ext, 'is_own', is_own)
    setattr(ext, 'is_auth', is_auth)
    return ext
Ejemplo n.º 5
0
def get_post_user_ext(post, user):
    ext = type('ext', (), {})
    is_collect = CollectPost.is_collect(post, user)
    if user:
        is_own = post.check_own(user)
        is_auth = user.is_admin()
    else:
        is_own = False
        is_auth = False

    setattr(ext, 'is_collect', is_collect)
    setattr(ext, 'is_own', is_own)
    setattr(ext, 'is_auth', is_auth)
    return ext
Ejemplo n.º 6
0
 def get(self, user_id, *args, **kwargs):
     user = User.get(User.id == user_id)
     profile = Profile.get_by_user(user)
     posts = Post.select().where(Post.user == user).limit(10)
     postreplys = PostReply.select().where(PostReply.user == user).limit(10)
     collectposts = CollectPost.select().where(
         CollectPost.user == user).limit(10)
     # 是否显示关注
     is_follow = Follower.is_follow(user, self.current_user)
     self.render('user/profile.html',
                 user=user,
                 profile=profile,
                 posts=posts,
                 postreplys=postreplys,
                 is_follow=is_follow,
                 collectposts=collectposts)
Ejemplo n.º 7
0
    def get(self, user_id, *args, **kwargs):
        user = User.get(User.id == user_id)
        profile = Profile.get_by_user(user)
        posts = Post.select().where(Post.user == user, Post.is_delete == False).limit(10)
        postreplys = PostReply.select().where(PostReply.user == user).limit(10)
        collectposts = CollectPost.select().where(CollectPost.user == user).limit(10)

        who_follow = Follower.select(Follower.follower).where(Follower.user == user)
        follow_who = Follower.select(Follower.user).where(Follower.follower == user)

        # 是否显示关注
        is_follow = True if Follower.is_follow(user, self.current_user) else False
        is_online = True if WebsocketChatHandler.is_online(user.username) else False
        self.render('user/profile.html',
                    user=user,
                    who_follow=who_follow,
                    follow_who=follow_who,
                    profile=profile,
                    posts=posts,
                    postreplys=postreplys,
                    is_follow=is_follow,
                    is_online=is_online,
                    collectposts=collectposts)
Ejemplo n.º 8
0
def get_index_user_info(user):
    posts = Post.select().where(Post.user == user, Post.is_delete == False).count()
    collectposts = CollectPost.select().where(CollectPost.user == user).count()
    return {'posts_count': posts, 'collectposts_count': collectposts}
Ejemplo n.º 9
0
def get_index_user_info(user):
    posts = Post.select().where(Post.user == user,
                                Post.is_delete == False).count()
    collectposts = CollectPost.select().where(CollectPost.user == user).count()
    return {'posts_count': posts, 'collectposts_count': collectposts}