adva_fckeditor 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (501) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE +22 -0
  5. data/README +21 -0
  6. data/README.md +29 -0
  7. data/Rakefile +2 -0
  8. data/adva_fckeditor.gemspec +19 -0
  9. data/app/assets/javascripts/adva_fckeditor/config.js +58 -0
  10. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckcontextmenu.js +223 -0
  11. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckdataprocessor.js +119 -0
  12. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckdocumentfragment_gecko.js +53 -0
  13. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckdocumentfragment_ie.js +58 -0
  14. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckdomrange.js +935 -0
  15. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckdomrange_gecko.js +104 -0
  16. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckdomrange_ie.js +199 -0
  17. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckdomrangeiterator.js +327 -0
  18. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckeditingarea.js +368 -0
  19. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckelementpath.js +89 -0
  20. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckenterkey.js +708 -0
  21. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckevents.js +71 -0
  22. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckhtmliterator.js +142 -0
  23. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckicon.js +103 -0
  24. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckiecleanup.js +68 -0
  25. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckimagepreloader.js +64 -0
  26. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckkeystrokehandler.js +141 -0
  27. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckmenublock.js +153 -0
  28. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckmenublockpanel.js +54 -0
  29. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckmenuitem.js +161 -0
  30. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckpanel.js +463 -0
  31. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckplugin.js +56 -0
  32. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckspecialcombo.js +376 -0
  33. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckstyle.js +1500 -0
  34. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbar.js +103 -0
  35. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js +36 -0
  36. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js +38 -0
  37. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarbutton.js +81 -0
  38. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarbuttonui.js +198 -0
  39. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js +139 -0
  40. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js +98 -0
  41. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js +76 -0
  42. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js +103 -0
  43. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js +146 -0
  44. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js +200 -0
  45. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckw3crange.js +451 -0
  46. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckxml.js +108 -0
  47. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckxml_gecko.js +106 -0
  48. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/classes/fckxml_ie.js +93 -0
  49. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fck_othercommands.js +634 -0
  50. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckblockquotecommand.js +281 -0
  51. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckcorestylecommand.js +61 -0
  52. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckfitwindow.js +213 -0
  53. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckindentcommands.js +282 -0
  54. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckjustifycommands.js +173 -0
  55. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fcklistcommands.js +382 -0
  56. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fcknamedcommand.js +39 -0
  57. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js +40 -0
  58. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js +40 -0
  59. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckremoveformatcommand.js +45 -0
  60. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckshowblocks.js +94 -0
  61. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js +49 -0
  62. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js +72 -0
  63. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fckstylecommand.js +60 -0
  64. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fcktablecommand.js +106 -0
  65. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js +201 -0
  66. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/fckconstants.js +56 -0
  67. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/fckeditorapi.js +179 -0
  68. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/fckjscoreextensions.js +159 -0
  69. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/fckscriptloader.js +122 -0
  70. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fck.js +1256 -0
  71. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fck_contextmenu.js +345 -0
  72. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fck_gecko.js +497 -0
  73. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fck_ie.js +456 -0
  74. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckbrowserinfo.js +61 -0
  75. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckcodeformatter.js +100 -0
  76. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckcommands.js +172 -0
  77. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckconfig.js +237 -0
  78. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckdebug.js +59 -0
  79. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckdebug_empty.js +31 -0
  80. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckdialog.js +239 -0
  81. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckdocumentprocessor.js +270 -0
  82. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckdomtools.js +1057 -0
  83. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcklanguagemanager.js +165 -0
  84. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcklisthandler.js +152 -0
  85. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcklistslib.js +63 -0
  86. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckplugins.js +46 -0
  87. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckregexlib.js +100 -0
  88. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckselection.js +42 -0
  89. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckselection_gecko.js +228 -0
  90. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckselection_ie.js +287 -0
  91. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckstyles.js +381 -0
  92. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktablehandler.js +863 -0
  93. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktablehandler_gecko.js +56 -0
  94. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktablehandler_ie.js +64 -0
  95. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktoolbaritems.js +124 -0
  96. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktoolbarset.js +399 -0
  97. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktools.js +749 -0
  98. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktools_gecko.js +282 -0
  99. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fcktools_ie.js +234 -0
  100. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckundo.js +223 -0
  101. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckurlparams.js +39 -0
  102. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckxhtml.js +534 -0
  103. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckxhtml_gecko.js +114 -0
  104. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckxhtml_ie.js +213 -0
  105. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/_source/internals/fckxhtmlentities.js +357 -0
  106. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/behaviors/disablehandles.htc +15 -0
  107. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/behaviors/showtableborders.htc +36 -0
  108. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/fck_editorarea.css +110 -0
  109. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/fck_internal.css +199 -0
  110. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/fck_showtableborders_gecko.css +49 -0
  111. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_address.png +0 -0
  112. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_blockquote.png +0 -0
  113. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_div.png +0 -0
  114. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_h1.png +0 -0
  115. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_h2.png +0 -0
  116. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_h3.png +0 -0
  117. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_h4.png +0 -0
  118. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_h5.png +0 -0
  119. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_h6.png +0 -0
  120. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_p.png +0 -0
  121. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/block_pre.png +0 -0
  122. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/fck_anchor.gif +0 -0
  123. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/fck_flashlogo.gif +0 -0
  124. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/fck_hiddenfield.gif +0 -0
  125. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/fck_pagebreak.gif +0 -0
  126. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/css/images/fck_plugin.gif +0 -0
  127. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/common/fck_dialog_common.css +85 -0
  128. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/common/fck_dialog_common.js +347 -0
  129. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/common/images/locked.gif +0 -0
  130. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/common/images/reset.gif +0 -0
  131. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/common/images/unlocked.gif +0 -0
  132. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif +0 -0
  133. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_about/logo_fredck.gif +0 -0
  134. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_about/sponsors/spellchecker_net.gif +0 -0
  135. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_about.html +161 -0
  136. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_anchor.html +220 -0
  137. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_button.html +104 -0
  138. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_checkbox.html +104 -0
  139. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_colorselector.html +172 -0
  140. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_div.html +396 -0
  141. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html +113 -0
  142. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_docprops.html +600 -0
  143. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_flash/fck_flash.js +300 -0
  144. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_flash/fck_flash_preview.html +50 -0
  145. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_flash.html +152 -0
  146. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_form.html +109 -0
  147. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_hiddenfield.html +115 -0
  148. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_image/fck_image.js +512 -0
  149. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_image/fck_image_preview.html +72 -0
  150. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_image.html +258 -0
  151. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_link/fck_link.js +893 -0
  152. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_link.html +295 -0
  153. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_listprop.html +120 -0
  154. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_paste.html +347 -0
  155. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_radiobutton.html +104 -0
  156. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_replace.html +650 -0
  157. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_select/fck_select.js +194 -0
  158. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_select.html +180 -0
  159. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_smiley.html +111 -0
  160. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_source.html +68 -0
  161. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_specialchar.html +121 -0
  162. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html +0 -0
  163. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js +87 -0
  164. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html +153 -0
  165. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm +148 -0
  166. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php +199 -0
  167. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl +181 -0
  168. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js +461 -0
  169. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html +71 -0
  170. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css +49 -0
  171. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js +272 -0
  172. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_spellerpages.html +70 -0
  173. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_table.html +439 -0
  174. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_tablecell.html +293 -0
  175. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_template/images/template1.gif +0 -0
  176. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_template/images/template2.gif +0 -0
  177. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_template/images/template3.gif +0 -0
  178. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_template.html +242 -0
  179. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_textarea.html +94 -0
  180. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dialog/fck_textfield.html +136 -0
  181. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dtd/fck_dtd_test.html +41 -0
  182. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dtd/fck_xhtml10strict.js +116 -0
  183. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/dtd/fck_xhtml10transitional.js +140 -0
  184. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/fckdebug.html +153 -0
  185. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/fckdialog.html +819 -0
  186. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/fckeditor.html +317 -0
  187. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/fckeditor.original.html +424 -0
  188. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/browser.css +87 -0
  189. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/browser.html +200 -0
  190. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/frmactualfolder.html +95 -0
  191. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html +114 -0
  192. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/frmfolders.html +198 -0
  193. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/frmresourceslist.html +185 -0
  194. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/frmresourcetype.html +69 -0
  195. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/frmupload.html +115 -0
  196. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif +0 -0
  197. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/Folder.gif +0 -0
  198. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/Folder32.gif +0 -0
  199. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif +0 -0
  200. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif +0 -0
  201. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif +0 -0
  202. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif +0 -0
  203. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif +0 -0
  204. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif +0 -0
  205. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif +0 -0
  206. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif +0 -0
  207. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif +0 -0
  208. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif +0 -0
  209. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif +0 -0
  210. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif +0 -0
  211. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif +0 -0
  212. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif +0 -0
  213. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif +0 -0
  214. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif +0 -0
  215. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif +0 -0
  216. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif +0 -0
  217. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif +0 -0
  218. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif +0 -0
  219. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif +0 -0
  220. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif +0 -0
  221. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif +0 -0
  222. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif +0 -0
  223. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif +0 -0
  224. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif +0 -0
  225. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif +0 -0
  226. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif +0 -0
  227. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif +0 -0
  228. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif +0 -0
  229. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif +0 -0
  230. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif +0 -0
  231. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif +0 -0
  232. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif +0 -0
  233. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif +0 -0
  234. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif +0 -0
  235. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif +0 -0
  236. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif +0 -0
  237. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif +0 -0
  238. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif +0 -0
  239. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif +0 -0
  240. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/html.gif +0 -0
  241. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif +0 -0
  242. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/js.gif +0 -0
  243. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif +0 -0
  244. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif +0 -0
  245. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif +0 -0
  246. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/png.gif +0 -0
  247. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif +0 -0
  248. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif +0 -0
  249. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif +0 -0
  250. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif +0 -0
  251. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif +0 -0
  252. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif +0 -0
  253. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif +0 -0
  254. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif +0 -0
  255. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif +0 -0
  256. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/images/spacer.gif +0 -0
  257. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/js/common.js +88 -0
  258. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/browser/default/js/fckxml.js +147 -0
  259. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/basexml.asp +63 -0
  260. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/class_upload.asp +353 -0
  261. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/commands.asp +198 -0
  262. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/config.asp +128 -0
  263. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/connector.asp +88 -0
  264. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/io.asp +237 -0
  265. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/upload.asp +65 -0
  266. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/asp/util.asp +55 -0
  267. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/aspx/config.ascx +98 -0
  268. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/aspx/connector.aspx +32 -0
  269. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/aspx/upload.aspx +32 -0
  270. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/ImageObject.cfc +273 -0
  271. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf5_connector.cfm +315 -0
  272. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf5_upload.cfm +299 -0
  273. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf_basexml.cfm +68 -0
  274. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf_commands.cfm +230 -0
  275. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf_connector.cfm +89 -0
  276. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf_io.cfm +291 -0
  277. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf_upload.cfm +72 -0
  278. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/cf_util.cfm +131 -0
  279. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/config.cfm +189 -0
  280. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/connector.cfm +32 -0
  281. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/image.cfc +1324 -0
  282. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/cfm/upload.cfm +31 -0
  283. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/lasso/config.lasso +65 -0
  284. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/lasso/connector.lasso +322 -0
  285. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/lasso/upload.lasso +168 -0
  286. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/perl/basexml.pl +63 -0
  287. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/perl/commands.pl +187 -0
  288. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/perl/connector.cgi +136 -0
  289. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/perl/io.pl +141 -0
  290. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/perl/upload.cgi +117 -0
  291. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/perl/upload_fck.pl +686 -0
  292. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/perl/util.pl +68 -0
  293. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/basexml.php +93 -0
  294. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/commands.php +302 -0
  295. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/config.php +151 -0
  296. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/connector.php +90 -0
  297. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/io.php +296 -0
  298. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/phpcompat.php +17 -0
  299. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/upload.php +59 -0
  300. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/php/util.php +220 -0
  301. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/config.py +146 -0
  302. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/connector.py +118 -0
  303. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/fckcommands.py +198 -0
  304. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/fckconnector.py +90 -0
  305. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/fckoutput.py +116 -0
  306. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/fckutil.py +126 -0
  307. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/htaccess.txt +23 -0
  308. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/upload.py +88 -0
  309. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/wsgi.py +58 -0
  310. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/py/zope.py +188 -0
  311. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/test.html +210 -0
  312. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/filemanager/connectors/uploadtest.html +192 -0
  313. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/anchor.gif +0 -0
  314. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/arrow_ltr.gif +0 -0
  315. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/arrow_rtl.gif +0 -0
  316. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/angel_smile.gif +0 -0
  317. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/angry_smile.gif +0 -0
  318. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/broken_heart.gif +0 -0
  319. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/cake.gif +0 -0
  320. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/confused_smile.gif +0 -0
  321. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/cry_smile.gif +0 -0
  322. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/devil_smile.gif +0 -0
  323. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/embaressed_smile.gif +0 -0
  324. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/envelope.gif +0 -0
  325. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/heart.gif +0 -0
  326. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/kiss.gif +0 -0
  327. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/lightbulb.gif +0 -0
  328. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/omg_smile.gif +0 -0
  329. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/regular_smile.gif +0 -0
  330. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/sad_smile.gif +0 -0
  331. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/shades_smile.gif +0 -0
  332. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/teeth_smile.gif +0 -0
  333. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/thumbs_down.gif +0 -0
  334. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/thumbs_up.gif +0 -0
  335. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/tounge_smile.gif +0 -0
  336. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif +0 -0
  337. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/smiley/msn/wink_smile.gif +0 -0
  338. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/images/spacer.gif +0 -0
  339. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/js/fckadobeair.js +176 -0
  340. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/js/fckeditorcode_gecko.js +108 -0
  341. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/js/fckeditorcode_ie.js +109 -0
  342. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/_translationstatus.txt +79 -0
  343. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/af.js +534 -0
  344. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/ar.js +534 -0
  345. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/bg.js +534 -0
  346. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/bn.js +534 -0
  347. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/bs.js +534 -0
  348. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/ca.js +534 -0
  349. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/cs.js +534 -0
  350. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/da.js +534 -0
  351. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/de.js +534 -0
  352. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/el.js +534 -0
  353. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/en-au.js +534 -0
  354. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/en-ca.js +534 -0
  355. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/en-uk.js +534 -0
  356. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/en.js +534 -0
  357. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/eo.js +534 -0
  358. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/es.js +534 -0
  359. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/et.js +534 -0
  360. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/eu.js +535 -0
  361. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/fa.js +534 -0
  362. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/fi.js +534 -0
  363. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/fo.js +534 -0
  364. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/fr-ca.js +534 -0
  365. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/fr.js +534 -0
  366. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/gl.js +534 -0
  367. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/gu.js +534 -0
  368. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/he.js +534 -0
  369. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/hi.js +534 -0
  370. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/hr.js +534 -0
  371. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/hu.js +534 -0
  372. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/is.js +534 -0
  373. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/it.js +534 -0
  374. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/ja.js +534 -0
  375. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/km.js +534 -0
  376. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/ko.js +534 -0
  377. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/lt.js +534 -0
  378. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/lv.js +534 -0
  379. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/mn.js +534 -0
  380. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/ms.js +534 -0
  381. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/nb.js +534 -0
  382. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/nl.js +534 -0
  383. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/no.js +534 -0
  384. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/pl.js +534 -0
  385. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/pt-br.js +534 -0
  386. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/pt.js +534 -0
  387. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/ro.js +534 -0
  388. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/ru.js +534 -0
  389. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/sk.js +534 -0
  390. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/sl.js +534 -0
  391. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/sr-latn.js +534 -0
  392. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/sr.js +534 -0
  393. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/sv.js +534 -0
  394. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/th.js +534 -0
  395. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/tr.js +534 -0
  396. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/uk.js +534 -0
  397. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/vi.js +534 -0
  398. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/zh-cn.js +534 -0
  399. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/lang/zh.js +534 -0
  400. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/autogrow/fckplugin.js +111 -0
  401. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/bbcode/_sample/sample.config.js +26 -0
  402. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/bbcode/_sample/sample.html +67 -0
  403. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/bbcode/fckplugin.js +123 -0
  404. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/dragresizetable/fckplugin.js +529 -0
  405. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/fck_placeholder.html +105 -0
  406. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/fckplugin.js +187 -0
  407. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/lang/de.js +27 -0
  408. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/lang/en.js +27 -0
  409. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/lang/es.js +27 -0
  410. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/lang/fr.js +27 -0
  411. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/lang/it.js +27 -0
  412. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/lang/pl.js +27 -0
  413. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/placeholder/placeholder.gif +0 -0
  414. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/simplecommands/fckplugin.js +29 -0
  415. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/plugins/tablecommands/fckplugin.js +33 -0
  416. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/_fckviewstrips.html +121 -0
  417. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/fck_dialog.css +402 -0
  418. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/fck_dialog_ie6.js +110 -0
  419. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/fck_editor.css +464 -0
  420. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/fck_strip.gif +0 -0
  421. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/dialog.sides.gif +0 -0
  422. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/dialog.sides.png +0 -0
  423. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/dialog.sides.rtl.png +0 -0
  424. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/sprites.gif +0 -0
  425. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/sprites.png +0 -0
  426. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/toolbar.arrowright.gif +0 -0
  427. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif +0 -0
  428. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/toolbar.collapse.gif +0 -0
  429. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/toolbar.end.gif +0 -0
  430. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/toolbar.expand.gif +0 -0
  431. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/toolbar.separator.gif +0 -0
  432. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/images/toolbar.start.gif +0 -0
  433. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/default/toolbar/configurecell.gif +0 -0
  434. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/fck_dialog.css +402 -0
  435. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/fck_dialog_ie6.js +110 -0
  436. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/fck_editor.css +476 -0
  437. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/fck_strip.gif +0 -0
  438. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/dialog.sides.gif +0 -0
  439. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/dialog.sides.png +0 -0
  440. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/dialog.sides.rtl.png +0 -0
  441. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/sprites.gif +0 -0
  442. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/sprites.png +0 -0
  443. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif +0 -0
  444. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.bg.gif +0 -0
  445. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif +0 -0
  446. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif +0 -0
  447. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.end.gif +0 -0
  448. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.expand.gif +0 -0
  449. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.separator.gif +0 -0
  450. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/office2003/images/toolbar.start.gif +0 -0
  451. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/fck_dialog.css +402 -0
  452. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/fck_dialog_ie6.js +110 -0
  453. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/fck_editor.css +473 -0
  454. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/fck_strip.gif +0 -0
  455. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/dialog.sides.gif +0 -0
  456. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/dialog.sides.png +0 -0
  457. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/dialog.sides.rtl.png +0 -0
  458. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/sprites.gif +0 -0
  459. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/sprites.png +0 -0
  460. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif +0 -0
  461. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif +0 -0
  462. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif +0 -0
  463. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.collapse.gif +0 -0
  464. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.end.gif +0 -0
  465. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.expand.gif +0 -0
  466. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.separator.gif +0 -0
  467. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/skins/silver/images/toolbar.start.gif +0 -0
  468. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/wsc/ciframe.html +65 -0
  469. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/wsc/tmpFrameset.html +67 -0
  470. data/app/assets/javascripts/adva_fckeditor/fckeditor/editor/wsc/w.html +227 -0
  471. data/app/assets/javascripts/adva_fckeditor/fckeditor/fckconfig.js +325 -0
  472. data/app/assets/javascripts/adva_fckeditor/fckeditor/fckeditor.js +330 -0
  473. data/app/assets/javascripts/adva_fckeditor/fckeditor/fckpackager.xml +262 -0
  474. data/app/assets/javascripts/adva_fckeditor/fckeditor/fckstyles.xml +111 -0
  475. data/app/assets/javascripts/adva_fckeditor/fckeditor/fcktemplates.xml +103 -0
  476. data/app/assets/javascripts/adva_fckeditor/fckeditor/license.txt +1246 -0
  477. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/cells/cell.html +259 -0
  478. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/cells/fckplugin.js +21 -0
  479. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/cells/lang/de.js +4 -0
  480. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/cells/lang/en.js +4 -0
  481. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/fckplugin.js +8 -0
  482. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/de.js +21 -0
  483. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/en.js +21 -0
  484. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/it.js +22 -0
  485. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/ja.js +21 -0
  486. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/lt.js +21 -0
  487. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/no.js +21 -0
  488. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/pt.js +21 -0
  489. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/zh-cn.js +21 -0
  490. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/lang/zh.js +21 -0
  491. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/license.txt +286 -0
  492. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/readme.txt +54 -0
  493. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/youtube.gif +0 -0
  494. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/youtube.html +47 -0
  495. data/app/assets/javascripts/adva_fckeditor/fckeditor_plugins/youtube/youtube.js +121 -0
  496. data/app/assets/javascripts/adva_fckeditor/setup_fckeditor.js +49 -0
  497. data/app/assets/javascripts/adva_fckeditor/setup_fckeditor.prototype.js +38 -0
  498. data/lib/adva_fckeditor/version.rb +3 -0
  499. data/lib/adva_fckeditor.rb +13 -0
  500. data/lib/fckeditor.rb +6 -0
  501. metadata +556 -0
