From ff5e27b0a09df3a542b0a88ae9a20790166f3a24 Mon Sep 17 00:00:00 2001
From: Thomas Citharel <tcit@tcit.fr>
Date: Tue, 9 Jun 2020 17:41:08 +0200
Subject: [PATCH] Fix admin settings

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
---
 js/src/views/Admin/Settings.vue |  2 +-
 lib/graphql/resolvers/admin.ex  | 10 +++++++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/js/src/views/Admin/Settings.vue b/js/src/views/Admin/Settings.vue
index b17fdce84..a1f80f5b4 100644
--- a/js/src/views/Admin/Settings.vue
+++ b/js/src/views/Admin/Settings.vue
@@ -105,7 +105,7 @@
 <script lang="ts">
 import { Component, Vue } from "vue-property-decorator";
 import { ADMIN_SETTINGS, SAVE_ADMIN_SETTINGS } from "@/graphql/admin";
-import { IAdminSettings, InstanceTermsType } from "@/types/admin.model";
+import { IAdminSettings, InstanceTermsType } from "../../types/admin.model";
 import RouteName from "../../router/name";
 
 @Component({
diff --git a/lib/graphql/resolvers/admin.ex b/lib/graphql/resolvers/admin.ex
index 5619055a9..fef27c523 100644
--- a/lib/graphql/resolvers/admin.ex
+++ b/lib/graphql/resolvers/admin.ex
@@ -157,7 +157,15 @@ defmodule Mobilizon.GraphQL.Resolvers.Admin do
       when is_admin(role) do
     with {:ok, res} <- Admin.save_settings("instance", args) do
       res =
-        res |> Enum.map(fn {key, %Setting{value: value}} -> {key, value} end) |> Enum.into(%{})
+        res
+        |> Enum.map(fn {key, %Setting{value: value}} ->
+          case value do
+            "true" -> {key, true}
+            "false" -> {key, false}
+            value -> {key, value}
+          end
+        end)
+        |> Enum.into(%{})
 
       Config.clear_config_cache()