fix(participant exports): fix participants by returning the export type as well as the file path

We previously used the Apollo context but that's really unreliable.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel
2023-06-20 12:11:52 +02:00
parent a5a86a5e1b
commit 49b04c9b19
4 changed files with 28 additions and 25 deletions

View File

@@ -302,7 +302,7 @@ defmodule Mobilizon.GraphQL.Resolvers.Participant do
if can_event_be_updated_by?(event, moderator_actor) do
case export_format(format, event, roles, locale) do
{:ok, path} ->
{:ok, path}
{:ok, %{path: path, format: format}}
{:error, :export_dependency_not_installed} ->
{:error,

View File

@@ -61,6 +61,12 @@ defmodule Mobilizon.GraphQL.Schema.Events.ParticipantType do
field(:total, :integer, description: "The total number of participants in the list")
end
object :participant_export do
meta(:authorize, :user)
field(:path, :string, description: "The path to the exported file")
field(:format, :export_format_enum, description: "The path to the exported file")
end
@desc """
The possible values for a participant role
"""
@@ -132,7 +138,7 @@ defmodule Mobilizon.GraphQL.Schema.Events.ParticipantType do
end
@desc "Export the event participants as a file"
field :export_event_participants, :string do
field :export_event_participants, :participant_export do
arg(:event_id, non_null(:id),
description: "The ID from the event for which to export participants"
)