Sha256: b414564a23110bd5a5f84f2f83f9e1a2fc4bfc05ec17b240f57cbbad86e23f97

Contents?: true

Size: 1.2 KB

Versions: 12

Compression:

Stored size: 1.2 KB

Contents

module Alchemy
  module Admin
    class ClipboardController < Alchemy::Admin::BaseController
      authorize_resource class: :alchemy_admin_clipboard
      before_action :set_clipboard

      def index
        @clipboard_items = model_class.all_from_clipboard(@clipboard)
        respond_to do |format|
          format.html
        end
      end

      def insert
        @item = model_class.find(params[:remarkable_id])
        unless @clipboard.detect { |item| item['id'] == params[:remarkable_id] }
          @clipboard << {
            'id' => params[:remarkable_id],
            'action' => params[:remove] ? 'cut' : 'copy'
          }
        end
        respond_to do |format|
          format.js
        end
      end

      def remove
        @item = model_class.find(params[:remarkable_id])
        @clipboard.delete_if { |item| item['id'] == params[:remarkable_id] }
        respond_to do |format|
          format.js
        end
      end

      def clear
        @clipboard.clear
      end

      private

      def set_clipboard
        @clipboard = get_clipboard(params[:remarkable_type])
      end

      def model_class
        "alchemy/#{params[:remarkable_type]}".classify.constantize
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
alchemy_cms-3.6.7 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.6.6 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.6.5 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.6.4 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.6.3 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.6.2 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.6.1 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-4.0.0.beta app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.6.0 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.5.0 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.5.0.rc2 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.5.0.rc1 app/controllers/alchemy/admin/clipboard_controller.rb