Current section
Files
Jump to
Current section
Files
lib/phoenix_analytics/queries/analytics/helpers.ex
defmodule PhoenixAnalytics.Queries.Helpers do
@moduledoc false
@static ~w(.js .css .png .jpg .jpeg .svg .gif .woff .woff2 .ttf .ico .txt .xml)s
@paths ~w(/uploads/ /assets/ /images/ /css/ /js/ /fonts/ /favicon.ico)s
@dev ~w(/phoenix/live_reload/ /dev/)s
defp path_not_like(filter) do
"AND path NOT LIKE '%#{filter}%'"
end
defp path_or_like(filter) do
"OR path LIKE '%#{filter}%'"
end
def exclude_non_page() do
(@static ++ @paths)
|> Enum.map(fn filter -> path_not_like(filter) end)
|> Enum.join("\n")
end
def inclusive_non_page() do
(@static ++ @paths)
|> Enum.map(fn filter -> path_or_like(filter) end)
|> Enum.join("\n")
end
def exlude_dev() do
@dev
|> Enum.map(fn filter -> path_not_like(filter) end)
|> Enum.join("\n")
end
def date_filter(from, to), do: date_from(from) <> date_to(to)
def date_from(date), do: "\n" <> " AND inserted_at >= '#{date}'"
def date_to(date), do: "\n" <> " AND inserted_at <= '#{date}'"
end