Merge remote-tracking branch 'remotes/origin/develop' into output-of-relationships...
[akkoma] / lib / pleroma / web / activity_pub / object_validators / types / object_id.ex
index 8e70effe416d6cb230dbc63965f8964801497cd0..f6e749b337249db0c71e0d1b5b0ebc7dcbababd5 100644 (file)
@@ -4,16 +4,12 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.Types.ObjectID do
   def type, do: :string
 
   def cast(object) when is_binary(object) do
-    with %URI{
-           scheme: scheme,
-           host: host
-         }
-         when scheme in ["https", "http"] and not is_nil(host) <-
-           URI.parse(object) do
-      {:ok, object}
-    else
-      _ ->
-        :error
+    # Host has to be present and scheme has to be an http scheme (for now)
+    case URI.parse(object) do
+      %URI{host: nil} -> :error
+      %URI{host: ""} -> :error
+      %URI{scheme: scheme} when scheme in ["https", "http"] -> {:ok, object}
+      _ -> :error
     end
   end