lib/generators/blacklight/install_generator.rb in blacklight-6.12.0 vs lib/generators/blacklight/install_generator.rb in blacklight-6.13.0
- old
+ new
@@ -1,35 +1,36 @@
# frozen_string_literal: true
module Blacklight
class Install < Rails::Generators::Base
-
source_root File.expand_path('../templates', __FILE__)
-
+
argument :model_name , type: :string , default: "user"
argument :controller_name, type: :string , default: "catalog"
argument :document_name, type: :string , default: "solr_document"
argument :search_builder_name, type: :string , default: "search_builder"
argument :solr_version, type: :string , default: "latest"
class_option :devise , type: :boolean, default: false, aliases: "-d", desc: "Use Devise as authentication logic."
class_option :jettywrapper, type: :boolean, default: false, desc: "Use jettywrapper to download and control Jetty"
class_option :marc , type: :boolean, default: false, aliases: "-m", desc: "Generate MARC-based demo ."
class_option :'skip-assets', type: :boolean, default: false, desc: "Skip generating javascript and css assets into the application"
+ class_option :'skip-solr', type: :boolean, default: false, desc: "Skip generating solr configurations."
desc <<-EOS
This generator makes the following changes to your application:
1. Generates blacklight:models
- 2. Generates utilities for working with solr
+ 2. Generates utilities for working with solr
3. Creates a number of public assets, including images, stylesheets, and javascript
4. Injects behavior into your user application_controller.rb
5. Adds example configurations for dealing with MARC-like data
6. Adds Blacklight routes to your ./config/routes.rb
Thank you for Installing Blacklight.
EOS
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'
@@ -45,15 +46,15 @@
end
end
# Copy all files in templates/public/ directory to public/
# Call external generator in AssetsGenerator, so we can
- # leave that callable seperately too.
- def copy_public_assets
+ # leave that callable seperately too.
+ def copy_public_assets
generate "blacklight:assets" unless options[:'skip-assets']
end
-
+
def generate_blacklight_document
generate 'blacklight:document', document_name
end
def generate_search_builder
@@ -61,23 +62,23 @@
end
def generate_blacklight_models
generate 'blacklight:models'
end
-
+
def generate_blacklight_user
generator_args = [model_name]
if options[:devise]
generator_args << "--devise #{options[:devise]}"
end
-
+
generate 'blacklight:user', generator_args.join(" ")
end
def generate_controller
generate 'blacklight:controller', controller_name
end
-
+
def add_default_catalog_route
route("root to: \"#{controller_name}#index\"")
end
def add_sass_configuration