diff --git a/main/inc/lib/api.lib.php b/main/inc/lib/api.lib.php index c8fee9bc931..1668e6f9eff 100644 --- a/main/inc/lib/api.lib.php +++ b/main/inc/lib/api.lib.php @@ -2443,7 +2443,12 @@ function api_get_user_status($user_id = null) * @return boolean True if the user has course creation rights, * false otherwise. */ -function api_is_allowed_to_create_course() { +function api_is_allowed_to_create_course() +{ + if (api_is_platform_admin()) { + return true; + } + return Session::read('is_allowedCreateCourse'); } diff --git a/main/inc/lib/userportal.lib.php b/main/inc/lib/userportal.lib.php index 84f83656ea9..8b5837854da 100755 --- a/main/inc/lib/userportal.lib.php +++ b/main/inc/lib/userportal.lib.php @@ -174,6 +174,9 @@ public function category_has_open_courses($category) return false; } + /** + * @return null|string + */ public function return_teacher_link() { $html = ''; @@ -185,22 +188,19 @@ public function return_teacher_link() $show_create_link = false; $show_course_link = false; - if (api_is_platform_admin() || api_is_course_admin() || api_is_allowed_to_create_course()) { + if (api_is_allowed_to_create_course()) { $show_menu = true; $show_course_link = true; + $show_create_link = true; } else { if (api_get_setting('allow_students_to_browse_courses') == 'true') { $show_menu = true; $show_course_link = true; } - } - - if (api_get_setting('allow_users_to_create_courses') !== 'false' && !api_is_platform_admin()) { - $show_create_link = true; - } - if (api_is_student_boss() || api_is_session_admin()) { - $show_create_link = false; + if (api_get_setting('allow_users_to_create_courses')) { + $show_create_link = true; + } } if ($show_menu && ($show_create_link || $show_course_link)) { @@ -211,7 +211,6 @@ public function return_teacher_link() } // My Account section - if ($show_menu) { $html .= '