diff --git a/app/controllers/elearning.php b/app/controllers/elearning.php index 97b1b9058e059aecc6238e92bcbfa43fcd52f2aa..b2a2117ebe45fc6948140b9b415027b68a4231b4 100644 --- a/app/controllers/elearning.php +++ b/app/controllers/elearning.php @@ -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; } } diff --git a/lib/classes/globalsearch/GlobalSearchRoomBookings.php b/lib/classes/globalsearch/GlobalSearchRoomBookings.php index 1d5f7bc0922495f57e843d8a484cae97f0b58f56..93bc292ae7d71af558bdf98158659eb4ff93ec7a 100644 --- a/lib/classes/globalsearch/GlobalSearchRoomBookings.php +++ b/lib/classes/globalsearch/GlobalSearchRoomBookings.php @@ -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 diff --git a/lib/elearning/ConnectedCMS.class.php b/lib/elearning/ConnectedCMS.class.php index 3b21eab33369741c6d4f04750c65e68fd6f3e36e..3dd3bfba2620c14ecc931c62ec749994f895b43f 100644 --- a/lib/elearning/ConnectedCMS.class.php +++ b/lib/elearning/ConnectedCMS.class.php @@ -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); } diff --git a/lib/elearning/ConnectedLink.class.php b/lib/elearning/ConnectedLink.class.php index 80c61d1e027617c3b8723c63322d5ae0726aa120..6fa1de51dc15dee1d630c3edc496816ed9c8afc7 100644 --- a/lib/elearning/ConnectedLink.class.php +++ b/lib/elearning/ConnectedLink.class.php @@ -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); } /** diff --git a/lib/elearning/ELearningUtils.class.php b/lib/elearning/ELearningUtils.class.php index d027e37210263936a4690a88916a5782dacf1639..33fb4a24a99205174d4d82de22bd320c4750702d 100644 --- a/lib/elearning/ELearningUtils.class.php +++ b/lib/elearning/ELearningUtils.class.php @@ -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); diff --git a/lib/elearning/clients/webservice_client.php b/lib/elearning/clients/webservice_client.php index eea74a0f3704974d1cf5320bce24bcefd62a3781..a7f97f2cb6b3d3e44fde4ec4661552cefa4e45db 100644 --- a/lib/elearning/clients/webservice_client.php +++ b/lib/elearning/clients/webservice_client.php @@ -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); }