Sha256: fa8c67018202c0692ba5d6175a5ae4c08004f29f2791439191b63bae2f940428

Contents?: true

Size: 1.22 KB

Versions: 24

Compression:

Stored size: 1.22 KB

Contents

module Spotlight
  ##
  # Global site configuration
  class SitesController < Spotlight::ApplicationController
    before_action :authenticate_user!
    before_action :load_site
    load_and_authorize_resource

    def edit
    end

    def edit_exhibits
    end

    def update
      if @site.update(site_params)
        redirect_to exhibits_path, notice: t(:'helpers.submit.site.updated', model: @site.class.model_name.human.downcase)
      else
        flash[:alert] = @site.errors.full_messages.join('<br>'.html_safe)
        render action: :edit
      end
    end

    def tags
      authorize! :tag, @site

      respond_to do |format|
        format.json { render json: Spotlight::Exhibit.all_tags.map(&:name) }
      end
    end

    private

    def load_site
      @site ||= Spotlight::Site.instance
    end

    def site_params
      params.require(:site).permit(
        :title,
        :subtitle,
        masthead_attributes: masthead_params,
        exhibits_attributes: [:id, :weight]
      )
    end

    def masthead_params
      [
        :display,
        :source,
        :image,
        :remote_image_url,
        :document_global_id,
        :image_crop_x, :image_crop_y, :image_crop_w, :image_crop_h
      ]
    end
  end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
blacklight-spotlight-0.29.1 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.29.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.28.3 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.28.2 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.28.1 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.28.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.27.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.26.1 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.26.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.25.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.24.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.23.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.22.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.21.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.20.3 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.20.2 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.20.1 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.20.0 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.19.2 app/controllers/spotlight/sites_controller.rb
blacklight-spotlight-0.19.1 app/controllers/spotlight/sites_controller.rb