Модуль оплаты Robokassa и успешная оплата
В системных настройках модуля есть переменная ms2_payment_rbks_success_id, с помощю которой указывается ID страницы, на которую возвращается пользователь после успешной оплаты. Как можно сделать так, чтобы после успешной оплаты товара А, пользователь попадал на страницу 1. А после оплаты товара Б, на страницу 2. Ну, а если случится такое, что пользователь купил А+Б, то на страницу 3.
Сейчас у меня срабатывает плагин на событие msOnChangeOrderStatus и производятся некоторые действия, однако, как при этом перенаправить пользователя туда, куда надо я ума не приложу.
Сейчас у меня срабатывает плагин на событие msOnChangeOrderStatus и производятся некоторые действия, однако, как при этом перенаправить пользователя туда, куда надо я ума не приложу.
Комментарии: 10
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Чтобы уже на странице вставить типа такой конструкции [[+key:is=`1`:then=`пашем А`:else=`пишем Б`]]
Нашел ещё вариант через установку плейсхолдера и на странице выводить в зависимости от его значения.
Я вот чего спросить хотел: вот здесь modx.pro/help/12964/ используется setOption, а у Вас config[...] Чего правильнее?
Правильнее через setOption, но фактически выполняется одно и то же.
Где это можно поискать?
Как раз здесь и не ясно: сначала определяется на какую страницу будет возврат (успешной оплаты или нет), а потом меняется статус. Или сначала меняется статус (срабатывает событие изменение статуса), а потом определяется страница возврата.
Во втором случае успешно сработает код плагина, который Вы подсказали ранее. А в первом он сработает поздно, т.к. страница возврата к тому времени уже определена.
Посмотрите этот файл. Ваше решение вопроса — плагин на событие OnMODXInit для подмены ID страницы. Ловите принимаемые параметры и запрашиваемые адрес.