Leon4gr45's picture
Upload folder using huggingface_hub (part 3)
88211d3 verified
Raw
History Blame Contribute Delete
987 Bytes
defmodule PlausibleWeb.Live.SiteTransferSettings.Form do
@moduledoc """
Form schema used by site transfer settings live view.
"""
use Ecto.Schema
import Ecto.Changeset
@primary_key false
embedded_schema do
field :destination, Ecto.Enum, values: [:team, :my_team, :account]
field :team_identifier, :string
field :email, :string
field :my_team_available, :boolean, default: false
end
def changeset(params) do
%__MODULE__{}
|> cast(params, [:destination, :team_identifier, :my_team_available, :email])
|> validate_required(:destination)
|> validate_destination_fields()
end
defp validate_destination_fields(changeset) do
case get_field(changeset, :destination) do
:team ->
validate_required(changeset, :team_identifier, message: "Please select a team")
:account ->
validate_required(changeset, :email, message: "Please enter an email address")
:my_team ->
changeset
end
end
end