function announcement_get_items_portlet($personnalCourseList) { $courseDigestList = array(); $clannToolId = get_tool_id_from_module_label('CLANN'); foreach ($personnalCourseList as $thisCourse) { if (is_module_installed_in_course_lightversion('CLANN', $thisCourse) && is_tool_activated_in_course_lightversion($clannToolId, $thisCourse) && is_tool_visible_for_portlet($clannToolId, $thisCourse['sysCode'])) { $courseEventList = announcement_get_course_item_list_portlet($thisCourse, get_conf('announcementPortletMaxItems', 3)); if (is_array($courseEventList)) { foreach ($courseEventList as $thisEvent) { $courseTitle = trim(strip_tags($thisCourse['title'])); if ($courseTitle == '') { $courseTitle = substr($courseTitle, 0, 60) . (strlen($courseTitle) > 60 ? ' (...)' : ''); } $eventContent = trim(strip_tags($thisEvent['content'])); if ($eventContent == '') { $eventContent = substr($eventContent, 0, 60) . (strlen($eventContent) > 60 ? ' (...)' : ''); } $courseOfficialCode = $thisEvent['courseOfficialCode']; if (!array_key_exists($courseOfficialCode, $courseDigestList)) { $courseDigestList[$courseOfficialCode] = array(); $courseDigestList[$courseOfficialCode]['eventList'] = array(); $courseDigestList[$courseOfficialCode]['id'] = $thisEvent['id']; $courseDigestList[$courseOfficialCode]['courseOfficialCode'] = $courseOfficialCode; $courseDigestList[$courseOfficialCode]['title'] = $courseTitle; $courseDigestList[$courseOfficialCode]['visibility'] = $thisEvent['visibility']; $courseDigestList[$courseOfficialCode]['visibleFrom'] = $thisEvent['visibleFrom']; $courseDigestList[$courseOfficialCode]['visibleUntil'] = $thisEvent['visibleUntil']; $courseDigestList[$courseOfficialCode]['url'] = get_path('url') . '/claroline/announcements/announcements.php?cidReq=' . $thisEvent['courseSysCode']; } $courseDigestList[$courseOfficialCode]['eventList'][] = array('id' => $thisEvent['id'], 'courseSysCode' => $thisEvent['courseSysCode'], 'toolLabel' => $thisEvent['toolLabel'], 'title' => $thisEvent['title'], 'content' => $eventContent, 'date' => $thisEvent['date'], 'url' => get_path('url') . '/claroline/announcements/announcements.php?cidReq=' . $thisEvent['courseSysCode'] . '#item' . $thisEvent['id']); } } } } return $courseDigestList; }
function get_agenda_items_compact_mode($userCourseList, $month, $year) { $courseDigestList = array(); $toolId = get_tool_id_from_module_label('CLCAL'); // get agenda-items for every course foreach ($userCourseList as $thisCourse) { if (is_module_installed_in_course_lightversion('CLCAL', $thisCourse) && is_tool_activated_in_course_lightversion($toolId, $thisCourse) && is_tool_visible_for_portlet($toolId, $thisCourse['sysCode'])) { $courseEventList = get_agenda_items_list($thisCourse, $month, $year); if (is_array($courseEventList)) { foreach ($courseEventList as $thisEvent) { $eventLine = trim(strip_tags($thisEvent['title'])); if ($eventLine == '') { $eventContent = trim(strip_tags($thisEvent['content'])); $eventLine = substr($eventContent, 0, 60) . (strlen($eventContent) > 60 ? ' (...)' : ''); } $eventDate = explode('-', $thisEvent['day']); $day = intval($eventDate[2]); if (!array_key_exists($day, $courseDigestList)) { $courseDigestList[$day] = array(); $courseDigestList[$day]['eventList'] = array(); $courseDigestList[$day]['date'] = $thisEvent['day']; } $courseDigestList[$day]['eventList'][] = array('hour' => $thisEvent['hour'], 'courseOfficialCode' => $thisCourse['officialCode'], 'courseSysCode' => $thisCourse['sysCode'], 'content' => $eventLine, 'url' => get_path('url') . '/claroline/calendar/agenda.php?cidReq=' . $thisCourse['sysCode'] . '#item' . $thisEvent['id']); } } } ksort($courseDigestList); } return $courseDigestList; }