Server IP : 80.87.202.40 / Your IP : 216.73.216.169 Web Server : Apache System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64 User : bitrix ( 600) PHP Version : 8.2.27 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /home/bitrix/ext_www/ilovecveti.ru/bitrix/modules/seo/lib/ui/provider/ |
Upload File : |
<?php namespace Bitrix\Seo\UI\Provider; use Bitrix\Seo\Marketing\Configurator; use Bitrix\Seo\Marketing\Services\AdCampaignFacebook; use Bitrix\UI\EntitySelector\Dialog; use Bitrix\UI\EntitySelector\Item; use Bitrix\UI\EntitySelector\SearchQuery; class RegionsProvider extends InterestsProvider { const SEARCH_TYPE = 'adgeolocation'; const ENTITY_TYPE = 'regions'; public function doSearch(SearchQuery $searchQuery, Dialog $dialog): void { $service = Configurator::getService(); $service->setClientId($this->getOption('clientId')); $searchQuery->setCacheable(false); $response = Configurator::searchTargetingData( AdCampaignFacebook::TYPE_CODE, [ 'q' => $searchQuery->getQuery(), 'type' => static::SEARCH_TYPE ] ); $items = []; foreach ($response as $value) { if (!isset($value['key'])) { continue; } $items[] = new Item( [ 'id' => $value['key'], 'entityId' => static::ENTITY_TYPE, 'title' => $value['name'], 'tagOptions' => [ 'bgColor' => "#{$this->stringToColor($value['key'])}", 'textColor' => "#fff" ], 'customData' => [ 'type' => $value['type'], ] ] ); } $dialog->addItems( $items ); } }