Sha256: 0e83008d5aef45feaf387c937c76a4402fbf1dd07db0ba7d20ecec00b46ebe78

Contents?: true

Size: 1.12 KB

Versions: 83

Compression:

Stored size: 1.12 KB

Contents

module Tenon
  class PagesController < Tenon::ResourcesController
    before_filter :get_potential_parents, only: [:new, :edit, :update, :create]

    def index
      respond_to do |format|
        format.html
        format.json do
          if params[:q].blank?
            @pages = Tenon::Page.order(:lft)
          else
            pages = Tenon::Page.where(search_args).map { |p| [p.ancestors, p] }
            @pages = pages.flatten.uniq.sort_by(&:lft)
          end
        end
      end
    end

    def new
      resource.parent_id = params[:parent_id]
      super
    end

    def update
      resource.updater_id = current_user.id
      super
    end

    def create
      params[:page][:creator_id] = current_user.id
      params[:page][:updater_id] = current_user.id
      super
    end

    def reorder
      @pages = Tenon::Page.reorder!(params[:item_list], params[:parent_id])
      render nothing: true
    end

    private

    def get_potential_parents
      id = params[:id] || 0
      @potential_parents = Tenon::Page.order(:lft).decorate
    end

    def resource_params
      params.require(:page).permit!
    end
  end
end

Version data entries

83 entries across 83 versions & 1 rubygems

Version Path
tenon-1.1.8 app/controllers/tenon/pages_controller.rb
tenon-1.1.7 app/controllers/tenon/pages_controller.rb
tenon-1.1.6 app/controllers/tenon/pages_controller.rb
tenon-1.1.5 app/controllers/tenon/pages_controller.rb
tenon-1.1.4 app/controllers/tenon/pages_controller.rb
tenon-1.1.3 app/controllers/tenon/pages_controller.rb
tenon-1.1.2 app/controllers/tenon/pages_controller.rb
tenon-1.1.1 app/controllers/tenon/pages_controller.rb
tenon-1.0.76 app/controllers/tenon/pages_controller.rb
tenon-1.0.75 app/controllers/tenon/pages_controller.rb
tenon-1.0.74 app/controllers/tenon/pages_controller.rb
tenon-1.0.73 app/controllers/tenon/pages_controller.rb
tenon-1.0.72 app/controllers/tenon/pages_controller.rb
tenon-1.0.71 app/controllers/tenon/pages_controller.rb
tenon-1.0.70 app/controllers/tenon/pages_controller.rb
tenon-1.0.69 app/controllers/tenon/pages_controller.rb
tenon-1.0.68 app/controllers/tenon/pages_controller.rb
tenon-1.0.67 app/controllers/tenon/pages_controller.rb
tenon-1.0.66 app/controllers/tenon/pages_controller.rb
tenon-1.0.65 app/controllers/tenon/pages_controller.rb