diff options
| author | David Siegfried <david.siegfried@uni-vechta.de> | 2022-11-15 11:35:36 +0000 |
|---|---|---|
| committer | David Siegfried <david.siegfried@uni-vechta.de> | 2022-11-15 11:35:36 +0000 |
| commit | 90ada48fb04ebcacee431cdfb78f0a63d594ed09 (patch) | |
| tree | c32909d0f774d9ffdccd6bbaa6fc088294f2523c /lib | |
| parent | b8cc064f443fb1ae4de35987d25c1618bcdb122e (diff) | |
prevent php8-warnings, closes #1770
Closes #1770
Merge request studip/studip!1148
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/admissionrules/conditionaladmission/ConditionalAdmission.class.php | 28 | ||||
| -rw-r--r-- | lib/admissionrules/coursememberadmission/CourseMemberAdmission.class.php | 9 | ||||
| -rw-r--r-- | lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.class.php | 45 | ||||
| -rw-r--r-- | lib/classes/RangeTreeObject.class.php | 2 | ||||
| -rw-r--r-- | lib/classes/Request.class.php | 2 | ||||
| -rw-r--r-- | lib/classes/StudipSemSearchHelper.class.php | 13 | ||||
| -rw-r--r-- | lib/classes/TreeAbstract.class.php | 2 | ||||
| -rw-r--r-- | lib/classes/admission/AdmissionRule.class.php | 39 | ||||
| -rw-r--r-- | lib/classes/sidebar/SearchWidget.php | 4 | ||||
| -rw-r--r-- | lib/export/export_studipdata_func.inc.php | 15 | ||||
| -rw-r--r-- | lib/models/resources/ResourceRequest.class.php | 11 | ||||
| -rw-r--r-- | lib/plugins/engine/PluginManager.class.php | 2 |
12 files changed, 91 insertions, 81 deletions
diff --git a/lib/admissionrules/conditionaladmission/ConditionalAdmission.class.php b/lib/admissionrules/conditionaladmission/ConditionalAdmission.class.php index 900ee5b..63275f0 100644 --- a/lib/admissionrules/conditionaladmission/ConditionalAdmission.class.php +++ b/lib/admissionrules/conditionaladmission/ConditionalAdmission.class.php @@ -55,14 +55,14 @@ class ConditionalAdmission extends AdmissionRule /** * Standard constructor. * - * @param String ruleId If this rule has been saved previously, it + * @param String $ruleId If this rule has been saved previously, it * will be loaded from database. - * @return AdmissionRule the current object (this). + * @return ConditionalAdmission the current object (this). */ public function __construct($ruleId='', $courseSetId = '') { parent::__construct($ruleId, $courseSetId); - $this->default_message = _("Sie erfüllen nicht die Bedingung: %s"); + $this->default_message = _('Sie erfüllen nicht die Bedingung: %s'); if ($ruleId) { $this->load(); } else { @@ -74,9 +74,9 @@ class ConditionalAdmission extends AdmissionRule /** * Adds a new UserFilter to this rule. * - * @param UserFilter condition - * @param String group - * @param Int quota + * @param UserFilter $condition + * @param String $group + * @param Int $quota * @return ConditionalAdmission */ public function addCondition($condition, $group = '', $quota = 0) @@ -282,7 +282,7 @@ class ConditionalAdmission extends AdmissionRule /** * Removes the condition with the given ID from the rule. * - * @param String conditionId + * @param String $conditionId * @return ConditionalAdmission */ public function removeCondition($conditionId) @@ -336,8 +336,6 @@ class ConditionalAdmission extends AdmissionRule } } } - } else { - $failed = []; } return $failed; } @@ -360,7 +358,7 @@ class ConditionalAdmission extends AdmissionRule $this->quota = []; foreach ($data['conditions'] as $ser_con) { $condition = ObjectBuilder::build($ser_con, 'UserFilter'); - $this->addCondition($condition, $data['conditiongroup_'.$condition->getId()], $data['quota_'.$data['conditiongroup_'.$condition->getId()]]); + $this->addCondition($condition, $data['conditiongroup_'.$condition->getId()], $data['quota_'.$data['conditiongroup_'.$condition->getId()]] ?? 0); } foreach ($this->getConditiongroups() as $conditiongroup_id => $conditions) { if (mb_strlen($conditiongroup_id) < 32) { @@ -483,7 +481,7 @@ class ConditionalAdmission extends AdmissionRule * Validates if the given request data is sufficient to configure this rule * (e.g. if required values are present). * - * @param Array Request data + * @param Array $data Request data * @return Array Error messages. */ public function validate($data) @@ -505,12 +503,12 @@ class ConditionalAdmission extends AdmissionRule } else { $ungrouped++; } - $quota[$data['conditiongroup_' . $condition->getId()]] = $data['quota_' . $data['conditiongroup_' . $condition->getId()]]; + $quota[$data['conditiongroup_' . $condition->getId()]] = $data['quota_' . $data['conditiongroup_' . $condition->getId()]] ?? 0; if (!$quota[$data['conditiongroup_' . $condition->getId()]]) { $no_quota++; } } - foreach ($quota as $id => $part) { + foreach ($quota as $part) { $quota_total += $part; } if ($grouped && $ungrouped) { @@ -562,6 +560,4 @@ class ConditionalAdmission extends AdmissionRule parent::setSiblings($siblings); $this->conditiongroups_allowed = null; } - -} /* end of class ConditionalAdmission */ - +} diff --git a/lib/admissionrules/coursememberadmission/CourseMemberAdmission.class.php b/lib/admissionrules/coursememberadmission/CourseMemberAdmission.class.php index 74892fd..dc13a62 100644 --- a/lib/admissionrules/coursememberadmission/CourseMemberAdmission.class.php +++ b/lib/admissionrules/coursememberadmission/CourseMemberAdmission.class.php @@ -32,7 +32,8 @@ class CourseMemberAdmission extends AdmissionRule /** * Standard constructor * - * @param String ruleId + * @param String $ruleId + * @param String e */ public function __construct($ruleId = '', $courseSetId = '') { @@ -115,8 +116,8 @@ class CourseMemberAdmission extends AdmissionRule /** * Is admission allowed according to the defined time frame? * - * @param String userId - * @param String courseId + * @param String $userId + * @param String $courseId * @return Array */ public function ruleApplies($userId, $courseId) @@ -193,7 +194,7 @@ class CourseMemberAdmission extends AdmissionRule * Validates if the given request data is sufficient to configure this rule * (e.g. if required values are present). * - * @param Array Request data + * @param Array $data Request data * @return Array Error messages. */ public function validate($data) diff --git a/lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.class.php b/lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.class.php index 1556db3..a64b88a 100644 --- a/lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.class.php +++ b/lib/admissionrules/participantrestrictedadmission/ParticipantRestrictedAdmission.class.php @@ -36,9 +36,10 @@ class ParticipantRestrictedAdmission extends AdmissionRule /** * Standard constructor * - * @param String ruleId + * @param String $ruleId + * @param String $courseSetId */ - public function __construct($ruleId='', $courseSetId = '') + public function __construct($ruleId = '', $courseSetId = '') { parent::__construct($ruleId, $courseSetId); $this->first_come_first_served_allowed = (bool)Config::get()->ENABLE_COURSESET_FCFS; @@ -58,7 +59,8 @@ class ParticipantRestrictedAdmission extends AdmissionRule /** * Deletes the admission rule and all associated data. */ - public function delete() { + public function delete() + { if ($this->prio_exists) { $set_id = DBManager::get()->fetchColumn("SELECT set_id FROM courseset_rule WHERE rule_id = ? LIMIT 1", [$this->id]); //Delete priorities @@ -75,7 +77,8 @@ class ParticipantRestrictedAdmission extends AdmissionRule * Gets some text that describes what this AdmissionRule (or respective * subclass) does. */ - public static function getDescription() { + public static function getDescription() + { return _("Anmelderegeln dieses Typs legen fest, ob die zugeordneten Veranstaltungen eine maximale Teilnehmendenanzahl haben. Die Platzverteilung erfolgt automatisiert."); } @@ -92,7 +95,8 @@ class ParticipantRestrictedAdmission extends AdmissionRule /** * Return this rule's name. */ - public static function getName() { + public static function getName() + { return _("Beschränkte Teilnehmendenanzahl"); } @@ -101,7 +105,8 @@ class ParticipantRestrictedAdmission extends AdmissionRule * * @return String */ - public function getTemplate() { + public function getTemplate() + { $factory = new Flexi_TemplateFactory(dirname(__FILE__).'/templates/'); // Open specific template for this rule and insert base template. $tpl = $factory->open('configure'); @@ -112,7 +117,8 @@ class ParticipantRestrictedAdmission extends AdmissionRule /** * Helper function for loading rule definition from database. */ - public function load() { + public function load() + { // Load data. $stmt = DBManager::get()->prepare("SELECT * FROM `participantrestrictedadmissions` WHERE `rule_id`=? LIMIT 1"); @@ -134,19 +140,20 @@ class ParticipantRestrictedAdmission extends AdmissionRule * @param Array $data * @return AdmissionRule This object. */ - public function setAllData($data) { + public function setAllData($data) + { parent::setAllData($data); - if ($data['distributiondate']) { + if (!empty($data['distributiondate'])) { if (!$data['distributiontime']) { $data['distributiontime'] = '23:59'; } $ddate = strtotime($data['distributiondate'] . ' ' . $data['distributiontime']); $this->setDistributionTime($ddate); } - if ($data['enable_FCFS']) { + if (!empty($data['enable_FCFS'])) { $this->setDistributionTime(0); } - if ($data['startdate']) { + if (!empty($data['startdate'])) { $starttime = strtotime($data['startdate'] . ' ' . $data['starttime']); if ($starttime > time()) { $this->minimum_timespan_to_distribution_time = $this->minimum_timespan_to_distribution_time + (($starttime - time()) / 60); @@ -159,8 +166,8 @@ class ParticipantRestrictedAdmission extends AdmissionRule /** * Sets a new timestamp for seat distribution algorithm execution. * - * @param int newDistributionTime - * @return TimedAdmission + * @param int $newDistributionTime + * @return ParticipantRestrictedAdmission */ public function setDistributionTime($newDistributionTime) { @@ -172,7 +179,8 @@ class ParticipantRestrictedAdmission extends AdmissionRule /** * Store rule definition to database. */ - public function store() { + public function store() + { // Store data. $stmt = DBManager::get()->prepare("INSERT INTO `participantrestrictedadmissions` (`rule_id`, `message`, `distribution_time`, @@ -201,7 +209,7 @@ class ParticipantRestrictedAdmission extends AdmissionRule * Validates if the given request data is sufficient to configure this rule * (e.g. if required values are present). * - * @param Array Request data + * @param Array $data Request data * @return Array Error messages. */ public function validate($data) @@ -211,15 +219,12 @@ class ParticipantRestrictedAdmission extends AdmissionRule $data['distributiontime'] = '23:59'; } $ddate = strtotime($data['distributiondate'] . ' ' . $data['distributiontime']); - if (!$data['enable_FCFS'] && (!$data['distributiondate'] || $ddate < (time() + $this->minimum_timespan_to_distribution_time*60))) { + if (empty($data['enable_FCFS']) && (empty($data['distributiondate']) || $ddate < (time() + $this->minimum_timespan_to_distribution_time * 60))) { $errors[] = sprintf(_('Bitte geben Sie für die Platzverteilung ein Datum an, das weiter in der Zukunft liegt. Das frühestmögliche Datum ist %s.'), strftime('%x %R', time() + $this->minimum_timespan_to_distribution_time*60)); } - if ($data['enable_FCFS'] && $data['distributiondate']) { + if (!empty($data['enable_FCFS']) && $data['distributiondate']) { $errors[] = _('Sie können kein Datum für die automatische Platzverteilung einstellen und gleichzeitig die automatische Platzverteilung ausschalten.'); } return $errors; } - } - -?> diff --git a/lib/classes/RangeTreeObject.class.php b/lib/classes/RangeTreeObject.class.php index c4c5320..579db43 100644 --- a/lib/classes/RangeTreeObject.class.php +++ b/lib/classes/RangeTreeObject.class.php @@ -95,7 +95,7 @@ class RangeTreeObject { function __construct($item_id) { $this->tree = TreeAbstract::GetInstance("StudipRangeTree", false); $this->tree_item_id = $item_id; - $this->item_data = $this->tree->tree_data[$item_id]; + $this->item_data = $this->tree->tree_data[$item_id] ?? null; } /** diff --git a/lib/classes/Request.class.php b/lib/classes/Request.class.php index 22cf29d..3402972 100644 --- a/lib/classes/Request.class.php +++ b/lib/classes/Request.class.php @@ -778,7 +778,7 @@ class Request implements ArrayAccess, IteratorAggregate { try { $request = self::getInstance(); - return ObjectBuilder::buildMany($request[$param] ?: null, $expected_class); + return ObjectBuilder::buildMany($request[$param] ?? null, $expected_class); } catch (Exception $e) { if ($allow_null) { return []; diff --git a/lib/classes/StudipSemSearchHelper.class.php b/lib/classes/StudipSemSearchHelper.class.php index ea7aa9c..bb45d24 100644 --- a/lib/classes/StudipSemSearchHelper.class.php +++ b/lib/classes/StudipSemSearchHelper.class.php @@ -52,7 +52,8 @@ class StudipSemSearchHelper { $this->setParams($params, $visible_only); } - public function setParams($params, $visible_only = null){ + public function setParams($params, $visible_only = null) + { if(isset($params['quick_search']) && isset($params['qs_choose'])){ if($params['qs_choose'] == 'all'){ foreach (self::GetQuickSearchFields() as $key => $value){ @@ -181,11 +182,11 @@ class StudipSemSearchHelper { $view->params[0] = ''; } $view->params[0] .= ($this->params['title']) ? $search_for . " " : " "; - $view->params[0] .= ($this->params['title'] && $this->params['sub_title']) ? $combination : " "; - $view->params[0] .= ($this->params['sub_title']) ? " Untertitel LIKE '%" . $this->trim($this->params['sub_title']) . "%' " : " "; - $view->params[0] .= (($this->params['title'] || $this->params['sub_title']) && $this->params['comment']) ? $combination : " "; - $view->params[0] .= ($this->params['comment']) ? " Beschreibung LIKE '%" . $this->trim($this->params['comment']) . "%' " : " "; - $view->params[0] .= (($this->params['title'] || $this->params['sub_title'] || $this->params['comment']) && $this->params['number']) ? $combination : " "; + $view->params[0] .= ($this->params['title'] && !empty($this->params['sub_title'])) ? $combination : " "; + $view->params[0] .= (!empty($this->params['sub_title'])) ? " Untertitel LIKE '%" . $this->trim($this->params['sub_title']) . "%' " : " "; + $view->params[0] .= (($this->params['title'] || !empty($this->params['sub_title'])) && !empty($this->params['comment'])) ? $combination : " "; + $view->params[0] .= (!empty($this->params['comment'])) ? " Beschreibung LIKE '%" . $this->trim($this->params['comment']) . "%' " : " "; + $view->params[0] .= (($this->params['title'] || !empty($this->params['sub_title']) || empty($this->params['comment'])) && $this->params['number']) ? $combination : " "; $view->params[0] .= ($this->params['number']) ? " VeranstaltungsNummer LIKE '%" . $this->trim($this->params['number']) . "%' " : " "; $view->params[0] = ($this->visible_only ? " c.visible=1 AND " : "") . "(" . $view->params[0] .")"; $view->params[1] = $and_clause . $clause; diff --git a/lib/classes/TreeAbstract.class.php b/lib/classes/TreeAbstract.class.php index 7cdb940..9f54654 100644 --- a/lib/classes/TreeAbstract.class.php +++ b/lib/classes/TreeAbstract.class.php @@ -95,7 +95,7 @@ class TreeAbstract { public static function GetInstance($class_name, $args = null, $invalidate_cache = false) { static $tree_instance; - + $class_hash = ''; if ($args){ $class_hash = $class_name . "_" . md5(serialize($args)); } elseif ($args === false && is_array($tree_instance)){ diff --git a/lib/classes/admission/AdmissionRule.class.php b/lib/classes/admission/AdmissionRule.class.php index a174157..fe5e5bb 100644 --- a/lib/classes/admission/AdmissionRule.class.php +++ b/lib/classes/admission/AdmissionRule.class.php @@ -84,7 +84,7 @@ abstract class AdmissionRule /** * Checks if we are in the rule validity time frame. * - * @return True if the rule is valid because the time frame applies, + * @return bool True if the rule is valid because the time frame applies, * otherwise false. */ public function checkTimeFrame() @@ -115,7 +115,7 @@ abstract class AdmissionRule /** * Generate a new unique ID. * - * @param String tableName + * @param String $tableName */ public function generateId($tableName) { @@ -273,7 +273,7 @@ abstract class AdmissionRule * Hook that can be called when the seat distribution on the courseset * starts. * - * @param CourseSet The courseset this rule belongs to. + * @param CourseSet $courseset The courseset this rule belongs to. */ public function beforeSeatDistribution($courseset) { @@ -284,8 +284,8 @@ abstract class AdmissionRule * Does the current rule allow the given user to register as participant * in the given course? * - * @param String userId - * @param String courseId + * @param String $userId + * @param String $courseId * @return Array */ public function ruleApplies($userId, $courseId) @@ -303,23 +303,23 @@ abstract class AdmissionRule */ public function setAllData($data) { - if ($data['start_date'] && !$data['start_time']) { + if (!empty($data['start_date']) && empty($data['start_time'])) { $data['start_time'] = strtotime($data['start_date']); } - if ($data['end_date'] && !$data['end_time']) { + if (!empty($data['end_date']) && empty($data['end_time'])) { $data['end_time'] = strtotime($data['end_date'] . ' 23:59:59'); } - $this->message = $data['message']; - $this->startTime = $data['start_time']; - $this->endTime = $data['end_time']; + $this->message = $data['message'] ?? ''; + $this->startTime = $data['start_time'] ?? null; + $this->endTime = $data['end_time'] ?? null; return $this; } /** * Sets a new end time for condition validity. * - * @param Integer newEndTime - * @return UserFilter + * @param Integer $newEndTime + * @return AdmissionRule */ public function setEndTime($newEndTime) { @@ -330,7 +330,7 @@ abstract class AdmissionRule /** * Sets a new message to show to users. * - * @param String newMessage A new message text. + * @param String $newMessage A new message text. * @return AdmissionRule This object */ public function setMessage($newMessage) @@ -342,8 +342,8 @@ abstract class AdmissionRule /** * Sets a new start time for condition validity. * - * @param Integer newStartTime - * @return UserFilter + * @param Integer $newStartTime + * @return AdmissionRule */ public function setStartTime($newStartTime) { @@ -372,13 +372,13 @@ abstract class AdmissionRule * Validates if the given request data is sufficient to configure this rule * (e.g. if required values are present). * - * @param Array Request data + * @param Array $data Request data * @return Array Error messages. */ public function validate($data) { $errors = []; - if ($data['start_date'] && $data['end_date'] && strtotime($data['end_date']) < strtotime($data['start_date'])) { + if (!empty($data['start_date']) && !empty($data['end_date']) && strtotime($data['end_date']) < strtotime($data['start_date'])) { $errors[] = _('Das Enddatum darf nicht vor dem Startdatum liegen.'); } return $errors; @@ -389,7 +389,8 @@ abstract class AdmissionRule * * @return String */ - public function __toString() { + public function __toString() + { return $this->toString(); } @@ -452,4 +453,4 @@ abstract class AdmissionRule $this->id = md5(uniqid(get_class($this))); $this->courseSetId = null; } -} /* end of abstract class AdmissionRule */ +} diff --git a/lib/classes/sidebar/SearchWidget.php b/lib/classes/sidebar/SearchWidget.php index 40a2eb9..82aa26b 100644 --- a/lib/classes/sidebar/SearchWidget.php +++ b/lib/classes/sidebar/SearchWidget.php @@ -147,11 +147,11 @@ class SearchWidget extends SidebarWidget unset($reset_params[$needle['name']]); // Search view in Wiki must be cleared. - if ($reset_params['view'] == 'search') { + if (isset($reset_params['view']) && $reset_params['view'] === 'search') { $reset_params['view'] = 'show'; } // Search view in Forum must be cleared. - if ($reset_params['backend'] == 'search') { + if (isset($reset_params['backend']) && $reset_params['backend'] === 'search') { unset($reset_params['backend']); $this->url = str_replace('index/search', 'index', $this->url); } diff --git a/lib/export/export_studipdata_func.inc.php b/lib/export/export_studipdata_func.inc.php index 1139f21..bc2b990 100644 --- a/lib/export/export_studipdata_func.inc.php +++ b/lib/export/export_studipdata_func.inc.php @@ -300,10 +300,11 @@ function export_inst($inst_id, $ex_sem_id = "all") */ function export_sem($inst_id, $ex_sem_id = 'all') { - global $range_id, $xml_file, $o_mode, $xml_names_lecture, $xml_groupnames_lecture, $object_counter, $SEM_TYPE, $SEM_CLASS, $filter, $ex_sem, $ex_sem_class, $ex_person_details, $persons; + global $o_mode, $xml_names_lecture, $xml_groupnames_lecture, $object_counter, $SEM_TYPE, $SEM_CLASS, $filter, $ex_sem, $ex_sem_class, $ex_person_details, $persons; $ex_only_homeinst = Request::int('ex_only_homeinst', 0); - + $addquery = ''; + $addjoin = ''; // Prepare user count statement $query = "SELECT COUNT(user_id) FROM seminar_user @@ -320,7 +321,9 @@ function export_sem($inst_id, $ex_sem_id = 'all') WHERE seminar_user.status = 'dozent' AND seminar_user.Seminar_id = ? ORDER BY seminar_user.position"; $inner_statement = DBManager::get()->prepare($query); - + $do_group = false; + $group = null; + $group_tab_zelle = null; // Prepare (build) and execute outmost query switch ($filter) { case "seminar": @@ -476,7 +479,7 @@ function export_sem($inst_id, $ex_sem_id = 'all') } $data_object .= xml_close_tag($xml_groupnames_lecture['childgroup3a']); } elseif ($key === 'admission_turnout') { - $data_object .= xml_open_tag($val, $row['admission_type'] ? _('max.') : _('erw.')); + $data_object .= xml_open_tag($val, !empty($row['admission_type']) ? _('max.') : _('erw.')); $data_object .= $row[$key]; $data_object .= xml_close_tag($val); } elseif ($key === 'teilnehmer_anzahl_aktuell') { @@ -488,7 +491,7 @@ function export_sem($inst_id, $ex_sem_id = 'all') } elseif ($key === 'metadata_dates') { $data_object .= xml_open_tag($xml_groupnames_lecture['childgroup1']); $vorb = vorbesprechung($row['seminar_id'], 'export'); - if ($vorb != false) { + if ($vorb) { $data_object .= xml_tag($val[0], $vorb); } if (($first_date = SeminarDB::getFirstDate($row['seminar_id'])) @@ -500,7 +503,7 @@ function export_sem($inst_id, $ex_sem_id = 'all') $data_object .= xml_close_tag($xml_groupnames_lecture["childgroup1"]); } elseif ($key === 'Institut_id') { $data_object .= xml_tag($val, $row['heimateinrichtung'], ['key' => $row[$key]]); - } elseif ($row[$key] !== '') + } elseif (isset($row[$key]) && $row[$key] !== '') $data_object .= xml_tag($val, $row[$key]); } diff --git a/lib/models/resources/ResourceRequest.class.php b/lib/models/resources/ResourceRequest.class.php index 8b68fd0..c487841 100644 --- a/lib/models/resources/ResourceRequest.class.php +++ b/lib/models/resources/ResourceRequest.class.php @@ -1175,8 +1175,8 @@ class ResourceRequest extends SimpleORMap implements PrivacyObject, Studip\Calen if ($with_range) { $interval['range'] = 'CourseDate'; $interval['range_id'] = $this->termin_id; - $interval['booked_room'] = $this->date->room_booking->resource_id; - $interval['booking_id'] = $this->date->room_booking->id; + $interval['booked_room'] = $this->date->room_booking ? $this->date->room_booking->resource_id: null; + $interval['booking_id'] = $this->date->room_booking ? $this->date->room_booking->id : null; } return [$interval]; } elseif ($this->metadate_id) { @@ -1271,8 +1271,11 @@ class ResourceRequest extends SimpleORMap implements PrivacyObject, Studip\Calen if ($interval['range'] == 'CourseDate') { $date = call_user_func([$interval['range'], 'find'], $interval['range_id']); - if ($room_obj = Room::find($date->room_booking->resource_id)) { - $room = $room_obj->name; + if ($date->room_booking) { + $room_obj = Room::find($date->room_booking->resource_id); + if ($room_obj) { + $room = $room_obj->name; + } } } diff --git a/lib/plugins/engine/PluginManager.class.php b/lib/plugins/engine/PluginManager.class.php index 7ced174..5873eb2 100644 --- a/lib/plugins/engine/PluginManager.class.php +++ b/lib/plugins/engine/PluginManager.class.php @@ -619,7 +619,7 @@ class PluginManager */ public function getPlugins ($type, $context = null) { - $user = $GLOBALS['user']->id ?: 'nobody'; + $user = $GLOBALS['user'] ? $GLOBALS['user']->id : 'nobody'; $plugin_info = $this->getPluginInfos($type); $plugins = []; |
