static function onSourceBuildHandler(Event $event)
{
$result = [];
// pages
$result[] = [
'SOURCE_ID' => 'landing',
'TITLE' => Loc::getMessage('LANDING_CONNECTOR_SOURCE_TITLE'),
'TYPE' => SourceSelector::SOURCE_TYPE_PRESET,
'SETTINGS' => [
'FILTER' => [
[
'key' => 'LANDING',
'name' => Loc::getMessage('LANDING_CONNECTOR_SOURCE_TITLE'),
'value' => ['VALUE' => '']
]
],
'DETAIL_PAGE' => false
],
'SOURCE_FILTER' => [
],
'DATA_SETTINGS' => [
'FIELDS' => [
[
'id' => 'TITLE',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_TITLE'),
'type' => BitrixLandingNodeType::TEXT
],
[
'id' => 'DESCRIPTION',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_DESCRIPTION'),
'type' => BitrixLandingNodeType::TEXT
],
[
'id' => 'IMAGE',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_IMAGE'),
'type' => BitrixLandingNodeType::IMAGE
],
[
'id' => 'LINK',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_LINK'),
'type' => BitrixLandingNodeType::LINK,
'actions' => [
[
'type' => 'landing',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_LINK')
],
[
'type' => 'link',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_LINK_LINK')
]
]
]
],
'ORDER' => [
[
'id' => 'VIEWS',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_VIEWS')
],
[
'id' => 'DATE_CREATE',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_DATE_CREATE')
],
[
'id' => 'DATE_MODIFY',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_DATE_MODIFY')
],
[
'id' => 'TITLE',
'name' => Loc::getMessage('LANDING_CONNECTOR_FIELD_TITLE')
]
]
],
'DATA_LOADER' => 'BitrixLandingDataLoaderLanding'
];
// chats (system item)
if (false)
$result[] = [
'SOURCE_ID' => 'chat',
'TITLE' => 'Chats',
'TYPE' => SourceSelector::SOURCE_TYPE_PRESET,
'SETTINGS' => [
'FILTER' => [
[
'key' => 'NULL',
'name' => 'Chats',
'value' => ['VALUE' => '']
]
],
'DETAIL_PAGE' => false
],
'DATA_SETTINGS' => [
'FIELDS' => [
[
'id' => 'NAME',
'name' => 'NAME',
'type' => BitrixLandingNodeType::TEXT
],
[
'id' => 'WORK_POSITION',
'name' => 'WORK_POSITION',
'type' => BitrixLandingNodeType::TEXT
],
[
'id' => 'SEND',
'name' => 'SEND',
'type' => BitrixLandingNodeType::LINK
],
[
'id' => 'AVATAR',
'name' => 'AVATAR',
'type' => BitrixLandingNodeType::IMAGE
]
],
'ORDER' => [
[
'id' => 'NAME',
'name' => 'NAME'
]
]
],
'DATA_LOADER' => 'BitrixLandingDataLoaderChat'
];
return new EventResult(EventResult::SUCCESS, $result, 'landing');
}