From dbe2da79c3aa1543b87dce61b5fd90195fb53afe Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Wed, 3 May 2023 11:58:13 +0200 Subject: [PATCH] fix(backend): Handle CLDR data having no standard property for a language Signed-off-by: Thomas Citharel --- lib/graphql/resolvers/admin.ex | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/graphql/resolvers/admin.ex b/lib/graphql/resolvers/admin.ex index ad8bce3f2..c1f664015 100644 --- a/lib/graphql/resolvers/admin.ex +++ b/lib/graphql/resolvers/admin.ex @@ -183,7 +183,9 @@ defmodule Mobilizon.GraphQL.Resolvers.Admin do case Language.known_languages(String.to_existing_atom(locale)) do data when is_map(data) -> data - |> Enum.map(fn {code, elem} -> %{code: code, name: elem.standard} end) + |> Enum.map(fn {code, elem} -> + %{code: code, name: Map.get(elem, :standard, "Unknown")} + end) |> Enum.filter(fn %{code: code, name: _name} -> code in codes end) |> (&{:ok, &1}).() @@ -197,7 +199,11 @@ defmodule Mobilizon.GraphQL.Resolvers.Admin do case Language.known_languages(String.to_existing_atom(locale)) do data when is_map(data) -> - data = Enum.map(data, fn {code, elem} -> %{code: code, name: elem.standard} end) + data = + Enum.map(data, fn {code, elem} -> + %{code: code, name: Map.get(elem, :standard, "Unknown")} + end) + {:ok, data} {:error, err} ->