Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

ArtemiY777

Пользователи
  
  • Posts

    126
  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

ArtemiY777's Achievements

Collaborator

Collaborator (7/14)

  • First Post
  • Collaborator
  • Conversation Starter
  • Week One Done
  • One Month Later

Recent Badges

0

Reputation

  1. Всем привет. Я использую потому чтонусные балы в качестве баланса лиэтового счеи клиени (полностью переименовал). с помощью $data['reward'] = $this->customer->getRewardPoints(); я подтягиваю информацию о балансе на страницу личного кабинеи после авторизации (дабы клиент сразу вигдел), подскажите, как вывести информацию о балансе клиени для админа на страниэто заказа (order/info), а то каждый раз приходится в профиль клиени заходить и смотреть
  2. подскажите пожалуйси по тот же теме, На сайте проходит оформление (регистрация) через Simple. Мне необходимо поле для заполнения "Отчество". Даого не предусмотрено в Simple. Можно добавить поле с отображением его в комменириях, но мне икой вариант не подходит. Вариант с заполнением Имени и Отчества в одном поле мне тоже не подходит. Решил в итоге использовать поле из иблицы данных "fax". В simple добавил поле ввода с вывегдение в иблицу "fax". В иблэто данных все исправно отображается, Но столкнулся с проблемой, что не могу вывести sale/order_info.tpl
  3. с недавних пор пропала возможность выпотому чтора региона, раньше все рилиило исправно. проверил все (регионы включены,относятся к РФ). Модуль заказов Simpla
  4. Проблема заключается в ошибке при сохранение редактированного заказа из админке. Ошибка : "необходимо выбрать способ досивки!!". Но гдело в том что он выбран проблема известная,но ик и не нашел четкого ее решения. Много писали про подобные ситуации,и предлагалось это решить путем уднония модификатора Api, но его у меня нет и соответственно мне не подходит данное решение. вопрос: возможно ли просто решить данную проблему путем простого отключения проверки в php файлах?
  5. к сожнонию не рилииет Notice: Undefined index: payment_phone in /home/c/cg57112/bamper99.ru/public_html/system/storage/modification/catalog/controller/account/order.php on line 248
  6. Для того, чтоб клиент на одной страниэто вигдел всю информацию от и до. Налиная от заказанного товара, до заполненных им данных. Это я вам как продавец говорю) это вы опытный пользователь, но ко мне много клиентов обращается, которые впервые с компьютером столкнулись. и им трудно обьяснить как посмотреть их заказ, не говорю уже как посмотреть и информацию которую они заполнили о себе. Часто бывает что они не правильно фамилию написали свою и на первых эипах даже не заметили это (при оформлении заказа), а когда приходит товар на пункт выдаче, то соответственно никто им не выдает, ик как фамилии не совпадают. Поэтому не лишним бугдет некоторые вещи дублировать для клиентов
  7. каилог/контроллер/аккаунт/order.php ocStore 2.3.0.2.3 <?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['text_empty'] = $this->language->get('text_empty'); $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'); $this->response->setOutput($this->load->view('account/order_list', $data)); } public function info() { $this->load->language('account/order'); if (isset($this->request->get['order_id'])) { $order_id = $this->request->get['order_id']; } else { $order_id = 0; } if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('account/order/info', 'order_id=' . $order_id, true); $this->response->redirect($this->url->link('account/login', '', true)); } $this->load->model('account/order'); $order_info = $this->model_account_order->getOrder($order_id); if ($order_info) { $this->document->setTitle($this->language->get('text_order')); $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['breadcrumbs'][] = array( 'text' => $this->language->get('text_order'), 'href' => $this->url->link('account/order/info', 'order_id=' . $this->request->get['order_id'] . $url, true) ); $data['heading_title'] = $this->language->get('text_order'); $data['text_order_detail'] = $this->language->get('text_order_detail'); $data['text_invoice_no'] = $this->language->get('text_invoice_no'); $data['text_order_id'] = $this->language->get('text_order_id'); $data['text_date_added'] = $this->language->get('text_date_added'); $data['text_shipping_method'] = $this->language->get('text_shipping_method'); $data['text_shipping_address'] = $this->language->get('text_shipping_address'); $data['text_payment_method'] = $this->language->get('text_payment_method'); $data['text_payment_address'] = $this->language->get('text_payment_address'); $data['text_history'] = $this->language->get('text_history'); $data['text_comment'] = $this->language->get('text_comment'); $data['text_no_results'] = $this->language->get('text_no_results'); $data['column_name'] = $this->language->get('column_name'); $data['column_model'] = $this->language->get('column_model'); $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_action'] = $this->language->get('column_action'); $data['column_date_added'] = $this->language->get('column_date_added'); $data['column_status'] = $this->language->get('column_status'); $data['column_comment'] = $this->language->get('column_comment'); $data['button_reorder'] = $this->language->get('button_reorder'); $data['button_return'] = $this->language->get('button_return'); $data['button_continue'] = $this->language->get('button_continue'); if (isset($this->session->data['error'])) { $data['error_warning'] = $this->session->data['error']; unset($this->session->data['error']); } else { $data['error_warning'] = ''; } if (isset($this->session->data['success'])) { $data['success'] = $this->session->data['success']; unset($this->session->data['success']); } else { $data['success'] = ''; } if ($order_info['invoice_no']) { $data['invoice_no'] = $order_info['invoice_prefix'] . $order_info['invoice_no']; } else { $data['invoice_no'] = ''; } $data['order_id'] = $this->request->get['order_id']; $data['date_added'] = date($this->language->get('date_format_short'), strtotime($order_info['date_added'])); if ($order_info['payment_address_format']) { $format = $order_info['payment_address_format']; } else { $format = '{firstname} {lastname}' + сюда необходимо!!!!!!!!; } $find = array( '{firstname}', '{lastname}', '{address_2}', '{city}', '{postcode}', '{zone}', '{zone_code}', '{country}' ); $replace = array( 'firstname' => $order_info['payment_firstname'], 'lastname' => $order_info['payment_lastname'], 'address_2' => $order_info['payment_address_2'], 'city' => $order_info['payment_city'], 'postcode' => $order_info['payment_postcode'], 'zone' => $order_info['payment_zone'], 'zone_code' => $order_info['payment_zone_code'], 'country' => $order_info['payment_country'] ); $data['payment_address'] = str_replace(array("\r\n", "\r", "\n"), '<br />', preg_replace(array("/\s\s+/", "/\r\r+/", "/\n\n+/"), '<br />', trim(str_replace($find, $replace, $format)))); $data['payment_method'] = $order_info['payment_method']; if ($order_info['shipping_address_format']) { $format = $order_info['shipping_address_format']; } else { $format = '{country}'. "\n" . '{zone}'. "\n" . '{city} {postcode}' . "\n" . '{address_1}' . "\n" . '{address_2}' ; } $find = array( '{firstname}', '{lastname}', '{company}', '{address_1}', '{address_2}', '{city}', '{postcode}', '{zone}', '{zone_code}', '{country}' ); $replace = array( 'firstname' => $order_info['shipping_firstname'], 'lastname' => $order_info['shipping_lastname'], 'company' => $order_info['shipping_company'], 'address_1' => $order_info['shipping_address_1'], 'address_2' => $order_info['shipping_address_2'], 'city' => $order_info['shipping_city'], 'postcode' => $order_info['shipping_postcode'], 'zone' => $order_info['shipping_zone'], 'zone_code' => $order_info['shipping_zone_code'], 'country' => $order_info['shipping_country'] ); $data['shipping_address'] = str_replace(array("\r\n", "\r", "\n"), '<br />', preg_replace(array("/\s\s+/", "/\r\r+/", "/\n\n+/"), '<br />', trim(str_replace($find, $replace, $format)))); $data['shipping_method'] = $order_info['shipping_method']; $this->load->model('tool/upload'); $this->load->model('catalog/product'); // Products $data['products'] = array(); $products = $this->model_account_order->getOrderProducts($this->request->get['order_id']); foreach ($products as $product) { $product_info = $this->model_catalog_product->getProduct($product['product_id']); $option_data = array(); $options = $this->model_account_order->getOrderOptions($this->request->get['order_id'], $product['order_product_id']); foreach ($options as $option) { if ($option['type'] != 'file') { $value = $option['value']; } else { $upload_info = $this->model_tool_upload->getUploadByCode($option['value']); if ($upload_info) { $value = $upload_info['name']; } else { $value = ''; } } $option_data[] = array( 'name' => $option['name'], 'value' => (utf8_strlen($value) > 20 ? utf8_substr($value, 0, 20) . '..' : $value) ); } $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'], 'model' => $product['model'], 'manufacturer' => $product_info['manufacturer'], 'option' => $option_data, '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) ); } // Voucher $data['vouchers'] = array(); $vouchers = $this->model_account_order->getOrderVouchers($this->request->get['order_id']); foreach ($vouchers as $voucher) { $data['vouchers'][] = array( 'description' => $voucher['description'], 'amount' => $this->currency->format($voucher['amount'], $order_info['currency_code'], $order_info['currency_value']) ); } // Totals $data['totals'] = array(); $totals = $this->model_account_order->getOrderTotals($this->request->get['order_id']); foreach ($totals as $total) { $data['totals'][] = array( 'title' => $total['title'], 'text' => $this->currency->format($total['value'], $order_info['currency_code'], $order_info['currency_value']), ); } $data['comment'] = nl2br($order_info['comment']); // History $data['histories'] = array(); $results = $this->model_account_order->getOrderHistories($this->request->get['order_id']); foreach ($results as $result) { $data['histories'][] = array( 'date_added' => date($this->language->get('date_format_short'), strtotime($result['date_added'])), 'status' => $result['status'], 'comment' => $result['notify'] ? nl2br($result['comment']) : '' ); } $data['continue'] = $this->url->link('account/order', '', 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'); $this->response->setOutput($this->load->view('account/order_info', $data)); } else { $this->document->setTitle($this->language->get('text_order')); $data['heading_title'] = $this->language->get('text_order'); $data['text_error'] = $this->language->get('text_error'); $data['button_continue'] = $this->language->get('button_continue'); $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', '', true) ); $data['breadcrumbs'][] = array( 'text' => $this->language->get('text_order'), 'href' => $this->url->link('account/order/info', 'order_id=' . $order_id, true) ); $data['continue'] = $this->url->link('account/order', '', 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'); $this->response->setOutput($this->load->view('error/not_found', $data)); } } public function reorder() { $this->load->language('account/order'); if (isset($this->request->get['order_id'])) { $order_id = $this->request->get['order_id']; } else { $order_id = 0; } $this->load->model('account/order'); $order_info = $this->model_account_order->getOrder($order_id); if ($order_info) { if (isset($this->request->get['order_product_id'])) { $order_product_id = $this->request->get['order_product_id']; } else { $order_product_id = 0; } $order_product_info = $this->model_account_order->getOrderProduct($order_id, $order_product_id); if ($order_product_info) { $this->load->model('catalog/product'); $product_info = $this->model_catalog_product->getProduct($order_product_info['product_id']); if ($product_info) { $option_data = array(); $order_options = $this->model_account_order->getOrderOptions($order_product_info['order_id'], $order_product_id); foreach ($order_options as $order_option) { if ($order_option['type'] == 'select' || $order_option['type'] == 'radio' || $order_option['type'] == 'image') { $option_data[$order_option['product_option_id']] = $order_option['product_option_value_id']; } elseif ($order_option['type'] == 'checkbox') { $option_data[$order_option['product_option_id']][] = $order_option['product_option_value_id']; } elseif ($order_option['type'] == 'text' || $order_option['type'] == 'textarea' || $order_option['type'] == 'date' || $order_option['type'] == 'datetime' || $order_option['type'] == 'time') { $option_data[$order_option['product_option_id']] = $order_option['value']; } elseif ($order_option['type'] == 'file') { $option_data[$order_option['product_option_id']] = $this->encryption->encrypt($order_option['value']); } } $this->cart->add($order_product_info['product_id'], $order_product_info['quantity'], $option_data); $this->session->data['success'] = sprintf($this->language->get('text_success'), $this->url->link('product/product', 'product_id=' . $product_info['product_id']), $product_info['name'], $this->url->link('checkout/cart')); unset($this->session->data['shipping_method']); unset($this->session->data['shipping_methods']); unset($this->session->data['payment_method']); unset($this->session->data['payment_methods']); } else { $this->session->data['error'] = sprintf($this->language->get('error_reorder'), $order_product_info['name']); } } } $this->response->redirect($this->url->link('account/order/info', 'order_id=' . $order_id)); } }
  8. подскажите, как вывести имейл и телефон покупателя в платоженый адрес? if ($order_info['payment_address_format']) { $format = $order_info['payment_address_format']; } else { $format = '{firstname} {lastname}' . "\n" . '{телефон}'. "\n" . '{имейл}'; } $find = array( '{firstname}', '{lastname}', '{address_2}', '{city}', '{postcode}', '{zone}', '{zone_code}', '{country}' ); $replace = array( 'firstname' => $order_info['payment_firstname'], 'lastname' => $order_info['payment_lastname'], 'address_2' => $order_info['payment_address_2'], 'city' => $order_info['payment_city'], 'postcode' => $order_info['payment_postcode'], 'zone' => $order_info['payment_zone'], 'zone_code' => $order_info['payment_zone_code'], 'country' => $order_info['payment_country'] ); как подтянуть сюда эти данные?
  9. Долго ищу, но не нашел ничего нужного. Необходимо менять ситус для каждого товара из заказа покупателя. Данный функционал необходим в админке для удобство обрилитки заказа, понимать какой товар на склагде, какой в пути, а какой еещё не заказан у посивщика. Версия ocStore 2.3.0.2.3
  10. подскажите пожалуйси,как сгделать этот самый 301 редирект? Примеры страниц, которые согдержат одинаковый контент и различаются только GET-параметрами в URL
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.