esp-ckeditor 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/MIT-LICENSE +20 -0
- data/README.rdoc +32 -0
- data/Rakefile +28 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/_bootstrap.js +87 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/ckeditor.js +141 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/ckeditor_base.js +227 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/ckeditor_basic.js +238 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/command.js +209 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/commanddefinition.js +129 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/config.js +423 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dataprocessor.js +65 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/comment.js +32 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/document.js +251 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/documentfragment.js +49 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/domobject.js +258 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/element.js +1691 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/elementpath.js +119 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/event.js +145 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/node.js +696 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/nodelist.js +26 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/range.js +2054 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/rangelist.js +213 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/text.js +128 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/walker.js +462 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom/window.js +96 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dom.js +20 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/dtd.js +266 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/editor.js +1060 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/editor_basic.js +186 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/env.js +305 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/event.js +342 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/eventInfo.js +120 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/focusmanager.js +152 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/basicwriter.js +145 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/cdata.js +43 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/comment.js +60 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/element.js +308 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/filter.js +288 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/fragment.js +518 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser/text.js +53 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/htmlparser.js +224 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/lang.js +157 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/loader.js +240 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/plugindefinition.js +83 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/plugins.js +103 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/resourcemanager.js +238 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/scriptloader.js +180 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/skins.js +184 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/themes.js +19 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/tools.js +763 -0
- data/app/assets/javascripts/esp-ckeditor/_source/core/ui.js +128 -0
- data/app/assets/javascripts/esp-ckeditor/_source/lang/_languages.js +27 -0
- data/app/assets/javascripts/esp-ckeditor/_source/lang/en.js +815 -0
- data/app/assets/javascripts/esp-ckeditor/_source/lang/ru.js +815 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/dialogs/a11yhelp.js +222 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/lang/en.js +108 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/lang/he.js +216 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/a11yhelp/plugin.js +47 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/basicstyles/plugin.js +129 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/button/plugin.js +290 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/clipboard/dialogs/paste.js +223 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/clipboard/plugin.js +453 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/contextmenu/plugin.js +179 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialog/dialogDefinition.js +1166 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialog/plugin.js +3308 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialogadvtab/plugin.js +208 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/dialogui/plugin.js +1541 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/domiterator/plugin.js +361 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/editingblock/plugin.js +278 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/elementspath/plugin.js +218 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/enterkey/plugin.js +433 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/entities/plugin.js +250 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/dialogs/esp_attachment.js +234 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/images/esp_attachment.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/lang/en.js +22 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/lang/ru.js +22 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/lang/uk.js +22 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_attachment/plugin.js +23 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/dialogs/esp_audio.js +207 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/images/esp_audio.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/images/placeholder.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/lang/en.js +18 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/lang/ru.js +18 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/lang/uk.js +18 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_audio/plugin.js +182 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_blockquote/dialogs/esp_blockquote.js +132 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_blockquote/plugin.js +235 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/dialogs/esp_image.js +1414 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/images/esp_image.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/lang/en.js +9 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/lang/ru.js +9 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/lang/uk.js +9 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_image/plugin.js +80 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/dialogs/esp_anchor.js +145 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/dialogs/esp_link.js +1396 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/anchor.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/esp_anchor.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/esp_link.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/images/esp_unlink.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/lang/en.js +8 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/lang/ru.js +8 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/lang/uk.js +8 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_link/plugin.js +379 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_address.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_blockquote.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_div.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h1.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h2.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h3.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h4.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h5.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_h6.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_p.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/block_pre.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/images/esp_showblocks.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_showblocks/plugin.js +163 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/dialogs/esp_video.js +277 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/images/esp_video.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/images/placeholder.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/lang/en.js +19 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/lang/ru.js +19 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/lang/uk.js +19 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/esp_video/plugin.js +182 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/fakeobjects/plugin.js +175 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/filebrowser/plugin.js +534 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/find/dialogs/find.js +915 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/find/plugin.js +47 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/floatpanel/plugin.js +428 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/format/plugin.js +197 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/htmldataprocessor/plugin.js +596 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/htmlwriter/plugin.js +319 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/image/dialogs/image.js +1407 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/image/plugin.js +81 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/indent/plugin.js +461 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/justify/plugin.js +253 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/keystrokes/plugin.js +225 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/list/plugin.js +774 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/listblock/plugin.js +266 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/liststyle/dialogs/liststyle.js +225 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/liststyle/plugin.js +66 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/maximize/plugin.js +353 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/menu/plugin.js +541 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/panel/plugin.js +400 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastefromword/filter/default.js +1367 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastefromword/plugin.js +141 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastetext/dialogs/pastetext.js +67 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/pastetext/plugin.js +98 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/popup/plugin.js +64 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/removeformat/plugin.js +185 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/resize/plugin.js +168 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/richcombo/plugin.js +381 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/selection/plugin.js +1729 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/showborders/plugin.js +207 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/sourcearea/plugin.js +209 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/styles/plugin.js +1700 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/styles/styles/default.js +88 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/stylescombo/plugin.js +218 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/tab/plugin.js +367 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/table/dialogs/table.js +623 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/table/plugin.js +78 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/tabletools/dialogs/tableCell.js +525 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/tabletools/plugin.js +1194 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/toolbar/plugin.js +545 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/undo/plugin.js +578 -0
- data/app/assets/javascripts/esp-ckeditor/_source/plugins/wysiwygarea/plugin.js +1347 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/dialog.css +988 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/editor.css +25 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/elementspath.css +73 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/icons.css +367 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/icons.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/icons_rtl.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/dialog_sides.gif +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/dialog_sides.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/dialog_sides_rtl.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/mini.gif +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/noimage.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/sprites.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/sprites_ie6.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/images/toolbar_start.gif +0 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/mainui.css +209 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/menu.css +232 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/panel.css +227 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/presets.css +49 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/reset.css +85 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/richcombo.css +287 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/skin.js +236 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/templates.css +88 -0
- data/app/assets/javascripts/esp-ckeditor/_source/skins/kama/toolbar.css +412 -0
- data/app/assets/javascripts/esp-ckeditor/_source/themes/default/theme.js +407 -0
- data/app/assets/javascripts/esp-ckeditor/application.js +8 -0
- data/app/assets/javascripts/esp-ckeditor/ckeditor.js +137 -0
- data/app/assets/javascripts/esp-ckeditor/ckeditor.pack +194 -0
- data/app/assets/javascripts/esp-ckeditor/ckeditor_source.js +35 -0
- data/app/assets/javascripts/esp-ckeditor/ckpackager.jar +0 -0
- data/app/assets/javascripts/esp-ckeditor/ckpackager.txt +2 -0
- data/app/assets/javascripts/esp-ckeditor/config.js +147 -0
- data/app/assets/javascripts/esp-ckeditor/contents.css +38 -0
- data/app/assets/javascripts/esp-ckeditor/images/spacer.gif +0 -0
- data/app/assets/javascripts/esp-ckeditor/init_ckeditor.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/lang/en.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/lang/he.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/a11yhelp/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/basicstyles/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/button/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/clipboard/dialogs/paste.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/clipboard/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/contextmenu/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/dialog/dialogDefinition.js +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/dialog/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/dialogadvtab/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/dialogui/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/domiterator/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/editingblock/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/elementspath/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/enterkey/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/entities/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/dialogs/esp_attachment.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/images/esp_attachment.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/lang/en.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/lang/ru.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/lang/uk.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_attachment/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/dialogs/esp_audio.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/images/esp_audio.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/images/placeholder.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/lang/en.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/lang/ru.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/lang/uk.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_audio/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_blockquote/dialogs/esp_blockquote.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_blockquote/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/dialogs/esp_image.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/images/esp_image.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/lang/en.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/lang/ru.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/lang/uk.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_image/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/dialogs/esp_anchor.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/dialogs/esp_link.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/anchor.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/esp_anchor.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/esp_link.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/images/esp_unlink.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/lang/en.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/lang/ru.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/lang/uk.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_link/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_address.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_blockquote.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_div.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h1.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h2.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h3.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h4.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h5.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_h6.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_p.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/block_pre.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/images/esp_showblocks.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_showblocks/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/dialogs/esp_video.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/images/esp_video.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/images/placeholder.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/lang/en.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/lang/ru.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/lang/uk.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/esp_video/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/fakeobjects/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/filebrowser/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/find/dialogs/find.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/find/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/floatpanel/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/format/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/htmldataprocessor/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/htmlwriter/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/image/dialogs/image.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/image/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/indent/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/justify/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/keystrokes/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/list/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/listblock/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/liststyle/dialogs/liststyle.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/liststyle/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/maximize/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/menu/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/panel/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/pastefromword/filter/default.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/pastefromword/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/pastetext/dialogs/pastetext.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/pastetext/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/popup/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/removeformat/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/resize/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/richcombo/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/selection/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/showborders/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/sourcearea/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/styles/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/styles/styles/default.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/stylescombo/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/tab/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/table/dialogs/table.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/table/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/tabletools/dialogs/tableCell.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/tabletools/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/toolbar/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/undo/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/plugins/wysiwygarea/plugin.js +1 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/dialog.css +988 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/editor.css +25 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/elementspath.css +73 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/icons.css +367 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/icons.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/icons_rtl.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/dialog_sides.gif +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/dialog_sides.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/dialog_sides_rtl.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/mini.gif +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/noimage.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/sprites.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/sprites_ie6.png +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/images/toolbar_start.gif +0 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/mainui.css +209 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/menu.css +232 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/panel.css +227 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/presets.css +49 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/reset.css +85 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/richcombo.css +287 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/skin.js +236 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/templates.css +88 -0
- data/app/assets/javascripts/esp-ckeditor/skins/kama/toolbar.css +412 -0
- data/app/inputs/ckeditor_input.rb +42 -0
- data/config/routes.rb +2 -0
- data/lib/esp-ckeditor/engine.rb +9 -0
- data/lib/esp-ckeditor/version.rb +3 -0
- data/lib/esp-ckeditor.rb +17 -0
- data/lib/tasks/esp-ckeditor_tasks.rake +4 -0
- metadata +434 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
|
|
3
|
+
For licensing, see LICENSE.html or http://ckeditor.com/license
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* @fileOverview Defines the {@link CKEDITOR.focusManager} class, which is used
|
|
8
|
+
* to handle the focus on editor instances..
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Creates a focusManager class instance.
|
|
13
|
+
* @class Manages the focus activity in an editor instance. This class is to be
|
|
14
|
+
* used mainly by UI elements coders when adding interface elements that need
|
|
15
|
+
* to set the focus state of the editor.
|
|
16
|
+
* @param {CKEDITOR.editor} editor The editor instance.
|
|
17
|
+
* @example
|
|
18
|
+
* var focusManager = <b>new CKEDITOR.focusManager( editor )</b>;
|
|
19
|
+
* focusManager.focus();
|
|
20
|
+
*/
|
|
21
|
+
CKEDITOR.focusManager = function( editor )
|
|
22
|
+
{
|
|
23
|
+
if ( editor.focusManager )
|
|
24
|
+
return editor.focusManager;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Indicates that the editor instance has focus.
|
|
28
|
+
* @type Boolean
|
|
29
|
+
* @example
|
|
30
|
+
* alert( CKEDITOR.instances.editor1.focusManager.hasFocus ); // e.g "true"
|
|
31
|
+
*/
|
|
32
|
+
this.hasFocus = false;
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Object used to hold private stuff.
|
|
36
|
+
* @private
|
|
37
|
+
*/
|
|
38
|
+
this._ =
|
|
39
|
+
{
|
|
40
|
+
editor : editor
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
return this;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
CKEDITOR.focusManager.prototype =
|
|
47
|
+
{
|
|
48
|
+
/**
|
|
49
|
+
* Used to indicate that the editor instance has the focus.<br />
|
|
50
|
+
* <br />
|
|
51
|
+
* Note that this function will not explicitelly set the focus in the
|
|
52
|
+
* editor (for example, making the caret blinking on it). Use
|
|
53
|
+
* {@link CKEDITOR.editor#focus} for it instead.
|
|
54
|
+
* @example
|
|
55
|
+
* var editor = CKEDITOR.instances.editor1;
|
|
56
|
+
* <b>editor.focusManager.focus()</b>;
|
|
57
|
+
*/
|
|
58
|
+
focus : function()
|
|
59
|
+
{
|
|
60
|
+
if ( this._.timer )
|
|
61
|
+
clearTimeout( this._.timer );
|
|
62
|
+
|
|
63
|
+
if ( !this.hasFocus )
|
|
64
|
+
{
|
|
65
|
+
// If another editor has the current focus, we first "blur" it. In
|
|
66
|
+
// this way the events happen in a more logical sequence, like:
|
|
67
|
+
// "focus 1" > "blur 1" > "focus 2"
|
|
68
|
+
// ... instead of:
|
|
69
|
+
// "focus 1" > "focus 2" > "blur 1"
|
|
70
|
+
if ( CKEDITOR.currentInstance )
|
|
71
|
+
CKEDITOR.currentInstance.focusManager.forceBlur();
|
|
72
|
+
|
|
73
|
+
var editor = this._.editor;
|
|
74
|
+
|
|
75
|
+
editor.container.getChild( 1 ).addClass( 'cke_focus' );
|
|
76
|
+
|
|
77
|
+
this.hasFocus = true;
|
|
78
|
+
editor.fire( 'focus' );
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Used to indicate that the editor instance has lost the focus.<br />
|
|
84
|
+
* <br />
|
|
85
|
+
* Note that this functions acts asynchronously with a delay of 100ms to
|
|
86
|
+
* avoid subsequent blur/focus effects. If you want the "blur" to happen
|
|
87
|
+
* immediately, use the {@link #forceBlur} function instead.
|
|
88
|
+
* @example
|
|
89
|
+
* var editor = CKEDITOR.instances.editor1;
|
|
90
|
+
* <b>editor.focusManager.blur()</b>;
|
|
91
|
+
*/
|
|
92
|
+
blur : function()
|
|
93
|
+
{
|
|
94
|
+
var focusManager = this;
|
|
95
|
+
|
|
96
|
+
if ( focusManager._.timer )
|
|
97
|
+
clearTimeout( focusManager._.timer );
|
|
98
|
+
|
|
99
|
+
focusManager._.timer = setTimeout(
|
|
100
|
+
function()
|
|
101
|
+
{
|
|
102
|
+
delete focusManager._.timer;
|
|
103
|
+
focusManager.forceBlur();
|
|
104
|
+
}
|
|
105
|
+
, 100 );
|
|
106
|
+
},
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Used to indicate that the editor instance has lost the focus. Unlike
|
|
110
|
+
* {@link #blur}, this function is synchronous, marking the instance as
|
|
111
|
+
* "blured" immediately.
|
|
112
|
+
* @example
|
|
113
|
+
* var editor = CKEDITOR.instances.editor1;
|
|
114
|
+
* <b>editor.focusManager.forceBlur()</b>;
|
|
115
|
+
*/
|
|
116
|
+
forceBlur : function()
|
|
117
|
+
{
|
|
118
|
+
if ( this.hasFocus )
|
|
119
|
+
{
|
|
120
|
+
var editor = this._.editor;
|
|
121
|
+
|
|
122
|
+
editor.container.getChild( 1 ).removeClass( 'cke_focus' );
|
|
123
|
+
|
|
124
|
+
this.hasFocus = false;
|
|
125
|
+
editor.fire( 'blur' );
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* Fired when the editor instance receives the input focus.
|
|
132
|
+
* @name CKEDITOR.editor#focus
|
|
133
|
+
* @event
|
|
134
|
+
* @param {CKEDITOR.editor} editor The editor instance.
|
|
135
|
+
* @example
|
|
136
|
+
* editor.on( 'focus', function( e )
|
|
137
|
+
* {
|
|
138
|
+
* alert( 'The editor named ' + e.editor.name + ' is now focused' );
|
|
139
|
+
* });
|
|
140
|
+
*/
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Fired when the editor instance loses the input focus.
|
|
144
|
+
* @name CKEDITOR.editor#blur
|
|
145
|
+
* @event
|
|
146
|
+
* @param {CKEDITOR.editor} editor The editor instance.
|
|
147
|
+
* @example
|
|
148
|
+
* editor.on( 'blur', function( e )
|
|
149
|
+
* {
|
|
150
|
+
* alert( 'The editor named ' + e.editor.name + ' lost the focus' );
|
|
151
|
+
* });
|
|
152
|
+
*/
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
|
|
3
|
+
For licensing, see LICENSE.html or http://ckeditor.com/license
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
CKEDITOR.htmlParser.basicWriter = CKEDITOR.tools.createClass(
|
|
7
|
+
{
|
|
8
|
+
$ : function()
|
|
9
|
+
{
|
|
10
|
+
this._ =
|
|
11
|
+
{
|
|
12
|
+
output : []
|
|
13
|
+
};
|
|
14
|
+
},
|
|
15
|
+
|
|
16
|
+
proto :
|
|
17
|
+
{
|
|
18
|
+
/**
|
|
19
|
+
* Writes the tag opening part for a opener tag.
|
|
20
|
+
* @param {String} tagName The element name for this tag.
|
|
21
|
+
* @param {Object} attributes The attributes defined for this tag. The
|
|
22
|
+
* attributes could be used to inspect the tag.
|
|
23
|
+
* @example
|
|
24
|
+
* // Writes "<p".
|
|
25
|
+
* writer.openTag( 'p', { class : 'MyClass', id : 'MyId' } );
|
|
26
|
+
*/
|
|
27
|
+
openTag : function( tagName, attributes )
|
|
28
|
+
{
|
|
29
|
+
this._.output.push( '<', tagName );
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Writes the tag closing part for a opener tag.
|
|
34
|
+
* @param {String} tagName The element name for this tag.
|
|
35
|
+
* @param {Boolean} isSelfClose Indicates that this is a self-closing tag,
|
|
36
|
+
* like "br" or "img".
|
|
37
|
+
* @example
|
|
38
|
+
* // Writes ">".
|
|
39
|
+
* writer.openTagClose( 'p', false );
|
|
40
|
+
* @example
|
|
41
|
+
* // Writes " />".
|
|
42
|
+
* writer.openTagClose( 'br', true );
|
|
43
|
+
*/
|
|
44
|
+
openTagClose : function( tagName, isSelfClose )
|
|
45
|
+
{
|
|
46
|
+
if ( isSelfClose )
|
|
47
|
+
this._.output.push( ' />' );
|
|
48
|
+
else
|
|
49
|
+
this._.output.push( '>' );
|
|
50
|
+
},
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Writes an attribute. This function should be called after opening the
|
|
54
|
+
* tag with {@link #openTagClose}.
|
|
55
|
+
* @param {String} attName The attribute name.
|
|
56
|
+
* @param {String} attValue The attribute value.
|
|
57
|
+
* @example
|
|
58
|
+
* // Writes ' class="MyClass"'.
|
|
59
|
+
* writer.attribute( 'class', 'MyClass' );
|
|
60
|
+
*/
|
|
61
|
+
attribute : function( attName, attValue )
|
|
62
|
+
{
|
|
63
|
+
// Browsers don't always escape special character in attribute values. (#4683, #4719).
|
|
64
|
+
if ( typeof attValue == 'string' )
|
|
65
|
+
attValue = CKEDITOR.tools.htmlEncodeAttr( attValue );
|
|
66
|
+
|
|
67
|
+
this._.output.push( ' ', attName, '="', attValue, '"' );
|
|
68
|
+
},
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* Writes a closer tag.
|
|
72
|
+
* @param {String} tagName The element name for this tag.
|
|
73
|
+
* @example
|
|
74
|
+
* // Writes "</p>".
|
|
75
|
+
* writer.closeTag( 'p' );
|
|
76
|
+
*/
|
|
77
|
+
closeTag : function( tagName )
|
|
78
|
+
{
|
|
79
|
+
this._.output.push( '</', tagName, '>' );
|
|
80
|
+
},
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Writes text.
|
|
84
|
+
* @param {String} text The text value
|
|
85
|
+
* @example
|
|
86
|
+
* // Writes "Hello Word".
|
|
87
|
+
* writer.text( 'Hello Word' );
|
|
88
|
+
*/
|
|
89
|
+
text : function( text )
|
|
90
|
+
{
|
|
91
|
+
this._.output.push( text );
|
|
92
|
+
},
|
|
93
|
+
|
|
94
|
+
/**
|
|
95
|
+
* Writes a comment.
|
|
96
|
+
* @param {String} comment The comment text.
|
|
97
|
+
* @example
|
|
98
|
+
* // Writes "<!-- My comment -->".
|
|
99
|
+
* writer.comment( ' My comment ' );
|
|
100
|
+
*/
|
|
101
|
+
comment : function( comment )
|
|
102
|
+
{
|
|
103
|
+
this._.output.push( '<!--', comment, '-->' );
|
|
104
|
+
},
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Writes any kind of data to the ouput.
|
|
108
|
+
* @example
|
|
109
|
+
* writer.write( 'This is an <b>example</b>.' );
|
|
110
|
+
*/
|
|
111
|
+
write : function( data )
|
|
112
|
+
{
|
|
113
|
+
this._.output.push( data );
|
|
114
|
+
},
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Empties the current output buffer.
|
|
118
|
+
* @example
|
|
119
|
+
* writer.reset();
|
|
120
|
+
*/
|
|
121
|
+
reset : function()
|
|
122
|
+
{
|
|
123
|
+
this._.output = [];
|
|
124
|
+
this._.indent = false;
|
|
125
|
+
},
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* Empties the current output buffer.
|
|
129
|
+
* @param {Boolean} reset Indicates that the {@link reset} function is to
|
|
130
|
+
* be automatically called after retrieving the HTML.
|
|
131
|
+
* @returns {String} The HTML written to the writer so far.
|
|
132
|
+
* @example
|
|
133
|
+
* var html = writer.getHtml();
|
|
134
|
+
*/
|
|
135
|
+
getHtml : function( reset )
|
|
136
|
+
{
|
|
137
|
+
var html = this._.output.join( '' );
|
|
138
|
+
|
|
139
|
+
if ( reset )
|
|
140
|
+
this.reset();
|
|
141
|
+
|
|
142
|
+
return html;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
});
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
|
|
3
|
+
For licensing, see LICENSE.html or http://ckeditor.com/license
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
(function()
|
|
7
|
+
{
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* A lightweight representation of HTML text.
|
|
11
|
+
* @constructor
|
|
12
|
+
* @example
|
|
13
|
+
*/
|
|
14
|
+
CKEDITOR.htmlParser.cdata = function( value )
|
|
15
|
+
{
|
|
16
|
+
/**
|
|
17
|
+
* The CDATA value.
|
|
18
|
+
* @type String
|
|
19
|
+
* @example
|
|
20
|
+
*/
|
|
21
|
+
this.value = value;
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
CKEDITOR.htmlParser.cdata.prototype =
|
|
25
|
+
{
|
|
26
|
+
/**
|
|
27
|
+
* CDATA has the same type as {@link CKEDITOR.htmlParser.text} This is
|
|
28
|
+
* a constant value set to {@link CKEDITOR.NODE_TEXT}.
|
|
29
|
+
* @type Number
|
|
30
|
+
* @example
|
|
31
|
+
*/
|
|
32
|
+
type : CKEDITOR.NODE_TEXT,
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Writes write the CDATA with no special manipulations.
|
|
36
|
+
* @param {CKEDITOR.htmlWriter} writer The writer to which write the HTML.
|
|
37
|
+
*/
|
|
38
|
+
writeHtml : function( writer )
|
|
39
|
+
{
|
|
40
|
+
writer.write( this.value );
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
})();
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
|
|
3
|
+
For licensing, see LICENSE.html or http://ckeditor.com/license
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A lightweight representation of an HTML comment.
|
|
8
|
+
* @constructor
|
|
9
|
+
* @example
|
|
10
|
+
*/
|
|
11
|
+
CKEDITOR.htmlParser.comment = function( value )
|
|
12
|
+
{
|
|
13
|
+
/**
|
|
14
|
+
* The comment text.
|
|
15
|
+
* @type String
|
|
16
|
+
* @example
|
|
17
|
+
*/
|
|
18
|
+
this.value = value;
|
|
19
|
+
|
|
20
|
+
/** @private */
|
|
21
|
+
this._ =
|
|
22
|
+
{
|
|
23
|
+
isBlockLike : false
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
CKEDITOR.htmlParser.comment.prototype =
|
|
28
|
+
{
|
|
29
|
+
/**
|
|
30
|
+
* The node type. This is a constant value set to {@link CKEDITOR.NODE_COMMENT}.
|
|
31
|
+
* @type Number
|
|
32
|
+
* @example
|
|
33
|
+
*/
|
|
34
|
+
type : CKEDITOR.NODE_COMMENT,
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Writes the HTML representation of this comment to a CKEDITOR.htmlWriter.
|
|
38
|
+
* @param {CKEDITOR.htmlWriter} writer The writer to which write the HTML.
|
|
39
|
+
* @example
|
|
40
|
+
*/
|
|
41
|
+
writeHtml : function( writer, filter )
|
|
42
|
+
{
|
|
43
|
+
var comment = this.value;
|
|
44
|
+
|
|
45
|
+
if ( filter )
|
|
46
|
+
{
|
|
47
|
+
if ( !( comment = filter.onComment( comment, this ) ) )
|
|
48
|
+
return;
|
|
49
|
+
|
|
50
|
+
if ( typeof comment != 'string' )
|
|
51
|
+
{
|
|
52
|
+
comment.parent = this.parent;
|
|
53
|
+
comment.writeHtml( writer, filter );
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
writer.comment( comment );
|
|
59
|
+
}
|
|
60
|
+
};
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
|
|
3
|
+
For licensing, see LICENSE.html or http://ckeditor.com/license
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A lightweight representation of an HTML element.
|
|
8
|
+
* @param {String} name The element name.
|
|
9
|
+
* @param {Object} attributes And object holding all attributes defined for
|
|
10
|
+
* this element.
|
|
11
|
+
* @constructor
|
|
12
|
+
* @example
|
|
13
|
+
*/
|
|
14
|
+
CKEDITOR.htmlParser.element = function( name, attributes )
|
|
15
|
+
{
|
|
16
|
+
/**
|
|
17
|
+
* The element name.
|
|
18
|
+
* @type String
|
|
19
|
+
* @example
|
|
20
|
+
*/
|
|
21
|
+
this.name = name;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Holds the attributes defined for this element.
|
|
25
|
+
* @type Object
|
|
26
|
+
* @example
|
|
27
|
+
*/
|
|
28
|
+
this.attributes = attributes || ( attributes = {} );
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* The nodes that are direct children of this element.
|
|
32
|
+
* @type Array
|
|
33
|
+
* @example
|
|
34
|
+
*/
|
|
35
|
+
this.children = [];
|
|
36
|
+
|
|
37
|
+
var tagName = attributes[ 'data-cke-real-element-type' ] || name || '';
|
|
38
|
+
|
|
39
|
+
// Reveal the real semantic of our internal custom tag name (#6639).
|
|
40
|
+
var internalTag = tagName.match( /^cke:(.*)/ );
|
|
41
|
+
internalTag && ( tagName = internalTag[ 1 ] );
|
|
42
|
+
|
|
43
|
+
var dtd = CKEDITOR.dtd,
|
|
44
|
+
isBlockLike = !!( dtd.$nonBodyContent[ tagName ]
|
|
45
|
+
|| dtd.$block[ tagName ]
|
|
46
|
+
|| dtd.$listItem[ tagName ]
|
|
47
|
+
|| dtd.$tableContent[ tagName ]
|
|
48
|
+
|| dtd.$nonEditable[ tagName ]
|
|
49
|
+
|| tagName == 'br' ),
|
|
50
|
+
isEmpty = !!dtd.$empty[ name ];
|
|
51
|
+
|
|
52
|
+
this.isEmpty = isEmpty;
|
|
53
|
+
this.isUnknown = !dtd[ name ];
|
|
54
|
+
|
|
55
|
+
/** @private */
|
|
56
|
+
this._ =
|
|
57
|
+
{
|
|
58
|
+
isBlockLike : isBlockLike,
|
|
59
|
+
hasInlineStarted : isEmpty || !isBlockLike
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Object presentation of CSS style declaration text.
|
|
65
|
+
* @param {CKEDITOR.htmlParser.element|String} elementOrStyleText A html parser element or the inline style text.
|
|
66
|
+
*/
|
|
67
|
+
CKEDITOR.htmlParser.cssStyle = function()
|
|
68
|
+
{
|
|
69
|
+
var styleText,
|
|
70
|
+
arg = arguments[ 0 ],
|
|
71
|
+
rules = {};
|
|
72
|
+
|
|
73
|
+
styleText = arg instanceof CKEDITOR.htmlParser.element ? arg.attributes.style : arg;
|
|
74
|
+
|
|
75
|
+
// html-encoded quote might be introduced by 'font-family'
|
|
76
|
+
// from MS-Word which confused the following regexp. e.g.
|
|
77
|
+
//'font-family: "Lucida, Console"'
|
|
78
|
+
( styleText || '' )
|
|
79
|
+
.replace( /"/g, '"' )
|
|
80
|
+
.replace( /\s*([^ :;]+)\s*:\s*([^;]+)\s*(?=;|$)/g,
|
|
81
|
+
function( match, name, value )
|
|
82
|
+
{
|
|
83
|
+
name == 'font-family' && ( value = value.replace( /["']/g, '' ) );
|
|
84
|
+
rules[ name.toLowerCase() ] = value;
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
return {
|
|
88
|
+
|
|
89
|
+
rules : rules,
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Apply the styles onto the specified element or object.
|
|
93
|
+
* @param {CKEDITOR.htmlParser.element|CKEDITOR.dom.element|Object} obj
|
|
94
|
+
*/
|
|
95
|
+
populate : function( obj )
|
|
96
|
+
{
|
|
97
|
+
var style = this.toString();
|
|
98
|
+
if ( style )
|
|
99
|
+
{
|
|
100
|
+
obj instanceof CKEDITOR.dom.element ?
|
|
101
|
+
obj.setAttribute( 'style', style ) :
|
|
102
|
+
obj instanceof CKEDITOR.htmlParser.element ?
|
|
103
|
+
obj.attributes.style = style :
|
|
104
|
+
obj.style = style;
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
|
|
108
|
+
toString : function()
|
|
109
|
+
{
|
|
110
|
+
var output = [];
|
|
111
|
+
for ( var i in rules )
|
|
112
|
+
rules[ i ] && output.push( i, ':', rules[ i ], ';' );
|
|
113
|
+
return output.join( '' );
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
(function()
|
|
119
|
+
{
|
|
120
|
+
// Used to sort attribute entries in an array, where the first element of
|
|
121
|
+
// each object is the attribute name.
|
|
122
|
+
var sortAttribs = function( a, b )
|
|
123
|
+
{
|
|
124
|
+
a = a[0];
|
|
125
|
+
b = b[0];
|
|
126
|
+
return a < b ? -1 : a > b ? 1 : 0;
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
CKEDITOR.htmlParser.element.prototype =
|
|
130
|
+
{
|
|
131
|
+
/**
|
|
132
|
+
* The node type. This is a constant value set to {@link CKEDITOR.NODE_ELEMENT}.
|
|
133
|
+
* @type Number
|
|
134
|
+
* @example
|
|
135
|
+
*/
|
|
136
|
+
type : CKEDITOR.NODE_ELEMENT,
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* Adds a node to the element children list.
|
|
140
|
+
* @param {Object} node The node to be added. It can be any of of the
|
|
141
|
+
* following types: {@link CKEDITOR.htmlParser.element},
|
|
142
|
+
* {@link CKEDITOR.htmlParser.text} and
|
|
143
|
+
* {@link CKEDITOR.htmlParser.comment}.
|
|
144
|
+
* @function
|
|
145
|
+
* @example
|
|
146
|
+
*/
|
|
147
|
+
add : CKEDITOR.htmlParser.fragment.prototype.add,
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Clone this element.
|
|
151
|
+
* @returns {CKEDITOR.htmlParser.element} The element clone.
|
|
152
|
+
* @example
|
|
153
|
+
*/
|
|
154
|
+
clone : function()
|
|
155
|
+
{
|
|
156
|
+
return new CKEDITOR.htmlParser.element( this.name, this.attributes );
|
|
157
|
+
},
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* Writes the element HTML to a CKEDITOR.htmlWriter.
|
|
161
|
+
* @param {CKEDITOR.htmlWriter} writer The writer to which write the HTML.
|
|
162
|
+
* @example
|
|
163
|
+
*/
|
|
164
|
+
writeHtml : function( writer, filter )
|
|
165
|
+
{
|
|
166
|
+
var attributes = this.attributes;
|
|
167
|
+
|
|
168
|
+
// Ignore cke: prefixes when writing HTML.
|
|
169
|
+
var element = this,
|
|
170
|
+
writeName = element.name,
|
|
171
|
+
a, newAttrName, value;
|
|
172
|
+
|
|
173
|
+
var isChildrenFiltered;
|
|
174
|
+
|
|
175
|
+
/**
|
|
176
|
+
* Providing an option for bottom-up filtering order ( element
|
|
177
|
+
* children to be pre-filtered before the element itself ).
|
|
178
|
+
*/
|
|
179
|
+
element.filterChildren = function()
|
|
180
|
+
{
|
|
181
|
+
if ( !isChildrenFiltered )
|
|
182
|
+
{
|
|
183
|
+
var writer = new CKEDITOR.htmlParser.basicWriter();
|
|
184
|
+
CKEDITOR.htmlParser.fragment.prototype.writeChildrenHtml.call( element, writer, filter );
|
|
185
|
+
element.children = new CKEDITOR.htmlParser.fragment.fromHtml( writer.getHtml(), 0, element.clone() ).children;
|
|
186
|
+
isChildrenFiltered = 1;
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
if ( filter )
|
|
191
|
+
{
|
|
192
|
+
while ( true )
|
|
193
|
+
{
|
|
194
|
+
if ( !( writeName = filter.onElementName( writeName ) ) )
|
|
195
|
+
return;
|
|
196
|
+
|
|
197
|
+
element.name = writeName;
|
|
198
|
+
|
|
199
|
+
if ( !( element = filter.onElement( element ) ) )
|
|
200
|
+
return;
|
|
201
|
+
|
|
202
|
+
element.parent = this.parent;
|
|
203
|
+
|
|
204
|
+
if ( element.name == writeName )
|
|
205
|
+
break;
|
|
206
|
+
|
|
207
|
+
// If the element has been replaced with something of a
|
|
208
|
+
// different type, then make the replacement write itself.
|
|
209
|
+
if ( element.type != CKEDITOR.NODE_ELEMENT )
|
|
210
|
+
{
|
|
211
|
+
element.writeHtml( writer, filter );
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
writeName = element.name;
|
|
216
|
+
|
|
217
|
+
// This indicate that the element has been dropped by
|
|
218
|
+
// filter but not the children.
|
|
219
|
+
if ( !writeName )
|
|
220
|
+
{
|
|
221
|
+
// Fix broken parent refs.
|
|
222
|
+
for ( var c = 0, length = this.children.length ; c < length ; c++ )
|
|
223
|
+
this.children[ c ].parent = element.parent;
|
|
224
|
+
|
|
225
|
+
this.writeChildrenHtml.call( element, writer, isChildrenFiltered ? null : filter );
|
|
226
|
+
return;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
// The element may have been changed, so update the local
|
|
231
|
+
// references.
|
|
232
|
+
attributes = element.attributes;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
// Open element tag.
|
|
236
|
+
writer.openTag( writeName, attributes );
|
|
237
|
+
|
|
238
|
+
// Copy all attributes to an array.
|
|
239
|
+
var attribsArray = [];
|
|
240
|
+
// Iterate over the attributes twice since filters may alter
|
|
241
|
+
// other attributes.
|
|
242
|
+
for ( var i = 0 ; i < 2; i++ )
|
|
243
|
+
{
|
|
244
|
+
for ( a in attributes )
|
|
245
|
+
{
|
|
246
|
+
newAttrName = a;
|
|
247
|
+
value = attributes[ a ];
|
|
248
|
+
if ( i == 1 )
|
|
249
|
+
attribsArray.push( [ a, value ] );
|
|
250
|
+
else if ( filter )
|
|
251
|
+
{
|
|
252
|
+
while ( true )
|
|
253
|
+
{
|
|
254
|
+
if ( !( newAttrName = filter.onAttributeName( a ) ) )
|
|
255
|
+
{
|
|
256
|
+
delete attributes[ a ];
|
|
257
|
+
break;
|
|
258
|
+
}
|
|
259
|
+
else if ( newAttrName != a )
|
|
260
|
+
{
|
|
261
|
+
delete attributes[ a ];
|
|
262
|
+
a = newAttrName;
|
|
263
|
+
continue;
|
|
264
|
+
}
|
|
265
|
+
else
|
|
266
|
+
break;
|
|
267
|
+
}
|
|
268
|
+
if ( newAttrName )
|
|
269
|
+
{
|
|
270
|
+
if ( ( value = filter.onAttribute( element, newAttrName, value ) ) === false )
|
|
271
|
+
delete attributes[ newAttrName ];
|
|
272
|
+
else
|
|
273
|
+
attributes [ newAttrName ] = value;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
// Sort the attributes by name.
|
|
279
|
+
if ( writer.sortAttributes )
|
|
280
|
+
attribsArray.sort( sortAttribs );
|
|
281
|
+
|
|
282
|
+
// Send the attributes.
|
|
283
|
+
var len = attribsArray.length;
|
|
284
|
+
for ( i = 0 ; i < len ; i++ )
|
|
285
|
+
{
|
|
286
|
+
var attrib = attribsArray[ i ];
|
|
287
|
+
writer.attribute( attrib[0], attrib[1] );
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
// Close the tag.
|
|
291
|
+
writer.openTagClose( writeName, element.isEmpty );
|
|
292
|
+
|
|
293
|
+
if ( !element.isEmpty )
|
|
294
|
+
{
|
|
295
|
+
this.writeChildrenHtml.call( element, writer, isChildrenFiltered ? null : filter );
|
|
296
|
+
// Close the element.
|
|
297
|
+
writer.closeTag( writeName );
|
|
298
|
+
}
|
|
299
|
+
},
|
|
300
|
+
|
|
301
|
+
writeChildrenHtml : function( writer, filter )
|
|
302
|
+
{
|
|
303
|
+
// Send children.
|
|
304
|
+
CKEDITOR.htmlParser.fragment.prototype.writeChildrenHtml.apply( this, arguments );
|
|
305
|
+
|
|
306
|
+
}
|
|
307
|
+
};
|
|
308
|
+
})();
|