Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

IvanDevelop

Newbie
  
  • Posts

    4
  • Joined

  • Last visited

Recent Profile Visitors

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

IvanDevelop's Achievements

Newbie

Newbie (1/14)

  • First Post
  • Week One Done
  • One Month Later
  • One Year In
  • Conversation Starter

Recent Badges

0

Reputation

  1. Допилил \system\storage\modification\catalog\controller\account\order.php перед строкой $this->response->setOutput($this->load->view('account/order_info', $data)); Следующее: if ($order_info['payment_code'] && $order_info['payment_code']=='tinkoff') { $this->load->model('extension/payment/'.$order_info['payment_code']); if (isset($this->session->data['order_id'])) { $tmp_order_id=$this->session->data['order_id']; } $this->session->data['order_id']=$order_info['order_id']; $params = [ 'terminalkey' => $this->config->get('tinkoff_terminal_key'), 'secret' => $this->config->get('tinkoff_secret_key'), 'currency' => $order_info['currency_code'], 'language' => $this->config->get('tinkoff_payment_language'), 'frame' => 'true', 'amount' => $order_info['total'], 'order' => $order_info['order_id'], 'description' => $order_info['comment'], 'email' => $order_info['email'], 'phone' => $order_info['telephone'] ]; $view = [ 'payment' => [ 'params' => $params ] ]; $data['payment_view'] = $this->load->view($this->config->get('config_template') . '/extension/payment/tinkoff_checkout_custom.tpl', $view); if (isset($tmp_order_id)) { $this->session->data['order_id']=$tmp_order_id; } else { unset($this->session->data['order_id']); } } И создал view своё: <style>.tinkoffPayRow{display:block;margin:1%;width:160px;}</style> <script src="https://securepay.tinkoff.ru/html/payForm/js/tinkoff_v2.js"></script> <form name="TinkoffPayForm" onsubmit="pay(this); return false;"> <?php foreach($payment['params'] as $name => $value): ?> <input type="hidden" name="<?php echo $name; ?>" value="<?php echo $value; ?>"> <?php endforeach; ?> <input class="tinkoffPayRow btn btn-success" type="submit" value="Оплатить"> </form> Пока всё в норме, осталось прикрутить страницы ответов со сменой статуса и т.п. После продолжу пост.
  2. Решили проблему? В документации есть такие пункты: Если вы хотите использовать страницы успешного/неуспешного платежа расположенные на вашем сайте, необходимо прописать: URL страницы успешного платежа: <название_сайта>/index.php?route=checkout/success URL страницы неуспешного платежа: <название_сайта>/index.php?route=extension/payment/tinkoff/failure В поле URL для нотификации необходимо прописать: URL для нотификации: <имя_вашего_домена>/index.php?route=extension/payment/tinkoff/callback Правда у меня другая проблема, кнопка оплаты не появляется ни где, хотя модуль по ходу формирования заказа цепляется и проходит инициализация.
  3. Там всё логично по коду, как то отрендерить view надо в контроллере по аналогии с методом robokassa. Как мне кажется... Попробовал насильно форму тз документации tinfoff влепить: $form = <<<FORM <style>.tinkoffPayRow{display:block;margin:1%;width:160px;}</style> <script src="https://securepay.tinkoff.ru/html/payForm/js/tinkoff_v2.js"></script> <form name="TinkoffPayForm" onsubmit="pay(this); return false;"> <input class="tinkoffPayRow" type="hidden" name="terminalkey" value="1526809637201DEMO"> <input class="tinkoffPayRow" type="hidden" name="frame" value="true"> <input class="tinkoffPayRow" type="hidden" name="language" value="ru"> <input class="tinkoffPayRow" type="text" placeholder="Сумма заказа" name="amount" required> <input class="tinkoffPayRow" type="text" placeholder="Номер заказа" name="order"> <input class="tinkoffPayRow" type="text" placeholder="Описание заказа" name="description"> <input class="tinkoffPayRow" type="text" placeholder="ФИО плательщика" name="name"> <input class="tinkoffPayRow" type="text" placeholder="E-mail" name="email"> <input class="tinkoffPayRow" type="text" placeholder="Контактный телефон" name="phone"> <input class="tinkoffPayRow btn btn-success" type="submit" value="Оплатить"> </form> FORM; $data['payment_view'] = $form; Кнопка появляется, оплата работает, но ни как не связана с базой. Шаблон tinkoff_checkout.tpl, тут и есть вывод нужной формы.
  4. Здравствуйте! При установке модуля возникла проблема, модуль встал, но на странице заказа кнопки нет. Стал копаться и по аналогии с методом robokassa в файле: \system\storage\modification\catalog\controller\account\order.php Добавил код if ($order_info['payment_code'] && $order_info['payment_code']=='tinkoff') { $this->load->model('extension/payment/'.$order_info['payment_code']); if (isset($this->session->data['order_id'])) { $tmp_order_id=$this->session->data['order_id']; } $this->session->data['order_id']=$order_info['order_id']; $data['payment_view']=$this->load->controller($this->{'model_extension_payment_' .$order_info['payment_code']}); if (isset($tmp_order_id)) { $this->session->data['order_id']=$tmp_order_id; } else { unset($this->session->data['order_id']); } } И получаем ошибку: Unknown: Object of class Proxy could not be converted to string in /system/storage/modification/system/engine/loader.php on line 11 В инструкции по модулю нет ни чего про то что надо модифицироать контроллеры. Или модуль интегрируется как то иначе? В контроллере \system\storage\modification\catalog\controller\checkout\checkout_simple.php он отрабатывает без проблем. Получается как то надо отрендерить view и присвоить в $data['payment_view'] в \system\storage\modification\catalog\controller\account\order.php которая и выводит кнопку оплаты.
Guest
×
  • 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.