Example #1
0
def delete():
    id = int(request.args.get('id'))
    u = current_user()
    print('删除 topic 用户是', u, id)
    Topic.delete(id)

    return redirect(url_for('.index'))
Example #2
0
def delete(id):
    t = Topic.one(id=id)
    u = current_user()
    if u.id == t.user_id or u.is_admin():
        Topic.delete(id)
    update_created_topic_cache(t.user_id)
    return redirect(url_for('index.index'))
Example #3
0
 def delete_model(self, model):
     ts = Topic.all(user_id=model.id)
     for t in ts:
         Topic.delete(t.id)
     Reply.delete(user_id=model.id)
     User.delete(id=model.id)
     return True
Example #4
0
def delete():
    """
    话题删除
    """
    id = request.args.get('id')
    Topic.delete(id)
    return redirect(url_for('.index'))
Example #5
0
def delete(topic_id):
    u = current_user()
    t = Topic.find_by(id=topic_id)
    if u is None or u.id != t.user_id:
        return redirect(url_for('index.index'))
    Topic.delete(topic_id)
    return redirect(url_for('topic.index'))
Example #6
0
def delete():
    u = current_user()
    if u is None:
        return redirect(url_for('index.index'))
    id = request.args.get('id')
    print('删除 topic 用户是', u, id)
    Topic.delete(id)
    return redirect(url_for('.index'))
Example #7
0
    def post(self, topic_id):
        user = users.get_current_user()
        topic = Topic.get_by_id(int(topic_id))

        if topic.author_email == user.email() or users.is_current_user_admin():
            Topic.delete(topic=topic)

        return self.redirect_to("main-page")
Example #8
0
def delete():
    id = int(request.args.get('id'))
    u = current_user()
    if u is not None and u.username == config.admin['username']:
        Topic.delete(id)
        return redirect(url_for('.index'))
    else:
        abort(403)
Example #9
0
    def delete(cls, id):
        # 删除板块下所有帖子
        ts = Topic.all(board_id=id)

        for t in ts:
            Topic.delete(t.id)
        # 删除板块
        super().delete(id)
        return '成功删除'
Example #10
0
def delete():
    id = int(request.args.get('id'))
    u = current_user()
    t = Topic.one(id=id)

    if t.user_id == u.id:
        Topic.delete(id)

    return redirect(url_for('.index'))
Example #11
0
def delete():
    u = current_user()
    id = int(request.args['id'])
    t = Topic.one(id=id)
    if u.id == t.user_id:
        Topic.delete(id)
    else:
        pass
    return redirect(url_for('.index'))
Example #12
0
def delete():
    id = int(request.args.get('id'))
    u = current_user()
    print('删除 topic 用户是', u, id)
    Topic.delete(id)
    m = Reply.all(topic_id=id)
    for i in m:
        Reply.delete(i.id)
    return redirect(url_for('.index'))
Example #13
0
 def delete(cls, id):
     """
     删除板块,并且将对应的话题删除
     """
     from models.topic import Topic
     topics = Topic.find_all(board_id=id)
     for t in topics:
         Topic.delete(t.id)
     super().delete(id)
Example #14
0
    def post(self, topic_id):
        topic_del = Topic.get_by_id(int(topic_id))

        user = users.get_current_user()

        if topic_del.author_email == user.email(
        ) or users.is_current_user_admin():
            Topic.delete(topic=topic_del)

        return self.write("Topic deleted successfully.")
Example #15
0
 def post(self, topic_id):
     """ topic soft delete hahdler only by author or admin """
     topic = Topic.get_by_id(int(topic_id))
     user = User.logged_in_user()
     if User.is_admin(user) or User.is_author(user, topic):
         Topic.delete(topic)
         return self.redirect_to('main-page')
     else:
         return self.render_template("error.html",
                                     params={"message": TOPIC_AUTHOR})
Example #16
0
    def delete_model(self, model):
        # 先保存 replier id,Topic删除后就拿不到了
        rs = model.replies()
        rs_id = set([r.user_id for r in rs])

        Topic.delete(id=model.id)
        update_created_topic_cache(user_id=model.user_id)

        for _id in rs_id:
            update_replied_topic_cache(user_id=_id)
        return True
Example #17
0
def delete():
    u = current_user()

    # token = request.args['token']
    # user_id = csrf_tokens[token]
    # assert user_id == u.id

    id = int(request.args['id'])
    print('删除 topic 用户是', u, id)
    Topic.delete(id)
    return redirect(url_for('.index'))
Example #18
0
    def post(self, topic_id):

        topic = Topic.get_by_id(int(topic_id))
        user = users.get_current_user()

        if topic.author_email == user.email() or users.is_current_user_admin():
            Topic.delete(topic=topic)


        params = {"topic":topic, "user":user}
        return self.redirect_to("main-page",params=params)
Example #19
0
def delete():
    id = int(request.args.get('id'))
    topic = Topic.one(id=id)
    uid = topic.user_id
    u = current_user()
    if uid == u.id:
        print('删除 topic 用户是', u, id)
        Topic.delete(id)
    else:
        print('不是话题作者,无权删除')
    return redirect(url_for('.index'))
