Mastodon makes this field null when posting with MastoFE or if you choose to not disclose it, so it's safe to be null by default

This commit is contained in:
Mark Felder 2021-02-18 16:35:03 -06:00
parent fb2a8e7ccd
commit d5ef02c7a7
4 changed files with 7 additions and 9 deletions

View file

@ -23,9 +23,10 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do
application: %Schema{ application: %Schema{
description: "The application used to post this status", description: "The application used to post this status",
type: :object, type: :object,
nullable: true,
properties: %{ properties: %{
name: %Schema{type: :string}, name: %Schema{type: :string},
website: %Schema{type: :string, nullable: true, format: :uri} website: %Schema{type: :string, format: :uri}
} }
}, },
bookmarked: %Schema{type: :boolean, description: "Have you bookmarked this status?"}, bookmarked: %Schema{type: :boolean, description: "Have you bookmarked this status?"},
@ -291,7 +292,7 @@ defmodule Pleroma.Web.ApiSpec.Schemas.Status do
"url" => "http://localhost:4001/users/nick6", "url" => "http://localhost:4001/users/nick6",
"username" => "nick6" "username" => "nick6"
}, },
"application" => %{"name" => "Web", "website" => nil}, "application" => nil,
"bookmarked" => false, "bookmarked" => false,
"card" => nil, "card" => nil,
"content" => "foobar", "content" => "foobar",

View file

@ -425,5 +425,5 @@ defp put_application(params, %{assigns: %{token: %Token{} = token}} = _conn) do
Map.put(params, :application, %{name: client_name, website: website}) Map.put(params, :application, %{name: client_name, website: website})
end end
defp put_application(params, _), do: Map.put(params, :application, %{name: "Web", website: nil}) defp put_application(params, _), do: Map.put(params, :application, nil)
end end

View file

@ -180,7 +180,7 @@ def render(
media_attachments: reblogged[:media_attachments] || [], media_attachments: reblogged[:media_attachments] || [],
mentions: mentions, mentions: mentions,
tags: reblogged[:tags] || [], tags: reblogged[:tags] || [],
application: activity_object.data["application"] || %{name: "Web", website: nil}, application: activity_object.data["application"] || nil,
language: nil, language: nil,
emojis: [], emojis: [],
pleroma: %{ pleroma: %{
@ -345,7 +345,7 @@ def render("show.json", %{activity: %{data: %{"object" => _object}} = activity}
poll: render(PollView, "show.json", object: object, for: opts[:for]), poll: render(PollView, "show.json", object: object, for: opts[:for]),
mentions: mentions, mentions: mentions,
tags: build_tags(tags), tags: build_tags(tags),
application: object.data["application"] || %{name: "Web", website: nil}, application: object.data["application"] || nil,
language: nil, language: nil,
emojis: build_emojis(object.data["emoji"]), emojis: build_emojis(object.data["emoji"]),
pleroma: %{ pleroma: %{

View file

@ -266,10 +266,7 @@ test "a note activity" do
url: "http://localhost:4001/tag/#{object_data["tag"]}" url: "http://localhost:4001/tag/#{object_data["tag"]}"
} }
], ],
application: %{ application: nil,
name: "Web",
website: nil
},
language: nil, language: nil,
emojis: [ emojis: [
%{ %{