StartResultCache(60*60*24, md5(var_export($_POST, true)))) { if(CModule::IncludeModule('iblock')) { $breadcrumbs = []; $canonical = []; $arResult = [ 'SELECTED' => [], 'TITLES' => [], 'ITEMS' => [] ]; $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'] = true; $arResult['BY_OPTIONS'] = false; $arResult['FILTER_SMALL'] = $arParams['FILTER_SMALL'] ? true : false; $arResult['SHOW_BRANDS_LIST'] = true; $arResult['SHOW_MODELS_LIST'] = false; if(empty($arParams['PROGRAM'])) { $arResult['SHOW_SPECIAL_OFFERS'] = true; } $arResult['SHOW_PROMO_BRANDS'] = true; if(!empty($arParams['BRAND'])) { $brands_res = CIBlockElement::GetList(["NAME" => "ASC"], ["IBLOCK_ID" => IBLOCK_ID_BRANDS, "CODE" => $arParams['BRAND']], false, []); while ($brands_ob_element = $brands_res->GetNextElement()) { $brands_ar_res = $brands_ob_element->GetFields(); $brands_ar_res['PROPERTIES'] = $brands_ob_element->GetProperties(); $filter['PROPERTY_BRAND'] = $brands_ar_res['ID']; $pages_url = $pages_url.$brands_ar_res['CODE']."/"; $arResult['SELECTED']['BRAND'] = $brands_ar_res['CODE']; $arResult['SELECTED']['BRAND_ID'] = $brands_ar_res['ID']; $arResult['SELECTED']['BRAND_UID'] = $brands_ar_res['PROPERTIES']['UID']['VALUE']; $arResult['TITLES']['BRAND'] = $brands_ar_res['NAME']; $arResult['TITLES']['TRANSCRIPTION'] = $brands_ar_res['PROPERTIES']['TRANSCRIPTION']['VALUE']; if($brands_ar_res['ACTIVE'] === "Y") { $arResult['BRAND_DISABLED'] = false; $arResult['SHOW_BRANDS_LIST'] = false; $arResult['SHOW_MODELS_LIST'] = true; $arResult['MODEL_DISABLED'] = false; } else { $arResult['BRAND_DISABLED'] = true; $arResult['MODEL_DISABLED'] = true; $arResult['SHOW_MODELS_LIST'] = false; } $arResult['SHOW_PROMO_BRANDS'] = false; array_push($breadcrumbs, [ "NAME" => $brands_ar_res['NAME'], "URL" => "https://".SITE_SERVER_NAME.$arParams['PATH'].$arResult['SELECTED']['BRAND']."/", ]); array_push($canonical, $arParams['BRAND']); } $arResult['EXTENDED'] = true; $arResult['FILTER_SMALL'] = false; $arResult['SCROLL'] = true; if(empty($arResult['SELECTED']['BRAND'])) { define('ERROR_404', 'Y'); } } if(!empty($arParams['MODEL'])) { $models_res = CIBlockElement::GetList(["NAME" => "ASC"], ["IBLOCK_ID" => IBLOCK_ID_MODELS, "CODE" => $arParams['MODEL'], "PROPERTY_BRAND_UID" => $arResult['SELECTED']['BRAND_UID']], false, []); while ($models_ob_element = $models_res->GetNextElement()) { $models_ar_res = $models_ob_element->GetFields(); $models_ar_res['PROPERTIES'] = $models_ob_element->GetProperties(); $filter['PROPERTY_MODEL'] = $models_ar_res['ID']; $pages_url = $pages_url.$models_ar_res['CODE']."/"; $arResult['SELECTED']['MODEL'] = $models_ar_res['CODE']; $arResult['TITLES']['MODEL'] = $models_ar_res['NAME']; if($models_ar_res['ACTIVE'] === "Y") { $arResult['MODEL_DISABLED'] = false; $arResult['SHOW_MODELS_LIST'] = false; } else { $arResult['MODEL_DISABLED'] = true; $arResult['SHOW_PROMO_BRANDS'] = false; } array_push($breadcrumbs, [ "NAME" => $models_ar_res['NAME'], "URL" => "https://".SITE_SERVER_NAME.$arParams['PATH'].$arResult['SELECTED']['BRAND']."/".$arResult['SELECTED']['MODEL']."/", ]); array_push($canonical, $arParams['MODEL']); if(!is_null($arParams['REGION']) && $arParams['REGION'] !== "root") { if($models_ar_res['PROPERTIES']['REGIONS']['VALUE'] !== "Да") { $APPLICATION->SetPageProperty("robots", "noindex, nofollow"); } } } $arResult['EXTENDED'] = true; $arResult['SCROLL'] = true; if(empty($arResult['SELECTED']['MODEL'])) { define('ERROR_404', 'Y'); } } if(isset($arParams['MODIFICATION'])) { if(!empty($arParams['MODIFICATION'])) { $arResult['EXTENDED'] = true; $arResult['SELECTED']['MODIFICATION'] = $arParams['MODIFICATION']; $arResult['SCROLL'] = true; $filter['PROPERTY_MODIFICATION'] = $arParams['MODIFICATION']; $query_arr['MODIFICATION'] = $arParams['MODIFICATION']; } else { LocalRedirect("https://".SITE_SERVER_NAME.$arParams['PATH'].$arResult['SELECTED']['BRAND']."/".$arResult['SELECTED']['MODEL']."/", true, "301 Moved permanently"); } } $parameters_filter_count = 0; if(!empty($arParams['DRIVE'])) { $parameters_filter_count++; $arResult['EXTENDED'] = true; $arResult['BY_OPTIONS'] = true; $arResult['SCROLL'] = true; $arResult['SELECTED']['DRIVE'] = $arParams['DRIVE']; $filter['=PROPERTY_DRIVE'] = $arParams['DRIVE']; $query_arr['DRIVE'] = $arParams['DRIVE']; } if(!empty($arParams['GEAR'])) { $parameters_filter_count++; $arResult['EXTENDED'] = true; $arResult['BY_OPTIONS'] = true; $arResult['SCROLL'] = true; $arResult['SELECTED']['GEAR'] = $arParams['GEAR']; $filter['=PROPERTY_GEAR'] = $arParams['GEAR']; $query_arr['GEAR'] = $arParams['GEAR']; } if(!empty($arParams['ENGINE_FUEL'])) { $parameters_filter_count++; $arResult['EXTENDED'] = true; $arResult['BY_OPTIONS'] = true; $arResult['SCROLL'] = true; $arResult['SELECTED']['ENGINE_FUEL'] = $arParams['ENGINE_FUEL']; $filter['=PROPERTY_ENGINE_FUEL'] = $arParams['ENGINE_FUEL']; $query_arr['ENGINE_FUEL'] = $arParams['ENGINE_FUEL']; } if(!empty($arParams['ENGINE_POWER_FROM']) || !empty($arParams['ENGINE_POWER_TO'])) { $parameters_filter_count++; $arResult['EXTENDED'] = true; $arResult['BY_OPTIONS'] = true; $arResult['SCROLL'] = true; $filter['> 0) { $query = http_build_query($query_arr); } if($arParams['leasing_program'] && $arParams['leasing_program'] !== "") { $filter['PROPERTY_LEASING_PROGRAMS'] = $arParams["leasing_program"]; } if(!empty($arParams['BRAND'])) { if($arResult['BRAND_DISABLED']) { $arResult['SHOW_PROMO_BRANDS'] = false; } } if(!empty($arParams['BRAND']) && empty($arParams['MODEL'])) { $arResult['SHOW_PROMO_MODELS'] = true; if($arResult['BRAND_DISABLED']) { $arResult['SHOW_PROMO_BRANDS'] = false; $arResult['SHOW_PROMO_MODELS'] = false; } if($arResult['MODEL_DISABLED']) { $arResult['SHOW_PROMO_BRANDS'] = false; $arResult['SHOW_PROMO_MODELS'] = false; } } if(!empty($arParams['BRAND']) && !empty($arParams['MODEL'])) { if($arResult['MODEL_DISABLED']) { $arResult['SHOW_PROMO_BRANDS'] = false; $arResult['SHOW_PROMO_MODELS'] = false; } } if(!empty($arParams['PROGRAM'])) { $arResult['BRAND_DISABLED'] = false; $arResult['MODEL_DISABLED'] = false; } if(!empty($arParams['MODEL']) || $arResult['BY_OPTIONS']) { if(!$arResult['BRAND_DISABLED'] && !$arResult['MODEL_DISABLED']) { $arResult['SHOW_SPECIAL_OFFERS'] = false; $arResult['SHOW_PROMO_BRANDS'] = false; $arResult['SHOW_PROMO_MODELS'] = false; $res = CIBlockElement::GetList($sort, $filter, false, $options); while ($obElement = $res->GetNextElement()) { $ar_res = $obElement->GetFields(); $ar_res['PROPERTIES'] = $obElement->GetProperties(); $ar_res['PROPERTIES']['BRAND']['RELATED'] = get_related(IBLOCK_ID_BRANDS, $ar_res['PROPERTIES']['BRAND']['VALUE']); $ar_res['PROPERTIES']['MODEL']['RELATED'] = get_related(IBLOCK_ID_MODELS, $ar_res['PROPERTIES']['MODEL']['VALUE']); $ar_res['PROPERTIES']['MODIFICATION']['RELATED'] = get_related(IBLOCK_ID_MODIFICATIONS, $ar_res['PROPERTIES']['MODIFICATION']['VALUE']); $ar_res['CALCULATION'] = []; $ar_res['CALCULATION']['MONTHLY'] = number_format(($ar_res['PROPERTIES']['PRICE']['VALUE'] / CALCULATION_COEFFICIENT), 0, ".", " "); $ar_res['CALCULATION']['SAVINGS_TAX'] = number_format((($ar_res['PROPERTIES']['PRICE']['VALUE'] / 100) * 4), 0, ".", " "); $ar_res['CALCULATION']['SAVINGS_VAT'] = number_format((($ar_res['PROPERTIES']['PRICE']['VALUE'] / 100) * 4), 0, ".", " "); $arResult['ITEMS'][] = $ar_res; } } } if($_REQUEST['PAGEN_1'] > 1) { $arResult['SCROLL'] = true; } 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; if(count($arResult['ITEMS']) > 0 && $arParams["PAGINATION"] == "Y") { $arResult["NAV_STRING"] = $res->GetPageNavStringEx( $navComponentObject, "", "catalog", "N", null, [ "section_code" => $arResult['SECTION_CODE'], "query" => $arResult['QUERY'], ] ); } $arResult['PAGE_CURRENT'] = $res->NavPageNomer; $arResult['PAGE_COUNT'] = $res->NavPageCount; if(!isset($_REQUEST['ajax'])) { if(!is_null($arParams['REGION'])) { if($arParams['REGION'] === "root") { $arResult['NAME'] = $arParams['NAME_REGIONS']; $arResult['TITLE'] = "Лизинг в регионах России"; $arResult['SUBTITLE'] = " для юридических лиц и ИП"; $APPLICATION->SetPageProperty("title", $arParams['TITLE_REGIONS']); $APPLICATION->SetPageProperty("description", $arParams['DESCRIPTION_REGIONS']); $APPLICATION->SetPageProperty("keywords", $arParams['KEYWORDS_REGIONS']); $APPLICATION->AddHeadString(''); } else { //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']); if(!empty($arResult['SELECTED']['MODEL'])) { $arResult['NAME'] = strtr($arParams['NAME_MODEL_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'], ]); $APPLICATION->SetPageProperty("title", strtr($arParams['TITLE_MODEL_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); $APPLICATION->SetPageProperty("description", strtr($arParams['DESCRIPTION_MODEL_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); $APPLICATION->SetPageProperty("keywords", strtr($arParams['KEYWORDS_MODEL_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); } elseif(!empty($arResult['SELECTED']['BRAND'])) { $arResult['NAME'] = strtr($arParams['NAME_BRAND_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ]); $APPLICATION->SetPageProperty("title", strtr($arParams['TITLE_BRAND_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); $APPLICATION->SetPageProperty("description", strtr($arParams['DESCRIPTION_BRAND_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); $APPLICATION->SetPageProperty("keywords", strtr($arParams['KEYWORDS_BRAND_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); } else { $arResult['NAME'] = $arParams['NAME_CITY']; $APPLICATION->SetPageProperty("title", strtr($arParams['TITLE_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); $APPLICATION->SetPageProperty("description", strtr($arParams['DESCRIPTION_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); $APPLICATION->SetPageProperty("keywords", strtr($arParams['KEYWORDS_CITY'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%CITY" => $ar_city['PROPERTIES']['CASE']['VALUE'] ])); } $APPLICATION->AddHeadString(' 0 ? "/" : "").'"/>'); } if(!isset($ar_city)) { define('ERROR_404', 'Y'); } } } else { if(!empty($arResult['SELECTED']['MODEL'])) { $arResult['NAME'] = strtr($arParams['NAME_MODEL'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], ]); $APPLICATION->SetPageProperty("title", strtr($arParams['TITLE_MODEL'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], ])); $APPLICATION->SetPageProperty("description", strtr($arParams['DESCRIPTION_MODEL'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], ])); $APPLICATION->SetPageProperty("keywords", strtr($arParams['KEYWORDS_MODEL'], [ "%BRAND" => $arResult['TITLES']['BRAND'], "%MODEL" => $arResult['TITLES']['MODEL'], ])); } elseif(!empty($arResult['SELECTED']['BRAND'])) { $arResult['NAME'] = strtr($arParams['NAME_BRAND'], [ "%BRAND" => $arResult['TITLES']['BRAND'], ]); $APPLICATION->SetPageProperty("title", strtr($arParams['TITLE_BRAND'], [ "%BRAND" => $arResult['TITLES']['BRAND'], ])); $APPLICATION->SetPageProperty("description", strtr($arParams['DESCRIPTION_BRAND'], [ "%BRAND" => $arResult['TITLES']['BRAND'], ])); $APPLICATION->SetPageProperty("keywords", strtr($arParams['KEYWORDS_BRAND'], [ "%BRAND" => $arResult['TITLES']['BRAND'], ])); } else { $arResult['NAME'] = $arParams['NAME']; $APPLICATION->SetPageProperty("title", strtr($arParams['TITLE'], [ "%BRAND" => $arResult['TITLES']['BRAND'], ])); $APPLICATION->SetPageProperty("description", strtr($arParams['DESCRIPTION'], [ "%BRAND" => $arResult['TITLES']['BRAND'], ])); $APPLICATION->SetPageProperty("keywords", strtr($arParams['KEYWORDS'], [ "%BRAND" => $arResult['TITLES']['BRAND'], ])); } if(!isset($arParams['PROGRAM'])) { $APPLICATION->AddHeadString(' 0 ? "/" : "").'"/>'); } } } 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; } foreach($breadcrumbs AS $breadcrumb) { $APPLICATION->AddChainItem($breadcrumb['NAME'], $breadcrumb['URL']); } if(isset($_REQUEST['ajax'])) { $GLOBALS['APPLICATION']->RestartBuffer(); $this->IncludeComponentTemplate(); $items = ob_get_contents(); ob_end_clean(); header('Content-Type: application/json; charset=utf-8'); $response = [ 'ITEMS' => json_encode(str_replace(["\t","\r","\n"], ["","",""], $items), JSON_UNESCAPED_SLASHES), 'PAGE_CURRENT' => $arResult['PAGE_CURRENT'], 'PAGE_COUNT' => $arResult['PAGE_COUNT'], 'PAGINATION' => json_encode(str_replace(["\t","\r","\n"], ["","",""], $arResult['NAV_STRING']), JSON_UNESCAPED_SLASHES), ]; print json_encode($response, JSON_UNESCAPED_SLASHES); die(); } else { $this->IncludeComponentTemplate(); } } }