$arFound = array();
	$rsElements = CIBlockElement::GetList($arSort, $arFilter, false, false, $arSelect);
	while($arElement = $rsElements->GetNext())
	{
		$ID = $arElement["PROPERTY_".strtoupper($arParams["LINK_PROPERTY_SID"])."_VALUE"];
		if(!array_key_exists($ID, $arFound) || (strpos($arElement["XML_ID"], "#")===false))
		{
			$arFound[$ID] = true;
			$arItem = &$arResult["ITEMS"][$arMap[$ID]];

			if($arParams["USE_PRICE_COUNT"])
			{
				if(CModule::IncludeModule("catalog"))
				{
					$arItem["PRICE_MATRIX"] = CatalogGetPriceTableEx($arElement["ID"]);
					foreach($arItem["PRICE_MATRIX"]["COLS"] as $keyColumn=>$arColumn)
						$arItem["PRICE_MATRIX"]["COLS"][$keyColumn]["NAME_LANG"] = htmlspecialchars($arColumn["NAME_LANG"]);
				}
				else
				{
					$arItem["PRICE_MATRIX"] = false;
				}
				$arItem["PRICES"] = array();
			}
			else
			{
				$arItem["PRICE_MATRIX"] = false;
				$arItem["PRICES"] = CIBlockPriceTools::GetItemPrices($arParams["LINK_IBLOCK_ID"], $arResult["PRICES"], $arElement);
			}
			$arItem["CAN_BUY"] = CIBlockPriceTools::CanBuy($arParams["LINK_IBLOCK_ID"], $arResult["PRICES"], $arElement);
Ejemplo n.º 2
0
 $arResult['~BUY_URL_TEMPLATE'] = $currentPath . $arParams["ACTION_VARIABLE"] . "=BUY&" . $arParams["PRODUCT_ID_VARIABLE"] . "=#ID#";
 $arResult['BUY_URL_TEMPLATE'] = htmlspecialcharsbx($arResult['~BUY_URL_TEMPLATE']);
 $arResult['~ADD_URL_TEMPLATE'] = $currentPath . $arParams["ACTION_VARIABLE"] . "=ADD2BASKET&" . $arParams["PRODUCT_ID_VARIABLE"] . "=#ID#";
 $arResult['ADD_URL_TEMPLATE'] = htmlspecialcharsbx($arResult['~ADD_URL_TEMPLATE']);
 $arResult['~SUBSCRIBE_URL_TEMPLATE'] = $currentPath . $arParams["ACTION_VARIABLE"] . "=SUBSCRIBE_PRODUCT&" . $arParams["PRODUCT_ID_VARIABLE"] . "=#ID#";
 $arResult['SUBSCRIBE_URL_TEMPLATE'] = htmlspecialcharsbx($arResult['~SUBSCRIBE_URL_TEMPLATE']);
 $arResult['~COMPARE_URL_TEMPLATE'] = $comparePath . $arParams["ACTION_VARIABLE"] . "=ADD_TO_COMPARE_LIST&" . $arParams["PRODUCT_ID_VARIABLE"] . "=#ID#";
 $arResult['COMPARE_URL_TEMPLATE'] = htmlspecialcharsbx($arResult['~COMPARE_URL_TEMPLATE']);
 unset($comparePath, $currentPath);
 foreach ($arResult["ITEMS"] as &$arItem) {
     $arItem["PRICES"] = array();
     $arItem["PRICE_MATRIX"] = false;
     $arItem['MIN_PRICE'] = false;
     if ($arParams["USE_PRICE_COUNT"]) {
         if ($bCatalog) {
             $arItem["PRICE_MATRIX"] = CatalogGetPriceTableEx($arItem["ID"], 0, $arPriceTypeID, 'Y', $arConvertParams);
             if (isset($arItem["PRICE_MATRIX"]["COLS"]) && is_array($arItem["PRICE_MATRIX"]["COLS"])) {
                 foreach ($arItem["PRICE_MATRIX"]["COLS"] as $keyColumn => $arColumn) {
                     $arItem["PRICE_MATRIX"]["COLS"][$keyColumn]["NAME_LANG"] = htmlspecialcharsex($arColumn["NAME_LANG"]);
                 }
             }
         }
     } else {
         $arItem["PRICES"] = CIBlockPriceTools::GetItemPrices($arParams["IBLOCK_ID"], $arResult["PRICES"], $arItem, $arParams['PRICE_VAT_INCLUDE'], $arConvertParams);
         if (!empty($arItem["PRICES"])) {
             foreach ($arItem['PRICES'] as &$arOnePrice) {
                 if ('Y' == $arOnePrice['MIN_PRICE']) {
                     $arItem['MIN_PRICE'] = $arOnePrice;
                     break;
                 }
             }
Ejemplo n.º 3
0
 foreach ($arResult["CATEGORIES"] as $category_id => $arCategory) {
     foreach ($arCategory["ITEMS"] as $i => $arItem) {
         if (isset($arItem["ITEM_ID"])) {
             $arResult["SEARCH"][] =& $arResult["CATEGORIES"][$category_id]["ITEMS"][$i];
         }
     }
 }
 foreach ($arResult["SEARCH"] as $i => $arItem) {
     switch ($arItem["MODULE_ID"]) {
         case "iblock":
             if (CModule::IncludeModule("catalog")) {
                 $arParams["CURRENCY"] = $arParams["CURRENCY"] ? $arParams["CURRENCY"] : CCurrency::GetBaseCurrency();
                 $arConvertParams = array('CURRENCY_ID' => $arParams["CURRENCY"]);
                 $ProductPrarams = CCatalogProduct::GetByID($arItem["ITEM_ID"]);
                 //echo $ProductPrarams[VAT_INCLUDED];
                 $arPrices = CatalogGetPriceTableEx($arItem["ITEM_ID"], 0, array(), 'Y', $arConvertParams);
                 unset($arResult["SEARCH"][$i]["MIN_PRICE"]);
                 unset($arResult["SEARCH"][$i]["PRICES"]);
                 foreach ($arParams["PRICE_CODE"] as $key => $prid) {
                     if ($arPrices["MATRIX"][$prid][0]) {
                         if (isset($arResult["SEARCH"][$i]["MIN_PRICE"])) {
                             if ($arPrices["MATRIX"][$prid][0]["ORIG_DISCOUNT_PRICE"]) {
                                 $price_orig_val = $arPrices["MATRIX"][$prid][0]["ORIG_DISCOUNT_PRICE"];
                             } else {
                                 $price_orig_val = $arPrices["MATRIX"][$prid][0]["DISCOUNT_PRICE"];
                             }
                             if ($arResult["SEARCH"][$i]["MIN_PRICE"]["DISCOUNT_PRICE"] > $price_orig_val) {
                                 $arResult["SEARCH"][$i]["MIN_PRICE"] = $arPrices["MATRIX"][$prid][0];
                             }
                         } else {
                             $arResult["SEARCH"][$i]["MIN_PRICE"] = $arPrices["MATRIX"][$prid][0];
Ejemplo n.º 4
0
            $arPriceTypeID[] = $value["ID"];
        }
        if (isset($value)) {
            unset($value);
        }
    }
    $arFound = array();
    $rsElements = CIBlockElement::GetList($arSort, $arFilter, false, false, $arSelect);
    while ($arElement = $rsElements->GetNext()) {
        $ID = $arElement["PROPERTY_" . strtoupper($arParams["LINK_PROPERTY_SID"]) . "_VALUE"];
        if (!array_key_exists($ID, $arFound) || strpos($arElement["XML_ID"], "#") === false) {
            $arFound[$ID] = true;
            $arItem =& $arResult["ITEMS"][$arMap[$ID]];
            if ($arParams["USE_PRICE_COUNT"]) {
                if (CModule::IncludeModule("catalog")) {
                    $arItem["PRICE_MATRIX"] = CatalogGetPriceTableEx($arElement["ID"], 0, $arPriceTypeID, 'Y', $arResult['CONVERT_CURRENCY']);
                    foreach ($arItem["PRICE_MATRIX"]["COLS"] as $keyColumn => $arColumn) {
                        $arItem["PRICE_MATRIX"]["COLS"][$keyColumn]["NAME_LANG"] = htmlspecialcharsbx($arColumn["NAME_LANG"]);
                    }
                } else {
                    $arItem["PRICE_MATRIX"] = false;
                }
                $arItem["PRICES"] = array();
            } else {
                $arItem["PRICE_MATRIX"] = false;
                $arItem["PRICES"] = CIBlockPriceTools::GetItemPrices($arParams["LINK_IBLOCK_ID"], $arResult["PRICES"], $arElement, $arParams['PRICE_VAT_INCLUDE'], $arResult['CONVERT_CURRENCY']);
            }
            $arItem["CAN_BUY"] = CIBlockPriceTools::CanBuy($arParams["LINK_IBLOCK_ID"], $arResult["PRICES"], $arElement);
        }
    }
}
Ejemplo n.º 5
0
:&nbsp;&nbsp;<b><?php 
                                        if ($discountPrice < $arElement["CATALOG_PRICE_" . $key]) {
                                            echo '<s>' . FormatCurrency($arElement["CATALOG_PRICE_" . $key], $arElement["CATALOG_CURRENCY_" . $key]) . '</s> <font color="red">' . FormatCurrency($discountPrice, $arElement["CATALOG_CURRENCY_" . $key]) . '</font>';
                                        } else {
                                            echo '<font color="red">' . FormatCurrency($arElement["CATALOG_PRICE_" . $key], $arElement["CATALOG_CURRENCY_" . $key]) . '</font>';
                                        }
                                        ?>
</b></font></td>
													</tr>
													<?php 
                                    }
                                }
                            }
                        }
                    } else {
                        $arPriceMatrix = CatalogGetPriceTableEx($arElement["ID"]);
                        ?>
									<tr>
										<td colspan="3">
											<br><img src="/bitrix/images/1.gif" width="1" height="6" border="0" alt=""><br>
											<table cellpadding="0" cellspacing="0" border="0"><tr><td class="tableborder">
											<table cellpadding="3" cellspacing="1" border="0" width="100%">
												<tr>
													<?php 
                        if (count($arPriceMatrix["ROWS"]) > 1 || count($arPriceMatrix["ROWS"]) == 1 && ($arPriceMatrix["ROWS"][0]["QUANTITY_FROM"] > 0 || $arPriceMatrix["ROWS"][0]["QUANTITY_TO"] > 0)) {
                            ?>
<td valign="top" nowrap class="tablebody"><font class="smalltext"><?php 
                            echo GetMessage("CATALOG_QUANTITY");
                            ?>
</font></td><?php 
                        }
Ejemplo n.º 6
0
         $arResultModules['currency'] = true;
         $arCurrencyInfo = CCurrency::GetByID($arParams['CURRENCY_ID']);
         if (!(is_array($arCurrencyInfo) && !empty($arCurrencyInfo))) {
             $arParams['CONVERT_CURRENCY'] = 'N';
             $arParams['CURRENCY_ID'] = '';
         } else {
             $arParams['CURRENCY_ID'] = $arCurrencyInfo['CURRENCY'];
             $arConvertParams['CURRENCY_ID'] = $arCurrencyInfo['CURRENCY'];
         }
     }
 }
 $bCatalog = CModule::IncludeModule('catalog');
 foreach ($arResult["SET_ITEMS"] as $key => $setItem) {
     if ($arParams["USE_PRICE_COUNT"]) {
         if ($bCatalog) {
             $arResult["SET_ITEMS"][$key]["PRICE_MATRIX"] = CatalogGetPriceTableEx($arResult["SET_ITEMS"][$key]["ID"], 0, $arPriceTypeID, 'Y', $arConvertParams);
             foreach ($arResult["SET_ITEMS"][$key]["PRICE_MATRIX"]["COLS"] as $keyColumn => $arColumn) {
                 $arResult["SET_ITEMS"][$key]["PRICE_MATRIX"]["COLS"][$keyColumn]["NAME_LANG"] = htmlspecialcharsbx($arColumn["NAME_LANG"]);
             }
         }
     } else {
         $arResult["SET_ITEMS"][$key]["PRICES"] = CIBlockPriceTools::GetItemPrices($arParams["IBLOCK_ID"], $arResultPrices, $arResult["SET_ITEMS"][$key], $arParams['PRICE_VAT_INCLUDE'], $arConvertParams);
         if (!empty($arResult["SET_ITEMS"][$key]["PRICES"])) {
             foreach ($arResult["SET_ITEMS"][$key]['PRICES'] as &$arOnePrice) {
                 if ('Y' == $arOnePrice['MIN_PRICE']) {
                     $arResult["SET_ITEMS"][$key]['MIN_PRICE'] = $arOnePrice;
                     break;
                 }
             }
             unset($arOnePrice);
         }
Ejemplo n.º 7
0
     if ($arResult["SECTION"] = $rsSection->GetNext()) {
         if (strlen($arParams["SECTION_URL"]) > 0) {
             $arResult["SECTION"]["SECTION_PAGE_URL"] = htmlspecialchars(str_replace(array("#SERVER_NAME#", "#SITE_DIR#", "#IBLOCK_ID#", "#SECTION_ID#"), array(SITE_SERVER_NAME, SITE_DIR, $arResult["IBLOCK_ID"], $arResult["SECTION"]["ID"]), $arParams["SECTION_URL"]));
         }
         $arResult["SECTION"]["PATH"] = array();
         $rsPath = GetIBlockSectionPath($arResult["IBLOCK_ID"], $arResult["SECTION"]["ID"]);
         while ($arPath = $rsPath->GetNext()) {
             if (strlen($arParams["SECTION_URL"]) > 0) {
                 $arPath["SECTION_PAGE_URL"] = htmlspecialchars(str_replace(array("#SERVER_NAME#", "#SITE_DIR#", "#IBLOCK_ID#", "#SECTION_ID#"), array(SITE_SERVER_NAME, SITE_DIR, $arPath["IBLOCK_ID"], $arPath["ID"]), $arParams["SECTION_URL"]));
             }
             $arResult["SECTION"]["PATH"][] = $arPath;
         }
     }
     if ($arParams["USE_PRICE_COUNT"]) {
         if (CModule::IncludeModule("catalog")) {
             $arResult["PRICE_MATRIX"] = CatalogGetPriceTableEx($arResult["ID"]);
         } else {
             $arResult["PRICE_MATRIX"] = false;
         }
         $arResult["PRICES"] = array();
     } else {
         $arResult["PRICE_MATRIX"] = false;
         $arResult["PRICES"] = CIBlockPriceTools::GetItemPrices($arParams["IBLOCK_ID"], $arResult["CAT_PRICES"], $arResult);
     }
     $arResult["CAN_BUY"] = CIBlockPriceTools::CanBuy($arParams["IBLOCK_ID"], $arResult["PRICES"], $arResult);
     $arResult["BUY_URL"] = htmlspecialchars($APPLICATION->GetCurPageParam($arParams["ACTION_VARIABLE"] . "=BUY&" . $arParams["PRODUCT_ID_VARIABLE"] . "=" . $arResult["ID"], array($arParams["PRODUCT_ID_VARIABLE"], $arParams["ACTION_VARIABLE"])));
     $arResult["ADD_URL"] = htmlspecialchars($APPLICATION->GetCurPageParam($arParams["ACTION_VARIABLE"] . "=ADD2BASKET&" . $arParams["PRODUCT_ID_VARIABLE"] . "=" . $arResult["ID"], array($arParams["PRODUCT_ID_VARIABLE"], $arParams["ACTION_VARIABLE"])));
     $arResult["LINK_URL"] = str_replace(array("#ELEMENT_ID#", "#SECTION_ID#"), array($arResult["ID"], $arResult["SECTION"]["ID"]), $arParams["LINK_ELEMENTS_URL"]);
     $this->IncludeComponentTemplate();
 } else {
     $this->AbortResultCache();