Example #20
0
def topic_delete():
    topic_id = int(request.args.get('id'))
    t = Topic.find(topic_id)
    user_id = t.user().id
    u = current_user()
    if u.username == 'admin':
        print('删除的帖子id是', topic_id, type(topic_id))
        Topic.delete(topic_id)

    ts = Topic.topics_reverse_order(user_id)
    user = User.find(user_id)
    return render_template('admin/manage_topic.html', ts=ts, user=user)
Example #21
0
def delete():
    id = int(request.args.get('id'))
    token = request.args.get('token')
    u = current_user()
    if u.id == 1 or u.id == Topic.find(id).user_id:
        # 管理员或话题创建者才有权限
        if token in csrf_tokens and csrf_tokens[token] == u.id:
            # 验证token
            Topic.delete(id)
            Reply.delete_all(dict(topic_id=id))
    csrf_tokens.pop(token)
    return redirect(url_for('index.index'))
Example #22
0
def delete_topic():
    topic_title = request.form['title']
    t = Topic.one(title=topic_title)
    topic_id = t.id
    user_id = t.user_id
    content = '您的帖子《{}》已被管理员删除'.format(t.title)
    form = dict(receiver_id=user_id,
                sender_id=current_user().id,
                content=content)
    Messages.new(form)
    Topic.delete(id=topic_id)
    Reply.delete(topic_id=topic_id)
    return redirect(url_for('.index'))
Example #23
0
def delete():
    token = request.args.get('token')
    if token in csrf_tokens:
        csrf_tokens.remove(token)
        id = int(request.args.get('id'))
        u = current_user()
        if u is not None:
            Topic.delete(id)
            return redirect(url_for('.index'))
        else:
            abort(404)
    else:
        abort(403)
Example #24
0
def delete():
    id = int(request.args.get('id'))
    token = request.args.get('token')
    u = current_user()

    if token in csrf_token and csrf_token[token] == u.id:
        csrf_token.pop(token)
        if u is not None:
            Topic.delete(id)
            return redirect(url_for('.index'))
        else:
            abort(404)
    else:
        abort(403)
Example #25
0
def delete():
    id = request.args.get('id')
    token = request.args.get('token')
    u = current_user()
    # print('删除 topic 用户是', u, id)
    # 判断 token 是否是我们给的

    if token in csrf_tokens and csrf_tokens[token] == u.id:
        csrf_tokens.pop(token)
        print('删除 topic 用户是', u, id)
        Topic.delete(id)
        return redirect(url_for('.index'))
    else:
        abort(403)
Example #26
0
File: topic.py Project: Jimyfar/bbs
def delete():
    u = current_user()
    created = 'created_topic_{}'.format(u.id)
    replied = 'replied_topic_{}'.format(u.id)
    cache.delete(created, replied)

    id = int(request.args.get('id'))
    print('删除 topic 用户是', u, id)
    t = Topic.one(id=id)
    for r in t.replies():
        Reply.delete(r.id)

    Topic.delete(id)
    return redirect(url_for('.index'))
Example #27
0
    def post(self, topic_id):
        logged_user = users.get_current_user()
        topic = Topic.get_by_id(int(topic_id))

        is_same_author = (topic.author_email == normalize_email(
            logged_user.email()))
        is_admin = users.is_current_user_admin()

        if is_same_author or is_admin:
            Topic.delete(topic_id)
        else:
            return self.write(
                "Error\nSorry, you're not allowed to delete this topic.")

        return self.redirect_to('home-page')
Example #28
0
def delete():
    id = int(request.args.get('id'))
    u = current_user()
    print('删除 topic 用户是', u, id)
    topic = Topic.one(id=id)
    uid = topic.user_id
    if u.id == uid:
        rs = topic.replies()
        for r in rs:
            Reply.delete(r.id)
        Topic.delete(id)
        return redirect(url_for('.index'))
    else:
        flash('没有权限', 'err')
        return redirect(url_for('.index'))
Example #29
0
def delete():
    id = int(request.args.get('id'))
    token = request.get('token')
    u = current_user()
    # 判断token 是否正确
    if token in csrf_tokens and csrf_tokens[token] == u.id:
        csrf_tokens.pop(token)
        if u is not None:
            print('删除 topic 用户是', u.id)
            Topic.delete(id)
            return redirect(url_for('.index'))
        else:
            abort(404)
    else:
        abort(403)
Example #30
0
def delete():
    id = int(request.args.get('id'))
    token = request.args.get('token')
    u = current_user()
    # 判断 token 是否是我们给的
    if token in csrf_tokens and csrf_tokens[token] == u.id:
        csrf_tokens.pop(token)
        if u is not None:
            print('删除 topic 用户是', u, id)
            Topic.delete(id)
            return redirect(url_for('.index'))
        else:
            abort(404)
    else:
        abort(403)
Example #31
0
def delete():
    id = request.args.get("id")
    u = current_user()
    token = request.args.get("token")
    # 判断token是否是我们给的
    if token in csrf_tokens and csrf_tokens[token] == u._id:
        csrf_tokens.pop(token)
        if u is not None:
            Topic.delete(id)
            return redirect(url_for('.index'))
        else:
            abort(404)
    else:
        flash("对不起你没有权限")
        return redirect(url_for('.index'))