From f879057c36893e9e57f7fa18ec354b5f507bcb18 Mon Sep 17 00:00:00 2001 From: Manuel Schwarz <manschwa@uos.de> Date: Fri, 1 Oct 2021 09:54:22 +0200 Subject: [PATCH] First try to fix global resource lock. --- app/controllers/resources/room_request.php | 4 ++-- lib/models/resources/Resource.class.php | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/app/controllers/resources/room_request.php b/app/controllers/resources/room_request.php index c54b6683dc8..c3c73ae4f0e 100644 --- a/app/controllers/resources/room_request.php +++ b/app/controllers/resources/room_request.php @@ -1574,7 +1574,7 @@ class Resources_RoomRequestController extends AuthenticatedController return; } - if (!$room->userHasPermission($this->current_user, 'autor')) { + if (!$room->userHasPermission($this->current_user, 'admin')) { PageLayout::postError( sprintf( _('Unzureichende Berechtigungen zum Buchen des Raumes %s!'), @@ -2159,7 +2159,7 @@ class Resources_RoomRequestController extends AuthenticatedController return; } - if (!$room->userHasPermission($this->current_user, 'autor')) { + if (!$room->userHasPermission($this->current_user, 'admin')) { PageLayout::postError( sprintf( _('Unzureichende Berechtigungen zum Buchen des Raumes %s!'), diff --git a/lib/models/resources/Resource.class.php b/lib/models/resources/Resource.class.php index c5cc4447b09..c8d72573177 100644 --- a/lib/models/resources/Resource.class.php +++ b/lib/models/resources/Resource.class.php @@ -1465,7 +1465,7 @@ class Resource extends SimpleORMap implements StudipItem public function getInfolabelPrperties() { return SimpleCollection::createFromArray( - ResourceProperty::findBySQL('INNER JOIN `resource_property_definitions` USING (`property_id`) + ResourceProperty::findBySQL('INNER JOIN `resource_property_definitions` USING (`property_id`) WHERE `info_label` = 1 AND `state` != "" AND `resource_id` = ?', [$this->id] ) ); @@ -2339,9 +2339,10 @@ class Resource extends SimpleORMap implements StudipItem //permission cache. Load it from the database and store //it in the permission cache before returning it. $perms = ResourcePermission::findOneBySql( - '(resource_id = :resource_id) AND (user_id = :user_id)', + '(resource_id = :resource_id OR resource_id = :global) AND (user_id = :user_id)', [ 'resource_id' => $this->id, + 'global' => 'global', 'user_id' => $user->id ] ); @@ -2543,7 +2544,7 @@ class Resource extends SimpleORMap implements StudipItem //Check the permissions on this resource and the global permissions: return $this->userHasPermission( $user, - 'autor', + 'admin', [ $begin, $end -- GitLab