cable 0.9.16 → 0.9.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (261) hide show
  1. data/VERSION +1 -1
  2. data/app/controllers/admin_controller.rb +1 -1
  3. data/app/views/layouts/admin.html.erb +3 -1
  4. data/lib/generators/cable/install_generator.rb +1 -0
  5. data/lib/generators/cable/menu/templates/erb/menus/_menu.html.erb +1 -1
  6. data/lib/generators/cable/menu/templates/erb/menus/_resources.html.erb +1 -1
  7. data/lib/generators/cable/menu/templates/erb/menus/show.html.erb +1 -1
  8. data/public/javascripts/admin.js +16 -16
  9. metadata +2 -254
  10. data/public/javascripts/tinymce/jquery.tinymce.js +0 -1
  11. data/public/javascripts/tinymce/langs/en.js +0 -222
  12. data/public/javascripts/tinymce/license.txt +0 -504
  13. data/public/javascripts/tinymce/plugins/advhr/css/advhr.css +0 -5
  14. data/public/javascripts/tinymce/plugins/advhr/editor_plugin.js +0 -1
  15. data/public/javascripts/tinymce/plugins/advhr/editor_plugin_src.js +0 -57
  16. data/public/javascripts/tinymce/plugins/advhr/js/rule.js +0 -43
  17. data/public/javascripts/tinymce/plugins/advhr/langs/en_dlg.js +0 -7
  18. data/public/javascripts/tinymce/plugins/advhr/rule.htm +0 -58
  19. data/public/javascripts/tinymce/plugins/advimage/css/advimage.css +0 -13
  20. data/public/javascripts/tinymce/plugins/advimage/editor_plugin.js +0 -1
  21. data/public/javascripts/tinymce/plugins/advimage/editor_plugin_src.js +0 -50
  22. data/public/javascripts/tinymce/plugins/advimage/image.htm +0 -235
  23. data/public/javascripts/tinymce/plugins/advimage/img/sample.gif +0 -0
  24. data/public/javascripts/tinymce/plugins/advimage/js/image.js +0 -445
  25. data/public/javascripts/tinymce/plugins/advimage/langs/en_dlg.js +0 -45
  26. data/public/javascripts/tinymce/plugins/advlink/css/advlink.css +0 -8
  27. data/public/javascripts/tinymce/plugins/advlink/editor_plugin.js +0 -1
  28. data/public/javascripts/tinymce/plugins/advlink/editor_plugin_src.js +0 -61
  29. data/public/javascripts/tinymce/plugins/advlink/js/advlink.js +0 -523
  30. data/public/javascripts/tinymce/plugins/advlink/langs/en_dlg.js +0 -54
  31. data/public/javascripts/tinymce/plugins/advlink/link.htm +0 -338
  32. data/public/javascripts/tinymce/plugins/advlist/editor_plugin.js +0 -1
  33. data/public/javascripts/tinymce/plugins/advlist/editor_plugin_src.js +0 -154
  34. data/public/javascripts/tinymce/plugins/autolink/editor_plugin.js +0 -1
  35. data/public/javascripts/tinymce/plugins/autolink/editor_plugin_src.js +0 -169
  36. data/public/javascripts/tinymce/plugins/autoresize/editor_plugin.js +0 -1
  37. data/public/javascripts/tinymce/plugins/autoresize/editor_plugin_src.js +0 -119
  38. data/public/javascripts/tinymce/plugins/autosave/editor_plugin.js +0 -1
  39. data/public/javascripts/tinymce/plugins/autosave/editor_plugin_src.js +0 -431
  40. data/public/javascripts/tinymce/plugins/autosave/langs/en.js +0 -4
  41. data/public/javascripts/tinymce/plugins/bbcode/editor_plugin.js +0 -1
  42. data/public/javascripts/tinymce/plugins/bbcode/editor_plugin_src.js +0 -120
  43. data/public/javascripts/tinymce/plugins/contextmenu/editor_plugin.js +0 -1
  44. data/public/javascripts/tinymce/plugins/contextmenu/editor_plugin_src.js +0 -156
  45. data/public/javascripts/tinymce/plugins/directionality/editor_plugin.js +0 -1
  46. data/public/javascripts/tinymce/plugins/directionality/editor_plugin_src.js +0 -82
  47. data/public/javascripts/tinymce/plugins/emotions/editor_plugin.js +0 -1
  48. data/public/javascripts/tinymce/plugins/emotions/editor_plugin_src.js +0 -43
  49. data/public/javascripts/tinymce/plugins/emotions/emotions.htm +0 -41
  50. data/public/javascripts/tinymce/plugins/emotions/img/smiley-cool.gif +0 -0
  51. data/public/javascripts/tinymce/plugins/emotions/img/smiley-cry.gif +0 -0
  52. data/public/javascripts/tinymce/plugins/emotions/img/smiley-embarassed.gif +0 -0
  53. data/public/javascripts/tinymce/plugins/emotions/img/smiley-foot-in-mouth.gif +0 -0
  54. data/public/javascripts/tinymce/plugins/emotions/img/smiley-frown.gif +0 -0
  55. data/public/javascripts/tinymce/plugins/emotions/img/smiley-innocent.gif +0 -0
  56. data/public/javascripts/tinymce/plugins/emotions/img/smiley-kiss.gif +0 -0
  57. data/public/javascripts/tinymce/plugins/emotions/img/smiley-laughing.gif +0 -0
  58. data/public/javascripts/tinymce/plugins/emotions/img/smiley-money-mouth.gif +0 -0
  59. data/public/javascripts/tinymce/plugins/emotions/img/smiley-sealed.gif +0 -0
  60. data/public/javascripts/tinymce/plugins/emotions/img/smiley-smile.gif +0 -0
  61. data/public/javascripts/tinymce/plugins/emotions/img/smiley-surprised.gif +0 -0
  62. data/public/javascripts/tinymce/plugins/emotions/img/smiley-tongue-out.gif +0 -0
  63. data/public/javascripts/tinymce/plugins/emotions/img/smiley-undecided.gif +0 -0
  64. data/public/javascripts/tinymce/plugins/emotions/img/smiley-wink.gif +0 -0
  65. data/public/javascripts/tinymce/plugins/emotions/img/smiley-yell.gif +0 -0
  66. data/public/javascripts/tinymce/plugins/emotions/js/emotions.js +0 -22
  67. data/public/javascripts/tinymce/plugins/emotions/langs/en_dlg.js +0 -20
  68. data/public/javascripts/tinymce/plugins/example/dialog.htm +0 -22
  69. data/public/javascripts/tinymce/plugins/example/editor_plugin.js +0 -1
  70. data/public/javascripts/tinymce/plugins/example/editor_plugin_src.js +0 -84
  71. data/public/javascripts/tinymce/plugins/example/img/example.gif +0 -0
  72. data/public/javascripts/tinymce/plugins/example/js/dialog.js +0 -19
  73. data/public/javascripts/tinymce/plugins/example/langs/en.js +0 -3
  74. data/public/javascripts/tinymce/plugins/example/langs/en_dlg.js +0 -3
  75. data/public/javascripts/tinymce/plugins/fullpage/css/fullpage.css +0 -184
  76. data/public/javascripts/tinymce/plugins/fullpage/editor_plugin.js +0 -1
  77. data/public/javascripts/tinymce/plugins/fullpage/editor_plugin_src.js +0 -198
  78. data/public/javascripts/tinymce/plugins/fullpage/fullpage.htm +0 -571
  79. data/public/javascripts/tinymce/plugins/fullpage/js/fullpage.js +0 -497
  80. data/public/javascripts/tinymce/plugins/fullpage/langs/en_dlg.js +0 -85
  81. data/public/javascripts/tinymce/plugins/fullscreen/editor_plugin.js +0 -1
  82. data/public/javascripts/tinymce/plugins/fullscreen/editor_plugin_src.js +0 -159
  83. data/public/javascripts/tinymce/plugins/fullscreen/fullscreen.htm +0 -109
  84. data/public/javascripts/tinymce/plugins/iespell/editor_plugin.js +0 -1
  85. data/public/javascripts/tinymce/plugins/iespell/editor_plugin_src.js +0 -54
  86. data/public/javascripts/tinymce/plugins/inlinepopups/editor_plugin.js +0 -1
  87. data/public/javascripts/tinymce/plugins/inlinepopups/editor_plugin_src.js +0 -696
  88. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/img/alert.gif +0 -0
  89. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/img/button.gif +0 -0
  90. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif +0 -0
  91. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/img/confirm.gif +0 -0
  92. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/img/corners.gif +0 -0
  93. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/img/horizontal.gif +0 -0
  94. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/img/vertical.gif +0 -0
  95. data/public/javascripts/tinymce/plugins/inlinepopups/skins/clearlooks2/window.css +0 -90
  96. data/public/javascripts/tinymce/plugins/inlinepopups/template.htm +0 -387
  97. data/public/javascripts/tinymce/plugins/insertdatetime/editor_plugin.js +0 -1
  98. data/public/javascripts/tinymce/plugins/insertdatetime/editor_plugin_src.js +0 -83
  99. data/public/javascripts/tinymce/plugins/layer/editor_plugin.js +0 -1
  100. data/public/javascripts/tinymce/plugins/layer/editor_plugin_src.js +0 -214
  101. data/public/javascripts/tinymce/plugins/legacyoutput/editor_plugin.js +0 -1
  102. data/public/javascripts/tinymce/plugins/legacyoutput/editor_plugin_src.js +0 -139
  103. data/public/javascripts/tinymce/plugins/lists/editor_plugin.js +0 -1
  104. data/public/javascripts/tinymce/plugins/lists/editor_plugin_src.js +0 -617
  105. data/public/javascripts/tinymce/plugins/media/css/media.css +0 -17
  106. data/public/javascripts/tinymce/plugins/media/editor_plugin.js +0 -1
  107. data/public/javascripts/tinymce/plugins/media/editor_plugin_src.js +0 -770
  108. data/public/javascripts/tinymce/plugins/media/js/embed.js +0 -73
  109. data/public/javascripts/tinymce/plugins/media/js/media.js +0 -354
  110. data/public/javascripts/tinymce/plugins/media/langs/en_dlg.js +0 -109
  111. data/public/javascripts/tinymce/plugins/media/media.htm +0 -812
  112. data/public/javascripts/tinymce/plugins/media/moxieplayer.swf +0 -0
  113. data/public/javascripts/tinymce/plugins/nonbreaking/editor_plugin.js +0 -1
  114. data/public/javascripts/tinymce/plugins/nonbreaking/editor_plugin_src.js +0 -53
  115. data/public/javascripts/tinymce/plugins/noneditable/editor_plugin.js +0 -1
  116. data/public/javascripts/tinymce/plugins/noneditable/editor_plugin_src.js +0 -90
  117. data/public/javascripts/tinymce/plugins/pagebreak/editor_plugin.js +0 -1
  118. data/public/javascripts/tinymce/plugins/pagebreak/editor_plugin_src.js +0 -74
  119. data/public/javascripts/tinymce/plugins/paste/editor_plugin.js +0 -1
  120. data/public/javascripts/tinymce/plugins/paste/editor_plugin_src.js +0 -930
  121. data/public/javascripts/tinymce/plugins/paste/js/pastetext.js +0 -36
  122. data/public/javascripts/tinymce/plugins/paste/js/pasteword.js +0 -51
  123. data/public/javascripts/tinymce/plugins/paste/langs/en_dlg.js +0 -5
  124. data/public/javascripts/tinymce/plugins/paste/pastetext.htm +0 -27
  125. data/public/javascripts/tinymce/plugins/paste/pasteword.htm +0 -21
  126. data/public/javascripts/tinymce/plugins/preview/editor_plugin.js +0 -1
  127. data/public/javascripts/tinymce/plugins/preview/editor_plugin_src.js +0 -53
  128. data/public/javascripts/tinymce/plugins/preview/example.html +0 -28
  129. data/public/javascripts/tinymce/plugins/preview/jscripts/embed.js +0 -73
  130. data/public/javascripts/tinymce/plugins/preview/preview.html +0 -17
  131. data/public/javascripts/tinymce/plugins/print/editor_plugin.js +0 -1
  132. data/public/javascripts/tinymce/plugins/print/editor_plugin_src.js +0 -34
  133. data/public/javascripts/tinymce/plugins/save/editor_plugin.js +0 -1
  134. data/public/javascripts/tinymce/plugins/save/editor_plugin_src.js +0 -101
  135. data/public/javascripts/tinymce/plugins/searchreplace/css/searchreplace.css +0 -6
  136. data/public/javascripts/tinymce/plugins/searchreplace/editor_plugin.js +0 -1
  137. data/public/javascripts/tinymce/plugins/searchreplace/editor_plugin_src.js +0 -61
  138. data/public/javascripts/tinymce/plugins/searchreplace/js/searchreplace.js +0 -142
  139. data/public/javascripts/tinymce/plugins/searchreplace/langs/en_dlg.js +0 -16
  140. data/public/javascripts/tinymce/plugins/searchreplace/searchreplace.htm +0 -100
  141. data/public/javascripts/tinymce/plugins/spellchecker/css/content.css +0 -1
  142. data/public/javascripts/tinymce/plugins/spellchecker/editor_plugin.js +0 -1
  143. data/public/javascripts/tinymce/plugins/spellchecker/editor_plugin_src.js +0 -435
  144. data/public/javascripts/tinymce/plugins/spellchecker/img/wline.gif +0 -0
  145. data/public/javascripts/tinymce/plugins/style/css/props.css +0 -13
  146. data/public/javascripts/tinymce/plugins/style/editor_plugin.js +0 -1
  147. data/public/javascripts/tinymce/plugins/style/editor_plugin_src.js +0 -55
  148. data/public/javascripts/tinymce/plugins/style/js/props.js +0 -635
  149. data/public/javascripts/tinymce/plugins/style/langs/en_dlg.js +0 -70
  150. data/public/javascripts/tinymce/plugins/style/props.htm +0 -838
  151. data/public/javascripts/tinymce/plugins/tabfocus/editor_plugin.js +0 -1
  152. data/public/javascripts/tinymce/plugins/tabfocus/editor_plugin_src.js +0 -114
  153. data/public/javascripts/tinymce/plugins/table/cell.htm +0 -178
  154. data/public/javascripts/tinymce/plugins/table/css/cell.css +0 -17
  155. data/public/javascripts/tinymce/plugins/table/css/row.css +0 -25
  156. data/public/javascripts/tinymce/plugins/table/css/table.css +0 -13
  157. data/public/javascripts/tinymce/plugins/table/editor_plugin.js +0 -1
  158. data/public/javascripts/tinymce/plugins/table/editor_plugin_src.js +0 -1198
  159. data/public/javascripts/tinymce/plugins/table/js/cell.js +0 -284
  160. data/public/javascripts/tinymce/plugins/table/js/merge_cells.js +0 -27
  161. data/public/javascripts/tinymce/plugins/table/js/row.js +0 -232
  162. data/public/javascripts/tinymce/plugins/table/js/table.js +0 -450
  163. data/public/javascripts/tinymce/plugins/table/langs/en_dlg.js +0 -74
  164. data/public/javascripts/tinymce/plugins/table/merge_cells.htm +0 -32
  165. data/public/javascripts/tinymce/plugins/table/row.htm +0 -157
  166. data/public/javascripts/tinymce/plugins/table/table.htm +0 -188
  167. data/public/javascripts/tinymce/plugins/template/blank.htm +0 -12
  168. data/public/javascripts/tinymce/plugins/template/css/template.css +0 -23
  169. data/public/javascripts/tinymce/plugins/template/editor_plugin.js +0 -1
  170. data/public/javascripts/tinymce/plugins/template/editor_plugin_src.js +0 -159
  171. data/public/javascripts/tinymce/plugins/template/js/template.js +0 -106
  172. data/public/javascripts/tinymce/plugins/template/langs/en_dlg.js +0 -15
  173. data/public/javascripts/tinymce/plugins/template/template.htm +0 -31
  174. data/public/javascripts/tinymce/plugins/visualchars/editor_plugin.js +0 -1
  175. data/public/javascripts/tinymce/plugins/visualchars/editor_plugin_src.js +0 -83
  176. data/public/javascripts/tinymce/plugins/wordcount/editor_plugin.js +0 -1
  177. data/public/javascripts/tinymce/plugins/wordcount/editor_plugin_src.js +0 -114
  178. data/public/javascripts/tinymce/plugins/xhtmlxtras/abbr.htm +0 -142
  179. data/public/javascripts/tinymce/plugins/xhtmlxtras/acronym.htm +0 -142
  180. data/public/javascripts/tinymce/plugins/xhtmlxtras/attributes.htm +0 -149
  181. data/public/javascripts/tinymce/plugins/xhtmlxtras/cite.htm +0 -142
  182. data/public/javascripts/tinymce/plugins/xhtmlxtras/css/attributes.css +0 -11
  183. data/public/javascripts/tinymce/plugins/xhtmlxtras/css/popup.css +0 -9
  184. data/public/javascripts/tinymce/plugins/xhtmlxtras/del.htm +0 -162
  185. data/public/javascripts/tinymce/plugins/xhtmlxtras/editor_plugin.js +0 -1
  186. data/public/javascripts/tinymce/plugins/xhtmlxtras/editor_plugin_src.js +0 -132
  187. data/public/javascripts/tinymce/plugins/xhtmlxtras/ins.htm +0 -162
  188. data/public/javascripts/tinymce/plugins/xhtmlxtras/js/abbr.js +0 -28
  189. data/public/javascripts/tinymce/plugins/xhtmlxtras/js/acronym.js +0 -28
  190. data/public/javascripts/tinymce/plugins/xhtmlxtras/js/attributes.js +0 -125
  191. data/public/javascripts/tinymce/plugins/xhtmlxtras/js/cite.js +0 -28
  192. data/public/javascripts/tinymce/plugins/xhtmlxtras/js/del.js +0 -53
  193. data/public/javascripts/tinymce/plugins/xhtmlxtras/js/element_common.js +0 -229
  194. data/public/javascripts/tinymce/plugins/xhtmlxtras/js/ins.js +0 -53
  195. data/public/javascripts/tinymce/plugins/xhtmlxtras/langs/en_dlg.js +0 -32
  196. data/public/javascripts/tinymce/themes/advanced/about.htm +0 -52
  197. data/public/javascripts/tinymce/themes/advanced/anchor.htm +0 -26
  198. data/public/javascripts/tinymce/themes/advanced/charmap.htm +0 -51
  199. data/public/javascripts/tinymce/themes/advanced/color_picker.htm +0 -74
  200. data/public/javascripts/tinymce/themes/advanced/editor_template.js +0 -1
  201. data/public/javascripts/tinymce/themes/advanced/editor_template_src.js +0 -1360
  202. data/public/javascripts/tinymce/themes/advanced/image.htm +0 -80
  203. data/public/javascripts/tinymce/themes/advanced/img/colorpicker.jpg +0 -0
  204. data/public/javascripts/tinymce/themes/advanced/img/flash.gif +0 -0
  205. data/public/javascripts/tinymce/themes/advanced/img/icons.gif +0 -0
  206. data/public/javascripts/tinymce/themes/advanced/img/iframe.gif +0 -0
  207. data/public/javascripts/tinymce/themes/advanced/img/pagebreak.gif +0 -0
  208. data/public/javascripts/tinymce/themes/advanced/img/quicktime.gif +0 -0
  209. data/public/javascripts/tinymce/themes/advanced/img/realmedia.gif +0 -0
  210. data/public/javascripts/tinymce/themes/advanced/img/shockwave.gif +0 -0
  211. data/public/javascripts/tinymce/themes/advanced/img/trans.gif +0 -0
  212. data/public/javascripts/tinymce/themes/advanced/img/video.gif +0 -0
  213. data/public/javascripts/tinymce/themes/advanced/img/windowsmedia.gif +0 -0
  214. data/public/javascripts/tinymce/themes/advanced/js/about.js +0 -73
  215. data/public/javascripts/tinymce/themes/advanced/js/anchor.js +0 -42
  216. data/public/javascripts/tinymce/themes/advanced/js/charmap.js +0 -355
  217. data/public/javascripts/tinymce/themes/advanced/js/color_picker.js +0 -329
  218. data/public/javascripts/tinymce/themes/advanced/js/image.js +0 -247
  219. data/public/javascripts/tinymce/themes/advanced/js/link.js +0 -153
  220. data/public/javascripts/tinymce/themes/advanced/js/source_editor.js +0 -56
  221. data/public/javascripts/tinymce/themes/advanced/langs/en.js +0 -68
  222. data/public/javascripts/tinymce/themes/advanced/langs/en_dlg.js +0 -54
  223. data/public/javascripts/tinymce/themes/advanced/link.htm +0 -57
  224. data/public/javascripts/tinymce/themes/advanced/shortcuts.htm +0 -47
  225. data/public/javascripts/tinymce/themes/advanced/skins/default/content.css +0 -47
  226. data/public/javascripts/tinymce/themes/advanced/skins/default/dialog.css +0 -117
  227. data/public/javascripts/tinymce/themes/advanced/skins/default/img/buttons.png +0 -0
  228. data/public/javascripts/tinymce/themes/advanced/skins/default/img/items.gif +0 -0
  229. data/public/javascripts/tinymce/themes/advanced/skins/default/img/menu_arrow.gif +0 -0
  230. data/public/javascripts/tinymce/themes/advanced/skins/default/img/menu_check.gif +0 -0
  231. data/public/javascripts/tinymce/themes/advanced/skins/default/img/progress.gif +0 -0
  232. data/public/javascripts/tinymce/themes/advanced/skins/default/img/tabs.gif +0 -0
  233. data/public/javascripts/tinymce/themes/advanced/skins/default/ui.css +0 -213
  234. data/public/javascripts/tinymce/themes/advanced/skins/highcontrast/content.css +0 -23
  235. data/public/javascripts/tinymce/themes/advanced/skins/highcontrast/dialog.css +0 -105
  236. data/public/javascripts/tinymce/themes/advanced/skins/highcontrast/ui.css +0 -101
  237. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/content.css +0 -46
  238. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/dialog.css +0 -117
  239. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/img/button_bg.png +0 -0
  240. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/img/button_bg_black.png +0 -0
  241. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/img/button_bg_silver.png +0 -0
  242. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/ui.css +0 -216
  243. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/ui_black.css +0 -8
  244. data/public/javascripts/tinymce/themes/advanced/skins/o2k7/ui_silver.css +0 -5
  245. data/public/javascripts/tinymce/themes/advanced/source_editor.htm +0 -25
  246. data/public/javascripts/tinymce/themes/simple/editor_template.js +0 -1
  247. data/public/javascripts/tinymce/themes/simple/editor_template_src.js +0 -84
  248. data/public/javascripts/tinymce/themes/simple/img/icons.gif +0 -0
  249. data/public/javascripts/tinymce/themes/simple/langs/en.js +0 -11
  250. data/public/javascripts/tinymce/themes/simple/skins/default/content.css +0 -25
  251. data/public/javascripts/tinymce/themes/simple/skins/default/ui.css +0 -32
  252. data/public/javascripts/tinymce/themes/simple/skins/o2k7/content.css +0 -17
  253. data/public/javascripts/tinymce/themes/simple/skins/o2k7/img/button_bg.png +0 -0
  254. data/public/javascripts/tinymce/themes/simple/skins/o2k7/ui.css +0 -35
  255. data/public/javascripts/tinymce/tiny_mce.js +0 -1
  256. data/public/javascripts/tinymce/tiny_mce_popup.js +0 -5
  257. data/public/javascripts/tinymce/tiny_mce_src.js +0 -15752
  258. data/public/javascripts/tinymce/utils/editable_selects.js +0 -70
  259. data/public/javascripts/tinymce/utils/form_utils.js +0 -210
  260. data/public/javascripts/tinymce/utils/mctabs.js +0 -162
  261. data/public/javascripts/tinymce/utils/validate.js +0 -252
