tinymce-rails 3.4.3.2
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +57 -0
- data/Rakefile +52 -0
- data/assets/integration/tinymce.jquery.js +3 -0
- data/assets/integration/tinymce.js +2 -0
- data/assets/integration/tinymce.preinit.js.erb +1 -0
- data/assets/vendor/tinymce/jquery.tinymce.js +1 -0
- data/assets/vendor/tinymce/langs/en.js +223 -0
- data/assets/vendor/tinymce/license.txt +504 -0
- data/assets/vendor/tinymce/plugins/advhr/css/advhr.css +5 -0
- data/assets/vendor/tinymce/plugins/advhr/editor_plugin.js +57 -0
- data/assets/vendor/tinymce/plugins/advhr/js/rule.js +43 -0
- data/assets/vendor/tinymce/plugins/advhr/langs/en_dlg.js +7 -0
- data/assets/vendor/tinymce/plugins/advhr/rule.htm +58 -0
- data/assets/vendor/tinymce/plugins/advimage/css/advimage.css +13 -0
- data/assets/vendor/tinymce/plugins/advimage/editor_plugin.js +50 -0
- data/assets/vendor/tinymce/plugins/advimage/image.htm +235 -0
- data/assets/vendor/tinymce/plugins/advimage/img/sample.gif +0 -0
- data/assets/vendor/tinymce/plugins/advimage/js/image.js +458 -0
- data/assets/vendor/tinymce/plugins/advimage/langs/en_dlg.js +45 -0
- data/assets/vendor/tinymce/plugins/advlink/css/advlink.css +8 -0
- data/assets/vendor/tinymce/plugins/advlink/editor_plugin.js +61 -0
- data/assets/vendor/tinymce/plugins/advlink/js/advlink.js +532 -0
- data/assets/vendor/tinymce/plugins/advlink/langs/en_dlg.js +54 -0
- data/assets/vendor/tinymce/plugins/advlink/link.htm +338 -0
- data/assets/vendor/tinymce/plugins/advlist/editor_plugin.js +176 -0
- data/assets/vendor/tinymce/plugins/autolink/editor_plugin.js +172 -0
- data/assets/vendor/tinymce/plugins/autoresize/editor_plugin.js +137 -0
- data/assets/vendor/tinymce/plugins/autosave/editor_plugin.js +431 -0
- data/assets/vendor/tinymce/plugins/autosave/langs/en.js +4 -0
- data/assets/vendor/tinymce/plugins/bbcode/editor_plugin.js +120 -0
- data/assets/vendor/tinymce/plugins/contextmenu/editor_plugin.js +160 -0
- data/assets/vendor/tinymce/plugins/directionality/editor_plugin.js +82 -0
- data/assets/vendor/tinymce/plugins/emotions/editor_plugin.js +43 -0
- data/assets/vendor/tinymce/plugins/emotions/emotions.htm +41 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-cool.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-cry.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-embarassed.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-foot-in-mouth.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-frown.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-innocent.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-kiss.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-laughing.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-money-mouth.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-sealed.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-smile.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-surprised.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-tongue-out.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-undecided.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-wink.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/img/smiley-yell.gif +0 -0
- data/assets/vendor/tinymce/plugins/emotions/js/emotions.js +22 -0
- data/assets/vendor/tinymce/plugins/emotions/langs/en_dlg.js +20 -0
- data/assets/vendor/tinymce/plugins/example/dialog.htm +22 -0
- data/assets/vendor/tinymce/plugins/example/editor_plugin.js +84 -0
- data/assets/vendor/tinymce/plugins/example/img/example.gif +0 -0
- data/assets/vendor/tinymce/plugins/example/js/dialog.js +19 -0
- data/assets/vendor/tinymce/plugins/example/langs/en.js +3 -0
- data/assets/vendor/tinymce/plugins/example/langs/en_dlg.js +3 -0
- data/assets/vendor/tinymce/plugins/example_dependency/editor_plugin.js +50 -0
- data/assets/vendor/tinymce/plugins/fullpage/css/fullpage.css +143 -0
- data/assets/vendor/tinymce/plugins/fullpage/editor_plugin.js +399 -0
- data/assets/vendor/tinymce/plugins/fullpage/fullpage.htm +259 -0
- data/assets/vendor/tinymce/plugins/fullpage/js/fullpage.js +232 -0
- data/assets/vendor/tinymce/plugins/fullpage/langs/en_dlg.js +85 -0
- data/assets/vendor/tinymce/plugins/fullscreen/editor_plugin.js +159 -0
- data/assets/vendor/tinymce/plugins/fullscreen/fullscreen.htm +109 -0
- data/assets/vendor/tinymce/plugins/iespell/editor_plugin.js +54 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/editor_plugin.js +696 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif +0 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/button.gif +0 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif +0 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif +0 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif +0 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif +0 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif +0 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/window.css +90 -0
- data/assets/vendor/tinymce/plugins/inlinepopups/template.htm +387 -0
- data/assets/vendor/tinymce/plugins/insertdatetime/editor_plugin.js +83 -0
- data/assets/vendor/tinymce/plugins/layer/editor_plugin.js +214 -0
- data/assets/vendor/tinymce/plugins/legacyoutput/editor_plugin.js +139 -0
- data/assets/vendor/tinymce/plugins/lists/editor_plugin.js +688 -0
- data/assets/vendor/tinymce/plugins/media/css/media.css +17 -0
- data/assets/vendor/tinymce/plugins/media/editor_plugin.js +777 -0
- data/assets/vendor/tinymce/plugins/media/js/embed.js +73 -0
- data/assets/vendor/tinymce/plugins/media/js/media.js +355 -0
- data/assets/vendor/tinymce/plugins/media/langs/en_dlg.js +109 -0
- data/assets/vendor/tinymce/plugins/media/media.htm +812 -0
- data/assets/vendor/tinymce/plugins/media/moxieplayer.swf +0 -0
- data/assets/vendor/tinymce/plugins/nonbreaking/editor_plugin.js +53 -0
- data/assets/vendor/tinymce/plugins/noneditable/editor_plugin.js +95 -0
- data/assets/vendor/tinymce/plugins/pagebreak/editor_plugin.js +74 -0
- data/assets/vendor/tinymce/plugins/paste/editor_plugin.js +942 -0
- data/assets/vendor/tinymce/plugins/paste/js/pastetext.js +36 -0
- data/assets/vendor/tinymce/plugins/paste/js/pasteword.js +51 -0
- data/assets/vendor/tinymce/plugins/paste/langs/en_dlg.js +5 -0
- data/assets/vendor/tinymce/plugins/paste/pastetext.htm +27 -0
- data/assets/vendor/tinymce/plugins/paste/pasteword.htm +21 -0
- data/assets/vendor/tinymce/plugins/preview/editor_plugin.js +53 -0
- data/assets/vendor/tinymce/plugins/preview/example.html +28 -0
- data/assets/vendor/tinymce/plugins/preview/jscripts/embed.js +73 -0
- data/assets/vendor/tinymce/plugins/preview/preview.html +17 -0
- data/assets/vendor/tinymce/plugins/print/editor_plugin.js +34 -0
- data/assets/vendor/tinymce/plugins/save/editor_plugin.js +101 -0
- data/assets/vendor/tinymce/plugins/searchreplace/css/searchreplace.css +6 -0
- data/assets/vendor/tinymce/plugins/searchreplace/editor_plugin.js +61 -0
- data/assets/vendor/tinymce/plugins/searchreplace/js/searchreplace.js +142 -0
- data/assets/vendor/tinymce/plugins/searchreplace/langs/en_dlg.js +16 -0
- data/assets/vendor/tinymce/plugins/searchreplace/searchreplace.htm +100 -0
- data/assets/vendor/tinymce/plugins/spellchecker/css/content.css +1 -0
- data/assets/vendor/tinymce/plugins/spellchecker/editor_plugin.js +434 -0
- data/assets/vendor/tinymce/plugins/spellchecker/img/wline.gif +0 -0
- data/assets/vendor/tinymce/plugins/style/css/props.css +13 -0
- data/assets/vendor/tinymce/plugins/style/editor_plugin.js +55 -0
- data/assets/vendor/tinymce/plugins/style/js/props.js +635 -0
- data/assets/vendor/tinymce/plugins/style/langs/en_dlg.js +70 -0
- data/assets/vendor/tinymce/plugins/style/props.htm +838 -0
- data/assets/vendor/tinymce/plugins/tabfocus/editor_plugin.js +114 -0
- data/assets/vendor/tinymce/plugins/table/cell.htm +180 -0
- data/assets/vendor/tinymce/plugins/table/css/cell.css +17 -0
- data/assets/vendor/tinymce/plugins/table/css/row.css +25 -0
- data/assets/vendor/tinymce/plugins/table/css/table.css +13 -0
- data/assets/vendor/tinymce/plugins/table/editor_plugin.js +1263 -0
- data/assets/vendor/tinymce/plugins/table/js/cell.js +319 -0
- data/assets/vendor/tinymce/plugins/table/js/merge_cells.js +27 -0
- data/assets/vendor/tinymce/plugins/table/js/row.js +237 -0
- data/assets/vendor/tinymce/plugins/table/js/table.js +450 -0
- data/assets/vendor/tinymce/plugins/table/langs/en_dlg.js +75 -0
- data/assets/vendor/tinymce/plugins/table/merge_cells.htm +32 -0
- data/assets/vendor/tinymce/plugins/table/row.htm +158 -0
- data/assets/vendor/tinymce/plugins/table/table.htm +188 -0
- data/assets/vendor/tinymce/plugins/template/blank.htm +12 -0
- data/assets/vendor/tinymce/plugins/template/css/template.css +23 -0
- data/assets/vendor/tinymce/plugins/template/editor_plugin.js +159 -0
- data/assets/vendor/tinymce/plugins/template/js/template.js +106 -0
- data/assets/vendor/tinymce/plugins/template/langs/en_dlg.js +15 -0
- data/assets/vendor/tinymce/plugins/template/template.htm +31 -0
- data/assets/vendor/tinymce/plugins/visualchars/editor_plugin.js +83 -0
- data/assets/vendor/tinymce/plugins/wordcount/editor_plugin.js +114 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/abbr.htm +142 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/acronym.htm +142 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/attributes.htm +149 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/cite.htm +142 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/css/attributes.css +11 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/css/popup.css +9 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/del.htm +162 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/editor_plugin.js +132 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/ins.htm +162 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/js/abbr.js +28 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/js/acronym.js +28 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/js/attributes.js +111 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/js/cite.js +28 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/js/del.js +53 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/js/element_common.js +229 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/js/ins.js +53 -0
- data/assets/vendor/tinymce/plugins/xhtmlxtras/langs/en_dlg.js +32 -0
- data/assets/vendor/tinymce/themes/advanced/about.htm +52 -0
- data/assets/vendor/tinymce/themes/advanced/anchor.htm +26 -0
- data/assets/vendor/tinymce/themes/advanced/charmap.htm +51 -0
- data/assets/vendor/tinymce/themes/advanced/color_picker.htm +74 -0
- data/assets/vendor/tinymce/themes/advanced/editor_template.js +1358 -0
- data/assets/vendor/tinymce/themes/advanced/image.htm +80 -0
- data/assets/vendor/tinymce/themes/advanced/img/colorpicker.jpg +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/flash.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/icons.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/iframe.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/pagebreak.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/quicktime.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/realmedia.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/shockwave.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/trans.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/video.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/img/windowsmedia.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/js/about.js +73 -0
- data/assets/vendor/tinymce/themes/advanced/js/anchor.js +42 -0
- data/assets/vendor/tinymce/themes/advanced/js/charmap.js +355 -0
- data/assets/vendor/tinymce/themes/advanced/js/color_picker.js +329 -0
- data/assets/vendor/tinymce/themes/advanced/js/image.js +247 -0
- data/assets/vendor/tinymce/themes/advanced/js/link.js +153 -0
- data/assets/vendor/tinymce/themes/advanced/js/source_editor.js +56 -0
- data/assets/vendor/tinymce/themes/advanced/langs/en.js +68 -0
- data/assets/vendor/tinymce/themes/advanced/langs/en_dlg.js +54 -0
- data/assets/vendor/tinymce/themes/advanced/link.htm +57 -0
- data/assets/vendor/tinymce/themes/advanced/shortcuts.htm +47 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/content.css +47 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/dialog.css +117 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/img/buttons.png +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/img/items.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/img/menu_arrow.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/img/menu_check.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/img/progress.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/img/tabs.gif +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/default/ui.css +214 -0
- data/assets/vendor/tinymce/themes/advanced/skins/highcontrast/content.css +23 -0
- data/assets/vendor/tinymce/themes/advanced/skins/highcontrast/dialog.css +105 -0
- data/assets/vendor/tinymce/themes/advanced/skins/highcontrast/ui.css +102 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/content.css +46 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/dialog.css +117 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/img/button_bg.png +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/img/button_bg_black.png +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/img/button_bg_silver.png +0 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/ui.css +217 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/ui_black.css +8 -0
- data/assets/vendor/tinymce/themes/advanced/skins/o2k7/ui_silver.css +5 -0
- data/assets/vendor/tinymce/themes/advanced/source_editor.htm +25 -0
- data/assets/vendor/tinymce/themes/simple/editor_template.js +84 -0
- data/assets/vendor/tinymce/themes/simple/img/icons.gif +0 -0
- data/assets/vendor/tinymce/themes/simple/langs/en.js +11 -0
- data/assets/vendor/tinymce/themes/simple/skins/default/content.css +25 -0
- data/assets/vendor/tinymce/themes/simple/skins/default/ui.css +32 -0
- data/assets/vendor/tinymce/themes/simple/skins/o2k7/content.css +17 -0
- data/assets/vendor/tinymce/themes/simple/skins/o2k7/img/button_bg.png +0 -0
- data/assets/vendor/tinymce/themes/simple/skins/o2k7/ui.css +35 -0
- data/assets/vendor/tinymce/tiny_mce.js +15338 -0
- data/assets/vendor/tinymce/tiny_mce_popup.js +5 -0
- data/assets/vendor/tinymce/utils/editable_selects.js +70 -0
- data/assets/vendor/tinymce/utils/form_utils.js +210 -0
- data/assets/vendor/tinymce/utils/mctabs.js +162 -0
- data/assets/vendor/tinymce/utils/validate.js +252 -0
- data/lib/tinymce-rails.rb +2 -0
- data/lib/tinymce/railtie.rb +17 -0
- data/lib/tinymce/version.rb +3 -0
- metadata +300 -0
@@ -0,0 +1,106 @@
|
|
1
|
+
tinyMCEPopup.requireLangPack();
|
2
|
+
|
3
|
+
var TemplateDialog = {
|
4
|
+
preInit : function() {
|
5
|
+
var url = tinyMCEPopup.getParam("template_external_list_url");
|
6
|
+
|
7
|
+
if (url != null)
|
8
|
+
document.write('<sc'+'ript language="javascript" type="text/javascript" src="' + tinyMCEPopup.editor.documentBaseURI.toAbsolute(url) + '"></sc'+'ript>');
|
9
|
+
},
|
10
|
+
|
11
|
+
init : function() {
|
12
|
+
var ed = tinyMCEPopup.editor, tsrc, sel, x, u;
|
13
|
+
|
14
|
+
tsrc = ed.getParam("template_templates", false);
|
15
|
+
sel = document.getElementById('tpath');
|
16
|
+
|
17
|
+
// Setup external template list
|
18
|
+
if (!tsrc && typeof(tinyMCETemplateList) != 'undefined') {
|
19
|
+
for (x=0, tsrc = []; x<tinyMCETemplateList.length; x++)
|
20
|
+
tsrc.push({title : tinyMCETemplateList[x][0], src : tinyMCETemplateList[x][1], description : tinyMCETemplateList[x][2]});
|
21
|
+
}
|
22
|
+
|
23
|
+
for (x=0; x<tsrc.length; x++)
|
24
|
+
sel.options[sel.options.length] = new Option(tsrc[x].title, tinyMCEPopup.editor.documentBaseURI.toAbsolute(tsrc[x].src));
|
25
|
+
|
26
|
+
this.resize();
|
27
|
+
this.tsrc = tsrc;
|
28
|
+
},
|
29
|
+
|
30
|
+
resize : function() {
|
31
|
+
var w, h, e;
|
32
|
+
|
33
|
+
if (!self.innerWidth) {
|
34
|
+
w = document.body.clientWidth - 50;
|
35
|
+
h = document.body.clientHeight - 160;
|
36
|
+
} else {
|
37
|
+
w = self.innerWidth - 50;
|
38
|
+
h = self.innerHeight - 170;
|
39
|
+
}
|
40
|
+
|
41
|
+
e = document.getElementById('templatesrc');
|
42
|
+
|
43
|
+
if (e) {
|
44
|
+
e.style.height = Math.abs(h) + 'px';
|
45
|
+
e.style.width = Math.abs(w - 5) + 'px';
|
46
|
+
}
|
47
|
+
},
|
48
|
+
|
49
|
+
loadCSSFiles : function(d) {
|
50
|
+
var ed = tinyMCEPopup.editor;
|
51
|
+
|
52
|
+
tinymce.each(ed.getParam("content_css", '').split(','), function(u) {
|
53
|
+
d.write('<link href="' + ed.documentBaseURI.toAbsolute(u) + '" rel="stylesheet" type="text/css" />');
|
54
|
+
});
|
55
|
+
},
|
56
|
+
|
57
|
+
selectTemplate : function(u, ti) {
|
58
|
+
var d = window.frames['templatesrc'].document, x, tsrc = this.tsrc;
|
59
|
+
|
60
|
+
if (!u)
|
61
|
+
return;
|
62
|
+
|
63
|
+
d.body.innerHTML = this.templateHTML = this.getFileContents(u);
|
64
|
+
|
65
|
+
for (x=0; x<tsrc.length; x++) {
|
66
|
+
if (tsrc[x].title == ti)
|
67
|
+
document.getElementById('tmpldesc').innerHTML = tsrc[x].description || '';
|
68
|
+
}
|
69
|
+
},
|
70
|
+
|
71
|
+
insert : function() {
|
72
|
+
tinyMCEPopup.execCommand('mceInsertTemplate', false, {
|
73
|
+
content : this.templateHTML,
|
74
|
+
selection : tinyMCEPopup.editor.selection.getContent()
|
75
|
+
});
|
76
|
+
|
77
|
+
tinyMCEPopup.close();
|
78
|
+
},
|
79
|
+
|
80
|
+
getFileContents : function(u) {
|
81
|
+
var x, d, t = 'text/plain';
|
82
|
+
|
83
|
+
function g(s) {
|
84
|
+
x = 0;
|
85
|
+
|
86
|
+
try {
|
87
|
+
x = new ActiveXObject(s);
|
88
|
+
} catch (s) {
|
89
|
+
}
|
90
|
+
|
91
|
+
return x;
|
92
|
+
};
|
93
|
+
|
94
|
+
x = window.ActiveXObject ? g('Msxml2.XMLHTTP') || g('Microsoft.XMLHTTP') : new XMLHttpRequest();
|
95
|
+
|
96
|
+
// Synchronous AJAX load file
|
97
|
+
x.overrideMimeType && x.overrideMimeType(t);
|
98
|
+
x.open("GET", u, false);
|
99
|
+
x.send(null);
|
100
|
+
|
101
|
+
return x.responseText;
|
102
|
+
}
|
103
|
+
};
|
104
|
+
|
105
|
+
TemplateDialog.preInit();
|
106
|
+
tinyMCEPopup.onInit.add(TemplateDialog.init, TemplateDialog);
|
@@ -0,0 +1,15 @@
|
|
1
|
+
tinyMCE.addI18n('en.template_dlg',{
|
2
|
+
title:"Templates",
|
3
|
+
label:"Template",
|
4
|
+
desc_label:"Description",
|
5
|
+
desc:"Insert predefined template content",
|
6
|
+
select:"Select a template",
|
7
|
+
preview:"Preview",
|
8
|
+
warning:"Warning: Updating a template with a different one may cause data loss.",
|
9
|
+
mdate_format:"%Y-%m-%d %H:%M:%S",
|
10
|
+
cdate_format:"%Y-%m-%d %H:%M:%S",
|
11
|
+
months_long:"January,February,March,April,May,June,July,August,September,October,November,December",
|
12
|
+
months_short:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec",
|
13
|
+
day_long:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday",
|
14
|
+
day_short:"Sun,Mon,Tue,Wed,Thu,Fri,Sat,Sun"
|
15
|
+
});
|
@@ -0,0 +1,31 @@
|
|
1
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
2
|
+
<head>
|
3
|
+
<title>{#template_dlg.title}</title>
|
4
|
+
<script type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
5
|
+
<script type="text/javascript" src="js/template.js"></script>
|
6
|
+
<link href="css/template.css" rel="stylesheet" type="text/css" />
|
7
|
+
</head>
|
8
|
+
<body onresize="TemplateDialog.resize();">
|
9
|
+
<form onsubmit="TemplateDialog.insert();return false;">
|
10
|
+
<div id="frmbody">
|
11
|
+
<div class="title">{#template_dlg.desc}</div>
|
12
|
+
<div class="frmRow"><label for="tpath" title="{#template_dlg.select}">{#template_dlg.label}:</label>
|
13
|
+
<select id="tpath" name="tpath" onchange="TemplateDialog.selectTemplate(this.options[this.selectedIndex].value, this.options[this.selectedIndex].text);" class="mceFocus">
|
14
|
+
<option value="">{#template_dlg.select}...</option>
|
15
|
+
</select>
|
16
|
+
<span id="warning"></span></div>
|
17
|
+
<div class="frmRow"><label for="tdesc">{#template_dlg.desc_label}:</label>
|
18
|
+
<span id="tmpldesc"></span></div>
|
19
|
+
<fieldset>
|
20
|
+
<legend>{#template_dlg.preview}</legend>
|
21
|
+
<iframe id="templatesrc" name="templatesrc" src="blank.htm" width="690" height="400" frameborder="0"></iframe>
|
22
|
+
</fieldset>
|
23
|
+
</div>
|
24
|
+
|
25
|
+
<div class="mceActionPanel">
|
26
|
+
<input type="submit" id="insert" name="insert" value="{#insert}" />
|
27
|
+
<input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
|
28
|
+
</div>
|
29
|
+
</form>
|
30
|
+
</body>
|
31
|
+
</html>
|
@@ -0,0 +1,83 @@
|
|
1
|
+
/**
|
2
|
+
* editor_plugin_src.js
|
3
|
+
*
|
4
|
+
* Copyright 2009, Moxiecode Systems AB
|
5
|
+
* Released under LGPL License.
|
6
|
+
*
|
7
|
+
* License: http://tinymce.moxiecode.com/license
|
8
|
+
* Contributing: http://tinymce.moxiecode.com/contributing
|
9
|
+
*/
|
10
|
+
|
11
|
+
(function() {
|
12
|
+
tinymce.create('tinymce.plugins.VisualChars', {
|
13
|
+
init : function(ed, url) {
|
14
|
+
var t = this;
|
15
|
+
|
16
|
+
t.editor = ed;
|
17
|
+
|
18
|
+
// Register commands
|
19
|
+
ed.addCommand('mceVisualChars', t._toggleVisualChars, t);
|
20
|
+
|
21
|
+
// Register buttons
|
22
|
+
ed.addButton('visualchars', {title : 'visualchars.desc', cmd : 'mceVisualChars'});
|
23
|
+
|
24
|
+
ed.onBeforeGetContent.add(function(ed, o) {
|
25
|
+
if (t.state && o.format != 'raw' && !o.draft) {
|
26
|
+
t.state = true;
|
27
|
+
t._toggleVisualChars(false);
|
28
|
+
}
|
29
|
+
});
|
30
|
+
},
|
31
|
+
|
32
|
+
getInfo : function() {
|
33
|
+
return {
|
34
|
+
longname : 'Visual characters',
|
35
|
+
author : 'Moxiecode Systems AB',
|
36
|
+
authorurl : 'http://tinymce.moxiecode.com',
|
37
|
+
infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/visualchars',
|
38
|
+
version : tinymce.majorVersion + "." + tinymce.minorVersion
|
39
|
+
};
|
40
|
+
},
|
41
|
+
|
42
|
+
// Private methods
|
43
|
+
|
44
|
+
_toggleVisualChars : function(bookmark) {
|
45
|
+
var t = this, ed = t.editor, nl, i, h, d = ed.getDoc(), b = ed.getBody(), nv, s = ed.selection, bo, div, bm;
|
46
|
+
|
47
|
+
t.state = !t.state;
|
48
|
+
ed.controlManager.setActive('visualchars', t.state);
|
49
|
+
|
50
|
+
if (bookmark)
|
51
|
+
bm = s.getBookmark();
|
52
|
+
|
53
|
+
if (t.state) {
|
54
|
+
nl = [];
|
55
|
+
tinymce.walk(b, function(n) {
|
56
|
+
if (n.nodeType == 3 && n.nodeValue && n.nodeValue.indexOf('\u00a0') != -1)
|
57
|
+
nl.push(n);
|
58
|
+
}, 'childNodes');
|
59
|
+
|
60
|
+
for (i = 0; i < nl.length; i++) {
|
61
|
+
nv = nl[i].nodeValue;
|
62
|
+
nv = nv.replace(/(\u00a0)/g, '<span data-mce-bogus="1" class="mceItemHidden mceItemNbsp">$1</span>');
|
63
|
+
|
64
|
+
div = ed.dom.create('div', null, nv);
|
65
|
+
while (node = div.lastChild)
|
66
|
+
ed.dom.insertAfter(node, nl[i]);
|
67
|
+
|
68
|
+
ed.dom.remove(nl[i]);
|
69
|
+
}
|
70
|
+
} else {
|
71
|
+
nl = ed.dom.select('span.mceItemNbsp', b);
|
72
|
+
|
73
|
+
for (i = nl.length - 1; i >= 0; i--)
|
74
|
+
ed.dom.remove(nl[i], 1);
|
75
|
+
}
|
76
|
+
|
77
|
+
s.moveToBookmark(bm);
|
78
|
+
}
|
79
|
+
});
|
80
|
+
|
81
|
+
// Register plugin
|
82
|
+
tinymce.PluginManager.add('visualchars', tinymce.plugins.VisualChars);
|
83
|
+
})();
|
@@ -0,0 +1,114 @@
|
|
1
|
+
/**
|
2
|
+
* editor_plugin_src.js
|
3
|
+
*
|
4
|
+
* Copyright 2009, Moxiecode Systems AB
|
5
|
+
* Released under LGPL License.
|
6
|
+
*
|
7
|
+
* License: http://tinymce.moxiecode.com/license
|
8
|
+
* Contributing: http://tinymce.moxiecode.com/contributing
|
9
|
+
*/
|
10
|
+
|
11
|
+
(function() {
|
12
|
+
tinymce.create('tinymce.plugins.WordCount', {
|
13
|
+
block : 0,
|
14
|
+
id : null,
|
15
|
+
countre : null,
|
16
|
+
cleanre : null,
|
17
|
+
|
18
|
+
init : function(ed, url) {
|
19
|
+
var t = this, last = 0;
|
20
|
+
|
21
|
+
t.countre = ed.getParam('wordcount_countregex', /[\w\u2019\'-]+/g); // u2019 == ’
|
22
|
+
t.cleanre = ed.getParam('wordcount_cleanregex', /[0-9.(),;:!?%#$?\'\"_+=\\\/-]*/g);
|
23
|
+
t.id = ed.id + '-word-count';
|
24
|
+
|
25
|
+
ed.onPostRender.add(function(ed, cm) {
|
26
|
+
var row, id;
|
27
|
+
|
28
|
+
// Add it to the specified id or the theme advanced path
|
29
|
+
id = ed.getParam('wordcount_target_id');
|
30
|
+
if (!id) {
|
31
|
+
row = tinymce.DOM.get(ed.id + '_path_row');
|
32
|
+
|
33
|
+
if (row)
|
34
|
+
tinymce.DOM.add(row.parentNode, 'div', {'style': 'float: right'}, ed.getLang('wordcount.words', 'Words: ') + '<span id="' + t.id + '">0</span>');
|
35
|
+
} else {
|
36
|
+
tinymce.DOM.add(id, 'span', {}, '<span id="' + t.id + '">0</span>');
|
37
|
+
}
|
38
|
+
});
|
39
|
+
|
40
|
+
ed.onInit.add(function(ed) {
|
41
|
+
ed.selection.onSetContent.add(function() {
|
42
|
+
t._count(ed);
|
43
|
+
});
|
44
|
+
|
45
|
+
t._count(ed);
|
46
|
+
});
|
47
|
+
|
48
|
+
ed.onSetContent.add(function(ed) {
|
49
|
+
t._count(ed);
|
50
|
+
});
|
51
|
+
|
52
|
+
ed.onKeyUp.add(function(ed, e) {
|
53
|
+
if (e.keyCode == last)
|
54
|
+
return;
|
55
|
+
|
56
|
+
if (13 == e.keyCode || 8 == last || 46 == last)
|
57
|
+
t._count(ed);
|
58
|
+
|
59
|
+
last = e.keyCode;
|
60
|
+
});
|
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
|
+
|
84
|
+
_count : function(ed) {
|
85
|
+
var t = this;
|
86
|
+
|
87
|
+
// Keep multiple calls from happening at the same time
|
88
|
+
if (t.block)
|
89
|
+
return;
|
90
|
+
|
91
|
+
t.block = 1;
|
92
|
+
|
93
|
+
setTimeout(function() {
|
94
|
+
var tc = t._getCount(ed);
|
95
|
+
|
96
|
+
tinymce.DOM.setHTML(t.id, tc.toString());
|
97
|
+
|
98
|
+
setTimeout(function() {t.block = 0;}, 2000);
|
99
|
+
}, 1);
|
100
|
+
},
|
101
|
+
|
102
|
+
getInfo: function() {
|
103
|
+
return {
|
104
|
+
longname : 'Word Count plugin',
|
105
|
+
author : 'Moxiecode Systems AB',
|
106
|
+
authorurl : 'http://tinymce.moxiecode.com',
|
107
|
+
infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/wordcount',
|
108
|
+
version : tinymce.majorVersion + "." + tinymce.minorVersion
|
109
|
+
};
|
110
|
+
}
|
111
|
+
});
|
112
|
+
|
113
|
+
tinymce.PluginManager.add('wordcount', tinymce.plugins.WordCount);
|
114
|
+
})();
|
@@ -0,0 +1,142 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
3
|
+
<head>
|
4
|
+
<title>{#xhtmlxtras_dlg.title_abbr_element}</title>
|
5
|
+
<script type="text/javascript" src="../../tiny_mce_popup.js"></script>
|
6
|
+
<script type="text/javascript" src="../../utils/mctabs.js"></script>
|
7
|
+
<script type="text/javascript" src="../../utils/form_utils.js"></script>
|
8
|
+
<script type="text/javascript" src="../../utils/editable_selects.js"></script>
|
9
|
+
<script type="text/javascript" src="js/element_common.js"></script>
|
10
|
+
<script type="text/javascript" src="js/abbr.js"></script>
|
11
|
+
<link rel="stylesheet" type="text/css" href="css/popup.css" />
|
12
|
+
</head>
|
13
|
+
<body style="display: none" role="application" aria-labelledby="app_title">
|
14
|
+
<span style="display:none;" id="app_title">{#xhtmlxtras_dlg.title_abbr_element}</span>
|
15
|
+
<form onsubmit="insertAbbr();return false;" action="#">
|
16
|
+
<div class="tabs">
|
17
|
+
<ul>
|
18
|
+
<li id="general_tab" class="current" aria-controls="general_panel"><span><a href="javascript:mcTabs.displayTab('general_tab','general_panel');" onmousedown="return false;">{#xhtmlxtras_dlg.general_tab}</a></span></li>
|
19
|
+
<!-- <li id="events_tab"><span><a href="javascript:mcTabs.displayTab('events_tab','events_panel');" onmousedown="return false;">{#xhtmlxtras_dlg.events_tab}</a></span></li> -->
|
20
|
+
</ul>
|
21
|
+
</div>
|
22
|
+
|
23
|
+
<div class="panel_wrapper">
|
24
|
+
<div id="general_panel" class="panel current">
|
25
|
+
<fieldset>
|
26
|
+
<legend>{#xhtmlxtras_dlg.fieldset_attrib_tab}</legend>
|
27
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="4">
|
28
|
+
<tr>
|
29
|
+
<td class="label"><label id="titlelabel" for="title">{#xhtmlxtras_dlg.attribute_label_title}</label>:</td>
|
30
|
+
<td><input id="title" name="title" type="text" value="" class="field mceFocus" /></td>
|
31
|
+
</tr>
|
32
|
+
<tr>
|
33
|
+
<td class="label"><label id="idlabel" for="id">{#xhtmlxtras_dlg.attribute_label_id}</label>:</td>
|
34
|
+
<td><input id="id" name="id" type="text" value="" class="field" /></td>
|
35
|
+
</tr>
|
36
|
+
<tr>
|
37
|
+
<td class="label"><label id="classlabel" for="class">{#xhtmlxtras_dlg.attribute_label_class}</label>:</td>
|
38
|
+
<td>
|
39
|
+
<select id="class" name="class" class="field mceEditableSelect">
|
40
|
+
<option value="">{#not_set}</option>
|
41
|
+
</select>
|
42
|
+
</td>
|
43
|
+
</tr>
|
44
|
+
<tr>
|
45
|
+
<td class="label"><label id="stylelabel" for="style">{#xhtmlxtras_dlg.attribute_label_style}</label>:</td>
|
46
|
+
<td><input id="style" name="style" type="text" value="" class="field" /></td>
|
47
|
+
</tr>
|
48
|
+
<tr>
|
49
|
+
<td class="label"><label id="dirlabel" for="dir">{#xhtmlxtras_dlg.attribute_label_langdir}</label>:</td>
|
50
|
+
<td>
|
51
|
+
<select id="dir" name="dir" class="field">
|
52
|
+
<option value="">{#not_set}</option>
|
53
|
+
<option value="ltr">{#xhtmlxtras_dlg.attribute_option_ltr}</option>
|
54
|
+
<option value="rtl">{#xhtmlxtras_dlg.attribute_option_rtl}</option>
|
55
|
+
</select>
|
56
|
+
</td>
|
57
|
+
</tr>
|
58
|
+
<tr>
|
59
|
+
<td class="label"><label id="langlabel" for="lang">{#xhtmlxtras_dlg.attribute_label_langcode}</label>:</td>
|
60
|
+
<td>
|
61
|
+
<input id="lang" name="lang" type="text" value="" class="field" />
|
62
|
+
</td>
|
63
|
+
</tr>
|
64
|
+
</table>
|
65
|
+
</fieldset>
|
66
|
+
</div>
|
67
|
+
<div id="events_panel" class="panel">
|
68
|
+
<fieldset>
|
69
|
+
<legend>{#xhtmlxtras_dlg.fieldset_events_tab}</legend>
|
70
|
+
|
71
|
+
<table role="presentation" border="0" cellpadding="0" cellspacing="4">
|
72
|
+
<tr>
|
73
|
+
<td class="label"><label for="onfocus">onfocus</label>:</td>
|
74
|
+
<td><input id="onfocus" name="onfocus" type="text" value="" class="field" /></td>
|
75
|
+
</tr>
|
76
|
+
|
77
|
+
<tr>
|
78
|
+
<td class="label"><label for="onblur">onblur</label>:</td>
|
79
|
+
<td><input id="onblur" name="onblur" type="text" value="" class="field" /></td>
|
80
|
+
</tr>
|
81
|
+
|
82
|
+
<tr>
|
83
|
+
<td class="label"><label for="onclick">onclick</label>:</td>
|
84
|
+
<td><input id="onclick" name="onclick" type="text" value="" class="field" /></td>
|
85
|
+
</tr>
|
86
|
+
|
87
|
+
<tr>
|
88
|
+
<td class="label"><label for="ondblclick">ondblclick</label>:</td>
|
89
|
+
<td><input id="ondblclick" name="ondblclick" type="text" value="" class="field" /></td>
|
90
|
+
</tr>
|
91
|
+
|
92
|
+
<tr>
|
93
|
+
<td class="label"><label for="onmousedown">onmousedown</label>:</td>
|
94
|
+
<td><input id="onmousedown" name="onmousedown" type="text" value="" class="field" /></td>
|
95
|
+
</tr>
|
96
|
+
|
97
|
+
<tr>
|
98
|
+
<td class="label"><label for="onmouseup">onmouseup</label>:</td>
|
99
|
+
<td><input id="onmouseup" name="onmouseup" type="text" value="" class="field" /></td>
|
100
|
+
</tr>
|
101
|
+
|
102
|
+
<tr>
|
103
|
+
<td class="label"><label for="onmouseover">onmouseover</label>:</td>
|
104
|
+
<td><input id="onmouseover" name="onmouseover" type="text" value="" class="field" /></td>
|
105
|
+
</tr>
|
106
|
+
|
107
|
+
<tr>
|
108
|
+
<td class="label"><label for="onmousemove">onmousemove</label>:</td>
|
109
|
+
<td><input id="onmousemove" name="onmousemove" type="text" value="" class="field" /></td>
|
110
|
+
</tr>
|
111
|
+
|
112
|
+
<tr>
|
113
|
+
<td class="label"><label for="onmouseout">onmouseout</label>:</td>
|
114
|
+
<td><input id="onmouseout" name="onmouseout" type="text" value="" class="field" /></td>
|
115
|
+
</tr>
|
116
|
+
|
117
|
+
<tr>
|
118
|
+
<td class="label"><label for="onkeypress">onkeypress</label>:</td>
|
119
|
+
<td><input id="onkeypress" name="onkeypress" type="text" value="" class="field" /></td>
|
120
|
+
</tr>
|
121
|
+
|
122
|
+
<tr>
|
123
|
+
<td class="label"><label for="onkeydown">onkeydown</label>:</td>
|
124
|
+
<td><input id="onkeydown" name="onkeydown" type="text" value="" class="field" /></td>
|
125
|
+
</tr>
|
126
|
+
|
127
|
+
<tr>
|
128
|
+
<td class="label"><label for="onkeyup">onkeyup</label>:</td>
|
129
|
+
<td><input id="onkeyup" name="onkeyup" type="text" value="" class="field" /></td>
|
130
|
+
</tr>
|
131
|
+
</table>
|
132
|
+
</fieldset>
|
133
|
+
</div>
|
134
|
+
</div>
|
135
|
+
<div class="mceActionPanel">
|
136
|
+
<input type="submit" id="insert" name="insert" value="{#update}" />
|
137
|
+
<input type="button" id="remove" name="remove" class="button" value="{#xhtmlxtras_dlg.remove}" onclick="removeAbbr();" style="display: none;" />
|
138
|
+
<input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="tinyMCEPopup.close();" />
|
139
|
+
</div>
|
140
|
+
</form>
|
141
|
+
</body>
|
142
|
+
</html>
|