locomotive_cms 2.0.0.rc2 → 2.0.0.rc4
Sign up to get free protection for your applications and to get access to all the features.
- data/README.textile +4 -4
- data/app/assets/images/locomotive/icons/start.png +0 -0
- data/app/assets/javascripts/locomotive/models/page.js.coffee +1 -1
- data/app/assets/javascripts/locomotive/models/site.js.coffee +1 -1
- data/app/assets/javascripts/locomotive/views/content_entries/_form_view.js.coffee +11 -4
- data/app/assets/javascripts/locomotive/views/editable_elements/control_view.js.coffee +24 -0
- data/app/assets/javascripts/locomotive/views/editable_elements/edit_all_view.js.coffee +4 -0
- data/app/assets/javascripts/locomotive/views/editable_elements/short_text_view.js.coffee +5 -0
- data/app/assets/javascripts/locomotive/views/pages/_form_view.js.coffee +19 -0
- data/app/assets/javascripts/locomotive/views/shared/fields/has_many_view.js.coffee +3 -0
- data/app/assets/javascripts/locomotive/views/shared/fields/many_to_many_view.js.coffee +3 -0
- data/app/assets/javascripts/locomotive/views/shared/form_view.js.coffee +6 -0
- data/app/assets/stylesheets/locomotive/backoffice/application.css.scss +8 -0
- data/app/assets/stylesheets/locomotive/inline_editor/layout.css.scss +1 -0
- data/app/controllers/locomotive/pages_controller.rb +4 -3
- data/app/helpers/locomotive/pages_helper.rb +13 -0
- data/app/models/locomotive/editable_control.rb +56 -0
- data/app/models/locomotive/editable_element.rb +90 -18
- data/app/models/locomotive/editable_file.rb +63 -1
- data/app/models/locomotive/editable_long_text.rb +2 -0
- data/app/models/locomotive/editable_short_text.rb +32 -5
- data/app/models/locomotive/extensions/page/editable_elements.rb +14 -45
- data/app/models/locomotive/extensions/page/listed.rb +1 -0
- data/app/models/locomotive/extensions/page/parse.rb +10 -3
- data/app/models/locomotive/extensions/page/render.rb +80 -0
- data/app/models/locomotive/extensions/page/templatized.rb +43 -2
- data/app/models/locomotive/extensions/site/subdomain_domains.rb +1 -0
- data/app/models/locomotive/page.rb +7 -1
- data/app/models/locomotive/site.rb +4 -0
- data/app/presenters/locomotive/content_entry_presenter.rb +1 -1
- data/app/presenters/locomotive/editable_control_presenter.rb +18 -0
- data/app/presenters/locomotive/page_presenter.rb +2 -2
- data/app/views/locomotive/pages/_editable_elements.html.haml +12 -0
- data/app/views/locomotive/pages/_form.html.haml +6 -4
- data/app/views/locomotive/pages/_page.html.haml +3 -0
- data/app/views/locomotive/shared/menu/_contents.html.haml +1 -1
- data/config/locales/admin_ui.fr.yml +29 -3
- data/config/locales/default.en.yml +1 -1
- data/config/locales/default.fr.yml +23 -16
- data/config/locales/formtastic.en.yml +1 -7
- data/config/locales/formtastic.fr.yml +7 -14
- data/lib/locomotive.rb +1 -1
- data/lib/locomotive/engine.rb +8 -8
- data/lib/locomotive/liquid.rb +1 -0
- data/lib/locomotive/liquid/drops/content_entry.rb +2 -2
- data/lib/locomotive/liquid/drops/page.rb +1 -1
- data/lib/locomotive/liquid/errors.rb +2 -0
- data/lib/locomotive/liquid/filters/base.rb +47 -0
- data/lib/locomotive/liquid/filters/html.rb +16 -76
- data/lib/locomotive/liquid/filters/misc.rb +43 -18
- data/lib/locomotive/liquid/filters/text.rb +18 -0
- data/lib/locomotive/liquid/tags/editable.rb +1 -1
- data/lib/locomotive/liquid/tags/editable/base.rb +15 -24
- data/lib/locomotive/liquid/tags/editable/control.rb +31 -0
- data/lib/locomotive/liquid/tags/editable/file.rb +17 -1
- data/lib/locomotive/liquid/tags/editable/long_text.rb +5 -3
- data/lib/locomotive/liquid/tags/editable/short_text.rb +9 -3
- data/lib/locomotive/liquid/tags/extends.rb +3 -1
- data/lib/locomotive/liquid/tags/locale_switcher.rb +2 -2
- data/lib/locomotive/liquid/tags/nav.rb +26 -7
- data/lib/locomotive/liquid/tags/paginate.rb +9 -2
- data/lib/locomotive/middlewares.rb +2 -1
- data/lib/locomotive/middlewares/inline_editor.rb +31 -0
- data/lib/locomotive/render.rb +5 -29
- data/lib/locomotive/version.rb +1 -1
- data/vendor/assets/javascripts/locomotive/cmd.js +31 -0
- data/vendor/assets/javascripts/locomotive/menu_toggler.js +1 -1
- metadata +89 -74
- data/app/middlewares/locomotive/inline_editor_middleware.rb +0 -24
- data/lib/locomotive/liquid/tags/blueprint.rb +0 -21
- data/lib/locomotive/liquid/tags/editable/content.rb +0 -49
- data/lib/locomotive/liquid/tags/jquery.rb +0 -17
@@ -7,14 +7,16 @@ module Locomotive
|
|
7
7
|
protected
|
8
8
|
|
9
9
|
def render_element(context, element)
|
10
|
-
|
10
|
+
content = element.default_content? ? render_default_content(context) : element.content
|
11
|
+
|
12
|
+
if editable?(context, element)
|
11
13
|
%{
|
12
14
|
<div class='editable-long-text' data-element-id='#{element.id}' data-element-index='#{element._index}'>
|
13
|
-
#{
|
15
|
+
#{content}
|
14
16
|
</div>
|
15
17
|
}
|
16
18
|
else
|
17
|
-
|
19
|
+
content
|
18
20
|
end
|
19
21
|
end
|
20
22
|
|
@@ -7,14 +7,16 @@ module Locomotive
|
|
7
7
|
protected
|
8
8
|
|
9
9
|
def render_element(context, element)
|
10
|
-
|
10
|
+
content = element.default_content? ? render_default_content(context) : element.content
|
11
|
+
|
12
|
+
if editable?(context, element)
|
11
13
|
%{
|
12
14
|
<span class='editable-short-text' data-element-id='#{element.id}' data-element-index='#{element._index}'>
|
13
|
-
#{
|
15
|
+
#{content}
|
14
16
|
</span>
|
15
17
|
}
|
16
18
|
else
|
17
|
-
|
19
|
+
content
|
18
20
|
end
|
19
21
|
end
|
20
22
|
|
@@ -22,6 +24,10 @@ module Locomotive
|
|
22
24
|
EditableShortText
|
23
25
|
end
|
24
26
|
|
27
|
+
def editable?(context, element)
|
28
|
+
context.registers[:inline_editor] && (!element.fixed? || (element.fixed? && !element.from_parent?))
|
29
|
+
end
|
30
|
+
|
25
31
|
end
|
26
32
|
|
27
33
|
::Liquid::Template.register_tag('editable_short_text', ShortText)
|
@@ -34,7 +34,9 @@ module Locomotive
|
|
34
34
|
raise PageNotFound.new("Page with fullpath '#{@template_name}' was not found") if @context[:parent_page].nil?
|
35
35
|
|
36
36
|
# be sure to work with a copy of the parent template otherwise there will be conflicts
|
37
|
-
parent_template = @context[:parent_page].template.clone
|
37
|
+
parent_template = @context[:parent_page].template.try(:clone)
|
38
|
+
|
39
|
+
raise PageNotTranslated.new("Page with fullpath '#{@template_name}' was not translated") if parent_template.nil?
|
38
40
|
|
39
41
|
@context[:parent_page].instance_variable_set(:@template, parent_template)
|
40
42
|
|
@@ -11,11 +11,11 @@ module Locomotive
|
|
11
11
|
#
|
12
12
|
# options:
|
13
13
|
# - label: iso (de, fr, en, ...etc), locale (Deutsch, Français, English, ...etc), title (page title)
|
14
|
-
# - sep: piece of html code
|
14
|
+
# - sep: piece of html code separating 2 locales
|
15
15
|
#
|
16
16
|
# notes:
|
17
17
|
# - "iso" is the default choice for label
|
18
|
-
# - " | " is the default
|
18
|
+
# - " | " is the default separating code
|
19
19
|
#
|
20
20
|
class LocaleSwitcher < ::Liquid::Tag
|
21
21
|
|
@@ -19,7 +19,7 @@ module Locomotive
|
|
19
19
|
def initialize(tag_name, markup, tokens, context)
|
20
20
|
if markup =~ Syntax
|
21
21
|
@source = ($1 || 'page').gsub(/"|'/, '')
|
22
|
-
@options = { :id => 'nav', :depth => 1, :class => '', :active_class => 'on' }
|
22
|
+
@options = { :id => 'nav', :depth => 1, :class => '', :active_class => 'on', :bootstrap => false }
|
23
23
|
markup.scan(::Liquid::TagAttributes) { |key, value| @options[key.to_sym] = value.gsub(/"|'/, '') }
|
24
24
|
|
25
25
|
@options[:exclude] = Regexp.new(@options[:exclude]) if @options[:exclude]
|
@@ -56,8 +56,8 @@ module Locomotive
|
|
56
56
|
output = children_output.join("\n")
|
57
57
|
|
58
58
|
if @options[:no_wrapper] != 'true'
|
59
|
-
list_class
|
60
|
-
output
|
59
|
+
list_class = !@options[:class].blank? ? %( class="#{@options[:class]}") : ''
|
60
|
+
output = %{<ul id="#{@options[:id]}"#{list_class}>\n#{output}</ul>}
|
61
61
|
end
|
62
62
|
|
63
63
|
output
|
@@ -90,21 +90,35 @@ module Locomotive
|
|
90
90
|
|
91
91
|
label = %{#{icon if @options[:icon] != 'after' }#{title}#{icon if @options[:icon] == 'after' }}
|
92
92
|
|
93
|
-
|
94
|
-
|
93
|
+
link_options = caret = ''
|
94
|
+
href = "/#{page.fullpath}"
|
95
|
+
|
96
|
+
if render_children_for_page?(page, depth) && bootstrap?
|
97
|
+
css += ' dropdown'
|
98
|
+
link_options = %{ class="dropdown-toggle" data-toogle="dropdown"}
|
99
|
+
href = '#'
|
100
|
+
caret = %{ <b class="caret"></b>}
|
101
|
+
end
|
102
|
+
|
103
|
+
output = %{<li id="#{page.slug.to_s.dasherize}-link" class="link#{selected} #{css}">}
|
104
|
+
output << %{<a href="#{href}"#{link_options}>#{label}#{caret}</a>}
|
95
105
|
output << render_entry_children(page, depth.succ) if (depth.succ <= @options[:depth].to_i)
|
96
106
|
output << %{</li>}
|
97
107
|
|
98
108
|
output.strip
|
99
109
|
end
|
100
110
|
|
111
|
+
def render_children_for_page?(page, depth)
|
112
|
+
depth.succ <= @options[:depth].to_i && page.children.reject { |c| !include_page?(c) }.any?
|
113
|
+
end
|
114
|
+
|
101
115
|
# Recursively creates a nested unordered list for the depth specified
|
102
116
|
def render_entry_children(page, depth)
|
103
117
|
output = %{}
|
104
118
|
|
105
119
|
children = page.children_with_minimal_attributes( @options[:add_attributes] ).reject { |c| !include_page?(c) }
|
106
120
|
if children.present?
|
107
|
-
output = %{<ul id="#{@options[:id]}-#{page.slug.dasherize}">}
|
121
|
+
output = %{<ul id="#{@options[:id]}-#{page.slug.to_s.dasherize}" class="#{bootstrap? ? 'dropdown-menu' : ''}">}
|
108
122
|
children.each do |c, page|
|
109
123
|
css = []
|
110
124
|
css << 'first' if children.first == c
|
@@ -129,8 +143,13 @@ module Locomotive
|
|
129
143
|
end
|
130
144
|
end
|
131
145
|
|
132
|
-
|
146
|
+
def bootstrap?
|
147
|
+
@options[:bootstrap] == 'true'
|
148
|
+
end
|
149
|
+
|
133
150
|
end
|
151
|
+
|
152
|
+
::Liquid::Template.register_tag('nav', Nav)
|
134
153
|
end
|
135
154
|
end
|
136
155
|
end
|
@@ -46,7 +46,7 @@ module Locomotive
|
|
46
46
|
end
|
47
47
|
page_count, current_page = pagination['total_pages'], pagination['current_page']
|
48
48
|
|
49
|
-
path = context['
|
49
|
+
path = sanitize_path(context['fullpath'])
|
50
50
|
|
51
51
|
pagination['previous'] = link(I18n.t('pagination.previous'), current_page - 1, path) if pagination['previous_page']
|
52
52
|
pagination['next'] = link(I18n.t('pagination.next'), current_page + 1, path) if pagination['next_page']
|
@@ -83,6 +83,12 @@ module Locomotive
|
|
83
83
|
|
84
84
|
private
|
85
85
|
|
86
|
+
def sanitize_path(path)
|
87
|
+
_path = path.gsub(/page=[0-9]+&?/, '').gsub(/_pjax=true&?/, '')
|
88
|
+
_path = _path.slice(0..-2) if _path.last == '?' || _path.last == '&'
|
89
|
+
_path
|
90
|
+
end
|
91
|
+
|
86
92
|
def window_size
|
87
93
|
3
|
88
94
|
end
|
@@ -92,7 +98,8 @@ module Locomotive
|
|
92
98
|
end
|
93
99
|
|
94
100
|
def link(title, page, path)
|
95
|
-
{
|
101
|
+
_path = %(#{path}#{path.include?('?') ? '&' : '?'}page=#{page})
|
102
|
+
{ 'title' => title, 'url' => _path, 'is_link' => true }
|
96
103
|
end
|
97
104
|
end
|
98
105
|
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Locomotive
|
2
|
+
module Middlewares
|
3
|
+
class InlineEditor
|
4
|
+
|
5
|
+
def initialize(app, opts = {})
|
6
|
+
@app = app
|
7
|
+
end
|
8
|
+
|
9
|
+
def call(env)
|
10
|
+
response = @app.call(env)
|
11
|
+
|
12
|
+
unless response[1]['Editable'].blank?
|
13
|
+
html = response.last.body.to_s.gsub '</body>', %(
|
14
|
+
<a href="_admin"
|
15
|
+
onmouseout="this.style.backgroundPosition='0px 0px'"
|
16
|
+
onmouseover="this.style.backgroundPosition='0px -45px'"
|
17
|
+
onmousedown="this.style.backgroundPosition='0px -90px'"
|
18
|
+
onmouseup="this.style.backgroundPosition='0px 0px'"
|
19
|
+
style="display: block;z-index: 1031;position: fixed;top: 10px; right: 10px;width: 48px; height: 45px;text-indent:-9999px;text-decoration:none;background: transparent url\('/assets/locomotive/icons/start.png'\) no-repeat 0 0;">
|
20
|
+
Admin</a>
|
21
|
+
</body>
|
22
|
+
)
|
23
|
+
[response[0], response[1], [html]]
|
24
|
+
else
|
25
|
+
response
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
data/lib/locomotive/render.rb
CHANGED
@@ -26,23 +26,7 @@ module Locomotive
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def locomotive_page
|
29
|
-
|
30
|
-
|
31
|
-
if page = current_site.pages.any_in(:fullpath => [*path]).first
|
32
|
-
if not page.published? and current_locomotive_account.nil?
|
33
|
-
page = nil
|
34
|
-
else
|
35
|
-
if page.templatized?
|
36
|
-
@content_entry = page.fetch_target_entry(File.basename(path.first))
|
37
|
-
|
38
|
-
if @content_entry.nil? || (!@content_entry.visible? && current_locomotive_account.nil?) # content instance not found or not visible
|
39
|
-
page = nil
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
page || not_found_page
|
29
|
+
current_site.fetch_page self.locomotive_page_path, current_locomotive_account.present?
|
46
30
|
end
|
47
31
|
|
48
32
|
def locomotive_page_path
|
@@ -53,11 +37,6 @@ module Locomotive
|
|
53
37
|
|
54
38
|
path = 'index' if path.blank? || path == '_edit'
|
55
39
|
|
56
|
-
if path != 'index'
|
57
|
-
dirname = File.dirname(path).gsub(/^\.$/, '') # also look for templatized page path
|
58
|
-
path = [path, File.join(dirname, 'content_type_template').gsub(/^\//, '')]
|
59
|
-
end
|
60
|
-
|
61
40
|
path
|
62
41
|
end
|
63
42
|
|
@@ -70,6 +49,7 @@ module Locomotive
|
|
70
49
|
'current_page' => self.params[:page],
|
71
50
|
'params' => self.params,
|
72
51
|
'path' => request.path,
|
52
|
+
'fullpath' => request.fullpath,
|
73
53
|
'url' => request.url,
|
74
54
|
'now' => Time.now.utc,
|
75
55
|
'today' => Date.today,
|
@@ -83,8 +63,8 @@ module Locomotive
|
|
83
63
|
assigns.merge!(flash.to_hash.stringify_keys) # data from public submissions
|
84
64
|
|
85
65
|
if @page.templatized? # add instance from content type
|
86
|
-
assigns['entry'] = @content_entry
|
87
|
-
assigns[@page.target_entry_name] = @content_entry # just here to help to write readable liquid code
|
66
|
+
assigns['entry'] = @page.content_entry
|
67
|
+
assigns[@page.target_entry_name] = @page.content_entry # just here to help to write readable liquid code
|
88
68
|
end
|
89
69
|
|
90
70
|
registers = {
|
@@ -101,7 +81,7 @@ module Locomotive
|
|
101
81
|
def prepare_and_set_response(output)
|
102
82
|
flash.discard
|
103
83
|
|
104
|
-
response.headers['Content-Type'] =
|
84
|
+
response.headers['Content-Type'] = "#{@page.response_type}; charset=utf-8"
|
105
85
|
response.headers['Editable'] = 'true' unless self.editing_page? || current_locomotive_account.nil?
|
106
86
|
|
107
87
|
if @page.with_cache?
|
@@ -115,10 +95,6 @@ module Locomotive
|
|
115
95
|
render :text => output, :layout => false, :status => page_status unless performed?
|
116
96
|
end
|
117
97
|
|
118
|
-
def not_found_page
|
119
|
-
current_site.pages.not_found.published.first
|
120
|
-
end
|
121
|
-
|
122
98
|
def editing_page?
|
123
99
|
!!@editing
|
124
100
|
end
|
data/lib/locomotive/version.rb
CHANGED
@@ -0,0 +1,31 @@
|
|
1
|
+
/**
|
2
|
+
* Version 0.0.1
|
3
|
+
* Catch the CTRL+S keys combination and trigger a callback
|
4
|
+
* Didier Lafforgue
|
5
|
+
*/
|
6
|
+
|
7
|
+
$.cmd = function(key, callback, args, options) {
|
8
|
+
var keyCode = key.charCodeAt(0);
|
9
|
+
var altKeyCode = keyCode + (32 * (keyCode < 97 ? 1 : -1));
|
10
|
+
|
11
|
+
options = (options || { ignoreCase: false });
|
12
|
+
|
13
|
+
if (!options.ignoreCase) altKeyCode = null;
|
14
|
+
|
15
|
+
doc = options.document || window.document;
|
16
|
+
|
17
|
+
$(doc).keydown(function(e) {
|
18
|
+
var isCtrl = false;
|
19
|
+
|
20
|
+
if (!args) args = []; // IE barks when args is null
|
21
|
+
|
22
|
+
if (e.ctrlKey || e.metaKey) isCtrl = true;
|
23
|
+
|
24
|
+
if ((keyCode == e.which || altKeyCode == e.which) && isCtrl) {
|
25
|
+
e.preventDefault();
|
26
|
+
callback.apply(this, args);
|
27
|
+
return false;
|
28
|
+
}
|
29
|
+
});
|
30
|
+
|
31
|
+
};
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: locomotive_cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
4
|
+
version: 2.0.0.rc4
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &2156428480 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,21 +21,21 @@ dependencies:
|
|
21
21
|
version: 0.9.2
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2156428480
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rails
|
27
|
-
requirement: &
|
27
|
+
requirement: &2156426280 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 3.2.
|
32
|
+
version: 3.2.3
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2156426280
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: devise
|
38
|
-
requirement: &
|
38
|
+
requirement: &2156440220 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.5.3
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2156440220
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: cancan
|
49
|
-
requirement: &
|
49
|
+
requirement: &2156437720 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.6.7
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2156437720
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: mongo
|
60
|
-
requirement: &
|
60
|
+
requirement: &2156448180 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: 1.5.2
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2156448180
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: bson_ext
|
71
|
-
requirement: &
|
71
|
+
requirement: &2156445200 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,21 +76,21 @@ dependencies:
|
|
76
76
|
version: 1.5.2
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *2156445200
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: mongoid
|
82
|
-
requirement: &
|
82
|
+
requirement: &2156444480 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
86
86
|
- !ruby/object:Gem::Version
|
87
|
-
version: 2.4.
|
87
|
+
version: 2.4.6
|
88
88
|
type: :runtime
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *2156444480
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
92
|
name: locomotive-mongoid-tree
|
93
|
-
requirement: &
|
93
|
+
requirement: &2156443660 !ruby/object:Gem::Requirement
|
94
94
|
none: false
|
95
95
|
requirements:
|
96
96
|
- - ~>
|
@@ -98,21 +98,21 @@ dependencies:
|
|
98
98
|
version: 0.6.2
|
99
99
|
type: :runtime
|
100
100
|
prerelease: false
|
101
|
-
version_requirements: *
|
101
|
+
version_requirements: *2156443660
|
102
102
|
- !ruby/object:Gem::Dependency
|
103
103
|
name: custom_fields
|
104
|
-
requirement: &
|
104
|
+
requirement: &2156457700 !ruby/object:Gem::Requirement
|
105
105
|
none: false
|
106
106
|
requirements:
|
107
107
|
- - ~>
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version: 2.0.0.
|
109
|
+
version: 2.0.0.rc9
|
110
110
|
type: :runtime
|
111
111
|
prerelease: false
|
112
|
-
version_requirements: *
|
112
|
+
version_requirements: *2156457700
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: kaminari
|
115
|
-
requirement: &
|
115
|
+
requirement: &2156456400 !ruby/object:Gem::Requirement
|
116
116
|
none: false
|
117
117
|
requirements:
|
118
118
|
- - ~>
|
@@ -120,10 +120,10 @@ dependencies:
|
|
120
120
|
version: 0.13.0
|
121
121
|
type: :runtime
|
122
122
|
prerelease: false
|
123
|
-
version_requirements: *
|
123
|
+
version_requirements: *2156456400
|
124
124
|
- !ruby/object:Gem::Dependency
|
125
125
|
name: haml
|
126
|
-
requirement: &
|
126
|
+
requirement: &2156451720 !ruby/object:Gem::Requirement
|
127
127
|
none: false
|
128
128
|
requirements:
|
129
129
|
- - ~>
|
@@ -131,10 +131,10 @@ dependencies:
|
|
131
131
|
version: 3.1.4
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
|
-
version_requirements: *
|
134
|
+
version_requirements: *2156451720
|
135
135
|
- !ruby/object:Gem::Dependency
|
136
136
|
name: jquery-rails
|
137
|
-
requirement: &
|
137
|
+
requirement: &2156466360 !ruby/object:Gem::Requirement
|
138
138
|
none: false
|
139
139
|
requirements:
|
140
140
|
- - ~>
|
@@ -142,10 +142,10 @@ dependencies:
|
|
142
142
|
version: 1.0.16
|
143
143
|
type: :runtime
|
144
144
|
prerelease: false
|
145
|
-
version_requirements: *
|
145
|
+
version_requirements: *2156466360
|
146
146
|
- !ruby/object:Gem::Dependency
|
147
147
|
name: rails-backbone
|
148
|
-
requirement: &
|
148
|
+
requirement: &2156465280 !ruby/object:Gem::Requirement
|
149
149
|
none: false
|
150
150
|
requirements:
|
151
151
|
- - ~>
|
@@ -153,10 +153,10 @@ dependencies:
|
|
153
153
|
version: 0.6.1
|
154
154
|
type: :runtime
|
155
155
|
prerelease: false
|
156
|
-
version_requirements: *
|
156
|
+
version_requirements: *2156465280
|
157
157
|
- !ruby/object:Gem::Dependency
|
158
158
|
name: codemirror-rails
|
159
|
-
requirement: &
|
159
|
+
requirement: &2156463980 !ruby/object:Gem::Requirement
|
160
160
|
none: false
|
161
161
|
requirements:
|
162
162
|
- - ~>
|
@@ -164,10 +164,10 @@ dependencies:
|
|
164
164
|
version: '2.21'
|
165
165
|
type: :runtime
|
166
166
|
prerelease: false
|
167
|
-
version_requirements: *
|
167
|
+
version_requirements: *2156463980
|
168
168
|
- !ruby/object:Gem::Dependency
|
169
169
|
name: locomotive-tinymce-rails
|
170
|
-
requirement: &
|
170
|
+
requirement: &2156461160 !ruby/object:Gem::Requirement
|
171
171
|
none: false
|
172
172
|
requirements:
|
173
173
|
- - ~>
|
@@ -175,10 +175,10 @@ dependencies:
|
|
175
175
|
version: 3.4.7.1
|
176
176
|
type: :runtime
|
177
177
|
prerelease: false
|
178
|
-
version_requirements: *
|
178
|
+
version_requirements: *2156461160
|
179
179
|
- !ruby/object:Gem::Dependency
|
180
180
|
name: locomotive-aloha-rails
|
181
|
-
requirement: &
|
181
|
+
requirement: &2156474220 !ruby/object:Gem::Requirement
|
182
182
|
none: false
|
183
183
|
requirements:
|
184
184
|
- - ~>
|
@@ -186,10 +186,10 @@ dependencies:
|
|
186
186
|
version: 0.20.1.1
|
187
187
|
type: :runtime
|
188
188
|
prerelease: false
|
189
|
-
version_requirements: *
|
189
|
+
version_requirements: *2156474220
|
190
190
|
- !ruby/object:Gem::Dependency
|
191
191
|
name: flash_cookie_session
|
192
|
-
requirement: &
|
192
|
+
requirement: &2156472380 !ruby/object:Gem::Requirement
|
193
193
|
none: false
|
194
194
|
requirements:
|
195
195
|
- - ~>
|
@@ -197,10 +197,10 @@ dependencies:
|
|
197
197
|
version: 1.1.1
|
198
198
|
type: :runtime
|
199
199
|
prerelease: false
|
200
|
-
version_requirements: *
|
200
|
+
version_requirements: *2156472380
|
201
201
|
- !ruby/object:Gem::Dependency
|
202
202
|
name: locomotive_liquid
|
203
|
-
requirement: &
|
203
|
+
requirement: &2156470960 !ruby/object:Gem::Requirement
|
204
204
|
none: false
|
205
205
|
requirements:
|
206
206
|
- - =
|
@@ -208,10 +208,10 @@ dependencies:
|
|
208
208
|
version: 2.2.2
|
209
209
|
type: :runtime
|
210
210
|
prerelease: false
|
211
|
-
version_requirements: *
|
211
|
+
version_requirements: *2156470960
|
212
212
|
- !ruby/object:Gem::Dependency
|
213
213
|
name: formtastic
|
214
|
-
requirement: &
|
214
|
+
requirement: &2156469420 !ruby/object:Gem::Requirement
|
215
215
|
none: false
|
216
216
|
requirements:
|
217
217
|
- - ~>
|
@@ -219,10 +219,10 @@ dependencies:
|
|
219
219
|
version: 2.0.2
|
220
220
|
type: :runtime
|
221
221
|
prerelease: false
|
222
|
-
version_requirements: *
|
222
|
+
version_requirements: *2156469420
|
223
223
|
- !ruby/object:Gem::Dependency
|
224
224
|
name: responders
|
225
|
-
requirement: &
|
225
|
+
requirement: &2156482960 !ruby/object:Gem::Requirement
|
226
226
|
none: false
|
227
227
|
requirements:
|
228
228
|
- - ~>
|
@@ -230,10 +230,10 @@ dependencies:
|
|
230
230
|
version: 0.6.4
|
231
231
|
type: :runtime
|
232
232
|
prerelease: false
|
233
|
-
version_requirements: *
|
233
|
+
version_requirements: *2156482960
|
234
234
|
- !ruby/object:Gem::Dependency
|
235
235
|
name: cells
|
236
|
-
requirement: &
|
236
|
+
requirement: &2156476380 !ruby/object:Gem::Requirement
|
237
237
|
none: false
|
238
238
|
requirements:
|
239
239
|
- - ~>
|
@@ -241,10 +241,10 @@ dependencies:
|
|
241
241
|
version: 3.8.0
|
242
242
|
type: :runtime
|
243
243
|
prerelease: false
|
244
|
-
version_requirements: *
|
244
|
+
version_requirements: *2156476380
|
245
245
|
- !ruby/object:Gem::Dependency
|
246
246
|
name: RedCloth
|
247
|
-
requirement: &
|
247
|
+
requirement: &2156495100 !ruby/object:Gem::Requirement
|
248
248
|
none: false
|
249
249
|
requirements:
|
250
250
|
- - ~>
|
@@ -252,10 +252,10 @@ dependencies:
|
|
252
252
|
version: 4.2.8
|
253
253
|
type: :runtime
|
254
254
|
prerelease: false
|
255
|
-
version_requirements: *
|
255
|
+
version_requirements: *2156495100
|
256
256
|
- !ruby/object:Gem::Dependency
|
257
257
|
name: sanitize
|
258
|
-
requirement: &
|
258
|
+
requirement: &2156493720 !ruby/object:Gem::Requirement
|
259
259
|
none: false
|
260
260
|
requirements:
|
261
261
|
- - ~>
|
@@ -263,10 +263,10 @@ dependencies:
|
|
263
263
|
version: 2.0.3
|
264
264
|
type: :runtime
|
265
265
|
prerelease: false
|
266
|
-
version_requirements: *
|
266
|
+
version_requirements: *2156493720
|
267
267
|
- !ruby/object:Gem::Dependency
|
268
268
|
name: highline
|
269
|
-
requirement: &
|
269
|
+
requirement: &2156504940 !ruby/object:Gem::Requirement
|
270
270
|
none: false
|
271
271
|
requirements:
|
272
272
|
- - ~>
|
@@ -274,10 +274,10 @@ dependencies:
|
|
274
274
|
version: 1.6.2
|
275
275
|
type: :runtime
|
276
276
|
prerelease: false
|
277
|
-
version_requirements: *
|
277
|
+
version_requirements: *2156504940
|
278
278
|
- !ruby/object:Gem::Dependency
|
279
279
|
name: rmagick
|
280
|
-
requirement: &
|
280
|
+
requirement: &2156503960 !ruby/object:Gem::Requirement
|
281
281
|
none: false
|
282
282
|
requirements:
|
283
283
|
- - ~>
|
@@ -285,10 +285,10 @@ dependencies:
|
|
285
285
|
version: 2.12.2
|
286
286
|
type: :runtime
|
287
287
|
prerelease: false
|
288
|
-
version_requirements: *
|
288
|
+
version_requirements: *2156503960
|
289
289
|
- !ruby/object:Gem::Dependency
|
290
290
|
name: carrierwave-mongoid
|
291
|
-
requirement: &
|
291
|
+
requirement: &2156500700 !ruby/object:Gem::Requirement
|
292
292
|
none: false
|
293
293
|
requirements:
|
294
294
|
- - ~>
|
@@ -296,10 +296,21 @@ dependencies:
|
|
296
296
|
version: 0.1.3
|
297
297
|
type: :runtime
|
298
298
|
prerelease: false
|
299
|
-
version_requirements: *
|
299
|
+
version_requirements: *2156500700
|
300
|
+
- !ruby/object:Gem::Dependency
|
301
|
+
name: carrierwave
|
302
|
+
requirement: &2156515160 !ruby/object:Gem::Requirement
|
303
|
+
none: false
|
304
|
+
requirements:
|
305
|
+
- - ~>
|
306
|
+
- !ruby/object:Gem::Version
|
307
|
+
version: 0.6.0
|
308
|
+
type: :runtime
|
309
|
+
prerelease: false
|
310
|
+
version_requirements: *2156515160
|
300
311
|
- !ruby/object:Gem::Dependency
|
301
312
|
name: fog
|
302
|
-
requirement: &
|
313
|
+
requirement: &2156512280 !ruby/object:Gem::Requirement
|
303
314
|
none: false
|
304
315
|
requirements:
|
305
316
|
- - ~>
|
@@ -307,10 +318,10 @@ dependencies:
|
|
307
318
|
version: 1.1.2
|
308
319
|
type: :runtime
|
309
320
|
prerelease: false
|
310
|
-
version_requirements: *
|
321
|
+
version_requirements: *2156512280
|
311
322
|
- !ruby/object:Gem::Dependency
|
312
323
|
name: dragonfly
|
313
|
-
requirement: &
|
324
|
+
requirement: &2156509840 !ruby/object:Gem::Requirement
|
314
325
|
none: false
|
315
326
|
requirements:
|
316
327
|
- - ~>
|
@@ -318,10 +329,10 @@ dependencies:
|
|
318
329
|
version: 0.9.8
|
319
330
|
type: :runtime
|
320
331
|
prerelease: false
|
321
|
-
version_requirements: *
|
332
|
+
version_requirements: *2156509840
|
322
333
|
- !ruby/object:Gem::Dependency
|
323
334
|
name: rack-cache
|
324
|
-
requirement: &
|
335
|
+
requirement: &2156508580 !ruby/object:Gem::Requirement
|
325
336
|
none: false
|
326
337
|
requirements:
|
327
338
|
- - ~>
|
@@ -329,10 +340,10 @@ dependencies:
|
|
329
340
|
version: '1.1'
|
330
341
|
type: :runtime
|
331
342
|
prerelease: false
|
332
|
-
version_requirements: *
|
343
|
+
version_requirements: *2156508580
|
333
344
|
- !ruby/object:Gem::Dependency
|
334
345
|
name: mimetype-fu
|
335
|
-
requirement: &
|
346
|
+
requirement: &2156521480 !ruby/object:Gem::Requirement
|
336
347
|
none: false
|
337
348
|
requirements:
|
338
349
|
- - ~>
|
@@ -340,10 +351,10 @@ dependencies:
|
|
340
351
|
version: 0.1.2
|
341
352
|
type: :runtime
|
342
353
|
prerelease: false
|
343
|
-
version_requirements: *
|
354
|
+
version_requirements: *2156521480
|
344
355
|
- !ruby/object:Gem::Dependency
|
345
356
|
name: httparty
|
346
|
-
requirement: &
|
357
|
+
requirement: &2156516860 !ruby/object:Gem::Requirement
|
347
358
|
none: false
|
348
359
|
requirements:
|
349
360
|
- - ~>
|
@@ -351,10 +362,10 @@ dependencies:
|
|
351
362
|
version: 0.8.1
|
352
363
|
type: :runtime
|
353
364
|
prerelease: false
|
354
|
-
version_requirements: *
|
365
|
+
version_requirements: *2156516860
|
355
366
|
- !ruby/object:Gem::Dependency
|
356
367
|
name: actionmailer-with-request
|
357
|
-
requirement: &
|
368
|
+
requirement: &2156515560 !ruby/object:Gem::Requirement
|
358
369
|
none: false
|
359
370
|
requirements:
|
360
371
|
- - ~>
|
@@ -362,7 +373,7 @@ dependencies:
|
|
362
373
|
version: 0.3.0
|
363
374
|
type: :runtime
|
364
375
|
prerelease: false
|
365
|
-
version_requirements: *
|
376
|
+
version_requirements: *2156515560
|
366
377
|
description: Locomotive is a next generation CMS system with sexy admin tools, liquid
|
367
378
|
templating, and inline editing powered by mongodb and rails 3.2
|
368
379
|
email:
|
@@ -404,6 +415,7 @@ files:
|
|
404
415
|
- app/assets/images/locomotive/icons/flags/ru.png
|
405
416
|
- app/assets/images/locomotive/icons/membership_edit.png
|
406
417
|
- app/assets/images/locomotive/icons/membership_lock.png
|
418
|
+
- app/assets/images/locomotive/icons/start.png
|
407
419
|
- app/assets/images/locomotive/inline_editor/back.png
|
408
420
|
- app/assets/images/locomotive/list/empty.png
|
409
421
|
- app/assets/images/locomotive/list/icons/cross.png
|
@@ -473,6 +485,7 @@ files:
|
|
473
485
|
- app/assets/javascripts/locomotive/views/content_types/new_view.js.coffee
|
474
486
|
- app/assets/javascripts/locomotive/views/content_types/select_options_view.js.coffee
|
475
487
|
- app/assets/javascripts/locomotive/views/current_site/edit_view.js.coffee
|
488
|
+
- app/assets/javascripts/locomotive/views/editable_elements/control_view.js.coffee
|
476
489
|
- app/assets/javascripts/locomotive/views/editable_elements/edit_all_view.js.coffee
|
477
490
|
- app/assets/javascripts/locomotive/views/editable_elements/file_view.js.coffee
|
478
491
|
- app/assets/javascripts/locomotive/views/editable_elements/long_text_view.js.coffee
|
@@ -618,12 +631,12 @@ files:
|
|
618
631
|
- app/inputs/locomotive/toggle_input.rb
|
619
632
|
- app/mailers/locomotive/devise_mailer.rb
|
620
633
|
- app/mailers/locomotive/notifications.rb
|
621
|
-
- app/middlewares/locomotive/inline_editor_middleware.rb
|
622
634
|
- app/models/locomotive/ability.rb
|
623
635
|
- app/models/locomotive/account.rb
|
624
636
|
- app/models/locomotive/content_asset.rb
|
625
637
|
- app/models/locomotive/content_entry.rb
|
626
638
|
- app/models/locomotive/content_type.rb
|
639
|
+
- app/models/locomotive/editable_control.rb
|
627
640
|
- app/models/locomotive/editable_element.rb
|
628
641
|
- app/models/locomotive/editable_file.rb
|
629
642
|
- app/models/locomotive/editable_long_text.rb
|
@@ -654,6 +667,7 @@ files:
|
|
654
667
|
- app/presenters/locomotive/content_asset_presenter.rb
|
655
668
|
- app/presenters/locomotive/content_entry_presenter.rb
|
656
669
|
- app/presenters/locomotive/content_type_presenter.rb
|
670
|
+
- app/presenters/locomotive/editable_control_presenter.rb
|
657
671
|
- app/presenters/locomotive/editable_element_presenter.rb
|
658
672
|
- app/presenters/locomotive/editable_file_presenter.rb
|
659
673
|
- app/presenters/locomotive/editable_long_text_presenter.rb
|
@@ -837,15 +851,15 @@ files:
|
|
837
851
|
- lib/locomotive/liquid/drops/site.rb
|
838
852
|
- lib/locomotive/liquid/drops/uploader.rb
|
839
853
|
- lib/locomotive/liquid/errors.rb
|
854
|
+
- lib/locomotive/liquid/filters/base.rb
|
840
855
|
- lib/locomotive/liquid/filters/date.rb
|
841
856
|
- lib/locomotive/liquid/filters/html.rb
|
842
857
|
- lib/locomotive/liquid/filters/misc.rb
|
843
858
|
- lib/locomotive/liquid/filters/resize.rb
|
844
859
|
- lib/locomotive/liquid/filters/text.rb
|
845
|
-
- lib/locomotive/liquid/tags/blueprint.rb
|
846
860
|
- lib/locomotive/liquid/tags/consume.rb
|
847
861
|
- lib/locomotive/liquid/tags/editable/base.rb
|
848
|
-
- lib/locomotive/liquid/tags/editable/
|
862
|
+
- lib/locomotive/liquid/tags/editable/control.rb
|
849
863
|
- lib/locomotive/liquid/tags/editable/file.rb
|
850
864
|
- lib/locomotive/liquid/tags/editable/long_text.rb
|
851
865
|
- lib/locomotive/liquid/tags/editable/short_text.rb
|
@@ -854,7 +868,6 @@ files:
|
|
854
868
|
- lib/locomotive/liquid/tags/google_analytics.rb
|
855
869
|
- lib/locomotive/liquid/tags/inherited_block.rb
|
856
870
|
- lib/locomotive/liquid/tags/inline_editor.rb
|
857
|
-
- lib/locomotive/liquid/tags/jquery.rb
|
858
871
|
- lib/locomotive/liquid/tags/locale_switcher.rb
|
859
872
|
- lib/locomotive/liquid/tags/nav.rb
|
860
873
|
- lib/locomotive/liquid/tags/paginate.rb
|
@@ -865,6 +878,7 @@ files:
|
|
865
878
|
- lib/locomotive/logger.rb
|
866
879
|
- lib/locomotive/middlewares/cache.rb
|
867
880
|
- lib/locomotive/middlewares/fonts.rb
|
881
|
+
- lib/locomotive/middlewares/inline_editor.rb
|
868
882
|
- lib/locomotive/middlewares/seo_trailing_slash.rb
|
869
883
|
- lib/locomotive/middlewares.rb
|
870
884
|
- lib/locomotive/mongoid/document.rb
|
@@ -884,6 +898,7 @@ files:
|
|
884
898
|
- public/favicon.ico
|
885
899
|
- vendor/assets/javascripts/locomotive/backbone.modelbinding.js
|
886
900
|
- vendor/assets/javascripts/locomotive/backbone.sync.js
|
901
|
+
- vendor/assets/javascripts/locomotive/cmd.js
|
887
902
|
- vendor/assets/javascripts/locomotive/cookies.js
|
888
903
|
- vendor/assets/javascripts/locomotive/datepicker_fr.js
|
889
904
|
- vendor/assets/javascripts/locomotive/editable_field.js
|
@@ -935,7 +950,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
935
950
|
version: '0'
|
936
951
|
segments:
|
937
952
|
- 0
|
938
|
-
hash:
|
953
|
+
hash: 55090259143407847
|
939
954
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
940
955
|
none: false
|
941
956
|
requirements:
|