diff options
| author | marcin mikołajczak <git@mkljczk.pl> | 2022-05-30 12:30:03 +0200 | 
|---|---|---|
| committer | marcin mikołajczak <git@mkljczk.pl> | 2022-05-30 12:30:03 +0200 | 
| commit | b354d70e85bbf0f685f3d56f7377fde2efce4187 (patch) | |
| tree | 2d5fe2a75127ebc1403f5b3055125cbc8a9932da /lib | |
| parent | 5c383ada8ad7491125a8264a8a03d85fe822f61e (diff) | |
| download | pleroma-b354d70e85bbf0f685f3d56f7377fde2efce4187.tar.gz pleroma-b354d70e85bbf0f685f3d56f7377fde2efce4187.zip  | |
Apply, suggestions, use strings for actual Mastodon API compatibility
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/pleroma/rule.ex | 2 | ||||
| -rw-r--r-- | lib/pleroma/web/admin_api/views/report_view.ex | 10 | ||||
| -rw-r--r-- | lib/pleroma/web/admin_api/views/rule_view.ex | 2 | ||||
| -rw-r--r-- | lib/pleroma/web/api_spec/operations/admin/report_operation.ex | 2 | ||||
| -rw-r--r-- | lib/pleroma/web/api_spec/operations/admin/rule_operation.ex | 5 | ||||
| -rw-r--r-- | lib/pleroma/web/api_spec/operations/instance_operation.ex | 2 | ||||
| -rw-r--r-- | lib/pleroma/web/api_spec/operations/report_operation.ex | 4 | ||||
| -rw-r--r-- | lib/pleroma/web/common_api.ex | 3 | ||||
| -rw-r--r-- | lib/pleroma/web/mastodon_api/views/instance_view.ex | 2 | 
9 files changed, 17 insertions, 15 deletions
diff --git a/lib/pleroma/rule.ex b/lib/pleroma/rule.ex index b1db1dc0c..611e945b3 100644 --- a/lib/pleroma/rule.ex +++ b/lib/pleroma/rule.ex @@ -37,6 +37,8 @@ defmodule Pleroma.Rule do    def get(id), do: Repo.get(__MODULE__, id) +  def exists?(id), do: not is_nil(get(id)) +    def create(params) do      {:ok, rule} =        %Rule{} diff --git a/lib/pleroma/web/admin_api/views/report_view.ex b/lib/pleroma/web/admin_api/views/report_view.ex index ca70f4359..b4b0be267 100644 --- a/lib/pleroma/web/admin_api/views/report_view.ex +++ b/lib/pleroma/web/admin_api/views/report_view.ex @@ -10,8 +10,8 @@ defmodule Pleroma.Web.AdminAPI.ReportView do    alias Pleroma.User    alias Pleroma.Web.AdminAPI    alias Pleroma.Web.AdminAPI.Report +  alias Pleroma.Web.AdminAPI.RuleView    alias Pleroma.Web.CommonAPI.Utils -  alias Pleroma.Web.MastodonAPI.InstanceView    alias Pleroma.Web.MastodonAPI.StatusView    defdelegate merge_account_views(user), to: AdminAPI.AccountView @@ -80,8 +80,10 @@ defmodule Pleroma.Web.AdminAPI.ReportView do    end    defp rules(rule_ids) do -    rule_ids -    |> Rule.get() -    |> render_many(InstanceView, "rule.json", as: :rule) +    rules = +      rule_ids +      |> Rule.get() + +    render(RuleView, "index.json", rules: rules)    end  end diff --git a/lib/pleroma/web/admin_api/views/rule_view.ex b/lib/pleroma/web/admin_api/views/rule_view.ex index f29145248..abfdd593f 100644 --- a/lib/pleroma/web/admin_api/views/rule_view.ex +++ b/lib/pleroma/web/admin_api/views/rule_view.ex @@ -13,7 +13,7 @@ defmodule Pleroma.Web.AdminAPI.RuleView do    def render("show.json", %{rule: rule} = _opts) do      %{ -      id: rule.id, +      id: to_string(rule.id),        priority: rule.priority,        text: rule.text      } diff --git a/lib/pleroma/web/api_spec/operations/admin/report_operation.ex b/lib/pleroma/web/api_spec/operations/admin/report_operation.ex index bb71abbd1..b90bbd592 100644 --- a/lib/pleroma/web/api_spec/operations/admin/report_operation.ex +++ b/lib/pleroma/web/api_spec/operations/admin/report_operation.ex @@ -175,7 +175,7 @@ defmodule Pleroma.Web.ApiSpec.Admin.ReportOperation do            items: %Schema{              type: :object,              properties: %{ -              id: %Schema{type: :integer}, +              id: %Schema{type: :string},                text: %Schema{type: :string}              }            } diff --git a/lib/pleroma/web/api_spec/operations/admin/rule_operation.ex b/lib/pleroma/web/api_spec/operations/admin/rule_operation.ex index ed0d9eaf6..2360880e4 100644 --- a/lib/pleroma/web/api_spec/operations/admin/rule_operation.ex +++ b/lib/pleroma/web/api_spec/operations/admin/rule_operation.ex @@ -103,10 +103,9 @@ defmodule Pleroma.Web.ApiSpec.Admin.RuleOperation do      %Schema{        type: :object,        properties: %{ -        id: %Schema{type: :integer}, +        id: %Schema{type: :string},          priority: %Schema{type: :integer}, -        text: %Schema{type: :string}, -        created_at: %Schema{type: :string, format: :"date-time"} +        text: %Schema{type: :string}        }      }    end diff --git a/lib/pleroma/web/api_spec/operations/instance_operation.ex b/lib/pleroma/web/api_spec/operations/instance_operation.ex index e66e5b7a3..f3dba108e 100644 --- a/lib/pleroma/web/api_spec/operations/instance_operation.ex +++ b/lib/pleroma/web/api_spec/operations/instance_operation.ex @@ -191,7 +191,7 @@ defmodule Pleroma.Web.ApiSpec.InstanceOperation do        items: %Schema{          type: :object,          properties: %{ -          id: %Schema{type: :integer}, +          id: %Schema{type: :string},            text: %Schema{type: :string}          }        } diff --git a/lib/pleroma/web/api_spec/operations/report_operation.ex b/lib/pleroma/web/api_spec/operations/report_operation.ex index fd68f67a2..f5f88974c 100644 --- a/lib/pleroma/web/api_spec/operations/report_operation.ex +++ b/lib/pleroma/web/api_spec/operations/report_operation.ex @@ -57,7 +57,7 @@ defmodule Pleroma.Web.ApiSpec.ReportOperation do          rule_ids: %Schema{            type: :array,            nullable: true, -          items: %Schema{type: :number}, +          items: %Schema{type: :string},            description: "Array of rules"          }        }, @@ -67,7 +67,7 @@ defmodule Pleroma.Web.ApiSpec.ReportOperation do          "status_ids" => ["1337"],          "comment" => "bad status!",          "forward" => "false", -        "rule_ids" => [3] +        "rule_ids" => ["3"]        }      }    end diff --git a/lib/pleroma/web/common_api.ex b/lib/pleroma/web/common_api.ex index 9f8d4def4..6fd744ddc 100644 --- a/lib/pleroma/web/common_api.ex +++ b/lib/pleroma/web/common_api.ex @@ -533,8 +533,7 @@ defmodule Pleroma.Web.CommonAPI do    defp get_report_rules(rule_ids) do      rule_ids -    |> Rule.get() -    |> Enum.map(& &1.id) +    |> Enum.filter(&Rule.exists?/1)    end    def update_report_state(activity_ids, state) when is_list(activity_ids) do diff --git a/lib/pleroma/web/mastodon_api/views/instance_view.ex b/lib/pleroma/web/mastodon_api/views/instance_view.ex index 8379731e4..c7f5ff554 100644 --- a/lib/pleroma/web/mastodon_api/views/instance_view.ex +++ b/lib/pleroma/web/mastodon_api/views/instance_view.ex @@ -66,7 +66,7 @@ defmodule Pleroma.Web.MastodonAPI.InstanceView do    def render("rule.json", %{rule: rule}) do      %{ -      id: rule.id, +      id: to_string(rule.id),        text: rule.text      }    end  | 
