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
95ab0dc3
Commit
95ab0dc3
authored
May 07, 2017
by
lain
Browse files
Add conversation ids to twapi announce representer.
parent
c51e1597
Changes
2
Hide whitespace changes
Inline
Side-by-side
lib/pleroma/web/twitter_api/representers/activity_representer.ex
View file @
95ab0dc3
...
...
@@ -27,7 +27,8 @@ def to_map(%Activity{data: %{"type" => "Announce", "actor" => actor, "published"
"is_post_verb"
=>
false
,
"uri"
=>
"tag:
#{
activity
.
data
[
"id"
]
}
:objectType=note"
,
"created_at"
=>
created_at
,
"retweeted_status"
=>
retweeted_status
"retweeted_status"
=>
retweeted_status
,
"statusnet_conversation_id"
=>
conversation_id
(
announced_activity
)
}
end
...
...
@@ -82,11 +83,7 @@ def to_map(%Activity{data: %{"object" => %{"content" => content} = object}} = ac
|>
Enum
.
filter
(
&
(
&1
))
|>
Enum
.
map
(
fn
(
user
)
->
UserRepresenter
.
to_map
(
user
,
opts
)
end
)
conversation_id
=
with
context
when
not
is_nil
(
context
)
<-
activity
.
data
[
"context"
]
do
TwitterAPI
.
context_to_conversation_id
(
context
)
else
_e
->
nil
end
conversation_id
=
conversation_id
(
activity
)
%{
"id"
=>
activity
.
id
,
...
...
@@ -108,6 +105,13 @@ def to_map(%Activity{data: %{"object" => %{"content" => content} = object}} = ac
}
end
def
conversation_id
(
activity
)
do
with
context
when
not
is_nil
(
context
)
<-
activity
.
data
[
"context"
]
do
TwitterAPI
.
context_to_conversation_id
(
context
)
else
_e
->
nil
end
end
defp
date_to_asctime
(
date
)
do
with
{
:ok
,
date
,
_offset
}
<-
date
|>
DateTime
.
from_iso8601
do
Strftime
.
strftime!
(
date
,
"%a %b %d %H:%M:%S %z %Y"
)
...
...
test/web/twitter_api/representers/activity_representer_test.exs
View file @
95ab0dc3
...
...
@@ -22,6 +22,8 @@ test "an announce activity" do
retweeted_status
=
ActivityRepresenter
.
to_map
(
note_activity
,
%{
user:
activity_actor
,
for:
user
})
assert
retweeted_status
[
"repeated"
]
==
true
assert
retweeted_status
[
"id"
]
==
note_activity
.
id
assert
status
[
"statusnet_conversation_id"
]
==
retweeted_status
[
"statusnet_conversation_id"
]
assert
status
[
"retweeted_status"
]
==
retweeted_status
end
...
...
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