1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
AccessCode.php
См. документацию.
1
<?php
2
3
namespace
Bitrix\Socialnetwork\Control\Command\Attribute
;
4
5
use ArrayAccess;
6
use
Attribute
;
7
use
Bitrix\Main\Localization\Loc
;
8
use
Bitrix\Main\Validation\Rule\PropertyValidationAttributeInterface
;
9
use
Bitrix\Main\Validation\ValidationError
;
10
use
Bitrix\Main\Validation\ValidationResult
;
11
12
#[Attribute(Attribute::TARGET_PROPERTY)]
13
class
AccessCode
implements
PropertyValidationAttributeInterface
14
{
15
public
function
validateProperty
(mixed
$propertyValue
):
ValidationResult
16
{
17
$result
=
new
ValidationResult
();
18
if
(!is_array(
$propertyValue
) && !is_iterable(
$propertyValue
) && !(
$propertyValue
instanceof ArrayAccess))
19
{
20
$result
->addError(
new
ValidationError
(
21
Loc::getMessage(
'SOCIALNETWORK_VALIDATOR_ACCESS_CODE_INVALID_TYPE'
),
22
));
23
24
return
$result
;
25
}
26
27
foreach
(
$propertyValue
as $item)
28
{
29
if
(!($this->isValidAccessCode($item)))
30
{
31
$result
->addError(
new
ValidationError
(
32
Loc::getMessage(
'SOCIALNETWORK_VALIDATOR_ACCESS_CODE_INVALID_VALUE'
),
33
));
34
35
return
$result
;
36
}
37
}
38
39
return
$result
;
40
}
41
42
private
function
isValidAccessCode(mixed
$code
): bool
43
{
44
return \Bitrix\Main\Access\AccessCode::isValid(
$code
);
45
}
46
}
Bitrix\Main\Localization\Loc
Определения
loc.php:12
Bitrix\Main\Validation\ValidationError
Определения
ValidationError.php:11
Bitrix\Main\Validation\ValidationResult
Определения
ValidationResult.php:10
Bitrix\Socialnetwork\Control\Command\Attribute\AccessCode
Определения
AccessCode.php:14
Bitrix\Socialnetwork\Control\Command\Attribute\AccessCode\validateProperty
validateProperty(mixed $propertyValue)
Определения
AccessCode.php:15
$propertyValue
</td ></tr ></table ></td ></tr ><?endif?><? $propertyIndex=0;foreach( $arGlobalProperties as $propertyCode=> $propertyValue
Определения
file_new.php:729
$result
$result
Определения
get_property_values.php:14
Bitrix\Main\Validation\Rule\PropertyValidationAttributeInterface
Определения
PropertyValidationAttributeInterface.php:10
$code
if(!is_null($config))($config as $configItem)(! $configItem->isVisible()) $code
Определения
options.php:195
Bitrix\Socialnetwork\Control\Command\Attribute
Определения
AccessCode.php:3
bitrix
modules
socialnetwork
lib
Control
Command
Attribute
AccessCode.php
Создано системой
1.14.0