You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
module Paperclip
|
|
|
|
module UrlGeneratorExtensions
|
|
|
|
# Monkey-patch Paperclip to use Addressable::URI's normalization instead
|
|
|
|
# of the long-deprecated URI.esacpe
|
|
|
|
def escape_url(url)
|
|
|
|
if url.respond_to?(:escape)
|
|
|
|
url.escape
|
|
|
|
else
|
|
|
|
Addressable::URI.parse(url).normalize.to_str.gsub(escape_regex) { |m| "%#{m.ord.to_s(16).upcase}" }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def for_as_default(style_name)
|
|
|
|
attachment_options[:interpolator].interpolate(default_url, @attachment, style_name)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
Paperclip::UrlGenerator.prepend(Paperclip::UrlGeneratorExtensions)
|