Доброго времени суток. Добавил способ оплаты с помощью LiqPay. Вроде все отлично работает - оплата проходит, заказ создается, статус нужный назначается, но есть один неприятный момент, об который я уже устал биться головой :(( При возврате после успешной оплаты происходит редирект с сайта LiqPay на страницу checkout/success, но при этом клиента разлогинивает а корзина не очищается. Если точнее сразу после редиректа c LiqPay корзина пустая, но если залогиниться опять - корзина подтягивается из сессии и находится в том же состоянии, как до подтверждения заказа и оплаты. Я не очень хорошо разбираюсь в механизме авторизации. В идеале клиента не должно разлогинивать после того как его редиректит обратно на сайт после успешной оплаты - должны же по идее быть куки сессии? Но почему-то происходит разлогинивание. Может кто-то сталкивался с такой проблемой? Если нет - то может есть возможность залогинить покупателя и очистить его корзину по номеру заказа в коллбеке оплаты? Вот функция коллбека в модуле LiqPay на сайте:
public function callback()
{
$data = $this->request->post['data'];
$private_key = $this->config->get('liqpay_checkout_private_key');
$signature = $this->calculateSignature($data, $private_key);
$parsed_data = json_decode(base64_decode($data), true);
$order_id = $parsed_data['order_id'];
if ($signature == $this->request->post['signature']) {
$this->load->model('checkout/order');
$this->model_checkout_order->addOrderHistory($order_id, $this->config->get('liqpay_checkout_order_status_id'));
//here you can update your order status
}
}