scrivito_editors 0.0.11 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 18977d126e4b35ad587ce7fb5037209c057d903b
4
- data.tar.gz: 9031005f81cffa1fe61c817b8e25fb17038d5ffe
3
+ metadata.gz: 664c752683fce0e45ced59c64ddc88bbd8e2571d
4
+ data.tar.gz: 80d4b66240203c032fc7a61ea323142eb40a6f16
5
5
  SHA512:
6
- metadata.gz: 9bdc8e2382aa12229772012003692b34116b92ff90a760c0dbd34a3a859da4d3fcded838a5f054df5790ab5a33a62e9dbe1f3be8762a395163745e6858a56edc
7
- data.tar.gz: df60487fb2c03b11209b818f55395836d722b3fccbbb22a93dd3991ca2b0717f9759141d7299ff103264e37f4266321e97f329870c9067bca574d44c5e895609
6
+ metadata.gz: d4c34cea254c1c34308d3384e82830c6ede0acac50b0ed205795557b2b4115017cdd7a8dbe5d777ec985f621f0e525fffb6c84ced188cd371ceefae40fbdb425
7
+ data.tar.gz: 09758ec3293500ba33c49913af4e21abbb1d605967be1214dcdb467d2953ed5574f986e149789fabe03688e1d0054b650750f020b2f025e72b7c1ddd9d9b642a
@@ -1,3 +1,9 @@
1
+ # v0.0.12
2
+ * Rails no longer supports the `vendor` directory, so we moved the assets into the standard asset
3
+ folder, so that they are integrated into the asset pipeline automatically.
4
+ * Integrate new Scrivito SDK JavaScript events.
5
+ * Editing `enum` and `multienum` fields no longer triggers a page or widget reload.
6
+
1
7
  # v0.0.11
2
8
  * Added "Close" button to the HTML editor, to have an additional option to close the editor,
3
9
  besides hitting "Esc".
@@ -1,51 +1,52 @@
1
1
  $ ->
2
2
  # Define editor behavior for date attributes.
3
3
 
4
- scrivito.on 'editing', ->
5
- template = ->
6
- $('<input />')
7
- .attr('type', 'text')
8
-
9
- onKeyup = (event) ->
10
- key = event.keyCode || event.which
11
-
12
- switch key
13
- when 27 # Esc
14
- # Prevent the property view to close when the ESC key is pressed.
15
- event.stopPropagation()
16
-
17
- save = (dateTimeText) ->
18
- element = $(this)
19
- cmsField = element.data('cmsField')
20
-
21
- if dateTimeText? && dateTimeText.length > 0
22
- dateTimeText = new Date(dateTimeText)
23
-
24
- cmsField.scrivito('save', dateTimeText)
25
- .done ->
26
- cmsField.trigger('save.scrivito_editors')
27
- cmsField.trigger('scrivito_reload')
28
-
29
- $('body').on 'click', '[data-scrivito-field-type="date"]:not(.hasDatepicker):not([data-editor]), [data-editor="date"]', (event) ->
30
- event.preventDefault()
31
-
32
- cmsField = $(this)
33
- content = cmsField.html().trim()
34
- dateFormat = cmsField.attr('data-date-format') || 'yy-mm-dd'
35
- timeFormat = cmsField.attr('data-time-format') || 'HH:mm:ss'
36
-
37
- $('body').keyup(onKeyup)
38
-
39
- template()
40
- .data('cmsField', cmsField)
41
- .insertAfter(cmsField)
42
- .val(content)
43
- .keyup(onKeyup)
44
- .datetimepicker(
45
- dateFormat: dateFormat
46
- timeFormat: timeFormat
47
- onClose: save
48
- )
49
- .focus()
50
-
51
- cmsField.hide()
4
+ scrivito.on 'load', ->
5
+ if scrivito.in_editable_view()
6
+ template = ->
7
+ $('<input />')
8
+ .attr('type', 'text')
9
+
10
+ onKeyup = (event) ->
11
+ key = event.keyCode || event.which
12
+
13
+ switch key
14
+ when 27 # Esc
15
+ # Prevent the property view to close when the ESC key is pressed.
16
+ event.stopPropagation()
17
+
18
+ save = (dateTimeText) ->
19
+ element = $(this)
20
+ cmsField = element.data('cmsField')
21
+
22
+ if dateTimeText? && dateTimeText.length > 0
23
+ dateTimeText = new Date(dateTimeText)
24
+
25
+ cmsField.scrivito('save', dateTimeText)
26
+ .done ->
27
+ cmsField.trigger('save.scrivito_editors')
28
+ cmsField.trigger('scrivito_reload')
29
+
30
+ $('body').on 'click', '[data-scrivito-field-type="date"]:not(.hasDatepicker):not([data-editor]), [data-editor="date"]', (event) ->
31
+ event.preventDefault()
32
+
33
+ cmsField = $(this)
34
+ content = cmsField.html().trim()
35
+ dateFormat = cmsField.attr('data-date-format') || 'yy-mm-dd'
36
+ timeFormat = cmsField.attr('data-time-format') || 'HH:mm:ss'
37
+
38
+ $('body').keyup(onKeyup)
39
+
40
+ template()
41
+ .data('cmsField', cmsField)
42
+ .insertAfter(cmsField)
43
+ .val(content)
44
+ .keyup(onKeyup)
45
+ .datetimepicker(
46
+ dateFormat: dateFormat
47
+ timeFormat: timeFormat
48
+ onClose: save
49
+ )
50
+ .focus()
51
+
52
+ cmsField.hide()
@@ -1,37 +1,37 @@
1
1
  $ ->
