def add_comment(userid, thread, threadid, threadtitle, title, content): p = Parser() p.add_simple_formatter( "video", '<object width="480" height="360"><embed src="http://www.youtube.com/v/%(value)s" type="application/x-shockwave-flash" width="480" height="360"></embed></object>', ) p.add_simple_formatter( "img", '<img style="max-width:480px; max-height:400px;" src="%(value)s" alt="" />', replace_links=False ) ts = int(time.time()) DBSession.autoflush = False c = Comments(userid, thread, threadid, threadtitle, title, p.format(content), created=ts) DBSession.add(c) DBSession.flush() try: transaction.commit() result = 1 except: DBSession.rollback() result = 0 return result
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
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
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
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
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)