Sha256: 5db06adbe5e02733892e6f44fb4af0dee0a62a92dfa9dbc661cecec0fb77e8dc

Contents?: true

Size: 798 Bytes

Versions: 3

Compression:

Stored size: 798 Bytes

Contents

module Rich
  class CmsController < ::ApplicationController
    before_filter :require_login, :except => [:display, :position]

    def display
      (session[:rich_cms] ||= {})[:display] = params[:display]
      request.xhr? ? render(:nothing => true) : redirect_to(request.referrer)
    end

    def position
      session[:rich_cms][:position] = params[:position]
      render :nothing => true
    end

    def update
      render :json => Cms::Content::Item.new(params[:content_item]).save
    end

  private

    def require_login
      if Rich::Cms::Auth.login_required?
        if request.xhr?
          render :update do |page|
            page.reload
          end
        else
          redirect_to request.referrer
        end
        return false
      end
      true
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rich_cms-3.0.2 app/controllers/rich/cms_controller.rb
rich_cms-3.0.1 app/controllers/rich/cms_controller.rb
rich_cms-3.0.0 app/controllers/rich/cms_controller.rb