effective_pages 3.0.4 → 3.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3294060a1540c8cbd64e0ddf2e7cdde0b5f82d541e6a14e87624ca03341f9325
4
- data.tar.gz: d4a3f858cf1041f4f8d4dc2365a2a09f4ca5d563bb2ddad06df0e95506db7194
3
+ metadata.gz: e2607792f3255903a84c8ef0b74d49d9278265a5ad0bdd518aae75efe55aeee7
4
+ data.tar.gz: b5e0ce5b60989700346dffa5709693c9fe80ed12a49f93f2feaa488623d38f24
5
5
  SHA512:
6
- metadata.gz: b4ce35d731fb1941f708d4e99971466c97d72028eb5cb7fc8288e763ae155ee4a38de4d216cbb9b4c644c2e6659881cf6d33a3cb3ffff5f2294b6dbc60bb29fc
7
- data.tar.gz: a5b78c77b463d95cb072d15948a6d4f934aa93ab51db650861391815873fa05e13b0317abb2889189f706380b4fd587ef143eac06a9ca181f681d98d099f3ed0
6
+ metadata.gz: 4f0b5af9258a98e3cd3af75523b5670716ea37a6c78d37b8951071602489ccbeee773605ee025ccf08aca905c21e139581349fe4c822f900d788493e69eb6e4e
7
+ data.tar.gz: 2f5ece4423c3742e50e104779d9a58ef8ca4a69870e8bec5a9851538c680615acba337a85be9d286c4f967341d223f2e71d7fcaa6cb7954058b03aadb04ccfb6
@@ -1,6 +1,7 @@
1
1
  module Effective
2
2
  class Page < ActiveRecord::Base
3
3
  attr_accessor :current_user
4
+ attr_accessor :menu_root_level
4
5
 
5
6
  # These parent / children are for the menu as well
6
7
  belongs_to :menu_parent, class_name: 'Effective::Page', optional: true
@@ -105,6 +106,10 @@ module Effective
105
106
  duplicate.tap { |page| page.save! }
106
107
  end
107
108
 
109
+ def menu_root_level
110
+ menu_parent.blank?
111
+ end
112
+
108
113
  end
109
114
 
110
115
  end
@@ -14,12 +14,13 @@
14
14
  = render '/admin/pages/form_page', page: page
15
15
 
16
16
  - if page.persisted?
17
- = tab 'Content' do
18
- = render '/admin/pages/form_content', page: page
19
-
20
17
  = tab 'Menu' do
21
18
  = render '/admin/pages/form_menu', page: page
22
19
 
20
+ - unless page.menu_root_level
21
+ = tab 'Content' do
22
+ = render '/admin/pages/form_content', page: page
23
+
23
24
  = tab 'Access' do
24
25
  = render '/admin/pages/form_access', page: page
25
26
 
@@ -8,11 +8,17 @@
8
8
  - else
9
9
  = f.hidden_field :menu_name, value: menus.first
10
10
 
11
+ = f.check_box :menu_root_level, label: "This is a top level menu item. Do not show page content."
12
+
13
+ = f.show_if :menu_root_level, true do
14
+ = f.hidden_field :menu_parent_id, value: nil
15
+
16
+ = f.show_if :menu_root_level, false do
17
+ = f.select :menu_parent_id, Effective::Page.menuable.root_level.where.not(id: f.object), required: true
18
+
11
19
  = f.text_field :menu_title, hint: "Display this title on menus instead of full page title"
12
20
 
13
21
  = f.text_field :menu_url, label: "Redirect to path or url instead of displaying page",
14
22
  hint: "Must start with http(s):// or /"
15
23
 
16
- = f.select :menu_parent_id, Effective::Page.menuable.root_level, placeholder: 'None. Top level menu.'
17
-
18
24
  = f.submit
@@ -12,7 +12,7 @@
12
12
  = nav_link_to((page.menu_title.presence || page.title), (page.menu_url.presence || effective_pages.page_path(page)))
13
13
  - else
14
14
  = nav_dropdown(page.to_s) do
15
- - ([page] + menu_children).each do |page|
15
+ - menu_children.each do |page|
16
16
  - next unless EffectiveResources.authorized?(self, :show, page)
17
17
  - next if (page.authenticate_user || page.roles.present?) && current_user.blank?
18
18
  - next if page.roles.present? && !current_user.roles.include?(page.roles)
@@ -1,6 +1,6 @@
1
- require 'effective_datatables'
2
- require 'effective_resources'
3
1
  require 'effective_roles'
2
+ require 'effective_resources'
3
+ require 'effective_datatables'
4
4
  require 'effective_pages/engine'
5
5
  require 'effective_pages/version'
6
6
 
@@ -1,3 +1,3 @@
1
1
  module EffectivePages
2
- VERSION = '3.0.4'.freeze
2
+ VERSION = '3.0.5'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_pages
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.4
4
+ version: 3.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-30 00:00:00.000000000 Z
11
+ date: 2021-04-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails