1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
factory.php
См. документацию.
1
<?php
2
namespace
Bitrix\Calendar\Sharing\Link\Rule
;
3
4
use
Bitrix\Calendar\Sharing\Link
;
5
6
class
Factory
7
{
8
public
function
getRuleBySharingLink
(
Link
\
Joint
\
JointLink
$sharingLink): ?
Rule
9
{
10
$linkObjectRule = $this->
getLinkObjectRuleByLink
($sharingLink);
11
12
if
(!is_null($linkObjectRule))
13
{
14
return
(
new
Mapper
())->getFromLinkObjectRule($linkObjectRule);
15
}
16
17
return
null
;
18
}
19
20
public
function
getLinkObjectRuleByLink
(
Link
\
Joint
\
JointLink
$sharingLink): ?
LinkObjectRule
21
{
22
$rule = match (
true
)
23
{
24
$sharingLink instanceof
Link\CrmDealLink
=>
new
Link\Rule\UserCrmDealRule
($sharingLink->getOwnerId()),
25
$sharingLink instanceof
Link\UserLink
=>
new
Link\Rule\UserRule
($sharingLink->getUserId()),
26
$sharingLink instanceof
Link\GroupLink
=>
new
Link\Rule\GroupRule
($sharingLink->getGroupId()),
27
default
=>
null
,
28
};
29
30
return
$rule?->
setLinkId
($sharingLink->getId());
31
}
32
}
Bitrix\Calendar\Core\Mappers\Factory
Определения
factory.php:6
Bitrix\Calendar\Core\Mappers\Mapper
Определения
mapper.php:12
Bitrix\Calendar\Sharing\Link\CrmDealLink
Определения
crmdeallink.php:8
Bitrix\Calendar\Sharing\Link\GroupLink
Определения
grouplink.php:8
Bitrix\Calendar\Sharing\Link\Joint\JointLink
Определения
jointlink.php:9
Bitrix\Calendar\Sharing\Link\Rule\Factory\getRuleBySharingLink
getRuleBySharingLink(Link\Joint\JointLink $sharingLink)
Определения
factory.php:8
Bitrix\Calendar\Sharing\Link\Rule\Factory\getLinkObjectRuleByLink
getLinkObjectRuleByLink(Link\Joint\JointLink $sharingLink)
Определения
factory.php:20
Bitrix\Calendar\Sharing\Link\Rule\GroupRule
Определения
grouprule.php:8
Bitrix\Calendar\Sharing\Link\Rule\LinkObjectRule
Определения
linkobjectrule.php:6
Bitrix\Calendar\Sharing\Link\Rule\LinkObjectRule\setLinkId
setLinkId(?int $linkId)
Определения
linkobjectrule.php:21
Bitrix\Calendar\Sharing\Link\Rule\UserCrmDealRule
Определения
usercrmdealrule.php:8
Bitrix\Calendar\Sharing\Link\Rule\UserRule
Определения
userrule.php:8
Bitrix\Calendar\Sharing\Link\UserLink
Определения
userlink.php:7
Bitrix\Calendar\Sharing\Link\Joint
Определения
jointlink.php:3
Bitrix\Calendar\Sharing\Link\Rule
Определения
factory.php:2
Bitrix\Calendar\Sharing\Link
Определения
crmdeallink.php:3
bitrix
modules
calendar
lib
sharing
link
rule
factory.php
Создано системой
1.14.0