Skip to content

Commit

Permalink
import cleans for model/authourization_group
Browse files Browse the repository at this point in the history
  • Loading branch information
tobes committed Mar 29, 2012
1 parent 6859450 commit 9fbd513
Showing 1 changed file with 21 additions and 20 deletions.
41 changes: 21 additions & 20 deletions ckan/model/authorization_group.py
@@ -1,21 +1,23 @@
import datetime

from meta import *
from sqlalchemy import orm, types, Column, Table, ForeignKey, or_
#from meta import *
import meta
import user
import types as _types
import domain_object

authorization_group_table = Table('authorization_group', metadata,
Column('id', UnicodeText, primary_key=True, default=_types.make_uuid),
Column('name', UnicodeText),
Column('created', DateTime, default=datetime.datetime.now),
authorization_group_table = Table('authorization_group', meta.metadata,
Column('id', types.UnicodeText, primary_key=True, default=_types.make_uuid),
Column('name', types.UnicodeText),
Column('created', types.DateTime, default=datetime.datetime.now),
)

authorization_group_user_table = Table('authorization_group_user', metadata,
Column('id', UnicodeText, primary_key=True, default=_types.make_uuid),
Column('authorization_group_id', UnicodeText, ForeignKey('authorization_group.id'),
authorization_group_user_table = Table('authorization_group_user', meta.metadata,
Column('id', types.UnicodeText, primary_key=True, default=_types.make_uuid),
Column('authorization_group_id', types.UnicodeText, ForeignKey('authorization_group.id'),
nullable=False),
Column('user_id', UnicodeText, ForeignKey('user.id'), nullable=False)
Column('user_id', types.UnicodeText, ForeignKey('user.id'), nullable=False)
)


Expand All @@ -25,9 +27,8 @@ class AuthorizationGroup(domain_object.DomainObject):
def search(cls, querystr, sqlalchemy_query=None):
'''Search name.
'''
import ckan.model as model
if sqlalchemy_query is None:
query = model.Session.query(cls)
query = meta.Session.query(cls)
else:
query = sqlalchemy_query
qstr = '%' + querystr + '%'
Expand All @@ -37,7 +38,7 @@ def search(cls, querystr, sqlalchemy_query=None):

@classmethod
def get(cls, auth_group_reference):
query = Session.query(cls).autoflush(False)
query = meta.Session.query(cls).autoflush(False)
query = query.filter(or_(cls.name==auth_group_reference,
cls.id==auth_group_reference))
return query.first()
Expand All @@ -46,35 +47,35 @@ class AuthorizationGroupUser(domain_object.DomainObject):
pass

def user_in_authorization_group(user, authorization_group):
q = Session.query(AuthorizationGroup)
q = meta.Session.query(AuthorizationGroup)
q = q.filter_by(id=authorization_group.id)
q = q.filter(AuthorizationGroup.users.contains(user))
return q.count() == 1

def add_user_to_authorization_group(user, authorization_group, role):
assert not user_in_authorization_group(user, authorization_group)
from authz import add_user_to_role
Session.add(authorization_group)
meta.Session.add(authorization_group)
authorization_group.users.append(user)
add_user_to_role(user, role, authorization_group)

def remove_user_from_authorization_group(user, authorization_group):
assert user_in_authorization_group(user, authorization_group)
from authz import remove_user_from_role, AuthorizationGroupRole
Session.add(authorization_group)
meta.Session.add(authorization_group)
authorization_group.users.remove(user)
q = Session.query(AuthorizationGroupRole)
q = meta.Session.query(AuthorizationGroupRole)
q = q.filter_by(authorization_group=authorization_group,
user=user)
for agr in q:
remove_user_from_role(user, agr.role, authorization_group)



mapper(AuthorizationGroup, authorization_group_table, properties={
'users': relation(user.User, lazy=True, secondary=authorization_group_user_table,
backref=backref('authorization_groups', lazy=True))
meta.mapper(AuthorizationGroup, authorization_group_table, properties={
'users': orm.relation(user.User, lazy=True, secondary=authorization_group_user_table,
backref=orm.backref('authorization_groups', lazy=True))
},
order_by=authorization_group_table.c.name)

mapper(AuthorizationGroupUser, authorization_group_user_table)
meta.mapper(AuthorizationGroupUser, authorization_group_user_table)

0 comments on commit 9fbd513

Please sign in to comment.