-
Популярная специальная техника в лизинг
-
- foreach($arResult['OFFERS'] AS $offer): ?>
-
- endforeach; ?>
-
+ if(is_array($arResult['OFFERS']) && count($arResult['OFFERS']) > 0): ?>
+
+
Популярная специальная техника в лизинг
+
+ foreach($arResult['OFFERS'] AS $offer): ?>
+
+ endforeach; ?>
-
+
endif; ?>
\ No newline at end of file
diff --git a/local/components/evolution/programs.aggregations.types/templates/.default/template.php b/local/components/evolution/programs.aggregations.types/templates/.default/template.php
index c12067c..c9e5ebe 100644
--- a/local/components/evolution/programs.aggregations.types/templates/.default/template.php
+++ b/local/components/evolution/programs.aggregations.types/templates/.default/template.php
@@ -12,25 +12,25 @@
/** @var CBitrixComponent $component */
$this->setFrameMode(true);
?>
- if(count($arResult['SECTIONS']) > 0): ?>
-
-
-
= $arParams['TITLE']; ?>
-
- foreach($arResult['SECTIONS'] AS $section): ?>
-
-
= $section['NAME']; ?>
-
+ if(is_array($arResult['SECTIONS']) && count($arResult['SECTIONS']) > 0): ?>
+
+
= $arParams['TITLE']; ?>
+
+ foreach($arResult['SECTIONS'] AS $section): ?>
+
+
= $section['NAME']; ?>
+
+ if(is_array($section['ITEMS'])): ?>
foreach($section['ITEMS'] AS $item): ?>
">= $item['NAME']; ?>
endforeach; ?>
-
-
-
- endforeach; ?>
-
+ endif; ?>
+
+
+
+ endforeach; ?>
-
+
endif; ?>
\ No newline at end of file
diff --git a/local/components/evolution/programs.aggregations/templates/.default/template.php b/local/components/evolution/programs.aggregations/templates/.default/template.php
index 01da63e..803c0c6 100644
--- a/local/components/evolution/programs.aggregations/templates/.default/template.php
+++ b/local/components/evolution/programs.aggregations/templates/.default/template.php
@@ -194,24 +194,31 @@ $this->setFrameMode(true);
)
); ?>
- if(!isset($arResult['TYPE']) || !isset(($arResult['BRAND']))): ?>
-
-
-
Преимущества работы с компанией “Эволюция”
-
-
-
Таким образом, внедрение современных методик требует определения и уточнения новых предложений! В рамках спецификации современных стандартов, действия представителей оппозиции, инициированные исключительно синтетически, преданы социально-демократической анафеме.
-
Однозначно, ключевые особенности структуры проекта лишь добавляют фракционных разногласий и объективно рассмотрены соответствующими инстанциями. Не следует, однако, забывать, что разбавленное изрядной долей эмпатии, рациональное мышление выявляет срочную потребность дальнейших направлений развития.
-
Однозначно, акционеры крупнейших компаний, вне зависимости от их уровня, должны быть в равной степени предоставлены сами себе. Безусловно, понимание сути ресурсосберегающих технологий однозначно фиксирует необходимость стандартных подходов. Современные технологии достигли такого уровня, что начало повседневной работы по формированию позиции создаёт необходимость включения в производственный план целого ряда внеочередных мероприятий с учётом комплекса благоприятных перспектив.
-
-
-
+ if(!empty($arResult['DETAIL_TEXT'])): ?>
+ if(!isset($arResult['TYPE']) || !isset(($arResult['BRAND']))): ?>
+
+
+
+ /*
+
Преимущества = mb_strtolower($arResult['TYPE_GENITIVE']); ?> = $arResult['BRAND_NAME']; ?>
+ */?>
+
= $arResult['PROPERTIES']['MARKETING_TEXT_TITLE']['VALUE']; ?>
+
+
+ = $arResult['DETAIL_TEXT']; ?>
+
+ if(!empty($arResult['DETAIL_PICTURE'])): ?>
+
+
+
+ endif; ?>
-
-
+
+
+ endif; ?>
endif; ?>
-
+
$APPLICATION->IncludeComponent(
"evolution:form.leasing",
diff --git a/local/include/footer.php b/local/include/footer.php
index ee6ea52..7efa8bb 100644
--- a/local/include/footer.php
+++ b/local/include/footer.php
@@ -65,13 +65,16 @@
-
© ООО "ЛК Эволюция" г. Москва, Котляковская ул., д. 8
+
© ООО "ЛК Эволюция" 115054, г. Москва, наб. Космодамианская, д. 52, стр. 5
+
diff --git a/local/templates/evolution/css/forms/style.css b/local/templates/evolution/css/forms/style.css
index 208430f..d0891b1 100644
--- a/local/templates/evolution/css/forms/style.css
+++ b/local/templates/evolution/css/forms/style.css
@@ -814,3 +814,6 @@
.carrotquest-messenger-button-position {
bottom: 60px!important;
}
+.carrotquest-messenger-right_bottom {
+ display: none;
+}
diff --git a/local/templates/evolution/css/forms/style.less b/local/templates/evolution/css/forms/style.less
index cdf105b..3d6ad16 100644
--- a/local/templates/evolution/css/forms/style.less
+++ b/local/templates/evolution/css/forms/style.less
@@ -969,4 +969,8 @@
.carrotquest-messenger-button-position {
bottom: 60px!important;
+}
+
+.carrotquest-messenger-right_bottom {
+ display: none;
}
\ No newline at end of file
diff --git a/local/used.php b/local/used.php
index b4e564d..4bc8b6d 100644
--- a/local/used.php
+++ b/local/used.php
@@ -23,6 +23,9 @@ use Bitrix\Seo\SitemapRuntimeTable;
Main\Loader::includeModule('seo');
+ob_get_clean();
+error_reporting(E_ERROR);
+
$arrContextOptions = [
"ssl" => [
"verify_peer"=>false,
@@ -209,13 +212,13 @@ while($model_search_ob = $models_search_res->GetNextElement())
$bitrix_existed_models[] = $model_existed['ID'];
}
-print "bitrix_existed_models:\n";
-print_r($bitrix_existed_models);
-print "\n\n";
+//print "bitrix_existed_models:\n";
+//print_r($bitrix_existed_models);
+//print "\n\n";
-print "bitrix_models:\n";
-print_r($bitrix_models);
-print "\n\n";
+//print "bitrix_models:\n";
+//print_r($bitrix_models);
+//print "\n\n";
//добавляем новые марки из api
@@ -226,7 +229,7 @@ foreach($api_data AS $brand_uid => $brand)
$brand_element = new CIBlockElement;
$brand_payload = [ "IBLOCK_ID" => IBLOCK_ID_BRANDS_USED, "NAME" => $brand['name'], "CODE" => $code, "PROPERTY_VALUES" => [ "UID" => $brand_uid ], "ACTIVE" => "Y", ];
- print $brand['name']." - ".$brand_uid."\n";
+// print $brand['name']." - ".$brand_uid."\n";
if($brand_new_id = $brand_element->Add($brand_payload))
{
$bitrix_brands[ $brand_uid ] = $brand_new_id;
@@ -243,11 +246,11 @@ foreach($api_data AS $brand_uid => $brand)
$el->Update($brand_existed['ID'], ["ACTIVE" => "Y"]);
}
}
- print "\n";
+// print "\n";
- print_r($brand['models']);
- print "\n";
- print "\n";
+// print_r($brand['models']);
+// print "\n";
+// print "\n";
//добавляем новые модели из api
foreach($brand['models'] AS $model_uid => $model)
@@ -273,12 +276,14 @@ foreach($api_data AS $brand_uid => $brand)
$el->Update($model_existed['ID'], ["ACTIVE" => "Y"]);
}
}
- print "\n";
+// print "\n";
}
}
function resize_image($image, $filename, $width, $height, $quality)
{
+ print "resize_image ".$filename." | ".$width."x".$height."\n";
+
$tempfile = tmpfile();
fwrite($tempfile, $image);
$tempfile_metadata = stream_get_meta_data($tempfile);
@@ -305,8 +310,12 @@ function resize_image($image, $filename, $width, $height, $quality)
imagedestroy($resized);
imagedestroy($panel);
+ print "resize_image | make file array\n";
+
$file = CFile::MakeFileArray($tempfile_filename);
$file['name'] = $filename.".".$ext;
+ print "resize_image | make file array\n";
+
$saved_file_id = CFile::SaveFile($file, "used");
fclose($tempfile);
@@ -314,6 +323,83 @@ function resize_image($image, $filename, $width, $height, $quality)
return $saved_file_id;
}
+function set_images($code, $car_id, $delete = false, $properties = [])
+{
+ if($delete)
+ {
+ if($properties['PHOTO']['PROPERTY_VALUE_ID'] !== "")
+ {
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTO", [ $properties['PHOTO']['PROPERTY_VALUE_ID'] => [ "VALUE" => [ "MODULE_ID" => "iblock", "del" => "Y" ] ] ] );
+ }
+
+ if(is_array($properties['PHOTOS_1080']['PROPERTY_VALUE_ID']) && count($properties['PHOTOS_1080']['PROPERTY_VALUE_ID']) > 0)
+ {
+ $photos = [];
+ foreach($properties['PHOTOS_1080']['PROPERTY_VALUE_ID'] AS $k => $v)
+ {
+ $photos[ $v ] = [ "VALUE" => [ "MODULE_ID" => "iblock", "del" => "Y" ] ];
+ }
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTOS_1080", $photos );
+ }
+
+ if(is_array($properties['PHOTOS_480']['PROPERTY_VALUE_ID']) && count($properties['PHOTOS_480']['PROPERTY_VALUE_ID']) > 0)
+ {
+ $photos = [];
+ foreach($properties['PHOTOS_480']['PROPERTY_VALUE_ID'] AS $k => $v)
+ {
+ $photos[ $v ] = [ "VALUE" => [ "MODULE_ID" => "iblock", "del" => "Y" ] ];
+ }
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTOS_480", $photos );
+ }
+
+ if(is_array($properties['PHOTOS_120']['PROPERTY_VALUE_ID']) && count($properties['PHOTOS_120']['PROPERTY_VALUE_ID']) > 0)
+ {
+ $photos = [];
+ foreach($properties['PHOTOS_120']['PROPERTY_VALUE_ID'] AS $k => $v)
+ {
+ $photos[ $v ] = [ "VALUE" => [ "MODULE_ID" => "iblock", "del" => "Y" ] ];
+ }
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTOS_120", $photos );
+ }
+ }
+
+ $images = zerof_get_images($code);
+
+ if(count($images) > 0)
+ {
+ $photo_property_value = null;
+ $photos_1080_property_values = [];
+ $photos_480_property_values = [];
+ $photos_120_property_values = [];
+
+ foreach($images AS $k => $image)
+ {
+ $saved_file_id_1080 = resize_image($image, $code."_".($k + 1)."_1080", 1440, 1080, 60);
+ $saved_file_id_480 = resize_image($image, $code."_".($k + 1)."_480", 640, 480, 60);
+ $saved_file_id_120 = resize_image($image, $code."_".($k + 1)."_120", 160, 120, 60);
+
+ $photos_1080_property_values[] = [ "VALUE" => $saved_file_id_1080, ];
+ $photos_480_property_values[] = [ "VALUE" => $saved_file_id_480, ];
+ $photos_120_property_values[] = [ "VALUE" => $saved_file_id_120, ];
+
+ if($k === 0)
+ {
+ $photo_property_value = resize_image($image, $code."_".($k + 1)."_500", 500, 300, 60);
+ }
+ }
+
+ print "set images | ".$code."\n";
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTO", $photo_property_value);
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTOS_1080", $photos_1080_property_values);
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTOS_480", $photos_480_property_values);
+ CIBlockElement::SetPropertyValueCode($car_id, "PHOTOS_120", $photos_120_property_values);
+ }
+
+ print "set_images END\n";
+
+ return;
+}
+
$c = 0;
foreach($json as $car)
{
@@ -369,36 +455,7 @@ foreach($json as $car)
if($new_used_car_id = $used_car_element->Add($used_car_payload))
{
//добавляем новое предложение в bitrix
- $images = zerof_get_images($code);
-
- if(count($images) > 0)
- {
- $photo_property_value = null;
- $photos_1080_property_values = [];
- $photos_480_property_values = [];
- $photos_120_property_values = [];
-
- foreach($images AS $k => $image)
- {
- $saved_file_id_1080 = resize_image($image, $code."_".($k + 1)."_1080", 1440, 1080, 60);
- $saved_file_id_480 = resize_image($image, $code."_".($k + 1)."_480", 640, 480, 60);
- $saved_file_id_120 = resize_image($image, $code."_".($k + 1)."_120", 160, 120, 60);
-
- $photos_1080_property_values[] = [ "VALUE" => $saved_file_id_1080, ];
- $photos_480_property_values[] = [ "VALUE" => $saved_file_id_480, ];
- $photos_120_property_values[] = [ "VALUE" => $saved_file_id_120, ];
-
- if($k === 0)
- {
- $photo_property_value = resize_image($image, $code."_".($k + 1)."_500", 500, 300, 60);
- }
- }
-
- CIBlockElement::SetPropertyValueCode($new_used_car_id, "PHOTO", $photo_property_value);
- CIBlockElement::SetPropertyValueCode($new_used_car_id, "PHOTOS_1080", $photos_1080_property_values);
- CIBlockElement::SetPropertyValueCode($new_used_car_id, "PHOTOS_480", $photos_480_property_values);
- CIBlockElement::SetPropertyValueCode($new_used_car_id, "PHOTOS_120", $photos_120_property_values);
- }
+ set_images($code, $new_used_car_id, false);
print "\n";
}
@@ -409,10 +466,16 @@ foreach($json as $car)
while($car_search_ob = $cars_search_res->GetNextElement())
{
$car_existed = $car_search_ob->GetFields();
+ $car_existed['PROPERTIES'] = $car_search_ob->GetProperties();
$el = new CIBlockElement;
$el->Update($car_existed['ID'], ["ACTIVE" => "Y", "NAME" => $name, "SORT" => 500]);
+ if(in_array("updateimages", $argv))
+ {
+ set_images($code, $car_existed['ID'], true, $car_existed['PROPERTIES']);
+ }
+
CIBlockElement::SetPropertyValuesEx($car_existed['ID'], IBLOCK_ID_CATALOG_CARS_USED, $PROPERTY_VALUES, []);
}
}
@@ -423,9 +486,10 @@ foreach($json as $car)
//скрываем предложения, которые есть в bitrix но которых более нет в api
foreach($bitrix_cars AS $code => $car_id)
{
- print "CAR ".$code." => ".$car_id."\n";
if(!in_array($code, $api_cars))
{
+ print "HIDE CAR ".$code." => ".$car_id."\n";
+
$el = new CIBlockElement;
$el->Update($car_id, ["ACTIVE" => "N", "SORT" => 1]);
}
@@ -434,9 +498,10 @@ foreach($bitrix_cars AS $code => $car_id)
//скрываем марки, которые есть в bitrix но которых более нет в api
foreach($bitrix_existed_brands AS $brand_id)
{
- print "BRAND ".$ibrand_idd."\n";
if(!in_array($brand_id, $api_existed_brands))
{
+ print "HIDE BRAND ".$ibrand_id."\n";
+
$el = new CIBlockElement;
$el->Update($brand_id, ["ACTIVE" => "N"]);
}
@@ -445,9 +510,10 @@ foreach($bitrix_existed_brands AS $brand_id)
//скрываем модели, которые есть в bitrix но которых более нет в api
foreach($bitrix_existed_models AS $model_id)
{
- print "MODEL ".$model_id."\n";
if(!in_array($model_id, $api_existed_models))
{
+ print "HIDE MODEL ".$model_id."\n";
+
$el = new CIBlockElement;
$el->Update($model_id, ["ACTIVE" => "N"]);
}
diff --git a/local/usedxml.php b/local/usedxml.php
new file mode 100644
index 0000000..4a5af2c
--- /dev/null
+++ b/local/usedxml.php
@@ -0,0 +1,79 @@
+#!/usr/bin/php -q
+require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
+$APPLICATION->SetTitle("БУ фид");
+
+$xmlbody = '
';
+$i = 0;
+$today = date("d.m.Y");
+CModule::IncludeModule("iblock");
+
+// $arSelect = Array("ID", "NAME", "PROPERTY_CONTRACT", "PROPERTY_VEHICLE_TYPE","PROPERTY_VEHICLE_SUBTYPE","PROPERTY_BRAND","PROPERTY_MODEL", "PROPERTY_MODIFICATION","PROPERTY_VIN","PROPERTY_YEAR","PROPERTY_MILEAGE","PROPERTY_MILEAGE","PROPERTY_ENGINE_HOURS","PROPERTY_ENGINE_POWER","PROPERTY_ENGINE_VOLUME","PROPERTY_ENGINE_FUEL","PROPERTY_PARKING_CITY","PROPERTY_PARKING_REGION","PROPERTY_PRICE","PROPERTY_PRICE_WITH_DISCOUNT","PROPERTY_RESERVE_DATE","PROPERTY_SPECIAL_OFFER","PROPERTY_LEASING_AVAILABLE","PROPERTY_AFTER_ACCIDENT","PROPERTY_DESCRIPTION","PROPERTY_PHOTO","PROPERTY_PHOTOS_1080","PROPERTY_PHOTOS_480","PROPERTY_PHOTOS_120");
+
+$arSelect = Array("ID", "NAME", "PROPERTY_CONTRACT", "PROPERTY_VEHICLE_TYPE","PROPERTY_VEHICLE_SUBTYPE","PROPERTY_BRAND","PROPERTY_MODEL", "PROPERTY_MODIFICATION","PROPERTY_VIN","PROPERTY_YEAR","PROPERTY_MILEAGE","PROPERTY_MILEAGE","PROPERTY_ENGINE_HOURS","PROPERTY_ENGINE_POWER","PROPERTY_ENGINE_VOLUME","PROPERTY_ENGINE_FUEL","PROPERTY_PARKING_CITY","PROPERTY_PARKING_REGION","PROPERTY_PRICE","PROPERTY_PRICE_WITH_DISCOUNT","PROPERTY_RESERVE_DATE","PROPERTY_SPECIAL_OFFER","PROPERTY_LEASING_AVAILABLE","PROPERTY_AFTER_ACCIDENT","PROPERTY_DESCRIPTION","PROPERTY_PHOTO");
+
+$arFilter = Array("IBLOCK_ID"=>2, "ACTIVE"=>"Y");
+
+$res = CIBlockElement::GetList(Array("SORT"=>"ASC"), $arFilter, false, Array("nPageSize"=>1000), $arSelect);
+
+while ($ob = $res->GetNextElement())
+ {
+ $arFields = $ob->GetFields();
+ $arFields['PROPERTIES'] = $ob->GetProperties();
+
+ $brand = CIBlockElement::GetByID($arFields["PROPERTY_BRAND_VALUE"]);
+ $ar_brand = $brand->GetNext();
+
+ $model = CIBlockElement::GetByID($arFields["PROPERTY_MODEL_VALUE"]);
+ $ar_model = $model->GetNext();
+
+ $mainfoto = CFile::GetPath($arFields["PROPERTY_PHOTO_VALUE"]);
+
+ if ($arFields["PROPERTY_PRICE_WITH_DISCOUNT_VALUE"]!=0){
+ $money = $arFields["PROPERTY_PRICE_WITH_DISCOUNT_VALUE"];
+ }
+ else {
+ $money = $arFields["PROPERTY_PRICE_VALUE"];
+ }
+
+ $xmlbody .= '
+
+ '.$ar_brand['NAME'].'
+ '.$ar_model['NAME'].'
+ '.$arFields["PROPERTY_MODIFICATION_VALUE"].'
+ https://www.evoleasing.ru/izt/'.$arFields["PROPERTY_CONTRACT_VALUE"].'/
+ в наличии
+ растаможен
+ '.$arFields["PROPERTY_MILEAGE_VALUE"].'
+ '.$arFields["PROPERTY_YEAR_VALUE"].'
+ '.$money.'
+ RUR
+ '.$arFields["PROPERTY_VIN_VALUE"].'
+
+ https://www.evoleasing.ru'.$mainfoto.'
+
+ ';
+ $i++;
+ // print $arFields["ID"]." => ".$arFields["NAME"]." ";
+ ?>
+ print_r($i." => ".$arFields["NAME"]);
+ // print_r("mainfoto => ".$mainfoto);
+ ?>
+}
+
+?>
+ //print_r($arFields);
+?>
+$xmlbody .= ' ';
+?>
//print_r($xmlbody);?>
+$file = $_SERVER["DOCUMENT_ROOT"] . "/upload/docs/usedxml.xml";
+
+$handle = fopen($file, "w+");//Открываем для записи в конец.
+if (!$handle) {
+ echo "Oшибка: файл не создался-".$text;
+} else {
+ fputs ($handle, $xmlbody);
+ fclose($handle);
+ echo "Ok! Сохранено по
ссылке! ".$today;
+}
+?>
+
\ No newline at end of file