2
2
  # Define editor behavior for enum attributes.
3
3
 
4
- scrivito.on 'editing', ->
5
- template = (values) ->
6
- element = $('<select></select>')
7
- .addClass('form-control')
4
+ scrivito.on 'load', ->
5
+ if scrivito.in_editable_view()
6
+ template = (values) ->
7
+ element = $('<select></select>')
8
+ .addClass('form-control')
8
9
 
9
- $.each values, (index, value) ->
10
- $('<option></option>')
11
- .attr('value', value)
12
- .text(value)
13
- .appendTo(element)
10
+ $.each values, (index, value) ->
11
+ $('<option></option>')
12
+ .attr('value', value)
13
+ .text(value)
14
+ .appendTo(element)
14
15
 
15
- element
16
+ element
16
17
 
17
- save = (event) ->
18
- element = $(event.currentTarget)
19
- cmsField = element.data('cmsField')
20
- content = element.val()
21
- cmsField.scrivito('save', content).done ->
22
- cmsField.trigger('save.scrivito_editors')
23
- cmsField.trigger('scrivito_reload')
18
+ save = (event) ->
19
+ element = $(event.currentTarget)
20
+ cmsField = element.data('cmsField')
21
+ content = element.val()
22
+ cmsField.scrivito('save', content).done ->
23
+ cmsField.trigger('save.scrivito_editors')
24
24
 
25
- $(document).on 'click', '[data-scrivito-field-type="enum"]:not([data-editor]), [data-editor="enum"]', (event) ->
26
- cmsField = $(event.currentTarget)
27
- selected = cmsField.scrivito('content')
28
- values = cmsField.data('values')
25
+ $(document).on 'click', '[data-scrivito-field-type="enum"]:not([data-editor]), [data-editor="enum"]', (event) ->
26
+ cmsField = $(event.currentTarget)
27
+ selected = cmsField.scrivito('content')
28
+ values = cmsField.data('values')
29
29
 
30
- template(values)
31
- .data('cmsField', cmsField)
32
- .val(selected)
33
- .insertAfter(cmsField)
34
- .focusout(save)
35
- .focus()
30
+ template(values)
31
+ .data('cmsField', cmsField)
32
+ .val(selected)
33
+ .insertAfter(cmsField)
34
+ .focusout(save)
35
+ .focus()
36
36
 
37
- cmsField.hide()
37
+ cmsField.hide()
@@ -86,10 +86,7 @@ $ ->
86
86
  cmsField.redactor(redactorOptions())
87
87
  cmsField.redactor('focus')
88
88
 
89
- # Registers all handlers when inplace editing is activated.
90
- scrivito.on 'editing', ->
91
- addOnclickRedactorHandlers($('body'))
92
-
93
89
  # Registers all handlers when content has changed.
94
- scrivito.on 'new_content', (domElement) ->
95
- addOnclickRedactorHandlers($(domElement))
90
+ scrivito.on 'content', (domElement) ->
91
+ if scrivito.in_editable_view()
92
+ addOnclickRedactorHandlers($(domElement))
@@ -171,8 +171,6 @@ $ ->
171
171
  save(cmsField)
172
172
 
173
173
  # Initialize linklist editor and setup event callbacks.
