mobilizon/lib/service/front_end_analytics/plausible.ex

42 lines
851 B
Elixir
Raw Normal View History

defmodule Mobilizon.Service.FrontEndAnalytics.Plausible do
@moduledoc """
Plausible analytics provider
"""
alias Mobilizon.Service.FrontEndAnalytics
@behaviour FrontEndAnalytics
@impl FrontEndAnalytics
def id, do: "plausible"
@doc """
Whether the service is enabled
"""
@impl FrontEndAnalytics
def enabled? do
:mobilizon
|> Application.get_env(__MODULE__, [])
|> Keyword.get(:enabled, false)
end
@doc """
The configuration for the service
"""
@impl FrontEndAnalytics
def configuration do
:mobilizon
|> Application.get_env(__MODULE__, [])
|> Keyword.drop([:enabled, :csp])
end
@doc """
The CSP configuration to add for the service to work
"""
@impl FrontEndAnalytics
def csp do
:mobilizon
|> Application.get_env(__MODULE__, [])
|> Keyword.get(:csp, [])
end
end