@ -1120,26 +1120,28 @@ class IndexManager {
/* Announcements */
$course_database = $my_course['db'];
$course_tool_table = Database::get_course_table(TABLE_TOOL_LIST, $course_database);
$query = "SELECT visibility FROM $course_tool_table WHERE link = 'announcements/announcements.php' AND visibility = 1";
$course_id = $my_course['course_id'];
$course_tool_table = Database::get_course_table(TABLE_TOOL_LIST);
$query = "SELECT visibility FROM $course_tool_table WHERE c_id = $course_id AND link = 'announcements/announcements.php' AND visibility = 1";
$result = Database::query($query);
// Collect from announcements, but only if tool is visible for the course.
if ($result & & $maxValvas > 0 & & Database::num_rows($result) > 0) {
// Search announcements table.
// Take the entries listed at the top of advalvas/announcements tool.
$course_announcement_table = Database::get_course_table(TABLE_ANNOUNCEMENT);
$sqlGetLastAnnouncements = "SELECT end_date publicationDate, content
FROM ".$course_announcement_table;
FROM ".$course_announcement_table." WHERE c_id = $course_id " ;
switch (CONFVAL_limitPreviewTo) {
case SCRIPTVAL_NewEntriesOfTheDay :
$sqlGetLastAnnouncements .= "WHERE DATE_FORMAT(end_date,'%Y %m %d') >= '".date('Y m d')."'";
$sqlGetLastAnnouncements .= " AND DATE_FORMAT(end_date,'%Y %m %d') >= '".date('Y m d')."'";
break;
case SCRIPTVAL_NoTimeLimit :
break;
case SCRIPTVAL_NewEntriesOfTheDayOfLastLogin :
// take care mysql -> DATE_FORMAT(time,format) php -> date(format,date)
$sqlGetLastAnnouncements .= "WHERE DATE_FORMAT(end_date,'%Y %m %d') >= '".date('Y m d', $_user['lastLogin'])."'";
$sqlGetLastAnnouncements .= " AND DATE_FORMAT(end_date,'%Y %m %d') >= '".date('Y m d', $_user['lastLogin'])."'";
}
$sqlGetLastAnnouncements .= "ORDER BY end_date DESC LIMIT ".$maxValvas;
$resGetLastAnnouncements = Database::query($sqlGetLastAnnouncements);
@ -1155,10 +1157,8 @@ class IndexManager {
}
/* Agenda */
$course_database = $my_course['db'];
$course_tool_table = Database :: get_course_table(TABLE_TOOL_LIST, $course_database);
$query = "SELECT visibility FROM $course_tool_table WHERE link = 'calendar/agenda.php' AND visibility = 1";
$course_tool_table = Database :: get_course_table(TABLE_TOOL_LIST);
$query = "SELECT visibility FROM $course_tool_table WHERE c_id = $course_id AND link = 'calendar/agenda.php' AND visibility = 1";
$result = Database::query($query);
$thisAgenda = $maxCourse - $nbDigestEntries; // New max entries for agenda.
if ($maxAgenda < $thisAgenda) {
@ -1166,10 +1166,11 @@ class IndexManager {
}
// Collect from agenda, but only if tool is visible for the course.
if ($result & & $thisAgenda > 0 & & Database::num_rows($result) > 0) {
$tableCal = $courseTablePrefix.$thisCourseDbName.$_configuration['db_glue'].'calendar_event';
//$tableCal = $courseTablePrefix.$thisCourseDbName.$_configuration['db_glue'].'calendar_event';
$course_table_agenda = Database::get_course_table(TABLE_AGENDA);
$sqlGetNextAgendaEvent = "SELECT start_date, title content, start_time
FROM $tableCal
WHERE start_date >= CURDATE()
FROM $course_table_agenda
WHERE c_id = $course_id AND start_date >= CURDATE()
ORDER BY start_date, start_time
LIMIT $maxAgenda";
$resGetNextAgendaEvent = Database::query($sqlGetNextAgendaEvent);