module Semistatic::Concerns::Controllers::PagesController

Public Instance Methods

create() click to toggle source

POST /pages POST /pages.json

# File lib/semistatic/concerns/controllers/pages_controller.rb, line 42
def create
  redirect_to pages_path
end
destroy() click to toggle source

DELETE /pages/1 DELETE /pages/1.json

# File lib/semistatic/concerns/controllers/pages_controller.rb, line 60
def destroy
  @page = Page.find(params[:id])
  @page.destroy
  respond_with(@page)
end
edit() click to toggle source

GET /pages/1/edit

# File lib/semistatic/concerns/controllers/pages_controller.rb, line 34
def edit
  @page = find_or_create_page
  @presenter = Presenters::PagePresenter.new(@page, self.class.helpers)
  respond_with(@page)
end
index() click to toggle source

GET /pages GET /pages.json

# File lib/semistatic/concerns/controllers/pages_controller.rb, line 14
def index
  @pages = Page.all
  respond_with(@pages)
end
new() click to toggle source

GET /pages/new GET /pages/new.json

# File lib/semistatic/concerns/controllers/pages_controller.rb, line 29
def new
  redirect_to edit_page_path(find_or_create_page)
end
show() click to toggle source

GET /pages/1 GET /pages/1.json

# File lib/semistatic/concerns/controllers/pages_controller.rb, line 21
def show
  @page = find_or_create_page
  @presenter = Presenters::PagePresenter.new(@page, self.class.helpers)
  respond_with(@page)
end
update() click to toggle source

PUT /pages/1 PUT /pages/1.json

# File lib/semistatic/concerns/controllers/pages_controller.rb, line 48
def update
  @page = find_or_create_page

  unless @page.update_attributes(params[:page])
    @presenter = Presenters::PagePresenter.new(@page, self.class.helpers)
  end

  respond_with(@page)
end

Private Instance Methods

find_or_create_page() click to toggle source
# File lib/semistatic/concerns/controllers/pages_controller.rb, line 72
def find_or_create_page
  if params[:id]
    Page.find(params[:id])
  else
    Page.factory(params[:template_name], @config.page(params[:template_name]))
  end
end
set_pages_config() click to toggle source
# File lib/semistatic/concerns/controllers/pages_controller.rb, line 67
def set_pages_config
  @config = Semistatic.configuration
  @config.load
end