mirror of
https://github.com/wanderer-industries/wanderer
synced 2025-12-13 03:06:15 +00:00
fix: properly send sse events
This commit is contained in:
@@ -930,7 +930,7 @@ defmodule WandererAppWeb.MapAPIController do
|
||||
@doc """
|
||||
Toggle webhooks for a map.
|
||||
"""
|
||||
operation :toggle_webhooks,
|
||||
operation(:toggle_webhooks,
|
||||
summary: "Toggle webhooks for a map",
|
||||
parameters: [
|
||||
map_id: [
|
||||
@@ -966,13 +966,15 @@ defmodule WandererAppWeb.MapAPIController do
|
||||
404 => ResponseSchemas.not_found(),
|
||||
503 => ResponseSchemas.internal_server_error("Service unavailable")
|
||||
}
|
||||
)
|
||||
|
||||
def toggle_webhooks(conn, %{"map_id" => map_identifier, "enabled" => enabled}) do
|
||||
with {:ok, enabled_boolean} <- validate_boolean_param(enabled, "enabled"),
|
||||
:ok <- check_global_webhooks_enabled(),
|
||||
{:ok, map} <- resolve_map_identifier(map_identifier),
|
||||
:ok <- check_map_owner(conn, map),
|
||||
{:ok, updated_map} <- WandererApp.Api.Map.toggle_webhooks(map, %{webhooks_enabled: enabled_boolean}) do
|
||||
{:ok, updated_map} <-
|
||||
WandererApp.Api.Map.toggle_webhooks(map, %{webhooks_enabled: enabled_boolean}) do
|
||||
json(conn, %{webhooks_enabled: updated_map.webhooks_enabled})
|
||||
else
|
||||
{:error, :invalid_boolean} ->
|
||||
@@ -1019,7 +1021,9 @@ defmodule WandererAppWeb.MapAPIController do
|
||||
|
||||
defp resolve_map_identifier(identifier) do
|
||||
case WandererApp.Api.Map.by_id(identifier) do
|
||||
{:ok, map} -> {:ok, map}
|
||||
{:ok, map} ->
|
||||
{:ok, map}
|
||||
|
||||
{:error, _} ->
|
||||
case WandererApp.Api.Map.get_map_by_slug(identifier) do
|
||||
{:ok, map} -> {:ok, map}
|
||||
@@ -1030,6 +1034,7 @@ defmodule WandererAppWeb.MapAPIController do
|
||||
|
||||
defp check_map_owner(conn, map) do
|
||||
current_user = conn.assigns[:current_character]
|
||||
|
||||
if current_user && current_user.id == map.owner_id do
|
||||
:ok
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user