helper_method :current_user
helper_method :oauth_token
- helper_method :preferred_langauges
private
end
def require_oauth
- @oauth_token = current_user.access_token(Settings.oauth_key) if current_user && Settings.key?(:oauth_key)
+ @oauth_token = current_user.oauth_token(Settings.oauth_application) if current_user && Settings.key?(:oauth_application)
end
##
# clean any referer parameter
def safe_referer(referer)
- referer = URI.parse(referer)
+ begin
+ referer = URI.parse(referer)
+
+ if referer.scheme == "http" || referer.scheme == "https"
+ referer.scheme = nil
+ referer.host = nil
+ referer.port = nil
+ elsif referer.scheme || referer.host || referer.port
+ referer = nil
+ end
- if referer.scheme == "http" || referer.scheme == "https"
- referer.scheme = nil
- referer.host = nil
- referer.port = nil
- elsif referer.scheme || referer.host || referer.port
+ referer = nil if referer&.path&.first != "/"
+ rescue URI::InvalidURIError
referer = nil
end
- referer = nil if referer&.path&.first != "/"
+ referer&.to_s
+ end
- referer.to_s
+ def scope_enabled?(scope)
+ doorkeeper_token&.includes_scope?(scope) || current_token&.includes_scope?(scope)
end
+
+ helper_method :scope_enabled?
end