locomotive_cms 2.2.3 → 2.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/Gemfile +1 -0
- data/README.textile +2 -1
- data/app/assets/images/locomotive/icons/flags/bg.png +0 -0
- data/app/assets/images/locomotive/icons/flags/cs.png +0 -0
- data/app/assets/javascripts/locomotive/models/page.js.coffee +1 -1
- data/app/assets/javascripts/locomotive/utils/aloha_settings.js.coffee +2 -2
- data/app/assets/javascripts/locomotive/views/application_view.js.coffee +2 -2
- data/app/assets/javascripts/locomotive/views/content_assets/picker_view.js.coffee +2 -0
- data/app/assets/javascripts/locomotive/views/content_entries/_form_view.js.coffee +8 -0
- data/app/assets/javascripts/locomotive/views/editable_elements/text_view.js.coffee +2 -2
- data/app/assets/javascripts/locomotive/views/pages/edit_view.js.coffee +2 -0
- data/app/assets/javascripts/locomotive/views/shared/fields/belongs_to_view.js.coffee +2 -0
- data/app/assets/javascripts/locomotive/views/shared/form_view.js.coffee +7 -5
- data/app/assets/javascripts/tinymce/plugins/locomotive_media/editor_plugin.js +7 -3
- data/app/assets/javascripts/tinymce/plugins/locomotive_media/langs/cs.js +1 -0
- data/app/assets/stylesheets/locomotive/backoffice/datepicker.css.scss +66 -0
- data/app/assets/stylesheets/locomotive/backoffice/dialog_changes.css.scss +8 -2
- data/app/assets/stylesheets/locomotive/backoffice/formtastic_changes.css.scss +8 -0
- data/app/assets/stylesheets/locomotive/backoffice/menu/_colors.css.scss +1 -1
- data/app/controllers/locomotive/api/base_controller.rb +3 -0
- data/app/controllers/locomotive/api/content_entries_controller.rb +4 -4
- data/app/controllers/locomotive/api/tokens_controller.rb +4 -0
- data/app/controllers/locomotive/base_controller.rb +6 -3
- data/app/controllers/locomotive/public/base_controller.rb +3 -0
- data/app/controllers/locomotive/public/content_entries_controller.rb +2 -1
- data/app/helpers/locomotive/custom_fields_helper.rb +2 -2
- data/app/models/locomotive/content_type.rb +7 -0
- data/app/models/locomotive/editable_file.rb +1 -0
- data/app/models/locomotive/editable_text.rb +4 -1
- data/app/models/locomotive/extensions/page/editable_elements.rb +21 -0
- data/app/models/locomotive/extensions/page/templatized.rb +2 -2
- data/app/models/locomotive/extensions/page/tree.rb +5 -0
- data/app/models/locomotive/extensions/site/timezone.rb +7 -10
- data/app/models/locomotive/theme_asset.rb +2 -2
- data/app/presenters/locomotive/membership_presenter.rb +2 -1
- data/app/presenters/locomotive/site_presenter.rb +10 -1
- data/app/uploaders/locomotive/theme_asset_uploader.rb +7 -0
- data/app/views/locomotive/custom_fields/types/_date_time.html.haml +5 -0
- data/app/views/locomotive/notifications/new_content_entry.html.haml +1 -1
- data/app/views/locomotive/pages/_page.html.haml +2 -2
- data/config/locales/admin_ui.bg.yml +349 -0
- data/config/locales/admin_ui.cs.yml +359 -0
- data/config/locales/admin_ui.de.yml +25 -9
- data/config/locales/admin_ui.en.yml +3 -1
- data/config/locales/admin_ui.es.yml +2 -0
- data/config/locales/admin_ui.et.yml +3 -1
- data/config/locales/admin_ui.fr.yml +2 -0
- data/config/locales/admin_ui.it.yml +2 -0
- data/config/locales/admin_ui.ja.yml +2 -0
- data/config/locales/admin_ui.nb.yml +2 -0
- data/config/locales/admin_ui.nl.yml +2 -0
- data/config/locales/admin_ui.pl.yml +2 -0
- data/config/locales/admin_ui.pt-BR.yml +3 -1
- data/config/locales/admin_ui.ru.yml +2 -0
- data/config/locales/admin_ui.zh-CN.yml +2 -0
- data/config/locales/carrierwave.bg.yml +4 -0
- data/config/locales/carrierwave.cs.yml +4 -0
- data/config/locales/default.bg.yml +231 -0
- data/config/locales/default.cs.yml +249 -0
- data/config/locales/default.de.yml +24 -16
- data/config/locales/default.en.yml +4 -0
- data/config/locales/default.es.yml +1 -1
- data/config/locales/default.et.yml +1 -1
- data/config/locales/default.fr.yml +1 -1
- data/config/locales/default.it.yml +1 -1
- data/config/locales/default.ja.yml +4 -0
- data/config/locales/default.nb.yml +1 -1
- data/config/locales/default.nl.yml +1 -1
- data/config/locales/default.pl.yml +1 -1
- data/config/locales/default.pt-BR.yml +1 -1
- data/config/locales/default.ru.yml +1 -1
- data/config/locales/default.zh-CN.yml +1 -1
- data/config/locales/devise.bg.yml +64 -0
- data/config/locales/devise.cs.yml +64 -0
- data/config/locales/flash.bg.yml +115 -0
- data/config/locales/flash.cs.yml +115 -0
- data/config/locales/formtastic.bg.yml +113 -0
- data/config/locales/formtastic.cs.yml +125 -0
- data/config/locales/formtastic.de.yml +9 -0
- data/features/api/content_entries.feature +2 -0
- data/features/api/memberships.feature +26 -0
- data/features/backoffice/content_types/many_to_many.feature +3 -3
- data/features/backoffice/pages.feature +16 -0
- data/features/backoffice/regressions.feature +19 -0
- data/features/public/contact_form.feature +9 -0
- data/features/step_definitions/api_steps.rb +4 -1
- data/features/step_definitions/content_types_steps.rb +5 -0
- data/features/step_definitions/more_web_steps.rb +4 -0
- data/features/step_definitions/web_steps.rb +4 -0
- data/lib/generators/locomotive/install/templates/locomotive.rb +2 -2
- data/lib/locomotive.rb +1 -8
- data/lib/locomotive/action_controller.rb +1 -0
- data/lib/locomotive/action_controller/ssl.rb +11 -2
- data/lib/locomotive/action_controller/timezone.rb +13 -0
- data/lib/locomotive/configuration.rb +2 -2
- data/lib/locomotive/custom_fields.rb +1 -1
- data/lib/locomotive/dependencies.rb +2 -0
- data/lib/locomotive/engine.rb +10 -0
- data/lib/locomotive/httparty/webservice.rb +6 -5
- data/lib/locomotive/liquid/drops/base.rb +0 -2
- data/lib/locomotive/liquid/drops/content_entry.rb +11 -7
- data/lib/locomotive/liquid/drops/content_types.rb +46 -30
- data/lib/locomotive/liquid/drops/current_user.rb +3 -3
- data/lib/locomotive/liquid/drops/page.rb +15 -15
- data/lib/locomotive/liquid/drops/proxy_collection.rb +5 -1
- data/lib/locomotive/liquid/drops/site.rb +10 -6
- data/lib/locomotive/liquid/drops/uploader.rb +2 -2
- data/lib/locomotive/liquid/filters/date.rb +29 -3
- data/lib/locomotive/liquid/filters/resize.rb +3 -1
- data/lib/locomotive/liquid/filters/text.rb +4 -0
- data/lib/locomotive/liquid/tags/editable/control.rb +11 -1
- data/lib/locomotive/liquid/tags/link_to.rb +5 -3
- data/lib/locomotive/liquid/tags/nav.rb +19 -10
- data/lib/locomotive/liquid/tags/with_scope.rb +29 -31
- data/lib/locomotive/markdown.rb +23 -0
- data/lib/locomotive/render.rb +6 -2
- data/lib/locomotive/version.rb +1 -1
- data/lib/tasks/locomotive.rake +5 -2
- data/mongodb/migrate/20130511121956_generate_checksum_for_theme_assets.rb +5 -1
- data/mongodb/migrate/20130903145451_localize_redirect_urls_of_pages.rb +42 -0
- data/spec/dummy/config/initializers/locomotive.rb +2 -2
- data/spec/dummy/config/mongoid.yml +1 -0
- data/spec/lib/locomotive/httparty/webservice_spec.rb +1 -1
- data/spec/lib/locomotive/liquid/filters/date_spec.rb +61 -2
- data/spec/lib/locomotive/liquid/filters/text_spec.rb +4 -0
- data/spec/lib/locomotive/liquid/tags/consume_spec.rb +6 -2
- data/spec/lib/locomotive/liquid/tags/nav_spec.rb +1 -1
- data/spec/lib/locomotive/liquid/tags/with_scope_spec.rb +33 -27
- data/spec/lib/locomotive/render_spec.rb +2 -2
- data/spec/lib/locomotive/routing/site_dispatcher_spec.rb +1 -1
- data/spec/models/locomotive/content_entry_spec.rb +1 -1
- data/spec/models/locomotive/editable_control_spec.rb +9 -0
- data/spec/models/locomotive/extensions/page/editable_elements_spec.rb +6 -0
- data/spec/models/locomotive/page_spec.rb +13 -0
- data/spec/requests/admin_ssl_spec.rb +29 -7
- data/spec/support/factories.rb +6 -0
- data/vendor/assets/javascripts/locomotive/jquery-ui-timepicker-addon.js +2134 -0
- data/vendor/assets/stylesheets/select2/select2.css.scss +3 -3
- metadata +54 -94
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 243b2783fdaefcb54415d93da1d0918dd81890f7
|
4
|
+
data.tar.gz: 4652d77c5a747fa2fdf429eef59b7ef2f56b3642
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 864e756b9dfab5708b8e89ae55229879518a44fb2f91ed207537e19e4f0a3189948d60ad0f93b66d4f757dfa765866b00df1000bacdcd60cdfc9b1c663939d44
|
7
|
+
data.tar.gz: 3268fb0c1d076f4084208593ffe762f360c496304ea9d911b5dfc92655ae3cbe794286e502386dfd658e6d1c91b7f229c0b9520b35313b75ba27aa7579cd23ad
|
data/Gemfile
CHANGED
@@ -27,6 +27,7 @@ group :development do
|
|
27
27
|
# gem 'locomotive-aloha-rails', path: '../gems/aloha-rails' # for Developers
|
28
28
|
# gem 'locomotive-tinymce-rails', path: '../gems/tinymce-rails' # for Developers
|
29
29
|
# gem 'locomotive_liquid', path: '../gems/liquid' # for Developers
|
30
|
+
# gem 'locomotivecms_solid', path: '../gems/solid' # for Developers
|
30
31
|
|
31
32
|
# gem 'carrierwave-mongoid', git: 'git://github.com/locomotivecms/carrierwave-mongoid.git'
|
32
33
|
|
data/README.textile
CHANGED
Binary file
|
Binary file
|
@@ -19,7 +19,7 @@ class Locomotive.Models.Page extends Backbone.Model
|
|
19
19
|
_.each ['fullpath', 'localized_fullpaths', 'templatized_from_parent', 'template_changed', 'escaped_raw_template', 'target_klass_name_text', 'content_type_id_text', 'edit_url', 'parent_id_text', 'response_type_text', 'translated_in'], (key) => delete hash[key]
|
20
20
|
|
21
21
|
delete hash['editable_elements']
|
22
|
-
hash.
|
22
|
+
hash.editable_elements_attributes = @get('editable_elements').toJSONForSave() if @get('editable_elements')? && @get('editable_elements').length > 0
|
23
23
|
|
24
24
|
delete hash['target_klass_name']
|
25
25
|
hash.target_klass_name = @get('target_klass_name') if @get('templatized') == true
|
@@ -39,7 +39,7 @@ window.Aloha.settings =
|
|
39
39
|
crop: false
|
40
40
|
|
41
41
|
i18n:
|
42
|
-
available: ['en', 'fr', 'pl', 'pt-BR', 'es', 'de', 'no', 'ru', 'nl', 'ja']
|
42
|
+
available: ['en', 'fr', 'pl', 'pt-BR', 'es', 'de', 'no', 'ru', 'nl', 'ja', 'cs', 'bg']
|
43
43
|
|
44
44
|
sidebar:
|
45
45
|
disabled: true
|
@@ -62,4 +62,4 @@ window.Aloha.settings =
|
|
62
62
|
]
|
63
63
|
]
|
64
64
|
}
|
65
|
-
]
|
65
|
+
]
|
@@ -99,5 +99,5 @@ class Locomotive.Views.ApplicationView extends Backbone.View
|
|
99
99
|
# Each modal window should have a different zIndex, otherwise there will be conflicts between them.
|
100
100
|
window.Locomotive.jQueryModals ||= 0
|
101
101
|
|
102
|
-
998 + window.Locomotive.jQueryModals++
|
103
|
-
|
102
|
+
# 998 + window.Locomotive.jQueryModals++
|
103
|
+
300000 + window.Locomotive.jQueryModals++
|
@@ -20,6 +20,8 @@ class Locomotive.Views.ContentAssets.PickerView extends Locomotive.Views.Shared.
|
|
20
20
|
build_uploader: (el, link) ->
|
21
21
|
link.bind 'click', (event) ->
|
22
22
|
event.stopPropagation() & event.preventDefault()
|
23
|
+
console.log(el)
|
24
|
+
window.foo = el
|
23
25
|
el.click()
|
24
26
|
|
25
27
|
el.bind 'change', (event) =>
|
@@ -37,6 +37,8 @@ class Locomotive.Views.ContentEntries.FormView extends Locomotive.Views.Shared.F
|
|
37
37
|
|
38
38
|
@enable_datepickers()
|
39
39
|
|
40
|
+
@enable_datetimepickers()
|
41
|
+
|
40
42
|
@enable_richtexteditor()
|
41
43
|
|
42
44
|
@enable_select_fields()
|
@@ -62,6 +64,11 @@ class Locomotive.Views.ContentEntries.FormView extends Locomotive.Views.Shared.F
|
|
62
64
|
enable_datepickers: ->
|
63
65
|
@$('li.input.date input[type=text]').datepicker()
|
64
66
|
|
67
|
+
enable_datetimepickers: ->
|
68
|
+
@$('li.input.date-time input[type=text]').datetimepicker
|
69
|
+
controlType: 'select'
|
70
|
+
showTime: false
|
71
|
+
|
65
72
|
enable_richtexteditor: ->
|
66
73
|
_.each @$('li.input.rte textarea.html'), (textarea) =>
|
67
74
|
settings = _.extend {}, @tinyMCE_settings(),
|
@@ -162,6 +169,7 @@ class Locomotive.Views.ContentEntries.FormView extends Locomotive.Views.Shared.F
|
|
162
169
|
|
163
170
|
remove: ->
|
164
171
|
@$('li.input.date input[type=text]').datepicker('destroy')
|
172
|
+
@$('li.input.date_time input[type=text]').datetimepicker('destroy')
|
165
173
|
@_select_field_view.remove()
|
166
174
|
_.each @_file_field_views, (view) => view.remove()
|
167
175
|
_.each @_has_many_field_views, (view) => view.remove()
|
@@ -31,11 +31,11 @@ class Locomotive.Views.EditableElements.TextView extends Backbone.View
|
|
31
31
|
height: @model.get('rows') * @default_line_height
|
32
32
|
oninit: ((editor) =>
|
33
33
|
$.cmd 'S', (() =>
|
34
|
-
@model.set(content: editor.
|
34
|
+
@model.set(content: editor.getContent())
|
35
35
|
$(@el).parents('form').trigger('submit')
|
36
36
|
), [], ignoreCase: true, document: editor.dom.doc),
|
37
37
|
onchange_callback: (editor) =>
|
38
|
-
@model.set(content: editor.
|
38
|
+
@model.set(content: editor.getContent())
|
39
39
|
|
40
40
|
refresh: ->
|
41
41
|
# do nothing
|
@@ -5,6 +5,8 @@ class Locomotive.Views.Pages.EditView extends Locomotive.Views.Pages.FormView
|
|
5
5
|
save: (event) ->
|
6
6
|
event.stopPropagation() & event.preventDefault()
|
7
7
|
|
8
|
+
@trigger_change_event_on_focused_inputs()
|
9
|
+
|
8
10
|
form = $(event.target).trigger('ajax:beforeSend')
|
9
11
|
|
10
12
|
@clear_errors()
|
@@ -29,6 +29,8 @@ class Locomotive.Views.Shared.FormView extends Backbone.View
|
|
29
29
|
save_in_ajax: (event, options) ->
|
30
30
|
event.stopPropagation() & event.preventDefault()
|
31
31
|
|
32
|
+
@trigger_change_event_on_focused_inputs()
|
33
|
+
|
32
34
|
form = $(event.target).trigger('ajax:beforeSend')
|
33
35
|
|
34
36
|
@clear_errors()
|
@@ -85,16 +87,16 @@ class Locomotive.Views.Shared.FormView extends Backbone.View
|
|
85
87
|
else
|
86
88
|
content.slideUp 100, -> parent.addClass('folded')
|
87
89
|
|
90
|
+
trigger_change_event_on_focused_inputs: ->
|
91
|
+
# make sure that the current text field gets saved too
|
92
|
+
input = @$('form input[type=text]:focus, form input[type=password]:focus, form textarea:focus')
|
93
|
+
input.trigger('change') if input.size() > 0
|
94
|
+
|
88
95
|
enable_save_with_keys_combination: ->
|
89
96
|
$.cmd 'S', (() =>
|
90
|
-
# make sure that the current text field gets saved too
|
91
|
-
input = @$('form input[type=text]:focus, form input[type=password]:focus, form textarea:focus')
|
92
|
-
input.trigger('change') if input.size() > 0
|
93
|
-
|
94
97
|
@$('form input[type=submit]').trigger('click')
|
95
98
|
), [], ignoreCase: true
|
96
99
|
|
97
|
-
|
98
100
|
enable_form_notifications: ->
|
99
101
|
@$('form').formSubmitNotification()
|
100
102
|
|
@@ -21,14 +21,18 @@
|
|
21
21
|
el = ed.selection.getNode();
|
22
22
|
|
23
23
|
if (el && (el.nodeName == 'IMG' || el.nodeName == 'A')) {
|
24
|
-
|
24
|
+
ed.dom.setAttribs(el, args);
|
25
25
|
} else {
|
26
26
|
if (asset.get('image')) {
|
27
27
|
ed.execCommand('mceInsertContent', false, '<img id="__mce_tmp" />', { skip_undo: 1 });
|
28
28
|
} else {
|
29
29
|
var html = ed.selection.getContent();
|
30
|
-
if (html == '')
|
31
|
-
|
30
|
+
if (html == '') {
|
31
|
+
html = asset.get('filename');
|
32
|
+
ed.execCommand('mceInsertContent', false, '<a id="__mce_tmp" href="#">' + html + '</a>', { skip_undo: 1 });
|
33
|
+
} else {
|
34
|
+
ed.execCommand('mceReplaceContent', false, ' <a id="__mce_tmp" href="#">' + html + '</a>', { skip_undo: 1 });
|
35
|
+
}
|
32
36
|
}
|
33
37
|
|
34
38
|
ed.dom.setAttribs('__mce_tmp', args);
|
@@ -0,0 +1 @@
|
|
1
|
+
tinyMCE.addI18n('cs.locomotive_media',{"image_desc": "Vložit obrázek"});
|
@@ -2,10 +2,13 @@
|
|
2
2
|
@import "compass/css3/border-radius";
|
3
3
|
@import "compass/css3/images";
|
4
4
|
@import "compass/css3/text-shadow";
|
5
|
+
@import "compass/css3/box-shadow";
|
5
6
|
|
6
7
|
// Note: http://www.west-wind.com/weblog/posts/2009/Sep/12/jQuery-UI-Datepicker-and-zIndex
|
7
8
|
#ui-datepicker-div {
|
8
9
|
z-index: 9999999 !important;
|
10
|
+
|
11
|
+
@include box-shadow(rgba(0, 0, 0, 0.2) 4px 4px 10px 2px);
|
9
12
|
}
|
10
13
|
|
11
14
|
.ui-datepicker {
|
@@ -181,3 +184,66 @@
|
|
181
184
|
}
|
182
185
|
}
|
183
186
|
|
187
|
+
.ui-timepicker-div {
|
188
|
+
|
189
|
+
border-top: 1px solid #bcbfc2;
|
190
|
+
|
191
|
+
.ui-widget-header {
|
192
|
+
margin-bottom: 8px;
|
193
|
+
}
|
194
|
+
|
195
|
+
dl {
|
196
|
+
margin: 0px;
|
197
|
+
}
|
198
|
+
|
199
|
+
// dl { text-align: left; }
|
200
|
+
// dl dt { height: 25px; margin-bottom: -25px; }
|
201
|
+
// dl dd { margin: 0 10px 10px 65px; }
|
202
|
+
// td { font-size: 90%; }
|
203
|
+
|
204
|
+
.ui_tpicker_hour_label {
|
205
|
+
display: none;
|
206
|
+
}
|
207
|
+
|
208
|
+
.ui_tpicker_minute_label {
|
209
|
+
display: none;
|
210
|
+
}
|
211
|
+
|
212
|
+
.ui_tpicker_hour, .ui_tpicker_minute {
|
213
|
+
display: inline-block;
|
214
|
+
width: 50%;
|
215
|
+
text-align: right;
|
216
|
+
margin: 4px 0px 6px 0px;
|
217
|
+
|
218
|
+
select {
|
219
|
+
margin: 0 3px;
|
220
|
+
font-size: 11px;
|
221
|
+
font-family: Verdana, Arial, sans-serif;
|
222
|
+
}
|
223
|
+
|
224
|
+
&.ui_tpicker_minute {
|
225
|
+
text-align: left;
|
226
|
+
.ui_tpicker_minute_slider {
|
227
|
+
&:before { font-size: 14px; font-weight: bold; content: ':'; }
|
228
|
+
}
|
229
|
+
}
|
230
|
+
}
|
231
|
+
}
|
232
|
+
|
233
|
+
.ui-tpicker-grid-label {
|
234
|
+
background: none;
|
235
|
+
border: none;
|
236
|
+
margin: 0;
|
237
|
+
padding: 0;
|
238
|
+
}
|
239
|
+
|
240
|
+
.ui-timepicker-rtl {
|
241
|
+
direction: rtl;
|
242
|
+
|
243
|
+
dl { text-align: right; }
|
244
|
+
dl dd { margin: 0 65px 10px 10px; }
|
245
|
+
}
|
246
|
+
|
247
|
+
.ui-datepicker-buttonpane {
|
248
|
+
display: none;
|
249
|
+
}
|
@@ -60,7 +60,7 @@
|
|
60
60
|
|
61
61
|
.ui-dialog-content {
|
62
62
|
position: relative;
|
63
|
-
z-index: 1200;
|
63
|
+
// z-index: 1200;
|
64
64
|
|
65
65
|
text-align: left;
|
66
66
|
|
@@ -90,6 +90,12 @@
|
|
90
90
|
width: 90px;
|
91
91
|
}
|
92
92
|
} // li.string
|
93
|
+
|
94
|
+
li.tags {
|
95
|
+
ul.tagit {
|
96
|
+
width: 530px;
|
97
|
+
}
|
98
|
+
}
|
93
99
|
}
|
94
100
|
}
|
95
101
|
} // .form.formtastic
|
@@ -131,7 +137,7 @@
|
|
131
137
|
}
|
132
138
|
|
133
139
|
input[type=file] {
|
134
|
-
z-index:
|
140
|
+
z-index: 400000; // thanks to tinymce modal z-index
|
135
141
|
}
|
136
142
|
|
137
143
|
} // .button-wrapper
|
@@ -3,10 +3,13 @@ module Locomotive
|
|
3
3
|
class BaseController < ApplicationController
|
4
4
|
|
5
5
|
include Locomotive::Routing::SiteDispatcher
|
6
|
+
include Locomotive::ActionController::Timezone
|
6
7
|
include Locomotive::ActionController::LocaleHelpers
|
7
8
|
|
8
9
|
skip_before_filter :verify_authenticity_token
|
9
10
|
|
11
|
+
around_filter :set_timezone
|
12
|
+
|
10
13
|
before_filter :require_account
|
11
14
|
|
12
15
|
before_filter :require_site
|
@@ -4,13 +4,13 @@ module Locomotive
|
|
4
4
|
|
5
5
|
load_and_authorize_resource({
|
6
6
|
class: Locomotive::ContentEntry,
|
7
|
-
through: :
|
7
|
+
through: :get_content_type,
|
8
8
|
through_association: :entries,
|
9
9
|
find_by: :find_by_id_or_permalink
|
10
10
|
})
|
11
11
|
|
12
12
|
def index
|
13
|
-
@content_entries = @content_entries.order_by([
|
13
|
+
@content_entries = @content_entries.order_by([get_content_type.order_by_definition])
|
14
14
|
respond_with @content_entries
|
15
15
|
end
|
16
16
|
|
@@ -37,10 +37,10 @@ module Locomotive
|
|
37
37
|
|
38
38
|
protected
|
39
39
|
|
40
|
-
def
|
40
|
+
def get_content_type
|
41
41
|
@content_type ||= current_site.content_types.where(slug: params[:slug]).first
|
42
42
|
end
|
43
43
|
|
44
44
|
end
|
45
45
|
end
|
46
|
-
end
|
46
|
+
end
|
@@ -6,6 +6,7 @@ module Locomotive
|
|
6
6
|
include Locomotive::ActionController::SectionHelpers
|
7
7
|
include Locomotive::ActionController::UrlHelpers
|
8
8
|
include Locomotive::ActionController::Ssl
|
9
|
+
include Locomotive::ActionController::Timezone
|
9
10
|
|
10
11
|
layout '/locomotive/layouts/application'
|
11
12
|
|
@@ -15,13 +16,15 @@ module Locomotive
|
|
15
16
|
|
16
17
|
before_filter :require_site
|
17
18
|
|
19
|
+
before_filter :set_back_office_locale
|
20
|
+
|
21
|
+
before_filter :set_current_content_locale
|
22
|
+
|
18
23
|
before_filter :validate_site_membership
|
19
24
|
|
20
25
|
load_and_authorize_resource
|
21
26
|
|
22
|
-
|
23
|
-
|
24
|
-
before_filter :set_current_content_locale
|
27
|
+
around_filter :set_timezone
|
25
28
|
|
26
29
|
before_filter :set_current_thread_variables
|
27
30
|
|
@@ -6,9 +6,12 @@ module Locomotive
|
|
6
6
|
include Locomotive::ActionController::LocaleHelpers
|
7
7
|
include Locomotive::ActionController::SectionHelpers
|
8
8
|
include Locomotive::ActionController::UrlHelpers
|
9
|
+
include Locomotive::ActionController::Timezone
|
9
10
|
|
10
11
|
skip_load_and_authorize_resource
|
11
12
|
|
13
|
+
around_filter :set_timezone
|
14
|
+
|
12
15
|
before_filter :require_site
|
13
16
|
|
14
17
|
protected
|
@@ -13,7 +13,7 @@ module Locomotive
|
|
13
13
|
respond_to :html, :json
|
14
14
|
|
15
15
|
def create
|
16
|
-
@entry = @content_type.entries.
|
16
|
+
@entry = @content_type.entries.safe_create(params[:entry] || params[:content])
|
17
17
|
|
18
18
|
respond_with @entry, {
|
19
19
|
location: self.callback_url,
|
@@ -25,6 +25,7 @@ module Locomotive
|
|
25
25
|
|
26
26
|
def set_locale
|
27
27
|
::I18n.locale = params[:locale] || current_site.default_locale
|
28
|
+
::Mongoid::Fields::I18n.locale = ::I18n.locale
|
28
29
|
end
|
29
30
|
|
30
31
|
def set_content_type
|