Как Правильно Заменить Pickup.php

Доброе время суток.



Даниил, не подскажете, как по правильному (модулем) заменить файл



app/addons/rus_pickup/Tygh/Shippings/Services/Pickup.php



а в нем функцию public function processResponse($response) на свою, чтобы потом при обновлении не потерялось?



Думаю использовать post контроллер checkout, но что-то смущает. Создать то я его создал, а вот что в нем писать? Как заменить именно одну функцию?

[quote name='densvi' timestamp='1437983374' post='224416']

Доброе время суток.



Даниил, не подскажете, как по правильному (модулем) заменить файл



app/addons/rus_pickup/Tygh/Shippings/Services/Pickup.php



а в нем функцию public function processResponse($response) на свою, чтобы потом при обновлении не потерялось?

[/quote]



Сделать свою.

[quote name='dbazhenov' timestamp='1437983491' post='224417']

Сделать свою.

[/quote]



Даниил, ткните чуток, что значит сделать свою? Просто в пост контроллере всю её и переписать?

[quote name='densvi' timestamp='1437983563' post='224418']

Даниил, ткните чуток, что значит сделать свою? Просто в пост контроллере всю её и переписать?

[/quote]



Нет, сделать свой шипинг my_pickup.php со всем своим и своим модулем.

[quote name=‘dbazhenov’ timestamp=‘1437983970’ post=‘224420’]

Нет, сделать свой шипинг my_pickup.php со всем своим и своим модулем.

[/quote]



Это, грубо говоря, взять модуль “самовывоз” и дублировать его весь. СО всеми его стилями, контроллерами, схемами и прочее, чтобы заменить в нём лишь одну функцию? Я правильно понял?



Или просто этот файл pickup.php переписать в модуле my_change ?

[quote name=‘densvi’ timestamp=‘1437984190’ post=‘224423’]

Это, грубо говоря, взять модуль “самовывоз” и дублировать его весь. СО всеми его стилями, контроллерами, схемами и прочее, чтобы заменить в нём лишь одну функцию? Я правильно понял?

[/quote]



Ну нет там переопределения методов класса :( Да и копировать там не так много, шаблоны можно подключать от pickup и все.



Второй вариант, можно хуками в контроллере выцепить результат работы и дописать нужные данные.

[quote name=‘dbazhenov’ timestamp=‘1437984471’ post=‘224427’]

Ну нет там переопределения методов класса :( Да и копировать там не так много, шаблоны можно подключать от pickup и все.



Второй вариант, можно хуками в контроллере выцепить результат работы и дописать нужные данные.

[/quote]



Что-то ничего не понял :( Мне потом еще pickup.tpl менять, ну это то надеюсь просто



Такое ощущение, что легче записать этот Pickup.php к себе на диск и потом при обновлении версии cs-cart просто записывать его обратно

[quote name=‘densvi’ timestamp=‘1437984815’ post=‘224431’]

Что-то ничего не понял :(



Такое ощущение, что легче записать этот Pickup.php к себе на диск и потом при обновлении версии cs-cart просто записывать его обратно

[/quote]



От задачи зависит.


  1. Данные которые возвращает pickup.php можно изменить в контроллере хуками (он сам так делает)
  2. Создать свой шипинг, при этом php код будет свой, а в tpl шаблонах подключать шаблоны от модуля pickup, чтобы не клонировать.

[quote name='dbazhenov' timestamp='1437985050' post='224432']

От задачи зависит.


  1. Данные которые возвращает pickup.php можно изменить в контроллере хуками (он сам так делает)
  2. Создать свой шипинг, при этом php код будет свой, а в tpl шаблонах подключать шаблоны от модуля pickup, чтобы не клонировать.

    [/quote]



    1 вариант видимо не выход, в функции [color=#282828][font=arial, verdana, tahoma, sans-serif] processResponse($response) я обращаюсь к API ТК и много раз и идет обработка [/font][/color][color=#282828][font=arial, verdana, tahoma, sans-serif]ответов. [/font][/color]



    Что такое “создать свой шипинг” я так и не понял.



    В общем, Даниил, понял, что в отличии от замены контроллеров и tpl заменить функцию на свою это нетривиальная задача. Поэтому, чтобы не выносить вам мозг своими глупыми вопросами, буду делать на ручном приводе, просто копировать этот pickup.php каждый раз при обновлении версии. Надеюсь не забуду. Спасибо.