browsercms-artirix 4.0.1.1 → 4.0.2
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 +4 -4
- data/app/controllers/cms/application_controller.rb +7 -1
- data/app/controllers/cms/base_controller.rb +1 -0
- data/app/controllers/cms/content_controller.rb +1 -1
- data/app/models/cms/guest_user.rb +7 -1
- data/lib/cms/configuration.rb +11 -3
- data/lib/cms/engine.rb +4 -1
- data/lib/cms/users_service/cms_user_compatibility_module.rb +17 -3
- data/lib/cms/users_service/guest_user_module.rb +14 -1
- data/lib/cms/users_service/users_factory.rb +2 -1
- data/lib/cms/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a57902749d033539ac45bb99f421e92e3f9daf29
|
4
|
+
data.tar.gz: 13dcbcd60d6db9caade2157947c28e95a5b4bd06
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0eb504ff8c8d24e30270e068ef7782e6fc0b7f7ca9bd457663fe3573c8f709212bc2dd5e86c8dfa510c1744d2750c5b94a801c39aa50a9c2621a117006d3548d
|
7
|
+
data.tar.gz: acfd15b494b1e6d1ef6d7b3fa402724e8a14e4496ebc7b7eaca5cbd18baccf837a19bfaf8df522e661df0221e7e8c4a47862b688e9abcbf6837d56b8b3f5b107
|
@@ -1,7 +1,13 @@
|
|
1
1
|
module Cms
|
2
2
|
class ApplicationController < ::ApplicationController
|
3
3
|
include Cms::AdminController
|
4
|
-
|
4
|
+
|
5
|
+
unless Cms.allow_guests?
|
6
|
+
before_filter :redirect_to_cms_site
|
7
|
+
before_action :authenticate_cms_user!
|
8
|
+
before_filter :cms_access_required
|
9
|
+
end
|
10
|
+
|
5
11
|
before_action :no_browser_caching
|
6
12
|
|
7
13
|
def no_browser_caching
|
@@ -13,6 +13,7 @@ module Cms
|
|
13
13
|
#
|
14
14
|
# @param [Array<Symbol>] methods List of methods to disable security for.
|
15
15
|
def self.allow_guests_to(methods)
|
16
|
+
return true unless Cms.allow_guests?
|
16
17
|
skip_before_action :redirect_to_cms_site, only: methods
|
17
18
|
skip_before_action :authenticate_cms_user!, only: methods
|
18
19
|
skip_before_action :cms_access_required, only: methods
|
@@ -9,8 +9,14 @@ module Cms
|
|
9
9
|
|
10
10
|
include Cms::UsersService::GuestUserModule
|
11
11
|
|
12
|
+
DEFAULT_ATTRIBUTES = {
|
13
|
+
login: Cms::Group::GUEST_CODE,
|
14
|
+
first_name: 'Anonymous',
|
15
|
+
last_name: 'User'
|
16
|
+
}
|
17
|
+
|
12
18
|
def initialize(attributes={})
|
13
|
-
super
|
19
|
+
super DEFAULT_ATTRIBUTES.merge(attributes)
|
14
20
|
@guest = true
|
15
21
|
end
|
16
22
|
|
data/lib/cms/configuration.rb
CHANGED
@@ -21,11 +21,19 @@ module Cms
|
|
21
21
|
end
|
22
22
|
|
23
23
|
def markdown?
|
24
|
-
Object.const_defined?(
|
24
|
+
Object.const_defined?('Markdown')
|
25
25
|
end
|
26
26
|
|
27
27
|
def reserved_paths
|
28
|
-
@reserved_paths ||= [
|
28
|
+
@reserved_paths ||= ['/cms', '/cache']
|
29
|
+
end
|
30
|
+
|
31
|
+
def allow_dynamic_views?
|
32
|
+
Rails.application.config.cms.allow_dynamic_views
|
33
|
+
end
|
34
|
+
|
35
|
+
def allow_guests?
|
36
|
+
Rails.application.config.cms.allow_guests
|
29
37
|
end
|
30
38
|
|
31
39
|
# User Class
|
@@ -153,7 +161,7 @@ module Cms
|
|
153
161
|
module Errors
|
154
162
|
class AccessDenied < StandardError
|
155
163
|
def initialize
|
156
|
-
super(
|
164
|
+
super('Access Denied')
|
157
165
|
end
|
158
166
|
end
|
159
167
|
|
data/lib/cms/engine.rb
CHANGED
@@ -8,6 +8,9 @@ module Cms
|
|
8
8
|
|
9
9
|
config.cms = ActiveSupport::OrderedOptions.new
|
10
10
|
|
11
|
+
config.cms.allow_guests = true
|
12
|
+
config.cms.allow_dynamic_views = true
|
13
|
+
|
11
14
|
# USER BASE defaults
|
12
15
|
config.cms.user_class_name = 'Cms::PersistentUser'
|
13
16
|
config.cms.user_key_field = :login
|
@@ -167,7 +170,7 @@ module Cms
|
|
167
170
|
ActiveSupport::Dependencies.autoload_paths += %W( #{Rails.root}/app/portlets )
|
168
171
|
ActiveSupport::Dependencies.autoload_paths += %W( #{Rails.root}/app/presenters )
|
169
172
|
ActiveSupport::Dependencies.autoload_paths += %W( #{Rails.root}/app/portlets/helpers )
|
170
|
-
ActionController::Base.append_view_path DynamicView.base_path
|
173
|
+
ActionController::Base.append_view_path DynamicView.base_path if Cms.allow_dynamic_views?
|
171
174
|
ActionController::Base.append_view_path %W( #{self.root}/app/views)
|
172
175
|
require 'jdbc_adapter' if defined?(JRUBY_VERSION)
|
173
176
|
end
|
@@ -58,15 +58,15 @@ module Cms
|
|
58
58
|
end
|
59
59
|
|
60
60
|
def permissions
|
61
|
-
@permissions ||=
|
61
|
+
@permissions ||= load_permissions
|
62
62
|
end
|
63
63
|
|
64
64
|
def viewable_sections
|
65
|
-
@viewable_sections ||=
|
65
|
+
@viewable_sections ||= load_viewable_sections
|
66
66
|
end
|
67
67
|
|
68
68
|
def modifiable_sections
|
69
|
-
@modifiable_sections ||=
|
69
|
+
@modifiable_sections ||= load_modifiable_sections
|
70
70
|
end
|
71
71
|
|
72
72
|
# Expects a list of codes of Permissions
|
@@ -132,6 +132,20 @@ module Cms
|
|
132
132
|
def cms_access?
|
133
133
|
groups.cms_access.present?
|
134
134
|
end
|
135
|
+
|
136
|
+
private
|
137
|
+
|
138
|
+
def load_permissions
|
139
|
+
Cms::Permission.by_group_ids groups.map(&:id)
|
140
|
+
end
|
141
|
+
|
142
|
+
def load_viewable_sections
|
143
|
+
Cms::Section.by_group_ids groups.map(&:id)
|
144
|
+
end
|
145
|
+
|
146
|
+
def load_modifiable_sections
|
147
|
+
Cms::Section.by_group_ids groups_with_cms_access.map(&:id)
|
148
|
+
end
|
135
149
|
end
|
136
150
|
end
|
137
151
|
end
|
@@ -37,6 +37,19 @@ module Cms
|
|
37
37
|
def save(_perform_validation = true)
|
38
38
|
false
|
39
39
|
end
|
40
|
+
|
41
|
+
def permissions
|
42
|
+
@permissions ||= Cms.allow_guests? ? load_permissions : Cms::Permission.none
|
43
|
+
end
|
44
|
+
|
45
|
+
def viewable_sections
|
46
|
+
@viewable_sections ||= Cms.allow_guests? ? load_viewable_sections : Cms::Section.none
|
47
|
+
end
|
48
|
+
|
49
|
+
def modifiable_sections
|
50
|
+
@modifiable_sections ||= Cms.allow_guests? ? load_modifiable_sections : Cms::Section.none
|
51
|
+
end
|
52
|
+
|
40
53
|
end
|
41
54
|
end
|
42
|
-
end
|
55
|
+
end
|
@@ -10,7 +10,7 @@ module Cms
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def guest_user
|
13
|
-
load_guest_user
|
13
|
+
load_guest_user
|
14
14
|
end
|
15
15
|
|
16
16
|
def user(login, group_codes: nil)
|
@@ -42,6 +42,7 @@ module Cms
|
|
42
42
|
}
|
43
43
|
|
44
44
|
Cms.user_class.new(params).tap do |guest_user|
|
45
|
+
extend_user guest_user
|
45
46
|
guest_user.send :extend, GuestUserModule
|
46
47
|
end
|
47
48
|
end
|
data/lib/cms/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: browsercms-artirix
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.0.
|
4
|
+
version: 4.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- BrowserMedia
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-07-
|
12
|
+
date: 2015-07-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|