Ejemplo n.º 1
0
def db_put_user(post, roles, token):
    user = DBSession.query(Users).filter(or_(Users.username == post['username'], Users.email == post['email'])).all()
    if not user:
        ts = time.time()
        DBSession.autoflush = False
        addprofiles = Profiles(post['fullname'], '', '', '')
        usersactivation = UsersActivation(token, ts)
        u = Users(post['username'], post['email'], hash_password(post['password']), ts, 1, addprofiles, usersactivation=usersactivation)
    
        DBSession.add(u)
        DBSession.flush()
        DBSession.refresh(u)
    
        for e in roles:
            ru = RolesUsers(u.id, e)
            DBSession.add(ru)
            DBSession.flush()
    
        try:
            transaction.commit()
        except:
            DBSession.rollback()
            return False
        else:
            return True
    else:
        return 3
Ejemplo n.º 2
0
def new_user2(post, roles, useavatars):

    ts = time.time()

    # Добавляем запись
    DBSession.autoflush = False

    if useavatars == 1 and "avatarsource" in post:
        # Если используем аваторы
        addprofiles = Profiles(post["fullname"], post["avatarsource"], post["avatarsize1"], post["avatarsize2"])
    else:
        # Если нет
        addprofiles = Profiles(post["fullname"])

    u = Users(post["username"], post["email"], hash_password(post["password"]), ts, 1, addprofiles)

    DBSession.add(u)
    DBSession.flush()
    DBSession.refresh(u)

    # Добавляем роли
    for e in roles:
        ru = RolesUsers(u.id, e)
        DBSession.add(ru)
        DBSession.flush()

    try:
        transaction.commit()
    except:
        DBSession.rollback()
        return False
    else:
        return u
Ejemplo n.º 3
0
def new_post2(post, tags):
    
    ts = time.time()
    
    #Добавляем запись
    DBSession.autoflush = False
    
    p = Blogs(post['title'], post['alias'], post['userid'], post['into'], post['content'],
              post['published'], post['comments'], post['comments_premoderation'], ts)
    
    DBSession.add(p)
    DBSession.flush()
    DBSession.refresh(p)
    
    #Добавляем тэги
    for e in tags:
        pt = TagsPosts(p.id, e)
        DBSession.add(pt)
        DBSession.flush()
        
    try:
        transaction.commit()
    except:
        DBSession.rollback()
        return False
    else:
        return p
def new_permission2(post):
    #Добавляем запись
    DBSession.autoflush = False
    r = Permissions(post['permname'], description=post['description'], ordering=post['order'])   
    DBSession.add(r)
    DBSession.flush()
    DBSession.refresh(r)
            
    try:
        transaction.commit()
    except:
        DBSession.rollback()
        return False
    else:
        return r
Ejemplo n.º 5
0
def new_role2(post, permissions):
    #Добавляем запись
    DBSession.autoflush = False
    r = Roles(post['rolename'], post['rolegroup'], description=post['description'], ordering=post['order'])   
    DBSession.add(r)
    DBSession.flush()
    DBSession.refresh(r)
    
    #Добавляем права
    for e in permissions:
        pr = PermissionsRoles(r.id, e)
        DBSession.add(pr)
        DBSession.flush()
            
    try:
        transaction.commit()
    except:
        DBSession.rollback()
        return False
    else:
        return r
Ejemplo n.º 6
0
def db_add_comment(post):

    p = get_bbparser()

    content = p.format(post["content"])

    DBSession.autoflush = False
    c = Comments(
        post["userid"], post["thread"], post["threadid"], post["threadtitle"], post["title"], content, post["created"]
    )
    DBSession.add(c)
    DBSession.flush()
    DBSession.refresh(c)

    try:
        transaction.commit()
        result = 1
    except:
        DBSession.rollback()
        result = 0

    u = DBSession.query(Users).filter(Users.id == post["userid"]).one()

    return (result, content, c.id, u.profiles.avatar3)