diff --git a/public/main/course_progress/index.php b/public/main/course_progress/index.php index 3bac2cf259..8aa2e53b74 100644 --- a/public/main/course_progress/index.php +++ b/public/main/course_progress/index.php @@ -108,8 +108,8 @@ $attendance = new Attendance(); $attendance_list = $attendance->get_attendances_list(); $attendance_select = []; $attendance_select[0] = get_lang('Select an attendance'); -foreach ($attendance_list as $attendance_id => $attendance_data) { - $attendance_select[$attendance_id] = $attendance_data['name']; +foreach ($attendance_list as $attendanceEntity) { + $attendance_select[$attendanceEntity->getIid()] = $attendanceEntity->getName(); } $token = Security::get_token(); @@ -117,11 +117,11 @@ $url_token = '&sec_token='.$token; $user_info = api_get_user_info(); $params = '&'.api_get_cidreq(); -if (isset($_POST['action']) && 'thematic_delete_select' == $_POST['action']) { +if (isset($_POST['action']) && 'thematic_delete_select' === $_POST['action']) { $action = 'thematic_delete_select'; } -if (isset($_GET['isStudentView']) && 'true' == $_GET['isStudentView']) { +if (isset($_GET['isStudentView']) && 'true' === $_GET['isStudentView']) { $action = 'thematic_details'; } @@ -651,7 +651,6 @@ switch ($action) { $content = $tpl->fetch($thematicLayout); break; case 'thematic_list': - $interbreadcrumb[] = ['url' => '#', 'name' => get_lang('Thematic control')]; $actionLeft = ''. Display::return_icon( diff --git a/public/main/gradebook/lib/be/attendancelink.class.php b/public/main/gradebook/lib/be/attendancelink.class.php index 1221535cb5..bd1cd2e266 100644 --- a/public/main/gradebook/lib/be/attendancelink.class.php +++ b/public/main/gradebook/lib/be/attendancelink.class.php @@ -1,4 +1,5 @@ course_code)) { return []; } - $tbl_attendance = $this->get_attendance_table(); $sessionId = $this->get_session_id(); + $repo = \Chamilo\CoreBundle\Framework\Container::getStudentPublicationRepository(); + $qb = $repo->getResourcesByCourse(api_get_course_entity($this->course_id), api_get_session_entity($sessionId)); + $qb->andWhere('resource.active = 1'); + $links = $qb->getQuery()->getResult(); + /*$tbl_attendance = $this->get_attendance_table(); $sql = 'SELECT att.iid, att.name, att.attendance_qualify_title FROM '.$tbl_attendance.' att WHERE att.c_id = '.$this->course_id.' AND att.active = 1 AND att.session_id = '.$sessionId; + $result = Database::query($sql);*/ - $result = Database::query($sql); - - while ($data = Database::fetch_array($result)) { - if (isset($data['attendance_qualify_title']) && '' != $data['attendance_qualify_title']) { - $cats[] = [$data['iid'], $data['attendance_qualify_title']]; + /** @var \Chamilo\CourseBundle\Entity\CAttendance $link */ + foreach ($links as $link) { + $title = $link->getAttendanceQualifyTitle(); + if (!empty($title)) { + $cats[] = [$link->getIid(), $title]; } else { - $cats[] = [$data['iid'], $data['name']]; + $cats[] = [$link->getIid(), $link->getName()]; } } @@ -139,7 +145,7 @@ class AttendanceLink extends AbstractLink if (!(array_key_exists($data['user_id'], $students))) { if (0 != $attendance['attendance_qualify_max']) { $students[$data['user_id']] = $data['score']; - $rescount++; + ++$rescount; $sum += $data['score'] / $attendance['attendance_qualify_max']; $sumResult += $data['score']; if ($data['score'] > $bestResult) { diff --git a/public/main/gradebook/lib/be/learnpathlink.class.php b/public/main/gradebook/lib/be/learnpathlink.class.php index 4de8632be7..edd9cda596 100644 --- a/public/main/gradebook/lib/be/learnpathlink.class.php +++ b/public/main/gradebook/lib/be/learnpathlink.class.php @@ -46,7 +46,7 @@ class LearnpathLink extends AbstractLink $cats = []; while ($data = Database::fetch_array($result)) { - $cats[] = [$data['id'], $data['name']]; + $cats[] = [$data['iid'], $data['name']]; } return $cats; diff --git a/public/main/gradebook/lib/be/studentpublicationlink.class.php b/public/main/gradebook/lib/be/studentpublicationlink.class.php index 7733417ab8..7f2c00a189 100644 --- a/public/main/gradebook/lib/be/studentpublicationlink.class.php +++ b/public/main/gradebook/lib/be/studentpublicationlink.class.php @@ -97,20 +97,25 @@ class StudentPublicationLink extends AbstractLink //Only show works from the session //AND has_properties != '' - $links = Container::getStudentPublicationRepository() + $repo = Container::getStudentPublicationRepository(); + $qb = $repo->getResourcesByCourse(api_get_course_entity($this->course_id), $session); + $qb->andWhere("resource.filetype = 'folder' AND resource.active = true"); + $links = $qb->getQuery()->getResult(); + + /*$links = Container::getStudentPublicationRepository() ->findBy([ 'cId' => $this->course_id, 'active' => true, 'filetype' => 'folder', 'session' => $session, - ]); + ]);*/ foreach ($links as $data) { $work_name = $data->getTitle(); if (empty($work_name)) { $work_name = basename($data->getUrl()); } - $cats[] = [$data->getId(), $work_name]; + $cats[] = [$data->getIid(), $work_name]; } $cats = isset($cats) ? $cats : []; diff --git a/public/main/inc/lib/attendance.lib.php b/public/main/inc/lib/attendance.lib.php index d975a14fcb..868b29e305 100644 --- a/public/main/inc/lib/attendance.lib.php +++ b/public/main/inc/lib/attendance.lib.php @@ -28,7 +28,7 @@ class Attendance * @param int $courseId * @param int $sessionId * - * @return array attendances list + * @return CAttendance[] */ public function get_attendances_list($courseId = 0, $sessionId = 0) { diff --git a/public/main/inc/lib/document.lib.php b/public/main/inc/lib/document.lib.php index 74862c1626..b12fa3ce76 100644 --- a/public/main/inc/lib/document.lib.php +++ b/public/main/inc/lib/document.lib.php @@ -1595,19 +1595,15 @@ class DocumentManager $sessionId, $is_preview = false ) { - $user_id = intval($user_id); + $user_id = (int) $user_id; $tbl_document = Database::get_course_table(TABLE_DOCUMENT); $course_id = $courseInfo['real_id']; - - $document_id = self::get_default_certificate_id( - $course_id, - $sessionId - ); + $document_id = self::get_default_certificate_id($course_id, $sessionId); $my_content_html = null; if ($document_id) { $sql = "SELECT path FROM $tbl_document - WHERE c_id = $course_id AND iid = $document_id"; + WHERE iid = $document_id"; $rs = Database::query($sql); $new_content = ''; $all_user_info = []; diff --git a/public/main/lp/learnpath.class.php b/public/main/lp/learnpath.class.php index 881d08af9c..a66f2243eb 100644 --- a/public/main/lp/learnpath.class.php +++ b/public/main/lp/learnpath.class.php @@ -10374,6 +10374,14 @@ EOD; $this->categoryId = (int) $categoryId; $table = Database::get_course_table(TABLE_LP_MAIN); $lp_id = $this->get_id(); + if (empty($categoryId)) { + $this->categoryId = null; + $sql = "UPDATE $table SET category_id = NULL WHERE iid = $lp_id"; + Database::query($sql); + + return true; + } + $sql = "UPDATE $table SET category_id = ".$this->categoryId." WHERE iid = $lp_id"; Database::query($sql); diff --git a/public/main/template/default/course_progress/progress.html.twig b/public/main/template/default/course_progress/progress.html.twig index 403d783689..d042f52cae 100644 --- a/public/main/template/default/course_progress/progress.html.twig +++ b/public/main/template/default/course_progress/progress.html.twig @@ -46,7 +46,6 @@ } - {% if data is not empty %} {% set tutor = is_granted('ROLE_TEACHER') %}
@@ -99,7 +98,7 @@
{% else %} - {% for plan in item.plans %}ssss + {% for plan in item.plans %}
{{ plan.title }}
{{ plan.description }} {% endfor %} @@ -121,7 +120,9 @@ {% if item.advances is not empty %} {% for advance in item.advances %} - +
{{ advance.startDate | format_date }} {{ advance.content }} @@ -131,12 +132,14 @@
@@ -151,16 +154,21 @@ {% set color = "background-color:#FFFFFF;" %} {% endif %} {% if tutor %} - - {% set check = "" %} - {% if item.last_done == advance.id %} - {% set check = "checked" %} - {% endif %} - + {% set check = "" %} + {% if item.last_done == advance.id %} + {% set check = "checked" %} + {% endif %} + + onclick="updateDoneThematicAdvance(this.value);" + /> {% else %} {% endif %}