From d719967afa44805a7c835b585db4beea9f9321a3 Mon Sep 17 00:00:00 2001 From: Julio Date: Thu, 5 Dec 2019 23:29:49 +0100 Subject: [PATCH] WIP - Add CTool as a resource (fix course creation). --- public/main/inc/lib/add_course.lib.inc.php | 19 +++++++++++-------- .../Entity/Listener/CourseListener.php | 5 ++--- src/CourseBundle/Entity/CTool.php | 4 ++-- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/public/main/inc/lib/add_course.lib.inc.php b/public/main/inc/lib/add_course.lib.inc.php index 16ddc5b654..f803c7db13 100644 --- a/public/main/inc/lib/add_course.lib.inc.php +++ b/public/main/inc/lib/add_course.lib.inc.php @@ -59,8 +59,8 @@ class AddCourse $keys_are_unique = true; // Check whether they are unique. - $query = "SELECT 1 FROM $course_table - WHERE code='".$keys_course_id."' + $query = "SELECT 1 FROM $course_table + WHERE code='".$keys_course_id."' LIMIT 0, 1"; $result = Database::query($query); @@ -891,16 +891,19 @@ class AddCourse ->setVisualCode($visual_code) ->addUrl($url) ; + $repo->addResourceNode( + $course, + api_get_user_entity(api_get_user_id()), + $url + ); + + $repo->getEntityManager()->persist($course); + $repo->getEntityManager()->persist($course); $repo->getEntityManager()->flush(); - $course_id = $course->getId(); + $course_id = $course->getId(); if ($course_id) { - $repo->addResourceNode( - $course, - api_get_user_entity(api_get_user_id()), - $url - ); $sort = api_max_sort_value('0', api_get_user_id()); // Default true $addTeacher = isset($params['add_user_as_teacher']) ? $params['add_user_as_teacher'] : true; diff --git a/src/CoreBundle/Entity/Listener/CourseListener.php b/src/CoreBundle/Entity/Listener/CourseListener.php index 2e846ecc8d..665ac0fb08 100644 --- a/src/CoreBundle/Entity/Listener/CourseListener.php +++ b/src/CoreBundle/Entity/Listener/CourseListener.php @@ -58,7 +58,7 @@ class CourseListener //$url = $course->getCurrentUrl(); //$repo = $args->getEntityManager()->getRepository('ChamiloCoreBundle:Course'); ///$this->checkLimit($repo, $course, $url); - // $this->toolChain->addToolsInCourse($course); + $this->toolChain->addToolsInCourse($course); } } @@ -71,11 +71,10 @@ class CourseListener //$url = $course->getCurrentUrl(); //$repo = $args->getEntityManager()->getRepository('ChamiloCoreBundle:Course'); ///$this->checkLimit($repo, $course, $url); - $this->toolChain->addToolsInCourse($course); + //$this->toolChain->addToolsInCourse($course); } } - /** * This code is executed when a course is updated. * diff --git a/src/CourseBundle/Entity/CTool.php b/src/CourseBundle/Entity/CTool.php index 408e31d7f1..aaa28a4e9a 100644 --- a/src/CourseBundle/Entity/CTool.php +++ b/src/CourseBundle/Entity/CTool.php @@ -288,11 +288,11 @@ class CTool extends AbstractResource implements ResourceInterface public function getResourceName(): string { - return $this->iid; + return (string) $this->getTool()->getName(); } public function __toString(): string { - return (string) $this->iid; + return (string) $this->getTool()->getName(); } }