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