def require_user
unless current_user
if request.get?
- redirect_to :controller => "users", :action => "login", :referer => request.fullpath
+ redirect_to login_path(:referer => request.fullpath)
else
head :forbidden
end
report_error e.message, :bad_request
rescue ActiveRecord::RecordInvalid => e
message = "#{e.record.class} #{e.record.id}: "
- e.record.errors.each { |attr, msg| message << "#{attr}: #{msg} (#{e.record[attr].inspect})" }
+ e.record.errors.each { |error| message << "#{error.attribute}: #{error.message} (#{e.record[error.attribute].inspect})" }
report_error message, :bad_request
rescue OSM::APIError => e
report_error e.message, e.status
end
def deny_access(_exception)
- if current_token
+ if doorkeeper_token || current_token
set_locale
report_error t("oauth.permissions.missing"), :forbidden
elsif current_user
end
elsif request.get?
respond_to do |format|
- format.html { redirect_to :controller => "users", :action => "login", :referer => request.fullpath }
+ format.html { redirect_to login_path(:referer => request.fullpath) }
format.any { head :forbidden }
end
else
referer = nil
end
+ referer = nil if referer&.path&.first != "/"
+
referer.to_s
end
end