Sha256: 0803480e5a019f17594f5b1fa2a955aab761d79072cad5dbde844b9c583121fe

Contents?: true

Size: 1.26 KB

Versions: 7

Compression:

Stored size: 1.26 KB

Contents

# frozen_string_literal: true

require 'rails/generators'
require 'rails/generators/migration'
require 'blacklight/version'

module Blacklight
  class ModelsGenerator < Rails::Generators::Base
    include Rails::Generators::Migration

    source_root File.expand_path('../templates', __FILE__)

    desc <<-EOS
    This generator makes the following changes to your application:
     1. Creates several database migrations if they do not exist in /db/migrate
     2. Creates config/blacklight.yml with a default configuration
    EOS

    # Copy all files in templates/config directory to host config
    def create_configuration_files
      copy_file "config/blacklight.yml", "config/blacklight.yml"
      gsub_file 'config/blacklight.yml', '__VERSION__', Blacklight::VERSION
    end

    # Setup the database migrations
    def copy_migrations
      rake "blacklight:install:migrations"
    end

    def add_routes
      route <<-EOF

  concern :exportable, Blacklight::Routes::Exportable.new

  resources :solr_documents, only: [:show], path: '/catalog', controller: 'catalog' do
    concerns :exportable
  end

  resources :bookmarks, only: [:index, :update, :create, :destroy] do
    concerns :exportable

    collection do
      delete 'clear'
    end
  end
      EOF
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
blacklight-8.8.0 lib/generators/blacklight/models_generator.rb
blacklight-8.7.0 lib/generators/blacklight/models_generator.rb
blacklight-8.6.1 lib/generators/blacklight/models_generator.rb
blacklight-8.6.0 lib/generators/blacklight/models_generator.rb
blacklight-8.5.1 lib/generators/blacklight/models_generator.rb
blacklight-8.5.0 lib/generators/blacklight/models_generator.rb
blacklight-8.4.0 lib/generators/blacklight/models_generator.rb