From 9be019da17b9cde91948adeb22b9f98de2657ec5 Mon Sep 17 00:00:00 2001 From: Jerome_maarch <jerome.boucher@maarch.org> Date: Tue, 23 Apr 2024 11:19:10 +0200 Subject: [PATCH] FIX #25236 TIME 00:30 fix org list for depositor in message composer --- .../Presenter/archivesPubliques/content.php | 2 +- .../Presenter/seda/messageComposer.php | 21 ++++++++++++------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/presentation/maarchRM/Presenter/archivesPubliques/content.php b/presentation/maarchRM/Presenter/archivesPubliques/content.php index a7a9c1e7..df511493 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 342130fb..848e4fc8 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 +} -- GitLab