2namespace Bitrix\Im\Integration\UI\EntitySelector;
4use Bitrix\Main\ModuleManager;
5use Bitrix\Main\UserTable;
6use Bitrix\Socialnetwork\Integration\UI\EntitySelector\UserProvider;
7use Bitrix\UI\EntitySelector\BaseProvider;
8use Bitrix\UI\EntitySelector\Dialog;
9use Bitrix\UI\EntitySelector\Item;
18 parent::__construct();
22 $this->options[
'limit'] =
$options[
'limit'];
28 return $GLOBALS[
'USER']->isAuthorized();
38 $items = (is_array($recentList) && isset($recentList[
'ITEMS']) && is_array($recentList[
'ITEMS']))
39 ? $recentList[
'ITEMS']
78 'title' => $item[
'TITLE'],
79 'avatar' => $item[
'AVATAR'][
'URL'],
89 if ($item[
'TYPE'] === self::ITEM_TYPE_USER && !$item[
'USER'][
'BOT'])
94 if ($item[
'TYPE'] === self::ITEM_TYPE_USER && $item[
'USER'][
'BOT'])
99 return 'im-' . $item[
'TYPE'];
104 if ($item[
'TYPE'] === self::ITEM_TYPE_CHAT)
109 if ($item[
'TYPE'] === self::ITEM_TYPE_USER)
120 if ($item[
'TYPE'] === self::ITEM_TYPE_CHAT)
122 $customData[
'imChat'] = $item[
'CHAT'] ?: [];
127 if ($item[
'TYPE'] === self::ITEM_TYPE_USER)
129 $customData[
'imUser'] = $item[
'USER'] ?: [];
131 if ($item[
'USER'] && $item[
'USER'][
'BOT'])
133 $customData[
'imBot'] = \Bitrix\Im\Bot::getCache($item[
'ID']) ?: [];
142 $entityType = $chat[
'ENTITY_TYPE'];
143 if ($entityType !==
'' && $entityType !==
null)
148 $type = $chat[
'MESSAGE_TYPE'];
151 case \Bitrix\Im\Chat::TYPE_GROUP:
154 case \Bitrix\Im\Chat::TYPE_OPEN:
163 if (!
$user[
'ACTIVE'])
167 else if (
$user[
'EXTERNAL_AUTH_ID'] ===
'email')
171 else if (
$user[
'EXTERNAL_AUTH_ID'] ===
'replica')
175 else if (!in_array(
$user[
'EXTERNAL_AUTH_ID'], UserTable::getExternalUserTypes(),
true))
181 $type =
'integrator';
185 $ufDepartment =
$user[
'DEPARTMENTS'];
189 is_array($ufDepartment)
190 &&
count($ufDepartment) === 1
191 && (
int)$ufDepartment[0] === 0
static getCustomDataByItem(array $item)
static getEntityTypeByUser(array $user)
__construct(array $options=[])
static makeItems(array $items, array $options=[])
static getEntityTypeByChat(array $chat)
fillDialog(Dialog $dialog)
static getEntityTypeByItem(array $item)
makeRecentChatItems(array $items, array $options=[])
static getEntityIdByItem(array $item)
getSelectedItems(array $ids)
static makeItem(array $item, array $options=[])
static getList($userId=null, $options=[])
static isModuleInstalled($moduleName)
static isIntegrator(int $userId=null)
getOption(string $option, $defaultValue=null)
addRecentItems(array $items)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)
$GLOBALS['____1690880296']
</p ></td >< td valign=top style='border-top:none;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:solid windowtext 1.0pt;padding:0cm 2.0pt 0cm 2.0pt;height:9.0pt'>< p class=Normal align=center style='margin:0cm;margin-bottom:.0001pt;text-align:center;line-height:normal'>< a name=ТекстовоеПоле54 ></a ><?=($taxRate > count( $arTaxList) > 0) ? $taxRate."%"
if($vatExport) $itemOptions