174
- scrivito.on 'new_content', (root) ->
175
- initialize(root)
176
-
177
- scrivito.on 'editing', ->
178
- initialize(document)
174
+ scrivito.on 'content', (root) ->
175
+ if scrivito.in_editable_view()
176
+ initialize(root)
@@ -1,38 +1,38 @@
1
1
  $ ->
2
2
  # Define editor behavior for multienum attributes.
3
3
 
4
- scrivito.on 'editing', ->
5
- template = (values) ->
6
- element = $('<select></select>')
7
- .attr('multiple', 'true')
8
- .addClass('form-control')
4
+ scrivito.on 'load', ->
5
+ if scrivito.in_editable_view()
6
+ template = (values) ->
7
+ element = $('<select></select>')
8
+ .attr('multiple', 'true')
9
+ .addClass('form-control')
9
10
 
10
- $.each values, (index, value) ->
11
- $('<option></option>')
12
- .attr('value', value)
13
- .text(value)
14
- .appendTo(element)
11
+ $.each values, (index, value) ->
12
+ $('<option></option>')
13
+ .attr('value', value)
14
+ .text(value)
15
+ .appendTo(element)
15
16
 
16
- element
17
+ element
17
18
 
18
- save = (event) ->
19
- element = $(event.currentTarget)
20
- cmsField = element.data('cmsField')
21
- content = element.val()
22
- cmsField.scrivito('save', content).done ->
23
- cmsField.trigger('save.scrivito_editors')
24
- cmsField.trigger('scrivito_reload')
19
+ save = (event) ->
20
+ element = $(event.currentTarget)
21
+ cmsField = element.data('cmsField')
22
+ content = element.val()
23
+ cmsField.scrivito('save', content).done ->
24
+ cmsField.trigger('save.scrivito_editors')
25
25
 
26
- $(document).on 'click', '[data-scrivito-field-type="multienum"]:not([data-editor]), [data-editor="multienum"]', (event) ->
27
- cmsField = $(event.currentTarget)
28
- selected = cmsField.scrivito('content')
29
- values = cmsField.data('values')
26
+ $(document).on 'click', '[data-scrivito-field-type="multienum"]:not([data-editor]), [data-editor="multienum"]', (event) ->
27
+ cmsField = $(event.currentTarget)
28
+ selected = cmsField.scrivito('content')
29
+ values = cmsField.data('values')
30
30
 
31
- template(values)
32
- .data('cmsField', cmsField)
33
- .val(selected)
34
- .insertAfter(cmsField)
35
- .focusout(save)
36
- .focus()
31
+ template(values)
32
+ .data('cmsField', cmsField)
33
+ .val(selected)
34
+ .insertAfter(cmsField)
35
+ .focusout(save)
36
+ .focus()
37
37
 
38
- cmsField.hide()
38
+ cmsField.hide()
@@ -15,8 +15,6 @@ $ ->
15
15
 
16
16
  cmsField.attr('data-placeholder', placeholder)
17
17
 
18
- scrivito.on 'new_content', ->
19
- addPlaceholder()
20
-
21
- scrivito.on 'editing', ->
22
- addPlaceholder()
18
+ scrivito.on 'content', ->
19
+ if scrivito.in_editable_view()
20
+ addPlaceholder()
@@ -1,30 +1,31 @@
1
1
  $ ->
2
2
  # Integrates a resource browser based editor for reference CMS attributes.
3
3
 
4
- scrivito.on 'editing', ->
5
- $('body').on 'click', '[data-scrivito-field-type="reference"]:not([data-editor]), [data-editor="reference"]', (event) ->
6
- event.preventDefault()
4
+ scrivito.on 'load', ->
5
+ if scrivito.in_editable_view()
6
+ $('body').on 'click', '[data-scrivito-field-type="reference"]:not([data-editor]), [data-editor="reference"]', (event) ->
7
+ event.preventDefault()
7
8
 
8
- cmsField = $(event.currentTarget)
9
- selected = [cmsField.scrivito('content')].filter (element) -> element
10
- filters = cmsField.data('filters') || cmsField.data('filter')
9
+ cmsField = $(event.currentTarget)
10
+ selected = [cmsField.scrivito('content')].filter (element) -> element
11
+ filters = cmsField.data('filters') || cmsField.data('filter')
11
12
 
12
- # Open resource browser with current reference selected.
13
- Resourcebrowser.open
14
- selection: selected
15
- filters: filters
16
- selectionMode: 'single'
13
+ # Open resource browser with current reference selected.
14
+ Resourcebrowser.open
15
+ selection: selected
16
+ filters: filters
17
+ selectionMode: 'single'
17
18
 
