X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fweb%2Foauth.ex;h=d2835a0ba579c8a5c94b9a79736f07f9b48dd58a;hb=3cc2554fa3d63ba22dc5f598229a02b928b9fd14;hp=44b83433e847e1bc6c15e31857324c7ba397cbe1;hpb=4ad843fb9df838f36c014ddfb76d7107ba2b5c7b;p=akkoma diff --git a/lib/pleroma/web/oauth.ex b/lib/pleroma/web/oauth.ex index 44b83433e..d2835a0ba 100644 --- a/lib/pleroma/web/oauth.ex +++ b/lib/pleroma/web/oauth.ex @@ -3,9 +3,18 @@ # SPDX-License-Identifier: AGPL-3.0-only defmodule Pleroma.Web.OAuth do - def parse_scopes(scopes) do + def parse_scopes(scopes, _default) when is_list(scopes) do + Enum.filter(scopes, &(&1 not in [nil, ""])) + end + + def parse_scopes(scopes, default) when is_binary(scopes) do scopes - |> to_string() - |> String.split([" ", ","]) + |> String.trim() + |> String.split(~r/[\s,]+/) + |> parse_scopes(default) + end + + def parse_scopes(_, default) do + default end end