Bitrix-D7
23.9
Загрузка...
Поиск...
Не найдено
typeaccessrule.php
1
<?php
2
3
namespace
Bitrix\Calendar\Access\Rule
;
4
5
use
Bitrix\Calendar\Access\Model\TypeModel
;
6
use
Bitrix\Main\Access\AccessibleItem
;
7
use
Bitrix\Calendar\Access\ActionDictionary
;
8
use Bitrix\Calendar\Access\Rule\Traits\CurrentUserTrait;
9
use CCalendarType;
10
11
class
TypeAccessRule
extends
\Bitrix\Main\Access\Rule\AbstractRule
12
{
13
use CurrentUserTrait;
14
15
public
function
execute
(
AccessibleItem
$item =
null
, $params =
null
): bool
16
{
17
if
(!$item instanceof
TypeModel
)
18
{
19
return
false
;
20
}
21
22
if
(!$this->hasCurrentUser())
23
{
24
return
true
;
25
}
26
27
if
($this->user->isAdmin() || $this->user->isSocNetAdmin($item->getXmlId()))
28
{
29
return
true
;
30
}
31
32
return
in_array(
33
ActionDictionary::getOldActionKeyByNewActionKey
(
ActionDictionary::ACTION_TYPE_ACCESS
),
34
CCalendarType::GetOperations($item->getXmlId(), $this->user->getUserId()),
35
true
36
);
37
}
38
}
Bitrix\Calendar\Access\ActionDictionary
Definition
actiondictionary.php:6
Bitrix\Calendar\Access\ActionDictionary\getOldActionKeyByNewActionKey
static getOldActionKeyByNewActionKey(string $actionId)
Definition
actiondictionary.php:46
Bitrix\Calendar\Access\ActionDictionary\ACTION_TYPE_ACCESS
const ACTION_TYPE_ACCESS
Definition
actiondictionary.php:24
Bitrix\Calendar\Access\Model\TypeModel
Definition
typemodel.php:9
Bitrix\Calendar\Access\Rule\TypeAccessRule
Definition
typeaccessrule.php:12
Bitrix\Calendar\Access\Rule\TypeAccessRule\execute
execute(AccessibleItem $item=null, $params=null)
Definition
typeaccessrule.php:15
Bitrix\Main\Access\Rule\AbstractRule
Definition
abstractrule.php:16
Bitrix\Main\Access\AccessibleItem
Definition
accessibleitem.php:13
Bitrix\Calendar\Access\Rule
Definition
eventaddrule.php:3
modules
calendar
lib
access
rule
typeaccessrule.php
Создано системой
1.10.0