From 1d6e3ee92adf8ab1f37392fe4935345e54c55a3a Mon Sep 17 00:00:00 2001 From: flack Date: Thu, 16 May 2024 10:09:40 +0200 Subject: [PATCH] Use nullsafe operator --- lib/midcom/helper/metadata.php | 5 ++--- lib/midgard/admin/asgard/handler/welcome.php | 4 ++-- lib/midgard/admin/asgard/plugin.php | 4 ++-- lib/net/nemein/wiki/wikipage.php | 9 ++++----- lib/org/openpsa/calendar/handler/event/view.php | 3 +-- themes/OpenPsa2/style/userinfo.php | 7 +++---- 6 files changed, 14 insertions(+), 18 deletions(-) diff --git a/lib/midcom/helper/metadata.php b/lib/midcom/helper/metadata.php index 7c73b1654..ecd97b5be 100644 --- a/lib/midcom/helper/metadata.php +++ b/lib/midcom/helper/metadata.php @@ -427,8 +427,7 @@ public function is_locked() : bool } // Lock was created by the user, return "not locked" - if ( !empty(midcom::get()->auth->user->guid) - && $this->get('locker') === midcom::get()->auth->user->guid) { + if ($this->get('locker') === midcom::get()->auth->user?->guid) { return false; } @@ -454,7 +453,7 @@ public function lock() : bool */ public function can_unlock() : bool { - return ( (midcom::get()->auth->user && midcom::get()->auth->user->guid == $this->__object->metadata->locker) + return ( midcom::get()->auth->user?->guid == $this->__object->metadata->locker || $this->__object->can_do('midcom:unlock') || midcom::get()->auth->can_user_do('midcom:unlock', class: midcom_services_auth::class)); } diff --git a/lib/midgard/admin/asgard/handler/welcome.php b/lib/midgard/admin/asgard/handler/welcome.php index e6e7cfe75..eff20d3f8 100644 --- a/lib/midgard/admin/asgard/handler/welcome.php +++ b/lib/midgard/admin/asgard/handler/welcome.php @@ -32,8 +32,8 @@ private function _list_revised(string $since, ?string $type = null, bool $only_m $qb->add_constraint('metadata.revised', '>=', $since); if ( $only_mine - && midcom::get()->auth->user) { - $qb->add_constraint('metadata.authors', 'LIKE', '|' . midcom::get()->auth->user->guid . '|'); + && $guid = midcom::get()->auth->user?->guid) { + $qb->add_constraint('metadata.authors', 'LIKE', '|' . $guid . '|'); } foreach ($qb->execute() as $object) { diff --git a/lib/midgard/admin/asgard/plugin.php b/lib/midgard/admin/asgard/plugin.php index 33084bc4a..5252a6b38 100644 --- a/lib/midgard/admin/asgard/plugin.php +++ b/lib/midgard/admin/asgard/plugin.php @@ -259,8 +259,8 @@ public static function get_preference(string $preference, bool $fallback_to_conf { static $preferences = []; - if (midcom::get()->auth->user && !array_key_exists($preference, $preferences)) { - $person = midcom_db_person::get_cached(midcom::get()->auth->user->guid); + if ( !array_key_exists($preference, $preferences) + && $person = midcom::get()->auth->user?->get_storage()) { $preferences[$preference] = $person->get_parameter('midgard.admin.asgard:preferences', $preference); } diff --git a/lib/net/nemein/wiki/wikipage.php b/lib/net/nemein/wiki/wikipage.php index 521f4a491..8b19c3892 100644 --- a/lib/net/nemein/wiki/wikipage.php +++ b/lib/net/nemein/wiki/wikipage.php @@ -52,11 +52,11 @@ public function _on_creating() : bool public function _on_updating() : bool { - if (midcom::get()->auth->user) { + if ($guid = midcom::get()->auth->user?->guid) { // Place current user in the page authors list $authors = explode('|', substr($this->metadata->authors, 1, -1)); - if (!in_array(midcom::get()->auth->user->guid, $authors)) { - $authors[] = midcom::get()->auth->user->guid; + if (!in_array($guid, $authors)) { + $authors[] = $guid; $this->metadata->authors = '|' . implode('|', $authors) . '|'; } } @@ -136,8 +136,7 @@ private function update_watchers() // Construct the message $message = []; $user_string = midcom::get()->i18n->get_string('anonymous', 'net.nemein.wiki'); - if (midcom::get()->auth->user) { - $user = midcom::get()->auth->user->get_storage(); + if ($user = midcom::get()->auth->user?->get_storage()) { $user_string = $user->name; } // Title for long notifications diff --git a/lib/org/openpsa/calendar/handler/event/view.php b/lib/org/openpsa/calendar/handler/event/view.php index 9234b0a4c..280c3e03a 100644 --- a/lib/org/openpsa/calendar/handler/event/view.php +++ b/lib/org/openpsa/calendar/handler/event/view.php @@ -52,8 +52,7 @@ public function _handler_event(Request $request, string $handler_id, string $gui MIDCOM_TOOLBAR_OPTIONS => ['rel' => 'directlink'] ]; - if (midcom::get()->auth->user) { - $user = midcom::get()->auth->user->get_storage(); + if ($user = midcom::get()->auth->user?->get_storage()) { $date = $this->_l10n->get_formatter()->date(); $relatedto_button_settings = [ 'wikinote' => [ diff --git a/themes/OpenPsa2/style/userinfo.php b/themes/OpenPsa2/style/userinfo.php index 5866caa02..fb533f4eb 100644 --- a/themes/OpenPsa2/style/userinfo.php +++ b/themes/OpenPsa2/style/userinfo.php @@ -1,13 +1,12 @@ auth; $logout_label = midcom::get()->i18n->get_string('logout', 'midcom'); -if ($auth->user) { +if ($user = midcom::get()->auth->user) { $siteconf = org_openpsa_core_siteconfig::get_instance(); if ($user_url = $siteconf->get_node_full_url('org.openpsa.user')) { - $person_string = '' . $auth->user->name . ""; + $person_string = '' . $user->name . ""; } else { - $person_string = $auth->user->name; + $person_string = $user->name; } ?>