format('Y'); $searchYear = isset($_GET['year']) ? (int) $_GET['year'] : $currentYear; $currentOrder = isset($_GET['order']) && 'desc' === $_GET['order'] ? 'desc' : 'asc'; if (api_is_western_name_order()) { $orderBy = " firstname "; } else { $orderBy = " lastname "; } $students = UserManager::getUsersFollowedByUser( api_get_user_id(), STUDENT, false, false, false, null, null, $orderBy, $currentOrder, null, null, api_is_student_boss() ? STUDENT_BOSS : COURSEMANAGER ); if ('desc' === $currentOrder) { $order = 'asc'; } else { $order = 'desc'; } $userInfo = api_get_user_info(); $userId = $userInfo['id']; $globalColors = ChamiloApi::getColorPalette(false, true, 500); $sessionColors = []; $sessionColorName = []; foreach ($students as &$student) { $student = api_get_user_info($student['user_id']); $sessionsList = UserManager::getSubscribedSessionsByYear($student, $searchYear); $sessions = UserManager::getSessionsCalendarByYear($sessionsList, $searchYear); $personalColors = []; $counter = 0; foreach ($sessions as &$session) { if (!isset($sessionColors[$session['id']])) { $session['color'] = $globalColors[$counter]; $sessionColors[$session['id']] = $session['color']; $sessionColorName[$session['color']] = $session['name']; } else { $session['color'] = $sessionColors[$session['id']]; } $counter++; } $student['sessions'] = $sessions; //$colors = ChamiloApi::getColorPalette(false, true, count($sessions)); //$student['colors'] = $colors; } $table = new HTML_Table(['class' => 'table table-responsive']); $headers = [ get_lang('SessionName'), get_lang('Color'), ]; $row = 0; $column = 0; foreach ($headers as $header) { $table->setHeaderContents($row, $column, $header); $column++; } $row++; foreach ($sessionColorName as $color => $name) { $table->setCellContents($row, 0, $name); $table->setCellContents($row, 1, "
 
"); $row++; } $agenda = new Agenda('personal'); $actions = $agenda->displayActions('list', $userId); $toolName = get_lang('SessionsPlanCalendar'); $template = new Template($toolName); $template->assign('toolbar', $actions); $template->assign('student_id', $userId); $template->assign('search_year', $searchYear); $template->assign('students', $students); $template->assign('legend', $table->toHtml()); $template->assign('order', $order); $template->assign('current_order', $currentOrder); $layout = $template->get_template('agenda/student_boss_planification.tpl'); $template->display($layout);