diff --git a/presentation/maarchRM/Presenter/archivesPubliques/content.php b/presentation/maarchRM/Presenter/archivesPubliques/content.php index a7a9c1e73195a8a414aa7169a3a64690090b2bee..df51149320a543fbcd6278339df77c49ea713a80 100644 --- a/presentation/maarchRM/Presenter/archivesPubliques/content.php +++ b/presentation/maarchRM/Presenter/archivesPubliques/content.php @@ -191,7 +191,7 @@ class content || ($role == 'originator' && $orgUnit->registrationNumber == $userOrgUnit->registrationNumber) // Depositor = all || $role == 'depositor' - ) { + ) { // Create org root if (!isset($userOrgs[(string) $orgUnit->ownerOrgId])) { $orgObject = \laabs::callService('organization/organization/read_orgId_', (string) $orgUnit->ownerOrgId); diff --git a/presentation/maarchRM/Presenter/seda/messageComposer.php b/presentation/maarchRM/Presenter/seda/messageComposer.php index 342130fb947f0296a521868dd7d24cec3dd7212b..848e4fc85d5b7c466e25f79c208f28582035565c 100644 --- a/presentation/maarchRM/Presenter/seda/messageComposer.php +++ b/presentation/maarchRM/Presenter/seda/messageComposer.php @@ -223,10 +223,13 @@ class messageComposer // Owner = all originators $owner // Archiver = all originators fo the same org - || $role == 'originator' && $orgUnit->ownerOrgId == $userOrgUnit->ownerOrgId + || ($archiver && $orgUnit->ownerOrgId == $userOrgUnit->ownerOrgId) + // Originator = all originators at position and sub-services + || ($role == 'originator' && $orgUnit->registrationNumber == $userOrgUnit->registrationNumber) // Depositor = all - || ($role == 'archiver' || $role == 'depositor') + || $role == 'depositor' ) { + // Create org root if (!isset($userOrgs[(string) $orgUnit->ownerOrgId])) { $orgObject = \laabs::callService('organization/organization/read_orgId_', (string) $orgUnit->ownerOrgId); @@ -234,8 +237,11 @@ class messageComposer $userOrgs[(string) $orgObject->orgId]->displayName = $orgObject->displayName; $userOrgs[(string) $orgObject->orgId]->{$role} = []; } - - if (!in_array($orgUnit,$userOrgs[(string) $orgObject->orgId]->{$role})) { + // Add orgUnit to org root + if ( + (string) $orgUnit->ownerOrgId == (string) $orgObject->orgId + && !in_array($orgUnit, $userOrgs[(string) $orgObject->orgId]->{$role}) + ) { $userOrgs[(string)$orgObject->orgId]->{$role}[] = $orgUnit; } } @@ -253,14 +259,13 @@ class messageComposer */ public function editMessage($message = null) { - - if(!empty($message)){ + if (!empty($message)) { $isTemplate = ($message->status == 'template'); } else { $isTemplate = false; } - if(isset($message->status) && $message->status == 'toBeModified'){ + if (isset($message->status) && $message->status == 'toBeModified') { $isModification = true; } else { $isModification = false; @@ -442,4 +447,4 @@ class messageComposer return $this->json->save(); } -} \ No newline at end of file +}