enjoy_cms 0.1.0.beta1 → 0.2.0.beta
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 +15 -15
- data/README.md +1 -1
- data/app/controllers/concerns/enjoy/nav_menu.rb +12 -2
- data/app/models/concerns/enjoy/seoable.rb +26 -9
- data/app/models/concerns/enjoy/sitemap_data_field.rb +35 -0
- data/app/models/enjoy/embedded_element.rb +2 -2
- data/app/models/enjoy/embedded_gallery_image.rb +1 -1
- data/app/models/enjoy/sitemap_data.rb +13 -0
- data/app/views/enjoy/contacts/index.html.slim +1 -1
- data/app/views/enjoy/contacts/new.html.slim +2 -2
- data/app/views/shared/_obj.html.slim +4 -3
- data/lib/enjoy/admin.rb +38 -28
- data/lib/enjoy/controller.rb +2 -2
- data/lib/enjoy/models/active_record/sitemap_data.rb +11 -0
- data/lib/enjoy/models/contact_message.rb +2 -2
- data/lib/enjoy/models/embedded_gallery_image.rb +1 -1
- data/lib/enjoy/models/gallery.rb +12 -10
- data/lib/enjoy/models/gallery_image.rb +11 -5
- data/lib/enjoy/models/menu.rb +1 -5
- data/lib/enjoy/models/mongoid/embedded_gallery_image.rb +7 -2
- data/lib/enjoy/models/mongoid/gallery.rb +7 -1
- data/lib/enjoy/models/mongoid/gallery_image.rb +7 -1
- data/lib/enjoy/models/mongoid/menu.rb +11 -0
- data/lib/enjoy/models/mongoid/news.rb +4 -2
- data/lib/enjoy/models/mongoid/page.rb +12 -2
- data/lib/enjoy/models/mongoid/seo.rb +10 -6
- data/lib/enjoy/models/mongoid/sitemap_data.rb +20 -0
- data/lib/enjoy/models/news.rb +2 -2
- data/lib/enjoy/models/page.rb +2 -6
- data/lib/enjoy/models/seo.rb +1 -8
- data/lib/enjoy/models/sitemap_data.rb +13 -0
- data/lib/enjoy/rails_admin_menu.rb +4 -4
- data/lib/enjoy/tasks.rb +1 -1
- data/lib/enjoy/version.rb +1 -1
- data/lib/enjoy_cms.rb +8 -5
- data/lib/generators/enjoy/templates/ability.erb +21 -2
- data/lib/generators/enjoy/templates/admin.erb +3 -3
- data/template.rb +6 -6
- metadata +7 -3
- data/app/models/concerns/enjoy/sitemap_data.rb +0 -23
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5d5c04ee3315ba7a3fb3752388af5ecbf888c664
|
|
4
|
+
data.tar.gz: 0ac404aa2c4572cb2c6a851e91e6fdb1bf252780
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 34c6bc123f19a7dfe62b36079c2f548a1db8d2e6dc84e00c5ddecc1b173fc70d54f75681111a421dad0471829073419449508e5334a99ec40a9a57c3e2d5bc75
|
|
7
|
+
data.tar.gz: d4731e9a2e3c93b501407a91f0a5983f74a3479ea6eecfca802600beda07fd6f6451a45880928140a70f386be731b312fde87b882386fcdfc6b8b90b6e4673fb
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
enjoy_cms (0.
|
|
4
|
+
enjoy_cms (0.2.0.beta)
|
|
5
5
|
ack_rails_admin_jcrop
|
|
6
6
|
addressable
|
|
7
7
|
ckeditor
|
|
@@ -72,9 +72,9 @@ GEM
|
|
|
72
72
|
addressable (2.4.0)
|
|
73
73
|
arel (6.0.3)
|
|
74
74
|
bcrypt (3.1.10)
|
|
75
|
-
bson (4.0.
|
|
75
|
+
bson (4.0.1)
|
|
76
76
|
builder (3.2.2)
|
|
77
|
-
ckeditor (4.1.
|
|
77
|
+
ckeditor (4.1.6)
|
|
78
78
|
cocaine
|
|
79
79
|
orm_adapter (~> 0.5.0)
|
|
80
80
|
climate_control (0.0.3)
|
|
@@ -89,7 +89,7 @@ GEM
|
|
|
89
89
|
execjs
|
|
90
90
|
coffee-script-source (1.10.0)
|
|
91
91
|
concurrent-ruby (1.0.0)
|
|
92
|
-
devise (3.5.
|
|
92
|
+
devise (3.5.5)
|
|
93
93
|
bcrypt (~> 3.0)
|
|
94
94
|
orm_adapter (~> 0.1)
|
|
95
95
|
railties (>= 3.2.6, < 5)
|
|
@@ -108,7 +108,7 @@ GEM
|
|
|
108
108
|
tilt
|
|
109
109
|
htmlentities (4.3.4)
|
|
110
110
|
i18n (0.7.0)
|
|
111
|
-
jquery-rails (4.0
|
|
111
|
+
jquery-rails (4.1.0)
|
|
112
112
|
rails-dom-testing (~> 1.0)
|
|
113
113
|
railties (>= 4.2.0)
|
|
114
114
|
thor (>= 0.14, < 2.0)
|
|
@@ -125,18 +125,18 @@ GEM
|
|
|
125
125
|
mime-types (2.99)
|
|
126
126
|
mini_magick (4.3.6)
|
|
127
127
|
mini_portile2 (2.0.0)
|
|
128
|
-
minitest (5.8.
|
|
129
|
-
mongo (2.2.
|
|
128
|
+
minitest (5.8.4)
|
|
129
|
+
mongo (2.2.2)
|
|
130
130
|
bson (~> 4.0)
|
|
131
|
-
mongoid (5.0
|
|
131
|
+
mongoid (5.1.0)
|
|
132
132
|
activemodel (~> 4.0)
|
|
133
133
|
mongo (~> 2.1)
|
|
134
|
-
origin (~> 2.
|
|
134
|
+
origin (~> 2.2)
|
|
135
135
|
tzinfo (>= 0.3.37)
|
|
136
136
|
nested_form (0.3.2)
|
|
137
|
-
nokogiri (1.6.7.
|
|
137
|
+
nokogiri (1.6.7.2)
|
|
138
138
|
mini_portile2 (~> 2.0.0.rc2)
|
|
139
|
-
origin (2.
|
|
139
|
+
origin (2.2.0)
|
|
140
140
|
orm_adapter (0.5.0)
|
|
141
141
|
rack (1.6.4)
|
|
142
142
|
rack-pjax (0.8.0)
|
|
@@ -161,7 +161,7 @@ GEM
|
|
|
161
161
|
activesupport (>= 4.2.0.beta, < 5.0)
|
|
162
162
|
nokogiri (~> 1.6.0)
|
|
163
163
|
rails-deprecated_sanitizer (>= 1.0.1)
|
|
164
|
-
rails-html-sanitizer (1.0.
|
|
164
|
+
rails-html-sanitizer (1.0.3)
|
|
165
165
|
loofah (~> 2.0)
|
|
166
166
|
rails_admin (0.8.1)
|
|
167
167
|
builder (~> 3.1)
|
|
@@ -192,12 +192,12 @@ GEM
|
|
|
192
192
|
activesupport (= 4.2.4)
|
|
193
193
|
rake (>= 0.8.7)
|
|
194
194
|
thor (>= 0.18.1, < 2.0)
|
|
195
|
-
rake (10.
|
|
195
|
+
rake (10.5.0)
|
|
196
196
|
remotipart (1.2.1)
|
|
197
197
|
responders (2.1.1)
|
|
198
198
|
railties (>= 4.2.0, < 5.1)
|
|
199
199
|
safe_yaml (1.0.4)
|
|
200
|
-
sass (3.4.
|
|
200
|
+
sass (3.4.21)
|
|
201
201
|
sass-rails (5.0.4)
|
|
202
202
|
railties (>= 4.0.0, < 5.0)
|
|
203
203
|
sass (~> 3.1)
|
|
@@ -224,7 +224,7 @@ GEM
|
|
|
224
224
|
stringex (2.5.2)
|
|
225
225
|
thor (0.19.1)
|
|
226
226
|
thread_safe (0.3.5)
|
|
227
|
-
tilt (2.0.
|
|
227
|
+
tilt (2.0.2)
|
|
228
228
|
turbolinks (2.5.3)
|
|
229
229
|
coffee-rails
|
|
230
230
|
tzinfo (1.2.2)
|
data/README.md
CHANGED
|
@@ -11,7 +11,9 @@ module Enjoy::NavMenu
|
|
|
11
11
|
block = nil
|
|
12
12
|
else
|
|
13
13
|
block = Proc.new do |sub_nav|
|
|
14
|
-
subs.each { |sub|
|
|
14
|
+
subs.each { |sub|
|
|
15
|
+
render_with_subs(items, sub_nav, sub)
|
|
16
|
+
}
|
|
15
17
|
end
|
|
16
18
|
end
|
|
17
19
|
cr = item.clean_regexp
|
|
@@ -53,7 +55,8 @@ module Enjoy::NavMenu
|
|
|
53
55
|
item.redirect.blank? ? item.fullpath : item.redirect
|
|
54
56
|
end
|
|
55
57
|
def nav_get_menu_items(type)
|
|
56
|
-
|
|
58
|
+
menu = menu_class.find(type.to_s)
|
|
59
|
+
menu.pages.enabled.sorted.to_a if menu
|
|
57
60
|
end
|
|
58
61
|
def nav_extra_data_before(type, primary)
|
|
59
62
|
# override for additional config or items
|
|
@@ -61,4 +64,11 @@ module Enjoy::NavMenu
|
|
|
61
64
|
def nav_extra_data_after(type, primary)
|
|
62
65
|
# override for additional config or items
|
|
63
66
|
end
|
|
67
|
+
|
|
68
|
+
def menu_class_name
|
|
69
|
+
"Enjoy::Menu"
|
|
70
|
+
end
|
|
71
|
+
def menu_class
|
|
72
|
+
menu_class_name.constantize
|
|
73
|
+
end
|
|
64
74
|
end
|
|
@@ -4,18 +4,22 @@ module Enjoy::Seoable
|
|
|
4
4
|
FIELDS = LOCALIZED_FIELDS + [:og_image, :robots]
|
|
5
5
|
|
|
6
6
|
included do
|
|
7
|
-
has_one :seo, as: :seoable, autosave: true
|
|
7
|
+
has_one :seo, as: :seoable, autosave: true, class_name: seo_class_name
|
|
8
8
|
accepts_nested_attributes_for :seo
|
|
9
|
+
|
|
9
10
|
delegate *FIELDS, to: :seo
|
|
10
11
|
delegate *(FIELDS.map {|f| "#{f}=".to_sym }), to: :seo
|
|
11
|
-
|
|
12
|
-
def seo
|
|
13
|
-
seo_without_build || build_seo
|
|
14
|
-
end
|
|
12
|
+
|
|
15
13
|
if Enjoy.config.localize
|
|
16
14
|
delegate *(LOCALIZED_FIELDS.map {|f| "#{f}_translations".to_sym }), to: :seo
|
|
17
15
|
delegate *(LOCALIZED_FIELDS.map {|f| "#{f}_translations=".to_sym }), to: :seo
|
|
18
16
|
end
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
alias seo_without_build seo
|
|
20
|
+
def seo
|
|
21
|
+
seo_without_build || build_seo
|
|
22
|
+
end
|
|
19
23
|
end
|
|
20
24
|
|
|
21
25
|
def page_title
|
|
@@ -26,11 +30,24 @@ module Enjoy::Seoable
|
|
|
26
30
|
og_title.blank? ? name : og_title
|
|
27
31
|
end
|
|
28
32
|
|
|
29
|
-
def self.admin
|
|
30
|
-
Enjoy.seo_config
|
|
31
|
-
end
|
|
32
|
-
|
|
33
33
|
def og_image_jcrop_options
|
|
34
34
|
{aspectRation: 800.0/600.0}
|
|
35
35
|
end
|
|
36
|
+
|
|
37
|
+
module ClassMethods
|
|
38
|
+
def seo_class_name
|
|
39
|
+
"Enjoy::Seo"
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def seo_class
|
|
43
|
+
seo_class_name.constantize
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
def seo_class_name
|
|
47
|
+
self.class.seo_class_name
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def seo_class
|
|
51
|
+
self.class.seo_class
|
|
52
|
+
end
|
|
36
53
|
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
module Enjoy::SitemapDataField
|
|
2
|
+
extend ActiveSupport::Concern
|
|
3
|
+
FIELDS = [:sitemap_show, :sitemap_lastmod, :sitemap_changefreq, :sitemap_priority]
|
|
4
|
+
|
|
5
|
+
included do
|
|
6
|
+
has_one :sitemap_data, as: :sitemap_data_field, autosave: true, class_name: sitemap_data_class_name
|
|
7
|
+
accepts_nested_attributes_for :sitemap_data
|
|
8
|
+
|
|
9
|
+
delegate *FIELDS, to: :sitemap_data
|
|
10
|
+
delegate *(FIELDS.map {|f| "#{f}=".to_sym }), to: :sitemap_data
|
|
11
|
+
|
|
12
|
+
alias sitemap_data_without_build sitemap_data
|
|
13
|
+
def sitemap_data
|
|
14
|
+
sitemap_data_without_build || build_sitemap_data
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
module ClassMethods
|
|
19
|
+
def sitemap_data_class_name
|
|
20
|
+
"Enjoy::SitemapData"
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def sitemap_data_class
|
|
24
|
+
sitemap_data_class_name.constantize
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def sitemap_data_class_name
|
|
29
|
+
self.class.sitemap_data_class_name
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def sitemap_data_class
|
|
33
|
+
self.class.sitemap_data_class
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
module Enjoy
|
|
2
|
+
if Enjoy.active_record?
|
|
3
|
+
class SitemapData < ActiveRecord::Base
|
|
4
|
+
end
|
|
5
|
+
end
|
|
6
|
+
|
|
7
|
+
class SitemapData
|
|
8
|
+
include Enjoy::Models::SitemapData
|
|
9
|
+
Enjoy.apply_patches self
|
|
10
|
+
rails_admin &Enjoy.sitemap_data_config
|
|
11
|
+
belongs_to :sitemap_data_field, polymorphic: true
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
= render 'shared/obj', obj: @seo_page
|
|
2
2
|
|
|
3
3
|
#enjoy_cms_contact_form
|
|
4
|
-
= simple_form_for @contact_message, url:
|
|
4
|
+
= simple_form_for @contact_message, url: enjoy_cms.contacts_path do |f|
|
|
5
5
|
= f.input :name
|
|
6
6
|
= f.input :email
|
|
7
7
|
= f.input :phone
|
|
8
8
|
= f.input :content
|
|
9
|
-
= f.input :captcha
|
|
9
|
+
= f.input :captcha, as: :simple_captcha
|
|
10
10
|
= f.submit t('enjoy.send')
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
- unless obj.nil?
|
|
2
2
|
.text_content
|
|
3
|
-
-
|
|
4
|
-
|
|
3
|
+
- seo = obj.seo
|
|
4
|
+
- if (!defined?(h1) || h1) && seo and !seo.h1.blank?
|
|
5
|
+
h1= seo.h1
|
|
5
6
|
- if obj.content.blank?
|
|
6
7
|
- unless @seo_page.nil?
|
|
7
8
|
= raw @seo_page.page_content
|
|
@@ -18,4 +19,4 @@
|
|
|
18
19
|
|
|
19
20
|
- content_for :title do
|
|
20
21
|
- if obj.title
|
|
21
|
-
title= obj.title
|
|
22
|
+
title= obj.title
|
data/lib/enjoy/admin.rb
CHANGED
|
@@ -3,7 +3,7 @@ module Enjoy
|
|
|
3
3
|
def map_config(is_active = true)
|
|
4
4
|
Proc.new {
|
|
5
5
|
active is_active
|
|
6
|
-
label I18n.t('
|
|
6
|
+
label I18n.t('enjoy.map')
|
|
7
7
|
field :address, :string
|
|
8
8
|
field :map_address, :string
|
|
9
9
|
field :map_hint, :string
|
|
@@ -22,18 +22,10 @@ module Enjoy
|
|
|
22
22
|
|
|
23
23
|
def seo_config(is_active = true)
|
|
24
24
|
Proc.new {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
else
|
|
29
|
-
visible false
|
|
25
|
+
navigation_label 'SEO'
|
|
26
|
+
field :seoable do
|
|
27
|
+
read_only true
|
|
30
28
|
end
|
|
31
|
-
Enjoy.seo_fields(self)
|
|
32
|
-
}
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
def seo_fields(s)
|
|
36
|
-
s.instance_eval do
|
|
37
29
|
field :h1, :string
|
|
38
30
|
field :title, :string
|
|
39
31
|
field :keywords, :text
|
|
@@ -49,7 +41,7 @@ module Enjoy
|
|
|
49
41
|
if block_given?
|
|
50
42
|
yield
|
|
51
43
|
end
|
|
52
|
-
|
|
44
|
+
}
|
|
53
45
|
end
|
|
54
46
|
|
|
55
47
|
def page_config(fields = {})
|
|
@@ -77,16 +69,16 @@ module Enjoy
|
|
|
77
69
|
field :content, :ck_editor
|
|
78
70
|
Enjoy.apply_patches self
|
|
79
71
|
group :menu do
|
|
80
|
-
label I18n.t('
|
|
72
|
+
label I18n.t('enjoy.menu')
|
|
81
73
|
field :menus
|
|
82
74
|
field :fullpath, :string do
|
|
83
|
-
help I18n.t('
|
|
75
|
+
help I18n.t('enjoy.with_final_slash')
|
|
84
76
|
end
|
|
85
77
|
field :regexp, :string do
|
|
86
|
-
help I18n.t('
|
|
78
|
+
help I18n.t('enjoy.page_url_regex')
|
|
87
79
|
end
|
|
88
80
|
field :redirect, :string do
|
|
89
|
-
help I18n.t('
|
|
81
|
+
help I18n.t('enjoy.final_in_menu')
|
|
90
82
|
end
|
|
91
83
|
field :text_slug
|
|
92
84
|
end
|
|
@@ -102,12 +94,17 @@ module Enjoy
|
|
|
102
94
|
end
|
|
103
95
|
end
|
|
104
96
|
group :seo do
|
|
105
|
-
active
|
|
97
|
+
active false
|
|
106
98
|
field :seo do
|
|
107
99
|
active true
|
|
108
100
|
end
|
|
109
101
|
end
|
|
110
|
-
group :sitemap_data
|
|
102
|
+
group :sitemap_data do
|
|
103
|
+
active false
|
|
104
|
+
field :sitemap_data do
|
|
105
|
+
active true
|
|
106
|
+
end
|
|
107
|
+
end
|
|
111
108
|
end
|
|
112
109
|
Enjoy.only_patches self, [:show, :export]
|
|
113
110
|
nested_set({
|
|
@@ -139,7 +136,7 @@ module Enjoy
|
|
|
139
136
|
|
|
140
137
|
def contact_message_config
|
|
141
138
|
Proc.new {
|
|
142
|
-
# navigation_label I18n.t('
|
|
139
|
+
# navigation_label I18n.t('enjoy.settings')
|
|
143
140
|
field :c_at do
|
|
144
141
|
read_only true
|
|
145
142
|
end
|
|
@@ -218,8 +215,18 @@ module Enjoy
|
|
|
218
215
|
end
|
|
219
216
|
end
|
|
220
217
|
Enjoy.apply_patches self
|
|
221
|
-
group :seo
|
|
222
|
-
|
|
218
|
+
group :seo do
|
|
219
|
+
active false
|
|
220
|
+
field :seo do
|
|
221
|
+
active true
|
|
222
|
+
end
|
|
223
|
+
end
|
|
224
|
+
group :sitemap_data do
|
|
225
|
+
active false
|
|
226
|
+
field :sitemap_data do
|
|
227
|
+
active true
|
|
228
|
+
end
|
|
229
|
+
end
|
|
223
230
|
end
|
|
224
231
|
|
|
225
232
|
Enjoy.only_patches self, [:show, :list, :export]
|
|
@@ -232,13 +239,16 @@ module Enjoy
|
|
|
232
239
|
|
|
233
240
|
def sitemap_data_config(is_active = false)
|
|
234
241
|
Proc.new {
|
|
235
|
-
|
|
236
|
-
label I18n.t('
|
|
237
|
-
field :
|
|
242
|
+
navigation_label 'SEO'
|
|
243
|
+
label I18n.t('enjoy.sitemap_data')
|
|
244
|
+
field :sitemap_data_field do
|
|
245
|
+
read_only true
|
|
246
|
+
end
|
|
247
|
+
field :sitemap_show, :toggle
|
|
238
248
|
field :sitemap_lastmod
|
|
239
249
|
field :sitemap_changefreq, :enum do
|
|
240
250
|
enum do
|
|
241
|
-
SitemapData::SITEMAP_CHANGEFREQ_ARRAY
|
|
251
|
+
Enjoy::SitemapData::SITEMAP_CHANGEFREQ_ARRAY
|
|
242
252
|
end
|
|
243
253
|
end
|
|
244
254
|
field :sitemap_priority
|
|
@@ -295,7 +305,7 @@ module Enjoy
|
|
|
295
305
|
|
|
296
306
|
def gallery_config
|
|
297
307
|
Proc.new {
|
|
298
|
-
# navigation_label I18n.t('
|
|
308
|
+
# navigation_label I18n.t('enjoy.gallery')
|
|
299
309
|
field :enabled, :toggle
|
|
300
310
|
|
|
301
311
|
field :name, :string
|
|
@@ -324,7 +334,7 @@ module Enjoy
|
|
|
324
334
|
|
|
325
335
|
def image_config(without_gallery = false, fields = {})
|
|
326
336
|
Proc.new {
|
|
327
|
-
# navigation_label I18n.t('
|
|
337
|
+
# navigation_label I18n.t('enjoy.gallery')
|
|
328
338
|
field :enabled, :toggle
|
|
329
339
|
unless without_gallery
|
|
330
340
|
field :gallery
|
data/lib/enjoy/controller.rb
CHANGED
|
@@ -7,6 +7,7 @@ module Enjoy::Controller
|
|
|
7
7
|
include Enjoy::Fancybox
|
|
8
8
|
protect_from_forgery with: :exception
|
|
9
9
|
helper_method :page_title
|
|
10
|
+
helper_method :hide_ym_ga
|
|
10
11
|
end
|
|
11
12
|
|
|
12
13
|
protected
|
|
@@ -23,9 +24,8 @@ module Enjoy::Controller
|
|
|
23
24
|
redirect_to '/' unless user_signed_in? && current_user.has_role?('admin')
|
|
24
25
|
end
|
|
25
26
|
|
|
26
|
-
|
|
27
|
+
|
|
27
28
|
def hide_ym_ga
|
|
28
29
|
false
|
|
29
30
|
end
|
|
30
|
-
helper_method :hide_ym_ga
|
|
31
31
|
end
|
|
@@ -3,7 +3,7 @@ module Enjoy
|
|
|
3
3
|
module ContactMessage
|
|
4
4
|
extend ActiveSupport::Concern
|
|
5
5
|
include Enjoy::Model
|
|
6
|
-
|
|
6
|
+
|
|
7
7
|
include Enjoy.orm_specific('ContactMessage')
|
|
8
8
|
|
|
9
9
|
included do
|
|
@@ -16,7 +16,7 @@ module Enjoy
|
|
|
16
16
|
end
|
|
17
17
|
validate do
|
|
18
18
|
if email.blank? && phone.blank?
|
|
19
|
-
errors.add(:email, I18n.t('
|
|
19
|
+
errors.add(:email, I18n.t('enjoy.no_contact_info'))
|
|
20
20
|
end
|
|
21
21
|
end
|
|
22
22
|
|
data/lib/enjoy/models/gallery.rb
CHANGED
|
@@ -5,8 +5,18 @@ module Enjoy
|
|
|
5
5
|
include Enjoy::Model
|
|
6
6
|
include ManualSlug
|
|
7
7
|
include Enjoy::Enableable
|
|
8
|
-
include Enjoy::
|
|
9
|
-
|
|
8
|
+
include Enjoy::SitemapDataField
|
|
9
|
+
|
|
10
|
+
module ClassMethods
|
|
11
|
+
def gallery_image_class_name
|
|
12
|
+
"Enjoy::GalleryImage"
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def gallery_image_class
|
|
16
|
+
gallery_image_class_name.constantize
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
10
20
|
include Enjoy.orm_specific('Gallery')
|
|
11
21
|
|
|
12
22
|
included do
|
|
@@ -16,14 +26,6 @@ module Enjoy
|
|
|
16
26
|
|
|
17
27
|
validates_attachment_content_type :image, content_type: /\Aimage\/.*\Z/, if: :image?
|
|
18
28
|
end
|
|
19
|
-
|
|
20
|
-
def gallery_image_class_name
|
|
21
|
-
"Enjoy::GalleryImage"
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def image_styles
|
|
25
|
-
{}
|
|
26
|
-
end
|
|
27
29
|
end
|
|
28
30
|
end
|
|
29
31
|
end
|
|
@@ -4,7 +4,17 @@ module Enjoy
|
|
|
4
4
|
extend ActiveSupport::Concern
|
|
5
5
|
include Enjoy::Model
|
|
6
6
|
include Enjoy::Enableable
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
module ClassMethods
|
|
9
|
+
def gallery_class_name
|
|
10
|
+
"Enjoy::Gallery"
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def gallery_class
|
|
14
|
+
gallery_class_name.constantize
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
|
|
8
18
|
include Enjoy.orm_specific('GalleryImage')
|
|
9
19
|
|
|
10
20
|
included do
|
|
@@ -14,10 +24,6 @@ module Enjoy
|
|
|
14
24
|
|
|
15
25
|
validates_attachment_content_type :image, content_type: /\Aimage\/.*\Z/, if: :image?
|
|
16
26
|
end
|
|
17
|
-
|
|
18
|
-
def gallery_class_name
|
|
19
|
-
"Enjoy::Gallery"
|
|
20
|
-
end
|
|
21
27
|
end
|
|
22
28
|
end
|
|
23
29
|
end
|
data/lib/enjoy/models/menu.rb
CHANGED
|
@@ -5,7 +5,7 @@ module Enjoy
|
|
|
5
5
|
include Enjoy::Model
|
|
6
6
|
include ManualSlug
|
|
7
7
|
include Enjoy::Enableable
|
|
8
|
-
|
|
8
|
+
|
|
9
9
|
include Enjoy.orm_specific('Menu')
|
|
10
10
|
included do
|
|
11
11
|
|
|
@@ -19,10 +19,6 @@ module Enjoy
|
|
|
19
19
|
Rails.cache.delete 'menus'
|
|
20
20
|
end
|
|
21
21
|
end
|
|
22
|
-
|
|
23
|
-
def page_class_name
|
|
24
|
-
"Enjoy::Page"
|
|
25
|
-
end
|
|
26
22
|
end
|
|
27
23
|
end
|
|
28
24
|
end
|
|
@@ -4,15 +4,20 @@ module Enjoy
|
|
|
4
4
|
module EmbeddedGalleryImage
|
|
5
5
|
extend ActiveSupport::Concern
|
|
6
6
|
include Enjoy::MongoidPaperclip
|
|
7
|
-
include Enjoy::EmbeddedElement
|
|
8
7
|
|
|
9
8
|
included do
|
|
10
9
|
|
|
11
|
-
|
|
10
|
+
enjoy_cms_mongoid_attached_file(:image,
|
|
12
11
|
styles: image_styles,
|
|
13
12
|
content_type: { content_type: ["image/jpg", "image/jpeg", "image/png"] }
|
|
14
13
|
)
|
|
15
14
|
end
|
|
15
|
+
|
|
16
|
+
module ClassMethods
|
|
17
|
+
def image_styles
|
|
18
|
+
{}
|
|
19
|
+
end
|
|
20
|
+
end
|
|
16
21
|
end
|
|
17
22
|
end
|
|
18
23
|
end
|
|
@@ -12,11 +12,17 @@ module Enjoy
|
|
|
12
12
|
acts_as_nested_set
|
|
13
13
|
scope :sorted, -> { order_by([:lft, :asc]) }
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
enjoy_cms_mongoid_attached_file(:image,
|
|
16
16
|
styles: image_styles,
|
|
17
17
|
content_type: { content_type: ["image/jpg", "image/jpeg", "image/png"] }
|
|
18
18
|
)
|
|
19
19
|
end
|
|
20
|
+
|
|
21
|
+
module ClassMethods
|
|
22
|
+
def image_styles
|
|
23
|
+
{}
|
|
24
|
+
end
|
|
25
|
+
end
|
|
20
26
|
end
|
|
21
27
|
end
|
|
22
28
|
end
|
|
@@ -10,11 +10,17 @@ module Enjoy
|
|
|
10
10
|
acts_as_nested_set
|
|
11
11
|
scope :sorted, -> { order_by([:lft, :asc]) }
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
enjoy_cms_mongoid_attached_file(:image,
|
|
14
14
|
styles: image_styles,
|
|
15
15
|
content_type: { content_type: ["image/jpg", "image/jpeg", "image/png"] }
|
|
16
16
|
)
|
|
17
17
|
end
|
|
18
|
+
|
|
19
|
+
module ClassMethods
|
|
20
|
+
def image_styles
|
|
21
|
+
{}
|
|
22
|
+
end
|
|
23
|
+
end
|
|
18
24
|
end
|
|
19
25
|
end
|
|
20
26
|
end
|
|
@@ -3,6 +3,17 @@ module Enjoy
|
|
|
3
3
|
module Mongoid
|
|
4
4
|
module Menu
|
|
5
5
|
extend ActiveSupport::Concern
|
|
6
|
+
|
|
7
|
+
module ClassMethods
|
|
8
|
+
def page_class_name
|
|
9
|
+
"Enjoy::Page"
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def page_class
|
|
13
|
+
page_class_name.constantize
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
6
17
|
included do
|
|
7
18
|
has_and_belongs_to_many :pages, inverse_of: :menus, class_name: page_class_name
|
|
8
19
|
alias_method :items, :pages
|
|
@@ -6,12 +6,14 @@ module Enjoy
|
|
|
6
6
|
unless Enjoy.config.news_image_styles.nil?
|
|
7
7
|
include Enjoy::MongoidPaperclip
|
|
8
8
|
end
|
|
9
|
-
included do
|
|
10
9
|
|
|
10
|
+
included do
|
|
11
|
+
field :name, type: String, localize: Enjoy.config.localize, default: ""
|
|
12
|
+
|
|
11
13
|
field :time, type: Time
|
|
12
14
|
index({enabled: 1, time: 1})
|
|
13
15
|
unless Enjoy.config.news_image_styles.nil?
|
|
14
|
-
|
|
16
|
+
enjoy_cms_mongoid_attached_file(:image,
|
|
15
17
|
styles: Enjoy.configuration.news_image_styles,
|
|
16
18
|
content_type: { content_type: ["image/jpg", "image/jpeg", "image/png"] }
|
|
17
19
|
)
|
|
@@ -3,7 +3,19 @@ module Enjoy
|
|
|
3
3
|
module Mongoid
|
|
4
4
|
module Page
|
|
5
5
|
extend ActiveSupport::Concern
|
|
6
|
+
|
|
7
|
+
module ClassMethods
|
|
8
|
+
def menu_class_name
|
|
9
|
+
"Enjoy::Menu"
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
def menu_class
|
|
13
|
+
menu_class_name.constantize
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
|
|
6
17
|
included do
|
|
18
|
+
field :name, type: String, localize: Enjoy.config.localize, default: ""
|
|
7
19
|
|
|
8
20
|
field :regexp, type: String, default: ""
|
|
9
21
|
field :redirect, type: String, default: ""
|
|
@@ -14,8 +26,6 @@ module Enjoy
|
|
|
14
26
|
has_and_belongs_to_many :menus, inverse_of: :pages, class_name: menu_class_name
|
|
15
27
|
acts_as_nested_set
|
|
16
28
|
|
|
17
|
-
manual_slug :name
|
|
18
|
-
|
|
19
29
|
scope :sorted, -> { order_by([:lft, :asc]) }
|
|
20
30
|
scope :menu, ->(menu_id) { enabled.sorted.where(menu_ids: menu_id) }
|
|
21
31
|
end
|
|
@@ -3,7 +3,7 @@ module Enjoy
|
|
|
3
3
|
module Mongoid
|
|
4
4
|
module Seo
|
|
5
5
|
extend ActiveSupport::Concern
|
|
6
|
-
include ::
|
|
6
|
+
include Enjoy::MongoidPaperclip
|
|
7
7
|
included do
|
|
8
8
|
|
|
9
9
|
field :name, type: String, localize: Enjoy.config.localize
|
|
@@ -15,11 +15,15 @@ module Enjoy
|
|
|
15
15
|
field :robots, type: String, localize: Enjoy.config.localize
|
|
16
16
|
|
|
17
17
|
field :og_title, type: String, localize: Enjoy.config.localize
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
enjoy_cms_mongoid_attached_file(:og_image,
|
|
19
|
+
styles: og_image_styles,
|
|
20
|
+
content_type: { content_type: ["image/jpg", "image/jpeg", "image/png"] }
|
|
21
|
+
)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
module ClassMethods
|
|
25
|
+
def og_image_styles
|
|
26
|
+
{thumb: "800x600>"}
|
|
23
27
|
end
|
|
24
28
|
end
|
|
25
29
|
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Enjoy
|
|
2
|
+
module Models
|
|
3
|
+
module Mongoid
|
|
4
|
+
module SitemapData
|
|
5
|
+
extend ActiveSupport::Concern
|
|
6
|
+
|
|
7
|
+
included do
|
|
8
|
+
field :sitemap_show, type: Boolean, default: true
|
|
9
|
+
field :sitemap_lastmod, type: DateTime
|
|
10
|
+
field :sitemap_changefreq, type: String, default: 'daily'
|
|
11
|
+
field :sitemap_priority, type: Float
|
|
12
|
+
|
|
13
|
+
scope :sitemap_show, -> { where(sitemap_show: true) }
|
|
14
|
+
scope :for_sitemap, -> { sitemap_show }
|
|
15
|
+
scope :show_in_sitemap, -> { sitemap_show }
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
data/lib/enjoy/models/news.rb
CHANGED
data/lib/enjoy/models/page.rb
CHANGED
|
@@ -6,7 +6,7 @@ module Enjoy
|
|
|
6
6
|
include ManualSlug
|
|
7
7
|
include Enjoy::Enableable
|
|
8
8
|
include Enjoy::Seoable
|
|
9
|
-
include Enjoy::
|
|
9
|
+
include Enjoy::SitemapDataField
|
|
10
10
|
|
|
11
11
|
include Enjoy.orm_specific('Page')
|
|
12
12
|
|
|
@@ -24,16 +24,12 @@ module Enjoy
|
|
|
24
24
|
end
|
|
25
25
|
|
|
26
26
|
def page_h1
|
|
27
|
-
_ret = h1
|
|
27
|
+
_ret = seo ? seo.h1 : nil
|
|
28
28
|
_ret = name if _ret.blank?
|
|
29
29
|
_ret = title if _ret.blank?
|
|
30
30
|
_ret
|
|
31
31
|
end
|
|
32
32
|
|
|
33
|
-
def menu_class_name
|
|
34
|
-
"Enjoy::Menu"
|
|
35
|
-
end
|
|
36
|
-
|
|
37
33
|
def get_fullpath
|
|
38
34
|
redirect.blank? ? fullpath : redirect
|
|
39
35
|
end
|
data/lib/enjoy/models/seo.rb
CHANGED
|
@@ -4,19 +4,12 @@ module Enjoy
|
|
|
4
4
|
extend ActiveSupport::Concern
|
|
5
5
|
include Enjoy::Model
|
|
6
6
|
include Enjoy::Enableable
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
|
|
9
8
|
include Enjoy.orm_specific('Seo')
|
|
10
9
|
|
|
11
10
|
included do
|
|
12
|
-
|
|
13
|
-
Enjoy.apply_patches self
|
|
14
11
|
validates_attachment_content_type :og_image, content_type: /\Aimage\/.*\Z/, if: :og_image?
|
|
15
12
|
end
|
|
16
|
-
|
|
17
|
-
def og_image_styles
|
|
18
|
-
{thumb: "800x600>"}
|
|
19
|
-
end
|
|
20
13
|
end
|
|
21
14
|
end
|
|
22
15
|
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
module Enjoy
|
|
2
|
+
module Models
|
|
3
|
+
module SitemapData
|
|
4
|
+
extend ActiveSupport::Concern
|
|
5
|
+
include Enjoy::Model
|
|
6
|
+
include Enjoy::Enableable
|
|
7
|
+
|
|
8
|
+
include Enjoy.orm_specific('SitemapData')
|
|
9
|
+
|
|
10
|
+
SITEMAP_CHANGEFREQ_ARRAY = %w(always hourly daily weekly monthly yearly never)
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -12,9 +12,9 @@ module RailsAdmin
|
|
|
12
12
|
ret = []
|
|
13
13
|
menus = Rails.cache.fetch 'menus', expires_in: 10.minutes do
|
|
14
14
|
if Enjoy.mongoid?
|
|
15
|
-
::Menu.all.map { |m| {id: m.id.to_s, name: m.name } }
|
|
15
|
+
Enjoy::Menu.all.map { |m| {id: m.id.to_s, name: m.name } }
|
|
16
16
|
else
|
|
17
|
-
::Menu.all.map { |m| {id: m.id, name: m.name } }
|
|
17
|
+
Enjoy::Menu.all.map { |m| {id: m.id, name: m.name } }
|
|
18
18
|
end
|
|
19
19
|
end
|
|
20
20
|
menus.each do |m|
|
|
@@ -125,9 +125,9 @@ module RailsAdmin
|
|
|
125
125
|
else
|
|
126
126
|
flash[:error] = I18n.t('rs.m.no_id')
|
|
127
127
|
end
|
|
128
|
-
|
|
128
|
+
|
|
129
129
|
end
|
|
130
|
-
|
|
130
|
+
|
|
131
131
|
redirect_to :back unless params['ajax'].present?
|
|
132
132
|
end
|
|
133
133
|
end
|
data/lib/enjoy/tasks.rb
CHANGED
|
@@ -4,7 +4,7 @@ require 'rake'
|
|
|
4
4
|
# Require generator at runtime. If we don't do this the ActionView helpers are included
|
|
5
5
|
# before the Rails environment can be loaded by other Rake tasks, which causes problems
|
|
6
6
|
# for those tasks when rendering using ActionView.
|
|
7
|
-
namespace :
|
|
7
|
+
namespace :enjoy do
|
|
8
8
|
# Require generator only. When installed as a plugin the require will fail, so in
|
|
9
9
|
# that case, load the environment first.
|
|
10
10
|
task :require do
|
data/lib/enjoy/version.rb
CHANGED
data/lib/enjoy_cms.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
unless defined?(Enjoy) && Enjoy.respond_to?(:orm) && [:active_record, :mongoid].include?(Enjoy.orm)
|
|
2
|
-
puts "please use
|
|
2
|
+
puts "please use enjoy_cms_mongoid or enjoy_cms_activerecord and not enjoy directly"
|
|
3
3
|
exit 1
|
|
4
4
|
end
|
|
5
5
|
|
|
@@ -39,8 +39,6 @@ require 'enjoy/rails_admin_menu'
|
|
|
39
39
|
require 'enjoy/engine'
|
|
40
40
|
require 'enjoy/controller'
|
|
41
41
|
|
|
42
|
-
require 'manual_slug'
|
|
43
|
-
|
|
44
42
|
|
|
45
43
|
module Enjoy
|
|
46
44
|
class << self
|
|
@@ -65,26 +63,28 @@ module Enjoy
|
|
|
65
63
|
# end
|
|
66
64
|
|
|
67
65
|
module Models
|
|
66
|
+
autoload :SitemapData, 'enjoy/models/sitemap_data'
|
|
68
67
|
autoload :Seo, 'enjoy/models/seo'
|
|
69
68
|
autoload :Menu, 'enjoy/models/menu'
|
|
70
69
|
autoload :Page, 'enjoy/models/page'
|
|
71
70
|
autoload :News, 'enjoy/models/news'
|
|
72
71
|
autoload :ContactMessage, 'enjoy/models/contact_message'
|
|
73
72
|
|
|
74
|
-
autoload :
|
|
73
|
+
autoload :EmbeddedElement, 'enjoy/models/embedded_element'
|
|
75
74
|
|
|
76
75
|
autoload :EmbeddedGalleryImage, 'enjoy/models/embedded_gallery_image'
|
|
77
76
|
autoload :GalleryImage, 'enjoy/models/gallery_image'
|
|
78
77
|
autoload :Gallery, 'enjoy/models/gallery'
|
|
79
78
|
|
|
80
79
|
module Mongoid
|
|
80
|
+
autoload :SitemapData, 'enjoy/models/mongoid/sitemap_data'
|
|
81
81
|
autoload :Seo, 'enjoy/models/mongoid/seo'
|
|
82
82
|
autoload :Menu, 'enjoy/models/mongoid/menu'
|
|
83
83
|
autoload :Page, 'enjoy/models/mongoid/page'
|
|
84
84
|
autoload :News, 'enjoy/models/mongoid/news'
|
|
85
85
|
autoload :ContactMessage, 'enjoy/models/mongoid/contact_message'
|
|
86
86
|
|
|
87
|
-
autoload :
|
|
87
|
+
autoload :EmbeddedElement, 'enjoy/models/mongoid/embedded_element'
|
|
88
88
|
|
|
89
89
|
autoload :EmbeddedGalleryImage, 'enjoy/models/mongoid/embedded_gallery_image'
|
|
90
90
|
autoload :GalleryImage, 'enjoy/models/mongoid/gallery_image'
|
|
@@ -92,6 +92,7 @@ module Enjoy
|
|
|
92
92
|
end
|
|
93
93
|
|
|
94
94
|
module ActiveRecord
|
|
95
|
+
autoload :SitemapData, 'enjoy/models/active_record/sitemap_data'
|
|
95
96
|
autoload :Seo, 'enjoy/models/active_record/seo'
|
|
96
97
|
autoload :Menu, 'enjoy/models/active_record/menu'
|
|
97
98
|
autoload :Page, 'enjoy/models/active_record/page'
|
|
@@ -107,3 +108,5 @@ module Enjoy
|
|
|
107
108
|
autoload :Search, 'enjoy/controllers/search'
|
|
108
109
|
end
|
|
109
110
|
end
|
|
111
|
+
|
|
112
|
+
require 'manual_slug'
|
|
@@ -6,11 +6,15 @@ class Ability
|
|
|
6
6
|
can :read, :all
|
|
7
7
|
can :access, :rails_admin # grant access to rails_admin
|
|
8
8
|
can :dashboard # grant access to the dashboard
|
|
9
|
+
|
|
9
10
|
if user.admin?
|
|
10
11
|
admin_ui(user)
|
|
11
12
|
elsif user.manager?
|
|
12
13
|
manager_ui(user)
|
|
13
14
|
end
|
|
15
|
+
|
|
16
|
+
cannot [:new, :create], Enjoy::Seo
|
|
17
|
+
cannot [:new, :create], Enjoy::SitemapData
|
|
14
18
|
end
|
|
15
19
|
end
|
|
16
20
|
|
|
@@ -19,8 +23,23 @@ class Ability
|
|
|
19
23
|
end
|
|
20
24
|
|
|
21
25
|
def manager_ui(user)
|
|
22
|
-
cannot :manage, Menu
|
|
26
|
+
cannot :manage, Enjoy::Menu
|
|
23
27
|
cannot [:edit, :destroy, :new, :create], User
|
|
24
28
|
can :edit, user
|
|
29
|
+
|
|
30
|
+
manager_models.each do |model|
|
|
31
|
+
can manager_actions, model
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def manager_actions
|
|
36
|
+
[:edit, :new, :create, :nested_set, :sort_embedded]
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def manager_models
|
|
40
|
+
[
|
|
41
|
+
Enjoy::Page, Enjoy::News,
|
|
42
|
+
Enjoy::Seo, Enjoy::SitemapData
|
|
43
|
+
]
|
|
25
44
|
end
|
|
26
|
-
end
|
|
45
|
+
end
|
|
@@ -42,21 +42,21 @@ RailsAdmin.config do |config|
|
|
|
42
42
|
|
|
43
43
|
nested_set do
|
|
44
44
|
visible do
|
|
45
|
-
['Page', 'Gallery', 'GalleryImage'].include? bindings[:abstract_model].model_name
|
|
45
|
+
['Enjoy::Page', 'Enjoy::Gallery', 'Enjoy::GalleryImage'].include? bindings[:abstract_model].model_name
|
|
46
46
|
end
|
|
47
47
|
end
|
|
48
48
|
|
|
49
49
|
custom_show_in_app do
|
|
50
50
|
visible do
|
|
51
51
|
#temporary
|
|
52
|
-
false #['Page', 'News'].include? bindings[:abstract_model].model_name
|
|
52
|
+
false #['Enjoy::Page', 'Enjoy::News'].include? bindings[:abstract_model].model_name
|
|
53
53
|
end
|
|
54
54
|
end
|
|
55
55
|
|
|
56
56
|
toggle
|
|
57
57
|
toggle_menu do
|
|
58
58
|
visible do
|
|
59
|
-
['Page'].include? bindings[:abstract_model].model_name
|
|
59
|
+
['Enjoy::Page'].include? bindings[:abstract_model].model_name
|
|
60
60
|
end
|
|
61
61
|
end
|
|
62
62
|
sitemap
|
data/template.rb
CHANGED
|
@@ -22,7 +22,7 @@ gem 'sass-rails'
|
|
|
22
22
|
gem 'compass-rails', '~> 2.0.0'
|
|
23
23
|
gem 'compass', '~> 1.0.0'
|
|
24
24
|
|
|
25
|
-
#{if mongoid then "gem '
|
|
25
|
+
#{if mongoid then "gem 'enjoy_cms_mongoid'" else "gem 'enjoy_cms_activerecord'" end}, '~> 0.2.0.beta', git: 'https://github.com/enjoycreative/enjoy_cms'
|
|
26
26
|
|
|
27
27
|
gem 'devise'
|
|
28
28
|
|
|
@@ -201,11 +201,11 @@ end
|
|
|
201
201
|
|
|
202
202
|
create_file 'config/navigation.rb' do <<-TEXT
|
|
203
203
|
# empty file to please simple_navigation, we are not using it
|
|
204
|
-
# See https://github.com/enjoycreative/
|
|
204
|
+
# See https://github.com/enjoycreative/enjoy_cms/blob/master/app/controllers/concerns/enjoy/menu.rb
|
|
205
205
|
TEXT
|
|
206
206
|
end
|
|
207
207
|
|
|
208
|
-
create_file 'README.md', "## #{app_name}\nProject generated by
|
|
208
|
+
create_file 'README.md', "## #{app_name}\nProject generated by EnjoyCMS\nORM: #{if mongoid then 'Mongoid' else 'ActiveRecord' end}\n\n"
|
|
209
209
|
|
|
210
210
|
create_file '.ruby-version', "2.2.3\n"
|
|
211
211
|
create_file '.ruby-gemset', "#{app_name}\n"
|
|
@@ -386,7 +386,7 @@ Rails.application.routes.draw do
|
|
|
386
386
|
mount RailsAdmin::Engine => '/admin', as: 'rails_admin'
|
|
387
387
|
mount Ckeditor::Engine => '/ckeditor'
|
|
388
388
|
|
|
389
|
-
mount Enjoy::Engine => '/'
|
|
389
|
+
mount Enjoy::Engine => '/', as: 'enjoy_cms'
|
|
390
390
|
end
|
|
391
391
|
TEXT
|
|
392
392
|
end
|
|
@@ -595,7 +595,7 @@ remove_file 'app/assets/stylesheets/application.css'
|
|
|
595
595
|
remove_file 'app/assets/stylesheets/application.css.sass'
|
|
596
596
|
create_file 'app/assets/stylesheets/application.sass' do <<-TEXT
|
|
597
597
|
@import 'compass'
|
|
598
|
-
@import '
|
|
598
|
+
@import 'enjoy_cms'
|
|
599
599
|
|
|
600
600
|
#wrapper
|
|
601
601
|
width: 960px
|
|
@@ -615,7 +615,7 @@ end
|
|
|
615
615
|
remove_file 'app/assets/javascripts/application.js'
|
|
616
616
|
remove_file 'app/assets/javascripts/application.js.coffee'
|
|
617
617
|
create_file 'app/assets/javascripts/application.coffee' do <<-TEXT
|
|
618
|
-
#= require
|
|
618
|
+
#= require enjoy_cms
|
|
619
619
|
TEXT
|
|
620
620
|
end
|
|
621
621
|
|
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.
|
|
4
|
+
version: 0.2.0.beta
|
|
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-01-
|
|
11
|
+
date: 2016-01-28 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -419,7 +419,7 @@ files:
|
|
|
419
419
|
- app/models/concerns/enjoy/mappable.rb
|
|
420
420
|
- app/models/concerns/enjoy/mongoid_paperclip.rb
|
|
421
421
|
- app/models/concerns/enjoy/seoable.rb
|
|
422
|
-
- app/models/concerns/enjoy/
|
|
422
|
+
- app/models/concerns/enjoy/sitemap_data_field.rb
|
|
423
423
|
- app/models/concerns/enjoy/sort_field.rb
|
|
424
424
|
- app/models/concerns/enjoy/sortable.rb
|
|
425
425
|
- app/models/enjoy/contact_message.rb
|
|
@@ -431,6 +431,7 @@ files:
|
|
|
431
431
|
- app/models/enjoy/news.rb
|
|
432
432
|
- app/models/enjoy/page.rb
|
|
433
433
|
- app/models/enjoy/seo.rb
|
|
434
|
+
- app/models/enjoy/sitemap_data.rb
|
|
434
435
|
- app/views/blocks/_favicon.html.slim
|
|
435
436
|
- app/views/blocks/_footer.html.slim
|
|
436
437
|
- app/views/blocks/_seo_block.html.slim
|
|
@@ -503,6 +504,7 @@ files:
|
|
|
503
504
|
- lib/enjoy/models/active_record/news.rb
|
|
504
505
|
- lib/enjoy/models/active_record/page.rb
|
|
505
506
|
- lib/enjoy/models/active_record/seo.rb
|
|
507
|
+
- lib/enjoy/models/active_record/sitemap_data.rb
|
|
506
508
|
- lib/enjoy/models/contact_message.rb
|
|
507
509
|
- lib/enjoy/models/embedded_element.rb
|
|
508
510
|
- lib/enjoy/models/embedded_gallery_image.rb
|
|
@@ -518,9 +520,11 @@ files:
|
|
|
518
520
|
- lib/enjoy/models/mongoid/news.rb
|
|
519
521
|
- lib/enjoy/models/mongoid/page.rb
|
|
520
522
|
- lib/enjoy/models/mongoid/seo.rb
|
|
523
|
+
- lib/enjoy/models/mongoid/sitemap_data.rb
|
|
521
524
|
- lib/enjoy/models/news.rb
|
|
522
525
|
- lib/enjoy/models/page.rb
|
|
523
526
|
- lib/enjoy/models/seo.rb
|
|
527
|
+
- lib/enjoy/models/sitemap_data.rb
|
|
524
528
|
- lib/enjoy/patch.rb
|
|
525
529
|
- lib/enjoy/rails_admin_menu.rb
|
|
526
530
|
- lib/enjoy/simple_form_patch.rb
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
module Enjoy::SitemapData
|
|
2
|
-
extend ActiveSupport::Concern
|
|
3
|
-
|
|
4
|
-
SITEMAP_CHANGEFREQ_ARRAY = %w(always hourly daily weekly monthly yearly never)
|
|
5
|
-
|
|
6
|
-
included do
|
|
7
|
-
if Enjoy.mongoid?
|
|
8
|
-
field :sitemap_show, type: Boolean, default: true
|
|
9
|
-
field :sitemap_lastmod, type: DateTime
|
|
10
|
-
field :sitemap_changefreq, type: String, default: 'daily'
|
|
11
|
-
field :sitemap_priority, type: Float
|
|
12
|
-
|
|
13
|
-
scope :sitemap_show, -> { where(sitemap_show: true) }
|
|
14
|
-
scope :for_sitemap, -> { sitemap_show }
|
|
15
|
-
scope :show_in_sitemap, -> { sitemap_show }
|
|
16
|
-
elsif Enjoy.active_record?
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def self.admin
|
|
21
|
-
Enjoy.sitemap_data_config
|
|
22
|
-
end
|
|
23
|
-
end
|