jonleighton-bcms_feeds 1.0.2 → 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (608) hide show
  1. metadata +3 -614
  2. data/.gitignore +0 -4
  3. data/Rakefile +0 -33
  4. data/VERSION +0 -1
  5. data/bcms_feeds.gemspec +0 -675
  6. data/config/boot.rb +0 -110
  7. data/config/database.example.yml +0 -22
  8. data/config/environment.rb +0 -44
  9. data/config/environments/development.rb +0 -18
  10. data/config/environments/production.rb +0 -31
  11. data/config/environments/test.rb +0 -29
  12. data/config/initializers/backtrace_silencers.rb +0 -7
  13. data/config/initializers/browsercms.rb +0 -1
  14. data/config/initializers/inflections.rb +0 -10
  15. data/config/initializers/mime_types.rb +0 -5
  16. data/config/initializers/new_rails_defaults.rb +0 -19
  17. data/config/initializers/session_store.rb +0 -15
  18. data/config/locales/en.yml +0 -5
  19. data/config/routes.rb +0 -45
  20. data/db/schema.rb +0 -436
  21. data/doc/README_FOR_APP +0 -2
  22. data/public/404.html +0 -30
  23. data/public/422.html +0 -30
  24. data/public/500.html +0 -30
  25. data/public/favicon.ico +0 -0
  26. data/public/fckeditor/editor/css/behaviors/disablehandles.htc +0 -15
  27. data/public/fckeditor/editor/css/behaviors/showtableborders.htc +0 -36
  28. data/public/fckeditor/editor/css/fck_editorarea.css +0 -110
  29. data/public/fckeditor/editor/css/fck_internal.css +0 -199
  30. data/public/fckeditor/editor/css/fck_showtableborders_gecko.css +0 -49
  31. data/public/fckeditor/editor/css/images/block_address.png +0 -0
  32. data/public/fckeditor/editor/css/images/block_blockquote.png +0 -0
  33. data/public/fckeditor/editor/css/images/block_div.png +0 -0
  34. data/public/fckeditor/editor/css/images/block_h1.png +0 -0
  35. data/public/fckeditor/editor/css/images/block_h2.png +0 -0
  36. data/public/fckeditor/editor/css/images/block_h3.png +0 -0
  37. data/public/fckeditor/editor/css/images/block_h4.png +0 -0
  38. data/public/fckeditor/editor/css/images/block_h5.png +0 -0
  39. data/public/fckeditor/editor/css/images/block_h6.png +0 -0
  40. data/public/fckeditor/editor/css/images/block_p.png +0 -0
  41. data/public/fckeditor/editor/css/images/block_pre.png +0 -0
  42. data/public/fckeditor/editor/css/images/fck_anchor.gif +0 -0
  43. data/public/fckeditor/editor/css/images/fck_flashlogo.gif +0 -0
  44. data/public/fckeditor/editor/css/images/fck_hiddenfield.gif +0 -0
  45. data/public/fckeditor/editor/css/images/fck_pagebreak.gif +0 -0
  46. data/public/fckeditor/editor/css/images/fck_plugin.gif +0 -0
  47. data/public/fckeditor/editor/dialog/common/fck_dialog_common.css +0 -85
  48. data/public/fckeditor/editor/dialog/common/fck_dialog_common.js +0 -311
  49. data/public/fckeditor/editor/dialog/common/images/locked.gif +0 -0
  50. data/public/fckeditor/editor/dialog/common/images/reset.gif +0 -0
  51. data/public/fckeditor/editor/dialog/common/images/unlocked.gif +0 -0
  52. data/public/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif +0 -0
  53. data/public/fckeditor/editor/dialog/fck_about/logo_fredck.gif +0 -0
  54. data/public/fckeditor/editor/dialog/fck_about/sponsors/spellchecker_net.gif +0 -0
  55. data/public/fckeditor/editor/dialog/fck_about.html +0 -161
  56. data/public/fckeditor/editor/dialog/fck_anchor.html +0 -220
  57. data/public/fckeditor/editor/dialog/fck_button.html +0 -104
  58. data/public/fckeditor/editor/dialog/fck_checkbox.html +0 -104
  59. data/public/fckeditor/editor/dialog/fck_colorselector.html +0 -172
  60. data/public/fckeditor/editor/dialog/fck_div.html +0 -364
  61. data/public/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html +0 -113
  62. data/public/fckeditor/editor/dialog/fck_docprops.html +0 -600
  63. data/public/fckeditor/editor/dialog/fck_flash/fck_flash.js +0 -300
  64. data/public/fckeditor/editor/dialog/fck_flash/fck_flash_preview.html +0 -50
  65. data/public/fckeditor/editor/dialog/fck_flash.html +0 -152
  66. data/public/fckeditor/editor/dialog/fck_form.html +0 -109
  67. data/public/fckeditor/editor/dialog/fck_hiddenfield.html +0 -115
  68. data/public/fckeditor/editor/dialog/fck_image/fck_image.js +0 -512
  69. data/public/fckeditor/editor/dialog/fck_image/fck_image_preview.html +0 -72
  70. data/public/fckeditor/editor/dialog/fck_image.html +0 -258
  71. data/public/fckeditor/editor/dialog/fck_link/fck_link.js +0 -893
  72. data/public/fckeditor/editor/dialog/fck_link.html +0 -295
  73. data/public/fckeditor/editor/dialog/fck_listprop.html +0 -120
  74. data/public/fckeditor/editor/dialog/fck_paste.html +0 -346
  75. data/public/fckeditor/editor/dialog/fck_radiobutton.html +0 -104
  76. data/public/fckeditor/editor/dialog/fck_replace.html +0 -648
  77. data/public/fckeditor/editor/dialog/fck_select/fck_select.js +0 -194
  78. data/public/fckeditor/editor/dialog/fck_select.html +0 -180
  79. data/public/fckeditor/editor/dialog/fck_smiley.html +0 -111
  80. data/public/fckeditor/editor/dialog/fck_source.html +0 -68
  81. data/public/fckeditor/editor/dialog/fck_specialchar.html +0 -121
  82. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html +0 -0
  83. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js +0 -87
  84. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html +0 -153
  85. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm +0 -148
  86. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php +0 -199
  87. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl +0 -181
  88. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js +0 -461
  89. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html +0 -71
  90. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css +0 -49
  91. data/public/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js +0 -272
  92. data/public/fckeditor/editor/dialog/fck_spellerpages.html +0 -70
  93. data/public/fckeditor/editor/dialog/fck_table.html +0 -298
  94. data/public/fckeditor/editor/dialog/fck_tablecell.html +0 -257
  95. data/public/fckeditor/editor/dialog/fck_template/images/template1.gif +0 -0
  96. data/public/fckeditor/editor/dialog/fck_template/images/template2.gif +0 -0
  97. data/public/fckeditor/editor/dialog/fck_template/images/template3.gif +0 -0
  98. data/public/fckeditor/editor/dialog/fck_template.html +0 -242
  99. data/public/fckeditor/editor/dialog/fck_textarea.html +0 -94
  100. data/public/fckeditor/editor/dialog/fck_textfield.html +0 -136
  101. data/public/fckeditor/editor/dtd/fck_dtd_test.html +0 -41
  102. data/public/fckeditor/editor/dtd/fck_xhtml10strict.js +0 -116
  103. data/public/fckeditor/editor/dtd/fck_xhtml10transitional.js +0 -140
  104. data/public/fckeditor/editor/fckdebug.html +0 -153
  105. data/public/fckeditor/editor/fckdialog.html +0 -812
  106. data/public/fckeditor/editor/fckeditor.html +0 -317
  107. data/public/fckeditor/editor/fckeditor.original.html +0 -424
  108. data/public/fckeditor/editor/filemanager/browser/default/browser.css +0 -87
  109. data/public/fckeditor/editor/filemanager/browser/default/browser.html +0 -200
  110. data/public/fckeditor/editor/filemanager/browser/default/frmactualfolder.html +0 -95
  111. data/public/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html +0 -114
  112. data/public/fckeditor/editor/filemanager/browser/default/frmfolders.html +0 -198
  113. data/public/fckeditor/editor/filemanager/browser/default/frmresourceslist.html +0 -169
  114. data/public/fckeditor/editor/filemanager/browser/default/frmresourcetype.html +0 -68
  115. data/public/fckeditor/editor/filemanager/browser/default/frmupload.html +0 -115
  116. data/public/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif +0 -0
  117. data/public/fckeditor/editor/filemanager/browser/default/images/Folder.gif +0 -0
  118. data/public/fckeditor/editor/filemanager/browser/default/images/Folder32.gif +0 -0
  119. data/public/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif +0 -0
  120. data/public/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif +0 -0
  121. data/public/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif +0 -0
  122. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif +0 -0
  123. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif +0 -0
  124. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif +0 -0
  125. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif +0 -0
  126. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif +0 -0
  127. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif +0 -0
  128. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif +0 -0
  129. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif +0 -0
  130. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif +0 -0
  131. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif +0 -0
  132. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif +0 -0
  133. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif +0 -0
  134. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif +0 -0
  135. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif +0 -0
  136. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif +0 -0
  137. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif +0 -0
  138. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif +0 -0
  139. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif +0 -0
  140. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif +0 -0
  141. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif +0 -0
  142. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif +0 -0
  143. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif +0 -0
  144. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif +0 -0
  145. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif +0 -0
  146. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif +0 -0
  147. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif +0 -0
  148. data/public/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif +0 -0
  149. data/public/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif +0 -0
  150. data/public/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif +0 -0
  151. data/public/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif +0 -0
  152. data/public/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif +0 -0
  153. data/public/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif +0 -0
  154. data/public/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif +0 -0
  155. data/public/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif +0 -0
  156. data/public/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif +0 -0
  157. data/public/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif +0 -0
  158. data/public/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif +0 -0
  159. data/public/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif +0 -0
  160. data/public/fckeditor/editor/filemanager/browser/default/images/icons/html.gif +0 -0
  161. data/public/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif +0 -0
  162. data/public/fckeditor/editor/filemanager/browser/default/images/icons/js.gif +0 -0
  163. data/public/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif +0 -0
  164. data/public/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif +0 -0
  165. data/public/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif +0 -0
  166. data/public/fckeditor/editor/filemanager/browser/default/images/icons/png.gif +0 -0
  167. data/public/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif +0 -0
  168. data/public/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif +0 -0
  169. data/public/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif +0 -0
  170. data/public/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif +0 -0
  171. data/public/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif +0 -0
  172. data/public/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif +0 -0
  173. data/public/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif +0 -0
  174. data/public/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif +0 -0
  175. data/public/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif +0 -0
  176. data/public/fckeditor/editor/filemanager/browser/default/images/spacer.gif +0 -0
  177. data/public/fckeditor/editor/filemanager/browser/default/js/common.js +0 -88
  178. data/public/fckeditor/editor/filemanager/browser/default/js/fckxml.js +0 -147
  179. data/public/fckeditor/editor/images/anchor.gif +0 -0
  180. data/public/fckeditor/editor/images/arrow_ltr.gif +0 -0
  181. data/public/fckeditor/editor/images/arrow_rtl.gif +0 -0
  182. data/public/fckeditor/editor/images/smiley/msn/angel_smile.gif +0 -0
  183. data/public/fckeditor/editor/images/smiley/msn/angry_smile.gif +0 -0
  184. data/public/fckeditor/editor/images/smiley/msn/broken_heart.gif +0 -0
  185. data/public/fckeditor/editor/images/smiley/msn/cake.gif +0 -0
  186. data/public/fckeditor/editor/images/smiley/msn/confused_smile.gif +0 -0
  187. data/public/fckeditor/editor/images/smiley/msn/cry_smile.gif +0 -0
  188. data/public/fckeditor/editor/images/smiley/msn/devil_smile.gif +0 -0
  189. data/public/fckeditor/editor/images/smiley/msn/embaressed_smile.gif +0 -0
  190. data/public/fckeditor/editor/images/smiley/msn/envelope.gif +0 -0
  191. data/public/fckeditor/editor/images/smiley/msn/heart.gif +0 -0
  192. data/public/fckeditor/editor/images/smiley/msn/kiss.gif +0 -0
  193. data/public/fckeditor/editor/images/smiley/msn/lightbulb.gif +0 -0
  194. data/public/fckeditor/editor/images/smiley/msn/omg_smile.gif +0 -0
  195. data/public/fckeditor/editor/images/smiley/msn/regular_smile.gif +0 -0
  196. data/public/fckeditor/editor/images/smiley/msn/sad_smile.gif +0 -0
  197. data/public/fckeditor/editor/images/smiley/msn/shades_smile.gif +0 -0
  198. data/public/fckeditor/editor/images/smiley/msn/teeth_smile.gif +0 -0
  199. data/public/fckeditor/editor/images/smiley/msn/thumbs_down.gif +0 -0
  200. data/public/fckeditor/editor/images/smiley/msn/thumbs_up.gif +0 -0
  201. data/public/fckeditor/editor/images/smiley/msn/tounge_smile.gif +0 -0
  202. data/public/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif +0 -0
  203. data/public/fckeditor/editor/images/smiley/msn/wink_smile.gif +0 -0
  204. data/public/fckeditor/editor/images/spacer.gif +0 -0
  205. data/public/fckeditor/editor/js/fckadobeair.js +0 -176
  206. data/public/fckeditor/editor/js/fckeditorcode_gecko.js +0 -108
  207. data/public/fckeditor/editor/js/fckeditorcode_ie.js +0 -109
  208. data/public/fckeditor/editor/lang/_translationstatus.txt +0 -78
  209. data/public/fckeditor/editor/lang/af.js +0 -526
  210. data/public/fckeditor/editor/lang/ar.js +0 -526
  211. data/public/fckeditor/editor/lang/bg.js +0 -526
  212. data/public/fckeditor/editor/lang/bn.js +0 -526
  213. data/public/fckeditor/editor/lang/bs.js +0 -526
  214. data/public/fckeditor/editor/lang/ca.js +0 -526
  215. data/public/fckeditor/editor/lang/cs.js +0 -526
  216. data/public/fckeditor/editor/lang/da.js +0 -526
  217. data/public/fckeditor/editor/lang/de.js +0 -526
  218. data/public/fckeditor/editor/lang/el.js +0 -526
  219. data/public/fckeditor/editor/lang/en-au.js +0 -526
  220. data/public/fckeditor/editor/lang/en-ca.js +0 -526
  221. data/public/fckeditor/editor/lang/en-uk.js +0 -526
  222. data/public/fckeditor/editor/lang/en.js +0 -526
  223. data/public/fckeditor/editor/lang/eo.js +0 -526
  224. data/public/fckeditor/editor/lang/es.js +0 -526
  225. data/public/fckeditor/editor/lang/et.js +0 -526
  226. data/public/fckeditor/editor/lang/eu.js +0 -527
  227. data/public/fckeditor/editor/lang/fa.js +0 -526
  228. data/public/fckeditor/editor/lang/fi.js +0 -526
  229. data/public/fckeditor/editor/lang/fo.js +0 -526
  230. data/public/fckeditor/editor/lang/fr-ca.js +0 -526
  231. data/public/fckeditor/editor/lang/fr.js +0 -526
  232. data/public/fckeditor/editor/lang/gl.js +0 -526
  233. data/public/fckeditor/editor/lang/gu.js +0 -526
  234. data/public/fckeditor/editor/lang/he.js +0 -526
  235. data/public/fckeditor/editor/lang/hi.js +0 -526
  236. data/public/fckeditor/editor/lang/hr.js +0 -526
  237. data/public/fckeditor/editor/lang/hu.js +0 -526
  238. data/public/fckeditor/editor/lang/it.js +0 -526
  239. data/public/fckeditor/editor/lang/ja.js +0 -526
  240. data/public/fckeditor/editor/lang/km.js +0 -526
  241. data/public/fckeditor/editor/lang/ko.js +0 -526
  242. data/public/fckeditor/editor/lang/lt.js +0 -526
  243. data/public/fckeditor/editor/lang/lv.js +0 -526
  244. data/public/fckeditor/editor/lang/mn.js +0 -526
  245. data/public/fckeditor/editor/lang/ms.js +0 -526
  246. data/public/fckeditor/editor/lang/nb.js +0 -526
  247. data/public/fckeditor/editor/lang/nl.js +0 -526
  248. data/public/fckeditor/editor/lang/no.js +0 -526
  249. data/public/fckeditor/editor/lang/pl.js +0 -526
  250. data/public/fckeditor/editor/lang/pt-br.js +0 -526
  251. data/public/fckeditor/editor/lang/pt.js +0 -526
  252. data/public/fckeditor/editor/lang/ro.js +0 -526
  253. data/public/fckeditor/editor/lang/ru.js +0 -526
  254. data/public/fckeditor/editor/lang/sk.js +0 -526
  255. data/public/fckeditor/editor/lang/sl.js +0 -526
  256. data/public/fckeditor/editor/lang/sr-latn.js +0 -526
  257. data/public/fckeditor/editor/lang/sr.js +0 -526
  258. data/public/fckeditor/editor/lang/sv.js +0 -526
  259. data/public/fckeditor/editor/lang/th.js +0 -526
  260. data/public/fckeditor/editor/lang/tr.js +0 -526
  261. data/public/fckeditor/editor/lang/uk.js +0 -526
  262. data/public/fckeditor/editor/lang/vi.js +0 -526
  263. data/public/fckeditor/editor/lang/zh-cn.js +0 -526
  264. data/public/fckeditor/editor/lang/zh.js +0 -526
  265. data/public/fckeditor/editor/plugins/autogrow/fckplugin.js +0 -99
  266. data/public/fckeditor/editor/plugins/bbcode/_sample/sample.config.js +0 -26
  267. data/public/fckeditor/editor/plugins/bbcode/_sample/sample.html +0 -67
  268. data/public/fckeditor/editor/plugins/bbcode/fckplugin.js +0 -123
  269. data/public/fckeditor/editor/plugins/dragresizetable/fckplugin.js +0 -524
  270. data/public/fckeditor/editor/plugins/placeholder/fck_placeholder.html +0 -105
  271. data/public/fckeditor/editor/plugins/placeholder/fckplugin.js +0 -187
  272. data/public/fckeditor/editor/plugins/placeholder/lang/de.js +0 -27
  273. data/public/fckeditor/editor/plugins/placeholder/lang/en.js +0 -27
  274. data/public/fckeditor/editor/plugins/placeholder/lang/es.js +0 -27
  275. data/public/fckeditor/editor/plugins/placeholder/lang/fr.js +0 -27
  276. data/public/fckeditor/editor/plugins/placeholder/lang/it.js +0 -27
  277. data/public/fckeditor/editor/plugins/placeholder/lang/pl.js +0 -27
  278. data/public/fckeditor/editor/plugins/placeholder/placeholder.gif +0 -0
  279. data/public/fckeditor/editor/plugins/simplecommands/fckplugin.js +0 -29
  280. data/public/fckeditor/editor/plugins/tablecommands/fckplugin.js +0 -33
  281. data/public/fckeditor/editor/skins/_fckviewstrips.html +0 -121
  282. data/public/fckeditor/editor/skins/default/fck_dialog.css +0 -402
  283. data/public/fckeditor/editor/skins/default/fck_dialog_ie6.js +0 -110
  284. data/public/fckeditor/editor/skins/default/fck_editor.css +0 -464
  285. data/public/fckeditor/editor/skins/default/fck_strip.gif +0 -0
  286. data/public/fckeditor/editor/skins/default/images/dialog.sides.gif +0 -0
  287. data/public/fckeditor/editor/skins/default/images/dialog.sides.png +0 -0
  288. data/public/fckeditor/editor/skins/default/images/dialog.sides.rtl.png +0 -0
  289. data/public/fckeditor/editor/skins/default/images/sprites.gif +0 -0
  290. data/public/fckeditor/editor/skins/default/images/sprites.png +0 -0
  291. data/public/fckeditor/editor/skins/default/images/toolbar.arrowright.gif +0 -0
  292. data/public/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif +0 -0
  293. data/public/fckeditor/editor/skins/default/images/toolbar.collapse.gif +0 -0
  294. data/public/fckeditor/editor/skins/default/images/toolbar.end.gif +0 -0
  295. data/public/fckeditor/editor/skins/default/images/toolbar.expand.gif +0 -0
  296. data/public/fckeditor/editor/skins/default/images/toolbar.separator.gif +0 -0
  297. data/public/fckeditor/editor/skins/default/images/toolbar.start.gif +0 -0
  298. data/public/fckeditor/editor/skins/office2003/fck_dialog.css +0 -402
  299. data/public/fckeditor/editor/skins/office2003/fck_dialog_ie6.js +0 -110
  300. data/public/fckeditor/editor/skins/office2003/fck_editor.css +0 -476
  301. data/public/fckeditor/editor/skins/office2003/fck_strip.gif +0 -0
  302. data/public/fckeditor/editor/skins/office2003/images/dialog.sides.gif +0 -0
  303. data/public/fckeditor/editor/skins/office2003/images/dialog.sides.png +0 -0
  304. data/public/fckeditor/editor/skins/office2003/images/dialog.sides.rtl.png +0 -0
  305. data/public/fckeditor/editor/skins/office2003/images/sprites.gif +0 -0
  306. data/public/fckeditor/editor/skins/office2003/images/sprites.png +0 -0
  307. data/public/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif +0 -0
  308. data/public/fckeditor/editor/skins/office2003/images/toolbar.bg.gif +0 -0
  309. data/public/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif +0 -0
  310. data/public/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif +0 -0
  311. data/public/fckeditor/editor/skins/office2003/images/toolbar.end.gif +0 -0
  312. data/public/fckeditor/editor/skins/office2003/images/toolbar.expand.gif +0 -0
  313. data/public/fckeditor/editor/skins/office2003/images/toolbar.separator.gif +0 -0
  314. data/public/fckeditor/editor/skins/office2003/images/toolbar.start.gif +0 -0
  315. data/public/fckeditor/editor/skins/silver/fck_dialog.css +0 -402
  316. data/public/fckeditor/editor/skins/silver/fck_dialog_ie6.js +0 -110
  317. data/public/fckeditor/editor/skins/silver/fck_editor.css +0 -473
  318. data/public/fckeditor/editor/skins/silver/fck_strip.gif +0 -0
  319. data/public/fckeditor/editor/skins/silver/images/dialog.sides.gif +0 -0
  320. data/public/fckeditor/editor/skins/silver/images/dialog.sides.png +0 -0
  321. data/public/fckeditor/editor/skins/silver/images/dialog.sides.rtl.png +0 -0
  322. data/public/fckeditor/editor/skins/silver/images/sprites.gif +0 -0
  323. data/public/fckeditor/editor/skins/silver/images/sprites.png +0 -0
  324. data/public/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif +0 -0
  325. data/public/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif +0 -0
  326. data/public/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif +0 -0
  327. data/public/fckeditor/editor/skins/silver/images/toolbar.collapse.gif +0 -0
  328. data/public/fckeditor/editor/skins/silver/images/toolbar.end.gif +0 -0
  329. data/public/fckeditor/editor/skins/silver/images/toolbar.expand.gif +0 -0
  330. data/public/fckeditor/editor/skins/silver/images/toolbar.separator.gif +0 -0
  331. data/public/fckeditor/editor/skins/silver/images/toolbar.start.gif +0 -0
  332. data/public/fckeditor/fckconfig.js +0 -364
  333. data/public/fckeditor/fckdebug.html +0 -153
  334. data/public/fckeditor/fckdialog.html +0 -812
  335. data/public/fckeditor/fckeditor.html +0 -317
  336. data/public/fckeditor/fckeditor.js +0 -328
  337. data/public/fckeditor/fckeditor.original.html +0 -424
  338. data/public/fckeditor/fckpackager.xml +0 -262
  339. data/public/fckeditor/fckstyles.xml +0 -111
  340. data/public/fckeditor/fcktemplates.xml +0 -103
  341. data/public/images/cms/administration/user_browser_bg.gif +0 -0
  342. data/public/images/cms/bg.png +0 -0
  343. data/public/images/cms/bl_curve.png +0 -0
  344. data/public/images/cms/bottom_cap.png +0 -0
  345. data/public/images/cms/bottom_cap_content.png +0 -0
  346. data/public/images/cms/browse.gif +0 -0
  347. data/public/images/cms/browser_media_logo.png +0 -0
  348. data/public/images/cms/browsercms_logo.png +0 -0
  349. data/public/images/cms/buttons/button.png +0 -0
  350. data/public/images/cms/buttons/button_bg.png +0 -0
  351. data/public/images/cms/buttons/button_cap.png +0 -0
  352. data/public/images/cms/buttons/button_cap_h.png +0 -0
  353. data/public/images/cms/buttons/button_cap_off.gif +0 -0
  354. data/public/images/cms/buttons/button_cap_off_middle.gif +0 -0
  355. data/public/images/cms/buttons/button_h.png +0 -0
  356. data/public/images/cms/buttons/button_left_bg.png +0 -0
  357. data/public/images/cms/buttons/button_off.png +0 -0
  358. data/public/images/cms/buttons/button_off_middle.png +0 -0
  359. data/public/images/cms/buttons/delete_x.png +0 -0
  360. data/public/images/cms/buttons/delete_x_disabled.png +0 -0
  361. data/public/images/cms/buttons/delete_x_h.png +0 -0
  362. data/public/images/cms/buttons/sm_button.gif +0 -0
  363. data/public/images/cms/buttons/sm_button_2.gif +0 -0
  364. data/public/images/cms/buttons/sm_button_2_h.gif +0 -0
  365. data/public/images/cms/buttons/sm_button_h.gif +0 -0
  366. data/public/images/cms/containers/add.gif +0 -0
  367. data/public/images/cms/containers/alpha.png +0 -0
  368. data/public/images/cms/containers/beta.png +0 -0
  369. data/public/images/cms/containers/delete.gif +0 -0
  370. data/public/images/cms/containers/down.gif +0 -0
  371. data/public/images/cms/containers/edit.gif +0 -0
  372. data/public/images/cms/containers/up.gif +0 -0
  373. data/public/images/cms/containers/view.gif +0 -0
  374. data/public/images/cms/content_bg.gif +0 -0
  375. data/public/images/cms/dashboard/bottom_cap.png +0 -0
  376. data/public/images/cms/dashboard/bottom_cap_content.png +0 -0
  377. data/public/images/cms/dashboard/header_bg.gif +0 -0
  378. data/public/images/cms/dashboard/header_left_bg.gif +0 -0
  379. data/public/images/cms/dashboard/table_header_bg.gif +0 -0
  380. data/public/images/cms/dashboard/top_cap.png +0 -0
  381. data/public/images/cms/dashed.gif +0 -0
  382. data/public/images/cms/datepicker/clear.gif +0 -0
  383. data/public/images/cms/datepicker/close.gif +0 -0
  384. data/public/images/cms/dk_button_l.gif +0 -0
  385. data/public/images/cms/dk_button_r.gif +0 -0
  386. data/public/images/cms/dot.png +0 -0
  387. data/public/images/cms/draft_status.gif +0 -0
  388. data/public/images/cms/gray_long_bg.gif +0 -0
  389. data/public/images/cms/icons/actions/add.png +0 -0
  390. data/public/images/cms/icons/actions/config.png +0 -0
  391. data/public/images/cms/icons/actions/connect.png +0 -0
  392. data/public/images/cms/icons/actions/delete.png +0 -0
  393. data/public/images/cms/icons/actions/down.png +0 -0
  394. data/public/images/cms/icons/actions/edit.png +0 -0
  395. data/public/images/cms/icons/actions/folder.png +0 -0
  396. data/public/images/cms/icons/actions/folder_add.png +0 -0
  397. data/public/images/cms/icons/actions/folder_delete.png +0 -0
  398. data/public/images/cms/icons/actions/folder_edit.png +0 -0
  399. data/public/images/cms/icons/actions/folder_move.png +0 -0
  400. data/public/images/cms/icons/actions/folder_open.png +0 -0
  401. data/public/images/cms/icons/actions/history.png +0 -0
  402. data/public/images/cms/icons/actions/home.png +0 -0
  403. data/public/images/cms/icons/actions/left.png +0 -0
  404. data/public/images/cms/icons/actions/link.png +0 -0
  405. data/public/images/cms/icons/actions/page.png +0 -0
  406. data/public/images/cms/icons/actions/page_add.png +0 -0
  407. data/public/images/cms/icons/actions/page_edit.png +0 -0
  408. data/public/images/cms/icons/actions/page_move.png +0 -0
  409. data/public/images/cms/icons/actions/redo.png +0 -0
  410. data/public/images/cms/icons/actions/refresh.png +0 -0
  411. data/public/images/cms/icons/actions/right.png +0 -0
  412. data/public/images/cms/icons/actions/root_folder.png +0 -0
  413. data/public/images/cms/icons/actions/root_link.png +0 -0
  414. data/public/images/cms/icons/actions/root_page.png +0 -0
  415. data/public/images/cms/icons/actions/undo.png +0 -0
  416. data/public/images/cms/icons/actions/up.png +0 -0
  417. data/public/images/cms/icons/actions/view.png +0 -0
  418. data/public/images/cms/icons/file_types/doc.png +0 -0
  419. data/public/images/cms/icons/file_types/file.png +0 -0
  420. data/public/images/cms/icons/file_types/gif.png +0 -0
  421. data/public/images/cms/icons/file_types/htm.png +0 -0
  422. data/public/images/cms/icons/file_types/pdf.png +0 -0
  423. data/public/images/cms/icons/file_types/ppt.png +0 -0
  424. data/public/images/cms/icons/file_types/swf.png +0 -0
  425. data/public/images/cms/icons/file_types/txt.png +0 -0
  426. data/public/images/cms/icons/file_types/xls.png +0 -0
  427. data/public/images/cms/icons/file_types/xml.png +0 -0
  428. data/public/images/cms/icons/file_types/zip.png +0 -0
  429. data/public/images/cms/icons/status/archived.gif +0 -0
  430. data/public/images/cms/icons/status/draft.gif +0 -0
  431. data/public/images/cms/icons/status/hidden.gif +0 -0
  432. data/public/images/cms/icons/status/locked.gif +0 -0
  433. data/public/images/cms/icons/status/published.gif +0 -0
  434. data/public/images/cms/icons/status/unlocked.gif +0 -0
  435. data/public/images/cms/icons/user.png +0 -0
  436. data/public/images/cms/login_bg.jpg +0 -0
  437. data/public/images/cms/login_bottom.jpg +0 -0
  438. data/public/images/cms/login_top.gif +0 -0
  439. data/public/images/cms/lt_button_bg.gif +0 -0
  440. data/public/images/cms/lt_button_l.gif +0 -0
  441. data/public/images/cms/lt_button_r.gif +0 -0
  442. data/public/images/cms/menu/block_cap_h.gif +0 -0
  443. data/public/images/cms/menu/bottom_cap.png +0 -0
  444. data/public/images/cms/menu/bottom_cap_menu.png +0 -0
  445. data/public/images/cms/menu/bottom_cap_menu_first.png +0 -0
  446. data/public/images/cms/menu/menu_header_first_bg.gif +0 -0
  447. data/public/images/cms/menu/selected_block_cap.gif +0 -0
  448. data/public/images/cms/menu/top_cap.png +0 -0
  449. data/public/images/cms/menu/top_cap_menu_header.png +0 -0
  450. data/public/images/cms/menu.png +0 -0
  451. data/public/images/cms/menu_h.gif +0 -0
  452. data/public/images/cms/menu_header.png +0 -0
  453. data/public/images/cms/menu_open.png +0 -0
  454. data/public/images/cms/menu_open_bg.gif +0 -0
  455. data/public/images/cms/nav/on_bg.gif +0 -0
  456. data/public/images/cms/nav.png +0 -0
  457. data/public/images/cms/nav_admin.gif +0 -0
  458. data/public/images/cms/nav_admin_h.gif +0 -0
  459. data/public/images/cms/nav_admin_on.gif +0 -0
  460. data/public/images/cms/nav_cap.png +0 -0
  461. data/public/images/cms/nav_cap_h.gif +0 -0
  462. data/public/images/cms/nav_content_library.gif +0 -0
  463. data/public/images/cms/nav_content_library_h.gif +0 -0
  464. data/public/images/cms/nav_content_library_on.gif +0 -0
  465. data/public/images/cms/nav_dash.gif +0 -0
  466. data/public/images/cms/nav_dash_h.gif +0 -0
  467. data/public/images/cms/nav_dash_on.gif +0 -0
  468. data/public/images/cms/nav_h.gif +0 -0
  469. data/public/images/cms/nav_sitemap.gif +0 -0
  470. data/public/images/cms/nav_sitemap_h.gif +0 -0
  471. data/public/images/cms/nav_sitemap_on.gif +0 -0
  472. data/public/images/cms/page_toolbar/page_toolbar_bg.gif +0 -0
  473. data/public/images/cms/page_toolbar/page_toolbar_inset_bg.gif +0 -0
  474. data/public/images/cms/page_toolbar/page_toolbar_inset_draft_bg.gif +0 -0
  475. data/public/images/cms/page_toolbar/page_toolbar_inset_draft_l.gif +0 -0
  476. data/public/images/cms/page_toolbar/page_toolbar_inset_draft_r.gif +0 -0
  477. data/public/images/cms/page_toolbar/page_toolbar_inset_l.gif +0 -0
  478. data/public/images/cms/page_toolbar/page_toolbar_inset_published_bg.gif +0 -0
  479. data/public/images/cms/page_toolbar/page_toolbar_inset_published_l.gif +0 -0
  480. data/public/images/cms/page_toolbar/page_toolbar_inset_published_r.gif +0 -0
  481. data/public/images/cms/page_toolbar/page_toolbar_inset_r.gif +0 -0
  482. data/public/images/cms/page_toolbar/page_toolbar_l.gif +0 -0
  483. data/public/images/cms/page_toolbar/page_toolbar_r.gif +0 -0
  484. data/public/images/cms/page_toolbar/status_draft_bg.gif +0 -0
  485. data/public/images/cms/page_toolbar/status_draft_l.gif +0 -0
  486. data/public/images/cms/page_toolbar/status_l.gif +0 -0
  487. data/public/images/cms/page_toolbar/status_published_bg.gif +0 -0
  488. data/public/images/cms/page_toolbar/status_published_l.gif +0 -0
  489. data/public/images/cms/page_toolbar/visual_editor_bg.gif +0 -0
  490. data/public/images/cms/page_toolbar/visual_editor_end.gif +0 -0
  491. data/public/images/cms/page_toolbar/visual_editor_r.gif +0 -0
  492. data/public/images/cms/page_toolbar/visual_editor_state_bg.gif +0 -0
  493. data/public/images/cms/pages/add_connectable.gif +0 -0
  494. data/public/images/cms/pages/connect_connectable.gif +0 -0
  495. data/public/images/cms/pages/container_border.gif +0 -0
  496. data/public/images/cms/pages/container_border_l.gif +0 -0
  497. data/public/images/cms/pages/container_border_r.gif +0 -0
  498. data/public/images/cms/pages/delete_connectable.gif +0 -0
  499. data/public/images/cms/pages/down_connectable.gif +0 -0
  500. data/public/images/cms/pages/down_connectable_disabled.gif +0 -0
  501. data/public/images/cms/pages/edit_connectable.gif +0 -0
  502. data/public/images/cms/pages/edit_connectable_2.gif +0 -0
  503. data/public/images/cms/pages/show_connectable.gif +0 -0
  504. data/public/images/cms/pages/up_connectable.gif +0 -0
  505. data/public/images/cms/pages/up_connectable_disabled.gif +0 -0
  506. data/public/images/cms/pagination/first.gif +0 -0
  507. data/public/images/cms/pagination/first_h.gif +0 -0
  508. data/public/images/cms/pagination/input.gif +0 -0
  509. data/public/images/cms/pagination/last.gif +0 -0
  510. data/public/images/cms/pagination/last_h.gif +0 -0
  511. data/public/images/cms/pagination/next.gif +0 -0
  512. data/public/images/cms/pagination/next_h.gif +0 -0
  513. data/public/images/cms/pagination/previous.gif +0 -0
  514. data/public/images/cms/pagination/previous_h.gif +0 -0
  515. data/public/images/cms/published_status.gif +0 -0
  516. data/public/images/cms/search.png +0 -0
  517. data/public/images/cms/search_submit.gif +0 -0
  518. data/public/images/cms/search_submit_h.gif +0 -0
  519. data/public/images/cms/searchbox_gradient.gif +0 -0
  520. data/public/images/cms/select_bg.gif +0 -0
  521. data/public/images/cms/select_bg_2.gif +0 -0
  522. data/public/images/cms/sitemap/bottom_cap.png +0 -0
  523. data/public/images/cms/sitemap/buffer_caps.png +0 -0
  524. data/public/images/cms/sitemap/contract.png +0 -0
  525. data/public/images/cms/sitemap/corners.gif +0 -0
  526. data/public/images/cms/sitemap/corners_hover.gif +0 -0
  527. data/public/images/cms/sitemap/divider.gif +0 -0
  528. data/public/images/cms/sitemap/expand.png +0 -0
  529. data/public/images/cms/sitemap/gradient.gif +0 -0
  530. data/public/images/cms/sitemap/gray_contract.png +0 -0
  531. data/public/images/cms/sitemap/gray_expand.png +0 -0
  532. data/public/images/cms/sitemap/no_contents.png +0 -0
  533. data/public/images/cms/sitemap/site_root_cap.png +0 -0
  534. data/public/images/cms/sitemap/tooltip.gif +0 -0
  535. data/public/images/cms/sitemap/top_cap_content.png +0 -0
  536. data/public/images/cms/solid.gif +0 -0
  537. data/public/images/cms/table/bl.gif +0 -0
  538. data/public/images/cms/table/br.gif +0 -0
  539. data/public/images/cms/table/divider.gif +0 -0
  540. data/public/images/cms/table/td_cap_first_h.gif +0 -0
  541. data/public/images/cms/table/td_cap_first_s.gif +0 -0
  542. data/public/images/cms/table/td_cap_last_h.gif +0 -0
  543. data/public/images/cms/table/td_cap_last_s.gif +0 -0
  544. data/public/images/cms/table/td_last_bg.gif +0 -0
  545. data/public/images/cms/table/th_bg.gif +0 -0
  546. data/public/images/cms/table/th_divider.gif +0 -0
  547. data/public/images/cms/table/th_last_bg.gif +0 -0
  548. data/public/images/cms/table/tl.gif +0 -0
  549. data/public/images/cms/table/tr.gif +0 -0
  550. data/public/images/cms/table/tr_bg.gif +0 -0
  551. data/public/images/cms/thickbox/loadingAnimation.gif +0 -0
  552. data/public/images/cms/thickbox/macFFBgHack.png +0 -0
  553. data/public/images/cms/toolbar_bg.png +0 -0
  554. data/public/images/cms/top_cap.png +0 -0
  555. data/public/images/cms/top_cap_content.png +0 -0
  556. data/public/images/cms/top_cap_menu_header.png +0 -0
  557. data/public/images/cms/user_search_submit.gif +0 -0
  558. data/public/images/cms/usercontrols_bg.png +0 -0
  559. data/public/images/cms/usercontrols_bg_cap.png +0 -0
  560. data/public/images/rails.png +0 -0
  561. data/public/javascripts/application.js +0 -2
  562. data/public/javascripts/cms/application.js +0 -148
  563. data/public/javascripts/cms/editor.js +0 -56
  564. data/public/javascripts/cms/sitemap.js +0 -426
  565. data/public/javascripts/controls.js +0 -963
  566. data/public/javascripts/dragdrop.js +0 -973
  567. data/public/javascripts/effects.js +0 -1128
  568. data/public/javascripts/jquery-ui.js +0 -591
  569. data/public/javascripts/jquery.contextMenu.js +0 -211
  570. data/public/javascripts/jquery.cookie.js +0 -96
  571. data/public/javascripts/jquery.dimensions.js +0 -119
  572. data/public/javascripts/jquery.js +0 -11
  573. data/public/javascripts/jquery.selectbox-0.5.js +0 -209
  574. data/public/javascripts/jquery.taglist.js +0 -136
  575. data/public/javascripts/jquery.thickbox.js +0 -10
  576. data/public/javascripts/prototype.js +0 -4320
  577. data/public/robots.txt +0 -5
  578. data/public/site/customconfig.js +0 -1
  579. data/public/stylesheets/cms/administration.css +0 -91
  580. data/public/stylesheets/cms/application.css +0 -166
  581. data/public/stylesheets/cms/block.css +0 -26
  582. data/public/stylesheets/cms/buttons.css +0 -120
  583. data/public/stylesheets/cms/content_library.css +0 -139
  584. data/public/stylesheets/cms/content_types.css +0 -4
  585. data/public/stylesheets/cms/dashboard.css +0 -118
  586. data/public/stylesheets/cms/data_table.css +0 -156
  587. data/public/stylesheets/cms/date_picker.css +0 -73
  588. data/public/stylesheets/cms/form_layout.css +0 -283
  589. data/public/stylesheets/cms/jquery.contextMenu.css +0 -61
  590. data/public/stylesheets/cms/login.css +0 -78
  591. data/public/stylesheets/cms/menu.css +0 -116
  592. data/public/stylesheets/cms/nav.css +0 -99
  593. data/public/stylesheets/cms/page_toolbar.css +0 -135
  594. data/public/stylesheets/cms/reset.css +0 -46
  595. data/public/stylesheets/cms/selectbox.css +0 -56
  596. data/public/stylesheets/cms/sitemap.css +0 -390
  597. data/public/stylesheets/cms/taglist.css +0 -18
  598. data/public/stylesheets/cms/thickbox.css +0 -163
  599. data/script/about +0 -4
  600. data/script/console +0 -3
  601. data/script/dbconsole +0 -3
  602. data/script/destroy +0 -3
  603. data/script/generate +0 -3
  604. data/script/performance/benchmarker +0 -3
  605. data/script/performance/profiler +0 -3
  606. data/script/plugin +0 -3
  607. data/script/runner +0 -3
  608. data/script/server +0 -3
@@ -1,893 +0,0 @@
1
- /*
2
- * FCKeditor - The text editor for Internet - http://www.fckeditor.net
3
- * Copyright (C) 2003-2008 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( /^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: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
- }