2023-06-13 11:40:28 +03:00

225 lines
11 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
/** @var CBitrixComponent $this */
/** @var array $arParams */
/** @var array $arResult */
/** @var string $componentPath */
/** @var string $componentName */
/** @var string $componentTemplate */
/** @global CDatabase $DB */
/** @global CUser $USER */
/** @global CMain $APPLICATION */
use Bitrix\Main\Context,
Bitrix\Main\Type\DateTime,
Bitrix\Main\Loader,
Bitrix\Iblock;
global $NavNum;
$NavNum = 0;
if($this->StartResultCache(60*60*24, md5(var_export($_POST, true))))
{
if(CModule::IncludeModule('iblock'))
{
$breadcrumbs = [];
$canonical = [];
$arResult = [
'SELECTED' => [],
'TITLES' => [],
'ITEMS' => [],
'FILTER_ARRAY' => [],
];
$query = null;
$query_arr = [];
$sort = Array("SORT" => "ASC", "NAME" => "ASC");
if(isset($arParams['SORT']))
{
if($arParams['SORT'] === "name")
{
$sort = Array("SORT" => "ASC", "NAME" => "ASC");
$arResult['SCROLL'] = true;
}
if($arParams['SORT'] === "low")
{
$sort = Array("SORT" => "ASC", "PROPERTY_PRICE" => "ASC");
$query_arr['SORT'] = $arParams['SORT'];
$arResult['SCROLL'] = true;
}
if($arParams['SORT'] === "high")
{
$sort = Array("SORT" => "ASC", "PROPERTY_PRICE" => "DESC");
$query_arr['SORT'] = $arParams['SORT'];
$arResult['SCROLL'] = true;
}
$arResult['SELECTED']['SORT'] = $arParams['SORT'];
}
$filter = Array("ACTIVE" => "Y", "IBLOCK_ID" => IBLOCK_ID_CATALOG_CARS_NEW);
$options = Array("nPageSize" => !empty($arParams['COUNT_PER_PAGE']) ? $arParams['COUNT_PER_PAGE'] : 15);
$pages_url = $arParams['PATH'];
$arResult['BRAND_DISABLED'] = false;
$arResult['MODEL_DISABLED'] = false;
$arResult['EXTENDED'] = false;
$arResult['BY_OPTIONS'] = false;
$arResult['FILTER_SMALL'] = $arParams['FILTER_SMALL'] ? true : false;
$arResult['SHOW_BRANDS_LIST'] = true;
$arResult['SHOW_MODELS_LIST'] = false;
if(!empty($arResult['TITLES']['BRAND']))
{
if(!empty($arResult['TITLES']['MODEL']))
{
$APPLICATION->SetPageProperty("title", $arResult['TITLES']['BRAND']." ".$arResult['TITLES']['MODEL']." в лизинг для юридических лиц и ИП в Москве - купить новый автомобиль ".$arResult['TITLES']['TRANSCRIPTION']." ".$arResult['TITLES']['MODEL']." в лизинг | Эволюция");
$APPLICATION->SetPageProperty("description", "Новые автомобили ".$arResult['TITLES']['BRAND']." ".$arResult['TITLES']['MODEL']." в лизинг для юридических лиц и ИП в Москве и в других регионах России. Вы можете купить ".$arResult['TITLES']['BRAND']." ".$arResult['TITLES']['MODEL']." в лизинг от официальных дилеров, автосалонов на выгодных условиях со скидкой. Телефон горячей линии ".CENTRAL_PHONE_FORMATTED." - звонок по России бесплатный.");
}
else
{
$APPLICATION->SetPageProperty("title", $arResult['TITLES']['BRAND']." в лизинг для юридических лиц и ИП в Москве - купить новый автомобиль ".$arResult['TITLES']['TRANSCRIPTION']." в лизинг | Эволюция");
$APPLICATION->SetPageProperty("description", "Новые автомобили ".$arResult['TITLES']['BRAND']." в лизинг для юридических лиц и ИП в Москве и в других регионах России. Вы можете купить ".$arResult['TITLES']['BRAND']." в лизинг от официальных дилеров, автосалонов на выгодных условиях со скидкой. Телефон горячей линии ".CENTRAL_PHONE_FORMATTED." - звонок по России бесплатный.");
}
}
$arResult['SECTION_CODE'] = !empty($arParams['section_code']) ? $arParams['section_code'] : $pages_url;
$arResult['QUERY'] = $query;
$arResult['BRANDS_IDS'] = [];
if(!is_null($arParams['REGION']))
{
//IBLOCK_ID_CITIES
$res_city = CIBlockElement::GetList([], [ "ACTIVE" => "Y", "IBLOCK_ID" => IBLOCK_ID_CITIES, "CODE" => $arParams['REGION'] ], false, []);
while ($city_element = $res_city->GetNextElement())
{
$ar_city = $city_element->GetFields();
$ar_city['PROPERTIES'] = $city_element->GetProperties();
$ar_city['PROPERTIES']['OFFICES']['RELATED'] = get_related_array(IBLOCK_ID_CONTACTS, $ar_city['PROPERTIES']['OFFICES']['VALUE']);
if(isset($ar_city['PROPERTIES']['OFFICES']['RELATED'][0]))
{
$ar_city['LEADER_CRM_ID'] = $ar_city['PROPERTIES']['LEADER_CRM_ID']['VALUE'];
}
$arResult['CITY'] = $ar_city;
array_unshift($breadcrumbs, [
"NAME" => $ar_city['NAME'],
"URL" => "https://".SITE_SERVER_NAME."/regions/".$ar_city['CODE']."/",
]);
array_unshift($canonical, $ar_city['CODE']);
$bodies_element_res = CIBlockElement::GetList(["NAME" => "ASC"], ["IBLOCK_ID" => IBLOCK_ID_BODIES, "CODE" => $arParams['BODY_SLUG']], false, []);
while ($bodies_element_ob_element = $bodies_element_res->GetNextElement())
{
$bodies_ar_res = $bodies_element_ob_element->GetFields();
$bodies_ar_res['PROPERTIES'] = $bodies_element_ob_element->GetProperties();
$arResult['BODY'] = $bodies_ar_res['NAME'];
$arResult['SELECTED']['BODY'] = $bodies_ar_res['NAME'];
array_push($breadcrumbs, [
"NAME" => mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE']),
"URL" => "https://".SITE_SERVER_NAME."/regions/kuzov-".$arParams['CODE']."/",
]);
$APPLICATION->AddHeadString('<link rel="canonical" href="https://'.SITE_SERVER_NAME.'/regions/'.$arParams['REGION'].'/kuzov-'.$arParams['BODY_SLUG'].'/"/>');
$APPLICATION->SetPageProperty("title", mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE'])." в ".$ar_city['PROPERTIES']['CASE']['VALUE']." в лизинг для юридических лиц и ИП | Эволюция");
$APPLICATION->SetPageProperty("description", "Новые ".$bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE']." в ".$ar_city['PROPERTIES']['CASE']['VALUE']." в лизинг для юридических лиц и ИП. Вы можете купить ".$bodies_ar_res['PROPERTIES']['SINGULAR_NAME']['VALUE']." в ".$ar_city['PROPERTIES']['CASE']['VALUE']." в лизинг от официальных дилеров, автосалонов на выгодных условиях со скидкой. Телефон горячей линии 8 (800) 333-75-75 - звонок по России бесплатный.");
$APPLICATION->SetPageProperty("keywords", mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE'])." в лизинг в ".$ar_city['PROPERTIES']['CASE']['VALUE'].", купить ".$bodies_ar_res['PROPERTIES']['SINGULAR_NAME']['VALUE']." в ".$ar_city['PROPERTIES']['CASE']['VALUE']);
if($engines_ar_res['PROPERTIES']['META_SEO_INDEXED_REGIONS']['VALUE_XML_ID'] !== "YES")
{
$APPLICATION->SetPageProperty("robots", "noindex");
}
$arResult['TITLE'] = mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE'])." в ".$ar_city['PROPERTIES']['CASE']['VALUE']." в лизинг";
$arResult['SUBTITLE'] = " для юридических лиц и ИП";
$arResult['CARS_CATALOG_TITLE'] = "Каталог ".$bodies_ar_res["PROPERTIES"]["GENITIVE_NAME"]["VALUE"];
$catalog_bodies_res = CIBlockElement::GetPropertyValues(IBLOCK_ID_CATALOG_CARS_NEW, [ 'ACTIVE' => 'Y', '=PROPERTY_BODY' => $bodies_ar_res['NAME'] ], false, [ 'ID' => [ IBLOCK_ID_CATALOG_CARS_NEW_BODY_PROPERTY_ID ] ]);
while ($catalog_bodies_row = $catalog_bodies_res->Fetch())
{
array_push($arResult['BRANDS_IDS'], $catalog_bodies_row[ IBLOCK_ID_CATALOG_CARS_NEW_BODY_PROPERTY_ID ]);
}
$arResult['BRANDS_IDS'] = array_unique($arResult['BRANDS_IDS']);
}
}
if(!isset($ar_city))
{
define('ERROR_404', 'Y');
}
}
else
{
$bodies_element_res = CIBlockElement::GetList(["NAME" => "ASC"], ["IBLOCK_ID" => IBLOCK_ID_BODIES, "CODE" => $arParams['BODY_SLUG']], false, []);
while ($bodies_element_ob_element = $bodies_element_res->GetNextElement())
{
$bodies_ar_res = $bodies_element_ob_element->GetFields();
$bodies_ar_res['PROPERTIES'] = $bodies_element_ob_element->GetProperties();
$arResult['BODY'] = $bodies_ar_res['NAME'];
$arResult['SELECTED']['BODY'] = $bodies_ar_res['NAME'];
$APPLICATION->AddHeadString('<link rel="canonical" href="https://'.SITE_SERVER_NAME.'/catalog/kuzov-'.$arParams['BODY_SLUG'].'/"/>');
$APPLICATION->SetPageProperty("title", mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE'])." в лизинг для юридических лиц и ИП в Москве - купить новый ".$bodies_ar_res['PROPERTIES']['SINGULAR_NAME']['VALUE']." в лизинг | Эволюция");
$APPLICATION->SetPageProperty("description", "Новые автомобили ".$bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE']." в лизинг для юридических лиц и ИП в Москве и в других регионах России. Вы можете купить ".$bodies_ar_res['PROPERTIES']['SINGULAR_NAME']['VALUE']." в лизинг от официальных дилеров, автосалонов на выгодных условиях со скидкой. Телефон горячей линии 8 (800) 333-75-75 - звонок по России бесплатный.");
$APPLICATION->SetPageProperty("keywords", mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE'])." в лизинг, купить ".$bodies_ar_res['PROPERTIES']['SINGULAR_NAME']['VALUE']." в лизинг");
$APPLICATION->AddChainItem(mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE']), "https://".SITE_SERVER_NAME."/catalog/kuzov-".$arParams['BODY_SLUG']."/");
$arResult['TITLE'] = mb_ucfirst($bodies_ar_res['PROPERTIES']['PLURAL_NAME']['VALUE'])." в лизинг";
$arResult['SUBTITLE'] = " для юридических лиц и ИП";
$arResult['CARS_CATALOG_TITLE'] = "Каталог ".$bodies_ar_res["PROPERTIES"]["GENITIVE_NAME"]["VALUE"];
$catalog_bodies_res = CIBlockElement::GetPropertyValues(IBLOCK_ID_CATALOG_CARS_NEW, [ 'ACTIVE' => 'Y', '=PROPERTY_BODY' => $bodies_ar_res['NAME'] ], false, [ 'ID' => [ IBLOCK_ID_CATALOG_CARS_NEW_BODY_PROPERTY_ID ] ]);
while ($catalog_bodies_row = $catalog_bodies_res->Fetch())
{
array_push($arResult['BRANDS_IDS'], $catalog_bodies_row[ IBLOCK_ID_CATALOG_CARS_NEW_BODY_PROPERTY_ID ]);
}
$arResult['BRANDS_IDS'] = array_unique($arResult['BRANDS_IDS']);
}
if(!isset($bodies_ar_res))
{
define('ERROR_404', 'Y');
}
}
if($arResult['MODEL_DISABLED'])
{
$arResult['MODEL'] = null;
$arResult['SELECTED']['MODEL'] = null;
$arResult['SELECTED']['MODEL_ID'] = null;
$arResult['SELECTED']['MODEL_UID'] = null;
$arResult['SHOW_SPECIAL_OFFERS'] = false;
}
if($arResult['BRAND_DISABLED'])
{
$arResult['BRAND'] = null;
$arResult['SELECTED']['BRAND'] = null;
$arResult['SELECTED']['BRAND_ID'] = null;
$arResult['SELECTED']['BRAND_UID'] = null;
$arResult['SHOW_SPECIAL_OFFERS'] = false;
}
$arResult['SHOW_SPECIAL_OFFERS'] = true;
$arResult['SHOW_PROMO_BRANDS'] = true;
foreach($breadcrumbs AS $breadcrumb)
{
$APPLICATION->AddChainItem($breadcrumb['NAME'], $breadcrumb['URL']);
}
$this->IncludeComponentTemplate();
}
}