Source for file UserOrderHistory.class.php
Documentation is available at UserOrderHistory.class.php
* Содержит класс UserOrderHistory
* @copyright ColoCall 2006
//require_once('core/modules/shop/components/OrderHistory.class.php');
//require_once('core/modules/shop/components/Discounts.class.php');
* Класс выводит список заказов текущего пользователя
* @param Document $document
public function __construct($name, $module, Document $document, array $params = null) {
parent::__construct($name, $module, $document, $params);
* Для вывода списка - вызываем дедовский метод загрузеи данных, поскольку в родиетльском работает AJAX
if ($this->getAction() == self::DEFAULT_ACTION_NAME) {
$result = parent::loadData();
* Добавлена хлебная крошка
* Order_detail сделан пользовательским типом
protected function view() {
//$discounts = Discounts::getInstance();
$this->document->componentManager->getComponentByName('breadCrumbs')->addCrumb();
$fieldOrderDetails = $this->getData()->getFieldByName('order_detail');
list ($details) = $fieldOrderDetails->getData();
$dom_details = $this->doc->createElement('recordset');
$dom_details->setAttribute('title', $this->translate('TXT_BASKET_SUMM'));
$fields = array('product_name', 'product_id', 'product_price', 'basket_count', 'product_summ');
foreach ($details as $detail) {
$dom_detail = $this->doc->createElement('record');
foreach ($fields as $fieldName) {
$dom_detail_field = $this->doc->createElement('field', $detail[$fieldName]);
$dom_detail_field->setAttribute('name', $fieldName);
$dom_detail->appendChild($dom_detail_field);
$summ += $detail['product_summ'];
$dom_details->appendChild($dom_detail);
//$dom_details->setAttribute('discount', $discounts->getDiscountForGroup());
$dom_details->setAttribute('summ', $summ);
//$dom_details->setAttribute('summ_with_discount', $discounts->calculateCost($summ));
//$this->addTranslation('TXT_BASKET_SUMM_WITH_DISCOUNT');
$fieldOrderDetails->setData($dom_details);
|