class Wagn::Application

Public Class Methods

inherited(base) click to toggle source
Calls superclass method
# File lib/wagn/application.rb, line 22
def inherited base
  super
  Rails.app_class = base
  add_lib_to_load_path!(find_root(base.called_from))
  ActiveSupport.run_load_hooks(:before_configuration, base.instance)
end

Public Instance Methods

add_path(paths, path, options={}) click to toggle source
# File lib/wagn/application.rb, line 30
def add_path paths, path, options={}
  root = options.delete(:root) || Wagn.gem_root
  options[:with] = File.join(root, (options[:with] || path))
  paths.add path, options
end
config() click to toggle source
Calls superclass method
# File lib/wagn/application.rb, line 36
def config
  @config ||= begin
    config = super

    Cardio.set_config config

    # any config settings below:
    # (a) do not apply to Card used outside of a Wagn context
    # (b) cannot be overridden in a deck's application.rb, but
    # (c) CAN be overridden in an environment file

    # therefore, in general, they should be restricted to settings that
    # (1) are specific to the web environment, and
    # (2) should not be overridden
    # ...and we should address (c) above!

    # general card settings (overridable and not) should be in cardio.rb
    # overridable wagn-specific settings don't have a place yet
    # but should probably follow the cardio pattern.

    config.i18n.enforce_available_locales = true
    # config.active_record.raise_in_transactional_callbacks = true

    config.assets.enabled = false
    config.assets.version = "1.0"

    config.filter_parameters += [:password]
    config
  end
end
paths() click to toggle source
Calls superclass method
# File lib/wagn/application.rb, line 67
def paths
  @paths ||= begin
    paths = super
    Cardio.set_paths paths

    paths["mod"] << "mod"
    paths.add "files"

    paths["app/models"] = []
    paths["app/mailers"] = []

    unless paths["config/routes.rb"].existent.present?
      add_path paths, "config/routes.rb",
               with: "rails/application-routes.rb"
    end

    Cardio.set_mod_paths # really this should happen later

    paths
  end
end