Sha256: 87a6e2dc8b28ee25e547ea03e6b39253371a5eefea810ae06d8d86c27b3867fa

Contents?: true

Size: 1.82 KB

Versions: 4

Compression:

Stored size: 1.82 KB

Contents

require 'rails/generators'

module BlacklightGallery
  class Install < Rails::Generators::Base

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

    def configuration
      inject_into_file 'app/controllers/catalog_controller.rb', after: "configure_blacklight do |config|" do
        "\n    config.view.gallery(document_component: Blacklight::Gallery::DocumentComponent, icon: Blacklight::Gallery::Icons::GalleryComponent)" \
        "\n    config.view.masonry(document_component: Blacklight::Gallery::DocumentComponent, icon: Blacklight::Gallery::Icons::MasonryComponent)" \
        "\n    config.view.slideshow(document_component: Blacklight::Gallery::SlideshowComponent, icon: Blacklight::Gallery::Icons::SlideshowComponent)" \
        "\n    config.show.tile_source_field = :content_metadata_image_iiif_info_ssm" \
        "\n    config.show.partials ||= []" \
        "\n    config.show.partials.insert(1, :openseadragon)"
      end
    end

    def add_model_mixin
      inject_into_file 'app/models/solr_document.rb', after: "include Blacklight::Solr::Document" do
       "\n  include Blacklight::Gallery::OpenseadragonSolrDocument\n"
      end
    end

    def add_openseadragon
      gem "openseadragon", ">= 0.2.0"
      Bundler.with_clean_env { run 'bundle install' }
      generate 'openseadragon:install'
    end

    def assets
      copy_file "blacklight_gallery.css.scss", "app/assets/stylesheets/blacklight_gallery.css.scss"

      return unless defined?(Sprockets)

      append_to_file 'app/assets/config/manifest.js', "\n//= link blacklight_gallery/manifest.js\n"
      copy_file "blacklight_gallery.js", "app/assets/javascripts/blacklight_gallery.js"

      insert_into_file "app/assets/javascripts/application.js", after: '//= require blacklight/blacklight' do
        "\n//= require blacklight_gallery"
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
blacklight-gallery-4.7.0 lib/generators/blacklight_gallery/install_generator.rb
blacklight-gallery-4.6.4 lib/generators/blacklight_gallery/install_generator.rb
blacklight-gallery-4.6.3 lib/generators/blacklight_gallery/install_generator.rb
blacklight-gallery-4.6.2 lib/generators/blacklight_gallery/install_generator.rb