Fixing double course in agenda see BT#4978

skala
Julio Montoya 13 years ago
parent 7fade181fe
commit 0cd6cfe768
  1. 8
      main/calendar/agenda.lib.php
  2. 7
      main/inc/lib/course.lib.php

@ -264,8 +264,6 @@ class Agenda {
* Get agenda events
* @param int start tms
* @param int end tms
* @param string agenda type (personal, admin or course)
* @param int user id
* @param int course id *integer* not the course code
*
*/
@ -280,7 +278,7 @@ class Agenda {
$this->get_course_events($start, $end, $course_info, $group_id);
break;
case 'personal':
default:
default:
//Getting personal events
$this->get_personal_events($start, $end);
@ -294,9 +292,9 @@ class Agenda {
$my_course_list = CourseManager::get_courses_list_by_user_id(api_get_user_id(), true);
}
if (!empty($my_course_list)) {
foreach($my_course_list as $course_info_item) {
foreach ($my_course_list as $course_info_item) {
if (isset($course_id) && !empty($course_id)) {
if ($course_info_item['course_id'] == $course_id) {
if ($course_info_item['real_id'] == $course_id) {
$this->get_course_events($start, $end, $course_info_item);
}
} else {

@ -2157,14 +2157,15 @@ class CourseManager {
if (Database::num_rows($result)) {
while ($row = Database::fetch_array($result, 'ASSOC')) {
$course_list[] = $row;
$codes[] = $row['code'];
$codes[] = $row['real_id'];
}
}
if ($include_sessions === true) {
$r = Database::query("SELECT DISTINCT(c.code), c.id as real_id
$sql = "SELECT DISTINCT(c.code), c.id as real_id
FROM ".Database::get_main_table(TABLE_MAIN_SESSION_COURSE_USER)." s, ".Database::get_main_table(TABLE_MAIN_COURSE)." c
WHERE id_user = $user_id AND s.course_code=c.code");
WHERE id_user = $user_id AND s.course_code=c.code";
$r = Database::query($sql);
while ($row = Database::fetch_array($r, 'ASSOC')) {
if (!in_array($row['real_id'], $codes)) {
$course_list[] = $row;

Loading…
Cancel
Save