locomotive-aloha-rails 0.23.2.1 → 0.23.2.2
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.
- data/README.md +3 -3
- data/lib/aloha/rails/engine.rb +1 -1
- data/lib/aloha/rails/version.rb +2 -2
- data/lib/tasks/aloha-assets.rake +1 -1
- data/vendor/assets/javascripts/aloha/css/aloha-sidebar.css +41 -17
- data/vendor/assets/javascripts/aloha/css/aloha.css +2 -2
- data/vendor/assets/javascripts/aloha/lib/aloha/contenthandlermanager.js +19 -18
- data/vendor/assets/javascripts/aloha/lib/aloha/engine.js +168 -9
- data/vendor/assets/javascripts/aloha/lib/aloha/ephemera.js +8 -1
- data/vendor/assets/javascripts/aloha/lib/aloha/markup.js +3 -2
- data/vendor/assets/javascripts/aloha/lib/aloha/pluginmanager.js +8 -0
- data/vendor/assets/javascripts/aloha/lib/aloha/sidebar.js +1 -1
- data/vendor/assets/javascripts/aloha/lib/aloha/state-override.js +59 -37
- data/vendor/assets/javascripts/aloha/lib/util/arrays.js +53 -6
- data/vendor/assets/javascripts/aloha/lib/util/boundary-markers.js +86 -0
- data/vendor/assets/javascripts/aloha/lib/util/dom2.js +178 -19
- data/vendor/assets/javascripts/aloha/lib/util/html.js +77 -10
- data/vendor/assets/javascripts/aloha/lib/util/maps.js +23 -1
- data/vendor/assets/javascripts/aloha/lib/util/range-context.js +429 -181
- data/vendor/assets/javascripts/aloha/lib/util/strings.js +9 -1
- data/vendor/assets/javascripts/aloha/plugins/common/align/nls/de/i18n.js +4 -1
- data/vendor/assets/javascripts/aloha/plugins/common/block/lib/blockmanager.js +2 -5
- data/vendor/assets/javascripts/aloha/plugins/common/characterpicker/css/characterpicker.css +6 -3
- data/vendor/assets/javascripts/aloha/plugins/common/characterpicker/lib/characterpicker-plugin.js +29 -32
- data/vendor/assets/javascripts/aloha/plugins/common/contenthandler/lib/blockelementcontenthandler.js +41 -70
- data/vendor/assets/javascripts/aloha/plugins/common/dom-to-xhtml/lib/dom-to-xhtml.js +1 -1
- data/vendor/assets/javascripts/aloha/plugins/common/format/lib/format-plugin.js +22 -10
- data/vendor/assets/javascripts/aloha/plugins/common/link/css/link.css +2 -8
- data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table-cell.js +7 -0
- data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table-plugin.js +149 -131
- data/vendor/assets/javascripts/aloha/plugins/common/table/lib/table.js +77 -47
- data/vendor/assets/javascripts/aloha/plugins/common/ui/lib/port-helper-attribute-field.js +4 -8
- data/vendor/assets/javascripts/aloha/plugins/common/ui/nls/de/i18n.js +1 -0
- data/vendor/assets/javascripts/aloha/plugins/extra/cite/css/cite.css +0 -10
- data/vendor/assets/javascripts/aloha/plugins/extra/cite/lib/cite-plugin.js +4 -4
- data/vendor/assets/javascripts/aloha/plugins/extra/headerids/lib/headerids-plugin.js +84 -32
- data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/nls/de/i18n.js +2 -1
- data/vendor/assets/javascripts/aloha/plugins/extra/numerated-headers/nls/i18n.js +2 -1
- metadata +15 -14
@@ -218,7 +218,7 @@ define([
|
|
218
218
|
|
219
219
|
function changeTargetBackground() {
|
220
220
|
var target = $(targetObject);
|
221
|
-
if (
|
221
|
+
if (targetHighlightClass) {
|
222
222
|
target.addClass(targetHighlightClass);
|
223
223
|
}
|
224
224
|
|
@@ -232,7 +232,7 @@ define([
|
|
232
232
|
restoreTargetBackground();
|
233
233
|
|
234
234
|
// set background color to give visual feedback which link is modified
|
235
|
-
if (target
|
235
|
+
if (target.context && target.context.style &&
|
236
236
|
target.context.style['background-color']) {
|
237
237
|
target.attr('data-original-background-color',
|
238
238
|
target.context.style['background-color']);
|
@@ -245,16 +245,12 @@ define([
|
|
245
245
|
if (targetHighlightClass) {
|
246
246
|
target.removeClass(targetHighlightClass);
|
247
247
|
}
|
248
|
-
if (noTargetHighlight
|
248
|
+
if (noTargetHighlight) {
|
249
249
|
return;
|
250
250
|
}
|
251
251
|
// Remove the highlighting and restore original color if was set before
|
252
252
|
var color = target.attr('data-original-background-color');
|
253
|
-
|
254
|
-
target.css('background-color', color);
|
255
|
-
} else {
|
256
|
-
target.css('background-color', '');
|
257
|
-
}
|
253
|
+
target.css('background-color', color || '');
|
258
254
|
if (!target.attr('style')) {
|
259
255
|
target.removeAttr('style');
|
260
256
|
}
|
@@ -37,13 +37,3 @@ box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 7px 0 rgba(0, 0, 0, 0.8) ins
|
|
37
37
|
.aloha-cite-panel-btns button {
|
38
38
|
width: 100%;
|
39
39
|
}
|
40
|
-
|
41
|
-
.aloha-cite-panel-field input,
|
42
|
-
.aloha-cite-panel-field textarea {
|
43
|
-
width: 190px;
|
44
|
-
padding: 5px;
|
45
|
-
color: #555;
|
46
|
-
font-family: Arial, sans-serif;
|
47
|
-
font-size: 12px;
|
48
|
-
line-height: 1em;
|
49
|
-
}
|
@@ -226,16 +226,16 @@ define([
|
|
226
226
|
var additionalReferenceContainer = '';
|
227
227
|
|
228
228
|
if (citePlugin.referenceContainer) {
|
229
|
-
additionalReferenceContainer = '<
|
229
|
+
additionalReferenceContainer = '<label class="{panel-label}" for="{note-field}-textarea">Note</label> ' +
|
230
230
|
'<div class="{panel-field} {note-field}" ' +
|
231
231
|
'style="margin: 5px;">' +
|
232
|
-
'<textarea></textarea></div>';
|
232
|
+
'<textarea id="{note-field}-textarea"></textarea></div>';
|
233
233
|
}
|
234
234
|
|
235
235
|
var content = this.setContent(renderTemplate(
|
236
|
-
'<
|
236
|
+
'<label class="{panel-label}" for="{link-field}-input">Link</label>' +
|
237
237
|
'<div class="{panel-field} {link-field}" ' +
|
238
|
-
'style="margin: 5px;"><input type="text" /></div>' +
|
238
|
+
'style="margin: 5px;"><input type="text" id="{link-field}-input" /></div>' +
|
239
239
|
additionalReferenceContainer
|
240
240
|
)).content;
|
241
241
|
|
@@ -25,20 +25,19 @@
|
|
25
25
|
* recipients can access the Corresponding Source.
|
26
26
|
*/
|
27
27
|
define([
|
28
|
+
'aloha',
|
28
29
|
'jquery',
|
29
30
|
'aloha/plugin',
|
30
|
-
'i18n!headerids/nls/i18n'
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
GENTICS = window.GENTICS,
|
39
|
-
Aloha = window.Aloha;
|
40
|
-
|
31
|
+
'i18n!headerids/nls/i18n'
|
32
|
+
], function (
|
33
|
+
Aloha,
|
34
|
+
jQuery,
|
35
|
+
Plugin,
|
36
|
+
i18n
|
37
|
+
) {
|
38
|
+
'use strict';
|
41
39
|
|
40
|
+
var $ = jQuery;
|
42
41
|
|
43
42
|
// namespace prefix for this plugin
|
44
43
|
var ns = 'aloha-headerids';
|
@@ -61,7 +60,30 @@ function(jQuery, Plugin, i18n, i18nCore) {
|
|
61
60
|
$.each(arguments, function () { strBldr.push(this == '' ? prx : prx + '-' + this); });
|
62
61
|
return jQuery.trim(strBldr.join(' '));
|
63
62
|
};
|
64
|
-
|
63
|
+
|
64
|
+
/**
|
65
|
+
* Returns a jQuery collection of all heading elements in the given editable
|
66
|
+
* which are safe to have their ids automatically set.
|
67
|
+
*
|
68
|
+
* Do not include heading elements which are annotated with the class
|
69
|
+
* "aloha-customized" because these have had their ids manually set.
|
70
|
+
*
|
71
|
+
* Do not include heading elements which are Aloha editables or blocks because
|
72
|
+
* implementations often use the ids of these elements to track them in the
|
73
|
+
* DOM.
|
74
|
+
*
|
75
|
+
* @param {jQuery.<HTMLElement>} $editable
|
76
|
+
* @return {jQuery.<HTMLHeadingElement>} A jQuery container with a
|
77
|
+
* collection of zero or more heading
|
78
|
+
* elements.
|
79
|
+
*/
|
80
|
+
function getHeadingElements($element) {
|
81
|
+
return (
|
82
|
+
$element.find('h1,h2,h3,h4,h5,h6')
|
83
|
+
.not('.aloha-customized,.aloha-editable,.aloha-block')
|
84
|
+
);
|
85
|
+
}
|
86
|
+
|
65
87
|
return Plugin.create('headerids', {
|
66
88
|
_constructor: function(){
|
67
89
|
this._super('headerids');
|
@@ -86,31 +108,61 @@ function(jQuery, Plugin, i18n, i18nCore) {
|
|
86
108
|
that.initSidebar(Aloha.Sidebar.right);
|
87
109
|
});
|
88
110
|
},
|
89
|
-
|
90
|
-
check: function(editable) {
|
91
|
-
var that = this;
|
92
|
-
var config = that.getEditableConfig(editable);
|
93
111
|
|
94
|
-
|
95
|
-
|
96
|
-
|
112
|
+
/**
|
113
|
+
* Automatically sets the id attribute of heading elements in the given
|
114
|
+
* editable element wherever it is safe to do so.
|
115
|
+
*
|
116
|
+
* @TODO: This function should be removed from being a plugin method and
|
117
|
+
* made a local closure function.
|
118
|
+
*
|
119
|
+
* @TODO: Rename to setHeadingIds()
|
120
|
+
*
|
121
|
+
* @param {jQuery.<HTMLElement>} $editable
|
122
|
+
*/
|
123
|
+
check: function($editable) {
|
124
|
+
var plugin = this;
|
125
|
+
if($.inArray('true', plugin.getEditableConfig($editable)) > -1) {
|
126
|
+
getHeadingElements($editable).each(function (i, heading) {
|
127
|
+
plugin.processH(heading);
|
128
|
+
});
|
97
129
|
}
|
98
|
-
|
99
|
-
jQuery(editable).find('h1, h2, h3, h4, h5, h6').not('.aloha-customized').each(function(){
|
100
|
-
that.processH(this);
|
101
|
-
});
|
102
|
-
|
103
130
|
},
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
131
|
+
|
132
|
+
/**
|
133
|
+
* Automatically sets the id of the given heading element to a sanitized
|
134
|
+
* version of the element's content text string.
|
135
|
+
*
|
136
|
+
* @TODO: Rename to setHeadingId()
|
137
|
+
*
|
138
|
+
* @TODO: Make this function a local closure function rather than a
|
139
|
+
* plugin method.
|
140
|
+
*
|
141
|
+
* @param {HTMLHeadingElement} heading One of the six HTML heading
|
142
|
+
* elements.
|
143
|
+
*/
|
144
|
+
processH: function (heading) {
|
145
|
+
var $heading = $(heading);
|
146
|
+
$heading.attr('id', this.sanitize($heading.text()));
|
108
147
|
},
|
109
|
-
|
110
|
-
|
111
|
-
|
148
|
+
|
149
|
+
/**
|
150
|
+
* Tranforms the given string into a ideal HTMLElement id attribute
|
151
|
+
* string by replacing non-alphanumeric characters with an underscore.
|
152
|
+
*
|
153
|
+
* @TODO: This method should be removed from being a plugin method and
|
154
|
+
* made into a local closure function.
|
155
|
+
*
|
156
|
+
* @TODO: The regular expression should be defined once (as a constant)
|
157
|
+
* outside of the scope of this function.
|
158
|
+
*
|
159
|
+
* @param {String} str
|
160
|
+
* @return {String} Santized copy of `str`.
|
161
|
+
*/
|
162
|
+
sanitize: function (str) {
|
163
|
+
return str.replace(/[^a-z0-9]+/gi, '_');
|
112
164
|
},
|
113
|
-
|
165
|
+
|
114
166
|
//ns = headerids
|
115
167
|
initSidebar: function(sidebar) {
|
116
168
|
var pl = this;
|
metadata
CHANGED
@@ -1,43 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: locomotive-aloha-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.23.2.2
|
4
5
|
prerelease:
|
5
|
-
version: 0.23.2.1
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Didier Lafforgue
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-05-12 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
|
16
|
-
|
15
|
+
name: actionpack
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
20
20
|
- !ruby/object:Gem::Version
|
21
21
|
version: 3.2.13
|
22
|
-
|
22
|
+
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
none: false
|
26
26
|
requirements:
|
27
27
|
- - ~>
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: 3.2.13
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
-
|
32
|
-
|
31
|
+
name: rake
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
33
|
none: false
|
34
34
|
requirements:
|
35
35
|
- - '='
|
36
36
|
- !ruby/object:Gem::Version
|
37
37
|
version: 0.9.2
|
38
|
-
|
38
|
+
type: :development
|
39
39
|
prerelease: false
|
40
|
-
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
41
|
none: false
|
42
42
|
requirements:
|
43
43
|
- - '='
|
@@ -120,6 +120,7 @@ files:
|
|
120
120
|
- vendor/assets/javascripts/aloha/lib/require.js
|
121
121
|
- vendor/assets/javascripts/aloha/lib/text.js
|
122
122
|
- vendor/assets/javascripts/aloha/lib/util/arrays.js
|
123
|
+
- vendor/assets/javascripts/aloha/lib/util/boundary-markers.js
|
123
124
|
- vendor/assets/javascripts/aloha/lib/util/browser.js
|
124
125
|
- vendor/assets/javascripts/aloha/lib/util/class.js
|
125
126
|
- vendor/assets/javascripts/aloha/lib/util/dom.js
|
@@ -882,19 +883,19 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
882
883
|
requirements:
|
883
884
|
- - ! '>='
|
884
885
|
- !ruby/object:Gem::Version
|
886
|
+
version: '0'
|
885
887
|
segments:
|
886
888
|
- 0
|
887
|
-
hash:
|
888
|
-
version: '0'
|
889
|
+
hash: 558321058196106502
|
889
890
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
890
891
|
none: false
|
891
892
|
requirements:
|
892
893
|
- - ! '>='
|
893
894
|
- !ruby/object:Gem::Version
|
895
|
+
version: '0'
|
894
896
|
segments:
|
895
897
|
- 0
|
896
|
-
hash:
|
897
|
-
version: '0'
|
898
|
+
hash: 558321058196106502
|
898
899
|
requirements: []
|
899
900
|
rubyforge_project:
|
900
901
|
rubygems_version: 1.8.23
|