Module: Premailer::Rails::CSSLoaders::NetworkLoader
- Extended by:
- NetworkLoader
- Included in:
- NetworkLoader
- Defined in:
- lib/premailer/rails/css_loaders/network_loader.rb
Instance Method Summary collapse
Instance Method Details
#load(url) ⇒ Object
7 8 9 10 |
# File 'lib/premailer/rails/css_loaders/network_loader.rb', line 7 def load(url) uri = uri_for_url(url) Net::HTTP.get(uri) if uri end |
#uri_for_url(url) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/premailer/rails/css_loaders/network_loader.rb', line 12 def uri_for_url(url) uri = URI(url) if not valid_uri?(uri) and defined?(::Rails) scheme, host = ::Rails.configuration.action_controller.asset_host.split(%r{:?//}) scheme = 'http' if scheme.blank? uri.scheme ||= scheme uri.host ||= host end uri if valid_uri?(uri) end |
#valid_uri?(uri) ⇒ Boolean
26 27 28 |
# File 'lib/premailer/rails/css_loaders/network_loader.rb', line 26 def valid_uri?(uri) uri.host.present? && uri.scheme.present? end |