From f67c92fef17f5d27bae138627ace818cabb52e9b Mon Sep 17 00:00:00 2001 From: Julio Date: Tue, 3 Dec 2019 10:52:16 +0100 Subject: [PATCH] Fix installation --- public/main/install/install.lib.php | 6 +++++- src/CoreBundle/Controller/ResourceController.php | 2 -- src/CoreBundle/Entity/Resource/ResourceType.php | 15 +++++++++------ src/CoreBundle/Repository/ResourceRepository.php | 5 ++--- src/CoreBundle/Resources/config/repositories.yml | 2 +- src/CoreBundle/ToolChain.php | 4 ++-- 6 files changed, 19 insertions(+), 15 deletions(-) diff --git a/public/main/install/install.lib.php b/public/main/install/install.lib.php index 3b9bf7657c..6277466c39 100644 --- a/public/main/install/install.lib.php +++ b/public/main/install/install.lib.php @@ -3307,17 +3307,21 @@ function finishInstallationWithContainer( '', false ); - error_log('Adding access url as a node'); $userManager = $container->get('Chamilo\UserBundle\Repository\UserRepository'); $urlRepo = $container->get('Chamilo\CoreBundle\Repository\AccessUrlRepository'); + $urlRepo->getEntityManager()->flush(); + $accessUrl = $urlRepo->find(1); $admin = $userManager->find($adminId); $urlRepo->addResourceNode($accessUrl, $admin); + $urlRepo->getEntityManager()->flush(); $userManager->addUserToResourceNode($adminId, $adminId, $accessUrl); $userManager->addUserToResourceNode($anonId, $adminId, $accessUrl); + $urlRepo->getEntityManager()->flush(); + // Set default language Database::update( Database::get_main_table(TABLE_MAIN_LANGUAGE), diff --git a/src/CoreBundle/Controller/ResourceController.php b/src/CoreBundle/Controller/ResourceController.php index 93345330bc..a7b290ec62 100644 --- a/src/CoreBundle/Controller/ResourceController.php +++ b/src/CoreBundle/Controller/ResourceController.php @@ -112,8 +112,6 @@ class ResourceController extends AbstractResourceController implements CourseCon public function getGrid(Request $request, Grid $grid, $resourceNodeId): Grid { - $id = (int) $request->get('id'); - $repository = $this->getRepositoryFromRequest($request); $class = $repository->getRepository()->getClassName(); diff --git a/src/CoreBundle/Entity/Resource/ResourceType.php b/src/CoreBundle/Entity/Resource/ResourceType.php index 6212af7352..7803bb2f9e 100644 --- a/src/CoreBundle/Entity/Resource/ResourceType.php +++ b/src/CoreBundle/Entity/Resource/ResourceType.php @@ -35,7 +35,7 @@ class ResourceType * * @Assert\NotBlank() */ - protected $entityName; + protected $service; /** * @ORM\ManyToOne(targetEntity="Chamilo\CoreBundle\Entity\Tool", inversedBy="resourceTypes") @@ -143,19 +143,22 @@ class ResourceType return $this; } - public function getEntityName(): string + /** + * @return mixed + */ + public function getService() { - return $this->entityName; + return $this->service; } /** - * @param string $entityName + * @param mixed $service * * @return ResourceType */ - public function setEntityName($entityName) + public function setService($service) { - $this->entityName = $entityName; + $this->service = $service; return $this; } diff --git a/src/CoreBundle/Repository/ResourceRepository.php b/src/CoreBundle/Repository/ResourceRepository.php index 7a51e64fcb..b19630495d 100644 --- a/src/CoreBundle/Repository/ResourceRepository.php +++ b/src/CoreBundle/Repository/ResourceRepository.php @@ -181,7 +181,6 @@ class ResourceRepository extends EntityRepository $em = $this->getEntityManager(); $resourceType = $this->getResourceType(); - $resourceNode = new ResourceNode(); $resourceName = $resource->getResourceName(); $extension = $this->slugify->slugify(pathinfo($resourceName, PATHINFO_EXTENSION)); @@ -347,10 +346,10 @@ class ResourceRepository extends EntityRepository public function getResourceType() { $em = $this->getEntityManager(); - $entityName = $this->getRepository()->getClassName(); + $service = get_class($this); return $em->getRepository('ChamiloCoreBundle:Resource\ResourceType')->findOneBy( - ['entityName' => $entityName] + ['service' => $service] ); } diff --git a/src/CoreBundle/Resources/config/repositories.yml b/src/CoreBundle/Resources/config/repositories.yml index a7c6ae8d01..489544d36f 100644 --- a/src/CoreBundle/Resources/config/repositories.yml +++ b/src/CoreBundle/Resources/config/repositories.yml @@ -12,7 +12,7 @@ services: exclude: '../../Repository/{BranchSyncRepository.php,ResourceRepository.php,ResourceNodeRepository.php}' tags: ['doctrine.repository_service'] - # Entity repository as a service + # Resource repositories Chamilo\CoreBundle\Repository\AccessUrlRepository: arguments: $className: 'Chamilo\CoreBundle\Entity\AccessUrl' diff --git a/src/CoreBundle/ToolChain.php b/src/CoreBundle/ToolChain.php index 2027d90a9f..90b03101d9 100644 --- a/src/CoreBundle/ToolChain.php +++ b/src/CoreBundle/ToolChain.php @@ -93,7 +93,7 @@ class ToolChain foreach ($types as $name => $data) { $resourceType = new ResourceType(); $resourceType->setName($name); - $resourceType->setEntityName($data['repository']); + $resourceType->setService($data['repository']); $resourceType->setTool($toolEntity); $manager->persist($resourceType); } @@ -126,7 +126,7 @@ class ToolChain foreach ($types as $name => $data) { $resourceType = new ResourceType(); $resourceType->setName($name); - $resourceType->setEntityName($data['entity']); + $resourceType->setService($data['entity']); $resourceType->setTool($toolEntity); $manager->persist($resourceType); }