Sha256: 3a7f2cee1814a21f89b61afb29e62418ebbbf43826df149a9e81806d43205f37

Contents?: true

Size: 1.79 KB

Versions: 18

Compression:

Stored size: 1.79 KB

Contents

require 'apartment'
require 'ims/lti'
require 'attr_encrypted'
require 'secure_headers'

module PandaPal
  class Engine < ::Rails::Engine
    config.autoload_once_paths += Dir["#{config.root}/lib/**/"]

    isolate_namespace PandaPal

    config.generators do |g|
      g.test_framework :rspec
      g.fixture_replacement :factory_girl, :dir => 'spec/factories'
    end

    initializer :append_migrations do |app|
      unless app.root.to_s.match root.to_s
        config.paths["db/migrate"].expanded.each do |expanded_path|
          app.config.paths["db/migrate"] << expanded_path
        end
        # Apartment will modify this, but it doesn't fully support engine migrations, so we'll reset it here
        ActiveRecord::Migrator.migrations_paths = Rails.application.paths['db/migrate'].to_a
      end
    end

    initializer 'panda_pal.app_controller' do |app|
      OAUTH_10_SUPPORT = true
      ActiveSupport.on_load(:action_controller) do
        include PandaPal::Helpers::ControllerHelper
      end
    end

    initializer 'panda_pal.route_helper' do |route|
      ActionDispatch::Routing::Mapper.send :include, PandaPal::Helpers::RouteHelper
    end

    initializer 'panda_pal.route_options' do |app|
      ActiveSupport.on_load(:action_controller) do
        Rails.application.reload_routes!
        PandaPal::validate_pandapal_config!
      end
    end

    initializer :secure_headers do |app|
      begin
        ::SecureHeaders::Configuration.default do |config|
          PandaPal::SecureHeaders.apply_defaults(config)
        end
      rescue ::SecureHeaders::Configuration::AlreadyConfiguredError
        # The App already applied settings
      end

      ::SecureHeaders::Configuration.override(:safari_override) do |config|
        config.cookies = ::SecureHeaders::OPT_OUT
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
panda_pal-5.3.11 lib/panda_pal/engine.rb
panda_pal-5.3.10 lib/panda_pal/engine.rb
panda_pal-5.3.9 lib/panda_pal/engine.rb
panda_pal-5.3.7 lib/panda_pal/engine.rb
panda_pal-5.3.6 lib/panda_pal/engine.rb
panda_pal-5.3.6.beta3 lib/panda_pal/engine.rb
panda_pal-5.3.6.beta2 lib/panda_pal/engine.rb
panda_pal-5.3.6.beta1 lib/panda_pal/engine.rb
panda_pal-5.3.5 lib/panda_pal/engine.rb
panda_pal-5.3.4 lib/panda_pal/engine.rb
panda_pal-5.3.2 lib/panda_pal/engine.rb
panda_pal-5.3.0 lib/panda_pal/engine.rb
panda_pal-5.2.5 lib/panda_pal/engine.rb
panda_pal-5.2.4 lib/panda_pal/engine.rb
panda_pal-5.2.3 lib/panda_pal/engine.rb
panda_pal-5.2.2 lib/panda_pal/engine.rb
panda_pal-5.2.1 lib/panda_pal/engine.rb
panda_pal-5.2.0 lib/panda_pal/engine.rb