Lti provider - Hide lp home icon and user outsource ims_lti - refs BT#20093

pull/4369/head
Christian 4 years ago
parent b60c618cad
commit 972e2cd2a6
  1. 1
      main/inc/lib/api.lib.php
  2. 2
      main/lp/lp_view.php
  3. 46
      plugin/lti_provider/src/LtiProvider.php

@ -171,6 +171,7 @@ define('SECTION_CUSTOMPAGE', 'custompage');
define('PLATFORM_AUTH_SOURCE', 'platform');
define('CAS_AUTH_SOURCE', 'cas');
define('LDAP_AUTH_SOURCE', 'extldap');
define('IMS_LTI_SOURCE', 'ims_lti');
// CONSTANT defining the default HotPotatoes files directory
define('DIR_HOTPOTATOES', '/HotPotatoes_files');

@ -134,7 +134,7 @@ if (!empty($lp->lti_launch_id)) {
$htmlHeadXtra[] = '<script>
$(function() {
if ($("#btn-menu-float").length > 0) {
$("#btn-menu-float").hide();
$("#btn-menu-float").find("#home-course").hide();
}
});
</script>';

@ -42,6 +42,29 @@ class LtiProvider
->doRedirect();
}
/**
* It removes user and oLP session.
*
* @param string $toolName
*/
public function logout(string $toolName = '')
{
Session::erase('_user');
Session::erase('is_platformAdmin');
Session::erase('is_allowedCreateCourse');
Session::erase('_uid');
if ('lp' == $toolName) {
// Deleting the objects
Session::erase('oLP');
Session::erase('lpobject');
Session::erase('scorm_view_id');
Session::erase('scorm_item_id');
Session::erase('exerciseResult');
Session::erase('objExercise');
Session::erase('questionList');
}
}
/**
* Lti Message Launch.
*/
@ -87,7 +110,12 @@ class LtiProvider
$status,
$email,
$username,
$password
$password,
'',
'',
'',
'',
IMS_LTI_SOURCE
);
} else {
$userId = $userInfo['user_id'];
@ -97,21 +125,7 @@ class LtiProvider
CourseManager::subscribeUser($userId, $courseCode, $status);
}
Session::erase('_user');
Session::erase('is_platformAdmin');
Session::erase('is_allowedCreateCourse');
Session::erase('_uid');
if ('lp' == $toolName) {
// Deleting the objects
Session::erase('oLP');
Session::erase('lpobject');
Session::erase('scorm_view_id');
Session::erase('scorm_item_id');
Session::erase('exerciseResult');
Session::erase('objExercise');
Session::erase('questionList');
}
$this->logout($toolName);
$login = UserManager::loginAsUser($userId, false);
if ($login && CourseManager::is_user_subscribed_in_course($userId, $courseCode)) {

Loading…
Cancel
Save