enjoy_cms 0.3.2.1 → 0.3.3
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/Gemfile.lock +3 -3
- data/app/helpers/enjoy/gzip_helper.rb +2 -2
- data/app/models/concerns/enjoy/hash_field.rb +36 -0
- data/app/models/concerns/enjoy/mappable.rb +1 -1
- data/app/views/layouts/application.html.slim +3 -3
- data/app/views/rails_admin/main/_enjoy_hash.html.slim +1 -0
- data/lib/enjoy/admin/contact_message.rb +2 -11
- data/lib/enjoy/admin/embedded_element.rb +1 -11
- data/lib/enjoy/admin/embedded_gallery_image.rb +19 -1
- data/lib/enjoy/admin/gallery.rb +1 -11
- data/lib/enjoy/admin/gallery_image.rb +2 -8
- data/lib/enjoy/admin/menu.rb +1 -11
- data/lib/enjoy/admin/news.rb +2 -11
- data/lib/enjoy/admin/page.rb +3 -11
- data/lib/enjoy/admin/page_block.rb +1 -11
- data/lib/enjoy/admin/page_blockset.rb +1 -11
- data/lib/enjoy/admin/seo.rb +1 -11
- data/lib/enjoy/admin/sitemap_data.rb +1 -11
- data/lib/enjoy/configuration.rb +0 -4
- data/lib/enjoy/rails_admin_enjoy_hash.rb +25 -0
- data/lib/enjoy/rails_admin_group_patch.rb +38 -0
- data/lib/enjoy/version.rb +1 -1
- data/lib/enjoy_cms.rb +4 -0
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8a343ff214ab5a895ad91cf3eb897a3692420bef
|
4
|
+
data.tar.gz: e0d4ebd8b92e5182325c8dc2c0373c8517f8dfc3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9f444d9a1b1e6c99a0de9d94e6d826ceaa73d48ab658a22dc8b17d2e23a9895a690353fa6c8a36e958433c22f294177d3ad31198f7943b34588fe341e829dd8e
|
7
|
+
data.tar.gz: f53e6b513f7a9004ddda3fcbda789827ed922f67b1da1cc39e1083daf282986d69dbad1a92c5ebd2abdf00dce77ee73771d3c7e5621dc4a83667fc04bc6c9073
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
enjoy_cms (0.3.
|
4
|
+
enjoy_cms (0.3.3)
|
5
5
|
ack_rails_admin_jcrop
|
6
6
|
addressable
|
7
7
|
ckeditor
|
@@ -183,7 +183,7 @@ GEM
|
|
183
183
|
mongoid (>= 3.0)
|
184
184
|
rails (>= 3.0)
|
185
185
|
rails_admin (>= 0.5)
|
186
|
-
rails_admin_nested_set (0.
|
186
|
+
rails_admin_nested_set (0.5.0)
|
187
187
|
rails_admin
|
188
188
|
rails_admin_settings (1.1.3)
|
189
189
|
rails_admin_sort_embedded (0.1.4)
|
@@ -220,7 +220,7 @@ GEM
|
|
220
220
|
sprockets (3.5.2)
|
221
221
|
concurrent-ruby (~> 1.0)
|
222
222
|
rack (> 1, < 3)
|
223
|
-
sprockets-rails (3.0.
|
223
|
+
sprockets-rails (3.0.4)
|
224
224
|
actionpack (>= 4.0)
|
225
225
|
activesupport (>= 4.0)
|
226
226
|
sprockets (>= 3.0.0)
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module Enjoy::GzipHelper
|
2
2
|
def gzip_javascript_include_tag(*sources)
|
3
3
|
# Grab the asset html include tag
|
4
|
-
tag = javascript_include_tag
|
4
|
+
tag = javascript_include_tag(*sources)
|
5
5
|
|
6
6
|
# If we are in production and the requesting client accepts gzip encoding, swap for the gzip asset
|
7
7
|
if Rails.env.production? && request.accept_encoding =~ /gzip/i
|
@@ -14,7 +14,7 @@ module Enjoy::GzipHelper
|
|
14
14
|
|
15
15
|
def gzip_stylesheet_link_tag(*sources)
|
16
16
|
# Grab the asset html include tag
|
17
|
-
tag = stylesheet_link_tag
|
17
|
+
tag = stylesheet_link_tag(*sources)
|
18
18
|
|
19
19
|
# If we are in production and the requesting client accepts gzip encoding, swap for the gzip asset
|
20
20
|
if Rails.env.production? && request.accept_encoding =~ /gzip/i
|
@@ -0,0 +1,36 @@
|
|
1
|
+
if Enjoy.mongoid?
|
2
|
+
module Enjoy::HashField
|
3
|
+
extend ActiveSupport::Concern
|
4
|
+
|
5
|
+
module ClassMethods
|
6
|
+
def enjoy_cms_hash_field(name, opts = {})
|
7
|
+
field "#{name}_hash", opts
|
8
|
+
|
9
|
+
class_eval <<-EVAL
|
10
|
+
def #{name}_str=(val)
|
11
|
+
begin
|
12
|
+
self.#{name}_hash = JSON.parse(val)
|
13
|
+
rescue
|
14
|
+
self[:#{name}_str] = val
|
15
|
+
end
|
16
|
+
end
|
17
|
+
def #{name}_str
|
18
|
+
self[:#{name}_str] ||= self.#{name}.to_json
|
19
|
+
end
|
20
|
+
def #{name}
|
21
|
+
self.#{name}_hash
|
22
|
+
end
|
23
|
+
|
24
|
+
validate do
|
25
|
+
if self.#{name}_str != self.#{name}.to_json
|
26
|
+
self.errors.add(:#{name}, "Неверный формат данных")
|
27
|
+
else
|
28
|
+
self.remove_attribute :#{name}_str
|
29
|
+
end
|
30
|
+
true
|
31
|
+
end
|
32
|
+
EVAL
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -8,10 +8,10 @@ html lang="ru"
|
|
8
8
|
= csrf_meta_tags
|
9
9
|
= render partial: "blocks/favicon"
|
10
10
|
|
11
|
-
= stylesheet_link_tag "application", media: "all", async:
|
12
|
-
= javascript_include_tag "application", async:
|
11
|
+
= stylesheet_link_tag "application", media: "all", async: Rails.env == "production"
|
12
|
+
= javascript_include_tag "application", async: Rails.env == "production"
|
13
13
|
/[if lt IE 9]
|
14
|
-
= javascript_include_tag "//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js", async:
|
14
|
+
= javascript_include_tag "//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js", async: Rails.env == "production"
|
15
15
|
|
16
16
|
body
|
17
17
|
#root
|
@@ -0,0 +1 @@
|
|
1
|
+
= form.text_area field.string_method, rows: 10, cols: 80, class: 'form-control'
|
@@ -21,17 +21,8 @@ module Enjoy
|
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
24
|
-
|
25
|
-
|
26
|
-
field name
|
27
|
-
else
|
28
|
-
if type.is_a?(Array)
|
29
|
-
field name, type[0], &type[1]
|
30
|
-
else
|
31
|
-
field name, type
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
24
|
+
|
25
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
35
26
|
|
36
27
|
if block_given?
|
37
28
|
yield self
|
@@ -7,17 +7,7 @@ module Enjoy
|
|
7
7
|
field :enabled, :toggle
|
8
8
|
field :name, :string
|
9
9
|
|
10
|
-
|
11
|
-
if type.nil?
|
12
|
-
field name
|
13
|
-
else
|
14
|
-
if type.is_a?(Array)
|
15
|
-
field name, type[0], &type[1]
|
16
|
-
else
|
17
|
-
field name, type
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
10
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
21
11
|
|
22
12
|
if block_given?
|
23
13
|
yield self
|
@@ -6,7 +6,25 @@ module Enjoy
|
|
6
6
|
jcrop_options :image_jcrop_options
|
7
7
|
end
|
8
8
|
|
9
|
-
fields
|
9
|
+
if fields
|
10
|
+
if fields.is_a?(Hash)
|
11
|
+
fields.reverse_merge!({image: [:jcrop, jcrop_proc]})
|
12
|
+
else
|
13
|
+
finded = false
|
14
|
+
fields.each { |g|
|
15
|
+
finded = !!g[:fields][:image] unless finded
|
16
|
+
}
|
17
|
+
unless finded
|
18
|
+
fields << {
|
19
|
+
name: :image,
|
20
|
+
fields: {
|
21
|
+
image: [:jcrop, jcrop_proc]
|
22
|
+
}
|
23
|
+
}
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
10
28
|
if block_given?
|
11
29
|
Enjoy::Admin::EmbeddedElement.config(nil, fields) do |config|
|
12
30
|
yield config
|
data/lib/enjoy/admin/gallery.rb
CHANGED
@@ -27,17 +27,7 @@ module Enjoy
|
|
27
27
|
jcrop_options :image_jcrop_options
|
28
28
|
end
|
29
29
|
|
30
|
-
|
31
|
-
if type.nil?
|
32
|
-
field name
|
33
|
-
else
|
34
|
-
if type.is_a?(Array)
|
35
|
-
field name, type[0], &type[1]
|
36
|
-
else
|
37
|
-
field name, type
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
30
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
41
31
|
|
42
32
|
if block_given?
|
43
33
|
yield self
|
@@ -12,14 +12,8 @@ module Enjoy
|
|
12
12
|
field :image, :jcrop do
|
13
13
|
jcrop_options :image_jcrop_options
|
14
14
|
end
|
15
|
-
|
16
|
-
|
17
|
-
if type.nil?
|
18
|
-
field name
|
19
|
-
else
|
20
|
-
field name, type
|
21
|
-
end
|
22
|
-
end
|
15
|
+
|
16
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
23
17
|
|
24
18
|
if block_given?
|
25
19
|
yield self
|
data/lib/enjoy/admin/menu.rb
CHANGED
@@ -9,17 +9,7 @@ module Enjoy
|
|
9
9
|
field :text_slug
|
10
10
|
field :name
|
11
11
|
|
12
|
-
|
13
|
-
if type.nil?
|
14
|
-
field name
|
15
|
-
else
|
16
|
-
if type.is_a?(Array)
|
17
|
-
field name, type[0], &type[1]
|
18
|
-
else
|
19
|
-
field name, type
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
12
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
23
13
|
|
24
14
|
if block_given?
|
25
15
|
yield self
|
data/lib/enjoy/admin/news.rb
CHANGED
@@ -51,17 +51,8 @@ module Enjoy
|
|
51
51
|
# field :content_html, :ck_editor
|
52
52
|
# field :content_clear, :toggle
|
53
53
|
end
|
54
|
-
|
55
|
-
|
56
|
-
field name
|
57
|
-
else
|
58
|
-
if type.is_a?(Array)
|
59
|
-
field name, type[0], &type[1]
|
60
|
-
else
|
61
|
-
field name, type
|
62
|
-
end
|
63
|
-
end
|
64
|
-
end
|
54
|
+
|
55
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
65
56
|
|
66
57
|
group :seo do
|
67
58
|
active false
|
data/lib/enjoy/admin/page.rb
CHANGED
@@ -47,17 +47,9 @@ module Enjoy
|
|
47
47
|
end
|
48
48
|
field :text_slug
|
49
49
|
end
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
else
|
54
|
-
if type.is_a?(Array)
|
55
|
-
field name, type[0], &type[1]
|
56
|
-
else
|
57
|
-
field name, type
|
58
|
-
end
|
59
|
-
end
|
60
|
-
end
|
50
|
+
|
51
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
52
|
+
|
61
53
|
group :seo do
|
62
54
|
active false
|
63
55
|
field :seo do
|
@@ -14,17 +14,7 @@ module Enjoy
|
|
14
14
|
# field :content_html, :ck_editor
|
15
15
|
# field :content_clear, :toggle
|
16
16
|
|
17
|
-
|
18
|
-
if type.nil?
|
19
|
-
field name
|
20
|
-
else
|
21
|
-
if type.is_a?(Array)
|
22
|
-
field name, type[0], &type[1]
|
23
|
-
else
|
24
|
-
field name, type
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
17
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
28
18
|
|
29
19
|
# field :blocksets do
|
30
20
|
# read_only true
|
@@ -11,17 +11,7 @@ module Enjoy
|
|
11
11
|
|
12
12
|
field :blocks
|
13
13
|
|
14
|
-
|
15
|
-
if type.nil?
|
16
|
-
field name
|
17
|
-
else
|
18
|
-
if type.is_a?(Array)
|
19
|
-
field name, type[0], &type[1]
|
20
|
-
else
|
21
|
-
field name, type
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
14
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
25
15
|
|
26
16
|
# field :blocks do
|
27
17
|
# read_only true
|
data/lib/enjoy/admin/seo.rb
CHANGED
@@ -19,17 +19,7 @@ module Enjoy
|
|
19
19
|
jcrop_options :og_image_jcrop_options
|
20
20
|
end
|
21
21
|
|
22
|
-
|
23
|
-
if type.nil?
|
24
|
-
field name
|
25
|
-
else
|
26
|
-
if type.is_a?(Array)
|
27
|
-
field name, type[0], &type[1]
|
28
|
-
else
|
29
|
-
field name, type
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
22
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
33
23
|
|
34
24
|
if block_given?
|
35
25
|
yield self
|
@@ -17,17 +17,7 @@ module Enjoy
|
|
17
17
|
end
|
18
18
|
field :sitemap_priority
|
19
19
|
|
20
|
-
|
21
|
-
if type.nil?
|
22
|
-
field name
|
23
|
-
else
|
24
|
-
if type.is_a?(Array)
|
25
|
-
field name, type[0], &type[1]
|
26
|
-
else
|
27
|
-
field name, type
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
20
|
+
Enjoy::RailsAdminGroupPatch::enjoy_cms_group(self, fields)
|
31
21
|
|
32
22
|
if block_given?
|
33
23
|
yield self
|
data/lib/enjoy/configuration.rb
CHANGED
@@ -28,8 +28,6 @@ module Enjoy
|
|
28
28
|
attr_accessor :contacts_message_required
|
29
29
|
attr_accessor :contacts_captcha_error_message
|
30
30
|
|
31
|
-
attr_accessor :separate_seo_table
|
32
|
-
|
33
31
|
attr_accessor :localize
|
34
32
|
|
35
33
|
attr_accessor :recreate_contact_message_action
|
@@ -61,8 +59,6 @@ module Enjoy
|
|
61
59
|
|
62
60
|
@localize = false
|
63
61
|
|
64
|
-
@separate_seo_table = false
|
65
|
-
|
66
62
|
@routes_config = {
|
67
63
|
use_contacts_path: true,
|
68
64
|
use_search_path: true,
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module RailsAdmin
|
2
|
+
module Config
|
3
|
+
module Fields
|
4
|
+
module Types
|
5
|
+
class EnjoyHash < RailsAdmin::Config::Fields::Types::Text
|
6
|
+
# Register field type for the type loader
|
7
|
+
RailsAdmin::Config::Fields::Types::register(self)
|
8
|
+
include RailsAdmin::Engine.routes.url_helpers
|
9
|
+
|
10
|
+
register_instance_option :string_method do
|
11
|
+
"#{name}_str"
|
12
|
+
end
|
13
|
+
|
14
|
+
register_instance_option :allowed_methods do
|
15
|
+
[string_method]
|
16
|
+
end
|
17
|
+
|
18
|
+
register_instance_option :partial do
|
19
|
+
:enjoy_hash
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
module Enjoy::RailsAdminGroupPatch
|
2
|
+
class << self
|
3
|
+
def enjoy_cms_group(config, fields = {})
|
4
|
+
return unless fields
|
5
|
+
|
6
|
+
if fields.is_a?(Array)
|
7
|
+
fields.each do |_group|
|
8
|
+
config.group _group[:name] do
|
9
|
+
active (_group[:active] || false)
|
10
|
+
_group[:fields].each_pair do |name, type|
|
11
|
+
if type.nil?
|
12
|
+
field name
|
13
|
+
else
|
14
|
+
if type.is_a?(Array)
|
15
|
+
field name, type[0], &type[1]
|
16
|
+
else
|
17
|
+
field name, type
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
else
|
24
|
+
fields.each_pair do |name, type|
|
25
|
+
if type.nil?
|
26
|
+
config.field name
|
27
|
+
else
|
28
|
+
if type.is_a?(Array)
|
29
|
+
config.field name, type[0], &type[1]
|
30
|
+
else
|
31
|
+
config.field name, type
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
data/lib/enjoy/version.rb
CHANGED
data/lib/enjoy_cms.rb
CHANGED
@@ -9,6 +9,8 @@ require 'devise'
|
|
9
9
|
require 'simple_form'
|
10
10
|
require 'enjoy/simple_form_patch'
|
11
11
|
|
12
|
+
require 'geocoder'
|
13
|
+
|
12
14
|
require 'glebtv-simple_captcha'
|
13
15
|
require 'validates_email_format_of'
|
14
16
|
require 'smart_excerpt'
|
@@ -35,6 +37,8 @@ require 'enjoy/elastic_search'
|
|
35
37
|
require 'enjoy/model'
|
36
38
|
require 'enjoy/rails_admin_menu'
|
37
39
|
require 'enjoy/rails_admin_enjoy_html'
|
40
|
+
require 'enjoy/rails_admin_enjoy_hash'
|
41
|
+
require 'enjoy/rails_admin_group_patch'
|
38
42
|
require 'enjoy/engine'
|
39
43
|
require 'enjoy/controller'
|
40
44
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: enjoy_cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Kiseliev
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-03-
|
11
|
+
date: 2016-03-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -448,6 +448,7 @@ files:
|
|
448
448
|
- app/models/concerns/enjoy/decorators/sitemap_data.rb
|
449
449
|
- app/models/concerns/enjoy/enableable.rb
|
450
450
|
- app/models/concerns/enjoy/geocodeable.rb
|
451
|
+
- app/models/concerns/enjoy/hash_field.rb
|
451
452
|
- app/models/concerns/enjoy/html_field.rb
|
452
453
|
- app/models/concerns/enjoy/mappable.rb
|
453
454
|
- app/models/concerns/enjoy/model_localizeable.rb
|
@@ -492,6 +493,7 @@ files:
|
|
492
493
|
- app/views/errors/error_500.html.slim
|
493
494
|
- app/views/layouts/application.html.slim
|
494
495
|
- app/views/rails_admin/main/_check_boxes.html.slim
|
496
|
+
- app/views/rails_admin/main/_enjoy_hash.html.slim
|
495
497
|
- app/views/rails_admin/main/_enjoy_html.html.slim
|
496
498
|
- app/views/rails_admin/main/_enum_check_boxes.html.slim
|
497
499
|
- app/views/rails_admin/main/_enum_radio_buttons.html.slim
|
@@ -572,7 +574,9 @@ files:
|
|
572
574
|
- lib/enjoy/models/page_blockset.rb
|
573
575
|
- lib/enjoy/models/seo.rb
|
574
576
|
- lib/enjoy/models/sitemap_data.rb
|
577
|
+
- lib/enjoy/rails_admin_enjoy_hash.rb
|
575
578
|
- lib/enjoy/rails_admin_enjoy_html.rb
|
579
|
+
- lib/enjoy/rails_admin_group_patch.rb
|
576
580
|
- lib/enjoy/rails_admin_menu.rb
|
577
581
|
- lib/enjoy/simple_form_patch.rb
|
578
582
|
- lib/enjoy/tasks.rb
|