diff --git a/src/UnicaenSiham/Service/Siham.php b/src/UnicaenSiham/Service/Siham.php index 1b3b64fcb4a2b30146a75e21a55952a379a5fe9b..7e218b6395d6fe62bec86d10a43c6ffa8e77f86c 100644 --- a/src/UnicaenSiham/Service/Siham.php +++ b/src/UnicaenSiham/Service/Siham.php @@ -1296,18 +1296,33 @@ class Siham $this->sendDebug('WS DossierParametrageWebService / METHOD RecupStructures'); - /*if (isset($result->return)) { + if (isset($result->return)) { $unitesOrganisationnelles = []; foreach ($result->return as $value) { $unitesOrganisationnelles[$value->codeUO] = $value->libLongUO; } - + //Supprimer une composante de la liste + if (!empty($this->sihamConfig['unites-organisationelles']['exclude'])) { + $excludes = $this->sihamConfig['unites-organisationelles']['excludes']; + foreach ($excludes as $code) { + if (array_key_exists($code, $unitesOrganisationnelles)) { + unset($unitesOrganisationnelles['$code']); + } + } + } + //Ajouter une composante spécifique + if (!empty($this->sihamConfig['unites-organisationelles']['include'])) { + $includes = $this->sihamConfig['unites-organisationelles']['includes']; + foreach ($includes as $code => $libelle) { + if (!array_key_exists($code, $unitesOrganisationnelles)) { + $unitesOrganisationnelles[$code] = $libelle; + } + } + } ksort($unitesOrganisationnelles); return $unitesOrganisationnelles; - }*/ - - return $result->return; + } } catch (\SoapFault $e) { throw new SihamException($e->getMessage(), 0, $e); }