1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
user.php
См. документацию.
1<?php
2
3namespace Bitrix\Im\Model;
4
5use Bitrix\Main\ORM\Fields\BooleanField;
6use Bitrix\Main\ORM\Fields\ExpressionField;
7
25{
31 public static function filterExternalUserTypes(array $skipTypes = []): array
32 {
34 if (empty($skipTypes))
35 {
36 return $types;
37 }
38
39 $types = array_filter($types, function($authId) use ($skipTypes) {
40 return !in_array($authId, $skipTypes, true);
41 });
42
43 return $types;
44 }
45
46 public static function getMap()
47 {
48 $emptyValue = serialize([]);
49 $emptyValue2 = serialize([0]);
50
51 $additionalFields = [
52 (new ExpressionField(
53 'IS_INTRANET_USER',
54 'CASE WHEN
55 ((%s IS NOT NULL AND %s != \'' . $emptyValue . '\' AND %s != \'' . $emptyValue2 . '\') AND
56 (%s IS NULL OR %s NOT IN (\'' . implode('\', \'', self::filterExternalUserTypes(['bot'])) . '\')))
57 OR (%s = \'bot\')
58 THEN \'Y\'
59 ELSE \'N\'
60 END',
61 ['UF_DEPARTMENT', 'UF_DEPARTMENT', 'UF_DEPARTMENT', 'EXTERNAL_AUTH_ID', 'EXTERNAL_AUTH_ID', 'EXTERNAL_AUTH_ID'],
62 ['values' => ['N', 'Y']]
63 ))->configureValueType(BooleanField::class)
64 ];
65
66 return array_merge(parent::getMap(), $additionalFields);
67 }
68}
static getMap()
Определения user.php:46
static filterExternalUserTypes(array $skipTypes=[])
Определения user.php:31
Определения user.php:48
static getExternalUserTypes()
Определения user.php:307
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
Определения file_new.php:804