Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

sasha181

Користувачі
  
  • Публікації

    137
  • З нами

  • Відвідування

Усі публікації користувача sasha181

  1. По ссылке ниже модуль и более функционален и устанавливается без проблем на любую модификацию opencart Смс рассылка и уведомления из Opencart И цены одни из самых низкив в интернете на смс рассылки.
  2. Хороший модуль. Спасибо большой за проделанную работу. Возникло только 2 вопроса: 1. почему не сделали добавление заказа в адмику магазина? Можно просто хотя бы пустые значения добавить в не заполненные поля. Это поможет не забыть случайно про заказ. Или этому есть свои причины? 2 как-то много мусора в bootstrap.css ? Просто 100 килобайт css для отрисовки одного окошка как-то слишком много. Для медленных клиентов это реально ощутимо. Например для тех, кто заходит со смарта в магазин. Может реализуете это компактнее в следующих версиях? Думаю, это не только мне нужно.
  3. В OcStore 0.2.2 просто катастрофическая ошибка в контроллере приёма оплаты через qiwi в файле catalog/controller/payment/qiwi.php в строке 143 нужно вместо if( $param->status = 60 ) {сделать if( $param->status == 60 ) { иначе при любом ответе от qiwi товар проставляется как оплаченный. В новой версии модуля не проверял, может и там ошибка есть. также сегодня когда испраил это, добавил расширенные комментарии при обработке ответов с сервера qiwi в итоге вот мой исправленный контроллер (может кому пригодится) ВНИМАНИЕ !!! Контроллер из версии OcStore 0.2.2. <?php class ControllerPaymentQiwi extends Controller { protected function index() { $this->data['button_confirm'] = $this->language->get('button_confirm'); $this->data['button_back'] = $this->language->get('button_back'); $this->data['action'] = 'https://w.qiwi.ru/setInetBill_utf.do'; $this->load->model('checkout/order'); $order_info = $this->model_checkout_order->getOrder($this->session->data['order_id']); // TETS $this->load->language('payment/qiwi'); $this->data['sub_text_info'] = $this->language->get('sub_text_info'); $this->data['sub_text_info_phone'] = $this->language->get('sub_text_info_phone'); // Переменные $this->data['from'] = $this->config->get('qiwi_shop_id'); $this->data['txn_id'] = $this->session->data['order_id']; $this->data['com'] = html_entity_decode($this->config->get('config_store'), ENT_QUOTES, 'UTF-8'); $this->data['summ'] = $this->currency->format($order_info['total'], $order_info['currency'], $order_info['value'], FALSE); $this->data['check_agt'] = false; $this->data['lifetime'] = (int)$this->config->get('qiwi_lifetime'); $this->data['return'] = HTTP_SERVER . 'index.php?route=checkout/success'; if ($this->request->get['route'] != 'checkout/guest_step_3') { $this->data['cancel_return'] = HTTP_SERVER . 'index.php?route=checkout/payment'; } else { $this->data['cancel_return'] = HTTP_SERVER . 'index.php?route=checkout/guest_step_2'; } if ($this->request->get['route'] != 'checkout/guest_step_3') { $this->data['back'] = HTTP_SERVER . 'index.php?route=checkout/payment'; } else { $this->data['back'] = HTTP_SERVER . 'index.php?route=checkout/guest_step_2'; } $this->id = 'payment'; if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/payment/qiwi.tpl')) { $this->template = $this->config->get('config_template') . '/template/payment/qiwi.tpl'; } else { $this->template = 'default/template/payment/qiwi.tpl'; } $this->render(); } public function confirm() { $this->load->model('checkout/order'); $order_info = $this->model_checkout_order->getOrder($this->session->data['order_id']); if(!$order_info) return; $order_id = $this->session->data['order_id']; if( $order_info['order_status_id'] == 0) { $this->model_checkout_order->confirm($order_id, $this->config->get('qiwi_order_status_progress_id'), 'QIWI'); return; } if( $order_info['order_status_id'] != $this->config->get('qiwi_order_status_progress_id')) { $this->model_checkout_order->update($order_id, $this->config->get('qiwi_order_status_progress_id'),'QIWI',TRUE); } } public function fail() { $this->redirect(HTTP_SERVER . 'index.php?route=checkout/payment'); return TRUE; } public function success() { $this->redirect(HTTP_SERVER . 'index.php?route=checkout/success'); return TRUE; } public function callback() { $s = new SoapServer(DIR_CONFIG . 'ishopclientws.wsdl'); $s->setClass('qiwiSoap'); $s->handle(); exit; } } class qiwiSoap extends model { public function __construct() { global $registry; $this->registry = $registry; } public function updateBill($param) { /* $k = var_export($param, true); $this->log->write('PHP Fatal Error: ' . $k . ' in qiwi'); */ // Проверка на ID магазина if($param->login != $this->config->get('qiwi_shop_id')) { $param->updateBillResult = 150; return $param; } $order_id = (int)$param->txn; $hash = strtoupper( md5( $order_id . strtoupper( md5($this->config->get('qiwi_password'))))); // Проверка на пароль if($param->password != $hash) { $param->updateBillResult = 150; return $param; } // Проверка на номер заказа $this->load->model('checkout/order'); $order_info = $this->model_checkout_order->getOrder($order_id); if ( ! $order_info) { $param->updateBillResult = 210; return $param; } $param->updateBillResult = 0; // Изменяем статус заказа $comment = 'QIWI'; $comments[50] = 'счёт выставлен'; $comments[52] = 'счёт проводится'; $comments[60] = 'счёт оплачен'; $comments[150] = 'счёт отменен пользователем или ошибка на терминале'; $comments[151] = 'счёт отменен (ошибка авторизации: недостаточно средств на балансе, отклонен абонентом оплате с лицевого счета оператора сотовой связи и т.п.)'; $comments[160] = 'счёт отменен'; $comments[161] = 'счёт отменен (истекло время)'; if(isset($comments[$param->status])) $comment .= ': '.$comments[$param->status]; // Стутс проведения счета. if( $param->status == 60 ) { if( $order_info['order_status_id'] == 0) { $this->model_checkout_order->confirm($order_id, $this->config->get('qiwi_order_status_id'), $comment); return $param; } if( $order_info['order_status_id'] != $this->config->get('qiwi_order_status_id')) { $this->model_checkout_order->update($order_id, $this->config->get('qiwi_order_status_id'), $comment, TRUE); } } elseif( $param->status >= 150) { if( $order_info['order_status_id'] == 0) { $this->model_checkout_order->confirm($order_id, $this->config->get('qiwi_order_status_cancel_id'), $comment); return $param; } if( $order_info['order_status_id'] != $this->config->get('qiwi_order_status_cancel_id')) { $this->model_checkout_order->update($order_id, $this->config->get('qiwi_order_status_cancel_id'), $comment, TRUE); } } else { if( $order_info['order_status_id'] == 0) { $this->model_checkout_order->confirm($order_id, $this->config->get('qiwi_order_status_progress_id'), $comment); return $param; } if( $order_info['order_status_id'] != $this->config->get('qiwi_order_status_progress_id')) { $this->model_checkout_order->update($order_id, $this->config->get('qiwi_order_status_progress_id'), $comment, TRUE); } } return $param; } } ?>
  4. Подскажите пожалуйста, где найти модуль для реализации баланса пользователя. Чтобы можно было его пополнять автоматически и оплачивать с него покупки. Просто раньше помню натыкался где-то на него. А сейчас не могу найти.

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.