Beispiel #1
0
    def _load_deposit_group_permissions(self):
        _deposit_group = self._get_deposit_group_info()

        _permission_factory_imp = \
            _deposit_group.get(self.action + '_permission_factory_imp', None)

        _permission_factory_imp = \
            obj_or_import_string(_permission_factory_imp)

        if _permission_factory_imp:
            self.permissions.add(_permission_factory_imp)
def get_user_deposit_groups(user_id):
    """Get Deposit Groups."""

    # Set deposit groups for user
    deposit_groups = current_app.config.get('DEPOSIT_GROUPS', {})
    user_deposit_groups = []
    for group, obj in deposit_groups.iteritems():
        # Check if user has permission for this deposit group
        if obj_or_import_string(obj['create_permission_factory_imp']).can():
            user_deposit_groups.append(group)

    return user_deposit_groups
    def _load_deposit_group_permissions(self):
        _deposit_group = self._get_deposit_group_info()

        _permission_factory_imp = \
            _deposit_group.get(self.action + '_permission_factory_imp', None)

        _permission_factory_imp = \
            obj_or_import_string(_permission_factory_imp)

        if _permission_factory_imp:
            for _need in _permission_factory_imp:
                self._needs.add(_need)
Beispiel #4
0
    def __init__(self, template_name=None,
                 schema=None,
                 schema_form=None,
                 create_permission_factory=None):

        self.template_name = template_name
        self.schema = schema
        self.schema_form = schema_form
        try:
            assert create_permission_factory
            self._create_deposit_permission = \
                DynamicPermission(*obj_or_import_string(
                    create_permission_factory))
        except:
            abort(403)
Beispiel #5
0
    def _load_deposit_group_permissions(self):

        _deposit_group = self._get_deposit_group_info()

        if not _deposit_group:
            raise WrongJSONSchemaError()

        _permission_factory_imp = \
            _deposit_group.get(self.action + '_permission_factory_imp', None)

        _permission_factory_imp = \
            obj_or_import_string(_permission_factory_imp)

        if _permission_factory_imp:
            for _need in _permission_factory_imp:
                self._needs.add(_need)
def get_user_deposit_groups():
    """Get Deposit Groups."""

    # Set deposit groups for user
    deposit_groups = current_app.config.get('DEPOSIT_GROUPS', {})
    user_deposit_groups = []
    for group, obj in deposit_groups.iteritems():
        # Check if user has permission for this deposit group
        needs = obj_or_import_string(obj['create_permission_factory_imp'])
        if Permission(*needs).can():
            group_data = {}
            group_data['name'] = obj.get('name', '')
            group_data['deposit_group'] = group
            group_data['description'] = obj.get('description', '')
            user_deposit_groups.append(group_data)

    return user_deposit_groups
Beispiel #7
0
def test_obj_or_import_string_when_no_value_given_returns_default():
    returned_object = obj_or_import_string(None, mock.Mock)

    assert returned_object == mock.Mock
Beispiel #8
0
def test_obj_or_import_string_when_class_object_given_returns_it():
    returned_object = obj_or_import_string(mock.Mock)

    assert returned_object == mock.Mock
Beispiel #9
0
def test_obj_or_import_string_when_string_given_returns_imported_string():
    returned_object = obj_or_import_string('mock.Mock')

    assert returned_object == mock.Mock