Я тут переиначил модуль Ship2Pay под версию PS 1.4.
Модуль ограничивает возможные способы оплаты в зависимости от того, какой был выбран способ доставки.
У меня, на 1.4.0.12, вроде как работает. Что удивительно, т.к. это мой первый опыт.
Содержимое архива следует распаковать в корень магазина. При этом никакие файлы перезаписаны не будут. Если при распаковке возникает конфликт файлов, то модуль у вас работать не будет скорее всего.
Конфликт вроде возможен только по содержимому папки override. И если он есть, то надо уже смотреть, как совместить модуль с теми изменениями, которые уже внесены до него.
На чистый магаз должен встать без конфликта.
После копирования модуль нужно установить из админки.
После установки из админки модулем можно управлять - разрешать определенные пары "метод доставки - метод оплаты", только они будут доступны при оформлении заказа.
Кроме всего этого модуль перегружает ряд контроллеров с целью использования модифицированных шаблонов, из которых вырезаны лишние, на мой взгляд, поля адреса, а так же упоминание invoice address.
Если это не нужно, то изначально в корень сайта надо копировать не все файлы, а только папку modules, и файл Module.php из override\classes\ в override\classes.
Тогда шаблоны меняться не будут.
Повторюсь, никаких файлов ядра модуль не затирает. ДЛя удаления модуля его следует деинсталлировать из админки, а так же вычистить из магаза все скопированные в начале файлы.
Работает модуль только с вариантом оформления заказа в 5 шагов.
Для оформления на одной странице (OPC) он так же как бы работает, но с проблемой. Для этого надо в файле override\classes\Module.php раскомментировать вот этот кусок:
Код:
public static function hookExec($hook_name, $hookArgs = array(), $id_module = NULL)
{
if($hook_name == 'payment')
return Module::hookExecPayment();
else
return parent::hookExec($hook_name, $hookArgs, $id_module);
}
При этом имеется неприятный эффект:
После ввода адреса и выбора метода доставки модуль корректно отфильтровывает способы оплаты.
Но вот если теперь нажать "назад", и сменить способ доставки, то фильтрация уже не происходит.
Я так понимаю это из-за того, что при нажатии назад кусок html просто скрывается, а при продолжении открывается обратно не перегружаясь. Как с этим бороться, не знаю.
Буду благодарен, если кто-то подскажет.
Все ессно предоставляется as is, без никаких гарантий и обещаний. Эта функциональность просто нужна мне, я ее пытаюсь реализовать, на первый взгляд получилось.
ЗЫ: Шаблоны копирубтся в дефолтную тему themes/prestashop, если тема используется другая, то надо их куда-то в другое место пихать по идее.
Сообщение отредактировано Muerto 10-02-2011 01:46 ...