1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-03-23 09:00:48 +01:00

Merge pull request #5157 from kasimi/ticket/15583

[ticket/15583] Update session time in AJAX request only once a minute

* github.com:/phpbb/phpbb:
  [ticket/15583] Update session time in AJAX request only once a minute
  [ticket/15583] Update session time in AJAX request only once a minute
This commit is contained in:
Tristan Darricau 2018-07-08 18:06:16 +02:00
commit 777443d95c

View File

@ -1614,13 +1614,15 @@ class session
return;
}
// Do not update the session page for ajax requests, so the view online still works as intended
$page_changed = $this->update_session_page && $this->data['session_page'] != $this->page['page'] && !$request->is_ajax();
// Only update session DB a minute or so after last update or if page changes
if ($this->time_now - ((isset($this->data['session_time'])) ? $this->data['session_time'] : 0) > 60 || ($this->update_session_page && $this->data['session_page'] != $this->page['page']))
if ($this->time_now - (isset($this->data['session_time']) ? $this->data['session_time'] : 0) > 60 || $page_changed)
{
$sql_ary = array('session_time' => $this->time_now);
// Do not update the session page for ajax requests, so the view online still works as intended
if ($this->update_session_page && !$request->is_ajax())
if ($page_changed)
{
$sql_ary['session_page'] = substr($this->page['page'], 0, 199);
$sql_ary['session_forum_id'] = $this->page['forum'];