@@ -0,0 +1,893 @@
1
+ /*
2
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
+ * Copyright (C) 2003-2009 Frederico Caldeira Knabben
4
+ *
5
+ * == BEGIN LICENSE ==
6
+ *
7
+ * Licensed under the terms of any of the following licenses at your
8
+ * choice:
9
+ *
10
+ * - GNU General Public License Version 2 or later (the "GPL")
11
+ * http://www.gnu.org/licenses/gpl.html
12
+ *
13
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
14
+ * http://www.gnu.org/licenses/lgpl.html
15
+ *
16
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
17
+ * http://www.mozilla.org/MPL/MPL-1.1.html
18
+ *
19
+ * == END LICENSE ==
20
+ *
21
+ * Scripts related to the Link dialog window (see fck_link.html).
22
+ */
23
+
24
+ var dialog = window.parent ;
25
+ var oEditor = dialog.InnerDialogLoaded() ;
26
+
27
+ var FCK = oEditor.FCK ;
28
+ var FCKLang = oEditor.FCKLang ;
29
+ var FCKConfig = oEditor.FCKConfig ;
30
+ var FCKRegexLib = oEditor.FCKRegexLib ;
31
+ var FCKTools = oEditor.FCKTools ;
32
+
33
+ //#### Dialog Tabs
34
+
35
+ // Set the dialog tabs.
36
+ dialog.AddTab( 'Info', FCKLang.DlgLnkInfoTab ) ;
37
+
38
+ if ( !FCKConfig.LinkDlgHideTarget )
39
+ dialog.AddTab( 'Target', FCKLang.DlgLnkTargetTab, true ) ;
40
+
41
+ if ( FCKConfig.LinkUpload )
42
+ dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload, true ) ;
43
+
44
+ if ( !FCKConfig.LinkDlgHideAdvanced )
45
+ dialog.AddTab( 'Advanced', FCKLang.DlgAdvancedTag ) ;
46
+
47
+ // Function called when a dialog tag is selected.
48
+ function OnDialogTabChange( tabCode )
49
+ {
50
+ ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
51
+ ShowE('divTarget' , ( tabCode == 'Target' ) ) ;
52
+ ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
53
+ ShowE('divAttribs' , ( tabCode == 'Advanced' ) ) ;
54
+
55
+ dialog.SetAutoSize( true ) ;
56
+ }
57
+
58
+ //#### Regular Expressions library.
59
+ var oRegex = new Object() ;
60
+
61
+ oRegex.UriProtocol = /^(((http|https|ftp|news):\/\/)|mailto:)/gi ;
62
+
63
+ oRegex.UrlOnChangeProtocol = /^(http|https|ftp|news):\/\/(?=.)/gi ;
64
+
65
+ oRegex.UrlOnChangeTestOther = /^((javascript:)|[#\/\.])/gi ;
66
+
67
+ oRegex.ReserveTarget = /^_(blank|self|top|parent)$/i ;
68
+
69
+ oRegex.PopupUri = /^javascript:void\(\s*window.open\(\s*'([^']+)'\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*\)\s*$/ ;
70
+
71
+ // Accessible popups
72
+ oRegex.OnClickPopup = /^\s*on[cC]lick="\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s*false;*\s*"$/ ;
73
+
74
+ oRegex.PopupFeatures = /(?:^|,)([^=]+)=(\d+|yes|no)/gi ;
75
+
76
+ //#### Parser Functions
77
+
78
+ var oParser = new Object() ;
79
+
80
+ // This method simply returns the two inputs in numerical order. You can even
81
+ // provide strings, as the method would parseInt() the values.
82
+ oParser.SortNumerical = function(a, b)
83
+ {
84
+ return parseInt( a, 10 ) - parseInt( b, 10 ) ;
85
+ }
86
+
87
+ oParser.ParseEMailParams = function(sParams)
88
+ {
89
+ // Initialize the oEMailParams object.
90
+ var oEMailParams = new Object() ;
91
+ oEMailParams.Subject = '' ;
92
+ oEMailParams.Body = '' ;
93
+
94
+ var aMatch = sParams.match( /(^|^\?|&)subject=([^&]+)/i ) ;
95
+ if ( aMatch ) oEMailParams.Subject = decodeURIComponent( aMatch[2] ) ;
96
+
97
+ aMatch = sParams.match( /(^|^\?|&)body=([^&]+)/i ) ;
98
+ if ( aMatch ) oEMailParams.Body = decodeURIComponent( aMatch[2] ) ;
99
+
100
+ return oEMailParams ;
101
+ }
102
+
103
+ // This method returns either an object containing the email info, or FALSE
104
+ // if the parameter is not an email link.
105
+ oParser.ParseEMailUri = function( sUrl )
106
+ {
107
+ // Initializes the EMailInfo object.
108
+ var oEMailInfo = new Object() ;
109
+ oEMailInfo.Address = '' ;
110
+ oEMailInfo.Subject = '' ;
111
+ oEMailInfo.Body = '' ;
112
+
113
+ var aLinkInfo = sUrl.match( /^(\w+):(.*)$/ ) ;
114
+ if ( aLinkInfo && aLinkInfo[1] == 'mailto' )
115
+ {
116
+ // This seems to be an unprotected email link.
117
+ var aParts = aLinkInfo[2].match( /^([^\?]+)\??(.+)?/ ) ;
118
+ if ( aParts )
119
+ {
120
+ // Set the e-mail address.
121
+ oEMailInfo.Address = aParts[1] ;
122
+
123
+ // Look for the optional e-mail parameters.
124
+ if ( aParts[2] )
125
+ {
126
+ var oEMailParams = oParser.ParseEMailParams( aParts[2] ) ;
127
+ oEMailInfo.Subject = oEMailParams.Subject ;
128
+ oEMailInfo.Body = oEMailParams.Body ;
129
+ }
130
+ }
131
+ return oEMailInfo ;
132
+ }
133
+ else if ( aLinkInfo && aLinkInfo[1] == 'javascript' )
134
+ {
135
+ // This may be a protected email.
136
+
137
+ // Try to match the url against the EMailProtectionFunction.
138
+ var func = FCKConfig.EMailProtectionFunction ;
139
+ if ( func != null )
140
+ {
141
+ try
142
+ {
143
+ // Escape special chars.
144
+ func = func.replace( /([\/^$*+.?()\[\]])/g, '\\$1' ) ;
145
+
146
+ // Define the possible keys.
147
+ var keys = new Array('NAME', 'DOMAIN', 'SUBJECT', 'BODY') ;
148
+
149
+ // Get the order of the keys (hold them in the array <pos>) and
150
+ // the function replaced by regular expression patterns.
151
+ var sFunc = func ;
152
+ var pos = new Array() ;
153
+ for ( var i = 0 ; i < keys.length ; i ++ )
154
+ {
155
+ var rexp = new RegExp( keys[i] ) ;
156
+ var p = func.search( rexp ) ;
157
+ if ( p >= 0 )
158
+ {
159
+ sFunc = sFunc.replace( rexp, '\'([^\']*)\'' ) ;
160
+ pos[pos.length] = p + ':' + keys[i] ;
161
+ }
162
+ }
163
+
164
+ // Sort the available keys.
165
+ pos.sort( oParser.SortNumerical ) ;
166
+
167
+ // Replace the excaped single quotes in the url, such they do
168
+ // not affect the regexp afterwards.
169
+ aLinkInfo[2] = aLinkInfo[2].replace( /\\'/g, '###SINGLE_QUOTE###' ) ;
170
+
171
+ // Create the regexp and execute it.
172
+ var rFunc = new RegExp( '^' + sFunc + '$' ) ;
173
+ var aMatch = rFunc.exec( aLinkInfo[2] ) ;
174
+ if ( aMatch )
175
+ {
176
+ var aInfo = new Array();
177
+ for ( var i = 1 ; i < aMatch.length ; i ++ )
178
+ {
179
+ var k = pos[i-1].match(/^\d+:(.+)$/) ;
180
+ aInfo[k[1]] = aMatch[i].replace(/###SINGLE_QUOTE###/g, '\'') ;
181
+ }
182
+
183
+ // Fill the EMailInfo object that will be returned
184
+ oEMailInfo.Address = aInfo['NAME'] + '@' + aInfo['DOMAIN'] ;
185
+ oEMailInfo.Subject = decodeURIComponent( aInfo['SUBJECT'] ) ;
186
+ oEMailInfo.Body = decodeURIComponent( aInfo['BODY'] ) ;
187
+
188
+ return oEMailInfo ;
189
+ }
190
+ }
191
+ catch (e)
192
+ {
193
+ }
194
+ }
195
+
196
+ // Try to match the email against the encode protection.
197
+ var aMatch = aLinkInfo[2].match( /^(?:void\()?location\.href='mailto:'\+(String\.fromCharCode\([\d,]+\))\+'(.*)'\)?$/ ) ;
198
+ if ( aMatch )
199
+ {
200
+ // The link is encoded
201
+ oEMailInfo.Address = eval( aMatch[1] ) ;
202
+ if ( aMatch[2] )
203
+ {
204
+ var oEMailParams = oParser.ParseEMailParams( aMatch[2] ) ;
205
+ oEMailInfo.Subject = oEMailParams.Subject ;
206
+ oEMailInfo.Body = oEMailParams.Body ;
207
+ }
208
+ return oEMailInfo ;
209
+ }
210
+ }
211
+ return false;
212
+ }
213
+
214
+ oParser.CreateEMailUri = function( address, subject, body )
215
+ {
216
+ // Switch for the EMailProtection setting.
217
+ switch ( FCKConfig.EMailProtection )
218
+ {
219
+ case 'function' :
220
+ var func = FCKConfig.EMailProtectionFunction ;
221
+ if ( func == null )
222
+ {
223
+ if ( FCKConfig.Debug )
224
+ {
225
+ alert('EMailProtection alert!\nNo function defined. Please set "FCKConfig.EMailProtectionFunction"') ;
226
+ }
227
+ return '';
228
+ }
229
+
230
+ // Split the email address into name and domain parts.
231
+ var aAddressParts = address.split( '@', 2 ) ;
232
+ if ( aAddressParts[1] == undefined )
233
+ {
234
+ aAddressParts[1] = '' ;
235
+ }
236
+
237
+ // Replace the keys by their values (embedded in single quotes).
238
+ func = func.replace(/NAME/g, "'" + aAddressParts[0].replace(/'/g, '\\\'') + "'") ;
239
+ func = func.replace(/DOMAIN/g, "'" + aAddressParts[1].replace(/'/g, '\\\'') + "'") ;
240
+ func = func.replace(/SUBJECT/g, "'" + encodeURIComponent( subject ).replace(/'/g, '\\\'') + "'") ;
241
+ func = func.replace(/BODY/g, "'" + encodeURIComponent( body ).replace(/'/g, '\\\'') + "'") ;
242
+
243
+ return 'javascript:' + func ;
244
+
245
+ case 'encode' :
246
+ var aParams = [] ;
247
+ var aAddressCode = [] ;
248
+
249
+ if ( subject.length > 0 )
250
+ aParams.push( 'subject='+ encodeURIComponent( subject ) ) ;
251
+ if ( body.length > 0 )
252
+ aParams.push( 'body=' + encodeURIComponent( body ) ) ;
253
+ for ( var i = 0 ; i < address.length ; i++ )
254
+ aAddressCode.push( address.charCodeAt( i ) ) ;
255
+
256
+ return 'javascript:void(location.href=\'mailto:\'+String.fromCharCode(' + aAddressCode.join( ',' ) + ')+\'?' + aParams.join( '&' ) + '\')' ;
257
+ }
258
+
259
+ // EMailProtection 'none'
260
+
261
+ var sBaseUri = 'mailto:' + address ;
262
+
263
+ var sParams = '' ;
264
+
265
+ if ( subject.length > 0 )
266
+ sParams = '?subject=' + encodeURIComponent( subject ) ;
267
+
268
+ if ( body.length > 0 )
269
+ {
270
+ sParams += ( sParams.length == 0 ? '?' : '&' ) ;
271
+ sParams += 'body=' + encodeURIComponent( body ) ;
272
+ }
273
+
274
+ return sBaseUri + sParams ;
275
+ }
276
+
277
+ //#### Initialization Code
278
+
279
+ // oLink: The actual selected link in the editor.
280
+ var oLink = dialog.Selection.GetSelection().MoveToAncestorNode( 'A' ) ;
281
+ if ( oLink )
282
+ FCK.Selection.SelectNode( oLink ) ;
283
+
284
+ window.onload = function()
285
+ {
286
+ // Translate the dialog box texts.
287
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
288
+
289
+ // Fill the Anchor Names and Ids combos.
290
+ LoadAnchorNamesAndIds() ;
291
+
292
+ // Load the selected link information (if any).
293
+ LoadSelection() ;
294
+
295
+ // Update the dialog box.
296
+ SetLinkType( GetE('cmbLinkType').value ) ;
297
+
298
+ // Show/Hide the "Browse Server" button.
299
+ GetE('divBrowseServer').style.display = FCKConfig.LinkBrowser ? '' : 'none' ;
300
+
301
+ // Show the initial dialog content.
302
+ GetE('divInfo').style.display = '' ;
303
+
304
+ // Set the actual uploader URL.
305
+ if ( FCKConfig.LinkUpload )
306
+ GetE('frmUpload').action = FCKConfig.LinkUploadURL ;
307
+
308
+ // Set the default target (from configuration).
309
+ SetDefaultTarget() ;
310
+
311
+ // Activate the "OK" button.
312
+ dialog.SetOkButton( true ) ;
313
+
314
+ // Select the first field.
315
+ switch( GetE('cmbLinkType').value )
316
+ {
317
+ case 'url' :
318
+ SelectField( 'txtUrl' ) ;
319
+ break ;
320
+ case 'email' :
321
+ SelectField( 'txtEMailAddress' ) ;
322
+ break ;
323
+ case 'anchor' :
324
+ if ( GetE('divSelAnchor').style.display != 'none' )
325
+ SelectField( 'cmbAnchorName' ) ;
326
+ else
327
+ SelectField( 'cmbLinkType' ) ;
328
+ }
329
+ }
330
+
331
+ var bHasAnchors ;
332
+
333
+ function LoadAnchorNamesAndIds()
334
+ {
335
+ // Since version 2.0, the anchors are replaced in the DOM by IMGs so the user see the icon
336
+ // to edit them. So, we must look for that images now.
337
+ var aAnchors = new Array() ;
338
+ var i ;
339
+ var oImages = oEditor.FCK.EditorDocument.getElementsByTagName( 'IMG' ) ;
340
+ for( i = 0 ; i < oImages.length ; i++ )
341
+ {
342
+ if ( oImages[i].getAttribute('_fckanchor') )
343
+ aAnchors[ aAnchors.length ] = oEditor.FCK.GetRealElement( oImages[i] ) ;
344
+ }
345
+
346
+ // Add also real anchors
347
+ var oLinks = oEditor.FCK.EditorDocument.getElementsByTagName( 'A' ) ;
348
+ for( i = 0 ; i < oLinks.length ; i++ )
349
+ {
350
+ if ( oLinks[i].name && ( oLinks[i].name.length > 0 ) )
351
+ aAnchors[ aAnchors.length ] = oLinks[i] ;
352
+ }
353
+
354
+ var aIds = FCKTools.GetAllChildrenIds( oEditor.FCK.EditorDocument.body ) ;
355
+
356
+ bHasAnchors = ( aAnchors.length > 0 || aIds.length > 0 ) ;
357
+
358
+ for ( i = 0 ; i < aAnchors.length ; i++ )
359
+ {
360
+ var sName = aAnchors[i].name ;
361
+ if ( sName && sName.length > 0 )
362
+ FCKTools.AddSelectOption( GetE('cmbAnchorName'), sName, sName ) ;
363
+ }
364
+
365
+ for ( i = 0 ; i < aIds.length ; i++ )
366
+ {
367
+ FCKTools.AddSelectOption( GetE('cmbAnchorId'), aIds[i], aIds[i] ) ;
368
+ }
369
+
370
+ ShowE( 'divSelAnchor' , bHasAnchors ) ;
371
+ ShowE( 'divNoAnchor' , !bHasAnchors ) ;
372
+ }
373
+
374
+ function LoadSelection()
375
+ {
376
+ if ( !oLink ) return ;
377
+
378
+ var sType = 'url' ;
379
+
380
+ // Get the actual Link href.
381
+ var sHRef = oLink.getAttribute( '_fcksavedurl' ) ;
382
+ if ( sHRef == null )
383
+ sHRef = oLink.getAttribute( 'href' , 2 ) || '' ;
384
+
385
+ // Look for a popup javascript link.
386
+ var oPopupMatch = oRegex.PopupUri.exec( sHRef ) ;
387
+ if( oPopupMatch )
388
+ {
389
+ GetE('cmbTarget').value = 'popup' ;
390
+ sHRef = oPopupMatch[1] ;
391
+ FillPopupFields( oPopupMatch[2], oPopupMatch[3] ) ;
392
+ SetTarget( 'popup' ) ;
393
+ }
394
+
395
+ // Accessible popups, the popup data is in the onclick attribute
396
+ if ( !oPopupMatch )
397
+ {
398
+ var onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
399
+ if ( onclick )
400
+ {
401
+ // Decode the protected string
402
+ onclick = decodeURIComponent( onclick ) ;
403
+
404
+ oPopupMatch = oRegex.OnClickPopup.exec( onclick ) ;
405
+ if( oPopupMatch )
406
+ {
407
+ GetE( 'cmbTarget' ).value = 'popup' ;
408
+ FillPopupFields( oPopupMatch[1], oPopupMatch[2] ) ;
409
+ SetTarget( 'popup' ) ;
410
+ }
411
+ }
412
+ }
413
+
414
+ // Search for the protocol.
415
+ var sProtocol = oRegex.UriProtocol.exec( sHRef ) ;
416
+
417
+ // Search for a protected email link.
418
+ var oEMailInfo = oParser.ParseEMailUri( sHRef );
419
+
420
+ if ( oEMailInfo )
421
+ {
422
+ sType = 'email' ;
423
+
424
+ GetE('txtEMailAddress').value = oEMailInfo.Address ;
425
+ GetE('txtEMailSubject').value = oEMailInfo.Subject ;
426
+ GetE('txtEMailBody').value = oEMailInfo.Body ;
427
+ }
428
+ else if ( sProtocol )
429
+ {
430
+ sProtocol = sProtocol[0].toLowerCase() ;
431
+ GetE('cmbLinkProtocol').value = sProtocol ;
432
+
433
+ // Remove the protocol and get the remaining URL.
434
+ var sUrl = sHRef.replace( oRegex.UriProtocol, '' ) ;
435
+ sType = 'url' ;
436
+ GetE('txtUrl').value = sUrl ;
437
+ }
438
+ else if ( sHRef.substr(0,1) == '#' && sHRef.length > 1 ) // It is an anchor link.
439
+ {
440
+ sType = 'anchor' ;
441
+ GetE('cmbAnchorName').value = GetE('cmbAnchorId').value = sHRef.substr(1) ;
442
+ }
443
+ else // It is another type of link.
444
+ {
445
+ sType = 'url' ;
446
+
447
+ GetE('cmbLinkProtocol').value = '' ;
448
+ GetE('txtUrl').value = sHRef ;
449
+ }
450
+
451
+ if ( !oPopupMatch )
452
+ {
453
+ // Get the target.
454
+ var sTarget = oLink.target ;
455
+
456
+ if ( sTarget && sTarget.length > 0 )
457
+ {
458
+ if ( oRegex.ReserveTarget.test( sTarget ) )
459
+ {
460
+ sTarget = sTarget.toLowerCase() ;
461
+ GetE('cmbTarget').value = sTarget ;
462
+ }
463
+ else
464
+ GetE('cmbTarget').value = 'frame' ;
465
+ GetE('txtTargetFrame').value = sTarget ;
466
+ }
467
+ }
468
+
469
+ // Get Advances Attributes
470
+ GetE('txtAttId').value = oLink.id ;
471
+ GetE('txtAttName').value = oLink.name ;
472
+ GetE('cmbAttLangDir').value = oLink.dir ;
473
+ GetE('txtAttLangCode').value = oLink.lang ;
474
+ GetE('txtAttAccessKey').value = oLink.accessKey ;
475
+ GetE('txtAttTabIndex').value = oLink.tabIndex <= 0 ? '' : oLink.tabIndex ;
476
+ GetE('txtAttTitle').value = oLink.title ;
477
+ GetE('txtAttContentType').value = oLink.type ;
478
+ GetE('txtAttCharSet').value = oLink.charset ;
479
+
480
+ var sClass ;
481
+ if ( oEditor.FCKBrowserInfo.IsIE )
482
+ {
483
+ sClass = oLink.getAttribute('className',2) || '' ;
484
+ // Clean up temporary classes for internal use:
485
+ sClass = sClass.replace( FCKRegexLib.FCK_Class, '' ) ;
486
+
487
+ GetE('txtAttStyle').value = oLink.style.cssText ;
488
+ }
489
+ else
490
+ {
491
+ sClass = oLink.getAttribute('class',2) || '' ;
492
+ GetE('txtAttStyle').value = oLink.getAttribute('style',2) || '' ;
493
+ }
494
+ GetE('txtAttClasses').value = sClass ;
495
+
496
+ // Update the Link type combo.
497
+ GetE('cmbLinkType').value = sType ;
498
+ }
499
+
500
+ //#### Link type selection.
501
+ function SetLinkType( linkType )
502
+ {
503
+ ShowE('divLinkTypeUrl' , (linkType == 'url') ) ;
504
+ ShowE('divLinkTypeAnchor' , (linkType == 'anchor') ) ;
505
+ ShowE('divLinkTypeEMail' , (linkType == 'email') ) ;
506
+
507
+ if ( !FCKConfig.LinkDlgHideTarget )
508
+ dialog.SetTabVisibility( 'Target' , (linkType == 'url') ) ;
509
+
510
+ if ( FCKConfig.LinkUpload )
511
+ dialog.SetTabVisibility( 'Upload' , (linkType == 'url') ) ;
512
+
513
+ if ( !FCKConfig.LinkDlgHideAdvanced )
514
+ dialog.SetTabVisibility( 'Advanced' , (linkType != 'anchor' || bHasAnchors) ) ;
515
+
516
+ if ( linkType == 'email' )
517
+ dialog.SetAutoSize( true ) ;
518
+ }
519
+
520
+ //#### Target type selection.
521
+ function SetTarget( targetType )
522
+ {
523
+ GetE('tdTargetFrame').style.display = ( targetType == 'popup' ? 'none' : '' ) ;
524
+ GetE('tdPopupName').style.display =
525
+ GetE('tablePopupFeatures').style.display = ( targetType == 'popup' ? '' : 'none' ) ;
526
+
527
+ switch ( targetType )
528
+ {
529
+ case "_blank" :
530
+ case "_self" :
531
+ case "_parent" :
532
+ case "_top" :
533
+ GetE('txtTargetFrame').value = targetType ;
534
+ break ;
535
+ case "" :
536
+ GetE('txtTargetFrame').value = '' ;
537
+ break ;
538
+ }
539
+
540
+ if ( targetType == 'popup' )
541
+ dialog.SetAutoSize( true ) ;
542
+ }
543
+
544
+ //#### Called while the user types the URL.
545
+ function OnUrlChange()
546
+ {
547
+ var sUrl = GetE('txtUrl').value ;
548
+ var sProtocol = oRegex.UrlOnChangeProtocol.exec( sUrl ) ;
549
+
550
+ if ( sProtocol )
551
+ {
552
+ sUrl = sUrl.substr( sProtocol[0].length ) ;
553
+ GetE('txtUrl').value = sUrl ;
554
+ GetE('cmbLinkProtocol').value = sProtocol[0].toLowerCase() ;
555
+ }
556
+ else if ( oRegex.UrlOnChangeTestOther.test( sUrl ) )
557
+ {
558
+ GetE('cmbLinkProtocol').value = '' ;
559
+ }
560
+ }
561
+
562
+ //#### Called while the user types the target name.
563
+ function OnTargetNameChange()
564
+ {
565
+ var sFrame = GetE('txtTargetFrame').value ;
566
+
567
+ if ( sFrame.length == 0 )
568
+ GetE('cmbTarget').value = '' ;
569
+ else if ( oRegex.ReserveTarget.test( sFrame ) )
570
+ GetE('cmbTarget').value = sFrame.toLowerCase() ;
571
+ else
572
+ GetE('cmbTarget').value = 'frame' ;
573
+ }
574
+
575
+ // Accessible popups
576
+ function BuildOnClickPopup()
577
+ {
578
+ var sWindowName = "'" + GetE('txtPopupName').value.replace(/\W/gi, "") + "'" ;
579
+
580
+ var sFeatures = '' ;
581
+ var aChkFeatures = document.getElementsByName( 'chkFeature' ) ;
582
+ for ( var i = 0 ; i < aChkFeatures.length ; i++ )
583
+ {
584
+ if ( i > 0 ) sFeatures += ',' ;
585
+ sFeatures += aChkFeatures[i].value + '=' + ( aChkFeatures[i].checked ? 'yes' : 'no' ) ;
586
+ }
587
+
588
+ if ( GetE('txtPopupWidth').value.length > 0 ) sFeatures += ',width=' + GetE('txtPopupWidth').value ;
589
+ if ( GetE('txtPopupHeight').value.length > 0 ) sFeatures += ',height=' + GetE('txtPopupHeight').value ;
590
+ if ( GetE('txtPopupLeft').value.length > 0 ) sFeatures += ',left=' + GetE('txtPopupLeft').value ;
591
+ if ( GetE('txtPopupTop').value.length > 0 ) sFeatures += ',top=' + GetE('txtPopupTop').value ;
592
+
593
+ if ( sFeatures != '' )
594
+ sFeatures = sFeatures + ",status" ;
595
+
596
+ return ( "window.open(this.href," + sWindowName + ",'" + sFeatures + "'); return false" ) ;
597
+ }
598
+
599
+ //#### Fills all Popup related fields.
600
+ function FillPopupFields( windowName, features )
601
+ {
602
+ if ( windowName )
603
+ GetE('txtPopupName').value = windowName ;
604
+
605
+ var oFeatures = new Object() ;
606
+ var oFeaturesMatch ;
607
+ while( ( oFeaturesMatch = oRegex.PopupFeatures.exec( features ) ) != null )
608
+ {
609
+ var sValue = oFeaturesMatch[2] ;
610
+ if ( sValue == ( 'yes' || '1' ) )
611
+ oFeatures[ oFeaturesMatch[1] ] = true ;
612
+ else if ( ! isNaN( sValue ) && sValue != 0 )
613
+ oFeatures[ oFeaturesMatch[1] ] = sValue ;
614
+ }
615
+
616
+ // Update all features check boxes.
617
+ var aChkFeatures = document.getElementsByName('chkFeature') ;
618
+ for ( var i = 0 ; i < aChkFeatures.length ; i++ )
619
+ {
620
+ if ( oFeatures[ aChkFeatures[i].value ] )
621
+ aChkFeatures[i].checked = true ;
622
+ }
623
+
624
+ // Update position and size text boxes.
625
+ if ( oFeatures['width'] ) GetE('txtPopupWidth').value = oFeatures['width'] ;
626
+ if ( oFeatures['height'] ) GetE('txtPopupHeight').value = oFeatures['height'] ;
627
+ if ( oFeatures['left'] ) GetE('txtPopupLeft').value = oFeatures['left'] ;
628
+ if ( oFeatures['top'] ) GetE('txtPopupTop').value = oFeatures['top'] ;
629
+ }
630
+
631
+ //#### The OK button was hit.
632
+ function Ok()
633
+ {
634
+ var sUri, sInnerHtml ;
635
+ oEditor.FCKUndo.SaveUndoStep() ;
636
+
637
+ switch ( GetE('cmbLinkType').value )
638
+ {
639
+ case 'url' :
640
+ sUri = GetE('txtUrl').value ;
641
+
642
+ if ( sUri.length == 0 )
643
+ {
644
+ alert( FCKLang.DlnLnkMsgNoUrl ) ;
645
+ return false ;
646
+ }
647
+
648
+ sUri = GetE('cmbLinkProtocol').value + sUri ;
649
+
650
+ break ;
651
+
652
+ case 'email' :
653
+ sUri = GetE('txtEMailAddress').value ;
654
+
655
+ if ( sUri.length == 0 )
656
+ {
657
+ alert( FCKLang.DlnLnkMsgNoEMail ) ;
658
+ return false ;
659
+ }
660
+
661
+ sUri = oParser.CreateEMailUri(
662
+ sUri,
663
+ GetE('txtEMailSubject').value,
664
+ GetE('txtEMailBody').value ) ;
665
+ break ;
666
+
667
+ case 'anchor' :
668
+ var sAnchor = GetE('cmbAnchorName').value ;
669
+ if ( sAnchor.length == 0 ) sAnchor = GetE('cmbAnchorId').value ;
670
+
671
+ if ( sAnchor.length == 0 )
672
+ {
673
+ alert( FCKLang.DlnLnkMsgNoAnchor ) ;
674
+ return false ;
675
+ }
676
+
677
+ sUri = '#' + sAnchor ;
678
+ break ;
679
+ }
680
+
681
+ // If no link is selected, create a new one (it may result in more than one link creation - #220).
682
+ var aLinks = oLink ? [ oLink ] : oEditor.FCK.CreateLink( sUri, true ) ;
683
+
684
+ // If no selection, no links are created, so use the uri as the link text (by dom, 2006-05-26)
685
+ var aHasSelection = ( aLinks.length > 0 ) ;
686
+ if ( !aHasSelection )
687
+ {
688
+ sInnerHtml = sUri;
689
+
690
+ // Built a better text for empty links.
691
+ switch ( GetE('cmbLinkType').value )
692
+ {
693
+ // anchor: use old behavior --> return true
694
+ case 'anchor':
695
+ sInnerHtml = sInnerHtml.replace( /^#/, '' ) ;
696
+ break ;
697
+
698
+ // url: try to get path
699
+ case 'url':
700
+ var oLinkPathRegEx = new RegExp("//?([^?\"']+)([?].*)?$") ;
701
+ var asLinkPath = oLinkPathRegEx.exec( sUri ) ;
702
+ if (asLinkPath != null)
703
+ sInnerHtml = asLinkPath[1]; // use matched path
704
+ break ;
705
+
706
+ // mailto: try to get email address
707
+ case 'email':
708
+ sInnerHtml = GetE('txtEMailAddress').value ;
709
+ break ;
710
+ }
711
+
712
+ // Create a new (empty) anchor.
713
+ aLinks = [ oEditor.FCK.InsertElement( 'a' ) ] ;
714
+ }
715
+
716
+ for ( var i = 0 ; i < aLinks.length ; i++ )
717
+ {
718
+ oLink = aLinks[i] ;
719
+
720
+ if ( aHasSelection )
721
+ sInnerHtml = oLink.innerHTML ; // Save the innerHTML (IE changes it if it is like an URL).
722
+
723
+ oLink.href = sUri ;
724
+ SetAttribute( oLink, '_fcksavedurl', sUri ) ;
725
+
726
+ var onclick;
727
+ // Accessible popups
728
+ if( GetE('cmbTarget').value == 'popup' )
729
+ {
730
+ onclick = BuildOnClickPopup() ;
731
+ // Encode the attribute
732
+ onclick = encodeURIComponent( " onclick=\"" + onclick + "\"" ) ;
733
+ SetAttribute( oLink, 'onclick_fckprotectedatt', onclick ) ;
734
+ }
735
+ else
736
+ {
737
+ // Check if the previous onclick was for a popup:
738
+ // In that case remove the onclick handler.
739
+ onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
740
+ if ( onclick )
741
+ {
742
+ // Decode the protected string
743
+ onclick = decodeURIComponent( onclick ) ;
744
+
745
+ if( oRegex.OnClickPopup.test( onclick ) )
746
+ SetAttribute( oLink, 'onclick_fckprotectedatt', '' ) ;
747
+ }
748
+ }
749
+
750
+ oLink.innerHTML = sInnerHtml ; // Set (or restore) the innerHTML
751
+
752
+ // Target
753
+ if( GetE('cmbTarget').value != 'popup' )
754
+ SetAttribute( oLink, 'target', GetE('txtTargetFrame').value ) ;
755
+ else
756
+ SetAttribute( oLink, 'target', null ) ;
757
+
758
+ // Let's set the "id" only for the first link to avoid duplication.
759
+ if ( i == 0 )
760
+ SetAttribute( oLink, 'id', GetE('txtAttId').value ) ;
761
+
762
+ // Advances Attributes
763
+ SetAttribute( oLink, 'name' , GetE('txtAttName').value ) ;
764
+ SetAttribute( oLink, 'dir' , GetE('cmbAttLangDir').value ) ;
765
+ SetAttribute( oLink, 'lang' , GetE('txtAttLangCode').value ) ;
766
+ SetAttribute( oLink, 'accesskey', GetE('txtAttAccessKey').value ) ;
767
+ SetAttribute( oLink, 'tabindex' , ( GetE('txtAttTabIndex').value > 0 ? GetE('txtAttTabIndex').value : null ) ) ;
768
+ SetAttribute( oLink, 'title' , GetE('txtAttTitle').value ) ;
769
+ SetAttribute( oLink, 'type' , GetE('txtAttContentType').value ) ;
770
+ SetAttribute( oLink, 'charset' , GetE('txtAttCharSet').value ) ;
771
+
772
+ if ( oEditor.FCKBrowserInfo.IsIE )
773
+ {
774
+ var sClass = GetE('txtAttClasses').value ;
775
+ // If it's also an anchor add an internal class
776
+ if ( GetE('txtAttName').value.length != 0 )
777
+ sClass += ' FCK__AnchorC' ;
778
+ SetAttribute( oLink, 'className', sClass ) ;
779
+
780
+ oLink.style.cssText = GetE('txtAttStyle').value ;
781
+ }
782
+ else
783
+ {
784
+ SetAttribute( oLink, 'class', GetE('txtAttClasses').value ) ;
785
+ SetAttribute( oLink, 'style', GetE('txtAttStyle').value ) ;
786
+ }
787
+ }
788
+
789
+ // Select the (first) link.
790
+ oEditor.FCKSelection.SelectNode( aLinks[0] );
791
+
792
+ return true ;
793
+ }
794
+
795
+ function BrowseServer()
796
+ {
797
+ OpenFileBrowser( FCKConfig.LinkBrowserURL, FCKConfig.LinkBrowserWindowWidth, FCKConfig.LinkBrowserWindowHeight ) ;
798
+ }
799
+
800
+ function SetUrl( url )
801
+ {
802
+ GetE('txtUrl').value = url ;
803
+ OnUrlChange() ;
804
+ dialog.SetSelectedTab( 'Info' ) ;
805
+ }
806
+
807
+ function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
808
+ {
809
+ // Remove animation
810
+ window.parent.Throbber.Hide() ;
811
+ GetE( 'divUpload' ).style.display = '' ;
812
+
813
+ switch ( errorNumber )
814
+ {
815
+ case 0 : // No errors
816
+ alert( 'Your file has been successfully uploaded' ) ;
817
+ break ;
818
+ case 1 : // Custom error
819
+ alert( customMsg ) ;
820
+ return ;
821
+ case 101 : // Custom warning
822
+ alert( customMsg ) ;
823
+ break ;
824
+ case 201 :
825
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
826
+ break ;
827
+ case 202 :
828
+ alert( 'Invalid file type' ) ;
829
+ return ;
830
+ case 203 :
831
+ alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
832
+ return ;
833
+ case 500 :
834
+ alert( 'The connector is disabled' ) ;
835
+ break ;
836
+ default :
837
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
838
+ return ;
839
+ }
840
+
841
+ SetUrl( fileUrl ) ;
842
+ GetE('frmUpload').reset() ;
843
+ }
844
+
845
+ var oUploadAllowedExtRegex = new RegExp( FCKConfig.LinkUploadAllowedExtensions, 'i' ) ;
846
+ var oUploadDeniedExtRegex = new RegExp( FCKConfig.LinkUploadDeniedExtensions, 'i' ) ;
847
+
848
+ function CheckUpload()
849
+ {
850
+ var sFile = GetE('txtUploadFile').value ;
851
+
852
+ if ( sFile.length == 0 )
853
+ {
854
+ alert( 'Please select a file to upload' ) ;
855
+ return false ;
856
+ }
857
+
858
+ if ( ( FCKConfig.LinkUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
859
+ ( FCKConfig.LinkUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
860
+ {
861
+ OnUploadCompleted( 202 ) ;
862
+ return false ;
863
+ }
864
+
865
+ // Show animation
866
+ window.parent.Throbber.Show( 100 ) ;
867
+ GetE( 'divUpload' ).style.display = 'none' ;
868
+
869
+ return true ;
870
+ }
871
+
872
+ function SetDefaultTarget()
873
+ {
874
+ var target = FCKConfig.DefaultLinkTarget || '' ;
875
+
876
+ if ( oLink || target.length == 0 )
877
+ return ;
878
+
879
+ switch ( target )
880
+ {
881
+ case '_blank' :
882
+ case '_self' :
883
+ case '_parent' :
884
+ case '_top' :
885
+ GetE('cmbTarget').value = target ;
886
+ break ;
887
+ default :
888
+ GetE('cmbTarget').value = 'frame' ;
889
+ break ;
890
+ }
891
+
892
+ GetE('txtTargetFrame').value = target ;
893
+ }