diff options
author | ThibG <thib@sitedethib.com> | 2018-08-17 18:09:30 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-17 18:09:30 +0200 |
commit | 32075fe27f699d5a586e6ecf26c172550f9d4086 (patch) | |
tree | 61f48fa2dee608f72990f76a8f0497d670339252 /app/services/resolve_url_service.rb | |
parent | 4a6bc2482a26aa0441485ca360a3d3c0eeea7fe4 (diff) | |
parent | a16ff45d81d77d93f33ad57e746c780392ab1a1c (diff) |
Merge pull request #642 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/services/resolve_url_service.rb')
-rw-r--r-- | app/services/resolve_url_service.rb | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/app/services/resolve_url_service.rb b/app/services/resolve_url_service.rb index a068c1ed8..1db1917e2 100644 --- a/app/services/resolve_url_service.rb +++ b/app/services/resolve_url_service.rb @@ -2,11 +2,13 @@ class ResolveURLService < BaseService include JsonLdHelper + include Authorization attr_reader :url - def call(url) + def call(url, on_behalf_of: nil) @url = url + @on_behalf_of = on_behalf_of return process_local_url if local_url? @@ -84,6 +86,10 @@ class ResolveURLService < BaseService def check_local_status(status) return if status.nil? - status if status.public_visibility? || status.unlisted_visibility? + authorize_with @on_behalf_of, status, :show? + status + rescue Mastodon::NotPermittedError + # Do not disclose the existence of status the user is not authorized to see + nil end end |