aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/application
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib/rails/application')
-rw-r--r--railties/lib/rails/application/configuration.rb9
-rw-r--r--railties/lib/rails/application/finisher.rb21
2 files changed, 29 insertions, 1 deletions
diff --git a/railties/lib/rails/application/configuration.rb b/railties/lib/rails/application/configuration.rb
index 23b0e765ae..4a042e0033 100644
--- a/railties/lib/rails/application/configuration.rb
+++ b/railties/lib/rails/application/configuration.rb
@@ -9,7 +9,8 @@ module Rails
:filter_parameters, :helpers_paths, :logger,
:preload_frameworks, :reload_plugins,
:secret_token, :serve_static_assets, :session_options,
- :time_zone, :whiny_nils, :force_ssl
+ :time_zone, :whiny_nils, :force_ssl,
+ :assets
attr_writer :log_level
@@ -29,6 +30,12 @@ module Rails
@log_level = nil
@middleware = app_middleware
@generators = app_generators
+
+ @assets = ActiveSupport::OrderedOptions.new
+ @assets.enabled = false
+ @assets.paths = []
+ @assets.precompile = []
+ @assets.prefix = "/assets"
end
def compiled_asset_path
diff --git a/railties/lib/rails/application/finisher.rb b/railties/lib/rails/application/finisher.rb
index a45b61c99c..bae464a840 100644
--- a/railties/lib/rails/application/finisher.rb
+++ b/railties/lib/rails/application/finisher.rb
@@ -33,6 +33,27 @@ module Rails
end
end
+ initializer :add_sprockets_route do |app|
+ assets = config.assets
+ if assets.enabled
+ app.routes.append do
+ mount app.assets => assets.prefix
+ end
+ end
+ end
+
+ initializer :set_sprockets_logger do |app|
+ if config.assets.enabled
+ app.assets.logger = Rails.logger
+ end
+ end
+
+ initializer :index_sprockets_environment do |app|
+ if config.assets.enabled && config.action_controller.perform_caching
+ app.assets = app.assets.index
+ end
+ end
+
initializer :build_middleware_stack do
build_middleware_stack
end