Esempio n. 1
0
        if user_role is None:
            return [1, '您不是该小组成员!']
        if article_type in ['group-info', 'group-doc', 'group-notice']:
            if user_role != 'Manager':
                return [1, '您不是管理员,无权操作!']
        
        if article_type == "group-info":
            AF_Object = group.about
        else:
            try:
                AF_Object = class_map[article_type](_id=article_id)
            except Exception:
                AF_Object = class_map[article_type]()
                AF_Object.author = user
                AF_Object.env = group
                AF_Object.group_id = group._id
                isnew = True
            if AF_Object.group_id != group._id or AF_Object.author_id != user._id:
                return [1, '您不能操作该文章!']
            if isnew:
                if article_type in ['group-topic', 'group-feedback']:
                    user.drafts_lib.add_obj(AF_Object)
                elif article_type in ['group-notice', 'group-doc']:
                    group.drafts_lib.add_obj(AF_Object)

    article_id = str(AF_Object._id)

    rstring = {'isnew':isnew, 'article':article_id, 'alias':''}

    if src_type == 'reference':
        ref_lib =  AF_Object.reference_lib
Esempio n. 2
0
        if user_role is None:
            return [1, '您不是该小组成员!']
        if article_type in ['group-info', 'group-doc', 'group-notice']:
            if user_role != 'Manager':
                return [1, '您不是管理员,无权操作!']

        if article_type == "group-info":
            AF_Object = group.about
        else:
            try:
                AF_Object = class_map[article_type](_id=article_id)
            except Exception:
                AF_Object = class_map[article_type]()
                AF_Object.author = user
                AF_Object.env = group
                AF_Object.group_id = group._id
                isnew = True
            if AF_Object.group_id != group._id or AF_Object.author_id != user._id:
                return [1, '您不能操作该文章!']
            if isnew:
                if article_type in ['group-topic', 'group-feedback']:
                    user.drafts_lib.add_obj(AF_Object)
                elif article_type in ['group-notice', 'group-doc']:
                    group.drafts_lib.add_obj(AF_Object)

    article_id = str(AF_Object._id)

    rstring = {'isnew': isnew, 'article': article_id, 'alias': ''}

    if src_type == 'reference':
        ref_lib = AF_Object.reference_lib