File size: 469 Bytes
88211d3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | defmodule PlausibleWeb.Plugs.UserSessionTouch do
@moduledoc """
Plug for bumping timeout on user session on every dashboard request.
"""
import Plug.Conn
alias Plausible.Auth
def init(opts \\ []) do
opts
end
def call(conn, _opts) do
if user_session = conn.assigns[:current_user_session] do
assign(
conn,
:current_user_session,
Auth.UserSessions.touch(user_session)
)
else
conn
end
end
end
|