Class Admin::PagesController
In: app/controllers/admin/pages_controller.rb
Parent: Admin::AdminController

Admin editing for Pages in built-in CMS. All editing actions expire the cache.

Methods

create   destroy   edit   index   new   update  

Public Instance methods

[Source]

    # File app/controllers/admin/pages_controller.rb, line 16
16:   def create
17:     @page = Page.new(params["page"])
18:     @page.author = current_person
19:     @page.save
20:     if @page.errors.empty?
21:       flash[:notice] = "Created #{@page.title}"
22:       expire_cache
23:       redirect_to(edit_admin_page_path(@page))
24:     else
25:       render :edit
26:     end
27:   end

[Source]

    # File app/controllers/admin/pages_controller.rb, line 45
45:   def destroy
46:     @page = Page.find(params[:id])
47:     begin
48:       ActiveRecord::Base.lock_optimistically = false
49:       @page.destroy
50:     ensure
51:       ActiveRecord::Base.lock_optimistically = true
52:     end
53:     
54:     expire_cache
55:     flash[:notice] = "Deleted #{@page.title}"
56:     redirect_to admin_pages_path
57:   end

[Source]

    # File app/controllers/admin/pages_controller.rb, line 29
29:   def edit
30:     @page = Page.find(params[:id])
31:   end

[Source]

   # File app/controllers/admin/pages_controller.rb, line 7
7:   def index
8:     @pages = Page.roots
9:   end

[Source]

    # File app/controllers/admin/pages_controller.rb, line 11
11:   def new
12:     @page = Page.new(params[:page])
13:     render :edit
14:   end

[Source]

    # File app/controllers/admin/pages_controller.rb, line 33
33:   def update
34:     @page = Page.find(params[:id])
35:     @page.author = current_person
36:     if @page.update_attributes(params[:page])
37:       flash[:notice] = "Updated #{@page.title}"
38:       expire_cache
39:       redirect_to(edit_admin_page_path(@page))
40:     else
41:       render :edit
42:     end
43:   end

[Validate]