@@ -1,85 +0,0 @@
1
- tinyMCE.addI18n('en.fullpage_dlg',{
2
- title:"Document properties",
3
- meta_tab:"General",
4
- appearance_tab:"Appearance",
5
- advanced_tab:"Advanced",
6
- meta_props:"Meta information",
7
- langprops:"Language and encoding",
8
- meta_title:"Title",
9
- meta_keywords:"Keywords",
10
- meta_description:"Description",
11
- meta_robots:"Robots",
12
- doctypes:"Doctype",
13
- langcode:"Language code",
14
- langdir:"Language direction",
15
- ltr:"Left to right",
16
- rtl:"Right to left",
17
- xml_pi:"XML declaration",
18
- encoding:"Character encoding",
19
- appearance_bgprops:"Background properties",
20
- appearance_marginprops:"Body margins",
21
- appearance_linkprops:"Link colors",
22
- appearance_textprops:"Text properties",
23
- bgcolor:"Background color",
24
- bgimage:"Background image",
25
- left_margin:"Left margin",
26
- right_margin:"Right margin",
27
- top_margin:"Top margin",
28
- bottom_margin:"Bottom margin",
29
- text_color:"Text color",
30
- font_size:"Font size",
31
- font_face:"Font face",
32
- link_color:"Link color",
33
- hover_color:"Hover color",
34
- visited_color:"Visited color",
35
- active_color:"Active color",
36
- textcolor:"Color",
37
- fontsize:"Font size",
38
- fontface:"Font family",
39
- meta_index_follow:"Index and follow the links",
40
- meta_index_nofollow:"Index and don't follow the links",
41
- meta_noindex_follow:"Do not index but follow the links",
42
- meta_noindex_nofollow:"Do not index and don\'t follow the links",
43
- appearance_style:"Stylesheet and style properties",
44
- stylesheet:"Stylesheet",
45
- style:"Style",
46
- author:"Author",
47
- copyright:"Copyright",
48
- add:"Add new element",
49
- remove:"Remove selected element",
50
- moveup:"Move selected element up",
51
- movedown:"Move selected element down",
52
- head_elements:"Head elements",
53
- info:"Information",
54
- add_title:"Title element",
55
- add_meta:"Meta element",
56
- add_script:"Script element",
57
- add_style:"Style element",
58
- add_link:"Link element",
59
- add_base:"Base element",
60
- add_comment:"Comment node",
61
- title_element:"Title element",
62
- script_element:"Script element",
63
- style_element:"Style element",
64
- base_element:"Base element",
65
- link_element:"Link element",
66
- meta_element:"Meta element",
67
- comment_element:"Comment",
68
- src:"Src",
69
- language:"Language",
70
- href:"Href",
71
- target:"Target",
72
- type:"Type",
73
- charset:"Charset",
74
- defer:"Defer",
75
- media:"Media",
76
- properties:"Properties",
77
- name:"Name",
78
- value:"Value",
79
- content:"Content",
80
- rel:"Rel",
81
- rev:"Rev",
82
- hreflang:"Href lang",
83
- general_props:"General",
84
- advanced_props:"Advanced"
85
- });
@@ -1 +0,0 @@
1
- (function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand("mceFullScreen",function(){var i,j=a.doc.documentElement;if(d.getParam("fullscreen_is_enabled")){if(d.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",f.resizeFunc);tinyMCE.get(d.getParam("fullscreen_editor_id")).setContent(d.getContent({format:"raw"}),{format:"raw"});tinyMCE.remove(d);a.remove("mce_fullscreen_container");j.style.overflow=d.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",d.getParam("fullscreen_overflow"));a.win.scrollTo(d.getParam("fullscreen_scrollx"),d.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam("fullscreen_new_window")){i=a.win.open(e+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";g.fullscreen_html_overflow=a.getStyle(j,"overflow",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow=="visible"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&g.fullscreen_overflow=="scroll"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&(g.fullscreen_html_overflow=="visible"||g.fullscreen_html_overflow=="scroll")){g.fullscreen_html_overflow="auto"}if(g.fullscreen_overflow=="0px"){g.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");j.style.overflow="hidden";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6){b="absolute;top:"+c.y}else{b="fixed;top:0"}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+b+";left:0;width:"+c.w+"px;height:"+c.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id="mce_fullscreen";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent({format:"raw"}),{format:"raw"});d.execCommand("mceSave")};tinymce.each(d.getParam("fullscreen_settings"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location==="external"){g.theme_advanced_toolbar_location="top"}f.fullscreenEditor=new tinymce.Editor("mce_fullscreen",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().firstChild);m=l.dom.getSize(l.getContainer().getElementsByTagName("iframe")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});d.onNodeChange.add(function(i,h){h.setActive("fullscreen",i.getParam("fullscreen_is_enabled"))})},getInfo:function(){return{longname:"Fullscreen",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("fullscreen",tinymce.plugins.FullScreenPlugin)})();
@@ -1,159 +0,0 @@
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
- var DOM = tinymce.DOM;
13
-
14
- tinymce.create('tinymce.plugins.FullScreenPlugin', {
15
- init : function(ed, url) {
16
- var t = this, s = {}, vp, posCss;
17
-
18
- t.editor = ed;
19
-
20
- // Register commands
21
- ed.addCommand('mceFullScreen', function() {
22
- var win, de = DOM.doc.documentElement;
23
-
24
- if (ed.getParam('fullscreen_is_enabled')) {
25
- if (ed.getParam('fullscreen_new_window'))
26
- closeFullscreen(); // Call to close in new window
27
- else {
28
- DOM.win.setTimeout(function() {
29
- tinymce.dom.Event.remove(DOM.win, 'resize', t.resizeFunc);
30
- tinyMCE.get(ed.getParam('fullscreen_editor_id')).setContent(ed.getContent({format : 'raw'}), {format : 'raw'});
31
- tinyMCE.remove(ed);
32
- DOM.remove('mce_fullscreen_container');
33
- de.style.overflow = ed.getParam('fullscreen_html_overflow');
34
- DOM.setStyle(DOM.doc.body, 'overflow', ed.getParam('fullscreen_overflow'));
35
- DOM.win.scrollTo(ed.getParam('fullscreen_scrollx'), ed.getParam('fullscreen_scrolly'));
36
- tinyMCE.settings = tinyMCE.oldSettings; // Restore old settings
37
- }, 10);
38
- }
39
-
40
- return;
41
- }
42
-
43
- if (ed.getParam('fullscreen_new_window')) {
44
- win = DOM.win.open(url + "/fullscreen.htm", "mceFullScreenPopup", "fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width=" + screen.availWidth + ",height=" + screen.availHeight);
45
- try {
46
- win.resizeTo(screen.availWidth, screen.availHeight);
47
- } catch (e) {
48
- // Ignore
49
- }
50
- } else {
51
- tinyMCE.oldSettings = tinyMCE.settings; // Store old settings
52
- s.fullscreen_overflow = DOM.getStyle(DOM.doc.body, 'overflow', 1) || 'auto';
53
- s.fullscreen_html_overflow = DOM.getStyle(de, 'overflow', 1);
54
- vp = DOM.getViewPort();
55
- s.fullscreen_scrollx = vp.x;
56
- s.fullscreen_scrolly = vp.y;
57
-
58
- // Fixes an Opera bug where the scrollbars doesn't reappear
59
- if (tinymce.isOpera && s.fullscreen_overflow == 'visible')
60
- s.fullscreen_overflow = 'auto';
61
-
62
- // Fixes an IE bug where horizontal scrollbars would appear
63
- if (tinymce.isIE && s.fullscreen_overflow == 'scroll')
64
- s.fullscreen_overflow = 'auto';
65
-
66
- // Fixes an IE bug where the scrollbars doesn't reappear
67
- if (tinymce.isIE && (s.fullscreen_html_overflow == 'visible' || s.fullscreen_html_overflow == 'scroll'))
68
- s.fullscreen_html_overflow = 'auto';
69
-
70
- if (s.fullscreen_overflow == '0px')
71
- s.fullscreen_overflow = '';
72
-
73
- DOM.setStyle(DOM.doc.body, 'overflow', 'hidden');
74
- de.style.overflow = 'hidden'; //Fix for IE6/7
75
- vp = DOM.getViewPort();
76
- DOM.win.scrollTo(0, 0);
77
-
78
- if (tinymce.isIE)
79
- vp.h -= 1;
80
-
81
- // Use fixed position if it exists
82
- if (tinymce.isIE6)
83
- posCss = 'absolute;top:' + vp.y;
84
- else
85
- posCss = 'fixed;top:0';
86
-
87
- n = DOM.add(DOM.doc.body, 'div', {
88
- id : 'mce_fullscreen_container',
89
- style : 'position:' + posCss + ';left:0;width:' + vp.w + 'px;height:' + vp.h + 'px;z-index:200000;'});
90
- DOM.add(n, 'div', {id : 'mce_fullscreen'});
91
-
92
- tinymce.each(ed.settings, function(v, n) {
93
- s[n] = v;
94
- });
95
-
96
- s.id = 'mce_fullscreen';
97
- s.width = n.clientWidth;
98
- s.height = n.clientHeight - 15;
99
- s.fullscreen_is_enabled = true;
100
- s.fullscreen_editor_id = ed.id;
101
- s.theme_advanced_resizing = false;
102
- s.save_onsavecallback = function() {
103
- ed.setContent(tinyMCE.get(s.id).getContent({format : 'raw'}), {format : 'raw'});
104
- ed.execCommand('mceSave');
105
- };
106
-
107
- tinymce.each(ed.getParam('fullscreen_settings'), function(v, k) {
108
- s[k] = v;
109
- });
110
-
111
- if (s.theme_advanced_toolbar_location === 'external')
112
- s.theme_advanced_toolbar_location = 'top';
113
-
114
- t.fullscreenEditor = new tinymce.Editor('mce_fullscreen', s);
115
- t.fullscreenEditor.onInit.add(function() {
116
- t.fullscreenEditor.setContent(ed.getContent());
117
- t.fullscreenEditor.focus();
118
- });
119
-
120
- t.fullscreenEditor.render();
121
-
122
- t.fullscreenElement = new tinymce.dom.Element('mce_fullscreen_container');
123
- t.fullscreenElement.update();
124
- //document.body.overflow = 'hidden';
125
-
126
- t.resizeFunc = tinymce.dom.Event.add(DOM.win, 'resize', function() {
127
- var vp = tinymce.DOM.getViewPort(), fed = t.fullscreenEditor, outerSize, innerSize;
128
-
129
- // Get outer/inner size to get a delta size that can be used to calc the new iframe size
130
- outerSize = fed.dom.getSize(fed.getContainer().firstChild);
131
- innerSize = fed.dom.getSize(fed.getContainer().getElementsByTagName('iframe')[0]);
132
-
133
- fed.theme.resizeTo(vp.w - outerSize.w + innerSize.w, vp.h - outerSize.h + innerSize.h);
134
- });
135
- }
136
- });
137
-
138
- // Register buttons
139
- ed.addButton('fullscreen', {title : 'fullscreen.desc', cmd : 'mceFullScreen'});
140
-
141
- ed.onNodeChange.add(function(ed, cm) {
142
- cm.setActive('fullscreen', ed.getParam('fullscreen_is_enabled'));
143
- });
144
- },
145
-
146
- getInfo : function() {
147
- return {
148
- longname : 'Fullscreen',
149
- author : 'Moxiecode Systems AB',
150
- authorurl : 'http://tinymce.moxiecode.com',
151
- infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/fullscreen',
152
- version : tinymce.majorVersion + "." + tinymce.minorVersion
153
- };
154
- }
155
- });
156
-
157
- // Register plugin
158
- tinymce.PluginManager.add('fullscreen', tinymce.plugins.FullScreenPlugin);
159
- })();
@@ -1,109 +0,0 @@
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></title>
5
- <script type="text/javascript" src="../../tiny_mce.js"></script>
6
- <script type="text/javascript">
7
- function patchCallback(settings, key) {
8
- if (settings[key])
9
- settings[key] = "window.opener." + settings[key];
10
- }
11
-
12
- var settings = {}, paSe = window.opener.tinyMCE.activeEditor.settings, oeID = window.opener.tinyMCE.activeEditor.id;
13
-
14
- // Clone array
15
- for (var n in paSe)
16
- settings[n] = paSe[n];
17
-
18
- // Override options for fullscreen
19
- for (var n in paSe.fullscreen_settings)
20
- settings[n] = paSe.fullscreen_settings[n];
21
-
22
- // Patch callbacks, make them point to window.opener
23
- patchCallback(settings, 'urlconverter_callback');
24
- patchCallback(settings, 'insertlink_callback');
25
- patchCallback(settings, 'insertimage_callback');
26
- patchCallback(settings, 'setupcontent_callback');
27
- patchCallback(settings, 'save_callback');
28
- patchCallback(settings, 'onchange_callback');
29
- patchCallback(settings, 'init_instance_callback');
30
- patchCallback(settings, 'file_browser_callback');
31
- patchCallback(settings, 'cleanup_callback');
32
- patchCallback(settings, 'execcommand_callback');
33
- patchCallback(settings, 'oninit');
34
-
35
- // Set options
36
- delete settings.id;
37
- settings['mode'] = 'exact';
38
- settings['elements'] = 'fullscreenarea';
39
- settings['add_unload_trigger'] = false;
40
- settings['ask'] = false;
41
- settings['document_base_url'] = window.opener.tinyMCE.activeEditor.documentBaseURI.getURI();
42
- settings['fullscreen_is_enabled'] = true;
43
- settings['fullscreen_editor_id'] = oeID;
44
- settings['theme_advanced_resizing'] = false;
45
- settings['strict_loading_mode'] = true;
46
-
47
- settings.save_onsavecallback = function() {
48
- window.opener.tinyMCE.get(oeID).setContent(tinyMCE.get('fullscreenarea').getContent({format : 'raw'}), {format : 'raw'});
49
- window.opener.tinyMCE.get(oeID).execCommand('mceSave');
50
- window.close();
51
- };
52
-
53
- function unloadHandler(e) {
54
- moveContent();
55
- }
56
-
57
- function moveContent() {
58
- window.opener.tinyMCE.get(oeID).setContent(tinyMCE.activeEditor.getContent());
59
- }
60
-
61
- function closeFullscreen() {
62
- moveContent();
63
- window.close();
64
- }
65
-
66
- function doParentSubmit() {
67
- moveContent();
68
-
69
- if (window.opener.tinyMCE.selectedInstance.formElement.form)
70
- window.opener.tinyMCE.selectedInstance.formElement.form.submit();
71
-
72
- window.close();
73
-
74
- return false;
75
- }
76
-
77
- function render() {
78
- var e = document.getElementById('fullscreenarea'), vp, ed, ow, oh, dom = tinymce.DOM;
79
-
80
- e.value = window.opener.tinyMCE.get(oeID).getContent();
81
-
82
- vp = dom.getViewPort();
83
- settings.width = vp.w;
84
- settings.height = vp.h - 15;
85
-
86
- tinymce.dom.Event.add(window, 'resize', function() {
87
- var vp = dom.getViewPort();
88
-
89
- tinyMCE.activeEditor.theme.resizeTo(vp.w, vp.h);
90
- });
91
-
92
- tinyMCE.init(settings);
93
- }
94
-
95
- // Add onunload
96
- tinymce.dom.Event.add(window, "beforeunload", unloadHandler);
97
- </script>
98
- </head>
99
- <body style="margin:0;overflow:hidden;width:100%;height:100%" scrolling="no" scroll="no">
100
- <form onsubmit="doParentSubmit();">
101
- <textarea id="fullscreenarea" style="width:100%; height:100%"></textarea>
102
- </form>
103
-
104
- <script type="text/javascript">
105
- render();
106
- </script>
107
-
108
- </body>
109
- </html>
@@ -1 +0,0 @@
1
- (function(){tinymce.create("tinymce.plugins.IESpell",{init:function(a,b){var c=this,d;if(!tinymce.isIE){return}c.editor=a;a.addCommand("mceIESpell",function(){try{d=new ActiveXObject("ieSpell.ieSpellExtension");d.CheckDocumentNode(a.getDoc().documentElement)}catch(f){if(f.number==-2146827859){a.windowManager.confirm(a.getLang("iespell.download"),function(e){if(e){window.open("http://www.iespell.com/download.php","ieSpellDownload","")}})}else{a.windowManager.alert("Error Loading ieSpell: Exception "+f.number)}}});a.addButton("iespell",{title:"iespell.iespell_desc",cmd:"mceIESpell"})},getInfo:function(){return{longname:"IESpell (IE Only)",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.PluginManager.add("iespell",tinymce.plugins.IESpell)})();
@@ -1,54 +0,0 @@
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.IESpell', {
13
- init : function(ed, url) {
14
- var t = this, sp;
15
-
16
- if (!tinymce.isIE)
17
- return;
18
-
19
- t.editor = ed;
20
-
21
- // Register commands
22
- ed.addCommand('mceIESpell', function() {
23
- try {
24
- sp = new ActiveXObject("ieSpell.ieSpellExtension");
25
- sp.CheckDocumentNode(ed.getDoc().documentElement);
26
- } catch (e) {
27
- if (e.number == -2146827859) {
28
- ed.windowManager.confirm(ed.getLang("iespell.download"), function(s) {
29
- if (s)
30
- window.open('http://www.iespell.com/download.php', 'ieSpellDownload', '');
31
- });
32
- } else
33
- ed.windowManager.alert("Error Loading ieSpell: Exception " + e.number);
34
- }
35
- });
36
-
37
- // Register buttons
38
- ed.addButton('iespell', {title : 'iespell.iespell_desc', cmd : 'mceIESpell'});
39
- },
40
-
41
- getInfo : function() {
42
- return {
43
- longname : 'IESpell (IE Only)',
44
- author : 'Moxiecode Systems AB',
45
- authorurl : 'http://tinymce.moxiecode.com',
46
- infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/iespell',
47
- version : tinymce.majorVersion + "." + tinymce.minorVersion
48
- };
49
- }
50
- });
51
-
52
- // Register plugin
53
- tinymce.PluginManager.add('iespell', tinymce.plugins.IESpell);
54
- })();
@@ -1 +0,0 @@
1
- (function(){var d=tinymce.DOM,b=tinymce.dom.Element,a=tinymce.dom.Event,e=tinymce.each,c=tinymce.is;tinymce.create("tinymce.plugins.InlinePopups",{init:function(f,g){f.onBeforeRenderUI.add(function(){f.windowManager=new tinymce.InlineWindowManager(f);d.loadCSS(g+"/skins/"+(f.settings.inlinepopups_skin||"clearlooks2")+"/window.css")})},getInfo:function(){return{longname:"InlinePopups",author:"Moxiecode Systems AB",authorurl:"http://tinymce.moxiecode.com",infourl:"http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups",version:tinymce.majorVersion+"."+tinymce.minorVersion}}});tinymce.create("tinymce.InlineWindowManager:tinymce.WindowManager",{InlineWindowManager:function(f){var g=this;g.parent(f);g.zIndex=300000;g.count=0;g.windows={}},open:function(s,j){var z=this,i,k="",r=z.editor,g=0,v=0,h,m,o,q,l,x,y,n;s=s||{};j=j||{};if(!s.inline){return z.parent(s,j)}n=z._frontWindow();if(n&&d.get(n.id+"_ifr")){n.focussedElement=d.get(n.id+"_ifr").contentWindow.document.activeElement}if(!s.type){z.bookmark=r.selection.getBookmark(1)}i=d.uniqueId();h=d.getViewPort();s.width=parseInt(s.width||320);s.height=parseInt(s.height||240)+(tinymce.isIE?8:0);s.min_width=parseInt(s.min_width||150);s.min_height=parseInt(s.min_height||100);s.max_width=parseInt(s.max_width||2000);s.max_height=parseInt(s.max_height||2000);s.left=s.left||Math.round(Math.max(h.x,h.x+(h.w/2)-(s.width/2)));s.top=s.top||Math.round(Math.max(h.y,h.y+(h.h/2)-(s.height/2)));s.movable=s.resizable=true;j.mce_width=s.width;j.mce_height=s.height;j.mce_inline=true;j.mce_window_id=i;j.mce_auto_focus=s.auto_focus;z.features=s;z.params=j;z.onOpen.dispatch(z,s,j);if(s.type){k+=" mceModal";if(s.type){k+=" mce"+s.type.substring(0,1).toUpperCase()+s.type.substring(1)}s.resizable=false}if(s.statusbar){k+=" mceStatusbar"}if(s.resizable){k+=" mceResizable"}if(s.minimizable){k+=" mceMinimizable"}if(s.maximizable){k+=" mceMaximizable"}if(s.movable){k+=" mceMovable"}z._addAll(d.doc.body,["div",{id:i,role:"dialog","aria-labelledby":s.type?i+"_content":i+"_title","class":(r.settings.inlinepopups_skin||"clearlooks2")+(tinymce.isIE&&window.getSelection?" ie9":""),style:"width:100px;height:100px"},["div",{id:i+"_wrapper","class":"mceWrapper"+k},["div",{id:i+"_top","class":"mceTop"},["div",{"class":"mceLeft"}],["div",{"class":"mceCenter"}],["div",{"class":"mceRight"}],["span",{id:i+"_title"},s.title||""]],["div",{id:i+"_middle","class":"mceMiddle"},["div",{id:i+"_left","class":"mceLeft",tabindex:"0"}],["span",{id:i+"_content"}],["div",{id:i+"_right","class":"mceRight",tabindex:"0"}]],["div",{id:i+"_bottom","class":"mceBottom"},["div",{"class":"mceLeft"}],["div",{"class":"mceCenter"}],["div",{"class":"mceRight"}],["span",{id:i+"_status"},"Content"]],["a",{"class":"mceMove",tabindex:"-1",href:"javascript:;"}],["a",{"class":"mceMin",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceMax",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceMed",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{"class":"mceClose",tabindex:"-1",href:"javascript:;",onmousedown:"return false;"}],["a",{id:i+"_resize_n","class":"mceResize mceResizeN",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_s","class":"mceResize mceResizeS",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_w","class":"mceResize mceResizeW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_e","class":"mceResize mceResizeE",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_nw","class":"mceResize mceResizeNW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_ne","class":"mceResize mceResizeNE",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_sw","class":"mceResize mceResizeSW",tabindex:"-1",href:"javascript:;"}],["a",{id:i+"_resize_se","class":"mceResize mceResizeSE",tabindex:"-1",href:"javascript:;"}]]]);d.setStyles(i,{top:-10000,left:-10000});if(tinymce.isGecko){d.setStyle(i,"overflow","auto")}if(!s.type){g+=d.get(i+"_left").clientWidth;g+=d.get(i+"_right").clientWidth;v+=d.get(i+"_top").clientHeight;v+=d.get(i+"_bottom").clientHeight}d.setStyles(i,{top:s.top,left:s.left,width:s.width+g,height:s.height+v});y=s.url||s.file;if(y){if(tinymce.relaxedDomain){y+=(y.indexOf("?")==-1?"?":"&")+"mce_rdomain="+tinymce.relaxedDomain}y=tinymce._addVer(y)}if(!s.type){d.add(i+"_content","iframe",{id:i+"_ifr",src:'javascript:""',frameBorder:0,style:"border:0;width:10px;height:10px"});d.setStyles(i+"_ifr",{width:s.width,height:s.height});d.setAttrib(i+"_ifr","src",y)}else{d.add(i+"_wrapper","a",{id:i+"_ok","class":"mceButton mceOk",href:"javascript:;",onmousedown:"return false;"},"Ok");if(s.type=="confirm"){d.add(i+"_wrapper","a",{"class":"mceButton mceCancel",href:"javascript:;",onmousedown:"return false;"},"Cancel")}d.add(i+"_middle","div",{"class":"mceIcon"});d.setHTML(i+"_content",s.content.replace("\n","<br />"));a.add(i,"keyup",function(f){var p=27;if(f.keyCode===p){s.button_func(false);return a.cancel(f)}});a.add(i,"keydown",function(f){var t,p=9;if(f.keyCode===p){t=d.select("a.mceCancel",i+"_wrapper")[0];if(t&&t!==f.target){t.focus()}else{d.get(i+"_ok").focus()}return a.cancel(f)}})}o=a.add(i,"mousedown",function(t){var u=t.target,f,p;f=z.windows[i];z.focus(i);if(u.nodeName=="A"||u.nodeName=="a"){if(u.className=="mceMax"){f.oldPos=f.element.getXY();f.oldSize=f.element.getSize();p=d.getViewPort();p.w-=2;p.h-=2;f.element.moveTo(p.x,p.y);f.element.resizeTo(p.w,p.h);d.setStyles(i+"_ifr",{width:p.w-f.deltaWidth,height:p.h-f.deltaHeight});d.addClass(i+"_wrapper","mceMaximized")}else{if(u.className=="mceMed"){f.element.moveTo(f.oldPos.x,f.oldPos.y);f.element.resizeTo(f.oldSize.w,f.oldSize.h);f.iframeElement.resizeTo(f.oldSize.w-f.deltaWidth,f.oldSize.h-f.deltaHeight);d.removeClass(i+"_wrapper","mceMaximized")}else{if(u.className=="mceMove"){return z._startDrag(i,t,u.className)}else{if(d.hasClass(u,"mceResize")){return z._startDrag(i,t,u.className.substring(13))}}}}}});q=a.add(i,"click",function(f){var p=f.target;z.focus(i);if(p.nodeName=="A"||p.nodeName=="a"){switch(p.className){case"mceClose":z.close(null,i);return a.cancel(f);case"mceButton mceOk":case"mceButton mceCancel":s.button_func(p.className=="mceButton mceOk");return a.cancel(f)}}});a.add([i+"_left",i+"_right"],"focus",function(p){var t=d.get(i+"_ifr");if(t){var f=t.contentWindow.document.body;var u=d.select(":input:enabled,*[tabindex=0]",f);if(p.target.id===(i+"_left")){u[u.length-1].focus()}else{u[0].focus()}}else{d.get(i+"_ok").focus()}});x=z.windows[i]={id:i,mousedown_func:o,click_func:q,element:new b(i,{blocker:1,container:r.getContainer()}),iframeElement:new b(i+"_ifr"),features:s,deltaWidth:g,deltaHeight:v};x.iframeElement.on("focus",function(){z.focus(i)});if(z.count==0&&z.editor.getParam("dialog_type","modal")=="modal"){d.add(d.doc.body,"div",{id:"mceModalBlocker","class":(z.editor.settings.inlinepopups_skin||"clearlooks2")+"_modalBlocker",style:{zIndex:z.zIndex-1}});d.show("mceModalBlocker");d.setAttrib(d.doc.body,"aria-hidden","true")}else{d.setStyle("mceModalBlocker","z-index",z.zIndex-1)}if(tinymce.isIE6||/Firefox\/2\./.test(navigator.userAgent)||(tinymce.isIE&&!d.boxModel)){d.setStyles("mceModalBlocker",{position:"absolute",left:h.x,top:h.y,width:h.w-2,height:h.h-2})}d.setAttrib(i,"aria-hidden","false");z.focus(i);z._fixIELayout(i,1);if(d.get(i+"_ok")){d.get(i+"_ok").focus()}z.count++;return x},focus:function(h){var g=this,f;if(f=g.windows[h]){f.zIndex=this.zIndex++;f.element.setStyle("zIndex",f.zIndex);f.element.update();h=h+"_wrapper";d.removeClass(g.lastId,"mceFocus");d.addClass(h,"mceFocus");g.lastId=h;if(f.focussedElement){f.focussedElement.focus()}else{if(d.get(h+"_ok")){d.get(f.id+"_ok").focus()}else{if(d.get(f.id+"_ifr")){d.get(f.id+"_ifr").focus()}}}}},_addAll:function(k,h){var g,l,f=this,j=tinymce.DOM;if(c(h,"string")){k.appendChild(j.doc.createTextNode(h))}else{if(h.length){k=k.appendChild(j.create(h[0],h[1]));for(g=2;g<h.length;g++){f._addAll(k,h[g])}}}},_startDrag:function(v,G,E){var o=this,u,z,C=d.doc,f,l=o.windows[v],h=l.element,y=h.getXY(),x,q,F,g,A,s,r,j,i,m,k,n,B;g={x:0,y:0};A=d.getViewPort();A.w-=2;A.h-=2;j=G.screenX;i=G.screenY;m=k=n=B=0;u=a.add(C,"mouseup",function(p){a.remove(C,"mouseup",u);a.remove(C,"mousemove",z);if(f){f.remove()}h.moveBy(m,k);h.resizeBy(n,B);q=h.getSize();d.setStyles(v+"_ifr",{width:q.w-l.deltaWidth,height:q.h-l.deltaHeight});o._fixIELayout(v,1);return a.cancel(p)});if(E!="Move"){D()}function D(){if(f){return}o._fixIELayout(v,0);d.add(C.body,"div",{id:"mceEventBlocker","class":"mceEventBlocker "+(o.editor.settings.inlinepopups_skin||"clearlooks2"),style:{zIndex:o.zIndex+1}});if(tinymce.isIE6||(tinymce.isIE&&!d.boxModel)){d.setStyles("mceEventBlocker",{position:"absolute",left:A.x,top:A.y,width:A.w-2,height:A.h-2})}f=new b("mceEventBlocker");f.update();x=h.getXY();q=h.getSize();s=g.x+x.x-A.x;r=g.y+x.y-A.y;d.add(f.get(),"div",{id:"mcePlaceHolder","class":"mcePlaceHolder",style:{left:s,top:r,width:q.w,height:q.h}});F=new b("mcePlaceHolder")}z=a.add(C,"mousemove",function(w){var p,H,t;D();p=w.screenX-j;H=w.screenY-i;switch(E){case"ResizeW":m=p;n=0-p;break;case"ResizeE":n=p;break;case"ResizeN":case"ResizeNW":case"ResizeNE":if(E=="ResizeNW"){m=p;n=0-p}else{if(E=="ResizeNE"){n=p}}k=H;B=0-H;break;case"ResizeS":case"ResizeSW":case"ResizeSE":if(E=="ResizeSW"){m=p;n=0-p}else{if(E=="ResizeSE"){n=p}}B=H;break;case"mceMove":m=p;k=H;break}if(n<(t=l.features.min_width-q.w)){if(m!==0){m+=n-t}n=t}if(B<(t=l.features.min_height-q.h)){if(k!==0){k+=B-t}B=t}n=Math.min(n,l.features.max_width-q.w);B=Math.min(B,l.features.max_height-q.h);m=Math.max(m,A.x-(s+A.x));k=Math.max(k,A.y-(r+A.y));m=Math.min(m,(A.w+A.x)-(s+q.w+A.x));k=Math.min(k,(A.h+A.y)-(r+q.h+A.y));if(m+k!==0){if(s+m<0){m=0}if(r+k<0){k=0}F.moveTo(s+m,r+k)}if(n+B!==0){F.resizeTo(q.w+n,q.h+B)}return a.cancel(w)});return a.cancel(G)},resizeBy:function(g,h,i){var f=this.windows[i];if(f){f.element.resizeBy(g,h);f.iframeElement.resizeBy(g,h)}},close:function(i,k){var g=this,f,j=d.doc,h,k;k=g._findId(k||i);if(!g.windows[k]){g.parent(i);return}g.count--;if(g.count==0){d.remove("mceModalBlocker");d.setAttrib(d.doc.body,"aria-hidden","false");g.editor.focus()}if(f=g.windows[k]){g.onClose.dispatch(g);a.remove(j,"mousedown",f.mousedownFunc);a.remove(j,"click",f.clickFunc);a.clear(k);a.clear(k+"_ifr");d.setAttrib(k+"_ifr","src",'javascript:""');f.element.remove();delete g.windows[k];h=g._frontWindow();if(h){g.focus(h.id)}}},_frontWindow:function(){var g,f=0;e(this.windows,function(h){if(h.zIndex>f){g=h;f=h.zIndex}});return g},setTitle:function(f,g){var h;f=this._findId(f);if(h=d.get(f+"_title")){h.innerHTML=d.encode(g)}},alert:function(g,f,j){var i=this,h;h=i.open({title:i,type:"alert",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},confirm:function(g,f,j){var i=this,h;h=i.open({title:i,type:"confirm",button_func:function(k){if(f){f.call(k||i,k)}i.close(null,h.id)},content:d.encode(i.editor.getLang(g,g)),inline:1,width:400,height:130})},_findId:function(f){var g=this;if(typeof(f)=="string"){return f}e(g.windows,function(h){var i=d.get(h.id+"_ifr");if(i&&f==i.contentWindow){f=h.id;return false}});return f},_fixIELayout:function(i,h){var f,g;if(!tinymce.isIE6){return}e(["n","s","w","e","nw","ne","sw","se"],function(j){var k=d.get(i+"_resize_"+j);d.setStyles(k,{width:h?k.clientWidth:"",height:h?k.clientHeight:"",cursor:d.getStyle(k,"cursor",1)});d.setStyle(i+"_bottom","bottom","-1px");k=0});if(f=this.windows[i]){f.element.hide();f.element.show();e(d.select("div,a",i),function(k,j){if(k.currentStyle.backgroundImage!="none"){g=new Image();g.src=k.currentStyle.backgroundImage.replace(/url\(\"(.+)\"\)/,"$1")}});d.get(i).style.filter=""}}});tinymce.PluginManager.add("inlinepopups",tinymce.plugins.InlinePopups)})();
@@ -1,696 +0,0 @@
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
- var DOM = tinymce.DOM, Element = tinymce.dom.Element, Event = tinymce.dom.Event, each = tinymce.each, is = tinymce.is;
13
-
14
- tinymce.create('tinymce.plugins.InlinePopups', {
15
- init : function(ed, url) {
16
- // Replace window manager
17
- ed.onBeforeRenderUI.add(function() {
18
- ed.windowManager = new tinymce.InlineWindowManager(ed);
19
- DOM.loadCSS(url + '/skins/' + (ed.settings.inlinepopups_skin || 'clearlooks2') + "/window.css");
20
- });
21
- },
22
-
23
- getInfo : function() {
24
- return {
25
- longname : 'InlinePopups',
26
- author : 'Moxiecode Systems AB',
27
- authorurl : 'http://tinymce.moxiecode.com',
28
- infourl : 'http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/inlinepopups',
29
- version : tinymce.majorVersion + "." + tinymce.minorVersion
30
- };
31
- }
32
- });
33
-
34
- tinymce.create('tinymce.InlineWindowManager:tinymce.WindowManager', {
35
- InlineWindowManager : function(ed) {
36
- var t = this;
37
-
38
- t.parent(ed);
39
- t.zIndex = 300000;
40
- t.count = 0;
41
- t.windows = {};
42
- },
43
-
44
- open : function(f, p) {
45
- var t = this, id, opt = '', ed = t.editor, dw = 0, dh = 0, vp, po, mdf, clf, we, w, u, parentWindow;
46
-
47
- f = f || {};
48
- p = p || {};
49
-
50
- // Run native windows
51
- if (!f.inline)
52
- return t.parent(f, p);
53
-
54
- parentWindow = t._frontWindow();
55
- if (parentWindow && DOM.get(parentWindow.id + '_ifr')) {
56
- parentWindow.focussedElement = DOM.get(parentWindow.id + '_ifr').contentWindow.document.activeElement;
57
- }
58
-
59
- // Only store selection if the type is a normal window
60
- if (!f.type)
61
- t.bookmark = ed.selection.getBookmark(1);
62
-
63
- id = DOM.uniqueId();
64
- vp = DOM.getViewPort();
65
- f.width = parseInt(f.width || 320);
66
- f.height = parseInt(f.height || 240) + (tinymce.isIE ? 8 : 0);
67
- f.min_width = parseInt(f.min_width || 150);
68
- f.min_height = parseInt(f.min_height || 100);
69
- f.max_width = parseInt(f.max_width || 2000);
70
- f.max_height = parseInt(f.max_height || 2000);
71
- f.left = f.left || Math.round(Math.max(vp.x, vp.x + (vp.w / 2.0) - (f.width / 2.0)));
72
- f.top = f.top || Math.round(Math.max(vp.y, vp.y + (vp.h / 2.0) - (f.height / 2.0)));
73
- f.movable = f.resizable = true;
74
- p.mce_width = f.width;
75
- p.mce_height = f.height;
76
- p.mce_inline = true;
77
- p.mce_window_id = id;
78
- p.mce_auto_focus = f.auto_focus;
79
-
80
- // Transpose
81
- // po = DOM.getPos(ed.getContainer());
82
- // f.left -= po.x;
83
- // f.top -= po.y;
84
-
85
- t.features = f;
86
- t.params = p;
87
- t.onOpen.dispatch(t, f, p);
88
-
89
- if (f.type) {
90
- opt += ' mceModal';
91
-
92
- if (f.type)
93
- opt += ' mce' + f.type.substring(0, 1).toUpperCase() + f.type.substring(1);
94
-
95
- f.resizable = false;
96
- }
97
-
98
- if (f.statusbar)
99
- opt += ' mceStatusbar';
100
-
101
- if (f.resizable)
102
- opt += ' mceResizable';
103
-
104
- if (f.minimizable)
105
- opt += ' mceMinimizable';
106
-
107
- if (f.maximizable)
108
- opt += ' mceMaximizable';
109
-
110
- if (f.movable)
111
- opt += ' mceMovable';
112
-
113
- // Create DOM objects
114
- t._addAll(DOM.doc.body,
115
- ['div', {id : id, role : 'dialog', 'aria-labelledby': f.type ? id + '_content' : id + '_title', 'class' : (ed.settings.inlinepopups_skin || 'clearlooks2') + (tinymce.isIE && window.getSelection ? ' ie9' : ''), style : 'width:100px;height:100px'},
116
- ['div', {id : id + '_wrapper', 'class' : 'mceWrapper' + opt},
117
- ['div', {id : id + '_top', 'class' : 'mceTop'},
118
- ['div', {'class' : 'mceLeft'}],
119
- ['div', {'class' : 'mceCenter'}],
120
- ['div', {'class' : 'mceRight'}],
121
- ['span', {id : id + '_title'}, f.title || '']
122
- ],
123
-
124
- ['div', {id : id + '_middle', 'class' : 'mceMiddle'},
125
- ['div', {id : id + '_left', 'class' : 'mceLeft', tabindex : '0'}],
126
- ['span', {id : id + '_content'}],
127
- ['div', {id : id + '_right', 'class' : 'mceRight', tabindex : '0'}]
128
- ],
129
-
130
- ['div', {id : id + '_bottom', 'class' : 'mceBottom'},
131
- ['div', {'class' : 'mceLeft'}],
132
- ['div', {'class' : 'mceCenter'}],
133
- ['div', {'class' : 'mceRight'}],
134
- ['span', {id : id + '_status'}, 'Content']
135
- ],
136
-
137
- ['a', {'class' : 'mceMove', tabindex : '-1', href : 'javascript:;'}],
138
- ['a', {'class' : 'mceMin', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],
139
- ['a', {'class' : 'mceMax', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],
140
- ['a', {'class' : 'mceMed', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],
141
- ['a', {'class' : 'mceClose', tabindex : '-1', href : 'javascript:;', onmousedown : 'return false;'}],
142
- ['a', {id : id + '_resize_n', 'class' : 'mceResize mceResizeN', tabindex : '-1', href : 'javascript:;'}],
143
- ['a', {id : id + '_resize_s', 'class' : 'mceResize mceResizeS', tabindex : '-1', href : 'javascript:;'}],
144
- ['a', {id : id + '_resize_w', 'class' : 'mceResize mceResizeW', tabindex : '-1', href : 'javascript:;'}],
145
- ['a', {id : id + '_resize_e', 'class' : 'mceResize mceResizeE', tabindex : '-1', href : 'javascript:;'}],
146
- ['a', {id : id + '_resize_nw', 'class' : 'mceResize mceResizeNW', tabindex : '-1', href : 'javascript:;'}],
147
- ['a', {id : id + '_resize_ne', 'class' : 'mceResize mceResizeNE', tabindex : '-1', href : 'javascript:;'}],
148
- ['a', {id : id + '_resize_sw', 'class' : 'mceResize mceResizeSW', tabindex : '-1', href : 'javascript:;'}],
149
- ['a', {id : id + '_resize_se', 'class' : 'mceResize mceResizeSE', tabindex : '-1', href : 'javascript:;'}]
150
- ]
151
- ]
152
- );
153
-
154
- DOM.setStyles(id, {top : -10000, left : -10000});
155
-
156
- // Fix gecko rendering bug, where the editors iframe messed with window contents
157
- if (tinymce.isGecko)
158
- DOM.setStyle(id, 'overflow', 'auto');
159
-
160
- // Measure borders
161
- if (!f.type) {
162
- dw += DOM.get(id + '_left').clientWidth;
163
- dw += DOM.get(id + '_right').clientWidth;
164
- dh += DOM.get(id + '_top').clientHeight;
165
- dh += DOM.get(id + '_bottom').clientHeight;
166
- }
167
-
168
- // Resize window
169
- DOM.setStyles(id, {top : f.top, left : f.left, width : f.width + dw, height : f.height + dh});
170
-
171
- u = f.url || f.file;
172
- if (u) {
173
- if (tinymce.relaxedDomain)
174
- u += (u.indexOf('?') == -1 ? '?' : '&') + 'mce_rdomain=' + tinymce.relaxedDomain;
175
-
176
- u = tinymce._addVer(u);
177
- }
178
-
179
- if (!f.type) {
180
- DOM.add(id + '_content', 'iframe', {id : id + '_ifr', src : 'javascript:""', frameBorder : 0, style : 'border:0;width:10px;height:10px'});
181
- DOM.setStyles(id + '_ifr', {width : f.width, height : f.height});
182
- DOM.setAttrib(id + '_ifr', 'src', u);
183
- } else {
184
- DOM.add(id + '_wrapper', 'a', {id : id + '_ok', 'class' : 'mceButton mceOk', href : 'javascript:;', onmousedown : 'return false;'}, 'Ok');
185
-
186
- if (f.type == 'confirm')
187
- DOM.add(id + '_wrapper', 'a', {'class' : 'mceButton mceCancel', href : 'javascript:;', onmousedown : 'return false;'}, 'Cancel');
188
-
189
- DOM.add(id + '_middle', 'div', {'class' : 'mceIcon'});
190
- DOM.setHTML(id + '_content', f.content.replace('\n', '<br />'));
191
-
192
- Event.add(id, 'keyup', function(evt) {
193
- var VK_ESCAPE = 27;
194
- if (evt.keyCode === VK_ESCAPE) {
195
- f.button_func(false);
196
- return Event.cancel(evt);
197
- }
198
- });
199
-
200
- Event.add(id, 'keydown', function(evt) {
201
- var cancelButton, VK_TAB = 9;
202
- if (evt.keyCode === VK_TAB) {
203
- cancelButton = DOM.select('a.mceCancel', id + '_wrapper')[0];
204
- if (cancelButton && cancelButton !== evt.target) {
205
- cancelButton.focus();
206
- } else {
207
- DOM.get(id + '_ok').focus();
208
- }
209
- return Event.cancel(evt);
210
- }
211
- });
212
- }
213
-
214
- // Register events
215
- mdf = Event.add(id, 'mousedown', function(e) {
216
- var n = e.target, w, vp;
217
-
218
- w = t.windows[id];
219
- t.focus(id);
220
-
221
- if (n.nodeName == 'A' || n.nodeName == 'a') {
222
- if (n.className == 'mceMax') {
223
- w.oldPos = w.element.getXY();
224
- w.oldSize = w.element.getSize();
225
-
226
- vp = DOM.getViewPort();
227
-
228
- // Reduce viewport size to avoid scrollbars
229
- vp.w -= 2;
230
- vp.h -= 2;
231
-
232
- w.element.moveTo(vp.x, vp.y);
233
- w.element.resizeTo(vp.w, vp.h);
234
- DOM.setStyles(id + '_ifr', {width : vp.w - w.deltaWidth, height : vp.h - w.deltaHeight});
235
- DOM.addClass(id + '_wrapper', 'mceMaximized');
236
- } else if (n.className == 'mceMed') {
237
- // Reset to old size
238
- w.element.moveTo(w.oldPos.x, w.oldPos.y);
239
- w.element.resizeTo(w.oldSize.w, w.oldSize.h);
240
- w.iframeElement.resizeTo(w.oldSize.w - w.deltaWidth, w.oldSize.h - w.deltaHeight);
241
-
242
- DOM.removeClass(id + '_wrapper', 'mceMaximized');
243
- } else if (n.className == 'mceMove')
244
- return t._startDrag(id, e, n.className);
245
- else if (DOM.hasClass(n, 'mceResize'))
246
- return t._startDrag(id, e, n.className.substring(13));
247
- }
248
- });
249
-
250
- clf = Event.add(id, 'click', function(e) {
251
- var n = e.target;
252
-
253
- t.focus(id);
254
-
255
- if (n.nodeName == 'A' || n.nodeName == 'a') {
256
- switch (n.className) {
257
- case 'mceClose':
258
- t.close(null, id);
259
- return Event.cancel(e);
260
-
261
- case 'mceButton mceOk':
262
- case 'mceButton mceCancel':
263
- f.button_func(n.className == 'mceButton mceOk');
264
- return Event.cancel(e);
265
- }
266
- }
267
- });
268
-
269
- // Make sure the tab order loops within the dialog.
270
- Event.add([id + '_left', id + '_right'], 'focus', function(evt) {
271
- var iframe = DOM.get(id + '_ifr');
272
- if (iframe) {
273
- var body = iframe.contentWindow.document.body;
274
- var focusable = DOM.select(':input:enabled,*[tabindex=0]', body);
275
- if (evt.target.id === (id + '_left')) {
276
- focusable[focusable.length - 1].focus();
277
- } else {
278
- focusable[0].focus();
279
- }
280
- } else {
281
- DOM.get(id + '_ok').focus();
282
- }
283
- });
284
-
285
- // Add window
286
- w = t.windows[id] = {
287
- id : id,
288
- mousedown_func : mdf,
289
- click_func : clf,
290
- element : new Element(id, {blocker : 1, container : ed.getContainer()}),
291
- iframeElement : new Element(id + '_ifr'),
292
- features : f,
293
- deltaWidth : dw,
294
- deltaHeight : dh
295
- };
296
-
297
- w.iframeElement.on('focus', function() {
298
- t.focus(id);
299
- });
300
-
301
- // Setup blocker
302
- if (t.count == 0 && t.editor.getParam('dialog_type', 'modal') == 'modal') {
303
- DOM.add(DOM.doc.body, 'div', {
304
- id : 'mceModalBlocker',
305
- 'class' : (t.editor.settings.inlinepopups_skin || 'clearlooks2') + '_modalBlocker',
306
- style : {zIndex : t.zIndex - 1}
307
- });
308
-
309
- DOM.show('mceModalBlocker'); // Reduces flicker in IE
310
- DOM.setAttrib(DOM.doc.body, 'aria-hidden', 'true');
311
- } else
312
- DOM.setStyle('mceModalBlocker', 'z-index', t.zIndex - 1);
313
-
314
- if (tinymce.isIE6 || /Firefox\/2\./.test(navigator.userAgent) || (tinymce.isIE && !DOM.boxModel))
315
- DOM.setStyles('mceModalBlocker', {position : 'absolute', left : vp.x, top : vp.y, width : vp.w - 2, height : vp.h - 2});
316
-
317
- DOM.setAttrib(id, 'aria-hidden', 'false');
318
- t.focus(id);
319
- t._fixIELayout(id, 1);
320
-
321
- // Focus ok button
322
- if (DOM.get(id + '_ok'))
323
- DOM.get(id + '_ok').focus();
324
- t.count++;
325
-
326
- return w;
327
- },
328
-
329
- focus : function(id) {
330
- var t = this, w;
331
-
332
- if (w = t.windows[id]) {
333
- w.zIndex = this.zIndex++;
334
- w.element.setStyle('zIndex', w.zIndex);
335
- w.element.update();
336
-
337
- id = id + '_wrapper';
338
- DOM.removeClass(t.lastId, 'mceFocus');
339
- DOM.addClass(id, 'mceFocus');
340
- t.lastId = id;
341
-
342
- if (w.focussedElement) {
343
- w.focussedElement.focus();
344
- } else if (DOM.get(id + '_ok')) {
345
- DOM.get(w.id + '_ok').focus();
346
- } else if (DOM.get(w.id + '_ifr')) {
347
- DOM.get(w.id + '_ifr').focus();
348
- }
349
- }
350
- },
351
-
352
- _addAll : function(te, ne) {
353
- var i, n, t = this, dom = tinymce.DOM;
354
-
355
- if (is(ne, 'string'))
356
- te.appendChild(dom.doc.createTextNode(ne));
357
- else if (ne.length) {
358
- te = te.appendChild(dom.create(ne[0], ne[1]));
359
-
360
- for (i=2; i<ne.length; i++)
361
- t._addAll(te, ne[i]);
362
- }
363
- },
364
-
365
- _startDrag : function(id, se, ac) {
366
- var t = this, mu, mm, d = DOM.doc, eb, w = t.windows[id], we = w.element, sp = we.getXY(), p, sz, ph, cp, vp, sx, sy, sex, sey, dx, dy, dw, dh;
367
-
368
- // Get positons and sizes
369
- // cp = DOM.getPos(t.editor.getContainer());
370
- cp = {x : 0, y : 0};
371
- vp = DOM.getViewPort();
372
-
373
- // Reduce viewport size to avoid scrollbars while dragging
374
- vp.w -= 2;
375
- vp.h -= 2;
376
-
377
- sex = se.screenX;
378
- sey = se.screenY;
379
- dx = dy = dw = dh = 0;
380
-
381
- // Handle mouse up
382
- mu = Event.add(d, 'mouseup', function(e) {
383
- Event.remove(d, 'mouseup', mu);
384
- Event.remove(d, 'mousemove', mm);
385
-
386
- if (eb)
387
- eb.remove();
388
-
389
- we.moveBy(dx, dy);
390
- we.resizeBy(dw, dh);
391
- sz = we.getSize();
392
- DOM.setStyles(id + '_ifr', {width : sz.w - w.deltaWidth, height : sz.h - w.deltaHeight});
393
- t._fixIELayout(id, 1);
394
-
395
- return Event.cancel(e);
396
- });
397
-
398
- if (ac != 'Move')
399
- startMove();
400
-
401
- function startMove() {
402
- if (eb)
403
- return;
404
-
405
- t._fixIELayout(id, 0);
406
-
407
- // Setup event blocker
408
- DOM.add(d.body, 'div', {
409
- id : 'mceEventBlocker',
410
- 'class' : 'mceEventBlocker ' + (t.editor.settings.inlinepopups_skin || 'clearlooks2'),
411
- style : {zIndex : t.zIndex + 1}
412
- });
413
-
414
- if (tinymce.isIE6 || (tinymce.isIE && !DOM.boxModel))
415
- DOM.setStyles('mceEventBlocker', {position : 'absolute', left : vp.x, top : vp.y, width : vp.w - 2, height : vp.h - 2});
416
-
417
- eb = new Element('mceEventBlocker');
418
- eb.update();
419
-
420
- // Setup placeholder
421
- p = we.getXY();
422
- sz = we.getSize();
423
- sx = cp.x + p.x - vp.x;
424
- sy = cp.y + p.y - vp.y;
425
- DOM.add(eb.get(), 'div', {id : 'mcePlaceHolder', 'class' : 'mcePlaceHolder', style : {left : sx, top : sy, width : sz.w, height : sz.h}});
426
- ph = new Element('mcePlaceHolder');
427
- };
428
-
429
- // Handle mouse move/drag
430
- mm = Event.add(d, 'mousemove', function(e) {
431
- var x, y, v;
432
-
433
- startMove();
434
-
435
- x = e.screenX - sex;
436
- y = e.screenY - sey;
437
-
438
- switch (ac) {
439
- case 'ResizeW':
440
- dx = x;
441
- dw = 0 - x;
442
- break;
443
-
444
- case 'ResizeE':
445
- dw = x;
446
- break;
447
-
448
- case 'ResizeN':
449
- case 'ResizeNW':
450
- case 'ResizeNE':
451
- if (ac == "ResizeNW") {
452
- dx = x;
453
- dw = 0 - x;
454
- } else if (ac == "ResizeNE")
455
- dw = x;
456
-
457
- dy = y;
458
- dh = 0 - y;
459
- break;
460
-
461
- case 'ResizeS':
462
- case 'ResizeSW':
463
- case 'ResizeSE':
464
- if (ac == "ResizeSW") {
465
- dx = x;
466
- dw = 0 - x;
467
- } else if (ac == "ResizeSE")
468
- dw = x;
469
-
470
- dh = y;
471
- break;
472
-
473
- case 'mceMove':
474
- dx = x;
475
- dy = y;
476
- break;
477
- }
478
-
479
- // Boundary check
480
- if (dw < (v = w.features.min_width - sz.w)) {
481
- if (dx !== 0)
482
- dx += dw - v;
483
-
484
- dw = v;
485
- }
486
-
487
- if (dh < (v = w.features.min_height - sz.h)) {
488
- if (dy !== 0)
489
- dy += dh - v;
490
-
491
- dh = v;
492
- }
493
-
494
- dw = Math.min(dw, w.features.max_width - sz.w);
495
- dh = Math.min(dh, w.features.max_height - sz.h);
496
- dx = Math.max(dx, vp.x - (sx + vp.x));
497
- dy = Math.max(dy, vp.y - (sy + vp.y));
498
- dx = Math.min(dx, (vp.w + vp.x) - (sx + sz.w + vp.x));
499
- dy = Math.min(dy, (vp.h + vp.y) - (sy + sz.h + vp.y));
500
-
501
- // Move if needed
502
- if (dx + dy !== 0) {
503
- if (sx + dx < 0)
504
- dx = 0;
505
-
506
- if (sy + dy < 0)
507
- dy = 0;
508
-
509
- ph.moveTo(sx + dx, sy + dy);
510
- }
511
-
512
- // Resize if needed
513
- if (dw + dh !== 0)
514
- ph.resizeTo(sz.w + dw, sz.h + dh);
515
-
516
- return Event.cancel(e);
517
- });
518
-
519
- return Event.cancel(se);
520
- },
521
-
522
- resizeBy : function(dw, dh, id) {
523
- var w = this.windows[id];
524
-
525
- if (w) {
526
- w.element.resizeBy(dw, dh);
527
- w.iframeElement.resizeBy(dw, dh);
528
- }
529
- },
530
-
531
- close : function(win, id) {
532
- var t = this, w, d = DOM.doc, fw, id;
533
-
534
- id = t._findId(id || win);
535
-
536
- // Probably not inline
537
- if (!t.windows[id]) {
538
- t.parent(win);
539
- return;
540
- }
541
-
542
- t.count--;
543
-
544
- if (t.count == 0) {
545
- DOM.remove('mceModalBlocker');
546
- DOM.setAttrib(DOM.doc.body, 'aria-hidden', 'false');
547
- t.editor.focus();
548
- }
549
-
550
- if (w = t.windows[id]) {
551
- t.onClose.dispatch(t);
552
- Event.remove(d, 'mousedown', w.mousedownFunc);
553
- Event.remove(d, 'click', w.clickFunc);
554
- Event.clear(id);
555
- Event.clear(id + '_ifr');
556
-
557
- DOM.setAttrib(id + '_ifr', 'src', 'javascript:""'); // Prevent leak
558
- w.element.remove();
559
- delete t.windows[id];
560
-
561
- fw = t._frontWindow();
562
-
563
- if (fw)
564
- t.focus(fw.id);
565
- }
566
- },
567
-
568
- // Find front most window
569
- _frontWindow : function() {
570
- var fw, ix = 0;
571
- // Find front most window and focus that
572
- each (this.windows, function(w) {
573
- if (w.zIndex > ix) {
574
- fw = w;
575
- ix = w.zIndex;
576
- }
577
- });
578
- return fw;
579
- },
580
-
581
- setTitle : function(w, ti) {
582
- var e;
583
-
584
- w = this._findId(w);
585
-
586
- if (e = DOM.get(w + '_title'))
587
- e.innerHTML = DOM.encode(ti);
588
- },
589
-
590
- alert : function(txt, cb, s) {
591
- var t = this, w;
592
-
593
- w = t.open({
594
- title : t,
595
- type : 'alert',
596
- button_func : function(s) {
597
- if (cb)
598
- cb.call(s || t, s);
599
-
600
- t.close(null, w.id);
601
- },
602
- content : DOM.encode(t.editor.getLang(txt, txt)),
603
- inline : 1,
604
- width : 400,
605
- height : 130
606
- });
607
- },
608
-
609
- confirm : function(txt, cb, s) {
610
- var t = this, w;
611
-
612
- w = t.open({
613
- title : t,
614
- type : 'confirm',
615
- button_func : function(s) {
616
- if (cb)
617
- cb.call(s || t, s);
618
-
619
- t.close(null, w.id);
620
- },
621
- content : DOM.encode(t.editor.getLang(txt, txt)),
622
- inline : 1,
623
- width : 400,
624
- height : 130
625
- });
626
- },
627
-
628
- // Internal functions
629
-
630
- _findId : function(w) {
631
- var t = this;
632
-
633
- if (typeof(w) == 'string')
634
- return w;
635
-
636
- each(t.windows, function(wo) {
637
- var ifr = DOM.get(wo.id + '_ifr');
638
-
639
- if (ifr && w == ifr.contentWindow) {
640
- w = wo.id;
641
- return false;
642
- }
643
- });
644
-
645
- return w;
646
- },
647
-
648
- _fixIELayout : function(id, s) {
649
- var w, img;
650
-
651
- if (!tinymce.isIE6)
652
- return;
653
-
654
- // Fixes the bug where hover flickers and does odd things in IE6
655
- each(['n','s','w','e','nw','ne','sw','se'], function(v) {
656
- var e = DOM.get(id + '_resize_' + v);
657
-
658
- DOM.setStyles(e, {
659
- width : s ? e.clientWidth : '',
660
- height : s ? e.clientHeight : '',
661
- cursor : DOM.getStyle(e, 'cursor', 1)
662
- });
663
-
664
- DOM.setStyle(id + "_bottom", 'bottom', '-1px');
665
-
666
- e = 0;
667
- });
668
-
669
- // Fixes graphics glitch
670
- if (w = this.windows[id]) {
671
- // Fixes rendering bug after resize
672
- w.element.hide();
673
- w.element.show();
674
-
675
- // Forced a repaint of the window
676
- //DOM.get(id).style.filter = '';
677
-
678
- // IE has a bug where images used in CSS won't get loaded
679
- // sometimes when the cache in the browser is disabled
680
- // This fix tries to solve it by loading the images using the image object
681
- each(DOM.select('div,a', id), function(e, i) {
682
- if (e.currentStyle.backgroundImage != 'none') {
683
- img = new Image();
684
- img.src = e.currentStyle.backgroundImage.replace(/url\(\"(.+)\"\)/, '$1');
685
- }
686
- });
687
-
688
- DOM.get(id).style.filter = '';
689
- }
690
- }
691
- });
692
-
693
- // Register plugin
694
- tinymce.PluginManager.add('inlinepopups', tinymce.plugins.InlinePopups);
695
- })();
696
-