18
- onSave: (selection) =>
19
- onResourcebrowserSave(selection, cmsField)
19
+ onSave: (selection) =>
20
+ onResourcebrowserSave(selection, cmsField)
20
21
 
21
- # Save single reference when resource browser calls "save".
22
- onResourcebrowserSave = (selection, cmsField) ->
23
- value = selection[0] || null
22
+ # Save single reference when resource browser calls "save".
23
+ onResourcebrowserSave = (selection, cmsField) ->
24
+ value = selection[0] || null
24
25
 
25
- cmsField.scrivito('save', value)
26
- .done ->
27
- cmsField.trigger('save.scrivito_editors')
28
- cmsField.trigger('scrivito_reload')
26
+ cmsField.scrivito('save', value)
27
+ .done ->
28
+ cmsField.trigger('save.scrivito_editors')
29
+ cmsField.trigger('scrivito_reload')
29
30
 
30
- true
31
+ true
@@ -91,22 +91,23 @@ $ ->
91
91
  $(cmsField).data('last-saved', value)
92
92
 
93
93
  # Initialize referencelist editor and setup event callbacks.
94
- scrivito.on 'new_content', (root) ->
95
- elements = $(root).find('[data-scrivito-field-type="referencelist"]:not([data-editor]), [data-editor="referencelist"]')
94
+ scrivito.on 'content', (root) ->
95
+ if scrivito.in_editable_view()
96
+ elements = $(root).find('[data-scrivito-field-type="referencelist"]:not([data-editor]), [data-editor="referencelist"]')
96
97
 
97
- if elements.length
98
- transform(elements)
98
+ if elements.length
99
+ transform(elements)
99
100
 
100
- for element in elements
101
- ids = getIds(element)
102
- storeLastSaved(element, ids)
101
+ for element in elements
102
+ ids = getIds(element)
103
+ storeLastSaved(element, ids)
103
104
 
104
- elements.on 'click', 'li a.delete', remove
105
- elements.on 'click', 'button.resourcebrowser-open', onResourcebrowserOpen
105
+ elements.on 'click', 'li a.delete', remove
106
+ elements.on 'click', 'button.resourcebrowser-open', onResourcebrowserOpen
106
107
 
107
- elements.find('ul').sortable
108
- update: (event) ->
109
- cmsField = getCmsField($(event.target))
110
- ids = getIds(cmsField)
108
+ elements.find('ul').sortable
109
+ update: (event) ->
110
+ cmsField = getCmsField($(event.target))
111
+ ids = getIds(cmsField)
111
112
 
112
- save(ids, cmsField)
113
+ save(ids, cmsField)
@@ -1,40 +1,41 @@
1
1
  $ ->
2
2
  # Slider for integer values stored in a string CMS attribute.
3
3
 
4
- scrivito.on 'editing', ->
5
- template = ->
6
- $('<div></div>')
4
+ scrivito.on 'load', ->
5
+ if scrivito.in_editable_view()
6
+ template = ->
7
+ $('<div></div>')
7
8
 
8
- onStop = (event, ui) ->
9
- cmsField = $(@).data('cmsField')
10
- content = ui.value
11
- cmsField.scrivito('save', content).done ->
12
- cmsField.trigger('save.scrivito_editors')
13
- cmsField.trigger('scrivito_reload')
9
+ onStop = (event, ui) ->
10
+ cmsField = $(@).data('cmsField')
11
+ content = ui.value
12
+ cmsField.scrivito('save', content).done ->
13
+ cmsField.trigger('save.scrivito_editors')
14
+ cmsField.trigger('scrivito_reload')
14
15
 
15
- onSlide = (event, ui) ->
16
- cmsField = $(@).data('cmsField')
17
- content = ui.value
18
- cmsField.text(ui.value)
16
+ onSlide = (event, ui) ->
17
+ cmsField = $(@).data('cmsField')
18
+ content = ui.value
19
+ cmsField.text(ui.value)
19
20
 
