Евгений

Евгений

С нами с 12 июня 2020; Место в рейтинге пользователей: #3397
Евгений
13 июня 2020, 16:59
0
да, кажется я не совсем точно вопрос задал, но спасибо за ответ, в следующий раз буду точнее формулировать). У меня все получилось вот таким вот образом, пришлось убрать редирект потому что надо открывать страницу оплаты при нажатии на кнопку «Оплатить», т.е. я отправляю массив, и уже при помощи js подставляю ссылку на кнопку. Надеюсь кому поможет, только исключения под свои нужды.
<?php
if ($modx->event->name == 'OnLoadWebDocument')
   if (isset($_POST['order_status_check']))
      if (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') {



         $status = $modx->lexicon('popup_status_order_message_error');

         if (preg_match('/[\d]*\/[\d]*/', $_POST['order_status_check'])) {


            $order = $modx->getObject('msOrder', array('num' => $_POST['order_status_check']));
            if ($payment = $modx->getObject(
               'msPayment',
               array('id' => $order->get('payment'), 'active' => 1)
            )) {
               $response = $payment->send($order);
               if ($this->config['json_response']) {
                  @session_write_close();
                  exit(is_array($response) ? json_encode($response) : $response);
               } else {
                  if (!empty($response['data']['redirect'])) {
                     //тут отправляю массив в котором ссылка на оплату
                     print_r($response);
                     exit;
                  } elseif (!empty($response['data']['msorder'])) {
                  } else {
                     // $modx->sendRedirect($modx->context->makeUrl($modx->resource->id));
                  }

                  return $this->success();
               }
            }
         }

         exit;
      }