diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/pleroma/web/activity_pub/transmogrifier.ex | 2 | ||||
| -rw-r--r-- | lib/pleroma/web/activity_pub/utils.ex | 11 | ||||
| -rw-r--r-- | lib/pleroma/web/activity_pub/views/user_view.ex | 8 | ||||
| -rw-r--r-- | lib/pleroma/web/mastodon_api/views/status_view.ex | 3 | ||||
| -rw-r--r-- | lib/pleroma/web/twitter_api/controllers/util_controller.ex | 3 | 
5 files changed, 22 insertions, 5 deletions
| diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index ecba27bef..3fa789d53 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -397,7 +397,7 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do          %{"type" => "Create", "object" => %{"type" => objtype} = object} = data,          options        ) -      when objtype in ["Article", "Note", "Video", "Page", "Question", "Answer"] do +      when objtype in ["Article", "Event", "Note", "Video", "Page", "Question", "Answer"] do      actor = Containment.get_actor(data)      data = diff --git a/lib/pleroma/web/activity_pub/utils.ex b/lib/pleroma/web/activity_pub/utils.ex index e87d09134..db7084246 100644 --- a/lib/pleroma/web/activity_pub/utils.ex +++ b/lib/pleroma/web/activity_pub/utils.ex @@ -22,7 +22,16 @@ defmodule Pleroma.Web.ActivityPub.Utils do    require Logger    require Pleroma.Constants -  @supported_object_types ["Article", "Note", "Video", "Page", "Question", "Answer", "Audio"] +  @supported_object_types [ +    "Article", +    "Note", +    "Event", +    "Video", +    "Page", +    "Question", +    "Answer", +    "Audio" +  ]    @strip_status_report_states ~w(closed resolved)    @supported_report_states ~w(open closed resolved)    @valid_visibilities ~w(public unlisted private direct) diff --git a/lib/pleroma/web/activity_pub/views/user_view.ex b/lib/pleroma/web/activity_pub/views/user_view.ex index 9059aa634..350c4391d 100644 --- a/lib/pleroma/web/activity_pub/views/user_view.ex +++ b/lib/pleroma/web/activity_pub/views/user_view.ex @@ -201,7 +201,6 @@ defmodule Pleroma.Web.ActivityPub.UserView do      %{        "id" => "#{user.ap_id}/followers",        "type" => "OrderedCollection", -      "totalItems" => total,        "first" =>          if showing_items do            collection(followers, "#{user.ap_id}/followers", 1, showing_items, total) @@ -209,6 +208,7 @@ defmodule Pleroma.Web.ActivityPub.UserView do            "#{user.ap_id}/followers?page=1"          end      } +    |> maybe_put_total_items(showing_count, total)      |> Map.merge(Utils.make_json_ld_header())    end @@ -251,6 +251,12 @@ defmodule Pleroma.Web.ActivityPub.UserView do      |> Map.merge(Utils.make_json_ld_header())    end +  defp maybe_put_total_items(map, false, _total), do: map + +  defp maybe_put_total_items(map, true, total) do +    Map.put(map, "totalItems", total) +  end +    def collection(collection, iri, page, show_items \\ true, total \\ nil) do      offset = (page - 1) * 10      items = Enum.slice(collection, offset, 10) diff --git a/lib/pleroma/web/mastodon_api/views/status_view.ex b/lib/pleroma/web/mastodon_api/views/status_view.ex index a0257dfa6..e9590224b 100644 --- a/lib/pleroma/web/mastodon_api/views/status_view.ex +++ b/lib/pleroma/web/mastodon_api/views/status_view.ex @@ -421,7 +421,8 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do      end    end -  def render_content(%{data: %{"type" => "Video"}} = object) do +  def render_content(%{data: %{"type" => object_type}} = object) +      when object_type in ["Video", "Event"] do      with name when not is_nil(name) and name != "" <- object.data["name"] do        "<p><a href=\"#{object.data["id"]}\">#{name}</a></p>#{object.data["content"]}"      else diff --git a/lib/pleroma/web/twitter_api/controllers/util_controller.ex b/lib/pleroma/web/twitter_api/controllers/util_controller.ex index 849783d4a..c35e393c0 100644 --- a/lib/pleroma/web/twitter_api/controllers/util_controller.ex +++ b/lib/pleroma/web/twitter_api/controllers/util_controller.ex @@ -111,7 +111,8 @@ defmodule Pleroma.Web.TwitterAPI.UtilController do    defp is_status?(acct) do      case Pleroma.Object.Fetcher.fetch_and_contain_remote_object_from_id(acct) do -      {:ok, %{"type" => type}} when type in ["Article", "Note", "Video", "Page", "Question"] -> +      {:ok, %{"type" => type}} +      when type in ["Article", "Event", "Note", "Video", "Page", "Question"] ->          true        _ -> | 
