Class: Admin::PagesController

Inherits:
AdminController show all
Includes:
PagesCore::Admin::NewsPageController
Defined in:
app/controllers/admin/pages_controller.rb

Instance Attribute Summary

Attributes included from PagesCore::Authentication

#current_user

Instance Method Summary collapse

Methods included from PagesCore::Admin::NewsPageController

#new_news, #news

Methods inherited from PagesCore::AdminController

#redirect, underscore

Methods included from PagesCore::PoliciesHelper

#policy, #verify_policy, #verify_policy_with_proc

Methods included from PagesCore::ProcessTitler

inc_number_of_requests, original_title

Methods included from PagesCore::ErrorRenderer

#render_error

Methods included from PagesCore::Authentication

#authenticate!, #deauthenticate!, #logged_in?

Instance Method Details

#createObject



35
36
37
38
39
40
41
42
43
44
45
# File 'app/controllers/admin/pages_controller.rb', line 35

def create
  @page = build_page(@locale, page_params, param_categories)
  if @page.valid?
    @page.save
    respond_with_page(@page) do
      redirect_to(edit_admin_page_url(@locale, @page))
    end
  else
    render action: :new
  end
end

#delete_meta_imageObject



72
73
74
75
76
# File 'app/controllers/admin/pages_controller.rb', line 72

def delete_meta_image
  @page.meta_image.destroy
  flash[:notice] = "The image was deleted"
  redirect_to edit_admin_page_url(@locale, @page, anchor: "metadata")
end

#deletedObject



17
18
19
# File 'app/controllers/admin/pages_controller.rb', line 17

def deleted
  @pages = Page.deleted.by_updated_at.in_locale(@locale)
end

#destroyObject



67
68
69
70
# File 'app/controllers/admin/pages_controller.rb', line 67

def destroy
  Page.find(params[:id]).flag_as_deleted!
  redirect_to admin_pages_url(@locale)
end

#editObject



47
# File 'app/controllers/admin/pages_controller.rb', line 47

def edit; end

#indexObject



13
14
15
# File 'app/controllers/admin/pages_controller.rb', line 13

def index
  @pages = Page.admin_list(@locale)
end

#moveObject



61
62
63
64
65
# File 'app/controllers/admin/pages_controller.rb', line 61

def move
  parent = params[:parent_id] ? Page.find(params[:parent_id]) : nil
  @page.update(parent: parent, position: params[:position])
  respond_with_page(@page) { redirect_to admin_pages_url(@locale) }
end

#newObject



25
26
27
28
29
30
31
32
33
# File 'app/controllers/admin/pages_controller.rb', line 25

def new
  build_params = params[:page] ? page_params : nil
  @page = build_page(@locale, build_params)
  @page.parent = if params[:parent]
                   Page.find(params[:parent])
                 elsif @news_pages
                   @news_pages.first
                 end
end

#showObject



21
22
23
# File 'app/controllers/admin/pages_controller.rb', line 21

def show
  redirect_to edit_admin_page_url(@locale, @page)
end

#updateObject



49
50
51
52
53
54
55
56
57
58
59
# File 'app/controllers/admin/pages_controller.rb', line 49

def update
  if @page.update(page_params)
    @page.categories = param_categories
    respond_with_page(@page) do
      flash[:notice] = "Your changes were saved"
      redirect_to edit_admin_page_url(@locale, @page)
    end
  else
    render action: :edit
  end
end