Mercurial > public > src > rhodecode
diff pylons_app/lib/auth.py @ 374:664a5b8c551a
Added application settings, are now customizable from database
fixed all instances of sqlachemy to be removed() after execution.
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Wed, 14 Jul 2010 18:31:06 +0200 |
parents | 6484963056cd |
children | 5bbcc0cac389 |
line wrap: on
line diff
--- a/pylons_app/lib/auth.py Wed Jul 14 18:15:37 2010 +0200 +++ b/pylons_app/lib/auth.py Wed Jul 14 18:31:06 2010 +0200 @@ -47,7 +47,10 @@ @cache_region('super_short_term', 'cached_user') def get_user_cached(username): sa = meta.Session - user = sa.query(User).filter(User.username == username).one() + try: + user = sa.query(User).filter(User.username == username).one() + finally: + meta.Session.remove() return user def authfunc(environ, username, password): @@ -89,8 +92,12 @@ @param config: """ log.info('getting information about all available permissions') - sa = meta.Session - all_perms = sa.query(Permission).all() + try: + sa = meta.Session + all_perms = sa.query(Permission).all() + finally: + meta.Session.remove() + config['available_permissions'] = [x.permission_name for x in all_perms] def set_base_path(config): @@ -140,7 +147,8 @@ p = 'repository.write' else: p = perm.Permission.permission_name - user.permissions['repositories'][perm.Repo2Perm.repository] = p + user.permissions['repositories'][perm.Repo2Perm.repository] = p + meta.Session.remove() return user def get_user(session):