Skip to content
Snippets Groups Projects
Commit 42eeecba authored by Eugen Rochko's avatar Eugen Rochko
Browse files

Service to reblog statuses

parent c967802c
No related branches found
No related tags found
No related merge requests found
class PostStatusService < BaseService
# Post a text status update, fetch and notify remote users mentioned
# @param [Account] account Account from which to post
# @param [String] text Message
# @param [Status] in_reply_to Optional status to reply to
# @return [Status]
def call(account, text, in_reply_to = nil)
status = account.statuses.create!(text: text, thread: in_reply_to)
......@@ -14,6 +19,8 @@ class PostStatusService < BaseService
next if mentioned_account.local?
send_interaction_service.(status.stream_entry, mentioned_account)
end
status
end
private
......
class ReblogService < BaseService
# Reblog a status and notify its remote author
# @param [Account] account Account to reblog from
# @param [Status] reblogged_status Status to be reblogged
# @return [Status]
def call(account, reblogged_status)
reblog = account.statuses.create!(reblog: reblogged_status, text: '')
return reblog if reblogged_status.local?
send_interaction_service.(reblog.stream_entry, reblogged_status.account)
reblog
end
private
def send_interaction_service
@send_interaction_service ||= SendInteractionService.new
end
end
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment