В catalog\controller\account\order.php я взял код из метода Info вставил в тело функции index, вы сказали не туда, подскажите пожалуйста куда ее нужно вставить. И вы сказали не то заменил на $products = $this->model_account_order->getOrderProducts($this->request->get['order_id']);
ошибка Notice: Undefined index: order_id Подскажите что куда и почему. Я вижу обращение к модели но почему оно не работает не могу понять
<?php
class ControllerAccountOrder extends Controller {
public function index() {
if (!$this->customer->isLogged()) {
$this->session->data['redirect'] = $this->url->link('account/order', '', true);
$this->response->redirect($this->url->link('account/login', '', true));
}
$this->load->language('account/order');
$this->document->setTitle($this->language->get('heading_title'));
$url = '';
if (isset($this->request->get['page'])) {
$url .= '&page=' . $this->request->get['page'];
}
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/home')
);
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_account'),
'href' => $this->url->link('account/account', '', true)
);
$data['breadcrumbs'][] = array(
'text' => $this->language->get('heading_title'),
'href' => $this->url->link('account/order', $url, true)
);
$data['heading_title'] = $this->language->get('heading_title');
$data['heading_subtitle'] = $this->language->get('heading_subtitle');
$data['text_empty'] = $this->language->get('text_empty');
$data['column_name'] = $this->language->get('column_name');
$data['column_quantity'] = $this->language->get('column_quantity');
$data['column_price'] = $this->language->get('column_price');
$data['column_total'] = $this->language->get('column_total');
$data['column_order_id'] = $this->language->get('column_order_id');
$data['column_customer'] = $this->language->get('column_customer');
$data['column_product'] = $this->language->get('column_product');
$data['column_total'] = $this->language->get('column_total');
$data['column_status'] = $this->language->get('column_status');
$data['column_date_added'] = $this->language->get('column_date_added');
$data['button_view'] = $this->language->get('button_view');
$data['button_ocstore_payeer_onpay'] = $this->language->get('button_ocstore_payeer_onpay');
$data['button_ocstore_yk_onpay'] = $this->language->get('button_ocstore_yk_onpay');
$data['button_continue'] = $this->language->get('button_continue');
if (isset($this->request->get['page'])) {
$page = $this->request->get['page'];
} else {
$page = 1;
}
$data['orders'] = array();
$this->load->model('extension/payment/ocstore_payeer');
$this->load->model('extension/payment/ocstore_yk');
$this->load->model('account/order');
$order_total = $this->model_account_order->getTotalOrders();
$results = $this->model_account_order->getOrders(($page - 1) * 10, 10);
foreach ($results as $result) {
$product_total = $this->model_account_order->getTotalOrderProductsByOrderId($result['order_id']);
$voucher_total = $this->model_account_order->getTotalOrderVouchersByOrderId($result['order_id']);
$ocstore_yk_onpay_info = $this->model_extension_payment_ocstore_yk->checkLaterpay($result['order_id']);
$data['orders'][] = array(
'order_id' => $result['order_id'],
'name' => $result['firstname'] . ' ' . $result['lastname'],
'status' => $result['status'],
'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])),
'products' => ($product_total + $voucher_total),
'total' => $this->currency->format($result['total'], $result['currency_code'], $result['currency_value']),
'ocstore_payeer_onpay' => $this->model_extension_payment_ocstore_payeer->checkLaterpay($result['order_id']) ? $this->url->link('extension/payment/ocstore_payeer/laterpay', sprintf('order_id=%s&order_tt=%s', $result['order_id'], $result['total'], 'SSL')) : '',
'ocstore_yk_onpay' => $ocstore_yk_onpay_info['onpay'] ? $this->url->link('extension/payment/ocstore_yk/laterpay', sprintf('order_id=%s&order_ttl=%s&paymentType=%s', $result['order_id'], $result['total'], $ocstore_yk_onpay_info['payment_code']), 'SSL') : '',
'view' => $this->url->link('account/order/info', 'order_id=' . $result['order_id'], true),
);
}
$pagination = new Pagination();
$pagination->total = $order_total;
$pagination->page = $page;
$pagination->limit = 10;
$pagination->url = $this->url->link('account/order', 'page={page}', true);
$data['pagination'] = $pagination->render();
$data['results'] = sprintf($this->language->get('text_pagination'), ($order_total) ? (($page - 1) * 10) + 1 : 0, ((($page - 1) * 10) > ($order_total - 10)) ? $order_total : ((($page - 1) * 10) + 10), $order_total, ceil($order_total / 10));
$data['continue'] = $this->url->link('account/account', '', true);
$data['column_left'] = $this->load->controller('common/column_left');
$data['column_right'] = $this->load->controller('common/column_right');
$data['content_top'] = $this->load->controller('common/content_top');
$data['content_bottom'] = $this->load->controller('common/content_bottom');
$data['footer'] = $this->load->controller('common/footer');
$data['header'] = $this->load->controller('common/header');
// Products
$data['products'] = array();
$products = $this->model_account_order->getOrderProducts($this->request->get['order_id']);
foreach ($products as $product) {
$option_data = array();
$product_info = $this->model_catalog_product->getProduct($product['product_id']);
if ($product_info) {
$reorder = $this->url->link('account/order/reorder', 'order_id=' . $order_id . '&order_product_id=' . $product['order_product_id'], true);
} else {
$reorder = '';
}
$data['products'][] = array(
'name' => $product['name'],
'quantity' => $product['quantity'],
'price' => $this->currency->format($product['price'] + ($this->config->get('config_tax') ? $product['tax'] : 0), $order_info['currency_code'], $order_info['currency_value']),
'total' => $this->currency->format($product['total'] + ($this->config->get('config_tax') ? ($product['tax'] * $product['quantity']) : 0), $order_info['currency_code'], $order_info['currency_value']),
'reorder' => $reorder,
'return' => $this->url->link('account/return/add', 'order_id=' . $order_info['order_id'] . '&product_id=' . $product['product_id'], true)
);
}
$this->response->setOutput($this->load->view('account/order_list', $data));
}