hancock_cms 1.0.2.3 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.ruby-gemset +1 -1
- data/.ruby-version +1 -1
- data/README.md +9 -13
- data/app/assets/images/{hancock/rails_admin → rails-admin}/hancock_logo.svg +0 -0
- data/app/assets/javascripts/hancock/cms.coffee +1 -1
- data/app/assets/javascripts/hancock/rails_admin/cms.ui.coffee +38 -10
- data/app/assets/javascripts/jquery.placeholder.js +2 -3
- data/app/assets/javascripts/rails_admin/custom/ui.coffee +0 -1
- data/app/assets/stylesheets/hancock/cms/devise.sass +22 -36
- data/app/assets/stylesheets/hancock/rails_admin/cms.theming.sass +147 -364
- data/app/assets/stylesheets/rails_admin/custom/theming.sass +1 -1
- data/app/controllers/concerns/hancock/current_user.rb +1 -1
- data/app/controllers/concerns/hancock/decorators/home.rb +1 -1
- data/app/controllers/concerns/hancock/errors.rb +7 -6
- data/app/controllers/concerns/hancock/no_cache.rb +12 -0
- data/app/controllers/hancock/registrations_controller.rb +7 -2
- data/app/controllers/hancock/sessions_controller.rb +7 -3
- data/app/helpers/hancock/powered_helper.rb +3 -3
- data/app/models/concerns/hancock/boolean_field.rb +2 -7
- data/app/models/concerns/hancock/cacheable.rb +33 -0
- data/app/models/concerns/hancock/decorators/embedded_element.rb +9 -1
- data/app/models/concerns/hancock/enableable.rb +0 -1
- data/app/models/concerns/hancock/hash_field.rb +8 -9
- data/app/models/concerns/hancock/html_field.rb +3 -6
- data/app/models/concerns/hancock/mappable.rb +0 -1
- data/app/models/concerns/hancock/model_localizeable.rb +1 -4
- data/app/models/concerns/hancock/rails_admin_patch.rb +3 -22
- data/app/models/concerns/hancock/sort_field.rb +3 -26
- data/app/models/concerns/hancock/sortable.rb +0 -3
- data/app/views/blocks/_footer.html.slim +1 -1
- data/app/views/devise/passwords/edit.html.slim +2 -0
- data/app/views/devise/passwords/new.html.slim +2 -0
- data/app/views/devise/registrations/edit.html.slim +2 -0
- data/app/views/devise/registrations/new.html.slim +2 -0
- data/app/views/devise/sessions/new.html.slim +2 -0
- data/app/views/hancock/home/index.html.slim +1 -4
- data/app/views/layouts/application.html.slim +11 -20
- data/app/views/layouts/hancock/devise/confirmations.html.slim +4 -7
- data/app/views/layouts/hancock/devise/passwords.html.slim +4 -7
- data/app/views/layouts/hancock/devise/registrations.html.slim +4 -7
- data/app/views/layouts/hancock/devise/sessions.html.slim +4 -7
- data/app/views/layouts/hancock/devise/unlocks.html.slim +4 -7
- data/app/views/layouts/rails_admin/_footer.html.slim +2 -2
- data/app/views/layouts/rails_admin/_footer_navigation.html.slim +5 -21
- data/app/views/layouts/rails_admin/_navigation.html.slim +47 -13
- data/app/views/layouts/rails_admin/_secondary_navigation.html.slim +12 -5
- data/app/views/layouts/rails_admin/application.html.haml +39 -4
- data/app/views/rails_admin/main/_hancock_html.html.slim +2 -2
- data/app/views/rails_admin/main/_hancock_html_ml.html.slim +34 -31
- data/app/views/shared/_admin_link.html.slim +2 -4
- data/{app/models/concerns/hancock → config/initializers}/embedded_findable.rb +2 -2
- data/config/locales/en.hancock.yml +0 -1
- data/config/locales/ru.devise.yml +18 -22
- data/config/locales/ru.hancock.yml +5 -5
- data/config/locales/ru.rails_admin.yml +0 -3
- data/hancock_cms.gemspec +3 -6
- data/lib/filename_to_slug.rb +20 -0
- data/lib/generators/hancock/cms/ability_generator.rb +0 -1
- data/lib/generators/hancock/cms/admin_generator.rb +0 -1
- data/lib/generators/hancock/cms/application_generator.rb +0 -1
- data/lib/generators/hancock/cms/assets_generator.rb +0 -1
- data/lib/generators/hancock/cms/layout_generator.rb +0 -1
- data/lib/generators/hancock/cms/model_generator.rb +0 -1
- data/lib/generators/hancock/cms/models/templates/embedded_element.erb +2 -2
- data/lib/generators/hancock/cms/rack_generator.rb +0 -1
- data/lib/generators/hancock/cms/robots_generator.rb +0 -1
- data/lib/generators/hancock/cms/scripts_generator.rb +0 -1
- data/lib/generators/hancock/cms/templates/Gemfile.erb +4 -1
- data/lib/generators/hancock/cms/templates/ability.erb +1 -1
- data/lib/generators/hancock/cms/templates/admin.erb +6 -12
- data/lib/generators/hancock/cms/templates/assets/javascripts/application.coffee.erb +1 -1
- data/lib/generators/hancock/cms/templates/hancock_cms.erb +2 -4
- data/lib/generators/hancock/cms/templates/model.erb +6 -5
- data/lib/generators/hancock/cms/templates/robots.txt.erb +1 -5
- data/lib/generators/hancock/cms/templates/scripts/db_dump.sh.erb +1 -1
- data/lib/generators/hancock/cms/templates/scripts/server.sh +1 -1
- data/lib/generators/hancock/cms/templates/scripts/server_alt.sh +1 -1
- data/lib/generators/hancock/cms/unicorn_god_generator.rb +0 -1
- data/lib/generators/hancock/cms/utils.rb +0 -2
- data/lib/hancock/admin/embedded_element.rb +2 -10
- data/lib/hancock/admin.rb +21 -132
- data/lib/hancock/configuration.rb +2 -6
- data/lib/hancock/controller.rb +1 -10
- data/lib/hancock/engine.rb +34 -34
- data/lib/hancock/model.rb +5 -29
- data/lib/hancock/models/embedded_element.rb +0 -2
- data/lib/hancock/models/mongoid/embedded_element.rb +1 -20
- data/lib/hancock/plugin_configuration.rb +1 -1
- data/lib/hancock/rails_admin_ext/config.rb +14 -45
- data/lib/hancock/rails_admin_ext/hancock_hash.rb +1 -8
- data/lib/hancock/rails_admin_ext/hancock_html.rb +2 -17
- data/lib/hancock/rails_admin_ext/hancock_multiselect.rb +5 -1
- data/lib/hancock/rails_admin_ext/hancock_slugs.rb +6 -2
- data/lib/hancock/rails_admin_ext/patches/field_patch.rb +1 -2
- data/lib/hancock/rails_admin_ext/patches/group_patch.rb +0 -9
- data/lib/hancock/rails_admin_ext/patches/hancock_cms_group.rb +0 -2
- data/lib/hancock/version.rb +1 -1
- data/lib/hancock_cms.rb +13 -21
- data/lib/manual_slug/active_record.rb +8 -8
- data/lib/rails_admin/custom_show_in_app.rb +32 -21
- data/release.sh +1 -1
- data/template.rb +386 -37
- metadata +15 -88
- data/.gitattributes +0 -4
- data/app/assets/javascripts/hancock/rails_admin/en_ru_switcher.coffee +0 -90
- data/app/assets/javascripts/hancock/rails_admin/enum_with_custom.coffee +0 -41
- data/app/assets/javascripts/hancock/rails_admin/form_controls_fixed.coffee +0 -44
- data/app/assets/javascripts/hancock/rails_admin/leftside_hider.coffee +0 -106
- data/app/assets/javascripts/hancock/rails_admin/multiselect.coffee +0 -8
- data/app/assets/javascripts/hancock/rails_admin/navigation_dropdown.coffee +0 -25
- data/app/assets/javascripts/hancock/rails_admin/navigation_filter.coffee +0 -108
- data/app/assets/javascripts/hancock/rails_admin/navigation_scroll.coffee +0 -12
- data/app/assets/stylesheets/hancock/rails_admin/fieldsets.sass +0 -198
- data/app/helpers/hancock/settings_helper.rb +0 -44
- data/app/helpers/rails_admin/application/hancock_helper.rb +0 -19
- data/app/helpers/rails_admin/hancock/form_builder.rb +0 -44
- data/app/helpers/rails_admin/main/hancock_helper.rb +0 -27
- data/app/models/concerns/hancock/insertion_field.rb +0 -115
- data/app/views/blocks/_preloader.html.slim +0 -0
- data/app/views/layouts/rails_admin/_sidebar_navigation.html.slim +0 -2
- data/app/views/layouts/rails_admin/_sidebar_navigation_filter.html.slim +0 -3
- data/app/views/rails_admin/main/_enum_for_settings_kinds.html.slim +0 -24
- data/app/views/rails_admin/main/_form_hancock_enum.html.slim +0 -18
- data/app/views/rails_admin/main/_form_hancock_enum_with_custom.slim +0 -20
- data/app/views/rails_admin/main/edit.html.haml +0 -18
- data/app/views/rails_admin/main/new.html.haml +0 -17
- data/config/initializers/rails_admin_mongoid_patch.rb +0 -27
- data/lib/generators/hancock/cms/setup_generator.rb +0 -488
- data/lib/generators/hancock/cms/templates/assets/stylesheets/hancock/rails_admin/custom/theming.sass.erb +0 -0
- data/lib/hancock/rails_admin_ext/hancock_array.rb +0 -19
- data/lib/hancock/rails_admin_ext/hancock_enum.rb +0 -33
- data/lib/hancock/rails_admin_ext/hancock_enum_with_custom.rb +0 -34
- data/lib/hancock/rails_admin_ext/patches/fieldset_patch.rb +0 -14
- data/lib/hancock/rails_admin_ext/patches/has_fields.rb +0 -27
- data/lib/hancock/rails_admin_ext/patches/navigation_patch.rb +0 -25
- data/lib/hancock/rails_admin_settings_patch.rb +0 -216
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 41324f0d660377499046bdff66270b4ab23d9ad0
|
4
|
+
data.tar.gz: e6a662cb66a178c9fc56c15477d1fb32bb51c450
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f0658fcaca83270c9c75876b1cf18771ab513fc9b039b6b3a914624b1bd875b105cfd4bf9d65c7625269f3ffc38e036a6f6c0f2836bbc47258097fea620dc7a5
|
7
|
+
data.tar.gz: 773d915222ae733879269d77ef4b09ab1a36c06ce5cb5cd3cd3f8322a1bee0bcf899b1b7cea1325bf9b891a121fda7d708fac653c0b4fd1a64714b7e12061e91
|
data/.ruby-gemset
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
hancock_cms_rails_5
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.4.0-preview1
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# HancockCMS
|
2
2
|
|
3
|
-
#### Rails
|
3
|
+
#### Rails 5 support
|
4
4
|
|
5
5
|
#### Inspired by [RocketCMS](https://github.com/rs-pro/rocket_cms)
|
6
6
|
### Remaded from [EnjoyCMS](https://github.com/enjoycreative/enjoy_cms)
|
@@ -15,11 +15,11 @@ Very opinionated and tuned for my needs.
|
|
15
15
|
|
16
16
|
Add this line to your application's Gemfile:
|
17
17
|
|
18
|
-
gem 'hancock_cms_mongoid', '~>
|
18
|
+
gem 'hancock_cms_mongoid', '~> 2.0'
|
19
19
|
|
20
20
|
or:
|
21
21
|
|
22
|
-
gem 'hancock_cms_activerecord', '~>
|
22
|
+
gem 'hancock_cms_activerecord', '~> 2.0'
|
23
23
|
|
24
24
|
*Only PostgreSQL is tested or supported for AR(from root repo). Others will probably work, but untested.*
|
25
25
|
|
@@ -29,7 +29,7 @@ And then execute:
|
|
29
29
|
|
30
30
|
Or install it yourself as:
|
31
31
|
|
32
|
-
$ gem install hancock_cms -v
|
32
|
+
$ gem install hancock_cms -v 2.0.0
|
33
33
|
|
34
34
|
For activerecord, generate migrations and run them
|
35
35
|
|
@@ -41,28 +41,24 @@ For activerecord, generate migrations and run them
|
|
41
41
|
|
42
42
|
### Using app generator
|
43
43
|
|
44
|
-
Make sure you have rails
|
44
|
+
Make sure you have rails 5.0 installed
|
45
45
|
|
46
46
|
rails -v
|
47
47
|
|
48
48
|
If not, uninstall rails and install again
|
49
49
|
|
50
50
|
gem uninstall rails
|
51
|
-
gem install rails -v
|
51
|
+
gem install rails -v 5.0.0
|
52
52
|
|
53
53
|
Then, for mongoid:
|
54
54
|
|
55
|
-
rails new my_app -
|
56
|
-
cd my_app
|
57
|
-
rails g hancock:cms:setup
|
55
|
+
rails new my_app -T -O -m https://raw.githubusercontent.com/red-rocks/hancock_cms/rails5/template.rb
|
58
56
|
|
59
57
|
for ActiveRecord:
|
60
58
|
|
61
|
-
rails new my_app -
|
62
|
-
cd my_app
|
63
|
-
rails g hancock:cms:setup
|
59
|
+
rails new my_app -T --database=postgresql -m https://raw.githubusercontent.com/red-rocks/hancock_cms/rails5/template.rb
|
64
60
|
|
65
|
-
generator creates a new RVM gemset,
|
61
|
+
generator creates a new RVM gemset, so after cd'ing to app dir, you should run `bundle install` again if you use rvm.
|
66
62
|
|
67
63
|
### Localization
|
68
64
|
|
File without changes
|
@@ -1,15 +1,43 @@
|
|
1
|
-
#=
|
1
|
+
#= require jquery.mCustomScrollbar.concat.min
|
2
2
|
|
3
|
-
|
3
|
+
window.hancock_cms ||= {}
|
4
|
+
window.hancock_cms.multiselect_dblclick = (selector)->
|
5
|
+
$(document).delegate selector + ' .ra-multiselect-left select option', 'dblclick', (e)->
|
6
|
+
$(e.currentTarget).closest('.ra-multiselect').find('.ra-multiselect-center .ra-multiselect-item-add').click()
|
4
7
|
|
5
|
-
|
6
|
-
|
8
|
+
$(document).delegate selector + ' .ra-multiselect-right select option', 'dblclick', (e)->
|
9
|
+
$(e.currentTarget).closest('.ra-multiselect').find('.ra-multiselect-center .ra-multiselect-item-remove').click()
|
7
10
|
|
8
|
-
|
9
|
-
#= require ./navigation_scroll
|
10
|
-
#= require ./navigation_filter
|
11
|
+
window.hancock_cms.multiselect_dblclick("select.hancock_multiselect + .ra-multiselect")
|
11
12
|
|
12
|
-
#= require ./multiselect
|
13
|
-
#= require ./enum_with_custom
|
14
13
|
|
15
|
-
|
14
|
+
$(document).delegate '.toolbar .nav .dropdown-header', 'click', (e)->
|
15
|
+
e.preventDefault()
|
16
|
+
_target = $(e.currentTarget).toggleClass('opened')
|
17
|
+
li = _target.next()
|
18
|
+
loop
|
19
|
+
li.toggleClass('visible')
|
20
|
+
li = li.next()
|
21
|
+
break if li.length == 0 or li.hasClass('dropdown-header')
|
22
|
+
|
23
|
+
$(document).on 'pjax:complete ready', ()->
|
24
|
+
active_nav_element = $(".toolbar .nav .active")
|
25
|
+
if active_nav_element.length > 0
|
26
|
+
_parent = active_nav_element.prevAll(".dropdown-header:first")
|
27
|
+
if _parent.length > 0 and !_parent.hasClass('opened')
|
28
|
+
_parent.click()
|
29
|
+
|
30
|
+
mscroll = () ->
|
31
|
+
$('.toolbar').mCustomScrollbar(
|
32
|
+
scrollInertia: 60
|
33
|
+
mouseWheelPixels: 60
|
34
|
+
theme: 'minimal'
|
35
|
+
mouseWheel:
|
36
|
+
scrollAmount: 0
|
37
|
+
)
|
38
|
+
|
39
|
+
$(window).on 'load', ->
|
40
|
+
mscroll()
|
41
|
+
|
42
|
+
$(document).bind "page:load", ->
|
43
|
+
mscroll()
|
@@ -67,8 +67,7 @@
|
|
67
67
|
|
68
68
|
$(function() {
|
69
69
|
// Look for forms
|
70
|
-
|
71
|
-
$(document).on('submit.placeholder', 'form', function() {
|
70
|
+
$(document).delegate('form', 'submit.placeholder', function() {
|
72
71
|
// Clear the placeholder values so they don't get submitted
|
73
72
|
var $inputs = $('.placeholder', this).each(clearPlaceholder);
|
74
73
|
setTimeout(function() {
|
@@ -155,4 +154,4 @@
|
|
155
154
|
}
|
156
155
|
}
|
157
156
|
|
158
|
-
}(this, document, jQuery));
|
157
|
+
}(this, document, jQuery));
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#content.devise
|
2
|
-
background: #333C44 image-url("
|
2
|
+
background: #333C44 image-url("devices/login-bg.jpg") no-repeat center center / cover !important
|
3
3
|
position: fixed
|
4
4
|
top: 0
|
5
5
|
right: 0
|
@@ -8,8 +8,7 @@
|
|
8
8
|
overflow: auto
|
9
9
|
white-space: nowrap
|
10
10
|
text-align: center
|
11
|
-
|
12
|
-
font-weight: normal
|
11
|
+
|
13
12
|
&:before
|
14
13
|
height: 100%
|
15
14
|
display: inline-block
|
@@ -22,7 +21,9 @@
|
|
22
21
|
vertical-align: middle
|
23
22
|
text-align: left
|
24
23
|
background: #fff
|
25
|
-
|
24
|
+
webkit-box-shadow: 0 8px 17px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19)
|
25
|
+
-moz-box-shadow: 0 8px 17px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19)
|
26
|
+
box-shadow: 0 8px 17px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19)
|
26
27
|
min-width: 400px
|
27
28
|
|
28
29
|
.white-box
|
@@ -61,30 +62,36 @@
|
|
61
62
|
.form-control
|
62
63
|
background-image: linear-gradient(#9675ce, #9675ce), linear-gradient(rgba(120, 130, 140, 0.13), rgba(120, 130, 140, 0.13))
|
63
64
|
border: 0 none
|
64
|
-
|
65
|
-
|
65
|
+
border-radius: 0
|
66
|
+
box-shadow: none
|
66
67
|
background-color: rgba(0, 0, 0, 0)
|
67
68
|
background-position: center bottom, center calc(99%)
|
68
69
|
background-repeat: no-repeat
|
69
70
|
background-size: 0 2px, 100% 1px
|
70
71
|
background-color: #ffffff
|
72
|
+
box-shadow: none
|
71
73
|
color: #565656
|
72
74
|
height: 38px
|
73
75
|
width: 100%
|
74
76
|
padding: 7px 12px
|
75
|
-
|
77
|
+
transition: all 300ms linear 0s
|
76
78
|
display: block
|
77
79
|
font-size: 14px
|
78
80
|
line-height: 1.42857143
|
79
|
-
|
81
|
+
-webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s
|
82
|
+
-o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s
|
83
|
+
transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s
|
80
84
|
input
|
81
85
|
width: 100%
|
86
|
+
height: 100%
|
82
87
|
|
83
88
|
.link-to-recover
|
84
89
|
float: right
|
85
90
|
padding-right: 10px
|
86
91
|
a
|
87
|
-
|
92
|
+
-webkit-transition: color ease-in-out .15s
|
93
|
+
-o-transition: color ease-in-out .15s
|
94
|
+
transition: color ease-in-out .15s
|
88
95
|
color: #333C44
|
89
96
|
&:hover
|
90
97
|
color: #EF5350
|
@@ -116,7 +123,9 @@
|
|
116
123
|
cursor: pointer
|
117
124
|
max-width: 100%
|
118
125
|
color: #333C44
|
119
|
-
|
126
|
+
-webkit-transition: color ease-in-out .15s
|
127
|
+
-o-transition: color ease-in-out .15s
|
128
|
+
transition: color ease-in-out .15s
|
120
129
|
&:hover
|
121
130
|
label
|
122
131
|
color: #EF5350
|
@@ -136,7 +145,9 @@
|
|
136
145
|
padding: 10px 16px
|
137
146
|
font-size: 18px
|
138
147
|
line-height: 1.3333333
|
139
|
-
|
148
|
+
-webkit-transition: all ease-in-out .15s
|
149
|
+
-o-transition: all ease-in-out .15s
|
150
|
+
transition: all ease-in-out .15s
|
140
151
|
&:hover
|
141
152
|
background: rgba(#ee5350, 0.8)
|
142
153
|
border: 1px solid rgba(#ee5350, 0.8)
|
@@ -144,28 +155,3 @@
|
|
144
155
|
|
145
156
|
.form-group.links
|
146
157
|
margin-top: 25px
|
147
|
-
|
148
|
-
.devise-box .white-box form .form-group .form-control
|
149
|
-
padding: 0
|
150
|
-
input
|
151
|
-
position: relative
|
152
|
-
margin: 0
|
153
|
-
border: 0px
|
154
|
-
border-bottom: 1px solid #ccc
|
155
|
-
+transition(all 0.3s)
|
156
|
-
&:focus
|
157
|
-
border-bottom: 1px solid #3c6085
|
158
|
-
|
159
|
-
.devise-box .white-box form .form-group .checkbox-primary
|
160
|
-
min-height: auto
|
161
|
-
|
162
|
-
.devise-box .white-box form .form-group .checkbox-primary label
|
163
|
-
padding-left: 0px
|
164
|
-
input
|
165
|
-
margin: 0px
|
166
|
-
margin-right: 5px
|
167
|
-
display: inline-block
|
168
|
-
vertical-align: middle
|
169
|
-
|
170
|
-
.devise-box .white-box form .form-group .form-control input
|
171
|
-
height: 100% !important
|