TemKa_SD 8 Posted August 27, 2022 Report Share Posted August 27, 2022 Здравствуйте. Я хочу добавить функционал cropPhoto для мероприятия в календаре. Но так как этот функционал работает в контроллере, расширять нужно его а не форму. Можно как-то хуком расширить контроллер в приложении calendar? Обратиться Quote Link to comment Share on other sites More sharing options...
Кирилл 175 Posted August 28, 2022 Report Share Posted August 28, 2022 Скорее всего вам придётся писать собственную функцию кропа и применять её. Обратиться Quote Link to comment Share on other sites More sharing options...
TemKa_SD 8 Posted August 30, 2022 Author Report Share Posted August 30, 2022 В 29.08.2022 в 04:09, Кирилл сказал: Скорее всего вам придётся писать собственную функцию кропа и применять её. Да, я понимаю, тут вопрос немного в другом. Я уже написал такое для своего приложения, там у меня форма работает в контроллере а не классе, поэтому там нет никаких проблем, а здесь столкнулся со следующим: После отправки формы, я делаю редирект на метод с cropPhoto (где кропим фото), после этого редиректа, у меня методы формы дальше не выполняются. Блин, так сложно будет понять мой вопрос, я скорей всего, завтра сделаю видео где всё покажу. Но вообще, невозможно ведь хуком расширить контроллер? Например, я хочу расширить это: /calendar/modules/front/calendar/submit.php метод manage() Обратиться Quote Link to comment Share on other sites More sharing options...
Кирилл 175 Posted September 3, 2022 Report Share Posted September 3, 2022 Хуком можно расширить практически любой контроллер. Обратиться Quote Link to comment Share on other sites More sharing options...
TemKa_SD 8 Posted September 5, 2022 Author Report Share Posted September 5, 2022 (edited) @Кирилл Вот смотрите, проблема вот в чем: я создал приложение для календаря, позволяющее, реализовать функционал cropPhoto. 1. Создал хук \IPS\calendar\Event public function processForm( $values ) { parent::processForm( $values ); if ( $values['event_cover_photo'] && \strpos($values['event_cover_photo']->filename, 'cropped') === false ){ $this->save(); \IPS\Output::i()->redirect( \IPS\Http\Url::internal('app=calendarphotocrop&module=crop&controller=crop')->setQueryString( 'event', $this->id ) ); } } Здесь я делаю редирект на контроллер в своем приложении, который, будет кропить фото. После этого редиректа parent методы формы прекращают работать, вот тут \IPS\Content\Item::createFromForm() https://prnt.sc/91xr1LLfSxHE после $obj->processForm( $values ); код уже не выполняется, потому что я в хуке сделал редирект на контроллер. Думаю, нет смысла выкладывать сюда код в контроллере, выложу скрином: https://prnt.sc/TioXTJu8Uxco Как продолжить выполнение методов формы после редиректа в контроллер моего приложения? Edited September 5, 2022 by TemKa_SD Обратиться Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.