# HG changeset patch # User Marcin Kuzminski # Date 1282762694 -7200 # Node ID 570b9e82cbacb1d9886ce701e0bcf9eff3550832 # Parent fc3613065baff902ef96232ba8cf5b581d85b78f# Parent 55ada111bca62f410b76a78722222fccf7554f75 merged with bugfixes diff -r fc3613065baf -r 570b9e82cbac pylons_app/controllers/login.py --- a/pylons_app/controllers/login.py Mon Aug 23 22:04:35 2010 +0200 +++ b/pylons_app/controllers/login.py Wed Aug 25 20:58:14 2010 +0200 @@ -67,7 +67,6 @@ user_model = UserModel() c.auto_active = False for perm in user_model.get_default().user_perms: - print perm.permission.permission_name if perm.permission.permission_name == 'hg.register.auto_activate': c.auto_active = True break diff -r fc3613065baf -r 570b9e82cbac pylons_app/lib/auth.py --- a/pylons_app/lib/auth.py Mon Aug 23 22:04:35 2010 +0200 +++ b/pylons_app/lib/auth.py Wed Aug 25 20:58:14 2010 +0200 @@ -124,8 +124,6 @@ else: user.is_authenticated = False meta.Session.remove() - from pprint import pprint - pprint(user.permissions) return user def fill_perms(user): @@ -141,16 +139,15 @@ #=========================================================================== # fetch default permissions #=========================================================================== - default_perms = sa.query(RepoToPerm, UserToPerm, Repository, Permission)\ - .outerjoin((UserToPerm, RepoToPerm.user_id == UserToPerm.user_id))\ + default_perms = sa.query(RepoToPerm, Repository, Permission)\ .join((Repository, RepoToPerm.repository_id == Repository.repo_id))\ .join((Permission, RepoToPerm.permission_id == Permission.permission_id))\ - .filter(RepoToPerm.user_id == sa.query(User).filter(User.username == - 'default').one().user_id).all() + .filter(RepoToPerm.user == sa.query(User).filter(User.username == + 'default').scalar()).all() if user.is_admin: #======================================================================= - # #admin have all rights set to admin + # #admin have all default rights set to admin #======================================================================= user.permissions['global'].add('hg.admin') @@ -164,8 +161,12 @@ #======================================================================= #default global - for perm in default_perms: - user.permissions['global'].add(perm.UserToPerm.permission.permission_name) + default_global_perms = sa.query(UserToPerm)\ + .filter(UserToPerm.user == sa.query(User).filter(User.username == + 'default').one()) + + for perm in default_global_perms: + user.permissions['global'].add(perm.permission.permission_name) #default repositories for perm in default_perms: @@ -183,8 +184,7 @@ #======================================================================= # #overwrite default with user permissions if any #======================================================================= - user_perms = sa.query(RepoToPerm, UserToPerm, Permission, Repository)\ - .outerjoin((UserToPerm, RepoToPerm.user_id == UserToPerm.user_id))\ + user_perms = sa.query(RepoToPerm, Permission, Repository)\ .join((Repository, RepoToPerm.repository_id == Repository.repo_id))\ .join((Permission, RepoToPerm.permission_id == Permission.permission_id))\ .filter(RepoToPerm.user_id == user.user_id).all()