Skip to content

Commit

Permalink
[#636] Fix deleted members having rights
Browse files Browse the repository at this point in the history
  • Loading branch information
tobes committed Mar 15, 2013
1 parent 3aa15b2 commit 1b11778
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions ckan/new_authz.py
Expand Up @@ -49,6 +49,7 @@ def get_group_or_org_admin_ids(group_id):
q = model.Session.query(model.Member) \
.filter(model.Member.group_id == group_id) \
.filter(model.Member.table_name == 'user') \
.filter(model.Member.state == 'active') \
.filter(model.Member.capacity == 'admin')
return [a.table_id for a in q.all()]

Expand Down Expand Up @@ -135,6 +136,7 @@ def has_user_permission_for_group_or_org(group_id, user_name, permission):
q = model.Session.query(model.Member) \
.filter(model.Member.group_id == group_id) \
.filter(model.Member.table_name == 'user') \
.filter(model.Member.state == 'active') \
.filter(model.Member.table_id == user_id)
# see if any role has the required permission
# admin permission allows anything for the group
Expand All @@ -158,6 +160,7 @@ def users_role_for_group_or_org(group_id, user_name):
q = model.Session.query(model.Member) \
.filter(model.Member.group_id == group_id) \
.filter(model.Member.table_name == 'user') \
.filter(model.Member.state == 'active') \
.filter(model.Member.table_id == user_id)
# return the first role we find
for row in q.all():
Expand All @@ -176,6 +179,7 @@ def has_user_permission_for_some_org(user_name, permission):
# get any groups the user has with the needed role
q = model.Session.query(model.Member) \
.filter(model.Member.table_name == 'user') \
.filter(model.Member.state == 'active') \
.filter(model.Member.capacity.in_(roles)) \
.filter(model.Member.table_id == user_id)
group_ids = []
Expand Down

0 comments on commit 1b11778

Please sign in to comment.