equal
deleted
inserted
replaced
26 from math import log |
26 from math import log |
27 from contextlib import contextmanager |
27 from contextlib import contextmanager |
28 from warnings import warn |
28 from warnings import warn |
29 from itertools import chain |
29 from itertools import chain |
30 |
30 |
|
31 from six import string_types |
31 from six.moves import range |
32 from six.moves import range |
32 from six.moves.urllib.parse import urlparse, parse_qs, unquote as urlunquote |
33 from six.moves.urllib.parse import urlparse, parse_qs, unquote as urlunquote |
33 |
34 |
34 import yams.schema |
35 import yams.schema |
35 |
36 |
519 (entity type / relation definition). Resulting permissions will be |
520 (entity type / relation definition). Resulting permissions will be |
520 similar to `orig_permissions.update(partial_perms)`. |
521 similar to `orig_permissions.update(partial_perms)`. |
521 """ |
522 """ |
522 torestore = [] |
523 torestore = [] |
523 for erschema, etypeperms in chain(perm_overrides, perm_kwoverrides.iteritems()): |
524 for erschema, etypeperms in chain(perm_overrides, perm_kwoverrides.iteritems()): |
524 if isinstance(erschema, basestring): |
525 if isinstance(erschema, string_types): |
525 erschema = self.schema[erschema] |
526 erschema = self.schema[erschema] |
526 for action, actionperms in etypeperms.iteritems(): |
527 for action, actionperms in etypeperms.iteritems(): |
527 origperms = erschema.permissions[action] |
528 origperms = erschema.permissions[action] |
528 erschema.set_action_permissions(action, actionperms) |
529 erschema.set_action_permissions(action, actionperms) |
529 torestore.append([erschema, action, origperms]) |
530 torestore.append([erschema, action, origperms]) |