Class: Blacklight::Install

Inherits:
Rails::Generators::Base
  • Object
show all
Defined in:
lib/generators/blacklight/install_generator.rb

Instance Method Summary collapse

Instance Method Details

#add_default_catalog_routeObject



81
82
83
# File 'lib/generators/blacklight/install_generator.rb', line 81

def add_default_catalog_route
  route("root to: \"#{controller_name}#index\"")
end

#add_routesObject



110
111
112
# File 'lib/generators/blacklight/install_generator.rb', line 110

def add_routes
  route "mount Blacklight::Engine => '/'"
end

#add_sass_configurationObject



85
86
87
88
89
90
91
# File 'lib/generators/blacklight/install_generator.rb', line 85

def add_sass_configuration
  insert_into_file "config/application.rb", :after => "config.assets.enabled = true" do <<EOF
  # Default SASS Configuration, check out https://github.com/rails/sass-rails for details
  config.assets.compress = !Rails.env.development?
EOF
  end
end

#add_solr_wrapperObject



30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/generators/blacklight/install_generator.rb', line 30

def add_solr_wrapper
  return if options[:'skip-solr']
  generator_options = '--jettywrapper' if options[:jettywrapper]
  solr_generator = if options[:jettywrapper]
                     'blacklight:solr4'
                   elsif solr_version == 'latest'
                     'blacklight:solr5'
                   else
                     "blacklight:solr#{solr_version}"
                   end
  generate solr_generator, generator_options
end

#bundle_installObject



43
44
45
46
47
# File 'lib/generators/blacklight/install_generator.rb', line 43

def bundle_install
  Bundler.with_clean_env do
    run "bundle install"
  end
end

#copy_public_assetsObject

Copy all files in templates/public/ directory to public/ Call external generator in AssetsGenerator, so we can leave that callable seperately too.



52
53
54
# File 'lib/generators/blacklight/install_generator.rb', line 52

def copy_public_assets
  generate "blacklight:assets" unless options[:'skip-assets']
end

#generate_blacklight_documentObject



56
57
58
# File 'lib/generators/blacklight/install_generator.rb', line 56

def generate_blacklight_document
  generate 'blacklight:document', document_name
end

#generate_blacklight_marc_demoObject



97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/generators/blacklight/install_generator.rb', line 97

def generate_blacklight_marc_demo
  return unless options[:marc]

  blacklight_marc = String.new('blacklight-marc')
  gem blacklight_marc, '~> 6.1'

  Bundler.with_clean_env do
    run "bundle install"
  end

  generate 'blacklight:marc:install'
end

#generate_blacklight_modelsObject



64
65
66
# File 'lib/generators/blacklight/install_generator.rb', line 64

def generate_blacklight_models
  generate 'blacklight:models'
end

#generate_blacklight_userObject



68
69
70
71
72
73
74
75
# File 'lib/generators/blacklight/install_generator.rb', line 68

def generate_blacklight_user
  generator_args = [model_name]
  if options[:devise]
    generator_args << "--devise #{options[:devise]}"
  end

  generate 'blacklight:user', generator_args.join(" ")
end

#generate_controllerObject



77
78
79
# File 'lib/generators/blacklight/install_generator.rb', line 77

def generate_controller
  generate 'blacklight:controller', controller_name
end

#generate_search_builderObject



60
61
62
# File 'lib/generators/blacklight/install_generator.rb', line 60

def generate_search_builder
  generate 'blacklight:search_builder', search_builder_name
end

#inject_blacklight_i18n_stringsObject



93
94
95
# File 'lib/generators/blacklight/install_generator.rb', line 93

def inject_blacklight_i18n_strings
  copy_file "blacklight.en.yml", "config/locales/blacklight.en.yml"
end