Module: Tomify::Concerns::Default::EnvHelper

Included in:
Tomify::Concerns::Default
Defined in:
app/controllers/tomify/concerns/default/env_helper.rb

Instance Method Summary collapse

Instance Method Details

#admin_pagesObject



15
16
17
18
19
20
21
# File 'app/controllers/tomify/concerns/default/env_helper.rb', line 15

def admin_pages
  [
    { name: "App", path: "admin/settings" },
    { name: "Pages", path: "admin/pages" },
    { name: "Users", path: "admin/users" }
  ]
end

#js_envObject



2
3
4
5
6
7
8
9
10
11
12
13
# File 'app/controllers/tomify/concerns/default/env_helper.rb', line 2

def js_env
  {
    messages: flash.collect { |key, value| { type: key, text: value }},
    navbar: {
      admin: admin_pages,
      public: public_pages
    },
    pages: pages,
    settings: public_settings,
    user: current_user
  }
end

#pagesObject



23
24
25
# File 'app/controllers/tomify/concerns/default/env_helper.rb', line 23

def pages
  Tomify.models.page.all.as_json(only: [:active, :name, :path, :root, :template, :parent_id])
end

#public_pagesObject



27
28
29
30
31
32
# File 'app/controllers/tomify/concerns/default/env_helper.rb', line 27

def public_pages
  Tomify.models.page.where(parent_id: nil).as_json(
    only: [:active, :name, :path, :root],
    include: [children: { only: [:active, :name, :path] }]
  )
end

#public_settingsObject



34
35
36
# File 'app/controllers/tomify/concerns/default/env_helper.rb', line 34

def public_settings
  Tomify.models.setting.public.as_json(only: [:name, :value])
end