From 1b13f80cc119eb386afe72866e6f4f8f9537c471 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Wed, 22 Sep 2021 16:59:41 +0200 Subject: Allow to remove all permissions without falling back to the next level Signed-off-by: Joas Schilling --- lib/Model/Attendee.php | 15 ++++++++------- lib/Model/AttendeeMapper.php | 1 + lib/Model/SelectHelper.php | 4 +++- 3 files changed, 12 insertions(+), 8 deletions(-) (limited to 'lib/Model') diff --git a/lib/Model/Attendee.php b/lib/Model/Attendee.php index d83345519..2e7a0a3d9 100644 --- a/lib/Model/Attendee.php +++ b/lib/Model/Attendee.php @@ -68,13 +68,14 @@ class Attendee extends Entity { public const ACTOR_BRIDGED = 'bridged'; public const ACTOR_FEDERATED_USERS = 'federated_users'; - public const PERMISSIONS_NONE = 0; - public const PERMISSIONS_PUBLISH_AUDIO = 1; - public const PERMISSIONS_PUBLISH_VIDEO = 2; - public const PERMISSIONS_PUBLISH_SCREEN = 4; - public const PERMISSIONS_CALL_START = 8; - public const PERMISSIONS_CALL_JOIN = 16; - public const PERMISSIONS_LOBBY_IGNORE = 32; + public const PERMISSIONS_DEFAULT = 0; + public const PERMISSIONS_CUSTOM = 1; + public const PERMISSIONS_CALL_START = 2; + public const PERMISSIONS_CALL_JOIN = 4; + public const PERMISSIONS_LOBBY_IGNORE = 8; + public const PERMISSIONS_PUBLISH_AUDIO = 16; + public const PERMISSIONS_PUBLISH_VIDEO = 32; + public const PERMISSIONS_PUBLISH_SCREEN = 64; public const PUBLISHING_PERMISSIONS_ALL = 7; diff --git a/lib/Model/AttendeeMapper.php b/lib/Model/AttendeeMapper.php index 174ca2d6e..8d3411847 100644 --- a/lib/Model/AttendeeMapper.php +++ b/lib/Model/AttendeeMapper.php @@ -216,6 +216,7 @@ class AttendeeMapper extends QBMapper { } if ($mode === Participant::PERMISSIONS_MODIFY_SET) { + $newState |= Attendee::PERMISSIONS_CUSTOM; $query->set('permissions', $query->createNamedParameter($newState, IQueryBuilder::PARAM_INT)); $query->executeStatement(); } else { diff --git a/lib/Model/SelectHelper.php b/lib/Model/SelectHelper.php index a42097f6e..4ef5fec4f 100644 --- a/lib/Model/SelectHelper.php +++ b/lib/Model/SelectHelper.php @@ -42,6 +42,8 @@ class SelectHelper { ->addSelect($alias . 'password') ->addSelect($alias . 'active_guests') ->addSelect($alias . 'active_since') + ->addSelect($alias . 'default_permissions') + ->addSelect($alias . 'call_permissions') ->addSelect($alias . 'call_flag') ->addSelect($alias . 'last_activity') ->addSelect($alias . 'last_message') @@ -71,7 +73,7 @@ class SelectHelper { ->addSelect($alias . 'last_mention_message') ->addSelect($alias . 'last_mention_direct') ->addSelect($alias . 'read_privacy') - ->addSelect($alias . 'publishing_permissions') + ->addSelect($alias . 'permissions') ->addSelect($alias . 'access_token') ->addSelect($alias . 'remote_id') ->selectAlias($alias . 'id', 'a_id'); -- cgit v1.2.3