mastodon/app/helpers/application_helper.rb

37 lines
950 B
Ruby
Raw Normal View History

2016-02-20 22:53:20 +01:00
module ApplicationHelper
2016-02-22 18:10:30 +01:00
include RoutingHelper
2016-02-22 16:00:20 +01:00
def unique_tag(date, id, type)
"tag:#{LOCAL_DOMAIN},#{date.strftime('%Y-%m-%d')}:objectId=#{id}:objectType=#{type}"
end
def unique_tag_to_local_id(tag, expected_type)
2016-02-26 15:28:08 +01:00
matches = Regexp.new("objectId=([\\d]+):objectType=#{expected_type}").match(tag)
return matches[1] unless matches.nil?
end
2016-02-24 17:23:59 +01:00
def local_id?(id)
id.start_with?("tag:#{LOCAL_DOMAIN}")
end
2016-02-22 16:00:20 +01:00
def subscription_url(account)
2016-02-22 18:10:30 +01:00
add_base_url_prefix subscriptions_path(id: account.id, format: '')
2016-02-22 16:00:20 +01:00
end
def salmon_url(account)
add_base_url_prefix salmon_path(id: account.id, format: '')
end
2016-02-28 15:46:29 +01:00
def profile_url(account)
account.local? ? super(name: account.username) : account.url
end
def status_url(status)
status.local? ? super(name: status.account.username, id: status.stream_entry.id) : status.url
end
2016-02-22 16:00:20 +01:00
def add_base_url_prefix(suffix)
2016-02-22 18:10:30 +01:00
File.join(root_url, "api", suffix)
2016-02-22 16:00:20 +01:00
end
2016-02-20 22:53:20 +01:00
end