diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex
index 09bcf0cb4..6ba2b165c 100644
--- a/lib/pleroma/user.ex
+++ b/lib/pleroma/user.ex
@@ -29,14 +29,14 @@ defmodule Pleroma.User do
def avatar_url(user) do
case user.avatar do
%{"url" => [%{"href" => href} | _]} -> href
- _ -> "https://placehold.it/48x48"
+ _ -> "#{Web.base_url()}/static/avi.png"
end
end
def banner_url(user) do
case user.info["banner"] do
%{"url" => [%{"href" => href} | _]} -> href
- _ -> nil
+ _ -> "#{Web.base_url()}/static/banner.png"
end
end
diff --git a/lib/pleroma/web/mastodon_api/views/account_view.ex b/lib/pleroma/web/mastodon_api/views/account_view.ex
index 1d5918988..d2a4dd366 100644
--- a/lib/pleroma/web/mastodon_api/views/account_view.ex
+++ b/lib/pleroma/web/mastodon_api/views/account_view.ex
@@ -5,19 +5,15 @@ defmodule Pleroma.Web.MastodonAPI.AccountView do
alias Pleroma.Web.CommonAPI.Utils
alias Pleroma.Web.MediaProxy
- defp image_url(%{"url" => [ %{ "href" => href } | _ ]}), do: href
- defp image_url(_), do: nil
-
def render("accounts.json", %{users: users} = opts) do
render_many(users, AccountView, "account.json", opts)
end
def render("account.json", %{user: user}) do
image = User.avatar_url(user) |> MediaProxy.url()
+ header = User.banner_url(user) |> MediaProxy.url()
user_info = User.user_info(user)
- header = (image_url(user.info["banner"]) || "https://placehold.it/700x335") |> MediaProxy.url()
-
%{
id: to_string(user.id),
username: hd(String.split(user.nickname, "@")),
diff --git a/lib/pleroma/web/twitter_api/views/user_view.ex b/lib/pleroma/web/twitter_api/views/user_view.ex
index cc6b450fb..1b995f42f 100644
--- a/lib/pleroma/web/twitter_api/views/user_view.ex
+++ b/lib/pleroma/web/twitter_api/views/user_view.ex
@@ -45,7 +45,7 @@ def render("user.json", %{user: user = %User{}} = assigns) do
"screen_name" => user.nickname,
"statuses_count" => user_info[:note_count],
"statusnet_profile_url" => user.ap_id,
- "cover_photo" => image_url(user.info["banner"]) |> MediaProxy.url(),
+ "cover_photo" => User.banner_url(user) |> MediaProxy.url(),
"background_image" => image_url(user.info["background"]) |> MediaProxy.url(),
}
diff --git a/priv/static/static/avi.png b/priv/static/static/avi.png
new file mode 100644
index 000000000..336fd15ef
Binary files /dev/null and b/priv/static/static/avi.png differ
diff --git a/priv/static/static/banner.png b/priv/static/static/banner.png
new file mode 100644
index 000000000..467c075d6
Binary files /dev/null and b/priv/static/static/banner.png differ
diff --git a/test/web/mastodon_api/account_view_test.exs b/test/web/mastodon_api/account_view_test.exs
index eccfe0b36..061fc2693 100644
--- a/test/web/mastodon_api/account_view_test.exs
+++ b/test/web/mastodon_api/account_view_test.exs
@@ -19,10 +19,10 @@ test "Represent a user account" do
statuses_count: 5,
note: user.bio,
url: user.ap_id,
- avatar: "https://placehold.it/48x48",
- avatar_static: "https://placehold.it/48x48",
- header: "https://placehold.it/700x335",
- header_static: "https://placehold.it/700x335",
+ avatar: "http://localhost:4001/static/avi.png",
+ avatar_static: "http://localhost:4001/static/avi.png",
+ header: "http://localhost:4001/static/banner.png",
+ header_static: "http://localhost:4001/static/banner.png",
source: %{
note: "",
privacy: "public",
diff --git a/test/web/ostatus/user_representer_test.exs b/test/web/ostatus/user_representer_test.exs
index d5d70f5c6..b22420379 100644
--- a/test/web/ostatus/user_representer_test.exs
+++ b/test/web/ostatus/user_representer_test.exs
@@ -21,6 +21,7 @@ test "returns a user with id, uri, name and link" do
#{user.bio}
#{user.nickname}
+
"""
assert clean(res) == clean(expected)
diff --git a/test/web/twitter_api/views/user_view_test.exs b/test/web/twitter_api/views/user_view_test.exs
index 753e41d20..3f84e4116 100644
--- a/test/web/twitter_api/views/user_view_test.exs
+++ b/test/web/twitter_api/views/user_view_test.exs
@@ -33,7 +33,8 @@ test "A user" do
{:ok, user} = User.update_follower_count(user)
Cachex.set(:user_cache, "user_info:#{user.id}", User.user_info(Repo.get!(User, user.id)))
- image = "https://placehold.it/48x48"
+ image = "http://localhost:4001/static/avi.png"
+ banner = "http://localhost:4001/static/banner.png"
represented = %{
"id" => user.id,
@@ -54,7 +55,7 @@ test "A user" do
"statusnet_blocking" => false,
"rights" => %{},
"statusnet_profile_url" => user.ap_id,
- "cover_photo" => nil,
+ "cover_photo" => banner,
"background_image" => nil
}
@@ -64,7 +65,9 @@ test "A user" do
test "A user for a given other follower", %{user: user} do
{:ok, follower} = UserBuilder.insert(%{following: [User.ap_followers(user)]})
{:ok, user} = User.update_follower_count(user)
- image = "https://placehold.it/48x48"
+ image = "http://localhost:4001/static/avi.png"
+ banner = "http://localhost:4001/static/banner.png"
+
represented = %{
"id" => user.id,
"name" => user.name,
@@ -84,7 +87,7 @@ test "A user for a given other follower", %{user: user} do
"statusnet_blocking" => false,
"rights" => %{},
"statusnet_profile_url" => user.ap_id,
- "cover_photo" => nil,
+ "cover_photo" => banner,
"background_image" => nil
}
@@ -95,7 +98,9 @@ test "A user that follows you", %{user: user} do
follower = insert(:user)
{:ok, follower} = User.follow(follower, user)
{:ok, user} = User.update_follower_count(user)
- image = "https://placehold.it/48x48"
+ image = "http://localhost:4001/static/avi.png"
+ banner = "http://localhost:4001/static/banner.png"
+
represented = %{
"id" => follower.id,
"name" => follower.name,
@@ -115,7 +120,7 @@ test "A user that follows you", %{user: user} do
"statusnet_blocking" => false,
"rights" => %{},
"statusnet_profile_url" => follower.ap_id,
- "cover_photo" => nil,
+ "cover_photo" => banner,
"background_image" => nil
}
@@ -126,7 +131,9 @@ test "A blocked user for the blocker", %{user: user} do
user = insert(:user)
blocker = insert(:user)
User.block(blocker, user)
- image = "https://placehold.it/48x48"
+ image = "http://localhost:4001/static/avi.png"
+ banner = "http://localhost:4001/static/banner.png"
+
represented = %{
"id" => user.id,
"name" => user.name,
@@ -146,7 +153,7 @@ test "A blocked user for the blocker", %{user: user} do
"statusnet_blocking" => true,
"rights" => %{},
"statusnet_profile_url" => user.ap_id,
- "cover_photo" => nil,
+ "cover_photo" => banner,
"background_image" => nil
}