Skip to content

Instantly share code, notes, and snippets.

@ildarkhasanshin
Created October 25, 2016 06:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ildarkhasanshin/36d955f9ee9168400680d9597497045a to your computer and use it in GitHub Desktop.
Save ildarkhasanshin/36d955f9ee9168400680d9597497045a to your computer and use it in GitHub Desktop.
bitrix basket
<?php
require_once ($_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/main/include/prolog_before.php');
if ( !defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true ) die();
define('NO_KEEP_STATISTIC', true);
CModule::IncludeModule('catalog');
CModule::IncludeModule('sale');
$arID = array();
$arBasketItems = array();
$dbBasketItems = CSaleBasket::GetList(
array(
'NAME' => 'ASC',
'ID' => 'ASC'
),
array(
'FUSER_ID' => CSaleBasket::GetBasketUserID(),
'LID' => SITE_ID,
'ORDER_ID' => 'NULL'
),
false,
false,
array(
'ID',
'CALLBACK_FUNC',
'MODULE',
'PRODUCT_ID',
'QUANTITY',
'PRODUCT_PROVIDER_CLASS'
)
);
while ($arItems = $dbBasketItems->Fetch()) {
if ('' != $arItems['PRODUCT_PROVIDER_CLASS'] || '' != $arItems['CALLBACK_FUNC']) {
CSaleBasket::UpdatePrice(
$arItems['ID'],
$arItems['CALLBACK_FUNC'],
$arItems['MODULE'],
$arItems['PRODUCT_ID'],
$arItems['QUANTITY'],
'N',
$arItems['PRODUCT_PROVIDER_CLASS']
);
$arID[] = $arItems['ID'];
}
}
if (!empty($arID)) {
$dbBasketItems = CSaleBasket::GetList(
array(
'NAME' => 'ASC',
'ID' => 'ASC'
),
array(
'ID' => $arID,
'ORDER_ID' => 'NULL'
),
false,
false,
array(
'ID',
'CALLBACK_FUNC',
'MODULE',
'PRODUCT_ID',
'QUANTITY',
'DELAY',
'CAN_BUY',
'PRICE',
'WEIGHT',
'PRODUCT_PROVIDER_CLASS',
'NAME'
)
);
while ($arItems = $dbBasketItems->Fetch()) {
$arBasketItems[] = $arItems;
}
}
$total = 0;
foreach ($arBasketItems as $basket_item) {
$total += $basket_item['PRICE'] * $basket_item['QUANTITY'];
}
$html = '
<a href="/personal/basket/" class="basket">
<span class="count">Корзина: ' . sizeof($arBasketItems) . '</span>
<span class="sum">Сумма: ' . $total . ' руб.</span>
</a>
';
echo $html;
die();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment