Sha256: b8b6518cf20f77026d3ea3e51ab3bd8702e2cb4eb23512f8b3cac956c6419ed2

Contents?: true

Size: 1.47 KB

Versions: 6

Compression:

Stored size: 1.47 KB

Contents

module DragOrder
  module Controllers
    module Admin
      module PagesController
            
        def self.included(base)
          base.class_eval do
            
            before_filter :drag_assets, :only => [:index, :remove]
            
            def sort
              begin
                parent = Page.find(params[:parent_id])
                params[:children].split(',').each_with_index do |child,index|
                  Page.find(child).update_attributes!(
                    :position  => index,
                    :parent_id => params[:parent_id]
                  )
                end
                
                respond_to do |format|
                  format.js { render :text => 'Pages successfully sorted.' }
                end
              rescue Exception => e # Without this resource controller will exception when it looks for Page.find('sort.js')
                respond_to do |format|
                  format.js { render :text => 'Could not sort Pages.', :status => :unprocessable_entity }
                end
              end
            end
            
            private
            
            def drag_assets
              @javascripts << 'admin/dragdrop.js'
              @javascripts << 'admin/sortable_tree.js'
              @javascripts << 'admin/extensions/drag_order/drag_order.js'
              @stylesheets << 'admin/extensions/drag_order/drag_order.css'
            end
            
          end
        end
        
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
radiant-drag_order-extension-0.5.0 lib/drag_order/controllers/admin/pages_controller.rb
radiant-drag_order-extension-0.4.8 lib/drag_order/controllers/admin/pages_controller.rb
radiant-drag_order-extension-0.4.7 lib/drag_order/controllers/admin/pages_controller.rb
radiant-drag_order-extension-0.4.6 lib/drag_order/controllers/admin/pages_controller.rb
radiant-drag_order-extension-0.4.4 lib/drag_order/controllers/admin/pages_controller.rb
radiant-drag_order-extension-0.4.2 lib/drag_order/controllers/admin/pages_controller.rb