From 8ab4b4c7880cd00d49e94eaf2147acd114cd329b Mon Sep 17 00:00:00 2001 From: Dmitry Popov Date: Thu, 10 Apr 2025 23:25:33 +0200 Subject: [PATCH] fix (Core): fixed connection validation --- lib/wanderer_app/character/tracker.ex | 2 +- lib/wanderer_app/map/server/map_server_connections_impl.ex | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/wanderer_app/character/tracker.ex b/lib/wanderer_app/character/tracker.ex index 8280a665..01eda638 100644 --- a/lib/wanderer_app/character/tracker.ex +++ b/lib/wanderer_app/character/tracker.ex @@ -781,5 +781,5 @@ defmodule WandererApp.Character.Tracker do defp get_online(%{"online" => online}), do: %{online: online} - defp get_online(_), do: %{} + defp get_online(_), do: %{online: false} end diff --git a/lib/wanderer_app/map/server/map_server_connections_impl.ex b/lib/wanderer_app/map/server/map_server_connections_impl.ex index cd20acfc..8738f3e1 100644 --- a/lib/wanderer_app/map/server/map_server_connections_impl.ex +++ b/lib/wanderer_app/map/server/map_server_connections_impl.ex @@ -473,13 +473,12 @@ defmodule WandererApp.Map.Server.ConnectionsImpl do ) ) - def is_connection_valid(_scope, nil, _to_solar_system_id), do: false - def is_connection_valid(:all, _from_solar_system_id, _to_solar_system_id), do: true def is_connection_valid(:none, _from_solar_system_id, _to_solar_system_id), do: false - def is_connection_valid(scope, from_solar_system_id, to_solar_system_id) do + def is_connection_valid(scope, from_solar_system_id, to_solar_system_id) + when not is_nil(from_solar_system_id) and not is_nil(to_solar_system_id) do {:ok, known_jumps} = WandererApp.Api.MapSolarSystemJumps.find(%{ before_system_id: from_solar_system_id, @@ -504,6 +503,8 @@ defmodule WandererApp.Map.Server.ConnectionsImpl do end end + def is_connection_valid(_scope, _from_solar_system_id, _to_solar_system_id), do: false + def get_connection_mark_eol_time(map_id, connection_id, default \\ DateTime.utc_now()) do WandererApp.Cache.get("map_#{map_id}:conn_#{connection_id}:mark_eol_time") |> case do