0
0
Fork 0
mirror of https://github.com/verdigado/organization_folders.git synced 2024-12-06 11:22:41 +01:00

Added inherit managers attribute to resources

This commit is contained in:
Jonathan Treffler 2024-11-06 17:32:33 +01:00
parent f7b3b2f255
commit fdb4b8fc76
8 changed files with 65 additions and 4 deletions

View file

@ -17,7 +17,8 @@ class CreateResource extends BaseCommand {
->addOption('organization-folder', null, InputOption::VALUE_REQUIRED, 'Id of organization folder to create resource in')
->addOption('type', null, InputOption::VALUE_REQUIRED, 'Type of resource (valid values: folder)')
->addOption('name', null, InputOption::VALUE_REQUIRED, 'Name of resource')
->addOption('parent-resource', null, InputOption::VALUE_OPTIONAL, 'Id of parent resource (leave out if creating at top level in organization folder)');
->addOption('parent-resource', null, InputOption::VALUE_OPTIONAL, 'Id of parent resource (leave out if creating at top level in organization folder)')
->addOption('inherit-managers', null, InputOption::VALUE_REQUIRED, 'Wether managers of the parent level (parent resource or organization folder for top level resources) should have management permissions');
// folder type options
$this
@ -33,6 +34,7 @@ class CreateResource extends BaseCommand {
$type = $input->getOption('type');
$name = $input->getOption('name');
$parentResource = $input->getOption('parent-resource');
$inheritManagers = $input->getOption('inherit-managers') === true || $input->getOption('inherit-managers') === "true";
$membersAclPermission = $input->getOption('members-acl-permission');
$managersAclPermission = $input->getOption('managers-acl-permission');
@ -44,6 +46,8 @@ class CreateResource extends BaseCommand {
organizationFolderId: $organizationFolder,
name: $name,
parentResourceId: $parentResource,
active: true,
inheritManagers : $inheritManagers,
membersAclPermission: $membersAclPermission,
managersAclPermission: $managersAclPermission,

View file

@ -16,7 +16,9 @@ class UpdateResource extends BaseCommand {
->setName('organization-folders:resources:update')
->setDescription('Update a resource')
->addArgument('id', InputArgument::REQUIRED, 'Id of the resource to update')
->addOption('name', null, InputOption::VALUE_OPTIONAL, 'New name of resource');
->addOption('name', null, InputOption::VALUE_OPTIONAL, 'New name of resource')
->addOption('active', null, InputOption::VALUE_OPTIONAL, 'Activate/deactivate resource')
->addOption('inherit-managers', null, InputOption::VALUE_OPTIONAL, 'Set wether managers of the parent level (parent resource or organization folder for top level resources) should have management permissions');
// folder type options
$this
@ -31,6 +33,16 @@ class UpdateResource extends BaseCommand {
$id = $input->getArgument('id');
$name = $input->getOption('name');
$activeOption = $input->getOption('active');
if(!is_null($activeOption)) {
$active = $activeOption === true || $activeOption === "true";
}
$inheritManagersOption = $input->getOption('inherit-managers');
if(!is_null($inheritManagersOption)) {
$inheritManagers = $inheritManagersOption === true || $inheritManagersOption === "true";
}
$membersAclPermission = $input->getOption('members-acl-permission');
$managersAclPermission = $input->getOption('managers-acl-permission');
$inheritedAclPermission = $input->getOption('inherited-acl-permission');
@ -39,6 +51,8 @@ class UpdateResource extends BaseCommand {
$resource = $this->resourceService->update(
id: $id,
name: $name,
active: $active,
inheritManagers: $inheritManagers,
membersAclPermission: $membersAclPermission,
managersAclPermission: $managersAclPermission,