1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
ManageMessagesAutoDelete.php
См. документацию.
1
<?php
2
3
namespace
Bitrix\Socialnetwork\Collab\Control\Option\Type;
4
5
use Bitrix\Main\Result;
6
use Bitrix\Main\Validation\Rule\InArray;
7
use Bitrix\Socialnetwork\Collab\Collab;
8
use Bitrix\Socialnetwork\Collab\Control\Option\AbstractOption;
9
use Bitrix\Socialnetwork\Collab\Control\Option\Trait\UpdateCollabChatTrait;
10
use Bitrix\Socialnetwork\Collab\Permission\UserRole;
11
12
class
ManageMessagesAutoDelete
extends
AbstractOption
13
{
14
use UpdateCollabChatTrait;
15
16
public
const
NAME
=
'manageMessagesAutoDelete'
;
17
public
const
DB_NAME
=
'MANAGE_MESSAGES_AUTO_DELETE'
;
18
22
public
const
DEFAULT_VALUE
= UserRole::MODERATOR;
23
25
protected
const
ROLE_MAP
= [
26
UserRole::MEMBER =>
'MEMBER'
,
27
UserRole::MODERATOR =>
'MANAGER'
,
28
UserRole::OWNER =>
'OWNER'
,
29
];
30
31
#[InArray(UserRole::ALLOWED_ROLES)]
32
protected
string
$value
;
33
34
public
function
__construct
(
string
$value
)
35
{
36
parent::__construct(static::DB_NAME, strtoupper(
$value
));
37
}
38
39
protected
function
applyImplementation
(
Collab
$collab):
Result
40
{
41
return
$this->updateChat($collab, [
42
static::DB_NAME => static::ROLE_MAP[$this->value]
43
]);
44
}
45
}
Bitrix\Main\DB\Result
Определения
result.php:20
Bitrix\Socialnetwork\Collab\Control\Option\AbstractOption
Определения
AbstractOption.php:16
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete
Определения
ManageMessagesAutoDelete.php:13
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete\NAME
const NAME
Определения
ManageMessagesAutoDelete.php:16
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete\ROLE_MAP
const ROLE_MAP
Определения
ManageMessagesAutoDelete.php:25
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete\$value
string $value
Определения
ManageMessagesAutoDelete.php:32
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete\DEFAULT_VALUE
const DEFAULT_VALUE
Определения
ManageMessagesAutoDelete.php:22
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete\__construct
__construct(string $value)
Определения
ManageMessagesAutoDelete.php:34
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete\applyImplementation
applyImplementation(Collab $collab)
Определения
ManageMessagesAutoDelete.php:39
Bitrix\Socialnetwork\Collab\Control\Option\Type\ManageMessagesAutoDelete\DB_NAME
const DB_NAME
Определения
ManageMessagesAutoDelete.php:17
Bitrix\Im\V2\Chat\Collab
Определения
CollabInfo.php:3
bitrix
modules
socialnetwork
lib
Collab
Control
Option
Type
ManageMessagesAutoDelete.php
Создано системой
1.14.0