Sha256: d8245515b87579127f4dbe89900393b347757d94aebd9df13ffab21c78132584

Contents?: true

Size: 1.2 KB

Versions: 10

Compression:

Stored size: 1.2 KB

Contents

module Alchemy
  module Admin
    class ClipboardController < Alchemy::Admin::BaseController
      authorize_resource class: :alchemy_admin_clipboard
      before_filter :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

10 entries across 10 versions & 1 rubygems

Version Path
alchemy_cms-3.4.2 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.4.1 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.3.3 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.3.2 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.4.0 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.4.0.rc1 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.3.1 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.3.0 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.3.0.rc2 app/controllers/alchemy/admin/clipboard_controller.rb
alchemy_cms-3.3.0.rc1 app/controllers/alchemy/admin/clipboard_controller.rb