hancock_cms 1.0.2.3 → 2.0.0
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/.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
|
@@ -6,16 +6,13 @@ html lang="ru"
|
|
|
6
6
|
title= yield(:title) || page_title
|
|
7
7
|
= yield :meta
|
|
8
8
|
= csrf_meta_tags
|
|
9
|
-
|
|
10
|
-
/ - cache 'favicons', skip_digest: true do
|
|
11
|
-
/ = render partial: 'blocks/favicon'
|
|
9
|
+
= render partial: 'blocks/favicon'
|
|
12
10
|
|
|
13
11
|
- async = false #Rails.env.production?
|
|
14
|
-
|
|
15
|
-
=
|
|
16
|
-
= javascript_include_tag "application", defer: defer
|
|
12
|
+
= stylesheet_link_tag "application", media: "all", async: async
|
|
13
|
+
= javascript_include_tag "application", async: async
|
|
17
14
|
/[if lt IE 9]
|
|
18
|
-
= javascript_include_tag "//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js",
|
|
15
|
+
= javascript_include_tag "//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js", async: async
|
|
19
16
|
|
|
20
17
|
body
|
|
21
18
|
#preloader
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
= "2016
|
|
2
|
-
= link_to "Redrocks", "
|
|
1
|
+
= "2016 © Hancock By "
|
|
2
|
+
= link_to "Redrocks", "http://redrocks.pro", title: "Redrocks", target: "_blank"
|
|
@@ -1,36 +1,20 @@
|
|
|
1
1
|
ul
|
|
2
2
|
- actions(:root).each do |action|
|
|
3
3
|
- next if action.action_name.to_s == "dashboard"
|
|
4
|
+
- data_method = nil if action.http_methods.include?(:get)
|
|
4
5
|
- data_method = "post" if action.http_methods.include?(:post)
|
|
5
6
|
- data_method = "put" if action.http_methods.include?(:put)
|
|
6
7
|
- data_method = "delete" if action.http_methods.include?(:delete)
|
|
7
|
-
- data_method = nil if action.http_methods.include?(:get)
|
|
8
8
|
|
|
9
9
|
li{class="#{action.action_name} footer-nav-link"}
|
|
10
|
-
|
|
11
|
-
ruby:
|
|
12
|
-
opts = {}
|
|
13
|
-
opts[:action] = action.action_name
|
|
14
|
-
opts[:controller] = 'rails_admin/main'
|
|
15
|
-
html_opts = {}
|
|
16
|
-
html_opts[:class] = (action.pjax? ? "pjax" : "")
|
|
17
|
-
html_opts[:title] = wording_for(:menu, action)
|
|
18
|
-
html_opts[:data] = {
|
|
19
|
-
method: data_method,
|
|
20
|
-
confirm: (data_method ? t("admin.actions.#{action.action_name}.confirm") : nil)
|
|
21
|
-
}.compact
|
|
22
|
-
|
|
23
|
-
= link_to opts, html_opts
|
|
24
|
-
span
|
|
25
|
-
= content_tag :i, '', class: action.link_icon
|
|
26
|
-
/ = link_to wording_for(:menu, action), opts, html_opts
|
|
10
|
+
= link_to wording_for(:menu, action), {action: action.action_name, controller: 'rails_admin/main'}, class: (action.pjax? ? "pjax" : ""), title: wording_for(:menu, action), data: data_method ? {method: data_method, confirm: t("admin.actions.#{action.action_name}.confirm")} : nil
|
|
27
11
|
|
|
28
12
|
- if main_app_root_path = (main_app.root_path rescue false)
|
|
29
13
|
li.footer-nav-link = link_to main_app_root_path, title: "На сайт".freeze
|
|
30
14
|
span
|
|
31
15
|
i.fa.fa-home
|
|
32
16
|
|
|
33
|
-
- if
|
|
34
|
-
li.footer-nav-link = link_to logout_path, title: "Выйти".freeze, method: logout_method
|
|
17
|
+
- if logout_path.present?
|
|
18
|
+
li.footer-nav-link = link_to logout_path, title: "Выйти".freeze, method: logout_method
|
|
35
19
|
span
|
|
36
|
-
i.fa.fa-power-off
|
|
20
|
+
i.fa.fa-power-off
|
|
@@ -1,6 +1,19 @@
|
|
|
1
|
+
/.logo-block
|
|
2
|
+
/ = link_to dashboard_path, title: "Hancock CMS".freeze, class: "admin-title".freeze
|
|
3
|
+
/ = image_tag "rails-admin/hancock_logo.svg", title: "Hancock CMS".freeze, alt: "Hancock CMS".freeze, class: "hancock-main-logo"
|
|
4
|
+
/
|
|
5
|
+
/.top-nav
|
|
6
|
+
/ .left-nav
|
|
7
|
+
/ .top-nav-project = link_to dashboard_path, title: "Административная панель".freeze
|
|
8
|
+
/ - plugin_name = _get_plugin_name[0] || 'Rails'
|
|
9
|
+
/ span = "Административная панель: #{plugin_name}".freeze
|
|
10
|
+
/ .right-nav
|
|
11
|
+
/ = render partial: "layouts/rails_admin/secondary_navigation"
|
|
12
|
+
|
|
13
|
+
|
|
1
14
|
.navbar-header-brand
|
|
2
15
|
= link_to dashboard_path, title: "Hancock CMS".freeze, class: "admin-title".freeze
|
|
3
|
-
= image_tag "
|
|
16
|
+
= image_tag "rails-admin/hancock_logo.svg", title: "Hancock CMS".freeze, alt: "Hancock CMS".freeze, class: "hancock-main-logo"
|
|
4
17
|
|
|
5
18
|
.navbar-container.container-fluid
|
|
6
19
|
.plugin-name-panel
|
|
@@ -24,16 +37,37 @@
|
|
|
24
37
|
li.user-logout-action
|
|
25
38
|
= link_to logout_path, title: "Выйти".freeze, method: logout_method
|
|
26
39
|
span Выйти
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
40
|
+
|
|
41
|
+
/.user_root_link = edit_user_link
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
/.app-header.fixed
|
|
45
|
+
/ .app-header-inner
|
|
46
|
+
/ .brand-title
|
|
47
|
+
/ h2 = link_to dashboard_path, title: "Hancock CMS".freeze, class: "admin-title".freeze
|
|
48
|
+
/ span = image_tag "rails-admin/hancock_logo.svg", title: "Hancock CMS".freeze, alt: "Hancock CMS".freeze
|
|
49
|
+
/
|
|
50
|
+
/ .top-nav-left
|
|
51
|
+
/ .top-nav-project = link_to dashboard_path, title: "Административная панель".freeze
|
|
52
|
+
/ - plugin_name = _get_plugin_name[0] || 'Rails'
|
|
53
|
+
/ span = "Административная панель: #{plugin_name}".freeze
|
|
54
|
+
/ /
|
|
55
|
+
/ .top-nav-right
|
|
56
|
+
/ = render partial: "layouts/rails_admin/secondary_navigation"
|
|
57
|
+
/ ul.nav.navbar-nav.root_links
|
|
58
|
+
/ - actions(:root).each do |action|
|
|
59
|
+
/ / li.top-nav-control-panel = link_to "", { action: action.action_name, controller: 'rails_admin/main' }, class: action.pjax? ? "pjax" : ""
|
|
60
|
+
/ li.top-nav-control-panel = link_to "/admin", title: "Контрольная панель"
|
|
30
61
|
/ span
|
|
31
|
-
/ i.fa.fa-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
62
|
+
/ i.fa.fa-server
|
|
63
|
+
- if main_app_root_path = (main_app.root_path rescue false)
|
|
64
|
+
li.top-nav-goto-home = link_to main_app_root_path, title: "На главную".freeze
|
|
65
|
+
span
|
|
66
|
+
i.fa.fa-home
|
|
67
|
+
- if _current_user
|
|
68
|
+
- if user_link = edit_user_link
|
|
69
|
+
li.top-nav-user_root_link = edit_user_link
|
|
70
|
+
- if logout_path.present?
|
|
71
|
+
li.top-nav-logout = link_to logout_path, title: "Выйти".freeze, method: logout_method
|
|
72
|
+
span
|
|
73
|
+
i.fa.fa-sign-out
|
|
@@ -1,16 +1,13 @@
|
|
|
1
1
|
ul.nav.navbar-nav.root_links
|
|
2
2
|
- actions(:root).each do |action|
|
|
3
3
|
- next if action.action_name.to_s == "dashboard"
|
|
4
|
+
- data_method = nil if action.http_methods.include?(:get)
|
|
4
5
|
- data_method = "post" if action.http_methods.include?(:post)
|
|
5
6
|
- data_method = "put" if action.http_methods.include?(:put)
|
|
6
7
|
- data_method = "delete" if action.http_methods.include?(:delete)
|
|
7
|
-
- data_method = nil if action.http_methods.include?(:get)
|
|
8
8
|
|
|
9
9
|
li{class="#{action.action_name}_root_link top-nav-control-panel"}
|
|
10
|
-
|
|
11
|
-
= link_to { action: action.action_name, controller: 'rails_admin/main' }, class: (action.pjax? ? "pjax" : ""), data: data_method ? {method: data_method, confirm: t("admin.actions.#{action.action_name}.confirm")} : nil
|
|
12
|
-
span
|
|
13
|
-
= content_tag :i, '', class: action.link_icon
|
|
10
|
+
= link_to wording_for(:menu, action), { action: action.action_name, controller: 'rails_admin/main' }, class: (action.pjax? ? "pjax" : ""), data: data_method ? {method: data_method, confirm: t("admin.actions.#{action.action_name}.confirm")} : nil
|
|
14
11
|
|
|
15
12
|
|
|
16
13
|
- if main_app_root_path = (main_app.root_path rescue false)
|
|
@@ -23,3 +20,13 @@ ul.nav.navbar-nav.root_links
|
|
|
23
20
|
li.top-nav-logout = link_to logout_path, title: "Выйти".freeze, method: logout_method
|
|
24
21
|
span
|
|
25
22
|
i.fa.fa-sign-out
|
|
23
|
+
|
|
24
|
+
/ - if main_app_root_path = (main_app.root_path rescue false)
|
|
25
|
+
/ li= link_to t('admin.home.name').capitalize, main_app_root_path
|
|
26
|
+
/ - if _current_user
|
|
27
|
+
/ - if user_link = edit_user_link
|
|
28
|
+
/ li= user_link
|
|
29
|
+
/ - if logout_path.present?
|
|
30
|
+
/ li= link_to content_tag('span', t('admin.misc.log_out'), class: 'label label-important'), logout_path, method: logout_method
|
|
31
|
+
/ - if _current_user.respond_to?(:email) && _current_user.email.present?
|
|
32
|
+
/ li= image_tag "#{(request.ssl? ? 'https://secure' : 'http://www')}.gravatar.com/avatar/#{Digest::MD5.hexdigest _current_user.email}?s=30", style: 'padding-top:5px'
|
|
@@ -13,14 +13,12 @@
|
|
|
13
13
|
RailsAdmin.I18n.init('#{I18n.locale}', JSON.parse("#{j I18n.t("admin.js").to_json}"))
|
|
14
14
|
|
|
15
15
|
%body.rails_admin
|
|
16
|
-
|
|
16
|
+
|
|
17
17
|
%nav.admin-navbar.admin-navbar-fixed.bg-red{:role => "navigation"}
|
|
18
18
|
= render "layouts/rails_admin/navigation"
|
|
19
19
|
|
|
20
20
|
.admin-menubar.admin-menubar-fixed.admin-menubar-dark
|
|
21
|
-
.
|
|
22
|
-
= render "layouts/rails_admin/sidebar_navigation_filter"
|
|
23
|
-
.toolbar.custom_scroll
|
|
21
|
+
.toolbar
|
|
24
22
|
= render "layouts/rails_admin/sidebar_navigation"
|
|
25
23
|
.admin-menubar-footer
|
|
26
24
|
= render "layouts/rails_admin/footer_navigation"
|
|
@@ -31,3 +29,40 @@
|
|
|
31
29
|
|
|
32
30
|
%footer.admin-footer
|
|
33
31
|
= render "layouts/rails_admin/footer"
|
|
32
|
+
|
|
33
|
+
-#%nav.navbar-hancock.navbar-fixed
|
|
34
|
+
-# = render "layouts/rails_admin/navigation"
|
|
35
|
+
-#
|
|
36
|
+
-#%main.root
|
|
37
|
+
-# .sidebar.fixed-sidebar
|
|
38
|
+
-# .sidebar-backdrop
|
|
39
|
+
-# .toolbar
|
|
40
|
+
-# = render "layouts/rails_admin/sidebar_navigation"
|
|
41
|
+
-#
|
|
42
|
+
-# .content-wrapper
|
|
43
|
+
-# .content{:'data-pjax-container' => true}= render template: 'layouts/rails_admin/pjax'
|
|
44
|
+
-#
|
|
45
|
+
-#%footer.footer
|
|
46
|
+
-# = render "layouts/rails_admin/footer"
|
|
47
|
+
|
|
48
|
+
-#%body.rails_admin
|
|
49
|
+
-# #loading.label.label-warning{style: 'display:none; position:fixed; right:20px; bottom:20px; z-index:100000'}= t('admin.loading')
|
|
50
|
+
-# %nav.navbar.navbar-default.navbar-fixed-top
|
|
51
|
+
-# = render "layouts/rails_admin/navigation"
|
|
52
|
+
-#
|
|
53
|
+
-# .menu-bar
|
|
54
|
+
-# = render "layouts/rails_admin/sidebar_navigation"
|
|
55
|
+
-#
|
|
56
|
+
-# .page-content
|
|
57
|
+
-# .content{:'data-pjax-container' => true}= render template: 'layouts/rails_admin/pjax'
|
|
58
|
+
-#
|
|
59
|
+
-#
|
|
60
|
+
-#
|
|
61
|
+
-# #status-bar
|
|
62
|
+
|
|
63
|
+
-#.container-fluid
|
|
64
|
+
-# .row
|
|
65
|
+
-# .col-sm-3.col-md-2.sidebar-nav.hancock-nav
|
|
66
|
+
-# = render "layouts/rails_admin/sidebar_navigation"
|
|
67
|
+
-# .col-sm-9.col-sm-offset-3.col-md-10.col-md-offset-2.sidebar-content
|
|
68
|
+
-# .content{:'data-pjax-container' => true}= render template: 'layouts/rails_admin/pjax'
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
ruby:
|
|
2
2
|
js_data = {
|
|
3
|
-
jspath:
|
|
3
|
+
jspath: field.location ? field.location : field.base_location + "ckeditor.js",
|
|
4
4
|
base_location: field.base_location,
|
|
5
5
|
options: {
|
|
6
|
-
customConfig:
|
|
6
|
+
customConfig: field.config_js ? field.config_js : field.base_location + "config.js"
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
_html_attributes = field.html_attributes.reverse_merge(data: { richtext: 'ckeditor', options: js_data.to_json, value: field.form_value[:html] })
|
|
@@ -6,37 +6,40 @@ ul.nav.nav-tabs
|
|
|
6
6
|
.tab-content
|
|
7
7
|
/ = form.fields_for field.translations_field do |localized_field|
|
|
8
8
|
- I18n.available_locales.each do |locale|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
9
|
+
- _class = "#{[( 'active' if locale == I18n.locale ), uuid].join(" ")}"
|
|
10
|
+
.fields.tab-pane(style='padding:5px; margin: 0;' id="#{locale}_#{uuid}" class="#{_class}")
|
|
11
|
+
= form.fields_for field.html_translations_field do |html_localized_field|
|
|
12
|
+
ruby:
|
|
13
|
+
js_data = {
|
|
14
|
+
jspath: field.location ? field.location : field.base_location + "ckeditor.js",
|
|
15
|
+
base_location: field.base_location,
|
|
16
|
+
options: {
|
|
17
|
+
customConfig: field.config_js ? field.config_js : field.base_location + "config.js"
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
_html_attributes = field.html_attributes.reverse_merge(data: {
|
|
21
|
+
richtext: 'ckeditor',
|
|
22
|
+
options: js_data.to_json
|
|
23
|
+
})
|
|
24
|
+
_html_attributes[:value] = field.form_value[:html] ? field.form_value[:html][locale] : ""
|
|
25
|
+
= html_localized_field.send :text_area, locale , _html_attributes
|
|
26
|
+
|
|
27
|
+
= form.fields_for field.clear_translations_field do |clear_localized_field|
|
|
28
|
+
label{style='display: block;'}
|
|
29
|
+
ruby:
|
|
30
|
+
_value = field.form_value[:clear] ? field.form_value[:clear][locale] : true
|
|
31
|
+
_hash = {
|
|
32
|
+
value: _value,
|
|
33
|
+
checked: _value.in?([true, '1']),
|
|
34
|
+
required: false,
|
|
35
|
+
class: "form-control"
|
|
36
|
+
}
|
|
37
|
+
_html_attributes = field.html_attributes.reverse_merge(_hash)
|
|
38
|
+
span{style='float: left'}= clear_localized_field.send field.boolean_view_helper, locale , _html_attributes
|
|
39
|
+
div{style='margin-left: 35px; line-height: 40px;'} Убирать теги
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
40
43
|
|
|
41
44
|
javascript:
|
|
42
45
|
var #{field.name}#{field.object_id} = (new Date().getTime()) + Math.floor(Math.random()*100000);
|
|
@@ -1,5 +1,3 @@
|
|
|
1
1
|
- if user_signed_in? && respond_to?(:can?) && can?(:access, :rails_admin) && can?(:edit, obj)
|
|
2
|
-
|
|
3
|
-
.
|
|
4
|
-
.admin_link
|
|
5
|
-
= link_to t('hancock.edit'), rails_admin.edit_path(obj.class.model_name.i18n_key.to_s.gsub('/', '~'), obj.id), 'data-no-turbolink' => true
|
|
2
|
+
.admin_link
|
|
3
|
+
= link_to t('hancock.edit'), rails_admin.edit_path(obj.class.model_name.i18n_key.to_s.gsub('/', '~'), obj.id), 'data-no-turbolink' => true
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
if defined?(Mongoid)
|
|
2
2
|
|
|
3
|
-
module
|
|
3
|
+
module Mongoid
|
|
4
4
|
|
|
5
5
|
# Helps to override find method in an embedded document.
|
|
6
6
|
# Usage :
|
|
7
|
-
# - add to your model "include
|
|
7
|
+
# - add to your model "include Mongoid::EmbeddedFindable"
|
|
8
8
|
# - override find method with:
|
|
9
9
|
# def self.find(id)
|
|
10
10
|
# find_through(Book, 'chapter', id)
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
ru:
|
|
2
2
|
devise:
|
|
3
3
|
confirmations:
|
|
4
|
-
confirmed: Ваша учётная запись подтверждена. Теперь
|
|
5
|
-
send_instructions: В течение нескольких минут
|
|
6
|
-
send_paranoid_instructions: Если
|
|
4
|
+
confirmed: Ваша учётная запись подтверждена. Теперь вы вошли в систему.
|
|
5
|
+
send_instructions: В течение нескольких минут вы получите письмо с инструкциями по подтверждению вашей учётной записи.
|
|
6
|
+
send_paranoid_instructions: Если ваш адрес e-mail есть в нашей базе данных, то в течение нескольких минут вы получите письмо с инструкциями по подтверждению вашей учётной записи.
|
|
7
7
|
failure:
|
|
8
8
|
already_authenticated: Вы уже вошли в систему.
|
|
9
9
|
inactive: Ваша учётная запись ещё не активирована.
|
|
@@ -13,7 +13,7 @@ ru:
|
|
|
13
13
|
not_found_in_database: Неверный адрес e-mail или пароль.
|
|
14
14
|
timeout: Ваш сеанс закончился. Пожалуйста, войдите в систему снова.
|
|
15
15
|
unauthenticated: Вам необходимо войти в систему или зарегистрироваться.
|
|
16
|
-
unconfirmed: Вы должны подтвердить
|
|
16
|
+
unconfirmed: Вы должны подтвердить вашу учётную запись.
|
|
17
17
|
mailer:
|
|
18
18
|
confirmation_instructions:
|
|
19
19
|
subject: Инструкции по подтверждению учётной записи
|
|
@@ -25,34 +25,30 @@ ru:
|
|
|
25
25
|
failure: Вы не можете войти в систему с учётной записью из %{kind}, т.к. "%{reason}".
|
|
26
26
|
success: Вход в систему выполнен с учётной записью из %{kind}.
|
|
27
27
|
passwords:
|
|
28
|
-
no_token: Доступ к этой странице возможен только по ссылке из письма о восстановлении пароля. Если
|
|
29
|
-
send_instructions: В течение нескольких минут
|
|
30
|
-
send_paranoid_instructions: Если
|
|
31
|
-
updated: Ваш пароль изменён. Теперь
|
|
28
|
+
no_token: Доступ к этой странице возможен только по ссылке из письма о восстановлении пароля. Если Вы пришли по такой ссылке, пожалуйста убедитесь что Вы скопировали всю ссылку целиком.
|
|
29
|
+
send_instructions: В течение нескольких минут вы получите письмо с инструкциями по восстановлению вашего пароля.
|
|
30
|
+
send_paranoid_instructions: Если ваш адрес e-mail есть в нашей базе данных, то в течение нескольких минут вы получите письмо с инструкциями по восстановлению вашего пароля.
|
|
31
|
+
updated: Ваш пароль изменён. Теперь вы вошли в систему.
|
|
32
32
|
updated_not_active: Ваш пароль изменен.
|
|
33
33
|
registrations:
|
|
34
|
-
destroyed: До свидания! Ваша учётная запись удалена. Надеемся снова увидеть
|
|
34
|
+
destroyed: До свидания! Ваша учётная запись удалена. Надеемся снова увидеть вас.
|
|
35
35
|
signed_up: Добро пожаловать! Вы успешно зарегистрировались.
|
|
36
|
-
signed_up_but_inactive: Вы успешно зарегистрированы. Однако,
|
|
37
|
-
signed_up_but_locked: Вы успешно зарегистрированы. Однако,
|
|
38
|
-
signed_up_but_unconfirmed: Письмо со ссылкой для подтверждения было отправлено на
|
|
39
|
-
update_needs_confirmation: Вы успешно обновили данные
|
|
36
|
+
signed_up_but_inactive: Вы успешно зарегистрированы. Однако, вы не можете войти в систему, потому что ваша учетная запись не активирована.
|
|
37
|
+
signed_up_but_locked: Вы успешно зарегистрированы. Однако, вы не можете войти в систему, потому что ваша учетная запись заблокирована.
|
|
38
|
+
signed_up_but_unconfirmed: Письмо со ссылкой для подтверждения было отправлено на ваш e-mail. Пожалуйста, перейдите по ссылке, чтобы подтвердить вашу учетную запись.
|
|
39
|
+
update_needs_confirmation: Вы успешно обновили данные вашей учетной записи, но нам нужно проверить ваш новый адрес e-mail. Пожалуйста, проверьте ваш почтовый ящик и перейдите по ссылке, чтобы закончить процедуру проверки вашего нового адреса e-mail.
|
|
40
40
|
updated: Ваша учётная запись изменена.
|
|
41
41
|
sessions:
|
|
42
42
|
signed_in: Вход в систему выполнен.
|
|
43
43
|
signed_out: Выход из системы выполнен.
|
|
44
44
|
unlocks:
|
|
45
|
-
send_instructions: В течение нескольких минут
|
|
46
|
-
send_paranoid_instructions: Если
|
|
47
|
-
unlocked: Ваша учётная запись разблокирована. Теперь
|
|
45
|
+
send_instructions: В течение нескольких минут вы получите письмо с инструкциями по разблокировке вашей учётной записи.
|
|
46
|
+
send_paranoid_instructions: Если ваша учётная запись существует, то в течение нескольких минут вы получите письмо с инструкциями по её разблокировке.
|
|
47
|
+
unlocked: Ваша учётная запись разблокирована. Теперь вы можете войти в систему.
|
|
48
48
|
failure:
|
|
49
49
|
user:
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
# invalid: Неверный пароль.
|
|
53
|
-
# more secure
|
|
54
|
-
not_found_in_database: Неверный адрес e-mail или пароль.
|
|
55
|
-
invalid: Неверный адрес e-mail или пароль.
|
|
50
|
+
not_found_in_database: Пользователь не найден в базе
|
|
51
|
+
invalid: Неверный пароль
|
|
56
52
|
unauthenticated: Необходимо авторизоваться
|
|
57
53
|
unconfirmed: 'Необходимо подтвердить адрес электронной почты'
|
|
58
54
|
errors:
|
|
@@ -2,17 +2,17 @@ ru:
|
|
|
2
2
|
hancock:
|
|
3
3
|
url: URL
|
|
4
4
|
content: "Контент"
|
|
5
|
-
|
|
5
|
+
cache: Кеширование
|
|
6
|
+
gallery: "Галерея"
|
|
6
7
|
cms: "CMS"
|
|
7
|
-
|
|
8
|
+
menu: "Меню"
|
|
8
9
|
settings: 'Настройки'
|
|
9
|
-
insertions: "Возможные вставки"
|
|
10
10
|
with_final_slash: "c начальным слешем"
|
|
11
11
|
page_url_regex: "Регулярное выражение, по которому определяется является ли этот пункт активным"
|
|
12
12
|
final_in_menu: "В меню сразу отдается конечная ссылка"
|
|
13
13
|
map: 'Карта'
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
sitemap: 'Карта сайта'
|
|
15
|
+
sitemap_data: 'Данные для карты сайта'
|
|
16
16
|
edit: Редактировать
|
|
17
17
|
send: Отправить
|
|
18
18
|
format_time: "%d.%m.%Y"
|
|
@@ -31,7 +31,6 @@ ru:
|
|
|
31
31
|
misc:
|
|
32
32
|
filter_date_format: "dd.mm.yyyy"
|
|
33
33
|
search: "Поиск"
|
|
34
|
-
search_or_add_yours: "Поиск/новый элемент"
|
|
35
34
|
filter: "Фильтрация"
|
|
36
35
|
refresh: "Обновить"
|
|
37
36
|
show_all: "Показать все"
|
|
@@ -131,8 +130,6 @@ ru:
|
|
|
131
130
|
show_in_app:
|
|
132
131
|
title: 'В приложении'
|
|
133
132
|
menu: "Показать на сайте"
|
|
134
|
-
logout:
|
|
135
|
-
confirm: "Вы точно хотите выйти?"
|
|
136
133
|
form:
|
|
137
134
|
cancel: "Отмена"
|
|
138
135
|
basic_info: "Основное"
|
data/hancock_cms.gemspec
CHANGED
|
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
|
|
|
20
20
|
spec.add_development_dependency 'bundler'
|
|
21
21
|
spec.add_development_dependency 'rake'
|
|
22
22
|
|
|
23
|
-
spec.add_dependency 'rails', ['>=
|
|
23
|
+
spec.add_dependency 'rails', ['>= 5.0.0', '< 6.0']
|
|
24
24
|
|
|
25
25
|
spec.add_dependency 'jquery-rails'
|
|
26
26
|
spec.add_dependency 'simple_form'
|
|
@@ -32,18 +32,15 @@ Gem::Specification.new do |spec|
|
|
|
32
32
|
spec.add_dependency 'ckeditor'
|
|
33
33
|
spec.add_dependency 'geocoder'
|
|
34
34
|
|
|
35
|
-
spec.add_dependency 'rails_admin', '
|
|
35
|
+
spec.add_dependency 'rails_admin', '>= 1.0.0'
|
|
36
36
|
spec.add_dependency 'rails_admin_nested_set'
|
|
37
37
|
spec.add_dependency 'rails_admin_toggleable'
|
|
38
38
|
|
|
39
|
-
spec.add_dependency 'ack_rails_admin_settings'
|
|
40
|
-
spec.add_dependency 'safe_yaml'
|
|
39
|
+
spec.add_dependency 'ack_rails_admin_settings'
|
|
41
40
|
|
|
42
41
|
spec.add_dependency 'kaminari'
|
|
43
|
-
spec.add_dependency 'kaminari-actionview'
|
|
44
42
|
|
|
45
43
|
spec.add_dependency 'codemirror-rails'
|
|
46
44
|
|
|
47
45
|
spec.add_dependency 'scrollbar-rails'
|
|
48
|
-
spec.add_dependency 'stickykit-rails'
|
|
49
46
|
end
|
data/lib/filename_to_slug.rb
CHANGED
|
@@ -10,3 +10,23 @@ class String
|
|
|
10
10
|
s
|
|
11
11
|
end
|
|
12
12
|
end
|
|
13
|
+
#
|
|
14
|
+
# module FilenameToSlug
|
|
15
|
+
# extend ActiveSupport::Concern
|
|
16
|
+
# included do
|
|
17
|
+
# before_post_process :filename_to_slug
|
|
18
|
+
# end
|
|
19
|
+
#
|
|
20
|
+
# def filename_to_slug
|
|
21
|
+
# if self.class.attachment_definitions
|
|
22
|
+
# self.class.attachment_definitions.each do |k,v|
|
|
23
|
+
# if self.send(k).file?
|
|
24
|
+
# full_file_name = self.send("#{k}_file_name")
|
|
25
|
+
# extension = File.extname(full_file_name)[1..-1]
|
|
26
|
+
# file_name = full_file_name[0..full_file_name.size-extension.size-1]
|
|
27
|
+
# self.send("#{k}").instance_write(:file_name, "#{file_name.filename_to_slug}.#{extension.filename_to_slug}")
|
|
28
|
+
# end
|
|
29
|
+
# end
|
|
30
|
+
# end
|
|
31
|
+
# end
|
|
32
|
+
# end
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
class <%= camelcased_class_name %> < Hancock::EmbeddedElement
|
|
2
|
-
|
|
3
2
|
embedded_in :<%= underscored_parent_class_name %>, class_name: "<%= camelcased_parent_class_name %>"
|
|
3
|
+
|
|
4
4
|
def self.find(id)
|
|
5
5
|
find_through(<%= camelcased_parent_class_name %>, '<%= underscored_pluralized_class_name %>', id)
|
|
6
6
|
end
|
|
@@ -30,7 +30,7 @@ class <%= camelcased_class_name %> < Hancock::EmbeddedElement
|
|
|
30
30
|
# def self.rails_admin_user_defined_visible_actions
|
|
31
31
|
# [].freeze
|
|
32
32
|
# end
|
|
33
|
-
|
|
33
|
+
|
|
34
34
|
def self.rails_admin_add_fields
|
|
35
35
|
super
|
|
36
36
|
end
|