Class: Comfy::Admin::Cms::PagesController

Inherits:
BaseController
  • Object
show all
Includes:
ReorderAction
Defined in:
app/controllers/comfy/admin/cms/pages_controller.rb

Instance Method Summary collapse

Methods included from ReorderAction

#reorder

Instance Method Details

#createObject



39
40
41
42
43
44
45
46
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 39

def create
  @page.save!
  flash[:success] = I18n.t("comfy.admin.cms.pages.created")
  redirect_to action: :edit, id: @page
rescue ActiveRecord::RecordInvalid
  flash.now[:danger] = I18n.t("comfy.admin.cms.pages.creation_failure")
  render action: :new
end

#destroyObject



57
58
59
60
61
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 57

def destroy
  @page.destroy
  flash[:success] = I18n.t("comfy.admin.cms.pages.deleted")
  redirect_to action: :index
end

#editObject



35
36
37
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 35

def edit
  render
end

#form_fragmentsObject



63
64
65
66
67
68
69
70
71
72
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 63

def form_fragments
  @page = @site.pages.find_by(id: params[:id]) || @site.pages.new
  @page.layout = @site.layouts.find_by(id: params[:layout_id])

  render(
    partial:  "comfy/admin/cms/fragments/form_fragments",
    locals:   { record: @page, scope: :page },
    layout:   false
  )
end

#indexObject



16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 16

def index
  return redirect_to action: :new if site_has_no_pages?

  return index_for_redactor if params[:source] == "redactor"

  @pages_by_parent = pages_grouped_by_parent

  @pages =
    if params[:categories].present?
      @site.pages.includes(:categories).for_category(params[:categories]).order(:label)
    else
      [@site.pages.root].compact
    end
end

#newObject



31
32
33
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 31

def new
  render
end

#toggle_branchObject



74
75
76
77
78
79
80
81
82
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 74

def toggle_branch
  @pages_by_parent = pages_grouped_by_parent
  @page = @site.pages.find(params[:id])
  s   = (session[:cms_page_tree] ||= [])
  id  = @page.id.to_s
  s.member?(id) ? s.delete(id) : s << id
rescue ActiveRecord::RecordNotFound
  render nothing: true
end

#updateObject



48
49
50
51
52
53
54
55
# File 'app/controllers/comfy/admin/cms/pages_controller.rb', line 48

def update
  @page.save!
  flash[:success] = I18n.t("comfy.admin.cms.pages.updated")
  redirect_to action: :edit, id: @page
rescue ActiveRecord::RecordInvalid
  flash.now[:danger] = I18n.t("comfy.admin.cms.pages.update_failure")
  render action: :edit
end