Your IP : 216.73.216.86


Current Path : /var/www/homesaver/www/bitrix/components/bitrix/main.user.selector/templates/.default/
Upload File :
Current File : /var/www/homesaver/www/bitrix/components/bitrix/main.user.selector/templates/.default/template.php

<?
if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED!==true)
{
	die();
}

/** @var array $arParams */
/** @var array $arResult */
/** @global CMain $APPLICATION */
/** @global CUser $USER */
/** @global CDatabase $DB */
/** @var CBitrixComponentTemplate $this */
/** @var string $templateName */
/** @var string $templateFile */
/** @var string $templateFolder */
/** @var string $componentPath */
/** @var CBitrixComponent $component */

use Bitrix\Main\Web\Json;
use Bitrix\Main\Localization\Loc;

Loc::loadMessages(__FILE__);

$arParams['ID'] = $arParams['ID'] ?: 'def';
$containerId = 'main-user-selector-' . $arParams['ID'];
?>
<span id="<?=htmlspecialcharsbx($containerId)?>" class="main-user-selector-wrap">
	<?if ($arResult['IS_INPUT_MULTIPLE']):?>
		<?foreach ($arResult['TILE_ID_LIST'] as $id):?>
			<input type="hidden" name="<?=$arParams['INPUT_NAME']?>"
				value="<?=htmlspecialcharsbx($id)?>"
			>
		<?endforeach;?>
	<?else:?>
		<input type="hidden" id="<?=$arParams['INPUT_NAME']?>"
			name="<?=$arParams['INPUT_NAME']?>"
			value="<?=htmlspecialcharsbx(implode(',', $arResult['TILE_ID_LIST']))?>"
		>
	<?endif;?>

	<?
	$APPLICATION->IncludeComponent('bitrix:ui.tile.selector', '', array(
		'ID' => $arParams['ID'],
//		'LIST' => $arResult['LIST'],
		'SHOW_BUTTON_ADD' => false,
		'LOCK' => $arParams['LOCK'],
		'READONLY' => $arParams['READONLY'],
		'MULTIPLE' => $arResult['IS_INPUT_MULTIPLE'],
		'BUTTON_SELECT_CAPTION' => (!empty($arParams['BUTTON_SELECT_CAPTION']) ? $arParams['BUTTON_SELECT_CAPTION'] : Loc::getMessage('MAIN_USER_SELECTOR_SELECT')),
		'BUTTON_SELECT_CAPTION_MORE' => (!empty($arParams['BUTTON_SELECT_CAPTION_MORE']) ? $arParams['BUTTON_SELECT_CAPTION_MORE'] : Loc::getMessage('MAIN_USER_SELECTOR_SELECT')),
		'MANUAL_INPUT_END' => true,
		'FIRE_CLICK_EVENT' => ($arResult['FIRE_CLICK_EVENT'] ? 'BX.Main.SelectorV2:onAfterAddData' : false),
	));
	?>

	<?
	$APPLICATION->IncludeComponent(
		"bitrix:main.ui.selector",
		".default",
		array(
			'API_VERSION' => (!empty($arParams['API_VERSION']) && intval($arParams['API_VERSION']) >= 2 ? $arParams['API_VERSION'] : 2),
			'ID' => $arParams['ID'],
			'BIND_ID' => $containerId,
			'ITEMS_SELECTED' => $arResult['ITEMS_SELECTED'],
			'ITEMS_UNDELETABLE' => $arResult['ITEMS_UNDELETABLE'],
			'CALLBACK' => array(
				'select' => 'BX.Main.User.SelectorController.select',
				'unSelect' => 'BX.Main.User.SelectorController.unSelect',
				'openDialog' => "BX.Main.User.SelectorController.openDialog",
				'closeDialog' => "BX.Main.User.SelectorController.closeDialog",
				'openSearch' => "BX.Main.User.SelectorController.openSearch",
				'closeSearch' => "BX.Main.User.SelectorController.closeSearch"
			),
			'CALLBACK_BEFORE' => (!empty($arParams["CALLBACK_BEFORE"]) && is_array($arParams["CALLBACK_BEFORE"]) ? $arParams["CALLBACK_BEFORE"] : []),
			'OPTIONS' => [
					'useNewCallback' => 'Y',
					'eventInit' => 'BX.Main.User.SelectorController::init',
					'eventOpen' => 'BX.Main.User.SelectorController::open',
				]
				+
				$arParams['SELECTOR_OPTIONS']
				+
				[
					'lazyLoad' => (
						(
							(isset($arParams["LAZYLOAD"]) && $arParams["LAZYLOAD"] === 'Y')
							|| (
								!empty($arParams["SELECTOR_OPTIONS"])
								&& !empty($arParams["SELECTOR_OPTIONS"]['lazyload'])
								&& $arParams["SELECTOR_OPTIONS"]['lazyload'] == 'Y'
							)
						)
						&& empty($arResult['ITEMS_SELECTED'])
							? 'Y'
							: 'N'
					),
					'multiple' => ($arResult["IS_INPUT_MULTIPLE"] ? 'Y' : 'N'),
					'extranetContext' => false,
					'context' => $arParams['ID'],
					'contextCode' => 'U',
					'useSearch' => 'N',
					'userNameTemplate' => CUtil::JSEscape($arParams["NAME_TEMPLATE"]),
					'useClientDatabase' => 'Y',
					'allowEmailInvitation' => 'N',
					'enableAll' => 'N',
					'enableDepartments' => 'Y',
					'enableSonetgroups' => 'N',
					'departmentSelectDisable' => 'Y',
					'allowAddUser' => 'N',
					'allowAddCrmContact' => 'N',
					'allowAddSocNetGroup' => 'N',
					'allowSearchEmailUsers' => 'N',
					'allowSearchCrmEmailUsers' => 'N',
					'allowSearchNetworkUsers' => 'N'
			]
		),
		false,
		array("HIDE_ICONS" => "Y")
	);?>

	<script>
		BX.ready(function () {
			try
			{
				new BX.Main.User.Selector(<?=Json::encode(array(
					'containerId' => $containerId,
					'id' => $arParams['ID'],
					'duplicates' => false,
					'inputName' => $arParams['INPUT_NAME'],
					'isInputMultiple' => $arResult['IS_INPUT_MULTIPLE'],
					'useSymbolicId' => $arParams['USE_SYMBOLIC_ID'],
					'openDialogWhenInit' => $arParams['OPEN_DIALOG_WHEN_INIT'],
					'lazyload' => (isset($arParams['LAZYLOAD']) && $arParams['LAZYLOAD'] === 'Y' && empty($arResult['ITEMS_SELECTED']))
				))?>);
			}
			catch (e)
			{
				console.log(e.name + ': ' + e.message);
			}
		});
	</script>
</span>