View Source Glific.Settings (Glific v5.1.6)
The Settings context. This includes language for now.
Link to this section Summary
Functions
Returns an %Ecto.Changeset{}
for tracking language changes.
Return the count of languages, using the same filter as list_languages
Creates a language.
Deletes a language.
Gets a single language.
Get language from label or shortcode
Get map of ids to locale for translation lookup
Upserts a language based on the unique indexes in the table. If there is a match it returns the existing contact, else it creates a new one
Returns the list of languages.
Get map of localte to ids for easier lookup for json based flow editor
Updates a language.
Link to this section Functions
@spec change_language(Glific.Settings.Language.t(), map()) :: Ecto.Changeset.t()
Returns an %Ecto.Changeset{}
for tracking language changes.
examples
Examples
iex> change_language(language)
%Ecto.Changeset{data: %Language{}}
Return the count of languages, using the same filter as list_languages
@spec create_language(map()) :: {:ok, Glific.Settings.Language.t()} | {:error, Ecto.Changeset.t()}
Creates a language.
examples
Examples
iex> create_language(%{field: value})
{:ok, %Language{}}
iex> create_language(%{field: bad_value})
{:error, %Ecto.Changeset{}}
@spec delete_language(Glific.Settings.Language.t()) :: {:ok, Glific.Settings.Language.t()} | {:error, Ecto.Changeset.t()}
Deletes a language.
examples
Examples
iex> delete_language(language)
{:ok, %Language{}}
iex> delete_language(language)
{:error, %Ecto.Changeset{}}
@spec get_language!(integer()) :: Glific.Settings.Language.t()
Gets a single language.
Raises Ecto.NoResultsError
if the Language does not exist.
examples
Examples
iex> get_language!(123)
%Language{}
iex> get_language!(456)
** (Ecto.NoResultsError)
Get language from label or shortcode
@spec get_language_id_local_map() :: map()
Get map of ids to locale for translation lookup
@spec language_upsert(map()) :: {:ok, Glific.Settings.Language.t()}
Upserts a language based on the unique indexes in the table. If there is a match it returns the existing contact, else it creates a new one
@spec list_languages(map()) :: [Glific.Settings.Language.t(), ...]
Returns the list of languages.
examples
Examples
iex> list_languages()
[%Language{}, ...]
Get map of localte to ids for easier lookup for json based flow editor
@spec update_language(Glific.Settings.Language.t(), map()) :: {:ok, Glific.Settings.Language.t()} | {:error, Ecto.Changeset.t()}
Updates a language.
examples
Examples
iex> update_language(language, %{field: new_value})
{:ok, %Language{}}
iex> update_language(language, %{field: bad_value})
{:error, %Ecto.Changeset{}}