<? // Вычисляем скидку global $carrotquest_API; if (COption::GetOptionString(CARROTQUEST_MODULE_ID,"cqActivateBonus")) $arResult = $carrotquest_API->CalcDiscount($arResult); // При оформлении заказа недоступны item-ы этого заказа. Запишем их в куки. if (COption::GetOptionString(CARROTQUEST_MODULE_ID,'cqTrackOrderConfirm') != '') CarrotQuestEventHandlers::SetBasketItemsCookie($arResult["BASKET_ITEMS"]) ?>
/** * Устанавливает Cookie для события оформления заказа * <b>Параметры:</b> * <var>$items</var> - содержимое корзины в формате Bitrix * <b>Возвращаемое значение:</b> нет */ static function SetBasketItemsCookie ($items) { if (!array_key_exists('carrotquest_basket_items', $_COOKIE) || !$_COOKIE['carrotquest_basket_items'] || $_COOKIE['carrotquest_basket_items'] == '[]') { $cookie = array(); // Кодировка Windows-1251 распознается некорректно... $lang = CLanguage::GetList($by="active", $order="desc", Array("NAME" => "russian")); $lang = $lang->Fetch(); foreach ($items as $value) { $item = array( "objectId" => $value['ID'], "objectName" => $value['NAME'], "objectUrl" => $_SERVER['HTTP_HOST'].$value['DETAIL_PAGE_URL'], "quantity" => $value['QUANTITY'], "price" => $value['PRICE'], ); if ($lang['CHARSET'] == 'windows-1251') CarrotQuestEventHandlers::ToUTF($item); array_push($cookie,$item); }; setcookie('carrotquest_basket_items', json_encode($cookie), 0, "/"); }; }