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

DenKuzmin

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

    113
  • З нами

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

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

  1. Подскажите, пожалуйста. У меня всё работает, но после оплаты в 3dsecure перекидывает на index.php?route=payment/rbs/callback&orderId=63afe0... с ошибкой 500. В личном кабинете, в транзакциях, успешный платёж вижу, а в успешный заказ не приходит. Где искать проблему? PS Было ещё такое, если убираю всё после index.php?route=payment/rbs/callback&orderId, то вылетала ошибка: Undefined index: order_id in /home/a0263196/domains/mebelmassive.ru/public_html/test/catalog/controller/payment/rbs.php on line 231 Line 231
  2. Поменял $this->data на $data. Ошибка пропала. Теперь выдаёт: Notice: Undefined index: cart_id in X:\openserver\OpenServer\domains\localhost\catalog\controller\payment\rbs.php on line 57 Notice: Undefined index: cart_id in X:\openserver\OpenServer\domains\localhost\catalog\controller\payment\rbs.php on line 65 Fatal error: Call to undefined function array_column() in X:\openserver\OpenServer\domains\localhost\system\library\rbs_discount.php on line 244 ...payment\rbs.php: ...rbs_discount.php:
  3. На osStore 1.5.5.1.2 В оформлении заказа, после нажатия Подтвердить на последнем пункте. Вылетают такие ошибки: Fatal error: Cannot re-assign $this in X:\openserver\OpenServer\domains\localhost\system\library\rbs.php on line 109 <?php /** * Интеграция платежного шлюза RBS с OpenCart */ class RBS { /** @var string $test Адрес тестового шлюза */ private $test_url = 'https://3dsec.sberbank.ru/payment/rest/'; /** @var string $prod_url Адрес боевого шлюза*/ private $prod_url = 'https://securepayments.sberbank.ru/payment/rest/'; /** @var string $language Версия страницы оплаты*/ private $language = 'ru'; private $defaultMeasurement = "шт"; /** @var string $version Версия плагина*/ private $version = '2.2.0'; /** @var string $login Логин продавца*/ private $login; /** @var string $password Пароль продавца */ private $password; /** @var string $mode Режим работы модуля (test/prod) */ private $mode; /** @var string $stage Стадийность платежа (one/two) */ private $stage; /** @var boolean $logging Логгирование (1/0) */ private $logging; /** @var string $currency Числовой код валюты в ISO 4217 */ private $currency; private $ofd_status; private $ffd_version; private $paymentMethodType; private $paymentObjectType; /** @var integer $taxSystem Код системы налогообложения */ public $taxSystem; public $taxType; public $discountHelper; public function __construct() { $this->library('rbs_discount'); $this->discountHelper = new rbsDiscount(); } /** * @return mixed */ public function getFFDVersion() { return $this->ffd_version; } /** * @return mixed */ public function getPaymentMethodType() { return $this->paymentMethodType; } /** * @return mixed */ public function getPaymentObjectType() { return $this->paymentObjectType; } /** * @return string */ public function getDefaultMeasurement() { return $this->defaultMeasurement; } /** * Магический метод, который заполняет инстанс * * @param $property * @param $value * @return $this */ public function __set($property, $value) { if (property_exists($this, $property)) { $this->$property = $value; } return $this; } /** * Формирование запроса в платежный шлюз и парсинг JSON-ответа * * @param string $method Метод запроса в ПШ * @param mixed[] $this->data Данные в запросе * @return mixed[] */ /* LINE 109:*/ private function gateway($method, $this->data) { // Добавления логина и пароля продавца к каждому запросу $this->data['userName'] = $this->login; $this->data['password'] = $this->password; $this->data['language'] = $this->language; // Выбор адреса ПШ в зависимости от выбранного режима if ($this->mode == 'test') { $url = $this->test_url; } else { $url = $this->prod_url; } $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $url.$method, CURLOPT_RETURNTRANSFER => true, CURLOPT_POST => true, CURLOPT_SSL_VERIFYHOST => false, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_POSTFIELDS => http_build_query($this->data, '', '&'), CURLOPT_HTTPHEADER => array('CMS: OpenCart 2.1.x', 'Module-Version: ' . $this->version), )); $response = curl_exec($curl); if ($this->logging) { $this->logger($url, $method, $data, $response); } $response = json_decode($response, true); curl_close($curl); return $response; } /** * Логирование запроса и ответа от ПШ * * @param string $url * @param string $method * @param mixed[] $request * @param mixed[] $response * @return integer */ private function logger($url, $method, $request, $response) { $this->library('log'); $logger = new Log('rbs_payment.log'); $logger->write("RBS PAYMENT: ".$url.$method."\nREQUEST: ".json_encode($request). "\nRESPONSE: ".$response."\n\n"); } /** * Регистрация заказа в ПШ * * @param string $order_number Номер заказа в магазине * @param integer $amount Сумма заказа * @param string $return_url Страница в магазине, на которую необходимо вернуть пользователя * @param null $orderBundle * @return mixed[] Ответ ПШ */ public function register_order($order_number, $amount, $return_url, $orderBundle = null) { $this->data = array( 'orderNumber' => $order_number . "_". time(), 'amount' => $amount, 'returnUrl' => $return_url, 'jsonParams' => json_encode( [ 'CMS:' => 'Opencart 2.1.x', 'Module-Version: ' => $this->version ] ), ); if ($this->currency != 0) { $this->data['currency'] = $this->currency; } if ($this->ofd_status && !empty($orderBundle)) { $this->data['taxSystem'] = $this->taxSystem; $this->data['orderBundle']['orderCreationDate'] = date('c'); $this->data['orderBundle'] = json_encode($orderBundle); } return $this->gateway($this->stage == 'two' ? 'registerPreAuth.do' : 'register.do', $this->data); } /** * Статус заказа в ПШ * * @param string $orderId Идентификатор заказа в ПШ * @return mixed[] Ответ ПШ */ public function get_order_status($orderId) { return $this->gateway('getOrderStatusExtended.do', array('orderId' => $orderId)); } /** * В версии 2.1 нет метода Loader::library() * Своя реализация * @param $library */ private function library($library) { $file = DIR_SYSTEM . 'library/' . str_replace('../', '', (string)$library) . '.php'; if (file_exists($file)) { include_once($file); } else { trigger_error('Error: Could not load library ' . $file . '!'); exit(); } } }
  4. Здравствуйте! Установил модуль сбербанка, который высылают вместе с инструкцией (стандартный модуль интернет-эквайринга). Модуль был для osStore 2.1, у меня osStore 1.5.5.1.2. Модуль адаптировал под 1.5.5.1.2. При оформлении заказа, если выбрана оплата через модуль сбер, в alert вылетает error. В консоли "jquery-1.8.3.js:8434 GET https://test.mebelmassive.ru/index.php?route=checkout/confirm 500". В чём может быть проблема?
  5. Привет. На сайте, после заполнения формы заказа, сразу перенаправляет на страницу Спасибо. Без оплаты. Где смотреть, чтобы отправлял на страницу оплаты, например PayPal, подскажите, пожалуйста? osStore 1.5
  6. Привет! Происходит странное дело при парсинге фото. У меня есть 2 товара со схожими артикулами: T005056 и T005056Б. Парсю фото с другого сайта для T005056Б. Фото попадает в товар, всё ок. При этом фото в товаре T005056 пропадает. Сделал с SEO-шаблоном, чтобы избежать замены фото в папке, но фотки в других товарах всё равно улетели. При этом на хостинге они остались, проверил. На скриншоте товар (Комод Оливия) на котором слетело фото. Обновлял товар, который под ним (Комод Оливия (белая эмаль)). Фото обновилось нормально, с новым названием по SEO-шаблону. Второй товар (Комод Оливия (белая эмаль)) это полная копия первого (Комод Оливия) только с другим артикулом и названием. Может у есть какие-то мысли по этому поводу?
  7. Здравствуйте. Установлен модуль Живая цена. Немного дописали, чтобы считал цену с +%, а именно: elseif ($pov['price_prefix'] == '+%') { $current_price = $price+$option_price; $option_price = round($current_price+$current_price*($pov['price']/100),2)-$price; } elseif ($pov['price_prefix'] == '-%') { $current_price = $price+$option_price; $option_price = round($current_price-$current_price*($pov['price']/100),2)-$price; } В Chrome, Mozilla, Opera и т.д. (на Windows) считает правильно. Прибавляет проценты от итоговой суммы всех опций. Проблема с Apple - Safari. В Safari +% только к изначальной цене товара, игнорируя опции. Не понятно, почему так происходит. Помогите, пожалуйста, разобраться.
  8. Как добавить цену с +% в опции? Допустим стоимость товара 1000 руб. Добавляю опцию: Цвет - значение Красный: - цена значения: +%25. После экспорта, админке почему-то получаю +1250 руб. вместо +%25. Как сделать, чтобы после импорта в цене к значению опции было +%25?
  9. Здравствуйте. OpenCart 1.5.5.1.2 В прайсе вот такая запись: В настройках вот так: В результате какой-то бред: Всё записал как "=" ВМЕСТО "+%". При этом ещё и размер залез, который вообще в парйсе не указан. Такая билиберда только в первом товаре. В товаре, который идёт второй строкой всё ок. НО во фронтенд значения опций с "+%" выдаёт как и это никак не прибавляется к цене, пока не сохраню товар через админку. После сохранения товара через админку всё ок: и это значение прибавляется к цене как и должно. Как так? Что сделать, чтобы всё работало?
×
×
  • Створити...

Important Information

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