diff --git a/js/src/views/Moderation/ReportList.vue b/js/src/views/Moderation/ReportList.vue
index ddb769b5..51ae764d 100644
--- a/js/src/views/Moderation/ReportList.vue
+++ b/js/src/views/Moderation/ReportList.vue
@@ -12,7 +12,7 @@
}}
- -
+
-
diff --git a/lib/graphql/resolvers/config.ex b/lib/graphql/resolvers/config.ex
index a72d624c..46f16ab8 100644
--- a/lib/graphql/resolvers/config.ex
+++ b/lib/graphql/resolvers/config.ex
@@ -102,7 +102,10 @@ defmodule Mobilizon.GraphQL.Resolvers.Config do
}
},
resource_providers: Config.instance_resource_providers(),
- timezones: Tzdata.zone_list()
+ timezones: Tzdata.zone_list(),
+ features: %{
+ groups: Config.instance_group_feature_enabled?()
+ }
}
end
end
diff --git a/lib/graphql/schema/config.ex b/lib/graphql/schema/config.ex
index d0925cfe..f67ddb61 100644
--- a/lib/graphql/schema/config.ex
+++ b/lib/graphql/schema/config.ex
@@ -22,6 +22,7 @@ defmodule Mobilizon.GraphQL.Schema.ConfigType do
field(:anonymous, :anonymous)
field(:resource_providers, list_of(:resource_provider))
field(:timezones, list_of(:string))
+ field(:features, :features)
field(:terms, :terms, description: "The instance's terms") do
arg(:locale, :string, default_value: "en")
@@ -105,6 +106,10 @@ defmodule Mobilizon.GraphQL.Schema.ConfigType do
field(:software, :string)
end
+ object :features do
+ field(:groups, :boolean)
+ end
+
object :config_queries do
@desc "Get the instance config"
field :config, :config do
diff --git a/lib/mobilizon/config.ex b/lib/mobilizon/config.ex
index de488318..14f6de39 100644
--- a/lib/mobilizon/config.ex
+++ b/lib/mobilizon/config.ex
@@ -162,6 +162,8 @@ defmodule Mobilizon.Config do
end
end
+ def instance_group_feature_enabled?, do: Application.get_env(:mobilizon, :instance)[:groups]
+
def anonymous_actor_id, do: get_cached_value(:anonymous_actor_id)
def relay_actor_id, do: get_cached_value(:relay_actor_id)