Sha256: 7df250da5947eedec37247168b38ee0cdb424894fdc761873a199d44da106a5b

Contents?: true

Size: 691 Bytes

Versions: 3

Compression:

Stored size: 691 Bytes

Contents

module Spina
  module Admin
    class MediaPickerController < AdminController

      def show
        @images = Image.page(params[:page])

        if params[:selected_ids].present?
          ids = params[:selected_ids].map(&:to_i).join(', ')
          @images = @images.order(Arel.sql("CASE WHEN id IN(#{ids}) THEN 0 ELSE 1 END, created_at DESC"))
        else
          @images = @images.sorted
        end

        render params[:page].present? ? :infinite_scroll : :show
      end

      def select
        if params[:multiple]
          @images = Image.where(id: params[:image_ids])
        else 
          @image = Image.find(params[:image_id])
        end
      end

    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
spina-1.0.3 app/controllers/spina/admin/media_picker_controller.rb
spina-1.0.2 app/controllers/spina/admin/media_picker_controller.rb
spina-1.0.1 app/controllers/spina/admin/media_picker_controller.rb