From c401276d20bc5af64a0a138eace1598dfe5c8b2d Mon Sep 17 00:00:00 2001 From: jmontoyaa Date: Fri, 15 Dec 2017 10:24:46 +0100 Subject: [PATCH] Fix unsubscribe user from course or session see #2248 --- main/admin/user_information.php | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/main/admin/user_information.php b/main/admin/user_information.php index e461ac0603..d2c271efea 100755 --- a/main/admin/user_information.php +++ b/main/admin/user_information.php @@ -42,6 +42,9 @@ $interbreadcrumb[] = array("url" => 'index.php', "name" => get_lang('PlatformAdm $interbreadcrumb[] = array("url" => 'user_list.php', "name" => get_lang('UserList')); $userId = $user['user_id']; + +$currentUrl = api_get_self().'?user_id='.$userId; + $tool_name = $userEntity->getCompleteName(); $table_course_user = Database::get_main_table(TABLE_MAIN_COURSE_USER); $table_course = Database::get_main_table(TABLE_MAIN_COURSE); @@ -133,7 +136,7 @@ if (!empty($studentBossList)) { $row = 1; foreach ($studentBossList as $studentBossId) { $studentBoss = api_get_user_info($studentBossId['boss_id']); - $table->setCellContents($row, 0, $studentBoss['complete_name_with_username']); + $table->setCellContents($row, 0, $studentBoss['complete_name_with_message_link']); $csvContent[] = array($studentBoss['complete_name_with_username']); $row++; } @@ -317,7 +320,7 @@ if (count($sessions) > 0) { Display::return_icon('course_home.gif', get_lang('CourseHomepage')).''; if ($my_course['status'] == STUDENT) { - $tools .= ''. + $tools .= ''. Display::return_icon('delete.png', get_lang('Delete')).''; } @@ -430,9 +433,9 @@ if (Database::num_rows($res) > 0) { ''. Display::return_icon('course_home.gif', get_lang('CourseHomepage')).''. ''. - Display::return_icon('edit.gif', get_lang('Edit')).''; + Display::return_icon('edit.png', get_lang('Edit')).''; if ($course->status == STUDENT) { - $tools .= ''. + $tools .= ''. Display::return_icon('delete.png', get_lang('Delete')).''; } @@ -538,16 +541,15 @@ if (isset($_GET['action'])) { } break; case 'unsubscribe': - $courseCode = empty($_GET['course_code']) ? '' : intval($_GET['course_code']); - $sessionId = empty($_GET['id_session']) ? 0 : intval($_GET['id_session']); - $courseInfo = api_get_course_info($courseCode); - + $courseId = !empty($_GET['course_id']) ? (int) $_GET['course_id'] : 0; + $sessionId = !empty($_GET['id_session']) ? (int) $_GET['id_session'] : 0; + $courseInfo = api_get_course_info_by_id($courseId); if (empty($courseInfo)) { break; } if (CourseManager::getUserInCourseStatus($userId, $courseInfo['real_id']) == STUDENT) { - CourseManager::unsubscribe_user($userId, $courseCode, $sessionId); + CourseManager::unsubscribe_user($userId, $courseInfo['code'], $sessionId); Display::addFlash(Display::return_message(get_lang('UserUnsubscribed'))); } else { Display::addFlash(Display::return_message( @@ -556,17 +558,22 @@ if (isset($_GET['action'])) { false )); } + header('Location: '.$currentUrl); + exit; break; - case 'unsubscribeSessionCourse': + case 'unsubscribe_session_course': $userId = empty($_GET['user_id']) ? 0 : intval($_GET['user_id']); - $courseCode = empty($_GET['course_code']) ? '' : intval($_GET['course_code']); - $sessionId = empty($_GET['id_session']) ? 0 : intval($_GET['id_session']); + $courseId = !empty($_GET['course_id']) ? (int) $_GET['course_id'] : 0; + $sessionId = !empty($_GET['id_session']) ? (int) $_GET['id_session'] : 0; + SessionManager::removeUsersFromCourseSession( array($userId), $sessionId, - api_get_course_info($courseCode) + api_get_course_info_by_id($courseId) ); Display::addFlash(Display::return_message(get_lang('UserUnsubscribed'))); + header('Location: '.$currentUrl); + exit; break; case 'export': Export::arrayToCsv(