Sha256: c5a6ee54edd92d1da789a3e330e7b8626d42287de74913ff8ab904dd45a49fd3

Contents?: true

Size: 1.98 KB

Versions: 4

Compression:

Stored size: 1.98 KB

Contents

require "rails"
require "active_record/railtie"
require "action_view"

require 'jquery-rails'

require 'rails_connector/configuration'

module ::RailsConnector
  class Engine < Rails::Engine
    config.to_prepare { RailsConnector::Configuration.to_prepare }
    config.after_initialize { RailsConnector::Configuration.after_initialize }

    # make sure our exceptions cause an adequate error page and http status code
    config.action_dispatch.rescue_responses.merge!("RailsConnector::ResourceNotFound" => :not_found)

    initializer "rails_connector.add_cms_routing_paths", :after => :add_routing_paths do |app|
      cms_route = File.expand_path("cms_routes.rb", paths['config'].to_a.first)
      app.routes_reloader.paths.push(cms_route)
    end

    initializer "rails_connector.add_assets" do |app|
      app.config.assets.precompile += %w[
        editmarker.css editmarker.js
      ]
    end

    # Expose rails connector runtime to controller for logging.
    initializer "rails_connector.log_runtime" do |app|
      runtime =
        begin
          RailsConnector::ControllerRuntime
        rescue NameError
          nil
        end

      if runtime
        RailsConnector::LogSubscriber.attach_to :rails_connector
        ActiveSupport.on_load(:action_controller) do
          include runtime
        end
      end
    end

    initializer "rails_connector.configure_database", :before => :load_config_initializers do |app|
      RailsConnector::Configuration.configure_cms_database
    end

    initializer "rails_connector.routing_helpers" do
      if Rails.env == 'test'
        ActionDispatch::TestRequest.__send__(:include, RailsConnector::CmsTestRequest)
      end

      ActionController::Base.__send__(:include, CmsRoutingHelper)
      ActionView::Base.__send__(:include, CmsRoutingHelper)
    end

    config.autoload_paths += paths['lib'].to_a
    config.autoload_once_paths += paths['lib'].to_a

    RailsConnector.rack_middlewares.each { |middleware| config.app_middleware.use middleware }
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
infopark_fiona_connector-7.0.1 lib/rails_connector/engine.rb
infopark_fiona_connector-7.0.1.beta2 lib/rails_connector/engine.rb
infopark_fiona_connector-7.0.0 lib/rails_connector/engine.rb
infopark_fiona_connector-6.10.0.beta1 lib/rails_connector/engine.rb