Автор Тема: Оплата наличными при получении  (Прочитано 888 раз)

15 Декабрь 2015, 12:37:18
  • Фрилансер
  • *
  • Сообщений: 164
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Всем доброго дня!
Есть такой модуль: cashondelivery
Оплата наличными при получении v0.7.5 - by PrestaShop
Позволяет принимать оплату наличными

Тема составлена для работы оплата наличными только, других оплат нет.
Вывод выбора оплаты в payment.tpl
<div class="row">
<div class="col-xs-12 col-md-6">
        <p class="payment_module">
            <a class="cash" href="{$link->getModuleLink('cashondelivery', 'validation', [], true)|escape:'html'}" title="{l s='Pay with cash on delivery (COD)' mod='cashondelivery'}" rel="nofollow">
            {l s='Pay with cash on delivery (COD)' mod='cashondelivery'}<br />
            {l s='You pay for the merchandise upon delivery' mod='cashondelivery'}
            </a>
        </p>
    </div>
</div>
Соответственно после нажатия переход на валидность validation.tpl
Нужно обойти  в payment.tpl
Данный ввод и перейти сразу в validation.tpl
То-есть эмитировать выбор и нажатие.
Можно конечно напрямую по адресу
<script type="text/javascript">
document.location.replace("http://сайт/index.php?fc=module&module=cashondelivery&controller=validation");
</script>
Но может есть вариант другой.
Эраны во вложении.
Спасибо!




 
15 Декабрь 2015, 12:44:58
Ответ #1
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Измените шаблон  payment.tpl, сделайте ссылку в виде кнопки для перехода на следующий этап.
Полностью убрать не получится. Этот хук определяет разрешенные методы оплаты.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
15 Декабрь 2015, 13:17:39
Ответ #2
  • Фрилансер
  • *
  • Сообщений: 164
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Спасибо за совет!
Но вы наверно не правельно меня поняли.Не убрать, это то-то понятно а обойти этот выбор и перейти сразу к валидации его.
Обойти
<div class="row">
   <div class="col-xs-12 col-md-6">
        <p class="payment_module">
            <a class="cash" href="{$link->getModuleLink('cashondelivery', 'validation', [], true)|escape:'html'}" title="{l s='Pay with cash on delivery (COD)' mod='cashondelivery'}" rel="nofollow">
               {l s='Pay with cash on delivery (COD)' mod='cashondelivery'}<br />
               {l s='You pay for the merchandise upon delivery' mod='cashondelivery'}
            </a>
        </p>
    </div>
</div>
Если я ставлю
<script type="text/javascript">
document.location.replace("http://сайт/index.php?fc=module&module=cashondelivery&controller=validation");
</script>
То переход есть с пропуском этого блока. Модуль то сохраняется.
Но вопрос как сделать такой переход без javascript а эмитируя нажатие.
Спасибо!
15 Декабрь 2015, 13:29:07
Ответ #3
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86688
  • Репутация: +25428/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Без js не сделать, имитацию событий тоже будете делать на js.   
15 Декабрь 2015, 15:29:17
Ответ #4
  • Фрилансер
  • *
  • Сообщений: 164
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Ну а что тут особого.
В payment.tpl ставим
<script type="text/javascript">
 document.location.replace("http://сайт/index.php?fc=module&module=cashondelivery&controller=validation");
 </script>

В validation.tpl ставим
<button type="submit" class="exclusive_large" ></button>

<script language="JavaScript">
 $('.exclusive_large').click(); 
 </script>

И все.. Происходит переход на валид и там автомат клик.