module FallbackAssets

Constants

VERSION

Public Class Methods

asset_from_environment(asset, env = false) click to toggle source
# File lib/fallback_assets.rb, line 16
def self.asset_from_environment(asset, env = false)
  config = settings
  env = environment || "development"

  return false unless config["fallbacks"][asset[:type]]
  return false unless config["fallbacks"][asset[:type]][asset[:name]]
  return false unless config["fallbacks"][asset[:type]][asset[:name]][env]

  config["fallbacks"][asset[:type]][asset[:name]][env]
end
available_assets() click to toggle source
# File lib/fallback_assets.rb, line 35
def self.available_assets
  [:javascripts, :stylesheets]
end
environment() click to toggle source
# File lib/fallback_assets.rb, line 31
def self.environment
  ENV['RAILS_ENV']
end
load(type, name) click to toggle source
# File lib/fallback_assets.rb, line 7
def self.load(type, name)
  return false unless available_assets.include?(type)
  return false unless type.is_a?(Symbol)
  return false unless name.is_a?(Symbol)

  asset = {type: type.to_s, name: name.to_s}
  asset_from_environment(asset) || asset_from_environment(asset, "development")
end
load_javascript(name) click to toggle source
# File lib/fallback_assets.rb, line 39
def self.load_javascript(name)
  load(:javascripts, name)
end
load_stylesheet(name) click to toggle source
# File lib/fallback_assets.rb, line 43
def self.load_stylesheet(name)
  load(:stylesheets, name)
end
settings() click to toggle source
# File lib/fallback_assets.rb, line 27
def self.settings
  YAML.load_file("#{Rails.root}/config/fallback_assets.yml")
end