Skip to content
Snippets Groups Projects
Commit b50d00e5 authored by Jan-Hendrik Willms's avatar Jan-Hendrik Willms
Browse files

fixes #3707

Closes #3707

Merge request studip/studip!2580
parent 5a498380
No related branches found
No related tags found
No related merge requests found
......@@ -93,8 +93,8 @@ class ElearningController extends AuthenticatedController
$connection_status = $connected_cms[$cms]->getConnectionStatus($cms);
foreach ($connection_status as $type => $msg) {
if ($msg["error"] != "") {
PageLayout::postMessage(MessageBox::error(_("Es traten Probleme bei der Anbindung einzelner Lermodule auf. Bitte wenden Sie sich an Ihren Systemadministrator."), [$cms .': ' . $msg["error"]]));
if (!empty($msg["error"])) {
PageLayout::postError(_("Es traten Probleme bei der Anbindung einzelner Lermodule auf. Bitte wenden Sie sich an Ihren Systemadministrator."), [$cms .': ' . $msg["error"]]);
$GLOBALS["ELEARNING_INTERFACE_" . $cms . "_ACTIVE"] = false;
}
}
......
......@@ -109,12 +109,15 @@ class GlobalSearchRoomBookings extends GlobalSearchModule
$additional .= date('d.m.Y H:i', $res['end']);
return [
'name' => self::mark($res['user_free_name'], $search),
'url' => URLHelper::getURL('resources.php', [
'view' => 'view_schedule',
'show_object' => $res['resource_id'],
'start_time' => strtotime('last monday', $res['begin'] + 24 * 60 * 60)
], true),
'name' => self::mark($res['name'], $search),
'url' => URLHelper::getURL(
'dispatch.php/resources/room_planning/booking_plan/' . $res['id'],
[
'defaultDate' => date('Y-m-d', strtotime('last monday', $res['begin'] + 24 * 60 * 60)),
'display_all_requests' => true,
],
true
),
'img' => Icon::create('room-clear')->asImagePath(),
'additional' => self::mark($additional, $search),
'expand' => null
......
......@@ -70,26 +70,25 @@ class ConnectedCMS
public function init($cms)
{
global $ELEARNING_INTERFACE_MODULES;
$this->name = $ELEARNING_INTERFACE_MODULES[$cms]["name"] ?? null;
$this->name = $ELEARNING_INTERFACE_MODULES[$cms]['name'] ?? null;
$this->ABSOLUTE_PATH_ELEARNINGMODULES = $ELEARNING_INTERFACE_MODULES[$cms]["ABSOLUTE_PATH_ELEARNINGMODULES"];
$this->ABSOLUTE_PATH_SOAP = $ELEARNING_INTERFACE_MODULES[$cms]["ABSOLUTE_PATH_SOAP"];
if (isset($ELEARNING_INTERFACE_MODULES[$cms]["RELATIVE_PATH_DB_CLASSES"]))
{
if (isset($ELEARNING_INTERFACE_MODULES[$cms]["RELATIVE_PATH_DB_CLASSES"])) {
$this->RELATIVE_PATH_DB_CLASSES = $ELEARNING_INTERFACE_MODULES[$cms]["RELATIVE_PATH_DB_CLASSES"];
$this->db_classes = $ELEARNING_INTERFACE_MODULES[$cms]["db_classes"];
}
else {
} else {
$this->RELATIVE_PATH_DB_CLASSES = false;
}
$this->CLASS_PREFIX = $ELEARNING_INTERFACE_MODULES[$cms]["CLASS_PREFIX"];
$this->auth_necessary = $ELEARNING_INTERFACE_MODULES[$cms]["auth_necessary"];
$this->USER_AUTO_CREATE = $ELEARNING_INTERFACE_MODULES[$cms]["USER_AUTO_CREATE"];
$this->USER_PREFIX = $ELEARNING_INTERFACE_MODULES[$cms]["USER_PREFIX"];
$this->target_file = $ELEARNING_INTERFACE_MODULES[$cms]["target_file"];
$this->logo_file = $ELEARNING_INTERFACE_MODULES[$cms]["logo_file"];
$this->soap_data = $ELEARNING_INTERFACE_MODULES[$cms]["soap_data"];
$this->types = $ELEARNING_INTERFACE_MODULES[$cms]["types"];
$this->roles = $ELEARNING_INTERFACE_MODULES[$cms]["roles"];
$this->CLASS_PREFIX = $ELEARNING_INTERFACE_MODULES[$cms]['CLASS_PREFIX'];
$this->auth_necessary = $ELEARNING_INTERFACE_MODULES[$cms]['auth_necessary'];
$this->USER_AUTO_CREATE = $ELEARNING_INTERFACE_MODULES[$cms]['USER_AUTO_CREATE'] ?? null;
$this->USER_PREFIX = $ELEARNING_INTERFACE_MODULES[$cms]['USER_PREFIX'] ?? null;
$this->target_file = $ELEARNING_INTERFACE_MODULES[$cms]['target_file'] ?? null;
$this->logo_file = $ELEARNING_INTERFACE_MODULES[$cms]['logo_file'] ?? null;
$this->soap_data = $ELEARNING_INTERFACE_MODULES[$cms]['soap_data'] ?? null;
$this->types = $ELEARNING_INTERFACE_MODULES[$cms]['types'] ?? null;
$this->roles = $ELEARNING_INTERFACE_MODULES[$cms]['roles'] ?? null;
}
/**
......@@ -100,16 +99,16 @@ class ConnectedCMS
*/
public function initSubclasses()
{
if ($this->auth_necessary)
{
require_once($this->CLASS_PREFIX . "ConnectedUser.class.php");
if ($this->auth_necessary) {
require_once $this->CLASS_PREFIX . "ConnectedUser.class.php";
$classname = $this->CLASS_PREFIX . "ConnectedUser";
$this->user = new $classname($this->cms_type);
require_once($this->CLASS_PREFIX . "ConnectedPermissions.class.php");
require_once $this->CLASS_PREFIX . "ConnectedPermissions.class.php";
$classname = $this->CLASS_PREFIX . "ConnectedPermissions";
$this->permissions = new $classname($this->cms_type);
}
require_once($this->CLASS_PREFIX . "ConnectedLink.class.php");
require_once $this->CLASS_PREFIX . "ConnectedLink.class.php";
$classname = $this->CLASS_PREFIX . "ConnectedLink";
$this->link = new $classname($this->cms_type);
}
......
......@@ -33,7 +33,7 @@ class ConnectedLink
global $ELEARNING_INTERFACE_MODULES;
$this->cms_type = $cms;
$this->cms_link = $ELEARNING_INTERFACE_MODULES[$cms]["ABSOLUTE_PATH_ELEARNINGMODULES"] . $ELEARNING_INTERFACE_MODULES[$cms]["target_file"];
$this->cms_link = $ELEARNING_INTERFACE_MODULES[$cms]["ABSOLUTE_PATH_ELEARNINGMODULES"] . ($ELEARNING_INTERFACE_MODULES[$cms]["target_file"] ?? null);
}
/**
......
......@@ -25,7 +25,7 @@ class ELearningUtils
{
global $connected_cms, $ELEARNING_INTERFACE_MODULES;
if (!is_object($connected_cms[$cms])) {
if (!isset($connected_cms[$cms]) || !is_object($connected_cms[$cms])) {
require_once "lib/elearning/{$ELEARNING_INTERFACE_MODULES[$cms]['CLASS_PREFIX']}ConnectedCMS.class.php";
$classname = "{$ELEARNING_INTERFACE_MODULES[$cms]['CLASS_PREFIX']}ConnectedCMS";
$connected_cms[$cms] = new $classname($cms);
......
......@@ -10,7 +10,7 @@ class WebserviceClient
{
static $instances = [];
if (!$instances[$classname . $webservice_url]) {
if (!isset($instances[$classname . $webservice_url])) {
$instances[$classname . $webservice_url] = new $classname($webservice_url);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment