Module: Carload

Defined in:
lib/carload.rb,
lib/carload/engine.rb,
lib/carload/version.rb,
lib/carload/dashboard.rb,
lib/carload/exceptions.rb,
lib/carload/extended_hash.rb,
app/jobs/carload/application_job.rb,
app/helpers/carload/dashboard_helper.rb,
app/models/carload/application_record.rb,
app/helpers/carload/application_helper.rb,
app/mailers/carload/application_mailer.rb,
lib/generators/carload/install_generator.rb,
app/controllers/carload/errors_controller.rb,
app/controllers/carload/dashboard_controller.rb,
app/controllers/carload/application_controller.rb

Defined Under Namespace

Modules: ApplicationHelper, DashboardHelper Classes: ApplicationController, ApplicationJob, ApplicationMailer, ApplicationRecord, Dashboard, DashboardController, Engine, Error, ErrorsController, ExtendedHash, InstallGenerator, UnmanagedModelError, UnsupportedError

Constant Summary collapse

VERSION =
'0.2.1'

Class Method Summary collapse

Class Method Details

.setup {|@@config| ... } ⇒ Object

Yields:

  • (@@config)


12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/carload.rb', line 12

def self.setup &block
  @@config = ExtendedHash.new
  @@config[:dashboard] = ExtendedHash.new
  @@config[:dashboard][:permits_user] = ExtendedHash.new
  yield @@config
  if not [:devise, :none].include? @@config[:auth_solution]
    raise UnsupportedError.new("authentication solution #{@@config[:auth_solution]}")
  end
  if not [:carrierwave].include? @@config[:upload_solution]
    raise UnsupportedError.new("upload solution #{@@config[:upload_solution]}")
  end

  @@config.each do |key, value|
    define_singleton_method key do
      value
    end
  end
end