Esempio n. 1
0
 def get_user_id_by_username(cls, username):
     sql = 'select id from %s where username = "******"' % (cls.Table, username)
     result = Database.execute(sql)
     if result is not None and len(result) == 1:
         return result[0][0]
     else:
         raise ArgsError("No such user")
Esempio n. 2
0
def update_user_avatar():
    img = request.files.get("filename")
    if img is None:
        raise ArgsError("require image file")
    avatar = Image.decode_imgfile_to_base64(img)
    g.current_user.avatar = avatar
    g.current_user.update_user_info()
    return jsonify(g.current_user.to_json())
Esempio n. 3
0
def get_blog(username, user_blog_id):
    try:
        user_blog_id = int(user_blog_id)
    except ValueError:
        raise ArgsError('Require {} type {}, but found {}'.format("user_blog_id", int, type(user_blog_id)))

    blog = Blog.get_blog(username, user_blog_id)
    return jsonify(blog.to_json())
Esempio n. 4
0
def love_blog(username, user_blog_id):
    try:
        user_blog_id = int(user_blog_id)
    except ValueError:
        raise ArgsError('Require {} type {}, but found {}'.format("user_blog_id", int, type(user_blog_id)))
    incr_value = Blog.love_blog(g.current_user.id, username, user_blog_id)
    return jsonify({
        "success": incr_value,
    });
Esempio n. 5
0
def get_one_blog_comment(comment_list):
    try:
        comment_list = comment_list[:-1].split(",")
    except BaseExpection as e:
        log.error(e)
        raise ArgsError('args comment_list format error')

    comment_list = Comment.get_one_blog_comment(reversed(comment_list))
    return jsonify([comment.to_json() for comment in comment_list])
Esempio n. 6
0
 def create_dict_by_result(cls, result) -> 'User':
     if result and len(result) >= 4:
         return {
             "id": result[0],
             "username": result[1],
             "avatar": result[2],
             "password": result[3],
         }
     else:
         raise ArgsError("No such user!")
Esempio n. 7
0
def delete(user_blog_id):
    try:
        user_blog_id = int(user_blog_id)
    except ValueError:
        raise ArgsError('Require {} type {}, but found {}'.format("user_blog_id", int, type(user_blog_id)))

    Blog.delete_by_user_blod_id(g.current_user.id, int(user_blog_id))
    return jsonify({
        "success": "blog alerady delete",
    });
Esempio n. 8
0
 def select_comment_by_id(cls, comment_id):
     sql = 'select id, user_id, comment from %s where id=%d' % (
         cls.Table, int(comment_id))
     result = Database.execute(sql)
     if result is ():
         raise ArgsError('no such comment')
     return {
         "id": result[0][0],
         "user_id": result[0][1],
         "comment": json.loads(result[0][2]),
     }
Esempio n. 9
0
        def wrapper_func(*args, **kwargs):
            value = request.form.getlist(arg_name) if issubclass(
                arg_type, list) else request.form.get(arg_name)

            if not value:
                raise ArgsError('Require args {}'.format(arg_name))

            if issubclass(arg_type, int) and issubclass(type(value), str):
                try:
                    value = int(value)
                except ValueError:
                    raise ArgsError(
                        'Require args {}, require type: {}, but found type: {}'
                        .format(arg_name, str(arg_type), str(type(value))))
            else:
                if not issubclass(type(value), arg_type):
                    raise ArgsError(
                        'Require args {}, require type: {}, but found type: {}'
                        .format(arg_name, str(arg_type), str(type(value))))

            return func(*args, *kwargs.values(), value)
Esempio n. 10
0
 def by_id(cls, user_id) -> 'User':
     sql = 'select id, username, avatar, password from %s where id="%s"' % (cls.Table, user_id)
     results = Database.execute(sql)
     if len(results) != 1:
         raise ArgsError("Username error")
     return cls.create_dict_by_result(results[0])
Esempio n. 11
0
 def load(cls, username, password) -> 'User':
     sql = 'select id, username, avatar, password from %s where username="******"' % (cls.Table, username)
     results = Database.execute(sql)
     if password != results[0][3]:
         raise ArgsError("unmatch password")
     return cls.create_dict_by_result(results[0])
Esempio n. 12
0
 def wrapper_func(*args, **kwargs):
     user_id = session.get('user_id')
     g.current_user = User.by_id(user_id)
     if not g.current_user:
         raise ArgsError('Require login')
     return func(*args, **kwargs)
Esempio n. 13
0
def search_blog(username, search_key_word):
    blogs = Blog.search_blog(username, search_key_word)
    if blogs:
        return jsonify([blog.to_json() for blog in blogs])
    else:
        raise ArgsError('no search found')