Sha256: 22cfb306df13fa5ee233717d80e9933239d16d58f9d6dd1c855f3357e0fff1ea

Contents?: true

Size: 1.06 KB

Versions: 5

Compression:

Stored size: 1.06 KB

Contents

# frozen_string_literal: true

module Lcms
  module Engine
    module Admin
      class PagesController < AdminController
        before_action :find_resource, except: %i(index new create)

        def index
          @pages = Page.order(id: :desc)
        end

        def new
          @page = Page.new
        end

        def create
          @page = Page.new(page_params)

          if @page.save
            redirect_to page_url(@page), notice: t('.success')
          else
            render :new
          end
        end

        def edit; end

        def update
          if @page.update_attributes(page_params)
            redirect_to page_url(@page), notice: t('.success')
          else
            render :edit
          end
        end

        def destroy
          @page.destroy
          redirect_to :admin_pages, notice: t('.success')
        end

        private

        def find_resource
          @page = Page.find(params[:id])
        end

        def page_params
          params.require(:page).permit(:body, :title, :slug)
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
lcms-engine-0.1.4 app/controllers/lcms/engine/admin/pages_controller.rb
lcms-engine-0.1.3 app/controllers/lcms/engine/admin/pages_controller.rb
lcms-engine-0.2.0 app/controllers/lcms/engine/admin/pages_controller.rb
lcms-engine-0.1.2 app/controllers/lcms/engine/admin/pages_controller.rb
lcms-engine-0.1.0 app/controllers/lcms/engine/admin/pages_controller.rb