Config: per-field Vereinfacht ENV helpers

vereinfacht_api_url_env_set?, vereinfacht_api_key_env_set?,
vereinfacht_club_id_env_set? for read-only Settings fields when set.
This commit is contained in:
Moritz 2026-02-19 00:13:53 +01:00
parent 17488a6f42
commit f2bcf68da2
Signed by: moritz
GPG key ID: 1020A035E5DD0824

View file

@ -188,13 +188,35 @@ defmodule Mv.Config do
end
@doc """
Returns true if any Vereinfacht ENV variable is set (used to gray out Settings UI).
Returns true if any Vereinfacht ENV variable is set (used to show hint in Settings UI).
"""
@spec vereinfacht_env_configured?() :: boolean()
def vereinfacht_env_configured? do
System.get_env("VEREINFACHT_API_URL") != nil or
System.get_env("VEREINFACHT_API_KEY") != nil or
System.get_env("VEREINFACHT_CLUB_ID") != nil
vereinfacht_api_url_env_set?() or vereinfacht_api_key_env_set?() or
vereinfacht_club_id_env_set?()
end
@doc """
Returns true if VEREINFACHT_API_URL is set (field is read-only in Settings).
"""
def vereinfacht_api_url_env_set?, do: env_set?("VEREINFACHT_API_URL")
@doc """
Returns true if VEREINFACHT_API_KEY is set (field is read-only in Settings).
"""
def vereinfacht_api_key_env_set?, do: env_set?("VEREINFACHT_API_KEY")
@doc """
Returns true if VEREINFACHT_CLUB_ID is set (field is read-only in Settings).
"""
def vereinfacht_club_id_env_set?, do: env_set?("VEREINFACHT_CLUB_ID")
defp env_set?(key) do
case System.get_env(key) do
nil -> false
v when is_binary(v) -> String.trim(v) != ""
_ -> false
end
end
defp env_or_setting(env_key, setting_key) do