Как сохранить логин администратора при использовании ajaxProcess?

Модуль отправляет только процесс Ajax на контроллер модуля каждые 5 секунд. Через несколько минут prestashop автоматически разлогинил сотрудника. Как я могу оставаться в системе?


person Edgar    schedule 04.06.2016    source источник
comment
Отметьте свой вопрос соответствующей версией Prestashop.   -  person Florian Lemaitre    schedule 06.06.2016


Ответы (1)


В вашей функции ajaxProcess сделайте следующее:

$cookie = Context::getContext()->cookie;
$cookie->write();

Это обновит продолжительность вашего файла cookie администратора, когда ваш ajaxProcess вернется, то есть когда будут отправлены заголовки, как устанавливаются файлы cookie.

При желании вы можете включить этот код над вызовом write(), чтобы также записывалось время последней активности.

if (!Tools::getValue('stay_logged_in')) {
   $cookie->last_activity = time();
}

Вы можете увидеть этот код в действии в /controllers/admin/AdminLoginController.php

person Matt    schedule 27.06.2016