|
@@ -578,7 +578,15 @@ function modify_filter($user_id, $url_params, $row)
|
|
|
}
|
|
|
|
|
|
//only allow platform admins to login_as, or session admins only for students (not teachers nor other admins)
|
|
|
- $sessionAdminCanLoginAs = api_is_session_admin() && $current_user_status_label == $statusname[STUDENT];
|
|
|
+ $loginAsStatusForSessionAdmins = [$statusname[STUDENT]];
|
|
|
+
|
|
|
+ //except when allow_session_admin_login_as_teacher is enabled, then can login_as teachers also
|
|
|
+ if (api_get_configuration_value('allow_session_admin_login_as_teacher')) {
|
|
|
+ $loginAsStatusForSessionAdmins[] = $statusname[COURSEMANAGER];
|
|
|
+ }
|
|
|
+
|
|
|
+ $sessionAdminCanLoginAs = api_is_session_admin() &&
|
|
|
+ in_array($current_user_status_label, $loginAsStatusForSessionAdmins);
|
|
|
|
|
|
if (api_is_platform_admin() || $sessionAdminCanLoginAs) {
|
|
|
if (!$user_is_anonymous) {
|