Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Pleroma
pleroma
Commits
e679da4c
Commit
e679da4c
authored
Jan 08, 2019
by
minibikini
Browse files
add `pinned` property to `StatusView`
parent
63dbd875
Changes
3
Hide whitespace changes
Inline
Side-by-side
lib/pleroma/web/mastodon_api/views/status_view.ex
View file @
e679da4c
...
...
@@ -76,6 +76,7 @@ def render(
reblogged:
false
,
favourited:
false
,
muted:
false
,
pinned:
pinned?
(
activity
,
user
),
sensitive:
false
,
spoiler_text:
""
,
visibility:
"public"
,
...
...
@@ -142,6 +143,7 @@ def render("status.json", %{activity: %{data: %{"object" => object}} = activity}
reblogged:
present?
(
repeated
),
favourited:
present?
(
favorited
),
muted:
false
,
pinned:
pinned?
(
activity
,
user
),
sensitive:
sensitive
,
spoiler_text:
object
[
"summary"
]
||
""
,
visibility:
get_visibility
(
object
),
...
...
@@ -295,4 +297,7 @@ def build_emojis(emojis) do
defp
present?
(
nil
),
do
:
false
defp
present?
(
false
),
do
:
false
defp
present?
(
_
),
do
:
true
defp
pinned?
(%
Activity
{
id:
id
},
%
User
{
info:
%{
pinned_activities:
pinned_activities
}}),
do
:
id
in
pinned_activities
end
test/web/mastodon_api/mastodon_api_controller_test.exs
View file @
e679da4c
...
...
@@ -1489,7 +1489,7 @@ test "returns pinned statuses", %{conn: conn} do
id_str
=
Integer
.
to_string
(
activity
.
id
)
assert
[%{
"id"
=>
^
id_str
}]
=
result
assert
[%{
"id"
=>
^
id_str
,
"pinned"
=>
true
}]
=
result
end
test
"pin status"
,
%{
conn:
conn
}
do
...
...
@@ -1499,14 +1499,14 @@ test "pin status", %{conn: conn} do
{
:ok
,
activity
}
=
CommonAPI
.
post
(
user
,
%{
"status"
=>
"HI!!!"
})
id_str
=
Integer
.
to_string
(
activity
.
id
)
assert
%{
"id"
=>
^
id_str
}
=
assert
%{
"id"
=>
^
id_str
,
"pinned"
=>
true
}
=
conn
|>
assign
(
:user
,
user
)
|>
post
(
"/api/v1/statuses/
#{
activity
.
id
}
/pin"
)
|>
Map
.
get
(
:resp_body
)
|>
Jason
.
decode!
()
assert
[%{
"id"
=>
^
id_str
}]
=
assert
[%{
"id"
=>
^
id_str
,
"pinned"
=>
true
}]
=
conn
|>
assign
(
:user
,
user
)
|>
get
(
"/api/v1/accounts/
#{
user
.
id
}
/statuses?pinned=true"
)
...
...
@@ -1524,7 +1524,7 @@ test "unpin status", %{conn: conn} do
id_str
=
Integer
.
to_string
(
activity
.
id
)
user
=
User
.
get_by_ap_id
(
user
.
ap_id
)
assert
%{
"id"
=>
^
id_str
}
=
assert
%{
"id"
=>
^
id_str
,
"pinned"
=>
false
}
=
conn
|>
assign
(
:user
,
user
)
|>
post
(
"/api/v1/statuses/
#{
activity
.
id
}
/unpin"
)
...
...
@@ -1549,7 +1549,7 @@ test "max pinned statuses", %{conn: conn} do
id_str_one
=
Integer
.
to_string
(
activity_one
.
id
)
assert
%{
"id"
=>
^
id_str_one
}
=
assert
%{
"id"
=>
^
id_str_one
,
"pinned"
=>
true
}
=
conn
|>
assign
(
:user
,
user
)
|>
post
(
"/api/v1/statuses/
#{
id_str_one
}
/pin"
)
...
...
test/web/mastodon_api/status_view_test.exs
View file @
e679da4c
...
...
@@ -63,6 +63,7 @@ test "a note activity" do
reblogged:
false
,
favourited:
false
,
muted:
false
,
pinned:
false
,
sensitive:
false
,
spoiler_text:
note
.
data
[
"object"
][
"summary"
],
visibility:
"public"
,
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment