tinymce-rails 3.4.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (222) hide show
  1. data/README.md +57 -0
  2. data/Rakefile +52 -0
  3. data/assets/integration/tinymce.jquery.js +3 -0
  4. data/assets/integration/tinymce.js +2 -0
  5. data/assets/integration/tinymce.preinit.js.erb +1 -0
  6. data/assets/vendor/tinymce/jquery.tinymce.js +1 -0
  7. data/assets/vendor/tinymce/langs/en.js +223 -0
  8. data/assets/vendor/tinymce/license.txt +504 -0
  9. data/assets/vendor/tinymce/plugins/advhr/css/advhr.css +5 -0
  10. data/assets/vendor/tinymce/plugins/advhr/editor_plugin.js +57 -0
  11. data/assets/vendor/tinymce/plugins/advhr/js/rule.js +43 -0
  12. data/assets/vendor/tinymce/plugins/advhr/langs/en_dlg.js +7 -0
  13. data/assets/vendor/tinymce/plugins/advhr/rule.htm +58 -0
  14. data/assets/vendor/tinymce/plugins/advimage/css/advimage.css +13 -0
  15. data/assets/vendor/tinymce/plugins/advimage/editor_plugin.js +50 -0
  16. data/assets/vendor/tinymce/plugins/advimage/image.htm +235 -0
  17. data/assets/vendor/tinymce/plugins/advimage/img/sample.gif +0 -0
  18. data/assets/vendor/tinymce/plugins/advimage/js/image.js +458 -0
  19. data/assets/vendor/tinymce/plugins/advimage/langs/en_dlg.js +45 -0
  20. data/assets/vendor/tinymce/plugins/advlink/css/advlink.css +8 -0
  21. data/assets/vendor/tinymce/plugins/advlink/editor_plugin.js +61 -0
  22. data/assets/vendor/tinymce/plugins/advlink/js/advlink.js +532 -0
  23. data/assets/vendor/tinymce/plugins/advlink/langs/en_dlg.js +54 -0
  24. data/assets/vendor/tinymce/plugins/advlink/link.htm +338 -0
  25. data/assets/vendor/tinymce/plugins/advlist/editor_plugin.js +176 -0
  26. data/assets/vendor/tinymce/plugins/autolink/editor_plugin.js +172 -0
  27. data/assets/vendor/tinymce/plugins/autoresize/editor_plugin.js +137 -0
  28. data/assets/vendor/tinymce/plugins/autosave/editor_plugin.js +431 -0
  29. data/assets/vendor/tinymce/plugins/autosave/langs/en.js +4 -0
  30. data/assets/vendor/tinymce/plugins/bbcode/editor_plugin.js +120 -0
  31. data/assets/vendor/tinymce/plugins/contextmenu/editor_plugin.js +160 -0
  32. data/assets/vendor/tinymce/plugins/directionality/editor_plugin.js +82 -0
  33. data/assets/vendor/tinymce/plugins/emotions/editor_plugin.js +43 -0
  34. data/assets/vendor/tinymce/plugins/emotions/emotions.htm +41 -0
  35. data/assets/vendor/tinymce/plugins/emotions/img/smiley-cool.gif +0 -0
  36. data/assets/vendor/tinymce/plugins/emotions/img/smiley-cry.gif +0 -0
  37. data/assets/vendor/tinymce/plugins/emotions/img/smiley-embarassed.gif +0 -0
  38. data/assets/vendor/tinymce/plugins/emotions/img/smiley-foot-in-mouth.gif +0 -0
  39. data/assets/vendor/tinymce/plugins/emotions/img/smiley-frown.gif +0 -0
  40. data/assets/vendor/tinymce/plugins/emotions/img/smiley-innocent.gif +0 -0
  41. data/assets/vendor/tinymce/plugins/emotions/img/smiley-kiss.gif +0 -0
  42. data/assets/vendor/tinymce/plugins/emotions/img/smiley-laughing.gif +0 -0
  43. data/assets/vendor/tinymce/plugins/emotions/img/smiley-money-mouth.gif +0 -0
  44. data/assets/vendor/tinymce/plugins/emotions/img/smiley-sealed.gif +0 -0
  45. data/assets/vendor/tinymce/plugins/emotions/img/smiley-smile.gif +0 -0
  46. data/assets/vendor/tinymce/plugins/emotions/img/smiley-surprised.gif +0 -0
  47. data/assets/vendor/tinymce/plugins/emotions/img/smiley-tongue-out.gif +0 -0
  48. data/assets/vendor/tinymce/plugins/emotions/img/smiley-undecided.gif +0 -0
  49. data/assets/vendor/tinymce/plugins/emotions/img/smiley-wink.gif +0 -0
  50. data/assets/vendor/tinymce/plugins/emotions/img/smiley-yell.gif +0 -0
  51. data/assets/vendor/tinymce/plugins/emotions/js/emotions.js +22 -0
  52. data/assets/vendor/tinymce/plugins/emotions/langs/en_dlg.js +20 -0
  53. data/assets/vendor/tinymce/plugins/example/dialog.htm +22 -0
  54. data/assets/vendor/tinymce/plugins/example/editor_plugin.js +84 -0
  55. data/assets/vendor/tinymce/plugins/example/img/example.gif +0 -0
  56. data/assets/vendor/tinymce/plugins/example/js/dialog.js +19 -0
  57. data/assets/vendor/tinymce/plugins/example/langs/en.js +3 -0
  58. data/assets/vendor/tinymce/plugins/example/langs/en_dlg.js +3 -0
  59. data/assets/vendor/tinymce/plugins/example_dependency/editor_plugin.js +50 -0
  60. data/assets/vendor/tinymce/plugins/fullpage/css/fullpage.css +143 -0
  61. data/assets/vendor/tinymce/plugins/fullpage/editor_plugin.js +399 -0
  62. data/assets/vendor/tinymce/plugins/fullpage/fullpage.htm +259 -0
  63. data/assets/vendor/tinymce/plugins/fullpage/js/fullpage.js +232 -0
  64. data/assets/vendor/tinymce/plugins/fullpage/langs/en_dlg.js +85 -0
  65. data/assets/vendor/tinymce/plugins/fullscreen/editor_plugin.js +159 -0
  66. data/assets/vendor/tinymce/plugins/fullscreen/fullscreen.htm +109 -0
  67. data/assets/vendor/tinymce/plugins/iespell/editor_plugin.js +54 -0
  68. data/assets/vendor/tinymce/plugins/inlinepopups/editor_plugin.js +696 -0
  69. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif +0 -0
  70. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/button.gif +0 -0
  71. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif +0 -0
  72. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif +0 -0
  73. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif +0 -0
  74. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif +0 -0
  75. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif +0 -0
  76. data/assets/vendor/tinymce/plugins/inlinepopups/skins/clearlooks2/window.css +90 -0
  77. data/assets/vendor/tinymce/plugins/inlinepopups/template.htm +387 -0
  78. data/assets/vendor/tinymce/plugins/insertdatetime/editor_plugin.js +83 -0
  79. data/assets/vendor/tinymce/plugins/layer/editor_plugin.js +214 -0
  80. data/assets/vendor/tinymce/plugins/legacyoutput/editor_plugin.js +139 -0
  81. data/assets/vendor/tinymce/plugins/lists/editor_plugin.js +688 -0
  82. data/assets/vendor/tinymce/plugins/media/css/media.css +17 -0
  83. data/assets/vendor/tinymce/plugins/media/editor_plugin.js +777 -0
  84. data/assets/vendor/tinymce/plugins/media/js/embed.js +73 -0
  85. data/assets/vendor/tinymce/plugins/media/js/media.js +355 -0
  86. data/assets/vendor/tinymce/plugins/media/langs/en_dlg.js +109 -0
  87. data/assets/vendor/tinymce/plugins/media/media.htm +812 -0
  88. data/assets/vendor/tinymce/plugins/media/moxieplayer.swf +0 -0
  89. data/assets/vendor/tinymce/plugins/nonbreaking/editor_plugin.js +53 -0
  90. data/assets/vendor/tinymce/plugins/noneditable/editor_plugin.js +95 -0
  91. data/assets/vendor/tinymce/plugins/pagebreak/editor_plugin.js +74 -0
  92. data/assets/vendor/tinymce/plugins/paste/editor_plugin.js +942 -0
  93. data/assets/vendor/tinymce/plugins/paste/js/pastetext.js +36 -0
  94. data/assets/vendor/tinymce/plugins/paste/js/pasteword.js +51 -0
  95. data/assets/vendor/tinymce/plugins/paste/langs/en_dlg.js +5 -0
  96. data/assets/vendor/tinymce/plugins/paste/pastetext.htm +27 -0
  97. data/assets/vendor/tinymce/plugins/paste/pasteword.htm +21 -0
  98. data/assets/vendor/tinymce/plugins/preview/editor_plugin.js +53 -0
  99. data/assets/vendor/tinymce/plugins/preview/example.html +28 -0
  100. data/assets/vendor/tinymce/plugins/preview/jscripts/embed.js +73 -0
  101. data/assets/vendor/tinymce/plugins/preview/preview.html +17 -0
  102. data/assets/vendor/tinymce/plugins/print/editor_plugin.js +34 -0
  103. data/assets/vendor/tinymce/plugins/save/editor_plugin.js +101 -0
  104. data/assets/vendor/tinymce/plugins/searchreplace/css/searchreplace.css +6 -0
  105. data/assets/vendor/tinymce/plugins/searchreplace/editor_plugin.js +61 -0
  106. data/assets/vendor/tinymce/plugins/searchreplace/js/searchreplace.js +142 -0
  107. data/assets/vendor/tinymce/plugins/searchreplace/langs/en_dlg.js +16 -0
  108. data/assets/vendor/tinymce/plugins/searchreplace/searchreplace.htm +100 -0
  109. data/assets/vendor/tinymce/plugins/spellchecker/css/content.css +1 -0
  110. data/assets/vendor/tinymce/plugins/spellchecker/editor_plugin.js +434 -0
  111. data/assets/vendor/tinymce/plugins/spellchecker/img/wline.gif +0 -0
  112. data/assets/vendor/tinymce/plugins/style/css/props.css +13 -0
  113. data/assets/vendor/tinymce/plugins/style/editor_plugin.js +55 -0
  114. data/assets/vendor/tinymce/plugins/style/js/props.js +635 -0
  115. data/assets/vendor/tinymce/plugins/style/langs/en_dlg.js +70 -0
  116. data/assets/vendor/tinymce/plugins/style/props.htm +838 -0
  117. data/assets/vendor/tinymce/plugins/tabfocus/editor_plugin.js +114 -0
  118. data/assets/vendor/tinymce/plugins/table/cell.htm +180 -0
  119. data/assets/vendor/tinymce/plugins/table/css/cell.css +17 -0
  120. data/assets/vendor/tinymce/plugins/table/css/row.css +25 -0
  121. data/assets/vendor/tinymce/plugins/table/css/table.css +13 -0
  122. data/assets/vendor/tinymce/plugins/table/editor_plugin.js +1263 -0
  123. data/assets/vendor/tinymce/plugins/table/js/cell.js +319 -0
  124. data/assets/vendor/tinymce/plugins/table/js/merge_cells.js +27 -0
  125. data/assets/vendor/tinymce/plugins/table/js/row.js +237 -0
  126. data/assets/vendor/tinymce/plugins/table/js/table.js +450 -0
  127. data/assets/vendor/tinymce/plugins/table/langs/en_dlg.js +75 -0
  128. data/assets/vendor/tinymce/plugins/table/merge_cells.htm +32 -0
  129. data/assets/vendor/tinymce/plugins/table/row.htm +158 -0
  130. data/assets/vendor/tinymce/plugins/table/table.htm +188 -0
  131. data/assets/vendor/tinymce/plugins/template/blank.htm +12 -0
  132. data/assets/vendor/tinymce/plugins/template/css/template.css +23 -0
  133. data/assets/vendor/tinymce/plugins/template/editor_plugin.js +159 -0
  134. data/assets/vendor/tinymce/plugins/template/js/template.js +106 -0
  135. data/assets/vendor/tinymce/plugins/template/langs/en_dlg.js +15 -0
  136. data/assets/vendor/tinymce/plugins/template/template.htm +31 -0
  137. data/assets/vendor/tinymce/plugins/visualchars/editor_plugin.js +83 -0
  138. data/assets/vendor/tinymce/plugins/wordcount/editor_plugin.js +114 -0
  139. data/assets/vendor/tinymce/plugins/xhtmlxtras/abbr.htm +142 -0
  140. data/assets/vendor/tinymce/plugins/xhtmlxtras/acronym.htm +142 -0
  141. data/assets/vendor/tinymce/plugins/xhtmlxtras/attributes.htm +149 -0
  142. data/assets/vendor/tinymce/plugins/xhtmlxtras/cite.htm +142 -0
  143. data/assets/vendor/tinymce/plugins/xhtmlxtras/css/attributes.css +11 -0
  144. data/assets/vendor/tinymce/plugins/xhtmlxtras/css/popup.css +9 -0
  145. data/assets/vendor/tinymce/plugins/xhtmlxtras/del.htm +162 -0
  146. data/assets/vendor/tinymce/plugins/xhtmlxtras/editor_plugin.js +132 -0
  147. data/assets/vendor/tinymce/plugins/xhtmlxtras/ins.htm +162 -0
  148. data/assets/vendor/tinymce/plugins/xhtmlxtras/js/abbr.js +28 -0
  149. data/assets/vendor/tinymce/plugins/xhtmlxtras/js/acronym.js +28 -0
  150. data/assets/vendor/tinymce/plugins/xhtmlxtras/js/attributes.js +111 -0
  151. data/assets/vendor/tinymce/plugins/xhtmlxtras/js/cite.js +28 -0
  152. data/assets/vendor/tinymce/plugins/xhtmlxtras/js/del.js +53 -0
  153. data/assets/vendor/tinymce/plugins/xhtmlxtras/js/element_common.js +229 -0
  154. data/assets/vendor/tinymce/plugins/xhtmlxtras/js/ins.js +53 -0
  155. data/assets/vendor/tinymce/plugins/xhtmlxtras/langs/en_dlg.js +32 -0
  156. data/assets/vendor/tinymce/themes/advanced/about.htm +52 -0
  157. data/assets/vendor/tinymce/themes/advanced/anchor.htm +26 -0
  158. data/assets/vendor/tinymce/themes/advanced/charmap.htm +51 -0
  159. data/assets/vendor/tinymce/themes/advanced/color_picker.htm +74 -0
  160. data/assets/vendor/tinymce/themes/advanced/editor_template.js +1358 -0
  161. data/assets/vendor/tinymce/themes/advanced/image.htm +80 -0
  162. data/assets/vendor/tinymce/themes/advanced/img/colorpicker.jpg +0 -0
  163. data/assets/vendor/tinymce/themes/advanced/img/flash.gif +0 -0
  164. data/assets/vendor/tinymce/themes/advanced/img/icons.gif +0 -0
  165. data/assets/vendor/tinymce/themes/advanced/img/iframe.gif +0 -0
  166. data/assets/vendor/tinymce/themes/advanced/img/pagebreak.gif +0 -0
  167. data/assets/vendor/tinymce/themes/advanced/img/quicktime.gif +0 -0
  168. data/assets/vendor/tinymce/themes/advanced/img/realmedia.gif +0 -0
  169. data/assets/vendor/tinymce/themes/advanced/img/shockwave.gif +0 -0
  170. data/assets/vendor/tinymce/themes/advanced/img/trans.gif +0 -0
  171. data/assets/vendor/tinymce/themes/advanced/img/video.gif +0 -0
  172. data/assets/vendor/tinymce/themes/advanced/img/windowsmedia.gif +0 -0
  173. data/assets/vendor/tinymce/themes/advanced/js/about.js +73 -0
  174. data/assets/vendor/tinymce/themes/advanced/js/anchor.js +42 -0
  175. data/assets/vendor/tinymce/themes/advanced/js/charmap.js +355 -0
  176. data/assets/vendor/tinymce/themes/advanced/js/color_picker.js +329 -0
  177. data/assets/vendor/tinymce/themes/advanced/js/image.js +247 -0
  178. data/assets/vendor/tinymce/themes/advanced/js/link.js +153 -0
  179. data/assets/vendor/tinymce/themes/advanced/js/source_editor.js +56 -0
  180. data/assets/vendor/tinymce/themes/advanced/langs/en.js +68 -0
  181. data/assets/vendor/tinymce/themes/advanced/langs/en_dlg.js +54 -0
  182. data/assets/vendor/tinymce/themes/advanced/link.htm +57 -0
  183. data/assets/vendor/tinymce/themes/advanced/shortcuts.htm +47 -0
  184. data/assets/vendor/tinymce/themes/advanced/skins/default/content.css +47 -0
  185. data/assets/vendor/tinymce/themes/advanced/skins/default/dialog.css +117 -0
  186. data/assets/vendor/tinymce/themes/advanced/skins/default/img/buttons.png +0 -0
  187. data/assets/vendor/tinymce/themes/advanced/skins/default/img/items.gif +0 -0
  188. data/assets/vendor/tinymce/themes/advanced/skins/default/img/menu_arrow.gif +0 -0
  189. data/assets/vendor/tinymce/themes/advanced/skins/default/img/menu_check.gif +0 -0
  190. data/assets/vendor/tinymce/themes/advanced/skins/default/img/progress.gif +0 -0
  191. data/assets/vendor/tinymce/themes/advanced/skins/default/img/tabs.gif +0 -0
  192. data/assets/vendor/tinymce/themes/advanced/skins/default/ui.css +214 -0
  193. data/assets/vendor/tinymce/themes/advanced/skins/highcontrast/content.css +23 -0
  194. data/assets/vendor/tinymce/themes/advanced/skins/highcontrast/dialog.css +105 -0
  195. data/assets/vendor/tinymce/themes/advanced/skins/highcontrast/ui.css +102 -0
  196. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/content.css +46 -0
  197. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/dialog.css +117 -0
  198. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/img/button_bg.png +0 -0
  199. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/img/button_bg_black.png +0 -0
  200. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/img/button_bg_silver.png +0 -0
  201. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/ui.css +217 -0
  202. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/ui_black.css +8 -0
  203. data/assets/vendor/tinymce/themes/advanced/skins/o2k7/ui_silver.css +5 -0
  204. data/assets/vendor/tinymce/themes/advanced/source_editor.htm +25 -0
  205. data/assets/vendor/tinymce/themes/simple/editor_template.js +84 -0
  206. data/assets/vendor/tinymce/themes/simple/img/icons.gif +0 -0
  207. data/assets/vendor/tinymce/themes/simple/langs/en.js +11 -0
  208. data/assets/vendor/tinymce/themes/simple/skins/default/content.css +25 -0
  209. data/assets/vendor/tinymce/themes/simple/skins/default/ui.css +32 -0
  210. data/assets/vendor/tinymce/themes/simple/skins/o2k7/content.css +17 -0
  211. data/assets/vendor/tinymce/themes/simple/skins/o2k7/img/button_bg.png +0 -0
  212. data/assets/vendor/tinymce/themes/simple/skins/o2k7/ui.css +35 -0
  213. data/assets/vendor/tinymce/tiny_mce.js +15338 -0
  214. data/assets/vendor/tinymce/tiny_mce_popup.js +5 -0
  215. data/assets/vendor/tinymce/utils/editable_selects.js +70 -0
  216. data/assets/vendor/tinymce/utils/form_utils.js +210 -0
  217. data/assets/vendor/tinymce/utils/mctabs.js +162 -0
  218. data/assets/vendor/tinymce/utils/validate.js +252 -0
  219. data/lib/tinymce-rails.rb +2 -0
  220. data/lib/tinymce/railtie.rb +17 -0
  221. data/lib/tinymce/version.rb +3 -0
  222. 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 == &rsquo;
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(/&nbsp;|&#160;/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>