From 570a01ea77dec24c567173f815d30d382dfd3487 Mon Sep 17 00:00:00 2001 From: Ilyas Salikhov Date: Fri, 24 Oct 2014 09:24:43 +0400 Subject: [PATCH] Disallow the intersection of common fields and properties symbol codes --- .../classes/general/ICMLLoader.php | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/intaro.intarocrm/classes/general/ICMLLoader.php b/intaro.intarocrm/classes/general/ICMLLoader.php index e00f4a1c..3c07b40d 100644 --- a/intaro.intarocrm/classes/general/ICMLLoader.php +++ b/intaro.intarocrm/classes/general/ICMLLoader.php @@ -411,15 +411,15 @@ class ICMLLoader { if ($propSKU != "") { if (isset ($offer["PROPERTY_" . $propSKU . "_NAME"])) - $offer[$key] = $offer["PROPERTY_" . $propSKU . "_NAME"]; + $offer['_PROP_' . $key] = $offer["PROPERTY_" . $propSKU . "_NAME"]; elseif (isset ($offer[$propSKU])) - $offer[$key] = $offer[$propSKU]; + $offer['_PROP_' . $key] = $offer[$propSKU]; else - $offer[$key] = $offer["PROPERTY_" . $propSKU . "_VALUE"]; + $offer['_PROP_' . $key] = $offer["PROPERTY_" . $propSKU . "_VALUE"]; if (array_key_exists($key, $this->propertiesUnitSKU[$id])) { - $offer[$key] *= $this->measurement[$this->propertiesUnitSKU[$id][$key]]; - $offer[$key . "_UNIT"] = $this->measurementLink[$this->propertiesUnitSKU[$id][$key]]; + $offer['_PROP_' . $key] *= $this->measurement[$this->propertiesUnitSKU[$id][$key]]; + $offer['_PROP_' . $key . "_UNIT"] = $this->measurementLink[$this->propertiesUnitSKU[$id][$key]]; } } @@ -427,7 +427,7 @@ class ICMLLoader { foreach ($resPropertiesProduct as $key => $propProduct) { if ($this->propertiesProduct[$id][$key] != "" && !isset($offer[$key])) - $offer[$key] = $propProduct; + $offer['_PROP_' . $key] = $propProduct; } $stringOffers .= $this->BuildOffer($offer, $categories, $iblock, $allCategories); @@ -445,7 +445,7 @@ class ICMLLoader { foreach ($resPropertiesProduct as $key => $propProduct) { if ($this->propertiesProduct[$id][$key] != "" || $this->propertiesProduct[$id][str_replace("_UNIT", "", $key)] != "") { - $product[$key] = $propProduct; + $product['_PROP_' . $key] = $propProduct; } } @@ -515,19 +515,19 @@ class ICMLLoader { $offer .= "" . $this->PrepareValue($arOffer["PRODUCT_NAME"]) . "\n"; foreach ($this->propertiesProduct[$iblock['IBLOCK_DB']['ID']] as $key => $propProduct) { - if ($propProduct != "" && $arOffer[$key] != null) { + if ($propProduct != "" && $arOffer['_PROP_' . $key] != null) { if ($key === "manufacturer") - $offer .= "" . $this->PrepareValue($arOffer[$key]) . "\n"; + $offer .= "" . $this->PrepareValue($arOffer['_PROP_' . $key]) . "\n"; else - $offer .= '" . $this->PrepareValue($arOffer[$key]) . "\n"; + $offer .= '" . $this->PrepareValue($arOffer['_PROP_' . $key]) . "\n"; } } foreach ($this->propertiesSKU[$iblock['IBLOCK_DB']['ID']] as $key => $propProduct) { - if ($propProduct != "" && $arOffer[$key] != null) { + if ($propProduct != "" && $arOffer['_PROP_' . $key] != null) { if ($key === "manufacturer") - $offer .= "" . $this->PrepareValue($arOffer[$key]) . "\n"; + $offer .= "" . $this->PrepareValue($arOffer['_PROP_' . $key]) . "\n"; else - $offer .= '" . $this->PrepareValue($arOffer[$key]) . "\n"; + $offer .= '" . $this->PrepareValue($arOffer['_PROP_' . $key]) . "\n"; } }