def share_with_org_members(self, everyone_access_level='ReadOnly'): """Share the resource to all members of the organization. :param everyone_access_level: (str) : access level when sharing the resource with everyone. One of 'ReadOnly', 'Change', 'FullControl'. 'ReadOnly' by default. :return: A :class:`lxml.objectify.StringElement` object representing the updated access control setting of the resource. """ self.resource = self.get_resource() control_access_params = deepcopy(self.resource) control_access_params['IsSharedToEveryone'] = \ E.IsSharedToEveryone(True) if everyone_access_level is not None: if hasattr(control_access_params, 'EveryoneAccessLevel'): control_access_params['EveryoneAccessLevel'] = \ E.EveryoneAccessLevel(everyone_access_level) else: # EveryoneAccessLevel should be just after IsSharedToEveryone # (first element) in case there are any AccessSettings control_access_params.insert( 1, E.EveryoneAccessLevel(everyone_access_level)) return self.update_resource(control_access_params)
def share_with_org_members(self, everyone_access_level='ReadOnly'): """Share the resource to all members of the organization. :param str everyone_access_level: level of access granted while sharing the resource with everyone. Allowed values are 'ReadOnly', 'Change', or 'FullControl'. Default value is 'ReadOnly'. :return: an object containing EntityType.CONTROL_ACCESS_PARAMS XML data representing the updated access control setting of the resource. :rtype: lxml.objectify.ObjectifiedElement """ self.resource = self.get_resource() control_access_params = deepcopy(self.resource) control_access_params['IsSharedToEveryone'] = \ E.IsSharedToEveryone(True) if everyone_access_level is not None: if hasattr(control_access_params, 'EveryoneAccessLevel'): control_access_params['EveryoneAccessLevel'] = \ E.EveryoneAccessLevel(everyone_access_level) else: # EveryoneAccessLevel should be just after IsSharedToEveryone # (first element) in case there are any AccessSettings control_access_params.insert( 1, E.EveryoneAccessLevel(everyone_access_level)) return self.update_resource(control_access_params)
def share_access(self, everyone_access_level='ReadOnly'): """Share the resource to all members of the organization. :param everyone_access_level: (str) : access level when sharing the resource with everyone. One of 'ReadOnly', 'Change', 'FullControl' 'ReadOnly' by default. :return: A :class:`lxml.objectify.StringElement` object representing the updated access control setting of the resource. """ self.resource = self.get_resource() control_access_params = self.resource control_access_params['IsSharedToEveryone'] = \ E.IsSharedToEveryone(True) if everyone_access_level is not None: if hasattr(control_access_params, 'EveryoneAccessLevel'): control_access_params['EveryoneAccessLevel'] = \ E.EveryoneAccessLevel(everyone_access_level) else: # EveryoneAccessLevel should be just after IsSharedToEveryone # (first element) in case there are any AccessSettings control_access_params.insert( 1, E.EveryoneAccessLevel(everyone_access_level)) self.resource = self. \ client.post_linked_resource(self.parent_resource, RelationType.CONTROL_ACCESS, EntityType.CONTROL_ACCESS_PARAMS.value, control_access_params) return self.resource