Wiki2GoEditor 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/Wiki2Go_install_editor.rb +13 -0
- data/fckeditor/editor/_source/classes/fckcontextmenu.js +134 -0
- data/fckeditor/editor/_source/classes/fckdocumentfragment_gecko.js +46 -0
- data/fckeditor/editor/_source/classes/fckdocumentfragment_ie.js +58 -0
- data/fckeditor/editor/_source/classes/fckdomrange.js +452 -0
- data/fckeditor/editor/_source/classes/fckdomrange_gecko.js +71 -0
- data/fckeditor/editor/_source/classes/fckdomrange_ie.js +149 -0
- data/fckeditor/editor/_source/classes/fckeditingarea.js +253 -0
- data/fckeditor/editor/_source/classes/fckelementpath.js +66 -0
- data/fckeditor/editor/_source/classes/fckenterkey.js +556 -0
- data/fckeditor/editor/_source/classes/fckevents.js +53 -0
- data/fckeditor/editor/_source/classes/fckicon.js +98 -0
- data/fckeditor/editor/_source/classes/fckiecleanup.js +68 -0
- data/fckeditor/editor/_source/classes/fckimagepreloader.js +68 -0
- data/fckeditor/editor/_source/classes/fckkeystrokehandler.js +136 -0
- data/fckeditor/editor/_source/classes/fckmenublock.js +143 -0
- data/fckeditor/editor/_source/classes/fckmenublockpanel.js +54 -0
- data/fckeditor/editor/_source/classes/fckmenuitem.js +160 -0
- data/fckeditor/editor/_source/classes/fckpanel.js +303 -0
- data/fckeditor/editor/_source/classes/fckplugin.js +56 -0
- data/fckeditor/editor/_source/classes/fckspecialcombo.js +363 -0
- data/fckeditor/editor/_source/classes/fckstyledef.js +59 -0
- data/fckeditor/editor/_source/classes/fckstyledef_gecko.js +119 -0
- data/fckeditor/editor/_source/classes/fckstyledef_ie.js +142 -0
- data/fckeditor/editor/_source/classes/fckstylesloader.js +88 -0
- data/fckeditor/editor/_source/classes/fcktoolbar.js +120 -0
- data/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js +36 -0
- data/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js +38 -0
- data/fckeditor/editor/_source/classes/fcktoolbarbutton.js +74 -0
- data/fckeditor/editor/_source/classes/fcktoolbarbuttonui.js +222 -0
- data/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js +114 -0
- data/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js +47 -0
- data/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js +52 -0
- data/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js +91 -0
- data/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js +134 -0
- data/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js +111 -0
- data/fckeditor/editor/_source/classes/fckw3crange.js +448 -0
- data/fckeditor/editor/_source/classes/fckxml_gecko.js +87 -0
- data/fckeditor/editor/_source/classes/fckxml_ie.js +90 -0
- data/fckeditor/editor/_source/commandclasses/fck_othercommands.js +380 -0
- data/fckeditor/editor/_source/commandclasses/fckfitwindow.js +169 -0
- data/fckeditor/editor/_source/commandclasses/fcknamedcommand.js +37 -0
- data/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js +38 -0
- data/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js +40 -0
- data/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js +39 -0
- data/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js +67 -0
- data/fckeditor/editor/_source/commandclasses/fckstylecommand.js +99 -0
- data/fckeditor/editor/_source/commandclasses/fcktablecommand.js +71 -0
- data/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js +175 -0
- data/fckeditor/editor/_source/fckconstants.js +52 -0
- data/fckeditor/editor/_source/fckeditorapi.js +161 -0
- data/fckeditor/editor/_source/fckjscoreextensions.js +152 -0
- data/fckeditor/editor/_source/fckscriptloader.js +108 -0
- data/fckeditor/editor/_source/internals/fck.js +859 -0
- data/fckeditor/editor/_source/internals/fck_contextmenu.js +307 -0
- data/fckeditor/editor/_source/internals/fck_gecko.js +254 -0
- data/fckeditor/editor/_source/internals/fck_ie.js +383 -0
- data/fckeditor/editor/_source/internals/fckbrowserinfo.js +48 -0
- data/fckeditor/editor/_source/internals/fckcodeformatter.js +100 -0
- data/fckeditor/editor/_source/internals/fckcommands.js +132 -0
- data/fckeditor/editor/_source/internals/fckconfig.js +199 -0
- data/fckeditor/editor/_source/internals/fckdebug.js +56 -0
- data/fckeditor/editor/_source/internals/fckdialog.js +38 -0
- data/fckeditor/editor/_source/internals/fckdialog_gecko.js +103 -0
- data/fckeditor/editor/_source/internals/fckdialog_ie.js +48 -0
- data/fckeditor/editor/_source/internals/fckdocumentprocessor.js +243 -0
- data/fckeditor/editor/_source/internals/fckdomtools.js +294 -0
- data/fckeditor/editor/_source/internals/fcklanguagemanager.js +161 -0
- data/fckeditor/editor/_source/internals/fcklisthandler.js +152 -0
- data/fckeditor/editor/_source/internals/fcklistslib.js +60 -0
- data/fckeditor/editor/_source/internals/fckplugins.js +46 -0
- data/fckeditor/editor/_source/internals/fckregexlib.js +95 -0
- data/fckeditor/editor/_source/internals/fckselection.js +24 -0
- data/fckeditor/editor/_source/internals/fckselection_gecko.js +151 -0
- data/fckeditor/editor/_source/internals/fckselection_ie.js +158 -0
- data/fckeditor/editor/_source/internals/fcktablehandler.js +385 -0
- data/fckeditor/editor/_source/internals/fcktablehandler_gecko.js +57 -0
- data/fckeditor/editor/_source/internals/fcktablehandler_ie.js +58 -0
- data/fckeditor/editor/_source/internals/fcktoolbaritems.js +121 -0
- data/fckeditor/editor/_source/internals/fcktoolbarset.js +357 -0
- data/fckeditor/editor/_source/internals/fcktools.js +225 -0
- data/fckeditor/editor/_source/internals/fcktools_gecko.js +235 -0
- data/fckeditor/editor/_source/internals/fcktools_ie.js +214 -0
- data/fckeditor/editor/_source/internals/fckundo_gecko.js +27 -0
- data/fckeditor/editor/_source/internals/fckundo_ie.js +123 -0
- data/fckeditor/editor/_source/internals/fckurlparams.js +39 -0
- data/fckeditor/editor/_source/internals/fckxhtml.js +466 -0
- data/fckeditor/editor/_source/internals/fckxhtml_gecko.js +66 -0
- data/fckeditor/editor/_source/internals/fckxhtml_ie.js +194 -0
- data/fckeditor/editor/_source/internals/fckxhtmlentities.js +345 -0
- data/fckeditor/editor/css/behaviors/disablehandles.htc +15 -0
- data/fckeditor/editor/css/behaviors/showtableborders.htc +36 -0
- data/fckeditor/editor/css/fck_editorarea.css +91 -0
- data/fckeditor/editor/css/fck_internal.css +111 -0
- data/fckeditor/editor/css/fck_showtableborders_gecko.css +42 -0
- data/fckeditor/editor/css/images/fck_anchor.gif +0 -0
- data/fckeditor/editor/css/images/fck_flashlogo.gif +0 -0
- data/fckeditor/editor/css/images/fck_hiddenfield.gif +0 -0
- data/fckeditor/editor/css/images/fck_pagebreak.gif +0 -0
- data/fckeditor/editor/dialog/common/fck_dialog_common.css +83 -0
- data/fckeditor/editor/dialog/common/fck_dialog_common.js +154 -0
- data/fckeditor/editor/dialog/common/fcknumericfield.htc +24 -0
- data/fckeditor/editor/dialog/common/images/locked.gif +0 -0
- data/fckeditor/editor/dialog/common/images/reset.gif +0 -0
- data/fckeditor/editor/dialog/common/images/unlocked.gif +0 -0
- data/fckeditor/editor/dialog/common/moz-bindings.xml +30 -0
- data/fckeditor/editor/dialog/fck_about.html +155 -0
- data/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif +0 -0
- data/fckeditor/editor/dialog/fck_about/logo_fredck.gif +0 -0
- data/fckeditor/editor/dialog/fck_anchor.html +227 -0
- data/fckeditor/editor/dialog/fck_button.html +107 -0
- data/fckeditor/editor/dialog/fck_checkbox.html +107 -0
- data/fckeditor/editor/dialog/fck_colorselector.html +171 -0
- data/fckeditor/editor/dialog/fck_docprops.html +600 -0
- data/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html +113 -0
- data/fckeditor/editor/dialog/fck_find.html +173 -0
- data/fckeditor/editor/dialog/fck_flash.html +146 -0
- data/fckeditor/editor/dialog/fck_flash/fck_flash.js +288 -0
- data/fckeditor/editor/dialog/fck_flash/fck_flash_preview.html +46 -0
- data/fckeditor/editor/dialog/fck_form.html +105 -0
- data/fckeditor/editor/dialog/fck_hiddenfield.html +116 -0
- data/fckeditor/editor/dialog/fck_image.html +252 -0
- data/fckeditor/editor/dialog/fck_image/fck_image.js +486 -0
- data/fckeditor/editor/dialog/fck_image/fck_image_preview.html +66 -0
- data/fckeditor/editor/dialog/fck_link.html +293 -0
- data/fckeditor/editor/dialog/fck_link/fck_link.js +664 -0
- data/fckeditor/editor/dialog/fck_listprop.html +116 -0
- data/fckeditor/editor/dialog/fck_paste.html +285 -0
- data/fckeditor/editor/dialog/fck_radiobutton.html +107 -0
- data/fckeditor/editor/dialog/fck_replace.html +156 -0
- data/fckeditor/editor/dialog/fck_select.html +176 -0
- data/fckeditor/editor/dialog/fck_select/fck_select.js +169 -0
- data/fckeditor/editor/dialog/fck_smiley.html +105 -0
- data/fckeditor/editor/dialog/fck_source.html +65 -0
- data/fckeditor/editor/dialog/fck_specialchar.html +113 -0
- data/fckeditor/editor/dialog/fck_spellerpages.html +64 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html +0 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js +87 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html +153 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm +174 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php +196 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl +180 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js +462 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html +71 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css +49 -0
- data/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js +272 -0
- data/fckeditor/editor/dialog/fck_table.html +286 -0
- data/fckeditor/editor/dialog/fck_tablecell.html +255 -0
- data/fckeditor/editor/dialog/fck_template.html +242 -0
- data/fckeditor/editor/dialog/fck_template/images/template1.gif +0 -0
- data/fckeditor/editor/dialog/fck_template/images/template2.gif +0 -0
- data/fckeditor/editor/dialog/fck_template/images/template3.gif +0 -0
- data/fckeditor/editor/dialog/fck_textarea.html +94 -0
- data/fckeditor/editor/dialog/fck_textfield.html +139 -0
- data/fckeditor/editor/fckdebug.html +153 -0
- data/fckeditor/editor/fckdialog.html +324 -0
- data/fckeditor/editor/fckeditor.html +227 -0
- data/fckeditor/editor/fckeditor.original.html +319 -0
- data/fckeditor/editor/filemanager/browser/default/browser.css +88 -0
- data/fckeditor/editor/filemanager/browser/default/browser.html +154 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/asp/basexml.asp +62 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/asp/class_upload.asp +234 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/asp/commands.asp +183 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/asp/config.asp +49 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/asp/connector.asp +124 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/asp/io.asp +89 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/asp/util.asp +55 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx +30 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/cfm/config.cfm +99 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/cfm/connector.cfm +363 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/lasso/config.lasso +65 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/lasso/connector.lasso +249 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl +63 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl +158 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi +137 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl +131 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl +667 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl +60 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/php/basexml.php +75 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/php/commands.php +222 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/php/config.php +56 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/php/connector.php +113 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/php/io.php +101 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/php/util.php +41 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/py/connector.py +785 -0
- data/fckeditor/editor/filemanager/browser/default/connectors/test.html +180 -0
- data/fckeditor/editor/filemanager/browser/default/frmactualfolder.html +67 -0
- data/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html +113 -0
- data/fckeditor/editor/filemanager/browser/default/frmfolders.html +196 -0
- data/fckeditor/editor/filemanager/browser/default/frmresourceslist.html +160 -0
- data/fckeditor/editor/filemanager/browser/default/frmresourcetype.html +65 -0
- data/fckeditor/editor/filemanager/browser/default/frmupload.html +113 -0
- data/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/Folder.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/Folder32.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/png.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/html.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/js.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/png.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/images/spacer.gif +0 -0
- data/fckeditor/editor/filemanager/browser/default/js/common.js +55 -0
- data/fckeditor/editor/filemanager/browser/default/js/fckxml.js +130 -0
- data/fckeditor/editor/filemanager/upload/asp/class_upload.asp +234 -0
- data/fckeditor/editor/filemanager/upload/asp/config.asp +52 -0
- data/fckeditor/editor/filemanager/upload/asp/io.asp +29 -0
- data/fckeditor/editor/filemanager/upload/asp/upload.asp +121 -0
- data/fckeditor/editor/filemanager/upload/aspx/upload.aspx +30 -0
- data/fckeditor/editor/filemanager/upload/cfm/config.cfm +98 -0
- data/fckeditor/editor/filemanager/upload/cfm/upload.cfm +168 -0
- data/fckeditor/editor/filemanager/upload/lasso/config.lasso +65 -0
- data/fckeditor/editor/filemanager/upload/lasso/upload.lasso +157 -0
- data/fckeditor/editor/filemanager/upload/php/config.php +56 -0
- data/fckeditor/editor/filemanager/upload/php/upload.php +124 -0
- data/fckeditor/editor/filemanager/upload/php/util.php +40 -0
- data/fckeditor/editor/filemanager/upload/test.html +133 -0
- data/fckeditor/editor/images/anchor.gif +0 -0
- data/fckeditor/editor/images/arrow_ltr.gif +0 -0
- data/fckeditor/editor/images/arrow_rtl.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/angel_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/angry_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/broken_heart.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/cake.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/confused_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/cry_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/devil_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/embaressed_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/envelope.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/heart.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/kiss.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/lightbulb.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/omg_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/regular_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/sad_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/shades_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/teeth_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/thumbs_down.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/thumbs_up.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/tounge_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif +0 -0
- data/fckeditor/editor/images/smiley/msn/wink_smile.gif +0 -0
- data/fckeditor/editor/images/spacer.gif +0 -0
- data/fckeditor/editor/js/fckeditorcode_gecko.js +98 -0
- data/fckeditor/editor/js/fckeditorcode_ie.js +99 -0
- data/fckeditor/editor/lang/_getfontformat.html +85 -0
- data/fckeditor/editor/lang/_translationstatus.txt +76 -0
- data/fckeditor/editor/lang/af.js +504 -0
- data/fckeditor/editor/lang/ar.js +504 -0
- data/fckeditor/editor/lang/bg.js +504 -0
- data/fckeditor/editor/lang/bn.js +504 -0
- data/fckeditor/editor/lang/bs.js +504 -0
- data/fckeditor/editor/lang/ca.js +504 -0
- data/fckeditor/editor/lang/cs.js +504 -0
- data/fckeditor/editor/lang/da.js +504 -0
- data/fckeditor/editor/lang/de.js +504 -0
- data/fckeditor/editor/lang/el.js +504 -0
- data/fckeditor/editor/lang/en-au.js +504 -0
- data/fckeditor/editor/lang/en-ca.js +504 -0
- data/fckeditor/editor/lang/en-uk.js +504 -0
- data/fckeditor/editor/lang/en.js +504 -0
- data/fckeditor/editor/lang/eo.js +504 -0
- data/fckeditor/editor/lang/es.js +504 -0
- data/fckeditor/editor/lang/et.js +504 -0
- data/fckeditor/editor/lang/eu.js +505 -0
- data/fckeditor/editor/lang/fa.js +504 -0
- data/fckeditor/editor/lang/fi.js +504 -0
- data/fckeditor/editor/lang/fo.js +504 -0
- data/fckeditor/editor/lang/fr.js +504 -0
- data/fckeditor/editor/lang/gl.js +504 -0
- data/fckeditor/editor/lang/he.js +504 -0
- data/fckeditor/editor/lang/hi.js +504 -0
- data/fckeditor/editor/lang/hr.js +504 -0
- data/fckeditor/editor/lang/hu.js +504 -0
- data/fckeditor/editor/lang/it.js +504 -0
- data/fckeditor/editor/lang/ja.js +504 -0
- data/fckeditor/editor/lang/km.js +504 -0
- data/fckeditor/editor/lang/ko.js +504 -0
- data/fckeditor/editor/lang/lt.js +504 -0
- data/fckeditor/editor/lang/lv.js +504 -0
- data/fckeditor/editor/lang/mn.js +504 -0
- data/fckeditor/editor/lang/ms.js +504 -0
- data/fckeditor/editor/lang/nb.js +504 -0
- data/fckeditor/editor/lang/nl.js +504 -0
- data/fckeditor/editor/lang/no.js +504 -0
- data/fckeditor/editor/lang/pl.js +504 -0
- data/fckeditor/editor/lang/pt-br.js +504 -0
- data/fckeditor/editor/lang/pt.js +504 -0
- data/fckeditor/editor/lang/ro.js +504 -0
- data/fckeditor/editor/lang/ru.js +504 -0
- data/fckeditor/editor/lang/sk.js +504 -0
- data/fckeditor/editor/lang/sl.js +504 -0
- data/fckeditor/editor/lang/sr-latn.js +504 -0
- data/fckeditor/editor/lang/sr.js +504 -0
- data/fckeditor/editor/lang/sv.js +504 -0
- data/fckeditor/editor/lang/th.js +504 -0
- data/fckeditor/editor/lang/tr.js +504 -0
- data/fckeditor/editor/lang/uk.js +504 -0
- data/fckeditor/editor/lang/vi.js +504 -0
- data/fckeditor/editor/lang/zh-cn.js +504 -0
- data/fckeditor/editor/lang/zh.js +504 -0
- data/fckeditor/editor/plugins/autogrow/fckplugin.js +92 -0
- data/fckeditor/editor/plugins/placeholder/fck_placeholder.html +100 -0
- data/fckeditor/editor/plugins/placeholder/fckplugin.js +187 -0
- data/fckeditor/editor/plugins/placeholder/lang/de.js +27 -0
- data/fckeditor/editor/plugins/placeholder/lang/en.js +27 -0
- data/fckeditor/editor/plugins/placeholder/lang/fr.js +27 -0
- data/fckeditor/editor/plugins/placeholder/lang/it.js +27 -0
- data/fckeditor/editor/plugins/placeholder/lang/pl.js +27 -0
- data/fckeditor/editor/plugins/placeholder/placeholder.gif +0 -0
- data/fckeditor/editor/plugins/simplecommands/fckplugin.js +29 -0
- data/fckeditor/editor/plugins/tablecommands/fckplugin.js +32 -0
- data/fckeditor/editor/skins/_fckviewstrips.html +121 -0
- data/fckeditor/editor/skins/default/fck_dialog.css +137 -0
- data/fckeditor/editor/skins/default/fck_editor.css +464 -0
- data/fckeditor/editor/skins/default/fck_strip.gif +0 -0
- data/fckeditor/editor/skins/default/images/toolbar.arrowright.gif +0 -0
- data/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif +0 -0
- data/fckeditor/editor/skins/default/images/toolbar.collapse.gif +0 -0
- data/fckeditor/editor/skins/default/images/toolbar.end.gif +0 -0
- data/fckeditor/editor/skins/default/images/toolbar.expand.gif +0 -0
- data/fckeditor/editor/skins/default/images/toolbar.separator.gif +0 -0
- data/fckeditor/editor/skins/default/images/toolbar.start.gif +0 -0
- data/fckeditor/editor/skins/office2003/fck_dialog.css +138 -0
- data/fckeditor/editor/skins/office2003/fck_editor.css +476 -0
- data/fckeditor/editor/skins/office2003/fck_strip.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.bg.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.end.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.expand.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.separator.gif +0 -0
- data/fckeditor/editor/skins/office2003/images/toolbar.start.gif +0 -0
- data/fckeditor/editor/skins/silver/fck_dialog.css +141 -0
- data/fckeditor/editor/skins/silver/fck_editor.css +473 -0
- data/fckeditor/editor/skins/silver/fck_strip.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.collapse.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.end.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.expand.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.separator.gif +0 -0
- data/fckeditor/editor/skins/silver/images/toolbar.start.gif +0 -0
- data/fckeditor/fckconfig.js +224 -0
- data/fckeditor/fckeditor.js +214 -0
- data/fckeditor/fckstyles.xml +53 -0
- data/fckeditor/fcktemplates.xml +103 -0
- data/lib/Wiki2GoEditor/Install/editor.rb +39 -0
- data/test/test_install.rb +40 -0
- metadata +517 -0
@@ -0,0 +1,214 @@
|
|
1
|
+
/*
|
2
|
+
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
3
|
+
* Copyright (C) 2003-2007 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
|
+
* Utility functions. (IE version).
|
22
|
+
*/
|
23
|
+
|
24
|
+
FCKTools.CancelEvent = function( e )
|
25
|
+
{
|
26
|
+
return false ;
|
27
|
+
}
|
28
|
+
|
29
|
+
// Appends one or more CSS files to a document.
|
30
|
+
FCKTools._AppendStyleSheet = function( documentElement, cssFileUrl )
|
31
|
+
{
|
32
|
+
return documentElement.createStyleSheet( cssFileUrl ).owningElement ;
|
33
|
+
}
|
34
|
+
|
35
|
+
// Removes all attributes and values from the element.
|
36
|
+
FCKTools.ClearElementAttributes = function( element )
|
37
|
+
{
|
38
|
+
element.clearAttributes() ;
|
39
|
+
}
|
40
|
+
|
41
|
+
FCKTools.GetAllChildrenIds = function( parentElement )
|
42
|
+
{
|
43
|
+
var aIds = new Array() ;
|
44
|
+
for ( var i = 0 ; i < parentElement.all.length ; i++ )
|
45
|
+
{
|
46
|
+
var sId = parentElement.all[i].id ;
|
47
|
+
if ( sId && sId.length > 0 )
|
48
|
+
aIds[ aIds.length ] = sId ;
|
49
|
+
}
|
50
|
+
return aIds ;
|
51
|
+
}
|
52
|
+
|
53
|
+
FCKTools.RemoveOuterTags = function( e )
|
54
|
+
{
|
55
|
+
e.insertAdjacentHTML( 'beforeBegin', e.innerHTML ) ;
|
56
|
+
e.parentNode.removeChild( e ) ;
|
57
|
+
}
|
58
|
+
|
59
|
+
FCKTools.CreateXmlObject = function( object )
|
60
|
+
{
|
61
|
+
var aObjs ;
|
62
|
+
|
63
|
+
switch ( object )
|
64
|
+
{
|
65
|
+
case 'XmlHttp' :
|
66
|
+
aObjs = [ 'MSXML2.XmlHttp', 'Microsoft.XmlHttp' ] ;
|
67
|
+
break ;
|
68
|
+
|
69
|
+
case 'DOMDocument' :
|
70
|
+
aObjs = [ 'MSXML2.DOMDocument', 'Microsoft.XmlDom' ] ;
|
71
|
+
break ;
|
72
|
+
}
|
73
|
+
|
74
|
+
for ( var i = 0 ; i < 2 ; i++ )
|
75
|
+
{
|
76
|
+
try { return new ActiveXObject( aObjs[i] ) ; }
|
77
|
+
catch (e)
|
78
|
+
{}
|
79
|
+
}
|
80
|
+
|
81
|
+
if ( FCKLang.NoActiveX )
|
82
|
+
{
|
83
|
+
alert( FCKLang.NoActiveX ) ;
|
84
|
+
FCKLang.NoActiveX = null ;
|
85
|
+
}
|
86
|
+
return null ;
|
87
|
+
}
|
88
|
+
|
89
|
+
FCKTools.DisableSelection = function( element )
|
90
|
+
{
|
91
|
+
element.unselectable = 'on' ;
|
92
|
+
|
93
|
+
var e, i = 0 ;
|
94
|
+
// The extra () is to avoid a warning with strict error checking. This is ok.
|
95
|
+
while ( (e = element.all[ i++ ]) )
|
96
|
+
{
|
97
|
+
switch ( e.tagName )
|
98
|
+
{
|
99
|
+
case 'IFRAME' :
|
100
|
+
case 'TEXTAREA' :
|
101
|
+
case 'INPUT' :
|
102
|
+
case 'SELECT' :
|
103
|
+
/* Ignore the above tags */
|
104
|
+
break ;
|
105
|
+
default :
|
106
|
+
e.unselectable = 'on' ;
|
107
|
+
}
|
108
|
+
}
|
109
|
+
}
|
110
|
+
|
111
|
+
FCKTools.GetScrollPosition = function( relativeWindow )
|
112
|
+
{
|
113
|
+
var oDoc = relativeWindow.document ;
|
114
|
+
|
115
|
+
// Try with the doc element.
|
116
|
+
var oPos = { X : oDoc.documentElement.scrollLeft, Y : oDoc.documentElement.scrollTop } ;
|
117
|
+
|
118
|
+
if ( oPos.X > 0 || oPos.Y > 0 )
|
119
|
+
return oPos ;
|
120
|
+
|
121
|
+
// If no scroll, try with the body.
|
122
|
+
return { X : oDoc.body.scrollLeft, Y : oDoc.body.scrollTop } ;
|
123
|
+
}
|
124
|
+
|
125
|
+
FCKTools.AddEventListener = function( sourceObject, eventName, listener )
|
126
|
+
{
|
127
|
+
sourceObject.attachEvent( 'on' + eventName, listener ) ;
|
128
|
+
}
|
129
|
+
|
130
|
+
FCKTools.RemoveEventListener = function( sourceObject, eventName, listener )
|
131
|
+
{
|
132
|
+
sourceObject.detachEvent( 'on' + eventName, listener ) ;
|
133
|
+
}
|
134
|
+
|
135
|
+
// Listeners attached with this function cannot be detached.
|
136
|
+
FCKTools.AddEventListenerEx = function( sourceObject, eventName, listener, paramsArray )
|
137
|
+
{
|
138
|
+
// Ok... this is a closures party, but is the only way to make it clean of memory leaks.
|
139
|
+
var o = new Object() ;
|
140
|
+
o.Source = sourceObject ;
|
141
|
+
o.Params = paramsArray || [] ; // Memory leak if we have DOM objects here.
|
142
|
+
o.Listener = function( ev )
|
143
|
+
{
|
144
|
+
return listener.apply( o.Source, [ ev ].concat( o.Params ) ) ;
|
145
|
+
}
|
146
|
+
|
147
|
+
if ( FCK.IECleanup )
|
148
|
+
FCK.IECleanup.AddItem( null, function() { o.Source = null ; o.Params = null ; } ) ;
|
149
|
+
|
150
|
+
sourceObject.attachEvent( 'on' + eventName, o.Listener ) ;
|
151
|
+
|
152
|
+
sourceObject = null ; // Memory leak cleaner (because of the above closure).
|
153
|
+
paramsArray = null ; // Memory leak cleaner (because of the above closure).
|
154
|
+
}
|
155
|
+
|
156
|
+
// Returns and object with the "Width" and "Height" properties.
|
157
|
+
FCKTools.GetViewPaneSize = function( win )
|
158
|
+
{
|
159
|
+
var oSizeSource ;
|
160
|
+
|
161
|
+
var oDoc = win.document.documentElement ;
|
162
|
+
if ( oDoc && oDoc.clientWidth ) // IE6 Strict Mode
|
163
|
+
oSizeSource = oDoc ;
|
164
|
+
else
|
165
|
+
oSizeSource = top.document.body ; // Other IEs
|
166
|
+
|
167
|
+
if ( oSizeSource )
|
168
|
+
return { Width : oSizeSource.clientWidth, Height : oSizeSource.clientHeight } ;
|
169
|
+
else
|
170
|
+
return { Width : 0, Height : 0 } ;
|
171
|
+
}
|
172
|
+
|
173
|
+
FCKTools.SaveStyles = function( element )
|
174
|
+
{
|
175
|
+
var oSavedStyles = new Object() ;
|
176
|
+
|
177
|
+
if ( element.className.length > 0 )
|
178
|
+
{
|
179
|
+
oSavedStyles.Class = element.className ;
|
180
|
+
element.className = '' ;
|
181
|
+
}
|
182
|
+
|
183
|
+
var sInlineStyle = element.style.cssText ;
|
184
|
+
|
185
|
+
if ( sInlineStyle.length > 0 )
|
186
|
+
{
|
187
|
+
oSavedStyles.Inline = sInlineStyle ;
|
188
|
+
element.style.cssText = '' ;
|
189
|
+
}
|
190
|
+
|
191
|
+
return oSavedStyles ;
|
192
|
+
}
|
193
|
+
|
194
|
+
FCKTools.RestoreStyles = function( element, savedStyles )
|
195
|
+
{
|
196
|
+
element.className = savedStyles.Class || '' ;
|
197
|
+
element.style.cssText = savedStyles.Inline || '' ;
|
198
|
+
}
|
199
|
+
|
200
|
+
FCKTools.RegisterDollarFunction = function( targetWindow )
|
201
|
+
{
|
202
|
+
targetWindow.$ = targetWindow.document.getElementById ;
|
203
|
+
}
|
204
|
+
|
205
|
+
FCKTools.AppendElement = function( target, elementName )
|
206
|
+
{
|
207
|
+
return target.appendChild( this.GetElementDocument( target ).createElement( elementName ) ) ;
|
208
|
+
}
|
209
|
+
|
210
|
+
// This function may be used by Regex replacements.
|
211
|
+
FCKTools.ToLowerCase = function( strValue )
|
212
|
+
{
|
213
|
+
return strValue.toLowerCase() ;
|
214
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
/*
|
2
|
+
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
3
|
+
* Copyright (C) 2003-2007 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
|
+
* Fake implementation to ignore calls on Gecko.
|
22
|
+
*/
|
23
|
+
|
24
|
+
var FCKUndo = new Object() ;
|
25
|
+
|
26
|
+
FCKUndo.SaveUndoStep = function()
|
27
|
+
{}
|
@@ -0,0 +1,123 @@
|
|
1
|
+
/*
|
2
|
+
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
3
|
+
* Copyright (C) 2003-2007 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
|
+
* IE specific implementation for the Undo/Redo system.
|
22
|
+
*/
|
23
|
+
|
24
|
+
var FCKUndo = new Object() ;
|
25
|
+
|
26
|
+
FCKUndo.SavedData = new Array() ;
|
27
|
+
FCKUndo.CurrentIndex = -1 ;
|
28
|
+
FCKUndo.TypesCount = FCKUndo.MaxTypes = 25 ;
|
29
|
+
FCKUndo.Typing = false ;
|
30
|
+
|
31
|
+
FCKUndo.SaveUndoStep = function()
|
32
|
+
{
|
33
|
+
if ( FCK.EditMode != FCK_EDITMODE_WYSIWYG )
|
34
|
+
return ;
|
35
|
+
|
36
|
+
// Shrink the array to the current level.
|
37
|
+
FCKUndo.SavedData = FCKUndo.SavedData.slice( 0, FCKUndo.CurrentIndex + 1 ) ;
|
38
|
+
|
39
|
+
// Get the Actual HTML.
|
40
|
+
var sHtml = FCK.EditorDocument.body.innerHTML ;
|
41
|
+
|
42
|
+
// Cancel operation if the new step is identical to the previous one.
|
43
|
+
if ( FCKUndo.CurrentIndex >= 0 && sHtml == FCKUndo.SavedData[ FCKUndo.CurrentIndex ][0] )
|
44
|
+
return ;
|
45
|
+
|
46
|
+
// If we reach the Maximun number of undo levels, we must remove the first
|
47
|
+
// entry of the list shifting all elements.
|
48
|
+
if ( FCKUndo.CurrentIndex + 1 >= FCKConfig.MaxUndoLevels )
|
49
|
+
FCKUndo.SavedData.shift() ;
|
50
|
+
else
|
51
|
+
FCKUndo.CurrentIndex++ ;
|
52
|
+
|
53
|
+
// Get the actual selection.
|
54
|
+
var sBookmark ;
|
55
|
+
if ( FCK.EditorDocument.selection.type == 'Text' )
|
56
|
+
sBookmark = FCK.EditorDocument.selection.createRange().getBookmark() ;
|
57
|
+
|
58
|
+
// Save the new level in front of the actual position.
|
59
|
+
FCKUndo.SavedData[ FCKUndo.CurrentIndex ] = [ sHtml, sBookmark ] ;
|
60
|
+
|
61
|
+
FCK.Events.FireEvent( "OnSelectionChange" ) ;
|
62
|
+
}
|
63
|
+
|
64
|
+
FCKUndo.CheckUndoState = function()
|
65
|
+
{
|
66
|
+
return ( FCKUndo.Typing || FCKUndo.CurrentIndex > 0 ) ;
|
67
|
+
}
|
68
|
+
|
69
|
+
FCKUndo.CheckRedoState = function()
|
70
|
+
{
|
71
|
+
return ( !FCKUndo.Typing && FCKUndo.CurrentIndex < ( FCKUndo.SavedData.length - 1 ) ) ;
|
72
|
+
}
|
73
|
+
|
74
|
+
FCKUndo.Undo = function()
|
75
|
+
{
|
76
|
+
if ( FCKUndo.CheckUndoState() )
|
77
|
+
{
|
78
|
+
// If it is the first step.
|
79
|
+
if ( FCKUndo.CurrentIndex == ( FCKUndo.SavedData.length - 1 ) )
|
80
|
+
{
|
81
|
+
// Save the actual state for a possible "Redo" call.
|
82
|
+
FCKUndo.SaveUndoStep() ;
|
83
|
+
}
|
84
|
+
|
85
|
+
// Go a step back.
|
86
|
+
FCKUndo._ApplyUndoLevel( --FCKUndo.CurrentIndex ) ;
|
87
|
+
|
88
|
+
FCK.Events.FireEvent( "OnSelectionChange" ) ;
|
89
|
+
}
|
90
|
+
}
|
91
|
+
|
92
|
+
FCKUndo.Redo = function()
|
93
|
+
{
|
94
|
+
if ( FCKUndo.CheckRedoState() )
|
95
|
+
{
|
96
|
+
// Go a step forward.
|
97
|
+
FCKUndo._ApplyUndoLevel( ++FCKUndo.CurrentIndex ) ;
|
98
|
+
|
99
|
+
FCK.Events.FireEvent( "OnSelectionChange" ) ;
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
FCKUndo._ApplyUndoLevel = function(level)
|
104
|
+
{
|
105
|
+
var oData = FCKUndo.SavedData[ level ] ;
|
106
|
+
|
107
|
+
if ( !oData )
|
108
|
+
return ;
|
109
|
+
|
110
|
+
// Update the editor contents with that step data.
|
111
|
+
FCK.SetInnerHtml( oData[0] ) ;
|
112
|
+
// FCK.EditorDocument.body.innerHTML = oData[0] ;
|
113
|
+
|
114
|
+
if ( oData[1] )
|
115
|
+
{
|
116
|
+
var oRange = FCK.EditorDocument.selection.createRange() ;
|
117
|
+
oRange.moveToBookmark( oData[1] ) ;
|
118
|
+
oRange.select() ;
|
119
|
+
}
|
120
|
+
|
121
|
+
FCKUndo.TypesCount = 0 ;
|
122
|
+
FCKUndo.Typing = false ;
|
123
|
+
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
/*
|
2
|
+
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
3
|
+
* Copyright (C) 2003-2007 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
|
+
* Defines the FCKURLParams object that is used to get all parameters
|
22
|
+
* passed by the URL QueryString (after the "?").
|
23
|
+
*/
|
24
|
+
|
25
|
+
// #### URLParams: holds all URL passed parameters (like ?Param1=Value1&Param2=Value2)
|
26
|
+
var FCKURLParams = new Object() ;
|
27
|
+
|
28
|
+
(function()
|
29
|
+
{
|
30
|
+
var aParams = document.location.search.substr(1).split('&') ;
|
31
|
+
for ( var i = 0 ; i < aParams.length ; i++ )
|
32
|
+
{
|
33
|
+
var aParam = aParams[i].split('=') ;
|
34
|
+
var sParamName = decodeURIComponent( aParam[0] ) ;
|
35
|
+
var sParamValue = decodeURIComponent( aParam[1] ) ;
|
36
|
+
|
37
|
+
FCKURLParams[ sParamName ] = sParamValue ;
|
38
|
+
}
|
39
|
+
})();
|
@@ -0,0 +1,466 @@
|
|
1
|
+
/*
|
2
|
+
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
|
3
|
+
* Copyright (C) 2003-2007 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
|
+
* Defines the FCKXHtml object, responsible for the XHTML operations.
|
22
|
+
*/
|
23
|
+
|
24
|
+
var FCKXHtml = new Object() ;
|
25
|
+
|
26
|
+
FCKXHtml.CurrentJobNum = 0 ;
|
27
|
+
|
28
|
+
FCKXHtml.GetXHTML = function( node, includeNode, format )
|
29
|
+
{
|
30
|
+
FCKXHtmlEntities.Initialize() ;
|
31
|
+
|
32
|
+
// Set the correct entity to use for empty blocks.
|
33
|
+
this._NbspEntity = ( FCKConfig.ProcessHTMLEntities? 'nbsp' : '#160' ) ;
|
34
|
+
|
35
|
+
// Save the current IsDirty state. The XHTML processor may change the
|
36
|
+
// original HTML, dirtying it.
|
37
|
+
var bIsDirty = FCK.IsDirty() ;
|
38
|
+
|
39
|
+
this._CreateNode = FCKConfig.ForceStrongEm ? FCKXHtml_CreateNode_StrongEm : FCKXHtml_CreateNode_Normal ;
|
40
|
+
|
41
|
+
// Special blocks are blocks of content that remain untouched during the
|
42
|
+
// process. It is used for SCRIPTs and STYLEs.
|
43
|
+
FCKXHtml.SpecialBlocks = new Array() ;
|
44
|
+
|
45
|
+
// Create the XML DOMDocument object.
|
46
|
+
this.XML = FCKTools.CreateXmlObject( 'DOMDocument' ) ;
|
47
|
+
|
48
|
+
// Add a root element that holds all child nodes.
|
49
|
+
this.MainNode = this.XML.appendChild( this.XML.createElement( 'xhtml' ) ) ;
|
50
|
+
|
51
|
+
FCKXHtml.CurrentJobNum++ ;
|
52
|
+
|
53
|
+
if ( includeNode )
|
54
|
+
this._AppendNode( this.MainNode, node ) ;
|
55
|
+
else
|
56
|
+
this._AppendChildNodes( this.MainNode, node, false ) ;
|
57
|
+
|
58
|
+
// Get the resulting XHTML as a string.
|
59
|
+
var sXHTML = this._GetMainXmlString() ;
|
60
|
+
|
61
|
+
this.XML = null ;
|
62
|
+
|
63
|
+
// Strip the "XHTML" root node.
|
64
|
+
sXHTML = sXHTML.substr( 7, sXHTML.length - 15 ).Trim() ;
|
65
|
+
|
66
|
+
// Remove the trailing <br> added by Gecko.
|
67
|
+
// REMOVE: Maybe the following is not anymore necessary because a similar
|
68
|
+
// check is made on _AppendNode
|
69
|
+
if ( FCKBrowserInfo.IsGecko )
|
70
|
+
sXHTML = sXHTML.replace( /<br\/>$/, '' ) ;
|
71
|
+
|
72
|
+
// Add a space in the tags with no closing tags, like <br/> -> <br />
|
73
|
+
sXHTML = sXHTML.replace( FCKRegexLib.SpaceNoClose, ' />');
|
74
|
+
|
75
|
+
if ( FCKConfig.ForceSimpleAmpersand )
|
76
|
+
sXHTML = sXHTML.replace( FCKRegexLib.ForceSimpleAmpersand, '&' ) ;
|
77
|
+
|
78
|
+
if ( format )
|
79
|
+
sXHTML = FCKCodeFormatter.Format( sXHTML ) ;
|
80
|
+
|
81
|
+
// Now we put back the SpecialBlocks contents.
|
82
|
+
for ( var i = 0 ; i < FCKXHtml.SpecialBlocks.length ; i++ )
|
83
|
+
{
|
84
|
+
var oRegex = new RegExp( '___FCKsi___' + i ) ;
|
85
|
+
sXHTML = sXHTML.replace( oRegex, FCKXHtml.SpecialBlocks[i] ) ;
|
86
|
+
}
|
87
|
+
|
88
|
+
// Replace entities marker with the ampersand.
|
89
|
+
sXHTML = sXHTML.replace( FCKRegexLib.GeckoEntitiesMarker, '&' ) ;
|
90
|
+
|
91
|
+
// Restore the IsDirty state if it was not dirty.
|
92
|
+
if ( !bIsDirty )
|
93
|
+
FCK.ResetIsDirty() ;
|
94
|
+
|
95
|
+
return sXHTML ;
|
96
|
+
}
|
97
|
+
|
98
|
+
FCKXHtml._AppendAttribute = function( xmlNode, attributeName, attributeValue )
|
99
|
+
{
|
100
|
+
try
|
101
|
+
{
|
102
|
+
if ( attributeValue == undefined || attributeValue == null )
|
103
|
+
attributeValue = '' ;
|
104
|
+
else if ( attributeValue.replace )
|
105
|
+
{
|
106
|
+
if ( FCKConfig.ForceSimpleAmpersand )
|
107
|
+
attributeValue = attributeValue.replace( /&/g, '___FCKAmp___' ) ;
|
108
|
+
|
109
|
+
// Entities must be replaced in the attribute values.
|
110
|
+
attributeValue = attributeValue.replace( FCKXHtmlEntities.EntitiesRegex, FCKXHtml_GetEntity ) ;
|
111
|
+
}
|
112
|
+
|
113
|
+
// Create the attribute.
|
114
|
+
var oXmlAtt = this.XML.createAttribute( attributeName ) ;
|
115
|
+
oXmlAtt.value = attributeValue ;
|
116
|
+
|
117
|
+
// Set the attribute in the node.
|
118
|
+
xmlNode.attributes.setNamedItem( oXmlAtt ) ;
|
119
|
+
}
|
120
|
+
catch (e)
|
121
|
+
{}
|
122
|
+
}
|
123
|
+
|
124
|
+
FCKXHtml._AppendChildNodes = function( xmlNode, htmlNode, isBlockElement )
|
125
|
+
{
|
126
|
+
// Trim block elements. This is also needed to avoid Firefox leaving extra
|
127
|
+
// BRs at the end of them.
|
128
|
+
if ( isBlockElement )
|
129
|
+
FCKDomTools.TrimNode( htmlNode, true ) ;
|
130
|
+
|
131
|
+
var iCount = 0 ;
|
132
|
+
|
133
|
+
var oNode = htmlNode.firstChild ;
|
134
|
+
|
135
|
+
while ( oNode )
|
136
|
+
{
|
137
|
+
if ( this._AppendNode( xmlNode, oNode ) )
|
138
|
+
iCount++ ;
|
139
|
+
|
140
|
+
oNode = oNode.nextSibling ;
|
141
|
+
}
|
142
|
+
|
143
|
+
if ( iCount == 0 )
|
144
|
+
{
|
145
|
+
if ( isBlockElement && FCKConfig.FillEmptyBlocks )
|
146
|
+
{
|
147
|
+
this._AppendEntity( xmlNode, this._NbspEntity ) ;
|
148
|
+
return xmlNode ;
|
149
|
+
}
|
150
|
+
|
151
|
+
var sNodeName = xmlNode.nodeName ;
|
152
|
+
|
153
|
+
// Some inline elements are required to have something inside (span, strong, etc...).
|
154
|
+
if ( FCKListsLib.InlineChildReqElements[ sNodeName ] )
|
155
|
+
return null ;
|
156
|
+
|
157
|
+
// We can't use short representation of empty elements that are not marked
|
158
|
+
// as empty in th XHTML DTD.
|
159
|
+
if ( !FCKListsLib.EmptyElements[ sNodeName ] )
|
160
|
+
xmlNode.appendChild( this.XML.createTextNode('') ) ;
|
161
|
+
}
|
162
|
+
|
163
|
+
return xmlNode ;
|
164
|
+
}
|
165
|
+
|
166
|
+
FCKXHtml._AppendNode = function( xmlNode, htmlNode )
|
167
|
+
{
|
168
|
+
if ( !htmlNode )
|
169
|
+
return false ;
|
170
|
+
|
171
|
+
switch ( htmlNode.nodeType )
|
172
|
+
{
|
173
|
+
// Element Node.
|
174
|
+
case 1 :
|
175
|
+
|
176
|
+
// Here we found an element that is not the real element, but a
|
177
|
+
// fake one (like the Flash placeholder image), so we must get the real one.
|
178
|
+
if ( htmlNode.getAttribute('_fckfakelement') )
|
179
|
+
return FCKXHtml._AppendNode( xmlNode, FCK.GetRealElement( htmlNode ) ) ;
|
180
|
+
|
181
|
+
// Mozilla insert custom nodes in the DOM.
|
182
|
+
if ( FCKBrowserInfo.IsGecko && htmlNode.hasAttribute('_moz_editor_bogus_node') )
|
183
|
+
return false ;
|
184
|
+
|
185
|
+
// This is for elements that are instrumental to FCKeditor and
|
186
|
+
// must be removed from the final HTML.
|
187
|
+
if ( htmlNode.getAttribute('_fcktemp') )
|
188
|
+
return false ;
|
189
|
+
|
190
|
+
// Get the element name.
|
191
|
+
var sNodeName = htmlNode.tagName.toLowerCase() ;
|
192
|
+
|
193
|
+
if ( FCKBrowserInfo.IsIE )
|
194
|
+
{
|
195
|
+
// IE doens't include the scope name in the nodeName. So, add the namespace.
|
196
|
+
if ( htmlNode.scopeName && htmlNode.scopeName != 'HTML' && htmlNode.scopeName != 'FCK' )
|
197
|
+
sNodeName = htmlNode.scopeName.toLowerCase() + ':' + sNodeName ;
|
198
|
+
}
|
199
|
+
else
|
200
|
+
{
|
201
|
+
if ( sNodeName.StartsWith( 'fck:' ) )
|
202
|
+
sNodeName = sNodeName.Remove( 0,4 ) ;
|
203
|
+
}
|
204
|
+
|
205
|
+
// Check if the node name is valid, otherwise ignore this tag.
|
206
|
+
// If the nodeName starts with a slash, it is a orphan closing tag.
|
207
|
+
// On some strange cases, the nodeName is empty, even if the node exists.
|
208
|
+
if ( !FCKRegexLib.ElementName.test( sNodeName ) )
|
209
|
+
return false ;
|
210
|
+
|
211
|
+
// Remove the <br> if it is a bogus node.
|
212
|
+
if ( sNodeName == 'br' && htmlNode.getAttribute( 'type', 2 ) == '_moz' )
|
213
|
+
return false ;
|
214
|
+
|
215
|
+
// The already processed nodes must be marked to avoid then to be duplicated (bad formatted HTML).
|
216
|
+
// So here, the "mark" is checked... if the element is Ok, then mark it.
|
217
|
+
if ( htmlNode._fckxhtmljob && htmlNode._fckxhtmljob == FCKXHtml.CurrentJobNum )
|
218
|
+
return false ;
|
219
|
+
|
220
|
+
var oNode = this._CreateNode( sNodeName ) ;
|
221
|
+
|
222
|
+
// Add all attributes.
|
223
|
+
FCKXHtml._AppendAttributes( xmlNode, htmlNode, oNode, sNodeName ) ;
|
224
|
+
|
225
|
+
htmlNode._fckxhtmljob = FCKXHtml.CurrentJobNum ;
|
226
|
+
|
227
|
+
// Tag specific processing.
|
228
|
+
var oTagProcessor = FCKXHtml.TagProcessors[ sNodeName ] ;
|
229
|
+
|
230
|
+
if ( oTagProcessor )
|
231
|
+
oNode = oTagProcessor( oNode, htmlNode, xmlNode ) ;
|
232
|
+
else
|
233
|
+
oNode = this._AppendChildNodes( oNode, htmlNode, Boolean( FCKListsLib.NonEmptyBlockElements[ sNodeName ] ) ) ;
|
234
|
+
|
235
|
+
if ( !oNode )
|
236
|
+
return false ;
|
237
|
+
|
238
|
+
xmlNode.appendChild( oNode ) ;
|
239
|
+
|
240
|
+
break ;
|
241
|
+
|
242
|
+
// Text Node.
|
243
|
+
case 3 :
|
244
|
+
return this._AppendTextNode( xmlNode, htmlNode.nodeValue.ReplaceNewLineChars(' ') ) ;
|
245
|
+
|
246
|
+
// Comment
|
247
|
+
case 8 :
|
248
|
+
// IE catches the <!DOTYPE ... > as a comment, but it has no
|
249
|
+
// innerHTML, so we can catch it, and ignore it.
|
250
|
+
if ( FCKBrowserInfo.IsIE && !htmlNode.innerHTML )
|
251
|
+
break ;
|
252
|
+
|
253
|
+
try { xmlNode.appendChild( this.XML.createComment( htmlNode.nodeValue ) ) ; }
|
254
|
+
catch (e) { /* Do nothing... probably this is a wrong format comment. */ }
|
255
|
+
break ;
|
256
|
+
|
257
|
+
// Unknown Node type.
|
258
|
+
default :
|
259
|
+
xmlNode.appendChild( this.XML.createComment( "Element not supported - Type: " + htmlNode.nodeType + " Name: " + htmlNode.nodeName ) ) ;
|
260
|
+
break ;
|
261
|
+
}
|
262
|
+
return true ;
|
263
|
+
}
|
264
|
+
|
265
|
+
function FCKXHtml_CreateNode_StrongEm( nodeName )
|
266
|
+
{
|
267
|
+
switch ( nodeName )
|
268
|
+
{
|
269
|
+
case 'b' :
|
270
|
+
nodeName = 'strong' ;
|
271
|
+
break ;
|
272
|
+
case 'i' :
|
273
|
+
nodeName = 'em' ;
|
274
|
+
break ;
|
275
|
+
}
|
276
|
+
return this.XML.createElement( nodeName ) ;
|
277
|
+
}
|
278
|
+
|
279
|
+
function FCKXHtml_CreateNode_Normal( nodeName )
|
280
|
+
{
|
281
|
+
return this.XML.createElement( nodeName ) ;
|
282
|
+
}
|
283
|
+
|
284
|
+
// Append an item to the SpecialBlocks array and returns the tag to be used.
|
285
|
+
FCKXHtml._AppendSpecialItem = function( item )
|
286
|
+
{
|
287
|
+
return '___FCKsi___' + FCKXHtml.SpecialBlocks.AddItem( item ) ;
|
288
|
+
}
|
289
|
+
|
290
|
+
FCKXHtml._AppendEntity = function( xmlNode, entity )
|
291
|
+
{
|
292
|
+
xmlNode.appendChild( this.XML.createTextNode( '#?-:' + entity + ';' ) ) ;
|
293
|
+
}
|
294
|
+
|
295
|
+
FCKXHtml._AppendTextNode = function( targetNode, textValue )
|
296
|
+
{
|
297
|
+
var bHadText = textValue.length > 0 ;
|
298
|
+
if ( bHadText )
|
299
|
+
targetNode.appendChild( this.XML.createTextNode( textValue.replace( FCKXHtmlEntities.EntitiesRegex, FCKXHtml_GetEntity ) ) ) ;
|
300
|
+
return bHadText ;
|
301
|
+
}
|
302
|
+
|
303
|
+
// Retrieves a entity (internal format) for a given character.
|
304
|
+
function FCKXHtml_GetEntity( character )
|
305
|
+
{
|
306
|
+
// We cannot simply place the entities in the text, because the XML parser
|
307
|
+
// will translate & to &. So we use a temporary marker which is replaced
|
308
|
+
// in the end of the processing.
|
309
|
+
var sEntity = FCKXHtmlEntities.Entities[ character ] || ( '#' + character.charCodeAt(0) ) ;
|
310
|
+
return '#?-:' + sEntity + ';' ;
|
311
|
+
}
|
312
|
+
|
313
|
+
// Remove part of an attribute from a node according to a regExp
|
314
|
+
FCKXHtml._RemoveAttribute = function( xmlNode, regX, sAttribute )
|
315
|
+
{
|
316
|
+
var oAtt = xmlNode.attributes.getNamedItem( sAttribute ) ;
|
317
|
+
|
318
|
+
if ( oAtt && regX.test( oAtt.nodeValue ) )
|
319
|
+
{
|
320
|
+
var sValue = oAtt.nodeValue.replace( regX, '' ) ;
|
321
|
+
|
322
|
+
if ( sValue.length == 0 )
|
323
|
+
xmlNode.attributes.removeNamedItem( sAttribute ) ;
|
324
|
+
else
|
325
|
+
oAtt.nodeValue = sValue ;
|
326
|
+
}
|
327
|
+
}
|
328
|
+
|
329
|
+
// An object that hold tag specific operations.
|
330
|
+
FCKXHtml.TagProcessors =
|
331
|
+
{
|
332
|
+
img : function( node, htmlNode )
|
333
|
+
{
|
334
|
+
// The "ALT" attribute is required in XHTML.
|
335
|
+
if ( ! node.attributes.getNamedItem( 'alt' ) )
|
336
|
+
FCKXHtml._AppendAttribute( node, 'alt', '' ) ;
|
337
|
+
|
338
|
+
var sSavedUrl = htmlNode.getAttribute( '_fcksavedurl' ) ;
|
339
|
+
if ( sSavedUrl != null )
|
340
|
+
FCKXHtml._AppendAttribute( node, 'src', sSavedUrl ) ;
|
341
|
+
|
342
|
+
return node ;
|
343
|
+
},
|
344
|
+
|
345
|
+
a : function( node, htmlNode )
|
346
|
+
{
|
347
|
+
// Firefox may create empty tags when deleting the selection in some special cases (SF-BUG 1556878).
|
348
|
+
if ( htmlNode.innerHTML.Trim().length == 0 && !htmlNode.name )
|
349
|
+
return false ;
|
350
|
+
|
351
|
+
var sSavedUrl = htmlNode.getAttribute( '_fcksavedurl' ) ;
|
352
|
+
if ( sSavedUrl != null )
|
353
|
+
FCKXHtml._AppendAttribute( node, 'href', sSavedUrl ) ;
|
354
|
+
|
355
|
+
|
356
|
+
// Anchors with content has been marked with an additional class, now we must remove it.
|
357
|
+
if ( FCKBrowserInfo.IsIE )
|
358
|
+
{
|
359
|
+
FCKXHtml._RemoveAttribute( node, FCKRegexLib.FCK_Class, 'class' ) ;
|
360
|
+
|
361
|
+
// Buggy IE, doesn't copy the name of changed anchors.
|
362
|
+
if ( htmlNode.name )
|
363
|
+
FCKXHtml._AppendAttribute( node, 'name', htmlNode.name ) ;
|
364
|
+
}
|
365
|
+
|
366
|
+
node = FCKXHtml._AppendChildNodes( node, htmlNode, false ) ;
|
367
|
+
|
368
|
+
return node ;
|
369
|
+
},
|
370
|
+
|
371
|
+
script : function( node, htmlNode )
|
372
|
+
{
|
373
|
+
// The "TYPE" attribute is required in XHTML.
|
374
|
+
if ( ! node.attributes.getNamedItem( 'type' ) )
|
375
|
+
FCKXHtml._AppendAttribute( node, 'type', 'text/javascript' ) ;
|
376
|
+
|
377
|
+
node.appendChild( FCKXHtml.XML.createTextNode( FCKXHtml._AppendSpecialItem( htmlNode.text ) ) ) ;
|
378
|
+
|
379
|
+
return node ;
|
380
|
+
},
|
381
|
+
|
382
|
+
style : function( node, htmlNode )
|
383
|
+
{
|
384
|
+
// The "TYPE" attribute is required in XHTML.
|
385
|
+
if ( ! node.attributes.getNamedItem( 'type' ) )
|
386
|
+
FCKXHtml._AppendAttribute( node, 'type', 'text/css' ) ;
|
387
|
+
|
388
|
+
node.appendChild( FCKXHtml.XML.createTextNode( FCKXHtml._AppendSpecialItem( htmlNode.innerHTML ) ) ) ;
|
389
|
+
|
390
|
+
return node ;
|
391
|
+
},
|
392
|
+
|
393
|
+
title : function( node, htmlNode )
|
394
|
+
{
|
395
|
+
node.appendChild( FCKXHtml.XML.createTextNode( FCK.EditorDocument.title ) ) ;
|
396
|
+
|
397
|
+
return node ;
|
398
|
+
},
|
399
|
+
|
400
|
+
table : function( node, htmlNode )
|
401
|
+
{
|
402
|
+
// There is a trick to show table borders when border=0. We add to the
|
403
|
+
// table class the FCK__ShowTableBorders rule. So now we must remove it.
|
404
|
+
|
405
|
+
if ( FCKBrowserInfo.IsIE )
|
406
|
+
FCKXHtml._RemoveAttribute( node, FCKRegexLib.FCK_Class, 'class' ) ;
|
407
|
+
|
408
|
+
node = FCKXHtml._AppendChildNodes( node, htmlNode, false ) ;
|
409
|
+
|
410
|
+
return node ;
|
411
|
+
},
|
412
|
+
|
413
|
+
// Fix nested <ul> and <ol>.
|
414
|
+
ol : function( node, htmlNode, targetNode )
|
415
|
+
{
|
416
|
+
if ( htmlNode.innerHTML.Trim().length == 0 )
|
417
|
+
return false ;
|
418
|
+
|
419
|
+
var ePSibling = targetNode.lastChild ;
|
420
|
+
|
421
|
+
if ( ePSibling && ePSibling.nodeType == 3 )
|
422
|
+
ePSibling = ePSibling.previousSibling ;
|
423
|
+
|
424
|
+
if ( ePSibling && ePSibling.nodeName.toUpperCase() == 'LI' )
|
425
|
+
{
|
426
|
+
htmlNode._fckxhtmljob = null ;
|
427
|
+
FCKXHtml._AppendNode( ePSibling, htmlNode ) ;
|
428
|
+
return false ;
|
429
|
+
}
|
430
|
+
|
431
|
+
node = FCKXHtml._AppendChildNodes( node, htmlNode ) ;
|
432
|
+
|
433
|
+
return node ;
|
434
|
+
},
|
435
|
+
|
436
|
+
span : function( node, htmlNode )
|
437
|
+
{
|
438
|
+
// Firefox may create empty tags when deleting the selection in some special cases (SF-BUG 1084404).
|
439
|
+
if ( htmlNode.innerHTML.length == 0 )
|
440
|
+
return false ;
|
441
|
+
|
442
|
+
node = FCKXHtml._AppendChildNodes( node, htmlNode, false ) ;
|
443
|
+
|
444
|
+
return node ;
|
445
|
+
},
|
446
|
+
|
447
|
+
// IE loses contents of iframes, and Gecko does give it back HtmlEncoded
|
448
|
+
// Note: Opera does lose the content and doesn't provide it in the innerHTML string
|
449
|
+
iframe : function( node, htmlNode )
|
450
|
+
{
|
451
|
+
var sHtml = htmlNode.innerHTML ;
|
452
|
+
|
453
|
+
// Gecko does give back the encoded html
|
454
|
+
if ( FCKBrowserInfo.IsGecko )
|
455
|
+
sHtml = FCKTools.HTMLDecode( sHtml );
|
456
|
+
|
457
|
+
// Remove the saved urls here as the data won't be processed as nodes
|
458
|
+
sHtml = sHtml.replace( /\s_fcksavedurl="[^"]*"/g, '' ) ;
|
459
|
+
|
460
|
+
node.appendChild( FCKXHtml.XML.createTextNode( FCKXHtml._AppendSpecialItem( sHtml ) ) ) ;
|
461
|
+
|
462
|
+
return node ;
|
463
|
+
}
|
464
|
+
} ;
|
465
|
+
|
466
|
+
FCKXHtml.TagProcessors.ul = FCKXHtml.TagProcessors.ol ;
|