createLightOrganizationProfile($organization); $organizationProfile->setModules($this->module->getOrganizationModules($organization)); $organizationProfile->setProduct($organization->getSettings()->getProduct()); $organizationProfile->setParametersId($organization->getParameters()->getId()); $organizationProfile->setLegalStatus($organization->getLegalStatus()); $organizationProfile->setHasChildren($organization->getNetworkOrganizationChildren()->count() > 1); $organizationProfile->setShowAdherentList( $organization->getParameters()->getShowAdherentList() && $organization->getPrincipalType() !== PrincipalTypeEnum::ARTISTIC_EDUCATION_ONLY ); foreach ($organization->getNetworkOrganizations() as $networkOrganization) { // TODO: fix temporaire => retirer ce 'if' dès la résolution de https://ressources-opentalent.atlassian.net/browse/V8-6985 if ($networkOrganization->getEndDate() === null || $networkOrganization->getEndDate() > DatesUtils::new()) { $organizationProfile->addNetwork($networkOrganization->getNetwork()->getName()); } } /** @var Organization $parent */ foreach ($this->tree->findAllParentsAndSortByType($organization) as $parent) { $parentProfile = $this->createLightOrganizationProfile($parent); $organizationProfile->addParent($parentProfile); } $organizationProfile->setCurrentYear($this->organizationUtils->getOrganizationCurrentActivityYear($organization)); return $organizationProfile; } /** * Classe permettant de créer et Setter les éléments de base d'un profile d'organisation à partir d'une entité Organization. */ public function createLightOrganizationProfile(Organization $organization): OrganizationProfile { $organizationProfile = new OrganizationProfile(); $organizationProfile ->setId($organization->getId()) ->setName($organization->getName()) ->setWebsite($this->organizationUtils->getOrganizationWebsite($organization)) ; return $organizationProfile; } }