spree_editor 0.50.0 → 0.50.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Versionfile +3 -0
- data/app/controllers/admin/editor_settings_controller.rb +5 -11
- data/app/views/admin/editor_settings/edit.html.erb +20 -19
- data/app/views/shared/editor_engines/_tiny_mce.html.erb +16 -33
- data/app/views/shared/editor_engines/_yui_rich_editor.html.erb +60 -7
- data/config/locales/en.yml +1 -0
- data/config/locales/es.yml +45 -0
- data/config/locales/ru.yml +2 -0
- data/lib/editor_configuration.rb +2 -2
- data/public/images/html_editor.gif +0 -0
- data/public/javascripts/tinymce/langs/en.js +56 -3
- data/public/javascripts/tinymce/plugins/advhr/langs/en_dlg.js +2 -0
- data/public/javascripts/tinymce/plugins/advhr/rule.htm +30 -29
- data/public/javascripts/tinymce/plugins/advimage/image.htm +34 -31
- data/public/javascripts/tinymce/plugins/advimage/js/image.js +20 -5
- data/public/javascripts/tinymce/plugins/advimage/langs/en_dlg.js +2 -0
- data/public/javascripts/tinymce/plugins/advlink/js/advlink.js +21 -17
- data/public/javascripts/tinymce/plugins/advlink/langs/en_dlg.js +4 -2
- data/public/javascripts/tinymce/plugins/advlink/link.htm +35 -30
- data/public/javascripts/tinymce/plugins/advlist/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/advlist/editor_plugin_src.js +10 -3
- data/public/javascripts/tinymce/plugins/autolink/editor_plugin.js +1 -0
- data/public/javascripts/tinymce/plugins/autolink/editor_plugin_src.js +169 -0
- data/public/javascripts/tinymce/plugins/autoresize/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/autoresize/editor_plugin_src.js +12 -3
- data/public/javascripts/tinymce/plugins/autosave/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/autosave/editor_plugin_src.js +13 -4
- data/public/javascripts/tinymce/plugins/bbcode/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/bbcode/editor_plugin_src.js +1 -1
- data/public/javascripts/tinymce/plugins/contextmenu/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/contextmenu/editor_plugin_src.js +30 -16
- data/public/javascripts/tinymce/plugins/emotions/emotions.htm +15 -14
- data/public/javascripts/tinymce/plugins/fullpage/css/fullpage.css +3 -42
- data/public/javascripts/tinymce/plugins/fullpage/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/fullpage/editor_plugin_src.js +309 -63
- data/public/javascripts/tinymce/plugins/fullpage/fullpage.htm +18 -330
- data/public/javascripts/tinymce/plugins/fullpage/js/fullpage.js +199 -438
- data/public/javascripts/tinymce/plugins/fullscreen/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/fullscreen/editor_plugin_src.js +10 -2
- data/public/javascripts/tinymce/plugins/inlinepopups/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/inlinepopups/editor_plugin_src.js +76 -15
- data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/window.css +0 -10
- data/public/javascripts/tinymce/plugins/layer/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/layer/editor_plugin_src.js +2 -0
- data/public/javascripts/tinymce/plugins/legacyoutput/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/legacyoutput/editor_plugin_src.js +31 -28
- data/public/javascripts/tinymce/plugins/lists/editor_plugin.js +1 -0
- data/public/javascripts/tinymce/plugins/lists/editor_plugin_src.js +617 -0
- data/public/javascripts/tinymce/plugins/media/css/media.css +5 -4
- data/public/javascripts/tinymce/plugins/media/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/media/editor_plugin_src.js +652 -296
- data/public/javascripts/tinymce/plugins/media/js/media.js +327 -603
- data/public/javascripts/tinymce/plugins/media/langs/en_dlg.js +8 -2
- data/public/javascripts/tinymce/plugins/media/media.htm +283 -288
- data/public/javascripts/tinymce/plugins/media/moxieplayer.swf +0 -0
- data/public/javascripts/tinymce/plugins/nonbreaking/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/nonbreaking/editor_plugin_src.js +1 -1
- data/public/javascripts/tinymce/plugins/noneditable/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/noneditable/editor_plugin_src.js +2 -0
- data/public/javascripts/tinymce/plugins/pagebreak/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/pagebreak/editor_plugin_src.js +1 -4
- data/public/javascripts/tinymce/plugins/paste/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/paste/editor_plugin_src.js +118 -137
- data/public/javascripts/tinymce/plugins/searchreplace/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/searchreplace/editor_plugin_src.js +4 -0
- data/public/javascripts/tinymce/plugins/searchreplace/js/searchreplace.js +14 -10
- data/public/javascripts/tinymce/plugins/searchreplace/searchreplace.htm +17 -16
- data/public/javascripts/tinymce/plugins/spellchecker/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/spellchecker/editor_plugin_src.js +55 -37
- data/public/javascripts/tinymce/plugins/style/js/props.js +2 -8
- data/public/javascripts/tinymce/plugins/style/langs/en_dlg.js +8 -1
- data/public/javascripts/tinymce/plugins/style/props.htm +513 -398
- data/public/javascripts/tinymce/plugins/tabfocus/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/tabfocus/editor_plugin_src.js +30 -28
- data/public/javascripts/tinymce/plugins/table/cell.htm +12 -12
- data/public/javascripts/tinymce/plugins/table/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/table/editor_plugin_src.js +97 -34
- data/public/javascripts/tinymce/plugins/table/js/cell.js +9 -11
- data/public/javascripts/tinymce/plugins/table/js/row.js +13 -18
- data/public/javascripts/tinymce/plugins/table/js/table.js +8 -12
- data/public/javascripts/tinymce/plugins/table/langs/en_dlg.js +1 -1
- data/public/javascripts/tinymce/plugins/table/merge_cells.htm +11 -11
- data/public/javascripts/tinymce/plugins/table/row.htm +10 -8
- data/public/javascripts/tinymce/plugins/table/table.htm +54 -53
- data/public/javascripts/tinymce/plugins/template/js/template.js +1 -1
- data/public/javascripts/tinymce/plugins/visualchars/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/visualchars/editor_plugin_src.js +1 -1
- data/public/javascripts/tinymce/plugins/wordcount/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/wordcount/editor_plugin_src.js +35 -19
- data/public/javascripts/tinymce/plugins/xhtmlxtras/abbr.htm +6 -5
- data/public/javascripts/tinymce/plugins/xhtmlxtras/acronym.htm +6 -5
- data/public/javascripts/tinymce/plugins/xhtmlxtras/attributes.htm +6 -5
- data/public/javascripts/tinymce/plugins/xhtmlxtras/cite.htm +5 -4
- data/public/javascripts/tinymce/plugins/xhtmlxtras/del.htm +9 -8
- data/public/javascripts/tinymce/plugins/xhtmlxtras/editor_plugin.js +1 -1
- data/public/javascripts/tinymce/plugins/xhtmlxtras/editor_plugin_src.js +6 -6
- data/public/javascripts/tinymce/plugins/xhtmlxtras/ins.htm +11 -10
- data/public/javascripts/tinymce/plugins/xhtmlxtras/js/attributes.js +1 -16
- data/public/javascripts/tinymce/plugins/xhtmlxtras/js/del.js +2 -2
- data/public/javascripts/tinymce/plugins/xhtmlxtras/js/element_common.js +3 -5
- data/public/javascripts/tinymce/plugins/xhtmlxtras/js/ins.js +4 -3
- data/public/javascripts/tinymce/themes/advanced/about.htm +3 -5
- data/public/javascripts/tinymce/themes/advanced/anchor.htm +5 -5
- data/public/javascripts/tinymce/themes/advanced/charmap.htm +39 -40
- data/public/javascripts/tinymce/themes/advanced/color_picker.htm +10 -9
- data/public/javascripts/tinymce/themes/advanced/editor_template.js +1 -1
- data/public/javascripts/tinymce/themes/advanced/editor_template_src.js +172 -41
- data/public/javascripts/tinymce/themes/advanced/image.htm +51 -51
- data/public/javascripts/tinymce/themes/advanced/img/flash.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/iframe.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/pagebreak.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/quicktime.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/realmedia.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/shockwave.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/trans.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/video.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/img/windowsmedia.gif +0 -0
- data/public/javascripts/tinymce/themes/advanced/js/about.js +1 -0
- data/public/javascripts/tinymce/themes/advanced/js/anchor.js +5 -0
- data/public/javascripts/tinymce/themes/advanced/js/charmap.js +26 -6
- data/public/javascripts/tinymce/themes/advanced/js/color_picker.js +108 -32
- data/public/javascripts/tinymce/themes/advanced/js/image.js +3 -1
- data/public/javascripts/tinymce/themes/advanced/js/link.js +4 -7
- data/public/javascripts/tinymce/themes/advanced/js/source_editor.js +1 -1
- data/public/javascripts/tinymce/themes/advanced/langs/en.js +8 -2
- data/public/javascripts/tinymce/themes/advanced/langs/en_dlg.js +6 -3
- data/public/javascripts/tinymce/themes/advanced/link.htm +27 -28
- data/public/javascripts/tinymce/themes/advanced/shortcuts.htm +47 -0
- data/public/javascripts/tinymce/themes/advanced/skins/default/content.css +11 -0
- data/public/javascripts/tinymce/themes/advanced/skins/default/ui.css +4 -4
- data/public/javascripts/tinymce/themes/advanced/skins/highcontrast/content.css +23 -0
- data/public/javascripts/tinymce/themes/advanced/skins/highcontrast/dialog.css +105 -0
- data/public/javascripts/tinymce/themes/advanced/skins/highcontrast/ui.css +101 -0
- data/public/javascripts/tinymce/themes/advanced/skins/o2k7/content.css +10 -0
- data/public/javascripts/tinymce/themes/advanced/skins/o2k7/dialog.css +1 -0
- data/public/javascripts/tinymce/themes/advanced/skins/o2k7/ui.css +5 -4
- data/public/javascripts/tinymce/themes/advanced/skins/o2k7/ui_black.css +1 -1
- data/public/javascripts/tinymce/themes/advanced/skins/o2k7/ui_silver.css +1 -1
- data/public/javascripts/tinymce/themes/advanced/source_editor.htm +3 -3
- data/public/javascripts/tinymce/themes/simple/editor_template.js +1 -1
- data/public/javascripts/tinymce/themes/simple/editor_template_src.js +1 -2
- data/public/javascripts/tinymce/tiny_mce.js +1 -1
- data/public/javascripts/tinymce/tiny_mce_popup.js +1 -1
- data/public/javascripts/tinymce/tiny_mce_src.js +6488 -4070
- data/public/javascripts/tinymce/utils/form_utils.js +14 -4
- data/public/javascripts/tinymce/utils/mctabs.js +95 -10
- data/public/javascripts/tinymce/utils/validate.js +35 -3
- data/public/stylesheets/editor.css +23 -0
- data/spree_editor.gemspec +2 -2
- metadata +25 -4
@@ -80,8 +80,6 @@ function updateAction() {
|
|
80
80
|
return;
|
81
81
|
}
|
82
82
|
|
83
|
-
inst.execCommand('mceBeginUndoLevel');
|
84
|
-
|
85
83
|
switch (action) {
|
86
84
|
case "row":
|
87
85
|
updateRow(trElm);
|
@@ -123,19 +121,19 @@ function updateRow(tr_elm, skip_id, skip_parent) {
|
|
123
121
|
|
124
122
|
// Update row element
|
125
123
|
if (!skip_id)
|
126
|
-
|
124
|
+
dom.setAttrib(tr_elm, 'id', formObj.id.value);
|
127
125
|
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
126
|
+
dom.setAttrib(tr_elm, 'align', getSelectValue(formObj, 'align'));
|
127
|
+
dom.setAttrib(tr_elm, 'vAlign', getSelectValue(formObj, 'valign'));
|
128
|
+
dom.setAttrib(tr_elm, 'lang', formObj.lang.value);
|
129
|
+
dom.setAttrib(tr_elm, 'dir', getSelectValue(formObj, 'dir'));
|
130
|
+
dom.setAttrib(tr_elm, 'style', dom.serializeStyle(dom.parseStyle(formObj.style.value)));
|
133
131
|
dom.setAttrib(tr_elm, 'class', getSelectValue(formObj, 'class'));
|
134
132
|
|
135
133
|
// Clear deprecated attributes
|
136
|
-
|
137
|
-
|
138
|
-
|
134
|
+
dom.setAttrib(tr_elm, 'background', '');
|
135
|
+
dom.setAttrib(tr_elm, 'bgColor', '');
|
136
|
+
dom.setAttrib(tr_elm, 'height', '');
|
139
137
|
|
140
138
|
// Set styles
|
141
139
|
tr_elm.style.height = getCSSSize(formObj.height.value);
|
@@ -163,13 +161,10 @@ function updateRow(tr_elm, skip_id, skip_parent) {
|
|
163
161
|
if (newParent == null) {
|
164
162
|
newParent = doc.createElement(dest);
|
165
163
|
|
166
|
-
if (
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
theTable.insertBefore(newParent, theTable.firstChild);
|
171
|
-
} else
|
172
|
-
theTable.appendChild(newParent);
|
164
|
+
if (theTable.firstChild.nodeName == 'CAPTION')
|
165
|
+
inst.dom.insertAfter(newParent, theTable.firstChild);
|
166
|
+
else
|
167
|
+
theTable.insertBefore(newParent, theTable.firstChild);
|
173
168
|
}
|
174
169
|
|
175
170
|
// append the row to the new parent
|
@@ -12,7 +12,7 @@ function insertTable() {
|
|
12
12
|
tinyMCEPopup.restoreSelection();
|
13
13
|
|
14
14
|
if (!AutoValidator.validate(formObj)) {
|
15
|
-
tinyMCEPopup.alert(
|
15
|
+
tinyMCEPopup.alert(AutoValidator.getErrorMessages(formObj).join('. ') + '.');
|
16
16
|
return false;
|
17
17
|
}
|
18
18
|
|
@@ -21,7 +21,7 @@ function insertTable() {
|
|
21
21
|
// Get form data
|
22
22
|
cols = formObj.elements['cols'].value;
|
23
23
|
rows = formObj.elements['rows'].value;
|
24
|
-
border = formObj.elements['border'].value != "" ? formObj.elements['border'].value
|
24
|
+
border = formObj.elements['border'].value != "" ? formObj.elements['border'].value : 0;
|
25
25
|
cellpadding = formObj.elements['cellpadding'].value != "" ? formObj.elements['cellpadding'].value : "";
|
26
26
|
cellspacing = formObj.elements['cellspacing'].value != "" ? formObj.elements['cellspacing'].value : "";
|
27
27
|
align = getSelectValue(formObj, "align");
|
@@ -58,8 +58,6 @@ function insertTable() {
|
|
58
58
|
|
59
59
|
// Update table
|
60
60
|
if (action == "update") {
|
61
|
-
inst.execCommand('mceBeginUndoLevel');
|
62
|
-
|
63
61
|
dom.setAttrib(elm, 'cellPadding', cellpadding, true);
|
64
62
|
dom.setAttrib(elm, 'cellSpacing', cellspacing, true);
|
65
63
|
dom.setAttrib(elm, 'border', border);
|
@@ -82,7 +80,7 @@ function insertTable() {
|
|
82
80
|
capEl = elm.ownerDocument.createElement('caption');
|
83
81
|
|
84
82
|
if (!tinymce.isIE)
|
85
|
-
capEl.innerHTML = '<br
|
83
|
+
capEl.innerHTML = '<br data-mce-bogus="1"/>';
|
86
84
|
|
87
85
|
elm.insertBefore(capEl, elm.firstChild);
|
88
86
|
}
|
@@ -151,7 +149,7 @@ function insertTable() {
|
|
151
149
|
html += makeAttrib('border', border);
|
152
150
|
html += makeAttrib('cellpadding', cellpadding);
|
153
151
|
html += makeAttrib('cellspacing', cellspacing);
|
154
|
-
html += makeAttrib('
|
152
|
+
html += makeAttrib('data-mce-new', '1');
|
155
153
|
|
156
154
|
if (width && inst.settings.inline_styles) {
|
157
155
|
if (style)
|
@@ -187,7 +185,7 @@ function insertTable() {
|
|
187
185
|
|
188
186
|
if (caption) {
|
189
187
|
if (!tinymce.isIE)
|
190
|
-
html += '<caption><br
|
188
|
+
html += '<caption><br data-mce-bogus="1"/></caption>';
|
191
189
|
else
|
192
190
|
html += '<caption></caption>';
|
193
191
|
}
|
@@ -197,7 +195,7 @@ function insertTable() {
|
|
197
195
|
|
198
196
|
for (var x=0; x<cols; x++) {
|
199
197
|
if (!tinymce.isIE)
|
200
|
-
html += '<td><br
|
198
|
+
html += '<td><br data-mce-bogus="1"/></td>';
|
201
199
|
else
|
202
200
|
html += '<td></td>';
|
203
201
|
}
|
@@ -207,8 +205,6 @@ function insertTable() {
|
|
207
205
|
|
208
206
|
html += "</table>";
|
209
207
|
|
210
|
-
inst.execCommand('mceBeginUndoLevel');
|
211
|
-
|
212
208
|
// Move table
|
213
209
|
if (inst.settings.fix_table_elements) {
|
214
210
|
var patt = '';
|
@@ -231,7 +227,7 @@ function insertTable() {
|
|
231
227
|
} else
|
232
228
|
inst.execCommand('mceInsertContent', false, html);
|
233
229
|
|
234
|
-
tinymce.each(dom.select('table[
|
230
|
+
tinymce.each(dom.select('table[data-mce-new]'), function(node) {
|
235
231
|
var td = dom.select('td', node);
|
236
232
|
|
237
233
|
try {
|
@@ -242,7 +238,7 @@ function insertTable() {
|
|
242
238
|
// Ignore
|
243
239
|
}
|
244
240
|
|
245
|
-
dom.setAttrib(node, '
|
241
|
+
dom.setAttrib(node, 'data-mce-new', '');
|
246
242
|
});
|
247
243
|
|
248
244
|
inst.addVisual();
|
@@ -7,20 +7,20 @@
|
|
7
7
|
<script type="text/javascript" src="../../utils/validate.js"></script>
|
8
8
|
<script type="text/javascript" src="js/merge_cells.js"></script>
|
9
9
|
</head>
|
10
|
-
<body style="margin: 8px">
|
10
|
+
<body style="margin: 8px" role="application">
|
11
11
|
<form onsubmit="MergeCellsDialog.merge();return false;" action="#">
|
12
12
|
<fieldset>
|
13
13
|
<legend>{#table_dlg.merge_cells_title}</legend>
|
14
|
-
|
15
|
-
|
16
|
-
<td>{#table_dlg.cols}
|
17
|
-
<td align="right"><input type="text" name="numcols" value="" class="number min1 mceFocus" style="width: 30px" /></td>
|
18
|
-
|
19
|
-
|
20
|
-
<td>{#table_dlg.rows}
|
21
|
-
<td align="right"><input type="text" name="numrows" value="" class="number min1" style="width: 30px" /></td>
|
22
|
-
|
23
|
-
|
14
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="3" width="100%">
|
15
|
+
<tr>
|
16
|
+
<td><label for="numcols">{#table_dlg.cols}</label>:</td>
|
17
|
+
<td align="right"><input type="text" id="numcols" name="numcols" value="" class="number min1 mceFocus" style="width: 30px" aria-required="true" /></td>
|
18
|
+
</tr>
|
19
|
+
<tr>
|
20
|
+
<td><label for="numrows">{#table_dlg.rows}</label>:</td>
|
21
|
+
<td align="right"><input type="text" id="numrows" name="numrows" value="" class="number min1" style="width: 30px" aria-required="true" /></td>
|
22
|
+
</tr>
|
23
|
+
</table>
|
24
24
|
</fieldset>
|
25
25
|
|
26
26
|
<div class="mceActionPanel">
|
@@ -9,12 +9,12 @@
|
|
9
9
|
<script type="text/javascript" src="js/row.js"></script>
|
10
10
|
<link href="css/row.css" rel="stylesheet" type="text/css" />
|
11
11
|
</head>
|
12
|
-
<body id="tablerow" style="display: none">
|
12
|
+
<body id="tablerow" style="display: none" role="application">
|
13
13
|
<form onsubmit="updateAction();return false;" action="#">
|
14
14
|
<div class="tabs">
|
15
15
|
<ul>
|
16
|
-
<li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#table_dlg.general_tab}</a></span></li>
|
17
|
-
<li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#table_dlg.advanced_tab}</a></span></li>
|
16
|
+
<li id="general_tab" class="current" aria-controls="general_panel"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#table_dlg.general_tab}</a></span></li>
|
17
|
+
<li id="advanced_tab" aria-controls="advanced_panel"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#table_dlg.advanced_tab}</a></span></li>
|
18
18
|
</ul>
|
19
19
|
</div>
|
20
20
|
|
@@ -23,7 +23,7 @@
|
|
23
23
|
<fieldset>
|
24
24
|
<legend>{#table_dlg.general_props}</legend>
|
25
25
|
|
26
|
-
<table border="0" cellpadding="4" cellspacing="0">
|
26
|
+
<table role="presentation" border="0" cellpadding="4" cellspacing="0">
|
27
27
|
<tr>
|
28
28
|
<td><label for="rowtype">{#table_dlg.rowtype}</label></td>
|
29
29
|
<td class="col2">
|
@@ -80,7 +80,7 @@
|
|
80
80
|
<fieldset>
|
81
81
|
<legend>{#table_dlg.advanced_props}</legend>
|
82
82
|
|
83
|
-
<table border="0" cellpadding="0" cellspacing="4">
|
83
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="4">
|
84
84
|
<tr>
|
85
85
|
<td class="column1"><label for="id">{#table_dlg.id}</label></td>
|
86
86
|
<td><input id="id" name="id" type="text" value="" style="width: 200px" /></td>
|
@@ -112,7 +112,7 @@
|
|
112
112
|
<tr>
|
113
113
|
<td class="column1"><label for="backgroundimage">{#table_dlg.bgimage}</label></td>
|
114
114
|
<td>
|
115
|
-
<table border="0" cellpadding="0" cellspacing="0">
|
115
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="0">
|
116
116
|
<tr>
|
117
117
|
<td><input id="backgroundimage" name="backgroundimage" type="text" value="" style="width: 200px" onchange="changedBackgroundImage();" /></td>
|
118
118
|
<td id="backgroundimagebrowsercontainer"> </td>
|
@@ -122,14 +122,16 @@
|
|
122
122
|
</tr>
|
123
123
|
|
124
124
|
<tr>
|
125
|
-
<td class="column1"><label for="bgcolor">{#table_dlg.bgcolor}</label></td>
|
125
|
+
<td class="column1"><label for="bgcolor" id="bgcolor_label">{#table_dlg.bgcolor}</label></td>
|
126
126
|
<td>
|
127
|
-
<
|
127
|
+
<span role="group" aria-labelledby="bgcolor_label">
|
128
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="0">
|
128
129
|
<tr>
|
129
130
|
<td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>
|
130
131
|
<td id="bgcolor_pickcontainer"> </td>
|
131
132
|
</tr>
|
132
133
|
</table>
|
134
|
+
</span>
|
133
135
|
</td>
|
134
136
|
</tr>
|
135
137
|
</table>
|
@@ -10,12 +10,13 @@
|
|
10
10
|
<script type="text/javascript" src="js/table.js"></script>
|
11
11
|
<link href="css/table.css" rel="stylesheet" type="text/css" />
|
12
12
|
</head>
|
13
|
-
<body id="table" style="display: none">
|
13
|
+
<body id="table" style="display: none" role="application" aria-labelledby="app_title">
|
14
|
+
<span style="display:none;" id="app_title">{#table_dlg.title}</span>
|
14
15
|
<form onsubmit="insertTable();return false;" action="#">
|
15
16
|
<div class="tabs">
|
16
17
|
<ul>
|
17
|
-
<li id="general_tab" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#table_dlg.general_tab}</a></span></li>
|
18
|
-
<li id="advanced_tab"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#table_dlg.advanced_tab}</a></span></li>
|
18
|
+
<li id="general_tab" aria-controls="general_panel" class="current"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#table_dlg.general_tab}</a></span></li>
|
19
|
+
<li id="advanced_tab" aria-controls="advanced_panel"><span><a href="javascript:mcTabs.displayTab('advanced_tab','advanced_panel');" onmousedown="return false;">{#table_dlg.advanced_tab}</a></span></li>
|
19
20
|
</ul>
|
20
21
|
</div>
|
21
22
|
|
@@ -23,48 +24,48 @@
|
|
23
24
|
<div id="general_panel" class="panel current">
|
24
25
|
<fieldset>
|
25
26
|
<legend>{#table_dlg.general_props}</legend>
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
27
|
+
<table role="presentation" border="0" cellpadding="4" cellspacing="0" width="100%">
|
28
|
+
<tr>
|
29
|
+
<td><label id="colslabel" for="cols">{#table_dlg.cols}</label></td>
|
30
|
+
<td><input id="cols" name="cols" type="text" value="" size="3" maxlength="3" class="required number min1 mceFocus" aria-required="true" /></td>
|
31
|
+
<td><label id="rowslabel" for="rows">{#table_dlg.rows}</label></td>
|
32
|
+
<td><input id="rows" name="rows" type="text" value="" size="3" maxlength="3" class="required number min1" aria-required="true" /></td>
|
33
|
+
</tr>
|
34
|
+
<tr>
|
35
|
+
<td><label id="cellpaddinglabel" for="cellpadding">{#table_dlg.cellpadding}</label></td>
|
36
|
+
<td><input id="cellpadding" name="cellpadding" type="text" value="" size="3" maxlength="3" class="number" /></td>
|
37
|
+
<td><label id="cellspacinglabel" for="cellspacing">{#table_dlg.cellspacing}</label></td>
|
38
|
+
<td><input id="cellspacing" name="cellspacing" type="text" value="" size="3" maxlength="3" class="number" /></td>
|
39
|
+
</tr>
|
40
|
+
<tr>
|
41
|
+
<td><label id="alignlabel" for="align">{#table_dlg.align}</label></td>
|
42
|
+
<td><select id="align" name="align">
|
43
|
+
<option value="">{#not_set}</option>
|
44
|
+
<option value="center">{#table_dlg.align_middle}</option>
|
45
|
+
<option value="left">{#table_dlg.align_left}</option>
|
46
|
+
<option value="right">{#table_dlg.align_right}</option>
|
47
|
+
</select></td>
|
48
|
+
<td><label id="borderlabel" for="border">{#table_dlg.border}</label></td>
|
49
|
+
<td><input id="border" name="border" type="text" value="" size="3" maxlength="3" onchange="changedBorder();" class="number" /></td>
|
50
|
+
</tr>
|
51
|
+
<tr id="width_row">
|
52
|
+
<td><label id="widthlabel" for="width">{#table_dlg.width}</label></td>
|
53
|
+
<td><input name="width" type="text" id="width" value="" size="4" maxlength="4" onchange="changedSize();" class="size" /></td>
|
54
|
+
<td><label id="heightlabel" for="height">{#table_dlg.height}</label></td>
|
55
|
+
<td><input name="height" type="text" id="height" value="" size="4" maxlength="4" onchange="changedSize();" class="size" /></td>
|
56
|
+
</tr>
|
57
|
+
<tr id="styleSelectRow" >
|
58
|
+
<td><label id="classlabel" for="class">{#class_name}</label></td>
|
59
|
+
<td colspan="3" >
|
60
|
+
<select id="class" name="class" class="mceEditableSelect">
|
61
|
+
<option value="" selected="selected">{#not_set}</option>
|
62
|
+
</select></td>
|
63
|
+
</tr>
|
64
|
+
<tr>
|
65
|
+
<td class="column1" ><label for="caption">{#table_dlg.caption}</label></td>
|
66
|
+
<td><input id="caption" name="caption" type="checkbox" class="checkbox" value="true" /></td>
|
67
|
+
</tr>
|
68
|
+
</table>
|
68
69
|
</fieldset>
|
69
70
|
</div>
|
70
71
|
|
@@ -72,7 +73,7 @@
|
|
72
73
|
<fieldset>
|
73
74
|
<legend>{#table_dlg.advanced_props}</legend>
|
74
75
|
|
75
|
-
<table border="0" cellpadding="0" cellspacing="4">
|
76
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="4">
|
76
77
|
<tr>
|
77
78
|
<td class="column1"><label for="id">{#table_dlg.id}</label></td>
|
78
79
|
<td><input id="id" name="id" type="text" value="" class="advfield" /></td>
|
@@ -98,7 +99,7 @@
|
|
98
99
|
<tr>
|
99
100
|
<td class="column1"><label for="backgroundimage">{#table_dlg.bgimage}</label></td>
|
100
101
|
<td>
|
101
|
-
<table border="0" cellpadding="0" cellspacing="0">
|
102
|
+
<table role="presentation" aria-labelledby="backgroundimage_label" border="0" cellpadding="0" cellspacing="0">
|
102
103
|
<tr>
|
103
104
|
<td><input id="backgroundimage" name="backgroundimage" type="text" value="" class="advfield" onchange="changedBackgroundImage();" /></td>
|
104
105
|
<td id="backgroundimagebrowsercontainer"> </td>
|
@@ -150,10 +151,10 @@
|
|
150
151
|
</td>
|
151
152
|
</tr>
|
152
153
|
|
153
|
-
<tr>
|
154
|
-
<td class="column1"><label for="bordercolor">{#table_dlg.bordercolor}</label></td>
|
154
|
+
<tr role="group" aria-labelledby="bordercolor_label">
|
155
|
+
<td class="column1"><label id="bordercolor_label" for="bordercolor">{#table_dlg.bordercolor}</label></td>
|
155
156
|
<td>
|
156
|
-
<table border="0" cellpadding="0" cellspacing="0">
|
157
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="0">
|
157
158
|
<tr>
|
158
159
|
<td><input id="bordercolor" name="bordercolor" type="text" value="" size="9" onchange="updateColor('bordercolor_pick','bordercolor');changedColor();" /></td>
|
159
160
|
<td id="bordercolor_pickcontainer"> </td>
|
@@ -162,10 +163,10 @@
|
|
162
163
|
</td>
|
163
164
|
</tr>
|
164
165
|
|
165
|
-
<tr>
|
166
|
-
<td class="column1"><label for="bgcolor">{#table_dlg.bgcolor}</label></td>
|
166
|
+
<tr role="group" aria-labelledby="bgcolor_label">
|
167
|
+
<td class="column1"><label id="bgcolor_label" for="bgcolor">{#table_dlg.bgcolor}</label></td>
|
167
168
|
<td>
|
168
|
-
<table border="0" cellpadding="0" cellspacing="0">
|
169
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="0">
|
169
170
|
<tr>
|
170
171
|
<td><input id="bgcolor" name="bgcolor" type="text" value="" size="9" onchange="updateColor('bgcolor_pick','bgcolor');changedColor();" /></td>
|
171
172
|
<td id="bgcolor_pickcontainer"> </td>
|
@@ -1 +1 @@
|
|
1
|
-
(function(){tinymce.create("tinymce.plugins.VisualChars",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceVisualChars",c._toggleVisualChars,c);a.addButton("visualchars",{title:"visualchars.desc",cmd:"mceVisualChars"});a.onBeforeGetContent.add(function(d,e){if(c.state&&e.format!="raw"&&!e.draft){c.state=true;c._toggleVisualChars(false)}})},getInfo:function(){return{longname:"Visual characters",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_toggleVisualChars:function(m){var p=this,k=p.editor,a,g,j,n=k.getDoc(),o=k.getBody(),l,q=k.selection,e,c,f;p.state=!p.state;k.controlManager.setActive("visualchars",p.state);if(m){f=q.getBookmark()}if(p.state){a=[];tinymce.walk(o,function(b){if(b.nodeType==3&&b.nodeValue&&b.nodeValue.indexOf("\u00a0")!=-1){a.push(b)}},"childNodes");for(g=0;g<a.length;g++){l=a[g].nodeValue;l=l.replace(/(\u00a0)/g,'<span
|
1
|
+
(function(){tinymce.create("tinymce.plugins.VisualChars",{init:function(a,b){var c=this;c.editor=a;a.addCommand("mceVisualChars",c._toggleVisualChars,c);a.addButton("visualchars",{title:"visualchars.desc",cmd:"mceVisualChars"});a.onBeforeGetContent.add(function(d,e){if(c.state&&e.format!="raw"&&!e.draft){c.state=true;c._toggleVisualChars(false)}})},getInfo:function(){return{longname:"Visual characters",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars",version:tinymce.majorVersion+"."+tinymce.minorVersion}},_toggleVisualChars:function(m){var p=this,k=p.editor,a,g,j,n=k.getDoc(),o=k.getBody(),l,q=k.selection,e,c,f;p.state=!p.state;k.controlManager.setActive("visualchars",p.state);if(m){f=q.getBookmark()}if(p.state){a=[];tinymce.walk(o,function(b){if(b.nodeType==3&&b.nodeValue&&b.nodeValue.indexOf("\u00a0")!=-1){a.push(b)}},"childNodes");for(g=0;g<a.length;g++){l=a[g].nodeValue;l=l.replace(/(\u00a0)/g,'<span data-mce-bogus="1" class="mceItemHidden mceItemNbsp">$1</span>');c=k.dom.create("div",null,l);while(node=c.lastChild){k.dom.insertAfter(node,a[g])}k.dom.remove(a[g])}}else{a=k.dom.select("span.mceItemNbsp",o);for(g=a.length-1;g>=0;g--){k.dom.remove(a[g],1)}}q.moveToBookmark(f)}});tinymce.PluginManager.add("visualchars",tinymce.plugins.VisualChars)})();
|
@@ -59,7 +59,7 @@
|
|
59
59
|
|
60
60
|
for (i = 0; i < nl.length; i++) {
|
61
61
|
nv = nl[i].nodeValue;
|
62
|
-
nv = nv.replace(/(\u00a0)/g, '<span
|
62
|
+
nv = nv.replace(/(\u00a0)/g, '<span data-mce-bogus="1" class="mceItemHidden mceItemNbsp">$1</span>');
|
63
63
|
|
64
64
|
div = ed.dom.create('div', null, nv);
|
65
65
|
while (node = div.lastChild)
|
@@ -1 +1 @@
|
|
1
|
-
(function(){tinymce.create("tinymce.plugins.WordCount",{block:0,id:null,countre:null,cleanre:null,init:function(a,b){var c=this,d=0;c.countre=a.getParam("wordcount_countregex"
|
1
|
+
(function(){tinymce.create("tinymce.plugins.WordCount",{block:0,id:null,countre:null,cleanre:null,init:function(a,b){var c=this,d=0;c.countre=a.getParam("wordcount_countregex",/[\w\u2019\'-]+/g);c.cleanre=a.getParam("wordcount_cleanregex",/[0-9.(),;:!?%#$?\'\"_+=\\\/-]*/g);c.id=a.id+"-word-count";a.onPostRender.add(function(f,e){var g,h;h=f.getParam("wordcount_target_id");if(!h){g=tinymce.DOM.get(f.id+"_path_row");if(g){tinymce.DOM.add(g.parentNode,"div",{style:"float: right"},f.getLang("wordcount.words","Words: ")+'<span id="'+c.id+'">0</span>')}}else{tinymce.DOM.add(h,"span",{},'<span id="'+c.id+'">0</span>')}});a.onInit.add(function(e){e.selection.onSetContent.add(function(){c._count(e)});c._count(e)});a.onSetContent.add(function(e){c._count(e)});a.onKeyUp.add(function(f,g){if(g.keyCode==d){return}if(13==g.keyCode||8==d||46==d){c._count(f)}d=g.keyCode})},_getCount:function(c){var a=0;var b=c.getContent({format:"raw"});if(b){b=b.replace(/\.\.\./g," ");b=b.replace(/<.[^<>]*?>/g," ").replace(/ | /gi," ");b=b.replace(/(\w+)(&.+?;)+(\w+)/,"$1$3").replace(/&.+?;/g," ");b=b.replace(this.cleanre,"");var d=b.match(this.countre);if(d){a=d.length}}return a},_count:function(a){var b=this;if(b.block){return}b.block=1;setTimeout(function(){var c=b._getCount(a);tinymce.DOM.setHTML(b.id,c.toString());setTimeout(function(){b.block=0},2000)},1)},getInfo:function(){return{longname:"Word Count plugin",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("wordcount",tinymce.plugins.WordCount)})();
|
@@ -9,7 +9,7 @@
|
|
9
9
|
*/
|
10
10
|
|
11
11
|
(function() {
|
12
|
-
|
12
|
+
tinymce.create('tinymce.plugins.WordCount', {
|
13
13
|
block : 0,
|
14
14
|
id : null,
|
15
15
|
countre : null,
|
@@ -18,8 +18,8 @@
|
|
18
18
|
init : function(ed, url) {
|
19
19
|
var t = this, last = 0;
|
20
20
|
|
21
|
-
t.countre = ed.getParam('wordcount_countregex',
|
22
|
-
t.cleanre = ed.getParam('wordcount_cleanregex', /[0-9.()
|
21
|
+
t.countre = ed.getParam('wordcount_countregex', /[\w\u2019\'-]+/g); // u2019 == ’
|
22
|
+
t.cleanre = ed.getParam('wordcount_cleanregex', /[0-9.(),;:!?%#$?\'\"_+=\\\/-]*/g);
|
23
23
|
t.id = ed.id + '-word-count';
|
24
24
|
|
25
25
|
ed.onPostRender.add(function(ed, cm) {
|
@@ -32,11 +32,12 @@
|
|
32
32
|
|
33
33
|
if (row)
|
34
34
|
tinymce.DOM.add(row.parentNode, 'div', {'style': 'float: right'}, ed.getLang('wordcount.words', 'Words: ') + '<span id="' + t.id + '">0</span>');
|
35
|
-
} else
|
35
|
+
} else {
|
36
36
|
tinymce.DOM.add(id, 'span', {}, '<span id="' + t.id + '">0</span>');
|
37
|
+
}
|
37
38
|
});
|
38
39
|
|
39
|
-
|
40
|
+
ed.onInit.add(function(ed) {
|
40
41
|
ed.selection.onSetContent.add(function() {
|
41
42
|
t._count(ed);
|
42
43
|
});
|
@@ -59,8 +60,29 @@
|
|
59
60
|
});
|
60
61
|
},
|
61
62
|
|
63
|
+
_getCount : function(ed) {
|
64
|
+
var tc = 0;
|
65
|
+
var tx = ed.getContent({ format: 'raw' });
|
66
|
+
|
67
|
+
if (tx) {
|
68
|
+
tx = tx.replace(/\.\.\./g, ' '); // convert ellipses to spaces
|
69
|
+
tx = tx.replace(/<.[^<>]*?>/g, ' ').replace(/ | /gi, ' '); // remove html tags and space chars
|
70
|
+
|
71
|
+
// deal with html entities
|
72
|
+
tx = tx.replace(/(\w+)(&.+?;)+(\w+)/, "$1$3").replace(/&.+?;/g, ' ');
|
73
|
+
tx = tx.replace(this.cleanre, ''); // remove numbers and punctuation
|
74
|
+
|
75
|
+
var wordArray = tx.match(this.countre);
|
76
|
+
if (wordArray) {
|
77
|
+
tc = wordArray.length;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
|
81
|
+
return tc;
|
82
|
+
},
|
83
|
+
|
62
84
|
_count : function(ed) {
|
63
|
-
var t = this
|
85
|
+
var t = this;
|
64
86
|
|
65
87
|
// Keep multiple calls from happening at the same time
|
66
88
|
if (t.block)
|
@@ -69,21 +91,15 @@
|
|
69
91
|
t.block = 1;
|
70
92
|
|
71
93
|
setTimeout(function() {
|
72
|
-
|
73
|
-
|
74
|
-
if (tx) {
|
75
|
-
tx = tx.replace(/<.[^<>]*?>/g, ' ').replace(/ | /gi, ' '); // remove html tags and space chars
|
76
|
-
tx = tx.replace(t.cleanre, ''); // remove numbers and punctuation
|
77
|
-
tx.replace(t.countre, function() {tc++;}); // count the words
|
78
|
-
}
|
94
|
+
var tc = t._getCount(ed);
|
79
95
|
|
80
|
-
|
96
|
+
tinymce.DOM.setHTML(t.id, tc.toString());
|
81
97
|
|
82
|
-
|
98
|
+
setTimeout(function() {t.block = 0;}, 2000);
|
83
99
|
}, 1);
|
84
100
|
},
|
85
101
|
|
86
|
-
|
102
|
+
getInfo: function() {
|
87
103
|
return {
|
88
104
|
longname : 'Word Count plugin',
|
89
105
|
author : 'Moxiecode Systems AB',
|
@@ -91,8 +107,8 @@
|
|
91
107
|
infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount',
|
92
108
|
version : tinymce.majorVersion + "." + tinymce.minorVersion
|
93
109
|
};
|
94
|
-
|
95
|
-
|
110
|
+
}
|
111
|
+
});
|
96
112
|
|
97
|
-
|
113
|
+
tinymce.PluginManager.add('wordcount', tinymce.plugins.WordCount);
|
98
114
|
})();
|