%PDF- %PDF-
Direktori : /proc/self/root/home/bitrix/www/bitrix/components/bitrix/eshopapp.basket/ |
Current File : //proc/self/root/home/bitrix/www/bitrix/components/bitrix/eshopapp.basket/component.php |
<? if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); if (!CModule::IncludeModule("sale")) { ShowError(GetMessage("SALE_MODULE_NOT_INSTALL")); return; } $arParams["PATH_TO_ORDER"] = Trim($arParams["PATH_TO_ORDER"]); if (strlen($arParams["PATH_TO_ORDER"]) <= 0) $arParams["PATH_TO_ORDER"] = "order.php"; if($arParams["SET_TITLE"] == "Y") $APPLICATION->SetTitle(GetMessage("SBB_TITLE")); if (!isset($arParams["COLUMNS_LIST"]) || !is_array($arParams["COLUMNS_LIST"]) || count($arParams["COLUMNS_LIST"]) <= 0) $arParams["COLUMNS_LIST"] = array("NAME", "PRICE", "TYPE", "QUANTITY", "DELETE", "DELAY", "WEIGHT"); $arParams["HIDE_COUPON"] = (($arParams["HIDE_COUPON"] == "Y") ? "Y" : "N"); if (!CModule::IncludeModule("catalog")) $arParams["HIDE_COUPON"] = "Y"; if (!isset($arParams['QUANTITY_FLOAT'])) $arParams['QUANTITY_FLOAT'] = 'N'; $arParams["COUNT_DISCOUNT_4_ALL_QUANTITY"] = (($arParams["COUNT_DISCOUNT_4_ALL_QUANTITY"] == "Y") ? "Y" : "N"); //$arParams['PRICE_VAT_INCLUDE'] = $arParams['PRICE_VAT_INCLUDE'] == 'N' ? 'N' : 'Y'; $arParams['PRICE_VAT_SHOW_VALUE'] = $arParams['PRICE_VAT_SHOW_VALUE'] == 'N' ? 'N' : 'Y'; $arParams["WEIGHT_UNIT"] = htmlspecialcharsbx(COption::GetOptionString('sale', 'weight_unit', "", SITE_ID)); $arParams["WEIGHT_KOEF"] = htmlspecialcharsbx(COption::GetOptionString('sale', 'weight_koef', 1, SITE_ID)); if (strlen($_REQUEST["BasketRefresh"]) > 0 || strlen($_REQUEST["BasketOrder"]) > 0 || strlen($_REQUEST["action"]) > 0) { if(strlen($_REQUEST["action"]) > 0) { $id = IntVal($_REQUEST["id"]); if($id > 0) { $dbBasketItems = CSaleBasket::GetList( array(), array( "FUSER_ID" => CSaleBasket::GetBasketUserID(), "LID" => SITE_ID, "ORDER_ID" => "NULL", "ID" => $id, ), false, false, array("ID", "CALLBACK_FUNC", "MODULE", "PRODUCT_ID", "QUANTITY", "DELAY", "CAN_BUY", "CURRENCY") ); if($arBasket = $dbBasketItems->Fetch()) { if($_REQUEST["action"] == "delete" && in_array("DELETE", $arParams["COLUMNS_LIST"])) { CSaleBasket::Delete($arBasket["ID"]); } elseif($_REQUEST["action"] == "shelve" && in_array("DELAY", $arParams["COLUMNS_LIST"])) { if ($arBasket["DELAY"] == "N" && $arBasket["CAN_BUY"] == "Y") CSaleBasket::Update($arBasket["ID"], Array("DELAY" => "Y")); } elseif($_REQUEST["action"] == "add" && in_array("DELAY", $arParams["COLUMNS_LIST"])) { if ($arBasket["DELAY"] == "Y" && $arBasket["CAN_BUY"] == "Y") CSaleBasket::Update($arBasket["ID"], Array("DELAY" => "N")); } unset($_SESSION["SALE_BASKET_NUM_PRODUCTS"][SITE_ID]); } } } else { if ($arParams["HIDE_COUPON"] != "Y") { $COUPON = Trim($_REQUEST["COUPON"]); if (strlen($COUPON) > 0) CCatalogDiscountCoupon::SetCoupon($COUPON); else CCatalogDiscountCoupon::ClearCoupon(); } $dbBasketItems = CSaleBasket::GetList( array("NAME" => "ASC"), array( "FUSER_ID" => CSaleBasket::GetBasketUserID(), "LID" => SITE_ID, "ORDER_ID" => "NULL" ), false, false, array("ID", "CALLBACK_FUNC", "MODULE", "PRODUCT_ID", "QUANTITY", "DELAY", "CAN_BUY", "PRICE", "QUANTITY", "CURRENCY", "SUBSCRIBE", "PRODUCT_PROVIDER_CLASS") ); while ($arBasketItems = $dbBasketItems->Fetch()) { $arBasketItems['QUANTITY'] = $arParams['QUANTITY_FLOAT'] == 'Y' ? DoubleVal($arBasketItems['QUANTITY']) : IntVal($arBasketItems['QUANTITY']); $quantityTmp = $arParams['QUANTITY_FLOAT'] == 'Y' ? DoubleVal($_REQUEST["QUANTITY_".$arBasketItems["ID"]]) : IntVal($_REQUEST["QUANTITY_".$arBasketItems["ID"]]); if ($arBasketItems["DELAY"] == "N" && $arBasketItems["CAN_BUY"] == "Y") { $arFields = array(); if (in_array("QUANTITY", $arParams["COLUMNS_LIST"])) $arFields["QUANTITY"] = $quantityTmp; if (count($arFields) > 0 && ($arBasketItems["QUANTITY"] != $arFields["QUANTITY"] && in_array("QUANTITY", $arParams["COLUMNS_LIST"]))) CSaleBasket::Update($arBasketItems["ID"], $arFields); } } } } CSaleBasket::UpdateBasketPrices(CSaleBasket::GetBasketUserID(), SITE_ID); $bShowReady = False; $bShowDelay = False; $bShowSubscribe = False; $bShowNotAvail = False; $allSum = 0; $allWeight = 0; $allCurrency = CSaleLang::GetLangCurrency(SITE_ID); $allVATSum = 0; $arResult["ITEMS"]["AnDelCanBuy"] = Array(); $arResult["ITEMS"]["DelDelCanBuy"] = Array(); $arResult["ITEMS"]["nAnCanBuy"] = Array(); $arResult["ITEMS"]["ProdSubscribe"] = Array(); $DISCOUNT_PRICE_ALL = 0; $arVariableAliases = CComponentEngine::MakeComponentVariableAliases(array(), $arParams["VARIABLE_ALIASES"]); $arBasketItems = array(); $arBasketItemsTmp = array(); $dbBasketItems = CSaleBasket::GetList( array( "NAME" => "ASC", "ID" => "ASC" ), array( "FUSER_ID" => CSaleBasket::GetBasketUserID(), "LID" => SITE_ID, "ORDER_ID" => "NULL" ), false, false, array("ID", "NAME", "CALLBACK_FUNC", "MODULE", "PRODUCT_ID", "QUANTITY", "DELAY", "CAN_BUY", "PRICE", "WEIGHT", "DETAIL_PAGE_URL", "NOTES", "CURRENCY", "VAT_RATE", "CATALOG_XML_ID", "PRODUCT_XML_ID", "SUBSCRIBE", "DISCOUNT_PRICE", "PRODUCT_PROVIDER_CLASS") ); $arItemsIDs = array(); $arItemsInBasketIDs = array(); while ($arItems = $dbBasketItems->GetNext()) { $arItemsIDs[] = $arItems["PRODUCT_ID"]; $arItemsInBasketIDs[$arItems["PRODUCT_ID"]] = $arItems["ID"] ; $arItems['QUANTITY'] = $arParams['QUANTITY_FLOAT'] == 'Y' ? number_format(DoubleVal($arItems['QUANTITY']), 2, '.', '') : IntVal($arItems['QUANTITY']); $arItems["PROPS"] = Array(); if(in_array("PROPS", $arParams["COLUMNS_LIST"])) { $dbProp = CSaleBasket::GetPropsList(Array("SORT" => "ASC", "ID" => "ASC"), Array("BASKET_ID" => $arItems["ID"], "!CODE" => array("CATALOG.XML_ID", "PRODUCT.XML_ID"))); while($arProp = $dbProp -> GetNext()) $arItems["PROPS"][] = $arProp; } $arItems["PRICE_VAT_VALUE"] = (($arItems["PRICE"] / ($arItems["VAT_RATE"] +1)) * $arItems["VAT_RATE"]); $arItems["PRICE_FORMATED"] = SaleFormatCurrency($arItems["PRICE"], $arItems["CURRENCY"]); $arItems["WEIGHT"] = DoubleVal($arItems["WEIGHT"]); $arItems["WEIGHT_FORMATED"] = roundEx(DoubleVal($arItems["WEIGHT"]/$arParams["WEIGHT_KOEF"]), SALE_VALUE_PRECISION)." ".$arParams["WEIGHT_UNIT"]; $arBasketItemsTmp[$arItems["PRODUCT_ID"]] = $arItems; } //--DETAIL_PHOTOS $arBasketItemImgs = array(); $arSkuItemsIDsForPhoto = array(); $arBind = array(); $dbItemUrl = CIBlockElement::GetList(array(), array("ID"=>$arItemsIDs), false, false, array("DETAIL_PAGE_URL", "ID", "DETAIL_PICTURE", "PROPERTY_CML2_LINK")); $dbItemUrl->SetUrlTemplates(htmlspecialcharsbx($arParams["CATALOG_FOLDER"])."?".$arVariableAliases["SECTION_ID"]."=#SECTION_ID#"."&".$arVariableAliases["ELEMENT_ID"]."=#ELEMENT_ID#"); while ($arItem = $dbItemUrl->GetNext()) { if (isset($arBasketItemsTmp[$arItem["ID"]])) $arBasketItemsTmp[$arItem["ID"]]["DETAIL_PAGE_URL"] = $arItem["DETAIL_PAGE_URL"]; $photo = ""; $photo = CFile::GetFileArray($arItem["DETAIL_PICTURE"]); if (!$photo && $arItem["PROPERTY_CML2_LINK_VALUE"]) { $arSkuItemsIDsForPhoto[] = $arItem["PROPERTY_CML2_LINK_VALUE"]; $arBind[$arItem["PROPERTY_CML2_LINK_VALUE"]][] = $arItemsInBasketIDs[$arItem["ID"]]; } if ($photo) { $arBasketItemImgs[$arItemsInBasketIDs[$arItem["ID"]]] = $photo; } } $arBasketItems = array_values($arBasketItemsTmp); //--DETAIL_PHOTOS if (is_array($arSkuItemsIDsForPhoto) && !empty($arSkuItemsIDsForPhoto)) { $arSkuItemsIDsForPhoto = array_unique($arSkuItemsIDsForPhoto); $dbAddProps = CIBlockElement::GetList(array(), array("ID"=>$arSkuItemsIDsForPhoto), false, false, array("ID", "DETAIL_PICTURE")); while ($arAddProps = $dbAddProps->GetNext()) { $photo = ""; $photo = CFile::GetFileArray($arAddProps["DETAIL_PICTURE"]); if ($photo) { foreach ($arBind[$arAddProps["ID"]] as $val) $arBasketItemImgs[$val] = $photo; } } } $arResult["ITEMS_IMG"] = $arBasketItemImgs; //-- foreach($arBasketItems as $arItems) { if ($arItems["DELAY"] == "N" && $arItems["CAN_BUY"] == "Y") { $allSum += ($arItems["PRICE"] * $arItems["QUANTITY"]); $allWeight += ($arItems["WEIGHT"] * $arItems["QUANTITY"]); $allVATSum += roundEx($arItems["PRICE_VAT_VALUE"] * $arItems["QUANTITY"], SALE_VALUE_PRECISION); } if ($arItems["DELAY"] == "N" && $arItems["CAN_BUY"] == "Y") { $bShowReady = True; if(DoubleVal($arItems["DISCOUNT_PRICE"]) > 0) { $arItems["DISCOUNT_PRICE_PERCENT"] = $arItems["DISCOUNT_PRICE"]*100 / ($arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]); $arItems["DISCOUNT_PRICE_PERCENT_FORMATED"] = roundEx($arItems["DISCOUNT_PRICE_PERCENT"], SALE_VALUE_PRECISION)."%"; $DISCOUNT_PRICE_ALL += $arItems["DISCOUNT_PRICE"] * $arItems["QUANTITY"]; $arItems["FULL_PRICE"] = $arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]; $arItems["FULL_PRICE_FORMATED"] = SaleFormatCurrency($arItems["FULL_PRICE"], $arItems["CURRENCY"]); } $arResult["ITEMS"]["AnDelCanBuy"][] = $arItems; } elseif ($arItems["DELAY"] == "Y" && $arItems["CAN_BUY"] == "Y") { $bShowDelay = True; if(DoubleVal($arItems["DISCOUNT_PRICE"]) > 0) { $arItems["DISCOUNT_PRICE_PERCENT"] = $arItems["DISCOUNT_PRICE"]*100 / ($arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]); $arItems["DISCOUNT_PRICE_PERCENT_FORMATED"] = roundEx($arItems["DISCOUNT_PRICE_PERCENT"], SALE_VALUE_PRECISION)."%"; $DISCOUNT_PRICE_ALL += $arItems["DISCOUNT_PRICE"] * $arItems["QUANTITY"]; $arItems["FULL_PRICE"] = $arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]; $arItems["FULL_PRICE_FORMATED"] = SaleFormatCurrency($arItems["FULL_PRICE"], $arItems["CURRENCY"]); } $arResult["ITEMS"]["DelDelCanBuy"][] = $arItems; } elseif ($arItems["CAN_BUY"] == "N" && $arItems["SUBSCRIBE"] == "Y") { $bShowSubscribe = True; if(DoubleVal($arItems["DISCOUNT_PRICE"]) > 0) { $arItems["DISCOUNT_PRICE_PERCENT"] = $arItems["DISCOUNT_PRICE"]*100 / ($arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]); $arItems["DISCOUNT_PRICE_PERCENT_FORMATED"] = roundEx($arItems["DISCOUNT_PRICE_PERCENT"], SALE_VALUE_PRECISION)."%"; $DISCOUNT_PRICE_ALL += $arItems["DISCOUNT_PRICE"] * $arItems["QUANTITY"]; $arItems["FULL_PRICE"] = $arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]; $arItems["FULL_PRICE_FORMATED"] = SaleFormatCurrency($arItems["FULL_PRICE"], $arItems["CURRENCY"]); } $arResult["ITEMS"]["ProdSubscribe"][] = $arItems; } else { $bShowNotAvail = True; if(DoubleVal($arItems["DISCOUNT_PRICE"]) > 0) { $arItems["DISCOUNT_PRICE_PERCENT"] = $arItems["DISCOUNT_PRICE"]*100 / ($arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]); $arItems["DISCOUNT_PRICE_PERCENT_FORMATED"] = roundEx($arItems["DISCOUNT_PRICE_PERCENT"], SALE_VALUE_PRECISION)."%"; $DISCOUNT_PRICE_ALL += $arItems["DISCOUNT_PRICE"] * $arItems["QUANTITY"]; $arItems["FULL_PRICE"] = $arItems["DISCOUNT_PRICE"] + $arItems["PRICE"]; $arItems["FULL_PRICE_FORMATED"] = SaleFormatCurrency($arItems["FULL_PRICE"], $arItems["CURRENCY"]); } $arResult["ITEMS"]["nAnCanBuy"][] = $arItems; } } $arResult["ShowReady"] = (($bShowReady)?"Y":"N"); $arResult["ShowDelay"] = (($bShowDelay)?"Y":"N"); $arResult["ShowNotAvail"] = (($bShowNotAvail)?"Y":"N"); $arResult["ShowSubscribe"] = (($bShowSubscribe)?"Y":"N"); /* $dbDiscount = CSaleDiscount::GetList( array("SORT" => "ASC"), array( "LID" => SITE_ID, "ACTIVE" => "Y", "!>ACTIVE_FROM" => Date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL"))), "!<ACTIVE_TO" => Date($DB->DateFormatToPHP(CSite::GetDateFormat("FULL"))), "<=PRICE_FROM" => $allSum, ">=PRICE_TO" => $allSum, "USER_GROUPS" => $USER->GetUserGroupArray(), ), false, false, array("*") ); $arMinDiscount = array(); $dblMinPrice = $allSum; $arResult["DISCOUNT_PRICE"] = 0; $arResult["DISCOUNT_PERCENT"] = 0; while ($arDiscount = $dbDiscount->Fetch()) { $dblDiscount = 0; $allSum_tmp = $allSum; if ($arDiscount["DISCOUNT_TYPE"] == "P") { if($arParams["COUNT_DISCOUNT_4_ALL_QUANTITY"] == "Y") { foreach ($arResult["ITEMS"]["AnDelCanBuy"] as $arResultItem) { $curDiscount = roundEx(DoubleVal($arResultItem["PRICE"]) * DoubleVal($arResultItem["QUANTITY"]) * $arDiscount["DISCOUNT_VALUE"] / 100, SALE_VALUE_PRECISION); $dblDiscount += $curDiscount; } } else { foreach ($arResult["ITEMS"]["AnDelCanBuy"] as $arResultItem) { $curDiscount = roundEx(DoubleVal($arResultItem["PRICE"]) * $arDiscount["DISCOUNT_VALUE"] / 100, SALE_VALUE_PRECISION); $dblDiscount += $curDiscount * DoubleVal($arResultItem["QUANTITY"]); } } } else { $dblDiscount = roundEx(CCurrencyRates::ConvertCurrency($arDiscount["DISCOUNT_VALUE"], $arDiscount["CURRENCY"], $allCurrency), SALE_VALUE_PRECISION); } $allSum = $allSum - $dblDiscount; if ($dblMinPrice > $allSum) { $dblMinPrice = $allSum; $arMinDiscount = $arDiscount; } $allSum = $allSum_tmp; } if (!empty($arMinDiscount)) { if ($arMinDiscount["DISCOUNT_TYPE"] == "P") { $arResult["DISCOUNT_PERCENT"] = $arMinDiscount["DISCOUNT_VALUE"]; $countItems = count($arResult["ITEMS"]["AnDelCanBuy"]); for ($bi = 0; $bi < $countItems; $bi++) { if($arParams["COUNT_DISCOUNT_4_ALL_QUANTITY"] == "Y") { $curDiscount = roundEx(DoubleVal($arResult["ITEMS"]["AnDelCanBuy"][$bi]["PRICE"]) * DoubleVal($arResult["ITEMS"]["AnDelCanBuy"][$bi]["QUANTITY"]) * $arMinDiscount["DISCOUNT_VALUE"] / 100, SALE_VALUE_PRECISION); $arResult["DISCOUNT_PRICE"] += $curDiscount; } else { $curDiscount = roundEx(DoubleVal($arResult["ITEMS"]["AnDelCanBuy"][$bi]["PRICE"]) * $arMinDiscount["DISCOUNT_VALUE"] / 100, SALE_VALUE_PRECISION); $arResult["DISCOUNT_PRICE"] += $curDiscount * DoubleVal($arResult["ITEMS"]["AnDelCanBuy"][$bi]["QUANTITY"]); } } $arResult["DISCOUNT_PERCENT_FORMATED"] = DoubleVal($arResult["DISCOUNT_PERCENT"])."%"; } else { $arResult["DISCOUNT_PRICE"] = CCurrencyRates::ConvertCurrency($arMinDiscount["DISCOUNT_VALUE"], $arMinDiscount["CURRENCY"], $allCurrency); $arResult["DISCOUNT_PRICE"] = roundEx($arResult["DISCOUNT_PRICE"], SALE_VALUE_PRECISION); } $allSum = $allSum - $arResult["DISCOUNT_PRICE"]; } */ $arOrder = array( 'SITE_ID' => SITE_ID, 'USER_ID' => $USER->GetID(), 'ORDER_PRICE' => $allSum, 'ORDER_WEIGHT' => $allWeight, 'BASKET_ITEMS' => $arResult["ITEMS"]["AnDelCanBuy"] ); $arOptions = array( 'COUNT_DISCOUNT_4_ALL_QUANTITY' => $arParams["COUNT_DISCOUNT_4_ALL_QUANTITY"], ); $arErrors = array(); CSaleDiscount::DoProcessOrder($arOrder, $arOptions, $arErrors); $allSum = 0; $allWeight = 0; $allVATSum = 0; $DISCOUNT_PRICE_ALL = 0; foreach ($arOrder['BASKET_ITEMS'] as &$arOneItem) { $allSum += ($arOneItem["PRICE"] * $arOneItem["QUANTITY"]); $allWeight += ($arOneItem["WEIGHT"] * $arOneItem["QUANTITY"]); $allVATSum += roundEx($arOneItem["PRICE_VAT_VALUE"] * $arOneItem["QUANTITY"], SALE_VALUE_PRECISION); $arOneItem["PRICE_FORMATED"] = SaleFormatCurrency($arOneItem["PRICE"], $arOneItem["CURRENCY"]); $arOneItem["DISCOUNT_PRICE_PERCENT"] = $arOneItem["DISCOUNT_PRICE"]*100 / ($arOneItem["DISCOUNT_PRICE"] + $arOneItem["PRICE"]); $arOneItem["DISCOUNT_PRICE_PERCENT_FORMATED"] = roundEx($arOneItem["DISCOUNT_PRICE_PERCENT"], SALE_VALUE_PRECISION)."%"; $DISCOUNT_PRICE_ALL += $arOneItem["DISCOUNT_PRICE"] * $arOneItem["QUANTITY"]; } if (isset($arOneItem)) unset($arOneItem); $arResult["ITEMS"]["AnDelCanBuy"] = $arOrder['BASKET_ITEMS']; //$DISCOUNT_PRICE_ALL += $arResult["DISCOUNT_PRICE"]; $arResult["allSum"] = $allSum; $arResult["allWeight"] = $allWeight; $arResult["allWeight_FORMATED"] = roundEx(DoubleVal($allWeight/$arParams["WEIGHT_KOEF"]), SALE_VALUE_PRECISION)." ".$arParams["WEIGHT_UNIT"]; $arResult["allSum_FORMATED"] = SaleFormatCurrency($allSum, $allCurrency); $arResult["DISCOUNT_PRICE_FORMATED"] = SaleFormatCurrency($arResult["DISCOUNT_PRICE"], $allCurrency); if ($arParams['PRICE_VAT_SHOW_VALUE'] == 'Y') { $arResult["allVATSum"] = $allVATSum; $arResult["allVATSum_FORMATED"] = SaleFormatCurrency($allVATSum, $allCurrency); $arResult["allNOVATSum_FORMATED"] = SaleFormatCurrency(DoubleVal($arResult["allSum"]-$allVATSum), $allCurrency); } if ($arParams["HIDE_COUPON"] != "Y") $arCoupons = CCatalogDiscountCoupon::GetCoupons(); if (count($arCoupons) > 0) $arResult["COUPON"] = htmlspecialcharsbx($arCoupons[0]); if(count($arBasketItems)<=0) $arResult["ERROR_MESSAGE"] = GetMessage("SALE_EMPTY_BASKET"); $arResult["DISCOUNT_PRICE_ALL"] = $DISCOUNT_PRICE_ALL; $arResult["DISCOUNT_PRICE_ALL_FORMATED"] = SaleFormatCurrency($DISCOUNT_PRICE_ALL, $allCurrency); if (strlen($_REQUEST["BasketRefresh"]) > 0 || strlen($_REQUEST["action"]) > 0) { unset($_REQUEST["BasketRefresh"]); unset($_REQUEST["BasketOrder"]); $APPLICATION->RestartBuffer(); $data = array(); $data["price"] = $arResult["allSum_FORMATED"]; $data["is_discount"] = $arResult["DISCOUNT_PRICE"] ? true : false; $data["discount"] = $arResult["DISCOUNT_PRICE_FORMATED"]; $data["weight"] = $arResult["allWeight_FORMATED"]; $data["vat_excluded"] = $arResult["allNOVATSum_FORMATED"]; $data["vat_included"] = $arResult["allVATSum_FORMATED"]; $data["num_cart_items"] = count($arResult["ITEMS"]["AnDelCanBuy"]); $data["num_delay_items"] = count($arResult["ITEMS"]["DelDelCanBuy"]); $data["items"]["AnDelCanBuy"] = $arResult["ITEMS"]["AnDelCanBuy"]; if (SITE_CHARSET != "utf-8") $data = $APPLICATION->ConvertCharsetArray($data, SITE_CHARSET, "utf-8"); echo json_encode($data); die(); } $this->IncludeComponentTemplate(); ?>