scrivito_editors 0.70.2 → 0.71.0.rc1
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aa97297b8ea4b3d766e89626c337ed8d92f91c8f
|
4
|
+
data.tar.gz: 1ac6e84c3983669d660304519dfa51e9614869a9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2e13fce3cc15a0ccf9170f677f5d17abc348958660bde6e17d0add7a26d3da3ac88b60f8cec80e8a40153b23f84a133c06b2dd7dc47687947c203a27ffdbb8d7
|
7
|
+
data.tar.gz: 0e66886e9bca14bf739b46f9792934aa441efc72d2a38541c89daee03d0473cbceaf8c27e4aa21d19d7f2914ef2b08d3d602992ad5704df284e4212afe9c581d
|
@@ -51,35 +51,15 @@ setup_image_kit_container = (element, dialog) ->
|
|
51
51
|
image = new Image()
|
52
52
|
url = element.scrivito("content").url
|
53
53
|
|
54
|
-
#
|
55
|
-
image.crossOrigin = "Anonymous"
|
56
|
-
image.src = url
|
57
|
-
|
58
|
-
#S3 compatible (as of 2015-10) workaround to prevent crossOrigin warnings in chrome and safari
|
59
|
-
fallbackUrl = url
|
54
|
+
#workaround to prevent crossOrigin warnings in chrome and safari
|
60
55
|
if url.indexOf("?") < 0
|
61
|
-
|
56
|
+
url += "?" + new Date().getTime()
|
62
57
|
else
|
63
|
-
|
58
|
+
url += "&" + new Date().getTime()
|
64
59
|
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
<div style='padding:20px'>
|
69
|
-
<h1>We're sorry,</h1>
|
70
|
-
<p>Scrivito can't edit this image in your browser. What now?</p>
|
71
|
-
<ul>
|
72
|
-
<li>Check for browser updates</li>
|
73
|
-
<li>Try using a different browser</li>
|
74
|
-
<li>Contact us at
|
75
|
-
<a href="https://scrivito.com/support" target="_blank">https://scrivito.com/support</a>
|
76
|
-
</li>
|
77
|
-
</ul>
|
78
|
-
</div>
|
79
|
-
""").appendTo(container)
|
80
|
-
else
|
81
|
-
console.info("Scrivito detected a probable CORS browser cache mismatch, trying uncached load")
|
82
|
-
image.src = fallbackUrl
|
60
|
+
#Order is important for CORS problem in browsers http://stackoverflow.com/a/18422548
|
61
|
+
image.crossOrigin = "Anonymous"
|
62
|
+
image.src = url
|
83
63
|
|
84
64
|
image.onload = ->
|
85
65
|
kit = setup_image_kit(image, container)
|
@@ -0,0 +1,111 @@
|
|
1
|
+
scrivito.on 'content', (content) ->
|
2
|
+
return unless scrivito.in_editable_view()
|
3
|
+
|
4
|
+
$(content).find('''
|
5
|
+
[data-scrivito-field-name="_permalink"]:not([data-editor]),
|
6
|
+
[data-editor~=permalink]
|
7
|
+
''').each -> create($(@))
|
8
|
+
|
9
|
+
create = (field) ->
|
10
|
+
editor = field.html(render(field.scrivito('content') || ''))
|
11
|
+
input = editor.find('input')
|
12
|
+
button = editor.find('a')
|
13
|
+
error = editor.find('div.scrivito_error')
|
14
|
+
clear = editor.find('.scrivito_clear')
|
15
|
+
|
16
|
+
input.on 'input', ->
|
17
|
+
permalink = input.val()
|
18
|
+
if permalink == field.scrivito('content')
|
19
|
+
hideError()
|
20
|
+
disableSaveButton()
|
21
|
+
else if permalink.match(/^([\w._-]+[\/\w._-]*)?$/)
|
22
|
+
hideError()
|
23
|
+
enableSaveButton()
|
24
|
+
else
|
25
|
+
showError(
|
26
|
+
'The permalink may only contain letters from A to Z, periods, hyphens, and underscores.')
|
27
|
+
disableSaveButton()
|
28
|
+
|
29
|
+
clear.on 'click', ->
|
30
|
+
input.val('')
|
31
|
+
hideError()
|
32
|
+
if !field.scrivito('content')
|
33
|
+
disableSaveButton()
|
34
|
+
else
|
35
|
+
enableSaveButton()
|
36
|
+
off
|
37
|
+
|
38
|
+
button.on 'click', ->
|
39
|
+
trySave()
|
40
|
+
off
|
41
|
+
|
42
|
+
editor.on 'keyup', (event) ->
|
43
|
+
switch event.keyCode
|
44
|
+
when 13 # Enter
|
45
|
+
trySave()
|
46
|
+
when 27 # Esc
|
47
|
+
input.val(field.scrivito('content'))
|
48
|
+
hideError()
|
49
|
+
disableSaveButton()
|
50
|
+
input.blur()
|
51
|
+
|
52
|
+
trySave = ->
|
53
|
+
return off if button.hasClass('scrivito_disabled')
|
54
|
+
|
55
|
+
showSaving()
|
56
|
+
|
57
|
+
permalink = input.val()
|
58
|
+
if permalink
|
59
|
+
scrivito.obj_where('_permalink', 'equals', permalink).size().then (total) ->
|
60
|
+
if total > 0
|
61
|
+
hideSaving()
|
62
|
+
showError('Permalink already taken.')
|
63
|
+
disableSaveButton()
|
64
|
+
input.focus()
|
65
|
+
else
|
66
|
+
save(permalink)
|
67
|
+
else
|
68
|
+
save(null)
|
69
|
+
|
70
|
+
disableSaveButton = ->
|
71
|
+
button.addClass('scrivito_disabled')
|
72
|
+
|
73
|
+
enableSaveButton = ->
|
74
|
+
button.removeClass('scrivito_disabled scrivito_saving')
|
75
|
+
|
76
|
+
showError = (message) ->
|
77
|
+
disableSaveButton()
|
78
|
+
input.addClass('scrivito_error')
|
79
|
+
error.text(message)
|
80
|
+
error.show()
|
81
|
+
|
82
|
+
hideError = ->
|
83
|
+
input.removeClass('scrivito_error')
|
84
|
+
error.hide()
|
85
|
+
|
86
|
+
showSaving = ->
|
87
|
+
input.attr('disabled', 'disabled')
|
88
|
+
disableSaveButton()
|
89
|
+
button.addClass('scrivito_saving')
|
90
|
+
button.find('span').text('Saving...')
|
91
|
+
|
92
|
+
hideSaving = ->
|
93
|
+
input.removeAttr('disabled')
|
94
|
+
enableSaveButton()
|
95
|
+
button.find('span').text('Save')
|
96
|
+
|
97
|
+
save = (permalink) ->
|
98
|
+
field.scrivito('save', permalink).then ->
|
99
|
+
create(field)
|
100
|
+
|
101
|
+
render = (content) ->
|
102
|
+
"""
|
103
|
+
<div class="scrivito_permalink_editor">
|
104
|
+
<input type="text" value="#{content}" />
|
105
|
+
<span class="scrivito_clear"></span>
|
106
|
+
<a href="#" class="scrivito_editing_button scrivito_disabled">
|
107
|
+
<span>Save</span>
|
108
|
+
</a>
|
109
|
+
<div class="scrivito_error"></div>
|
110
|
+
</div>
|
111
|
+
"""
|
@@ -98,7 +98,7 @@ $ ->
|
|
98
98
|
DOUBLE_CLICK_MS = 300
|
99
99
|
|
100
100
|
editSelector = '''
|
101
|
-
[data-scrivito-field-type="string"]:not([data-editor]),
|
101
|
+
[data-scrivito-field-type="string"]:not([data-editor]):not([data-scrivito-field-name=_permalink]),
|
102
102
|
[data-editor~="string"],
|
103
103
|
[data-editor~="text"]
|
104
104
|
'''
|
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.
|
4
|
+
version: 0.71.0.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scrivito
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-10-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: coffee-rails
|
@@ -72,28 +72,28 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.
|
75
|
+
version: 0.71.0.rc1
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.
|
82
|
+
version: 0.71.0.rc1
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: scrivito_sdk
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 0.
|
89
|
+
version: 0.71.0.rc1
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 0.
|
96
|
+
version: 0.71.0.rc1
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: pry
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -235,6 +235,7 @@ files:
|
|
235
235
|
- app/assets/javascripts/scrivito_editors/link_editor.js.coffee
|
236
236
|
- app/assets/javascripts/scrivito_editors/linklist_editor.js.coffee
|
237
237
|
- app/assets/javascripts/scrivito_editors/multienum_editor.js.coffee
|
238
|
+
- app/assets/javascripts/scrivito_editors/permalink_editor.js.coffee
|
238
239
|
- app/assets/javascripts/scrivito_editors/placeholder.js.coffee
|
239
240
|
- app/assets/javascripts/scrivito_editors/redactor_plugins/scrivito_editors_image_manager.js.coffee
|
240
241
|
- app/assets/javascripts/scrivito_editors/redactor_plugins/scrivito_editors_link_manager.js.coffee
|