cubicweb/test/data_schemareader/schema.py
author Denis Laxalde <denis.laxalde@logilab.fr>
Mon, 20 Mar 2017 17:38:43 +0100
branch3.24
changeset 12077 e282711ac6b2
parent 11775 39cf9e55ada8
child 11911 37726f66ff82
permissions -rw-r--r--
Added tag 3.24.7, debian/3.24.7-1, centos/3.24.7-1 for changeset 58f1e8545a77
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11775
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
     1
from yams.buildobjs import EntityType, SubjectRelation
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
     2
from cubicweb.schemas.base import in_group, RELATION_MANAGERS_PERMISSIONS
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
     3
8167
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     4
# copy __permissions__ to avoid modifying a shared dictionary
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     5
in_group.__permissions__ = in_group.__permissions__.copy()
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     6
in_group.__permissions__['read'] = ('managers',)
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
     7
11775
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
     8
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
     9
class CWSourceSchemaConfig(EntityType):
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
    10
    cw_for_source = SubjectRelation(
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
    11
        'CWSource', inlined=True, cardinality='1*', composite='object',
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
    12
        __permissions__=RELATION_MANAGERS_PERMISSIONS)
39cf9e55ada8 [source] Drop source mapping handling
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 11057
diff changeset
    13
8167
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
    14
cw_for_source = CWSourceSchemaConfig.get_relation('cw_for_source')
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
    15
cw_for_source.__permissions__ = {'read': ('managers', 'users'),
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
    16
                                 'add': ('managers',),
41ec579e27c4 [test] test/demonstrate relation permissions overriding
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
diff changeset
    17
                                 'delete': ('managers',)}