20
- $('body').on 'click', '[data-editor="slider"]:not(.active)', (event) ->
21
- cmsField = $(event.currentTarget)
22
- content = cmsField.scrivito('content')
23
- min = cmsField.attr('data-min') || 1
24
- max = cmsField.attr('data-max') || 10
25
- step = cmsField.attr('data-step') || 1
21
+ $('body').on 'click', '[data-editor="slider"]:not(.active)', (event) ->
22
+ cmsField = $(event.currentTarget)
23
+ content = cmsField.scrivito('content')
24
+ min = cmsField.attr('data-min') || 1
25
+ max = cmsField.attr('data-max') || 10
26
+ step = cmsField.attr('data-step') || 1
26
27
 
27
- cmsField.addClass('active')
28
+ cmsField.addClass('active')
28
29
 
29
- template()
30
- .data('cmsField', cmsField)
31
- .insertAfter(cmsField)
32
- .slider(
33
- min: parseInt(min)
34
- max: parseInt(max)
35
- step: parseInt(step)
36
- value: content
37
- range: 'min'
38
- stop: onStop
39
- slide: onSlide
40
- )
30
+ template()
31
+ .data('cmsField', cmsField)
32
+ .insertAfter(cmsField)
33
+ .slider(
34
+ min: parseInt(min)
35
+ max: parseInt(max)
36
+ step: parseInt(step)
37
+ value: content
38
+ range: 'min'
39
+ stop: onStop
40
+ slide: onSlide
41
+ )
@@ -69,5 +69,6 @@ $ ->
69
69
  $('body').on 'click', '[data-scrivito-field-type="string"]:not([data-editor]), [data-editor="string"]', (event) ->
70
70
  event.preventDefault()
71
71
 
72
- scrivito.on 'editing', ->
73
- initialize()
72
+ scrivito.on 'load', ->
73
+ if scrivito.in_editable_view()
74
+ initialize()
@@ -72,5 +72,6 @@ $ ->
72
72
  $('body').on 'click', '[data-scrivito-field-type="text"]:not([data-editor]), [data-editor="text"]', (event) ->
73
73
  event.preventDefault()
74
74
 
75
- scrivito.on 'editing', ->
76
- initialize()
75
+ scrivito.on 'load', ->
76
+ if scrivito.in_editable_view()
77
+ initialize()
@@ -1,3 +1,3 @@
1
1
  module ScrivitoEditors
2
- VERSION = '0.0.11'
2
+ VERSION = '0.0.12'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scrivito_editors
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scrivito
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-04 00:00:00.000000000 Z
11
+ date: 2014-06-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: railties
@@ -108,7 +108,10 @@ files:
108
108
  - app/assets/fonts/editing_icons-webfont.eot
109
109
  - app/assets/fonts/editing_icons-webfont.ttf
110
110
  - app/assets/fonts/editing_icons-webfont.woff
111
+ - app/assets/fonts/redactor-font.eot
112
+ - app/assets/javascripts/jquery-ui-timepicker-addon.min.js
111
113
  - app/assets/javascripts/jquery_additions/jquery_center.js.coffee
114
+ - app/assets/javascripts/redactor.js
112
115
  - app/assets/javascripts/scrivito_editors.js
113
116
  - app/assets/javascripts/scrivito_editors/date_editor.js.coffee
114
117
  - app/assets/javascripts/scrivito_editors/enum_editor.js.coffee
@@ -121,6 +124,8 @@ files:
121
124
  - app/assets/javascripts/scrivito_editors/slider_editor.js.coffee
122
125
  - app/assets/javascripts/scrivito_editors/string_editor.js.coffee
123
126
  - app/assets/javascripts/scrivito_editors/text_editor.js.coffee
127
+ - app/assets/stylesheets/jquery-ui-timepicker-addon.min.css
128
+ - app/assets/stylesheets/redactor.css.erb
124
129
  - app/assets/stylesheets/scrivito_editors.css
125
130
  - app/assets/stylesheets/scrivito_editors/buttons.css
126
131
  - app/assets/stylesheets/scrivito_editors/editors/html_editor.css
@@ -133,11 +138,6 @@ files:
133
138
  - lib/scrivito_editors.rb
134
139
  - lib/scrivito_editors/engine.rb
135
140
  - lib/scrivito_editors/version.rb
136
- - vendor/assets/fonts/redactor-font.eot
137
- - vendor/assets/javascripts/jquery-ui-timepicker-addon.min.js
138
- - vendor/assets/javascripts/redactor.js
139
- - vendor/assets/stylesheets/jquery-ui-timepicker-addon.min.css
140
- - vendor/assets/stylesheets/redactor.css.erb
141
141
  homepage: http://www.scrivito.com
142
142
  licenses:
143
143
  - LGPL-3.0