Bitrix-D7 23.9
 
Загрузка...
Поиск...
Не найдено
IBlockListFilter.php
1<?php
2
4
6
8{
9 public const ALLOWABLE_FIELDS = [
10 'ID',
11 'ACTIVE',
12 'TYPE',
13 'SITE_ID',
14 'SOCNET_GROUP_ID',
15 'CHECK_PERMISSIONS',
16 ];
17
18 public function setField(string $fieldId, $value, string $operator = ''): static
19 {
20 if ($fieldId === 'CHECK_PERMISSIONS')
21 {
22 return $this->setCheckPermission(is_bool($value) ? $value : ($value === 'Y'));
23 }
24
25 return parent::setField($fieldId, $value, $operator);
26 }
27
28 public function setActive(bool $value): static
29 {
30 return $this->setField('ACTIVE', $value ? 'Y' : 'N');
31 }
32
33 public function setIBLockTypeId(string $iBlockTypeId): static
34 {
35 return $this->setField('TYPE', $iBlockTypeId);
36 }
37
38 public function setSite($siteId): static
39 {
40 return $this->setField('SITE_ID', $siteId);
41 }
42
43 public function setSocNetGroupId(int $groupId): static
44 {
45 if ($groupId > 0)
46 {
47 return $this->setField('SOCNET_GROUP_ID', $groupId, '=');
48 }
49
50 return $this;
51 }
52
53 public function setCheckPermission(bool $value): static
54 {
55 $this->filter['CHECK_PERMISSIONS'] = $value ? 'Y': 'N';
56 $this->keyMatching['CHECK_PERMISSIONS'] = 'CHECK_PERMISSIONS';
57
58 return $this;
59 }
60}
setField(string $fieldId, $value, string $operator='')