Перейти к содержанию
Форум поддержки пользователей VamShop

Видимость единственной радио-кнопки при выборе оплаты/доставки


shaklov

Рекомендуемые сообщения

Иногда нужно, чтобы напротив единственного варианта в оплате или доставке тоже была видна включенная "точечка" radio-button. Есть два способа:

Первый способ, с правкой php:

В checkout_shipping.php вместо строки (её можно просто закомментировать):

$quotes[$i]['methods'][$j]['price'] = $vamPrice->Format(vam_add_tax($quotes[$i]['methods'][$j]['cost'], $quotes[$i]['tax']), true, 0, true).vam_draw_hidden_field('shipping', $quotes[$i]['id'].'_'.$quotes[$i]['methods'][$j]['id']);
пишем:
$quotes[$i]['methods'][$j]['price'] = $vamPrice->Format(vam_add_tax($quotes[$i]['methods'][$j]['cost'], $quotes[$i]['tax']), true, 0, true);
$quotes[$i]['methods'][$j]['radio_field'] = vam_draw_radio_field('shipping', $quotes[$i]['id'].'_'.$quotes[$i]['methods'][$j]['id'], 'checked','id="'.$quotes[$i]['methods'][$j]['id'].'"');
$quotes[$i]['methods'][$j]['id'] = $quotes[$i]['methods'][$j]['id'];[/code] если не находим, то ищем условие [b]if (($n > 1) || ($n2 > 1))[/b] и в нём меняем а в checkout_payment.php вместо:
[code]$selection[$i]['selection'] = vam_draw_hidden_field('payment', $selection[$i]['id']);[/code]
пишем:
[code]$selection[$i]['selection'] = vam_draw_radio_field('payment', $selection[$i]['id'], ($selection[$i]['id'] == $selection[0]['id']), 'id="'.$selection[$i]['id'].'"');[/code]
если не находим, то ищем условие [b]if (sizeof($selection) > 1)[/b] и в нём меняем [b]Второй способ, правка только в шаблоне:[/b] В файле шаблон\module\checkout_shipping_block.html ищем:
[code]{$method_data.radio_field}[/code]
и заменяем на условие:
[code]{if $smarty.foreach.aussen.total==1}<input type="radio" checked="checked" />{else}{$method_data.radio_field}{/if}[/code]
В файле шаблон\checkout_payment_block.html ищем:
[code]{$module_data.selection}[/code]
и заменяем на условие:
[CODE]{if $smarty.foreach.aussen.total==1}<input type="radio" checked="checked" />{else}{$module_data.selection}{/if}[/code]

В условиях просто проверяется кол-во способов оплаты/доставки - если способ всего один, то заменяем стандартную обработку и радио-кнопка не убирается.

Второй вариант предпочтительнее, т.к. изменяется только шаблон и всегда можно откатить назад.

  • Like 12
Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...