Module: Premailer::Rails::CSSLoaders::AssetPipelineLoader
- Extended by:
- AssetPipelineLoader
- Included in:
- AssetPipelineLoader
- Defined in:
- lib/premailer/rails/css_loaders/asset_pipeline_loader.rb
Instance Method Summary collapse
Instance Method Details
#asset_pipeline_present? ⇒ Boolean
15 16 17 18 19 20 |
# File 'lib/premailer/rails/css_loaders/asset_pipeline_loader.rb', line 15 def asset_pipeline_present? defined?(::Rails) && ::Rails.respond_to?(:application) && ::Rails.application.respond_to?(:assets) && ::Rails.application.assets end |
#file_name(url) ⇒ Object
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/premailer/rails/css_loaders/asset_pipeline_loader.rb', line 22 def file_name(url) prefix = [ ::Rails.configuration.relative_url_root, ::Rails.configuration.assets.prefix, '/' ].join URI(url).path .sub(/\A#{prefix}/, '') .sub(/-(\h{32}|\h{64})\.css\z/, '.css') end |
#load(url) ⇒ Object
7 8 9 10 11 12 13 |
# File 'lib/premailer/rails/css_loaders/asset_pipeline_loader.rb', line 7 def load(url) if asset_pipeline_present? file = file_name(url) asset = ::Rails.application.assets.find_asset(file) asset.to_s if asset end end |