Sha256: 3d263f24b0fd21da2c32a1090982ae65a935177e59792ad3070276ab654a3cd2

Contents?: true

Size: 1.26 KB

Versions: 2

Compression:

Stored size: 1.26 KB

Contents

require File.join(File.dirname(__FILE__), %w[.. domain_slice])
require File.join(File.dirname(__FILE__), %w[rails initializer])

module DomainSlice
  module Rails
    class << self
      def init!
        ::Rails.public_path = File.join(root, 'public')
        ::ActionController::Routing::Routes.add_configuration_file File.join(config_path, 'routes.rb')
        ::ActionController::Base.view_paths.unshift File.join(root, %w[app views])
      end
      
      def root
        File.join(RAILS_ROOT, 'domains', DomainSlice.domain)
      end
      
      def environment_path
        File.join(config_path, 'environments', "#{RAILS_ENV}.rb")
      end
      
      def root_environment_path
        File.join(config_path, 'environment.rb')
      end
      
      def config_path
        File.join(root, 'config')
      end
      
      def configure(configuration = ::Rails::Configuration.new)
        # Create our new configuration block here
        configuration.database_configuration_file = database_configuration_file
        return configuration
      end
      
    protected
      def routes_configuration_file
        File.join(config_path, 'routes.rb')
      end
      
      def database_configuration_file
        File.join(config_path, 'database.yml')
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
bradgessler-domain_slice-0.1.0 lib/domain_slice/rails.rb
bradgessler-domain_slice-0.1.1 lib/domain_slice/rails.rb