[Checkins] SVN: zope.html/trunk/src/zope/html/ Initial import. A
zope form widget for HTML,
using FCKEditor (thanks to Roger Ineichen for his version,
from which he graciously helped us learn)
Gary Poster
gary at zope.com
Tue Aug 15 17:36:25 EDT 2006
Log message for revision 69548:
Initial import. A zope form widget for HTML, using FCKEditor (thanks to Roger Ineichen for his version, from which he graciously helped us learn)
Changed:
A zope.html/trunk/src/zope/html/DEPENDENCIES.cfg
A zope.html/trunk/src/zope/html/README.txt
A zope.html/trunk/src/zope/html/TODO.txt
A zope.html/trunk/src/zope/html/__init__.py
A zope.html/trunk/src/zope/html/browser.py
A zope.html/trunk/src/zope/html/browser.txt
A zope.html/trunk/src/zope/html/configure.zcml
A zope.html/trunk/src/zope/html/docinfo.py
A zope.html/trunk/src/zope/html/docinfo.txt
A zope.html/trunk/src/zope/html/fckeditor/
A zope.html/trunk/src/zope/html/fckeditor/_documentation.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/fckplugin.js
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/find.gif
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/find.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/en.js
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/fr.js
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/it.js
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/replace.gif
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/replace.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/samples/
A zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/samples/fckplugin.js
A zope.html/trunk/src/zope/html/fckeditor/_samples/afp/
A zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa
A zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa.code
A zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sample01.afp
A zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sampleposteddata.afp
A zope.html/trunk/src/zope/html/fckeditor/_samples/asp/
A zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample01.asp
A zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample02.asp
A zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample03.asp
A zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample04.asp
A zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sampleposteddata.asp
A zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/
A zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample01.cfm
A zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample02_mx.cfm
A zope.html/trunk/src/zope/html/fckeditor/_samples/default.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample01.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample02.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample03.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample04.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample05.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.config.js
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample07.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample08.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample09.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample10.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.asp
A zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.html
A zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/
A zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample01.lasso
A zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample02.lasso
A zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample03.lasso
A zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample04.lasso
A zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sampleposteddata.lasso
A zope.html/trunk/src/zope/html/fckeditor/_samples/perl/
A zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample01.cgi
A zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample02.cgi
A zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample03.cgi
A zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample04.cgi
A zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sampleposteddata.cgi
A zope.html/trunk/src/zope/html/fckeditor/_samples/php/
A zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample01.php
A zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample02.php
A zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample03.php
A zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample04.php
A zope.html/trunk/src/zope/html/fckeditor/_samples/php/sampleposteddata.php
A zope.html/trunk/src/zope/html/fckeditor/_samples/sample.css
A zope.html/trunk/src/zope/html/fckeditor/_samples/sampleslist.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/
A zope.html/trunk/src/zope/html/fckeditor/_testcases/001.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/002.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/003.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/004.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/005.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/006.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/007.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/008.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/009.html
A zope.html/trunk/src/zope/html/fckeditor/_testcases/sampleposteddata.asp
A zope.html/trunk/src/zope/html/fckeditor/_testcases/testcases.css
A zope.html/trunk/src/zope/html/fckeditor/_whatsnew.html
A zope.html/trunk/src/zope/html/fckeditor/editor/
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenugroup.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuitem.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuseparator.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckevents.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckplugin.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckspecialcombo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstylesloader.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbar.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbutton.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fck_othercommands.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcknamedcommand.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckstylecommand.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktablecommand.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fck_constants.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fckeditorapi.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_last.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_onload.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckbrowserinfo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcodeformatter.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcommands.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckconfig.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcoreextensions.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdebug.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcklanguagemanager.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcknamespace.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckplugins.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckregexlib.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckscriptloader.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbaritems.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbarset.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckurlparams.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_gecko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_ie.js
A zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtmlentities.js
A zope.html/trunk/src/zope/html/fckeditor/editor/css/
A zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/
A zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/disablehandles.htc
A zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/hiddenfield.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/hiddenfield.htc
A zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/showtableborders.htc
A zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_editorarea.css
A zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_internal.css
A zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_showtableborders_gecko.css
A zope.html/trunk/src/zope/html/fckeditor/editor/css/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_anchor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_flashlogo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_pagebreak.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.css
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fcknumericfield.htc
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/locked.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/reset.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/unlocked.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/moz-bindings.xml
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/lgpl.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/logo_fredck.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_anchor.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_button.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_checkbox.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_colorselector.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_find.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash/fck_flash.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_form.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_hiddenfield.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image/fck_image.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link/fck_link.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_listprop.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_paste.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_radiobutton.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_replace.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select/fck_select.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_smiley.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_source.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_specialchar.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_table.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_tablecell.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template1.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template3.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textarea.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textfield.html
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/00.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/data.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/diacritic.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/dialogue.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/fck_universalkey.css
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/keyboard_layout.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/multihexa.js
A zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey.html
A zope.html/trunk/src/zope/html/fckeditor/editor/fckblank.html
A zope.html/trunk/src/zope/html/fckeditor/editor/fckdebug.html
A zope.html/trunk/src/zope/html/fckeditor/editor/fckdialog.html
A zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.html
A zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.original.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.css
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/basexml.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/class_upload.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/commands.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/config.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/connector.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/io.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/util.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/aspx/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/config.cfm
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/connector.cfm
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/config.lasso
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/connector.lasso
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/basexml.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/commands.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/config.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/connector.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/io.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/util.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/test.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmactualfolder.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmfolders.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourceslist.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourcetype.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmupload.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/Folder.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/Folder32.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/html.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/js.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/spacer.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/common.js
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/fckxml.js
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.css
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Auth/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Auth/Default.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/CreateFolder.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFile.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFolder.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/FileUpload.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFolders.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFoldersAndFiles.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetUploadProgress.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFile.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFolder.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/Thumbnail.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/.htaccess
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/header.cgi
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/iconlookup.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/progress.cgi
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/upload.cgi
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/AuthenticationHandlers.txt
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/license.txt
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/readme.txt
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/config.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/connector.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/dtd/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/dtd/iso-lat1.ent
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/ascii.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/binary.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/document2.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/email.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/empty.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/html.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/image.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/info.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/kmplot.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/kmultiple.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/pdf.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/php.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/postscript.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/real_doc.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/sound.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/spreadsheet.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/tar.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/video.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/test.html.suspended
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/testme.php.suspended
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmactualfolder.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmcreatefolder.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmfolders.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmimageeditor.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourceslist.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourcetype.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmupload.html
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/2x2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/2x2_w.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/ButtonArrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder32.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder96.jpg
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderOpened.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderOpened32.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderUp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/close.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/delete.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/edit.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/editImage.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/ai.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/avi.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/bmp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/cs.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/default.icon.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/dll.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/doc.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/exe.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/fla.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/gif.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/htm.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/html.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/jpg.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/js.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/mdb.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/mp3.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/pdf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/ppt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/rdp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/swf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/swt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/txt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/vsd.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/xls.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/xml.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/zip.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/ai.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/avi.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/bmp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/cs.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/default.icon.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/dll.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/doc.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/exe.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/fla.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/gif.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/htm.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/html.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/jpg.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/js.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/mdb.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/mp3.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/pdf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/ppt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/rdp.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/swf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/swt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/txt.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/vsd.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/xls.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/xml.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/zip.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/spacer.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/close.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/crop.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/flip.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/resize.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/rotate.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/save.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/EditorContent.js
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/common.js
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/fckxml.js
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/wz_jsgraphics.js
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/class_upload.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/config.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/io.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/upload.asp
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/aspx/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/aspx/upload.aspx
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/config.lasso
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/upload.lasso
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/config.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/upload.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/util.php
A zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/test.html
A zope.html/trunk/src/zope/html/fckeditor/editor/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/images/anchor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/aiua.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/ak.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/alien.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/alien2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/angry.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/angry1.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/apophys.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/assjani.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/asthanos.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bazuzeus.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/beaute.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bigsmile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/blush.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/boid.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bonk.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bored.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/borg.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/capo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/confused.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/cool.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/crazy.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/cwm14.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/demis_roussos.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/devil.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/devil2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/double0smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/eek3.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/eltaf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/gele.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/halm.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/happy.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon12.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon23.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon26.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_angel.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_bandit.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_bravo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_clown.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/jesors.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/jesors1.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/lol3.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/love.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/mad.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/megaphone.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/mmm.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/music.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/notify.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/nuts.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/obanon.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/ouaip.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/pleure.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/plugin.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/question.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/question2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rasta2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rastapop.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rosebud.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sad.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sad2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/shocked.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sick.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sick2.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/slaap.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sleep.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/smiley_peur.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sors.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sovxx.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/spamafote.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tap67.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/thumbdown.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/thumbup.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tigi.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/toad666.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tongue.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tuffgong.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/urgeman.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/vanadium.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wink.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/worship.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wouaf.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/xp1700.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/yltype.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/yopyopyop.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/youpi.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/zoor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/angel_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/angry_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/broken_heart.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/cake.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/confused_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/cry_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/devil_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/embaressed_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/envelope.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/heart.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/kiss.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/lightbulb.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/omg_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/regular_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/sad_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/shades_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/teeth_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/thumbs_down.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/thumbs_up.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/tounge_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/wink_smile.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/images/spacer.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/js/
A zope.html/trunk/src/zope/html/fckeditor/editor/js/fck_startup.js
A zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_1.js
A zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_2.js
A zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_1.js
A zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_2.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/_translationstatus.txt
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/ar.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/bg.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/bs.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/ca.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/cs.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/da.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/de.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/el.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-au.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-uk.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/en.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/eo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/es.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/et.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/eu.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/fa.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/fcklanguagemanager.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/fi.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/fo.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/fr.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/gl.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/he.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/hr.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/hu.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/it.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/ja.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/ko.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/lt.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/mn.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/ms.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/nl.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/no.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/pl.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt-br.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/ro.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/ru.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/sk.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/sl.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr-latn.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/sv.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/th.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/tr.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/uk.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/vi.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh-cn.js
A zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh.js
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fck_placeholder.html
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fckplugin.js
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/de.js
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/en.js
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/fr.js
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/it.js
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/placeholder.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/simplecommands/
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/simplecommands/fckplugin.js
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/tablecommands/
A zope.html/trunk/src/zope/html/fckeditor/editor/plugins/tablecommands/fckplugin.js
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_contextmenu.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_dialog.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_editor.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.arrowright.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.collapse.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.end.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.expand.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.separator.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.start.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/about.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/anchor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bgcolor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bold.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bulletedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/button.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/checkbox.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/copy.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/cut.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/docprops.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/find.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/flash.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/form.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/hiddenfield.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/image.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/imagebutton.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/indent.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/inserthorizontalrule.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/insertorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/insertunorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/italic.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifycenter.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyfull.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyleft.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyright.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/link.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/newpage.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/numberedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/outdent.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pagebreak.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/paste.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pastetext.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pasteword.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/preview.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/print.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/radio.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/redo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/removeformat.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/replace.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/save.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/select.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/selectall.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/showdetails.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/showtableborders.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/smiley.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/source.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/specialchar.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/spellcheck.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/strikethrough.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/subscript.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/superscript.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/table.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablecell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeletecells.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeletecolumns.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeleterows.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertcell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertcolumn.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablemergecells.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablesplitcell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/templates.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textarea.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textcolor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textfield.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/underline.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/undo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/universalkey.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/unlink.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/unorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_contextmenu.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_dialog.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_editor.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.bg.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.end.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.expand.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.separator.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.start.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/about.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/anchor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bgcolor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bold.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bulletedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/button.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/checkbox.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/copy.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/cut.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/docprops.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/find.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/flash.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/fontstyleadv.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/form.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/hidden.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/hiddenfield.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/image.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/imagebutton.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/indent.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/input.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/inserthorizontalrule.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/insertorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/insertunorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/italic.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifycenter.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyfull.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyleft.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyright.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/link.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/mail.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/new.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/newpage.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/numberedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/open.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/outdent.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pagebreak.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/paste.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pastetext.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pasteword.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/preview.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/print.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/radio.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/redo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/removeformat.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/replace.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/save.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/select.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/selectall.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/showdetails.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/showtableborders.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/smiley.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/source.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/specialchar.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/spellcheck.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/strikethrough.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/subscript.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/superscript.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/table.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablecell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeletecells.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeletecolumns.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeleterows.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertcell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertcolumn.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablemergecells.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablesplitcell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/templates.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textarea.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textcolor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textfield.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/underline.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/undo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/universalkey.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/unlink.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/unorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_contextmenu.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_dialog.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_editor.css
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.collapse.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.end.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.expand.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.separator.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.start.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/about.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/anchor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bgcolor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bold.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bulletedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/button.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/checkbox.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/copy.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/cut.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/docprops.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/find.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/flash.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/form.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/hiddenfield.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/image.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/imagebutton.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/indent.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/inserthorizontalrule.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/insertorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/insertunorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/italic.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifycenter.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyfull.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyleft.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyright.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/link.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/newpage.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/numberedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/outdent.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pagebreak.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/paste.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pastetext.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pasteword.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/preview.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/print.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/radio.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/redo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/removeformat.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/replace.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/save.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/select.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/selectall.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/showdetails.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/showtableborders.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/smiley.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/source.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/specialchar.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/spellcheck.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/strikethrough.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/subscript.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/superscript.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/table.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablecell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeletecells.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeletecolumns.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeleterows.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertcell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertcolumn.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertrow.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablemergecells.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablesplitcell.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/templates.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textarea.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textcolor.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textfield.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/underline.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/undo.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/universalkey.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/unlink.gif
A zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/unorderedlist.gif
A zope.html/trunk/src/zope/html/fckeditor/fckconfig.js
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.afp
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.asp
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfc
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfm
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.js
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.lasso
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.php
A zope.html/trunk/src/zope/html/fckeditor/fckeditor.pl
A zope.html/trunk/src/zope/html/fckeditor/fckstyles.xml
A zope.html/trunk/src/zope/html/fckeditor/fcktemplates.xml
A zope.html/trunk/src/zope/html/fckeditor/htaccess.txt
A zope.html/trunk/src/zope/html/fckeditor/license.txt
A zope.html/trunk/src/zope/html/field.py
A zope.html/trunk/src/zope/html/ftesting.zcml
A zope.html/trunk/src/zope/html/i18n.py
A zope.html/trunk/src/zope/html/interfaces.py
A zope.html/trunk/src/zope/html/ntests.py
A zope.html/trunk/src/zope/html/tests.py
A zope.html/trunk/src/zope/html/widget.py
A zope.html/trunk/src/zope/html/zope_fckconfig.js
-=-
Added: zope.html/trunk/src/zope/html/DEPENDENCIES.cfg
===================================================================
--- zope.html/trunk/src/zope/html/DEPENDENCIES.cfg 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/DEPENDENCIES.cfg 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,10 @@
+zope.app
+zope.component
+zope.file
+zope.interface
+zope.mimetype
+
+# for the tests:
+zope.publisher
+zc.resourcelibrary
+zc.testlayer
Property changes on: zope.html/trunk/src/zope/html/DEPENDENCIES.cfg
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/README.txt
===================================================================
--- zope.html/trunk/src/zope/html/README.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/README.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,72 @@
+=========================
+HTML file editing support
+=========================
+
+This package contains support for editing HTML and XHTML inside a web
+page using the FCKeditor as a widget. This is a fairly simple
+application of FCKeditor, and simply instantiates a pre-configured
+editor for each widget. There are no options to control the editors
+individually.
+
+In creating this, we ran into some limitations of the editor that are
+worth being aware of. Noting these as limitations does not mean that
+other editors do any better; what's available seems to be a mixed bag.
+
+- The editor only deals with what can be contained inside a <body>
+ element; anything that goes outside that, including the <body> and
+ </body> tags, get lost or damaged. If there's any way to configure
+ FCKeditor to deal with such material, it isn't documented.
+
+- There's no real control of the HTML source; whitespace is not
+ preserved as a programmer would expect. That's acceptable in many
+ use cases, but not all. Applications should avoid using this widget
+ if the original whitespace must be maintained.
+
+Implementation problems
+-----------------------
+
+These are problems with the widget used to integrate FCKeditor rather
+than problems with FCKeditor itself. These should be dealt with.
+
+- The width of the editor is hardcoded; this should be either
+ configurable or the editor should stretch to fill the available
+ space. The sample uses of the FCKeditor don't seem to exhibit this
+ problem, so it can be better than it is.
+
+- The height of the editor should be configurable in a way similar to
+ the configuration of the basic textarea widget.
+
+Ideas for future development
+----------------------------
+
+These ideas might be interesting to pursue, but there are no specific
+plans to do so at this time:
+
+- Categorize the applications of the editor and provide alternate
+ toolbar configurations for those applications. There's a lot of
+ configurability in the editor itself, so it can be made to do
+ different things.
+
+- Add support for some of the other fancy client-side HTML editors,
+ and allow a user preference to select which to use for what
+ applications, including the option of disabling the GUI editors when
+ detailed control over the HTML is needed (or for luddite users who
+ don't like the GUI editors).
+
+ XINHA (http://xinha.python-hosting.com/) appears to be an
+ interesting option as well, and may be more usable for applications
+ that want more than editing of small HTML fragments, especially if
+ the user is fairly HTML-savvy.
+
+ HTMLArea (http://www.dynarch.com/projects/htmlarea/) may become
+ interesting at some point, but a rough reading at this time
+ indicates that XINHA may be a more reasonable route.
+
+More information about FCKeditor
+--------------------------------
+
+- http://www.fckeditor.net/
+
+- http://discerning.com/topics/software/ttw.html
+
+- http://www.phpsolvent.com/wordpress/?page_id=330
Property changes on: zope.html/trunk/src/zope/html/README.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/TODO.txt
===================================================================
--- zope.html/trunk/src/zope/html/TODO.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/TODO.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,9 @@
+Things that need to be done
+---------------------------
+
+- When encoding text, make sure everything is encoded (nothing is left
+ over), and deal with errors.
+
+- Make it possible for a user to override the use of the GUI editor
+ with a preference setting, possibly allowing a different editor to
+ be plugged in.
Property changes on: zope.html/trunk/src/zope/html/TODO.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/__init__.py
===================================================================
--- zope.html/trunk/src/zope/html/__init__.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/__init__.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1 @@
+# This directory is a Python package.
Added: zope.html/trunk/src/zope/html/browser.py
===================================================================
--- zope.html/trunk/src/zope/html/browser.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/browser.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,239 @@
+"""Browser views that implement editing and preview.
+
+"""
+__docformat__ = "reStructuredText"
+
+import datetime
+
+import zope.lifecycleevent
+import zope.event
+import zope.file.contenttype
+import zope.file.interfaces
+import zope.formlib.form
+import zope.html.field
+import zope.html.interfaces
+import zope.mimetype.interfaces
+
+from zope import mimetype
+from zope.interface.common import idatetime
+
+from i18n import _
+
+
+UNIVERSAL_CHARSETS = ("utf-8", "utf-16", "utf-16be", "utf-16le")
+
+
+def get_rendered_text(form):
+ f = form.context.open("rb")
+ data = f.read()
+ f.close()
+ ci = mimetype.interfaces.IContentInfo(form.context)
+ return ci.decode(data)
+
+
+class BaseEditingView(zope.formlib.form.Form):
+
+ # initial value helpers:
+
+ def get_rendered_isFragment(self):
+ info = zope.html.interfaces.IEditableHtmlInformation(self.context)
+ return info.isFragment
+
+ def get_rendered_encoding(self):
+ charset = self.context.parameters.get("charset")
+ if charset:
+ return zope.component.queryUtility(
+ mimetype.interfaces.ICharsetCodec, charset)
+ else:
+ return None
+
+ # field definitions:
+
+ view_fields = zope.formlib.form.Fields(
+ zope.html.interfaces.IEditableHtmlInformation,
+ )
+ view_fields["isFragment"].get_rendered = get_rendered_isFragment
+
+ encoding_field = zope.formlib.form.Field(
+ zope.schema.Choice(
+ __name__=_("encoding"),
+ title=_("Encoding"),
+ description=_("Character data encoding"),
+ source=mimetype.source.codecSource,
+ required=False,
+ ))
+ encoding_field.get_rendered = get_rendered_encoding
+
+ reencode_field = zope.formlib.form.Field(
+ zope.schema.Bool(
+ __name__="reencode",
+ title=_("Re-encode"),
+ description=_("Enable encoding the text using UTF-8"
+ " instead of the original encoding."),
+ default=False,
+ )
+ )
+
+ msgCannotDecodeText = _("Can't decode text for editing; please specify"
+ " the document encoding.")
+
+ def setUpWidgets(self, ignore_request=False):
+ ci = mimetype.interfaces.IContentInfo(self.context)
+ self.have_text = "charset" in ci.effectiveParameters
+ fields = [self.view_fields]
+ if self.have_text:
+ if self.get_rendered_isFragment():
+ text_field = self.fragment_field
+ else:
+ text_field = self.document_field
+ fields.append(text_field)
+ if ci.effectiveParameters.get("charset") not in UNIVERSAL_CHARSETS:
+ fields.append(self.reencode_field)
+ else:
+ if not self.status:
+ self.status = self.msgCannotDecodeText
+ fields.append(self.encoding_field)
+ self.form_fields = zope.formlib.form.Fields(*fields)
+ super(BaseEditingView, self).setUpWidgets(
+ ignore_request=ignore_request)
+
+ def save_validator(self, action, data):
+ errs = self.validate(None, data)
+ if not self.have_text:
+ ifaces = zope.interface.providedBy(
+ zope.security.proxy.removeSecurityProxy(self.context))
+ for iface in ifaces:
+ if mimetype.interfaces.IContentTypeInterface.providedBy(iface):
+ break
+ else:
+ # Should never happen!
+ assert False, "this view has been mis-registered!"
+ errs += zope.file.contenttype.validateCodecUse(
+ self.context, iface, data.get("encoding"),
+ self.encoding_field)
+ return errs
+
+ @zope.formlib.form.action(_("Save"), validator=save_validator)
+ def save(self, action, data):
+ changed = False
+ context = self.context
+
+ if self.have_text:
+ changed = self.handle_text_update(data)
+ else:
+ # maybe we have a new encoding?
+ codec = data["encoding"]
+ if codec is None:
+ self.status = self.msgCannotDecodeText
+ else:
+ if "charset" in context.parameters:
+ old_codec = zope.component.queryUtility(
+ mimetype.interfaces.ICharsetCodec,
+ context.parameters["charset"])
+ else:
+ old_codec = None
+ if getattr(old_codec, "name", None) != codec.name:
+ # use the preferred charset for the new codec
+ new_charset = zope.component.getUtility(
+ mimetype.interfaces.ICodecPreferredCharset,
+ codec.name)
+ parameters = dict(context.parameters)
+ parameters["charset"] = new_charset.name
+ context.parameters = parameters
+ changed = True
+
+ # Deal with the isFragment flag:
+ info = zope.html.interfaces.IEditableHtmlInformation(context)
+ isFragment = data["isFragment"]
+ if isFragment != info.isFragment:
+ info.isFragment = data["isFragment"]
+ changed = True
+
+ # Set the status message:
+ if changed:
+ # Should this get done if only the isFragment changed?
+ zope.event.notify(
+ zope.lifecycleevent.ObjectModifiedEvent(context))
+ formatter = self.request.locale.dates.getFormatter(
+ 'dateTime', 'medium')
+ now = datetime.datetime.now(idatetime.ITZInfo(self.request))
+ self.status = _("Updated on ${date_time}",
+ mapping={'date_time': formatter.format(now)})
+ elif not self.status:
+ self.status = _('No changes')
+
+ def handle_text_update(self, data):
+ text = data["text"]
+ if text != get_rendered_text(self):
+ ci = mimetype.interfaces.IContentInfo(self.context)
+ codec = ci.getCodec()
+ try:
+ textdata, consumed = codec.encode(text)
+ if consumed != len(text):
+ # XXX borked!
+ pass
+ except:
+ # The old encoding will no longer support the data, so
+ # switch to UTF-8:
+ if data.get("reencode"):
+ textdata = text.encode("utf-8")
+ parameters = dict(self.context.parameters)
+ parameters["charset"] = "utf-8"
+ self.context.parameters = parameters
+ else:
+ encoding = ci.effectiveParameters["charset"]
+ self.status = _(
+ "Can't encode text in current encoding (${encoding})"
+ "; check 'Re-encode' to enable conversion to UTF-8.",
+ mapping={"encoding": encoding})
+ self.form_reset = False
+ return False
+ # need to discard re-encode checkbox
+ f = self.context.open("wb")
+ f.write(textdata)
+ f.close()
+ return True
+
+
+class HtmlEditingView(BaseEditingView):
+ """Editing view for HTML content."""
+
+ document_field = zope.formlib.form.Field(
+ zope.html.field.HtmlDocument(
+ __name__="text",
+ title=_("Text"),
+ description=_("Text of the document being edited."),
+ )
+ )
+ document_field.get_rendered = get_rendered_text
+
+ fragment_field = zope.formlib.form.Field(
+ zope.html.field.HtmlFragment(
+ __name__="text",
+ title=_("Text"),
+ description=_("Text of the fragment being edited."),
+ )
+ )
+ fragment_field.get_rendered = get_rendered_text
+
+
+class XhtmlEditingView(BaseEditingView):
+ """Editing view for XHTML content."""
+
+ document_field = zope.formlib.form.Field(
+ zope.html.field.XhtmlDocument(
+ __name__="text",
+ title=_("Text"),
+ description=_("Text of the document being edited."),
+ )
+ )
+ document_field.get_rendered = get_rendered_text
+
+ fragment_field = zope.formlib.form.Field(
+ zope.html.field.XhtmlFragment(
+ __name__="text",
+ title=_("Text"),
+ description=_("Text of the fragment being edited."),
+ )
+ )
+ fragment_field.get_rendered = get_rendered_text
Added: zope.html/trunk/src/zope/html/browser.txt
===================================================================
--- zope.html/trunk/src/zope/html/browser.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/browser.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,137 @@
+======================
+Views on editable HTML
+======================
+
+Let's start by uploading some HTML to create a file object::
+
+ >>> import StringIO
+ >>> sio = StringIO.StringIO("This is a <em>fragment</em>."
+ ... " There's one 8-bit Latin-1 character: \xd8.")
+
+ >>> from zope.testbrowser.testing import Browser
+ >>> browser = Browser()
+ >>> browser.addHeader("Authorization", "Basic user:userpw")
+ >>> browser.addHeader("Accept-Language", "en-US")
+ >>> browser.open("http://localhost/@@+/zope.file.File")
+
+ >>> ctrl = browser.getControl(name="form.data")
+ >>> ctrl.mech_control.add_file(sio, "text/html", "sample.html")
+ >>> browser.getControl("Add").click()
+
+We can see that the MIME handlers have marked this as HTML content::
+
+ >>> import zope.mimetype.types
+ >>> file = getRootFolder()["sample.html"]
+ >>> zope.mimetype.types.IContentTypeTextHtml.providedBy(file)
+ True
+
+The "Edit" view can be used to check and modify the "Is fragment?"
+field, which is stored by the views in an annotation on the object.
+The particular fragment we uploaded here should be see as a fragment
+by default::
+
+ >>> browser.getLink("sample.html").click()
+ >>> browser.getLink("Edit").click()
+
+ >>> browser.open("http://localhost/sample.html/@@htmledit.html")
+ >>> ctrl = browser.getControl(name="form.isFragment")
+ >>> ctrl.value
+ True
+
+The setting can be toggle by unchecking the checkbox and clicking
+"Save"::
+
+ >>> ctrl.value = False
+ >>> browser.getControl("Save").click()
+ >>> ctrl = browser.getControl(name="form.isFragment")
+ >>> ctrl.value
+ False
+
+The edit view also allows editing of the HTML content if the document
+can be decoded. If the encoding of the document is not known, the
+document cannot be edited by the user is prompted to select an
+encoding that should be used.
+
+Our example document does not have a specified encoding, so we expect
+the form to indicate that the encoded is needed, and to allow the user
+to select and encoding. Let's reload the form to get rid of the
+"Updated..." message so we can see what the user is told::
+
+ >>> browser.getLink("Edit").click()
+
+ >>> print browser.contents
+ <...Can't decode text for editing; please specify the document encoding...
+
+ >>> ctrl = browser.getControl(name="form.encoding")
+ >>> ctrl.value
+ ['']
+
+The user can then select an encoding::
+
+ >>> ctrl.value = ["utf-8"]
+ >>> browser.getControl("Save").click()
+
+Since we just selected an encoding that doesn't work with the Latin-1
+data we uploaded for the file, we're told that that encoding is not
+acceptable::
+
+
+ >>> print browser.contents
+ <...Selected encoding cannot decode document...
+
+We need to select an encoding that actually makes sense for the data
+that we've uploaded::
+
+ >>> ctrl = browser.getControl(name="form.encoding")
+ >>> ctrl.value = ["iso-8859-1"]
+ >>> browser.getControl("Save").click()
+
+Now that the encoding has been saved, the document can be encoded and
+edited, and the encoding selection will no longer be available on the
+form::
+
+ >>> browser.getControl(name="form.encoding")
+ Traceback (most recent call last):
+ ...
+ LookupError: name 'form.encoding'
+
+Since our selected encoding does not support all Unicode characters,
+there is an option available to allow re-encoding of the document if
+the content being saved after editing cannot be encoded in the
+original encoding of the document. The value of this option defaults
+to False since the user needs to be aware that the document encoding
+may be modified::
+
+ >>> browser.getControl(name="form.reencode").value
+ False
+
+If we edit the text such that characters are included that cannot be
+encoded in the current encoding and try to save our changes without
+allowing re-encoding, we see a notification that the document can't be
+encoded in the original encoding and that re-encoding is needed::
+
+ >>> ctrl = browser.getControl(name="form.text")
+ >>> ctrl.value = u"\u3060\u3051\u306e\u30b5\u30a4\u30c8".encode("utf-8")
+
+ >>> browser.getControl("Save").click()
+
+ >>> print browser.contents
+ <...Can't encode text in current encoding...
+
+At this point, we can select the "Re-encode" option to allow the text
+to be saved in an encoding other than the original; this would allow
+us to save any text::
+
+ >>> browser.getControl(name="form.reencode").value = True
+ >>> browser.getControl("Save").click()
+
+ >>> print browser.contents
+ <...Updated on ...
+
+If we now take a look at the "Content Type" view for the file, we see
+that the encoding has been updated to UTF-8::
+
+ >>> browser.getLink("Content Type").click()
+
+ >>> browser.getControl(name="form.encoding").value
+ ['utf-8']
Property changes on: zope.html/trunk/src/zope/html/browser.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/configure.zcml
===================================================================
--- zope.html/trunk/src/zope/html/configure.zcml 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/configure.zcml 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,74 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:browser="http://namespaces.zope.org/browser"
+ i18n_domain="zope.html"
+ >
+
+ <browser:view
+ class=".browser.HtmlEditingView"
+ for="zope.mimetype.types.IContentTypeTextHtml"
+ name="htmledit.html"
+ menu="zmi_views" title="Edit"
+ permission="zope.ManageContent"
+ />
+
+ <browser:view
+ class=".browser.XhtmlEditingView"
+ for="zope.mimetype.types.IContentTypeXhtml"
+ name="htmledit.html"
+ menu="zmi_views" title="Edit"
+ permission="zope.ManageContent"
+ />
+
+ <adapter
+ for="zope.mimetype.types.IContentTypeTextHtml"
+ factory=".docinfo.EditableHtmlInformation"
+ trusted="yes"
+ />
+
+ <adapter
+ for="zope.mimetype.types.IContentTypeXhtml"
+ factory=".docinfo.EditableHtmlInformation"
+ trusted="yes"
+ />
+
+ <class class=".docinfo.EditableHtmlInformation">
+ <require
+ permission="zope.ManageContent"
+ set_attributes="isFragment"
+ />
+ <require
+ permission="zope.View"
+ attributes="isFragment"
+ />
+ </class>
+
+ <view
+ type="zope.publisher.interfaces.browser.IBrowserRequest"
+ for=".field.IHtmlFragmentField"
+ provides="zope.app.form.interfaces.IInputWidget"
+ factory=".widget.FckeditorWidget"
+ permission="zope.Public"
+ />
+
+ <view
+ type="zope.publisher.interfaces.browser.IBrowserRequest"
+ for=".field.IXhtmlFragmentField"
+ provides="zope.app.form.interfaces.IInputWidget"
+ factory=".widget.FckeditorWidget"
+ permission="zope.Public"
+ />
+
+ <resourceLibrary name="fckeditor">
+ <directory
+ source="fckeditor"
+ include="fckeditor.js"
+ />
+ </resourceLibrary>
+
+ <browser:resource
+ file="zope_fckconfig.js"
+ name="zope_fckconfig.js"
+ />
+
+</configure>
Added: zope.html/trunk/src/zope/html/docinfo.py
===================================================================
--- zope.html/trunk/src/zope/html/docinfo.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/docinfo.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,100 @@
+"""Helper functions to get information on the current document.
+
+"""
+__docformat__ = "reStructuredText"
+
+import HTMLParser
+import xml.parsers.expat
+
+import persistent.dict
+
+import zope.annotation.interfaces
+import zope.file.interfaces
+import zope.html.interfaces
+import zope.interface
+import zope.mimetype.types
+
+
+# Use the package name as the annotation key:
+KEY = __name__.rsplit(".", 1)[0]
+
+
+class EditableHtmlInformation(object):
+
+ zope.interface.implements(
+ zope.html.interfaces.IEditableHtmlInformation)
+
+ _annotations = None
+
+ def __init__(self, file):
+ self.__parent__ = file
+ self.context = file
+
+ def _get_annotation(self):
+ if self._annotations is None:
+ self._annotations = zope.annotation.interfaces.IAnnotations(
+ self.context)
+ return self._annotations.get(KEY)
+
+ def _get_isFragment(self):
+ annotation = self._get_annotation()
+ if annotation is not None:
+ if "is_fragment" in annotation:
+ return annotation["is_fragment"]
+ # compute from data
+ f = zope.file.interfaces.IFile(self.context)
+ if zope.mimetype.types.IContentTypeTextHtml.providedBy(self.context):
+ isfrag = _is_html_fragment(f)
+ else:
+ isfrag = _is_xhtml_fragment(f)
+ return isfrag
+
+ def _set_isFragment(self, value):
+ value = bool(value)
+ if value != self.isFragment:
+ annotation = self._get_annotation()
+ if annotation is None:
+ annotation = persistent.dict.PersistentDict()
+ annotation["is_fragment"] = value
+ self._annotations[KEY] = annotation
+
+ isFragment = property(_get_isFragment, _set_isFragment)
+
+
+def _is_xhtml_fragment(file):
+ f = file.open("r")
+ p = xml.parsers.expat.ParserCreate()
+ h = HTMLContentSniffer()
+ p.StartElementHandler = h.handle_starttag
+ p.CharacterDataHandler = h.handle_data
+ try:
+ p.Parse(f.read(2048))
+ except xml.parsers.expat.ExpatError:
+ # well-formedness failure; don't even pretend it might be a
+ # document (might not be a useful fragment either, though)
+ return True
+ return p.leading_content or p.first_element != "html"
+
+
+def _is_html_fragment(file):
+ """Return True iff `file` represents an HTML fragment."""
+ f = file.open("r")
+ p = HTMLContentSniffer()
+ p.feed(f.read(2048))
+ return p.leading_content or p.first_element != "html"
+
+
+class HTMLContentSniffer(HTMLParser.HTMLParser):
+
+ first_element = None
+ leading_content = None
+
+ def handle_starttag(self, name, attrs):
+ if not self.first_element:
+ self.first_element = name
+
+ def handle_data(self, data):
+ if not self.first_element:
+ data = data.strip()
+ if data:
+ self.leading_content = True
Added: zope.html/trunk/src/zope/html/docinfo.txt
===================================================================
--- zope.html/trunk/src/zope/html/docinfo.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/docinfo.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,59 @@
+======================================
+Management of supplemental information
+======================================
+
+The `zope.html` package provides additional views on files containing
+HTML and XHTML data that allow editing the files over the web. The
+files may contain either complete documents or fragments that may be
+composed into larger documents. Preview views are also provided.
+
+The editing and preview views rely on getting supplemental information
+about the file being edited using the `IEditableHtmlInformation`
+adapter for the file. That adapter uses annotations on the content
+object to store information that needs to be persisted.
+
+The `IEditableHtmlInformation` interface is very simple; there's only
+one field defined, and it's a simple boolean value: whether the file
+should be treated as a fragment or not. Let's create a simple content
+object that we can use for testing::
+
+ >>> import zope.file.file
+ >>> import zope.interface
+ >>> import zope.annotation
+
+ >>> class File(zope.file.file.File):
+ ... zope.interface.implements(
+ ... zope.annotation.IAttributeAnnotatable)
+ ...
+ ... def __init__(self, text=None):
+ ... self.mimeType = "text/html"
+ ... self.parameters = {"charset": "utf-8"}
+ ... f = self.open("wb")
+ ... f.write(text)
+ ... f.close()
+
+Let's create a file and the corresponding `IEditableHtmlInformation`
+object::
+
+ >>> import zope.html.docinfo
+
+ >>> file = File("This is a <em>fragment</em>.")
+ >>> info = zope.html.docinfo.EditableHtmlInformation(file)
+
+We can now check that the initial value of the `isFragment` attribute
+is computed reasonably::
+
+ >>> info.isFragment
+ True
+
+The user can cause the `isFragment` flag to be toggled from the UI, so
+it should remember the current state of the flag::
+
+ >>> info.isFragment = False
+ >>> info.isFragment
+ False
+
+A new instance of the `IEditableHtmlInformation` instance should also remember the last value of the setting::
+
+ >>> zope.html.docinfo.EditableHtmlInformation(file).isFragment
+ False
Property changes on: zope.html/trunk/src/zope/html/docinfo.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/fckeditor/_documentation.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_documentation.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_documentation.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,30 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+-->
+<html>
+ <head>
+ <title>FCKeditor - Documentation</title>
+ <style>
+ BODY { FONT-FAMILY: Arial, Verdana, Sans-Serif }
+ P { MARGIN-LEFT: 20px }
+ </style>
+ </head>
+ <body>
+ <h1>FCKeditor Documentation</h1>
+ <p>You can find all the available documentation for FCKeditor online, at our wiki
+ web site:</p>
+ <blockquote dir="ltr" style="MARGIN-RIGHT: 0px">
+ <p><a href="http://wiki.fckeditor.net/">http://wiki.fckeditor.net/</a></p>
+ </blockquote>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/fckplugin.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/fckplugin.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/fckplugin.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,34 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckplugin.js
+ * This is the sample plugin definition file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Register the related commands.
+FCKCommands.RegisterCommand( 'My_Find' , new FCKDialogCommand( FCKLang['DlgMyFindTitle'] , FCKLang['DlgMyFindTitle'] , FCKConfig.PluginsPath + 'findreplace/find.html' , 340, 170 ) ) ;
+FCKCommands.RegisterCommand( 'My_Replace' , new FCKDialogCommand( FCKLang['DlgMyReplaceTitle'], FCKLang['DlgMyReplaceTitle'] , FCKConfig.PluginsPath + 'findreplace/replace.html', 340, 200 ) ) ;
+
+// Create the "Find" toolbar button.
+var oFindItem = new FCKToolbarButton( 'My_Find', FCKLang['DlgMyFindTitle'] ) ;
+oFindItem.IconPath = FCKConfig.PluginsPath + 'findreplace/find.gif' ;
+
+FCKToolbarItems.RegisterItem( 'My_Find', oFindItem ) ; // 'My_Find' is the name used in the Toolbar config.
+
+// Create the "Replace" toolbar button.
+var oReplaceItem = new FCKToolbarButton( 'My_Replace', FCKLang['DlgMyReplaceTitle'] ) ;
+oReplaceItem.IconPath = FCKConfig.PluginsPath + 'findreplace/replace.gif' ;
+
+FCKToolbarItems.RegisterItem( 'My_Replace', oReplaceItem ) ; // 'My_Replace' is the name used in the Toolbar config.
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/find.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/find.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/find.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/find.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/find.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,168 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: find.html
+ * This is the sample "Find" plugin window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+function OnLoad()
+{
+ // Whole word is available on IE only.
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ document.getElementById('divWord').style.display = '' ;
+
+ // First of all, translate the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage( document ) ;
+
+ window.parent.SetAutoSize( true ) ;
+}
+
+function btnStat(frm)
+{
+ document.getElementById('btnFind').disabled =
+ ( document.getElementById('txtFind').value.length == 0 ) ;
+}
+
+function ReplaceTextNodes( parentNode, regex, replaceValue, replaceAll )
+{
+ for ( var i = 0 ; i < parentNode.childNodes.length ; i++ )
+ {
+ var oNode = parentNode.childNodes[i] ;
+ if ( oNode.nodeType == 3 )
+ {
+ var sReplaced = oNode.nodeValue.replace( regex, replaceValue ) ;
+ if ( oNode.nodeValue != sReplaced )
+ {
+ oNode.nodeValue = sReplaced ;
+ if ( ! replaceAll )
+ return true ;
+ }
+ }
+ else
+ {
+ if ( ReplaceTextNodes( oNode, regex, replaceValue ) )
+ return true ;
+ }
+ }
+ return false ;
+}
+
+function GetRegexExpr()
+{
+ if ( document.getElementById('chkWord').checked )
+ var sExpr = '\\b' + document.getElementById('txtFind').value + '\\b' ;
+ else
+ var sExpr = document.getElementById('txtFind').value ;
+
+ return sExpr ;
+}
+
+function GetCase()
+{
+ return ( document.getElementById('chkCase').checked ? '' : 'i' ) ;
+}
+
+function Ok()
+{
+ if ( document.getElementById('txtFind').value.length == 0 )
+ return ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ FindIE() ;
+ else
+ FindGecko() ;
+}
+
+var oRange = null ;
+
+function FindIE()
+{
+ if ( oRange == null )
+ oRange = oEditor.FCK.EditorDocument.body.createTextRange() ;
+
+ var iFlags = 0 ;
+
+ if ( chkCase.checked )
+ iFlags = iFlags | 4 ;
+
+ if ( chkWord.checked )
+ iFlags = iFlags | 2 ;
+
+ var bFound = oRange.findText( document.getElementById('txtFind').value, 1, iFlags ) ;
+
+ if ( bFound )
+ {
+ oRange.scrollIntoView() ;
+ oRange.select() ;
+ oRange.collapse(false) ;
+ oLastRangeFound = oRange ;
+ }
+ else
+ {
+ oRange = null ;
+ alert( oEditor.FCKLang.DlgFindNotFoundMsg ) ;
+ }
+}
+
+function FindGecko()
+{
+ var bCase = document.getElementById('chkCase').checked ;
+ var bWord = document.getElementById('chkWord').checked ;
+
+ // window.find( searchString, caseSensitive, backwards, wrapAround, wholeWord, searchInFrames, showDialog ) ;
+ oEditor.FCK.EditorWindow.find( document.getElementById('txtFind').value, bCase, false, false, bWord, false, false ) ;
+
+}
+ </script>
+ </head>
+ <body onload="OnLoad()" scroll="no" style="OVERFLOW: hidden">
+ <div align="center">
+ This is my Plugin!
+ </div>
+ <table cellSpacing="3" cellPadding="2" width="100%" border="0">
+ <tr>
+ <td nowrap>
+ <label for="txtFind" fckLang="DlgMyReplaceFindLbl">Find what:</label>
+ </td>
+ <td width="100%">
+ <input id="txtFind" onkeyup="btnStat(this.form)" style="WIDTH: 100%" tabIndex="1" type="text">
+ </td>
+ <td>
+ <input id="btnFind" style="WIDTH: 100%; PADDING-RIGHT: 5px; PADDING-LEFT: 5px" disabled
+ onclick="Ok();" type="button" value="Find" fckLang="DlgMyFindFindBtn">
+ </td>
+ </tr>
+ <tr>
+ <td valign="bottom" colSpan="3">
+ <input id="chkCase" tabIndex="3" type="checkbox"><label for="chkCase" fckLang="DlgMyReplaceCaseChk">Match
+ case</label>
+ <br>
+ <div id="divWord" style="DISPLAY: none">
+ <input id="chkWord" tabIndex="4" type="checkbox"><label for="chkWord" fckLang="DlgMyReplaceWordChk">Match
+ whole word</label>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/en.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/en.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/en.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,29 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: en.js
+ * English language file for the sample plugin.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKLang['DlgMyReplaceTitle'] = 'Plugin - Replace' ;
+FCKLang['DlgMyReplaceFindLbl'] = 'Find what:' ;
+FCKLang['DlgMyReplaceReplaceLbl'] = 'Replace with:' ;
+FCKLang['DlgMyReplaceCaseChk'] = 'Match case' ;
+FCKLang['DlgMyReplaceReplaceBtn'] = 'Replace' ;
+FCKLang['DlgMyReplaceReplAllBtn'] = 'Replace All' ;
+FCKLang['DlgMyReplaceWordChk'] = 'Match whole word' ;
+
+FCKLang['DlgMyFindTitle'] = 'Plugin - Find' ;
+FCKLang['DlgMyFindFindBtn'] = 'Find' ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/fr.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/fr.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/fr.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,29 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fr.js
+ * French language file for the sample plugin.
+ *
+ * File Authors:
+ * Benjamin Cartereau (b.cartereau at infass.com)
+ */
+
+FCKLang['DlgMyReplaceTitle'] = 'Plugin - Remplacer' ;
+FCKLang['DlgMyReplaceFindLbl'] = 'Chercher:' ;
+FCKLang['DlgMyReplaceReplaceLbl'] = 'Remplacer par:' ;
+FCKLang['DlgMyReplaceCaseChk'] = 'Respecter la casse' ;
+FCKLang['DlgMyReplaceReplaceBtn'] = 'Remplacer' ;
+FCKLang['DlgMyReplaceReplAllBtn'] = 'Remplacer Tout' ;
+FCKLang['DlgMyReplaceWordChk'] = 'Mot entier' ;
+
+FCKLang['DlgMyFindTitle'] = 'Plugin - Chercher' ;
+FCKLang['DlgMyFindFindBtn'] = 'Chercher' ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/it.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/it.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/lang/it.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,29 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: it.js
+ * Italian language file for the sample plugin.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKLang['DlgMyReplaceTitle'] = 'Plugin - Sostituisci' ;
+FCKLang['DlgMyReplaceFindLbl'] = 'Trova:' ;
+FCKLang['DlgMyReplaceReplaceLbl'] = 'Sostituisci con:' ;
+FCKLang['DlgMyReplaceCaseChk'] = 'Maiuscole/minuscole' ;
+FCKLang['DlgMyReplaceReplaceBtn'] = 'Sostituisci' ;
+FCKLang['DlgMyReplaceReplAllBtn'] = 'Sostituisci tutto' ;
+FCKLang['DlgMyReplaceWordChk'] = 'Parola intera' ;
+
+FCKLang['DlgMyFindTitle'] = 'Plugin - Cerca' ;
+FCKLang['DlgMyFindFindBtn'] = 'Cerca' ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/replace.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/replace.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/replace.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/replace.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/findreplace/replace.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: replace.html
+ * This is the sample "Replace" plugin window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+function OnLoad()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage( document ) ;
+
+ window.parent.SetAutoSize( true ) ;
+}
+
+function btnStat(frm)
+{
+ document.getElementById('btnReplace').disabled =
+ document.getElementById('btnReplaceAll').disabled =
+ ( document.getElementById('txtFind').value.length == 0 ) ;
+}
+
+function ReplaceTextNodes( parentNode, regex, replaceValue, replaceAll, hasFound )
+{
+ for ( var i = 0 ; i < parentNode.childNodes.length ; i++ )
+ {
+ var oNode = parentNode.childNodes[i] ;
+ if ( oNode.nodeType == 3 )
+ {
+ var sReplaced = oNode.nodeValue.replace( regex, replaceValue ) ;
+ if ( oNode.nodeValue != sReplaced )
+ {
+ oNode.nodeValue = sReplaced ;
+ if ( ! replaceAll )
+ return true ;
+ hasFound = true ;
+ }
+ }
+
+ hasFound = ReplaceTextNodes( oNode, regex, replaceValue, replaceAll, hasFound ) ;
+ if ( ! replaceAll && hasFound )
+ return true ;
+ }
+
+ return hasFound ;
+}
+
+function GetRegexExpr()
+{
+ if ( document.getElementById('chkWord').checked )
+ var sExpr = '\\b' + document.getElementById('txtFind').value + '\\b' ;
+ else
+ var sExpr = document.getElementById('txtFind').value ;
+
+ return sExpr ;
+}
+
+function GetCase()
+{
+ return ( document.getElementById('chkCase').checked ? '' : 'i' ) ;
+}
+
+function Replace()
+{
+ var oRegex = new RegExp( GetRegexExpr(), GetCase() ) ;
+ ReplaceTextNodes( oEditor.FCK.EditorDocument.body, oRegex, document.getElementById('txtReplace').value, false ) ;
+}
+
+function ReplaceAll()
+{
+ var oRegex = new RegExp( GetRegexExpr(), GetCase() + 'g' ) ;
+ ReplaceTextNodes( oEditor.FCK.EditorDocument.body, oRegex, document.getElementById('txtReplace').value, true ) ;
+ window.parent.Cancel() ;
+}
+ </script>
+ </head>
+ <body onload="OnLoad()" scroll="no" style="OVERFLOW: hidden">
+ <div align="center">
+ This is my Plugin!
+ </div>
+ <table cellSpacing="3" cellPadding="2" width="100%" border="0">
+ <tr>
+ <td noWrap><label for="txtFind" fckLang="DlgMyReplaceFindLbl">Find what:</label>
+ </td>
+ <td width="100%"><input id="txtFind" onkeyup="btnStat(this.form)" style="WIDTH: 100%" tabIndex="1" type="text">
+ </td>
+ <td><input id="btnReplace" style="WIDTH: 100%" disabled onclick="Replace();" type="button"
+ value="Replace" fckLang="DlgMyReplaceReplaceBtn">
+ </td>
+ </tr>
+ <tr>
+ <td vAlign="top" nowrap><label for="txtReplace" fckLang="DlgMyReplaceReplaceLbl">Replace
+ with:</label>
+ </td>
+ <td vAlign="top"><input id="txtReplace" style="WIDTH: 100%" tabIndex="2" type="text">
+ </td>
+ <td><input id="btnReplaceAll" disabled onclick="ReplaceAll()" type="button" value="Replace All"
+ fckLang="DlgMyReplaceReplAllBtn">
+ </td>
+ </tr>
+ <tr>
+ <td vAlign="bottom" colSpan="3"> <input id="chkCase" tabIndex="3" type="checkbox"><label for="chkCase" fckLang="DlgMyReplaceCaseChk">Match
+ case</label>
+ <br>
+ <input id="chkWord" tabIndex="4" type="checkbox"><label for="chkWord" fckLang="DlgMyReplaceWordChk">Match
+ whole word</label>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/samples/fckplugin.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/samples/fckplugin.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/_plugins/samples/fckplugin.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,24 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckplugin.js
+ * This is a sample plugin definition file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Here we define our custom Style combo, with a custom widths.
+var oMyBigStyleCombo = new FCKToolbarStyleCombo() ;
+oMyBigStyleCombo.FieldWidth = 250 ;
+oMyBigStyleCombo.PanelWidth = 300 ;
+FCKToolbarItems.RegisterItem( 'My_BigStyle', oMyBigStyleCombo ) ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1 @@
+<application ID="fck"/>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa.code
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa.code 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/afp/fck.afpa.code 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,121 @@
+DEFINE CLASS fckeditor AS custom
+ cInstanceName =""
+ BasePath =""
+ cWIDTH =""
+ cHEIGHT =""
+ ToolbarSet =""
+ cValue=""
+ DIMENSION aConfig(10,2)
+
+&& -----------------------------------------------------------------------
+ FUNCTION fckeditor( tcInstanceName )
+ LOCAL lnLoop,lnLoop2
+ THIS.cInstanceName = tcInstanceName
+ THIS.BasePath = '../../../FCKeditor/'
+ THIS.cWIDTH = '100%'
+ THIS.cHEIGHT = '200'
+ THIS.ToolbarSet = 'Default'
+ THIS.cValue = ''
+ FOR lnLoop=1 TO 10
+ FOR lnLoop2=1 TO 2
+ THIS.aConfig(lnLoop,lnLoop2) = ""
+ NEXT
+ NEXT
+ RETURN
+ ENDFUNC
+
+
+&& -----------------------------------------------------------------------
+ FUNCTION CREATE()
+ RETURN(THIS.CreateHtml())
+ ENDFUNC
+
+&& -----------------------------------------------------------------------
+ FUNCTION CreateHtml()
+ LOCAL html
+ LOCAL lcLink
+
+ HtmlValue = THIS.cValue && HTMLSPECIALCHARS()
+
+ html = [<div>]
+ IF THIS.IsCompatible()
+ lcLink = THIS.BasePath+[editor/fckeditor.html?InstanceName=]+THIS.cInstanceName
+
+ IF ( THIS.ToolbarSet # '' )
+ lcLink = lcLink + [Toolbar=]+THIS.ToolbarSet
+ ENDIF
+
+&& Render the LINKED HIDDEN FIELD.
+ html = html + [<input type="hidden" id="]+THIS.cInstanceName +[" name="]+THIS.cInstanceName +[" value="]+HtmlValue+[">]
+
+&& Render the configurations HIDDEN FIELD.
+ html = html + [<input type="hidden" id="]+THIS.cInstanceName +[___Config" value="]+THIS.GetConfigFieldString() + [">] +CHR(13)+CHR(10)
+
+&& Render the EDITOR IFRAME.
+ html = html + [<iframe id="]+THIS.cInstanceName +[___Frame" src="]+lcLink+[" width="]+THIS.cWIDTH+[" height="]+THIS.cHEIGHT+[" frameborder="no" scrolling="no"></iframe>]
+ ELSE
+ IF ( AT("%", THIS.cWIDTH)=0 )
+ WidthCSS = THIS.cWIDTH + 'px'
+ ELSE
+ WidthCSS = THIS.cWIDTH
+ ENDIF
+
+ IF ( AT("%",THIS.cHEIGHT)=0 )
+ HeightCSS = THIS.cHEIGHT + 'px'
+ ELSE
+ HeightCSS = THIS.cHEIGHT
+ ENDIF
+
+ html = html + [<textarea name="]+THIS.cInstanceName +[" rows="4" cols="40" style="width: ]+WidthCSS+[ height: ]+HeightCSS+[" wrap="virtual">]+HtmlValue+[</textarea>]
+ ENDIF
+
+ html = html + [</div>]
+
+ RETURN (html)
+ ENDFUNC
+
+
+&& -----------------------------------------------------------------------
+ FUNCTION IsCompatible()
+ LOCAL llRetval
+ LOCAL sAgent
+
+ llRetval=.F.
+
+ sAgent= LOWER(Request.ServerVariables("HTTP_USER_AGENT"))
+
+ IF AT("msie",sAgent) >0 .AND. AT("mac",sAgent)=0 .AND. AT("opera",sAgent)=0
+ iVersion=VAL(SUBSTR(sAgent,AT("msie",sAgent)+5,3))
+ llRetval= iVersion > 5.5
+ ELSE
+ IF AT("gecko",sAgent)>0
+ iVersion=VAL(SUBSTR(sAgent,AT("gecko/",sAgent)+6,8))
+ llRetval =iVersion > 20030210
+ ENDIF
+ ENDIF
+ RETURN (llRetval)
+ ENDFUNC
+
+&& -----------------------------------------------------------------------
+ FUNCTION GetConfigFieldString()
+ LOCAL sParams
+ LOCAL bFirst
+ LOCAL sKey
+ sParams = ""
+ bFirst = .T.
+ FOR lnLoop=1 TO 10 && ALEN(this.aconfig)
+ IF !EMPTY(THIS.aConfig(lnLoop,1))
+ IF bFirst = .F.
+ sParams = sParams + "&"
+ ELSE
+ bFirst = .F.
+ ENDIF
+ sParams = sParams +THIS.aConfig(lnLoop,1)+[=]+THIS.aConfig(lnLoop,2)
+ ELSE
+ EXIT
+ ENDIF
+ NEXT
+ RETURN(sParams)
+ ENDFUNC
+ENDDEFINE
+
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sample01.afp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sample01.afp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sample01.afp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,52 @@
+<%
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2004 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: sampleposteddata.php
+ * This page lists the data posted by a form.
+ *
+ * Version: 1.0
+ * Modified: 2005-07-01
+ *
+ * File Authors: Soenke Freitag (www.afp-hosting.de)
+ *
+%>
+
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - AFP - Sample 1</h1>
+ This sample displays a normal HTML form with an FCKeditor with full features enabled.
+ <hr>
+ <form action="sampleposteddata.afp" method="post" target="_blank">
+<%
+
+sBasePath="../../fckeditor/" && Change this to your local path
+
+lcText=[This is some <strong>sample text</strong>. You are using ]
+lcText=lcText+[<a href='http://www.fckeditor.net/'>FCKeditor</a>.]
+
+oFCKeditor = CREATEOBJECT("FCKeditor")
+oFCKeditor.fckeditor("FCKeditor1")
+oFCKeditor.BasePath = sBasePath
+oFCKeditor.cValue = lcText
+
+? oFCKeditor.Create()
+
+%>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sampleposteddata.afp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sampleposteddata.afp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/afp/sampleposteddata.afp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,54 @@
+<%
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2004 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: sampleposteddata.php
+ * This page lists the data posted by a form.
+ *
+ * Version: 1.0
+ * Modified: 2005-07-01
+ *
+ * File Authors: Soenke Freitag (www.afp-hosting.de)
+ *
+%>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td nowrap>Field Name </td>
+ <td>Value</td>
+ </tr>
+<%
+ lcForm=REQUEST.Form()
+ lcForm=STRTRAN(lcForm,"&",CHR(13)+CHR(10))
+
+ FOR lnLoop=1 TO MEMLINES(lcForm)
+ lcZeile=ALLTRIM(MLINE(lcForm,lnLoop))
+ IF AT("=",lcZeile)>0
+ lcVariable=UPPER(ALLTRIM(LEFT(lcZeile,AT("=",lcZeile)-1)))
+ lcWert=ALLTRIM(RIGHT(lcZeile,LEN(lcZeile)-AT("=",lcZeile)))
+ lcWert=Server.UrlDecode( lcWert )
+
+ ? [<tr><td>]+lcVariable+[ =</td><td>]+lcWert+[</td></tr>]
+ ENDIF
+ NEXT
+%>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample01.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample01.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample01.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,55 @@
+<%@ CodePage=65001 Language="VBScript"%>
+<% Option Explicit %>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample01.asp
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<% ' You must set "Enable Parent Paths" on your web site in order this relative include to work. %>
+<!-- #INCLUDE file="../../fckeditor.asp" -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - ASP - Sample 1</h1>
+ This sample displays a normal HTML form with an FCKeditor with full features
+ enabled.
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+<%
+' Automatically calculates the editor base path based on the _samples directory.
+' This is usefull only for these samples. A real application should use something like this:
+' oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+Dim sBasePath
+sBasePath = Request.ServerVariables("PATH_INFO")
+sBasePath = Left( sBasePath, InStrRev( sBasePath, "/_samples" ) )
+
+Dim oFCKeditor
+Set oFCKeditor = New FCKeditor
+oFCKeditor.BasePath = sBasePath
+oFCKeditor.Value = "This is some <strong>sample text</strong>. You are using <a href=""http://www.fckeditor.net/"">FCKeditor</a>."
+oFCKeditor.Create "FCKeditor1"
+%>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample02.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample02.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample02.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,104 @@
+<%@ CodePage=65001 Language="VBScript"%>
+<% Option Explicit %>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample02.asp
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<% ' You must set "Enable Parent Paths" on your web site in order this relative include to work. %>
+<!-- #INCLUDE file="../../fckeditor.asp" -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbLanguages' ) ;
+ for ( code in editorInstance.Language.AvailableLanguages )
+ {
+ AddComboOption( oCombo, editorInstance.Language.AvailableLanguages[code] + ' (' + code + ')', code ) ;
+ }
+ oCombo.value = editorInstance.Language.ActiveLanguage.Code ;
+}
+
+function AddComboOption(combo, optionText, optionValue)
+{
+ var oOption = document.createElement("OPTION") ;
+
+ combo.options.add(oOption) ;
+
+ oOption.innerHTML = optionText ;
+ oOption.value = optionValue ;
+
+ return oOption ;
+}
+
+function ChangeLanguage( languageCode )
+{
+ window.location.href = window.location.pathname + "?Lang=" + languageCode ;
+}
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - ASP - Sample 2</h1>
+ This sample shows the editor in all its available languages.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select a language:
+ </td>
+ <td>
+ <select id="cmbLanguages" onchange="ChangeLanguage(this.value);">
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+<%
+' Automatically calculates the editor base path based on the _samples directory.
+' This is usefull only for these samples. A real application should use something like this:
+' oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+Dim sBasePath
+sBasePath = Request.ServerVariables("PATH_INFO")
+sBasePath = Left( sBasePath, InStrRev( sBasePath, "/_samples" ) )
+
+Dim oFCKeditor
+Set oFCKeditor = New FCKeditor
+oFCKeditor.BasePath = sBasePath
+
+If Request.QueryString("Lang") = "" Then
+ oFCKeditor.Config("AutoDetectLanguage") = True
+ oFCKeditor.Config("DefaultLanguage") = "en"
+Else
+ oFCKeditor.Config("AutoDetectLanguage") = False
+ oFCKeditor.Config("DefaultLanguage") = Request.QueryString("Lang")
+End If
+
+oFCKeditor.Value = "This is some <strong>sample text</strong>. You are using <a href=""http://www.fckeditor.net/"">FCKeditor</a>."
+oFCKeditor.Create "FCKeditor1"
+%>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample03.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample03.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample03.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,88 @@
+<%@ CodePage=65001 Language="VBScript"%>
+<% Option Explicit %>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample03.asp
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<% ' You must set "Enable Parent Paths" on your web site in order this relative include to work. %>
+<!-- #INCLUDE file="../../fckeditor.asp" -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbToolbars' ) ;
+ oCombo.value = editorInstance.ToolbarSet.Name ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeToolbar( toolbarName )
+{
+ window.location.href = window.location.pathname + "?Toolbar=" + toolbarName ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - ASP - Sample 3</h1>
+ This sample shows how to change the editor toolbar.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the toolbar to load:
+ </td>
+ <td>
+ <select id="cmbToolbars" onchange="ChangeToolbar(this.value);" style="VISIBILITY: hidden">
+ <option value="Default" selected>Default</option>
+ <option value="Basic">Basic</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+<%
+' Automatically calculates the editor base path based on the _samples directory.
+' This is usefull only for these samples. A real application should use something like this:
+' oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+Dim sBasePath
+sBasePath = Request.ServerVariables("PATH_INFO")
+sBasePath = Left( sBasePath, InStrRev( sBasePath, "/_samples" ) )
+
+Dim oFCKeditor
+Set oFCKeditor = New FCKeditor
+oFCKeditor.BasePath = sBasePath
+
+If Request.QueryString("Toolbar") <> "" Then
+ oFCKeditor.ToolbarSet = Request.QueryString("Toolbar")
+End If
+
+oFCKeditor.Value = "This is some <strong>sample text</strong>. You are using <a href=""http://www.fckeditor.net/"">FCKeditor</a>."
+oFCKeditor.Create "FCKeditor1"
+%>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample04.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample04.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sample04.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,94 @@
+<%@ CodePage=65001 Language="VBScript"%>
+<% Option Explicit %>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample04.asp
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<% ' You must set "Enable Parent Paths" on your web site in order this relative include to work. %>
+<!-- #INCLUDE file="../../fckeditor.asp" -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbSkins' ) ;
+
+ // Get the active skin.
+ var sSkin = editorInstance.Config['SkinPath'] ;
+ sSkin = sSkin.match( /[^\/]+(?=\/$)/g ) ;
+
+ oCombo.value = sSkin ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeSkin( skinName )
+{
+ window.location.href = window.location.pathname + "?Skin=" + skinName ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - ASP - Sample 4</h1>
+ This sample shows how to change the editor skin.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the skin to load:
+ </td>
+ <td>
+ <select id="cmbSkins" onchange="ChangeSkin(this.value);" style="VISIBILITY: hidden">
+ <option value="default" selected>Default</option>
+ <option value="office2003">Office 2003</option>
+ <option value="silver">Silver</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+<%
+' Automatically calculates the editor base path based on the _samples directory.
+' This is usefull only for these samples. A real application should use something like this:
+' oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+Dim sBasePath
+sBasePath = Request.ServerVariables("PATH_INFO")
+sBasePath = Left( sBasePath, InStrRev( sBasePath, "/_samples" ) )
+
+Dim oFCKeditor
+Set oFCKeditor = New FCKeditor
+oFCKeditor.BasePath = sBasePath
+
+If Request.QueryString("Skin") <> "" Then
+ oFCKeditor.Config("SkinPath") = sBasePath + "editor/skins/" & Request.QueryString("Skin") + "/"
+End If
+
+oFCKeditor.Value = "This is some <strong>sample text</strong>. You are using <a href=""http://www.fckeditor.net/"">FCKeditor</a>."
+oFCKeditor.Create "FCKeditor1"
+%>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sampleposteddata.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sampleposteddata.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/asp/sampleposteddata.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,49 @@
+<%@ CodePage=65001 Language="VBScript"%>
+<% Option Explicit %>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sampleposteddata.asp
+ * This page lists the data posted by a form.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td noWrap>Field Name </td>
+ <td>Value</td>
+ </tr>
+ <%
+ Dim sForm
+ For Each sForm in Request.Form
+ %>
+ <tr>
+ <td valign="top" nowrap><b><%=sForm%></b></td>
+ <td width="100%"><%=Server.HTMLEncode( Request.Form(sForm) )%></td>
+ </tr>
+ <% Next %>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample01.cfm
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample01.cfm 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample01.cfm 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,72 @@
+<cfsetting enablecfoutputonly="true" showdebugoutput="false">
+<!--- @Packager.Header
+<FileDescription>
+ Sample page for ColdFusion.
+</FileDescription>
+<Author name="Hendrik Kramer" email="hk at lwd.de" />
+<Author name="Mark Woods" email="mark at thickpaddy.com" />
+--->
+
+<cfoutput>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+</head>
+
+<body>
+
+<h1>FCKeditor - ColdFusion - Sample 1</h1>
+
+This sample displays a normal HTML form with a FCKeditor with full features enabled; invoked by a ColdFusion Custom Tag / Module.<br>
+ColdFusion is a registered trademark and product of <a href="http://www.macromedia.com/software/coldfusion/" target="_blank">Macromedia, Inc</a>.
+<hr>
+<form method="POST" action="#cgi.script_name#">
+</cfoutput>
+
+<cfmodule
+ template="../../fckeditor.cfm"
+ basePath="/fckeditor/"
+ instanceName="myEditor"
+ value='This is some sample text. You are using <a href="http://fckeditor.net/" target="_blank">FCKeditor</a>.'
+ width="100%"
+ height="200"
+>
+<cfoutput>
+<br />
+<input type="submit" value="Submit">
+<br />
+</form>
+</cfoutput>
+
+<cfif isDefined( 'FORM.fieldnames' )>
+ <cfoutput>
+ <style>
+ <!--
+ td, th { font: 11px Verdana, Arial, Helv, Helvetica, sans-serif; }
+ -->
+ </style>
+ <table border="1" cellspacing="0" cellpadding="2" bordercolor="darkblue" bordercolordark="darkblue" bordercolorlight="darkblue">
+ <tr>
+ <th colspan="2" bgcolor="darkblue"><font color="white"><strong>Dump of FORM Variables</strong></font></th>
+ </tr>
+ <tr>
+ <td bgcolor="lightskyblue">FieldNames</td>
+ <td>#FORM.fieldNames#</td>
+ </tr>
+ <cfloop list="#FORM.fieldnames#" index="key">
+ <tr>
+ <td valign="top" bgcolor="lightskyblue">#key#</td>
+ <td>#HTMLEditFormat(evaluate("FORM.#key#"))#</td>
+ </tr>
+ </cfloop>
+ </table>
+ </cfoutput>
+</cfif>
+
+</body>
+</html>
+<cfsetting enablecfoutputonly="false">
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample02_mx.cfm
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample02_mx.cfm 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/cfm/sample02_mx.cfm 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,80 @@
+<cfsetting enablecfoutputonly="true">
+<!--- @Packager.Header
+<FileDescription>
+ Sample page for ColdFusion MX.
+</FileDescription>
+<Author name="Hendrik Kramer" email="hk at lwd.de" />
+--->
+
+<!--- ::
+ * You must set the url path to the base directory for your media files (images, flash, files)
+ * The best position for this variable is in your Application.cfm file
+ *
+ * Possible variable scopes are:
+ * <cfset APPLICATION.userFilesPath = "/UserFiles/">
+ * OR:
+ * <cfset SERVER.userFilesPath = "/UserFiles/">
+ *
+ * Note #1: Do _not_ set the physical directory on your server, only a path relative to your current webroot
+ * Note #2: Directories will be automatically created
+ :: --->
+<cfset APPLICATION.userFilesPath = "/UserFiles/">
+
+<cfoutput>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<h1>FCKeditor - ColdFusion Component (CFC) - Sample 2</h1>
+
+This sample displays a normal HTML form with a FCKeditor with full features enabled; invoked by a ColdFusion Component.<br>
+ColdFusion is a registered trademark and product of <a href="http://www.macromedia.com/software/coldfusion/" target="_blank">Macromedia, Inc</a>.
+<hr>
+<form method="POST" action="#cgi.script_name#">
+</cfoutput>
+
+<cfif listFirst( server.coldFusion.productVersion ) LT 6>
+ <cfoutput><br><em style="color: red;">This sample work only with a ColdFusion MX server and higher, because it uses some advantages of this version.</em></cfoutput>
+ <cfabort>
+</cfif>
+
+<!---
+ Note: You must first create a mapping in your coldfusion administrator to call the component fckeditor.cfc
+ in the root folder of this zip archive.
+ A relative path is not allowed. See your coldfusion documentation for more information.
+ --->
+<cfscript>
+ // create a pseudo mapping for this demo only!
+ factory = createObject('java','coldfusion.server.ServiceFactory');
+ mappings = factory.runtimeservice.getMappings();
+ mappings['/fckeditor2'] = expandPath("../.."); // fckeditor.cfc resides two paths higher than this sample file.
+ // end create a pseudo mapping for this demo only!
+
+ fckEditor = createObject("component", "/fckeditor2/fckeditor");
+ fckEditor.instanceName = "myEditor";
+ fckEditor.value = 'This is some sample text. You are using <a href="http://fckeditor.net/" target="_blank">FCKeditor</a>.';
+ fckEditor.basePath = "/fckeditor/";
+ fckEditor.width = "100%";
+ fckEditor.height = 200;
+ fckEditor.create(); // create the editor.
+</cfscript>
+
+<cfoutput>
+<br />
+<input type="submit" value="Submit">
+<br />
+</cfoutput>
+
+<cfdump
+ var="#FORM#"
+ label="Dump of FORM Variables"
+>
+
+<cfoutput></form></body></html></cfoutput>
+
+<cfsetting enablecfoutputonly="false">
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/default.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/default.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/default.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,30 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: default.html
+ * Samples Frameset page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<html>
+ <head>
+ <title>FCKeditor - Samples</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ </head>
+ <frameset rows="60,*">
+ <frame src="sampleslist.html" noresize scrolling="no">
+ <frame name="Sample" src="html/sample01.html" noresize>
+ </frameset>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample01.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample01.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample01.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,52 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample01.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 1</h1>
+ This sample displays a normal HTML form with an FCKeditor with full features
+ enabled.
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_samples')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Height = 300 ;
+oFCKeditor.Value = 'This is some <strong>sample text<\/strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor<\/a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample02.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample02.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample02.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,56 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample02.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ <script type="text/javascript">
+
+window.onload = function()
+{
+ // Automatically calculates the editor base path based on the _samples directory.
+ // This is usefull only for these samples. A real application should use something like this:
+ // oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+ var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_samples')) ;
+
+ var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+ oFCKeditor.BasePath = sBasePath ;
+ oFCKeditor.ReplaceTextarea() ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 2</h1>
+ This sample displays a normal HTML form with an FCKeditor with full features
+ enabled. It uses the "ReplaceTextarea" command to create the editor.
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <div>
+ <textarea name="FCKeditor1" style="WIDTH: 100%; HEIGHT: 200px">This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.</textarea>
+ </div>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample03.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample03.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample03.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,112 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample03.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var iCounter = 0 ;
+ var oCombo = document.getElementById( 'cmbLanguages' ) ;
+ for ( code in editorInstance.Language.AvailableLanguages )
+ {
+ AddComboOption( oCombo, editorInstance.Language.AvailableLanguages[code] + ' (' + code + ')', code ) ;
+ iCounter++ ;
+ }
+ oCombo.value = editorInstance.Language.ActiveLanguage.Code ;
+
+ document.getElementById('eNumLangs').innerHTML = '(' + iCounter + ' languages available!)' ;
+}
+
+function AddComboOption(combo, optionText, optionValue)
+{
+ var oOption = document.createElement("OPTION") ;
+
+ combo.options.add(oOption) ;
+
+ oOption.innerHTML = optionText ;
+ oOption.value = optionValue ;
+
+ return oOption ;
+}
+
+function ChangeLanguage( languageCode )
+{
+ window.location.href = window.location.pathname + "?" + languageCode ;
+}
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 3</h1>
+ This sample shows the editor in all its available languages.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select a language:
+ </td>
+ <td>
+ <select id="cmbLanguages" onchange="ChangeLanguage(this.value);">
+ </select>
+ </td>
+ <td>
+ <span id="eNumLangs"></span>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/_samples/')+1) ;
+
+var sLang ;
+if ( document.location.search.length > 1 )
+ sLang = document.location.search.substr(1) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+if ( sLang == null )
+{
+ oFCKeditor.Config["AutoDetectLanguage"] = true ;
+ oFCKeditor.Config["DefaultLanguage"] = "en" ;
+}
+else
+{
+ oFCKeditor.Config["AutoDetectLanguage"] = false ;
+ oFCKeditor.Config["DefaultLanguage"] = sLang ;
+}
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample04.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample04.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample04.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,88 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample04.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbToolbars' ) ;
+ oCombo.value = editorInstance.ToolbarSet.Name ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeLanguage( languageCode )
+{
+ window.location.href = window.location.pathname + "?" + languageCode ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 4</h1>
+ This sample shows how to change the editor toolbar.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the toolbar to load:
+ </td>
+ <td>
+ <select id="cmbToolbars" onchange="ChangeLanguage(this.value);" style="VISIBILITY: hidden">
+ <option value="Default" selected>Default</option>
+ <option value="Basic">Basic</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/_samples/')+1) ;
+
+// Get the toolbar from the URL.
+var sToolbar ;
+if ( document.location.search.length > 1 )
+ sToolbar = document.location.search.substr(1) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+
+if ( sToolbar != null )
+ oFCKeditor.ToolbarSet = sToolbar ;
+
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample05.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample05.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample05.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,94 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample05.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbSkins' ) ;
+
+ // Get the active skin.
+ var sSkin = editorInstance.Config['SkinPath'] ;
+ sSkin = sSkin.match( /[^\/]+(?=\/$)/g ) ;
+
+ oCombo.value = sSkin ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeLanguage( languageCode )
+{
+ window.location.href = window.location.pathname + "?" + languageCode ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 5</h1>
+ This sample shows how to change the editor skin.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the skin to load:
+ </td>
+ <td>
+ <select id="cmbSkins" onchange="ChangeLanguage(this.value);" style="VISIBILITY: hidden">
+ <option value="default" selected>Default</option>
+ <option value="office2003">Office 2003</option>
+ <option value="silver">Silver</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/_samples/')+1) ;
+
+// Get the skin from the URL.
+var sSkin ;
+if ( document.location.search.length > 1 )
+ sSkin = document.location.search.substr(1) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+
+if ( sSkin != null )
+ oFCKeditor.Config['SkinPath'] = sBasePath + 'editor/skins/' + sSkin + '/' ;
+
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.config.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.config.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.config.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,45 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample06.config.js
+ * Sample custom configuration settings used in the plugin sample page (sample06).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Set our sample toolbar.
+FCKConfig.ToolbarSets['PluginTest'] = [
+ ['SourceSimple'],
+ ['My_Find','My_Replace','-','Placeholder'],
+ ['StyleSimple','FontFormatSimple','FontNameSimple','FontSizeSimple'],
+ ['Table','-','TableInsertRow','TableDeleteRows','TableInsertColumn','TableDeleteColumns','TableInsertCell','TableDeleteCells','TableMergeCells','TableSplitCell'],
+ ['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink'],
+ '/',
+ ['My_BigStyle','-','About']
+] ;
+
+// Change the default plugin path.
+FCKConfig.PluginsPath = FCKConfig.BasePath.substr(0, FCKConfig.BasePath.length - 7) + '_samples/_plugins/' ;
+
+// Add our plugin to the plugins list.
+// FCKConfig.Plugins.Add( pluginName, availableLanguages )
+// pluginName: The plugin name. The plugin directory must match this name.
+// availableLanguages: a list of available language files for the plugin (separated by a comma).
+FCKConfig.Plugins.Add( 'findreplace', 'en,it,fr' ) ;
+FCKConfig.Plugins.Add( 'samples' ) ;
+
+// If you want to use plugins found on other directories, just use the third parameter.
+var sOtherPluginPath = FCKConfig.BasePath.substr(0, FCKConfig.BasePath.length - 7) + 'editor/plugins/' ;
+FCKConfig.Plugins.Add( 'placeholder', 'en,it,de,fr', sOtherPluginPath ) ;
+FCKConfig.Plugins.Add( 'tablecommands', null, sOtherPluginPath ) ;
+FCKConfig.Plugins.Add( 'simplecommands', null, sOtherPluginPath ) ;
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample06.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,61 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample06.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - 6</h1>
+ This sample shows a sample plugin implementation.
+ <br>
+ These are sample "Find" and "Replace" plugin that do exactly the same thing that the built in ones do. Use the green toolbar buttons the test then.
+ <br>
+ There is also another sample plugin that is available in the package: the "Placeholder" command (use the yellow icon).
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/_samples/')+1) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+
+// Set the custom configurations file path (in this way the original file is mantained).
+oFCKeditor.Config['CustomConfigurationsPath'] = sBasePath + '_samples/html/sample06.config.js' ;
+
+// Let's use a custom toolbar for this sample.
+oFCKeditor.ToolbarSet = 'PluginTest' ;
+
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample07.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample07.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample07.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,51 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample07.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 7</h1>
+ In this sample the user can edit the complete page contents and header (from
+ <HTML> to </HTML>).
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_samples')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Config['FullPage'] = true ;
+oFCKeditor.Value = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>Full Page Test</title><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/></head><body>This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.</body></html>' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample08.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample08.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample08.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,154 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample08.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ <script type="text/javascript">
+
+// FCKeditor_OnComplete is a special function that is called when an editor
+// instance is loaded ad available to the API. It must be named exactly in
+// this way.
+function FCKeditor_OnComplete( editorInstance )
+{
+ // Show the editor name and description in the browser status bar.
+ document.getElementById('eMessage').innerHTML = 'Instance "' + editorInstance.Name + '" loaded - ' + editorInstance.Description ;
+
+ // Show this sample buttons.
+ document.getElementById('eButtons').style.visibility = '' ;
+}
+
+function InsertHTML()
+{
+ // Get the editor instance that we want to interact with.
+ var oEditor = FCKeditorAPI.GetInstance('FCKeditor1') ;
+
+ // Check the active editing mode.
+ if ( oEditor.EditMode == FCK_EDITMODE_WYSIWYG )
+ {
+ // Insert the desired HTML.
+ oEditor.InsertHtml( '- This is some <b>sample</b> HTML -' ) ;
+ }
+ else
+ alert( 'You must be on WYSIWYG mode!' ) ;
+}
+
+function SetContents()
+{
+ // Get the editor instance that we want to interact with.
+ var oEditor = FCKeditorAPI.GetInstance('FCKeditor1') ;
+
+ // Set the editor contents (replace the actual one).
+ oEditor.SetHTML( 'This is the <b>new content</b> I want in the editor.' ) ;
+}
+
+function GetContents()
+{
+ // Get the editor instance that we want to interact with.
+ var oEditor = FCKeditorAPI.GetInstance('FCKeditor1') ;
+
+ // Get the editor contents in XHTML.
+ alert( oEditor.GetXHTML( true ) ) ; // "true" means you want it formatted.
+}
+
+function ExecuteCommand( commandName )
+{
+ // Get the editor instance that we want to interact with.
+ var oEditor = FCKeditorAPI.GetInstance('FCKeditor1') ;
+
+ // Execute the command.
+ oEditor.Commands.GetCommand( commandName ).Execute() ;
+}
+
+function GetLength()
+{
+ // This functions shows that you can interact directly with the editor area
+ // DOM. In this way you have the freedom to do anything you want with it.
+
+ // Get the editor instance that we want to interact with.
+ var oEditor = FCKeditorAPI.GetInstance('FCKeditor1') ;
+
+ // Get the Editor Area DOM (Document object).
+ var oDOM = oEditor.EditorDocument ;
+
+ var iLength ;
+
+ // The are two diffent ways to get the text (without HTML markups).
+ // It is browser specific.
+
+ if ( document.all ) // If Internet Explorer.
+ {
+ iLength = oDOM.body.innerText.length ;
+ }
+ else // If Gecko.
+ {
+ var r = oDOM.createRange() ;
+ r.selectNodeContents( oDOM.body ) ;
+ iLength = r.toString().length ;
+ }
+
+ alert( 'Actual text length (without HTML markups): ' + iLength + ' characters' ) ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 8</h1>
+ This sample shows how to use the FCKeditor Javascript API to interact with the
+ editor at runtime.
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_samples')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ <div> </div>
+ <hr>
+ <div id="eMessage"> </div>
+ <div> </div>
+ <div id="eButtons" style="VISIBILITY: hidden">
+ <input type="button" value="Insert HTML" onclick="InsertHTML();">
+ <input type="button" value="Set Editor Contents" onclick="SetContents();">
+ <input type="button" value="Get Editor Contents (XHTML)" onclick="GetContents();">
+ <br>
+ <br>
+ <input type="button" value='Execute "Bold" Command' onclick="ExecuteCommand('Bold');">
+ <input type="button" value='Execute "Link" Command' onclick="ExecuteCommand('Link');">
+ <br>
+ <br>
+ <input type="button" value="Interact with the Editor Area DOM" onclick="GetLength();">
+ </div>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample09.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample09.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample09.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,67 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample09.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 9</h1>
+ This sample shows FCKeditor in a more complex form with two different
+ instances.
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ Normal text field:<br>
+ <input name="NormaText" value="Plain Text">
+ <br>
+ <br>
+ FCKeditor with Basic toolbar:
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_samples')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor_Basic' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.ToolbarSet = 'Basic' ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ FCKeditor with Default toolbar:
+ <script type="text/javascript">
+<!--
+var oFCKeditor = new FCKeditor( 'FCKeditor_Default' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample10.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample10.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sample10.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,52 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample10.html
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Javascript - Sample 10</h1>
+ This sample is identical to Sample 1, but Safari support is enabled.
+ <hr>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_samples')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Height = 300 ;
+oFCKeditor.Value = 'This is some <strong>sample text<\/strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor<\/a>.' ;
+oFCKeditor.EnableSafari = true ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,44 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sampleposteddata.asp
+ * This page lists the data posted by a form.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td noWrap>Field Name </td>
+ <td>Value</td>
+ </tr>
+ <% For Each sForm in Request.Form %>
+ <tr>
+ <td valign="top" nowrap><b><%=sForm%></b></td>
+ <td width="100%"><%=Replace( Server.HTMLEncode( Request.Form(sForm) ), Chr(13), "<br>" )%></td>
+ </tr>
+ <% Next %>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/html/sampleposteddata.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,70 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sampleposteddata.html
+ * This page lists the data posted by a form. It uses the URL (GET data),
+ * so it's limited to 2KB of data.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form. It uses the "QueryString" to search for data
+ submitted using the "GET" method, so it is limited to 2KB.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td>Field</td>
+ <td>Value</td>
+ </tr>
+ <script type="text/javascript">
+<!--
+
+function HTMLEncode( text )
+{
+ text = text.replace(/&/g, "&") ;
+ text = text.replace(/"/g, """) ;
+ text = text.replace(/</g, "<") ;
+ text = text.replace(/>/g, ">") ;
+ text = text.replace(/'/g, "'") ;
+
+ return text ;
+}
+
+var aParams = document.location.search.substr(1).split('&') ;
+
+for ( i = 0 ; i < aParams.length ; i++ )
+{
+ var aParam = aParams[i].split('=') ;
+ var sParamName = aParam[0] ;
+ var sParamValue = aParam[1] ;
+
+ document.write( '<tr>' ) ;
+ document.write( '<td valign="top" nowrap><b>' + sParamName + '</b></td>' ) ;
+ document.write( '<td width="100%">' + HTMLEncode( unescape( sParamValue.replace( /\+/g, ' ' ) ) ) + '</td>' ) ;
+ document.write( '</tr>' ) ;
+}
+
+//-->
+ </script>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample01.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample01.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample01.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,65 @@
+[//lasso
+/*
+
+ * FCKeditor - The text editor for internet
+
+* Copyright (C) 2003-2005 Frederico Caldeira Knabben
+
+*
+
+* Licensed under the terms of the GNU Lesser General Public License:
+
+* http://www.opensource.org/licenses/lgpl-license.php
+
+*
+
+* For further information visit:
+
+* http://www.fckeditor.net/
+
+*
+
+* File Name: sample01.lasso
+
+* Sample page.
+
+*
+
+* File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Jason Huck (jason.huck at corefive.com)
+
+ */
+
+]
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Lasso - Sample 1</h1>
+ This sample displays a normal HTML form with an FCKeditor with full features
+ enabled.
+ <hr>
+ <form action="sampleposteddata.lasso" method="post" target="_blank">
+[//lasso
+ include('../../fckeditor.lasso');
+ var('basepath') = response_filepath->split('_samples')->get(1);
+
+ var('myeditor') = fck_editor(
+ -instancename='FCKeditor1',
+ -basepath=$basepath,
+ -initialvalue='This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.'
+ );
+
+ $myeditor->create;
+]
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample02.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample02.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample02.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,117 @@
+[//lasso
+/*
+
+ * FCKeditor - The text editor for internet
+
+* Copyright (C) 2003-2005 Frederico Caldeira Knabben
+
+*
+
+* Licensed under the terms of the GNU Lesser General Public License:
+
+* http://www.opensource.org/licenses/lgpl-license.php
+
+*
+
+* For further information visit:
+
+* http://www.fckeditor.net/
+ *
+ * File Name: sample02.lasso
+
+* Sample page.
+
+*
+
+* File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Jason Huck (jason.huck at corefive.com)
+
+ */
+
+]
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+ <!--
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbLanguages' ) ;
+ for ( code in editorInstance.Language.AvailableLanguages )
+ {
+ AddComboOption( oCombo, editorInstance.Language.AvailableLanguages[code] + ' (' + code + ')', code ) ;
+ }
+ oCombo.value = editorInstance.Language.ActiveLanguage.Code ;
+}
+
+function AddComboOption(combo, optionText, optionValue)
+{
+ var oOption = document.createElement("OPTION") ;
+
+ combo.options.add(oOption) ;
+
+ oOption.innerHTML = optionText ;
+ oOption.value = optionValue ;
+
+ return oOption ;
+}
+
+function ChangeLanguage( languageCode )
+{
+ window.location.href = window.location.pathname + "?Lang=" + languageCode ;
+}
+ //-->
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Lasso - Sample 2</h1>
+ This sample shows the editor in all its available languages.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select a language:
+ </td>
+ <td>
+ <select id="cmbLanguages" onchange="ChangeLanguage(this.value);">
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.lasso" method="post" target="_blank">
+[//lasso
+ include('../../fckeditor.lasso');
+ var('basepath') = response_filepath->split('_samples')->get(1);
+
+ if(action_param('Lang'));
+ var('config') = array(
+ 'AutoDetectLanguage' = 'false',
+ 'DefaultLanguage' = action_param('Lang')
+ );
+ else;
+ var('config') = array(
+ 'AutoDetectLanguage' = 'true',
+ 'DefaultLanguage' = 'en'
+ );
+ /if;
+
+ var('myeditor') = fck_editor(
+ -instancename='FCKeditor1',
+ -basepath=$basepath,
+ -config=$config,
+ -initialvalue='This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.'
+ );
+
+ $myeditor->create;
+]
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample03.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample03.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample03.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,98 @@
+[//lasso
+/*
+
+ * FCKeditor - The text editor for internet
+
+* Copyright (C) 2003-2005 Frederico Caldeira Knabben
+
+*
+
+* Licensed under the terms of the GNU Lesser General Public License:
+
+* http://www.opensource.org/licenses/lgpl-license.php
+
+*
+
+* For further information visit:
+
+* http://www.fckeditor.net/
+
+*
+
+* File Name: sample03.lasso
+
+* Sample page.
+
+*
+
+* File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+
+* Jason Huck (jason.huck at corefive.com)
+
+ */
+
+]
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+ <!--
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbToolbars' ) ;
+ oCombo.value = editorInstance.ToolbarSet.Name ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeToolbar( toolbarName )
+{
+ window.location.href = window.location.pathname + "?Toolbar=" + toolbarName ;
+}
+ //-->
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Lasso - Sample 3</h1>
+ This sample shows how to change the editor toolbar.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the toolbar to load:
+ </td>
+ <td>
+ <select id="cmbToolbars" onchange="ChangeToolbar(this.value);" style="VISIBILITY: hidden">
+ <option value="Default" selected>Default</option>
+ <option value="Basic">Basic</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.lasso" method="post" target="_blank">
+[//lasso
+ include('../../fckeditor.lasso');
+ var('basepath') = response_filepath->split('_samples')->get(1);
+
+ var('myeditor') = fck_editor(
+ -instancename='FCKeditor1',
+ -basepath=$basepath,
+ -initialvalue='This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.'
+ );
+
+ if(action_param('Toolbar'));
+ $myeditor->toolbarset = action_param('Toolbar');
+ /if;
+
+ $myeditor->create;
+]
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample04.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample04.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sample04.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,104 @@
+[//lasso
+/*
+
+ * FCKeditor - The text editor for internet
+
+* Copyright (C) 2003-2005 Frederico Caldeira Knabben
+
+*
+
+* Licensed under the terms of the GNU Lesser General Public License:
+
+* http://www.opensource.org/licenses/lgpl-license.php
+
+*
+
+* For further information visit:
+
+* http://www.fckeditor.net/
+
+*
+
+* File Name: sample04.lasso
+
+* Sample page.
+
+*
+
+* File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+
+* Jason Huck (jason.huck at corefive.com)
+
+ */
+
+]
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+ <!--
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbSkins' ) ;
+
+ // Get the active skin.
+ var sSkin = editorInstance.Config['SkinPath'] ;
+ sSkin = sSkin.match( /[^\/]+(?=\/$)/g ) ;
+
+ oCombo.value = sSkin ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeSkin( skinName )
+{
+ window.location.href = window.location.pathname + "?Skin=" + skinName ;
+}
+ //-->
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Lasso - Sample 4</h1>
+ This sample shows how to change the editor skin.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the skin to load:
+ </td>
+ <td>
+ <select id="cmbSkins" onchange="ChangeSkin(this.value);" style="VISIBILITY: hidden">
+ <option value="default" selected>Default</option>
+ <option value="office2003">Office 2003</option>
+ <option value="silver">Silver</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.lasso" method="post" target="_blank">
+[//lasso
+ include('../../fckeditor.lasso');
+ var('basepath') = response_filepath->split('_samples')->get(1);
+
+ var('myeditor') = fck_editor(
+ -instancename='FCKeditor1',
+ -basepath=$basepath,
+ -initialvalue='This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.'
+ );
+
+ if(action_param('Skin'));
+ $myeditor->config = array('SkinPath' = $basepath + 'editor/skins/' + action_param('Skin') + '/');
+ /if;
+
+ $myeditor->create;
+]
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sampleposteddata.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sampleposteddata.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/lasso/sampleposteddata.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,50 @@
+[//lasso
+/*
+
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: sampleposteddata.lasso
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Jason Huck (jason.huck at corefive.com)
+
+ * Jim Michaels (jmichae3 at yahoo.com)
+
+ */
+
+]
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td nowrap>Field Name </td>
+ <td>Value</td>
+ </tr>
+[iterate(client_postparams, local('this'))]
+ <tr>
+ <td valign="top" nowrap><b>[#this->first]</b></td>
+ <td width="100%">[#this->second]</td>
+ </tr>
+[/iterate]
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample01.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample01.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample01.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,111 @@
+#!/usr/bin/env perl
+
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: sample01.cgi
+# Sample page.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+## START: Hack for Windows (Not important to understand the editor code... Perl specific).
+if(Windows_check()) {
+ chdir(GetScriptPath($0));
+}
+
+sub Windows_check
+{
+ # IIS,PWS(NT/95)
+ $www_server_os = $^O;
+ # Win98 & NT(SP4)
+ if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
+ # AnHTTPd/Omni/IIS
+ if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
+ # Win Apache
+ if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
+ if($www_server_os=~ /win/i) { return(1); }
+ return(0);
+}
+
+sub GetScriptPath {
+ local($path) = @_;
+ if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
+ $path;
+}
+## END: Hack for IIS
+
+require '../../fckeditor.pl';
+
+# When $ENV{'PATH_INFO'} cannot be used by perl.
+# $DefRootPath = "/XXXXX/_samples/perl/sample01.cgi"; Please write in script.
+
+my $DefServerPath = "";
+my $ServerPath;
+
+ $ServerPath = &GetServerPath();
+ print "Content-type: text/html\n\n";
+ print <<"_HTML_TAG_";
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Perl - Sample 1</h1>
+ This sample displays a normal HTML form with an FCKeditor with full features
+ enabled.
+ <hr>
+ <form action="sampleposteddata.cgi" method="post" target="_blank">
+_HTML_TAG_
+
+ #// Automatically calculates the editor base path based on the _samples directory.
+ #// This is usefull only for these samples. A real application should use something like this:
+ #// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+
+ $sBasePath = $ServerPath;
+ $sBasePath = substr($sBasePath,0,index($sBasePath,"_samples"));
+ &FCKeditor('FCKeditor1');
+ $BasePath = $sBasePath;
+ $Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.';
+ &Create();
+
+ print <<"_HTML_TAG_";
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
+_HTML_TAG_
+
+################
+#Please use this function, rewriting it depending on a server's environment.
+################
+sub GetServerPath
+{
+my $dir;
+
+ if($DefServerPath) {
+ $dir = $DefServerPath;
+ } else {
+ if($ENV{'PATH_INFO'}) {
+ $dir = $ENV{'PATH_INFO'};
+ } elsif($ENV{'FILEPATH_INFO'}) {
+ $dir = $ENV{'FILEPATH_INFO'};
+ }
+ }
+ return($dir);
+}
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample02.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample02.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample02.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,176 @@
+#!/usr/bin/env perl
+
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: sample02.cgi
+# Sample page.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+## START: Hack for Windows (Not important to understand the editor code... Perl specific).
+if(Windows_check()) {
+ chdir(GetScriptPath($0));
+}
+
+sub Windows_check
+{
+ # IIS,PWS(NT/95)
+ $www_server_os = $^O;
+ # Win98 & NT(SP4)
+ if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
+ # AnHTTPd/Omni/IIS
+ if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
+ # Win Apache
+ if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
+ if($www_server_os=~ /win/i) { return(1); }
+ return(0);
+}
+
+sub GetScriptPath {
+ local($path) = @_;
+ if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
+ $path;
+}
+## END: Hack for IIS
+
+require '../../fckeditor.pl';
+
+# When $ENV{'PATH_INFO'} cannot be used by perl.
+# $DefRootPath = "/XXXXX/_samples/perl/sample02.cgi"; Please write in script.
+
+my $DefServerPath = "";
+my $ServerPath;
+
+ $ServerPath = &GetServerPath();
+
+ if($ENV{'REQUEST_METHOD'} eq "POST") {
+ read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
+ } else {
+ $buffer = $ENV{'QUERY_STRING'};
+ }
+ @pairs = split(/&/,$buffer);
+ foreach $pair (@pairs) {
+ ($name,$value) = split(/=/,$pair);
+ $value =~ tr/+/ /;
+ $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+ $value =~ s/\t//g;
+ $value =~ s/\r\n/\n/g;
+ $FORM{$name} .= "\0" if(defined($FORM{$name}));
+ $FORM{$name} .= $value;
+ }
+
+ print "Content-type: text/html\n\n";
+ print <<"_HTML_TAG_";
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbLanguages' ) ;
+ for ( code in editorInstance.Language.AvailableLanguages )
+ {
+ AddComboOption( oCombo, editorInstance.Language.AvailableLanguages[code] + ' (' + code + ')', code ) ;
+ }
+ oCombo.value = editorInstance.Language.ActiveLanguage.Code ;
+}
+
+function AddComboOption(combo, optionText, optionValue)
+{
+ var oOption = document.createElement("OPTION") ;
+
+ combo.options.add(oOption) ;
+
+ oOption.innerHTML = optionText ;
+ oOption.value = optionValue ;
+
+ return oOption ;
+}
+
+function ChangeLanguage( languageCode )
+{
+ window.location.href = window.location.pathname + "?Lang=" + languageCode ;
+}
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Perl - Sample 2</h1>
+ This sample shows the editor in all its available languages.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select a language:
+ </td>
+ <td>
+ <select id="cmbLanguages" onchange="ChangeLanguage(this.value);">
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.cgi" method="post" target="_blank">
+_HTML_TAG_
+
+ #// Automatically calculates the editor base path based on the _samples directory.
+ #// This is usefull only for these samples. A real application should use something like this:
+ #// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+ $sBasePath = $ServerPath;
+ $sBasePath = substr( $sBasePath, 0, index($sBasePath,"_samples"));
+
+ &FCKeditor('FCKeditor1');
+ $BasePath = $sBasePath;
+
+ if($FORM{'Lang'} ne "") {
+ $Config{'AutoDetectLanguage'} = "false";
+ $Config{'DefaultLanguage'} = $FORM{'Lang'};
+ } else {
+ $Config{'AutoDetectLanguage'} = "true";
+ $Config{'DefaultLanguage'} = 'en' ;
+ }
+ $Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+ &Create();
+
+ print <<"_HTML_TAG_";
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
+_HTML_TAG_
+
+################
+#Please use this function, rewriting it depending on a server's environment.
+################
+sub GetServerPath
+{
+my $dir;
+
+ if($DefServerPath) {
+ $dir = $DefServerPath;
+ } else {
+ if($ENV{'PATH_INFO'}) {
+ $dir = $ENV{'PATH_INFO'};
+ } elsif($ENV{'FILEPATH_INFO'}) {
+ $dir = $ENV{'FILEPATH_INFO'};
+ }
+ }
+ return($dir);
+}
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample03.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample03.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample03.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,161 @@
+#!/usr/bin/env perl
+
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: sample03.cgi
+# Sample page.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+## START: Hack for Windows (Not important to understand the editor code... Perl specific).
+if(Windows_check()) {
+ chdir(GetScriptPath($0));
+}
+
+sub Windows_check
+{
+ # IIS,PWS(NT/95)
+ $www_server_os = $^O;
+ # Win98 & NT(SP4)
+ if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
+ # AnHTTPd/Omni/IIS
+ if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
+ # Win Apache
+ if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
+ if($www_server_os=~ /win/i) { return(1); }
+ return(0);
+}
+
+sub GetScriptPath {
+ local($path) = @_;
+ if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
+ $path;
+}
+## END: Hack for IIS
+
+require '../../fckeditor.pl';
+
+# When $ENV{'PATH_INFO'} cannot be used by perl.
+# $DefRootPath = "/XXXXX/_samples/perl/sample03.cgi"; Please write in script.
+
+my $DefServerPath = "";
+my $ServerPath;
+
+ $ServerPath = &GetServerPath();
+
+ if($ENV{'REQUEST_METHOD'} eq "POST") {
+ read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
+ } else {
+ $buffer = $ENV{'QUERY_STRING'};
+ }
+ @pairs = split(/&/,$buffer);
+ foreach $pair (@pairs) {
+ ($name,$value) = split(/=/,$pair);
+ $value =~ tr/+/ /;
+ $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+ $value =~ s/\t//g;
+ $value =~ s/\r\n/\n/g;
+ $FORM{$name} .= "\0" if(defined($FORM{$name}));
+ $FORM{$name} .= $value;
+ }
+
+ print "Content-type: text/html\n\n";
+ print <<"_HTML_TAG_";
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbToolbars' ) ;
+ oCombo.value = editorInstance.ToolbarSet.Name ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeToolbar( toolbarName )
+{
+ window.location.href = window.location.pathname + "?Toolbar=" + toolbarName ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Perl - Sample 3</h1>
+ This sample shows how to change the editor toolbar.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the toolbar to load:
+ </td>
+ <td>
+ <select id="cmbToolbars" onchange="ChangeToolbar(this.value);" style="VISIBILITY: hidden">
+ <option value="Default" selected>Default</option>
+ <option value="Basic">Basic</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.cgi" method="post" target="_blank">
+_HTML_TAG_
+
+ #// Automatically calculates the editor base path based on the _samples directory.
+ #// This is usefull only for these samples. A real application should use something like this:
+ #// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+
+ $sBasePath = $ServerPath;
+ $sBasePath = substr($sBasePath, 0, index( $sBasePath, "_samples" ));
+
+ &FCKeditor('FCKeditor1') ;
+ $BasePath = $sBasePath ;
+
+ if($FORM{'Toolbar'} ne "") {
+ $ToolbarSet = $FORM{'Toolbar'};
+ }
+ $Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+ &Create();
+
+ print <<"_HTML_TAG_";
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
+_HTML_TAG_
+
+################
+#Please use this function, rewriting it depending on a server's environment.
+################
+sub GetServerPath
+{
+my $dir;
+
+ if($DefServerPath) {
+ $dir = $DefServerPath;
+ } else {
+ if($ENV{'PATH_INFO'}) {
+ $dir = $ENV{'PATH_INFO'};
+ } elsif($ENV{'FILEPATH_INFO'}) {
+ $dir = $ENV{'FILEPATH_INFO'};
+ }
+ }
+ return($dir);
+}
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample04.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample04.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sample04.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,168 @@
+#!/usr/bin/env perl
+
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: sample04.cgi
+# Sample page.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+## START: Hack for Windows (Not important to understand the editor code... Perl specific).
+if(Windows_check()) {
+ chdir(GetScriptPath($0));
+}
+
+sub Windows_check
+{
+ # IIS,PWS(NT/95)
+ $www_server_os = $^O;
+ # Win98 & NT(SP4)
+ if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
+ # AnHTTPd/Omni/IIS
+ if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
+ # Win Apache
+ if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
+ if($www_server_os=~ /win/i) { return(1); }
+ return(0);
+}
+
+sub GetScriptPath {
+ local($path) = @_;
+ if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
+ $path;
+}
+## END: Hack for IIS
+
+require '../../fckeditor.pl';
+
+# When $ENV{'PATH_INFO'} cannot be used by perl.
+# $DefRootPath = "/XXXXX/_samples/perl/sample04.cgi"; Please write in script.
+
+my $DefServerPath = "";
+my $ServerPath;
+
+ $ServerPath = &GetServerPath();
+
+ if($ENV{'REQUEST_METHOD'} eq "POST") {
+ read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
+ } else {
+ $buffer = $ENV{'QUERY_STRING'};
+ }
+ @pairs = split(/&/,$buffer);
+ foreach $pair (@pairs) {
+ ($name,$value) = split(/=/,$pair);
+ $value =~ tr/+/ /;
+ $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+ $value =~ s/\t//g;
+ $value =~ s/\r\n/\n/g;
+ $FORM{$name} .= "\0" if(defined($FORM{$name}));
+ $FORM{$name} .= $value;
+ }
+
+#!!Caution javascript \ Quart
+
+ print "Content-type: text/html\n\n";
+ print <<"_HTML_TAG_";
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbSkins' ) ;
+
+ // Get the active skin.
+ var sSkin = editorInstance.Config['SkinPath'] ;
+ sSkin = sSkin.match(/[^\\/]+(?=\\/\$)/g) ;
+
+ oCombo.value = sSkin ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeSkin( skinName )
+{
+ window.location.href = window.location.pathname + "?Skin=" + skinName ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Perl - Sample 4</h1>
+ This sample shows how to change the editor skin.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the skin to load:
+ </td>
+ <td>
+ <select id="cmbSkins" onchange="ChangeSkin(this.value);" style="VISIBILITY: hidden">
+ <option value="default" selected>Default</option>
+ <option value="office2003">Office 2003</option>
+ <option value="silver">Silver</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.cgi" method="post" target="_blank">
+_HTML_TAG_
+
+ #// Automatically calculates the editor base path based on the _samples directory.
+ #// This is usefull only for these samples. A real application should use something like this:
+ #// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+ $sBasePath = $ServerPath;
+ $sBasePath = substr( $sBasePath, 0, index( $sBasePath, "_samples" ) ) ;
+
+ &FCKeditor('FCKeditor1');
+ $BasePath = $sBasePath;
+
+ if($FORM{'Skin'} ne "") {
+ $Config{'SkinPath'} = $sBasePath . 'editor/skins/' . $FORM{'Skin'} . '/' ;
+ }
+ $Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+ &Create() ;
+
+ print <<"_HTML_TAG_";
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
+_HTML_TAG_
+
+################
+#Please use this function, rewriting it depending on a server's environment.
+################
+sub GetServerPath
+{
+my $dir;
+
+ if($DefServerPath) {
+ $dir = $DefServerPath;
+ } else {
+ if($ENV{'PATH_INFO'}) {
+ $dir = $ENV{'PATH_INFO'};
+ } elsif($ENV{'FILEPATH_INFO'}) {
+ $dir = $ENV{'FILEPATH_INFO'};
+ }
+ }
+ return($dir);
+}
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sampleposteddata.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sampleposteddata.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/perl/sampleposteddata.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,101 @@
+#!/usr/bin/env perl
+
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: sampleposteddata.cgi
+# This page lists the data posted by a form.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+## START: Hack for Windows (Not important to understand the editor code... Perl specific).
+if(Windows_check()) {
+ chdir(GetScriptPath($0));
+}
+
+sub Windows_check
+{
+ # IIS,PWS(NT/95)
+ $www_server_os = $^O;
+ # Win98 & NT(SP4)
+ if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
+ # AnHTTPd/Omni/IIS
+ if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
+ # Win Apache
+ if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
+ if($www_server_os=~ /win/i) { return(1); }
+ return(0);
+}
+
+sub GetScriptPath {
+ local($path) = @_;
+ if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
+ $path;
+}
+## END: Hack for IIS
+
+require '../../fckeditor.pl';
+
+ if($ENV{'REQUEST_METHOD'} eq "POST") {
+ read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
+ } else {
+ $buffer = $ENV{'QUERY_STRING'};
+ }
+ @pairs = split(/&/,$buffer);
+ foreach $pair (@pairs) {
+ ($name,$value) = split(/=/,$pair);
+ $value =~ tr/+/ /;
+ $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+ $value =~ s/\t//g;
+ $value =~ s/\r\n/\n/g;
+ $FORM{$name} .= "\0" if(defined($FORM{$name}));
+ $FORM{$name} .= $value;
+ }
+
+ print "Content-type: text/html\n\n";
+ print <<"_HTML_TAG_";
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td nowrap>Field Name </td>
+ <td>Value</td>
+ </tr>
+_HTML_TAG_
+
+ foreach $key (keys %FORM) {
+ $postedValue = &specialchar_cnv($FORM{$key});
+ print <<"_HTML_TAG_";
+ <tr>
+ <td valign="top" nowrap><b>$key</b></td>
+ <td width="100%">$postedValue</td>
+ </tr>
+_HTML_TAG_
+ }
+ print <<"_HTML_TAG_";
+ </table>
+ </body>
+</html>
+_HTML_TAG_
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample01.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample01.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample01.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,53 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample01.php
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+include("../../fckeditor.php") ;
+?>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - PHP - Sample 1</h1>
+ This sample displays a normal HTML form with an FCKeditor with full features
+ enabled.
+ <hr>
+ <form action="sampleposteddata.php" method="post" target="_blank">
+<?php
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+$sBasePath = $_SERVER['PHP_SELF'] ;
+$sBasePath = substr( $sBasePath, 0, strpos( $sBasePath, "_samples" ) ) ;
+
+$oFCKeditor = new FCKeditor('FCKeditor1') ;
+$oFCKeditor->BasePath = $sBasePath ;
+$oFCKeditor->Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+$oFCKeditor->Create() ;
+?>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample02.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample02.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample02.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,104 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample02.php
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+include("../../fckeditor.php") ;
+?>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbLanguages' ) ;
+ for ( code in editorInstance.Language.AvailableLanguages )
+ {
+ AddComboOption( oCombo, editorInstance.Language.AvailableLanguages[code] + ' (' + code + ')', code ) ;
+ }
+ oCombo.value = editorInstance.Language.ActiveLanguage.Code ;
+}
+
+function AddComboOption(combo, optionText, optionValue)
+{
+ var oOption = document.createElement("OPTION") ;
+
+ combo.options.add(oOption) ;
+
+ oOption.innerHTML = optionText ;
+ oOption.value = optionValue ;
+
+ return oOption ;
+}
+
+function ChangeLanguage( languageCode )
+{
+ window.location.href = window.location.pathname + "?Lang=" + languageCode ;
+}
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - PHP - Sample 2</h1>
+ This sample shows the editor in all its available languages.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select a language:
+ </td>
+ <td>
+ <select id="cmbLanguages" onchange="ChangeLanguage(this.value);">
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.php" method="post" target="_blank">
+<?php
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+$sBasePath = $_SERVER['PHP_SELF'] ;
+$sBasePath = substr( $sBasePath, 0, strpos( $sBasePath, "_samples" ) ) ;
+
+$oFCKeditor = new FCKeditor('FCKeditor1') ;
+$oFCKeditor->BasePath = $sBasePath ;
+
+if ( isset($_GET['Lang']) )
+{
+ $oFCKeditor->Config['AutoDetectLanguage'] = false ;
+ $oFCKeditor->Config['DefaultLanguage'] = $_GET['Lang'] ;
+}
+else
+{
+ $oFCKeditor->Config['AutoDetectLanguage'] = true ;
+ $oFCKeditor->Config['DefaultLanguage'] = 'en' ;
+}
+
+$oFCKeditor->Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+$oFCKeditor->Create() ;
+?> <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample03.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample03.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample03.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,85 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample03.php
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+include("../../fckeditor.php") ;
+?>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbToolbars' ) ;
+ oCombo.value = editorInstance.ToolbarSet.Name ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeToolbar( toolbarName )
+{
+ window.location.href = window.location.pathname + "?Toolbar=" + toolbarName ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - PHP - Sample 3</h1>
+ This sample shows how to change the editor toolbar.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the toolbar to load:
+ </td>
+ <td>
+ <select id="cmbToolbars" onchange="ChangeToolbar(this.value);" style="VISIBILITY: hidden">
+ <option value="Default" selected>Default</option>
+ <option value="Basic">Basic</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.php" method="post" target="_blank">
+<?php
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+$sBasePath = $_SERVER['PHP_SELF'] ;
+$sBasePath = substr( $sBasePath, 0, strpos( $sBasePath, "_samples" ) ) ;
+
+$oFCKeditor = new FCKeditor('FCKeditor1') ;
+$oFCKeditor->BasePath = $sBasePath ;
+
+if ( isset($_GET['Toolbar']) )
+ $oFCKeditor->ToolbarSet = $_GET['Toolbar'] ;
+
+$oFCKeditor->Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+$oFCKeditor->Create() ;
+?>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample04.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample04.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/php/sample04.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,91 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample04.php
+ * Sample page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+include("../../fckeditor.php") ;
+?>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript">
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ var oCombo = document.getElementById( 'cmbSkins' ) ;
+
+ // Get the active skin.
+ var sSkin = editorInstance.Config['SkinPath'] ;
+ sSkin = sSkin.match( /[^\/]+(?=\/$)/g ) ;
+
+ oCombo.value = sSkin ;
+ oCombo.style.visibility = '' ;
+}
+
+function ChangeSkin( skinName )
+{
+ window.location.href = window.location.pathname + "?Skin=" + skinName ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - PHP - Sample 4</h1>
+ This sample shows how to change the editor skin.
+ <hr>
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ Select the skin to load:
+ </td>
+ <td>
+ <select id="cmbSkins" onchange="ChangeSkin(this.value);" style="VISIBILITY: hidden">
+ <option value="default" selected>Default</option>
+ <option value="office2003">Office 2003</option>
+ <option value="silver">Silver</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <form action="sampleposteddata.php" method="post" target="_blank">
+<?php
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// $oFCKeditor->BasePath = '/FCKeditor/' ; // '/FCKeditor/' is the default value.
+$sBasePath = $_SERVER['PHP_SELF'] ;
+$sBasePath = substr( $sBasePath, 0, strpos( $sBasePath, "_samples" ) ) ;
+
+$oFCKeditor = new FCKeditor('FCKeditor1') ;
+$oFCKeditor->BasePath = $sBasePath ;
+
+if ( isset($_GET['Skin']) )
+ $oFCKeditor->Config['SkinPath'] = $sBasePath . 'editor/skins/' . $_GET['Skin'] . '/' ;
+
+$oFCKeditor->Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+$oFCKeditor->Create() ;
+?>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/php/sampleposteddata.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/php/sampleposteddata.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/php/sampleposteddata.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,60 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sampleposteddata.php
+ * This page lists the data posted by a form.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Jim Michaels (jmichae3 at yahoo.com)
+ */
+?>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="../sample.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td nowrap>Field Name </td>
+ <td>Value</td>
+ </tr>
+<?php
+
+if ( isset( $_POST ) )
+ $postArray = &$_POST ; // 4.1.0 or later, use $_POST
+else
+ $postArray = &$HTTP_POST_VARS ; // prior to 4.1.0, use HTTP_POST_VARS
+
+foreach ( $postArray as $sForm => $value )
+{
+ $postedValue = htmlspecialchars( stripslashes( $value ) ) ;
+
+?>
+ <tr>
+ <td valign="top" nowrap><b><?=$sForm?></b></td>
+ <td width="100%"><?=$postedValue?></td>
+ </tr>
+<?php
+}
+?>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/sample.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/sample.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/sample.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,37 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sample.css
+ * Styles used in the samples pages.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body, td, input, select, textarea
+{
+ font-size: 12px;
+ font-family: Arial, Verdana, Sans-Serif;
+}
+
+h1
+{
+ font-weight: bold;
+ font-size: 180%;
+ margin-bottom: 10px;
+}
+
+form
+{
+ margin: 0px 0px 0px 0px;
+ padding: 0px 0px 0px 0px;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/_samples/sampleslist.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_samples/sampleslist.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_samples/sampleslist.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,80 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sampleslist.html
+ * Page used to select the sample to view.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Sample Selection</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="sample.css" rel="stylesheet" type="text/css" />
+ <script language="javascript">
+<!--
+
+if ( window.top == window )
+ document.location = 'default.html' ;
+
+function OpenSample( sample )
+{
+ if ( sample.length > 0 )
+ window.open( sample, 'Sample' ) ;
+}
+
+//-->
+ </script>
+ </head>
+ <body bottommargin="0" topmargin="0">
+ <table height="100%" border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td>
+ Please select the sample you want to view:
+ <br>
+ <select onchange="OpenSample(this.value);">
+ <option value="html/sample01.html" selected>Javascript : Sample 01 : Editor with all features</option>
+ <option value="html/sample02.html">Javascript : Sample 02 : Replacement of a TEXTAREA</option>
+ <option value="html/sample03.html">Javascript : Sample 03 : Multi-language support</option>
+ <option value="html/sample04.html">Javascript : Sample 04 : Toolbar selection</option>
+ <option value="html/sample05.html">Javascript : Sample 05 : Skins support</option>
+ <option value="html/sample06.html">Javascript : Sample 06 : Plugins support</option>
+ <option value="html/sample07.html">Javascript : Sample 07 : Full Page editing</option>
+ <option value="html/sample08.html">Javascript : Sample 08 : Editor API usage</option>
+ <option value="html/sample09.html">Javascript : Sample 09 : Complex form (multiple editors)</option>
+ <option value=""> </option>
+ <option value="cfm/sample01.cfm">ColdFusion : Sample 01 : Editor with all features</option>
+ <option value="cfm/sample02_mx.cfm">ColdFusion : Sample 02 : Advanced version for ColdFusion MX</option>
+ <option value=""> </option>
+ <option value="asp/sample01.asp">ASP : Sample 01 : Editor with all features</option>
+ <option value="asp/sample02.asp">ASP : Sample 02 : Multi-language support</option>
+ <option value="asp/sample03.asp">ASP : Sample 03 : Toolbar selection</option>
+ <option value="asp/sample04.asp">ASP : Sample 04 : Skins support</option>
+ <option value=""> </option>
+ <option value="perl/sample01.cgi">Perl : Sample 01 : Editor with all features</option>
+ <option value="perl/sample02.cgi">Perl : Sample 02 : Multi-language support</option>
+ <option value="perl/sample03.cgi">Perl : Sample 03 : Toolbar selection</option>
+ <option value="perl/sample04.cgi">Perl : Sample 04 : Skins support</option>
+ <option value=""> </option>
+ <option value="php/sample01.php">PHP : Sample 01 : Editor with all features</option>
+ <option value="php/sample02.php">PHP : Sample 02 : Multi-language support</option>
+ <option value="php/sample03.php">PHP : Sample 03 : Toolbar selection</option>
+ <option value="php/sample04.php">PHP : Sample 04 : Skins support</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/001.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/001.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/001.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 001.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css" />
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ <script>
+
+function SubmitForm()
+{
+ document.forms[0].submit() ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 001</h1>
+ <P>
+ <STRONG>Expected results</STRONG>: The editor content must be loaded and the
+ submit button must post the editors html.<BR>
+ <STRONG>Configurations</STRONG>: Default<BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.</LI>
+ <LI>
+ Hit submit button and check the posted data.</LI></OL>
+ <P>
+ <hr>
+ </P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit"> <input type="button" value="Submit by Code" onclick="SubmitForm();">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/002.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/002.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/002.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,70 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 002.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 002</h1>
+ <P><STRONG>Expected results</STRONG>: The editor must work correctly when not value
+ has been set<BR>
+ <STRONG>Configurations</STRONG>: Default<BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.
+ <LI>
+ Type some text and format it (use the "Bold" and "Style" commands).
+ <LI>
+ Check the toolbar buttons context sensitiveness.
+ <LI>
+ Switch to Source mode.
+ <LI>
+ Repeat steps 2, 3 and 4.
+ <LI>
+ Hit submit button and check the submitted data.
+ </LI>
+ </OL>
+ <P>
+ <hr>
+ <P></P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/003.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/003.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/003.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,72 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 003.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 003</h1>
+ <P><STRONG>Expected results</STRONG>: The user must be able to edit the complete
+ page html.<BR>
+ <STRONG>Configurations</STRONG>: FullPage = true ;<BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.
+ <LI>
+ Type some text.
+ <LI>
+ Switch to Source mode.
+ <LI>
+ Switch back to WYSIWYG mode.
+ <LI>
+ Repeat steps 2, 3 and 4.
+ <LI>
+ Hit submit button and check the submitted data.
+ </LI>
+ </OL>
+ <P>
+ <hr>
+ <P></P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Config["FullPage"] = true ;
+oFCKeditor.Value = '<html>\n\n<head><title></title></head><body>This is a Full Page editing Test:<br/>This is an image: <img src="' + sBasePath + 'editor/images/smiley/msn/lightbulb.gif" alt=""/></body></html>' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/004.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/004.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/004.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,105 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 004.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ <script language="javascript">
+
+function Show()
+{
+ document.getElementById('eEditor').style.display = '' ;
+ document.getElementById('eNoEditor').style.display = 'none' ;
+
+ // This is a hack for Gecko... it stops editing when the editor is hidden.
+ if ( !document.all )
+ {
+ var oEditor = FCKeditorAPI.GetInstance( 'FCKeditor1' ) ;
+
+ if ( oEditor.EditMode == FCK_EDITMODE_WYSIWYG )
+ oEditor.MakeEditable() ;
+ }
+}
+
+function Hide()
+{
+ document.getElementById('eEditor').style.display = 'none' ;
+ document.getElementById('eNoEditor').style.display = '' ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1 id="Prova">FCKeditor - Test 004</h1>
+ <P>
+ <STRONG>Expected results</STRONG> : The editor must still work when hidding it
+ programmatically (through javascript).<BR>
+ <STRONG>Configurations</STRONG>: Default<BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the page to load.
+ <LI>
+ Hit the "Show Editor" button.
+ <LI>
+ Insert some text and format it.
+ <LI>
+ Hit the "Hide Editor" button.
+ <LI>
+ Hit the "Submit" and check the posted HTML.
+ <LI>
+ Close the "Submit" window.
+ <LI>
+ Hit the "Show Editor" button.
+ <LI>
+ Repeat steps 2 and 4.</LI></OL>
+ <P>
+ <hr>
+ <P></P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <div id="eNoEditor">
+ <input type="button" value="Show Editor" onclick="Show();">
+ </div>
+ <div id="eEditor" style="DISPLAY: none">
+ <input type="button" value="Hide Editor" onclick="Hide();">
+ <br><br>
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ </div>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/005.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/005.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/005.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,68 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 005.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 005</h1>
+ <P>
+ <STRONG>Expected results</STRONG>: The editor content must be loaded and the
+ submit button must post the editors html. No javascript errors should be thorwn
+ (security errors).<BR>
+ <STRONG>Configurations</STRONG>: BaseHref = http://www.fckeditor.net
+ <BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.
+ <LI>
+ Create a table with border =
+ 0 and an anchor.
+ <LI>Create an image and points it to /images/logotop.gif
+ <LI>Hit submit button and check the posted data.</LI></OL>
+ <P>
+ <hr>
+ <P></P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Config['BaseHref'] = 'http://www.fckeditor.net' ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/006.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/006.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/006.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,75 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 006.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 006</h1>
+ <P>
+ <STRONG>Expected results</STRONG>: The editor content must be loaded and the
+ submit button must post the editors html. No javascript errors should be thorwn
+ (security errors).<BR>
+ <STRONG>Configurations</STRONG>: BaseHref = http://www.fckeditor.net / FullPage
+ = true
+ <BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.
+ <LI>
+ Create a table with border = 0 and an anchor.
+ <LI>
+ Create an image and points it to /images/logotop.gif
+ <LI>
+ Paste the following CSS tag in the source: <link href="/css/main.css" type="text/css" rel="stylesheet" />
+ <LI>
+ Check the WYSIWYG mode.
+ <LI>
+ Hit submit button and check the posted data.</LI></OL>
+ <P>
+ <hr>
+ <P></P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Config['FullPage'] = true ;
+oFCKeditor.Config['BaseHref'] = 'http://www.fckeditor.net' ;
+oFCKeditor.Value = '<html><head><title></title></head><body>This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.</body></html>' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/007.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/007.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/007.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,64 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 007.html
+ * Test Page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 007</h1>
+ <P>
+ <STRONG>Expected results</STRONG>: The editor content must be loaded and the
+ submit button must post the editor's html.<BR>
+ <STRONG>Configurations</STRONG>: Default<BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.
+ <LI>
+ Enter some text.
+ <LI>
+ Hit submit button and check the posted data.</LI></OL>
+ <P>
+ <hr>
+ <P></P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Value = '<div></div>' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/008.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/008.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/008.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,88 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 008.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ <script>
+
+function Validate()
+{
+ // Get the editor instance that we want to interact with.
+ var oEditor = FCKeditorAPI.GetInstance('FCKeditor1') ;
+
+ // Get the editor contents in XHTML.
+ if ( oEditor.GetXHTML( false ).length == 0 )
+ {
+ alert( 'The "Save" command must not submit if the editor is empty' ) ;
+ return false ;
+ }
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 008</h1>
+ <P>
+ <STRONG>Expected results</STRONG>: The editor content must be loaded and the
+ submit button must post the editors html.<BR>
+ <STRONG>Configurations</STRONG>: Default<BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.
+ <LI>
+ Select all the content with the mouse and delete it.
+ <LI>
+ Hit the "Save" button - an alert should popup.
+ <LI>
+ Insert some text.
+ <LI>
+ Hit the "Save" button and check the posted data.
+ <LI>
+ Close the data window.
+ <LI>
+ Press the "New Page" button.
+ <LI>
+ Hit the "Save" button - an alert should popup.</LI></OL>
+ <P>
+ <hr>
+ <P></P>
+ <form action="sampleposteddata.asp" method="post" target="_blank" onsubmit="return Validate();">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/009.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/009.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/009.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,109 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: 009.html
+ * Test page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Sample</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css">
+ <script type="text/javascript" src="../fckeditor.js"></script>
+ <script>
+
+function FCKeditor_OnComplete( editorInstance )
+{
+ // Attach to the event fired when the editor's HTML is set.
+ editorInstance.Events.AttachEvent( 'OnAfterSetHTML', FCKeditor_OnAfterSetHTML ) ;
+}
+
+function FCKeditor_OnAfterSetHTML( editorInstance )
+{
+ // Get the actual color from the combo.
+ var sColor = document.getElementById('ActualColor').value ;
+
+ // Set the color of the editor instance.
+ editorInstance.EditorDocument.body.style.backgroundColor = sColor ;
+}
+
+function SetActualColor()
+{
+ // Get the editor instance that we want to interact with.
+ var oEditor = FCKeditorAPI.GetInstance('FCKeditor1') ;
+
+ // Call the event function to set the color.
+ FCKeditor_OnAfterSetHTML( oEditor ) ;
+}
+
+ </script>
+ </head>
+ <body>
+ <h1>FCKeditor - Test 009</h1>
+ <P>
+ <STRONG>Expected results</STRONG> : The user should be able to background color
+ of the editor by code.<BR>
+ <STRONG>Configurations</STRONG>: Default<BR>
+ <STRONG>Steps to Reproduce</STRONG>:
+ </P>
+ <OL>
+ <LI>
+ Wait the editor to load.
+ <LI>
+ Type some text.
+ <LI>
+ Change the background color using the combo.
+ <LI>
+ Type more text.
+ <LI>
+ Switch to source view.
+ <LI>
+ Switch back to WYSIWYG. The background color must be the same.
+ <LI>
+ Repeate steps 3 to 6.
+ <LI>
+ Submit the form.</LI></OL>
+ <P>
+ <hr>
+ <P>
+ Select a color for the background:<br>
+ <select id="ActualColor" onchange="SetActualColor();">
+ <option value="white" selected>White</option>
+ <option value="red">Red</option>
+ <option value="green">Green</option>
+ <option value="gold">Gold</option>
+ </select>
+ </P>
+ <form action="sampleposteddata.asp" method="post" target="_blank">
+ <script type="text/javascript">
+<!--
+// Automatically calculates the editor base path based on the _samples directory.
+// This is usefull only for these samples. A real application should use something like this:
+// oFCKeditor.BasePath = '/fckeditor/' ; // '/fckeditor/' is the default value.
+var sBasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('_testcases')) ;
+
+var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
+oFCKeditor.BasePath = sBasePath ;
+oFCKeditor.Value = 'This is some <strong>sample text</strong>. You are using <a href="http://www.fckeditor.net/">FCKeditor</a>.' ;
+oFCKeditor.Create() ;
+//-->
+ </script>
+ <br>
+ <input type="submit" value="Submit">
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/sampleposteddata.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/sampleposteddata.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/sampleposteddata.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,44 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sampleposteddata.asp
+ * This page lists the data posted by a form.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Samples - Posted Data</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="testcases.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body>
+ <h1>FCKeditor - Samples - Posted Data</h1>
+ This page lists all data posted by the form.
+ <hr>
+ <table width="100%" border="1" cellspacing="0" bordercolor="#999999">
+ <tr style="FONT-WEIGHT: bold; COLOR: #dddddd; BACKGROUND-COLOR: #999999">
+ <td noWrap>Field Name </td>
+ <td>Value</td>
+ </tr>
+ <% For Each sForm in Request.Form %>
+ <tr>
+ <td valign="top" nowrap><b><%=sForm%></b></td>
+ <td width="100%"><%=Replace( Server.HTMLEncode( Request.Form(sForm) ), Chr(13), "<br>" )%></td>
+ </tr>
+ <% Next %>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/_testcases/testcases.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_testcases/testcases.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_testcases/testcases.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,37 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: testcases.css
+ * Styles used in the samples pages.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body, td, input, select, textarea
+{
+ font-size: 12px;
+ font-family: Arial, Verdana, Sans-Serif;
+}
+
+h1
+{
+ font-weight: bold;
+ font-size: 180%;
+ margin-bottom: 10px;
+}
+
+form
+{
+ margin: 0px 0px 0px 0px;
+ padding: 0px 0px 0px 0px;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/_whatsnew.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/_whatsnew.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/_whatsnew.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,2132 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+-->
+<html>
+ <head>
+ <title>FCKeditor - What's New?</title>
+ <style>
+ BODY { FONT-FAMILY: Arial, Verdana, Sans-Serif }
+ P { MARGIN-LEFT: 20px }
+ </style>
+ </head>
+ <body>
+ <H3>
+ Version 2.1.1</H3>
+ <P>New Features and Improvements:</P>
+ <UL>
+ <LI>
+ The new "<STRONG>Insert Page Break</STRONG>" command (for printing) has been introduced.*
+ <LI>The editor package now has a root directory called "FCKeditor".</LI></UL>
+ <P>Fixed Bugs:</P>
+ <UL>
+ <LI>
+ [<A
+ href="https://sourceforge.net/tracker/index.php?func=detail&aid=1326285&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1326285</A>] [<A
+ href="https://sourceforge.net/tracker/index.php?func=detail&aid=1316430&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1316430</A>] [<A
+ href="https://sourceforge.net/tracker/index.php?func=detail&aid=1323662&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1323662</A>] [<A
+ href="https://sourceforge.net/tracker/index.php?func=detail&aid=1326223&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1326223</A>] We are doing a little step back with this
+ version. The ENTER and BACKSPACE behavior changes for Firefox have been
+ remove. It is a nice feature, but we need much more testing on it. It
+ introduced some bugs and so its preferable to not have that feature, avoiding
+ problems (even if that feature was intended to solve some issues).
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1289372&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1275714</A>] Comments in the beginning of the
+ source are now preserved when using the "undo" and "redo" commands.
+ <LI>
+ The "undo" and "redo" commands now work for the Style
+ command.
+ <LI>An error in the execution of the pasting commands on
+ Firefox has been fixed.
+ <LI>[<A
+ href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=1326184&group_id=75348"
+ target="_blank">SF BUG-1326184</A>] No strange (invalid) entities are created
+ when using Firefox. Also, the &nbsp; used by the FillEmptyBlocks setting
+ is maintained even if you disable the ProcessHTMLEntities setting.</LI></UL>
+ <P>* This version has been partially sponsored by <A href="http://www.acttive.com.br/" target="_blank">
+ Acctive Software S.A.</A>.</P>
+ <H3>Version 2.1</H3>
+ <P>New Features and Improvements:</P>
+ <UL>
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1200328&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1200328</A>] The editor now offers a way to
+ "protect" part of the source to remain untouched while editing or changing
+ views. Just use the "FCKConfig.ProtectedSource" object to configure it and
+ customize to your needs. It is based on regular expressions. See fckconfig.js
+ for some samples.
+ <LI>
+ The editor now offers native support for <STRONG>Lasso</STRONG>. Thanks and
+ welcome to our new developer Jason Huck.
+ <LI>
+ New language files are available:
+ <UL>
+ <LI>
+ <STRONG>Faraose</STRONG>
+ (by Smin Lassaberg and Helgi Arnthorsson)
+ <LI>
+ <STRONG>Malay</STRONG>
+ (by Fairul Izham Mohd Mokhlas)
+ <LI>
+ <STRONG>Mongolian</STRONG>
+ (by Lkamtseren Odonbaatar)
+ <LI>
+ <STRONG>Vietnamese</STRONG> (by Phan Binh Giang)</LI></UL>
+ <LI>
+ A new configurable ColdFusion connector is available. Thanks to Mark
+ Woods. Many enhancements has been introduced with it.
+ <LI>
+ The PHP connector for the default File Browser now sorts the folders and files
+ names.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1289372&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1289372</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1282758&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1282758</A>] In the PHP connector it is now
+ possible to set the absolute (server) path to the User Files directory,
+ avoiding problems with Virtual Directories, Symbolic Links or Aliases. Take a
+ look at the config.php file.
+ <LI>
+ The ASP.Net uploader (for Quick Uploads) has been added to the package.
+ <LI>
+ A new way to define <STRONG>simple "combo" toolbar items</STRONG>
+ , like Style and Font, has been introduced. Thanks to Steve
+ Lineberry. See sample06.html and the "simplecommands" plugin to fully
+ understand it.
+ <LI>
+ A new test case has been added that shows how to set the editor background
+ dynamically without using a CSS.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155906&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155906</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1110116&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1110116</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1216332&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1216332</A>] The "AutoDetectPasteFromWord"
+ configuration option is back (IE only feature).
+ <LI>
+ The new "OnAfterLinkedFieldUpdate" event has been introduced. If is fired
+ when the editor updates its hidden associated field.
+ <LI>
+ Attention: The color of the right border of the toolbar (left on RTL
+ interfaces) has been moved from code to the CSS (TB_SideBorder class). Update
+ your custom skins.
+ <LI>
+ A sample "htaccess.txt" file has been added to the editor's package to
+ show how to configure some Linux sites that could present problems on Firefox
+ with "Illegal characters" errors. Respectively the "" chars.
+ <LI>
+ With the JavaScript, ASP and PHP integration files, you can set the QueryString
+ value "fcksource=true" to load the editor using the source files (located in
+ the _source directory) instead of the compressed ones. Thanks to Kae Verens for
+ the suggestion.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1246623&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1246623</A>] The new configuration option
+ "ForceStrongEm" has been introduced so you can force the editor to convert all
+ <B> and <I> tags to <STRONG> and <EM> respectively.
+ <LI>
+ A nice contribution has been done by Goss Interactive Ltd:
+ <UL>
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1246949&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1246949</A>] Implemented ENTER key and BACKSPACE key
+ handlers for Gecko so that P tags (or an appropriate block element) get
+ inserted instead of BR tags when not in the UseBROnCarriageReturn config mode.
+ <BR>
+ The ENTER key handling has been written to function much the same as the ENTER
+ key handling on IE : as soon as the ENTER key is pressed, existing content will
+ be wrapped with a suitable block element (P tag) as appropriate and a new block
+ element (P tag) will be started.
+ <BR>
+ The ENTER key handler also caters for pressing ENTER within empty list items -
+ ENTER in an empty item at the top of a list will remove that list item and
+ start a new P tag above the list; ENTER in an empty item at the bottom of a
+ list will remove that list item and start a new P tag below the list; ENTER in
+ an empty item in the middle of a list will remove that list item, split the
+ list into two, and start a new P tag between the two lists.
+ <LI>
+ Any tables that are found to be incorrectly nested within a block element (P
+ tag) will be moved out of the block element when loaded into the editor. This
+ is required for the new ENTER/BACKSPACE key handlers and it also avoids
+ non-compliant HTML.
+ <LI>
+ The InsertOrderedList and InsertUnorderedList commands have been overridden on
+ Gecko to ensure that block elements (P tags) are placed around a list item's
+ content when it is moved out of the list due to clicking on the editor's list
+ toolbar buttons (when not in the UseBROnCarriageReturn config mode).
+ </LI>
+ </UL>
+ </LI>
+ </UL>
+ <P>Fixed Bugs:</P>
+ <UL>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1253255&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1253255</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1253255&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1265520</A>] Due to changes on version 2.0, the
+ anchor list was not anymore visible in the link dialog window. It has been
+ fixed.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=1242979&group_id=75348"
+ target="_blank">SF BUG-1242979</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1251354&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1251354</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1256178&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1256178</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1274841&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1274841</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1303949&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1303949</A>] Due to a bug on Firefox, some keys
+ stopped working on startup over Firefox. It has been fixed.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1251373&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1251373</A>
+ ] The above fix also has corrected some strange behaviors on Firefox.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1144258"
+ target="_blank">SF BUG-1144258</A>] [<A href="https://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1092081"
+ target="_blank">SF BUG-1092081</A>] The File Browsers now run on
+ the same server session used in the page where the editor is placed in (IE
+ issue). Thanks to Simone Chiaretta.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1305619&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1305619</A>
+ ] No more repeated login dialogs when running the editor with Windows
+ Integrated Security with IIS.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1245304&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1245304</A>] The Test Case 004 is now working
+ correctly. It has been changed to set the editor hidden at startup.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1290610&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1290610</A>
+ ] Over HTTPS, there were some warnings when loading the Images, Flash and Link
+ dialogs. Fixed.
+ <LI>
+ Due to Gecko bugs, two errors were thrown when loading the editor in a hidden
+ div. Workarounds have been introduced. In any case, the testcase 004 hack is
+ needed when showing the editor (as in a tabbed interface).
+ <LI>
+ An invalid path in the dialogs CSS file has been corrected.
+ <LI>
+ On IE, the Undo/Redo can now be controlled using the Ctrl+Z and Ctrl+Y shortcut
+ keys.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1295538&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1295538</A>
+ ] A few Undo/Redo fixes for IE have been done.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1247070&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1247070</A>] On Gecko, it is now possible to use
+ the shortcut keys for Bold (CTRL+B), Italic (CTRL+I) and Underline (CTRL+U),
+ like in IE.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1274303&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1274303</A>] The "Insert Column" command is now
+ working correctly on TH cells. It also copies any attribute applied to the
+ source cells.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1287070&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1287070</A>
+ ] In the Universal Keyboard, the Arabic keystrokes translator is now working
+ with Firefox. Thanks again to Abdul-Aziz Al-Oraij.
+ <LI>
+ The editor now handles AJAX requests with HTTP status 304.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1157780&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1157780</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1229077&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1229077</A>] Weird comments are now handled
+ correctly (ignored on some cases).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155774&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155774</A>] A spelling error in the Bulleted
+ List Properties dialog has been corrected.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1272018&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1272018</A>] The ampersand character can now be
+ added from the Special Chars dialog.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1263161&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1263161</A>] A small fix has been applied to the
+ sampleposteddata.php file. Thanks to Mike Wallace.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1241504&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1241504</A>] The editor now looks also for the
+ ID of the hidden linked field.
+ <LI>
+ The caption property on tables is now working on Gecko. Thanks to Helen Somers
+ (Goss Interactive Ltd).
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1297431&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1297431</A>] With IE, the editor now works
+ locally when its files are placed in a directory path that contains spaces.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1279551&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1279551</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1242105&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1242105</A>] On IE, some features are dependant
+ of ActiveX components (secure... distributed with IE itself). Some
+ security setting could avoid the usage of those components and the editor would
+ stop working. Now a message is shown, indicating the use the minimum necessary
+ settings need by the editor to run.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1298880&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1298880</A>] Firefox can't handle the STRONG and
+ EM tags. Those tags are now converted to B and I so it works accordingly.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1271723&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1271723</A>] On IE, it is now possible to select
+ the text and work correctly in the contents of absolute positioned/dimensioned
+ divs.
+ <LI>
+ On IE, there is no need to click twice in the editor to activate the
+ cursor in the editing area.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=1221621&group_id=75348"
+ target="_blank">SF BUG-1221621</A>] Many "warnings" in the Firefox
+ console are not thrown anymore.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1295526&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1295526</A>] While editing on "FullPage"
+ mode the basehref is now active for CSS "link" tags.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1222584&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1222584</A>] A small fix to the PHP connector
+ has been applied.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1281313&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1281313</A>] A few small changes to avoid
+ problems with Plone. Thanks to Jean-mat.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1275911&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1275911</A>] A check for double dots sequences on
+ directory names on creation has been introduced to the PHP and ASP connectors.</LI></UL>
+ <H3>Version 2.0</H3>
+ <P>New Features and Improvements:</P>
+ <UL>
+ <LI>
+ The new "<STRONG>Flash</STRONG>" command is available. Now you can
+ easily handle Flash content, over IE and Gecko, including server browser
+ integration and context menu support. Due to limitations of the browsers, it is
+ not possible to see the preview of the movie while editing, so a nice
+ "placeholder" is used instead. *
+ <LI>
+ A "<STRONG>Quick Upload</STRONG>
+ " option is now available in the link, image and flash dialog windows, so the
+ user don't need to go (or have) the File Browser for this operations. The ASP
+ and PHP uploader are included. Take a look at the configuration
+ file.***
+ <LI>
+ Added support for <STRONG>Active FoxPro Pages</STRONG>
+ . Thanks to our new developer, Snke Freitag.
+ <LI>
+ It is now possible to <STRONG>disable the size handles</STRONG>
+ for images and tables (IE only feature). Take a look at the DisableImageHandles
+ and DisableTableHandles configuration options.
+ <LI>
+ The handles on form fields (small squares around them) and the inline
+ editing of its contents have been disabled. This makes it easier to
+ users to use the controls.
+ <LI>
+ A much better support for Word pasting operations has been introduced. Now it
+ uses a dialog box, in this way we have better results and more control.**
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1225372&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1225372</A>] A small change has been done to the
+ PHP integration file. The generic __construct constructor has been added for
+ better PHP 5 sub-classing compatibility (backward compatible). Thanks to
+ Marcus Bointon.</LI></UL>
+ <P>Fixed Bugs:</P>
+ <UL>
+ <LI>
+ ATTENTION: Some security changes have been made to the connectors. Now you must
+ explicitly enable the connector you want to use. Please test your application
+ before deploying this update.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1211591"
+ target="_blank">SF BUG-1211591</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1204273&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1204273</A>] The connectors have been changed so
+ it is not possible to use ".." on directory names.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1219734&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1219734</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1219728&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1219728</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1208654&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1208654</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1205442&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1205442</A>] There was an error in the page
+ unload on some cases that has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1209708"
+ target="_blank">SF BUG-1209708</A>] [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1214125"
+ target="_blank">SF BUG-1214125</A>] The undo on IE is now working
+ correctly when the user starts typing.
+ <LI>
+ The preview now loads "Full Page" editing correctly. It also uses the same
+ XHTML code produced by the final output.
+ <LI>
+ The "Templates" dialog was not working on some very specific (and strange)
+ occasions over IE.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=1199631&group_id=75348"
+ target="_blank">SF BUG-1199631</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1171944&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1171944</A>] A new option is available to avoid
+ a bad IE behavior that shows the horizontal scrollbar even when not needed. You
+ can now force the vertical scrollbar to be always visible. Just set the
+ "IEForceVScroll" configuration option to "true". Thanks to Grant Bartlett.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1212026&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1212026</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1228860&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1228860</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1211775&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1211775</A>] [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1199824"
+ target="_blank">SF BUG-1199824</A>] An error in the Packager has been
+ corrected.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1163669"
+ target="_blank">SF BUG-1163669</A>] The XHTML processor now adds a
+ space before the closing slash of tags that don't have a closing tag, like
+ <br />.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1213733&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1213733</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1216866&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1216866</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1209673&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1209673</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155454&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155454</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1187936&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1187936</A>
+ ] Now, on Gecko, the source is opened in a dialog window to avoid fatal
+ errors (Gecko bugs).
+ <LI>
+ Some pages have been changed to avoid importing errors on Plone. Thanks to
+ Arthur Kalmenson.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1171606&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1171606</A>] There is a bug on IE that
+ makes the editor to not work if the instance name matches a meta tag name.
+ Fixed.
+ <LI>
+ On Firefox, the source code is now opened in a dialog box, to avoid error on
+ pages with more than one editor.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1225703&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1225703</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1214941&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1214941</A>] The "ForcePasteAsPlainText"
+ configuration option is now working correctly on Gecko browsers. Thanks to
+ Manuel Polo.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1228836&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1228836</A>] The "Show Table Borders" feature is
+ now working on Gecko browsers.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1212529&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1212529</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1212517&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1212517</A>] The default File Browser now
+ accepts connectors with querystring parameters (with "?"). Thanks to Tomas
+ Jucius.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1233318&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1233318</A>] A JavaScript error thrown when
+ using the Print command has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1229696&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1229696</A>] A regular expression has been
+ escaped to avoid problems when opening the code in some editors. It has been
+ moved to a dialog window.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1231978&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1231978</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1228939&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1228939</A>] The Preview window is now using the
+ Content Type and Base href.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1232056&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1232056</A>] The anchor icon is now working
+ correctly on IE.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1232056&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1202468</A>] The anchor icon is now available on
+ Gecko too.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1236279&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1236279</A>] A security warning has been
+ corrected when using the File Browser over HTTPS.
+ <LI>
+ The ASP implementation now avoid errors when setting the editor value to null
+ values.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1237359&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1237359</A>] The trailing <BR> added by
+ Gecko at the end of the source is now removed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1170828"
+ target="_blank">SF BUG-1170828</A>] No more &nbsp; is added to the
+ source when using the "New Page" button.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1165264&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1165264</A>] A new configuration option has
+ been included to force the editor to ignore empty paragraph
+ values (<p>&nbsp;</p>), returning empty ("").
+ <LI>
+ No more &nbsp; is added when creating a table or adding columns, rows or
+ cells.
+ <LI>
+ The <TD> tags are now included in the FillEmptyBlocks configuration
+ handling.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1224829&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1224829</A>] A small bug in the "Find" dialog
+ has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1221307&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1221307</A>] A small bug in the "Image" dialog
+ has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1219981&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1219981</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155726&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155726</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1178473&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1178473</A>] It is handling the <FORM>,
+ <TEXTAREA> and <SELECT> tags "name" attribute correctly. Thanks to
+ thc33.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1205403&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1205403</A>] The checkbox and radio button
+ values are now handled correctly in their dialog windows. Thanks to thc33.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1236626&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1236626</A>] The toolbar now doesn't need to
+ collapse when unloading the page (IE only).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1212559&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1212559</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1017231&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1017231</A>] The "Save" button now calls the
+ "onsubmit" event before posting the form. The submit can be cancelled if the
+ onsubmit returns "false".
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1215823&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1215823</A>] The editor now works correctly on
+ Firefox if it values is set to "<p></p>".
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1217546&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1217546</A>] No error is thrown when "pasting as
+ plain text" and no text is available for pasting (as an image for example).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1207031&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1207031</A>] [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1223978"
+ target="_blank">SF BUG-1223978</A>] The context menu is now available
+ in the source view.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/?group_id=75348&atid=543653&func=detail&aid=1213871"
+ target="_blank">SF BUG-1213871</A>] Undo has been added to table
+ creation and table operation commands.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1205211&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1205211</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1229941&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1229941</A>] Small bug in the mcpuk file
+ browser have been corrected.</LI></UL>
+ <P>* This version has been partially sponsored by <A href="http://www.infineon.com/" target="_blank">
+ Infineon Technologies AG</A>.<BR>
+ ** This version has been partially sponsored by <a href="http://www.visualsoft.co.uk">
+ Visualsoft</a> <a href="http://www.visualsoft.co.uk/websolutions.html">Web
+ Solutions</a>.<BR>
+ *** This version has been partially sponsored by <A href="http://www.webcrossing.com" target="_blank">
+ Web Crossing, Inc</A>.</P>
+ <H3>Version 2.0 FC (Final Candidate)</H3>
+ <P>New Features and Improvements:</P>
+ <UL>
+ <LI>
+ A new tab called "<STRONG>Link</STRONG>" is available in the<STRONG> Image Dialog</STRONG>
+ window. In this way you can insert or modify the image link directly from that
+ dialog.*
+ <LI>
+ The new "<STRONG>Templates</STRONG>" command is now available. Now the user
+ can select from a list of pre-build HTML and fill the editor with it. Take a
+ look at the "_docs" for more info.**
+ <LI>
+ The <A href="http://mcpuk.net/fbxp/" target="_blank">mcpuk's</A>
+ File Browser for PHP has been included in the package. He became the official
+ developer of the File Manager for FCKeditor, so we can expect good news in the
+ future.
+ <LI>
+ New configuration options are available to <STRONG>hide tabs</STRONG> from the <STRONG>
+ Image</STRONG> Dialog and <STRONG>Link</STRONG>
+ Dialog windows: LinkDlgHideTarget, LinkDlgHideAdvanced, ImageDlgHideLink and
+ ImageDlgHideAdvanced.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1189442&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1189442</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1187164&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1187164</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1185905&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1185905</A>] It is now possible to configure the
+ editor to <STRONG>not convert Greek</STRONG> or special <STRONG>Latin </STRONG>
+ letters to ther specific HTML entities. You can also configure it to not
+ convert any character at all. Take a look at the "ProcessHTMLEntities",
+ "IncludeLatinEntities" and "IncludeGreekEntities" configuration options.
+ <LI>
+ New language files are available:
+ <UL>
+ <LI>
+ <STRONG>Basque</STRONG>
+ (by Ibon Igartua)
+ <LI>
+ <STRONG>English (Australia / United Kingdom)</STRONG>
+ (by Christopher Dawes)
+ <LI>
+ <STRONG>Ukrainian</STRONG> (by Alexander Pervak)</LI></UL>
+ <LI>
+ The version and date information have been removed from the files headers to
+ avoid unecessary diffs in source control systems when new versions are released
+ (from now on).
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1159854&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1159854</A>] Ther HTML output rendered by the
+ server side integration files are now XHTML compatible.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1181823&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1181823</A>] It is now possible to set the
+ desired DOCTYPE to use when edit HTML fragments (not in Full Page mode).
+ <LI>
+ There is now an optional way to implement different "mouse over" effects to the
+ buttons when they are "on" of "off".</LI></UL>
+ <P>Fixed Bugs:</P>
+ <UL>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1162200&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1162200</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1161633&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1161633</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1050293&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1050293</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1058948&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1058948</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1109120&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1109120</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155408&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155408</A>] The IE memory leak bug has been
+ solved. The code has been completely reviewed and many memory usage
+ improvements have been done.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1179645&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1179645</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1183252&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1183252</A> ] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1166779&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1181647</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155627&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155627</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155782&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155782</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155750&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155750</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1157166&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1157166</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1157857&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1157857</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1158121&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1158121</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1177153&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1177153</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1175847&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1175847</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1155747&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1155747</A>] There was a loading problem in
+ Gecko browsers in some cases. It has been solved.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1161147&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1161147</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1157635&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1157635</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1149805&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1149805</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1124600&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1124600</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1117535&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1117535</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1118145&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1118145</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1098113&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1098113</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1092272&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1092272</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1086416&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1086416</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1027952&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1027952</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=978441&group_id=75348&atid=543653"
+ target="_blank">SF BUG-978441</A>
+ ] A custom Undo/Redo system has been implemented for IE.
+ <LI>
+ The editor startup execution is now made in the right order (so configurations
+ override works correctly).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1166779&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1166779</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1166651&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1166651</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1066198&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1066198</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1090388&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1090388</A>
+ ] No more "illegible" characters in the toolbar when "ClearType" is
+ active.
+ <LI>
+ It is now possible to set the "width" style of the BODY tag in the
+ EditorAreaCSS to limit the editing area size.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1113620&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1113620</A>] In IE, the editor doesn't generate
+ new entries in the browser history anymore.
+ <LI>
+ The editor now uses the same method used on version RC2 to load its contents on
+ Gecko. It is now possible to have more than one editor in the page. This change
+ has a negative impact: the BaseHref property is not working.
+ <LI>
+ Changes have been made to make the editor work with PHP versions older
+ than 2.1.0.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1190835&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1190835</A>] [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=1196547&group_id=75348"
+ target="_blank">SF BUG-1196547</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1156863&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1156863</A>] The "Insert Horizontal Line"
+ command is now working correctly. Thanks to Hector Raul Colonia Coral.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1101861&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1101861</A>] The editor now shows a normal
+ textarea correctly (as expected) on Safari browsers (and all "like Gecko"
+ browsers). Thanks to Bob Paul.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1182224&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1182224</A>] The PHP connector can now handle
+ file extensions in upper case, like JPG or Gif, correctly. Thanks to Georg
+ Ivancsic.
+ <LI>
+ The "sample06.html" is now working correctly with Gecko browsers.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1156660&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1156660</A>] Some fixes have been applied to the
+ Universal Keyboard. Thanks to Abdul-Aziz Al-Oraij.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1192881&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1192881</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1185006&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1185006</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1156068&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1156068</A>] The "Browse Server" button is now
+ working correctly for the Background Image in the "Document Properties" dialog
+ window (full page editing). The active "BaseHref" is also set to the preview
+ window.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1191704&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1191704</A>] Invalid HTML tags (according to the
+ W3C naming standards for XHTML) are ignored with no errors.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1185911&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1185911</A>] The Greek language file name has
+ been corrected to "el.js".
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1181572&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1181572</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1158421&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1158421</A>] The "Print" button is now active on
+ startup.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1181572&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1165219</A>] No error occours when the user
+ defines just one color to the FontColors on "in page" configurations.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1162957&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1162957</A>] The small problem with Zope
+ (ZPT) has been solved.
+ <LI>
+ Some small RTL / LTR corrections has been done in the interface and the Farsi
+ language has been added to the Universal Keyboard. Thanks to Silver
+ Baghdasarian.</LI></UL>
+ <P>* This version has been partially sponsored by the <A href="http://www.hamilton.edu">
+ Hamilton College</A>.<BR>
+ ** This version has been partially sponsored by <A href="http://www.infineon.com/" target="_blank">
+ Infineon Technologies AG</A>.</P>
+ <H3>Version 2.0 RC3 (Release Candidate 3)</H3>
+ <P>New Features and Improvements:</P>
+ <UL>
+ <LI>
+ The editor now offers native <STRONG>Perl integration</STRONG>! Thanks and
+ welcome to Takashi Yamaguchi, our official Perl developer.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1026584&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1026584</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1112692&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1112692</A>] <STRONG>Formatting </STRONG>has
+ been introduced to the <STRONG>Source View</STRONG>. The output HTML can
+ also be formatted. You can choose to use spaces or tab for indentation. See the
+ configuration file.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1031492&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1031492</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1004293&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1004293</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=784281&group_id=75348&atid=543656"
+ target="_blank">SF Feature-784281</A>] It is now possible to edit <STRONG>full
+ HTML pages</STRONG>
+ with the editor. Use the "FullPage" configuration setting to activate it.
+ <LI>
+ The new toolbar command, "<STRONG>Document Properties</STRONG>" is
+ available to edit document header info, title, colors, background, etc... Full
+ page editing must be enabled.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1151448&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1151448</A>] <STRONG>Spell Check</STRONG> is now
+ available. You can use <STRONG>ieSpell</STRONG> or <STRONG>Speller Pages</STRONG>
+ right from FCKeditor. More info about configuration can be found in the _docs
+ folder.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1041686&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1041686</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1086386&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1086386</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1124602&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1124602</A>] New "<STRONG>Insert Anchor</STRONG>"
+ command has been introduced. (The anchor icon is visible only over IE for
+ now).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1123816&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1123816</A>] It is now possible to configure the
+ editor to <STRONG>show "fake" table borders</STRONG>
+ when the border size is set to zero. (It is working only on IE for now).
+ <LI>
+ <STRONG>Numbered</STRONG> and <STRONG>Bulleted</STRONG> lists can now be <STRONG>configured</STRONG>
+ . Just right click on then.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1088608&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1088608</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1144047&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1144047</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1149808&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1149808</A>] A new configuration setting is
+ available, "<STRONG>BaseHref</STRONG>
+ ", to set the URL used to resolve relative links.
+ <LI>
+ It is now possible to set the <STRONG>content language direction</STRONG>
+ . See the "FCKConfig.ContentLangDirection" configurations setting.
+ <LI>
+ All <STRONG>Field Commands</STRONG> available on version 1.6 have been upgraded
+ and included in this version: <STRONG>form</STRONG>, <STRONG>checkbox</STRONG>,
+ <STRONG>radio button</STRONG>, <STRONG>text field</STRONG>, text <STRONG>area</STRONG>,
+ <STRONG>select field</STRONG>, <STRONG>button</STRONG>, <STRONG>image button</STRONG>
+ and <STRONG>hidden field</STRONG>
+ .
+ <LI>
+ <STRONG>Context menu</STRONG> options (right-click) has been added for: <STRONG>anchors</STRONG>,
+ <STRONG>select field</STRONG>, <STRONG>textarea</STRONG>, <STRONG>checkbox</STRONG>,
+ <STRONG>radio button</STRONG>, <STRONG>text field</STRONG>, <STRONG>hidden field</STRONG>,
+ <STRONG>textarea</STRONG>, <STRONG>button</STRONG>, <STRONG>image button</STRONG>,
+ <STRONG>form</STRONG>, <STRONG>bulleted list</STRONG> and <STRONG>numbered list</STRONG>
+ .
+ <LI>
+ The "<STRONG>Universal Keyboard</STRONG>" has been converted from version
+ 1.6 to this one and it's now available.
+ <LI>
+ It is now possible to <STRONG>configure</STRONG> the items to be shown in the <STRONG>
+ context menu</STRONG>
+ . Just use the FCKConfig.ContextMenu option at fckconfig.js.
+ <LI>
+ A new configuration (FillEmptyBlocks) is available to force the editor to <STRONG>
+ automatically insert a &nbsp;</STRONG>
+ on empty block elements (p, div, pre, h1, etc...) to avoid differences from the
+ editing and the final result. (Actually, the editor automatically "grows" empty
+ elements to make the user able to enter text on it). Attention: the extra
+ &nbsp; will be added when switching from WYSIWYG to Source View, so the
+ user may see an additional space on empty blocks. (XHTML support must be
+ enabled).
+ <LI>
+ It is now possible to configure the <STRONG>toolbar</STRONG> to "<STRONG>break</STRONG>
+ " between two toolbar strips. Just insert a "/" between then. Take a look at
+ fckconfig.js for a sample.
+ <LI>
+ New Language files are available:
+ <UL>
+ <LI>
+ <STRONG>Brazilian Portuguese</STRONG>
+ (by Carlos Alberto Tomatis Loth)
+ <LI>
+ <STRONG>Bulgarian</STRONG>
+ (by Miroslav Ivanov)
+ <LI>
+ <STRONG>Esperanto</STRONG>
+ (by Tim Morley)
+ <LI>
+ <STRONG>Galician</STRONG>
+ (by Fernando Riveiro Lopez)
+ <LI>
+ <STRONG>Japanese</STRONG>
+ ( by Takashi Yamaguchi)
+ <LI>
+ <STRONG>Persian</STRONG>
+ (by Hamed Taj-Abadi)
+ <LI>
+ <STRONG>Romanian</STRONG>
+ (by Adrian Nicoara)
+ <LI>
+ <STRONG>Slovak</STRONG>
+ (by Gabriel Kiss)
+ <LI>
+ <STRONG>Thai </STRONG>
+ (by Audy Charin Arsakit)
+ <LI>
+ <STRONG>Turkish</STRONG>
+ (by Reha Bier)
+ <LI>
+ The Chinese Traditional has been set as the default (zn) instead of zn-tw.</LI></UL>
+ <LI>
+ Warning: All toolbar image images have been changed. The "button." prefix has
+ been removed. If you have your custom skin, please rename your files.
+ <LI>
+ A new plugin is available in the package: "<STRONG>Placeholders</STRONG>".
+ In this way you can insert non editable tags in your document to be processed
+ on server side (very specific usage).
+ <LI>
+ The ASPX files are no longer available in this package. They have been moved to
+ the FCKeditor.Net package. In this way the ASP.Net integration is much better
+ organized.
+ <LI>
+ The FCKeditor.Packager program is now part of the main package. It is not
+ anymore distributed separately.
+ <LI>
+ The PHP connector now sets the uploaded file permissions (chmod) to 0777.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1090215&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1090215</A>] It's now possible to give back
+ more info from your custom image browser calling the SetUrl( url [, width] [,
+ height] [, alt] ). Thanks to Ben Noblet.
+ <LI>
+ The package files now maintain their original "Last Modified" date, so
+ incremental FTP uploads can be used to update to new versions of the
+ editor (from now on).
+ <LI>
+ The "Source" view now forces its contents to be written in "Left to Right"
+ direction even when the editor interface language is running a RTL language
+ (like Arabic, Hebrew or Persian).</LI>
+ </UL>
+ <P>Fixed Bugs:</P>
+ <UL>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1124220&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1124220</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1119894&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1119894</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1090986&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1090986</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1100408&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1100408</A>] The editor now works correctly when
+ starting with an empty value and switching to the Source mode.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1119380&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1119380</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1115750&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1115750</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1101808&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1101808</A>] The problem with the scrollbar and
+ the toolbar combos (Style, Font, etc...) over Mac has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1098460&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1098460</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1076544&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1076544</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1077845&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1077845</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1092395&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1092395</A>] A new upload class has been
+ included for the ASP File Manager Connector. It uses the "ADODB.Stream" object.
+ Many thanks to "NetRube".
+ <LI>
+ I small correction has been made to the ColdFusion integration files. Thanks to
+ Hendrik Kramer.
+ <LI>
+ There was a very specific problem when the editor was running over a FRAME
+ executed on another domain.
+ <LI>
+ The performance problem on Gecko while typing quickly has been solved.
+ <LI>
+ The <br type= "_moz">is not anymore shown on XHTML source.
+ <LI>
+ It has been introduced a mechanism to avoid automatic contents duplication on
+ very specific occasions (bad formatted HTML).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1146407&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1146407</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1145800&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1145800</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1118803&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1118803</A>
+ ] Other issues in the XHTML processor have been solved.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1143969&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1143969</A>] The editor now accepts the
+ "accept-charset" attribute in the FORM tag (IE specific bug).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1122742&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1122742</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1089548&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1089548</A>
+ ] Now, the contents of the SCRIPT and STYLE tags remain untouched.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1114748&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1114748</A>] The PHP File Manager Connector now
+ sets the new folders permissions (chmod) to 0777 correctly.
+ <LI>
+ The PHP File Manager Connector now has a configuration file
+ (editor/filemanager/browser/default/connectors/php/config.php) to set some
+ security preferences.
+ <LI>
+ The ASP File Manager Connector now has a configuration file
+ (editor/filemanager/browser/default/connectors/asp/config.asp) to set some
+ security preferences.
+ <LI>
+ A small bug in the toolbar rendering (strips auto position) has been corrected.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1093732&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1093732</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1091377&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1091377</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1083044&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1083044</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1096307&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1096307</A>] The configurations are now encoded
+ so a user can use values that has special chars (&=/).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1103688&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1103688</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1092331&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1092331</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1088220&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1088220</A>] PHP samples now use PHP_SELF to
+ automatically discover the editor's base path.
+ <LI>
+ Some small wrapping problems with some labels in the Image and Table dialog
+ windows have been fixed.
+ <LI>
+ All .js files are now encoded in UTF-8 format with the BOM (byte order mask) to
+ avoid some errors on specific Linux installations.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1114449&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1114449</A>] The editor packager program has
+ been modified so now it is possible to use the source files to run the editor
+ as described in the documentation. The new packager must be downloaded.
+ <LI>
+ A small problem with the editor focus while in source mode has been
+ corrected. Thanks to Eric (ric1607).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1108167&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1108167</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1085149&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1085149</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1151296&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1151296</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1082433&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1082433</A>] No more IFRAMEs without src
+ attribute. Now it points to a blank page located in the editor's package. In
+ this way we avoid security warnings when using the editor over HTTPS. Thanks to
+ Guillermo Bozovich.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1117779&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1117779</A>] The editor now works well if you
+ have more than one element named "submit" on its form (even if it is not
+ correct to have this situation).
+ <LI>
+ The XHTML processor was duplicating the text on some specific situation. It has
+ been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1090213&group_id=75348&atid=543655"
+ target="_blank">SF Patch-1090213</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1098929&group_id=75348&atid=543653"
+ target="_blank">SF Patch-1098929</A>] With ASP, the editor now works
+ correctly on pages using "Option Explicit". Thanks to Ben Noblet.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1100759&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1100759</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1029125&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1029125</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=966130&group_id=75348&atid=543653"
+ target="_blank">SF BUG-966130</A>] The editor was not working with old
+ IE 5.5 browsers. There was a problem with the XML parser. It has been fixed.
+ <LI>
+ The localization engine is now working correctly over IE 5.5 browsers.
+ <LI>
+ Some commands where not working well over IE 5.5 (emoticons, image,...). It has
+ been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1146441&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1146441</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1149777&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1149777</A>] The editor now uses the TEXTAREA
+ id in the ReplaceTextarea function. If the id is now found, it uses the
+ "name". The docs have been updated.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1144297&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1144297</A>] Some corrections have been made to
+ the Dutch language file. Thanks to Erwin Dondorp.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1121365&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1121365</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1090102&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1090102</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1152171&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1152171</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1102907&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1102907</A>] There is no problem now to start
+ the editor with values like "<div></div>" or "<p></p>".
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=1114059&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1114059</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1041861&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1041861</A>] The click on the disabled options
+ in the Context Menu has no effects now.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1152617&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1152617</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1102441&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1102441</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1095312&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1095312</A>] Some problems when setting the
+ editor source to very specific values has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1093514&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1093514</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1089204&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1089204</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1077609&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1077609</A>] The editor now runs correctly if
+ called directly (locally) without a server installation (just opening the
+ HTML sample files).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1088248&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1088248</A>] The editor now uses a different
+ method to load its contents. In this way the URLs remain untouched.
+ <LI>
+ The PHP integration file now detects Internet Explorer 5.5 correctly.</LI></UL>
+ <h3>Version 2.0 RC2 (Release Candidate 2)</h3>
+ <ul>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1042034&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1042034</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1075961&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1075961</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1083200&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1083200</A>] A new dialog window for the <STRONG>table
+ cell properties</STRONG>
+ is now available (right-click).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1042034&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1042034</A>] The new "<STRONG>Split Cell</STRONG>
+ ", to split a table cell in two columns, has been introduced (right-click).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1042034&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1042034</A>] The new "<STRONG>Merge Cells</STRONG>",
+ to merge table cells (in the same row), has been introduced (right-click).
+ <LI>
+ The "fake" <STRONG>TAB key support</STRONG>
+ (available by default over Gecko browsers is now available over IE too. You can
+ set the number of spaces to add setting the FCKConfig.TabSpaces configuration
+ setting. Set it to 0 (zero) to disable this feature (IE).
+ <LI>
+ It now possible to tell IE to send a <STRONG><BR></STRONG> when the user
+ presses the <STRONG>Enter key</STRONG>. Take a look at the
+ FCKConfig.UseBROnCarriageReturn configuration setting.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1085422&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1085422</A>] <STRONG>ColdFusion</STRONG>: The <STRONG>
+ File Manager connector</STRONG>
+ is now available! (Thanks to Hendrik Kramer).
+ <LI>
+ The editor is now available in <STRONG>29 languages!</STRONG> The new language
+ files available are:
+ <UL>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1067775&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1067775</A>] <STRONG>Chinese Simplified and
+ Traditional</STRONG>
+ (Taiwan and Hong Kong) (by NetRube).
+ <LI>
+ <STRONG>Czech</STRONG>
+ (by David Hork).
+ <LI>
+ <STRONG>Danish</STRONG>
+ (by Jesper Michelsen).
+ <LI>
+ <STRONG>Dutch</STRONG>
+ (by Bram Crins).
+ <LI>
+ <STRONG>German</STRONG>
+ (by Maik Unruh).
+ <LI>
+ <STRONG>Portuguese</STRONG>
+ (Portugal) (by Francisco Pereira).
+ <LI>
+ <STRONG>Russian</STRONG>
+ (by Andrey Grebnev).
+ <LI>
+ <STRONG>Slovenian</STRONG> (by Boris Volaric).</LI></UL>
+ <LI>
+ Updates to the <STRONG>French</STRONG>
+ language files (by Hubert Garrido).
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1085816&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1085816</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1083743&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1083743</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1078783&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1078783</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1077861&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1077861</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1077861&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1037404</A>] Many small bugs in the XHTML
+ processor has been corrected (workarounds to browser specific bugs). These are
+ some things to consider regarding the changes:
+ <UL>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1083744&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1083744</A>] On Gecko browsers, any element
+ attribute that the name starts with "_moz" will be ignored.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1060073&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1060073</A>] The <STYLE> and <SCRIPT>
+ elements contents will be handled as is, without CDATA tag surrounding. This
+ may break XHTML validation. In any case the use of external files for scripts
+ and styles is recommended (W3C recommendation).</LI></UL>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1088310&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1088310</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1078837&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1078837</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=999792&group_id=75348&atid=543653"
+ target="_blank">SF BUG-999792</A>] URLs now remain untouched when
+ initializing the editor or switching from WYSYWYG to Source and vice versa.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1082323&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1082323</A>] The problem in the ASP and PHP
+ connectors when handling non "strange" chars in file names has been corrected.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1085034&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1085034</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1076796&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1076796</A>] Some bugs in the PHP connector have
+ been corrected.
+ <LI>
+ A problem with the "Format" command on IE browsers on languages different
+ of English has been solved. The negative side of this correction is that due to
+ a IE bad design it is not possible to update the "Format" combo while moving
+ throw the text (context sensitive).
+ <LI>
+ On Gecko browsers, when selecting an image and executing the "New Page"
+ command, the image handles still appear, even if the image is not available
+ anymore (this is a Gecko bug). When clicking in a "phanton" randle, the
+ browser crashes. It doesn't happen (the crash) anymore.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1082197&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1082197</A>] On ASP, the bug in the browser
+ detection system for Gecko browsers has been corrected. Thanks to Alex Varga.
+ <LI>
+ Again on ASP, the browser detection for IE had some problems on servers that
+ use comma for decimal separators on numbers. It has been corrected. Thanks to
+ Agrotic.
+ <LI>
+ No error is thrown now when non existing language is configured in
+ the editor. The English language file is loaded in that case.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1077747&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1077747</A>] The missing images on the
+ Office2003 and Silver skins are now included in the package.
+ <LI>
+ On some Gecko browsers, the dialog window was not loading correctly. I couldn't
+ reproduce the problem, but a fix has been applied based on users tests.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1004078&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1004078</A>] ColdFusion: The "config"
+ structure/hash table with keys and values is in ColdFusion not(!) case
+ sensitive. All keys returned by ColdFusion are in upper case format. Because
+ the FCKeditor configuration keys must be case sensitive, we had to match all
+ structure/hash keys with a list of the correct configuration names in mixed
+ case. This has been added to the fckeditor.cfc and fckeditor.cfm.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1075166&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1075166</A>] ColdFusion: The "fallback" variant
+ of the texteditor (<textarea>) has a bug in the fckeditor.cfm. This has
+ been fixed.
+ <LI>
+ A typo in the Polish language file has been corrected. Thanks to Pawel Tomicki.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1086370&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1086370</A>] A small coding type in the Link dialog
+ window has been corrected.</LI>
+ </ul>
+ <h3>Version 2.0 RC1 (Release Candidate 1)</h3>
+ <ul>
+ <li>
+ <strong>ASP</strong>
+ support is now available (including the File Manager connector).
+ <li>
+ <strong>PHP</strong>
+ support is now available (including the File Manager connector).
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1063217&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1063217</a>] The new advanced <strong>Style</strong>
+ command is available in the toolbar: full preview, context sensitive, style
+ definitions are loaded from a XML file (see documentation for more
+ instructions).
+ <li>
+ The <strong>Font Format</strong>, <strong>Font Name</strong> and <strong>Font Size</strong>
+ toolbar command now show a <strong>preview</strong>
+ of the available options.
+ <li>
+ The new <strong>Find</strong> and <strong>Replace</strong>
+ features has been introduced.
+ <li>
+ A new <strong>Plug-in</strong>
+ system has been developed. Now it is quite easy to customize the editor to your
+ needs. (Take a look at the html/sample06.html file).
+ <li>
+ The editor now handles <strong>HTML entities</strong>
+ in the right way (XHTML support must be set to "true"). It handles all entities
+ defined in the W3C XHTML DTD file.
+ <li>
+ A new "_docs" folder has been introduced for the <strong>documentation</strong>.
+ It is not yet complete, but I hope the community will help us to fill it
+ better.
+ <li>
+ It is now possible (even if it is not recommended by the W3C) to force the use
+ of simple ampersands (&) on attributes (like the links href) instead of its
+ entity &amp;. Just set FCKConfig.ForceSimpleAmpersand = true in
+ the configuration file.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1026866&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1026866</a>] The "<strong>EditorAreaCSS</strong>"
+ configuration option has been introduced. In this way you can set the CSS to
+ use in the editor (editable area).
+ <li>
+ The editing area is not anymore clipped if the toolbar is too large and exceeds
+ the window width.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1064902&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1064902</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1033933&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1033933</a>] The editor <strong>interface</strong> is
+ now completely <strong>localizable</strong>. The version ships with 19
+ languages including: <b>Arabic</b>, <b>Bosnian</b>, <b>Catalan</b>, <b>English</b>,
+ <b>Spanish</b>, <b>Estonian</b>, <b>Finnish</b>, <b>French</b>, <b>Greek</b>, <b>Hebrew</b>,
+ <b>Croatian</b>, <b>Italian</b>, <b>Korean</b>, <b>Lithuanian</b>, <b>Norwegian</b>,
+ <STRONG>Polish</STRONG>, <STRONG>Serbian (Cyrillic)</STRONG>, <STRONG>Serbian
+ (Latin)</STRONG> and <STRONG>Swedish</STRONG>.<li>[<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1027858&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1027858</a>] Firefox 1.0
+ PR introduced a bug that made the editor stop working on it. A
+ workaround has been developed to fix the problem.
+ <li>
+ There was a positioning problem over IE with the color panel. It has been
+ corrected.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1049842&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1049842</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1033832&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1033832</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1028623&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1028623</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1026610&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1026610</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1064498&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1064498</a>] The combo commands in the toolbar
+ were not opening in the right way. It has been fixed.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1053399&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1053399</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=965318&group_id=75348&atid=543653"
+ target="_blank">SF BUG-965318</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1018296&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1018296</a>] The toolbar buttons icons were not
+ showing on some IE and Firefox/Mac installations. It has been fixed.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1054621&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1054621</a>] Color pickers are now working with
+ the "office2003" and "silver" skins.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1054108&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1054108</a>] IE doesnt recognize the
+ "&apos;" entity for apostrophes, so a workaround has been developed to
+ replace it with "&#39;" (its numeric entity representation).
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=983434&group_id=75348&atid=543653"
+ target="_blank">SF BUG-983434</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=983398&group_id=75348&atid=543653"
+ target="_blank">SF BUG-983398</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1028103&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1028103</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1072496&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1072496</a>] The problem with elements with name
+ "submit" inside the editor's form has been solved.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1018743&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1018743</a>] The problem with Gecko when
+ collapsing the toolbar while in source mode has been fixed.
+ <li>
+ [<a href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=1065268&group_id=75348"
+ target="_blank">SF BUG-1065268</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1034354&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1034354</a>] The XHTML processor now doesnt use
+ the minimized tag syntax (like <br/>) for empty elements that are not
+ marked as EMPTY in the W3C XHTML DTD specifications.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1029654&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1029654</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1046500&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1046500</a>] Due to a bug on Gecko there was a
+ problem when creating links. It has been fixed.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1065973&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1065973</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=999792&group_id=75348&atid=543653"
+ target="_blank">SF BUG-999792</a>] The editor now handles relative URLs
+ in IE. In effect IE transform all relative URLs to absolute links, pointing to
+ the site the editor is running. So now the editor removes the protocol and host
+ part of the link if it matches the running server.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1071824&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1071824</a>] The color dialog box bug has been
+ fixed.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1052856&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1052856</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1046493&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1046493</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1023530&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1023530</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1025978&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1025978</a>] The editor now doesnt throw an
+ error if no selection was made and the create link command is used.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1036756&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1036756</a>] The XHTML processor has been
+ reviewed.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1029101&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1029101</a>] The Paste from Word feature is
+ working correctly.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1034623&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1034623</a>] There is an IE bug when setting the
+ editor value to "<p><hr></p>". A workaround has been
+ developed.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1052695&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1052695</a>] There are some rendering
+ differences between Netscape and Mozilla. (Actually that is a bug on both
+ browsers). A workaround has been developed to solve it.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1073053&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1073053</a>] [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1050394&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1050394</a>] The editor doesnt throw errors
+ when hidden.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1066321&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1066321</a>] Scrollbars should not appear on
+ dialog boxes (at least for the Image and Link ones).
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1046490&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1046490</a>] Dialogs now are forced to show on
+ foreground over Mac.
+ <li>
+ [<a href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=1073955&group_id=75348"
+ target="_blank">SF BUG-1073955</a>] A small bug in the image dialog
+ window has been corrected.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1049534&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1049534</a>] The Resources Browser window is now
+ working well over Gecko browsers.
+ <li>
+ [<a href="http://sourceforge.net/tracker/index.php?func=detail&aid=1036675&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1036675</a>] The Resources Browser window now
+ displays the server error on bad installations.</li></ul>
+ <H3>Version 2.0 Beta 2</H3>
+ <UL>
+ <LI>
+ There is a new configuration - "<STRONG>GeckoUseSPAN</STRONG>" - that can
+ be used to tell Gecko browsers to use <SPAN style...> or <B>,
+ <I> and <U> for the bold, italic and underline commands.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1002622&group_id=75348&atid=543656"
+ target="_blank">SF Feature-1002622</A>] New <STRONG>Text Color</STRONG> and <STRONG>Background
+ Color</STRONG>
+ commands have been added to the editor.
+ <LI>
+ On Gecko browsers, a message is shown when, because of security
+ settings, the user is not able to cut, copy or paste data from
+ the clipboard using the toolbar buttons or the context menu.
+ <LI>
+ The new "<STRONG>Paste as Plain Text</STRONG>
+ " command has been introduced.
+ <LI>
+ The new "<STRONG>Paste from Word</STRONG>
+ " command has been introduced.
+ <LI>
+ A new configuration named "StartupFocus" can be used to tell the editor to
+ get the focus when the page is loaded.
+ <LI>
+ All <STRONG>Java </STRONG>
+ integration files has been moved to a new separated package.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1016781&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1016781</A>] <STRONG>Table operations</STRONG> are
+ now working when right click inside a table. The following commands has been
+ introduced: <STRONG>Insert Row</STRONG>, <STRONG>Delete Row</STRONG>, <STRONG>Insert
+ Column</STRONG>, <STRONG>Delete Column</STRONG>, <STRONG>Insert Cell</STRONG>
+ and <STRONG>Delete Cells</STRONG>
+ .
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=965067&group_id=75348&atid=543653"
+ target="_blank">SF BUG-965067</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1010379&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1010379</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=977713&group_id=75348&atid=543653"
+ target="_blank">SF BUG-977713</A>] XHTML support was not working with
+ FireFox, blocking the editor when submitting data. It has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1007547&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1007547</A> ] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=974595&group_id=75348&atid=543653"
+ target="_blank">SF BUG-974595</A>
+ ] The "FCKLang not defined" error when loading has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=1021028&group_id=75348&atid=543653"
+ target="_blank">SF BUG-1021028</A>] If the editor doesn't have the
+ focus, some commands were been executed outside the editor in the place where
+ the focus is. It has been fixed.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=981191&group_id=75348&atid=543653"
+ target="_blank">SF BUG-981191</A>] We are now using <!--- ---> for
+ ColdFusion comments.</LI></UL>
+ <H3>Version 2.0 Beta 1</H3>
+ <P>This is the first beta of the 2.x series. It brings a lot of new and important
+ things. Beta versions will be released until all features available on version
+ 1.x will be introduced in the 2.0.<BR>
+ <BR>
+ <STRONG>Note:</STRONG> As it is a beta, it is not yet completely developed.
+ Future versions can bring new features that can break backward compatibility
+ with this version.
+ </P>
+ <UL>
+ <LI>
+ Gecko browsers (<STRONG>Mozilla</STRONG> and <STRONG>Netscape</STRONG>)
+ support.
+ <LI>
+ <STRONG>Quick startup</STRONG>
+ response times.
+ <LI>
+ Complete <STRONG>XHTML</STRONG>
+ 1.0 support.
+ <LI>
+ <STRONG>Advanced link</STRONG> dialog box:
+ <UL>
+ <LI>
+ Target selection.
+ <LI>
+ Popup configurator.
+ <LI>
+ E-Mail link.
+ <LI>
+ Anchor selector.
+ </LI>
+ </UL>
+ <LI>
+ New <STRONG>File Manager</STRONG>.
+ <LI>
+ New dialog box system, with <STRONG>tabbed dialogs</STRONG>
+ support.
+ <LI>
+ New <STRONG>context menus</STRONG>
+ with icons.
+ <LI>
+ New toolbar with "expand/collapse" feature.
+ <LI>
+ <STRONG>Skins</STRONG>
+ support.
+ <LI>
+ <STRONG>Right to left languages</STRONG> support.
+ </LI>
+ </UL>
+ <H3>Version 1.6.1</H3>
+ <UL>
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=862364&group_id=75348&atid=543653"
+ target="_blank">SF BUG-862364</A>] [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=812733&group_id=75348&atid=543653"
+ target="_blank">SF BUG-812733</A>] There was a problem when the user
+ tried to delete the last row, collumn or cell in a table. It has been
+ corrected.*
+ <LI>
+ New Estonian language file. Thanks to Kristjan Kivikangur
+ <LI>
+ New Croatian language file. Thanks to Alex Varga.
+ <LI>
+ Updated language file for Czech. Thanks to Plachow.
+ <LI>
+ Updated language file for Chineze (zh-cn). Thanks to Yanglin.
+ <LI>
+ Updated language file for Catalan. Thanks to Jordi Cerdan.</LI></UL>
+ <P>* This version has been partially sponsored by <A href="http://www.genuitec.com/">Genuitec,
+ LLC</A>.</P>
+ <H3>Version 1.6</H3>
+ <UL>
+ <LI>
+ <STRONG>Context Menu</STRONG> support for <STRONG>form</STRONG>
+ elements.*
+ <LI>
+ New <STRONG>"Selection Field" command</STRONG>
+ with advanced dialog box for options definitions.*
+ <LI>
+ New <STRONG>"Image Button" command</STRONG>
+ is available.*
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=936196&group_id=75348&atid=543656"
+ target="_blank">SF Feature-936196</A>] Many form elements <STRONG>bugs has been
+ fixed</STRONG> and <STRONG>many improvements</STRONG>
+ has been done.*
+ <LI>
+ New <STRONG>Java Integration Module</STRONG>. There is a complete Java API
+ and Tag Library implementations. Take a look at the _jsp directory. Thanks to
+ Simone Chiaretta and Hao Jiang.
+ <LI>
+ The <STRONG>Word Spell Checker</STRONG>
+ can be used. To be able to run it, your browser security configuration
+ "Initialize and script ActiveX controls not marked as safe" must be set to
+ "Enable" or "Prompt". And easier and more secure way to do that is to add your
+ site in the list of trusted sites. IeSpell can still be used. Take a look at
+ the fck_config.js file for some configuration options. Thanks to EdwardRF.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=748807&group_id=75348&atid=543656"
+ target="_blank">SF Feature-748807</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=801030&group_id=75348&atid=543656"
+ target="_blank">SF Feature-801030</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=880684&group_id=75348&atid=543656"
+ target="_blank">SF Feature-880684</A>] New "<STRONG>Anchor" command</STRONG>,
+ including context menu support. Thanks to G.Meijer.
+ <LI>
+ Special characters are replaced with their decimal HTML entities when the XHMTL
+ support is enabled (only over IE5.5+).
+ <LI>
+ New <STRONG>Office 2003 Style</STRONG> toolbar icons are available. Just
+ uncomment the config.ToolbarImagesPath key in the fck_config.js file. Thanks to
+ Abdul-Aziz A. Al-Oraij. <STRONG>Attention</STRONG>: the default toolbar
+ items have been moved to the "images/toolbar/default" directory.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=934566&group_id=75348&atid=543655"
+ target="_blank">SF Patch-934566</A>] <STRONG>Double click support</STRONG>
+ for Images, Tables, Links, Anchors and all Form elements. Thanks to Top Man.
+ <LI>
+ New <STRONG>"New Page" command</STRONG>
+ to start a typing from scratch. Thanks to Abdul-Aziz A. Al-Oraij.
+ <LI>
+ New <STRONG>"Replace" command</STRONG>. Thanks to Abdul-Aziz A. Al-Oraij.
+ <LI>
+ New <STRONG>"Advanced Font Style" command</STRONG>. Thanks to Abdul-Aziz A.
+ Al-Oraij.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=738193&group_id=75348&atid=543656"
+ target="_blank">SF Feature-738193</A>] New <STRONG>"Save" command</STRONG>.
+ It can be used to simulate a save action, but in fact it just submits the form
+ where the editor is placed in. Thanks to Abdul-Aziz A. Al-Oraij.
+ <LI>
+ New <STRONG>"Universal Keyboard" command</STRONG>. This 22 charsets are
+ available: Arabic, Belarusian, Bulgarian, Croatian, Czech, Danish, Finnish,
+ French, Greek, Hebrew, Hungarian, Diacritical, Macedonian, Norwegian, Polish,
+ Russian, Serbian (Cyrillic), Serbian (Latin), Slovak, Spanish, Ukrainian and
+ Vietnamese. Includes a keystroke listener to type Arabic on none Arabic OS or
+ machine. Thanks to Abdul-Aziz A. Al-Oraij.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=935358&group_id=75348&atid=543655"
+ target="_blank">SF Patch-935358</A>] New <STRONG>"Preview" command</STRONG>.
+ Context menu option is included and can be deactivated throw the
+ config.ShowPreviewContextMenu configuration. Thanks to Ben Ramsey.
+ <LI>
+ New "<STRONG>Table Auto Format</STRONG>" context menu command. Hack a
+ little the fck_config.js and the fck_editorarea.css files. Thanks to Alexandros
+ Lezos.
+ <LI>
+ New "<STRONG>Bulleted List Properties</STRONG>
+ " context menu to define its type and class. Thanks to Alexandros Lezos.
+ <LI>
+ The <STRONG>image dialog</STRONG> box has been a <STRONG>redesigned</STRONG>
+ . Thanks to Mark Fierling.
+ <LI>
+ Images now always have the <STRONG>"alt" attribute</STRONG>
+ set, even when it's value is empty. Thanks to Andreas Barnet.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=942250&group_id=75348&atid=543655"
+ target="_blank">SF Patch-942250</A>] You can set on fck_config.js to <STRONG>automatically
+ clean Word</STRONG>
+ pasting operations without a user confirmation.
+ <LI>
+ Forms element dialogs and other localization pending labels has been updated.
+ <LI>
+ A new <STRONG>Lithuanian</STRONG>
+ language file is available. Thanks to Tauras Paliulis.
+ <LI>
+ A new <STRONG>Hebrew</STRONG>
+ language file is available. Thanks to Ophir Radnitz.
+ <LI>
+ A new <STRONG>Serbian</STRONG>
+ language file is available. Thanks to Zoran Subic.
+ <LI>
+ <STRONG>Danish</STRONG>
+ language file updates. Thanks to Flemming Jensen.
+ <LI>
+ <STRONG>Catalan</STRONG>
+ language file updates. Thanks to Jordi Cerdan.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=936514&group_id=75348&atid=543655"
+ target="_blank">SF Patch-936514</A>] [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=918716&group_id=75348">SF
+ BUG-918716</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=931037&group_id=75348&atid=543653">SF
+ BUG-931037</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=865864&group_id=75348&atid=543653">SF
+ BUG-865864</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=915410&group_id=75348&atid=543653">SF
+ BUG-915410</A>] [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=918716&group_id=75348&atid=543653">SF
+ BUG-918716</A>] Some <STRONG>languages files</STRONG> were not saved on <STRONG>
+ UTF-8</STRONG>
+ format causing some javascript errors on loading the editor or making
+ "undefined" to show on editor labels. This problem was solved.
+ <LI>
+ Updates on the testsubmit.php file. Thanks to Geat and Gabriel Schillaci
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=924620&group_id=75348">SF
+ BUG-924620</A>] There was a problem when setting a name to an editor
+ instance when the name is used by another tag. For example when using
+ "description" as the name in a page with the <META name="description">
+ tag.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=935018&group_id=75348&atid=543653">SF
+ BUG-935018</A>] The "buletted" typo has been corrected.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=902122&group_id=75348&atid=543653">SF
+ BUG-902122</A>] Wrong css and js file references have been corrected.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=918942&group_id=75348&atid=543653">SF
+ BUG-918942</A>] All dialog boxes now accept Enter and Escape keys as Ok and
+ Cancel buttons.</LI></UL>
+ <P>* This version has been partially sponsored by <A href="http://www.genuitec.com/">Genuitec,
+ LLC</A>.</P>
+ <H3>Version 1.5</H3>
+ <UL>
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543656&aid=913777&group_id=75348"
+ target="_blank">SF Feature-913777</A>] <STRONG>New Form Commands</STRONG>
+ are now available! Special thanks to G.Meijer.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=861149&group_id=75348&atid=543656"
+ target="_blank">SF Feature-861149</A>] <STRONG>Print Command</STRONG>
+ is now available!
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=743546&group_id=75348"
+ target="_blank">SF BUG-743546</A>] The <STRONG>XHTML content duplication
+ problem </STRONG>has been <STRONG>solved</STRONG>
+ . Thanks to Paul Hutchison.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=875853&group_id=75348"
+ target="_blank">SF BUG-875853</A>] The <STRONG>image dialog box</STRONG>
+ now gives precedence for width and height values set as styles. In this way a
+ user can change the size of the image directly inside the editor and the
+ changes will be reflected in the dialog box.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543656&aid=913777&group_id=75348"
+ target="_blank">SF Feature-788368</A>] The sample <STRONG>file upload </STRONG>
+ manager for ASPX now uses <STRONG>guids</STRONG>
+ for the file name generation. In this way a support XML file is not needed
+ anymore.
+ <LI>
+ It's possible now to <STRONG>programmatically change the Base Path</STRONG> of
+ the editor if it's installed in a directory different of "/FCKeditor/".
+ Something like this:<BR>
+ oFCKeditor.BasePath = '/FCKeditor/' ;<BR>
+ Take a look at the _test directory for samples.
+ <LI>
+ There was a little bug in the TAB feature that moved the insertion point if
+ there were any object (images, tables) in the content. It has been fixed.
+ <LI>
+ The problem with <STRONG>accented and international characters</STRONG>
+ on the PHP test page was solved.
+ <LI>
+ A new <STRONG>Chinese (Taiwan)</STRONG>
+ language file is available. Thanks to Nil.
+ <LI>
+ A new <STRONG>Slovenian</STRONG>
+ language file is available. Thanks to Pavel Rotar.
+ <LI>
+ A new <STRONG>Catalan</STRONG>
+ language file is available. Thanks to Jordi Cerdan.
+ <LI>
+ A new <STRONG>Arabic</STRONG>
+ language file is available. Thanks to Abdul-Aziz A. Al-Oraij.
+ <LI>
+ Small corrections on the <STRONG>Norwegian</STRONG>
+ language file.
+ <LI>
+ A Java version for the test results (testsubmit.jsp) is now available. Thanks
+ to Pritpal Dhaliwal.
+ <LI>
+ When using Javascript to create a editor instance it's possible now to easily
+ get the editor's value calling oFCKeditor.GetValue() (eg.). Better Javascript
+ API interfaces will be available on version 2.0.
+ <LI>
+ If <STRONG>XHTML</STRONG>
+ is enabled the editor cleans the HTML before showing it on the Source View, so
+ the exact result can be viewed by the user. This option can be activated
+ setting config.EnableSourceXHTML = true in the fck_config.js file.
+ <LI>
+ The <STRONG>JS integration object</STRONG> now escapes all configuration
+ settings, in this way a user can use <STRONG>reserved chars</STRONG> on it. For
+ example:
+ <BR>
+ oFCKeditor.Config["ImageBrowserURL"] =
+ '/imgs/browse.asp?filter=abc*.jpg&userid=1';
+ <LI>
+ A minimal browse server sample is now available in ASP. Thanks to Andreas
+ Barnet.
+ </LI>
+ </UL>
+ <H3>Version 1.4</H3>
+ <UL>
+ <LI>
+ <STRONG>ATTENTION: For PHP users</STRONG>: The editor was changed and now uses <STRONG>
+ htmlspecialchars</STRONG> instead of <STRONG>htmlentities</STRONG>
+ when handling the initial value. It should works well, but please make some
+ tests before upgrading definitively. If there is any problem just uncomment the
+ line in the fckeditor.php file (and send me a message!).
+ <LI>
+ The editor is now integrated with <STRONG>ieSpell</STRONG> (<A href="http://www.iespell.com">http://www.iespell.com</A>)
+ for <STRONG>Spell Checking</STRONG>. You can configure the download URL in
+ then fck_config.js file. Thanks to Sanjay Sharma. (ieSpell is free for personal
+ use but must be paid for commercial use)
+ <LI>
+ <STRONG>Table</STRONG> and <STRONG>table cell</STRONG> dialogs has been
+ changed. Now you can <STRONG>select the class</STRONG>
+ you want to be applied. Thanks to Alexander Lezos.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=865378&group_id=75348&atid=543656"
+ target="_blank">SF Feature-865378</A>]A new <STRONG>upload support is available
+ for ASP</STRONG>. It uses the /UserImages/ folder in the root of the
+ web site as the files container and a counter controlled by the upload.cnt
+ file. Both must have write permissions set to the IUSR_xxx user. Thanks to Trax
+ and Juanjo.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=798128&group_id=75348&atid=543655"
+ target="_blank">SF Patch-798128</A>] The user (programmer) can now define a <STRONG>
+ custom separator</STRONG>
+ for the list items of a combo in the toolbar. Thanks to Wulff D. Heiss.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=741963&group_id=75348&atid=543656"
+ target="_blank">SF Feature-741963</A>][<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=878941&group_id=75348&atid=543656"
+ target="_blank">SF Feature-878941</A>][<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=869389&group_id=75348&atid=543655"
+ target="_blank">SF Patch-869389</A>] A minimal support for a fake <STRONG>TAB
+ is now available</STRONG>, even if HTML has no support for TAB. Now
+ when the user presses the TAB key a configurable number of spaces (&nbsp;)
+ is added. Take a look at config.TabSpaces on the fck_config.js file. No action
+ is performed if it is set to zero. The default value is 4. Thanks to Phil
+ Hassey.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=782779&group_id=75348&atid=543653"
+ target="_blank">SF BUG-782779</A>][<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=790939&group_id=75348&atid=543653"
+ target="_blank">SF BUG-790939</A>] The problem with big images has been
+ corrected. Thanks to Raver.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=853374&group_id=75348"
+ target="_blank">SF BUG-862975</A>] Now the editor does nothing if no
+ image is selected in the image dialog box and the OK button is hit.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=851609&group_id=75348&atid=543653"
+ target="_blank">SF BUG-851609</A>] The problem with ASP and null values
+ has been solved.
+ <LI>
+ <STRONG>Norwegean</STRONG>
+ language pack. Thanks to Martin Kronstad.
+ <LI>
+ <STRONG>Hungarian</STRONG>
+ language pack. Thanks to Balzs Szab.
+ <LI>
+ <STRONG>Bosnian</STRONG>
+ language pack. Thanks to Trax.
+ <LI>
+ <STRONG>Japanese</STRONG>
+ language pack. Thanks to Kato Yuichiro.
+ <LI>
+ Updates on the <STRONG>Polish</STRONG>
+ language pack. Thanks to Norbert Neubauer.
+ <LI>
+ The <STRONG>Chinese (Taiwan)</STRONG> (zh-tw) has been removed from the package
+ because it's corrupt. I'm sorry. I hope someone could send me a good version
+ soon.
+ </LI>
+ </UL>
+ <H3>Version 1.3.1</H3>
+ <UL>
+ <LI>
+ It's now possible to configure the editor the insert a <STRONG><BR> tag
+ instead of <P></STRONG> when the user presses the <STRONG><Enter></STRONG>
+ key. Take a look at the fck_config.js configuration file for the "<STRONG>UseBROnCarriageReturn</STRONG>"
+ key. This option is disabled by default.
+ <LI>
+ <STRONG>Icelandic</STRONG>
+ language pack. Thanks to Andri skarsson.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=853374&group_id=75348">SF
+ BUG-853374</A>] On IE 5.0 there was a little error introduced with
+ version 1.3 on initialization. It was corrected.
+ <LI>
+ [<A href="https://sourceforge.net/tracker/?func=detail&atid=543653&aid=853372&group_id=75348">SF
+ BUG-853372</A>] On IE 5.0 there was a little error introduced with
+ version 1.3 when setting the focus in the editor. It was corrected.
+ <LI>
+ Minor errors on the language file for <STRONG>english</STRONG>
+ has been corrected. Thanks to Anders Madsen.
+ <LI>
+ Minor errors on the language file for <STRONG>danish</STRONG> has been
+ corrected. Thanks to Martin Johansen.
+ </LI>
+ </UL>
+ <H3>Version 1.3</H3>
+ <UL>
+ <LI>
+ Language support for <STRONG>Danish, Polish, Simple Chinese, Slovak, Swedish and
+ Turkish</STRONG>.
+ <LI>
+ Language updates for <STRONG>Romanian</STRONG>.
+ <LI>
+ It's now possible to <STRONG>override</STRONG> any of the <STRONG>editor's
+ configurations</STRONG>
+ (for now it's implemented just for JavaScript, ASPX and HTC modules). See
+ _test/test.html for a sample. I'm now waiting for the Community for the ASP,
+ CFM and PHP versions.
+ <LI>
+ A new method is available for <STRONG>PHP</STRONG> users. It's called <STRONG>ReturnFCKeditor</STRONG>.
+ It works exactly like CreateFCKeditor, but it <STRONG>returns a string with the
+ HTML</STRONG>
+ for the editor instead of output it (echo). This feature is useful for people
+ who are working with Smarty Templates or something like that. Thanks to Timothy
+ J. Finucane.
+ <LI>
+ Many people have had problems with <STRONG>international characters</STRONG> over
+ <STRONG>PHP</STRONG>. I had also the same problem. PHP have strange problems
+ with character encoding. The code hasn't been changed but just saved again with
+ Western European encoding. <STRONG>Now it works well</STRONG> in my system.<BR>
+ Take a look also at the "default_charset" configuration option at the php.ini
+ file. It doesn't seem to be an editor's problem but a PHP issue.
+ <LI>
+ The "<STRONG>testsubmit.php</STRONG>" file now strips the "<STRONG>Magic Quotes</STRONG>
+ " that are automatically added by PHP on form posts.
+ <LI>
+ A <STRONG>new language</STRONG> integration module is available for <STRONG>ASP/Jscript</STRONG>.
+ Thanks to Dimiter Naydenov.
+ <LI>
+ <STRONG>New configuration</STRONG> options are available to <STRONG>customize the
+ Target</STRONG> combo box in the <STRONG>Insert/Modify Link</STRONG>
+ dialog box. Now you can hide it, or set which options are available in the
+ combo box. Take a look at the fck_config.js file.
+ <LI>
+ The <STRONG>Text as Plain Text</STRONG> toolbar <STRONG>icon</STRONG> has been
+ changed <STRONG>to avoid confusion</STRONG>
+ with the Normal Paste or. Thanks to Kaupo Kalda.
+ <LI>
+ The file <STRONG>dhtmled.cab has been removed</STRONG>
+ from the package. It's not needed to the editor to work and caused some
+ confusion for a few users.
+ <LI>
+ The <STRONG>editor's content</STRONG> now <STRONG>doesn't loose the focus</STRONG>
+ when the user clicks with the mouse in a toolbar button.
+ <LI>
+ On <STRONG>drag-and-drop</STRONG> operations the data to be inserted in the
+ editor is now <STRONG>converted to plain text</STRONG> when the "<STRONG>ForcePasteAsPlainText</STRONG>"
+ configuration is set to <STRONG>true</STRONG>.
+ <LI>
+ The <STRONG>image browser</STRONG> sample in PHP now <STRONG>sorts the files</STRONG>
+ by name. Thanks to Sergey Lupashko.
+ <LI>
+ Two <STRONG>new configuration</STRONG> options are available to <STRONG>turn on/off
+ by default</STRONG> the "<STRONG>Show Borders</STRONG>" and "<STRONG>Show
+ Details</STRONG>" commands.
+ <LI>
+ Some <STRONG>characters have been removed</STRONG> from the "<STRONG>Insert Special
+ Chars</STRONG>" dialog box because they were causing encoding problems
+ in some languages. Thanks to Abomb Hua.
+ <LI>
+ <STRONG>JSP</STRONG> versions of the <STRONG>image and file upload and browsing</STRONG>
+ features. Thanks to Simone Chiaretta.</LI></UL>
+ <H3>Version 1.2.4</H3>
+ <UL>
+ <LI>
+ Language support for <STRONG>Spanish, Finnish, Romanian and Korean</STRONG>.
+ <LI>
+ Language updates for <STRONG>German</STRONG>.
+ <LI>
+ New <STRONG>Zoom</STRONG> toolbar option. (<A href="https://sourceforge.net/forum/forum.php?thread_id=904116&forum_id=257180">Thanks
+ to "mtn_roadie"</A>)</LI></UL>
+ <H3>Version 1.2.2</H3>
+ <UL>
+ <LI>
+ Language support for <STRONG>French</STRONG>.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=782779&group_id=75348&atid=543653"
+ target="_blank">SF BUG-782779</A>] Version 1.2 introduced a bug on the
+ image dialog window: when changing the image, no update was done. This bug is
+ now fixed.
+ </LI>
+ </UL>
+ <H3>Version 1.2</H3>
+ <UL>
+ <LI>
+ Enhancements to the <STRONG>Word cleaning</STRONG>
+ feature (Thanks to Karl von Randow).
+ <LI>
+ The <STRONG>Table dialog box</STRONG>
+ now handles the Style width and height set in the table (Thanks to Roberto
+ Arruda). There where many problems on prior version when people changed
+ manually the table's size, dragging the size handles, and then it was not
+ possible to set a new size using the table dialog box.
+ <LI>
+ For the <STRONG>Image dialog box:</STRONG>
+ <UL>
+ <LI>
+ No image is shown in the preview pane if no image has been set.
+ <LI>
+ If no HSpace is set in the image a "-1" value was shown in the dialog box. Now,
+ nothing is shown if the value is negative.
+ </LI>
+ </UL>
+ <LI>
+ [<A href="https://sourceforge.net/tracker/index.php?func=detail&aid=739630&group_id=75348&atid=543653"
+ target="_blank">SF BUG-739630</A>] Image with link lost the link when
+ changing its properties. The problem is solved.
+ <LI>
+ Due to some problems in the XHTML cleaning (content duplication when the source
+ HTML is dirty and malformed), the <STRONG>XHTML support is turned off by default</STRONG>
+ from this version. You can still change this behavior and turn it on in the
+ configuration file.
+ <LI>
+ Some little updates on the <STRONG>English </STRONG>
+ language file.
+ <LI>
+ A few addition of missing entries on all languages files (translations for
+ these changes are pending).
+ <LI>
+ Language files has been added for the following languages:
+ <UL>
+ <LI>
+ <STRONG>Brazilian Portuguese</STRONG>
+ (pt-br)
+ <LI>
+ <STRONG>Czech</STRONG>
+ (cz)
+ <LI>
+ <STRONG>Dutch</STRONG>
+ (nl)
+ <LI>
+ <STRONG>Russian</STRONG>
+ (ru)
+ <LI>
+ <STRONG>Chinese (Taiwan)</STRONG>
+ (zh-tw)
+ <LI>
+ <STRONG>Greek</STRONG>
+ (gr)
+ <LI>
+ <STRONG>German</STRONG> (de)</LI></UL>
+ </LI>
+ </UL>
+ <H3>Version 1.1</H3>
+ <UL>
+ <LI>
+ The "<STRONG>Multi Language</STRONG>" system is now available. This version
+ ships with English and Italian versions completed. Other languages will be
+ available soon. The editor automatically detects the client language and sets
+ all labels, tooltips and dialog boxes to it, if available. The auto detection
+ and the default language can be set in the <STRONG>fck_config.file</STRONG>.
+ <LI>
+ Two files can now be created to isolate customizations code from the original
+ source code of the editor: <STRONG>fckeditor.config.js</STRONG> and <STRONG>fckeditor.custom.js</STRONG>.
+ Create these files in the root folder of your web site, if needed. The first
+ one can be used to add or override configurations set on fck_config.js. The
+ second one is used for custom actions and behaviors.
+ <LI>
+ A problem with relative links and images like "/test/test.doc" has been solved.
+ In prior versions, only with XHTML support enabled, the URL was changed to
+ something like "http://www.mysite.xxx/test/test.doc" (The domain was
+ automatically added). Now the XHTML cleaning procedure gets the URLs exactly
+ how they are defined in the editors HTML.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=742168&group_id=75348&atid=543653"
+ target="_blank">SF BUG-742168</A>] Mouse drag and drop from toolbar
+ buttons has been disabled.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=768210&group_id=75348&atid=543653"
+ target="_blank">SF BUG-768210</A>] HTML entities, like <STRONG>&lt;</STRONG>,
+ were not load correctly. The problem is solved.
+ <LI>
+ [<A href="http://sourceforge.net/tracker/index.php?func=detail&aid=748812&group_id=75348&atid=543653"
+ target="_blank">SF BUG-748812</A>] The link dialog window doesn't open when
+ the link button is grayed.
+ </LI>
+ </UL>
+ <H3>Version 1.0</H3>
+ <UL>
+ <LI>
+ Three new options are available in the configuration file to set what file
+ types are allowed / denied to be uploaded from the "Insert Link" and "Insert
+ Image" dialog boxes.
+ <LI>
+ Upload options, for links and images, are automatically hidden on IE 5.0
+ browsers (it's not compatible).
+ <LI>
+ [SF BUG-734894] Fixed a problem on XHTML cleaning: the value on INPUT fields
+ were lost.
+ <LI>
+ [SF BUG-713797] Fixed some image dialog errors when trying to set image
+ properties when no image is available.
+ <LI>
+ [SF BUG-736414] Developed a workaround for a DHTML control bug when loading in
+ the editor some HTML started with <p><hr></p>.
+ <LI>
+ [SF BUG-737143] Paste from Word cleaning changed to solve some IE 5.0 errors.
+ This feature is still not available over IE 5.0.
+ <LI>
+ [SF BUG-737233] CSS mappings are now OK on the PHP image browser module.
+ <LI>
+ [SF BUG-737495] The image preview in the image dialog box is now working
+ correctly.
+ <LI>
+ [SF BUG-737532] The editor automatically switches to WYSIWYG mode when the form
+ is posted.
+ <LI>
+ [SF BUG-739571] The editor is now working well over Opera (as for Netscape, a
+ TEXTAREA is shown).
+ </LI>
+ </UL>
+ <H3>Version 1.0 Final Candidate</H3>
+ <UL>
+ <LI>
+ A new dialog box for the "Link" command is available. Now you can upload and
+ browse the server exactly like the image dialog box. It's also possible to
+ define the link title and target window (_blank, _self, _parent and _top). As
+ with the image dialog box, a sample (and simple) file server browser is
+ available.
+ <LI>
+ A new configuration option is available to force every paste action to be
+ handled as plain text. See "config.ForcePasteAsPlainText" in fck_config.js.
+ <LI>
+ A new Toolbar button is available: "Paste from Word". It automatically cleans
+ the clipboard content before pasting (removesWord styles, classes, xml stuff,
+ etc...). This command is available for IE 5.5 and more. For IE 5.0 users, a
+ message is displayed advising that the text will not be cleaned before pasting.
+ <LI>
+ The editor automatically detects Word clipboard data on pasting operations and
+ asks the user to clean it before pasting. This option is turned on by default
+ but it can be configured. See "config.AutoDetectPasteFromWord" in
+ fck_config.js.
+ <LI>
+ Table properties are now available in cells' right click context menu.
+ <LI>
+ It's now possible to edit cells advanced properties from it's right click
+ context menu.
+ </LI>
+ </UL>
+ <H3>Version 1.0 Release Candidate 1 (RC1)</H3>
+ <UL>
+ <LI>
+ Some performance improvements.
+ <LI>
+ The file dhtmled.cab has been added to the package for clients ho needs to
+ install the Microsoft DHTML Editor component.
+ <LI>
+ [SF BUG-713952] The format command options are localized, so it depends on the
+ IE language to work. Until version 0.9.5 it was working only over English IE
+ browsers. Now the options are load dynamically on the client using the client's
+ language.
+ <LI>
+ [SF BUG-712103] The style command is localized, so it depends on the IE
+ language to work. Until version 0.9.5 it was working only over English IE
+ browsers. Now it configures itself using the client's language.
+ <LI>
+ [SF BUG-726137] On version 0.9.5, some commands (special chars, image,
+ emoticons, ...) remove the next available character before inserting the
+ required content even if no selection was made in the editor. Now the editor
+ replaces only the selected content (if available).
+ </LI>
+ </UL>
+ <H3>Version 0.9.5 beta</H3>
+ <UL>
+ <LI>
+ XHTML support is now available! It can be enabled/disabled in the fck_config.js
+ file.
+ <LI>
+ "Show Table Borders" option: show borders for tables with borders size set to
+ zero.
+ <LI>
+ "Show Details" option: show hidden elements (comments, scripts, paragraphs,
+ line breaks)
+ <LI>
+ IE behavior integration module. Thanks to Daniel Shryock.
+ <LI>
+ "Find" option: to find text in the document.
+ <LI>
+ More performance enhancements.
+ <LI>
+ New testsubmit.php file. Thansk to Jim Michaels.
+ <LI>
+ Two initial PHP upload manager implementations (not working yet). Thanks to
+ Frederic Tyndiuk and Christian Liljedahl.
+ <LI>
+ Initial PHP image browser implementation (not working yet). Thanks to Frederic
+ Tyndiuk.
+ <LI>
+ Initial CFM upload manager implementation. Thanks to John Watson.
+ </LI>
+ </UL>
+ <H3>Version 0.9.4 beta</H3>
+ <UL>
+ <LI>
+ ColdFusion module integration is now available! Thanks to John Watson.
+ <LI>
+ "Insert Smiley" toolbar option! Thanks to Fredox. Take a look at fck_config.js
+ for configuration options.
+ <LI>
+ "Paste as plain text" toolbar option!
+ <LI>
+ Right click support for links (edit / remove).
+ <LI>
+ Buttons now are shown in gray when disabled.
+ <LI>
+ Buttons are shown just when the image is downloaded (no more "red x" while
+ waiting for it).
+ <LI>
+ The toolbar background color can be set with a CSS style (see fck_editor.css).
+ <LI>
+ Toolbar images have been reviewed:
+ <UL>
+ <LI>
+ Now they are transparent.
+ <LI>
+ No more over...gif for every button (so the editor loads quicker).
+ <LI>
+ Buttons states are controlled with CSS styles. (see fck_editor.css).</LI></UL>
+ <LI>
+ Internet Explorer 5.0 compatibility, except for the image uploading popup.
+ <LI>
+ Optimizations when loading the editor.
+ <LI>
+ [SF BUG-709544] - Toolbar buttons wait for the images to be downloaded to start
+ watching and responding the user actions (turn buttons on/off when the user
+ changes position inside the editor).
+ <LI>
+ Javascript integration is now Object Oriented. CreateFCKeditor function is not
+ available anymore. Take a look in test.html.
+ <LI>
+ Two new configuration options, ImageBrowser and ImageUpload, are available to
+ turn on and off the image upload and image browsing options in the Image dialog
+ box. This options can be hidden for a specific editor instance throw specific
+ URL parameter in the editors IFRAME (upload=true/false&browse=true/false).
+ All specific language integration modules handle this option. For sample see
+ the _test directory.
+ </LI>
+ </UL></SPAN>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenugroup.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenugroup.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenugroup.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,71 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcontextmenugroup.js
+ * FCKContextMenuGroup Class: represents a group of items in the context
+ * menu. Generaly a group of items is directly dependent of the same rules.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKContextMenuGroup = function( addSeparator, contextMenu, firstItemCommand, firstItemLabel, hasIcon )
+{
+ this.IsVisible = true ;
+
+ // Array with all available context menu items of this group.
+ this.Items = new Array() ;
+
+ if ( addSeparator )
+ this.Add( new FCKContextMenuSeparator() ) ;
+
+ if ( contextMenu && firstItemCommand && firstItemLabel )
+ this.Add( new FCKContextMenuItem( contextMenu, firstItemCommand, firstItemLabel, hasIcon ) ) ;
+
+ // This OPTIONAL function checks if the group must be shown.
+ this.ValidationFunction = null ;
+}
+
+// Adds an item to the group's items collecion.
+FCKContextMenuGroup.prototype.Add = function( contextMenuItem )
+{
+ this.Items[ this.Items.length ] = contextMenuItem ;
+}
+
+// Creates the <TR> elements that represent the item in a table (usually the rendered context menu).
+FCKContextMenuGroup.prototype.CreateTableRows = function( table )
+{
+ for ( var i = 0 ; i < this.Items.length ; i++ )
+ {
+ this.Items[i].CreateTableRow( table ) ;
+ }
+}
+
+FCKContextMenuGroup.prototype.SetVisible = function( isVisible )
+{
+ for ( var i = 0 ; i < this.Items.length ; i++ )
+ {
+ this.Items[i].SetVisible( isVisible ) ;
+ }
+
+ this.IsVisible = isVisible ;
+}
+
+FCKContextMenuGroup.prototype.RefreshState = function()
+{
+ if ( ! this.IsVisible ) return ;
+
+ for ( var i = 0 ; i < this.Items.length ; i++ )
+ {
+ this.Items[i].RefreshState() ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuitem.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuitem.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuitem.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,104 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcontextmenuitem.js
+ * FCKContextMenuItem Class: represents a item in the context menu.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKContextMenuItem = function( contextMenu, commandName, label, hasIcon )
+{
+ this.ContextMenu = contextMenu ;
+ this.Command = FCKCommands.GetCommand( commandName ) ;
+ this.Label = label ? label : commandName ;
+ this.HasIcon = hasIcon ? true : false ;
+}
+
+function FCKContextMenuItem_OnMouseOver()
+{
+ if ( this.className != 'CM_Disabled' )
+ this.className = 'CM_Over' ;
+}
+
+function FCKContextMenuItem_OnMouseOut()
+{
+ if ( this.className != 'CM_Disabled' )
+ this.className = 'CM_Option' ;
+}
+
+function FCKContextMenuItem_OnClick()
+{
+ if ( this.className != 'CM_Disabled' )
+ {
+ this.FCKContextMenuItem.ContextMenu.Hide() ;
+ this.FCKContextMenuItem.Command.Execute() ;
+ }
+ return false ;
+}
+
+FCKContextMenuItem.prototype.CreateTableRow = function( targetTable )
+{
+ // Creates the <TR> element.
+ this._Row = targetTable.insertRow(-1) ;
+ this._Row.className = 'CM_Disabled' ;
+ this._Row.FCKContextMenuItem = this ;
+
+ this._Row.onmouseover = FCKContextMenuItem_OnMouseOver ;
+ this._Row.onmouseout = FCKContextMenuItem_OnMouseOut ;
+ this._Row.onclick = FCKContextMenuItem_OnClick ;
+
+ var oCell = this._Row.insertCell(-1) ;
+ oCell.className = 'CM_Icon' ;
+
+ if ( this.HasIcon ) oCell.innerHTML = '<img alt="" src="' + FCKConfig.SkinPath + 'toolbar/' + this.Command.Name.toLowerCase() + '.gif" width="21" height="20" unselectable="on">' ;
+
+ oCell = this._Row.insertCell(-1) ;
+ oCell.className = 'CM_Label' ;
+ oCell.unselectable = 'on' ;
+ oCell.noWrap = true ;
+ oCell.innerHTML = this.Label ;
+}
+
+FCKContextMenuItem.prototype.SetVisible = function( isVisible )
+{
+ this._Row.style.display = isVisible ? '' : 'none' ;
+}
+
+FCKContextMenuItem.prototype.RefreshState = function()
+{
+ switch ( this.Command.GetState() )
+ {
+ case FCK_TRISTATE_ON :
+ case FCK_TRISTATE_OFF :
+ this._Row.className = 'CM_Option' ;
+ break ;
+ default :
+ this._Row.className = 'CM_Disabled' ;
+ break ;
+ }
+}
+
+/*
+Sample output.
+-----------------------------------------
+<tr class="CM_Disabled">
+ <td class="CM_Icon"><img alt="" src="icons/cut.gif" width="21" height="20" unselectable="on"></td>
+ <td class="CM_Label" unselectable="on">Cut</td>
+</tr>
+-----------------------------------------
+<tr class="CM_Option" onmouseover="OnOver(this);" onmouseout="OnOut(this);">
+ <td class="CM_Icon"></td>
+ <td class="CM_Label">Do Something</td>
+</tr>
+*/
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuseparator.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuseparator.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckcontextmenuseparator.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,55 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcontextmenuseparator.js
+ * FCKContextMenuSeparator Class: represents a separator in the toolbar.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKContextMenuSeparator = function()
+{
+}
+
+FCKContextMenuSeparator.prototype.CreateTableRow = function( targetTable )
+{
+ // Creates the <TR> element.
+ this._Row = targetTable.insertRow(-1) ;
+ this._Row.className = 'CM_Separator' ;
+
+ var oCell = this._Row.insertCell(-1) ;
+ oCell.className = 'CM_Icon' ;
+
+ oCell = this._Row.insertCell(-1) ;
+ oCell.className = 'CM_Label' ;
+ oCell.innerHTML = '<div></div>' ;
+}
+
+FCKContextMenuSeparator.prototype.SetVisible = function( isVisible )
+{
+ this._Row.style.display = isVisible ? '' : 'none' ;
+}
+
+FCKContextMenuSeparator.prototype.RefreshState = function()
+{
+ // Do nothing... its state doesn't change.
+}
+
+/*
+Sample output.
+-----------------------------------------
+<tr class="CM_Separator">
+ <td class="CM_Icon"></td>
+ <td class="CM_Label"><div></div></td>
+</tr>
+*/
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckevents.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckevents.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckevents.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,50 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckevents.js
+ * FCKEvents Class: used to handle events is a advanced way.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKEvents ;
+
+if ( !( FCKEvents = NS.FCKEvents ) )
+{
+ FCKEvents = NS.FCKEvents = function( eventsOwner )
+ {
+ this.Owner = eventsOwner ;
+ this.RegisteredEvents = new Object() ;
+ }
+
+ FCKEvents.prototype.AttachEvent = function( eventName, functionPointer )
+ {
+ if ( ! this.RegisteredEvents[ eventName ] ) this.RegisteredEvents[ eventName ] = new Array() ;
+
+ this.RegisteredEvents[ eventName ][ this.RegisteredEvents[ eventName ].length ] = functionPointer ;
+ }
+
+ FCKEvents.prototype.FireEvent = function( eventName, params )
+ {
+ var bReturnValue = true ;
+
+ var oCalls = this.RegisteredEvents[ eventName ] ;
+ if ( oCalls )
+ {
+ for ( var i = 0 ; i < oCalls.length ; i++ )
+ bReturnValue = ( oCalls[ i ]( this.Owner, params ) && bReturnValue ) ;
+ }
+
+ return bReturnValue ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,206 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckpanel_gecko.js
+ * FCKPanel Class: Creates and manages floating panels in Gecko Browsers.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKPanel = function( parentWindow )
+{
+ if ( parentWindow )
+ this.Window = parentWindow ;
+ else
+ {
+ this.Window = window ;
+
+ while ( this.Window != window.top )
+ {
+ // Try/Catch must be used to avoit an error when using a frameset
+ // on a different domain:
+ // "Permission denied to get property HTMLDocument.Body".
+ try
+ {
+ if ( this.Window.parent.document.body.tagName == 'FRAMESET' )
+ break ;
+ }
+ catch (e)
+ {
+ break ;
+ }
+
+ this.Window = this.Window.parent ;
+ }
+ }
+}
+
+FCKPanel.prototype.Create = function()
+{
+ this._IFrame = this.Window.document.createElement('iframe') ;
+ this._IFrame.src = 'about:blank' ;
+ this._IFrame.frameBorder = '0';
+ this._IFrame.scrolling = 'no' ;
+ this._IFrame.style.left = '0px' ;
+ this._IFrame.style.top = '0px' ;
+ this._IFrame.width = 10 ;
+ this._IFrame.height = 10 ;
+ this._IFrame.style.position = 'absolute';
+ this._IFrame.style.visibility = 'hidden' ;
+
+ this._IFrame.IsFCKPanel = true ;
+ this._IFrame.Panel = this ;
+
+ this.Window.document.body.appendChild( this._IFrame ) ;
+
+ this.Document = this._IFrame.contentWindow.document ;
+
+ // Initialize the IFRAME document body.
+ this.Document.open() ;
+ this.Document.write( '<html><head></head><body><\/body><\/html>' ) ;
+ this.Document.close() ;
+
+ // Remove the default margins.
+ this.Document.body.style.margin = this.Document.body.style.padding = '0px' ;
+
+ // Add the defined Style Sheet to the document.
+ if ( this.StyleSheet )
+ FCKTools.AppendStyleSheet( this.Document, this.StyleSheet ) ;
+
+
+ this.OuterDiv = this.Document.body.appendChild( this.Document.createElement('DIV') ) ;
+ this.OuterDiv.style.cssFloat = 'left' ;
+
+ this.PanelDiv = this.OuterDiv.appendChild( this.Document.createElement('DIV') ) ;
+ this.PanelDiv.className = 'FCK_Panel' ;
+
+ this.Created = true ;
+}
+
+FCKPanel.prototype.Show = function( panelX, panelY, relElement, width, height, autoSize )
+{
+ if ( ! this.Created )
+ this.Create() ;
+
+ if ( width != null && autoSize && width < this.OuterDiv.offsetWidth )
+ this.PanelDiv.style.width = width ;
+
+ if ( height != null && autoSize && height < this.PanelDiv.offsetHeight )
+ this.PanelDiv.style.height = height + 'px' ;
+
+ var oPos = this.GetElementPosition( relElement ) ;
+
+ panelX += oPos.X ;
+ panelY += oPos.Y ;
+
+ if ( panelX + this.OuterDiv.offsetWidth > this.Window.innerWidth )
+ {
+ // The following line aligns the panel to the other side of the refElement.
+ // panelX = oPos.X - ( this.PanelDiv.offsetWidth - relElement.offsetWidth ) ;
+
+ panelX -= panelX + this.OuterDiv.offsetWidth - this.Window.innerWidth ;
+ }
+
+ // Set the context menu DIV in the specified location.
+ this._IFrame.style.left = panelX + 'px' ;
+ this._IFrame.style.top = panelY + 'px' ;
+
+ // Watch the "OnClick" event for all windows to close the Context Menu.
+ function SetOnClickListener( targetWindow, targetFunction )
+ {
+ // Try/Catch must be used to avoit an error when using a frameset
+ // on a different domain:
+ // "Permission denied to get property Window.frameElement".
+ try
+ {
+ if ( targetWindow == null || ( targetWindow.frameElement && targetWindow.frameElement.IsFCKPanel ) )
+ return ;
+
+ targetWindow.document.addEventListener( 'click', targetFunction, false ) ;
+ }
+ catch (e) {}
+
+ for ( var i = 0 ; i < targetWindow.frames.length ; i++ )
+ SetOnClickListener( targetWindow.frames[i], targetFunction ) ;
+ }
+ SetOnClickListener( window.top, FCKPanelEventHandlers.OnDocumentClick ) ;
+
+ this._IFrame.width = this.OuterDiv.offsetWidth ;
+ this._IFrame.height = this.OuterDiv.offsetHeight ;
+
+ // Show it.
+ this._IFrame.style.visibility = '' ;
+}
+
+FCKPanel.prototype.GetElementPosition = function( el )
+{
+ // Initializes the Coordinates object that will be returned by the function.
+ var c = { X:0, Y:0 } ;
+
+ // Loop throw the offset chain.
+ while ( el )
+ {
+ c.X += el.offsetLeft ;
+ c.Y += el.offsetTop ;
+
+ if ( el.offsetParent == null && el.ownerDocument.defaultView != this.Window )
+ el = el.ownerDocument.defaultView.frameElement ;
+ else
+ el = el.offsetParent ;
+ }
+
+ // Return the Coordinates object
+ return c ;
+}
+
+FCKPanel.prototype.Hide = function()
+{
+ // There is a bug on Firefox over Mac. It doesn't hide the Panel
+ // scrollbars, so we must force it.
+ this.PanelDiv.style.overflow = 'visible' ;
+
+ this._IFrame.style.visibility = 'hidden' ;
+// this._IFrame.style.left = this._IFrame.style.top = '0px' ;
+}
+
+var FCKPanelEventHandlers = new Object() ;
+
+FCKPanelEventHandlers.OnDocumentClick = function( e )
+{
+ var oWindow = e.target.ownerDocument.defaultView ;
+
+ if ( ! oWindow.IsFCKPanel )
+ {
+ function RemoveOnClickListener( targetWindow )
+ {
+ if ( targetWindow == null )
+ return ;
+
+ // Try/Catch must be used to avoit an error when using a frameset
+ // on a different domain:
+ // "Permission denied to get property Window.frameElement".
+ try
+ {
+ if ( targetWindow.frameElement && targetWindow.frameElement.IsFCKPanel )
+ targetWindow.frameElement.Panel.Hide() ;
+ else
+ targetWindow.document.removeEventListener( 'click', FCKPanelEventHandlers.OnDocumentClick, false ) ;
+ }
+ catch (e) {}
+
+ for ( var i = 0 ; i < targetWindow.frames.length ; i++ )
+ RemoveOnClickListener( targetWindow.frames[i] ) ;
+ }
+ RemoveOnClickListener( window.top ) ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckpanel_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,78 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckpanel_ie.js
+ * FCKPanel Class: Creates and manages floating panels in IE Browsers.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKPanel = function( parentWindow )
+{
+ this.Window = parentWindow ? parentWindow : window ;
+}
+
+function FCKPanel_OnContextMenu() { return false ; }
+
+FCKPanel.prototype.Create = function()
+{
+ // Create the Popup that will hold the panel.
+ this._Popup = this.Window.createPopup() ;
+
+ this.Document = this._Popup.document ;
+
+ aCleanupDocs[ aCleanupDocs.length ] = this.Document ;
+
+ this.Document.oncontextmenu = FCKPanel_OnContextMenu ;
+
+ if ( this.StyleSheet )
+ FCKTools.AppendStyleSheet( this.Document, this.StyleSheet ) ;
+
+ // Create the main DIV that is used as the panel base.
+ this.PanelDiv = this.Document.body.appendChild( this.Document.createElement('DIV') ) ;
+ this.PanelDiv.className = 'FCK_Panel' ;
+
+ this.Created = true ;
+}
+
+FCKPanel.prototype.Show = function( panelX, panelY, relElement, width, height, autoSize )
+{
+ if ( ! this.Created )
+ this._Create() ;
+
+ // The offsetWidth and offsetHeight properties are not available if the
+ // element is not visible. So we must "show" the popup with no size to
+ // be able to use that values in the second call.
+ this._Popup.show( panelX, panelY, 0, 0, relElement ) ;
+
+ if ( width == null || ( autoSize && width > this.PanelDiv.offsetWidth ) )
+ var iWidth = this.PanelDiv.offsetWidth ;
+ else
+ var iWidth = width ;
+
+ if ( height == null || ( autoSize && height > this.PanelDiv.offsetHeight ) )
+ var iHeight = this.PanelDiv.offsetHeight ;
+ else
+ var iHeight = height ;
+
+ this.PanelDiv.style.height = iHeight ;
+
+ // Second call: Show the Popup at the specified location.
+ this._Popup.show( panelX, panelY, iWidth, iHeight, relElement ) ;
+}
+
+FCKPanel.prototype.Hide = function()
+{
+ if ( this._Popup )
+ this._Popup.hide() ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckplugin.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckplugin.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckplugin.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,56 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckplugin.js
+ * FCKPlugin Class: Represents a single plugin.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Certifies that the "PluginsPath" configuration ends with a slash.
+if ( !FCKConfig.PluginsPath.endsWith('/') )
+ FCKConfig.PluginsPath += '/' ;
+
+var FCKPlugin = function( name, availableLangs, basePath )
+{
+ this.Name = name ;
+ this.BasePath = basePath ? basePath : FCKConfig.PluginsPath ;
+ this.Path = this.BasePath + name + '/' ;
+
+ if ( !availableLangs || availableLangs.length == 0 )
+ this.AvailableLangs = new Array() ;
+ else
+ this.AvailableLangs = availableLangs.split(',') ;
+}
+
+FCKPlugin.prototype.Load = function()
+{
+ // Load the language file, if defined.
+ if ( this.AvailableLangs.length > 0 )
+ {
+ var sLang ;
+
+ // Check if the plugin has the language file for the active language.
+ if ( this.AvailableLangs.indexOf( FCKLanguageManager.ActiveLanguage.Code ) >= 0 )
+ sLang = FCKLanguageManager.ActiveLanguage.Code ;
+ else
+ // Load the default language file (first one) if the current one is not available.
+ sLang = this.AvailableLangs[0] ;
+
+ // Add the main plugin script.
+ FCKScriptLoader.AddScript( this.Path + 'lang/' + sLang + '.js' ) ;
+ }
+
+ // Add the main plugin script.
+ FCKScriptLoader.AddScript( this.Path + 'fckplugin.js' ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckspecialcombo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckspecialcombo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckspecialcombo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,280 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckspecialcombo.js
+ * FCKSpecialCombo Class: represents a special combo.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKSpecialCombo = function( caption )
+{
+ // Default properties values.
+ this.FieldWidth = 80 ;
+ this.PanelWidth = 130 ;
+ this.PanelMaxHeight = 150 ;
+ this.Label = ' ' ;
+ this.Caption = caption ;
+ this.Tooltip = caption ;
+ this.Style = FCK_TOOLBARITEM_ICONTEXT ;
+
+ this.Enabled = true ;
+
+ this.Items = new Object() ;
+
+ this._Panel = new FCKPanel() ;
+ this._Panel.StyleSheet = FCKConfig.SkinPath + 'fck_contextmenu.css' ;
+ this._Panel.Create() ;
+ this._Panel.PanelDiv.className += ' SC_Panel' ;
+ this._Panel.PanelDiv.innerHTML = '<table cellpadding="0" cellspacing="0" width="100%" style="TABLE-LAYOUT: fixed"><tr><td nowrap></td></tr></table>' ;
+
+ this._ItemsHolderEl = this._Panel.PanelDiv.getElementsByTagName('TD')[0] ;
+}
+
+function FCKSpecialCombo_ItemOnMouseOver()
+{
+ this.className += ' SC_ItemOver' ;
+}
+
+function FCKSpecialCombo_ItemOnMouseOut()
+{
+ this.className = this.originalClass ;
+}
+
+function FCKSpecialCombo_ItemOnClick()
+{
+ this.FCKSpecialCombo._Panel.Hide() ;
+
+ this.FCKSpecialCombo.SetLabel( this.FCKItemLabel ) ;
+
+ if ( typeof( this.FCKSpecialCombo.OnSelect ) == 'function' )
+ this.FCKSpecialCombo.OnSelect( this.FCKItemID, this ) ;
+}
+
+FCKSpecialCombo.prototype.AddItem = function( id, html, label )
+{
+ // <div class="SC_Item" onmouseover="this.className='SC_Item SC_ItemOver';" onmouseout="this.className='SC_Item';"><b>Bold 1</b></div>
+ var oDiv = this._ItemsHolderEl.appendChild( this._Panel.Document.createElement( 'DIV' ) ) ;
+ oDiv.className = oDiv.originalClass = 'SC_Item' ;
+ oDiv.innerHTML = html ;
+ oDiv.FCKItemID = id ;
+ oDiv.FCKItemLabel = label ? label : id ;
+ oDiv.FCKSpecialCombo = this ;
+ oDiv.Selected = false ;
+
+ oDiv.onmouseover = FCKSpecialCombo_ItemOnMouseOver ;
+ oDiv.onmouseout = FCKSpecialCombo_ItemOnMouseOut ;
+ oDiv.onclick = FCKSpecialCombo_ItemOnClick ;
+
+ this.Items[ id.toString().toLowerCase() ] = oDiv ;
+
+ return oDiv ;
+}
+
+FCKSpecialCombo.prototype.SelectItem = function( itemId )
+{
+ itemId = itemId ? itemId.toString().toLowerCase() : '' ;
+
+ var oDiv = this.Items[ itemId ] ;
+ if ( oDiv )
+ {
+ oDiv.className = oDiv.originalClass = 'SC_ItemSelected' ;
+ oDiv.Selected = true ;
+ }
+}
+
+FCKSpecialCombo.prototype.DeselectAll = function()
+{
+ for ( var i in this.Items )
+ {
+ this.Items[i].className = this.Items[i].originalClass = 'SC_Item' ;
+ this.Items[i].Selected = false ;
+ }
+}
+
+FCKSpecialCombo.prototype.SetLabelById = function( id )
+{
+ id = id ? id.toString().toLowerCase() : '' ;
+
+ var oDiv = this.Items[ id ] ;
+ this.SetLabel( oDiv ? oDiv.FCKItemLabel : '' ) ;
+}
+
+FCKSpecialCombo.prototype.SetLabel = function( text )
+{
+ this.Label = text.length == 0 ? ' ' : text ;
+
+ if ( this._LabelEl )
+ this._LabelEl.innerHTML = this.Label ;
+}
+
+FCKSpecialCombo.prototype.SetEnabled = function( isEnabled )
+{
+ this.Enabled = isEnabled ;
+
+ this._OuterTable.className = isEnabled ? '' : 'SC_FieldDisabled' ;
+}
+
+FCKSpecialCombo.prototype.Create = function( targetElement )
+{
+ this._OuterTable = targetElement.appendChild( document.createElement( 'TABLE' ) ) ;
+ this._OuterTable.cellPadding = 0 ;
+ this._OuterTable.cellSpacing = 0 ;
+
+ this._OuterTable.insertRow(-1) ;
+
+ var sClass ;
+ var bShowLabel ;
+
+ switch ( this.Style )
+ {
+ case FCK_TOOLBARITEM_ONLYICON :
+ sClass = 'TB_ButtonType_Icon' ;
+ bShowLabel = false;
+ break ;
+ case FCK_TOOLBARITEM_ONLYTEXT :
+ sClass = 'TB_ButtonType_Text' ;
+ bShowLabel = false;
+ break ;
+ case FCK_TOOLBARITEM_ICONTEXT :
+ bShowLabel = true;
+ break ;
+ }
+
+ if ( this.Caption && this.Caption.length > 0 && bShowLabel )
+ {
+ var oCaptionCell = this._OuterTable.rows[0].insertCell(-1) ;
+ oCaptionCell.unselectable = 'on' ;
+ oCaptionCell.innerHTML = this.Caption ;
+ oCaptionCell.className = 'SC_FieldCaption' ;
+ }
+
+ // Create the main DIV element.
+ var oField = this._OuterTable.rows[0].insertCell(-1).appendChild( document.createElement( 'DIV' ) ) ;
+ if ( bShowLabel )
+ {
+ oField.className = 'SC_Field' ;
+ oField.style.width = this.FieldWidth + 'px' ;
+ oField.innerHTML = '<table width="100%" cellpadding="0" cellspacing="0" style="TABLE-LAYOUT: fixed;" unselectable="on"><tbody><tr><td class="SC_FieldLabel" unselectable="on"><label unselectable="on"> </label></td><td class="SC_FieldButton" unselectable="on"> </td></tr></tbody></table>' ;
+
+ this._LabelEl = oField.getElementsByTagName('label')[0] ;
+ this._LabelEl.innerHTML = this.Label ;
+ }
+ else
+ {
+ oField.className = 'TB_Button_Off' ;
+ //oField.innerHTML = '<span className="SC_FieldCaption">' + this.Caption + '<table cellpadding="0" cellspacing="0" style="TABLE-LAYOUT: fixed;" unselectable="on"><tbody><tr><td class="SC_FieldButton" style="border-left: none;" unselectable="on"> </td></tr></tbody></table>' ;
+ oField.innerHTML = '<table cellpadding="0" cellspacing="0" style="TABLE-LAYOUT: fixed;" unselectable="on"><tbody><tr><td class="SC_FieldButton" style="border-left: none;" unselectable="on"> </td></tr></tbody></table>' ;
+
+ // Gets the correct CSS class to use for the specified style (param).
+ oField.innerHTML ='<table title="' + this.Tooltip + '" class="' + sClass + '" cellspacing="0" cellpadding="0" border="0" unselectable="on">' +
+ '<tr>' +
+ //'<td class="TB_Icon" unselectable="on"><img src="' + FCKConfig.SkinPath + 'toolbar/' + this.Command.Name.toLowerCase() + '.gif" width="21" height="21" unselectable="on"></td>' +
+ '<td class="TB_Text" unselectable="on">' + this.Caption + '</td>' +
+ '<td class="TB_ButtonArrow" unselectable="on"><img src="' + FCKConfig.SkinPath + 'images/toolbar.buttonarrow.gif" width="5" height="3"></td>' +
+ '</tr>' +
+ '</table>' ;
+ }
+
+
+ // Events Handlers
+
+ oField.SpecialCombo = this ;
+
+ oField.onmouseover = FCKSpecialCombo_OnMouseOver ;
+ oField.onmouseout = FCKSpecialCombo_OnMouseOut ;
+ oField.onclick = FCKSpecialCombo_OnClick ;
+}
+
+function FCKSpecialCombo_OnMouseOver()
+{
+ if ( this.SpecialCombo.Enabled )
+ {
+ switch ( this.SpecialCombo.Style )
+ {
+ case FCK_TOOLBARITEM_ONLYICON :
+ this.className = 'TB_Button_On';
+ break ;
+ case FCK_TOOLBARITEM_ONLYTEXT :
+ this.className = 'TB_Button_On';
+ break ;
+ case FCK_TOOLBARITEM_ICONTEXT :
+ this.className = 'SC_Field SC_FieldOver' ;
+ break ;
+ }
+ }
+}
+
+function FCKSpecialCombo_OnMouseOut()
+{
+ switch ( this.SpecialCombo.Style )
+ {
+ case FCK_TOOLBARITEM_ONLYICON :
+ this.className = 'TB_Button_Off';
+ break ;
+ case FCK_TOOLBARITEM_ONLYTEXT :
+ this.className = 'TB_Button_Off';
+ break ;
+ case FCK_TOOLBARITEM_ICONTEXT :
+ this.className='SC_Field' ;
+ break ;
+ }
+}
+
+function FCKSpecialCombo_OnClick( e )
+{
+ // For Mozilla we must stop the event propagation to avoid it hiding
+ // the panel because of a click outside of it.
+ if ( e )
+ {
+ e.stopPropagation() ;
+ FCKPanelEventHandlers.OnDocumentClick( e ) ;
+ }
+
+ if ( this.SpecialCombo.Enabled )
+ {
+ var oPanel = this.SpecialCombo._Panel ;
+
+ if ( typeof( this.SpecialCombo.OnBeforeClick ) == 'function' )
+ this.SpecialCombo.OnBeforeClick( this.SpecialCombo ) ;
+
+ if ( this.SpecialCombo._ItemsHolderEl.offsetHeight > this.SpecialCombo.PanelMaxHeight )
+ oPanel.PanelDiv.style.height = this.SpecialCombo.PanelMaxHeight + 'px' ;
+ else
+ oPanel.PanelDiv.style.height = this.SpecialCombo._ItemsHolderEl.offsetHeight + 'px' ;
+
+ oPanel.PanelDiv.style.width = this.SpecialCombo.PanelWidth + 'px' ;
+
+ if ( FCKBrowserInfo.IsGecko )
+ oPanel.PanelDiv.style.overflow = '-moz-scrollbars-vertical' ;
+
+ oPanel.Show( 0, this.offsetHeight, this, null, this.SpecialCombo.PanelMaxHeight, true ) ;
+ }
+
+ return false ;
+}
+
+/*
+Sample Combo Field HTML output:
+
+<div class="SC_Field" style="width: 80px;">
+ <table width="100%" cellpadding="0" cellspacing="0" style="table-layout: fixed;">
+ <tbody>
+ <tr>
+ <td class="SC_FieldLabel"><label> </label></td>
+ <td class="SC_FieldButton"> </td>
+ </tr>
+ </tbody>
+ </table>
+</div>
+*/
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,55 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckstyledef.js
+ * FCKStyleDef Class: represents a single stylke definition.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKStyleDef = function( name, element )
+{
+ this.Name = name ;
+ this.Element = element.toUpperCase() ;
+ this.IsObjectElement = FCKRegexLib.ObjectElements.test( this.Element ) ;
+ this.Attributes = new Object() ;
+}
+
+FCKStyleDef.prototype.AddAttribute = function( name, value )
+{
+ this.Attributes[ name ] = value ;
+}
+
+FCKStyleDef.prototype.GetOpenerTag = function()
+{
+ var s = '<' + this.Element ;
+
+ for ( var a in this.Attributes )
+ s += ' ' + a + '="' + this.Attributes[a] + '"' ;
+
+ return s + '>' ;
+}
+
+FCKStyleDef.prototype.GetCloserTag = function()
+{
+ return '</' + this.Element + '>' ;
+}
+
+
+FCKStyleDef.prototype.RemoveFromSelection = function()
+{
+ if ( FCKSelection.GetType() == 'Control' )
+ this._RemoveMe( FCKSelection.GetSelectedElement() ) ;
+ else
+ this._RemoveMe( FCKSelection.GetParentElement() ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,107 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckstyledef_gecko.js
+ * FCKStyleDef Class: represents a single stylke definition. (Gecko specific)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKStyleDef.prototype.ApplyToSelection = function()
+{
+ if ( FCKSelection.GetType() == 'Text' && !this.IsObjectElement )
+ {
+ var oSelection = FCK.EditorWindow.getSelection() ;
+
+ // Create the main element.
+ var e = FCK.EditorDocument.createElement( this.Element ) ;
+
+ for ( var i = 0 ; i < oSelection.rangeCount ; i++ )
+ {
+ e.appendChild( oSelection.getRangeAt(i).extractContents() ) ;
+ }
+
+ // Set the attributes.
+ this._AddAttributes( e ) ;
+
+ // Remove the duplicated elements.
+ this._RemoveDuplicates( e ) ;
+
+ var oRange = oSelection.getRangeAt(0) ;
+ oRange.insertNode( e ) ;
+ }
+ else
+ {
+ var oControl = FCKSelection.GetSelectedElement() ;
+ if ( oControl.tagName == this.Element )
+ this._AddAttributes( oControl ) ;
+ }
+}
+
+FCKStyleDef.prototype._AddAttributes = function( targetElement )
+{
+ for ( var a in this.Attributes )
+ targetElement.setAttribute( a, this.Attributes[a], 0 ) ;
+}
+
+FCKStyleDef.prototype._RemoveDuplicates = function( parent )
+{
+ for ( var i = 0 ; i < parent.childNodes.length ; i++ )
+ {
+ var oChild = parent.childNodes[i] ;
+
+ if ( oChild.nodeType != 1 )
+ continue ;
+
+ this._RemoveDuplicates( oChild ) ;
+
+ if ( this.IsEqual( oChild ) )
+ FCKTools.RemoveOuterTags( oChild ) ;
+ }
+}
+
+FCKStyleDef.prototype.IsEqual = function( e )
+{
+ if ( e.tagName != this.Element )
+ return false ;
+
+ for ( var a in this.Attributes )
+ {
+ if ( e.getAttribute( a ) != this.Attributes[a] )
+ return false ;
+ }
+
+ return true ;
+}
+
+FCKStyleDef.prototype._RemoveMe = function( elementToCheck )
+{
+ if ( ! elementToCheck )
+ return ;
+
+ var oParent = elementToCheck.parentNode ;
+
+ if ( elementToCheck.nodeType == 1 && this.IsEqual( elementToCheck ) )
+ {
+ if ( this.IsObjectElement )
+ {
+ for ( var a in this.Attributes )
+ elementToCheck.removeAttribute( a, 0 ) ;
+ return ;
+ }
+ else
+ FCKTools.RemoveOuterTags( elementToCheck ) ;
+ }
+
+ this._RemoveMe( oParent ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstyledef_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,130 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckstyledef_ie.js
+ * FCKStyleDef Class: represents a single stylke definition. (IE specific)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKStyleDef.prototype.ApplyToSelection = function()
+{
+ var oSelection = FCK.EditorDocument.selection ;
+
+ if ( oSelection.type == 'Text' )
+ {
+ var oRange = oSelection.createRange() ;
+
+ // Create the main element.
+ var e = document.createElement( this.Element ) ;
+ e.innerHTML = oRange.htmlText ;
+
+ // Set the attributes.
+ this._AddAttributes( e ) ;
+
+ // Remove the duplicated elements.
+ this._RemoveDuplicates( e ) ;
+
+ // Replace the selection with the resulting HTML.
+ oRange.pasteHTML( e.outerHTML ) ;
+ }
+ else if ( oSelection.type == 'Control' )
+ {
+ var oControl = FCKSelection.GetSelectedElement() ;
+ if ( oControl.tagName == this.Element )
+ this._AddAttributes( oControl ) ;
+ }
+}
+
+FCKStyleDef.prototype._AddAttributes = function( targetElement )
+{
+ for ( var a in this.Attributes )
+ {
+ if ( a.toLowerCase() == 'style' )
+ targetElement.style.cssText = this.Attributes[a] ;
+ else
+ targetElement.setAttribute( a, this.Attributes[a], 0 ) ;
+ }
+}
+
+FCKStyleDef.prototype._RemoveDuplicates = function( parent )
+{
+ for ( var i = 0 ; i < parent.children.length ; i++ )
+ {
+ var oChild = parent.children[i] ;
+ this._RemoveDuplicates( oChild ) ;
+
+ if ( this.IsEqual( oChild ) )
+ {
+ oChild.insertAdjacentHTML( 'beforeBegin', oChild.innerHTML ) ;
+ oChild.parentElement.removeChild( oChild ) ;
+ }
+ }
+}
+
+FCKStyleDef.prototype.IsEqual = function( e )
+{
+ if ( e.tagName != this.Element )
+ return false ;
+
+ for ( var a in this.Attributes )
+ {
+ switch ( a.toLowerCase() )
+ {
+ case 'style' :
+ if ( e.style.cssText.toLowerCase() != this.Attributes[a].toLowerCase() )
+ return false ;
+ break ;
+ case 'class' :
+ if ( e.getAttribute( 'className', 0 ) != this.Attributes[a] )
+ return false ;
+ break ;
+ default :
+ if ( e.getAttribute( a, 0 ) != this.Attributes[a] )
+ return false ;
+ }
+ }
+
+ return true ;
+}
+
+FCKStyleDef.prototype._RemoveMe = function( elementToCheck )
+{
+ if ( ! elementToCheck )
+ return ;
+
+ var oParent = elementToCheck.parentElement ;
+
+ if ( this.IsEqual( elementToCheck ) )
+ {
+ if ( this.IsObjectElement )
+ {
+ for ( var a in this.Attributes )
+ {
+ switch ( a.toLowerCase() )
+ {
+ case 'class' :
+ elementToCheck.removeAttribute( 'className', 0 ) ;
+ break ;
+ default :
+ elementToCheck.removeAttribute( a, 0 ) ;
+ }
+ }
+ return ;
+ }
+ else
+ FCKTools.RemoveOuterTags( elementToCheck ) ;
+ }
+
+ this._RemoveMe( oParent ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstylesloader.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstylesloader.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckstylesloader.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,84 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckstylesloader.js
+ * FCKStylesLoader Class: this class define objects that are responsible
+ * for loading the styles defined in the XML file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKStylesLoader = function()
+{
+ this.Styles = new Object() ;
+ this.StyleGroups = new Object() ;
+ this.Loaded = false ;
+ this.HasObjectElements = false ;
+}
+
+FCKStylesLoader.prototype.Load = function( stylesXmlUrl )
+{
+ // Load the XML file into a FCKXml object.
+ var oXml = new FCKXml() ;
+ oXml.LoadUrl( stylesXmlUrl ) ;
+
+ // Get the "Style" nodes defined in the XML file.
+ var aStyleNodes = oXml.SelectNodes( 'Styles/Style' ) ;
+
+ // Add each style to our "Styles" collection.
+ for ( var i = 0 ; i < aStyleNodes.length ; i++ )
+ {
+ var sElement = aStyleNodes[i].attributes.getNamedItem('element').value.toUpperCase() ;
+
+ // Create the style definition object.
+ var oStyleDef = new FCKStyleDef( aStyleNodes[i].attributes.getNamedItem('name').value, sElement ) ;
+
+ if ( oStyleDef.IsObjectElement )
+ this.HasObjectElements = true ;
+
+ // Get the attributes defined for the style (if any).
+ var aAttNodes = oXml.SelectNodes( 'Attribute', aStyleNodes[i] ) ;
+
+ // Add the attributes to the style definition object.
+ for ( var j = 0 ; j < aAttNodes.length ; j++ )
+ {
+ var sAttName = aAttNodes[j].attributes.getNamedItem('name').value ;
+ var sAttValue = aAttNodes[j].attributes.getNamedItem('value').value ;
+
+ // IE changes the "style" attribute value when applied to an element
+ // so we must get the final resulting value (for comparision issues).
+ if ( sAttName.toLowerCase() == 'style' )
+ {
+ var oTempE = document.createElement( 'SPAN' ) ;
+ oTempE.style.cssText = sAttValue ;
+ sAttValue = oTempE.style.cssText ;
+ }
+
+ oStyleDef.AddAttribute( sAttName, sAttValue ) ;
+ }
+
+ // Add the style to the "Styles" collection using it's name as the key.
+ this.Styles[ oStyleDef.Name ] = oStyleDef ;
+
+ // Add the style to the "StyleGroups" collection.
+ var aGroup = this.StyleGroups[sElement] ;
+ if ( aGroup == null )
+ {
+ this.StyleGroups[sElement] = new Array() ;
+ aGroup = this.StyleGroups[sElement] ;
+ }
+ aGroup[aGroup.length] = oStyleDef ;
+ }
+
+ this.Loaded = true ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbar.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbar.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbar.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,62 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbar.js
+ * FCKToolbar Class: represents a toolbar. A toolbar is not the complete
+ * toolbar set visible, but just a strip on it... a group of items.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbar = function()
+{
+ this.Items = new Array() ;
+
+ var e = this.DOMTable = document.createElement( 'table' ) ;
+ e.className = 'TB_Toolbar' ;
+
+ // Sets the toolbar direction. IE uses "styleFloat" and Gecko uses "cssFloat".
+ e.style.styleFloat = e.style.cssFloat = FCKLang.Dir == 'rtl' ? 'right' : 'left' ;
+
+ e.cellPadding = 0 ;
+ e.cellSpacing = 0 ;
+ e.border = 0 ;
+
+ this.DOMRow = e.insertRow(-1) ;
+
+ var oCell = this.DOMRow.insertCell(-1) ;
+ oCell.className = 'TB_Start' ;
+ oCell.innerHTML = '<img src="' + FCKConfig.SkinPath + 'images/toolbar.start.gif" width="7" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">' ;
+
+ FCKToolbarSet.DOMElement.appendChild( e ) ;
+}
+
+FCKToolbar.prototype.AddItem = function( toolbarItem )
+{
+ this.Items[ this.Items.length ] = toolbarItem ;
+ toolbarItem.CreateInstance( this ) ;
+}
+
+FCKToolbar.prototype.AddSeparator = function()
+{
+ var oCell = this.DOMRow.insertCell(-1) ;
+ oCell.unselectable = 'on' ;
+ oCell.innerHTML = '<img src="' + FCKConfig.SkinPath + 'images/toolbar.separator.gif" width="5" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">' ;
+}
+
+FCKToolbar.prototype.AddTerminator = function()
+{
+ var oCell = this.DOMRow.insertCell(-1) ;
+ oCell.className = 'TB_End' ;
+ oCell.innerHTML = '<img src="' + FCKConfig.SkinPath + 'images/toolbar.end.gif" width="12" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">' ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,29 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarbreak_gecko.js
+ * FCKToolbarBreak Class: breaks the toolbars.
+ * It makes it possible to force the toolbar to brak to a new line.
+ * This is the Gecko specific implementation.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarBreak = function()
+{
+ var oBreakDiv = document.createElement( 'div' ) ;
+
+ oBreakDiv.style.clear = oBreakDiv.style.cssFloat = FCKLang.Dir == 'rtl' ? 'right' : 'left' ;
+
+ FCKToolbarSet.DOMElement.appendChild( oBreakDiv ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbreak_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,31 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarbreak_ie.js
+ * FCKToolbarBreak Class: breaks the toolbars.
+ * It makes it possible to force the toolbar to brak to a new line.
+ * This is the IE specific implementation.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarBreak = function()
+{
+ var oBreakDiv = document.createElement( 'div' ) ;
+
+ oBreakDiv.className = 'TB_Break' ;
+
+ oBreakDiv.style.clear = FCKLang.Dir == 'rtl' ? 'left' : 'right' ;
+
+ FCKToolbarSet.DOMElement.appendChild( oBreakDiv ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbutton.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbutton.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarbutton.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,148 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarbutton.js
+ * FCKToolbarButton Class: represents a button in the toolbar.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarButton = function( commandName, label, tooltip, style, sourceView, contextSensitive )
+{
+ this.Command = FCKCommands.GetCommand( commandName ) ;
+ this.Label = label ? label : commandName ;
+ this.Tooltip = tooltip ? tooltip : ( label ? label : commandName) ;
+ this.Style = style ? style : FCK_TOOLBARITEM_ONLYICON ;
+ this.SourceView = sourceView ? true : false ;
+ this.ContextSensitive = contextSensitive ? true : false ;
+ this.IconPath = FCKConfig.SkinPath + 'toolbar/' + commandName.toLowerCase() + '.gif' ;
+ this.State = FCK_UNKNOWN ;
+}
+
+FCKToolbarButton.prototype.CreateInstance = function( parentToolbar )
+{
+ this.DOMDiv = document.createElement( 'div' ) ;
+ this.DOMDiv.className = 'TB_Button_Off' ;
+
+ this.DOMDiv.FCKToolbarButton = this ;
+
+ var sHtml =
+ '<table title="' + this.Tooltip + '" cellspacing="0" cellpadding="0" border="0" unselectable="on">' +
+ '<tr>' ;
+
+ if ( this.Style != FCK_TOOLBARITEM_ONLYTEXT )
+ sHtml += '<td class="TB_Icon" unselectable="on"><img src="' + this.IconPath + '" width="21" height="21" unselectable="on"></td>' ;
+
+ if ( this.Style != FCK_TOOLBARITEM_ONLYICON )
+ sHtml += '<td class="TB_Text" unselectable="on" nowrap>' + this.Label + '</td>' ;
+
+ sHtml +=
+ '</tr>' +
+ '</table>' ;
+
+ this.DOMDiv.innerHTML = sHtml ;
+
+ var oCell = parentToolbar.DOMRow.insertCell(-1) ;
+ oCell.appendChild( this.DOMDiv ) ;
+
+ this.RefreshState() ;
+}
+
+FCKToolbarButton.prototype.RefreshState = function()
+{
+/*
+ TODO: Delete this commend block on stable version.
+ // Gets the actual state.
+// var eState ;
+
+// if ( FCK.EditMode == FCK_EDITMODE_SOURCE && ! this.SourceView )
+// eState = FCK_TRISTATE_DISABLED ;
+// else
+*/
+ // Gets the actual state.
+ var eState = this.Command.GetState() ;
+
+ // If there are no state changes than do nothing and return.
+ if ( eState == this.State ) return ;
+
+ // Sets the actual state.
+ this.State = eState ;
+
+ switch ( this.State )
+ {
+ case FCK_TRISTATE_ON :
+ this.DOMDiv.className = 'TB_Button_On' ;
+
+ this.DOMDiv.onmouseover = FCKToolbarButton_OnMouseOnOver ;
+ this.DOMDiv.onmouseout = FCKToolbarButton_OnMouseOnOut ;
+ this.DOMDiv.onclick = FCKToolbarButton_OnClick ;
+
+ break ;
+ case FCK_TRISTATE_OFF :
+ this.DOMDiv.className = 'TB_Button_Off' ;
+
+ this.DOMDiv.onmouseover = FCKToolbarButton_OnMouseOffOver ;
+ this.DOMDiv.onmouseout = FCKToolbarButton_OnMouseOffOut ;
+ this.DOMDiv.onclick = FCKToolbarButton_OnClick ;
+
+ break ;
+ default :
+ this.Disable() ;
+ break ;
+ }
+}
+
+function FCKToolbarButton_OnMouseOnOver()
+{
+ this.className = 'TB_Button_On TB_Button_On_Over' ;
+}
+
+function FCKToolbarButton_OnMouseOnOut()
+{
+ this.className = 'TB_Button_On' ;
+}
+
+function FCKToolbarButton_OnMouseOffOver()
+{
+ this.className = 'TB_Button_On TB_Button_Off_Over' ;
+}
+
+function FCKToolbarButton_OnMouseOffOut()
+{
+ this.className = 'TB_Button_Off' ;
+}
+
+function FCKToolbarButton_OnClick(e)
+{
+ this.FCKToolbarButton.Click(e) ;
+ return false ;
+}
+
+FCKToolbarButton.prototype.Click = function()
+{
+ this.Command.Execute() ;
+}
+
+FCKToolbarButton.prototype.Enable = function()
+{
+ this.RefreshState() ;
+}
+
+FCKToolbarButton.prototype.Disable = function()
+{
+ this.State = FCK_TRISTATE_DISABLED ;
+ this.DOMDiv.className = 'TB_Button_Disabled' ;
+ this.DOMDiv.onmouseover = null ;
+ this.DOMDiv.onmouseout = null ;
+ this.DOMDiv.onclick = null ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontformatcombo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,64 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarfontformatcombo.js
+ * FCKToolbarPanelButton Class: Handles the Fonts combo selector.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarFontFormatCombo = function( tooltip, style )
+{
+ this.Command = FCKCommands.GetCommand( 'FontFormat' ) ;
+ this.Label = this.GetLabel() ;
+ this.Tooltip = tooltip ? tooltip : this.Label ;
+ this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
+
+ this.PanelWidth = 190 ;
+}
+
+// Inherit from FCKToolbarSpecialCombo.
+FCKToolbarFontFormatCombo.prototype = new FCKToolbarSpecialCombo ;
+
+FCKToolbarFontFormatCombo.prototype.GetLabel = function()
+{
+ return FCKLang.FontFormat ;
+}
+
+FCKToolbarFontFormatCombo.prototype.CreateItems = function( targetSpecialCombo )
+{
+ // Get the format names from the language file.
+ var aNames = FCKLang['FontFormats'].split(';') ;
+ var oNames = {
+ p : aNames[0],
+ pre : aNames[1],
+ address : aNames[2],
+ h1 : aNames[3],
+ h2 : aNames[4],
+ h3 : aNames[5],
+ h4 : aNames[6],
+ h5 : aNames[7],
+ h6 : aNames[8],
+ div : aNames[9]
+ } ;
+
+ // Get the available formats from the configuration file.
+ var aTags = FCKConfig.FontFormats.split(';') ;
+
+ for ( var i = 0 ; i < aTags.length ; i++ )
+ {
+ if ( aTags[i] == 'div' && FCKBrowserInfo.IsGecko )
+ continue ;
+ this._Combo.AddItem( aTags[i], '<' + aTags[i] + '>' + oNames[aTags[i]] + '</' + aTags[i] + '>', oNames[aTags[i]] ) ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontscombo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,42 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarfontscombo.js
+ * FCKToolbarPanelButton Class: Handles the Fonts combo selector.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarFontsCombo = function( tooltip, style )
+{
+ this.Command = FCKCommands.GetCommand( 'FontName' ) ;
+ this.Label = this.GetLabel() ;
+ this.Tooltip = tooltip ? tooltip : this.Label ;
+ this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
+}
+
+// Inherit from FCKToolbarSpecialCombo.
+FCKToolbarFontsCombo.prototype = new FCKToolbarSpecialCombo ;
+
+FCKToolbarFontsCombo.prototype.GetLabel = function()
+{
+ return FCKLang.Font ;
+}
+
+FCKToolbarFontsCombo.prototype.CreateItems = function( targetSpecialCombo )
+{
+ var aFonts = FCKConfig.FontNames.split(';') ;
+
+ for ( var i = 0 ; i < aFonts.length ; i++ )
+ this._Combo.AddItem( aFonts[i], '<span style="font-family: \'' + aFonts[i] + '\'; font-size: 12px;">' + aFonts[i] + '</span>' ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarfontsizecombo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,47 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarfontsizecombo.js
+ * FCKToolbarPanelButton Class: Handles the Fonts combo selector.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarFontSizeCombo = function( tooltip, style )
+{
+ this.Command = FCKCommands.GetCommand( 'FontSize' ) ;
+ this.Label = this.GetLabel() ;
+ this.Tooltip = tooltip ? tooltip : this.Label ;
+ this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
+}
+
+// Inherit from FCKToolbarSpecialCombo.
+FCKToolbarFontSizeCombo.prototype = new FCKToolbarSpecialCombo ;
+
+FCKToolbarFontSizeCombo.prototype.GetLabel = function()
+{
+ return FCKLang.FontSize ;
+}
+
+FCKToolbarFontSizeCombo.prototype.CreateItems = function( targetSpecialCombo )
+{
+ targetSpecialCombo.FieldWidth = 70 ;
+
+ var aSizes = FCKConfig.FontSizes.split(';') ;
+
+ for ( var i = 0 ; i < aSizes.length ; i++ )
+ {
+ var aSizeParts = aSizes[i].split('/') ;
+ this._Combo.AddItem( aSizeParts[0], '<font size="' + aSizeParts[0] + '">' + aSizeParts[1] + '</font>', aSizeParts[1] ) ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarpanelbutton.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,83 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarpanelbutton.js
+ * FCKToolbarPanelButton Class: represents a special button in the toolbar
+ * that shows a panel when pressed.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarPanelButton = function( commandName, label, tooltip, style )
+{
+ this.Command = FCKCommands.GetCommand( commandName ) ;
+ this.Label = label ? label : commandName ;
+ this.Tooltip = tooltip ? tooltip : ( label ? label : commandName) ;
+ this.Style = style ? style : FCK_TOOLBARITEM_ONLYICON ;
+ this.State = FCK_UNKNOWN ;
+}
+
+FCKToolbarPanelButton.prototype.Click = function(e)
+{
+ // For Mozilla we must stop the event propagation to avoid it hiding
+ // the panel because of a click outside of it.
+ if ( e )
+ {
+ e.stopPropagation() ;
+ FCKPanelEventHandlers.OnDocumentClick( e ) ;
+ }
+
+ if ( this.State != FCK_TRISTATE_DISABLED )
+ {
+ this.Command.Execute(0, this.DOMDiv.offsetHeight, this.DOMDiv) ;
+// this.FCKToolbarButton.HandleOnClick( this, e ) ;
+ }
+
+ return false ;
+}
+
+FCKToolbarPanelButton.prototype.CreateInstance = function( parentToolbar )
+{
+ this.DOMDiv = document.createElement( 'div' ) ;
+ this.DOMDiv.className = 'TB_Button_Off' ;
+
+ this.DOMDiv.FCKToolbarButton = this ;
+
+ var sHtml =
+ '<table title="' + this.Tooltip + '" cellspacing="0" cellpadding="0" border="0" unselectable="on">' +
+ '<tr>' ;
+
+ if ( this.Style != FCK_TOOLBARITEM_ONLYTEXT )
+ sHtml += '<td class="TB_Icon" unselectable="on"><img src="' + FCKConfig.SkinPath + 'toolbar/' + this.Command.Name.toLowerCase() + '.gif" width="21" height="21" unselectable="on"></td>' ;
+
+ if ( this.Style != FCK_TOOLBARITEM_ONLYICON )
+ sHtml += '<td class="TB_Text" unselectable="on" nowrap>' + this.Label + '</td>' ;
+
+ sHtml +=
+ '<td class="TB_ButtonArrow" unselectable="on"><img src="' + FCKConfig.SkinPath + 'images/toolbar.buttonarrow.gif" width="5" height="3"></td>' +
+ '</tr>' +
+ '</table>' ;
+
+ this.DOMDiv.innerHTML = sHtml ;
+
+ var oCell = parentToolbar.DOMRow.insertCell(-1) ;
+ oCell.appendChild( this.DOMDiv ) ;
+
+ this.RefreshState() ;
+}
+
+// The Panel Button works like a normal button so the refresh state functions
+// defined for the normal button can be reused here.
+FCKToolbarPanelButton.prototype.RefreshState = FCKToolbarButton.prototype.RefreshState ;
+FCKToolbarPanelButton.prototype.Enable = FCKToolbarButton.prototype.Enable ;
+FCKToolbarPanelButton.prototype.Disable = FCKToolbarButton.prototype.Disable ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarspecialcombo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,117 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarspecialcombo.js
+ * FCKToolbarSpecialCombo Class: This is a "abstract" base class to be used
+ * by the special combo toolbar elements like font name, font size, paragraph format, etc...
+ *
+ * The following properties and methods must be implemented when inheriting from
+ * this class:
+ * - Property: Command [ The command to be executed ]
+ * - Method: GetLabel() [ Returns the label ]
+ * - CreateItems( targetSpecialCombo ) [ Add all items in the special combo ]
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarSpecialCombo = function()
+{
+ this.SourceView = false ;
+ this.ContextSensitive = true ;
+}
+
+function FCKToolbarSpecialCombo_OnSelect( itemId, item )
+{
+ this.Command.Execute( itemId, item ) ;
+}
+
+FCKToolbarSpecialCombo.prototype.CreateInstance = function( parentToolbar )
+{
+ this._Combo = new FCKSpecialCombo( this.GetLabel() ) ;
+ this._Combo.FieldWidth = this.FieldWidth != null ? this.FieldWidth : 100 ;
+ this._Combo.PanelWidth = this.PanelWidth != null ? this.PanelWidth : 150 ;
+ this._Combo.PanelMaxHeight = this.PanelMaxHeight != null ? this.PanelMaxHeight : 150 ;
+
+ //this._Combo.Command.Name = this.Command.Name;
+// this._Combo.Label = this.Label ;
+ this._Combo.Tooltip = this.Tooltip ;
+ this._Combo.Style = this.Style ;
+
+ this.CreateItems( this._Combo ) ;
+
+ this._Combo.Create( parentToolbar.DOMRow.insertCell(-1) ) ;
+
+ this._Combo.Command = this.Command ;
+
+ this._Combo.OnSelect = FCKToolbarSpecialCombo_OnSelect ;
+}
+
+function FCKToolbarSpecialCombo_RefreshActiveItems( combo, value )
+{
+ combo.DeselectAll() ;
+ combo.SelectItem( value ) ;
+ combo.SetLabelById( value ) ;
+}
+
+FCKToolbarSpecialCombo.prototype.RefreshState = function()
+{
+ // Gets the actual state.
+ var eState ;
+
+// if ( FCK.EditMode == FCK_EDITMODE_SOURCE && ! this.SourceView )
+// eState = FCK_TRISTATE_DISABLED ;
+// else
+// {
+ var sValue = this.Command.GetState() ;
+
+ if ( sValue != FCK_TRISTATE_DISABLED )
+ {
+ eState = FCK_TRISTATE_ON ;
+
+ if ( this.RefreshActiveItems )
+ this.RefreshActiveItems( this._Combo, sValue ) ;
+ else
+ FCKToolbarSpecialCombo_RefreshActiveItems( this._Combo, sValue ) ;
+ }
+ else
+ eState = FCK_TRISTATE_DISABLED ;
+// }
+
+ // If there are no state changes then do nothing and return.
+ if ( eState == this.State ) return ;
+
+ if ( eState == FCK_TRISTATE_DISABLED )
+ {
+ this._Combo.DeselectAll() ;
+ this._Combo.SetLabel( '' ) ;
+ }
+
+ // Sets the actual state.
+ this.State = eState ;
+
+ // Updates the graphical state.
+ this._Combo.SetEnabled( eState != FCK_TRISTATE_DISABLED ) ;
+}
+
+FCKToolbarSpecialCombo.prototype.Enable = function()
+{
+ this.RefreshState() ;
+}
+
+FCKToolbarSpecialCombo.prototype.Disable = function()
+{
+ this.State = FCK_TRISTATE_DISABLED ;
+ this._Combo.DeselectAll() ;
+ this._Combo.SetLabel( '' ) ;
+ this._Combo.SetEnabled( false ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fcktoolbarstylecombo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,94 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarstylecombo.js
+ * FCKToolbarPanelButton Class: Handles the Fonts combo selector.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarStyleCombo = function( tooltip, style )
+{
+ this.Command = FCKCommands.GetCommand( 'Style' ) ;
+ this.Label = this.GetLabel() ;
+ this.Tooltip = tooltip ? tooltip : this.Label ;
+ this.Style = style ? style : FCK_TOOLBARITEM_ICONTEXT ;
+}
+
+// Inherit from FCKToolbarSpecialCombo.
+FCKToolbarStyleCombo.prototype = new FCKToolbarSpecialCombo ;
+
+FCKToolbarStyleCombo.prototype.GetLabel = function()
+{
+ return FCKLang.Style ;
+}
+
+FCKToolbarStyleCombo.prototype.CreateItems = function( targetSpecialCombo )
+{
+ // Add the Editor Area CSS to the Styles panel so the style classes are previewed correctly.
+ FCKTools.AppendStyleSheet( targetSpecialCombo._Panel.Document, FCKConfig.EditorAreaCSS ) ;
+
+ // For some reason Gecko is blocking inside the "RefreshVisibleItems" function.
+ if ( ! FCKBrowserInfo.IsGecko )
+ targetSpecialCombo.OnBeforeClick = this.RefreshVisibleItems ;
+
+ // Add the styles to the special combo.
+ for ( var s in this.Command.Styles )
+ {
+ var oStyle = this.Command.Styles[s] ;
+ var oItem ;
+
+ if ( oStyle.IsObjectElement )
+ oItem = targetSpecialCombo.AddItem( s, s ) ;
+ else
+ oItem = targetSpecialCombo.AddItem( s, oStyle.GetOpenerTag() + s + oStyle.GetCloserTag() ) ;
+
+ oItem.Style = oStyle ;
+ }
+}
+
+FCKToolbarStyleCombo.prototype.RefreshActiveItems = function( targetSpecialCombo )
+{
+ // Clear the actual selection.
+ targetSpecialCombo.DeselectAll() ;
+
+ // Get the active styles.
+ var aStyles = this.Command.GetActiveStyles() ;
+
+ if ( aStyles.length > 0 )
+ {
+ // Select the active styles in the combo.
+ for ( var i = 0 ; i < aStyles.length ; i++ )
+ targetSpecialCombo.SelectItem( aStyles[i].Name ) ;
+
+ // Set the combo label to the first style in the collection.
+ targetSpecialCombo.SetLabelById( aStyles[0].Name ) ;
+ }
+ else
+ targetSpecialCombo.SetLabel('') ;
+}
+
+FCKToolbarStyleCombo.prototype.RefreshVisibleItems = function( targetSpecialCombo )
+{
+ if ( FCKSelection.GetType() == 'Control' )
+ var sTagName = FCKSelection.GetSelectedElement().tagName ;
+
+ for ( var i in targetSpecialCombo.Items )
+ {
+ var oItem = targetSpecialCombo.Items[i] ;
+ if ( ( sTagName && oItem.Style.Element == sTagName ) || ( ! sTagName && ! oItem.Style.IsObjectElement ) )
+ oItem.style.display = '' ;
+ else
+ oItem.style.display = 'none' ; // For some reason Gecko is blocking here.
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,71 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxml_gecko.js
+ * FCKXml Class: class to load and manipulate XML files.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKXml ;
+
+if ( !( FCKXml = NS.FCKXml ) )
+{
+ FCKXml = NS.FCKXml = function()
+ {}
+
+ FCKXml.prototype.LoadUrl = function( urlToCall )
+ {
+ var oFCKXml = this ;
+
+ var oXmlHttp = FCKTools.CreateXmlObject( 'XmlHttp' ) ;
+ oXmlHttp.open( "GET", urlToCall, false ) ;
+ oXmlHttp.send( null ) ;
+
+ if ( oXmlHttp.status == 200 || oXmlHttp.status == 304 )
+ this.DOMDocument = oXmlHttp.responseXML ;
+ else if ( oXmlHttp.status == 0 && oXmlHttp.readyState == 4 )
+ this.DOMDocument = oXmlHttp.responseXML ;
+ else
+ alert( 'Error loading "' + urlToCall + '"' ) ;
+ }
+
+ FCKXml.prototype.SelectNodes = function( xpath, contextNode )
+ {
+ var aNodeArray = new Array();
+
+ var xPathResult = this.DOMDocument.evaluate( xpath, contextNode ? contextNode : this.DOMDocument,
+ this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), XPathResult.ORDERED_NODE_ITERATOR_TYPE, null) ;
+ if ( xPathResult )
+ {
+ var oNode = xPathResult.iterateNext() ;
+ while( oNode )
+ {
+ aNodeArray[aNodeArray.length] = oNode ;
+ oNode = xPathResult.iterateNext();
+ }
+ }
+ return aNodeArray ;
+ }
+
+ FCKXml.prototype.SelectSingleNode = function( xpath, contextNode )
+ {
+ var xPathResult = this.DOMDocument.evaluate( xpath, contextNode ? contextNode : this.DOMDocument,
+ this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), 9, null);
+
+ if ( xPathResult && xPathResult.singleNodeValue )
+ return xPathResult.singleNodeValue ;
+ else
+ return null ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/classes/fckxml_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,83 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxml_ie.js
+ * FCKXml Class: class to load and manipulate XML files.
+ * (IE specific implementation)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKXml ;
+
+if ( !( FCKXml = NS.FCKXml ) )
+{
+ FCKXml = NS.FCKXml = function()
+ {
+ this.Error = false ;
+ }
+
+ FCKXml.prototype.LoadUrl = function( urlToCall )
+ {
+ this.Error = false ;
+
+ var oXmlHttp = FCKTools.CreateXmlObject( 'XmlHttp' ) ;
+
+ if ( !oXmlHttp )
+ {
+ this.Error = true ;
+ return ;
+ }
+
+ oXmlHttp.open( "GET", urlToCall, false ) ;
+
+ oXmlHttp.send( null ) ;
+
+ if ( oXmlHttp.status == 200 || oXmlHttp.status == 304 )
+ this.DOMDocument = oXmlHttp.responseXML ;
+ else if ( oXmlHttp.status == 0 && oXmlHttp.readyState == 4 )
+ {
+ this.DOMDocument = FCKTools.CreateXmlObject( 'DOMDocument' ) ;
+ this.DOMDocument.async = false ;
+ this.DOMDocument.resolveExternals = false ;
+ this.DOMDocument.loadXML( oXmlHttp.responseText ) ;
+ }
+ else
+ {
+ this.Error = true ;
+ alert( 'Error loading "' + urlToCall + '"' ) ;
+ }
+ }
+
+ FCKXml.prototype.SelectNodes = function( xpath, contextNode )
+ {
+ if ( this.Error )
+ return new Array() ;
+
+ if ( contextNode )
+ return contextNode.selectNodes( xpath ) ;
+ else
+ return this.DOMDocument.selectNodes( xpath ) ;
+ }
+
+ FCKXml.prototype.SelectSingleNode = function( xpath, contextNode )
+ {
+ if ( this.Error )
+ return ;
+
+ if ( contextNode )
+ return contextNode.selectSingleNode( xpath ) ;
+ else
+ return this.DOMDocument.selectSingleNode( xpath ) ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fck_othercommands.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fck_othercommands.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fck_othercommands.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,275 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_othercommands.js
+ * Definition of other commands that are not available internaly in the
+ * browser (see FCKNamedCommand).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// ### General Dialog Box Commands.
+var FCKDialogCommand = function( name, title, url, width, height, getStateFunction, getStateParam )
+{
+ this.Name = name ;
+ this.Title = title ;
+ this.Url = url ;
+ this.Width = width ;
+ this.Height = height ;
+
+ this.GetStateFunction = getStateFunction ;
+ this.GetStateParam = getStateParam ;
+}
+
+FCKDialogCommand.prototype.Execute = function()
+{
+ FCKDialog.OpenDialog( 'FCKDialog_' + this.Name , this.Title, this.Url, this.Width, this.Height ) ;
+}
+
+FCKDialogCommand.prototype.GetState = function()
+{
+ if ( this.GetStateFunction )
+ return this.GetStateFunction( this.GetStateParam ) ;
+ else
+ return FCK_TRISTATE_OFF ;
+}
+
+// Generic Undefined command (usually used when a command is under development).
+var FCKUndefinedCommand = function()
+{
+ this.Name = 'Undefined' ;
+}
+
+FCKUndefinedCommand.prototype.Execute = function()
+{
+ alert( FCKLang.NotImplemented ) ;
+}
+
+FCKUndefinedCommand.prototype.GetState = function()
+{
+ return FCK_TRISTATE_OFF ;
+}
+
+// ### FontName
+var FCKFontNameCommand = function()
+{
+ this.Name = 'FontName' ;
+}
+
+FCKFontNameCommand.prototype.Execute = function( fontName )
+{
+ if (fontName == null || fontName == "")
+ {
+ // TODO: Remove font name attribute.
+ }
+ else
+ FCK.ExecuteNamedCommand( 'FontName', fontName ) ;
+}
+
+FCKFontNameCommand.prototype.GetState = function()
+{
+ return FCK.GetNamedCommandValue( 'FontName' ) ;
+}
+
+// ### FontSize
+var FCKFontSizeCommand = function()
+{
+ this.Name = 'FontSize' ;
+}
+
+FCKFontSizeCommand.prototype.Execute = function( fontSize )
+{
+ if ( typeof( fontSize ) == 'string' ) fontSize = parseInt(fontSize) ;
+
+ if ( fontSize == null || fontSize == '' )
+ {
+ // TODO: Remove font size attribute (Now it works with size 3. Will it work forever?)
+ FCK.ExecuteNamedCommand( 'FontSize', 3 ) ;
+ }
+ else
+ FCK.ExecuteNamedCommand( 'FontSize', fontSize ) ;
+}
+
+FCKFontSizeCommand.prototype.GetState = function()
+{
+ return FCK.GetNamedCommandValue( 'FontSize' ) ;
+}
+
+// ### FormatBlock
+var FCKFormatBlockCommand = function()
+{
+ this.Name = 'FormatBlock' ;
+}
+
+FCKFormatBlockCommand.prototype.Execute = function( formatName )
+{
+ if ( formatName == null || formatName == '' )
+ FCK.ExecuteNamedCommand( 'FormatBlock', '<P>' ) ;
+ else
+ FCK.ExecuteNamedCommand( 'FormatBlock', '<' + formatName + '>' ) ;
+}
+
+FCKFormatBlockCommand.prototype.GetState = function()
+{
+ return FCK.GetNamedCommandValue( 'FormatBlock' ) ;
+}
+
+// ### Preview
+var FCKPreviewCommand = function()
+{
+ this.Name = 'Preview' ;
+}
+
+FCKPreviewCommand.prototype.Execute = function()
+{
+ FCK.Preview() ;
+}
+
+FCKPreviewCommand.prototype.GetState = function()
+{
+ return FCK_TRISTATE_OFF ;
+}
+
+// ### Save
+var FCKSaveCommand = function()
+{
+ this.Name = 'Save' ;
+}
+
+FCKSaveCommand.prototype.Execute = function()
+{
+ // Get the linked field form.
+ var oForm = FCK.LinkedField.form ;
+
+ if ( typeof( oForm.onsubmit ) == 'function' )
+ {
+ var bRet = oForm.onsubmit() ;
+ if ( bRet != null && bRet === false )
+ return ;
+ }
+
+ // Submit the form.
+ oForm.submit() ;
+}
+
+FCKSaveCommand.prototype.GetState = function()
+{
+ return FCK_TRISTATE_OFF ;
+}
+
+// ### NewPage
+var FCKNewPageCommand = function()
+{
+ this.Name = 'NewPage' ;
+}
+
+FCKNewPageCommand.prototype.Execute = function()
+{
+ FCKUndo.SaveUndoStep() ;
+ FCK.SetHTML( '' ) ;
+ FCKUndo.Typing = true ;
+// FCK.SetHTML( FCKBrowserInfo.IsGecko ? ' ' : '' ) ;
+// FCK.SetHTML( FCKBrowserInfo.IsGecko ? GECKO_BOGUS : '' ) ;
+}
+
+FCKNewPageCommand.prototype.GetState = function()
+{
+ return FCK_TRISTATE_OFF ;
+}
+
+// ### Source button
+var FCKSourceCommand = function()
+{
+ this.Name = 'Source' ;
+}
+
+FCKSourceCommand.prototype.Execute = function()
+{
+ if ( FCKBrowserInfo.IsGecko )
+ {
+ var iWidth = FCKConfig.ScreenWidth * 0.65 ;
+ var iHeight = FCKConfig.ScreenHeight * 0.65 ;
+ FCKDialog.OpenDialog( 'FCKDialog_Source', FCKLang.Source, 'dialog/fck_source.html', iWidth, iHeight, null, null, true ) ;
+ }
+ else
+ FCK.SwitchEditMode() ;
+}
+
+FCKSourceCommand.prototype.GetState = function()
+{
+ return ( FCK.EditMode == FCK_EDITMODE_WYSIWYG ? FCK_TRISTATE_OFF : FCK_TRISTATE_ON ) ;
+}
+
+// ### Undo
+var FCKUndoCommand = function()
+{
+ this.Name = 'Undo' ;
+}
+
+FCKUndoCommand.prototype.Execute = function()
+{
+ if ( FCKBrowserInfo.IsIE )
+ FCKUndo.Undo() ;
+ else
+ FCK.ExecuteNamedCommand( 'Undo' ) ;
+}
+
+FCKUndoCommand.prototype.GetState = function()
+{
+ if ( FCKBrowserInfo.IsIE )
+ return ( FCKUndo.CheckUndoState() ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ) ;
+ else
+ return FCK.GetNamedCommandState( 'Undo' ) ;
+}
+
+// ### Redo
+var FCKRedoCommand = function()
+{
+ this.Name = 'Redo' ;
+}
+
+FCKRedoCommand.prototype.Execute = function()
+{
+ if ( FCKBrowserInfo.IsIE )
+ FCKUndo.Redo() ;
+ else
+ FCK.ExecuteNamedCommand( 'Redo' ) ;
+}
+
+FCKRedoCommand.prototype.GetState = function()
+{
+ if ( FCKBrowserInfo.IsIE )
+ return ( FCKUndo.CheckRedoState() ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ) ;
+ else
+ return FCK.GetNamedCommandState( 'Redo' ) ;
+}
+
+// ### Page Break
+var FCKPageBreakCommand = function()
+{
+ this.Name = 'PageBreak' ;
+}
+
+FCKPageBreakCommand.prototype.Execute = function()
+{
+ var oCenter = FCK.EditorDocument.createElement( 'CENTER' ) ;
+ oCenter.style.pageBreakAfter = 'always' ;
+
+ var oFakeImage = FCKDocumentProcessors_CreateFakeImage( 'FCK__PageBreak', oCenter ) ;
+ oFakeImage = FCK.InsertElement( oFakeImage ) ;
+}
+
+FCKPageBreakCommand.prototype.GetState = function()
+{
+ return 0 ; // FCK_TRISTATE_OFF
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcknamedcommand.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcknamedcommand.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcknamedcommand.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,33 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcknamedcommand.js
+ * FCKNamedCommand Class: represents an internal browser command.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKNamedCommand = function( commandName )
+{
+ this.Name = commandName ;
+}
+
+FCKNamedCommand.prototype.Execute = function()
+{
+ FCK.ExecuteNamedCommand( this.Name ) ;
+}
+
+FCKNamedCommand.prototype.GetState = function()
+{
+ return FCK.GetNamedCommandState( this.Name ) ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpasteplaintextcommand.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,34 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckpasteplaintextcommand.js
+ * FCKPastePlainTextCommand Class: represents the
+ * "Paste as Plain Text" command.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKPastePlainTextCommand = function()
+{
+ this.Name = 'PasteText' ;
+}
+
+FCKPastePlainTextCommand.prototype.Execute = function()
+{
+ FCK.PasteAsPlainText() ;
+}
+
+FCKPastePlainTextCommand.prototype.GetState = function()
+{
+ return FCK.GetNamedCommandState( 'Paste' ) ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckpastewordcommand.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,36 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckpastewordcommand.js
+ * FCKPasteWordCommand Class: represents the "Paste from Word" command.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKPasteWordCommand = function()
+{
+ this.Name = 'PasteWord' ;
+}
+
+FCKPasteWordCommand.prototype.Execute = function()
+{
+ FCK.PasteFromWord() ;
+}
+
+FCKPasteWordCommand.prototype.GetState = function()
+{
+ if ( FCKConfig.ForcePasteAsPlainText )
+ return FCK_TRISTATE_DISABLED ;
+ else
+ return FCK.GetNamedCommandState( 'Paste' ) ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,15 @@
+var FCKSpellCheckCommand = function()
+{
+ this.Name = 'SpellCheck' ;
+ this.IsEnabled = ( FCKConfig.SpellChecker == 'SpellerPages' ) ;
+}
+
+FCKSpellCheckCommand.prototype.Execute = function()
+{
+ FCKDialog.OpenDialog( 'FCKDialog_SpellCheck', 'Spell Check', 'dialog/fck_spellerpages.html', 440, 480 ) ;
+}
+
+FCKSpellCheckCommand.prototype.GetState = function()
+{
+ return this.IsEnabled ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckspellcheckcommand_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,43 @@
+var FCKSpellCheckCommand = function()
+{
+ this.Name = 'SpellCheck' ;
+ this.IsEnabled = ( FCKConfig.SpellChecker == 'ieSpell' || FCKConfig.SpellChecker == 'SpellerPages' ) ;
+}
+
+FCKSpellCheckCommand.prototype.Execute = function()
+{
+ switch ( FCKConfig.SpellChecker )
+ {
+ case 'ieSpell' :
+ this._RunIeSpell() ;
+ break ;
+
+ case 'SpellerPages' :
+ FCKDialog.OpenDialog( 'FCKDialog_SpellCheck', 'Spell Check', 'dialog/fck_spellerpages.html', 440, 480 ) ;
+ break ;
+ }
+}
+
+FCKSpellCheckCommand.prototype._RunIeSpell = function()
+{
+ try
+ {
+ var oIeSpell = new ActiveXObject( "ieSpell.ieSpellExtension" ) ;
+ oIeSpell.CheckAllLinkedDocuments( FCK.EditorDocument ) ;
+ }
+ catch( e )
+ {
+ if( e.number == -2146827859 )
+ {
+ if ( confirm( FCKLang.IeSpellDownload ) )
+ window.open( FCKConfig.IeSpellDownloadUrl , 'IeSpellDownload' ) ;
+ }
+ else
+ alert( 'Error Loading ieSpell: ' + e.message + ' (' + e.number + ')' ) ;
+ }
+}
+
+FCKSpellCheckCommand.prototype.GetState = function()
+{
+ return this.IsEnabled ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckstylecommand.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckstylecommand.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fckstylecommand.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,92 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckstylecommand.js
+ * FCKStyleCommand Class: represents the "Style" command.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKStyleCommand = function()
+{
+ this.Name = 'Style' ;
+
+ // Load the Styles defined in the XML file.
+ this.StylesLoader = new FCKStylesLoader() ;
+ this.StylesLoader.Load( FCKConfig.StylesXmlPath ) ;
+ this.Styles = this.StylesLoader.Styles ;
+}
+
+FCKStyleCommand.prototype.Execute = function( styleName, styleComboItem )
+{
+ FCKUndo.SaveUndoStep() ;
+
+ if ( styleComboItem.Selected )
+ styleComboItem.Style.RemoveFromSelection() ;
+ else
+ styleComboItem.Style.ApplyToSelection() ;
+
+ FCKUndo.SaveUndoStep() ;
+
+ FCK.Focus() ;
+
+ FCK.Events.FireEvent( "OnSelectionChange" ) ;
+}
+
+FCKStyleCommand.prototype.GetState = function()
+{
+ var oSelection = FCK.EditorDocument.selection ;
+
+ if ( FCKSelection.GetType() == 'Control' )
+ {
+ var e = FCKSelection.GetSelectedElement() ;
+ if ( e )
+ return this.StylesLoader.StyleGroups[ e.tagName ] ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ;
+ }
+
+ return FCK_TRISTATE_OFF ;
+}
+
+FCKStyleCommand.prototype.GetActiveStyles = function()
+{
+ var aActiveStyles = new Array() ;
+
+ if ( FCKSelection.GetType() == 'Control' )
+ this._CheckStyle( FCKSelection.GetSelectedElement(), aActiveStyles, false ) ;
+ else
+ this._CheckStyle( FCKSelection.GetParentElement(), aActiveStyles, true ) ;
+
+ return aActiveStyles ;
+}
+
+FCKStyleCommand.prototype._CheckStyle = function( element, targetArray, checkParent )
+{
+ if ( ! element )
+ return ;
+
+ if ( element.nodeType == 1 )
+ {
+ var aStyleGroup = this.StylesLoader.StyleGroups[ element.tagName ] ;
+ if ( aStyleGroup )
+ {
+ for ( var i = 0 ; i < aStyleGroup.length ; i++ )
+ {
+ if ( aStyleGroup[i].IsEqual( element ) )
+ targetArray[ targetArray.length ] = aStyleGroup[i] ;
+ }
+ }
+ }
+
+ if ( checkParent )
+ this._CheckStyle( element.parentNode, targetArray, checkParent ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktablecommand.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktablecommand.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktablecommand.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,64 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktablecommand.js
+ * FCKPastePlainTextCommand Class: represents the
+ * "Paste as Plain Text" command.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKTableCommand = function( command )
+{
+ this.Name = command ;
+}
+
+FCKTableCommand.prototype.Execute = function()
+{
+ FCKUndo.SaveUndoStep() ;
+
+ switch ( this.Name )
+ {
+ case 'TableInsertRow' :
+ FCKTableHandler.InsertRow() ;
+ break ;
+ case 'TableDeleteRows' :
+ FCKTableHandler.DeleteRows() ;
+ break ;
+ case 'TableInsertColumn' :
+ FCKTableHandler.InsertColumn() ;
+ break ;
+ case 'TableDeleteColumns' :
+ FCKTableHandler.DeleteColumns() ;
+ break ;
+ case 'TableInsertCell' :
+ FCKTableHandler.InsertCell() ;
+ break ;
+ case 'TableDeleteCells' :
+ FCKTableHandler.DeleteCells() ;
+ break ;
+ case 'TableMergeCells' :
+ FCKTableHandler.MergeCells() ;
+ break ;
+ case 'TableSplitCell' :
+ FCKTableHandler.SplitCell() ;
+ break ;
+ default :
+ alert( FCKLang.UnknownCommand.replace( /%1/g, this.Name ) ) ;
+ }
+}
+
+FCKTableCommand.prototype.GetState = function()
+{
+ return FCK_TRISTATE_OFF ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/commandclasses/fcktextcolorcommand.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,177 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktextcolorcommand.js
+ * FCKTextColorCommand Class: represents the text color comand. It shows the
+ * color selection panel.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// FCKTextColorCommand Contructor
+// type: can be 'ForeColor' or 'BackColor'.
+var FCKTextColorCommand = function( type )
+{
+ this.Name = type == 'ForeColor' ? 'TextColor' : 'BGColor' ;
+ this.Type = type ;
+
+ /* BEGIN ###
+ The panel should be created in the "Execute" method for best
+ memory use, but it not works in Gecko in that way.
+ */
+
+ this._Panel = new FCKPanel() ;
+ this._Panel.StyleSheet = FCKConfig.SkinPath + 'fck_contextmenu.css' ;
+ this._Panel.Create() ;
+
+ this._CreatePanelBody( this._Panel.Document, this._Panel.PanelDiv ) ;
+
+ // END ###
+}
+
+FCKTextColorCommand.prototype.Execute = function( panelX, panelY, relElement )
+{
+ /*
+ BEGIN ###
+ This is the right code to create the panel, but it is not
+ working well with Gecko, so it has been moved to the
+ class contructor.
+
+ // Create the Color Panel if needed.
+ if ( ! this._Panel )
+ {
+ this._Panel = new FCKPanel() ;
+ this._Panel.StyleSheet = FCKConfig.SkinPath + 'fck_contextmenu.css' ;
+ this._Panel.Create() ;
+
+ this._CreatePanelBody( this._Panel.Document, this._Panel.PanelDiv ) ;
+ }
+ END ###
+ */
+
+ // We must "cache" the actual panel type to be used in the SetColor method.
+ FCK._ActiveColorPanelType = this.Type ;
+
+ // Show the Color Panel at the desired position.
+ this._Panel.Show( panelX, panelY, relElement ) ;
+}
+
+FCKTextColorCommand.prototype.SetColor = function( color )
+{
+ if ( FCK._ActiveColorPanelType == 'ForeColor' )
+ FCK.ExecuteNamedCommand( 'ForeColor', color ) ;
+ else if ( FCKBrowserInfo.IsGecko )
+ FCK.ExecuteNamedCommand( 'hilitecolor', color ) ;
+ else
+ FCK.ExecuteNamedCommand( 'BackColor', color ) ;
+
+ // Delete the "cached" active panel type.
+ delete FCK._ActiveColorPanelType ;
+}
+
+FCKTextColorCommand.prototype.GetState = function()
+{
+ return FCK_TRISTATE_OFF ;
+}
+
+function FCKTextColorCommand_OnMouseOver() { this.className='ColorSelected' ; }
+
+function FCKTextColorCommand_OnMouseOut() { this.className='ColorDeselected' ; }
+
+function FCKTextColorCommand_OnClick()
+{
+ this.className = 'ColorDeselected' ;
+ this.Command.SetColor( '#' + this.Color ) ;
+ this.Command._Panel.Hide() ;
+}
+
+function FCKTextColorCommand_AutoOnClick()
+{
+ this.className = 'ColorDeselected' ;
+ this.Command.SetColor( '' ) ;
+ this.Command._Panel.Hide() ;
+}
+
+function FCKTextColorCommand_MoreOnClick()
+{
+ this.className = 'ColorDeselected' ;
+ this.Command._Panel.Hide() ;
+ FCKDialog.OpenDialog( 'FCKDialog_Color', FCKLang.DlgColorTitle, 'dialog/fck_colorselector.html', 400, 330, this.Command.SetColor ) ;
+}
+
+FCKTextColorCommand.prototype._CreatePanelBody = function( targetDocument, targetDiv )
+{
+ function CreateSelectionDiv()
+ {
+ var oDiv = targetDocument.createElement( "DIV" ) ;
+ oDiv.className = 'ColorDeselected' ;
+ oDiv.onmouseover = FCKTextColorCommand_OnMouseOver ;
+ oDiv.onmouseout = FCKTextColorCommand_OnMouseOut ;
+
+ return oDiv ;
+ }
+
+ // Create the Table that will hold all colors.
+ var oTable = targetDiv.appendChild( targetDocument.createElement( "TABLE" ) ) ;
+ oTable.style.tableLayout = 'fixed' ;
+ oTable.cellPadding = 0 ;
+ oTable.cellSpacing = 0 ;
+ oTable.border = 0 ;
+ oTable.width = 150 ;
+
+ var oCell = oTable.insertRow(-1).insertCell(-1) ;
+ oCell.colSpan = 8 ;
+
+ // Create the Button for the "Automatic" color selection.
+ var oDiv = oCell.appendChild( CreateSelectionDiv() ) ;
+ oDiv.innerHTML =
+ '<table cellspacing="0" cellpadding="0" width="100%" border="0">\
+ <tr>\
+ <td><div class="ColorBoxBorder"><div class="ColorBox" style="background-color: #000000"></div></div></td>\
+ <td nowrap width="100%" align="center" unselectable="on">' + FCKLang.ColorAutomatic + '</td>\
+ </tr>\
+ </table>' ;
+
+ oDiv.Command = this ;
+ oDiv.onclick = FCKTextColorCommand_AutoOnClick ;
+
+ // Create an array of colors based on the configuration file.
+ var aColors = FCKConfig.FontColors.toString().split(',') ;
+
+ // Create the colors table based on the array.
+ var iCounter = 0 ;
+ while ( iCounter < aColors.length )
+ {
+ var oRow = oTable.insertRow(-1) ;
+
+ for ( var i = 0 ; i < 8 && iCounter < aColors.length ; i++, iCounter++ )
+ {
+ oDiv = oRow.insertCell(-1).appendChild( CreateSelectionDiv() ) ;
+ oDiv.Color = aColors[iCounter] ;
+ oDiv.innerHTML = '<div class="ColorBoxBorder"><div class="ColorBox" style="background-color: #' + aColors[iCounter] + '"></div></div>' ;
+
+ oDiv.Command = this ;
+ oDiv.onclick = FCKTextColorCommand_OnClick ;
+ }
+ }
+
+ // Create the Row and the Cell for the "More Colors..." button.
+ oCell = oTable.insertRow(-1).insertCell(-1) ;
+ oCell.colSpan = 8 ;
+
+ oDiv = oCell.appendChild( CreateSelectionDiv() ) ;
+ oDiv.innerHTML = '<table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td nowrap align="center">' + FCKLang.ColorMoreColors + '</td></tr></table>' ;
+
+ oDiv.Command = this ;
+ oDiv.onclick = FCKTextColorCommand_MoreOnClick ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fck_constants.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fck_constants.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fck_constants.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,41 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_constants.js
+ * Defines some constants used by the editor. These constants are also
+ * globally available in the page where the editor is placed.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Editor Instance Status.
+var FCK_STATUS_NOTLOADED = window.parent.FCK_STATUS_NOTLOADED = 0 ;
+var FCK_STATUS_ACTIVE = window.parent.FCK_STATUS_ACTIVE = 1 ;
+var FCK_STATUS_COMPLETE = window.parent.FCK_STATUS_COMPLETE = 2 ;
+
+// Tristate Operations.
+var FCK_TRISTATE_OFF = window.parent.FCK_TRISTATE_OFF = 0 ;
+var FCK_TRISTATE_ON = window.parent.FCK_TRISTATE_ON = 1 ;
+var FCK_TRISTATE_DISABLED = window.parent.FCK_TRISTATE_DISABLED = -1 ;
+
+// For unknown values.
+var FCK_UNKNOWN = window.parent.FCK_UNKNOWN = -1000 ;
+
+// Toolbar Items Style.
+var FCK_TOOLBARITEM_ONLYICON = window.parent.FCK_TOOLBARITEM_ONLYICON = 0 ;
+var FCK_TOOLBARITEM_ONLYTEXT = window.parent.FCK_TOOLBARITEM_ONLYTEXT = 1 ;
+var FCK_TOOLBARITEM_ICONTEXT = window.parent.FCK_TOOLBARITEM_ICONTEXT = 2 ;
+
+// Edit Mode
+var FCK_EDITMODE_WYSIWYG = window.parent.FCK_EDITMODE_WYSIWYG = 0 ;
+var FCK_EDITMODE_SOURCE = window.parent.FCK_EDITMODE_SOURCE = 1 ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fckeditorapi.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fckeditorapi.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/globals/fckeditorapi.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,45 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckeditorapi.js
+ * Create the FCKeditorAPI object that is available as a global object in
+ * the page where the editor is placed in.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKeditorAPI ;
+
+function FCKeditorAPI_GetInstance( instanceName )
+{
+ return this.__Instances[ instanceName ] ;
+}
+
+if ( !window.parent.FCKeditorAPI )
+{
+ // Make the FCKeditorAPI object available in the parent window.
+ FCKeditorAPI = window.parent.FCKeditorAPI = new Object() ;
+ FCKeditorAPI.__Instances = new Object() ;
+
+ // Set the current version.
+ FCKeditorAPI.Version = '2.1.1' ;
+
+ // Function used to get a instance of an existing editor present in the
+ // page.
+ FCKeditorAPI.GetInstance = FCKeditorAPI_GetInstance ;
+}
+else
+ FCKeditorAPI = window.parent.FCKeditorAPI ;
+
+// Add the current instance to the FCKeditorAPI's instances collection.
+FCKeditorAPI.__Instances[ FCK.Name ] = FCK ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,66 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck.js
+ * Creation and initialization of the "FCK" object. This is the main object
+ * that represents an editor instance.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// FCK represents the active editor instance
+var FCK = new Object() ;
+FCK.Name = FCKURLParams[ 'InstanceName' ] ;
+
+FCK.Status = FCK_STATUS_NOTLOADED ;
+FCK.EditMode = FCK_EDITMODE_WYSIWYG ;
+
+// There is a bug on IE... getElementById returns any META tag that has the
+// name set to the ID you are looking for. So the best way in to get the array
+// by names and look for the correct one.
+// As ASP.Net generates a ID that is different from the Name, we must also
+// look for the field based on the ID.
+
+var aElements = window.parent.document.getElementsByName( FCK.Name ) ;
+aElements[ aElements.length ] = window.parent.document.getElementById( FCK.Name ) ;
+var i = 0;
+while ( ( FCK.LinkedField = aElements[i++] ) )
+{
+ if ( FCK.LinkedField.tagName == 'INPUT' || FCK.LinkedField.tagName == 'TEXTAREA' )
+ break ;
+}
+
+var FCKTempBin = new Object() ;
+FCKTempBin.Elements = new Array() ;
+
+FCKTempBin.AddElement = function( element )
+{
+ var iIndex = FCKTempBin.Elements.length ;
+ FCKTempBin.Elements[ iIndex ] = element ;
+ return iIndex ;
+}
+
+FCKTempBin.RemoveElement = function( index )
+{
+ var e = FCKTempBin.Elements[ index ] ;
+ FCKTempBin.Elements[ index ] = null ;
+ return e ;
+}
+
+FCKTempBin.Reset = function()
+{
+ var i = 0 ;
+ while ( i < FCKTempBin.Elements.length )
+ FCKTempBin.Elements[ i++ ] == null ;
+ FCKTempBin.Elements.length = 0 ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,409 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_1.js
+ * This is the first part of the "FCK" object creation. This is the main
+ * object that represents an editor instance.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCK.Events = new FCKEvents( FCK ) ;
+FCK.Toolbar = null ;
+
+FCK.TempBaseTag = FCKConfig.BaseHref.length > 0 ? '<base href="' + FCKConfig.BaseHref + '" _fcktemp="true"></base>' : '' ;
+
+FCK.StartEditor = function()
+{
+ // Get the editor's window and document (DOM)
+ this.EditorWindow = window.frames[ 'eEditorArea' ] ;
+ this.EditorDocument = this.EditorWindow.document ;
+
+ // TODO: Wait stable version and remove the following commented lines.
+ // The Base Path of the editor is saved to rebuild relative URL (IE issue).
+// this.BaseUrl = this.EditorDocument.location.protocol + '//' + this.EditorDocument.location.host ;
+
+// if ( FCKBrowserInfo.IsGecko )
+// this.MakeEditable() ;
+
+ // Set the editor's startup contents
+ this.SetHTML( FCKTools.GetLinkedFieldValue() ) ;
+
+ // Attach the editor to the form onsubmit event
+ FCKTools.AttachToLinkedFieldFormSubmit( this.UpdateLinkedField ) ;
+
+ FCKUndo.SaveUndoStep() ;
+
+ this.SetStatus( FCK_STATUS_ACTIVE ) ;
+}
+
+function Window_OnFocus()
+{
+ FCK.Focus() ;
+}
+
+FCK.SetStatus = function( newStatus )
+{
+ this.Status = newStatus ;
+
+ if ( newStatus == FCK_STATUS_ACTIVE )
+ {
+ // Force the focus in the window to go to the editor.
+ window.onfocus = window.document.body.onfocus = Window_OnFocus ;
+
+ // Force the focus in the editor.
+ if ( FCKConfig.StartupFocus )
+ FCK.Focus() ;
+
+ // @Packager.Compactor.Remove.Start
+ var sBrowserSuffix = FCKBrowserInfo.IsIE ? "ie" : "gecko" ;
+
+ FCKScriptLoader.AddScript( '_source/internals/fck_2.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fck_2_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckselection.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckselection_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckpanel_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fcktablehandler.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fcktablehandler_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckxml_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckstyledef.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckstyledef_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckstylesloader.js' ) ;
+
+ FCKScriptLoader.AddScript( '_source/commandclasses/fcknamedcommand.js' ) ;
+ FCKScriptLoader.AddScript( '_source/commandclasses/fck_othercommands.js' ) ;
+ FCKScriptLoader.AddScript( '_source/commandclasses/fckspellcheckcommand_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/commandclasses/fcktextcolorcommand.js' ) ;
+ FCKScriptLoader.AddScript( '_source/commandclasses/fckpasteplaintextcommand.js' ) ;
+ FCKScriptLoader.AddScript( '_source/commandclasses/fckpastewordcommand.js' ) ;
+ FCKScriptLoader.AddScript( '_source/commandclasses/fcktablecommand.js' ) ;
+ FCKScriptLoader.AddScript( '_source/commandclasses/fckstylecommand.js' ) ;
+
+ FCKScriptLoader.AddScript( '_source/internals/fckcommands.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarbutton.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckspecialcombo.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarspecialcombo.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarfontscombo.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarfontsizecombo.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarfontformatcombo.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarstylecombo.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarpanelbutton.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fcktoolbaritems.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbar.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fcktoolbarbreak_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fcktoolbarset.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckdialog.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckdialog_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckcontextmenuitem.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckcontextmenuseparator.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckcontextmenugroup.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckcontextmenu.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckcontextmenu_' + sBrowserSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckplugin.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckplugins.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fck_last.js' ) ;
+ // @Packager.Compactor.Remove.End
+
+ /* @Packager.Compactor.RemoveLine
+
+ if ( FCKBrowserInfo.IsIE )
+ FCKScriptLoader.AddScript( 'js/fckeditorcode_ie_2.js' ) ;
+ else
+ FCKScriptLoader.AddScript( 'js/fckeditorcode_gecko_2.js' ) ;
+
+ @Packager.Compactor.RemoveLine */
+ }
+
+ this.Events.FireEvent( 'OnStatusChange', newStatus ) ;
+}
+
+FCK.GetHTML = function( format )
+{
+ var sHTML ;
+
+ if ( FCK.EditMode == FCK_EDITMODE_WYSIWYG )
+ {
+ // TODO: Wait stable version and remove the following commented lines.
+// if ( FCKBrowserInfo.IsIE )
+// FCK.CheckRelativeLinks() ;
+
+ if ( FCKBrowserInfo.IsIE )
+ sHTML = this.EditorDocument.body.innerHTML.replace( FCKRegexLib.ToReplace, '$1' ) ;
+ else
+ sHTML = this.EditorDocument.body.innerHTML ;
+ }
+ else
+ sHTML = document.getElementById('eSourceField').value ;
+
+ if ( format )
+ return FCKCodeFormatter.Format( sHTML ) ;
+ else
+ return sHTML ;
+}
+
+FCK.GetXHTML = function( format )
+{
+ var bSource = ( FCK.EditMode == FCK_EDITMODE_SOURCE ) ;
+
+ if ( bSource )
+ this.SwitchEditMode() ;
+
+ // TODO: Wait stable version and remove the following commented lines.
+// if ( FCKBrowserInfo.IsIE )
+// FCK.CheckRelativeLinks() ;
+
+ var sXHTML ;
+
+ if ( FCKConfig.FullPage )
+ sXHTML = FCKXHtml.GetXHTML( this.EditorDocument.getElementsByTagName( 'html' )[0], true, format ) ;
+ else
+ {
+ if ( FCKConfig.IgnoreEmptyParagraphValue && this.EditorDocument.body.innerHTML == '<P> </P>' )
+ sXHTML = '' ;
+ else
+ sXHTML = FCKXHtml.GetXHTML( this.EditorDocument.body, false, format ) ;
+ }
+
+ if ( bSource )
+ this.SwitchEditMode() ;
+
+ if ( FCKBrowserInfo.IsIE )
+ sXHTML = sXHTML.replace( FCKRegexLib.ToReplace, '$1' ) ;
+
+ if ( FCK.DocTypeDeclaration && FCK.DocTypeDeclaration.length > 0 )
+ sXHTML = FCK.DocTypeDeclaration + '\n' + sXHTML ;
+
+ if ( FCK.XmlDeclaration && FCK.XmlDeclaration.length > 0 )
+ sXHTML = FCK.XmlDeclaration + '\n' + sXHTML ;
+
+ return FCKConfig.ProtectedSource.Revert( sXHTML ) ;
+}
+
+FCK.UpdateLinkedField = function()
+{
+ if ( FCKConfig.EnableXHTML )
+ FCK.LinkedField.value = FCK.GetXHTML( FCKConfig.FormatOutput ) ;
+ else
+ FCK.LinkedField.value = FCK.GetHTML( FCKConfig.FormatOutput ) ;
+
+ FCK.Events.FireEvent( 'OnAfterLinkedFieldUpdate' ) ;
+}
+
+FCK.ShowContextMenu = function( x, y )
+{
+ if ( this.Status != FCK_STATUS_COMPLETE )
+ return ;
+
+ FCKContextMenu.Show( x, y ) ;
+ this.Events.FireEvent( "OnContextMenu" ) ;
+}
+
+FCK.RegisteredDoubleClickHandlers = new Object() ;
+
+FCK.OnDoubleClick = function( element )
+{
+ var oHandler = FCK.RegisteredDoubleClickHandlers[ element.tagName ] ;
+ if ( oHandler )
+ oHandler( element ) ;
+}
+
+// Register objects that can handle double click operations.
+FCK.RegisterDoubleClickHandler = function( handlerFunction, tag )
+{
+ FCK.RegisteredDoubleClickHandlers[ tag.toUpperCase() ] = handlerFunction ;
+}
+
+FCK.OnAfterSetHTML = function()
+{
+ var oProcessor, i = 0 ;
+ while( ( oProcessor = FCKDocumentProcessors[i++] ) )
+ oProcessor.ProcessDocument( FCK.EditorDocument ) ;
+
+ this.Events.FireEvent( 'OnAfterSetHTML' ) ;
+}
+
+// Advanced document processors.
+
+var FCKDocumentProcessors = new Array() ;
+
+var FCKDocumentProcessors_CreateFakeImage = function( fakeClass, realElement )
+{
+ var oImg = FCK.EditorDocument.createElement( 'IMG' ) ;
+ oImg.className = fakeClass ;
+ oImg.src = FCKConfig.FullBasePath + 'images/spacer.gif' ;
+ oImg.setAttribute( '_fckfakelement', 'true', 0 ) ;
+ oImg.setAttribute( '_fckrealelement', FCKTempBin.AddElement( realElement ), 0 ) ;
+ return oImg ;
+}
+
+// Link Anchors
+var FCKAnchorsProcessor = new Object() ;
+FCKAnchorsProcessor.ProcessDocument = function( document )
+{
+ var aLinks = document.getElementsByTagName( 'A' ) ;
+
+ var oLink ;
+ var i = aLinks.length - 1 ;
+ while ( i >= 0 && ( oLink = aLinks[i--] ) )
+ {
+ // If it is anchor.
+ if ( oLink.name.length > 0 && ( !oLink.getAttribute('href') || oLink.getAttribute('href').length == 0 ) )
+ {
+ var oImg = FCKDocumentProcessors_CreateFakeImage( 'FCK__Anchor', oLink.cloneNode(true) ) ;
+ oImg.setAttribute( '_fckanchor', 'true', 0 ) ;
+
+ oLink.parentNode.insertBefore( oImg, oLink ) ;
+ oLink.parentNode.removeChild( oLink ) ;
+ }
+ }
+}
+
+FCKDocumentProcessors.addItem( FCKAnchorsProcessor ) ;
+
+// Page Breaks
+var FCKPageBreaksProcessor = new Object() ;
+FCKPageBreaksProcessor.ProcessDocument = function( document )
+{
+ var aCenters = document.getElementsByTagName( 'CENTER' ) ;
+
+ var oCenter ;
+ var i = aCenters.length - 1 ;
+ while ( i >= 0 && ( oCenter = aCenters[i--] ) )
+ {
+ if ( oCenter.style.pageBreakAfter == 'always' && oCenter.innerHTML.trim().length == 0 )
+ {
+ var oFakeImage = FCKDocumentProcessors_CreateFakeImage( 'FCK__PageBreak', oCenter.cloneNode(true) ) ;
+
+ oCenter.parentNode.insertBefore( oFakeImage, oCenter ) ;
+ oCenter.parentNode.removeChild( oCenter ) ;
+ }
+ }
+}
+
+FCKDocumentProcessors.addItem( FCKPageBreaksProcessor ) ;
+
+// Flash Embeds.
+var FCKFlashProcessor = new Object() ;
+FCKFlashProcessor.ProcessDocument = function( document )
+{
+ /*
+ Sample code:
+ This is some <embed src="/UserFiles/Flash/Yellow_Runners.swf"></embed><strong>sample text</strong>. You are <a name="fred"></a> using <a href="http://www.fckeditor.net/">FCKeditor</a>.
+ */
+
+ var aEmbeds = document.getElementsByTagName( 'EMBED' ) ;
+
+ var oEmbed ;
+ var i = aEmbeds.length - 1 ;
+ while ( i >= 0 && ( oEmbed = aEmbeds[i--] ) )
+ {
+ if ( oEmbed.src.endsWith( '.swf', true ) )
+ {
+ var oImg = FCKDocumentProcessors_CreateFakeImage( 'FCK__Flash', oEmbed.cloneNode(true) ) ;
+ oImg.setAttribute( '_fckflash', 'true', 0 ) ;
+
+ FCKFlashProcessor.RefreshView( oImg, oEmbed ) ;
+
+ oEmbed.parentNode.insertBefore( oImg, oEmbed ) ;
+ oEmbed.parentNode.removeChild( oEmbed ) ;
+
+// oEmbed.setAttribute( '_fckdelete', 'true', 0) ;
+// oEmbed.style.display = 'none' ;
+// oEmbed.hidden = true ;
+ }
+ }
+}
+
+FCKFlashProcessor.RefreshView = function( placholderImage, originalEmbed )
+{
+ if ( originalEmbed.width > 0 )
+ placholderImage.style.width = FCKTools.ConvertHtmlSizeToStyle( originalEmbed.width ) ;
+
+ if ( originalEmbed.height > 0 )
+ placholderImage.style.height = FCKTools.ConvertHtmlSizeToStyle( originalEmbed.height ) ;
+}
+
+FCKDocumentProcessors.addItem( FCKFlashProcessor ) ;
+
+FCK.GetRealElement = function( fakeElement )
+{
+ var e = FCKTempBin.Elements[ fakeElement.getAttribute('_fckrealelement') ] ;
+
+ if ( fakeElement.getAttribute('_fckflash') )
+ {
+ if ( fakeElement.style.width.length > 0 )
+ e.width = FCKTools.ConvertStyleSizeToHtml( fakeElement.style.width ) ;
+
+ if ( fakeElement.style.height.length > 0 )
+ e.height = FCKTools.ConvertStyleSizeToHtml( fakeElement.style.height ) ;
+ }
+
+ return e ;
+}
+
+// START iCM MODIFICATIONS
+/*
+var FCKTablesProcessor = new Object() ;
+FCKTablesProcessor.ProcessDocument = function( document )
+{
+ FCKTablesProcessor.CheckTablesNesting( document ) ;
+}
+
+// Ensure that tables are not incorrectly nested within P, H1, H2, etc tags
+FCKTablesProcessor.CheckTablesNesting = function( document )
+{
+ var aTables = document.getElementsByTagName( "TABLE" ) ;
+ var oParentNode ;
+
+ for ( var i=0; i<aTables.length; i++ )
+ {
+ FCKTablesProcessor.CheckTableNesting( aTables[i] ) ;
+ }
+}
+
+// Corrects nesting of the supplied table as necessary.
+// Also called by fck_table.html to check that a newly inserted table is correctly nested.
+FCKTablesProcessor.CheckTableNesting = function( oTableNode )
+{
+ var oParentBlockNode = FCKTools.GetParentBlockNode( oTableNode.parentNode ) ;
+
+ if ( oParentBlockNode && !FCKRegexLib.TableBlockElements.test( oParentBlockNode.nodeName ) )
+ {
+ // Create a new tag which holds the content of the child nodes located before the table
+ var oNode1 = FCK.EditorDocument.createElement( oParentBlockNode.tagName ) ;
+ var oFragment1 = FCKTools.GetDocumentFragment( oParentBlockNode, oParentBlockNode.firstChild, oTableNode, true, false, true ) ;
+ oNode1.appendChild( oFragment1 ) ;
+ FCKTools.SetElementAttributes( oNode1, oParentBlockNode.attributes ) ; // Transfer across any class attributes, etc
+
+ // Create a new tag which holds the content of the child nodes located after the table
+ var oNode2 = FCK.EditorDocument.createElement( oParentBlockNode.tagName );
+ var oFragment2 = FCKTools.GetDocumentFragment( oParentBlockNode, oTableNode, oParentBlockNode.lastChild, false, true, true ) ;
+ oNode2.appendChild( oFragment2 ) ;
+ FCKTools.SetElementAttributes( oNode2, oParentBlockNode.attributes ) ; // Transfer across any class attributes, etc
+
+ // Create a document fragment that contains the two new elements with the table element inbetween
+ var oNewNode = FCK.EditorDocument.createDocumentFragment() ;
+ if ( !FCKTools.NodeIsEmpty( oNode1 ) )
+ oNewNode.appendChild( oNode1 ) ;
+ oNewNode.appendChild( oTableNode ) ;
+ if ( !FCKTools.NodeIsEmpty( oNode2 ) )
+ oNewNode.appendChild( oNode2 ) ;
+
+ // Replace the existing parent node with the nodes in the fragment
+ oParentBlockNode.parentNode.replaceChild( oNewNode, oParentBlockNode ) ;
+ }
+}
+
+FCKDocumentProcessors.addItem( FCKTablesProcessor ) ;
+*/
+// END iCM MODIFICATIONS
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,273 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_1_gecko.js
+ * This is the first part of the "FCK" object creation. This is the main
+ * object that represents an editor instance.
+ * (Gecko specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCK.Description = "FCKeditor for Gecko Browsers" ;
+
+FCK.InitializeBehaviors = function()
+{
+ // Enable table borders visibility.
+ if ( FCKConfig.ShowBorders )
+ {
+ var oStyle = FCKTools.AppendStyleSheet( this.EditorDocument, FCKConfig.FullBasePath + 'css/fck_showtableborders_gecko.css' ) ;
+ oStyle.setAttribute( '_fcktemp', 'true' ) ;
+ }
+
+ // Disable Right-Click
+ var oOnContextMenu = function( e )
+ {
+ e.preventDefault() ;
+ FCK.ShowContextMenu( e.clientX, e.clientY ) ;
+ }
+ this.EditorDocument.addEventListener( 'contextmenu', oOnContextMenu, true ) ;
+
+ // Handle pasting operations.
+ var oOnKeyDown = function( e )
+ {
+ // FCKDebug.Output( 'Which Key: ' + e.which ) ;
+
+ // START iCM Modifications
+ /*
+ // Need to amend carriage return key handling so inserts block element tags rather than BR all the time
+ if ( e.which == 13 && !e.shiftKey && !e.ctrlKey && !e.altKey && !FCKConfig.UseBROnCarriageReturn && !FCK.Events.FireEvent( "OnEnter" ) )
+ {
+ e.preventDefault() ;
+ e.stopPropagation() ;
+ }
+ // Amend backspace handling so correctly removes empty block elements i.e. those block elements containing nothing or
+ // just the bogus BR node
+ if ( e.which == 8 && !e.shiftKey && !e.ctrlKey && !e.altKey && !FCKConfig.UserBROnCarriageReturn && !FCK.Events.FireEvent( "OnBackSpace" ) )
+ {
+ e.preventDefault() ;
+ e.stopPropagation() ;
+ }
+ */
+ // END iCM Modifications
+
+ if ( e.ctrlKey && !e.shiftKey && !e.altKey )
+ {
+ var bPrevent = false ;
+
+ switch ( e.which )
+ {
+ case 66 : // B
+ case 98 : // b
+ FCK.ExecuteNamedCommand( 'bold' ) ; bPrevent = true ;
+ break;
+ case 105 : // i
+ case 73 : // I
+ FCK.ExecuteNamedCommand( 'italic' ) ; bPrevent = true ;
+ break;
+ case 117 : // u
+ case 85 : // U
+ FCK.ExecuteNamedCommand( 'underline' ) ; bPrevent = true ;
+ break;
+ case 86 : // V
+ case 118 : // v
+ bPrevent = ( FCK.Status != FCK_STATUS_COMPLETE || !FCK.Events.FireEvent( "OnPaste" ) ) ;
+ break ;
+ }
+
+ if ( bPrevent )
+ {
+ e.preventDefault() ;
+ e.stopPropagation() ;
+ }
+ }
+ }
+ this.EditorDocument.addEventListener( 'keypress', oOnKeyDown, true ) ;
+
+ this.ExecOnSelectionChange = function()
+ {
+ FCK.Events.FireEvent( "OnSelectionChange" ) ;
+ }
+
+ this.ExecOnSelectionChangeTimer = function()
+ {
+ if ( FCK.LastOnChangeTimer )
+ window.clearTimeout( FCK.LastOnChangeTimer ) ;
+
+ FCK.LastOnChangeTimer = window.setTimeout( FCK.ExecOnSelectionChange, 100 ) ;
+ }
+
+ this.EditorDocument.addEventListener( 'mouseup', this.ExecOnSelectionChange, false ) ;
+
+ // On Gecko, firing the "OnSelectionChange" event on every key press started to be too much
+ // slow. So, a timer has been implemented to solve performance issues when tipying to quickly.
+ this.EditorDocument.addEventListener( 'keyup', this.ExecOnSelectionChangeTimer, false ) ;
+
+ this._DblClickListener = function( e )
+ {
+ FCK.OnDoubleClick( e.target ) ;
+ e.stopPropagation() ;
+ }
+ this.EditorDocument.addEventListener( 'dblclick', this._DblClickListener, true ) ;
+
+ this._OnLoad = function()
+ {
+ if ( this._FCK_HTML )
+ {
+ this.document.body.innerHTML = this._FCK_HTML ;
+ this._FCK_HTML = null ;
+ }
+ }
+ this.EditorWindow.addEventListener( 'load', this._OnLoad, true ) ;
+
+// var oEditorWindow_OnUnload = function()
+// {
+// FCK.EditorWindow.location = 'fckblank.html' ;
+// }
+// this.EditorWindow.addEventListener( 'unload', oEditorWindow_OnUnload, true ) ;
+
+// var oEditorWindow_OnFocus = function()
+// {
+// FCK.MakeEditable() ;
+// }
+// this.EditorWindow.addEventListener( 'focus', oEditorWindow_OnFocus, true ) ;
+}
+
+FCK.MakeEditable = function()
+{
+ try
+ {
+ FCK.EditorDocument.designMode = 'on' ;
+
+ // Tell Gecko to use or not the <SPAN> tag for the bold, italic and underline.
+ FCK.EditorDocument.execCommand( 'useCSS', false, !FCKConfig.GeckoUseSPAN ) ;
+ }
+ catch (e) {}
+}
+
+FCK.Focus = function()
+{
+ try
+ {
+// window.focus() ;
+ FCK.EditorWindow.focus() ;
+ }
+ catch(e) {}
+}
+
+FCK.SetHTML = function( html, forceWYSIWYG )
+{
+ // Firefox can't handle correctly the editing of the STRONG and EM tags.
+ // We must replace them with B and I.
+ html = html.replace( FCKRegexLib.StrongOpener, '<b$1' ) ;
+ html = html.replace( FCKRegexLib.StrongCloser, '<\/b>' ) ;
+ html = html.replace( FCKRegexLib.EmOpener, '<i$1' ) ;
+ html = html.replace( FCKRegexLib.EmCloser, '<\/i>' ) ;
+
+ if ( forceWYSIWYG || FCK.EditMode == FCK_EDITMODE_WYSIWYG )
+ {
+ html = FCKConfig.ProtectedSource.Protect( html ) ;
+
+ // Gecko has a lot of bugs mainly when handling editing features.
+ // To avoid an Aplication Exception (that closes the browser!) we
+ // must first write the <HTML> contents with an empty body, and
+ // then insert the body contents.
+ // (Oh yes... it took me a lot of time to find out this workaround)
+
+ if ( FCKConfig.FullPage && FCKRegexLib.BodyContents.test( html ) )
+ {
+ // Add the <BASE> tag to the input HTML.
+ if ( FCK.TempBaseTag.length > 0 && !FCKRegexLib.HasBaseTag.test( html ) )
+ html = html.replace( FCKRegexLib.HeadOpener, '$&' + FCK.TempBaseTag ) ;
+
+ html = html.replace( FCKRegexLib.HeadCloser, '<link href="' + FCKConfig.BasePath + 'css/fck_internal.css' + '" rel="stylesheet" type="text/css" _fcktemp="true" /></head>' ) ;
+
+ // Extract the BODY contents from the html.
+ var oMatch = html.match( FCKRegexLib.BodyContents ) ;
+ var sOpener = oMatch[1] ; // This is the HTML until the <body...> tag, inclusive.
+ var sContents = oMatch[2] ; // This is the BODY tag contents.
+ var sCloser = oMatch[3] ; // This is the HTML from the </body> tag, inclusive.
+
+ var sHtml = sOpener + ' ' + sCloser ;
+
+ if ( !this._Initialized )
+ {
+ FCK.EditorDocument.designMode = "on" ;
+
+ // Tell Gecko to use or not the <SPAN> tag for the bold, italic and underline.
+ FCK.EditorDocument.execCommand( "useCSS", false, !FCKConfig.GeckoUseSPAN ) ;
+
+ this._Initialized = true ;
+ }
+
+ this.EditorDocument.open() ;
+ this.EditorDocument.write( sHtml ) ;
+ this.EditorDocument.close() ;
+
+ if ( this.EditorDocument.body )
+ this.EditorDocument.body.innerHTML = sContents ;
+ else
+ this.EditorWindow._FCK_HTML = sContents ;
+
+ this.InitializeBehaviors() ;
+ }
+ else
+ {
+ /* TODO: Wait stable and remove it.
+ sHtml =
+ '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' +
+ '<html dir="' + FCKConfig.ContentLangDirection + '">' +
+ '<head><title></title>' +
+ '<link href="' + FCKConfig.EditorAreaCSS + '" rel="stylesheet" type="text/css" />' +
+ '<link href="' + FCKConfig.BasePath + 'css/fck_internal.css' + '" rel="stylesheet" type="text/css" _fcktemp="true" />' ;
+
+ sHtml += FCK.TempBaseTag ;
+
+ sHtml += '</head><body> </body></html>' ;
+ */
+
+ if ( !this._Initialized )
+ {
+ this.EditorDocument.dir = FCKConfig.ContentLangDirection ;
+
+ var sHtml =
+ '<title></title>' +
+ '<link href="' + FCKConfig.EditorAreaCSS + '" rel="stylesheet" type="text/css" />' +
+ '<link href="' + FCKConfig.BasePath + 'css/fck_internal.css' + '" rel="stylesheet" type="text/css" _fcktemp="true" />' +
+ FCK.TempBaseTag ;
+
+ this.EditorDocument.getElementsByTagName("HEAD")[0].innerHTML = sHtml ;
+
+ this.InitializeBehaviors() ;
+
+ this._Initialized = true ;
+ }
+
+ // On Gecko we must disable editing before setting the BODY innerHTML.
+// FCK.EditorDocument.designMode = 'off' ;
+
+ if ( html.length == 0 )
+ FCK.EditorDocument.body.innerHTML = GECKO_BOGUS ;
+ else if ( FCKRegexLib.EmptyParagraph.test( html ) )
+ FCK.EditorDocument.body.innerHTML = html.replace( FCKRegexLib.TagBody, '>' + GECKO_BOGUS + '<' ) ;
+ else
+ FCK.EditorDocument.body.innerHTML = html ;
+
+ FCK.MakeEditable() ;
+ }
+
+ FCK.OnAfterSetHTML() ;
+ }
+ else
+ document.getElementById('eSourceField').value = html ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_1_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,278 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_1_ie.js
+ * This is the first part of the "FCK" object creation. This is the main
+ * object that represents an editor instance.
+ * (IE specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCK.Description = "FCKeditor for Internet Explorer 5.5+" ;
+
+// The behaviors should be pointed using the FullBasePath to avoid security
+// errors when using a differente BaseHref.
+FCK._BehaviorsStyle =
+ '<style type="text/css" _fcktemp="true"> \
+ INPUT { behavior: url(' + FCKConfig.FullBasePath + 'css/behaviors/hiddenfield.htc) ; } ' ;
+
+if ( FCKConfig.ShowBorders )
+ FCK._BehaviorsStyle += 'TABLE { behavior: url(' + FCKConfig.FullBasePath + 'css/behaviors/showtableborders.htc) ; }' ;
+
+// Disable resize handlers.
+var sNoHandlers = 'INPUT, TEXTAREA, SELECT, .FCK__Anchor, .FCK__PageBreak' ;
+
+if ( FCKConfig.DisableImageHandles )
+ sNoHandlers += ', IMG' ;
+
+if ( FCKConfig.DisableTableHandles )
+ sNoHandlers += ', TABLE' ;
+
+FCK._BehaviorsStyle += sNoHandlers + ' { behavior: url(' + FCKConfig.FullBasePath + 'css/behaviors/disablehandles.htc) ; }' ;
+
+FCK._BehaviorsStyle += '</style>' ;
+
+function Doc_OnMouseUp()
+{
+ if ( FCK.EditorWindow.event.srcElement.tagName == 'HTML' )
+ {
+ FCK.Focus() ;
+ FCK.EditorWindow.event.cancelBubble = true ;
+ FCK.EditorWindow.event.returnValue = false ;
+ }
+}
+
+function Doc_OnPaste()
+{
+ if ( FCK.Status == FCK_STATUS_COMPLETE )
+ return FCK.Events.FireEvent( "OnPaste" ) ;
+ else
+ return false ;
+}
+
+function Doc_OnContextMenu()
+{
+ var e = FCK.EditorWindow.event ;
+
+ FCK.ShowContextMenu( e.screenX, e.screenY ) ;
+ return false ;
+}
+
+function Doc_OnKeyDown()
+{
+ var e = FCK.EditorWindow.event ;
+
+// FCKDebug.Output( 'KeyCode: ' + e.keyCode ) ;
+
+ switch ( e.keyCode )
+ {
+ case 13 : // ENTER
+ if ( FCKConfig.UseBROnCarriageReturn && !(e.ctrlKey || e.altKey || e.shiftKey) )
+ {
+ Doc_OnKeyDownUndo() ;
+
+ // We must ignore it if we are inside a List.
+ if ( FCK.EditorDocument.queryCommandState( 'InsertOrderedList' ) || FCK.EditorDocument.queryCommandState( 'InsertUnorderedList' ) )
+ return true ;
+
+ // Insert the <BR> (The must be also inserted to make it work)
+ FCK.InsertHtml( '<br> ' ) ;
+
+ // Remove the
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ oRange.moveStart( 'character', -1 ) ;
+ oRange.select() ;
+ FCK.EditorDocument.selection.clear() ;
+
+ return false ;
+ }
+ break ;
+
+ case 9 : // TAB
+ if ( FCKConfig.TabSpaces > 0 && !(e.ctrlKey || e.altKey || e.shiftKey) )
+ {
+ Doc_OnKeyDownUndo() ;
+
+ FCK.InsertHtml( window.FCKTabHTML ) ;
+ return false ;
+ }
+ break ;
+ case 90 : // Z
+ if ( e.ctrlKey && !(e.altKey || e.shiftKey) )
+ {
+ FCKUndo.Undo() ;
+ return false ;
+ }
+ break ;
+ case 89 : // Y
+ if ( e.ctrlKey && !(e.altKey || e.shiftKey) )
+ {
+ FCKUndo.Redo() ;
+ return false ;
+ }
+ break ;
+ }
+
+ if ( !( e.keyCode >=16 && e.keyCode <= 18 ) )
+ Doc_OnKeyDownUndo() ;
+ return true ;
+}
+
+function Doc_OnKeyDownUndo()
+{
+ if ( !FCKUndo.Typing )
+ {
+ FCKUndo.SaveUndoStep() ;
+ FCKUndo.Typing = true ;
+ FCK.Events.FireEvent( "OnSelectionChange" ) ;
+ }
+
+ FCKUndo.TypesCount++ ;
+
+ if ( FCKUndo.TypesCount > FCKUndo.MaxTypes )
+ {
+ FCKUndo.TypesCount = 0 ;
+ FCKUndo.SaveUndoStep() ;
+ }
+}
+
+function Doc_OnDblClick()
+{
+ FCK.OnDoubleClick( FCK.EditorWindow.event.srcElement ) ;
+ FCK.EditorWindow.event.cancelBubble = true ;
+}
+
+function Doc_OnSelectionChange()
+{
+ FCK.Events.FireEvent( "OnSelectionChange" ) ;
+}
+
+FCK.InitializeBehaviors = function( dontReturn )
+{
+ // Set the focus to the editable area when clicking in the document area.
+ // TODO: The cursor must be positioned at the end.
+ this.EditorDocument.attachEvent( 'onmouseup', Doc_OnMouseUp ) ;
+
+ // Intercept pasting operations
+ this.EditorDocument.body.attachEvent( 'onpaste', Doc_OnPaste ) ;
+
+ // Disable Right-Click and shows the context menu.
+ this.EditorDocument.attachEvent('oncontextmenu', Doc_OnContextMenu ) ;
+
+ // Build the "TAB" key replacement (if necessary).
+ if ( FCKConfig.TabSpaces > 0 )
+ {
+ window.FCKTabHTML = '' ;
+ for ( i = 0 ; i < FCKConfig.TabSpaces ; i++ )
+ window.FCKTabHTML += " " ;
+ }
+ this.EditorDocument.attachEvent("onkeydown", Doc_OnKeyDown ) ;
+
+ this.EditorDocument.attachEvent("ondblclick", Doc_OnDblClick ) ;
+
+ // Catch cursor movements
+ this.EditorDocument.attachEvent("onselectionchange", Doc_OnSelectionChange ) ;
+
+ //Enable editing
+// this.EditorDocument.body.contentEditable = true ;
+}
+
+FCK.Focus = function()
+{
+ try
+ {
+ if ( FCK.EditMode == FCK_EDITMODE_WYSIWYG )
+ FCK.EditorDocument.body.focus() ;
+ else
+ document.getElementById('eSourceField').focus() ;
+ }
+ catch(e) {}
+}
+
+FCK.SetHTML = function( html, forceWYSIWYG )
+{
+ if ( forceWYSIWYG || FCK.EditMode == FCK_EDITMODE_WYSIWYG )
+ {
+ html = FCKConfig.ProtectedSource.Protect( html ) ;
+
+ var sHtml ;
+
+ if ( FCKConfig.FullPage )
+ {
+ var sHtml =
+ FCK._BehaviorsStyle +
+ '<link href="' + FCKConfig.FullBasePath + 'css/fck_internal.css' + '" rel="stylesheet" type="text/css" _fcktemp="true" />' ;
+
+ if ( FCK.TempBaseTag.length > 0 && !FCKRegexLib.HasBaseTag.test( html ) )
+ sHtml += FCK.TempBaseTag ;
+
+ sHtml = html.replace( FCKRegexLib.HeadOpener, '$&' + sHtml ) ;
+ }
+ else
+ {
+ sHtml =
+ FCKConfig.DocType +
+ '<html dir="' + FCKConfig.ContentLangDirection + '"' ;
+
+ if ( FCKConfig.IEForceVScroll )
+ sHtml += ' style="overflow-y: scroll"' ;
+
+ sHtml +=
+ '><head><title></title>' +
+ '<link href="' + FCKConfig.EditorAreaCSS + '" rel="stylesheet" type="text/css" />' +
+ '<link href="' + FCKConfig.FullBasePath + 'css/fck_internal.css' + '" rel="stylesheet" type="text/css" _fcktemp="true" />' ;
+
+ sHtml += FCK._BehaviorsStyle ;
+ sHtml += FCK.TempBaseTag ;
+ sHtml += '</head><body>' + html + '</body></html>' ;
+ }
+
+ this.EditorDocument.open( '', '_self', '', true ) ;
+ this.EditorDocument.write( sHtml ) ;
+ this.EditorDocument.close() ;
+
+ this.InitializeBehaviors() ;
+ this.EditorDocument.body.contentEditable = true ;
+
+ FCK.OnAfterSetHTML() ;
+ }
+ else
+ document.getElementById('eSourceField').value = html ;
+}
+
+FCK.InsertHtml = function( html )
+{
+ FCK.Focus() ;
+
+ FCKUndo.SaveUndoStep() ;
+
+ // Gets the actual selection.
+ var oSel = FCK.EditorDocument.selection ;
+
+ // Deletes the actual selection contents.
+ if ( oSel.type.toLowerCase() != "none" )
+ oSel.clear() ;
+
+ // Inset the HTML.
+ oSel.createRange().pasteHTML( html ) ;
+}
+
+FCK.SetInnerHtml = function( html ) // IE Only
+{
+ var oDoc = FCK.EditorDocument ;
+ // Using the following trick, any comment in the begining of the HTML will
+ // be preserved.
+ oDoc.body.innerHTML = '<div id="__fakeFCKRemove__"> </div>' + html ;
+ oDoc.getElementById('__fakeFCKRemove__').removeNode( true ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,202 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_2.js
+ * This is the second part of the "FCK" object creation. This is the main
+ * object that represents an editor instance.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// This collection is used by the browser specific implementations to tell
+// wich named commands must be handled separately.
+FCK.RedirectNamedCommands = new Object() ;
+
+FCK.ExecuteNamedCommand = function( commandName, commandParameter )
+{
+ FCKUndo.SaveUndoStep() ;
+
+ if ( FCK.RedirectNamedCommands[ commandName ] != null )
+ FCK.ExecuteRedirectedNamedCommand( commandName, commandParameter ) ;
+ else
+ {
+ FCK.Focus() ;
+ FCK.EditorDocument.execCommand( commandName, false, commandParameter ) ;
+ FCK.Events.FireEvent( 'OnSelectionChange' ) ;
+ }
+
+ FCKUndo.SaveUndoStep() ;
+}
+
+FCK.GetNamedCommandState = function( commandName )
+{
+ try
+ {
+ if ( !FCK.EditorDocument.queryCommandEnabled( commandName ) )
+ return FCK_TRISTATE_DISABLED ;
+ else
+ return FCK.EditorDocument.queryCommandState( commandName ) ? FCK_TRISTATE_ON : FCK_TRISTATE_OFF ;
+ }
+ catch ( e )
+ {
+ return FCK_TRISTATE_OFF ;
+ }
+}
+
+FCK.GetNamedCommandValue = function( commandName )
+{
+ var sValue = '' ;
+ var eState = FCK.GetNamedCommandState( commandName ) ;
+
+ if ( eState == FCK_TRISTATE_DISABLED )
+ return null ;
+
+ try
+ {
+ sValue = this.EditorDocument.queryCommandValue( commandName ) ;
+ }
+ catch(e) {}
+
+ return sValue ? sValue : '' ;
+}
+
+FCK.PasteFromWord = function()
+{
+ FCKDialog.OpenDialog( 'FCKDialog_Paste', FCKLang.PasteFromWord, 'dialog/fck_paste.html', 400, 330, 'Word' ) ;
+}
+
+// TODO: Wait Stable and remove this block.
+//FCK.CleanAndPaste = function( html )
+//{
+ // Remove all SPAN tags
+// html = html.replace(/<\/?SPAN[^>]*>/gi, "" );
+
+// html = html.replace(/<o:p> <\/o:p>/g, "") ;
+// html = html.replace(/<o:p><\/o:p>/g, "") ;
+
+ // Remove mso-xxx styles.
+// html = html.replace( /mso-.[^:]:.[^;"]/g, "" ) ;
+
+ // Remove Class attributes
+// html = html.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3") ;
+
+ // Remove Style attributes
+// html = html.replace(/<(\w[^>]*) style="([^"]*)"([^>]*)/gi, "<$1$3") ;
+
+ // Remove Lang attributes
+// html = html.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3") ;
+
+ // Remove XML elements and declarations
+// html = html.replace(/<\\?\?xml[^>]*>/gi, "") ;
+
+ // Remove Tags with XML namespace declarations: <o:p></o:p>
+// html = html.replace(/<\/?\w+:[^>]*>/gi, "") ;
+
+ // Replace the
+// html = html.replace(/ /, " " );
+ // Replace the from the beggining.
+// html = html.replace(/^ [\s\r\n]*/, "");
+
+ // Transform <P> to <DIV>
+// var re = new RegExp("(<P)([^>]*>.*?)(<\/P>)","gi") ; // Different because of a IE 5.0 error
+// html = html.replace( re, "<div$2</div>" ) ;
+
+// FCK.InsertHtml( html ) ;
+//}
+
+FCK.Preview = function()
+{
+ var iWidth = FCKConfig.ScreenWidth * 0.8 ;
+ var iHeight = FCKConfig.ScreenHeight * 0.7 ;
+ var iLeft = ( FCKConfig.ScreenWidth - iWidth ) / 2 ;
+ var oWindow = window.open( '', null, 'toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width=' + iWidth + ',height=' + iHeight + ',left=' + iLeft ) ;
+
+ var sHTML ;
+
+ if ( FCKConfig.FullPage )
+ {
+ if ( FCK.TempBaseTag.length > 0 )
+ sHTML = FCK.GetXHTML().replace( FCKRegexLib.HeadOpener, '$&' + FCK.TempBaseTag ) ;
+ else
+ sHTML = FCK.GetXHTML() ;
+ }
+ else
+ {
+ sHTML =
+ FCKConfig.DocType +
+ '<html dir="' + FCKConfig.ContentLangDirection + '">' +
+ '<head><title>' + FCKLang.Preview + '</title>' +
+ '<link href="' + FCKConfig.EditorAreaCSS + '" rel="stylesheet" type="text/css" />' +
+ FCK.TempBaseTag +
+ '</head><body>' +
+ FCK.GetXHTML() +
+ '</body></html>' ;
+ }
+
+ oWindow.document.write( sHTML );
+ oWindow.document.close();
+}
+
+FCK.SwitchEditMode = function()
+{
+ // Check if the actual mode is WYSIWYG.
+ var bWYSIWYG = ( FCK.EditMode == FCK_EDITMODE_WYSIWYG ) ;
+
+ // Display/Hide the TRs.
+ document.getElementById('eWysiwyg').style.display = bWYSIWYG ? 'none' : '' ;
+ document.getElementById('eSource').style.display = bWYSIWYG ? '' : 'none' ;
+
+ // Update the HTML in the view output to show.
+ if ( bWYSIWYG )
+ {
+ if ( FCKBrowserInfo.IsIE )
+ FCKUndo.SaveUndoStep() ;
+ document.getElementById('eSourceField').value = ( FCKConfig.EnableXHTML && FCKConfig.EnableSourceXHTML ? FCK.GetXHTML( FCKConfig.FormatSource ) : FCK.GetHTML( FCKConfig.FormatSource ) ) ;
+ }
+ else
+ FCK.SetHTML( FCK.GetHTML(), true ) ;
+
+ // Updates the actual mode status.
+ FCK.EditMode = bWYSIWYG ? FCK_EDITMODE_SOURCE : FCK_EDITMODE_WYSIWYG ;
+
+ // Update the toolbar.
+ FCKToolbarSet.RefreshModeState() ;
+
+ // Set the Focus.
+ FCK.Focus() ;
+}
+
+FCK.CreateElement = function( tag )
+{
+ var e = FCK.EditorDocument.createElement( tag ) ;
+ return FCK.InsertElementAndGetIt( e ) ;
+}
+
+FCK.InsertElementAndGetIt = function( e )
+{
+ e.setAttribute( '__FCKTempLabel', 1 ) ;
+
+ this.InsertElement( e ) ;
+
+ var aEls = FCK.EditorDocument.getElementsByTagName( e.tagName ) ;
+
+ for ( var i = 0 ; i < aEls.length ; i++ )
+ {
+ if ( aEls[i].getAttribute( '__FCKTempLabel' ) )
+ {
+ aEls[i].removeAttribute( '__FCKTempLabel' ) ;
+ return aEls[i] ;
+ }
+ }
+ return null ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,469 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_2_gecko.js
+ * This is the second part of the "FCK" object creation. This is the main
+ * object that represents an editor instance.
+ * (Gecko specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// GetNamedCommandState overload for Gecko.
+FCK._BaseGetNamedCommandState = FCK.GetNamedCommandState ;
+FCK.GetNamedCommandState = function( commandName )
+{
+ switch ( commandName )
+ {
+ case 'Unlink' :
+ return FCKSelection.HasAncestorNode('A') ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ;
+ default :
+ return FCK._BaseGetNamedCommandState( commandName ) ;
+ }
+}
+
+// Named commands to be handled by this browsers specific implementation.
+FCK.RedirectNamedCommands =
+{
+ Print : true,
+ Paste : true,
+ Cut : true,
+ Copy : true
+ // START iCM MODIFICATIONS
+ // Include list functions so we can ensure content is wrapped
+ // with P tags if not using BRs on carriage return, etc
+ /*
+ InsertOrderedList : true,
+ InsertUnorderedList : true
+ */
+ // END iCM MODIFICATIONS
+}
+
+// ExecuteNamedCommand overload for Gecko.
+FCK.ExecuteRedirectedNamedCommand = function( commandName, commandParameter )
+{
+ switch ( commandName )
+ {
+ case 'Print' :
+ FCK.EditorWindow.print() ;
+ break ;
+ case 'Paste' :
+ try { if ( FCK.Paste() ) FCK.ExecuteNamedCommand( 'Paste' ) ; }
+ catch (e) { alert( FCKLang.PasteErrorPaste ) ; }
+ break ;
+ case 'Cut' :
+ try { FCK.ExecuteNamedCommand( 'Cut' ) ; }
+ catch (e) { alert( FCKLang.PasteErrorCut ) ; }
+ break ;
+ case 'Copy' :
+ try { FCK.ExecuteNamedCommand( 'Copy' ) ; }
+ catch (e) { alert( FCKLang.PasteErrorCopy ) ; }
+ break ;
+
+ // START iCM MODIFICATIONS
+ /*
+ case 'InsertOrderedList' :
+ case 'InsertUnorderedList' :
+
+ if ( !FCKConfig.UseBROnCarriageReturn && FCK.EditorDocument.queryCommandState( commandName ) )
+ {
+ // We're in a list item which is in the same type of list as the toolbar button clicked
+ // Therefore, move the selected list item out of the list as is done on an ENTER key within
+ // an empty list item.
+ var oSel = FCK.EditorWindow.getSelection() ;
+ var oSelNode = oSel.focusNode ;
+ var oLINode = FCKTools.GetElementAscensor( oSelNode, "LI" ) ;
+ FCK.ToggleListItem( oLINode, oSelNode ) ;
+ }
+ else
+ {
+ // Let the default handler do its stuff
+ FCK.Focus() ;
+ FCK.EditorDocument.execCommand( commandName, false, commandParameter ) ;
+ }
+
+ FCK.Events.FireEvent( 'OnSelectionChange' ) ;
+ break ;
+ */
+ // END iCM MODIFICATIONS
+
+ default :
+ FCK.ExecuteNamedCommand( commandName, commandParameter ) ;
+ }
+}
+
+FCK.AttachToOnSelectionChange = function( functionPointer )
+{
+ this.Events.AttachEvent( 'OnSelectionChange', functionPointer ) ;
+}
+
+FCK.Paste = function()
+{
+ if ( FCKConfig.ForcePasteAsPlainText )
+ {
+ FCK.PasteAsPlainText() ;
+ return false ;
+ }
+/* For now, the AutoDetectPasteFromWord feature is IE only.
+ else if ( FCKConfig.AutoDetectPasteFromWord )
+ {
+ var sHTML = FCK.GetClipboardHTML() ;
+ var re = /<\w[^>]* class="?MsoNormal"?/gi ;
+ if ( re.test( sHTML ) )
+ {
+ if ( confirm( FCKLang["PasteWordConfirm"] ) )
+ {
+ FCK.PasteFromWord() ;
+ return false ;
+ }
+ }
+ }
+*/
+ else
+ return true ;
+}
+
+//**
+// FCK.InsertHtml: Inserts HTML at the current cursor location. Deletes the
+// selected content if any.
+FCK.InsertHtml = function( html )
+{
+ // Delete the actual selection.
+ var oSel = FCKSelection.Delete() ;
+
+// var oContainer = oSel.getRangeAt(0).startContainer ;
+// var iOffSet = oSel.getRangeAt(0).startOffset ;
+
+ // Get the first available range.
+ var oRange = oSel.getRangeAt(0) ;
+
+// var oRange = this.EditorDocument.createRange() ;
+// oRange.setStart( oContainer, iOffSet ) ;
+// oRange.setEnd( oContainer, iOffSet ) ;
+
+ // Create a fragment with the input HTML.
+ var oFragment = oRange.createContextualFragment( html ) ;
+
+ // Get the last available node.
+ var oLastNode = oFragment.lastChild ;
+
+ // Insert the fragment in the range.
+ oRange.insertNode(oFragment) ;
+
+ // Set the cursor after the inserted fragment.
+ oRange.setEndAfter( oLastNode ) ;
+ oRange.setStartAfter( oLastNode ) ;
+
+ oSel.removeAllRanges() ;
+ oSel = FCK.EditorWindow.getSelection() ;
+ oSel.addRange( oRange ) ;
+
+ this.Focus() ;
+}
+
+FCK.InsertElement = function( element )
+{
+ // Deletes the actual selection.
+ var oSel = FCKSelection.Delete() ;
+
+ // Gets the first available range.
+ var oRange = oSel.getRangeAt(0) ;
+
+ // Inserts the element in the range.
+ oRange.insertNode( element ) ;
+
+ // Set the cursor after the inserted fragment.
+ oRange.setEndAfter( element ) ;
+ oRange.setStartAfter( element ) ;
+
+ this.Focus() ;
+}
+
+FCK.PasteAsPlainText = function()
+{
+ // TODO: Implement the "Paste as Plain Text" code.
+
+ FCKDialog.OpenDialog( 'FCKDialog_Paste', FCKLang.PasteAsText, 'dialog/fck_paste.html', 400, 330, 'PlainText' ) ;
+
+/*
+ var sText = FCKTools.HTMLEncode( clipboardData.getData("Text") ) ;
+ sText = sText.replace( /\n/g, '<BR>' ) ;
+ this.InsertHtml( sText ) ;
+*/
+}
+/*
+FCK.PasteFromWord = function()
+{
+ // TODO: Implement the "Paste as Plain Text" code.
+
+ FCKDialog.OpenDialog( 'FCKDialog_Paste', FCKLang.PasteFromWord, 'dialog/fck_paste.html', 400, 330, 'Word' ) ;
+
+// FCK.CleanAndPaste( FCK.GetClipboardHTML() ) ;
+}
+*/
+FCK.GetClipboardHTML = function()
+{
+ return '' ;
+}
+
+FCK.CreateLink = function( url )
+{
+ FCK.ExecuteNamedCommand( 'Unlink' ) ;
+
+ if ( url.length > 0 )
+ {
+ // Generate a temporary name for the link.
+ var sTempUrl = 'javascript:void(0);/*' + ( new Date().getTime() ) + '*/' ;
+
+ // Use the internal "CreateLink" command to create the link.
+ FCK.ExecuteNamedCommand( 'CreateLink', sTempUrl ) ;
+
+ // Retrieve the just created link using XPath.
+ var oLink = document.evaluate("//a[@href='" + sTempUrl + "']", this.EditorDocument.body, null, 9, null).singleNodeValue ;
+
+ if ( oLink )
+ {
+ oLink.href = url ;
+ return oLink ;
+ }
+ }
+}
+
+// START iCM Modifications
+/*
+// Ensure that behaviour of the ENTER key or the list toolbar button works correctly for a list item.
+// ENTER in empty list item at top of list should result in the empty list item being
+// removed and selection being moved out of the list into a P tag above it.
+// ENTER in empty list item at bottom of list should result in the empty list item being
+// removed and selection being moved out of the list into a P tag below it.
+// ENTER in empty list item in middle of the list should result in the list being split
+// into two and the selection being moved into a P tag between the two resulting lists.
+// Clicking the list toolbar button in a list item at top of list should result in the list item's contents being
+// moved out of the list into a P tag above it.
+// Clicking the list toolbar button in a list item at the bottom of list should result in the list item's contents being
+// moved out of the list into a P tag below it.
+// Clicking the list toolbar button in a list item in the middle of the list should result in the list being split
+// into two and the list item's contents being moved into a P tag between the two resulting lists.
+FCK.ToggleListItem = function( oLINode, oSelNode )
+{
+ var oListNode = FCKTools.GetElementAscensor( oLINode, "UL,OL" ) ;
+ var oRange = FCK.EditorDocument.createRange() ;
+
+ // Create a new block element
+ var oBlockNode = FCK.EditorDocument.createElement( "P" ) ;
+ oBlockNode.innerHTML = oLINode.innerHTML ; // Transfer any list item contents
+ if ( FCKTools.NodeIsEmpty( oBlockNode ) )
+ oBlockNode.innerHTML = GECKO_BOGUS ; // Ensure it has some content, required for Gecko
+ if ( oLINode.className && oLINode.className != '' )
+ oBlockNode.className = oLINode.className ; // Transfer across any class attribute
+
+ var oCursorNode = oBlockNode ;
+
+ // Then, perform list processing and locate the point at which the new P tag is to be inserted
+ if ( oListNode.childNodes[0] == oLINode )
+ {
+ // First LI was empty so want to leave list and insert P above it
+ oListNode.removeChild( oLINode );
+ // Need to insert a new P tag (or other suitable block element) just before the list
+ oRange.setStartBefore( oListNode ) ;
+ oRange.setEndBefore( oListNode ) ;
+ }
+ else if ( oListNode.childNodes[oListNode.childNodes.length-1] == oLINode )
+ {
+ // Last LI was empty so want to leave list and insert new block element in the parent
+ oListNode.removeChild( oLINode );
+ // Need to insert a new P tag (or other suitable block element) just after the list
+ oRange.setEndAfter( oListNode ) ;
+ oRange.setStartAfter( oListNode ) ;
+ }
+ else
+ {
+ // A middle LI was empty so want to break list into two and insert the new block/text node in between them
+ oListNode = FCKTools.SplitNode( oListNode, oSelNode, 0 ) ;
+ oListNode.removeChild( oListNode.childNodes[0] ) ;
+ oRange.setStartBefore( oListNode ) ;
+ oRange.setEndBefore( oListNode ) ;
+ }
+
+ // Insert new block/text node
+ oRange.insertNode( oBlockNode ) ;
+
+ // Ensure that we don't leave empty UL/OL tags behind
+ if ( oListNode.childNodes.length == 0 )
+ oListNode.parentNode.removeChild( oListNode ) ;
+
+ // Reset cursor position to start of the new P tag's contents ready for typing
+ FCK.Selection.SetCursorPosition( oCursorNode ) ;
+}
+
+FCK.ListItemEnter = function( oLINode, oSelNode, nSelOffset )
+{
+ // Ensure that behaviour of ENTER key within an empty list element works correctly.
+ // ENTER in empty list item at top of list should result in the empty list item being
+ // removed and selection being moved out of the list into a P tag above it.
+ // ENTER in empty list item at bottom of list should result in the empty list item being
+ // removed and selection being moved out of the list into a P tag below it.
+ // ENTER in empty list item in middle of the list should result in the list being split
+ // into two and the selection being moved into a P tag between the two resulting lists.
+ if ( FCKTools.NodeIsEmpty( oLINode ) )
+ {
+ FCK.ToggleListItem( oLINode, oSelNode ) ;
+ return false ; // Job done, perform no default handling
+ }
+
+ return true ; // If non-empty list item, let default handler do its stuff
+}
+
+FCK.ListItemBackSpace = function( oSelNode, nSelOffset )
+{
+ // Ensure that behaviour of BACKSPACE key within an empty list element works correctly.
+ // BACKSPACE in empty list item at top of list should result in the empty list item being
+ // removed and selection being moved out of the list into a P tag above it.
+ // Allow the default handler to do its stuff for backspace in other list elements.
+ var oListNode = oSelNode.parentNode ;
+
+ if ( FCKTools.NodeIsEmpty( oSelNode ) && ( oListNode.childNodes[0] == oSelNode ) )
+ {
+ var oRange = FCK.EditorDocument.createRange() ;
+
+ // Create a new P element
+ var oBlockNode = FCK.EditorDocument.createElement( "P" ) ;
+ if ( FCKTools.NodeIsEmpty( oBlockNode ) )
+ oBlockNode.innerHTML = GECKO_BOGUS ; // Ensure it has some content, required for Gecko
+
+ // First LI was empty so want to leave list and insert P above it
+ oListNode.removeChild( oSelNode );
+ oRange.setStartBefore( oListNode ) ;
+ oRange.setEndBefore( oListNode ) ;
+
+ // Insert new P tag
+ oRange.insertNode( oBlockNode ) ;
+
+ // Ensure that we don't leave empty UL/OL tags behind
+ if ( oListNode.childNodes.length == 0 )
+ oListNode.parentNode.removeChild( oListNode ) ;
+
+ // Reset cursor position to start of the new P tag's contents ready for typing
+ FCK.Selection.SetCursorPosition( oBlockNode ) ;
+
+ return false ; // Job done, perform no default handling
+ }
+
+ return true ; // Let default handler do its stuff if not backspacing in an empty first LI
+}
+
+FCK.Enter = function()
+{
+ // Remove any selected content before we begin so we end up with a single selection point
+ FCK.Selection.Delete() ;
+
+ // Determine the current cursor (selection) point, the node it's within and the offset
+ // position of the cursor within that node
+ var oSel = FCK.EditorWindow.getSelection() ;
+ var nSelOffset = oSel.focusOffset;
+ var oSelNode = oSel.focusNode ;
+
+ // Guard against a null focus node.
+ if ( !oSelNode )
+ return false ;
+
+ var oLINode = FCKTools.GetElementAscensor( oSelNode, "LI" ) ;
+
+ if ( oLINode ) // An LI element is selected
+ {
+ // Handle list items separately as need to handle termination of the list, etc
+ return FCK.ListItemEnter( oLINode, oSelNode, nSelOffset ) ;
+ }
+ else if ( oSelNode.nodeType == 3 ) // A TEXT node is selected
+ {
+ // Split it at the selection point and ensure both halves have a suitable enclosing block element
+ var oParentBlockNode = FCKTools.GetParentBlockNode( oSelNode ) ;
+ var oBlockNode2 = FCKTools.SplitNode( oParentBlockNode ? oParentBlockNode : FCK.EditorDocument.body, oSelNode, nSelOffset ) ;
+
+ FCK.Selection.SetCursorPosition( oBlockNode2 );
+
+ return false ;
+ }
+ else // An ELEMENT node is selected
+ {
+ // Cater for ENTER being pressed after very last element in the editor e.g. pressing ENTER after table element at very end of the editor's content
+ if ( nSelOffset >= oSelNode.childNodes.length )
+ {
+ var oBlockNode = FCK.EditorDocument.createElement( "P" ) ;
+ if ( FCKTools.NodeIsEmpty( oBlockNode ) )
+ oBlockNode.innerHTML = GECKO_BOGUS ; // Ensure it has some content, required for Gecko
+ oSelNode.appendChild( oBlockNode ) ;
+ FCK.Selection.SetCursorPosition( oBlockNode ) ;
+ return false ;
+ }
+
+ var oBlockNode2 = FCKTools.SplitNode( oSelNode, oSelNode.childNodes[nSelOffset] ) ;
+
+ FCK.Selection.SetCursorPosition( oBlockNode2 );
+
+ return false ;
+ }
+
+ return true ;
+}
+
+FCK.BackSpace = function()
+{
+ var oSel = FCK.EditorWindow.getSelection() ;
+ var oSelNode = oSel.focusNode ;
+ var nSelOffset = oSel.focusOffset;
+ var oParentNode = null ;
+
+ // Guard against a null focus node.
+ if ( !oSelNode )
+ return false ;
+
+ if ( oSelNode.nodeName.toUpperCase() == "LI" ) // An LI element is selected
+ {
+ // Handle list items separately as need to handle termination of the list, etc
+ return FCK.ListItemBackSpace( oSelNode, nSelOffset ) ;
+ }
+ else
+ {
+ // If we are anything other than a TEXT node, move to the child indicated by the selection offset
+ if ( oSelNode.nodeType != 3 )
+ {
+ oSelNode = oSelNode.childNodes[nSelOffset] ;
+ nSelOffset = 0 ;
+ }
+
+ // If we are the first child and the previous sibling of the parent is an empty block element (containing nothing or just the filler element)
+ // want the backspace to completely remove the empty block element
+ if ( !oSelNode.previousSibling && nSelOffset <= 0 )
+ {
+ oParentNode = oSelNode.parentNode ;
+
+ if ( oParentNode && oParentNode.previousSibling && FCKRegexLib.BlockElements.test( oParentNode.previousSibling.nodeName ) )
+ {
+ if ( FCKTools.NodeIsEmpty( oParentNode.previousSibling ) )
+ {
+ var oRange = FCK.EditorDocument.createRange() ;
+ oRange.selectNode ( oParentNode.previousSibling );
+ oRange.deleteContents() ;
+
+ // Don't do any default processing
+ return false ;
+ }
+ }
+ }
+ }
+ return true ; // Let default processing do its stuff
+}
+*/
+// END iCM Modifications
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_2_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,157 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_2_ie.js
+ * This is the second part of the "FCK" object creation. This is the main
+ * object that represents an editor instance.
+ * (IE specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+/*
+if ( FCKConfig.UseBROnCarriageReturn )
+{
+ // Named commands to be handled by this browsers specific implementation.
+ FCK.RedirectNamedCommands =
+ {
+ InsertOrderedList : true,
+ InsertUnorderedList : true
+ }
+
+ FCK.ExecuteRedirectedNamedCommand = function( commandName, commandParameter )
+ {
+ if ( commandName == 'InsertOrderedList' || commandName == 'InsertUnorderedList' )
+ {
+ if ( !(FCK.EditorDocument.queryCommandState( 'InsertOrderedList' ) || FCK.EditorDocument.queryCommandState( 'InsertUnorderedList' )) )
+ {
+ }
+ }
+
+ FCK.ExecuteNamedCommand( commandName, commandParameter ) ;
+ }
+}
+*/
+
+FCK.Paste = function()
+{
+ if ( FCKConfig.ForcePasteAsPlainText )
+ {
+ FCK.PasteAsPlainText() ;
+ return false ;
+ }
+ else if ( FCKConfig.AutoDetectPasteFromWord )
+ {
+ var sHTML = FCK.GetClipboardHTML() ;
+ var re = /<\w[^>]* class="?MsoNormal"?/gi ;
+ if ( re.test( sHTML ) )
+ {
+ if ( confirm( FCKLang["PasteWordConfirm"] ) )
+ {
+ FCK.PasteFromWord() ;
+ return false ;
+ }
+ }
+ }
+ else
+ return true ;
+}
+
+FCK.PasteAsPlainText = function()
+{
+ // Get the data available in the clipboard and encodes it in HTML.
+ var sText = FCKTools.HTMLEncode( clipboardData.getData("Text") ) ;
+
+ // Replace the carriage returns with <BR>
+ sText = sText.replace( /\n/g, '<BR>' ) ;
+
+ // Insert the resulting data in the editor.
+ this.InsertHtml( sText ) ;
+}
+/*
+FCK.PasteFromWord = function()
+{
+ FCK.CleanAndPaste( FCK.GetClipboardHTML() ) ;
+}
+*/
+FCK.InsertElement = function( element )
+{
+ FCK.InsertHtml( element.outerHTML ) ;
+}
+
+FCK.GetClipboardHTML = function()
+{
+ var oDiv = document.getElementById( '___FCKHiddenDiv' ) ;
+
+ if ( !oDiv )
+ {
+ var oDiv = document.createElement( 'DIV' ) ;
+ oDiv.id = '___FCKHiddenDiv' ;
+ oDiv.style.visibility = 'hidden' ;
+ oDiv.style.overflow = 'hidden' ;
+ oDiv.style.position = 'absolute' ;
+ oDiv.style.width = 1 ;
+ oDiv.style.height = 1 ;
+
+ document.body.appendChild( oDiv ) ;
+ }
+
+ oDiv.innerHTML = '' ;
+
+ var oTextRange = document.body.createTextRange() ;
+ oTextRange.moveToElementText( oDiv ) ;
+ oTextRange.execCommand( 'Paste' ) ;
+
+ var sData = oDiv.innerHTML ;
+ oDiv.innerHTML = '' ;
+
+ return sData ;
+}
+
+FCK.AttachToOnSelectionChange = function( functionPointer )
+{
+ this.Events.AttachEvent( 'OnSelectionChange', functionPointer ) ;
+}
+
+/*
+FCK.AttachToOnSelectionChange = function( functionPointer )
+{
+ FCK.EditorDocument.attachEvent( 'onselectionchange', functionPointer ) ;
+}
+*/
+
+FCK.CreateLink = function( url )
+{
+ FCK.ExecuteNamedCommand( 'Unlink' ) ;
+
+ if ( url.length > 0 )
+ {
+ // Generate a temporary name for the link.
+ var sTempUrl = 'javascript:void(0);/*' + ( new Date().getTime() ) + '*/' ;
+
+ // Use the internal "CreateLink" command to create the link.
+ FCK.ExecuteNamedCommand( 'CreateLink', sTempUrl ) ;
+
+ // Loof for the just create link.
+ var oLinks = this.EditorDocument.links ;
+
+ for ( i = 0 ; i < oLinks.length ; i++ )
+ {
+ if ( oLinks[i].href == sTempUrl )
+ {
+ oLinks[i].href = url ;
+ return oLinks[i] ;
+ }
+ }
+ }
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_last.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_last.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_last.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,67 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_last.js
+ * These are the last script lines executed in the editor loading process.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// This is the last file loaded to complete the editor initialization and activation
+
+// Just check if the document direction has been correctly applied (at fck_onload.js).
+if ( FCKLang && window.document.dir.toLowerCase() != FCKLang.Dir.toLowerCase() )
+ window.document.dir = FCKLang.Dir ;
+
+// Activate pasting operations.
+if ( FCKConfig.ForcePasteAsPlainText )
+ FCK.Events.AttachEvent( "OnPaste", FCK.Paste ) ;
+
+// START iCM Modifications
+// Override default ENTER key handler for Gecko/Mozilla so
+// it acts more like IE browsers.
+/*
+if ( FCKBrowserInfo.IsGecko && !FCKConfig.UseBROnCarriageReturn )
+{
+ FCK.Events.AttachEvent( "OnEnter", FCK.Enter ) ;
+ FCK.Events.AttachEvent( "OnBackSpace", FCK.BackSpace ) ;
+}
+*/
+// END iCM Modifications
+
+// Load Plugins.
+if ( FCKPlugins.ItemsCount > 0 )
+{
+ FCKScriptLoader.OnEmpty = CompleteLoading ;
+ FCKPlugins.Load() ;
+}
+else
+ CompleteLoading() ;
+
+function CompleteLoading()
+{
+ // Load the Toolbar
+ FCKToolbarSet.Name = FCKURLParams['Toolbar'] || 'Default' ;
+ FCKToolbarSet.Load( FCKToolbarSet.Name ) ;
+ FCKToolbarSet.Restart() ;
+
+ FCK.AttachToOnSelectionChange( FCKToolbarSet.RefreshItemsState ) ;
+ //FCK.AttachToOnSelectionChange( FCKSelection._Reset ) ;
+
+ FCK.SetStatus( FCK_STATUS_COMPLETE ) ;
+
+ // Call the special "FCKeditor_OnComplete" function that should be present in
+ // the HTML page where the editor is located.
+ if ( typeof( window.parent.FCKeditor_OnComplete ) == 'function' )
+ window.parent.FCKeditor_OnComplete( FCK ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_onload.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_onload.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fck_onload.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,228 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_onload.js
+ * This is the script that is called when the editor page is loaded inside
+ * its IFRAME. It's the editor startup.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Disable the context menu in the editor (areas outside the editor area).
+function Window_OnContextMenu( e )
+{
+ if ( e )
+ e.preventDefault() ; // The Gecko way.
+ else
+ {
+ if ( event.srcElement == document.getElementById('eSourceField') )
+ return true ;
+ }
+
+ return false ; // The IE way.
+}
+window.document.oncontextmenu = Window_OnContextMenu ;
+
+// Gecko browsers doens't calculate well that IFRAME size so we must
+// recalculate it every time the window size changes.
+if ( FCKBrowserInfo.IsGecko )
+{
+ function Window_OnResize()
+ {
+ var oFrame = document.getElementById('eEditorArea') ;
+ oFrame.height = 0 ;
+
+ var oCell = document.getElementById( FCK.EditMode == FCK_EDITMODE_WYSIWYG ? 'eWysiwygCell' : 'eSource' ) ;
+ var iHeight = oCell.offsetHeight ;
+
+ oFrame.height = iHeight - 2 ;
+ }
+ window.onresize = Window_OnResize ;
+}
+
+if ( FCKBrowserInfo.IsIE )
+{
+ var aCleanupDocs = new Array() ;
+ aCleanupDocs[0] = document ;
+
+ // On IE, some circular references must be cleared to avoid memory leak.
+ function Window_OnBeforeUnload()
+ {
+// if ( typeof( FCKToolbarSet ) != 'undefined' )
+// FCKToolbarSet.Collapse() ;
+
+ var d, e ;
+
+ var j = 0 ;
+ while ( ( d = aCleanupDocs[j++] ) )
+ {
+ var i = 0 ;
+ while ( ( e = d.getElementsByTagName("DIV").item(i++) ) )
+ {
+ if ( e.FCKToolbarButton )
+ e.FCKToolbarButton = null ;
+
+ if ( e.FCKSpecialCombo )
+ e.FCKSpecialCombo = null ;
+
+ if ( e.Command )
+ e.Command = null ;
+ }
+
+ i = 0 ;
+ while ( ( e = d.getElementsByTagName("TR").item(i++) ) )
+ {
+ if ( e.FCKContextMenuItem )
+ e.FCKContextMenuItem = null ;
+ }
+
+ aCleanupDocs[j] = null ;
+ }
+
+ if ( typeof( FCKTempBin ) != 'undefined' )
+ FCKTempBin.Reset() ;
+ }
+ window.attachEvent( "onunload", Window_OnBeforeUnload ) ;
+}
+
+// The editor startup follows these steps:
+// 1. Load the editor main page (fckeditor.html).
+// 2. Load the main configuration file (fckconfig.js)
+// 3. Process the configurations set directly in the page code (just load then).
+// 4. Override the configurations with the custom config file (if set).
+// 5. Override the configurations with that ones set directly in the page code.
+// 6. Load the editor skin styles CSS files.
+// 7. Load the first part of tha main scripts.
+// 8. Load the language file.
+// 9. Start the editor.
+
+// Start the editor as soon as the window is loaded.
+function Window_OnLoad()
+{
+ // There is a bug on Netscape when rendering the frame. It goes over the
+ // right border. So we must correct it.
+ if ( FCKBrowserInfo.IsNetscape )
+ document.getElementById('eWysiwygCell').style.paddingRight = '2px' ;
+
+ LoadConfigFile() ;
+}
+window.onload = Window_OnLoad ;
+
+function LoadConfigFile()
+{
+ FCKScriptLoader.OnEmpty = ProcessHiddenField ;
+
+ // First of all load the configuration file.
+ FCKScriptLoader.AddScript( '../fckconfig.js' ) ;
+}
+
+function ProcessHiddenField()
+{
+ FCKConfig.ProcessHiddenField() ;
+
+ LoadCustomConfigFile() ;
+}
+
+function LoadCustomConfigFile()
+{
+ // Load the custom configurations file (if defined).
+ if ( FCKConfig.CustomConfigurationsPath.length > 0 )
+ {
+ // Wait for the configuration file to be loaded to call the "LoadPageConfig".
+ FCKScriptLoader.OnEmpty = LoadPageConfig ;
+
+ FCKScriptLoader.AddScript( FCKConfig.CustomConfigurationsPath ) ;
+ }
+ else
+ {
+ // Load the page defined configurations immediately.
+ LoadPageConfig() ;
+ }
+}
+
+function LoadPageConfig()
+{
+ FCKConfig.LoadPageConfig() ;
+
+ // Load the styles for the configured skin.
+ LoadStyles() ;
+}
+
+function LoadStyles()
+{
+ if( window.console ) window.console.log( 'LoadStyles()' ) ; // @Packager.Compactor.RemoveLine
+
+ FCKScriptLoader.OnEmpty = LoadScripts ;
+
+ // Load the active skin CSS.
+ FCKScriptLoader.AddScript( FCKConfig.SkinPath + 'fck_editor.css' ) ;
+ FCKScriptLoader.AddScript( FCKConfig.SkinPath + 'fck_contextmenu.css' ) ;
+}
+
+function LoadScripts()
+{
+ if( window.console ) window.console.log( 'LoadScripts()' ) ; // @Packager.Compactor.RemoveLine
+
+ FCKScriptLoader.OnEmpty = null ;
+
+ // @Packager.Compactor.Remove.Start
+ var sSuffix = FCKBrowserInfo.IsIE ? 'ie' : 'gecko' ;
+
+ FCKScriptLoader.AddScript( '_source/internals/fckdebug.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fcktools.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fcktools_' + sSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckregexlib.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fcklanguagemanager.js' ) ;
+ FCKScriptLoader.AddScript( '_source/classes/fckevents.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckxhtmlentities.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckxhtml.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckxhtml_' + sSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckcodeformatter.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fckundo_' + sSuffix + '.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fck_1.js' ) ;
+ FCKScriptLoader.AddScript( '_source/internals/fck_1_' + sSuffix + '.js' ) ;
+ // @Packager.Compactor.Remove.End
+
+ /* @Packager.Compactor.RemoveLine
+ if ( FCKBrowserInfo.IsIE )
+ FCKScriptLoader.AddScript( 'js/fckeditorcode_ie_1.js' ) ;
+ else
+ FCKScriptLoader.AddScript( 'js/fckeditorcode_gecko_1.js' ) ;
+ @Packager.Compactor.RemoveLine */
+}
+
+function LoadLanguageFile()
+{
+ if( window.console ) window.console.log( 'LoadLanguageFile()' ) ; // @Packager.Compactor.RemoveLine
+
+ FCKScriptLoader.OnEmpty = LoadEditor ;
+
+ if( window.console ) window.console.log( 'Active Language: ' + FCKLanguageManager.ActiveLanguage.Code ) ; // @Packager.Compactor.RemoveLine
+
+ FCKScriptLoader.AddScript( 'lang/' + FCKLanguageManager.ActiveLanguage.Code + '.js' ) ;
+}
+
+function LoadEditor()
+{
+ if( window.console ) window.console.log( 'LoadEditor()' ) ; // @Packager.Compactor.RemoveLine
+
+ // Removes the OnEmpty listener.
+ FCKScriptLoader.OnEmpty = null ;
+
+ // Correct the editor layout to the correct language direction.
+ if ( FCKLang )
+ window.document.dir = FCKLang.Dir ;
+
+ // Starts the editor.
+ FCK.StartEditor() ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckbrowserinfo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckbrowserinfo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckbrowserinfo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,32 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckbrowserinfo.js
+ * Defines the FCKBrowserInfo object that hold some browser informations.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKBrowserInfo ;
+
+if ( !( FCKBrowserInfo = NS.FCKBrowserInfo ) )
+{
+ FCKBrowserInfo = NS.FCKBrowserInfo = new Object() ;
+
+ var sAgent = navigator.userAgent.toLowerCase() ;
+
+ FCKBrowserInfo.IsIE = ( sAgent.indexOf("msie") != -1 ) ;
+ FCKBrowserInfo.IsGecko = !FCKBrowserInfo.IsIE ;
+ FCKBrowserInfo.IsSafari = ( sAgent.indexOf("safari") != -1 ) ;
+ FCKBrowserInfo.IsNetscape = ( sAgent.indexOf("netscape") != -1 ) ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcodeformatter.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcodeformatter.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcodeformatter.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,75 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcodeformatter.js
+ * Format the HTML.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKCodeFormatter ;
+
+if ( !( FCKCodeFormatter = NS.FCKCodeFormatter ) )
+{
+ FCKCodeFormatter = NS.FCKCodeFormatter = new Object() ;
+
+ FCKCodeFormatter.Regex = new Object() ;
+
+ // Regex for line breaks.
+ FCKCodeFormatter.Regex.BlocksOpener = /\<(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|AREA|OPTION)[^\>]*\>/gi ;
+ FCKCodeFormatter.Regex.BlocksCloser = /\<\/(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|AREA|OPTION)[^\>]*\>/gi ;
+
+ FCKCodeFormatter.Regex.NewLineTags = /\<(BR|HR)[^\>]\>/gi ;
+
+ FCKCodeFormatter.Regex.MainTags = /\<\/?(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR)[^\>]*\>/gi ;
+
+ FCKCodeFormatter.Regex.LineSplitter = /\s*\n+\s*/g ;
+
+ // Regex for indentation.
+ FCKCodeFormatter.Regex.IncreaseIndent = /^\<(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL)[ \/\>]/i ;
+ FCKCodeFormatter.Regex.DecreaseIndent = /^\<\/(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL)[ \>]/i ;
+ FCKCodeFormatter.Regex.FormatIndentatorRemove = new RegExp( FCKConfig.FormatIndentator ) ;
+
+ FCKCodeFormatter.Format = function( html )
+ {
+ // Line breaks.
+ var sFormatted = html.replace( this.Regex.BlocksOpener, '\n$&' ) ; ;
+ sFormatted = sFormatted.replace( this.Regex.BlocksCloser, '$&\n' ) ;
+ sFormatted = sFormatted.replace( this.Regex.NewLineTags, '$&\n' ) ;
+ sFormatted = sFormatted.replace( this.Regex.MainTags, '\n$&\n' ) ;
+
+ // Indentation.
+ var sIndentation = '' ;
+
+ var asLines = sFormatted.split( this.Regex.LineSplitter ) ;
+ sFormatted = '' ;
+
+ for ( var i = 0 ; i < asLines.length ; i++ )
+ {
+ var sLine = asLines[i] ;
+
+ if ( sLine.length == 0 )
+ continue ;
+
+ if ( this.Regex.DecreaseIndent.test( sLine ) )
+ sIndentation = sIndentation.replace( this.Regex.FormatIndentatorRemove, '' ) ;
+
+ sFormatted += sIndentation + sLine + '\n' ;
+
+ if ( this.Regex.IncreaseIndent.test( sLine ) )
+ sIndentation += FCKConfig.FormatIndentator ;
+ }
+
+ return sFormatted.trim() ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcommands.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcommands.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcommands.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,123 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcommands.js
+ * Define all commands available in the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKCommands = FCK.Commands = new Object() ;
+FCKCommands.LoadedCommands = new Object() ;
+
+FCKCommands.RegisterCommand = function( commandName, command )
+{
+ this.LoadedCommands[ commandName ] = command ;
+}
+
+FCKCommands.GetCommand = function( commandName )
+{
+ var oCommand = FCKCommands.LoadedCommands[ commandName ] ;
+
+ if ( oCommand )
+ return oCommand ;
+
+ switch ( commandName )
+ {
+ case 'DocProps' : oCommand = new FCKDialogCommand( 'DocProps' , FCKLang.DocProps , 'dialog/fck_docprops.html' , 400, 390, FCKCommands.GetFullPageState ) ; break ;
+ case 'Templates' : oCommand = new FCKDialogCommand( 'Templates' , FCKLang.DlgTemplatesTitle , 'dialog/fck_template.html' , 380, 450 ) ; break ;
+ case 'Link' : oCommand = new FCKDialogCommand( 'Link' , FCKLang.DlgLnkWindowTitle , 'dialog/fck_link.html' , 400, 330, FCK.GetNamedCommandState, 'CreateLink' ) ; break ;
+ case 'Anchor' : oCommand = new FCKDialogCommand( 'Anchor' , FCKLang.DlgAnchorTitle , 'dialog/fck_anchor.html' , 370, 170 ) ; break ;
+ case 'BulletedList' : oCommand = new FCKDialogCommand( 'BulletedList', FCKLang.BulletedListProp , 'dialog/fck_listprop.html' , 370, 170 ) ; break ;
+ case 'NumberedList' : oCommand = new FCKDialogCommand( 'NumberedList', FCKLang.NumberedListProp , 'dialog/fck_listprop.html' , 370, 170 ) ; break ;
+ case 'About' : oCommand = new FCKDialogCommand( 'About' , FCKLang.About , 'dialog/fck_about.html' , 400, 330 ) ; break ;
+
+ case 'Find' : oCommand = new FCKDialogCommand( 'Find' , FCKLang.DlgFindTitle , 'dialog/fck_find.html' , 340, 170 ) ; break ;
+ case 'Replace' : oCommand = new FCKDialogCommand( 'Replace' , FCKLang.DlgReplaceTitle , 'dialog/fck_replace.html' , 340, 200 ) ; break ;
+
+ case 'Image' : oCommand = new FCKDialogCommand( 'Image' , FCKLang.DlgImgTitle , 'dialog/fck_image.html' , 450, 400 ) ; break ;
+ case 'Flash' : oCommand = new FCKDialogCommand( 'Flash' , FCKLang.DlgFlashTitle , 'dialog/fck_flash.html' , 450, 400 ) ; break ;
+ case 'SpecialChar' : oCommand = new FCKDialogCommand( 'SpecialChar', FCKLang.DlgSpecialCharTitle , 'dialog/fck_specialchar.html' , 400, 300 ) ; break ;
+ case 'Smiley' : oCommand = new FCKDialogCommand( 'Smiley' , FCKLang.DlgSmileyTitle , 'dialog/fck_smiley.html' , FCKConfig.SmileyWindowWidth, FCKConfig.SmileyWindowHeight ) ; break ;
+ case 'Table' : oCommand = new FCKDialogCommand( 'Table' , FCKLang.DlgTableTitle , 'dialog/fck_table.html' , 400, 250 ) ; break ;
+ case 'TableProp' : oCommand = new FCKDialogCommand( 'Table' , FCKLang.DlgTableTitle , 'dialog/fck_table.html?Parent', 400, 250 ) ; break ;
+ case 'TableCellProp': oCommand = new FCKDialogCommand( 'TableCell' , FCKLang.DlgCellTitle , 'dialog/fck_tablecell.html' , 500, 250 ) ; break ;
+ case 'UniversalKey' : oCommand = new FCKDialogCommand( 'UniversalKey', FCKLang.UniversalKeyboard , 'dialog/fck_universalkey.html', 415, 300 ) ; break ;
+
+ case 'Style' : oCommand = new FCKStyleCommand() ; break ;
+
+ case 'FontName' : oCommand = new FCKFontNameCommand() ; break ;
+ case 'FontSize' : oCommand = new FCKFontSizeCommand() ; break ;
+ case 'FontFormat' : oCommand = new FCKFormatBlockCommand() ; break ;
+
+ case 'Source' : oCommand = new FCKSourceCommand() ; break ;
+ case 'Preview' : oCommand = new FCKPreviewCommand() ; break ;
+ case 'Save' : oCommand = new FCKSaveCommand() ; break ;
+ case 'NewPage' : oCommand = new FCKNewPageCommand() ; break ;
+ case 'PageBreak' : oCommand = new FCKPageBreakCommand() ; break ;
+
+ case 'TextColor' : oCommand = new FCKTextColorCommand('ForeColor') ; break ;
+ case 'BGColor' : oCommand = new FCKTextColorCommand('BackColor') ; break ;
+
+ case 'PasteText' : oCommand = new FCKPastePlainTextCommand() ; break ;
+ case 'PasteWord' : oCommand = new FCKPasteWordCommand() ; break ;
+
+ case 'TableInsertRow' : oCommand = new FCKTableCommand('TableInsertRow') ; break ;
+ case 'TableDeleteRows' : oCommand = new FCKTableCommand('TableDeleteRows') ; break ;
+ case 'TableInsertColumn' : oCommand = new FCKTableCommand('TableInsertColumn') ; break ;
+ case 'TableDeleteColumns' : oCommand = new FCKTableCommand('TableDeleteColumns') ; break ;
+ case 'TableInsertCell' : oCommand = new FCKTableCommand('TableInsertCell') ; break ;
+ case 'TableDeleteCells' : oCommand = new FCKTableCommand('TableDeleteCells') ; break ;
+ case 'TableMergeCells' : oCommand = new FCKTableCommand('TableMergeCells') ; break ;
+ case 'TableSplitCell' : oCommand = new FCKTableCommand('TableSplitCell') ; break ;
+
+ case 'Form' : oCommand = new FCKDialogCommand( 'Form' , FCKLang.Form , 'dialog/fck_form.html' , 380, 230 ) ; break ;
+ case 'Checkbox' : oCommand = new FCKDialogCommand( 'Checkbox' , FCKLang.Checkbox , 'dialog/fck_checkbox.html' , 380, 230 ) ; break ;
+ case 'Radio' : oCommand = new FCKDialogCommand( 'Radio' , FCKLang.RadioButton , 'dialog/fck_radiobutton.html' , 380, 230 ) ; break ;
+ case 'TextField' : oCommand = new FCKDialogCommand( 'TextField' , FCKLang.TextField , 'dialog/fck_textfield.html' , 380, 230 ) ; break ;
+ case 'Textarea' : oCommand = new FCKDialogCommand( 'Textarea' , FCKLang.Textarea , 'dialog/fck_textarea.html' , 380, 230 ) ; break ;
+ case 'HiddenField' : oCommand = new FCKDialogCommand( 'HiddenField', FCKLang.HiddenField , 'dialog/fck_hiddenfield.html' , 380, 230 ) ; break ;
+ case 'Button' : oCommand = new FCKDialogCommand( 'Button' , FCKLang.Button , 'dialog/fck_button.html' , 380, 230 ) ; break ;
+ case 'Select' : oCommand = new FCKDialogCommand( 'Select' , FCKLang.SelectionField, 'dialog/fck_select.html' , 400, 380 ) ; break ;
+ case 'ImageButton' : oCommand = new FCKDialogCommand( 'ImageButton', FCKLang.ImageButton , 'dialog/fck_image.html?ImageButton', 450, 400 ) ; break ;
+
+ case 'SpellCheck' : oCommand = new FCKSpellCheckCommand() ; break ;
+
+ case 'Undo' : oCommand = new FCKUndoCommand() ; break ;
+ case 'Redo' : oCommand = new FCKRedoCommand() ; break ;
+
+ // Generic Undefined command (usually used when a command is under development).
+ case 'Undefined' : oCommand = new FCKUndefinedCommand() ; break ;
+
+ // By default we assume that it is a named command.
+ default:
+ if ( FCKRegexLib.NamedCommands.test( commandName ) )
+ oCommand = new FCKNamedCommand( commandName ) ;
+ else
+ {
+ alert( FCKLang.UnknownCommand.replace( /%1/g, commandName ) ) ;
+ return null ;
+ }
+ }
+
+ FCKCommands.LoadedCommands[ commandName ] = oCommand ;
+
+ return oCommand ;
+}
+
+// Gets the state of the "Document Properties" button. It must be enabled only
+// when "Full Page" editing is available.
+FCKCommands.GetFullPageState = function()
+{
+ return FCKConfig.FullPage ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckconfig.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckconfig.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckconfig.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,150 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckconfig.js
+ * Creates and initializes the FCKConfig object.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKConfig = FCK.Config = new Object() ;
+
+// Editor Base Path
+if ( document.location.protocol == 'file:' )
+{
+ FCKConfig.BasePath = document.location.pathname.substr(1) ;
+ FCKConfig.BasePath = FCKConfig.BasePath.replace( /\\/gi, '/' ) ;
+ FCKConfig.BasePath = 'file://' + FCKConfig.BasePath.substring(0,FCKConfig.BasePath.lastIndexOf('/')+1) ;
+}
+else
+{
+ FCKConfig.BasePath = document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/')+1) ;
+ FCKConfig.FullBasePath = document.location.protocol + '//' + document.location.host + FCKConfig.BasePath ;
+}
+
+FCKConfig.EditorPath = FCKConfig.BasePath.replace( /editor\/$/, '' ) ;
+
+// There is a bug in Gecko. If the editor is hidden on startup, an error is
+// thrown when trying to get the screen dimentions.
+try
+{
+ FCKConfig.ScreenWidth = screen.width ;
+ FCKConfig.ScreenHeight = screen.height ;
+}
+catch (e)
+{
+ FCKConfig.ScreenWidth = 800 ;
+ FCKConfig.ScreenHeight = 600 ;
+}
+
+// Override the actual configuration values with the values passed throw the
+// hidden field "<InstanceName>___Config".
+FCKConfig.ProcessHiddenField = function()
+{
+ this.PageConfig = new Object() ;
+
+ // Get the hidden field.
+ var oConfigField = window.parent.document.getElementById( FCK.Name + '___Config' ) ;
+
+ // Do nothing if the config field was not defined.
+ if ( ! oConfigField ) return ;
+
+ var aCouples = oConfigField.value.split('&') ;
+
+ for ( var i = 0 ; i < aCouples.length ; i++ )
+ {
+ if ( aCouples[i].length == 0 )
+ continue ;
+
+ var aConfig = aCouples[i].split( '=' ) ;
+ var sKey = unescape( aConfig[0] ) ;
+ var sVal = unescape( aConfig[1] ) ;
+
+ if ( sKey == 'CustomConfigurationsPath' ) // The Custom Config File path must be loaded immediately.
+ FCKConfig[ sKey ] = sVal ;
+
+ else if ( sVal.toLowerCase() == "true" ) // If it is a boolean TRUE.
+ this.PageConfig[ sKey ] = true ;
+
+ else if ( sVal.toLowerCase() == "false" ) // If it is a boolean FALSE.
+ this.PageConfig[ sKey ] = false ;
+
+ else if ( ! isNaN( sVal ) ) // If it is a number.
+ this.PageConfig[ sKey ] = parseInt( sVal ) ;
+
+ else // In any other case it is a string.
+ this.PageConfig[ sKey ] = sVal ;
+ }
+}
+
+FCKConfig.LoadPageConfig = function()
+{
+ for ( var sKey in this.PageConfig )
+ FCKConfig[ sKey ] = this.PageConfig[ sKey ] ;
+}
+
+// Define toolbar sets collection.
+FCKConfig.ToolbarSets = new Object() ;
+
+// Defines the plugins collection.
+FCKConfig.Plugins = new Object() ;
+FCKConfig.Plugins.Items = new Array() ;
+
+FCKConfig.Plugins.Add = function( name, langs, path )
+{
+ FCKConfig.Plugins.Items.addItem( [name, langs, path] ) ;
+}
+
+// FCKConfig.ProtectedSource: object that holds a collection of Regular
+// Expressions that defined parts of the raw HTML that must remain untouched
+// like custom tags, scripts, server side code, etc...
+FCKConfig.ProtectedSource = new Object() ;
+FCKConfig.ProtectedSource.RegexEntries = new Array() ;
+
+FCKConfig.ProtectedSource.Add = function( regexPattern )
+{
+ this.RegexEntries.addItem( regexPattern ) ;
+}
+
+FCKConfig.ProtectedSource.Protect = function( html )
+{
+ function _Replace( protectedSource )
+ {
+ var index = FCKTempBin.AddElement( protectedSource ) ;
+ return '<!--{PS..' + index + '}-->' ;
+ }
+
+ for ( var i = 0 ; i < this.RegexEntries.length ; i++ )
+ {
+ html = html.replace( this.RegexEntries[i], _Replace ) ;
+ }
+
+ return html ;
+}
+
+
+FCKConfig.ProtectedSource.Revert = function( html, clearBin )
+{
+ function _Replace( m, opener, index )
+ {
+ var protectedValue = clearBin ? FCKTempBin.RemoveElement( index ) : FCKTempBin.Elements[ index ] ;
+ // There could be protected source inside another one.
+ return FCKConfig.ProtectedSource.Revert( protectedValue, clearBin ) ;
+ }
+
+ return html.replace( /(<|<)!--\{PS..(\d+)\}--(>|>)/g, _Replace ) ;
+}
+
+// First of any other protection, we must protect all comments to avoid
+// loosing them (of course, IE related).
+FCKConfig.ProtectedSource.Add( /<!--[\s\S]*?-->/g ) ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,232 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcontextmenu.js
+ * Defines the FCKContextMenu object that is responsible for all
+ * Context Menu operations.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKContextMenu = new Object() ;
+
+// This property is internally used to indicate that the context menu has been created.
+FCKContextMenu._IsLoaded = false ;
+
+// This method creates the context menu inside a DIV tag. Take a look at the end of this file for a sample output.
+FCKContextMenu.Reload = function()
+{
+ // Create the Main DIV that holds the Context Menu.
+ this._Div = this._Document.createElement( 'DIV' ) ;
+ this._Div.className = 'CM_ContextMenu' ;
+ this._Div.style.position = 'absolute' ;
+ this._Div.style.visibility = 'hidden' ;
+ this._Document.body.appendChild( this._Div );
+
+ // Create the main table for the menu items.
+ var oTable = this._Document.createElement( 'TABLE' ) ;
+ oTable.cellSpacing = 0 ;
+ oTable.cellPadding = 0 ;
+ oTable.border = 0 ;
+ this._Div.appendChild( oTable ) ;
+
+ // Load all configured groups.
+ this.Groups = new Object() ;
+
+ for ( var i = 0 ; i < FCKConfig.ContextMenu.length ; i++ )
+ {
+ var sGroup = FCKConfig.ContextMenu[i] ;
+ this.Groups[ sGroup ] = this._GetGroup( sGroup ) ;
+ this.Groups[ sGroup ].CreateTableRows( oTable ) ;
+ }
+
+ this._IsLoaded = true ;
+}
+
+FCKContextMenu._GetGroup = function( groupName )
+{
+ var oGroup ;
+
+ switch ( groupName )
+ {
+ case 'Generic' :
+ // Generic items that are always available.
+ oGroup = new FCKContextMenuGroup() ;
+
+ oGroup.Add( new FCKContextMenuItem( this, 'Cut' , FCKLang.Cut , true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'Copy' , FCKLang.Copy , true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'Paste' , FCKLang.Paste , true ) ) ;
+
+ break ;
+
+ case 'Link' :
+ oGroup = new FCKContextMenuGroup() ;
+
+ oGroup.Add( new FCKContextMenuSeparator() ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'Link' , FCKLang.EditLink , true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'Unlink' , FCKLang.RemoveLink, true ) ) ;
+
+ break ;
+
+ case 'TableCell' :
+ oGroup = new FCKContextMenuGroup() ;
+
+ oGroup.Add( new FCKContextMenuSeparator() ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableInsertRow' , FCKLang.InsertRow, true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableDeleteRows' , FCKLang.DeleteRows, true ) ) ;
+ oGroup.Add( new FCKContextMenuSeparator() ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableInsertColumn' , FCKLang.InsertColumn, true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableDeleteColumns' , FCKLang.DeleteColumns, true ) ) ;
+ oGroup.Add( new FCKContextMenuSeparator() ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableInsertCell' , FCKLang.InsertCell, true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableDeleteCells' , FCKLang.DeleteCells, true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableMergeCells' , FCKLang.MergeCells, true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableSplitCell' , FCKLang.SplitCell, true ) ) ;
+ oGroup.Add( new FCKContextMenuSeparator() ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableCellProp' , FCKLang.CellProperties, true ) ) ;
+ oGroup.Add( new FCKContextMenuItem( this, 'TableProp' , FCKLang.TableProperties, true ) ) ;
+
+ break ;
+
+ case 'Table' :
+ return new FCKContextMenuGroup( true, this, 'Table', FCKLang.TableProperties, true ) ;
+
+ case 'Image' :
+ return new FCKContextMenuGroup( true, this, 'Image', FCKLang.ImageProperties, true ) ;
+
+ case 'Flash' :
+ return new FCKContextMenuGroup( true, this, 'Flash', FCKLang.FlashProperties, true ) ;
+
+ case 'Form' :
+ return new FCKContextMenuGroup( true, this, 'Form', FCKLang.FormProp, true ) ;
+
+ case 'Checkbox' :
+ return new FCKContextMenuGroup( true, this, 'Checkbox', FCKLang.CheckboxProp, true ) ;
+
+ case 'Radio' :
+ return new FCKContextMenuGroup( true, this, 'Radio', FCKLang.RadioButtonProp, true ) ;
+
+ case 'TextField' :
+ return new FCKContextMenuGroup( true, this, 'TextField', FCKLang.TextFieldProp, true ) ;
+
+ case 'HiddenField' :
+ return new FCKContextMenuGroup( true, this, 'HiddenField', FCKLang.HiddenFieldProp, true ) ;
+
+ case 'ImageButton' :
+ return new FCKContextMenuGroup( true, this, 'ImageButton', FCKLang.ImageButtonProp, true ) ;
+
+ case 'Button' :
+ return new FCKContextMenuGroup( true, this, 'Button', FCKLang.ButtonProp, true ) ;
+
+ case 'Select' :
+ return new FCKContextMenuGroup( true, this, 'Select', FCKLang.SelectionFieldProp, true ) ;
+
+ case 'Textarea' :
+ return new FCKContextMenuGroup( true, this, 'Textarea', FCKLang.TextareaProp, true ) ;
+
+ case 'BulletedList' :
+ return new FCKContextMenuGroup( true, this, 'BulletedList', FCKLang.BulletedListProp, true ) ;
+
+ case 'NumberedList' :
+ return new FCKContextMenuGroup( true, this, 'NumberedList', FCKLang.NumberedListProp, true ) ;
+
+ case 'Anchor' :
+ return new FCKContextMenuGroup( true, this, 'Anchor', FCKLang.AnchorProp, true ) ;
+ }
+
+ return oGroup ;
+}
+
+FCKContextMenu.RefreshState = function()
+{
+ // Get the actual selected tag (if any).
+ var oTag = FCKSelection.GetSelectedElement() ;
+ var sTagName ;
+
+ if ( oTag )
+ sTagName = oTag.tagName ;
+
+ // Set items visibility.
+
+// var bIsAnchor = ( sTagName == 'A' && oTag.name.length > 0 && oTag.href.length == 0 ) ;
+
+// if ( this.Groups['Link'] ) this.Groups['Link'].SetVisible( !bIsAnchor && FCK.GetNamedCommandState( 'Unlink' ) != FCK_TRISTATE_DISABLED ) ;
+ if ( this.Groups['Link'] ) this.Groups['Link'].SetVisible( FCK.GetNamedCommandState( 'Unlink' ) != FCK_TRISTATE_DISABLED ) ;
+
+ if ( this.Groups['TableCell'] ) this.Groups['TableCell'].SetVisible( sTagName != 'TABLE' && FCKSelection.HasAncestorNode('TABLE') ) ;
+ if ( this.Groups['Table'] ) this.Groups['Table'].SetVisible( sTagName == 'TABLE' ) ;
+
+ if ( this.Groups['Image'] ) this.Groups['Image'].SetVisible( sTagName == 'IMG' && !oTag.getAttribute('_fckfakelement') ) ;
+ if ( this.Groups['Flash'] ) this.Groups['Flash'].SetVisible( sTagName == 'IMG' && oTag.getAttribute('_fckflash') ) ;
+ if ( this.Groups['Anchor'] ) this.Groups['Anchor'].SetVisible( sTagName == 'IMG' && oTag.getAttribute('_fckanchor') ) ;
+
+ if ( this.Groups['BulletedList'] ) this.Groups['BulletedList'].SetVisible( FCKSelection.HasAncestorNode('UL') ) ;
+ if ( this.Groups['NumberedList'] ) this.Groups['NumberedList'].SetVisible( FCKSelection.HasAncestorNode('OL') ) ;
+
+ if ( this.Groups['Select'] ) this.Groups['Select'].SetVisible( sTagName == 'SELECT' ) ;
+ if ( this.Groups['Textarea'] ) this.Groups['Textarea'].SetVisible( sTagName == 'TEXTAREA' ) ;
+ if ( this.Groups['Form'] ) this.Groups['Form'].SetVisible( FCKSelection.HasAncestorNode('FORM') ) ;
+ if ( this.Groups['Checkbox'] ) this.Groups['Checkbox'].SetVisible( sTagName == 'INPUT' && oTag.type == 'checkbox' ) ;
+ if ( this.Groups['Radio'] ) this.Groups['Radio'].SetVisible( sTagName == 'INPUT' && oTag.type == 'radio' ) ;
+ if ( this.Groups['TextField'] ) this.Groups['TextField'].SetVisible( sTagName == 'INPUT' && ( oTag.type == 'text' || oTag.type == 'password' ) ) ;
+ if ( this.Groups['HiddenField'] ) this.Groups['HiddenField'].SetVisible( sTagName == 'INPUT' && oTag.type == 'hidden' ) ;
+ if ( this.Groups['ImageButton'] ) this.Groups['ImageButton'].SetVisible( sTagName == 'INPUT' && oTag.type == 'image' ) ;
+ if ( this.Groups['Button'] ) this.Groups['Button'].SetVisible( sTagName == 'INPUT' && ( oTag.type == 'button' || oTag.type == 'submit' || oTag.type == 'reset' ) ) ;
+
+ // Refresh the state of all visible items (active/disactive)
+ for ( var o in this.Groups )
+ {
+ this.Groups[o].RefreshState() ;
+ }
+}
+
+/*
+Sample Context Menu Output
+-----------------------------------------
+<div class="CM_ContextMenu">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr class="CM_Disabled">
+ <td class="CM_Icon"><img alt="" src="icons/cut.gif" width="21" height="20" unselectable="on"></td>
+ <td class="CM_Label" unselectable="on">Cut</td>
+ </tr>
+ <tr class="CM_Disabled">
+ <td class="CM_Icon"><img height="20" alt="" src="icons/copy.gif" width="21"></td>
+ <td class="CM_Label">Copy</td>
+ </tr>
+ <tr class="CM_Option" onmouseover="OnOver(this);" onmouseout="OnOut(this);">
+ <td class="CM_Icon"><img height="20" alt="" src="icons/paste.gif" width="21"></td>
+ <td class="CM_Label">Paste</td>
+ </tr>
+ <tr class="CM_Separator">
+ <td class="CM_Icon"></td>
+ <td class="CM_Label"><div></div></td>
+ </tr>
+ <tr class="CM_Option" onmouseover="OnOver(this);" onmouseout="OnOut(this);">
+ <td class="CM_Icon"><img height="20" alt="" src="icons/print.gif" width="21"></td>
+ <td class="CM_Label">Print</td>
+ </tr>
+ <tr class="CM_Separator">
+ <td class="CM_Icon"></td>
+ <td class="CM_Label"><div></div></td>
+ </tr>
+ <tr class="CM_Option" onmouseover="OnOver(this);" onmouseout="OnOut(this);">
+ <td class="CM_Icon"></td>
+ <td class="CM_Label">Do Something</td>
+ </tr>
+ <tr class="CM_Option" onmouseover="OnOver(this);" onmouseout="OnOut(this);">
+ <td class="CM_Icon"></td>
+ <td class="CM_Label">Just Testing</td>
+ </tr>
+ </table>
+</div>
+*/
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,90 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcontextmenu_gecko.js
+ * Context Menu operations. (Gecko specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// The Context Menu CSS must be added to the parent document.
+FCKTools.AppendStyleSheet( window.parent.document, FCKConfig.SkinPath + 'fck_contextmenu.css' ) ;
+
+FCKContextMenu.Show = function( x, y )
+{
+ if ( ! this._Document )
+ {
+ this._Document = window.parent.document ;
+ }
+
+ // Create the context menu if needed.
+ if ( !this._IsLoaded )
+ {
+ this.Reload() ;
+ this._Div.style.zIndex = 10000 ;
+ this._Div.oncontextmenu = function() { return false ; }
+ }
+
+ this.RefreshState() ;
+
+ // Get the editor area and editor frames positions.
+ var oCoordsA = FCKTools.GetElementPosition( FCK.EditorWindow.frameElement ) ;
+ var oCoordsB = FCKTools.GetElementPosition( window.frameElement ) ;
+
+ x += oCoordsA.X + oCoordsB.X ;
+ y += oCoordsA.Y + oCoordsB.Y ;
+
+ // Verifies if the context menu is completely visible.
+ var iXSpace = x + this._Div.offsetWidth - this._Div.ownerDocument.defaultView.innerWidth ;
+ var iYSpace = y + this._Div.offsetHeight - this._Div.ownerDocument.defaultView.innerHeight ;
+
+ if ( iXSpace > 0 ) x -= this._Div.offsetWidth ;
+ if ( iYSpace > 0 ) y -= this._Div.offsetHeight ;
+
+ // Set the context menu DIV in the specified location.
+ this._Div.style.left = x + 'px' ;
+ this._Div.style.top = y + 'px' ;
+
+ // Watch the "OnClick" event for all windows to close the Context Menu.
+ var oActualWindow = FCK.EditorWindow ;
+ while ( oActualWindow )
+ {
+ oActualWindow.document.addEventListener( 'click', FCKContextMenu._OnDocumentClick, false ) ;
+ if ( oActualWindow != oActualWindow.parent )
+ oActualWindow = oActualWindow.parent ;
+ else if ( oActualWindow.opener == null )
+ oActualWindow = oActualWindow.opener ;
+ else
+ break ;
+ }
+
+ // Show it.
+ this._Div.style.visibility = '' ;
+}
+
+FCKContextMenu._OnDocumentClick = function( event )
+{
+ var e = event.target ;
+ while ( e )
+ {
+ if ( e == FCKContextMenu._Div ) return ;
+ e = e.parentNode ;
+ }
+ FCKContextMenu.Hide() ;
+}
+
+FCKContextMenu.Hide = function()
+{
+ this._Div.style.visibility = 'hidden' ;
+ this._Div.style.left = this._Div.style.top = '1px' ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcontextmenu_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,71 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcontextmenu_ie.js
+ * Context Menu operations. (IE specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function FCKContextMenu_OnContextMenu() { return false ; }
+
+FCKContextMenu.Show = function( x, y )
+{
+ // Create the Popup used to show the menu (this is a IE 5.5+ feature).
+ if ( ! this._Popup )
+ {
+ this._Popup = window.createPopup() ;
+ this._Document = this._Popup.document ;
+ this._Document.createStyleSheet( FCKConfig.SkinPath + 'fck_contextmenu.css' ) ;
+ this._Document.oncontextmenu = FCKContextMenu_OnContextMenu ;
+
+ aCleanupDocs[ aCleanupDocs.length ] = this._Document ;
+ }
+
+ // Create the context menu if needed.
+ if ( !this._IsLoaded )
+ {
+ this.Reload() ;
+ this._Div.style.visibility = '' ;
+ }
+
+ this.RefreshState() ;
+
+ // IE doens't get the offsetWidth and offsetHeight values if the element is not visible.
+ // So the Popup must be "shown" with no size to be able to get these values.
+ this._Popup.show( x, y, 0, 0 ) ;
+
+ // This was the previous solution. It works well to.
+ // So a temporary element is created to get this for us.
+ /*
+ if ( !this._DivCopy )
+ {
+ this._DivCopy = document.createElement( 'DIV' ) ;
+ this._DivCopy.className = 'CM_ContextMenu' ;
+ this._DivCopy.style.position = 'absolute' ;
+ this._DivCopy.style.visibility = 'hidden' ;
+ document.body.appendChild( this._DivCopy );
+ }
+
+ this._DivCopy.innerHTML = this._Div.innerHTML ;
+ */
+
+ // Show the Popup at the specified location.
+ this._Popup.show( x, y, this._Div.offsetWidth, this._Div.offsetHeight ) ;
+}
+
+FCKContextMenu.Hide = function()
+{
+ if ( this._Popup )
+ this._Popup.hide() ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcoreextensions.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcoreextensions.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckcoreextensions.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,92 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckcoreextensions.js
+ * Some extensions to the Javascript Core.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Extends the Array object, creating a "addItem" method on it.
+Array.prototype.addItem = function( item )
+{
+ var i = this.length ;
+ this[ i ] = item ;
+ return i ;
+}
+
+Array.prototype.indexOf = function( value )
+{
+ for ( var i = 0 ; i < this.length ; i++ )
+ {
+ if ( this[i] == value )
+ return i ;
+ }
+ return -1 ;
+}
+
+String.prototype.startsWith = function( value )
+{
+ return ( this.substr( 0, value.length ) == value ) ;
+}
+
+// Extends the String object, creating a "endsWith" method on it.
+String.prototype.endsWith = function( value, ignoreCase )
+{
+ var L1 = this.length ;
+ var L2 = value.length ;
+
+ if ( L2 > L1 )
+ return false ;
+
+ if ( ignoreCase )
+ {
+ var oRegex = new RegExp( value + '$' , 'i' ) ;
+ return oRegex.test( this ) ;
+ }
+ else
+ return ( L2 == 0 || this.substr( L1 - L2, L2 ) == value ) ;
+}
+
+String.prototype.remove = function( start, length )
+{
+ var s = '' ;
+
+ if ( start > 0 )
+ s = this.substring( 0, start ) ;
+
+ if ( start + length < this.length )
+ s += this.substring( start + length , this.length ) ;
+
+ return s ;
+}
+
+String.prototype.trim = function()
+{
+ return this.replace( /(^\s*)|(\s*$)/g, '' ) ;
+}
+
+String.prototype.ltrim = function()
+{
+ return this.replace( /^\s*/g, '' ) ;
+}
+
+String.prototype.rtrim = function()
+{
+ return this.replace( /\s*$/g, '' ) ;
+}
+
+String.prototype.replaceNewLineChars = function( replacement )
+{
+ return this.replace( /\n/g, replacement ) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdebug.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdebug.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdebug.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,39 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckdebug.js
+ * Debug window control and operations.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKDebug = new Object() ;
+
+if ( FCKConfig.Debug )
+{
+ FCKDebug.Output = function( message, color )
+ {
+ if ( ! FCKConfig.Debug ) return ;
+
+ if ( message != null && isNaN( message ) )
+ message = message.replace(/</g, "<") ;
+
+ if ( !this.DebugWindow || this.DebugWindow.closed )
+ this.DebugWindow = window.open( 'fckdebug.html', 'FCKeditorDebug', 'menubar=no,scrollbars=no,resizable=yes,location=no,toolbar=no,width=600,height=500', true ) ;
+
+ if ( this.DebugWindow.Output)
+ this.DebugWindow.Output( message, color ) ;
+ }
+}
+else
+ FCKDebug.Output = function() {}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,34 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckdialog.js
+ * Dialog windows operations.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKDialog = new Object() ;
+
+// This method opens a dialog window using the standard dialog template.
+FCKDialog.OpenDialog = function( dialogName, dialogTitle, dialogPage, width, height, customValue, parentWindow, resizable )
+{
+ // Setup the dialog info.
+ var oDialogInfo = new Object() ;
+ oDialogInfo.Title = dialogTitle ;
+ oDialogInfo.Page = dialogPage ;
+ oDialogInfo.Editor = window ;
+ oDialogInfo.CustomValue = customValue ; // Optional
+
+ var sUrl = FCKConfig.BasePath + 'fckdialog.html' ;
+ this.Show( oDialogInfo, dialogName, sUrl, width, height, parentWindow, resizable ) ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,91 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckdialog_gecko.js
+ * Dialog windows operations. (Gecko specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKDialog.Show = function( dialogInfo, dialogName, pageUrl, dialogWidth, dialogHeight, parentWindow, resizable )
+{
+ var iTop = (FCKConfig.ScreenHeight - dialogHeight) / 2 ;
+ var iLeft = (FCKConfig.ScreenWidth - dialogWidth) / 2 ;
+
+ var sOption = "location=no,menubar=no,toolbar=no,dependent=yes,dialog=yes,minimizable=no,modal=yes,alwaysRaised=yes" +
+ ",resizable=" + ( resizable ? 'yes' : 'no' ) +
+ ",width=" + dialogWidth +
+ ",height=" + dialogHeight +
+ ",top=" + iTop +
+ ",left=" + iLeft ;
+
+ if ( !parentWindow )
+ parentWindow = window ;
+
+ var oWindow = parentWindow.open( '', 'FCKeditorDialog_' + dialogName, sOption, true ) ;
+ oWindow.moveTo( iLeft, iTop ) ;
+ oWindow.resizeTo( dialogWidth, dialogHeight ) ;
+ oWindow.focus() ;
+ oWindow.location.href = pageUrl ;
+
+ oWindow.dialogArguments = dialogInfo ;
+
+ // On some Gecko browsers (probably over slow connections) the
+ // "dialogArguments" are not set to the target window so we must
+ // put it in the opener window so it can be used by the target one.
+ parentWindow.FCKLastDialogInfo = dialogInfo ;
+
+ this.Window = oWindow ;
+
+ // Try/Catch must be used to avoit an error when using a frameset
+ // on a different domain:
+ // "Permission denied to get property Window.releaseEvents".
+ try
+ {
+ window.top.captureEvents( Event.CLICK | Event.MOUSEDOWN | Event.MOUSEUP | Event.FOCUS ) ;
+ window.top.parent.addEventListener( 'mousedown', this.CheckFocus, true ) ;
+ window.top.parent.addEventListener( 'mouseup', this.CheckFocus, true ) ;
+ window.top.parent.addEventListener( 'click', this.CheckFocus, true ) ;
+ window.top.parent.addEventListener( 'focus', this.CheckFocus, true ) ;
+ }
+ catch (e)
+ {}
+}
+
+FCKDialog.CheckFocus = function()
+{
+ // It is strange, but we have to check the FCKDialog existence to avoid a
+ // random error: "FCKDialog is not defined".
+ if ( typeof( FCKDialog ) != "object" )
+ return false ;
+
+ if ( FCKDialog.Window && !FCKDialog.Window.closed )
+ FCKDialog.Window.focus() ;
+ else
+ {
+ // Try/Catch must be used to avoit an error when using a frameset
+ // on a different domain:
+ // "Permission denied to get property Window.releaseEvents".
+ try
+ {
+ window.top.releaseEvents(Event.CLICK | Event.MOUSEDOWN | Event.MOUSEUP | Event.FOCUS) ;
+ window.top.parent.removeEventListener( 'onmousedown', FCKDialog.CheckFocus, true ) ;
+ window.top.parent.removeEventListener( 'mouseup', FCKDialog.CheckFocus, true ) ;
+ window.top.parent.removeEventListener( 'click', FCKDialog.CheckFocus, true ) ;
+ window.top.parent.removeEventListener( 'onfocus', FCKDialog.CheckFocus, true ) ;
+ }
+ catch (e)
+ {}
+ }
+ return false ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckdialog_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,26 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckdialog_ie.js
+ * Dialog windows operations. (IE specific implementations)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKDialog.Show = function( dialogInfo, dialogName, pageUrl, dialogWidth, dialogHeight, parentWindow )
+{
+ if ( !parentWindow )
+ parentWindow = window ;
+
+ parentWindow.showModalDialog( pageUrl, dialogInfo, "dialogWidth:" + dialogWidth + "px;dialogHeight:" + dialogHeight + "px;help:no;scroll:no;status:no") ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcklanguagemanager.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcklanguagemanager.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcklanguagemanager.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,95 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcklanguagemanager.js
+ * Defines the FCKLanguageManager object that is used for language
+ * operations.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKLanguageManager.GetActiveLanguage = function()
+{
+ if ( FCKConfig.AutoDetectLanguage )
+ {
+ var sUserLang ;
+
+ // IE accepts "navigator.userLanguage" while Gecko "navigator.language".
+ if ( navigator.userLanguage )
+ sUserLang = navigator.userLanguage.toLowerCase() ;
+ else if ( navigator.language )
+ sUserLang = navigator.language.toLowerCase() ;
+ else
+ {
+ // Firefox 1.0 PR has a bug: it doens't support the "language" property.
+ return FCKConfig.DefaultLanguage ;
+ }
+
+ // Some language codes are set in 5 characters,
+ // like "pt-br" for Brasilian Portuguese.
+ if ( sUserLang.length >= 5 )
+ {
+ sUserLang = sUserLang.substr(0,5) ;
+ if ( this.AvailableLanguages[sUserLang] ) return sUserLang ;
+ }
+
+ // If the user's browser is set to, for example, "pt-br" but only the
+ // "pt" language file is available then get that file.
+ if ( sUserLang.length >= 2 )
+ {
+ sUserLang = sUserLang.substr(0,2) ;
+ if ( this.AvailableLanguages[sUserLang] ) return sUserLang ;
+ }
+ }
+
+ return this.DefaultLanguage ;
+}
+
+FCKLanguageManager.TranslateElements = function( targetDocument, tag, propertyToSet )
+{
+ var e = targetDocument.getElementsByTagName(tag) ;
+
+ for ( var i = 0 ; i < e.length ; i++ )
+ {
+ var sKey = e[i].getAttribute( 'fckLang' ) ;
+
+ if ( sKey )
+ {
+ var s = FCKLang[ sKey ] ;
+ if ( s )
+ eval( 'e[i].' + propertyToSet + ' = s' ) ;
+ }
+ }
+}
+
+FCKLanguageManager.TranslatePage = function( targetDocument )
+{
+ this.TranslateElements( targetDocument, 'INPUT', 'value' ) ;
+ this.TranslateElements( targetDocument, 'SPAN', 'innerHTML' ) ;
+ this.TranslateElements( targetDocument, 'LABEL', 'innerHTML' ) ;
+ this.TranslateElements( targetDocument, 'OPTION', 'innerHTML' ) ;
+}
+
+if ( FCKLanguageManager.AvailableLanguages[ FCKConfig.DefaultLanguage ] )
+ FCKLanguageManager.DefaultLanguage = FCKConfig.DefaultLanguage ;
+else
+ FCKLanguageManager.DefaultLanguage = 'en' ;
+
+FCKLanguageManager.ActiveLanguage = new Object() ;
+FCKLanguageManager.ActiveLanguage.Code = FCKLanguageManager.GetActiveLanguage() ;
+FCKLanguageManager.ActiveLanguage.Name = FCKLanguageManager.AvailableLanguages[ FCKLanguageManager.ActiveLanguage.Code ] ;
+
+FCK.Language = FCKLanguageManager ;
+
+// Load the language file and start the editor.
+LoadLanguageFile() ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcknamespace.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcknamespace.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcknamespace.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,27 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcknamespace.js
+ * This file declares the namespace (object holder) where the common editor
+ * objects and classes are defined.
+ * The namespace is located in the page the editor is running on, so it is
+ * shared by all editor instances.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var NS ;
+
+if ( !( NS = window.parent.__FCKeditorNS ) )
+ NS = window.parent.__FCKeditorNS = new Object() ;
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckplugins.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckplugins.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckplugins.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,44 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckplugins.js
+ * Defines the FCKPlugins object that is responsible for loading the Plugins.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKPlugins = FCK.Plugins = new Object() ;
+FCKPlugins.ItemsCount = 0 ;
+FCKPlugins.Loaded = false ;
+FCKPlugins.Items = new Object() ;
+
+// Set the defined plugins scripts paths.
+for ( var i = 0 ; i < FCKConfig.Plugins.Items.length ; i++ )
+{
+ var oItem = FCKConfig.Plugins.Items[i] ;
+ FCKPlugins.Items[ oItem[0] ] = new FCKPlugin( oItem[0], oItem[1], oItem[2] ) ;
+ FCKPlugins.ItemsCount++ ;
+}
+
+FCKPlugins.Load = function()
+{
+ // Load all items.
+ for ( var s in this.Items )
+ this.Items[s].Load() ;
+
+ // Mark as loaded.
+ this.Loaded = true ;
+
+ // This is a self destroyable function (must be called once).
+ FCKPlugins.Load = null ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckregexlib.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckregexlib.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckregexlib.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,92 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckregexlib.js
+ * These are some Regular Expresions used by the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKRegexLib = new Object() ;
+
+// This is the Regular expression used by the SetHTML method for the "'" entity.
+FCKRegexLib.AposEntity = /'/gi ;
+
+// Used by the Styles combo to identify styles that can't be applied to text.
+FCKRegexLib.ObjectElements = /^(?:IMG|TABLE|TR|TD|INPUT|SELECT|TEXTAREA|HR|OBJECT)$/i ;
+
+// START iCM MODIFICATIONS
+// Added TABLE and CAPTION to the block elements for ENTER key handling
+// Block Elements.
+/*
+FCKRegexLib.BlockElements = /^(?:P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TD|TABLE|CAPTION)$/i ;
+*/
+// END iCM MODIFICATIONS
+FCKRegexLib.BlockElements = /^(?:P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TD)$/i ;
+
+// Elements marked as empty "Empty" in the XHTML DTD.
+FCKRegexLib.EmptyElements = /^(?:BASE|META|LINK|HR|BR|PARAM|IMG|AREA|INPUT)$/i ;
+
+// List all named commands (commands that can be interpreted by the browser "execCommand" method.
+FCKRegexLib.NamedCommands = /^(?:Cut|Copy|Paste|Print|SelectAll|RemoveFormat|Unlink|Undo|Redo|Bold|Italic|Underline|StrikeThrough|Subscript|Superscript|JustifyLeft|JustifyCenter|JustifyRight|JustifyFull|Outdent|Indent|InsertOrderedList|InsertUnorderedList|InsertHorizontalRule)$/i ;
+
+FCKRegexLib.BodyContents = /([\s\S]*\<body[^\>]*\>)([\s\S]*)(\<\/body\>[\s\S]*)/i ;
+
+// Temporary text used to solve some browser specific limitations.
+FCKRegexLib.ToReplace = /___fcktoreplace:([\w]+)/ig ;
+
+// Get the META http-equiv attribute from the tag.
+FCKRegexLib.MetaHttpEquiv = /http-equiv\s*=\s*["']?([^"' ]+)/i ;
+
+FCKRegexLib.HasBaseTag = /<base /i ;
+
+FCKRegexLib.HeadOpener = /<head\s?[^>]*>/i ;
+FCKRegexLib.HeadCloser = /<\/head\s*>/i ;
+
+FCKRegexLib.TableBorderClass = /\s*FCK__ShowTableBorders\s*/ ;
+
+// Validate element names.
+FCKRegexLib.ElementName = /^[A-Za-z_:][\w.-:]*$/ ;
+
+// Used in conjuction with the FCKConfig.ForceSimpleAmpersand configuration option.
+FCKRegexLib.ForceSimpleAmpersand = /___FCKAmp___/g ;
+
+// Get the closing parts of the tags with no closing tags, like <br/>... gets the "/>" part.
+FCKRegexLib.SpaceNoClose = /\/>/g ;
+
+FCKRegexLib.EmptyParagraph = /^<(p|div)>\s*<\/\1>$/i ;
+
+FCKRegexLib.TagBody = /></ ;
+
+// START iCM MODIFICATIONS
+/*
+// HTML table cell elements
+FCKRegexLib.TableCellElements = /^(?:TD|TH)$/i ;
+// Block elements that can themselves contain block elements - used within the FCKTools.SplitNode
+// function. I know BODY isn't really a block element but means can do the check in one hit.
+FCKRegexLib.SpecialBlockElements = /^(?:BODY|TH|TD|CAPTION)$/i ;
+// Block elements that can validly contain a nested table. Ditto above for the BODY entry.
+FCKRegexLib.TableBlockElements = /^(?:BODY|DIV|LI|TD|TH)$/i ;
+// List elements
+FCKRegexLib.ListElements = /^(?:OL|UL)$/i ;
+// Used to remove empty tags after the split process used on ENTER key press
+FCKRegexLib.EmptyElement = /<(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|SPAN|A)[^\>]*>\s*<\/\1>/gi ;
+*/
+// END iCM MODIFICATIONS
+
+FCKRegexLib.StrongOpener = /<STRONG([ \>])/gi ;
+FCKRegexLib.StrongCloser = /<\/STRONG>/gi ;
+FCKRegexLib.EmOpener = /<EM([ \>])/gi ;
+FCKRegexLib.EmCloser = /<\/EM>/gi ;
+
+FCKRegexLib.GeckoEntitiesMarker = /#\?-\:/g ;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckscriptloader.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckscriptloader.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckscriptloader.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,156 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckscriptloader.js
+ * Defines the FCKScriptLoader object that is used to dynamically load
+ * scripts in the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// This object is used to download scripts and css files sequentialy.
+// A file download is not started until the previous file was not completelly
+// downloaded.
+var FCKScriptLoader = new Object() ;
+FCKScriptLoader.IsLoading = false ;
+FCKScriptLoader.Queue = new Array() ;
+
+// Adds a script or css to the queue.
+FCKScriptLoader.AddScript = function( scriptPath )
+{
+ FCKScriptLoader.Queue[ FCKScriptLoader.Queue.length ] = scriptPath ;
+
+ if ( !this.IsLoading )
+ this.CheckQueue() ;
+}
+
+// Checks the queue to see if there is something to load.
+// This function should not be called by code. It's a internal function
+// that's called recursively.
+FCKScriptLoader.CheckQueue = function()
+{
+ // Check if the queue is not empty.
+ if ( this.Queue.length > 0 )
+ {
+ this.IsLoading = true ;
+
+ // Get the first item in the queue
+ var sScriptPath = this.Queue[0] ;
+
+ // Removes the first item from the queue
+ var oTempArray = new Array() ;
+ for ( i = 1 ; i < this.Queue.length ; i++ )
+ oTempArray[ i - 1 ] = this.Queue[ i ] ;
+ this.Queue = oTempArray ;
+
+ this.LoadFile( sScriptPath ) ;
+ }
+ else
+ {
+ this.IsLoading = false ;
+
+ // Call the "OnEmpty" event.
+ if ( this.OnEmpty )
+ this.OnEmpty() ;
+ }
+}
+
+if ( FCKBrowserInfo.IsSafari )
+{
+ FCKScriptLoader.LoadFile = function( filePath )
+ {
+ if ( filePath.lastIndexOf( '.css' ) > 0 )
+ {
+ this.CheckQueue() ;
+ return ;
+ }
+
+ var oXmlRequest = new XMLHttpRequest() ;
+
+ // Load the script synchronously.
+ oXmlRequest.open( "GET", filePath, false ) ;
+ oXmlRequest.send( null ) ;
+
+ // Evaluate the script.
+ if ( oXmlRequest.status == 200 )
+ {
+ try
+ {
+ eval( oXmlRequest.responseText ) ;
+ }
+ catch ( e )
+ {
+ alert( 'Error parsing ' + filePath + ': ' + e.message ) ;
+ }
+ }
+ else
+ alert( 'Error loading ' + filePath ) ;
+
+ this.CheckQueue() ;
+ }
+}
+else
+{
+ FCKScriptLoader.LoadFile = function( filePath )
+ {
+ //window.status = ( 'Loading ' + filePath + '...' ) ;
+
+ // Dynamically load the file (it can be a CSS or a JS)
+ var e ;
+
+ // If is a CSS
+ if ( filePath.lastIndexOf( '.css' ) > 0 )
+ {
+ e = document.createElement( 'LINK' ) ;
+ e.rel = 'stylesheet' ;
+ e.type = 'text/css' ;
+ }
+ // It is a JS
+ else
+ {
+ e = document.createElement( "script" ) ;
+ e.type = "text/javascript" ;
+ }
+
+ // Add the new object to the HEAD.
+ document.getElementsByTagName("head")[0].appendChild( e ) ;
+
+ // Start downloading it.
+ if ( e.tagName == 'LINK' )
+ {
+ // IE must wait for the file to be downloaded.
+ if ( FCKBrowserInfo.IsIE )
+ e.onload = FCKScriptLoader_OnLoad ;
+ // Gecko doens't fire any event when the CSS is loaded, so we
+ // can't wait for it.
+ else
+ FCKScriptLoader.CheckQueue() ;
+
+ e.href = filePath ;
+ }
+ else
+ {
+ // Gecko fires the "onload" event and IE fires "onreadystatechange"
+ e.onload = e.onreadystatechange = FCKScriptLoader_OnLoad ;
+ e.src = filePath ;
+ }
+ }
+
+ function FCKScriptLoader_OnLoad()
+ {
+ // Gecko doesn't have a "readyState" property
+ if ( this.tagName == 'LINK' || !this.readyState || this.readyState == 'loaded' )
+ // Load the next script available in the queue
+ FCKScriptLoader.CheckQueue() ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,22 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckselection.js
+ * Active selection functions.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKSelection = new Object() ;
+
+FCK.Selection = FCKSelection ;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,164 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckselection_gecko.js
+ * Active selection functions. (Gecko specific implementation)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Get the selection type (like document.select.type in IE).
+FCKSelection.GetType = function()
+{
+// if ( ! this._Type )
+// {
+ // By default set the type to "Text".
+ this._Type = 'Text' ;
+
+ // Check if the actual selection is a Control (IMG, TABLE, HR, etc...).
+ var oSel = FCK.EditorWindow.getSelection() ;
+ if ( oSel && oSel.rangeCount == 1 )
+ {
+ var oRange = oSel.getRangeAt(0) ;
+ if ( oRange.startContainer == oRange.endContainer && (oRange.endOffset - oRange.startOffset) == 1 )
+ this._Type = 'Control' ;
+ }
+// }
+ return this._Type ;
+}
+
+// Retrieves the selected element (if any), just in the case that a single
+// element (object like and image or a table) is selected.
+FCKSelection.GetSelectedElement = function()
+{
+ if ( this.GetType() == 'Control' )
+ {
+ var oSel = FCK.EditorWindow.getSelection() ;
+ return oSel.anchorNode.childNodes[ oSel.anchorOffset ] ;
+ }
+}
+
+FCKSelection.GetParentElement = function()
+{
+ if ( this.GetType() == 'Control' )
+ return FCKSelection.GetSelectedElement().parentElement ;
+ else
+ {
+ var oSel = FCK.EditorWindow.getSelection() ;
+ if ( oSel )
+ {
+ var oNode = oSel.anchorNode ;
+
+ while ( oNode && oNode.nodeType != 1 )
+ oNode = oNode.parentNode ;
+
+ return oNode ;
+ }
+ }
+}
+
+FCKSelection.SelectNode = function( element )
+{
+ FCK.Focus() ;
+
+ var oRange = FCK.EditorDocument.createRange() ;
+ oRange.selectNode( element ) ;
+
+ var oSel = FCK.EditorWindow.getSelection() ;
+ oSel.removeAllRanges() ;
+ oSel.addRange( oRange ) ;
+}
+
+FCKSelection.Collapse = function( toStart )
+{
+ var oSel = FCK.EditorWindow.getSelection() ;
+
+ if ( toStart == null || toStart === true )
+ oSel.collapseToStart() ;
+ else
+ oSel.collapseToEnd() ;
+}
+
+// The "nodeTagName" parameter must be Upper Case.
+FCKSelection.HasAncestorNode = function( nodeTagName )
+{
+ var oContainer = this.GetSelectedElement() ;
+ if ( ! oContainer && FCK.EditorWindow )
+ {
+ try { oContainer = FCK.EditorWindow.getSelection().getRangeAt(0).startContainer ; }
+ catch(e){}
+ }
+
+ while ( oContainer )
+ {
+ if ( oContainer.nodeType == 1 && oContainer.tagName == nodeTagName ) return true ;
+ oContainer = oContainer.parentNode ;
+ }
+
+ return false ;
+}
+
+// The "nodeTagName" parameter must be Upper Case.
+FCKSelection.MoveToAncestorNode = function( nodeTagName )
+{
+ var oNode ;
+
+ var oContainer = this.GetSelectedElement() ;
+ if ( ! oContainer )
+ oContainer = FCK.EditorWindow.getSelection().getRangeAt(0).startContainer ;
+
+ while ( oContainer )
+ {
+ if ( oContainer.tagName == nodeTagName )
+ return oContainer ;
+ oContainer = oContainer.parentNode ;
+ }
+ return null ;
+}
+
+FCKSelection.Delete = function()
+{
+ // Gets the actual selection.
+ var oSel = FCK.EditorWindow.getSelection() ;
+
+ // Deletes the actual selection contents.
+ for ( var i = 0 ; i < oSel.rangeCount ; i++ )
+ {
+ oSel.getRangeAt(i).deleteContents() ;
+ }
+
+ return oSel ;
+}
+// START iCM MODIFICATIONS
+/*
+// Move the cursor position (the selection point) to a specific offset within a specific node
+// If no offset specified, the start of the node is assumed
+FCKSelection.SetCursorPosition = function ( oNode, nOffset )
+{
+ if ( typeof nOffset == "undefined" ) nOffset = 0 ;
+
+ var oSel = FCK.EditorWindow.getSelection() ;
+ var oRange = FCK.EditorDocument.createRange() ;
+
+ oRange.setStart( oNode, nOffset ) ;
+ oRange.collapse( true ) ;
+
+ oSel.removeAllRanges() ;
+ oSel.addRange( oRange );
+
+ if ( oNode.scrollIntoView )
+ oNode.scrollIntoView( false );
+}
+*/
+// END iCM MODIFICATIONS
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckselection_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,150 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckselection_ie.js
+ * Active selection functions. (IE specific implementation)
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Get the selection type.
+FCKSelection.GetType = function()
+{
+ return FCK.EditorDocument.selection.type ;
+}
+
+// Retrieves the selected element (if any), just in the case that a single
+// element (object like and image or a table) is selected.
+FCKSelection.GetSelectedElement = function()
+{
+ if ( this.GetType() == 'Control' )
+ {
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+
+ if ( oRange && oRange.item )
+ return FCK.EditorDocument.selection.createRange().item(0) ;
+ }
+}
+
+FCKSelection.GetParentElement = function()
+{
+ switch ( this.GetType() )
+ {
+ case 'Control' :
+ return FCKSelection.GetSelectedElement().parentElement ;
+ case 'None' :
+ return ;
+ default :
+ return FCK.EditorDocument.selection.createRange().parentElement() ;
+ }
+}
+
+FCKSelection.SelectNode = function( node )
+{
+ FCK.Focus() ;
+ FCK.EditorDocument.selection.empty() ;
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ oRange.moveToElementText( node ) ;
+ oRange.select() ;
+}
+
+FCKSelection.Collapse = function( toStart )
+{
+ FCK.Focus() ;
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ oRange.collapse( toStart == null || toStart === true ) ;
+ oRange.select() ;
+}
+
+// The "nodeTagName" parameter must be Upper Case.
+FCKSelection.HasAncestorNode = function( nodeTagName )
+{
+ var oContainer ;
+
+ if ( FCK.EditorDocument.selection.type == "Control" )
+ {
+ oContainer = this.GetSelectedElement() ;
+ }
+ else
+ {
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ oContainer = oRange.parentElement() ;
+ }
+
+ while ( oContainer )
+ {
+ if ( oContainer.tagName == nodeTagName ) return true ;
+ oContainer = oContainer.parentNode ;
+ }
+
+ return false ;
+}
+
+// The "nodeTagName" parameter must be UPPER CASE.
+FCKSelection.MoveToAncestorNode = function( nodeTagName )
+{
+ var oNode ;
+
+ if ( FCK.EditorDocument.selection.type == "Control" )
+ {
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ for ( i = 0 ; i < oRange.length ; i++ )
+ {
+ if (oRange(i).parentNode)
+ {
+ oNode = oRange(i).parentNode ;
+ break ;
+ }
+ }
+ }
+ else
+ {
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ oNode = oRange.parentElement() ;
+ }
+
+ while ( oNode && oNode.nodeName != nodeTagName )
+ oNode = oNode.parentNode ;
+
+ return oNode ;
+}
+
+FCKSelection.Delete = function()
+{
+ // Gets the actual selection.
+ var oSel = FCK.EditorDocument.selection ;
+
+ // Deletes the actual selection contents.
+ if ( oSel.type.toLowerCase() != "none" )
+ {
+ oSel.clear() ;
+ }
+
+ return oSel ;
+}
+// START iCM Modifications
+/*
+// Move the cursor position (the selection point) to a specific offset within a specific node
+// If no offset specified, the start of the node is assumed
+FCKSelection.SetCursorPosition = function ( oNode, nOffset )
+{
+ if ( typeof nOffset == "undefined" ) nOffset = 0 ;
+
+ FCK.Selection.SelectNode( oNode ) ; // Doesn't handle offsets currently but offset always zero at mo
+ FCK.Selection.Collapse( true ) ;
+
+ oNode.scrollIntoView( false );
+}
+*/
+// END iCM Modifications
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,357 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktablehandler.js
+ * Manage table operations.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKTableHandler = new Object() ;
+
+FCKTableHandler.InsertRow = function()
+{
+ // Get the row where the selection is placed in.
+ var oRow = FCKSelection.MoveToAncestorNode("TR") ;
+ if ( !oRow ) return ;
+
+ // Create a clone of the row.
+ var oNewRow = oRow.cloneNode( true ) ;
+
+ // Insert the new row (copy) before of it.
+ oRow.parentNode.insertBefore( oNewRow, oRow ) ;
+
+ // Clean the row (it seems that the new row has been added after it).
+ FCKTableHandler.ClearRow( oRow ) ;
+}
+
+FCKTableHandler.DeleteRows = function( row )
+{
+ // If no row has been passed as a parameer,
+ // then get the row where the selection is placed in.
+ if ( !row )
+ row = FCKSelection.MoveToAncestorNode("TR") ;
+ if ( !row ) return ;
+
+ // Get the row's table.
+ var oTable = FCKTools.GetElementAscensor( row, 'TABLE' ) ;
+
+ // If just one row is available then delete the entire table.
+ if ( oTable.rows.length == 1 )
+ {
+ FCKTableHandler.DeleteTable( oTable ) ;
+ return ;
+ }
+
+ // Delete the row.
+ row.parentNode.removeChild( row ) ;
+}
+
+FCKTableHandler.DeleteTable = function( table )
+{
+ // If no table has been passed as a parameer,
+ // then get the table where the selection is placed in.
+ if ( !table )
+ table = FCKSelection.MoveToAncestorNode("TABLE") ;
+ if ( !table ) return ;
+
+ // Delete the table.
+ table.parentNode.removeChild( table ) ;
+}
+
+FCKTableHandler.InsertColumn = function()
+{
+ // Get the cell where the selection is placed in.
+ var oCell = FCKSelection.MoveToAncestorNode("TD") ;
+ if ( !oCell )
+ oCell = FCKSelection.MoveToAncestorNode("TH") ;
+
+ if ( !oCell ) return ;
+
+ // Get the cell's table.
+ var oTable = FCKTools.GetElementAscensor( oCell, 'TABLE' ) ;
+
+ // Get the index of the column to be created (based on the cell).
+ var iIndex = oCell.cellIndex + 1 ;
+
+ // Loop throw all rows available in the table.
+ for ( var i = 0 ; i < oTable.rows.length ; i++ )
+ {
+ // Get the row.
+ var oRow = oTable.rows[i] ;
+
+ // If the row doens't have enought cells, ignore it.
+ if ( oRow.cells.length < iIndex )
+ continue ;
+
+ oCell = oRow.cells[iIndex-1].cloneNode(false) ;
+
+ if ( FCKBrowserInfo.IsGecko )
+ oCell.innerHTML = FCKBrowserInfo.IsGecko ? GECKO_BOGUS : '' ;
+
+ // Get the cell that is placed in the new cell place.
+ var oBaseCell = oRow.cells[iIndex] ;
+
+ // If the cell is available (we are not in the last cell of the row).
+ if ( oBaseCell )
+ oRow.insertBefore( oCell, oBaseCell ) ; // Insert the new cell just before of it.
+ else
+ oRow.appendChild( oCell ) ; // Append the cell at the end of the row.
+ }
+}
+
+FCKTableHandler.DeleteColumns = function()
+{
+ // Get the cell where the selection is placed in.
+ var oCell = FCKSelection.MoveToAncestorNode("TD") ;
+ if ( !oCell ) return ;
+
+ // Get the cell's table.
+ var oTable = FCKTools.GetElementAscensor( oCell, 'TABLE' ) ;
+
+ // Get the cell index.
+ var iIndex = oCell.cellIndex ;
+
+ // Loop throw all rows (from down to up, because it's possible that some
+ // rows will be deleted).
+ for ( var i = oTable.rows.length - 1 ; i >= 0 ; i-- )
+ {
+ // Get the row.
+ var oRow = oTable.rows[i] ;
+
+ // If the cell to be removed is the first one and the row has just one cell.
+ if ( iIndex == 0 && oRow.cells.length == 1 )
+ {
+ // Remove the entire row.
+ FCKTableHandler.DeleteRows( oRow ) ;
+ continue ;
+ }
+
+ // If the cell to be removed exists the delete it.
+ if ( oRow.cells[iIndex] )
+ oRow.removeChild( oRow.cells[iIndex] ) ;
+ }
+}
+
+FCKTableHandler.InsertCell = function( cell )
+{
+ // Get the cell where the selection is placed in.
+ var oCell = cell ? cell : FCKSelection.MoveToAncestorNode("TD") ;
+ if ( !oCell ) return ;
+
+ // Create the new cell element to be added.
+ var oNewCell = FCK.EditorDocument.createElement("TD");
+ if ( FCKBrowserInfo.IsGecko )
+ oNewCell.innerHTML = GECKO_BOGUS ;
+// oNewCell.innerHTML = " " ;
+
+ // If it is the last cell in the row.
+ if ( oCell.cellIndex == oCell.parentNode.cells.lenght - 1 )
+ {
+ // Add the new cell at the end of the row.
+ oCell.parentNode.appendChild( oNewCell ) ;
+ }
+ else
+ {
+ // Add the new cell before the next cell (after the active one).
+ oCell.parentNode.insertBefore( oNewCell, oCell.nextSibling ) ;
+ }
+
+ return oNewCell ;
+}
+
+FCKTableHandler.DeleteCell = function( cell )
+{
+ // If this is the last cell in the row.
+ if ( cell.parentNode.cells.length == 1 )
+ {
+ // Delete the entire row.
+ FCKTableHandler.DeleteRows( FCKTools.GetElementAscensor( cell, 'TR' ) ) ;
+ return ;
+ }
+
+ // Delete the cell from the row.
+ cell.parentNode.removeChild( cell ) ;
+}
+
+FCKTableHandler.DeleteCells = function()
+{
+ var aCells = FCKTableHandler.GetSelectedCells() ;
+
+ for ( var i = aCells.length - 1 ; i >= 0 ; i-- )
+ {
+ FCKTableHandler.DeleteCell( aCells[i] ) ;
+ }
+}
+
+FCKTableHandler.MergeCells = function()
+{
+ // Get all selected cells.
+ var aCells = FCKTableHandler.GetSelectedCells() ;
+
+ // At least 2 cells must be selected.
+ if ( aCells.length < 2 )
+ return ;
+
+ // The merge can occour only if the selected cells are from the same row.
+ if ( aCells[0].parentNode != aCells[aCells.length-1].parentNode )
+ return ;
+
+ // Calculate the new colSpan for the first cell.
+ var iColSpan = isNaN( aCells[0].colSpan ) ? 1 : aCells[0].colSpan ;
+
+ var sHtml = '' ;
+
+ for ( var i = aCells.length - 1 ; i > 0 ; i-- )
+ {
+ iColSpan += isNaN( aCells[i].colSpan ) ? 1 : aCells[i].colSpan ;
+
+ // Append the HTML of each cell.
+ sHtml = aCells[i].innerHTML + sHtml ;
+
+ // Delete the cell.
+ FCKTableHandler.DeleteCell( aCells[i] ) ;
+ }
+
+ // Set the innerHTML of the remaining cell (the first one).
+ aCells[0].colSpan = iColSpan ;
+ aCells[0].innerHTML += sHtml ;
+}
+
+FCKTableHandler.SplitCell = function()
+{
+ // Check that just one cell is selected, otherwise return.
+ var aCells = FCKTableHandler.GetSelectedCells() ;
+ if ( aCells.length != 1 )
+ return ;
+
+ var aMap = this._CreateTableMap( aCells[0].parentNode.parentNode ) ;
+ var iCellIndex = FCKTableHandler._GetCellIndexSpan( aMap, aCells[0].parentNode.rowIndex , aCells[0] ) ;
+
+ var aCollCells = this._GetCollumnCells( aMap, iCellIndex ) ;
+
+ for ( var i = 0 ; i < aCollCells.length ; i++ )
+ {
+ if ( aCollCells[i] == aCells[0] )
+ {
+ var oNewCell = this.InsertCell( aCells[0] ) ;
+ if ( !isNaN( aCells[0].rowSpan ) && aCells[0].rowSpan > 1 )
+ oNewCell.rowSpan = aCells[0].rowSpan ;
+ }
+ else
+ {
+ if ( isNaN( aCollCells[i].colSpan ) )
+ aCollCells[i].colSpan = 2 ;
+ else
+ aCollCells[i].colSpan += 1 ;
+ }
+ }
+}
+
+// Get the cell index from a TableMap.
+FCKTableHandler._GetCellIndexSpan = function( tableMap, rowIndex, cell )
+{
+ if ( tableMap.length < rowIndex + 1 )
+ return null ;
+
+ var oRow = tableMap[ rowIndex ] ;
+
+ for ( var c = 0 ; c < oRow.length ; c++ )
+ {
+ if ( oRow[c] == cell )
+ return c ;
+ }
+
+ return null ;
+}
+
+// Get the cells available in a collumn of a TableMap.
+FCKTableHandler._GetCollumnCells = function( tableMap, collumnIndex )
+{
+ var aCollCells = new Array() ;
+
+ for ( var r = 0 ; r < tableMap.length ; r++ )
+ {
+ var oCell = tableMap[r][collumnIndex] ;
+ if ( oCell && ( aCollCells.length == 0 || aCollCells[ aCollCells.length - 1 ] != oCell ) )
+ aCollCells[ aCollCells.length ] = oCell ;
+ }
+
+ return aCollCells ;
+}
+
+// This function is quite hard to explain. It creates a matrix representing all cells in a table.
+// The difference here is that the "spanned" cells (colSpan and rowSpan) are duplicated on the matrix
+// cells that are "spanned". For example, a row with 3 cells where the second cell has colSpan=2 and rowSpan=3
+// will produce a bi-dimensional matrix with the following values (representing the cells):
+// Cell1, Cell2, Cell2, Cell 3
+// Cell4, Cell2, Cell2, Cell 5
+FCKTableHandler._CreateTableMap = function( table )
+{
+ var aRows = table.rows ;
+
+ // Row and Collumn counters.
+ var r = -1 ;
+
+ var aMap = new Array() ;
+
+ for ( var i = 0 ; i < aRows.length ; i++ )
+ {
+ r++ ;
+ if ( !aMap[r] )
+ aMap[r] = new Array() ;
+
+ var c = -1 ;
+
+ for ( var j = 0 ; j < aRows[i].cells.length ; j++ )
+ {
+ var oCell = aRows[i].cells[j] ;
+
+ c++ ;
+ while ( aMap[r][c] )
+ c++ ;
+
+ var iColSpan = isNaN( oCell.colSpan ) ? 1 : oCell.colSpan ;
+ var iRowSpan = isNaN( oCell.rowSpan ) ? 1 : oCell.rowSpan ;
+
+ for ( var rs = 0 ; rs < iRowSpan ; rs++ )
+ {
+ if ( !aMap[r + rs] )
+ aMap[r + rs] = new Array() ;
+
+ for ( var cs = 0 ; cs < iColSpan ; cs++ )
+ {
+ aMap[r + rs][c + cs] = aRows[i].cells[j] ;
+ }
+ }
+
+ c += iColSpan - 1 ;
+ }
+ }
+ return aMap ;
+}
+
+FCKTableHandler.ClearRow = function( tr )
+{
+ // Get the array of row's cells.
+ var aCells = tr.cells ;
+
+ // Replace the contents of each cell with "nothing".
+ for ( var i = 0 ; i < aCells.length ; i++ )
+ {
+ if ( FCKBrowserInfo.IsGecko )
+ aCells[i].innerHTML = GECKO_BOGUS ;
+ else
+ aCells[i].innerHTML = '' ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,48 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktablehandler_gecko.js
+ * Manage table operations (IE specific).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKTableHandler.GetSelectedCells = function()
+{
+ var aCells = new Array() ;
+
+ var oSelection = FCK.EditorWindow.getSelection() ;
+
+ // If the selection is a text.
+ if ( oSelection.rangeCount == 1 && oSelection.anchorNode.nodeType == 3 )
+ {
+ var oParent = FCKTools.GetElementAscensor( oSelection.anchorNode, 'TD' ) ;
+
+ if ( oParent )
+ {
+ aCells[0] = oParent ;
+ return aCells ;
+ }
+ }
+
+ for ( var i = 0 ; i < oSelection.rangeCount ; i++ )
+ {
+ var oRange = oSelection.getRangeAt(i) ;
+ var oCell = oRange.startContainer.childNodes[ oRange.startOffset ] ;
+
+ if ( oCell.tagName == 'TD' )
+ aCells[aCells.length] = oCell ;
+ }
+
+ return aCells ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktablehandler_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,53 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktablehandler_ie.js
+ * Manage table operations (IE specific).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKTableHandler.GetSelectedCells = function()
+{
+ var aCells = new Array() ;
+
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ var oParent = oRange.parentElement() ;
+
+ if ( oParent && oParent.tagName == "TD" )
+ aCells[0] = oParent ;
+ else
+ {
+ var oParent = FCKSelection.MoveToAncestorNode( "TABLE" ) ;
+
+ if ( oParent )
+ {
+ // Loops throw all cells checking if the cell is, or part of it, is inside the selection
+ // and then add it to the selected cells collection.
+ for ( var i = 0 ; i < oParent.cells.length ; i++ )
+ {
+ var oCellRange = FCK.EditorDocument.selection.createRange() ;
+ oCellRange.moveToElementText( oParent.cells[i] ) ;
+
+ if ( oRange.inRange( oCellRange )
+ || ( oRange.compareEndPoints('StartToStart',oCellRange) >= 0 && oRange.compareEndPoints('StartToEnd',oCellRange) <= 0 )
+ || ( oRange.compareEndPoints('EndToStart',oCellRange) >= 0 && oRange.compareEndPoints('EndToEnd',oCellRange) <= 0 ) )
+ {
+ aCells[aCells.length] = oParent.cells[i] ;
+ }
+ }
+ }
+ }
+
+ return aCells ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbaritems.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbaritems.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbaritems.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,117 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbaritems.js
+ * Toolbar items definitions.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarItems = new Object() ;
+FCKToolbarItems.LoadedItems = new Object() ;
+
+FCKToolbarItems.RegisterItem = function( itemName, item )
+{
+ this.LoadedItems[ itemName ] = item ;
+}
+
+FCKToolbarItems.GetItem = function( itemName )
+{
+ var oItem = FCKToolbarItems.LoadedItems[ itemName ] ;
+
+ if ( oItem )
+ return oItem ;
+
+ switch ( itemName )
+ {
+ case 'Source' : oItem = new FCKToolbarButton( 'Source' , FCKLang.Source, null, FCK_TOOLBARITEM_ICONTEXT, true, true ) ; break ;
+ case 'DocProps' : oItem = new FCKToolbarButton( 'DocProps' , FCKLang.DocProps ) ; break ;
+ case 'Templates' : oItem = new FCKToolbarButton( 'Templates' , FCKLang.Templates ) ; break ;
+ case 'Save' : oItem = new FCKToolbarButton( 'Save' , FCKLang.Save, null, null, true ) ; break ;
+ case 'NewPage' : oItem = new FCKToolbarButton( 'NewPage' , FCKLang.NewPage, null, null, true ) ; break ;
+ case 'Preview' : oItem = new FCKToolbarButton( 'Preview' , FCKLang.Preview, null, null, true ) ; break ;
+ case 'About' : oItem = new FCKToolbarButton( 'About' , FCKLang.About, null, null, true ) ; break ;
+
+ case 'Cut' : oItem = new FCKToolbarButton( 'Cut' , FCKLang.Cut, null, null, false, true ) ; break ;
+ case 'Copy' : oItem = new FCKToolbarButton( 'Copy' , FCKLang.Copy, null, null, false, true ) ; break ;
+ case 'Paste' : oItem = new FCKToolbarButton( 'Paste' , FCKLang.Paste, null, null, false, true ) ; break ;
+ case 'PasteText' : oItem = new FCKToolbarButton( 'PasteText' , FCKLang.PasteText, null, null, false, true ) ; break ;
+ case 'PasteWord' : oItem = new FCKToolbarButton( 'PasteWord' , FCKLang.PasteWord, null, null, false, true ) ; break ;
+ case 'Print' : oItem = new FCKToolbarButton( 'Print' , FCKLang.Print, null, null, false, true ) ; break ;
+ case 'SpellCheck' : oItem = new FCKToolbarButton( 'SpellCheck', FCKLang.SpellCheck ) ; break ;
+ case 'Undo' : oItem = new FCKToolbarButton( 'Undo' , FCKLang.Undo, null, null, false, true ) ; break ;
+ case 'Redo' : oItem = new FCKToolbarButton( 'Redo' , FCKLang.Redo, null, null, false, true ) ; break ;
+ case 'SelectAll' : oItem = new FCKToolbarButton( 'SelectAll' , FCKLang.SelectAll ) ; break ;
+ case 'RemoveFormat' : oItem = new FCKToolbarButton( 'RemoveFormat', FCKLang.RemoveFormat, null, null, false, true ) ; break ;
+
+ case 'Bold' : oItem = new FCKToolbarButton( 'Bold' , FCKLang.Bold, null, null, false, true ) ; break ;
+ case 'Italic' : oItem = new FCKToolbarButton( 'Italic' , FCKLang.Italic, null, null, false, true ) ; break ;
+ case 'Underline' : oItem = new FCKToolbarButton( 'Underline' , FCKLang.Underline, null, null, false, true ) ; break ;
+ case 'StrikeThrough' : oItem = new FCKToolbarButton( 'StrikeThrough' , FCKLang.StrikeThrough, null, null, false, true ) ; break ;
+ case 'Subscript' : oItem = new FCKToolbarButton( 'Subscript' , FCKLang.Subscript, null, null, false, true ) ; break ;
+ case 'Superscript' : oItem = new FCKToolbarButton( 'Superscript' , FCKLang.Superscript, null, null, false, true ) ; break ;
+
+ case 'OrderedList' : oItem = new FCKToolbarButton( 'InsertOrderedList' , FCKLang.NumberedListLbl, FCKLang.NumberedList, null, false, true ) ; break ;
+ case 'UnorderedList' : oItem = new FCKToolbarButton( 'InsertUnorderedList' , FCKLang.BulletedListLbl, FCKLang.BulletedList, null, false, true ) ; break ;
+ case 'Outdent' : oItem = new FCKToolbarButton( 'Outdent' , FCKLang.DecreaseIndent, null, null, false, true ) ; break ;
+ case 'Indent' : oItem = new FCKToolbarButton( 'Indent' , FCKLang.IncreaseIndent, null, null, false, true ) ; break ;
+
+ case 'Link' : oItem = new FCKToolbarButton( 'Link' , FCKLang.InsertLinkLbl, FCKLang.InsertLink, null, false, true ) ; break ;
+ case 'Unlink' : oItem = new FCKToolbarButton( 'Unlink' , FCKLang.RemoveLink, null, null, false, true ) ; break ;
+ case 'Anchor' : oItem = new FCKToolbarButton( 'Anchor' , FCKLang.Anchor ) ; break ;
+
+ case 'Image' : oItem = new FCKToolbarButton( 'Image' , FCKLang.InsertImageLbl, FCKLang.InsertImage ) ; break ;
+ case 'Flash' : oItem = new FCKToolbarButton( 'Flash' , FCKLang.InsertFlashLbl, FCKLang.InsertFlash ) ; break ;
+ case 'Table' : oItem = new FCKToolbarButton( 'Table' , FCKLang.InsertTableLbl, FCKLang.InsertTable ) ; break ;
+ case 'SpecialChar' : oItem = new FCKToolbarButton( 'SpecialChar' , FCKLang.InsertSpecialCharLbl, FCKLang.InsertSpecialChar ) ; break ;
+ case 'Smiley' : oItem = new FCKToolbarButton( 'Smiley' , FCKLang.InsertSmileyLbl, FCKLang.InsertSmiley ) ; break ;
+ case 'PageBreak' : oItem = new FCKToolbarButton( 'PageBreak' , FCKLang.PageBreakLbl, FCKLang.PageBreak ) ; break ;
+ case 'UniversalKey' : oItem = new FCKToolbarButton( 'UniversalKey' , FCKLang.UniversalKeyboard ) ; break ;
+
+ case 'Rule' : oItem = new FCKToolbarButton( 'InsertHorizontalRule', FCKLang.InsertLineLbl, FCKLang.InsertLine, null, false, true ) ; break ;
+
+ case 'JustifyLeft' : oItem = new FCKToolbarButton( 'JustifyLeft' , FCKLang.LeftJustify, null, null, false, true ) ; break ;
+ case 'JustifyCenter' : oItem = new FCKToolbarButton( 'JustifyCenter' , FCKLang.CenterJustify, null, null, false, true ) ; break ;
+ case 'JustifyRight' : oItem = new FCKToolbarButton( 'JustifyRight' , FCKLang.RightJustify, null, null, false, true ) ; break ;
+ case 'JustifyFull' : oItem = new FCKToolbarButton( 'JustifyFull' , FCKLang.BlockJustify, null, null, false, true ) ; break ;
+
+ case 'Style' : oItem = new FCKToolbarStyleCombo() ; break ;
+ case 'FontName' : oItem = new FCKToolbarFontsCombo() ; break ;
+ case 'FontSize' : oItem = new FCKToolbarFontSizeCombo() ; break ;
+ case 'FontFormat' : oItem = new FCKToolbarFontFormatCombo() ; break ;
+
+ case 'TextColor' : oItem = new FCKToolbarPanelButton( 'TextColor', FCKLang.TextColor ) ; break ;
+ case 'BGColor' : oItem = new FCKToolbarPanelButton( 'BGColor' , FCKLang.BGColor ) ; break ;
+
+ case 'Find' : oItem = new FCKToolbarButton( 'Find' , FCKLang.Find ) ; break ;
+ case 'Replace' : oItem = new FCKToolbarButton( 'Replace' , FCKLang.Replace ) ; break ;
+
+ case 'Form' : oItem = new FCKToolbarButton( 'Form' , FCKLang.Form ) ; break ;
+ case 'Checkbox' : oItem = new FCKToolbarButton( 'Checkbox' , FCKLang.Checkbox ) ; break ;
+ case 'Radio' : oItem = new FCKToolbarButton( 'Radio' , FCKLang.RadioButton ) ; break ;
+ case 'TextField' : oItem = new FCKToolbarButton( 'TextField' , FCKLang.TextField ) ; break ;
+ case 'Textarea' : oItem = new FCKToolbarButton( 'Textarea' , FCKLang.Textarea ) ; break ;
+ case 'HiddenField' : oItem = new FCKToolbarButton( 'HiddenField' , FCKLang.HiddenField ) ; break ;
+ case 'Button' : oItem = new FCKToolbarButton( 'Button' , FCKLang.Button ) ; break ;
+ case 'Select' : oItem = new FCKToolbarButton( 'Select' , FCKLang.SelectionField ) ; break ;
+ case 'ImageButton' : oItem = new FCKToolbarButton( 'ImageButton' , FCKLang.ImageButton ) ; break ;
+
+ default:
+ alert( FCKLang.UnknownToolbarItem.replace( /%1/g, itemName ) ) ;
+ return null ;
+ }
+
+ FCKToolbarItems.LoadedItems[ itemName ] = oItem ;
+
+ return oItem ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbarset.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbarset.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktoolbarset.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,166 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktoolbarset.js
+ * Defines the FCKToolbarSet object that is used to load and draw the
+ * toolbar.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKToolbarSet = FCK.ToolbarSet = new Object() ;
+
+document.getElementById( 'ExpandHandle' ).title = FCKLang.ToolbarExpand ;
+document.getElementById( 'CollapseHandle' ).title = FCKLang.ToolbarCollapse ;
+
+FCKToolbarSet.Toolbars = new Array() ;
+
+// Array of toolbat items that are active only on WYSIWYG mode.
+FCKToolbarSet.ItemsWysiwygOnly = new Array() ;
+
+// Array of toolbar items that are sensitive to the cursor position.
+FCKToolbarSet.ItemsContextSensitive = new Array() ;
+
+FCKToolbarSet.Expand = function()
+{
+ document.getElementById( 'Collapsed' ).style.display = 'none' ;
+ document.getElementById( 'Expanded' ).style.display = '' ;
+
+ if ( ! FCKBrowserInfo.IsIE )
+ {
+ // I had to use "setTimeout" because Gecko was not responding in a right
+ // way when calling window.onresize() directly.
+ window.setTimeout( "window.onresize()", 1 ) ;
+ }
+}
+
+FCKToolbarSet.Collapse = function()
+{
+ document.getElementById( 'Collapsed' ).style.display = '' ;
+ document.getElementById( 'Expanded' ).style.display = 'none' ;
+
+ if ( ! FCKBrowserInfo.IsIE )
+ {
+ // I had to use "setTimeout" because Gecko was not responding in a right
+ // way when calling window.onresize() directly.
+ window.setTimeout( "window.onresize()", 1 ) ;
+ }
+}
+
+FCKToolbarSet.Restart = function()
+{
+ if ( !FCKConfig.ToolbarCanCollapse || FCKConfig.ToolbarStartExpanded )
+ this.Expand() ;
+ else
+ this.Collapse() ;
+
+ document.getElementById( 'CollapseHandle' ).style.display = FCKConfig.ToolbarCanCollapse ? '' : 'none' ;
+}
+
+FCKToolbarSet.Load = function( toolbarSetName )
+{
+ this.DOMElement = document.getElementById( 'eToolbar' ) ;
+
+ var ToolbarSet = FCKConfig.ToolbarSets[toolbarSetName] ;
+
+ if (! ToolbarSet)
+ {
+ alert( FCKLang.UnknownToolbarSet.replace( /%1/g, toolbarSetName ) ) ;
+ return ;
+ }
+
+ this.Toolbars = new Array() ;
+
+ for ( var x = 0 ; x < ToolbarSet.length ; x++ )
+ {
+ var oToolbarItems = ToolbarSet[x] ;
+
+ var oToolbar ;
+
+ if ( typeof( oToolbarItems ) == 'string' )
+ {
+ if ( oToolbarItems == '/' )
+ oToolbar = new FCKToolbarBreak() ;
+ }
+ else
+ {
+ oToolbar = new FCKToolbar() ;
+
+ for ( var j = 0 ; j < oToolbarItems.length ; j++ )
+ {
+ var sItem = oToolbarItems[j] ;
+
+ if ( sItem == '-')
+ oToolbar.AddSeparator() ;
+ else
+ {
+ var oItem = FCKToolbarItems.GetItem( sItem ) ;
+ if ( oItem )
+ {
+ oToolbar.AddItem( oItem ) ;
+
+ if ( !oItem.SourceView )
+ this.ItemsWysiwygOnly[this.ItemsWysiwygOnly.length] = oItem ;
+
+ if ( oItem.ContextSensitive )
+ this.ItemsContextSensitive[this.ItemsContextSensitive.length] = oItem ;
+ }
+ }
+ }
+
+ oToolbar.AddTerminator() ;
+ }
+
+ this.Toolbars[ this.Toolbars.length ] = oToolbar ;
+ }
+}
+
+FCKToolbarSet.RefreshModeState = function()
+{
+ if ( FCK.EditMode == FCK_EDITMODE_WYSIWYG )
+ {
+ // Enable all buttons that are available on WYSIWYG mode only.
+ for ( var i = 0 ; i < FCKToolbarSet.ItemsWysiwygOnly.length ; i++ )
+ FCKToolbarSet.ItemsWysiwygOnly[i].Enable() ;
+
+ // Refresh the buttons state.
+ FCKToolbarSet.RefreshItemsState() ;
+ }
+ else
+ {
+ // Refresh the buttons state.
+ FCKToolbarSet.RefreshItemsState() ;
+
+ // Disable all buttons that are available on WYSIWYG mode only.
+ for ( var i = 0 ; i < FCKToolbarSet.ItemsWysiwygOnly.length ; i++ )
+ FCKToolbarSet.ItemsWysiwygOnly[i].Disable() ;
+ }
+}
+
+FCKToolbarSet.RefreshItemsState = function()
+{
+
+ for ( var i = 0 ; i < FCKToolbarSet.ItemsContextSensitive.length ; i++ )
+ FCKToolbarSet.ItemsContextSensitive[i].RefreshState() ;
+/*
+ TODO: Delete this commented block on stable version.
+ for ( var i = 0 ; i < FCKToolbarSet.Toolbars.length ; i++ )
+ {
+ var oToolbar = FCKToolbarSet.Toolbars[i] ;
+ for ( var j = 0 ; j < oToolbar.Items.length ; j++ )
+ {
+ oToolbar.Items[j].RefreshState() ;
+ }
+ }
+*/
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,286 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktools.js
+ * Utility functions.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKTools = new Object() ;
+
+//**
+// FCKTools.GetLinkedFieldValue: Gets the value of the hidden INPUT element
+// that is associated to the editor. This element has its ID set to the
+// editor's instance name so the user reffers to the instance name when getting
+// the posted data.
+FCKTools.GetLinkedFieldValue = function()
+{
+ return FCK.LinkedField.value ;
+}
+
+//**
+// FCKTools.AttachToLinkedFieldFormSubmit: attaches a function call to the
+// submit event of the linked field form. This function us generally used to
+// update the linked field value before submitting the form.
+FCKTools.AttachToLinkedFieldFormSubmit = function( functionPointer )
+{
+ // Gets the linked field form
+ var oForm = FCK.LinkedField.form ;
+
+ // Return now if no form is available
+ if (!oForm) return ;
+
+ // Attaches the functionPointer call to the onsubmit event
+ if ( FCKBrowserInfo.IsIE )
+ oForm.attachEvent( "onsubmit", functionPointer ) ;
+ else
+ oForm.addEventListener( 'submit', functionPointer, true ) ;
+
+ //**
+ // Attaches the functionPointer call to the submit method
+ // This is done because IE doesn't fire onsubmit when the submit method is called
+ // BEGIN --
+
+ // Creates a Array in the form object that will hold all Attached function call
+ // (in the case there are more than one editor in the same page)
+ if (! oForm.updateFCKeditor) oForm.updateFCKeditor = new Array() ;
+
+ // Adds the function pointer to the array of functions to call when "submit" is called
+ oForm.updateFCKeditor[oForm.updateFCKeditor.length] = functionPointer ;
+
+ // Switches the original submit method with a new one that first call all functions
+ // on the above array and the call the original submit
+ // IE sees it oForm.submit function as an 'object'.
+ if (! oForm.originalSubmit && ( typeof( oForm.submit ) == 'function' || ( !oForm.submit.tagName && !oForm.submit.length ) ) )
+ {
+ // Creates a copy of the original submit
+ oForm.originalSubmit = oForm.submit ;
+
+ // Creates our replacement for the submit
+ oForm.submit = FCKTools_SubmitReplacer ;
+ }
+ // END --
+}
+
+function FCKTools_SubmitReplacer()
+{
+ if (this.updateFCKeditor)
+ {
+ // Calls all functions in the functions array
+ for (var i = 0 ; i < this.updateFCKeditor.length ; i++)
+ this.updateFCKeditor[i]() ;
+ }
+ // Calls the original "submit"
+ this.originalSubmit() ;
+}
+
+//**
+// FCKTools.AddSelectOption: Adds a option to a SELECT element.
+FCKTools.AddSelectOption = function( targetDocument, selectElement, optionText, optionValue )
+{
+ var oOption = targetDocument.createElement("OPTION") ;
+
+ oOption.text = optionText ;
+ oOption.value = optionValue ;
+
+ selectElement.options.add(oOption) ;
+
+ return oOption ;
+}
+
+FCKTools.RemoveAllSelectOptions = function( selectElement )
+{
+ for ( var i = selectElement.options.length - 1 ; i >= 0 ; i-- )
+ {
+ selectElement.options.remove(i) ;
+ }
+}
+
+FCKTools.SelectNoCase = function( selectElement, value, defaultValue )
+{
+ var sNoCaseValue = value.toString().toLowerCase() ;
+
+ for ( var i = 0 ; i < selectElement.options.length ; i++ )
+ {
+ if ( sNoCaseValue == selectElement.options[i].value.toLowerCase() )
+ {
+ selectElement.selectedIndex = i ;
+ return ;
+ }
+ }
+
+ if ( defaultValue != null ) FCKTools.SelectNoCase( selectElement, defaultValue ) ;
+}
+
+FCKTools.HTMLEncode = function( text )
+{
+ if ( !text )
+ return '' ;
+
+ text = text.replace( /&/g, "&" ) ;
+ text = text.replace( /"/g, """ ) ;
+ text = text.replace( /</g, "<" ) ;
+ text = text.replace( />/g, ">" ) ;
+ text = text.replace( /'/g, "'" ) ;
+
+ return text ;
+}
+
+//**
+// FCKTools.GetResultingArray: Gets a array from a string (where the elements
+// are separated by a character), a fuction (that returns a array) or a array.
+FCKTools.GetResultingArray = function( arraySource, separator )
+{
+ switch ( typeof( arraySource ) )
+ {
+ case "string" :
+ return arraySource.split( separator ) ;
+ case "function" :
+ return separator() ;
+ default :
+ if ( isArray( arraySource ) ) return arraySource ;
+ else return new Array() ;
+ }
+}
+
+FCKTools.GetElementPosition = function( el )
+{
+ // Initializes the Coordinates object that will be returned by the function.
+ var c = { X:0, Y:0 } ;
+
+ // Loop throw the offset chain.
+ while ( el )
+ {
+ c.X += el.offsetLeft ;
+ c.Y += el.offsetTop ;
+
+ el = el.offsetParent ;
+ }
+
+ // Return the Coordinates object
+ return c ;
+}
+
+// START iCM MODIFICATIONS
+// Amended to accept a list of one or more ascensor tag names
+// Amended to check the element itself before working back up through the parent hierarchy
+FCKTools.GetElementAscensor = function( element, ascensorTagNames )
+{
+// var e = element.parentNode ;
+ var e = element ;
+ var lstTags = "," + ascensorTagNames.toUpperCase() + "," ;
+
+ while ( e )
+ {
+ if ( lstTags.indexOf( "," + e.nodeName.toUpperCase() + "," ) != -1 )
+ return e ;
+
+ e = e.parentNode ;
+ }
+ return null ;
+}
+// END iCM MODIFICATIONS
+
+FCKTools.Pause = function( miliseconds )
+{
+ var oStart = new Date() ;
+
+ while (true)
+ {
+ var oNow = new Date() ;
+ if ( miliseconds < oNow - oStart )
+ return ;
+ }
+}
+
+FCKTools.ConvertStyleSizeToHtml = function( size )
+{
+ return size.endsWith( '%' ) ? size : parseInt( size ) ;
+}
+
+FCKTools.ConvertHtmlSizeToStyle = function( size )
+{
+ return size.endsWith( '%' ) ? size : ( size + 'px' ) ;
+}
+// START iCM MODIFICATIONS
+/*
+// Transfers the supplied attributes to the supplied node
+FCKTools.SetElementAttributes = function( oElement, oAttributes )
+{
+ for ( var i = 0; i < oAttributes.length; i++ )
+ {
+ if ( oAttributes[i].specified ) // Needed for IE which always returns all attributes whether set or not
+ oElement.setAttribute( oAttributes[i].nodeName, oAttributes[i].nodeValue, 0 ) ;
+ }
+}
+
+// Get immediate block node (P, H1, for example) for the supplied node - the supplied node may itself be a block node in which
+// case it will be returned. If no block node found, returns null.
+FCKTools.GetParentBlockNode = function( oNode )
+{
+ if ( oNode.nodeName.toUpperCase() == "BODY" )
+ return null ;
+ else if ( oNode.nodeType == 1 && FCKRegexLib.BlockElements.test(oNode.tagName) )
+ return oNode ;
+ else
+ return FCKTools.GetParentBlockNode( oNode.parentNode ) ;
+}
+
+// Run through any children of the supplied node. If there are none, or they only comprise
+// empty text nodes and BR nodes, then the node is effectively empty.
+// Sometimes (on Gecko) a seemingly empty node is coming back with several children that are solely
+// empty text nodes and BRs e.g. the first item in an OL list, for example, when
+// UseBROnCarriageReturn is set to false.
+// Seems to be due to the use of the <br _moz_editor_bogus_node="TRUE"> (GECKO_BOGUS) as fillers both
+// in fck_gecko_1.js when html is empty and in ENTER key handler ? If normal BR tags are
+// used instead this doesn't seem to happen....
+FCKTools.NodeIsEmpty = function( oNode )
+{
+ var oSibling = oNode.childNodes[0] ;
+ while ( oSibling )
+ {
+ if ( ( oSibling.nodeType != 1 && oSibling.nodeType != 3 ) || ( oSibling.nodeType == 1 && oSibling.nodeName.toUpperCase() != "BR" ) || ( oSibling.nodeType == 3 && oSibling.nodeValue && oSibling.nodeValue.trim() != '' ) )
+ return false ;
+
+ oSibling = oSibling.nextSibling ;
+ }
+
+ return true ;
+}
+
+// Returns a document fragment that contains a copy of the specified range of nodes
+FCKTools.GetDocumentFragment = function( oParentNode, oFromNode, oToNode, bIncludeFromNode, bIncludeToNode, bClone )
+{
+ if ( typeof bIncludeFromNode == "undefined" ) bIncludeFromNode = true ;
+ if ( typeof bIncludeToNode == "undefined" ) bIncludeToNode = true ;
+ if ( typeof bClone == "undefined" ) bClone = true ;
+
+ var oFragment = FCK.EditorDocument.createDocumentFragment() ;
+
+ var oNode = oFromNode ;
+ while ( oNode && oNode != oToNode )
+ {
+ if ( oNode != oFromNode || bIncludeFromNode )
+ oFragment.appendChild( bClone ? oNode.cloneNode( true ) : oNode ) ;
+
+ oNode = oNode.nextSibling ;
+ }
+
+ if ( oNode && (oFromNode != oToNode && bIncludeToNode) )
+ oFragment.appendChild( bClone ? oNode.cloneNode( true ) : oNode ) ; // Include To Node
+
+ return oFragment ;
+}
+*/
+// END iCM MODIFICATIONS
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,254 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktools_gecko.js
+ * Utility functions. (Gecko version).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Constant for the Gecko Bogus Node.
+var GECKO_BOGUS = '<br _moz_editor_bogus_node="TRUE">' ;
+
+// Appends a CSS file to a document.
+FCKTools.AppendStyleSheet = function( documentElement, cssFileUrl )
+{
+ var e = documentElement.createElement( 'LINK' ) ;
+ e.rel = 'stylesheet' ;
+ e.type = 'text/css' ;
+ e.href = cssFileUrl ;
+ documentElement.getElementsByTagName("HEAD")[0].appendChild( e ) ;
+ return e ;
+}
+
+// Removes all attributes and values from the element.
+FCKTools.ClearElementAttributes = function( element )
+{
+ // Loop throw all attributes in the element
+ for ( var i = 0 ; i < element.attributes.length ; i++ )
+ {
+ // Remove the element by name.
+ element.removeAttribute( element.attributes[i].name, 0 ) ; // 0 : Case Insensitive
+ }
+}
+
+// Returns an Array of strings with all defined in the elements inside another element.
+FCKTools.GetAllChildrenIds = function( parentElement )
+{
+ // Create the array that will hold all Ids.
+ var aIds = new Array() ;
+
+ // Define a recursive function that search for the Ids.
+ var fGetIds = function( parent )
+ {
+ for ( var i = 0 ; i < parent.childNodes.length ; i++ )
+ {
+ var sId = parent.childNodes[i].id ;
+
+ // Check if the Id is defined for the element.
+ if ( sId && sId.length > 0 ) aIds[ aIds.length ] = sId ;
+
+ // Recursive call.
+ fGetIds( parent.childNodes[i] ) ;
+ }
+ }
+
+ // Start the recursive calls.
+ fGetIds( parentElement ) ;
+
+ return aIds ;
+}
+
+FCKTools.RemoveOuterTags = function( e )
+{
+ var oFragment = e.ownerDocument.createDocumentFragment() ;
+
+ for ( var i = 0 ; i < e.childNodes.length ; i++ )
+ oFragment.appendChild( e.childNodes[i] ) ;
+
+ e.parentNode.replaceChild( oFragment, e ) ;
+}
+
+FCKTools.CreateXmlObject = function( object )
+{
+ switch ( object )
+ {
+ case 'XmlHttp' :
+ return new XMLHttpRequest() ;
+ case 'DOMDocument' :
+ return document.implementation.createDocument( '', '', null ) ;
+ }
+ return null ;
+}
+// START iCM Modifications
+/*
+// Starting at the specified node, find the first inline node of the sequence
+// For example, assume we have the following elements : <p>Some text <span>some more text</span> and <a href="href">some link</a> yet some more text</p>
+// If the "some link" text node is the one specified, then the "Some text" text node will be the first inline node returned.
+FCKTools.GetFirstInlineNode = function( oNode )
+{
+ if ( FCKRegexLib.BlockElements.test( oNode.nodeName ) )
+ return oNode ;
+ else if ( oNode.previousSibling && !FCKRegexLib.BlockElements.test( oNode.previousSibling.nodeName ) )
+ return FCKTools.GetFirstInlineNode( oNode.previousSibling ) ;
+ else if ( oNode.parentNode && !FCKRegexLib.BlockElements.test( oNode.parentNode.nodeName ) && oNode.parentNode.nodeName.toUpperCase() != "BODY" )
+ return FCKTools.GetFirstInlineNode( oNode.parentNode ) ;
+ else
+ return oNode ;
+}
+
+// Starting at the specified node, find the last inline node of the sequence
+// For example, assume we have the following elements : <p>Some text <span>some more text</span> and <a href="href">some link</a> yet some more text</p>
+// If the "some link" text node is the one specified, then the " yet some more text" text node will be the last inline node returned.
+FCKTools.GetLastInlineNode = function( oNode )
+{
+ if ( FCKRegexLib.BlockElements.test( oNode.nodeName ) )
+ return oNode ;
+ else if ( oNode.nextSibling && !FCKRegexLib.BlockElements.test( oNode.nextSibling.nodeName ) )
+ return FCKTools.GetLastInlineNode( oNode.nextSibling ) ;
+ else if ( oNode.parentNode && !FCKRegexLib.BlockElements.test( oNode.parentNode.nodeName ) && oNode.parentNode.nodeName.toUpperCase() != "BODY" )
+ return FCKTools.GetLastInlineNode( oNode.parentNode ) ;
+ else
+ return oNode ;
+}
+
+
+// Split the supplied parent at the specified child and (optionally) offset.
+// Ensure that enclosing block elements are created where missing but that existing
+// block elements (table for example) don't get incorrectly nested.
+FCKTools.SplitNode = function( oParentBlockNode, oChildNode, nOffset )
+{
+ if ( typeof nOffset == "undefined" ) nOffset = 0 ;
+
+ var oFragment = FCK.EditorDocument.createDocumentFragment() ;
+ var oRange = FCK.EditorDocument.createRange() ;
+
+ if ( FCKRegexLib.ListElements.test( oParentBlockNode.nodeName ) )
+ {
+ // Treat OL/UL parents differently as want to split at the specified
+ // child LI node to create to OL/UL lists.
+ oStartNode = oParentBlockNode.firstChild ;
+ oEndNode = oParentBlockNode.lastChild ;
+ }
+ else
+ {
+ // Locate the inline nodes adjacent to the specified child node so that these can
+ // be kept together.
+ oStartNode = FCKTools.GetFirstInlineNode( oChildNode ) ;
+ oEndNode = FCKTools.GetLastInlineNode( oChildNode ) ;
+ }
+
+ // Create a new tag which holds the content of the affected node(s) located before (but not including) the child node and offset
+ if ( FCKRegexLib.BlockElements.test( oStartNode.nodeName ) && !FCKRegexLib.ListElements.test( oParentBlockNode.nodeName ) )
+ {
+ // First element of the bunch is already a block element so we don't want to wrap it with a new block element.
+ // Just use this first node provided it is not the same as the last node (to prevent duplication), otherwise
+ // create a new empty P element.
+ if ( oStartNode != oEndNode )
+ {
+ oBlockNode1 = oStartNode.cloneNode( true ) ;
+ }
+ else
+ {
+ oBlockNode1 = FCK.EditorDocument.createElement( "P" ) ;
+ oBlockNode1.innerHTML = GECKO_BOGUS ;
+
+ if ( !FCKRegexLib.SpecialBlockElements.test( oParentBlockNode.nodeName ) )
+ FCKTools.SetElementAttributes( oBlockNode1, oParentBlockNode.attributes ) ; // Transfer across any class attributes, etc
+ }
+ }
+ else
+ {
+ // First element of the bunch is not a block element (or it is a LI element which is a special case).
+ // So ensure all of the inline nodes before the selection are wrapped with a suitable block element.
+ var oBlockNode1 = FCK.EditorDocument.createElement( FCKRegexLib.SpecialBlockElements.test( oParentBlockNode.nodeName ) ? "P" : oParentBlockNode.tagName ) ;
+ oRange.setStartBefore( oStartNode ) ;
+ if ( nOffset == 0 )
+ oRange.setEndBefore( oChildNode ) ;
+ else
+ oRange.setEnd( oChildNode, nOffset ) ;
+ oBlockNode1.appendChild( oRange.cloneContents() ) ;
+ oBlockNode1.innerHTML = oBlockNode1.innerHTML.replace(/[\x00-\x1F]/g, "") ; // Prevent any control characters returned within the innerHTML from causing problems
+ if ( FCKTools.NodeIsEmpty( oBlockNode1 ) )
+ oBlockNode1.innerHTML = GECKO_BOGUS ; // Ensure it has some content, required for Gecko
+ else
+ oBlockNode1.innerHTML = oBlockNode1.innerHTML.replace( FCKRegexLib.EmptyElement, "" ) ; // Strip out any empty tags that may have been generated by the split
+ if ( !FCKRegexLib.SpecialBlockElements.test( oParentBlockNode.nodeName ) )
+ FCKTools.SetElementAttributes( oBlockNode1, oParentBlockNode.attributes ) ; // Transfer across any class attributes, etc
+ }
+
+ // Create a new tag which holds the content of the affected node(s) located after (and including) the child node
+ if ( FCKRegexLib.BlockElements.test( oEndNode.nodeName ) && !FCKRegexLib.ListElements.test( oParentBlockNode.nodeName ) )
+ {
+ // Last element of the bunch is already a block element so we don't want to wrap it with a new block element.
+ oBlockNode2 = oEndNode.cloneNode( true ) ;
+ }
+ else
+ {
+ // Last element of the bunch is not a block element (or it is a LI element which is a special case).
+ // So ensure all of the inline nodes after and including the child/offset are wrapped with a suitable block element.
+ var oBlockNode2 = FCK.EditorDocument.createElement( FCKRegexLib.SpecialBlockElements.test( oParentBlockNode.nodeName ) ? "P" : oParentBlockNode.tagName );
+ oRange.setEndAfter( oEndNode );
+ if ( nOffset == 0 )
+ oRange.setStartBefore( oChildNode ) ;
+ else
+ oRange.setStart( oChildNode, nOffset );
+ oBlockNode2.appendChild( oRange.cloneContents() ) ;
+ oBlockNode2.innerHTML = oBlockNode2.innerHTML.replace(/[\x00-\x1F]/g, "") ; // Prevent any control characters returned within the innerHTML from causing problems
+ if ( FCKTools.NodeIsEmpty( oBlockNode2 ) )
+ oBlockNode2.innerHTML = GECKO_BOGUS ; // Ensure it has some content, required for Gecko
+ else
+ oBlockNode2.innerHTML = oBlockNode2.innerHTML.replace( FCKRegexLib.EmptyElement, "" ) ; // Strip out any empty tags that may have been generated by the split
+ if ( !FCKRegexLib.SpecialBlockElements.test( oParentBlockNode.nodeName ) )
+ FCKTools.SetElementAttributes( oBlockNode2, oParentBlockNode.attributes ) ; // Transfer across any class attributes, etc
+ }
+
+ // Insert the resulting nodes into a document fragment
+ oFragment.appendChild( oBlockNode1 );
+ oFragment.appendChild( oBlockNode2 );
+
+ // Replace the affected nodes with the new nodes (fragment)
+ FCKTools.ReplaceNodes( oParentBlockNode, oStartNode, oEndNode, oFragment ) ;
+
+ // Return the second node so it can be used for setting cursor position, etc
+ return oBlockNode2 ;
+}
+
+// Function that replaces the specified range of nodes (inclusive) within the supplied parent
+// with the nodes stored in the supplied document fragment.
+FCKTools.ReplaceNodes = function( oParentBlockNode, oStartNode, oEndNode, oFragment )
+{
+ var oRange = FCK.EditorDocument.createRange() ;
+
+ // Delete the affected node(s)
+ if ( !FCKRegexLib.SpecialBlockElements.test( oParentBlockNode.nodeName ) && (oParentBlockNode.firstChild == oStartNode) && (oParentBlockNode.lastChild == oEndNode) )
+ {
+ // Entire parent block node is to be replaced so insert the two new block elements before it
+ // and then remove the old node
+ oRange.selectNode ( oParentBlockNode );
+ }
+ else
+ {
+ // Only part of the parent block node is to be replaced so insert the two new block elements
+ // before the first inline node of the affected content and then remove the old nodes
+ oRange.setEndAfter( oEndNode ) ;
+ oRange.setStartBefore( oStartNode ) ;
+ }
+
+ // Insert the replacement nodes
+ oRange.deleteContents() ;
+ oRange.insertNode( oFragment ) ;
+}
+*/
+// END iCM Modifications
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fcktools_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,77 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcktools_ie.js
+ * Utility functions. (IE version).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Appends a CSS file to a document.
+FCKTools.AppendStyleSheet = function( documentElement, cssFileUrl )
+{
+ return documentElement.createStyleSheet( cssFileUrl ) ;
+}
+
+// Removes all attributes and values from the element.
+FCKTools.ClearElementAttributes = function( element )
+{
+ element.clearAttributes() ;
+}
+
+FCKTools.GetAllChildrenIds = function( parentElement )
+{
+ var aIds = new Array() ;
+ for ( var i = 0 ; i < parentElement.all.length ; i++ )
+ {
+ var sId = parentElement.all[i].id ;
+ if ( sId && sId.length > 0 )
+ aIds[ aIds.length ] = sId ;
+ }
+ return aIds ;
+}
+
+FCKTools.RemoveOuterTags = function( e )
+{
+ e.insertAdjacentHTML( 'beforeBegin', e.innerHTML ) ;
+ e.parentNode.removeChild( e ) ;
+}
+
+FCKTools.CreateXmlObject = function( object )
+{
+ var aObjs ;
+
+ switch ( object )
+ {
+ case 'XmlHttp' :
+ aObjs = [ 'MSXML2.XmlHttp', 'Microsoft.XmlHttp' ] ;
+ break ;
+
+ case 'DOMDocument' :
+ aObjs = [ 'MSXML2.DOMDocument', 'Microsoft.XmlDom' ] ;
+ break ;
+ }
+
+ for ( var i = 0 ; i < 2 ; i++ )
+ {
+ try { return new ActiveXObject( aObjs[i] ) ; }
+ catch (e)
+ {}
+ }
+
+ if ( FCKLang.NoActiveX )
+ {
+ alert( FCKLang.NoActiveX ) ;
+ FCKLang.NoActiveX = null ;
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,4 @@
+var FCKUndo = new Object() ;
+
+FCKUndo.SaveUndoStep = function()
+{}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckundo_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,97 @@
+var FCKUndo = new Object() ;
+
+FCKUndo.SavedData = new Array() ;
+FCKUndo.CurrentIndex = -1 ;
+FCKUndo.TypesCount = FCKUndo.MaxTypes = 25 ;
+FCKUndo.Typing = false ;
+
+FCKUndo.SaveUndoStep = function()
+{
+ // Shrink the array to the current level.
+ FCKUndo.SavedData = FCKUndo.SavedData.slice( 0, FCKUndo.CurrentIndex + 1 ) ;
+
+ // Get the Actual HTML.
+ var sHtml = FCK.EditorDocument.body.innerHTML ;
+
+ // Cancel operation if the new step is identical to the previous one.
+ if ( FCKUndo.CurrentIndex >= 0 && sHtml == FCKUndo.SavedData[ FCKUndo.CurrentIndex ][0] )
+ return ;
+
+ // If we reach the Maximun number of undo levels, we must remove the first
+ // entry of the list shifting all elements.
+ if ( FCKUndo.CurrentIndex + 1 >= FCKConfig.MaxUndoLevels )
+ FCKUndo.SavedData.shift() ;
+ else
+ FCKUndo.CurrentIndex++ ;
+
+ // Get the actual selection.
+ var sBookmark ;
+ if ( FCK.EditorDocument.selection.type == 'Text' )
+ sBookmark = FCK.EditorDocument.selection.createRange().getBookmark() ;
+
+ // Save the new level in front of the actual position.
+ FCKUndo.SavedData[ FCKUndo.CurrentIndex ] = [ sHtml, sBookmark ] ;
+
+ FCK.Events.FireEvent( "OnSelectionChange" ) ;
+}
+
+FCKUndo.CheckUndoState = function()
+{
+ return ( FCKUndo.Typing || FCKUndo.CurrentIndex > 0 ) ;
+}
+
+FCKUndo.CheckRedoState = function()
+{
+ return ( !FCKUndo.Typing && FCKUndo.CurrentIndex < ( FCKUndo.SavedData.length - 1 ) ) ;
+}
+
+FCKUndo.Undo = function()
+{
+ if ( FCKUndo.CheckUndoState() )
+ {
+ // If it is the first step.
+ if ( FCKUndo.CurrentIndex == ( FCKUndo.SavedData.length - 1 ) )
+ {
+ // Save the actual state for a possible "Redo" call.
+ FCKUndo.SaveUndoStep() ;
+ }
+
+ // Go a step back.
+ FCKUndo._ApplyUndoLevel( --FCKUndo.CurrentIndex ) ;
+
+ FCK.Events.FireEvent( "OnSelectionChange" ) ;
+ }
+}
+
+FCKUndo.Redo = function()
+{
+ if ( FCKUndo.CheckRedoState() )
+ {
+ // Go a step forward.
+ FCKUndo._ApplyUndoLevel( ++FCKUndo.CurrentIndex ) ;
+
+ FCK.Events.FireEvent( "OnSelectionChange" ) ;
+ }
+}
+
+FCKUndo._ApplyUndoLevel = function(level)
+{
+ var oData = FCKUndo.SavedData[ level ] ;
+
+ if ( !oData )
+ return ;
+
+ // Update the editor contents with that step data.
+ FCK.SetInnerHtml( oData[0] ) ;
+// FCK.EditorDocument.body.innerHTML = oData[0] ;
+
+ if ( oData[1] )
+ {
+ var oRange = FCK.EditorDocument.selection.createRange() ;
+ oRange.moveToBookmark( oData[1] ) ;
+ oRange.select() ;
+ }
+
+ FCKUndo.TypesCount = 0 ;
+ FCKUndo.Typing = false ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckurlparams.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckurlparams.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckurlparams.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,32 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckurlparams.js
+ * Defines the FCKURLParams object that is used to get all parameters
+ * passed by the URL QueryString (after the "?").
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// #### URLParams: holds all URL passed parameters (like ?Param1=Value1&Param2=Value2)
+var FCKURLParams = new Object() ;
+
+var aParams = document.location.search.substr(1).split('&') ;
+for ( var i = 0 ; i < aParams.length ; i++ )
+{
+ var aParam = aParams[i].split('=') ;
+ var sParamName = aParam[0] ;
+ var sParamValue = aParam[1] ;
+
+ FCKURLParams[ sParamName ] = sParamValue ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,354 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxhtml.js
+ * Defines the FCKXHtml object, responsible for the XHTML operations.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKXHtml = new Object() ;
+
+FCKXHtml.CurrentJobNum = 0 ;
+
+FCKXHtml.GetXHTML = function( node, includeNode, format )
+{
+ // Special blocks are blocks of content that remain untouched during the
+ // process. It is used for SCRIPTs and STYLEs.
+ FCKXHtml.SpecialBlocks = new Array() ;
+
+ // Create the XML DOMDocument object.
+ this.XML = FCKTools.CreateXmlObject( 'DOMDocument' ) ;
+
+ // Add a root element that holds all child nodes.
+ this.MainNode = this.XML.appendChild( this.XML.createElement( 'xhtml' ) ) ;
+
+ FCKXHtml.CurrentJobNum++ ;
+
+ if ( includeNode )
+ this._AppendNode( this.MainNode, node ) ;
+ else
+ this._AppendChildNodes( this.MainNode, node, false ) ;
+
+ // Get the resulting XHTML as a string.
+ var sXHTML = this._GetMainXmlString() ;
+
+ // Strip the "XHTML" root node.
+ sXHTML = sXHTML.substr( 7, sXHTML.length - 15 ).trim() ;
+
+ // Remove the trailing <br> added by Gecko.
+ if ( FCKBrowserInfo.IsGecko )
+ sXHTML = sXHTML.replace( /<br\/>$/, '' ) ;
+
+ // Add a space in the tags with no closing tags, like <br/> -> <br />
+ sXHTML = sXHTML.replace( FCKRegexLib.SpaceNoClose, ' />');
+
+ if ( FCKConfig.ForceSimpleAmpersand )
+ sXHTML = sXHTML.replace( FCKRegexLib.ForceSimpleAmpersand, '&' ) ;
+
+ if ( format )
+ sXHTML = FCKCodeFormatter.Format( sXHTML ) ;
+
+ // Now we put back the SpecialBlocks contents.
+ for ( var i = 0 ; i < FCKXHtml.SpecialBlocks.length ; i++ )
+ {
+ var oRegex = new RegExp( '___FCKsi___' + i ) ;
+ sXHTML = sXHTML.replace( oRegex, FCKXHtml.SpecialBlocks[i] ) ;
+ }
+
+ this.XML = null ;
+
+ return sXHTML
+}
+
+FCKXHtml._AppendAttribute = function( xmlNode, attributeName, attributeValue )
+{
+ try
+ {
+ // Create the attribute.
+ var oXmlAtt = this.XML.createAttribute( attributeName ) ;
+
+ oXmlAtt.value = attributeValue ? attributeValue : '' ;
+
+ // Set the attribute in the node.
+ xmlNode.attributes.setNamedItem( oXmlAtt ) ;
+ }
+ catch (e)
+ {}
+}
+
+FCKXHtml._AppendChildNodes = function( xmlNode, htmlNode, isBlockElement )
+{
+ var iCount = 0 ;
+
+ if ( htmlNode.hasChildNodes() )
+ {
+ // Get all children nodes.
+ var oChildren = htmlNode.childNodes ;
+
+ for ( var i = 0 ; i < oChildren.length ; i++ )
+ {
+ if ( this._AppendNode( xmlNode, oChildren[i] ) )
+ iCount++ ;
+ }
+ }
+
+ if ( iCount == 0 )
+ {
+ if ( isBlockElement && FCKConfig.FillEmptyBlocks )
+ {
+ this._AppendEntity( xmlNode, 'nbsp' ) ;
+ return ;
+ }
+
+ // We can't use short representation of empty elements that are not marked
+ // as empty in th XHTML DTD.
+ if ( !FCKRegexLib.EmptyElements.test( htmlNode.nodeName ) )
+ xmlNode.appendChild( this.XML.createTextNode('') ) ;
+ }
+}
+
+FCKXHtml._AppendNode = function( xmlNode, htmlNode )
+{
+ switch ( htmlNode.nodeType )
+ {
+ // Element Node.
+ case 1 :
+ if ( htmlNode.getAttribute('_fckfakelement') )
+ return FCKXHtml._AppendNode( xmlNode, FCK.GetRealElement( htmlNode ) ) ;
+
+ // Mozilla insert custom nodes in the DOM.
+ if ( FCKBrowserInfo.IsGecko && htmlNode.hasAttribute('_moz_editor_bogus_node') )
+ return false ;
+
+ if ( htmlNode.getAttribute('_fckdelete') )
+ return false ;
+
+ // Create the Element.
+ var sNodeName = htmlNode.nodeName ;
+
+ // Check if the node name is valid, otherwise ignore this tag.
+ if ( !FCKRegexLib.ElementName.test( sNodeName ) )
+ return false ;
+
+ sNodeName = sNodeName.toLowerCase() ;
+
+ if ( FCKBrowserInfo.IsGecko && sNodeName == 'br' && htmlNode.hasAttribute('type') && htmlNode.getAttribute( 'type', 2 ) == '_moz' )
+ return false ;
+
+ // The already processed nodes must be marked to avoid then to be duplicated (bad formatted HTML).
+ // So here, the "mark" is checked... if the element is Ok, then mark it.
+ if ( htmlNode._fckxhtmljob && htmlNode._fckxhtmljob == FCKXHtml.CurrentJobNum )
+ return false ;
+ else
+ htmlNode._fckxhtmljob = FCKXHtml.CurrentJobNum ;
+
+ // If the nodeName starts with a slash, it is a orphan closing tag.
+ // On some strange cases, the nodeName is empty, even if the node exists.
+// if ( sNodeName.length == 0 || sNodeName.substr(0,1) == '/' )
+// break ;
+
+ var oNode = this._CreateNode( sNodeName ) ;
+
+ // Add all attributes.
+ FCKXHtml._AppendAttributes( xmlNode, htmlNode, oNode, sNodeName ) ;
+
+ // Tag specific processing.
+ var oTagProcessor = FCKXHtml.TagProcessors[ sNodeName ] ;
+
+ if ( oTagProcessor )
+ {
+ oNode = oTagProcessor( oNode, htmlNode ) ;
+ if ( !oNode ) break ;
+ }
+ else
+ this._AppendChildNodes( oNode, htmlNode, FCKRegexLib.BlockElements.test( sNodeName ) ) ;
+
+ xmlNode.appendChild( oNode ) ;
+
+ break ;
+
+ // Text Node.
+ case 3 :
+ this._AppendTextNode( xmlNode, htmlNode.nodeValue.replaceNewLineChars(' ') ) ;
+ break ;
+
+ // Comment
+ case 8 :
+ try { xmlNode.appendChild( this.XML.createComment( htmlNode.nodeValue ) ) ; }
+ catch (e) { /* Do nothing... probably this is a wrong format comment. */ }
+ break ;
+
+ // Unknown Node type.
+ default :
+ xmlNode.appendChild( this.XML.createComment( "Element not supported - Type: " + htmlNode.nodeType + " Name: " + htmlNode.nodeName ) ) ;
+ break ;
+ }
+ return true ;
+}
+
+if ( FCKConfig.ForceStrongEm )
+{
+ FCKXHtml._CreateNode = function( nodeName )
+ {
+ switch ( nodeName )
+ {
+ case 'b' :
+ nodeName = 'strong' ;
+ break ;
+ case 'i' :
+ nodeName = 'em' ;
+ break ;
+ }
+ return this.XML.createElement( nodeName ) ;
+ }
+}
+else
+{
+ FCKXHtml._CreateNode = function( nodeName )
+ {
+ return this.XML.createElement( nodeName ) ;
+ }
+}
+
+// Append an item to the SpecialBlocks array and returns the tag to be used.
+FCKXHtml._AppendSpecialItem = function( item )
+{
+ return '___FCKsi___' + FCKXHtml.SpecialBlocks.addItem( item ) ;
+}
+
+//if ( FCKConfig.ProcessHTMLEntities )
+//{
+ FCKXHtml._AppendTextNode = function( targetNode, textValue )
+ {
+ // We can't just replace the special chars with entities and create a
+ // text node with it. We must split the text isolating the special chars
+ // and add each piece a time.
+ var asPieces = textValue.match( FCKXHtmlEntities.EntitiesRegex ) ;
+
+ if ( asPieces )
+ {
+ for ( var i = 0 ; i < asPieces.length ; i++ )
+ {
+ if ( asPieces[i].length == 1 )
+ {
+ var sEntity = FCKXHtmlEntities.Entities[ asPieces[i] ] ;
+ if ( sEntity != null )
+ {
+ this._AppendEntity( targetNode, sEntity ) ;
+ continue ;
+ }
+ }
+ targetNode.appendChild( this.XML.createTextNode( asPieces[i] ) ) ;
+ }
+ }
+ }
+//}
+//else
+//{
+// FCKXHtml._AppendTextNode = function( targetNode, textValue )
+// {
+// targetNode.appendChild( this.XML.createTextNode( textValue ) ) ;
+// }
+//}
+
+// An object that hold tag specific operations.
+FCKXHtml.TagProcessors = new Object() ;
+
+FCKXHtml.TagProcessors['img'] = function( node )
+{
+ // The "ALT" attribute is required in XHTML.
+ if ( ! node.attributes.getNamedItem( 'alt' ) )
+ FCKXHtml._AppendAttribute( node, 'alt', '' ) ;
+
+ return node ;
+}
+
+FCKXHtml.TagProcessors['script'] = function( node, htmlNode )
+{
+ // The "TYPE" attribute is required in XHTML.
+ if ( ! node.attributes.getNamedItem( 'type' ) )
+ FCKXHtml._AppendAttribute( node, 'type', 'text/javascript' ) ;
+
+ node.appendChild( FCKXHtml.XML.createTextNode( FCKXHtml._AppendSpecialItem( htmlNode.text ) ) ) ;
+
+ return node ;
+}
+
+FCKXHtml.TagProcessors['style'] = function( node, htmlNode )
+{
+ // The "_fcktemp" attribute is used to mark the <STYLE> used by the editor
+ // to set some behaviors.
+ if ( htmlNode.getAttribute( '_fcktemp' ) )
+ return null ;
+
+ // The "TYPE" attribute is required in XHTML.
+ if ( ! node.attributes.getNamedItem( 'type' ) )
+ FCKXHtml._AppendAttribute( node, 'type', 'text/css' ) ;
+
+ node.appendChild( FCKXHtml.XML.createTextNode( FCKXHtml._AppendSpecialItem( htmlNode.innerHTML ) ) ) ;
+
+ return node ;
+}
+
+FCKXHtml.TagProcessors['title'] = function( node, htmlNode )
+{
+ node.appendChild( FCKXHtml.XML.createTextNode( FCK.EditorDocument.title ) ) ;
+
+ return node ;
+}
+
+FCKXHtml.TagProcessors['base'] = function( node, htmlNode )
+{
+ // The "_fcktemp" attribute is used to mark the <BASE> tag when the editor
+ // automatically sets it using the FCKConfig.BaseHref configuration.
+ if ( htmlNode.getAttribute( '_fcktemp' ) )
+ return null ;
+
+ // IE duplicates the BODY inside the <BASE /> tag (don't ask me why!).
+ // This tag processor does nothing... in this way, no child nodes are added
+ // (also because the BASE tag must be empty).
+ return node ;
+}
+
+FCKXHtml.TagProcessors['link'] = function( node, htmlNode )
+{
+ // The "_fcktemp" attribute is used to mark the fck_internal.css <LINK>
+ // reference.
+ if ( htmlNode.getAttribute( '_fcktemp' ) )
+ return null ;
+
+ return node ;
+}
+
+FCKXHtml.TagProcessors['table'] = function( node, htmlNode )
+{
+ // There is a trick to show table borders when border=0. We add to the
+ // table class the FCK__ShowTableBorders rule. So now we must remove it.
+
+ var oClassAtt = node.attributes.getNamedItem( 'class' ) ;
+
+ if ( oClassAtt && FCKRegexLib.TableBorderClass.test( oClassAtt.nodeValue ) )
+ {
+ var sClass = oClassAtt.nodeValue.replace( FCKRegexLib.TableBorderClass, '' ) ;
+
+ if ( sClass.length == 0 )
+ node.attributes.removeNamedItem( 'class' ) ;
+ else
+ FCKXHtml._AppendAttribute( node, 'class', sClass ) ;
+ }
+
+ FCKXHtml._AppendChildNodes( node, htmlNode, false ) ;
+
+ return node ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_gecko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_gecko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_gecko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,74 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxhtml_gecko.js
+ * Defines the FCKXHtml object, responsible for the XHTML operations.
+ * Gecko specific.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKXHtml._GetMainXmlString = function()
+{
+ // Create the XMLSerializer.
+ var oSerializer = new XMLSerializer() ;
+
+ // Return the serialized XML as a string.
+ // Due to a BUG on Gecko, the special chars sequence "#?-:" must be replaced with "&"
+ // for the XHTML entities.
+ return oSerializer.serializeToString( this.MainNode ).replace( FCKRegexLib.GeckoEntitiesMarker, '&' ) ;
+}
+
+// There is a BUG on Gecko... createEntityReference returns null.
+// So we use a trick to append entities on it.
+FCKXHtml._AppendEntity = function( xmlNode, entity )
+{
+ xmlNode.appendChild( this.XML.createTextNode( '#?-:' + entity + ';' ) ) ;
+}
+
+FCKXHtml._AppendAttributes = function( xmlNode, htmlNode, node )
+{
+ var aAttributes = htmlNode.attributes ;
+
+ for ( var n = 0 ; n < aAttributes.length ; n++ )
+ {
+ var oAttribute = aAttributes[n] ;
+
+ if ( oAttribute.specified )
+ {
+ var sAttName = oAttribute.nodeName.toLowerCase() ;
+ var sAttValue ;
+
+ // The "_fckxhtmljob" attribute is used to mark the already processed elements.
+ if ( sAttName == '_fckxhtmljob' )
+ continue ;
+ // There is a bug in Mozilla that returns '_moz_xxx' attributes as specified.
+ else if ( sAttName.indexOf( '_moz' ) == 0 )
+ continue ;
+ // There are one cases (on Gecko) when the oAttribute.nodeValue must be used:
+ // - for the "class" attribute
+ else if ( sAttName == 'class' )
+ sAttValue = oAttribute.nodeValue ;
+ // XHTML doens't support attribute minimization like "CHECKED". It must be trasformed to cheched="checked".
+ else if ( oAttribute.nodeValue === true )
+ sAttValue = sAttName ;
+ else
+ sAttValue = htmlNode.getAttribute( sAttName, 2 ) ; // We must use getAttribute to get it exactly as it is defined.
+
+ if ( FCKConfig.ForceSimpleAmpersand && sAttValue.replace )
+ sAttValue = sAttValue.replace( /&/g, '___FCKAmp___' ) ;
+
+ this._AppendAttribute( node, sAttName, sAttValue ) ;
+ }
+ }
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_ie.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_ie.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtml_ie.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,197 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxhtml_ie.js
+ * Defines the FCKXHtml object, responsible for the XHTML operations.
+ * IE specific.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKXHtml._GetMainXmlString = function()
+{
+ return this.MainNode.xml ;
+}
+
+FCKXHtml._AppendEntity = function( xmlNode, entity )
+{
+ xmlNode.appendChild( this.XML.createEntityReference( entity ) ) ;
+}
+
+FCKXHtml._AppendAttributes = function( xmlNode, htmlNode, node, nodeName )
+{
+ var aAttributes = htmlNode.attributes ;
+
+ for ( var n = 0 ; n < aAttributes.length ; n++ )
+ {
+ var oAttribute = aAttributes[n] ;
+
+ if ( oAttribute.specified )
+ {
+ var sAttName = oAttribute.nodeName.toLowerCase() ;
+ var sAttValue ;
+
+ // The "_fckxhtmljob" attribute is used to mark the already processed elements.
+ if ( sAttName == '_fckxhtmljob' )
+ continue ;
+ // The following must be done because of a bug on IE regarding the style
+ // attribute. It returns "null" for the nodeValue.
+ else if ( sAttName == 'style' )
+ sAttValue = htmlNode.style.cssText ;
+ // There are two cases when the oAttribute.nodeValue must be used:
+ // - for the "class" attribute
+ // - for events attributes (on IE only).
+ else if ( sAttName == 'class' || sAttName.indexOf('on') == 0 )
+ sAttValue = oAttribute.nodeValue ;
+ else if ( nodeName == 'body' && sAttName == 'contenteditable' )
+ continue ;
+ // XHTML doens't support attribute minimization like "CHECKED". It must be trasformed to cheched="checked".
+ else if ( oAttribute.nodeValue === true )
+ sAttValue = sAttName ;
+ // We must use getAttribute to get it exactly as it is defined.
+ else if ( ! (sAttValue = htmlNode.getAttribute( sAttName, 2 ) ) )
+ sAttValue = oAttribute.nodeValue ;
+
+ if ( FCKConfig.ForceSimpleAmpersand && sAttValue.replace )
+ sAttValue = sAttValue.replace( /&/g, '___FCKAmp___' ) ;
+
+ this._AppendAttribute( node, sAttName, sAttValue ) ;
+ }
+ }
+}
+
+FCKXHtml.TagProcessors['meta'] = function( node, htmlNode )
+{
+ var oHttpEquiv = node.attributes.getNamedItem( 'http-equiv' ) ;
+
+ if ( oHttpEquiv == null || oHttpEquiv.value.length == 0 )
+ {
+ // Get the http-equiv value from the outerHTML.
+ var sHttpEquiv = htmlNode.outerHTML.match( FCKRegexLib.MetaHttpEquiv ) ;
+
+ if ( sHttpEquiv )
+ {
+ sHttpEquiv = sHttpEquiv[1] ;
+ FCKXHtml._AppendAttribute( node, 'http-equiv', sHttpEquiv ) ;
+ }
+ }
+
+ return node ;
+}
+
+// IE automaticaly changes <FONT> tags to <FONT size=+0>.
+FCKXHtml.TagProcessors['font'] = function( node, htmlNode )
+{
+ if ( node.attributes.length == 0 )
+ node = FCKXHtml.XML.createDocumentFragment() ;
+
+ FCKXHtml._AppendChildNodes( node, htmlNode ) ;
+
+ return node ;
+}
+
+// IE doens't see the value attribute as an attribute for the <INPUT> tag.
+FCKXHtml.TagProcessors['input'] = function( node, htmlNode )
+{
+ if ( htmlNode.name )
+ FCKXHtml._AppendAttribute( node, 'name', htmlNode.name ) ;
+
+ if ( htmlNode.value && !node.attributes.getNamedItem( 'value' ) )
+ FCKXHtml._AppendAttribute( node, 'value', htmlNode.value ) ;
+
+ return node ;
+}
+
+// IE ignores the "SELECTED" attribute so we must add it manually.
+FCKXHtml.TagProcessors['option'] = function( node, htmlNode )
+{
+ if ( htmlNode.selected && !node.attributes.getNamedItem( 'selected' ) )
+ FCKXHtml._AppendAttribute( node, 'selected', 'selected' ) ;
+
+ FCKXHtml._AppendChildNodes( node, htmlNode ) ;
+
+ return node ;
+}
+
+// There is a BUG in IE regarding the ABBR tag.
+FCKXHtml.TagProcessors['abbr'] = function( node, htmlNode )
+{
+ var oNextNode = htmlNode.nextSibling ;
+
+ while ( true )
+ {
+ if ( oNextNode && oNextNode.nodeName != '/ABBR' )
+ {
+ FCKXHtml._AppendNode( node, oNextNode ) ;
+ oNextNode = oNextNode.nextSibling ;
+ }
+ else
+ break ;
+ }
+
+ return node ;
+}
+
+// IE ignores the "COORDS" and "SHAPE" attribute so we must add it manually.
+FCKXHtml.TagProcessors['area'] = function( node, htmlNode )
+{
+ if ( ! node.attributes.getNamedItem( 'coords' ) )
+ {
+ var sCoords = htmlNode.getAttribute( 'coords', 2 ) ;
+ if ( sCoords && sCoords != '0,0,0' )
+ FCKXHtml._AppendAttribute( node, 'coords', sCoords ) ;
+ }
+
+ if ( ! node.attributes.getNamedItem( 'shape' ) )
+ {
+ var sCoords = htmlNode.getAttribute( 'shape', 2 ) ;
+ if ( sCoords && sCoords.length > 0 )
+ FCKXHtml._AppendAttribute( node, 'shape', sCoords ) ;
+ }
+
+ return node ;
+}
+
+FCKXHtml.TagProcessors['label'] = function( node, htmlNode )
+{
+ if ( htmlNode.htmlFor.length > 0 )
+ FCKXHtml._AppendAttribute( node, 'for', htmlNode.htmlFor ) ;
+
+ FCKXHtml._AppendChildNodes( node, htmlNode ) ;
+
+ return node ;
+}
+
+FCKXHtml.TagProcessors['form'] = function( node, htmlNode )
+{
+ if ( htmlNode.acceptCharset.length > 0 && htmlNode.acceptCharset != 'UNKNOWN' )
+ FCKXHtml._AppendAttribute( node, 'accept-charset', htmlNode.acceptCharset ) ;
+
+ if ( htmlNode.name )
+ FCKXHtml._AppendAttribute( node, 'name', htmlNode.name ) ;
+
+ FCKXHtml._AppendChildNodes( node, htmlNode ) ;
+
+ return node ;
+}
+
+// IE doens't hold the name attribute as an attribute for the <TEXTAREA> and <SELECT> tags.
+FCKXHtml.TagProcessors['textarea'] = FCKXHtml.TagProcessors['select'] = function( node, htmlNode )
+{
+ if ( htmlNode.name )
+ FCKXHtml._AppendAttribute( node, 'name', htmlNode.name ) ;
+
+ FCKXHtml._AppendChildNodes( node, htmlNode ) ;
+
+ return node ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtmlentities.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtmlentities.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/_source/internals/fckxhtmlentities.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,322 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxhtmlentities.js
+ * This file define the HTML entities handled by the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKXHtmlEntities = new Object() ;
+
+if ( FCKConfig.ProcessHTMLEntities )
+{
+ FCKXHtmlEntities.Entities = {
+ // Latin-1 Entities
+ 'Â ':'nbsp',
+ '¡':'iexcl',
+ '¢':'cent',
+ '£':'pound',
+ '¤':'curren',
+ 'Â¥':'yen',
+ '¦':'brvbar',
+ '§':'sect',
+ '¨':'uml',
+ '©':'copy',
+ 'ª':'ordf',
+ '«':'laquo',
+ '¬':'not',
+ 'Â':'shy',
+ '®':'reg',
+ '¯':'macr',
+ '°':'deg',
+ '±':'plusmn',
+ '²':'sup2',
+ '³':'sup3',
+ '´':'acute',
+ 'µ':'micro',
+ '¶':'para',
+ '·':'middot',
+ '¸':'cedil',
+ '¹':'sup1',
+ 'º':'ordm',
+ '»':'raquo',
+ '¼':'frac14',
+ '½':'frac12',
+ '¾':'frac34',
+ '¿':'iquest',
+ 'Ã':'times',
+ '÷':'divide',
+
+ // Symbols and Greek Letters
+
+ 'Æ':'fnof',
+ 'â¢':'bull',
+ 'â¦':'hellip',
+ 'â²':'prime',
+ 'â³':'Prime',
+ 'â¾':'oline',
+ 'â':'frasl',
+ 'â':'weierp',
+ 'â':'image',
+ 'â':'real',
+ 'â¢':'trade',
+ 'âµ':'alefsym',
+ 'â':'larr',
+ 'â':'uarr',
+ 'â':'rarr',
+ 'â':'darr',
+ 'â':'harr',
+ 'âµ':'crarr',
+ 'â':'lArr',
+ 'â':'uArr',
+ 'â':'rArr',
+ 'â':'dArr',
+ 'â':'hArr',
+ 'â':'forall',
+ 'â':'part',
+ 'â':'exist',
+ 'â
':'empty',
+ 'â':'nabla',
+ 'â':'isin',
+ 'â':'notin',
+ 'â':'ni',
+ 'â':'prod',
+ 'â':'sum',
+ 'â':'minus',
+ 'â':'lowast',
+ 'â':'radic',
+ 'â':'prop',
+ 'â':'infin',
+ 'â ':'ang',
+ 'â§':'and',
+ 'â¨':'or',
+ 'â©':'cap',
+ 'âª':'cup',
+ 'â«':'int',
+ 'â´':'there4',
+ 'â¼':'sim',
+ 'â
':'cong',
+ 'â':'asymp',
+ 'â ':'ne',
+ 'â¡':'equiv',
+ 'â¤':'le',
+ 'â¥':'ge',
+ 'â':'sub',
+ 'â':'sup',
+ 'â':'nsub',
+ 'â':'sube',
+ 'â':'supe',
+ 'â':'oplus',
+ 'â':'otimes',
+ 'â¥':'perp',
+ 'â
':'sdot',
+ 'â':'loz',
+ 'â ':'spades',
+ 'â£':'clubs',
+ 'â¥':'hearts',
+ 'â¦':'diams',
+
+ // Other Special Characters
+
+ '"':'quot',
+ // '&':'amp', // This entity is automatically handled by the XHTML parser.
+ // '<':'lt', // This entity is automatically handled by the XHTML parser.
+ // '>':'gt', // This entity is automatically handled by the XHTML parser.
+ 'Ë':'circ',
+ 'Ë':'tilde',
+ 'â':'ensp',
+ 'â':'emsp',
+ 'â':'thinsp',
+ 'â':'zwnj',
+ 'â':'zwj',
+ 'â':'lrm',
+ 'â':'rlm',
+ 'â':'ndash',
+ 'â':'mdash',
+ 'â':'lsquo',
+ 'â':'rsquo',
+ 'â':'sbquo',
+ 'â':'ldquo',
+ 'â':'rdquo',
+ 'â':'bdquo',
+ 'â ':'dagger',
+ 'â¡':'Dagger',
+ 'â°':'permil',
+ 'â¹':'lsaquo',
+ 'âº':'rsaquo',
+ 'â¬':'euro'
+ } ;
+
+ FCKXHtmlEntities.Chars = '' ;
+
+ // Process Base Entities.
+ for ( var e in FCKXHtmlEntities.Entities )
+ FCKXHtmlEntities.Chars += e ;
+
+ // Include Latin Letters Entities.
+ if ( FCKConfig.IncludeLatinEntities )
+ {
+ var oEntities = {
+ 'Ã':'Agrave',
+ 'Ã':'Aacute',
+ 'Ã':'Acirc',
+ 'Ã':'Atilde',
+ 'Ã':'Auml',
+ 'Ã
':'Aring',
+ 'Ã':'AElig',
+ 'Ã':'Ccedil',
+ 'Ã':'Egrave',
+ 'Ã':'Eacute',
+ 'Ã':'Ecirc',
+ 'Ã':'Euml',
+ 'Ã':'Igrave',
+ 'Ã':'Iacute',
+ 'Ã':'Icirc',
+ 'Ã':'Iuml',
+ 'Ã':'ETH',
+ 'Ã':'Ntilde',
+ 'Ã':'Ograve',
+ 'Ã':'Oacute',
+ 'Ã':'Ocirc',
+ 'Ã':'Otilde',
+ 'Ã':'Ouml',
+ 'Ã':'Oslash',
+ 'Ã':'Ugrave',
+ 'Ã':'Uacute',
+ 'Ã':'Ucirc',
+ 'Ã':'Uuml',
+ 'Ã':'Yacute',
+ 'Ã':'THORN',
+ 'Ã':'szlig',
+ 'Ã ':'agrave',
+ 'á':'aacute',
+ 'â':'acirc',
+ 'ã':'atilde',
+ 'ä':'auml',
+ 'Ã¥':'aring',
+ 'æ':'aelig',
+ 'ç':'ccedil',
+ 'è':'egrave',
+ 'é':'eacute',
+ 'ê':'ecirc',
+ 'ë':'euml',
+ 'ì':'igrave',
+ 'Ã':'iacute',
+ 'î':'icirc',
+ 'ï':'iuml',
+ 'ð':'eth',
+ 'ñ':'ntilde',
+ 'ò':'ograve',
+ 'ó':'oacute',
+ 'ô':'ocirc',
+ 'õ':'otilde',
+ 'ö':'ouml',
+ 'ø':'oslash',
+ 'ù':'ugrave',
+ 'ú':'uacute',
+ 'û':'ucirc',
+ 'ü':'uuml',
+ 'ý':'yacute',
+ 'þ':'thorn',
+ 'ÿ':'yuml',
+ 'Å':'OElig',
+ 'Å':'oelig',
+ 'Å ':'Scaron',
+ 'Å¡':'scaron',
+ 'Ÿ':'Yuml'
+ } ;
+
+ for ( var e in oEntities )
+ {
+ FCKXHtmlEntities.Entities[ e ] = oEntities[ e ] ;
+ FCKXHtmlEntities.Chars += e ;
+ }
+
+ oEntities = null ;
+ }
+
+ // Include Greek Letters Entities.
+ if ( FCKConfig.IncludeGreekEntities )
+ {
+ var oEntities = {
+ 'Î':'Alpha',
+ 'Î':'Beta',
+ 'Î':'Gamma',
+ 'Î':'Delta',
+ 'Î':'Epsilon',
+ 'Î':'Zeta',
+ 'Î':'Eta',
+ 'Î':'Theta',
+ 'Î':'Iota',
+ 'Î':'Kappa',
+ 'Î':'Lambda',
+ 'Î':'Mu',
+ 'Î':'Nu',
+ 'Î':'Xi',
+ 'Î':'Omicron',
+ 'Î ':'Pi',
+ 'Ρ':'Rho',
+ 'Σ':'Sigma',
+ 'Τ':'Tau',
+ 'Î¥':'Upsilon',
+ 'Φ':'Phi',
+ 'Χ':'Chi',
+ 'Ψ':'Psi',
+ 'Ω':'Omega',
+ 'α':'alpha',
+ 'β':'beta',
+ 'γ':'gamma',
+ 'δ':'delta',
+ 'ε':'epsilon',
+ 'ζ':'zeta',
+ 'η':'eta',
+ 'θ':'theta',
+ 'ι':'iota',
+ 'κ':'kappa',
+ 'λ':'lambda',
+ 'μ':'mu',
+ 'ν':'nu',
+ 'ξ':'xi',
+ 'ο':'omicron',
+ 'Ï':'pi',
+ 'Ï':'rho',
+ 'Ï':'sigmaf',
+ 'Ï':'sigma',
+ 'Ï':'tau',
+ 'Ï
':'upsilon',
+ 'Ï':'phi',
+ 'Ï':'chi',
+ 'Ï':'psi',
+ 'Ï':'omega'
+ } ;
+
+ for ( var e in oEntities )
+ {
+ FCKXHtmlEntities.Entities[ e ] = oEntities[ e ] ;
+ FCKXHtmlEntities.Chars += e ;
+ }
+
+ oEntities = null ;
+ }
+
+ // Create and Compile the Regex used to separate the entities from the text.
+ FCKXHtmlEntities.EntitiesRegex = new RegExp('','') ;
+ FCKXHtmlEntities.EntitiesRegex.compile( '[' + FCKXHtmlEntities.Chars + ']|[^' + FCKXHtmlEntities.Chars + ']+', 'g' ) ;
+}
+else
+{
+ // Even if we are not processing the entities, we must respect the .
+ FCKXHtmlEntities.Entities = { 'Â ':'nbsp' } ;
+ FCKXHtmlEntities.EntitiesRegex = /[Â ]|[^Â ]+/g ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/disablehandles.htc
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/disablehandles.htc 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/disablehandles.htc 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,15 @@
+<public:component lightweight="true">
+
+<script language="javascript">
+
+function CancelEvent()
+{
+ return false ;
+}
+
+this.onresizestart = CancelEvent ;
+this.onbeforeeditfocus = CancelEvent ;
+
+</script>
+
+</public:component>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/hiddenfield.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/hiddenfield.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/hiddenfield.htc
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/hiddenfield.htc 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/hiddenfield.htc 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,30 @@
+<public:component lightweight="true">
+
+<public:attach event="oncontentready" onevent="ShowField()" />
+<public:attach event="ondoubleclick" onevent="EditField()" />
+
+<script language="javascript">
+
+var bIsHiddenField = this.type == 'hidden' ;
+
+function ShowField()
+{
+ if ( bIsHiddenField )
+ {
+ this.runtimeStyle.width = '20px' ;
+ this.runtimeStyle.height = '20px' ;
+ this.runtimeStyle.border = '1px dotted #FF0000' ;
+ this.runtimeStyle.backgroundImage = 'url(css/behaviors/hiddenfield.gif)' ;
+ this.runtimeStyle.fontSize = '99px' ;
+ }
+}
+
+function EditField()
+{
+ if ( bIsHiddenField )
+ alert( this.outerHTML ) ;
+}
+
+</script>
+
+</public:component>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/showtableborders.htc
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/showtableborders.htc 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/css/behaviors/showtableborders.htc 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,36 @@
+<public:component lightweight="true">
+
+<public:attach event="oncontentready" onevent="ShowBorders()" />
+<public:attach event="onpropertychange" onevent="OnPropertyChange()" />
+
+<script language="javascript">
+var oClassRegex = /\s*FCK__ShowTableBorders/ ;
+var FCKConfig = window.parent.FCKConfig ;
+
+function ShowBorders()
+{
+ if ( this.border == 0 )
+ {
+ if ( !oClassRegex.test( this.className ) )
+ this.className += ' FCK__ShowTableBorders' ;
+ }
+ else
+ {
+ if ( oClassRegex.test( this.className ) )
+ {
+ this.className = this.className.replace( oClassRegex, '' ) ;
+ if ( this.className.length == 0 )
+ this.removeAttribute( 'className', 0 ) ;
+ }
+ }
+}
+
+function OnPropertyChange()
+{
+ if ( event.propertyName == 'border' || event.propertyName == 'className' )
+ ShowBorders() ;
+}
+
+</script>
+
+</public:component>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_editorarea.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_editorarea.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_editorarea.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,67 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_editorarea.css
+ * This is the default CSS file used by the editor area. It defines the
+ * initial font of the editor and background color.
+ *
+ * A user can configure the editor to use another CSS file. Just change
+ * the value of the FCKConfig.EditorAreaCSS key in the configuration
+ * file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body
+{
+ font-family: Arial, Verdana, Sans-Serif;
+ font-size: 12px;
+ padding: 5px 5px 5px 5px;
+ margin: 0px;
+ border-style: none;
+ background-color: #ffffff;
+}
+
+/*
+ Just uncomment the following block if you want to avoid spaces between
+ paragraphs. Remember to apply the same style in your output front end page.
+*/
+/*
+P, UL, LI
+{
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+*/
+
+.Bold
+{
+ font-weight: bold;
+}
+
+.Title
+{
+ font-weight: bold;
+ font-size: 18px;
+ color: #cc3300;
+}
+
+.Code
+{
+ border: #8b4513 1px solid;
+ padding-right: 5px;
+ padding-left: 5px;
+ color: #000066;
+ font-family: 'Courier New' , Monospace;
+ background-color: #ff9933;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_internal.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_internal.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_internal.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,64 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_internal.css
+ * This CSS Style Sheet defines rules used by the editor for its internal use.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+TABLE.FCK__ShowTableBorders, TABLE.FCK__ShowTableBorders TD
+{
+ border: #d3d3d3 1px solid ;
+}
+
+FORM
+{
+ border: 1px dotted #FF0000;
+ padding: 2px ;
+}
+
+.FCK__Flash
+{
+ border: darkgray 1px solid;
+ background-position: center center;
+ background-image: url(images/fck_flashlogo.gif);
+ background-repeat: no-repeat;
+ width: 80px ;
+ height: 80px ;
+}
+
+.FCK__Anchor
+{
+ background-position: center center;
+ background-image: url(images/fck_anchor.gif);
+ background-repeat: no-repeat;
+ width: 16px ;
+ height: 15px ;
+}
+
+.FCK__PageBreak
+{
+ background-position: center center;
+ background-image: url(images/fck_pagebreak.gif);
+ background-repeat: no-repeat;
+ clear: both;
+ display: block;
+ float: none;
+ width: 100%;
+ border-top: #999999 1px dotted;
+ border-bottom: #999999 1px dotted;
+ border-right:0px;
+ border-left:0px;
+ height: 5px;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_showtableborders_gecko.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_showtableborders_gecko.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/css/fck_showtableborders_gecko.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,23 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_showtableborders_gecko.css
+ * This CSS Style Sheet defines the rules to show table borders on Gecko.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+TABLE[border="0"], TABLE[border="0"] TD
+{
+ border: #d3d3d3 1px solid
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_anchor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_anchor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_flashlogo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_flashlogo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_pagebreak.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/css/images/fck_pagebreak.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,80 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_dialog_common.css
+ * This is the CSS file used for interface details in some dialog
+ * windows.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+.ImagePreviewArea
+{
+ border: #000000 1px solid;
+ padding: 5px;
+ overflow: auto;
+ width: 100%;
+ height: 170px;
+ background-color: #ffffff;
+}
+
+.FlashPreviewArea
+{
+ border: #000000 1px solid;
+ padding: 5px;
+ overflow: auto;
+ width: 100%;
+ height: 170px;
+ background-color: #ffffff;
+}
+
+.BtnReset
+{
+ float: left;
+ background-position: center center;
+ background-image: url(images/reset.gif);
+ width: 16px;
+ height: 16px;
+ background-repeat: no-repeat;
+ border: 1px none;
+ font-size: 1px ;
+}
+
+.BtnLocked, .BtnUnlocked
+{
+ float: left;
+ background-position: center center;
+ background-image: url(images/locked.gif);
+ width: 16px;
+ height: 16px;
+ background-repeat: no-repeat;
+ border: 1px none;
+ font-size: 1px ;
+}
+
+.BtnUnlocked
+{
+ background-image: url(images/unlocked.gif);
+}
+
+.BtnOver
+{
+ border: 1px outset;
+ cursor: pointer;
+ cursor: hand;
+}
+
+.FCK__FieldNumeric
+{
+ behavior: url(common/fcknumericfield.htc) ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fck_dialog_common.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,94 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_dialog_common.js
+ * Useful functions used by almost all dialog window pages.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Gets a element by its Id. Used for shorter coding.
+function GetE( elementId )
+{
+ return document.getElementById( elementId ) ;
+}
+
+function ShowE( element, isVisible )
+{
+ if ( typeof( element ) == 'string' )
+ element = GetE( element ) ;
+ element.style.display = isVisible ? '' : 'none' ;
+}
+
+function SetAttribute( element, attName, attValue )
+{
+ if ( attValue == null || attValue.length == 0 )
+ element.removeAttribute( attName, 0 ) ; // 0 : Case Insensitive
+ else
+ element.setAttribute( attName, attValue, 0 ) ; // 0 : Case Insensitive
+}
+
+function GetAttribute( element, attName, valueIfNull )
+{
+ var oAtt = element.attributes[attName] ;
+
+ if ( oAtt == null || !oAtt.specified )
+ return valueIfNull ? valueIfNull : '' ;
+
+ var oValue ;
+
+ if ( !( oValue = element.getAttribute( attName, 2 ) ) )
+ oValue = oAtt.nodeValue ;
+
+ return ( oValue == null ? valueIfNull : oValue ) ;
+}
+
+// Functions used by text fiels to accept numbers only.
+function IsDigit( e )
+{
+ e = e || event ;
+ var iCode = ( e.keyCode || e.charCode ) ;
+
+ event.returnValue =
+ (
+ ( iCode >= 48 && iCode <= 57 ) // Numbers
+ || (iCode >= 37 && iCode <= 40) // Arrows
+ || iCode == 8 // Backspace
+ || iCode == 46 // Delete
+ ) ;
+
+ return event.returnValue ;
+}
+
+String.prototype.trim = function()
+{
+ return this.replace( /(^\s*)|(\s*$)/g, '' ) ;
+}
+
+String.prototype.startsWith = function( value )
+{
+ return ( this.substr( 0, value.length ) == value ) ;
+}
+
+String.prototype.remove = function( start, length )
+{
+ var s = '' ;
+
+ if ( start > 0 )
+ s = this.substring( 0, start ) ;
+
+ if ( start + length < this.length )
+ s += this.substring( start + length , this.length ) ;
+
+ return s ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fcknumericfield.htc
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fcknumericfield.htc 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/fcknumericfield.htc 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,24 @@
+<public:component lightweight="true">
+
+<script language="javascript">
+
+function CheckIsDigit()
+{
+ var iCode = event.keyCode ;
+
+ event.returnValue =
+ (
+ ( iCode >= 48 && iCode <= 57 ) // Numbers
+ || (iCode >= 37 && iCode <= 40) // Arrows
+ || iCode == 8 // Backspace
+ || iCode == 46 // Delete
+ ) ;
+
+ return event.returnValue ;
+}
+
+this.onkeypress = CheckIsDigit ;
+
+</script>
+
+</public:component>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/locked.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/locked.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/reset.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/reset.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/unlocked.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/images/unlocked.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/moz-bindings.xml
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/moz-bindings.xml 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/common/moz-bindings.xml 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<bindings xmlns="http://www.mozilla.org/xbl">
+ <binding id="numericfield">
+ <implementation>
+ <constructor>
+ this.keypress = CheckIsDigit ;
+ </constructor>
+ <method name="CheckIsDigit">
+ <body>
+ var iCode = keyCode ;
+
+ var bAccepted =
+ (
+ ( iCode >= 48 && iCode <= 57 ) // Numbers
+ || (iCode >= 37 && iCode <= 40) // Arrows
+ || iCode == 8 // Backspace
+ || iCode == 46 // Delete
+ ) ;
+
+ return bAccepted ;
+ </body>
+ </method>
+ </implementation>
+ <events>
+ <event type="keypress" value="CheckIsDigit()" />
+ </events>
+ </binding>
+</bindings>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/lgpl.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/lgpl.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/lgpl.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,434 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>GNU Lesser General Public License</title>
+ <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
+ <STYLE>
+ BODY { FONT-SIZE: 12px }
+ </STYLE>
+ </head>
+ <body>
+ <H3>GNU Lesser General Public License</H3>
+ <TT>
+ <P>Version 2.1, February 1999</P>
+ <BLOCKQUOTE>
+ <P>Copyright (C) 1991, 1999 Free Software Foundation, Inc. 59 Temple Place, Suite
+ 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute
+ verbatim copies of this license document, but changing it is not allowed.</P>
+ <P>[This is the first released version of the Lesser GPL. It also counts as the
+ successor of the GNU Library Public License, version 2, hence the version
+ number 2.1.]</P>
+ </BLOCKQUOTE>
+ <H4>Preamble</H4>
+ <P>The licenses for most software are designed to take away your freedom to share
+ and change it. By contrast, the GNU General Public Licenses are intended to
+ guarantee your freedom to share and change free software--to make sure the
+ software is free for all its users.
+ </P>
+ <P>This license, the Lesser General Public License, applies to some specially
+ designated software packages--typically libraries--of the Free Software
+ Foundation and other authors who decide to use it. You can use it too, but we
+ suggest you first think carefully about whether this license or the ordinary
+ General Public License is the better strategy to use in any particular case,
+ based on the explanations below.
+ </P>
+ <P>When we speak of free software, we are referring to freedom of use, not price.
+ Our General Public Licenses are designed to make sure that you have the freedom
+ to distribute copies of free software (and charge for this service if you
+ wish); that you receive source code or can get it if you want it; that you can
+ change the software and use pieces of it in new free programs; and that you are
+ informed that you can do these things.</P>
+ <P>To protect your rights, we need to make restrictions that forbid distributors to
+ deny you these rights or to ask you to surrender these rights. These
+ restrictions translate to certain responsibilities for you if you distribute
+ copies of the library or if you modify it.
+ </P>
+ <P>For example, if you distribute copies of the library, whether gratis or for a
+ fee, you must give the recipients all the rights that we gave you. You must
+ make sure that they, too, receive or can get the source code. If you link other
+ code with the library, you must provide complete object files to the
+ recipients, so that they can relink them with the library after making changes
+ to the library and recompiling it. And you must show them these terms so they
+ know their rights.
+ </P>
+ <P>We protect your rights with a two-step method: (1) we copyright the library, and
+ (2) we offer you this license, which gives you legal permission to copy,
+ distribute and/or modify the library.
+ </P>
+ <P>To protect each distributor, we want to make it very clear that there is no
+ warranty for the free library. Also, if the library is modified by someone else
+ and passed on, the recipients should know that what they have is not the
+ original version, so that the original author's reputation will not be affected
+ by problems that might be introduced by others.
+ </P>
+ <P>Finally, software patents pose a constant threat to the existence of any free
+ program. We wish to make sure that a company cannot effectively restrict the
+ users of a free program by obtaining a restrictive license from a patent
+ holder. Therefore, we insist that any patent license obtained for a version of
+ the library must be consistent with the full freedom of use specified in this
+ license.
+ </P>
+ <P>Most GNU software, including some libraries, is covered by the ordinary GNU
+ General Public License. This license, the GNU Lesser General Public License,
+ applies to certain designated libraries, and is quite different from the
+ ordinary General Public License. We use this license for certain libraries in
+ order to permit linking those libraries into non-free programs.
+ </P>
+ <P>When a program is linked with a library, whether statically or using a shared
+ library, the combination of the two is legally speaking a combined work, a
+ derivative of the original library. The ordinary General Public License
+ therefore permits such linking only if the entire combination fits its criteria
+ of freedom. The Lesser General Public License permits more lax criteria for
+ linking other code with the library.
+ </P>
+ <P>We call this license the "Lesser" General Public License because it does Less to
+ protect the user's freedom than the ordinary General Public License. It also
+ provides other free software developers Less of an advantage over competing
+ non-free programs. These disadvantages are the reason we use the ordinary
+ General Public License for many libraries. However, the Lesser license provides
+ advantages in certain special circumstances.
+ </P>
+ <P>For example, on rare occasions, there may be a special need to encourage the
+ widest possible use of a certain library, so that it becomes a de-facto
+ standard. To achieve this, non-free programs must be allowed to use the
+ library. A more frequent case is that a free library does the same job as
+ widely used non-free libraries. In this case, there is little to gain by
+ limiting the free library to free software only, so we use the Lesser General
+ Public License.
+ </P>
+ <P>In other cases, permission to use a particular library in non-free programs
+ enables a greater number of people to use a large body of free software. For
+ example, permission to use the GNU C Library in non-free programs enables many
+ more people to use the whole GNU operating system, as well as its variant, the
+ GNU/Linux operating system.
+ </P>
+ <P>Although the Lesser General Public License is Less protective of the users'
+ freedom, it does ensure that the user of a program that is linked with the
+ Library has the freedom and the wherewithal to run that program using a
+ modified version of the Library.
+ </P>
+ <P>The precise terms and conditions for copying, distribution and modification
+ follow. Pay close attention to the difference between a "work based on the
+ library" and a "work that uses the library". The former contains code derived
+ from the library, whereas the latter must be combined with the library in order
+ to run.
+ </P>
+ <H4>TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</H4>
+ <P><STRONG>0.</STRONG> This License Agreement applies to any software library or
+ other program which contains a notice placed by the copyright holder or other
+ authorized party saying it may be distributed under the terms of this Lesser
+ General Public License (also called "this License"). Each licensee is addressed
+ as "you".</P>
+ <P>A "library" means a collection of software functions and/or data prepared so as
+ to be conveniently linked with application programs (which use some of those
+ functions and data) to form executables.
+ </P>
+ <P>The "Library", below, refers to any such software library or work which has been
+ distributed under these terms. A "work based on the Library" means either the
+ Library or any derivative work under copyright law: that is to say, a work
+ containing the Library or a portion of it, either verbatim or with
+ modifications and/or translated straightforwardly into another language.
+ (Hereinafter, translation is included without limitation in the term
+ "modification".)
+ </P>
+ <P>"Source code" for a work means the preferred form of the work for making
+ modifications to it. For a library, complete source code means all the source
+ code for all modules it contains, plus any associated interface definition
+ files, plus the scripts used to control compilation and installation of the
+ library.</P>
+ <P>Activities other than copying, distribution and modification are not covered by
+ this License; they are outside its scope. The act of running a program using
+ the Library is not restricted, and output from such a program is covered only
+ if its contents constitute a work based on the Library (independent of the use
+ of the Library in a tool for writing it). Whether that is true depends on what
+ the Library does and what the program that uses the Library does.
+ </P>
+ <P><STRONG>1.</STRONG> You may copy and distribute verbatim copies of the Library's
+ complete source code as you receive it, in any medium, provided that you
+ conspicuously and appropriately publish on each copy an appropriate copyright
+ notice and disclaimer of warranty; keep intact all the notices that refer to
+ this License and to the absence of any warranty; and distribute a copy of this
+ License along with the Library.
+ </P>
+ <P>You may charge a fee for the physical act of transferring a copy, and you may at
+ your option offer warranty protection in exchange for a fee.
+ </P>
+ <P><STRONG>2.</STRONG> You may modify your copy or copies of the Library or any
+ portion of it, thus forming a work based on the Library, and copy and
+ distribute such modifications or work under the terms of Section 1 above,
+ provided that you also meet all of these conditions:
+ </P>
+ <BLOCKQUOTE>
+ <P>a) The modified work must itself be a software library.
+ </P>
+ <P>b) You must cause the files modified to carry prominent notices stating that you
+ changed the files and the date of any change.</P>
+ <P>c) You must cause the whole of the work to be licensed at no charge to all third
+ parties under the terms of this License.
+ </P>
+ <P>d) If a facility in the modified Library refers to a function or a table of data
+ to be supplied by an application program that uses the facility, other than as
+ an argument passed when the facility is invoked, then you must make a good
+ faith effort to ensure that, in the event an application does not supply such
+ function or table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+ </P>
+ <P>(For example, a function in a library to compute square roots has a purpose that
+ is entirely well-defined independent of the application. Therefore, Subsection
+ 2d requires that any application-supplied function or table used by this
+ function must be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+ </P>
+ <P>These requirements apply to the modified work as a whole. If identifiable
+ sections of that work are not derived from the Library, and can be reasonably
+ considered independent and separate works in themselves, then this License, and
+ its terms, do not apply to those sections when you distribute them as separate
+ works. But when you distribute the same sections as part of a whole which is a
+ work based on the Library, the distribution of the whole must be on the terms
+ of this License, whose permissions for other licensees extend to the entire
+ whole, and thus to each and every part regardless of who wrote it.
+ </P>
+ <P>Thus, it is not the intent of this section to claim rights or contest your
+ rights to work written entirely by you; rather, the intent is to exercise the
+ right to control the distribution of derivative or collective works based on
+ the Library.
+ </P>
+ <P>In addition, mere aggregation of another work not based on the Library with the
+ Library (or with a work based on the Library) on a volume of a storage or
+ distribution medium does not bring the other work under the scope of this
+ License.
+ </P>
+ </BLOCKQUOTE>
+ <P><STRONG>3.</STRONG> You may opt to apply the terms of the ordinary GNU General
+ Public License instead of this License to a given copy of the Library. To do
+ this, you must alter all the notices that refer to this License, so that they
+ refer to the ordinary GNU General Public License, version 2, instead of to this
+ License. (If a newer version than version 2 of the ordinary GNU General Public
+ License has appeared, then you can specify that version instead if you wish.)
+ Do not make any other change in these notices.
+ </P>
+ <P>Once this change is made in a given copy, it is irreversible for that copy, so
+ the ordinary GNU General Public License applies to all subsequent copies and
+ derivative works made from that copy.
+ </P>
+ <P>This option is useful when you wish to copy part of the code of the Library into
+ a program that is not a library.
+ </P>
+ <P><STRONG>4.</STRONG> You may copy and distribute the Library (or a portion or
+ derivative of it, under Section 2) in object code or executable form under the
+ terms of Sections 1 and 2 above provided that you accompany it with the
+ complete corresponding machine-readable source code, which must be distributed
+ under the terms of Sections 1 and 2 above on a medium customarily used for
+ software interchange.
+ </P>
+ <P>If distribution of object code is made by offering access to copy from a
+ designated place, then offering equivalent access to copy the source code from
+ the same place satisfies the requirement to distribute the source code, even
+ though third parties are not compelled to copy the source along with the object
+ code.</P>
+ <P><STRONG>5.</STRONG> A program that contains no derivative of any portion of the
+ Library, but is designed to work with the Library by being compiled or linked
+ with it, is called a "work that uses the Library". Such a work, in isolation,
+ is not a derivative work of the Library, and therefore falls outside the scope
+ of this License.
+ </P>
+ <P>However, linking a "work that uses the Library" with the Library creates an
+ executable that is a derivative of the Library (because it contains portions of
+ the Library), rather than a "work that uses the library". The executable is
+ therefore covered by this License. Section 6 states terms for distribution of
+ such executables.
+ </P>
+ <P>When a "work that uses the Library" uses material from a header file that is
+ part of the Library, the object code for the work may be a derivative work of
+ the Library even though the source code is not. Whether this is true is
+ especially significant if the work can be linked without the Library, or if the
+ work is itself a library. The threshold for this to be true is not precisely
+ defined by law.
+ </P>
+ <P>If such an object file uses only numerical parameters, data structure layouts
+ and accessors, and small macros and small inline functions (ten lines or less
+ in length), then the use of the object file is unrestricted, regardless of
+ whether it is legally a derivative work. (Executables containing this object
+ code plus portions of the Library will still fall under Section 6.)
+ </P>
+ <P>Otherwise, if the work is a derivative of the Library, you may distribute the
+ object code for the work under the terms of Section 6. Any executables
+ containing that work also fall under Section 6, whether or not they are linked
+ directly with the Library itself.
+ </P>
+ <P><STRONG>6.</STRONG> As an exception to the Sections above, you may also combine
+ or link a "work that uses the Library" with the Library to produce a work
+ containing portions of the Library, and distribute that work under terms of
+ your choice, provided that the terms permit modification of the work for the
+ customer's own use and reverse engineering for debugging such modifications.
+ </P>
+ <P>You must give prominent notice with each copy of the work that the Library is
+ used in it and that the Library and its use are covered by this License. You
+ must supply a copy of this License. If the work during execution displays
+ copyright notices, you must include the copyright notice for the Library among
+ them, as well as a reference directing the user to the copy of this License.
+ Also, you must do one of these things:
+ </P>
+ <BLOCKQUOTE>
+ <P>a) Accompany the work with the complete corresponding machine-readable source
+ code for the Library including whatever changes were used in the work (which
+ must be distributed under Sections 1 and 2 above); and, if the work is an
+ executable linked with the Library, with the complete machine-readable "work
+ that uses the Library", as object code and/or source code, so that the user can
+ modify the Library and then relink to produce a modified executable containing
+ the modified Library. (It is understood that the user who changes the contents
+ of definitions files in the Library will not necessarily be able to recompile
+ the application to use the modified definitions.)
+ </P>
+ <P>b) Use a suitable shared library mechanism for linking with the Library. A
+ suitable mechanism is one that (1) uses at run time a copy of the library
+ already present on the user's computer system, rather than copying library
+ functions into the executable, and (2) will operate properly with a modified
+ version of the library, if the user installs one, as long as the modified
+ version is interface-compatible with the version that the work was made with.
+ </P>
+ <P>c) Accompany the work with a written offer, valid for at least three years, to
+ give the same user the materials specified in Subsection 6a, above, for a
+ charge no more than the cost of performing this distribution.
+ </P>
+ <P>d) If distribution of the work is made by offering access to copy from a
+ designated place, offer equivalent access to copy the above specified materials
+ from the same place.
+ </P>
+ <P>e) Verify that the user has already received a copy of these materials or that
+ you have already sent this user a copy.</P>
+ </BLOCKQUOTE>
+ <P>For an executable, the required form of the "work that uses the Library" must
+ include any data and utility programs needed for reproducing the executable
+ from it. However, as a special exception, the materials to be distributed need
+ not include anything that is normally distributed (in either source or binary
+ form) with the major components (compiler, kernel, and so on) of the operating
+ system on which the executable runs, unless that component itself accompanies
+ the executable.
+ </P>
+ <P>It may happen that this requirement contradicts the license restrictions of
+ other proprietary libraries that do not normally accompany the operating
+ system. Such a contradiction means you cannot use both them and the Library
+ together in an executable that you distribute.
+ </P>
+ <P><STRONG>7.</STRONG> You may place library facilities that are a work based on
+ the Library side-by-side in a single library together with other library
+ facilities not covered by this License, and distribute such a combined library,
+ provided that the separate distribution of the work based on the Library and of
+ the other library facilities is otherwise permitted, and provided that you do
+ these two things:
+ </P>
+ <BLOCKQUOTE>
+ <P>a) Accompany the combined library with a copy of the same work based on the
+ Library, uncombined with any other library facilities. This must be distributed
+ under the terms of the Sections above.
+ </P>
+ <P>b) Give prominent notice with the combined library of the fact that part of it
+ is a work based on the Library, and explaining where to find the accompanying
+ uncombined form of the same work.</P>
+ </BLOCKQUOTE>
+ <P><STRONG>8.</STRONG> You may not copy, modify, sublicense, link with, or
+ distribute the Library except as expressly provided under this License. Any
+ attempt otherwise to copy, modify, sublicense, link with, or distribute the
+ Library is void, and will automatically terminate your rights under this
+ License. However, parties who have received copies, or rights, from you under
+ this License will not have their licenses terminated so long as such parties
+ remain in full compliance.
+ </P>
+ <P><STRONG>9.</STRONG> You are not required to accept this License, since you have
+ not signed it. However, nothing else grants you permission to modify or
+ distribute the Library or its derivative works. These actions are prohibited by
+ law if you do not accept this License. Therefore, by modifying or distributing
+ the Library (or any work based on the Library), you indicate your acceptance of
+ this License to do so, and all its terms and conditions for copying,
+ distributing or modifying the Library or works based on it.
+ </P>
+ <P><STRONG>10.</STRONG> Each time you redistribute the Library (or any work based
+ on the Library), the recipient automatically receives a license from the
+ original licensor to copy, distribute, link with or modify the Library subject
+ to these terms and conditions. You may not impose any further restrictions on
+ the recipients' exercise of the rights granted herein. You are not responsible
+ for enforcing compliance by third parties with this License.
+ </P>
+ <P><STRONG>11.</STRONG> If, as a consequence of a court judgment or allegation of
+ patent infringement or for any other reason (not limited to patent issues),
+ conditions are imposed on you (whether by court order, agreement or otherwise)
+ that contradict the conditions of this License, they do not excuse you from the
+ conditions of this License. If you cannot distribute so as to satisfy
+ simultaneously your obligations under this License and any other pertinent
+ obligations, then as a consequence you may not distribute the Library at all.
+ For example, if a patent license would not permit royalty-free redistribution
+ of the Library by all those who receive copies directly or indirectly through
+ you, then the only way you could satisfy both it and this License would be to
+ refrain entirely from distribution of the Library.
+ </P>
+ <P>If any portion of this section is held invalid or unenforceable under any
+ particular circumstance, the balance of the section is intended to apply, and
+ the section as a whole is intended to apply in other circumstances.
+ </P>
+ <P>It is not the purpose of this section to induce you to infringe any patents or
+ other property right claims or to contest validity of any such claims; this
+ section has the sole purpose of protecting the integrity of the free software
+ distribution system which is implemented by public license practices. Many
+ people have made generous contributions to the wide range of software
+ distributed through that system in reliance on consistent application of that
+ system; it is up to the author/donor to decide if he or she is willing to
+ distribute software through any other system and a licensee cannot impose that
+ choice.
+ </P>
+ <P>This section is intended to make thoroughly clear what is believed to be a
+ consequence of the rest of this License.
+ </P>
+ <P><STRONG>12.</STRONG> If the distribution and/or use of the Library is restricted
+ in certain countries either by patents or by copyrighted interfaces, the
+ original copyright holder who places the Library under this License may add an
+ explicit geographical distribution limitation excluding those countries, so
+ that distribution is permitted only in or among countries not thus excluded. In
+ such case, this License incorporates the limitation as if written in the body
+ of this License.
+ </P>
+ <P><STRONG>13.</STRONG> The Free Software Foundation may publish revised and/or new
+ versions of the Lesser General Public License from time to time. Such new
+ versions will be similar in spirit to the present version, but may differ in
+ detail to address new problems or concerns.</P>
+ <P>Each version is given a distinguishing version number. If the Library specifies
+ a version number of this License which applies to it and "any later version",
+ you have the option of following the terms and conditions either of that
+ version or of any later version published by the Free Software Foundation. If
+ the Library does not specify a license version number, you may choose any
+ version ever published by the Free Software Foundation.
+ </P>
+ <P><STRONG>14.</STRONG> If you wish to incorporate parts of the Library into other
+ free programs whose distribution conditions are incompatible with these, write
+ to the author to ask for permission. For software which is copyrighted by the
+ Free Software Foundation, write to the Free Software Foundation; we sometimes
+ make exceptions for this. Our decision will be guided by the two goals of
+ preserving the free status of all derivatives of our free software and of
+ promoting the sharing and reuse of software generally.
+ </P>
+ <P>NO WARRANTY
+ </P>
+ <P><STRONG>15. </STRONG>BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+ WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT
+ WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+ PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR
+ IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE
+ QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE
+ DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
+ CORRECTION.
+ </P>
+ <P><STRONG>16.</STRONG> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO
+ IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+ REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+ INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT
+ OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS
+ OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+ PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN
+ IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGES.
+ </P>
+ <H4><STRONG>END OF TERMS AND CONDITIONS</STRONG></H4>
+ </TT>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/logo_fckeditor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/logo_fredck.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about/logo_fredck.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_about.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_about.html
+ * "About" dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script language="javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCKLang = oEditor.FCKLang ;
+
+window.parent.AddTab( 'About', FCKLang.DlgAboutAboutTab ) ;
+window.parent.AddTab( 'License', 'License' ) ;
+window.parent.AddTab( 'BrowserInfo', FCKLang.DlgAboutBrowserInfoTab ) ;
+
+// Function called when a dialog tag is selected.
+function OnDialogTabChange( tabCode )
+{
+ ShowE('divAbout', ( tabCode == 'About' ) ) ;
+ ShowE('divLicense', ( tabCode == 'License' ) ) ;
+ ShowE('divInfo' , ( tabCode == 'BrowserInfo' ) ) ;
+}
+
+function SendEMail()
+{
+ var eMail = 'mailto:' ;
+ eMail += 'fredck' ;
+ eMail += '@' ;
+ eMail += 'fckeditor' ;
+ eMail += '.' ;
+ eMail += 'net' ;
+
+ window.location = eMail ;
+}
+
+window.onload = function()
+{
+ // Translate the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ window.parent.SetAutoSize( true ) ;
+}
+
+ </script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <div id="divAbout">
+ <table cellpadding="0" cellspacing="0" border="0" width="100%" height="100%">
+ <tr>
+ <td>
+ <img alt="" src="fck_about/logo_fckeditor.gif" width="236" height="41" align="left">
+ <table width="80" border="0" cellspacing="0" cellpadding="5" bgcolor="#ffffff" align="right">
+ <tr>
+ <td align="center" style="BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid">
+ <span fckLang="DlgAboutVersion">version</span>
+ <br>
+ <b>2.1.1</b></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr height="100%">
+ <td align="center">
+ <br>
+ <span style="FONT-SIZE: 14px" dir="ltr">Support <b>Open Source</b> software.<br>
+ <b><a href="http://www.fckeditor.net/donate/?about" target="_blank" title="Click to go to the donation page">
+ What about a donation today?</a></b> </span>
+ <br><br><br>
+ <span fckLang="DlgAboutInfo">For further information go to</span> <a href="http://www.fckeditor.net/?About" target="_blank">
+ http://www.fckeditor.net/</a>.
+ <br>
+ Copyright © 2003-2005 <a href="#" onclick="SendEMail();">Frederico Caldeira
+ Knabben</a>
+ </td>
+ </tr>
+ <tr>
+ <td align="center">
+ <img alt="" src="fck_about/logo_fredck.gif" width="87" height="36">
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divLicense" style="DISPLAY: none">
+ <table height="100%" width="100%">
+ <tr>
+ <td>
+ <span fckLang="DlgAboutLicense">Licensed under the terms of the GNU Lesser General
+ Public License</span>
+ <br>
+ <a href="http://www.opensource.org/licenses/lgpl-license.php" target="_blank">http://www.opensource.org/licenses/lgpl-license.php</a>
+ <br>
+ </td>
+ </tr>
+ <tr>
+ <td height="100%">
+ <iframe height="100%" width="100%" src="fck_about/lgpl.html"></iframe>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divInfo" style="DISPLAY: none" dir="ltr">
+ <table align="center" width="80%" border="0">
+ <tr>
+ <td>
+ <script language="javascript">
+<!--
+document.write( '<b>User Agent<\/b><br>' + window.navigator.userAgent + '<br><br>' ) ;
+document.write( '<b>Browser<\/b><br>' + window.navigator.appName + ' ' + window.navigator.appVersion + '<br><br>' ) ;
+document.write( '<b>Platform<\/b><br>' + window.navigator.platform + '<br><br>' ) ;
+
+var sUserLang = '?' ;
+
+if ( window.navigator.language )
+ sUserLang = window.navigator.language.toLowerCase() ;
+else if ( window.navigator.userLanguage )
+ sUserLang = window.navigator.userLanguage.toLowerCase() ;
+
+document.write( '<b>User Language<\/b><br>' + sUserLang ) ;
+//-->
+ </script>
+ </td>
+ </tr>
+ </table>
+ </div>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_anchor.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_anchor.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_anchor.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,98 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_anchor.html
+ * Anchor dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Anchor Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCK = oEditor.FCK ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oFakeImage = FCK.Selection.GetSelectedElement() ;
+var oAnchor ;
+
+if ( oFakeImage )
+{
+ if ( oFakeImage.tagName == 'IMG' && oFakeImage.getAttribute('_fckanchor') )
+ oAnchor = FCK.GetRealElement( oFakeImage ) ;
+ else
+ oFakeImage = null ;
+}
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oAnchor )
+ GetE('txtName').value = oAnchor.name ;
+ else
+ oAnchor = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( GetE('txtName').value.length == 0 )
+ {
+ alert( oEditor.FCKLang.DlgAnchorErrorName ) ;
+ return false ;
+ }
+
+ oEditor.FCKUndo.SaveUndoStep() ;
+
+ oAnchor = FCK.EditorDocument.createElement( 'DIV' ) ;
+ oAnchor.innerHTML = '<a name="' + GetE('txtName').value + '"><\/a>' ;
+ oAnchor = oAnchor.firstChild ;
+
+ oFakeImage = oEditor.FCKDocumentProcessors_CreateFakeImage( 'FCK__Anchor', oAnchor ) ;
+ oFakeImage.setAttribute( '_fckanchor', 'true', 0 ) ;
+ oFakeImage = FCK.InsertElementAndGetIt( oFakeImage ) ;
+
+// oEditor.FCK.InsertHtml( '<a name="' + GetE('txtName').value + '"><\/a>' ) ;
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table height="100%" width="100%">
+ <tr>
+ <td align="center">
+ <table border="0" cellpadding="0" cellspacing="0" width="80%">
+ <tr>
+ <td>
+ <span fckLang="DlgAnchorName">Anchor Name</span><BR>
+ <input id="txtName" style="WIDTH: 100%" type="text">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_button.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_button.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_button.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,103 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_button.html
+ * Button dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Button Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.GetSelectedElement() ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl && oActiveEl.tagName.toUpperCase() == "INPUT" && ( oActiveEl.type == "button" || oActiveEl.type == "submit" || oActiveEl.type == "reset" ) )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtValue').value = oActiveEl.value ;
+ GetE('txtType').value = oActiveEl.type ;
+
+ GetE('txtType').disabled = true ;
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'INPUT' ) ;
+ oActiveEl.type = GetE('txtType').value ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ }
+
+ oActiveEl.name = GetE('txtName').value ;
+ SetAttribute( oActiveEl, 'value', GetE('txtValue').value ) ;
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table height="100%" width="100%">
+ <tr>
+ <td align="center">
+ <table border="0" cellpadding="0" cellspacing="0" width="80%">
+ <tr>
+ <td colSpan="">
+ <span fckLang="DlgCheckboxName">Name</span><br>
+ <input type="text" size="20" id="txtName" style="WIDTH: 100%">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgButtonText">Text (Value)</span><br>
+ <input type="text" id="txtValue" style="WIDTH: 100%">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgButtonType">Type</span><br>
+ <select id="txtType">
+ <option value="button" selected>Button</option>
+ <option value="submit">Submit</option>
+ <option value="reset">Reset</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_checkbox.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_checkbox.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_checkbox.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,100 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_checkbox.html
+ * Checkbox dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Checkbox Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.GetSelectedElement() ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl && oActiveEl.tagName == 'INPUT' && oActiveEl.type == 'checkbox' )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtValue').value = oActiveEl.value ;
+ GetE('txtSelected').checked = oActiveEl.checked ;
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'INPUT' ) ;
+ oActiveEl.type = 'checkbox' ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ }
+
+ oActiveEl.name = GetE('txtName').value ;
+ SetAttribute( oActiveEl, 'value', GetE('txtValue').value ) ;
+
+ if ( GetE('txtSelected').checked )
+ {
+ SetAttribute( oActiveEl, 'checked', 'checked' ) ;
+ oActiveEl.checked = GetE('txtSelected').checked ;
+ }
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table height="100%" width="100%">
+ <tr>
+ <td align="center">
+ <table border="0" cellpadding="0" cellspacing="0" width="80%">
+ <tr>
+ <td>
+ <span fckLang="DlgCheckboxName">Name</span><br>
+ <input type="text" size="20" id="txtName" style="WIDTH: 100%">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgCheckboxValue">Value</span><br>
+ <input type="text" size="20" id="txtValue" style="WIDTH: 100%">
+ </td>
+ </tr>
+ <tr>
+ <td><input type="checkbox" id="txtSelected"><label for="txtSelected" fckLang="DlgCheckboxSelected">Checked</label></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_colorselector.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_colorselector.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_colorselector.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,167 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_colorselector.html
+ * Color Selection dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="robots" content="noindex, nofollow" />
+ <style TYPE="text/css">
+ #ColorTable { cursor: pointer ; cursor: hand ; }
+ #hicolor { height: 74px ; width: 74px ; border-width: 1px ; border-style: solid ; }
+ #hicolortext { width: 75px ; text-align: right ; margin-bottom: 7px ; }
+ #selhicolor { height: 20px ; width: 74px ; border-width: 1px ; border-style: solid ; }
+ #selcolor { width: 75px ; height: 20px ; margin-top: 0px ; margin-bottom: 7px ; }
+ #btnClear { width: 75px ; height: 22px ; margin-bottom: 6px ; }
+ .ColorCell { height: 15px ; width: 15px ; }
+ </style>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+function OnLoad()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ CreateColorTable() ;
+
+ window.parent.SetOkButton( true ) ;
+ window.parent.SetAutoSize( true ) ;
+}
+
+function CreateColorTable()
+{
+ // Get the target table.
+ var oTable = document.getElementById('ColorTable') ;
+
+ // Create the base colors array.
+ var aColors = ['00','33','66','99','cc','ff'] ;
+
+ // This function combines two ranges of three values from the color array into a row.
+ function AppendColorRow( rangeA, rangeB )
+ {
+ for ( var i = rangeA ; i < rangeA + 3 ; i++ )
+ {
+ var oRow = oTable.insertRow(-1) ;
+
+ for ( var j = rangeB ; j < rangeB + 3 ; j++ )
+ {
+ for ( var n = 0 ; n < 6 ; n++ )
+ {
+ AppendColorCell( oRow, '#' + aColors[j] + aColors[n] + aColors[i] ) ;
+ }
+ }
+ }
+ }
+
+ // This function create a single color cell in the color table.
+ function AppendColorCell( targetRow, color )
+ {
+ var oCell = targetRow.insertCell(-1) ;
+ oCell.className = 'ColorCell' ;
+ oCell.bgColor = color ;
+
+ oCell.onmouseover = function()
+ {
+ document.getElementById('hicolor').style.backgroundColor = this.bgColor ;
+ document.getElementById('hicolortext').innerHTML = this.bgColor ;
+ }
+
+ oCell.onclick = function()
+ {
+ document.getElementById('selhicolor').style.backgroundColor = this.bgColor ;
+ document.getElementById('selcolor').value = this.bgColor ;
+ }
+ }
+
+ AppendColorRow( 0, 0 ) ;
+ AppendColorRow( 3, 0 ) ;
+ AppendColorRow( 0, 3 ) ;
+ AppendColorRow( 3, 3 ) ;
+
+ // Create the last row.
+ var oRow = oTable.insertRow(-1) ;
+
+ // Create the gray scale colors cells.
+ for ( var n = 0 ; n < 6 ; n++ )
+ {
+ AppendColorCell( oRow, '#' + aColors[n] + aColors[n] + aColors[n] ) ;
+ }
+
+ // Fill the row with black cells.
+ for ( var i = 0 ; i < 12 ; i++ )
+ {
+ AppendColorCell( oRow, '#000000' ) ;
+ }
+}
+
+function Clear()
+{
+ document.getElementById('selhicolor').style.backgroundColor = '' ;
+ document.getElementById('selcolor').value = '' ;
+}
+
+function ClearActual()
+{
+ document.getElementById('hicolor').style.backgroundColor = '' ;
+ document.getElementById('hicolortext').innerHTML = ' ' ;
+}
+
+function UpdateColor()
+{
+ try { document.getElementById('selhicolor').style.backgroundColor = document.getElementById('selcolor').value ; }
+ catch (e) { Clear() ; }
+}
+
+function Ok()
+{
+ if ( typeof(window.parent.dialogArguments.CustomValue) == 'function' )
+ window.parent.dialogArguments.CustomValue( document.getElementById('selcolor').value ) ;
+
+ return true ;
+}
+ </script>
+ </head>
+ <body onload="OnLoad()" scroll="no" style="OVERFLOW: hidden">
+ <table cellpadding="0" cellspacing="0" border="0" width="100%" height="100%">
+ <tr>
+ <td align="center" valign="middle">
+ <table border="0" cellspacing="5" cellpadding="0" width="100%">
+ <tr>
+ <td valign="top" align="center" nowrap width="100%">
+ <table id="ColorTable" border="0" cellspacing="0" cellpadding="0" width="270" onmouseout="ClearActual();">
+ </table>
+ </td>
+ <td valign="top" align="left" nowrap>
+ <span fckLang="DlgColorHighlight">Highlight</span>
+ <div id="hicolor"></div>
+ <div id="hicolortext"> </div>
+ <span fckLang="DlgColorSelected">Selected</span>
+ <div id="selhicolor"></div>
+ <input id="selcolor" type="text" maxlength="20" onchange="UpdateColor();">
+ <br>
+ <input id="btnClear" type="button" fckLang="DlgColorBtnClear" value="Clear" onclick="Clear();" />
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops/fck_document_preview.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,109 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_document_preview.html
+ * Preview shown in the "Document Properties" dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Document Properties - Preview</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <script language="javascript">
+
+var eBase = parent.FCK.EditorDocument.getElementsByTagName( 'BASE' ) ;
+if ( eBase.length > 0 && eBase[0].href.length > 0 )
+{
+ document.write( '<base href="' + eBase[0].href + '">' ) ;
+}
+
+window.onload = function()
+{
+ if ( typeof( parent.OnPreviewLoad ) == 'function' )
+ parent.OnPreviewLoad( window, document.body ) ;
+}
+
+function SetBaseHRef( baseHref )
+{
+ var eBase = document.createElement( 'BASE' ) ;
+ eBase.href = baseHref ;
+
+ var eHead = document.getElementsByTagName( 'HEAD' )[0] ;
+ eHead.appendChild( eBase ) ;
+}
+
+function SetLinkColor( color )
+{
+ if ( color && color.length > 0 )
+ document.getElementById('eLink').style.color = color ;
+ else
+ document.getElementById('eLink').style.color = window.document.linkColor ;
+}
+
+function SetVisitedColor( color )
+{
+ if ( color && color.length > 0 )
+ document.getElementById('eVisited').style.color = color ;
+ else
+ document.getElementById('eVisited').style.color = window.document.vlinkColor ;
+}
+
+function SetActiveColor( color )
+{
+ if ( color && color.length > 0 )
+ document.getElementById('eActive').style.color = color ;
+ else
+ document.getElementById('eActive').style.color = window.document.alinkColor ;
+}
+ </script>
+ </head>
+ <body>
+ <table width="100%" height="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td align="center" valign="middle">
+ Normal Text
+ </td>
+ <td id="eLink" align="center" valign="middle">
+ <u>Link Text</u>
+ </td>
+ </tr>
+ <tr>
+ <td id="eVisited" valign="middle" align="center">
+ <u>Visited Link</u>
+ </td>
+ <td id="eActive" valign="middle" align="center">
+ <u>Active Link</u>
+ </td>
+ </tr>
+ </table>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ <br>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_docprops.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,586 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_docprops.html
+ * Link dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Document Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script language="javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCK = oEditor.FCK ;
+var FCKLang = oEditor.FCKLang ;
+var FCKConfig = oEditor.FCKConfig ;
+
+//#### Dialog Tabs
+
+// Set the dialog tabs.
+window.parent.AddTab( 'General' , FCKLang.DlgDocGeneralTab ) ;
+window.parent.AddTab( 'Background' , FCKLang.DlgDocBackTab ) ;
+window.parent.AddTab( 'Colors' , FCKLang.DlgDocColorsTab ) ;
+window.parent.AddTab( 'Meta' , FCKLang.DlgDocMetaTab ) ;
+
+// Function called when a dialog tag is selected.
+function OnDialogTabChange( tabCode )
+{
+ ShowE( 'divGeneral' , ( tabCode == 'General' ) ) ;
+ ShowE( 'divBackground' , ( tabCode == 'Background' ) ) ;
+ ShowE( 'divColors' , ( tabCode == 'Colors' ) ) ;
+ ShowE( 'divMeta' , ( tabCode == 'Meta' ) ) ;
+
+ ShowE( 'ePreview' , ( tabCode == 'Background' || tabCode == 'Colors' ) ) ;
+}
+
+//#### Get Base elements from the document: BEGIN
+
+// The HTML element of the document.
+var oHTML = FCK.EditorDocument.getElementsByTagName('html')[0] ;
+
+// The HEAD element of the document.
+var oHead = oHTML.getElementsByTagName('head')[0] ;
+
+var oBody = FCK.EditorDocument.body ;
+
+// This object contains all META tags defined in the document.
+var oMetaTags = new Object() ;
+
+// Get all META tags defined in the document.
+var aMetas = oHead.getElementsByTagName('meta') ;
+
+// Loop throw all METAs and put it in the HashTable.
+for ( var i = 0 ; i < aMetas.length ; i++ )
+{
+ // Try to get the "name" attribute.
+ var sName = GetAttribute( aMetas[i], 'name', GetAttribute( aMetas[i], '___fcktoreplace:name', '' ) ) ;
+
+ // If no "name", try with the "http-equiv" attribute.
+ if ( sName.length == 0 )
+ {
+ if ( document.all )
+ {
+ // Get the http-equiv value from the outerHTML.
+ var oHttpEquivMatch = aMetas[i].outerHTML.match( oEditor.FCKRegexLib.MetaHttpEquiv ) ;
+ if ( oHttpEquivMatch )
+ sName = oHttpEquivMatch[1] ;
+ }
+ else
+ sName = GetAttribute( aMetas[i], 'http-equiv', '' ) ;
+ }
+
+ if ( sName.length > 0 )
+ oMetaTags[ sName.toLowerCase() ] = aMetas[i] ;
+}
+
+//#### END
+
+// Set a META tag in the document.
+function SetMetadata( name, content, isHttp )
+{
+ if ( content.length == 0 )
+ {
+ RemoveMetadata( name ) ;
+ return ;
+ }
+
+ var oMeta = oMetaTags[ name.toLowerCase() ] ;
+
+ if ( !oMeta )
+ {
+ oMeta = oHead.appendChild( FCK.EditorDocument.createElement('META') ) ;
+
+ if ( isHttp )
+ SetAttribute( oMeta, 'http-equiv', name ) ;
+ else
+ {
+ // On IE, it is not possible to set the "name" attribute of the META tag.
+ // So a temporary attribute is used and it is replaced when getting the
+ // editor's HTML/XHTML value. This is sad, I know :(
+ if ( document.all )
+ SetAttribute( oMeta, '___fcktoreplace:name', name ) ;
+ else
+ SetAttribute( oMeta, 'name', name ) ;
+ }
+
+ oMetaTags[ name.toLowerCase() ] = oMeta ;
+ }
+
+ oMeta.content = content ;
+}
+
+function RemoveMetadata( name )
+{
+ var oMeta = oMetaTags[ name.toLowerCase() ] ;
+
+ if ( oMeta && oMeta != null )
+ {
+ oMeta.parentNode.removeChild( oMeta ) ;
+ oMetaTags[ name.toLowerCase() ] = null ;
+ }
+}
+
+function GetMetadata( name )
+{
+ var oMeta = oMetaTags[ name.toLowerCase() ] ;
+
+ if ( oMeta && oMeta != null )
+ return oMeta.content ;
+ else
+ return '' ;
+}
+
+window.onload = function ()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage( document ) ;
+
+ FillFields() ;
+
+ UpdatePreview() ;
+
+ // Show the "Ok" button.
+ window.parent.SetOkButton( true ) ;
+
+ window.parent.SetAutoSize( true ) ;
+}
+
+function FillFields()
+{
+ // ### General Info
+ GetE('txtPageTitle').value = FCK.EditorDocument.title ;
+
+ GetE('selDirection').value = GetAttribute( oHTML, 'dir', '' ) ;
+ GetE('txtLang').value = GetAttribute( oHTML, 'xml:lang', GetAttribute( oHTML, 'lang', '' ) ) ; // "xml:lang" takes precedence to "lang".
+
+ // Character Set Encoding.
+// if ( document.all )
+// var sCharSet = FCK.EditorDocument.charset ;
+// else
+ var sCharSet = GetMetadata( 'Content-Type' ) ;
+
+ if ( sCharSet != null && sCharSet.length > 0 )
+ {
+// if ( !document.all )
+ sCharSet = sCharSet.match( /[^=]*$/ ) ;
+
+ GetE('selCharSet').value = sCharSet ;
+
+ if ( GetE('selCharSet').selectedIndex == -1 )
+ {
+ GetE('selCharSet').value = '...' ;
+ GetE('txtCustomCharSet').value = sCharSet ;
+
+ CheckOther( GetE('selCharSet'), 'txtCustomCharSet' ) ;
+ }
+ }
+
+ // Document Type.
+ if ( FCK.DocTypeDeclaration && FCK.DocTypeDeclaration.length > 0 )
+ {
+ GetE('selDocType').value = FCK.DocTypeDeclaration ;
+
+ if ( GetE('selDocType').selectedIndex == -1 )
+ {
+ GetE('selDocType').value = '...' ;
+ GetE('txtDocType').value = FCK.DocTypeDeclaration ;
+
+ CheckOther( GetE('selDocType'), 'txtDocType' ) ;
+ }
+ }
+
+ // Document Type.
+ GetE('chkIncXHTMLDecl').checked = ( FCK.XmlDeclaration && FCK.XmlDeclaration.length > 0 ) ;
+
+ // ### Background
+ GetE('txtBackColor').value = GetAttribute( oBody, 'bgColor' , '' ) ;
+ GetE('txtBackImage').value = GetAttribute( oBody, 'background' , '' ) ;
+ GetE('chkBackNoScroll').checked = ( GetAttribute( oBody, 'bgProperties', '' ).toLowerCase() == 'fixed' ) ;
+
+ // ### Colors
+ GetE('txtColorText').value = GetAttribute( oBody, 'text' , '' ) ;
+ GetE('txtColorLink').value = GetAttribute( oBody, 'link' , '' ) ;
+ GetE('txtColorVisited').value = GetAttribute( oBody, 'vLink' , '' ) ;
+ GetE('txtColorActive').value = GetAttribute( oBody, 'aLink' , '' ) ;
+
+ // ### Margins
+ GetE('txtMarginTop').value = GetAttribute( oBody, 'topMargin' , '' ) ;
+ GetE('txtMarginLeft').value = GetAttribute( oBody, 'leftMargin' , '' ) ;
+ GetE('txtMarginRight').value = GetAttribute( oBody, 'rightMargin' , '' ) ;
+ GetE('txtMarginBottom').value = GetAttribute( oBody, 'bottomMargin' , '' ) ;
+
+ // ### Meta Data
+ GetE('txtMetaKeywords').value = GetMetadata( 'keywords' ) ;
+ GetE('txtMetaDescription').value = GetMetadata( 'description' ) ;
+ GetE('txtMetaAuthor').value = GetMetadata( 'author' ) ;
+ GetE('txtMetaCopyright').value = GetMetadata( 'copyright' ) ;
+}
+
+// Called when the "Ok" button is clicked.
+function Ok()
+{
+ // ### General Info
+ FCK.EditorDocument.title = GetE('txtPageTitle').value ;
+
+ var oHTML = FCK.EditorDocument.getElementsByTagName('html')[0] ;
+
+ SetAttribute( oHTML, 'dir' , GetE('selDirection').value ) ;
+ SetAttribute( oHTML, 'lang' , GetE('txtLang').value ) ;
+ SetAttribute( oHTML, 'xml:lang' , GetE('txtLang').value ) ;
+
+ // Character Set Enconding.
+ var sCharSet = GetE('selCharSet').value ;
+ if ( sCharSet == '...' )
+ sCharSet = GetE('txtCustomCharSet').value ;
+
+ if ( sCharSet.length > 0 )
+ sCharSet = 'text/html; charset=' + sCharSet ;
+
+// if ( document.all )
+// FCK.EditorDocument.charset = sCharSet ;
+// else
+ SetMetadata( 'Content-Type', sCharSet, true ) ;
+
+ // Document Type
+ var sDocType = GetE('selDocType').value ;
+ if ( sDocType == '...' )
+ sDocType = GetE('txtDocType').value ;
+
+ FCK.DocTypeDeclaration = sDocType ;
+
+ // XHTML Declarations.
+ if ( GetE('chkIncXHTMLDecl').checked )
+ {
+ if ( sCharSet.length == 0 )
+ sCharSet = 'utf-8' ;
+
+ FCK.XmlDeclaration = '<?xml version="1.0" encoding="' + sCharSet + '"?>' ;
+
+ SetAttribute( oHTML, 'xmlns', 'http://www.w3.org/1999/xhtml' ) ;
+ }
+ else
+ {
+ FCK.XmlDeclaration = null ;
+ oHTML.removeAttribute( 'xmlns', 0 ) ;
+ }
+
+ // ### Background
+ SetAttribute( oBody, 'bgcolor' , GetE('txtBackColor').value ) ;
+ SetAttribute( oBody, 'background' , GetE('txtBackImage').value ) ;
+ SetAttribute( oBody, 'bgproperties' , GetE('chkBackNoScroll').checked ? 'fixed' : '' ) ;
+
+ // ### Colors
+ SetAttribute( oBody, 'text' , GetE('txtColorText').value ) ;
+ SetAttribute( oBody, 'link' , GetE('txtColorLink').value ) ;
+ SetAttribute( oBody, 'vlink', GetE('txtColorVisited').value ) ;
+ SetAttribute( oBody, 'alink', GetE('txtColorActive').value ) ;
+
+ // ### Margins
+ SetAttribute( oBody, 'topmargin' , GetE('txtMarginTop').value ) ;
+ SetAttribute( oBody, 'leftmargin' , GetE('txtMarginLeft').value ) ;
+ SetAttribute( oBody, 'rightmargin' , GetE('txtMarginRight').value ) ;
+ SetAttribute( oBody, 'bottommargin' , GetE('txtMarginBottom').value ) ;
+
+ // ### Meta data
+ SetMetadata( 'keywords' , GetE('txtMetaKeywords').value ) ;
+ SetMetadata( 'description' , GetE('txtMetaDescription').value ) ;
+ SetMetadata( 'author' , GetE('txtMetaAuthor').value ) ;
+ SetMetadata( 'copyright' , GetE('txtMetaCopyright').value ) ;
+
+ return true ;
+}
+
+var bPreviewIsLoaded = false ;
+var oPreviewWindow ;
+var oPreviewBody ;
+
+// Called by the Preview page when loaded.
+function OnPreviewLoad( previewWindow, previewBody )
+{
+ oPreviewWindow = previewWindow ;
+ oPreviewBody = previewBody ;
+
+ bPreviewIsLoaded = true ;
+ UpdatePreview() ;
+}
+
+function UpdatePreview()
+{
+ if ( !bPreviewIsLoaded )
+ return ;
+
+ // ### Background
+ SetAttribute( oPreviewBody, 'bgcolor' , GetE('txtBackColor').value ) ;
+ SetAttribute( oPreviewBody, 'background' , GetE('txtBackImage').value ) ;
+ SetAttribute( oPreviewBody, 'bgproperties' , GetE('chkBackNoScroll').checked ? 'fixed' : '' ) ;
+
+ // ### Colors
+ SetAttribute( oPreviewBody, 'text', GetE('txtColorText').value ) ;
+
+ oPreviewWindow.SetLinkColor( GetE('txtColorLink').value ) ;
+ oPreviewWindow.SetVisitedColor( GetE('txtColorVisited').value ) ;
+ oPreviewWindow.SetActiveColor( GetE('txtColorActive').value ) ;
+}
+
+function CheckOther( combo, txtField )
+{
+ var bNotOther = ( combo.value != '...' ) ;
+
+ GetE(txtField).style.backgroundColor = ( bNotOther ? '#cccccc' : '' ) ;
+ GetE(txtField).disabled = bNotOther ;
+}
+
+function SetColor( inputId, color )
+{
+ GetE( inputId ).value = color + '' ;
+ UpdatePreview() ;
+}
+
+function SelectBackColor( color ) { SetColor('txtBackColor', color ) ; }
+function SelectColorText( color ) { SetColor('txtColorText', color ) ; }
+function SelectColorLink( color ) { SetColor('txtColorLink', color ) ; }
+function SelectColorVisited( color ) { SetColor('txtColorVisited', color ) ; }
+function SelectColorActive( color ) { SetColor('txtColorActive', color ) ; }
+
+function SelectColor( wich )
+{
+ switch ( wich )
+ {
+ case 'Back' : oEditor.FCKDialog.OpenDialog( 'FCKDialog_Color', FCKLang.DlgColorTitle, 'dialog/fck_colorselector.html', 400, 330, SelectBackColor, window ) ; return ;
+ case 'ColorText' : oEditor.FCKDialog.OpenDialog( 'FCKDialog_Color', FCKLang.DlgColorTitle, 'dialog/fck_colorselector.html', 400, 330, SelectColorText, window ) ; return ;
+ case 'ColorLink' : oEditor.FCKDialog.OpenDialog( 'FCKDialog_Color', FCKLang.DlgColorTitle, 'dialog/fck_colorselector.html', 400, 330, SelectColorLink, window ) ; return ;
+ case 'ColorVisited' : oEditor.FCKDialog.OpenDialog( 'FCKDialog_Color', FCKLang.DlgColorTitle, 'dialog/fck_colorselector.html', 400, 330, SelectColorVisited, window ) ; return ;
+ case 'ColorActive' : oEditor.FCKDialog.OpenDialog( 'FCKDialog_Color', FCKLang.DlgColorTitle, 'dialog/fck_colorselector.html', 400, 330, SelectColorActive, window ) ; return ;
+ }
+}
+
+function BrowseServerBack()
+{
+ var iLeft = (FCKConfig.ScreenWidth - FCKConfig.ImageBrowserWindowWidth) / 2 ;
+ var iTop = (FCKConfig.ScreenHeight - FCKConfig.ImageBrowserWindowHeight) / 2 ;
+
+ var sOptions = "toolbar=no,status=no,resizable=yes,dependent=yes" ;
+ sOptions += ",width=" + FCKConfig.LinkBrowserWindowWidth ;
+ sOptions += ",height=" + FCKConfig.LinkBrowserWindowHeight ;
+ sOptions += ",left=" + iLeft ;
+ sOptions += ",top=" + iTop ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ {
+ // The following change has been made otherwise IE will open the file
+ // browser on a different server session (on some cases):
+ // http://support.microsoft.com/default.aspx?scid=kb;en-us;831678
+ // by Simone Chiaretta.
+ var oWindow = oEditor.window.open( FCKConfig.ImageBrowserURL, "FCKBrowseWindow", sOptions ) ;
+ oWindow.opener = window ;
+ }
+ else
+ window.open( FCKConfig.ImageBrowserURL, "FCKBrowseWindow", sOptions ) ;
+}
+
+function SetUrl( url )
+{
+ GetE('txtBackImage').value = url ;
+ UpdatePreview() ;
+}
+
+ </script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td vAlign="top" height="100%">
+ <div id="divGeneral">
+ <span fckLang="DlgDocPageTitle">Page Title</span><br>
+ <input id="txtPageTitle" style="WIDTH: 100%" type="text">
+ <br>
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td>
+ <span fckLang="DlgDocLangDir">Language Direction</span><br>
+ <select id="selDirection">
+ <option value="" selected></option>
+ <option value="ltr" fckLang="DlgDocLangDirLTR">Left to Right (LTR)</option>
+ <option value="rtl" fckLang="DlgDocLangDirRTL">Right to Left (RTL)</option>
+ </select>
+ </td>
+ <td> </td>
+ <td>
+ <span fckLang="DlgDocLangCode">Language Code</span><br>
+ <input id="txtLang" type="text">
+ </td>
+ </tr>
+ </table>
+ <br>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td noWrap><span fckLang="DlgDocCharSet">Character Set Encoding</span><br>
+ <select id="selCharSet" onchange="CheckOther( this, 'txtCustomCharSet' );">
+ <option value="" selected></option>
+ <option value="us-ascii">ASCII</option>
+ <option value="iso-8859-2">Central European</option>
+ <option value="big5">Chinese Traditional (Big5)</option>
+ <option value="iso-8859-5">Cyrillic</option>
+ <option value="iso-8859-7">Greek</option>
+ <option value="iso-2022-jp">Japanese</option>
+ <option value="iso-2022-kr">Korean</option>
+ <option value="iso-8859-9">Turkish</option>
+ <option value="utf-8">Unicode (UTF-8)</option>
+ <option value="iso-8859-1">Western European</option>
+ <option value="..." fckLang="DlgOpOther"><Other></option>
+ </select>
+ </td>
+ <td> </td>
+ <td width="100%">
+ <span fckLang="DlgDocCharSetOther">Other Character Set Encoding</span><br>
+ <input id="txtCustomCharSet" style="WIDTH: 100%; BACKGROUND-COLOR: #cccccc" disabled type="text">
+ </td>
+ </tr>
+ <tr>
+ <td colspan="3"> </td>
+ </tr>
+ <tr>
+ <td nowrap>
+ <span fckLang="DlgDocDocType">Document Type Heading</span><br>
+ <select id="selDocType" name="selDocType" onchange="CheckOther( this, 'txtDocType' );">
+ <option value="" selected></option>
+ <option value='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">'>HTML
+ 4.01 Transitional</option>
+ <option value='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">'>HTML
+ 4.01 Strict</option>
+ <option value='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">'>HTML
+ 4.01 Frameset</option>
+ <option value='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">'>XHTML
+ 1.0 Transitional</option>
+ <option value='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">'>XHTML
+ 1.0 Strict</option>
+ <option value='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">'>XHTML
+ 1.0 Frameset</option>
+ <option value='<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">'>XHTML
+ 1.1</option>
+ <option value='<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">'>HTML 3.2</option>
+ <option value='<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">'>HTML 2.0</option>
+ <option value="..." fckLang="DlgOpOther"><Other></option>
+ </select>
+ </td>
+ <td></td>
+ <td width="100%">
+ <span fckLang="DlgDocDocTypeOther">Other Document Type Heading</span><br>
+ <input id="txtDocType" style="WIDTH: 100%; BACKGROUND-COLOR: #cccccc" disabled type="text">
+ </td>
+ </tr>
+ </table>
+ <br>
+ <input id="chkIncXHTMLDecl" type="checkbox"> <label for="chkIncXHTMLDecl" fckLang="DlgDocIncXHTML">Include
+ XHTML Declarations</label>
+ </div>
+ <div id="divBackground" style="DISPLAY: none">
+ <span fckLang="DlgDocBgColor">Background Color</span><br>
+ <input id="txtBackColor" type="text" onchange="UpdatePreview();" onkeyup="UpdatePreview();"> <input id="btnSelBackColor" onclick="SelectColor( 'Back' )" type="button" value="Select..."
+ fckLang="DlgCellBtnSelect"><br>
+ <br>
+ <span fckLang="DlgDocBgImage">Background Image URL</span><br>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td width="100%"><input id="txtBackImage" style="WIDTH: 100%" type="text" onchange="UpdatePreview();" onkeyup="UpdatePreview();"></td>
+ <td nowrap> <input id="btnBrowse" onclick="BrowseServerBack();" type="button" fckLang="DlgBtnBrowseServer" value="Browse Server" fckLang="DlgBtnBrowseServer"></td>
+ </tr>
+ </table>
+ <input id="chkBackNoScroll" type="checkbox" onclick="UpdatePreview();"> <label for="chkBackNoScroll" fckLang="DlgDocBgNoScroll">Nonscrolling
+ Background</label>
+ </div>
+ <div id="divColors" style="DISPLAY: none">
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <span fckLang="DlgDocCText">Text</span><br>
+ <input id="txtColorText" type="text" onchange="UpdatePreview();" onkeyup="UpdatePreview();"><input onclick="SelectColor( 'ColorText' )" type="button" value="Select..." fckLang="DlgCellBtnSelect">
+ <br>
+ <span fckLang="DlgDocCLink">Link</span><br>
+ <input id="txtColorLink" type="text" onchange="UpdatePreview();" onkeyup="UpdatePreview();"><input onclick="SelectColor( 'ColorLink' )" type="button" value="Select..." fckLang="DlgCellBtnSelect">
+ <br>
+ <span fckLang="DlgDocCVisited">Visited Link</span><br>
+ <input id="txtColorVisited" type="text" onchange="UpdatePreview();" onkeyup="UpdatePreview();"><input onclick="SelectColor( 'ColorVisited' )" type="button" value="Select..." fckLang="DlgCellBtnSelect">
+ <br>
+ <span fckLang="DlgDocCActive">Active Link</span><br>
+ <input id="txtColorActive" type="text" onchange="UpdatePreview();" onkeyup="UpdatePreview();"><input onclick="SelectColor( 'ColorActive' )" type="button" value="Select..." fckLang="DlgCellBtnSelect">
+ </td>
+ <td valign="middle" align="center">
+ <table cellspacing="2" cellpadding="0" border="0">
+ <tr>
+ <td><span fckLang="DlgDocMargins">Page Margins</span></td>
+ </tr>
+ <tr>
+ <td style="BORDER: #000000 1px solid; PADDING: 5px">
+ <table cellpadding="0" cellspacing="0" border="0" dir="ltr">
+ <tr>
+ <td align="center" colspan="3">
+ <span fckLang="DlgDocMaTop">Top</span><br>
+ <input id="txtMarginTop" type="text" size="3">
+ </td>
+ </tr>
+ <tr>
+ <td align="left">
+ <span fckLang="DlgDocMaLeft">Left</span><br>
+ <input id="txtMarginLeft" type="text" size="3">
+ </td>
+ <td> </td>
+ <td align="right">
+ <span fckLang="DlgDocMaRight">Right</span><BR>
+ <input id="txtMarginRight" type="text" size="3">
+ </td>
+ </tr>
+ <tr>
+ <td align="center" colspan="3">
+ <span fckLang="DlgDocMaBottom">Bottom</span><br>
+ <input id="txtMarginBottom" type="text" size="3">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divMeta" style="DISPLAY: none">
+ <span fckLang="DlgDocMeIndex">Document Indexing Keywords (comma separated)</span><br>
+ <textarea id="txtMetaKeywords" style="WIDTH: 100%" rows="2" cols="20"></textarea>
+ <br>
+ <span fckLang="DlgDocMeDescr">Document Description</span><br>
+ <textarea id="txtMetaDescription" style="WIDTH: 100%" rows="4" cols="20"></textarea>
+ <br>
+ <span fckLang="DlgDocMeAuthor">Author</span><br>
+ <input id="txtMetaAuthor" style="WIDTH: 100%" type="text"><br>
+ <br>
+ <span fckLang="DlgDocMeCopy">Copyright</span><br>
+ <input id="txtMetaCopyright" type="text" style="WIDTH: 100%">
+ </div>
+ </td>
+ </tr>
+ <tr id="ePreview" style="DISPLAY: none">
+ <td>
+ <span fckLang="DlgDocPreview">Preview</span><br>
+ <iframe id="frmPreview" src="fck_docprops/fck_document_preview.html" width="100%" height="100"></iframe>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_find.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_find.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_find.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,162 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_find.html
+ * "Find" dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+function OnLoad()
+{
+ // Whole word is available on IE only.
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ document.getElementById('divWord').style.display = '' ;
+
+ // First of all, translate the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage( document ) ;
+
+ window.parent.SetAutoSize( true ) ;
+}
+
+function btnStat(frm)
+{
+ document.getElementById('btnFind').disabled =
+ ( document.getElementById('txtFind').value.length == 0 ) ;
+}
+
+function ReplaceTextNodes( parentNode, regex, replaceValue, replaceAll )
+{
+ for ( var i = 0 ; i < parentNode.childNodes.length ; i++ )
+ {
+ var oNode = parentNode.childNodes[i] ;
+ if ( oNode.nodeType == 3 )
+ {
+ var sReplaced = oNode.nodeValue.replace( regex, replaceValue ) ;
+ if ( oNode.nodeValue != sReplaced )
+ {
+ oNode.nodeValue = sReplaced ;
+ if ( ! replaceAll )
+ return true ;
+ }
+ }
+ else
+ {
+ if ( ReplaceTextNodes( oNode, regex, replaceValue ) )
+ return true ;
+ }
+ }
+ return false ;
+}
+
+function GetRegexExpr()
+{
+ if ( document.getElementById('chkWord').checked )
+ var sExpr = '\\b' + document.getElementById('txtFind').value + '\\b' ;
+ else
+ var sExpr = document.getElementById('txtFind').value ;
+
+ return sExpr ;
+}
+
+function GetCase()
+{
+ return ( document.getElementById('chkCase').checked ? '' : 'i' ) ;
+}
+
+var oRange = oEditor.FCK.EditorDocument.body.createTextRange() ;
+
+function Ok()
+{
+ if ( document.getElementById('txtFind').value.length == 0 )
+ return ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ FindIE() ;
+ else
+ FindGecko() ;
+}
+
+function FindIE()
+{
+ var iFlags = 0 ;
+
+ if ( chkCase.checked )
+ iFlags = iFlags | 4 ;
+
+ if ( chkWord.checked )
+ iFlags = iFlags | 2 ;
+
+ var bFound = oRange.findText( document.getElementById('txtFind').value, 1, iFlags ) ;
+
+ if ( bFound )
+ {
+ oRange.scrollIntoView() ;
+ oRange.select() ;
+ oRange.collapse(false) ;
+ oLastRangeFound = oRange ;
+ }
+ else
+ {
+ oRange = oEditor.FCK.EditorDocument.body.createTextRange() ;
+ alert( oEditor.FCKLang.DlgFindNotFoundMsg ) ;
+ }
+}
+
+function FindGecko()
+{
+ var bCase = document.getElementById('chkCase').checked ;
+ var bWord = document.getElementById('chkWord').checked ;
+
+ // window.find( searchString, caseSensitive, backwards, wrapAround, wholeWord, searchInFrames, showDialog ) ;
+ oEditor.FCK.EditorWindow.find( document.getElementById('txtFind').value, bCase, false, false, bWord, false, false ) ;
+
+}
+ </script>
+ </head>
+ <body onload="OnLoad()" scroll="no" style="OVERFLOW: hidden">
+ <table cellSpacing="3" cellPadding="2" width="100%" border="0">
+ <tr>
+ <td nowrap>
+ <label for="txtFind" fckLang="DlgReplaceFindLbl">Find what:</label>
+ </td>
+ <td width="100%">
+ <input id="txtFind" style="WIDTH: 100%" tabIndex="1" type="text">
+ </td>
+ <td>
+ <input id="btnFind" style="WIDTH: 100%; PADDING-RIGHT: 5px; PADDING-LEFT: 5px" onclick="Ok();"
+ type="button" value="Find" fckLang="DlgFindFindBtn">
+ </td>
+ </tr>
+ <tr>
+ <td valign="bottom" colSpan="3">
+ <input id="chkCase" tabIndex="3" type="checkbox"><label for="chkCase" fckLang="DlgReplaceCaseChk">Match
+ case</label>
+ <br>
+ <div id="divWord" style="DISPLAY: none">
+ <input id="chkWord" tabIndex="4" type="checkbox"><label for="chkWord" fckLang="DlgReplaceWordChk">Match
+ whole word</label>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash/fck_flash.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash/fck_flash.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash/fck_flash.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,283 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_flash.js
+ * Scripts related to the Flash dialog window (see fck_flash.html).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCK = oEditor.FCK ;
+var FCKLang = oEditor.FCKLang ;
+var FCKConfig = oEditor.FCKConfig ;
+
+//#### Dialog Tabs
+
+// Set the dialog tabs.
+window.parent.AddTab( 'Info', oEditor.FCKLang.DlgInfoTab ) ;
+
+if ( FCKConfig.FlashUpload )
+ window.parent.AddTab( 'Upload', FCKLang.DlgLnkUpload ) ;
+
+if ( !FCKConfig.FlashDlgHideAdvanced )
+ window.parent.AddTab( 'Advanced', oEditor.FCKLang.DlgAdvancedTag ) ;
+
+// Function called when a dialog tag is selected.
+function OnDialogTabChange( tabCode )
+{
+ ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
+ ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
+ ShowE('divAdvanced' , ( tabCode == 'Advanced' ) ) ;
+}
+
+// Get the selected flash embed (if available).
+var oFakeImage = FCK.Selection.GetSelectedElement() ;
+var oEmbed ;
+
+if ( oFakeImage )
+{
+ if ( oFakeImage.tagName == 'IMG' && oFakeImage.getAttribute('_fckflash') )
+ oEmbed = FCK.GetRealElement( oFakeImage ) ;
+ else
+ oFakeImage = null ;
+}
+
+window.onload = function()
+{
+ // Translate the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ // Load the selected element information (if any).
+ LoadSelection() ;
+
+ // Show/Hide the "Browse Server" button.
+ GetE('tdBrowse').style.display = FCKConfig.FlashBrowser ? '' : 'none' ;
+
+ // Set the actual uploader URL.
+ if ( FCKConfig.FlashUpload )
+ GetE('frmUpload').action = FCKConfig.FlashUploadURL ;
+
+ window.parent.SetAutoSize( true ) ;
+
+ // Activate the "OK" button.
+ window.parent.SetOkButton( true ) ;
+}
+
+function LoadSelection()
+{
+ if ( ! oEmbed ) return ;
+
+ var sUrl = GetAttribute( oEmbed, 'src', '' ) ;
+
+ GetE('txtUrl').value = GetAttribute( oEmbed, 'src', '' ) ;
+ GetE('txtWidth').value = GetAttribute( oEmbed, 'width', '' ) ;
+ GetE('txtHeight').value = GetAttribute( oEmbed, 'height', '' ) ;
+
+ // Get Advances Attributes
+ GetE('txtAttId').value = oEmbed.id ;
+ GetE('chkAutoPlay').checked = GetAttribute( oEmbed, 'play', 'true' ) == 'true' ;
+ GetE('chkLoop').checked = GetAttribute( oEmbed, 'loop', 'true' ) == 'true' ;
+ GetE('chkMenu').checked = GetAttribute( oEmbed, 'menu', 'true' ) == 'true' ;
+ GetE('cmbScale').value = GetAttribute( oEmbed, 'scale', '' ).toLowerCase() ;
+
+ GetE('txtAttTitle').value = oEmbed.title ;
+ GetE('txtAttClasses').value = oEmbed.getAttribute('class',2) || '' ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ GetE('txtAttStyle').value = oEmbed.style.cssText ;
+ else
+ GetE('txtAttStyle').value = oEmbed.getAttribute('style',2) ;
+
+ UpdatePreview() ;
+}
+
+//#### The OK button was hit.
+function Ok()
+{
+ if ( GetE('txtUrl').value.length == 0 )
+ {
+ window.parent.SetSelectedTab( 'Info' ) ;
+ GetE('txtUrl').focus() ;
+
+ alert( oEditor.FCKLang.DlgAlertUrl ) ;
+
+ return false ;
+ }
+
+ if ( !oEmbed )
+ {
+ oEmbed = FCK.EditorDocument.createElement( 'EMBED' ) ;
+ oFakeImage = null ;
+ }
+ UpdateEmbed( oEmbed ) ;
+
+ if ( !oFakeImage )
+ {
+ oFakeImage = oEditor.FCKDocumentProcessors_CreateFakeImage( 'FCK__Flash', oEmbed ) ;
+ oFakeImage.setAttribute( '_fckflash', 'true', 0 ) ;
+ oFakeImage = FCK.InsertElementAndGetIt( oFakeImage ) ;
+ }
+ else
+ oEditor.FCKUndo.SaveUndoStep() ;
+
+ oEditor.FCKFlashProcessor.RefreshView( oFakeImage, oEmbed ) ;
+
+ return true ;
+}
+
+function UpdateEmbed( e )
+{
+ SetAttribute( e, 'type' , 'application/x-shockwave-flash' ) ;
+ SetAttribute( e, 'pluginspage' , 'http://www.macromedia.com/go/getflashplayer' ) ;
+
+ e.src = GetE('txtUrl').value ;
+ SetAttribute( e, "width" , GetE('txtWidth').value ) ;
+ SetAttribute( e, "height", GetE('txtHeight').value ) ;
+
+ // Advances Attributes
+
+ SetAttribute( e, 'id' , GetE('txtAttId').value ) ;
+ SetAttribute( e, 'scale', GetE('cmbScale').value ) ;
+
+ if ( !GetE('chkAutoPlay').checked ) SetAttribute( e, 'play', 'false' ) ;
+ if ( !GetE('chkLoop').checked ) SetAttribute( e, 'loop', 'false' ) ;
+ if ( !GetE('chkMenu').checked ) SetAttribute( e, 'menu', 'false' ) ;
+
+ SetAttribute( e, 'title' , GetE('txtAttTitle').value ) ;
+ SetAttribute( e, 'class' , GetE('txtAttClasses').value ) ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ e.style.cssText = GetE('txtAttStyle').value ;
+ else
+ SetAttribute( e, 'style', GetE('txtAttStyle').value ) ;
+}
+
+function UpdatePreview()
+{
+ var oCell = GetE('ePreviewCell') ;
+
+ while ( oCell.firstChild )
+ oCell.removeChild( oCell.firstChild ) ;
+
+ if ( GetE('txtUrl').value.length == 0 )
+ oCell.innerHTML = ' ' ;
+ else
+ {
+ var e = document.createElement( 'EMBED' ) ;
+
+ e.src = GetE('txtUrl').value ;
+ e.type = 'application/x-shockwave-flash' ;
+ e.width = '100%' ;
+ e.height = '100%' ;
+
+ oCell.appendChild( e ) ;
+ }
+}
+
+// <embed id="ePreview" src="fck_flash/claims.swf" width="100%" height="100%" style="visibility:hidden" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">
+
+function BrowseServer()
+{
+ OpenServerBrowser(
+ 'Flash',
+ FCKConfig.FlashBrowserURL,
+ FCKConfig.FlashBrowserWindowWidth,
+ FCKConfig.FlashBrowserWindowHeight ) ;
+}
+
+function OpenServerBrowser( type, url, width, height )
+{
+ var iLeft = (FCKConfig.ScreenWidth - width) / 2 ;
+ var iTop = (FCKConfig.ScreenHeight - height) / 2 ;
+
+ var sOptions = "toolbar=no,status=no,resizable=yes,dependent=yes" ;
+ sOptions += ",width=" + width ;
+ sOptions += ",height=" + height ;
+ sOptions += ",left=" + iLeft ;
+ sOptions += ",top=" + iTop ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ {
+ // The following change has been made otherwise IE will open the file
+ // browser on a different server session (on some cases):
+ // http://support.microsoft.com/default.aspx?scid=kb;en-us;831678
+ // by Simone Chiaretta.
+ var oWindow = oEditor.window.open( url, "FCKBrowseWindow", sOptions ) ;
+ oWindow.opener = window ;
+ }
+ else
+ window.open( url, "FCKBrowseWindow", sOptions ) ;
+}
+
+function SetUrl( url )
+{
+ GetE('txtUrl').value = url ;
+ UpdatePreview() ;
+
+ window.parent.SetSelectedTab( 'Info' ) ;
+}
+
+function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
+{
+ switch ( errorNumber )
+ {
+ case 0 : // No errors
+ alert( 'Your file has been successfully uploaded' ) ;
+ break ;
+ case 1 : // Custom error
+ alert( customMsg ) ;
+ return ;
+ case 101 : // Custom warning
+ alert( customMsg ) ;
+ break ;
+ case 201 :
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
+ break ;
+ case 202 :
+ alert( 'Invalid file type' ) ;
+ return ;
+ case 203 :
+ alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
+ return ;
+ default :
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
+ return ;
+ }
+
+ SetUrl( fileUrl ) ;
+ GetE('frmUpload').reset() ;
+}
+
+var oUploadAllowedExtRegex = new RegExp( FCKConfig.FlashUploadAllowedExtensions, 'i' ) ;
+var oUploadDeniedExtRegex = new RegExp( FCKConfig.FlashUploadDeniedExtensions, 'i' ) ;
+
+function CheckUpload()
+{
+ var sFile = GetE('txtUploadFile').value ;
+
+ if ( sFile.length == 0 )
+ {
+ alert( 'Please select a file to upload' ) ;
+ return false ;
+ }
+
+ if ( ( FCKConfig.FlashUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
+ ( FCKConfig.FlashUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
+ {
+ OnUploadCompleted( 202 ) ;
+ return false ;
+ }
+
+ return true ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_flash.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,142 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_flash.html
+ * Flash Properties dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Flash Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script src="fck_flash/fck_flash.js" type="text/javascript"></script>
+ <link href="common/fck_dialog_common.css" type="text/css" rel="stylesheet">
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <div id="divInfo">
+ <table cellSpacing="1" cellPadding="1" width="100%" border="0">
+ <tr>
+ <td>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td width="100%"><span fckLang="DlgImgURL">URL</span>
+ </td>
+ <td id="tdBrowse" style="DISPLAY: none" noWrap rowSpan="2"> <input id="btnBrowse" onclick="BrowseServer();" type="button" value="Browse Server" fckLang="DlgBtnBrowseServer">
+ </td>
+ </tr>
+ <tr>
+ <td vAlign="top"><input id="txtUrl" onblur="UpdatePreview();" style="WIDTH: 100%" type="text">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <TR>
+ <TD>
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <TR>
+ <TD nowrap>
+ <span fckLang="DlgImgWidth">Width</span><br>
+ <input id="txtWidth" class="FCK__FieldNumeric" type="text" size="3">
+ </TD>
+ <TD> </TD>
+ <TD>
+ <span fckLang="DlgImgHeight">Height</span><br>
+ <input id="txtHeight" class="FCK__FieldNumeric" type="text" size="3">
+ </TD>
+ </TR>
+ </table>
+ </TD>
+ </TR>
+ <tr>
+ <td vAlign="top">
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td valign="top" width="100%">
+ <table cellSpacing="0" cellPadding="0" width="100%">
+ <tr>
+ <td><span fckLang="DlgImgPreview">Preview</span></td>
+ </tr>
+ <tr>
+ <td id="ePreviewCell" valign="top" class="FlashPreviewArea"> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divUpload" style="DISPLAY: none">
+ <form id="frmUpload" method="post" target="UploadWindow" enctype="multipart/form-data" action="" onsubmit="return CheckUpload();">
+ <span fckLang="DlgLnkUpload">Upload</span><br />
+ <input id="txtUploadFile" style="WIDTH: 100%" type="file" size="40" name="NewFile" /><br />
+ <br />
+ <input id="btnUpload" type="submit" value="Send it to the Server" fckLang="DlgLnkBtnUpload" />
+ <iframe name="UploadWindow" style="DISPLAY: none" src="../fckblank.html"></iframe>
+ </form>
+ </div>
+ <div id="divAdvanced" style="DISPLAY: none">
+ <TABLE cellSpacing="0" cellPadding="0" border="0">
+ <TR>
+ <TD nowrap>
+ <span fckLang="DlgFlashScale">Scale</span><BR>
+ <select id="cmbScale">
+ <option value="" selected></option>
+ <option value="showall" fckLang="DlgFlashScaleAll">Show all</option>
+ <option value="noborder" fckLang="DlgFlashScaleNoBorder">No Border</option>
+ <option value="exactfit" fckLang="DlgFlashScaleFit">Exact Fit</option>
+ </select></TD>
+ <TD>
+ </TD>
+ <td valign="bottom">
+ <table>
+ <tr>
+ <td><input id="chkAutoPlay" type="checkbox" checked></td>
+ <td><label for="chkAutoPlay" nowrap fckLang="DlgFlashChkPlay">Auto Play</label> </td>
+ <td><input id="chkLoop" type="checkbox" checked></td>
+ <td><label for="chkLoop" nowrap fckLang="DlgFlashChkLoop">Loop</label> </td>
+ <td><input id="chkMenu" type="checkbox" checked></td>
+ <td><label for="chkMenu" nowrap fckLang="DlgFlashChkMenu">Enable Flash Menu</label></td>
+ </tr>
+ </table>
+ </td>
+ </TR>
+ </TABLE>
+ <br>
+
+ <table cellSpacing="0" cellPadding="0" width="100%" align="center" border="0">
+ <tr>
+ <td vAlign="top" width="50%"><span fckLang="DlgGenId">Id</span><br>
+ <input id="txtAttId" style="WIDTH: 100%" type="text">
+ </td>
+ <td> </td>
+ <td vAlign="top" nowrap><span fckLang="DlgGenClass">Stylesheet Classes</span><br>
+ <input id="txtAttClasses" style="WIDTH: 100%" type="text">
+ </td>
+ <td> </td>
+ <td vAlign="top" nowrap width="50%"> <span fckLang="DlgGenTitle">Advisory Title</span><br>
+ <input id="txtAttTitle" style="WIDTH: 100%" type="text">
+ </td>
+ </tr>
+ </table>
+ <span fckLang="DlgGenStyle">Style</span><br>
+ <input id="txtAttStyle" style="WIDTH: 100%" type="text">
+ </div>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_form.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_form.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_form.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,101 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_form.html
+ * Checkbox dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Checkbox Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.MoveToAncestorNode( 'FORM' ) ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtAction').value = oActiveEl.action ;
+ GetE('txtMethod').value = oActiveEl.method ;
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'FORM' ) ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ oActiveEl.innerHTML = ' ' ;
+ }
+
+ oActiveEl.name = GetE('txtName').value ;
+ SetAttribute( oActiveEl, 'action' , GetE('txtAction').value ) ;
+ oActiveEl.method = GetE('txtMethod').value ;
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table height="100%" width="100%">
+ <tr>
+ <td>
+ <table cellspacing="0" cellpadding="0" width="80%" border="0" valign="top" align="center">
+ <tr>
+ <td>
+ <span fckLang="DlgFormName">Name</span><br>
+ <input style="WIDTH: 100%" type="text" id="txtName">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgFormAction">Action</span><br>
+ <input style="WIDTH: 100%" type="text" id="txtAction">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgFormMethod">Method</span><br>
+ <select id="txtMethod">
+ <option value="get" selected>GET</option>
+ <option value="post">POST</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_hiddenfield.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_hiddenfield.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_hiddenfield.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_hiddenfield.html
+ * Hidden Field dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Hidden Field Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.GetSelectedElement() ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl && oActiveEl.tagName == 'INPUT' && oActiveEl.type == 'hidden' )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtValue').value = oActiveEl.value ;
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+
+function Ok()
+{
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'INPUT' ) ;
+ oActiveEl.type = 'hidden' ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ }
+
+ oActiveEl.name = GetE('txtName').value ;
+ SetAttribute( oActiveEl, 'value', GetE('txtValue').value ) ;
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table height="100%" width="100%">
+ <tr>
+ <td align="center">
+ <table border="0" class="inhoud" cellpadding="0" cellspacing="0" width="80%">
+ <tr>
+ <td>
+ <span fckLang="DlgHiddenName">Name</span><br>
+ <input type="text" size="20" id="txtName" style="WIDTH: 100%">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgHiddenValue">Value</span><br>
+ <input type="text" size="30" id="txtValue" style="WIDTH: 100%">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image/fck_image.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image/fck_image.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image/fck_image.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,442 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_image.js
+ * Scripts related to the Image dialog window (see fck_image.html).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCK = oEditor.FCK ;
+var FCKLang = oEditor.FCKLang ;
+var FCKConfig = oEditor.FCKConfig ;
+
+var bImageButton = ( document.location.search.length > 0 && document.location.search.substr(1) == 'ImageButton' ) ;
+
+//#### Dialog Tabs
+
+// Set the dialog tabs.
+window.parent.AddTab( 'Info', FCKLang.DlgImgInfoTab ) ;
+
+if ( !bImageButton && !FCKConfig.ImageDlgHideLink )
+ window.parent.AddTab( 'Link', FCKLang.DlgImgLinkTab ) ;
+
+if ( FCKConfig.ImageUpload )
+ window.parent.AddTab( 'Upload', FCKLang.DlgLnkUpload ) ;
+
+if ( !FCKConfig.ImageDlgHideAdvanced )
+ window.parent.AddTab( 'Advanced', FCKLang.DlgAdvancedTag ) ;
+
+// Function called when a dialog tag is selected.
+function OnDialogTabChange( tabCode )
+{
+ ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
+ ShowE('divLink' , ( tabCode == 'Link' ) ) ;
+ ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
+ ShowE('divAdvanced' , ( tabCode == 'Advanced' ) ) ;
+}
+
+// Get the selected image (if available).
+var oImage = FCK.Selection.GetSelectedElement() ;
+
+if ( oImage && oImage.tagName != 'IMG' && !( oImage.tagName == 'INPUT' && oImage.type == 'image' ) )
+ oImage = null ;
+
+// Get the active link.
+var oLink = FCK.Selection.MoveToAncestorNode( 'A' ) ;
+
+var oImageOriginal ;
+
+function UpdateOriginal( resetSize )
+{
+ oImageOriginal = document.createElement( 'IMG' ) ; // new Image() ;
+
+ if ( resetSize )
+ {
+ oImageOriginal.onload = function()
+ {
+ this.onload = null ;
+ ResetSizes() ;
+ }
+ }
+
+ oImageOriginal.src = GetE('imgPreview').src ;
+}
+
+window.onload = function()
+{
+ // Translate the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ GetE('btnLockSizes').title = FCKLang.DlgImgLockRatio ;
+ GetE('btnResetSize').title = FCKLang.DlgBtnResetSize ;
+
+ // Load the selected element information (if any).
+ LoadSelection() ;
+
+ // Show/Hide the "Browse Server" button.
+ GetE('tdBrowse').style.display = FCKConfig.ImageBrowser ? '' : 'none' ;
+ GetE('divLnkBrowseServer').style.display = FCKConfig.LinkBrowser ? '' : 'none' ;
+
+ UpdateOriginal() ;
+
+ // Set the actual uploader URL.
+ if ( FCKConfig.ImageUpload )
+ GetE('frmUpload').action = FCKConfig.ImageUploadURL ;
+
+ window.parent.SetAutoSize( true ) ;
+
+ // Activate the "OK" button.
+ window.parent.SetOkButton( true ) ;
+}
+
+function LoadSelection()
+{
+ if ( ! oImage ) return ;
+
+ var sUrl = GetAttribute( oImage, 'src', '' ) ;
+
+ // TODO: Wait stable version and remove the following commented lines.
+// if ( sUrl.startsWith( FCK.BaseUrl ) )
+// sUrl = sUrl.remove( 0, FCK.BaseUrl.length ) ;
+
+ GetE('txtUrl').value = sUrl ;
+ GetE('txtAlt').value = GetAttribute( oImage, 'alt', '' ) ;
+ GetE('txtVSpace').value = GetAttribute( oImage, 'vspace', '' ) ;
+ GetE('txtHSpace').value = GetAttribute( oImage, 'hspace', '' ) ;
+ GetE('txtBorder').value = GetAttribute( oImage, 'border', '' ) ;
+ GetE('cmbAlign').value = GetAttribute( oImage, 'align', '' ) ;
+
+ if ( oImage.style.pixelWidth > 0 )
+ GetE('txtWidth').value = oImage.style.pixelWidth ;
+ else
+ GetE('txtWidth').value = GetAttribute( oImage, "width", '' ) ;
+
+ if ( oImage.style.pixelHeight > 0 )
+ GetE('txtHeight').value = oImage.style.pixelHeight ;
+ else
+ GetE('txtHeight').value = GetAttribute( oImage, "height", '' ) ;
+
+ // Get Advances Attributes
+ GetE('txtAttId').value = oImage.id ;
+ GetE('cmbAttLangDir').value = oImage.dir ;
+ GetE('txtAttLangCode').value = oImage.lang ;
+ GetE('txtAttTitle').value = oImage.title ;
+ GetE('txtAttClasses').value = oImage.getAttribute('class',2) || '' ;
+ GetE('txtLongDesc').value = oImage.longDesc ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ GetE('txtAttStyle').value = oImage.style.cssText ;
+ else
+ GetE('txtAttStyle').value = oImage.getAttribute('style',2) ;
+
+ if ( oLink )
+ {
+ GetE('txtLnkUrl').value = oLink.getAttribute('href',2) ;
+ GetE('cmbLnkTarget').value = oLink.target ;
+ }
+
+ UpdatePreview() ;
+}
+
+//#### The OK button was hit.
+function Ok()
+{
+ if ( GetE('txtUrl').value.length == 0 )
+ {
+ window.parent.SetSelectedTab( 'Info' ) ;
+ GetE('txtUrl').focus() ;
+
+ alert( FCKLang.DlgImgAlertUrl ) ;
+
+ return false ;
+ }
+
+ var bHasImage = ( oImage != null ) ;
+
+ if ( bHasImage && bImageButton && oImage.tagName == 'IMG' )
+ {
+ if ( confirm( 'Do you want to transform the selected image on a image button?' ) )
+ oImage = null ;
+ }
+ else if ( bHasImage && !bImageButton && oImage.tagName == 'INPUT' )
+ {
+ if ( confirm( 'Do you want to transform the selected image button on a simple image?' ) )
+ oImage = null ;
+ }
+
+ if ( !bHasImage )
+ {
+ if ( bImageButton )
+ {
+ oImage = FCK.EditorDocument.createElement( 'INPUT' ) ;
+ oImage.type = 'image' ;
+ oImage = FCK.InsertElementAndGetIt( oImage ) ;
+ }
+ else
+ oImage = FCK.CreateElement( 'IMG' ) ;
+ }
+ else
+ oEditor.FCKUndo.SaveUndoStep() ;
+
+ UpdateImage( oImage ) ;
+
+ var sLnkUrl = GetE('txtLnkUrl').value.trim() ;
+
+ if ( sLnkUrl.length == 0 )
+ {
+ if ( oLink )
+ FCK.ExecuteNamedCommand( 'Unlink' ) ;
+ }
+ else
+ {
+ if ( oLink ) // Modifying an existent link.
+ oLink.href = sLnkUrl ;
+ else // Creating a new link.
+ {
+ if ( !bHasImage )
+ oEditor.FCKSelection.SelectNode( oImage ) ;
+
+ oLink = oEditor.FCK.CreateLink( sLnkUrl ) ;
+
+ if ( !bHasImage )
+ {
+ oEditor.FCKSelection.SelectNode( oLink ) ;
+ oEditor.FCKSelection.Collapse( false ) ;
+ }
+ }
+
+ SetAttribute( oLink, 'target', GetE('cmbLnkTarget').value ) ;
+ }
+
+ return true ;
+}
+
+function UpdateImage( e, skipId )
+{
+ e.src = GetE('txtUrl').value ;
+ SetAttribute( e, "alt" , GetE('txtAlt').value ) ;
+ SetAttribute( e, "width" , GetE('txtWidth').value ) ;
+ SetAttribute( e, "height", GetE('txtHeight').value ) ;
+ SetAttribute( e, "vspace", GetE('txtVSpace').value ) ;
+ SetAttribute( e, "hspace", GetE('txtHSpace').value ) ;
+ SetAttribute( e, "border", GetE('txtBorder').value ) ;
+ SetAttribute( e, "align" , GetE('cmbAlign').value ) ;
+
+ // Advances Attributes
+
+ if ( ! skipId )
+ SetAttribute( e, 'id', GetE('txtAttId').value ) ;
+
+ SetAttribute( e, 'dir' , GetE('cmbAttLangDir').value ) ;
+ SetAttribute( e, 'lang' , GetE('txtAttLangCode').value ) ;
+ SetAttribute( e, 'title' , GetE('txtAttTitle').value ) ;
+ SetAttribute( e, 'class' , GetE('txtAttClasses').value ) ;
+ SetAttribute( e, 'longDesc' , GetE('txtLongDesc').value ) ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ e.style.cssText = GetE('txtAttStyle').value ;
+ else
+ SetAttribute( e, 'style', GetE('txtAttStyle').value ) ;
+}
+
+function UpdatePreview()
+{
+ if ( GetE('txtUrl').value.length == 0 )
+ GetE('lnkPreview').style.display = 'none' ;
+ else
+ {
+ UpdateImage( GetE('imgPreview'), true ) ;
+
+ if ( GetE('txtLnkUrl').value.trim().length > 0 )
+ GetE('lnkPreview').href = 'javascript:void(null);' ;
+ else
+ SetAttribute( GetE('lnkPreview'), 'href', '' ) ;
+
+ GetE('lnkPreview').style.display = '' ;
+ }
+}
+
+var bLockRatio = true ;
+
+function SwitchLock( lockButton )
+{
+ bLockRatio = !bLockRatio ;
+ lockButton.className = bLockRatio ? 'BtnLocked' : 'BtnUnlocked' ;
+ lockButton.title = bLockRatio ? 'Lock sizes' : 'Unlock sizes' ;
+
+ if ( bLockRatio )
+ {
+ if ( GetE('txtWidth').value.length > 0 )
+ OnSizeChanged( 'Width', GetE('txtWidth').value ) ;
+ else
+ OnSizeChanged( 'Height', GetE('txtHeight').value ) ;
+ }
+}
+
+// Fired when the width or height input texts change
+function OnSizeChanged( dimension, value )
+{
+ // Verifies if the aspect ration has to be mantained
+ if ( oImageOriginal && bLockRatio )
+ {
+ if ( value.length == 0 || isNaN( value ) )
+ {
+ GetE('txtHeight').value = GetE('txtWidth').value = '' ;
+ return ;
+ }
+
+ if ( dimension == 'Width' )
+ GetE('txtHeight').value = value == 0 ? 0 : Math.round( oImageOriginal.height * ( value / oImageOriginal.width ) ) ;
+ else
+ GetE('txtWidth').value = value == 0 ? 0 : Math.round( oImageOriginal.width * ( value / oImageOriginal.height ) ) ;
+ }
+
+ UpdatePreview() ;
+}
+
+// Fired when the Reset Size button is clicked
+function ResetSizes()
+{
+ if ( ! oImageOriginal ) return ;
+
+ GetE('txtWidth').value = oImageOriginal.width ;
+ GetE('txtHeight').value = oImageOriginal.height ;
+
+ UpdatePreview() ;
+}
+
+function BrowseServer()
+{
+ OpenServerBrowser(
+ 'Image',
+ FCKConfig.ImageBrowserURL,
+ FCKConfig.ImageBrowserWindowWidth,
+ FCKConfig.ImageBrowserWindowHeight ) ;
+}
+
+function LnkBrowseServer()
+{
+ OpenServerBrowser(
+ 'Link',
+ FCKConfig.LinkBrowserURL,
+ FCKConfig.LinkBrowserWindowWidth,
+ FCKConfig.LinkBrowserWindowHeight ) ;
+}
+
+function OpenServerBrowser( type, url, width, height )
+{
+ sActualBrowser = type ;
+
+ var iLeft = (FCKConfig.ScreenWidth - width) / 2 ;
+ var iTop = (FCKConfig.ScreenHeight - height) / 2 ;
+
+ var sOptions = "toolbar=no,status=no,resizable=yes,dependent=yes" ;
+ sOptions += ",width=" + width ;
+ sOptions += ",height=" + height ;
+ sOptions += ",left=" + iLeft ;
+ sOptions += ",top=" + iTop ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ {
+ // The following change has been made otherwise IE will open the file
+ // browser on a different server session (on some cases):
+ // http://support.microsoft.com/default.aspx?scid=kb;en-us;831678
+ // by Simone Chiaretta.
+ var oWindow = oEditor.window.open( url, "FCKBrowseWindow", sOptions ) ;
+ oWindow.opener = window ;
+ }
+ else
+ window.open( url, "FCKBrowseWindow", sOptions ) ;
+}
+
+var sActualBrowser ;
+
+function SetUrl( url, width, height, alt )
+{
+ if ( sActualBrowser == 'Link' )
+ {
+ GetE('txtLnkUrl').value = url ;
+ UpdatePreview() ;
+ }
+ else
+ {
+ GetE('txtUrl').value = url ;
+ GetE('txtWidth').value = width ? width : '' ;
+ GetE('txtHeight').value = height ? height : '' ;
+
+ if ( alt )
+ GetE('txtAlt').value = alt;
+
+ UpdatePreview() ;
+ UpdateOriginal( true ) ;
+ }
+
+ window.parent.SetSelectedTab( 'Info' ) ;
+}
+
+function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
+{
+ switch ( errorNumber )
+ {
+ case 0 : // No errors
+ alert( 'Your file has been successfully uploaded' ) ;
+ break ;
+ case 1 : // Custom error
+ alert( customMsg ) ;
+ return ;
+ case 101 : // Custom warning
+ alert( customMsg ) ;
+ break ;
+ case 201 :
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
+ break ;
+ case 202 :
+ alert( 'Invalid file type' ) ;
+ return ;
+ case 203 :
+ alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
+ return ;
+ default :
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
+ return ;
+ }
+
+ sActualBrowser = ''
+ SetUrl( fileUrl ) ;
+ GetE('frmUpload').reset() ;
+}
+
+var oUploadAllowedExtRegex = new RegExp( FCKConfig.ImageUploadAllowedExtensions, 'i' ) ;
+var oUploadDeniedExtRegex = new RegExp( FCKConfig.ImageUploadDeniedExtensions, 'i' ) ;
+
+function CheckUpload()
+{
+ var sFile = GetE('txtUploadFile').value ;
+
+ if ( sFile.length == 0 )
+ {
+ alert( 'Please select a file to upload' ) ;
+ return false ;
+ }
+
+ if ( ( FCKConfig.ImageUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
+ ( FCKConfig.ImageUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
+ {
+ OnUploadCompleted( 202 ) ;
+ return false ;
+ }
+
+ return true ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_image.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,242 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_image.html
+ * Image Properties dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>Image Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script src="fck_image/fck_image.js" type="text/javascript"></script>
+ <link href="common/fck_dialog_common.css" rel="stylesheet" type="text/css" />
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <div id="divInfo">
+ <table cellspacing="1" cellpadding="1" border="0" width="100%" height="100%">
+ <tr>
+ <td>
+ <table cellspacing="0" cellpadding="0" width="100%" border="0">
+ <tr>
+ <td width="100%">
+ <span fckLang="DlgImgURL">URL</span>
+ </td>
+ <td id="tdBrowse" style="DISPLAY: none" nowrap rowspan="2">
+ <input id="btnBrowse" onclick="BrowseServer();" type="button" value="Browse Server" fckLang="DlgBtnBrowseServer">
+ </td>
+ </tr>
+ <tr>
+ <td valign="top">
+ <input id="txtUrl" style="WIDTH: 100%" type="text" onblur="UpdatePreview();">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgImgAlt">Short Description</span><br />
+ <input id="txtAlt" style="WIDTH: 100%" type="text"><br />
+ </td>
+ </tr>
+ <tr height="100%">
+ <td valign="top">
+ <table cellspacing="0" cellpadding="0" width="100%" border="0" height="100%">
+ <tr>
+ <td valign="top">
+ <br />
+ <table cellspacing="0" cellpadding="0" border="0">
+ <tr>
+ <td nowrap><span fckLang="DlgImgWidth">Width</span> </td>
+ <td>
+ <input type="text" size="3" id="txtWidth" onkeyup="OnSizeChanged('Width',this.value);"></td>
+ <td nowrap rowspan="2">
+ <div id="btnLockSizes" class="BtnLocked" onmouseover="this.className = (bLockRatio ? 'BtnLocked' : 'BtnUnlocked' ) + ' BtnOver';"
+ onmouseout="this.className = (bLockRatio ? 'BtnLocked' : 'BtnUnlocked' );" title="Lock Sizes"
+ onclick="SwitchLock(this);"></div>
+ <div id="btnResetSize" class="BtnReset" onmouseover="this.className='BtnReset BtnOver';"
+ onmouseout="this.className='BtnReset';" title="Reset Size" onclick="ResetSizes();"></div>
+ </td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgImgHeight">Height</span> </td>
+ <td>
+ <input type="text" size="3" id="txtHeight" onkeyup="OnSizeChanged('Height',this.value);"></td>
+ </tr>
+ </table>
+ <br />
+ <table cellspacing="0" cellpadding="0" border="0">
+ <tr>
+ <td nowrap><span fckLang="DlgImgBorder">Border</span> </td>
+ <td>
+ <input type="text" size="2" value="" id="txtBorder" onkeyup="UpdatePreview();"></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgImgHSpace">HSpace</span> </td>
+ <td>
+ <input type="text" size="2" id="txtHSpace" onkeyup="UpdatePreview();"></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgImgVSpace">VSpace</span> </td>
+ <td>
+ <input type="text" size="2" id="txtVSpace" onkeyup="UpdatePreview();"></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgImgAlign">Align</span> </td>
+ <td><select id="cmbAlign" onchange="UpdatePreview();">
+ <option value="" selected></option>
+ <option fckLang="DlgImgAlignLeft" value="left">Left</option>
+ <option fckLang="DlgImgAlignAbsBottom" value="absBottom">Abs Bottom</option>
+ <option fckLang="DlgImgAlignAbsMiddle" value="absMiddle">Abs Middle</option>
+ <option fckLang="DlgImgAlignBaseline" value="baseline">Baseline</option>
+ <option fckLang="DlgImgAlignBottom" value="bottom">Bottom</option>
+ <option fckLang="DlgImgAlignMiddle" value="middle">Middle</option>
+ <option fckLang="DlgImgAlignRight" value="right">Right</option>
+ <option fckLang="DlgImgAlignTextTop" value="textTop">Text Top</option>
+ <option fckLang="DlgImgAlignTop" value="top">Top</option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td> </td>
+ <td width="100%" valign="top">
+ <table cellpadding="0" cellspacing="0" width="100%" style="TABLE-LAYOUT: fixed">
+ <tr>
+ <td><span fckLang="DlgImgPreview">Preview</span></td>
+ </tr>
+ <tr>
+ <td valign="top">
+ <div class="ImagePreviewArea">
+ <a id="lnkPreview" onclick="return false;" style="CURSOR: default"><img id="imgPreview" style="DISPLAY: none"></a>Magnus
+ es, domine, et laudabilis valde: magna virtus tua, et sapientiae tuae non est
+ numerus. et laudare te vult homo, aliqua portio creaturae tuae, et homo
+ circumferens mortalitem suam, circumferens testimonium peccati sui et
+ testimonium, quia superbis resistis: et tamen laudare te vult homo, aliqua
+ portio creaturae tuae.tu excitas, ut laudare te delectet, quia fecisti nos ad
+ te et inquietum est cor nostrum, donec requiescat in te. da mihi, domine, scire
+ et intellegere, utrum sit prius invocare te an laudare te, et scire te prius
+ sit an invocare te. sed quis te invocat nesciens te? aliud enim pro alio potest
+ invocare nesciens. an potius invocaris, ut sciaris? quomodo autem invocabunt,
+ in quem non crediderunt? aut quomodo credent sine praedicante? et laudabunt
+ dominum qui requirunt eum. quaerentes enim inveniunt eum et invenientes
+ laudabunt eum. quaeram te, domine, invocans te, et invocem te credens in te:
+ praedicatus enim es nobis. invocat te, domine, fides mea, quam dedisti mihi,
+ quam inspirasti mihi per humanitatem filii tui, per ministerium praedicatoris
+ tui.
+ </div>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divUpload" style="DISPLAY: none">
+ <form id="frmUpload" method="post" target="UploadWindow" enctype="multipart/form-data" action="" onsubmit="return CheckUpload();">
+ <span fckLang="DlgLnkUpload">Upload</span><br />
+ <input id="txtUploadFile" style="WIDTH: 100%" type="file" size="40" name="NewFile" /><br />
+ <br />
+ <input id="btnUpload" type="submit" value="Send it to the Server" fckLang="DlgLnkBtnUpload" />
+ <iframe name="UploadWindow" style="DISPLAY: none" src="../fckblank.html"></iframe>
+ </form>
+ </div>
+ <div id="divLink" style="DISPLAY: none">
+ <table cellspacing="1" cellpadding="1" border="0" width="100%">
+ <tr>
+ <td>
+ <div>
+ <span fckLang="DlgLnkURL">URL</span><br />
+ <input id="txtLnkUrl" style="WIDTH: 100%" type="text" onblur="UpdatePreview();" />
+ </div>
+ <div id="divLnkBrowseServer" align="right">
+ <input type="button" value="Browse Server" fckLang="DlgBtnBrowseServer" onclick="LnkBrowseServer();" />
+ </div>
+ <div>
+ <span fckLang="DlgLnkTarget">Target</span><br />
+ <select id="cmbLnkTarget">
+ <option value="" fckLang="DlgGenNotSet" selected="selected"><not set></option>
+ <option value="_blank" fckLang="DlgLnkTargetBlank">New Window (_blank)</option>
+ <option value="_top" fckLang="DlgLnkTargetTop">Topmost Window (_top)</option>
+ <option value="_self" fckLang="DlgLnkTargetSelf">Same Window (_self)</option>
+ <option value="_parent" fckLang="DlgLnkTargetParent">Parent Window (_parent)</option>
+ </select>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divAdvanced" style="DISPLAY: none">
+ <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
+ <tr>
+ <td valign="top" width="50%">
+ <span fckLang="DlgGenId">Id</span><br />
+ <input id="txtAttId" style="WIDTH: 100%" type="text">
+ </td>
+ <td width="1"> </td>
+ <td valign="top">
+ <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
+ <tr>
+ <td width="60%">
+ <span fckLang="DlgGenLangDir">Language Direction</span><br />
+ <select id="cmbAttLangDir" style="WIDTH: 100%">
+ <option value="" fckLang="DlgGenNotSet" selected><not set></option>
+ <option value="ltr" fckLang="DlgGenLangDirLtr">Left to Right (LTR)</option>
+ <option value="rtl" fckLang="DlgGenLangDirRtl">Right to Left (RTL)</option>
+ </select>
+ </td>
+ <td width="1%"> </td>
+ <td nowrap>
+ <span fckLang="DlgGenLangCode">Language Code</span><br />
+ <input id="txtAttLangCode" style="WIDTH: 100%" type="text">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td colspan="3"> </td>
+ </tr>
+ <tr>
+ <td colspan="3">
+ <span fckLang="DlgGenLongDescr">Long Description URL</span><br />
+ <input id="txtLongDesc" style="WIDTH: 100%" type="text">
+ </td>
+ </tr>
+ <tr>
+ <td colspan="3"> </td>
+ </tr>
+ <tr>
+ <td valign="top">
+ <span fckLang="DlgGenClass">Stylesheet Classes</span><br />
+ <input id="txtAttClasses" style="WIDTH: 100%" type="text">
+ </td>
+ <td></td>
+ <td valign="top"> <span fckLang="DlgGenTitle">Advisory Title</span><br />
+ <input id="txtAttTitle" style="WIDTH: 100%" type="text">
+ </td>
+ </tr>
+ </table>
+ <span fckLang="DlgGenStyle">Style</span><br />
+ <input id="txtAttStyle" style="WIDTH: 100%" type="text">
+ </div>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link/fck_link.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link/fck_link.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link/fck_link.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,602 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_link.js
+ * Scripts related to the Link dialog window (see fck_link.html).
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCK = oEditor.FCK ;
+var FCKLang = oEditor.FCKLang ;
+var FCKConfig = oEditor.FCKConfig ;
+
+//#### Dialog Tabs
+
+// Set the dialog tabs.
+window.parent.AddTab( 'Info', FCKLang.DlgLnkInfoTab ) ;
+
+if ( !FCKConfig.LinkDlgHideTarget )
+ window.parent.AddTab( 'Target', FCKLang.DlgLnkTargetTab, true ) ;
+
+if ( FCKConfig.LinkUpload )
+ window.parent.AddTab( 'Upload', FCKLang.DlgLnkUpload, true ) ;
+
+if ( !FCKConfig.LinkDlgHideAdvanced )
+ window.parent.AddTab( 'Advanced', FCKLang.DlgAdvancedTag ) ;
+
+// Function called when a dialog tag is selected.
+function OnDialogTabChange( tabCode )
+{
+ ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
+ ShowE('divTarget' , ( tabCode == 'Target' ) ) ;
+ ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
+ ShowE('divAttribs' , ( tabCode == 'Advanced' ) ) ;
+}
+
+//#### Regular Expressions library.
+var oRegex = new Object() ;
+
+oRegex.UriProtocol = new RegExp('') ;
+oRegex.UriProtocol.compile( '^(((http|https|ftp|news):\/\/)|mailto:)', 'gi' ) ;
+
+oRegex.UrlOnChangeProtocol = new RegExp('') ;
+oRegex.UrlOnChangeProtocol.compile( '^(http|https|ftp|news)://(?=.)', 'gi' ) ;
+
+oRegex.UrlOnChangeTestOther = new RegExp('') ;
+//oRegex.UrlOnChangeTestOther.compile( '^(javascript:|#|/)', 'gi' ) ;
+oRegex.UrlOnChangeTestOther.compile( '^((javascript:)|[#/\.])', 'gi' ) ;
+
+oRegex.ReserveTarget = new RegExp('') ;
+oRegex.ReserveTarget.compile( '^_(blank|self|top|parent)$', 'i' ) ;
+
+oRegex.PopupUri = new RegExp('') ;
+oRegex.PopupUri.compile( "^javascript:void\\(\\s*window.open\\(\\s*'([^']+)'\\s*,\\s*(?:'([^']*)'|null)\\s*,\\s*'([^']*)'\\s*\\)\\s*\\)\\s*$" ) ;
+
+oRegex.PopupFeatures = new RegExp('') ;
+oRegex.PopupFeatures.compile( '(?:^|,)([^=]+)=(\\d+|yes|no)', 'gi' ) ;
+
+//#### Parser Functions
+
+var oParser = new Object() ;
+
+oParser.ParseEMailUrl = function( emailUrl )
+{
+ // Initializes the EMailInfo object.
+ var oEMailInfo = new Object() ;
+ oEMailInfo.Address = '' ;
+ oEMailInfo.Subject = '' ;
+ oEMailInfo.Body = '' ;
+
+ var oParts = emailUrl.match( /^([^\?]+)\??(.+)?/ ) ;
+ if ( oParts )
+ {
+ // Set the e-mail address.
+ oEMailInfo.Address = oParts[1] ;
+
+ // Look for the optional e-mail parameters.
+ if ( oParts[2] )
+ {
+ var oMatch = oParts[2].match( /(^|&)subject=([^&]+)/i ) ;
+ if ( oMatch ) oEMailInfo.Subject = unescape( oMatch[2] ) ;
+
+ oMatch = oParts[2].match( /(^|&)body=([^&]+)/i ) ;
+ if ( oMatch ) oEMailInfo.Body = unescape( oMatch[2] ) ;
+ }
+ }
+
+ return oEMailInfo ;
+}
+
+oParser.CreateEMailUri = function( address, subject, body )
+{
+ var sBaseUri = 'mailto:' + address ;
+
+ var sParams = '' ;
+
+ if ( subject.length > 0 )
+ sParams = '?subject=' + escape( subject ) ;
+
+ if ( body.length > 0 )
+ {
+ sParams += ( sParams.length == 0 ? '?' : '&' ) ;
+ sParams += 'body=' + escape( body ) ;
+ }
+
+ return sBaseUri + sParams ;
+}
+
+//#### Initialization Code
+
+// oLink: The actual selected link in the editor.
+var oLink = FCK.Selection.MoveToAncestorNode( 'A' ) ;
+if ( oLink )
+ FCK.Selection.SelectNode( oLink ) ;
+
+window.onload = function()
+{
+ // Translate the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ // Fill the Anchor Names and Ids combos.
+ LoadAnchorNamesAndIds() ;
+
+ // Load the selected link information (if any).
+ LoadSelection() ;
+
+ // Update the dialog box.
+ SetLinkType( GetE('cmbLinkType').value ) ;
+
+ // Show/Hide the "Browse Server" button.
+ GetE('divBrowseServer').style.display = FCKConfig.LinkBrowser ? '' : 'none' ;
+
+ // Show the initial dialog content.
+ GetE('divInfo').style.display = '' ;
+
+ // Set the actual uploader URL.
+ if ( FCKConfig.LinkUpload )
+ GetE('frmUpload').action = FCKConfig.LinkUploadURL ;
+
+ // Activate the "OK" button.
+ window.parent.SetOkButton( true ) ;
+}
+
+var bHasAnchors ;
+
+function LoadAnchorNamesAndIds()
+{
+ // Since version 2.0, the anchors are replaced in the DOM by IMGs so the user see the icon
+ // to edit them. So, we must look for that images now.
+ var aAnchors = new Array() ;
+
+ var oImages = oEditor.FCK.EditorDocument.getElementsByTagName( 'IMG' ) ;
+ for( var i = 0 ; i < oImages.length ; i++ )
+ {
+ if ( oImages[i].getAttribute('_fckanchor') )
+ aAnchors[ aAnchors.length ] = oEditor.FCK.GetRealElement( oImages[i] ) ;
+ }
+
+ var aIds = oEditor.FCKTools.GetAllChildrenIds( oEditor.FCK.EditorDocument.body ) ;
+
+ bHasAnchors = ( aAnchors.length > 0 || aIds.length > 0 ) ;
+
+ for ( var i = 0 ; i < aAnchors.length ; i++ )
+ {
+ var sName = aAnchors[i].name ;
+ if ( sName && sName.length > 0 )
+ oEditor.FCKTools.AddSelectOption( document, GetE('cmbAnchorName'), sName, sName ) ;
+ }
+
+ for ( var i = 0 ; i < aIds.length ; i++ )
+ {
+ oEditor.FCKTools.AddSelectOption( document, GetE('cmbAnchorId'), aIds[i], aIds[i] ) ;
+ }
+
+ ShowE( 'divSelAnchor' , bHasAnchors ) ;
+ ShowE( 'divNoAnchor' , !bHasAnchors ) ;
+}
+
+function LoadSelection()
+{
+ if ( !oLink ) return ;
+
+ var sType = 'url' ;
+
+ // Get the actual Link href.
+ var sHRef = oLink.getAttribute('href',2) + '' ;
+
+ // TODO: Wait stable version and remove the following commented lines.
+// if ( sHRef.startsWith( FCK.BaseUrl ) )
+// sHRef = sHRef.remove( 0, FCK.BaseUrl.length ) ;
+
+ // Look for a popup javascript link.
+ var oPopupMatch = oRegex.PopupUri.exec( sHRef ) ;
+ if( oPopupMatch )
+ {
+ GetE('cmbTarget').value = 'popup' ;
+ sHRef = oPopupMatch[1] ;
+ FillPopupFields( oPopupMatch[2], oPopupMatch[3] ) ;
+ SetTarget( 'popup' ) ;
+ }
+
+ // Search for the protocol.
+ var sProtocol = oRegex.UriProtocol.exec( sHRef ) ;
+
+ if ( sProtocol )
+ {
+ sProtocol = sProtocol[0].toLowerCase() ;
+ GetE('cmbLinkProtocol').value = sProtocol ;
+
+ // Remove the protocol and get the remainig URL.
+ var sUrl = sHRef.replace( oRegex.UriProtocol, '' ) ;
+
+ if ( sProtocol == 'mailto:' ) // It is an e-mail link.
+ {
+ sType = 'email' ;
+
+ var oEMailInfo = oParser.ParseEMailUrl( sUrl ) ;
+ GetE('txtEMailAddress').value = oEMailInfo.Address ;
+ GetE('txtEMailSubject').value = oEMailInfo.Subject ;
+ GetE('txtEMailBody').value = oEMailInfo.Body ;
+ }
+ else // It is a normal link.
+ {
+ sType = 'url' ;
+ GetE('txtUrl').value = sUrl ;
+ }
+ }
+ else if ( sHRef.substr(0,1) == '#' && sHRef.length > 2 ) // It is an anchor link.
+ {
+ sType = 'anchor' ;
+ GetE('cmbAnchorName').value = GetE('cmbAnchorId').value = sHRef.substr(1) ;
+ }
+ else // It is another type of link.
+ {
+ sType = 'url' ;
+
+ GetE('cmbLinkProtocol').value = '' ;
+ GetE('txtUrl').value = sHRef ;
+ }
+
+ if ( !oPopupMatch )
+ {
+ // Get the target.
+ var sTarget = oLink.target ;
+
+ if ( sTarget && sTarget.length > 0 )
+ {
+ if ( oRegex.ReserveTarget.test( sTarget ) )
+ {
+ sTarget = sTarget.toLowerCase() ;
+ GetE('cmbTarget').value = sTarget ;
+ }
+ else
+ GetE('cmbTarget').value = 'frame' ;
+ GetE('txtTargetFrame').value = sTarget ;
+ }
+ }
+
+ // Get Advances Attributes
+ GetE('txtAttId').value = oLink.id ;
+ GetE('txtAttName').value = oLink.name ;
+ GetE('cmbAttLangDir').value = oLink.dir ;
+ GetE('txtAttLangCode').value = oLink.lang ;
+ GetE('txtAttAccessKey').value = oLink.accessKey ;
+ GetE('txtAttTabIndex').value = oLink.tabIndex <= 0 ? '' : oLink.tabIndex ;
+ GetE('txtAttTitle').value = oLink.title ;
+ GetE('txtAttContentType').value = oLink.type ;
+ GetE('txtAttCharSet').value = oLink.charset ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ {
+ GetE('txtAttClasses').value = oLink.getAttribute('className',2) || '' ;
+ GetE('txtAttStyle').value = oLink.style.cssText ;
+ }
+ else
+ {
+ GetE('txtAttClasses').value = oLink.getAttribute('class',2) || '' ;
+ GetE('txtAttStyle').value = oLink.getAttribute('style',2) ;
+ }
+
+ // Update the Link type combo.
+ GetE('cmbLinkType').value = sType ;
+}
+
+//#### Link type selection.
+function SetLinkType( linkType )
+{
+ ShowE('divLinkTypeUrl' , (linkType == 'url') ) ;
+ ShowE('divLinkTypeAnchor' , (linkType == 'anchor') ) ;
+ ShowE('divLinkTypeEMail' , (linkType == 'email') ) ;
+
+ if ( !FCKConfig.LinkDlgHideTarget )
+ window.parent.SetTabVisibility( 'Target' , (linkType == 'url') ) ;
+
+ if ( FCKConfig.LinkUpload )
+ window.parent.SetTabVisibility( 'Upload' , (linkType == 'url') ) ;
+
+ if ( !FCKConfig.LinkDlgHideAdvanced )
+ window.parent.SetTabVisibility( 'Advanced' , (linkType != 'anchor' || bHasAnchors) ) ;
+
+ if ( linkType == 'email' )
+ window.parent.SetAutoSize( true ) ;
+}
+
+//#### Target type selection.
+function SetTarget( targetType )
+{
+ GetE('tdTargetFrame').style.display = ( targetType == 'popup' ? 'none' : '' ) ;
+ GetE('tdPopupName').style.display =
+ GetE('tablePopupFeatures').style.display = ( targetType == 'popup' ? '' : 'none' ) ;
+
+ switch ( targetType )
+ {
+ case "_blank" :
+ case "_self" :
+ case "_parent" :
+ case "_top" :
+ GetE('txtTargetFrame').value = targetType ;
+ break ;
+ case "" :
+ GetE('txtTargetFrame').value = '' ;
+ break ;
+ }
+
+ if ( targetType == 'popup' )
+ window.parent.SetAutoSize( true ) ;
+}
+
+//#### Called while the user types the URL.
+function OnUrlChange()
+{
+ var sUrl = GetE('txtUrl').value ;
+ var sProtocol = oRegex.UrlOnChangeProtocol.exec( sUrl ) ;
+
+ if ( sProtocol )
+ {
+ sUrl = sUrl.substr( sProtocol[0].length ) ;
+ GetE('txtUrl').value = sUrl ;
+ GetE('cmbLinkProtocol').value = sProtocol[0].toLowerCase() ;
+ }
+ else if ( oRegex.UrlOnChangeTestOther.test( sUrl ) )
+ {
+ GetE('cmbLinkProtocol').value = '' ;
+ }
+}
+
+//#### Called while the user types the target name.
+function OnTargetNameChange()
+{
+ var sFrame = GetE('txtTargetFrame').value ;
+
+ if ( sFrame.length == 0 )
+ GetE('cmbTarget').value = '' ;
+ else if ( oRegex.ReserveTarget.test( sFrame ) )
+ GetE('cmbTarget').value = sFrame.toLowerCase() ;
+ else
+ GetE('cmbTarget').value = 'frame' ;
+}
+
+//#### Builds the javascript URI to open a popup to the specified URI.
+function BuildPopupUri( uri )
+{
+ var oReg = new RegExp( "'", "g" ) ;
+ var sWindowName = "'" + GetE('txtPopupName').value.replace(oReg, "\\'") + "'" ;
+
+ var sFeatures = '' ;
+ var aChkFeatures = document.getElementsByName('chkFeature') ;
+ for ( var i = 0 ; i < aChkFeatures.length ; i++ )
+ {
+ if ( i > 0 ) sFeatures += ',' ;
+ sFeatures += aChkFeatures[i].value + '=' + ( aChkFeatures[i].checked ? 'yes' : 'no' ) ;
+ }
+
+ if ( GetE('txtPopupWidth').value.length > 0 ) sFeatures += ',width=' + GetE('txtPopupWidth').value ;
+ if ( GetE('txtPopupHeight').value.length > 0 ) sFeatures += ',height=' + GetE('txtPopupHeight').value ;
+ if ( GetE('txtPopupLeft').value.length > 0 ) sFeatures += ',left=' + GetE('txtPopupLeft').value ;
+ if ( GetE('txtPopupTop').value.length > 0 ) sFeatures += ',top=' + GetE('txtPopupTop').value ;
+
+ return ( "javascript:void(window.open('" + uri + "'," + sWindowName + ",'" + sFeatures + "'))" ) ;
+}
+
+//#### Fills all Popup related fields.
+function FillPopupFields( windowName, features )
+{
+ if ( windowName )
+ GetE('txtPopupName').value = windowName ;
+
+ var oFeatures = new Object() ;
+ var oFeaturesMatch ;
+ while( ( oFeaturesMatch = oRegex.PopupFeatures.exec( features ) ) != null )
+ {
+ var sValue = oFeaturesMatch[2] ;
+ if ( sValue == ( 'yes' || '1' ) )
+ oFeatures[ oFeaturesMatch[1] ] = true ;
+ else if ( ! isNaN( sValue ) && sValue != 0 )
+ oFeatures[ oFeaturesMatch[1] ] = sValue ;
+ }
+
+ // Update all features check boxes.
+ var aChkFeatures = document.getElementsByName('chkFeature') ;
+ for ( var i = 0 ; i < aChkFeatures.length ; i++ )
+ {
+ if ( oFeatures[ aChkFeatures[i].value ] )
+ aChkFeatures[i].checked = true ;
+ }
+
+ // Update position and size text boxes.
+ if ( oFeatures['width'] ) GetE('txtPopupWidth').value = oFeatures['width'] ;
+ if ( oFeatures['height'] ) GetE('txtPopupHeight').value = oFeatures['height'] ;
+ if ( oFeatures['left'] ) GetE('txtPopupLeft').value = oFeatures['left'] ;
+ if ( oFeatures['top'] ) GetE('txtPopupTop').value = oFeatures['top'] ;
+}
+
+//#### The OK button was hit.
+function Ok()
+{
+ var sUri ;
+
+ switch ( GetE('cmbLinkType').value )
+ {
+ case 'url' :
+ sUri = GetE('txtUrl').value ;
+
+ if ( sUri.length == 0 )
+ {
+ alert( FCKLang.DlnLnkMsgNoUrl ) ;
+ return false ;
+ }
+
+ sUri = GetE('cmbLinkProtocol').value + sUri ;
+
+ if( GetE('cmbTarget').value == 'popup' )
+ sUri = BuildPopupUri( sUri ) ;
+
+ break ;
+
+ case 'email' :
+ sUri = GetE('txtEMailAddress').value ;
+
+ if ( sUri.length == 0 )
+ {
+ alert( FCKLang.DlnLnkMsgNoEMail ) ;
+ return false ;
+ }
+
+ sUri = oParser.CreateEMailUri(
+ sUri,
+ GetE('txtEMailSubject').value,
+ GetE('txtEMailBody').value ) ;
+ break ;
+
+ case 'anchor' :
+ var sAnchor = GetE('cmbAnchorName').value ;
+ if ( sAnchor.length == 0 ) sAnchor = GetE('cmbAnchorId').value ;
+
+ if ( sAnchor.length == 0 )
+ {
+ alert( FCKLang.DlnLnkMsgNoAnchor ) ;
+ return false ;
+ }
+
+ sUri = '#' + sAnchor ;
+ break ;
+ }
+
+ if ( oLink ) // Modifying an existent link.
+ {
+ oEditor.FCKUndo.SaveUndoStep() ;
+ oLink.href = sUri ;
+ }
+ else // Creating a new link.
+ {
+ oLink = oEditor.FCK.CreateLink( sUri ) ;
+ if ( ! oLink )
+ return true ;
+ }
+
+ // Target
+ if( GetE('cmbTarget').value != 'popup' )
+ SetAttribute( oLink, 'target', GetE('txtTargetFrame').value ) ;
+ else
+ SetAttribute( oLink, 'target', null ) ;
+
+ // Advances Attributes
+ SetAttribute( oLink, 'id' , GetE('txtAttId').value ) ;
+ SetAttribute( oLink, 'name' , GetE('txtAttName').value ) ; // No IE. Set but doesnt't update the outerHTML.
+ SetAttribute( oLink, 'dir' , GetE('cmbAttLangDir').value ) ;
+ SetAttribute( oLink, 'lang' , GetE('txtAttLangCode').value ) ;
+ SetAttribute( oLink, 'accesskey', GetE('txtAttAccessKey').value ) ;
+ SetAttribute( oLink, 'tabindex' , ( GetE('txtAttTabIndex').value > 0 ? GetE('txtAttTabIndex').value : null ) ) ;
+ SetAttribute( oLink, 'title' , GetE('txtAttTitle').value ) ;
+ SetAttribute( oLink, 'class' , GetE('txtAttClasses').value ) ;
+ SetAttribute( oLink, 'type' , GetE('txtAttContentType').value ) ;
+ SetAttribute( oLink, 'charset' , GetE('txtAttCharSet').value ) ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ oLink.style.cssText = GetE('txtAttStyle').value ;
+ else
+ SetAttribute( oLink, 'style', GetE('txtAttStyle').value ) ;
+
+ return true ;
+}
+
+function BrowseServer()
+{
+ // Set the browser window feature.
+ var iWidth = FCKConfig.LinkBrowserWindowWidth ;
+ var iHeight = FCKConfig.LinkBrowserWindowHeight ;
+
+ var iLeft = (FCKConfig.ScreenWidth - iWidth) / 2 ;
+ var iTop = (FCKConfig.ScreenHeight - iHeight) / 2 ;
+
+ var sOptions = "toolbar=no,status=no,resizable=yes,dependent=yes" ;
+ sOptions += ",width=" + iWidth ;
+ sOptions += ",height=" + iHeight ;
+ sOptions += ",left=" + iLeft ;
+ sOptions += ",top=" + iTop ;
+
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ {
+ // The following change has been made otherwise IE will open the file
+ // browser on a different server session (on some cases):
+ // http://support.microsoft.com/default.aspx?scid=kb;en-us;831678
+ // by Simone Chiaretta.
+ var oWindow = oEditor.window.open( FCKConfig.LinkBrowserURL, "FCKBrowseWindow", sOptions ) ;
+ oWindow.opener = window ;
+ }
+ else
+ window.open( FCKConfig.LinkBrowserURL, "FCKBrowseWindow", sOptions ) ;
+}
+
+function SetUrl( url )
+{
+ document.getElementById('txtUrl').value = url ;
+ OnUrlChange() ;
+ window.parent.SetSelectedTab( 'Info' ) ;
+}
+
+function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
+{
+ switch ( errorNumber )
+ {
+ case 0 : // No errors
+ alert( 'Your file has been successfully uploaded' ) ;
+ break ;
+ case 1 : // Custom error
+ alert( customMsg ) ;
+ return ;
+ case 101 : // Custom warning
+ alert( customMsg ) ;
+ break ;
+ case 201 :
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
+ break ;
+ case 202 :
+ alert( 'Invalid file type' ) ;
+ return ;
+ case 203 :
+ alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
+ return ;
+ default :
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
+ return ;
+ }
+
+ SetUrl( fileUrl ) ;
+ GetE('frmUpload').reset() ;
+}
+
+var oUploadAllowedExtRegex = new RegExp( FCKConfig.LinkUploadAllowedExtensions, 'i' ) ;
+var oUploadDeniedExtRegex = new RegExp( FCKConfig.LinkUploadDeniedExtensions, 'i' ) ;
+
+function CheckUpload()
+{
+ var sFile = GetE('txtUploadFile').value ;
+
+ if ( sFile.length == 0 )
+ {
+ alert( 'Please select a file to upload' ) ;
+ return false ;
+ }
+
+ if ( ( FCKConfig.LinkUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
+ ( FCKConfig.LinkUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
+ {
+ OnUploadCompleted( 202 ) ;
+ return false ;
+ }
+
+ return true ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_link.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,289 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_link.html
+ * Link dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>Link Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="robots" content="noindex, nofollow" />
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script src="fck_link/fck_link.js" type="text/javascript"></script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <div id="divInfo" style="DISPLAY: none">
+ <span fckLang="DlgLnkType">Link Type</span><br />
+ <select id="cmbLinkType" onchange="SetLinkType(this.value);">
+ <option value="url" fckLang="DlgLnkTypeURL" selected="selected">URL</option>
+ <option value="anchor" fckLang="DlgLnkTypeAnchor">Anchor in this page</option>
+ <option value="email" fckLang="DlgLnkTypeEMail">E-Mail</option>
+ </select>
+ <br />
+ <br />
+ <div id="divLinkTypeUrl">
+ <table cellspacing="0" cellpadding="0" width="100%" border="0" dir="ltr">
+ <tr>
+ <td nowrap="nowrap">
+ <span fckLang="DlgLnkProto">Protocol</span><br />
+ <select id="cmbLinkProtocol">
+ <option value="http://" selected="selected">http://</option>
+ <option value="https://">https://</option>
+ <option value="ftp://">ftp://</option>
+ <option value="news://">news://</option>
+ <option value="" fckLang="DlgLnkProtoOther"><other></option>
+ </select>
+ </td>
+ <td nowrap="nowrap"> </td>
+ <td nowrap="nowrap" width="100%">
+ <span fckLang="DlgLnkURL">URL</span><br />
+ <input id="txtUrl" style="WIDTH: 100%" type="text" onkeyup="OnUrlChange();" onchange="OnUrlChange();" />
+ </td>
+ </tr>
+ </table>
+ <br />
+ <div id="divBrowseServer">
+ <input type="button" value="Browse Server" fckLang="DlgBtnBrowseServer" onclick="BrowseServer();" />
+ </div>
+ </div>
+ <div id="divLinkTypeAnchor" style="DISPLAY: none" align="center">
+ <div id="divSelAnchor" style="DISPLAY: none">
+ <table cellspacing="0" cellpadding="0" border="0" width="70%">
+ <tr>
+ <td colspan="3">
+ <span fckLang="DlgLnkAnchorSel">Select an Anchor</span>
+ </td>
+ </tr>
+ <tr>
+ <td width="50%">
+ <span fckLang="DlgLnkAnchorByName">By Anchor Name</span><br />
+ <select id="cmbAnchorName" onchange="GetE('cmbAnchorId').value='';" style="WIDTH: 100%">
+ <option value="" selected="selected"></option>
+ </select>
+ </td>
+ <td> </td>
+ <td width="50%">
+ <span fckLang="DlgLnkAnchorById">By Element Id</span><br />
+ <select id="cmbAnchorId" onchange="GetE('cmbAnchorName').value='';" style="WIDTH: 100%">
+ <option value="" selected="selected"></option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divNoAnchor" style="DISPLAY: none">
+ <span fckLang="DlgLnkNoAnchors"><No anchors available in the document></span>
+ </div>
+ </div>
+ <div id="divLinkTypeEMail" style="DISPLAY: none">
+ <span fckLang="DlgLnkEMail">E-Mail Address</span><br />
+ <input id="txtEMailAddress" style="WIDTH: 100%" type="text" /><br />
+ <span fckLang="DlgLnkEMailSubject">Message Subject</span><br />
+ <input id="txtEMailSubject" style="WIDTH: 100%" type="text" /><br />
+ <span fckLang="DlgLnkEMailBody">Message Body</span><br />
+ <textarea id="txtEMailBody" style="WIDTH: 100%" rows="3" cols="20"></textarea>
+ </div>
+ </div>
+ <div id="divUpload" style="DISPLAY: none">
+ <form id="frmUpload" method="post" target="UploadWindow" enctype="multipart/form-data" action="" onsubmit="return CheckUpload();">
+ <span fckLang="DlgLnkUpload">Upload</span><br />
+ <input id="txtUploadFile" style="WIDTH: 100%" type="file" size="40" name="NewFile" /><br />
+ <br />
+ <input id="btnUpload" type="submit" value="Send it to the Server" fckLang="DlgLnkBtnUpload" />
+ <iframe name="UploadWindow" style="DISPLAY: none" src="../fckblank.html"></iframe>
+ </form>
+ </div>
+ <div id="divTarget" style="DISPLAY: none">
+ <table cellspacing="0" cellpadding="0" width="100%" border="0">
+ <tr>
+ <td nowrap="nowrap">
+ <span fckLang="DlgLnkTarget">Target</span><br />
+ <select id="cmbTarget" onchange="SetTarget(this.value);">
+ <option value="" fckLang="DlgGenNotSet" selected="selected"><not set></option>
+ <option value="frame" fckLang="DlgLnkTargetFrame"><frame></option>
+ <option value="popup" fckLang="DlgLnkTargetPopup"><popup window></option>
+ <option value="_blank" fckLang="DlgLnkTargetBlank">New Window (_blank)</option>
+ <option value="_top" fckLang="DlgLnkTargetTop">Topmost Window (_top)</option>
+ <option value="_self" fckLang="DlgLnkTargetSelf">Same Window (_self)</option>
+ <option value="_parent" fckLang="DlgLnkTargetParent">Parent Window (_parent)</option>
+ </select>
+ </td>
+ <td> </td>
+ <td id="tdTargetFrame" nowrap="nowrap" width="100%">
+ <span fckLang="DlgLnkTargetFrameName">Target Frame Name</span><br />
+ <input id="txtTargetFrame" style="WIDTH: 100%" type="text" onkeyup="OnTargetNameChange();"
+ onchange="OnTargetNameChange();" />
+ </td>
+ <td id="tdPopupName" style="DISPLAY: none" nowrap="nowrap" width="100%">
+ <span fckLang="DlgLnkPopWinName">Popup Window Name</span><br />
+ <input id="txtPopupName" style="WIDTH: 100%" type="text" />
+ </td>
+ </tr>
+ </table>
+ <br />
+ <table id="tablePopupFeatures" style="DISPLAY: none" cellspacing="0" cellpadding="0" align="center"
+ border="0">
+ <tr>
+ <td>
+ <span fckLang="DlgLnkPopWinFeat">Popup Window Features</span><br />
+ <table cellspacing="0" cellpadding="0" border="0">
+ <tr>
+ <td valign="top" nowrap="nowrap" width="50%">
+ <input id="chkPopupResizable" name="chkFeature" value="resizable" type="checkbox" /><label for="chkPopupResizable" fckLang="DlgLnkPopResize">Resizable</label><br />
+ <input id="chkPopupLocationBar" name="chkFeature" value="location" type="checkbox" /><label for="chkPopupLocationBar" fckLang="DlgLnkPopLocation">Location
+ Bar</label><br />
+ <input id="chkPopupManuBar" name="chkFeature" value="menubar" type="checkbox" /><label for="chkPopupManuBar" fckLang="DlgLnkPopMenu">Menu
+ Bar</label><br />
+ <input id="chkPopupScrollBars" name="chkFeature" value="scrollbars" type="checkbox" /><label for="chkPopupScrollBars" fckLang="DlgLnkPopScroll">Scroll
+ Bars</label>
+ </td>
+ <td></td>
+ <td valign="top" nowrap="nowrap" width="50%">
+ <input id="chkPopupStatusBar" name="chkFeature" value="status" type="checkbox" /><label for="chkPopupStatusBar" fckLang="DlgLnkPopStatus">Status
+ Bar</label><br />
+ <input id="chkPopupToolbar" name="chkFeature" value="toolbar" type="checkbox" /><label for="chkPopupToolbar" fckLang="DlgLnkPopToolbar">Toolbar</label><br />
+ <input id="chkPopupFullScreen" name="chkFeature" value="fullscreen" type="checkbox" /><label for="chkPopupFullScreen" fckLang="DlgLnkPopFullScrn">Full
+ Screen (IE)</label><br />
+ <input id="chkPopupDependent" name="chkFeature" value="dependent" type="checkbox" /><label for="chkPopupDependent" fckLang="DlgLnkPopDependent">Dependent
+ (Netscape)</label>
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" nowrap="nowrap" width="50%"> </td>
+ <td></td>
+ <td valign="top" nowrap="nowrap" width="50%"></td>
+ </tr>
+ <tr>
+ <td valign="top">
+ <table cellspacing="0" cellpadding="0" border="0">
+ <tr>
+ <td nowrap="nowrap"><span fckLang="DlgLnkPopWidth">Width</span></td>
+ <td> <input id="txtPopupWidth" type="text" maxlength="4" size="4" /></td>
+ </tr>
+ <tr>
+ <td nowrap="nowrap"><span fckLang="DlgLnkPopHeight">Height</span></td>
+ <td> <input id="txtPopupHeight" type="text" maxlength="4" size="4" /></td>
+ </tr>
+ </table>
+ </td>
+ <td> </td>
+ <td valign="top">
+ <table cellspacing="0" cellpadding="0" border="0">
+ <tr>
+ <td nowrap="nowrap"><span fckLang="DlgLnkPopLeft">Left Position</span></td>
+ <td> <input id="txtPopupLeft" type="text" maxlength="4" size="4" /></td>
+ </tr>
+ <tr>
+ <td nowrap="nowrap"><span fckLang="DlgLnkPopTop">Top Position</span></td>
+ <td> <input id="txtPopupTop" type="text" maxlength="4" size="4" /></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </div>
+ <div id="divAttribs" style="DISPLAY: none">
+ <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
+ <tr>
+ <td valign="top" width="50%">
+ <span fckLang="DlgGenId">Id</span><br />
+ <input id="txtAttId" style="WIDTH: 100%" type="text" />
+ </td>
+ <td width="1"></td>
+ <td valign="top">
+ <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
+ <tr>
+ <td width="60%">
+ <span fckLang="DlgGenLangDir">Language Direction</span><br />
+ <select id="cmbAttLangDir" style="WIDTH: 100%">
+ <option value="" fckLang="DlgGenNotSet" selected><not set></option>
+ <option value="ltr" fckLang="DlgGenLangDirLtr">Left to Right (LTR)</option>
+ <option value="rtl" fckLang="DlgGenLangDirRtl">Right to Left (RTL)</option>
+ </select>
+ </td>
+ <td width="1%"> </td>
+ <td nowrap="nowrap"><span fckLang="DlgGenAccessKey">Access Key</span><br />
+ <input id="txtAttAccessKey" style="WIDTH: 100%" type="text" maxlength="1" size="1" />
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" width="50%">
+ <span fckLang="DlgGenName">Name</span><br />
+ <input id="txtAttName" style="WIDTH: 100%" type="text" />
+ </td>
+ <td width="1"></td>
+ <td valign="top">
+ <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
+ <tr>
+ <td width="60%">
+ <span fckLang="DlgGenLangCode">Language Code</span><br />
+ <input id="txtAttLangCode" style="WIDTH: 100%" type="text" />
+ </td>
+ <td width="1%"> </td>
+ <td nowrap="nowrap">
+ <span fckLang="DlgGenTabIndex">Tab Index</span><br />
+ <input id="txtAttTabIndex" style="WIDTH: 100%" type="text" maxlength="5" size="5" />
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" width="50%"> </td>
+ <td width="1"></td>
+ <td valign="top"></td>
+ </tr>
+ <tr>
+ <td valign="top" width="50%">
+ <span fckLang="DlgGenTitle">Advisory Title</span><br />
+ <input id="txtAttTitle" style="WIDTH: 100%" type="text" />
+ </td>
+ <td width="1"> </td>
+ <td valign="top">
+ <span fckLang="DlgGenContType">Advisory Content Type</span><br />
+ <input id="txtAttContentType" style="WIDTH: 100%" type="text" />
+ </td>
+ </tr>
+ <tr>
+ <td valign="top">
+ <span fckLang="DlgGenClass">Stylesheet Classes</span><br />
+ <input id="txtAttClasses" style="WIDTH: 100%" type="text" />
+ </td>
+ <td></td>
+ <td valign="top">
+ <span fckLang="DlgGenLinkCharset">Linked Resource Charset</span><br />
+ <input id="txtAttCharSet" style="WIDTH: 100%" type="text" />
+ </td>
+ </tr>
+ </table>
+ <table cellspacing="0" cellpadding="0" width="100%" align="center" border="0">
+ <tr>
+ <td>
+ <span fckLang="DlgGenStyle">Style</span><br />
+ <input id="txtAttStyle" style="WIDTH: 100%" type="text" />
+ </td>
+ </tr>
+ </table>
+ </div>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_listprop.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_listprop.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_listprop.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,101 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_listprop.html
+ * Bulleted List dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Bulleted List Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.MoveToAncestorNode( 'UL' ) ;
+var oActiveSel ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl )
+ oActiveSel = GetE('selBulleted') ;
+ else
+ {
+ oActiveEl = oEditor.FCKSelection.MoveToAncestorNode( 'OL' ) ;
+ if ( oActiveEl )
+ oActiveSel = GetE('selNumbered') ;
+ }
+
+ oActiveSel.style.display = '' ;
+
+ if ( oActiveEl )
+ {
+ if ( oActiveEl.getAttribute('type') )
+ oActiveSel.value = oActiveEl.getAttribute('type').toLowerCase() ;
+ }
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( oActiveEl )
+ SetAttribute( oActiveEl, 'type' , oActiveSel.value ) ;
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table width="100%" height="100%">
+ <tr>
+ <td>
+ <table cellspacing="0" cellpadding="0" border="0" align="center">
+ <tr>
+ <td>
+ <span fckLang="DlgLstType">List Type</span><br>
+ <select id="selBulleted" style="DISPLAY: none">
+ <option value="" selected></option>
+ <option value="circle" fckLang="DlgLstTypeCircle">Circle</option>
+ <option value="disc" fckLang="DlgLstTypeDisc">Disc</option>
+ <option value="square" fckLang="DlgLstTypeSquare">Square</option>
+ </select>
+ <select id="selNumbered" style="DISPLAY: none">
+ <option value="" selected></option>
+ <option value="1" fckLang="DlgLstTypeNumbers">Numbers (1, 2, 3)</option>
+ <option value="a" fckLang="DlgLstTypeLCase">Lowercase Letters (a, b, c)</option>
+ <option value="A" fckLang="DlgLstTypeUCase">Uppercase Letters (A, B, C)</option>
+ <option value="i" fckLang="DlgLstTypeSRoman">Small Roman Numerals (i, ii, iii)</option>
+ <option value="I" fckLang="DlgLstTypeLRoman">Large Roman Numerals (I, II, III)</option>
+ </select>
+
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_paste.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_paste.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_paste.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,216 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_paste.html
+ * This dialog is shown when, for some reason (usually security settings),
+ * the user is not able to paste data from the clipboard to the editor using
+ * the toolbar buttons or the context menu.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <script language="javascript">
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+window.onload = function ()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ window.parent.SetOkButton( true ) ;
+
+ if ( window.parent.dialogArguments.CustomValue == 'Word' )
+ {
+ var oFrame = document.getElementById('frmData')
+ oFrame.style.display = '' ;
+
+ if ( oFrame.contentDocument )
+ oFrame.contentDocument.designMode = 'on' ;
+ else
+ oFrame.contentWindow.document.body.contentEditable = true ;
+ }
+ else
+ {
+ document.getElementById('txtData').style.display = '' ;
+ document.getElementById('oWordCommands').style.display = 'none' ;
+ }
+}
+
+function Ok()
+{
+ var sHtml ;
+
+ if ( window.parent.dialogArguments.CustomValue == 'Word' )
+ {
+ var oFrame = document.getElementById('frmData') ;
+
+ if ( oFrame.contentDocument )
+ sHtml = oFrame.contentDocument.body.innerHTML ;
+ else
+ sHtml = oFrame.contentWindow.document.body.innerHTML ;
+
+ sHtml = CleanWord( sHtml ) ;
+ }
+ else
+ {
+ var sHtml = oEditor.FCKTools.HTMLEncode( document.getElementById('txtData').value ) ;
+ sHtml = sHtml.replace( /\n/g, '<BR>' ) ;
+ }
+
+ oEditor.FCK.InsertHtml( sHtml ) ;
+
+ return true ;
+}
+
+function CleanUpBox()
+{
+ var oFrame = document.getElementById('frmData') ;
+
+ if ( oFrame.contentDocument )
+ oFrame.contentDocument.body.innerHTML = '' ;
+ else
+ oFrame.contentWindow.document.body.innerHTML = '' ;
+}
+
+function CleanWord( html )
+{
+ var bIgnoreFont = document.getElementById('chkRemoveFont').checked ;
+ var bRemoveStyles = document.getElementById('chkRemoveStyles').checked ;
+
+ html = html.replace(/<o:p>\s*<\/o:p>/g, "") ;
+ html = html.replace(/<o:p>.*?<\/o:p>/g, " ") ;
+
+ // Remove mso-xxx styles.
+ html = html.replace( /\s*mso-[^:]+:[^;"]+;?/gi, "" ) ;
+
+ // Remove margin styles.
+ html = html.replace( /\s*MARGIN: 0cm 0cm 0pt\s*;/gi, "" ) ;
+ html = html.replace( /\s*MARGIN: 0cm 0cm 0pt\s*"/gi, "\"" ) ;
+
+ html = html.replace( /\s*TEXT-INDENT: 0cm\s*;/gi, "" ) ;
+ html = html.replace( /\s*TEXT-INDENT: 0cm\s*"/gi, "\"" ) ;
+
+ html = html.replace( /\s*TEXT-ALIGN: [^\s;]+;?"/gi, "\"" ) ;
+
+ html = html.replace( /\s*PAGE-BREAK-BEFORE: [^\s;]+;?"/gi, "\"" ) ;
+
+ html = html.replace( /\s*FONT-VARIANT: [^\s;]+;?"/gi, "\"" ) ;
+
+ html = html.replace( /\s*tab-stops:[^;"]*;?/gi, "" ) ;
+ html = html.replace( /\s*tab-stops:[^"]*/gi, "" ) ;
+
+ // Remove FONT face attributes.
+ if ( bIgnoreFont )
+ {
+ html = html.replace( /\s*face="[^"]*"/gi, "" ) ;
+ html = html.replace( /\s*face=[^ >]*/gi, "" ) ;
+
+ html = html.replace( /\s*FONT-FAMILY:[^;"]*;?/gi, "" ) ;
+ }
+
+ // Remove Class attributes
+ html = html.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3") ;
+
+ // Remove styles.
+ if ( bRemoveStyles )
+ html = html.replace( /<(\w[^>]*) style="([^\"]*)"([^>]*)/gi, "<$1$3" ) ;
+
+ // Remove empty styles.
+ html = html.replace( /\s*style="\s*"/gi, '' ) ;
+
+ html = html.replace( /<SPAN\s*[^>]*>\s* \s*<\/SPAN>/gi, ' ' ) ;
+
+ html = html.replace( /<SPAN\s*[^>]*><\/SPAN>/gi, '' ) ;
+
+ // Remove Lang attributes
+ html = html.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3") ;
+
+ html = html.replace( /<SPAN\s*>(.*?)<\/SPAN>/gi, '$1' ) ;
+
+ html = html.replace( /<FONT\s*>(.*?)<\/FONT>/gi, '$1' ) ;
+
+ // Remove XML elements and declarations
+ html = html.replace(/<\\?\?xml[^>]*>/gi, "") ;
+
+ // Remove Tags with XML namespace declarations: <o:p></o:p>
+ html = html.replace(/<\/?\w+:[^>]*>/gi, "") ;
+
+ html = html.replace( /<H\d>\s*<\/H\d>/gi, '' ) ;
+
+ html = html.replace( /<H1([^>]*)>/gi, '<div$1><b><font size="6">' ) ;
+ html = html.replace( /<H2([^>]*)>/gi, '<div$1><b><font size="5">' ) ;
+ html = html.replace( /<H3([^>]*)>/gi, '<div$1><b><font size="4">' ) ;
+ html = html.replace( /<H4([^>]*)>/gi, '<div$1><b><font size="3">' ) ;
+ html = html.replace( /<H5([^>]*)>/gi, '<div$1><b><font size="2">' ) ;
+ html = html.replace( /<H6([^>]*)>/gi, '<div$1><b><font size="1">' ) ;
+
+ html = html.replace( /<\/H\d>/gi, '</font></b></div>' ) ;
+
+ html = html.replace( /<(U|I|STRIKE)> <\/\1>/g, ' ' ) ;
+
+ // Remove empty tags (three times, just to be sure).
+ html = html.replace( /<([^\s>]+)[^>]*>\s*<\/\1>/g, '' ) ;
+ html = html.replace( /<([^\s>]+)[^>]*>\s*<\/\1>/g, '' ) ;
+ html = html.replace( /<([^\s>]+)[^>]*>\s*<\/\1>/g, '' ) ;
+
+ // Transform <P> to <DIV>
+ var re = new RegExp("(<P)([^>]*>.*?)(<\/P>)","gi") ; // Different because of a IE 5.0 error
+ html = html.replace( re, "<div$2</div>" ) ;
+
+ return html ;
+}
+
+ </script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <table height="98%" cellspacing="0" cellpadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <span fckLang="DlgPasteMsg2">Please paste inside the following box using the
+ keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.</span>
+ <br>
+
+ </td>
+ </tr>
+ <tr>
+ <td valign="top" height="100%" style="BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 1px solid">
+ <textarea id="txtData" style="BORDER-RIGHT: #000000 1px; BORDER-TOP: #000000 1px; DISPLAY: none; BORDER-LEFT: #000000 1px; WIDTH: 99%; BORDER-BOTTOM: #000000 1px; HEIGHT: 98%"></textarea>
+ <iframe id="frmData" src="../fckblank.html" height="98%" width="99%" frameborder="no" style="BORDER-RIGHT: #000000 1px; BORDER-TOP: #000000 1px; DISPLAY: none; BORDER-LEFT: #000000 1px; BORDER-BOTTOM: #000000 1px; BACKGROUND-COLOR: #ffffff">
+ </iframe>
+ </td>
+ </tr>
+ <tr id="oWordCommands">
+ <td>
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr>
+ <td nowrap>
+ <input id="chkRemoveFont" type="checkbox" checked="checked"> <label for="chkRemoveFont" fckLang="DlgPasteIgnoreFont">
+ Ignore Font Face definitions</label>
+ <br>
+ <input id="chkRemoveStyles" type="checkbox"> <label for="chkRemoveStyles" fckLang="DlgPasteRemoveStyles">
+ Remove Styles definitions</label>
+ </td>
+ <td align="right" valign="top">
+ <input type="button" fckLang="DlgPasteCleanBox" value="Clean Up Box" onclick="CleanUpBox()">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_radiobutton.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_radiobutton.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_radiobutton.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,100 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_radiobutton.html
+ * Radio Button dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Radio Button Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.GetSelectedElement() ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl && oActiveEl.tagName.toUpperCase() == 'INPUT' && oActiveEl.type == 'radio' )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtValue').value = oActiveEl.value ;
+ GetE('txtSelected').checked = oActiveEl.checked ;
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'INPUT' ) ;
+ oActiveEl.type = 'radio' ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ }
+
+ oActiveEl.name = GetE('txtName').value ;
+ SetAttribute( oActiveEl, 'value', GetE('txtValue').value ) ;
+
+ if ( GetE('txtSelected').checked )
+ {
+ SetAttribute( oActiveEl, 'checked', 'checked' ) ;
+ oActiveEl.checked = GetE('txtSelected').checked ;
+ }
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table height="100%" width="100%">
+ <tr>
+ <td align="center">
+ <table border="0" cellpadding="0" cellspacing="0" width="80%">
+ <tr>
+ <td>
+ <span fckLang="DlgCheckboxName">Name</span><br>
+ <input type="text" size="20" id="txtName" style="WIDTH: 100%">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgCheckboxValue">Value</span><br>
+ <input type="text" size="20" id="txtValue" style="WIDTH: 100%">
+ </td>
+ </tr>
+ <tr>
+ <td><input type="checkbox" id="txtSelected"><label for="txtSelected" fckLang="DlgCheckboxSelected">Checked</label></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_replace.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_replace.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_replace.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_replace.html
+ * "Replace" dialog box window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Abdul-Aziz A. Al-Oraij (aziz.oraij.com)
+-->
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+function OnLoad()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage( document ) ;
+
+ window.parent.SetAutoSize( true ) ;
+
+ oEditor.FCKUndo.SaveUndoStep() ;
+}
+
+function btnStat(frm)
+{
+ document.getElementById('btnReplace').disabled =
+ document.getElementById('btnReplaceAll').disabled =
+ ( document.getElementById('txtFind').value.length == 0 ) ;
+}
+
+function ReplaceTextNodes( parentNode, regex, replaceValue, replaceAll, hasFound )
+{
+ for ( var i = 0 ; i < parentNode.childNodes.length ; i++ )
+ {
+ var oNode = parentNode.childNodes[i] ;
+ if ( oNode.nodeType == 3 )
+ {
+ var sReplaced = oNode.nodeValue.replace( regex, replaceValue ) ;
+ if ( oNode.nodeValue != sReplaced )
+ {
+ oNode.nodeValue = sReplaced ;
+ if ( ! replaceAll )
+ return true ;
+ hasFound = true ;
+ }
+ }
+
+ hasFound = ReplaceTextNodes( oNode, regex, replaceValue, replaceAll, hasFound ) ;
+ if ( ! replaceAll && hasFound )
+ return true ;
+ }
+
+ return hasFound ;
+}
+
+function GetRegexExpr()
+{
+ if ( document.getElementById('chkWord').checked )
+ var sExpr = '\\b' + document.getElementById('txtFind').value + '\\b' ;
+ else
+ var sExpr = document.getElementById('txtFind').value ;
+
+ return sExpr ;
+}
+
+function GetCase()
+{
+ return ( document.getElementById('chkCase').checked ? '' : 'i' ) ;
+}
+
+function Replace()
+{
+ var oRegex = new RegExp( GetRegexExpr(), GetCase() ) ;
+ ReplaceTextNodes( oEditor.FCK.EditorDocument.body, oRegex, document.getElementById('txtReplace').value, false, false ) ;
+}
+
+function ReplaceAll()
+{
+ var oRegex = new RegExp( GetRegexExpr(), GetCase() + 'g' ) ;
+ ReplaceTextNodes( oEditor.FCK.EditorDocument.body, oRegex, document.getElementById('txtReplace').value, true, false ) ;
+ window.parent.Cancel() ;
+}
+ </script>
+ </head>
+ <body onload="OnLoad()" scroll="no" style="OVERFLOW: hidden">
+ <table cellSpacing="3" cellPadding="2" width="100%" border="0">
+ <tr>
+ <td noWrap><label for="txtFind" fckLang="DlgReplaceFindLbl">Find what:</label>
+ </td>
+ <td width="100%"><input id="txtFind" onkeyup="btnStat(this.form)" style="WIDTH: 100%" tabIndex="1" type="text">
+ </td>
+ <td><input id="btnReplace" style="WIDTH: 100%" disabled onclick="Replace();" type="button"
+ value="Replace" fckLang="DlgReplaceReplaceBtn">
+ </td>
+ </tr>
+ <tr>
+ <td vAlign="top" noWrap><label for="txtReplace" fckLang="DlgReplaceReplaceLbl">Replace
+ with:</label>
+ </td>
+ <td vAlign="top"><input id="txtReplace" style="WIDTH: 100%" tabIndex="2" type="text">
+ </td>
+ <td><input id="btnReplaceAll" disabled onclick="ReplaceAll()" type="button" value="Replace All"
+ fckLang="DlgReplaceReplAllBtn">
+ </td>
+ </tr>
+ <tr>
+ <td vAlign="bottom" colSpan="3"> <input id="chkCase" tabIndex="3" type="checkbox"><label for="chkCase" fckLang="DlgReplaceCaseChk">Match
+ case</label>
+ <br>
+ <input id="chkWord" tabIndex="4" type="checkbox"><label for="chkWord" fckLang="DlgReplaceWordChk">Match
+ whole word</label>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select/fck_select.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select/fck_select.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select/fck_select.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,165 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_select.js
+ * Scripts for the fck_select.html page.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function Select( combo )
+{
+ var iIndex = combo.selectedIndex ;
+
+ oListText.selectedIndex = iIndex ;
+ oListValue.selectedIndex = iIndex ;
+
+ var oTxtText = document.getElementById( "txtText" ) ;
+ var oTxtValue = document.getElementById( "txtValue" ) ;
+
+ oTxtText.value = oListText.value ;
+ oTxtValue.value = oListValue.value ;
+}
+
+function Add()
+{
+ var oTxtText = document.getElementById( "txtText" ) ;
+ var oTxtValue = document.getElementById( "txtValue" ) ;
+
+ AddComboOption( oListText, oTxtText.value, oTxtText.value ) ;
+ AddComboOption( oListValue, oTxtValue.value, oTxtValue.value ) ;
+
+ oListText.selectedIndex = oListText.options.length - 1 ;
+ oListValue.selectedIndex = oListValue.options.length - 1 ;
+
+ oTxtText.value = '' ;
+ oTxtValue.value = '' ;
+
+ oTxtText.focus() ;
+}
+
+function Modify()
+{
+ var iIndex = oListText.selectedIndex ;
+
+ if ( iIndex < 0 ) return ;
+
+ var oTxtText = document.getElementById( "txtText" ) ;
+ var oTxtValue = document.getElementById( "txtValue" ) ;
+
+ oListText.options[ iIndex ].innerHTML = oTxtText.value ;
+ oListText.options[ iIndex ].value = oTxtText.value ;
+
+ oListValue.options[ iIndex ].innerHTML = oTxtValue.value ;
+ oListValue.options[ iIndex ].value = oTxtValue.value ;
+
+ oTxtText.value = '' ;
+ oTxtValue.value = '' ;
+
+ oTxtText.focus() ;
+}
+
+function Move( steps )
+{
+ ChangeOptionPosition( oListText, steps ) ;
+ ChangeOptionPosition( oListValue, steps ) ;
+}
+
+function Delete()
+{
+ RemoveSelectedOptions( oListText ) ;
+ RemoveSelectedOptions( oListValue ) ;
+}
+
+function SetSelectedValue()
+{
+ var iIndex = oListValue.selectedIndex ;
+ if ( iIndex < 0 ) return ;
+
+ var oTxtValue = document.getElementById( "txtSelValue" ) ;
+
+ oTxtValue.value = oListValue.options[ iIndex ].value ;
+}
+
+// Moves the selected option by a number of steps (also negative)
+function ChangeOptionPosition( combo, steps )
+{
+ var iActualIndex = combo.selectedIndex ;
+
+ if ( iActualIndex < 0 )
+ return ;
+
+ var iFinalIndex = iActualIndex + steps ;
+
+ if ( iFinalIndex < 0 )
+ iFinalIndex = 0 ;
+
+ if ( iFinalIndex > ( combo.options.lenght - 1 ) )
+ iFinalIndex = combo.options.lenght - 1 ;
+
+ if ( iActualIndex == iFinalIndex )
+ return ;
+
+ var oOption = combo.options[ iActualIndex ] ;
+ var sText = oOption.innerHTML ;
+ var sValue = oOption.value ;
+
+ combo.remove( iActualIndex ) ;
+
+ oOption = AddComboOption( combo, sText, sValue, null, iFinalIndex ) ;
+
+ oOption.selected = true ;
+}
+
+// Remove all selected options from a SELECT object
+function RemoveSelectedOptions(combo)
+{
+ // Save the selected index
+ var iSelectedIndex = combo.selectedIndex ;
+
+ var oOptions = combo.options ;
+
+ // Remove all selected options
+ for ( var i = oOptions.length - 1 ; i >= 0 ; i-- )
+ {
+ if (oOptions[i].selected) combo.remove(i) ;
+ }
+
+ // Reset the selection based on the original selected index
+ if ( combo.options.length > 0 )
+ {
+ if ( iSelectedIndex >= combo.options.length ) iSelectedIndex = combo.options.length - 1 ;
+ combo.selectedIndex = iSelectedIndex ;
+ }
+}
+
+// Add a new option to a SELECT object (combo or list)
+function AddComboOption( combo, optionText, optionValue, documentObject, index )
+{
+ var oOption ;
+
+ if ( documentObject )
+ oOption = documentObject.createElement("OPTION") ;
+ else
+ oOption = document.createElement("OPTION") ;
+
+ if ( index != null )
+ combo.options.add( oOption, index ) ;
+ else
+ combo.options.add( oOption ) ;
+
+ oOption.innerHTML = optionText.length > 0 ? optionText : ' ' ;
+ oOption.value = optionValue ;
+
+ return oOption ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_select.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,172 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_select.html
+ * Select dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Select Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript" src="fck_select/fck_select.js"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.GetSelectedElement() ;
+
+var oListText ;
+var oListValue ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ oListText = document.getElementById( 'cmbText' ) ;
+ oListValue = document.getElementById( 'cmbValue' ) ;
+
+ if ( oActiveEl && oActiveEl.tagName == 'SELECT' )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtSelValue').value = oActiveEl.value ;
+ GetE('txtLines').value = GetAttribute( oActiveEl, 'size' ) ;
+ GetE('chkMultiple').checked = oActiveEl.multiple ;
+
+ // Load the actual options
+ for ( var i = 0 ; i < oActiveEl.options.length ; i++ )
+ {
+ var sText = oActiveEl.options[i].innerHTML ;
+ var sValue = oActiveEl.options[i].value ;
+
+ AddComboOption( oListText, sText, sText ) ;
+ AddComboOption( oListValue, sValue, sValue ) ;
+ }
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ var sSize = GetE('txtLines').value ;
+ if ( sSize == null || isNaN( sSize ) || sSize <= 1 )
+ sSize = '' ;
+
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'SELECT' ) ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ }
+
+ SetAttribute( oActiveEl, 'name' , GetE('txtName').value ) ;
+ SetAttribute( oActiveEl, 'size' , sSize ) ;
+ oActiveEl.multiple = ( sSize.length > 0 && GetE('chkMultiple').checked ) ;
+
+ // Remove all options.
+ while ( oActiveEl.options.length > 0 )
+ oActiveEl.remove(0) ;
+
+ // Add all available options.
+ for ( var i = 0 ; i < oListText.options.length ; i++ )
+ {
+ var sText = oListText.options[i].value ;
+ var sValue = oListValue.options[i].value ;
+ if ( sValue.length == 0 ) sValue = sText ;
+
+ var oOption = AddComboOption( oActiveEl, sText, sValue, oDOM ) ;
+
+ if ( sValue == GetE('txtSelValue').value )
+ {
+ SetAttribute( oOption, 'selected', 'selected' ) ;
+ oOption.selected = true ;
+ }
+ }
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style='OVERFLOW: hidden' scroll='no'>
+ <table width="100%" height="100%">
+ <tr>
+ <td>
+ <table width="100%">
+ <tr>
+ <td nowrap><span fckLang="DlgSelectName">Name</span> </td>
+ <td width="100%" colSpan="2"><input id="txtName" style="WIDTH: 100%" type="text"></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgSelectValue">Value</span> </td>
+ <td width="100%" colSpan="2"><input id="txtSelValue" style="WIDTH: 100%; BACKGROUND-COLOR: buttonface" type="text" readonly></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgSelectSize">Size</span> </td>
+ <td nowrap><input id="txtLines" type="text" size="2" value=""> <span fckLang="DlgSelectLines">lines</span></td>
+ <td nowrap align="right"><input id="chkMultiple" name="chkMultiple" type="checkbox"><label for="chkMultiple" fckLang="DlgSelectChkMulti">Allow
+ multiple selections</label></td>
+ </tr>
+ </table>
+ <br>
+ <hr style="POSITION: absolute">
+ <span style="LEFT: 10px; POSITION: relative; TOP: -7px" class="BackColor"> <span fckLang="DlgSelectOpAvail">Available
+ Options</span> </span>
+ <table width="100%">
+ <tr>
+ <td width="50%"><span fckLang="DlgSelectOpText">Text</span><br>
+ <input id="txtText" style="WIDTH: 100%" type="text" name="txtText">
+ </td>
+ <td width="50%"><span fckLang="DlgSelectOpValue">Value</span><br>
+ <input id="txtValue" style="WIDTH: 100%" type="text" name="txtValue">
+ </td>
+ <td vAlign="bottom"><input onclick="Add();" type="button" fckLang="DlgSelectBtnAdd" value="Add"></td>
+ <td vAlign="bottom"><input onclick="Modify();" type="button" fckLang="DlgSelectBtnModify" value="Modify"></td>
+ </tr>
+ <tr>
+ <td rowSpan="2"><select id="cmbText" style="WIDTH: 100%" onchange="GetE('cmbValue').selectedIndex = this.selectedIndex;Select(this);"
+ size="5" name="cmbText"></select>
+ </td>
+ <td rowSpan="2"><select id="cmbValue" style="WIDTH: 100%" onchange="GetE('cmbText').selectedIndex = this.selectedIndex;Select(this);"
+ size="5" name="cmbValue"></select>
+ </td>
+ <td vAlign="top" colSpan="2">
+ </td>
+ </tr>
+ <tr>
+ <td vAlign="bottom" colSpan="2"><input style="WIDTH: 100%" onclick="Move(-1);" type="button" fckLang="DlgSelectBtnUp" value="Up">
+ <br>
+ <input style="WIDTH: 100%" onclick="Move(1);" type="button" fckLang="DlgSelectBtnDown"
+ value="Down">
+ </td>
+ </tr>
+ <TR>
+ <TD vAlign="bottom" colSpan="4"><INPUT onclick="SetSelectedValue();" type="button" fckLang="DlgSelectBtnSetValue" value="Set as selected value">
+ <input onclick="Delete();" type="button" fckLang="DlgSelectBtnDelete" value="Delete"></TD>
+ </TR>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_smiley.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_smiley.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_smiley.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,90 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_smiley.html
+ * Smileys (emoticons) dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="robots" content="noindex, nofollow" />
+ <style type="text/css">
+ .HandIE { cursor: hand ; }
+ .HandMozilla { cursor: pointer ; }
+ </style>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+window.onload = function ()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+}
+
+function InsertSmiley( url )
+{
+ var oImg = oEditor.FCK.CreateElement( 'IMG' ) ;
+ oImg.src = url ;
+
+ window.parent.Cancel() ;
+}
+
+function over(td)
+{
+ td.className = 'LightBackground HandIE HandMozilla' ;
+}
+
+function out(td)
+{
+ td.className = 'DarkBackground HandIE HandMozilla' ;
+}
+ </script>
+ </head>
+ <body scroll="no">
+ <table cellpadding="2" cellspacing="2" align="center" border="0" width="100%" height="100%">
+ <script type="text/javascript">
+<!--
+var FCKConfig = oEditor.FCKConfig ;
+
+var sBasePath = FCKConfig.SmileyPath ;
+var aImages = FCKConfig.SmileyImages ;
+var cols = FCKConfig.SmileyColumns ;
+
+var i = 0 ;
+while (i < aImages.length)
+{
+ document.write("<TR>") ;
+ for(var j = 0 ; j < cols ; j++)
+ {
+ if (aImages[i])
+ {
+ var sUrl = sBasePath + aImages[i] ;
+ document.write("<TD width='1%' align='center' class='DarkBackground HandIE HandMozilla' onclick='InsertSmiley(\"" + sUrl.replace(/"/g, '\\"' ) + "\")' onmouseover='over(this)' onmouseout='out(this)'>") ;
+ document.write("<img src='" + sUrl + "' border='0'>") ;
+ }
+ else
+ document.write("<TD width='1%' class='DarkBackground'> ") ;
+ document.write("<\/TD>") ;
+ i++ ;
+ }
+ document.write("<\/TR>") ;
+}
+//-->
+ </script>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_source.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_source.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_source.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,59 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_source.html
+ * Source editor dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<html>
+ <head>
+ <title>Source</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <link href="common/fck_dialog_common.css" rel="stylesheet" type="text/css" />
+ <script language="javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCK = oEditor.FCK ;
+var FCKConfig = oEditor.FCKConfig ;
+
+window.onload = function()
+{
+ document.getElementById('txtSource').value = ( FCKConfig.EnableXHTML && FCKConfig.EnableSourceXHTML ? FCK.GetXHTML( FCKConfig.FormatSource ) : FCK.GetHTML( FCKConfig.FormatSource ) ) ;
+
+ // Activate the "OK" button.
+ window.parent.SetOkButton( true ) ;
+}
+
+//#### The OK button was hit.
+function Ok()
+{
+ if ( oEditor.FCKBrowserInfo.IsIE )
+ oEditor.FCKUndo.SaveUndoStep() ;
+
+ FCK.SetHTML( document.getElementById('txtSource').value, false ) ;
+
+ return true ;
+}
+ </script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <table width="100%" height="100%">
+ <tr>
+ <td height="100%"><textarea id="txtSource" dir="ltr" style="PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 14px; PADDING-BOTTOM: 5px; WIDTH: 100%; PADDING-TOP: 5px; FONT-FAMILY: Monospace; HEIGHT: 100%">Loading. Please wait...</textarea></td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_specialchar.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_specialchar.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_specialchar.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,106 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_specialchar.html
+ * Special Chars Selector dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<html>
+ <head>
+ <meta name="robots" content="noindex, nofollow">
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <style type="text/css">
+ .HandIE { cursor: hand ; }
+ .HandMozilla { cursor: pointer ; }
+ .Sample { font-size: 24px; }
+ </style>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+var oSample ;
+
+function insertChar(charValue)
+{
+ oEditor.FCK.InsertHtml( charValue || "" ) ;
+ window.parent.Cancel() ;
+}
+
+function over(td)
+{
+ oSample.innerHTML = td.innerHTML ;
+ td.className = 'LightBackground HandIE HandMozilla' ;
+}
+
+function out(td)
+{
+ oSample.innerHTML = " " ;
+ td.className = 'DarkBackground HandIE HandMozilla' ;
+}
+
+function setDefaults()
+{
+ // Gets the sample placeholder.
+ oSample = document.getElementById("SampleTD") ;
+
+ // First of all, translates the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+}
+
+ </script>
+ </HEAD>
+ <BODY onload="setDefaults()" scroll="no">
+ <table cellpadding="0" cellspacing="0" width="100%" height="100%">
+ <tr>
+ <td width="100%">
+ <table cellpadding="1" cellspacing="1" align="center" border="0" width="100%" height="100%">
+ <script type="text/javascript">
+var aChars = ["!",""","#","$","%","&","\\'","(",")","*","+","-",".","/","0","1","2","3","4","5","6","7","8","9",":",";","<","=",">","?","@","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","[","]","^","_","`","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","{","|","}","~","€","‘","’","’","“","”","–","—","¡","¢","£","¤","¥","¦","§","¨","©","ª","«","¬","®","¯","°","±","²","³","´","µ","¶","·","¸","¹","º","»","¼","½","¾","¿","À","Á","Â","Ã","Ä","Å","Æ","Ç","È","É","Ê","Ë","Ì","Í","Î","Ï","Ð","Ñ","Ò","Ó","Ô","Õ","Ö","×","Ø","Ù","Ú","Û","Ü","Ý","Þ","ß","à","á","â","ã","ä","å","æ","ç","è","é","ê","ë","ì","í","î","ï","ð","ñ","ò","ó","ô","õ","ö","÷","ø","ù","ú","û","ü","ü","ý","þ","ÿ"] ;
+
+var cols = 20 ;
+
+var i = 0 ;
+while (i < aChars.length)
+{
+ document.write("<TR>") ;
+ for(var j = 0 ; j < cols ; j++)
+ {
+ if (aChars[i])
+ {
+ document.write('<TD width="1%" class="DarkBackground HandIE HandMozilla" align="center" onclick="insertChar(\'' + aChars[i].replace(/&/g, "&") + '\')" onmouseover="over(this)" onmouseout="out(this)">') ;
+ document.write(aChars[i]) ;
+ }
+ else
+ document.write("<TD class='DarkBackground'> ") ;
+ document.write("<\/TD>") ;
+ i++ ;
+ }
+ document.write("<\/TR>") ;
+}
+ </script>
+ </table>
+ </td>
+ <td nowrap> </td>
+ <td valign="top">
+ <table width="40" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td id="SampleTD" width="40" height="40" align="center" class="DarkBackground Sample"> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </BODY>
+</HTML>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/blank.html
===================================================================
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,87 @@
+////////////////////////////////////////////////////
+// controlWindow object
+////////////////////////////////////////////////////
+function controlWindow( controlForm ) {
+ // private properties
+ this._form = controlForm;
+
+ // public properties
+ this.windowType = "controlWindow";
+// this.noSuggestionSelection = "- No suggestions -"; // by FredCK
+ this.noSuggestionSelection = FCKLang.DlgSpellNoSuggestions ;
+ // set up the properties for elements of the given control form
+ this.suggestionList = this._form.sugg;
+ this.evaluatedText = this._form.misword;
+ this.replacementText = this._form.txtsugg;
+ this.undoButton = this._form.btnUndo;
+
+ // public methods
+ this.addSuggestion = addSuggestion;
+ this.clearSuggestions = clearSuggestions;
+ this.selectDefaultSuggestion = selectDefaultSuggestion;
+ this.resetForm = resetForm;
+ this.setSuggestedText = setSuggestedText;
+ this.enableUndo = enableUndo;
+ this.disableUndo = disableUndo;
+}
+
+function resetForm() {
+ if( this._form ) {
+ this._form.reset();
+ }
+}
+
+function setSuggestedText() {
+ var slct = this.suggestionList;
+ var txt = this.replacementText;
+ var str = "";
+ if( (slct.options[0].text) && slct.options[0].text != this.noSuggestionSelection ) {
+ str = slct.options[slct.selectedIndex].text;
+ }
+ txt.value = str;
+}
+
+function selectDefaultSuggestion() {
+ var slct = this.suggestionList;
+ var txt = this.replacementText;
+ if( slct.options.length == 0 ) {
+ this.addSuggestion( this.noSuggestionSelection );
+ } else {
+ slct.options[0].selected = true;
+ }
+ this.setSuggestedText();
+}
+
+function addSuggestion( sugg_text ) {
+ var slct = this.suggestionList;
+ if( sugg_text ) {
+ var i = slct.options.length;
+ var newOption = new Option( sugg_text, 'sugg_text'+i );
+ slct.options[i] = newOption;
+ }
+}
+
+function clearSuggestions() {
+ var slct = this.suggestionList;
+ for( var j = slct.length - 1; j > -1; j-- ) {
+ if( slct.options[j] ) {
+ slct.options[j] = null;
+ }
+ }
+}
+
+function enableUndo() {
+ if( this.undoButton ) {
+ if( this.undoButton.disabled == true ) {
+ this.undoButton.disabled = false;
+ }
+ }
+}
+
+function disableUndo() {
+ if( this.undoButton ) {
+ if( this.undoButton.disabled == false ) {
+ this.undoButton.disabled = true;
+ }
+ }
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/controls.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,153 @@
+<html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="spellerStyle.css" />
+ <script src="controlWindow.js"></script>
+ <script>
+var spellerObject;
+var controlWindowObj;
+
+if( parent.opener ) {
+ spellerObject = parent.opener.speller;
+}
+
+function ignore_word() {
+ if( spellerObject ) {
+ spellerObject.ignoreWord();
+ }
+}
+
+function ignore_all() {
+ if( spellerObject ) {
+ spellerObject.ignoreAll();
+ }
+}
+
+function replace_word() {
+ if( spellerObject ) {
+ spellerObject.replaceWord();
+ }
+}
+
+function replace_all() {
+ if( spellerObject ) {
+ spellerObject.replaceAll();
+ }
+}
+
+function end_spell() {
+ if( spellerObject ) {
+ spellerObject.terminateSpell();
+ }
+}
+
+function undo() {
+ if( spellerObject ) {
+ spellerObject.undo();
+ }
+}
+
+function suggText() {
+ if( controlWindowObj ) {
+ controlWindowObj.setSuggestedText();
+ }
+}
+
+var FCKLang = window.parent.parent.FCKLang ; // by FredCK
+
+function init_spell() {
+ // By FredCK (fckLang attributes have been added to the HTML source of this page)
+ window.parent.parent.OnSpellerControlsLoad( this ) ;
+
+ var controlForm = document.spellcheck;
+
+ // create a new controlWindow object
+ controlWindowObj = new controlWindow( controlForm );
+
+ // call the init_spell() function in the parent frameset
+ if( parent.frames.length ) {
+ parent.init_spell( controlWindowObj );
+ } else {
+ alert( 'This page was loaded outside of a frameset. It might not display properly' );
+ }
+}
+
+</script>
+ </head>
+ <body class="controlWindowBody" onLoad="init_spell();" style="OVERFLOW: hidden" scroll="no"> <!-- by FredCK -->
+ <form name="spellcheck">
+ <table border="0" cellpadding="0" cellspacing="0" border="0" align="center">
+ <tr>
+ <td colspan="3" class="normalLabel"><span fckLang="DlgSpellNotInDic">Not in dictionary:</span></td>
+ </tr>
+ <tr>
+ <td colspan="3"><input class="readonlyInput" type="text" name="misword" readonly /></td>
+ </tr>
+ <tr>
+ <td colspan="3" height="5"></td>
+ </tr>
+ <tr>
+ <td class="normalLabel"><span fckLang="DlgSpellChangeTo">Change to:</span></td>
+ </tr>
+ <tr valign="top">
+ <td>
+ <table border="0" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="normalLabel">
+ <input class="textDefault" type="text" name="txtsugg" />
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <select class="suggSlct" name="sugg" size="7" onChange="suggText();" onDblClick="replace_word();">
+ <option></option>
+ </select>
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td> </td>
+ <td>
+ <table border="0" cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td>
+ <input class="buttonDefault" type="button" fckLang="DlgSpellBtnIgnore" value="Ignore" onClick="ignore_word();">
+ </td>
+ <td> </td>
+ <td>
+ <input class="buttonDefault" type="button" fckLang="DlgSpellBtnIgnoreAll" value="Ignore All" onClick="ignore_all();">
+ </td>
+ </tr>
+ <tr>
+ <td colspan="3" height="5"></td>
+ </tr>
+ <tr>
+ <td>
+ <input class="buttonDefault" type="button" fckLang="DlgSpellBtnReplace" value="Replace" onClick="replace_word();">
+ </td>
+ <td> </td>
+ <td>
+ <input class="buttonDefault" type="button" fckLang="DlgSpellBtnReplaceAll" value="Replace All" onClick="replace_all();">
+ </td>
+ </tr>
+ <tr>
+ <td colspan="3" height="5"></td>
+ </tr>
+ <tr>
+ <td>
+ <input class="buttonDefault" type="button" name="btnUndo" fckLang="DlgSpellBtnUndo" value="Undo" onClick="undo();"
+ disabled>
+ </td>
+ <td> </td>
+ <td>
+ <!-- by FredCK
+ <input class="buttonDefault" type="button" value="Close" onClick="end_spell();">
+ -->
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,132 @@
+<!--- Coldfusion MX uses java on the server to process tags. So it is save to use most java attributes. For example below
+I use list.lastindexOf(), lastindexOf() is a java string attribute. If you plan on using this tag with earlier versions
+of Coldfusion, you will have to replace the lastindexOf with a pure coldfusion function. By replacing the lastindexOf, spellchecker.cfm
+script should be compatible with all cf version 4.5 and up.
+
+Also if you are hosting your site at an ISP, you will have to check with them to see if the use of <CFEXECUTE> is allowed.
+In most cases ISP will not allow the use of that tag for security reasons. Clients would be able to access each others files in certain cases.
+ --->
+
+
+<!--- Set up variables --->
+<cfset tempFolder = "c:\test">
+<cfset tempfile = "spell_#randrange(1,1000)#">
+<cfset apsell_dir = "c:\aspell\bin">
+<!--- <cfset spellercss = "/speller/spellerStyle.css"> by FredCK --->
+<cfset spellercss = "../spellerStyle.css">
+<!--- <cfset word_win_src = "/speller/wordWindow.js"> by FredCK --->
+<cfset word_win_src = "../wordWindow.js">
+
+
+<!--- Takes care of those pesky smart quotes from MS apps, replaces them with regular quotes --->
+<cfset submitted_text = replacelist(form.checktext,"%u201C,%u201D","%22,%22")>
+<cfset submitted_text = urlDecode(submitted_text)>
+
+
+
+
+<!--- need to escape special javascript characters such as ' --->
+<cfset unaltered_text = submitted_text>
+<cfset submitted_text = replace(submitted_text,"'","\'","All")>
+<cfset submitted_text = replace(submitted_text,"""","\""","All")>
+
+<!--- use carat on each line to escape possible aspell commands --->
+<cfset text = "">
+<cfloop list="#submitted_text#" index="idx" delimiters="#chr(10)##chr(13)#">
+ <cfset text =text&"^"&idx&"#chr(10)##chr(13)#">
+</cfloop>
+
+
+
+<!--- create temp file from the submitted text, this will be passed to aspell to be check for misspelled words --->
+<cffile action="write" file="#tempFolder#\#tempfile#.txt" output="#text#" charset="utf-8">
+
+
+<!--- cfsavecontent is used to set the variable that will be returned with the results from aspell.
+If your using the new version of mx 6.1 you can use the following cfexecute tag instead:
+<cfexecute name="C:\WINDOWS\SYSTEM32\cmd.exe" arguments="/c type c:\test\#tempfile#.txt | c:\aspell\bin\aspell -a" timeout="100" variable="results"></cfexecute> --->
+
+<cfsavecontent variable="food">
+<cfexecute name="C:\WINDOWS\SYSTEM32\cmd.exe" arguments="/c type #tempFolder#\#tempfile#.txt | #apsell_dir#\aspell -a" timeout="100"></cfexecute>
+</cfsavecontent>
+
+<!--- remove temp file --->
+<cffile action="delete" file="#tempFolder#\#tempfile#.txt">
+
+
+
+
+<cfoutput>
+<html>
+<head>
+<link rel="stylesheet" type="text/css" href="speller/spellerStyle.css">
+<script src="/speller/wordWindow.js"></script>
+<script language="javascript">
+var suggs = new Array();
+var words = new Array();
+var error;
+var wordtext = unescape('#urlencodedFormat(unaltered_text)#');
+
+<cfset cnt = 1>
+<cfset word_cnt = 0>
+<cfloop list="#food#" index="list" delimiters="#chr(10)##chr(13)#">
+ <!--- removes the first line of the aspell output "@(#) International Ispell Version 3.1.20 (but really Aspell 0.50.3)" --->
+ <cfif NOT cnt EQ 1>
+ <cfif find("&",list) OR find("##",list)>
+ <!--- word that misspelled --->
+ <cfset bad_word = listGetAt(list,"2"," ")>
+ <!--- sugestions --->
+ <cfset wrdList = mid(list,(list.lastindexOf(':') + 2),(len(list) - (list.lastindexOf(':') + 2)))>
+ <cfset wrdsList = "">
+ <cfloop list=#wrdList# index="idx">
+ <cfset wrdsList =wrdsList&"'"&trim(replace(idx,"'","\'","All"))&"',">
+ </cfloop>
+ <!--- javascript --->
+ words[#word_cnt#] = '#trim(replace(bad_word,"'","\'","All"))#';
+ suggs[#word_cnt#] = [#trim(wrdsList)#];
+ <cfset word_cnt = word_cnt + 1>
+ <cfelseif find("*",list)>
+ </cfif>
+ </cfif>
+ <cfset cnt = cnt + 1>
+</cfloop>
+
+
+
+
+
+
+var wordWindowObj = new wordWindow();
+wordWindowObj.originalSpellings = words;
+wordWindowObj.suggestions = suggs;
+wordWindowObj.text = wordtext;
+
+
+function init_spell() {
+ // check if any error occured during server-side processing
+ if( error ) {
+ alert( error );
+ } else {
+ // call the init_spell() function in the parent frameset
+ if (parent.frames.length) {
+ parent.init_spell( wordWindowObj );
+ } else {
+ alert('This page was loaded outside of a frameset. It might not display properly');
+ }
+ }
+}
+
+
+
+</script>
+
+</head>
+<body onLoad="init_spell();">
+
+<script>
+wordWindowObj.writeBody();
+</script>
+
+</body>
+</html>
+</cfoutput>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,193 @@
+<?php
+header('Content-type: text/html; charset=utf-8');
+
+//$spellercss = '/speller/spellerStyle.css'; // by FredCK
+$spellercss = '../spellerStyle.css'; // by FredCK
+//$word_win_src = '/speller/wordWindow.js'; // by FredCK
+$word_win_src = '../wordWindow.js'; // by FredCK
+$textinputs = $_POST['textinputs']; # array
+//$aspell_prog = 'aspell'; // by FredCK (for Linux)
+$aspell_prog = '"C:\Program Files\Aspell\bin\aspell.exe"'; // by FredCK (for Windows)
+$lang = 'en_US';
+//$aspell_opts = "-a --lang=$lang --encoding=utf-8"; // by FredCK
+$aspell_opts = "-a --lang=$lang --encoding=utf-8 -H"; // by FredCK
+$tempfiledir = "./";
+$input_separator = "A";
+
+# set the JavaScript variable to the submitted text.
+# textinputs is an array, each element corresponding to the (url-encoded)
+# value of the text control submitted for spell-checking
+function print_textinputs_var() {
+ global $textinputs;
+ foreach( $textinputs as $key=>$val ) {
+ # $val = str_replace( "'", "%27", $val );
+ echo "textinputs[$key] = decodeURIComponent(\"" . $val . "\");\n";
+ }
+}
+
+# make declarations for the text input index
+function print_textindex_decl( $text_input_idx ) {
+ echo "words[$text_input_idx] = [];\n";
+ echo "suggs[$text_input_idx] = [];\n";
+}
+
+# set an element of the JavaScript 'words' array to a misspelled word
+function print_words_elem( $word, $index, $text_input_idx ) {
+ echo "words[$text_input_idx][$index] = '" . escape_quote( $word ) . "';\n";
+}
+
+
+# set an element of the JavaScript 'suggs' array to a list of suggestions
+function print_suggs_elem( $suggs, $index, $text_input_idx ) {
+ echo "suggs[$text_input_idx][$index] = [";
+ foreach( $suggs as $key=>$val ) {
+ if( $val ) {
+ echo "'" . escape_quote( $val ) . "'";
+ if ( $key+1 < count( $suggs )) {
+ echo ", ";
+ }
+ }
+ }
+ echo "];\n";
+}
+
+# escape single quote
+function escape_quote( $str ) {
+ return preg_replace ( "/'/", "\\'", $str );
+}
+
+
+# handle a server-side error.
+function error_handler( $err ) {
+ echo "error = '" . escape_quote( $err ) . "';\n";
+}
+
+## get the list of misspelled words. Put the results in the javascript words array
+## for each misspelled word, get suggestions and put in the javascript suggs array
+function print_checker_results() {
+
+ global $aspell_prog;
+ global $aspell_opts;
+ global $tempfiledir;
+ global $textinputs;
+ global $input_separator;
+ $aspell_err = "";
+ # create temp file
+ $tempfile = tempnam( $tempfiledir, 'aspell_data_' );
+
+ # open temp file, add the submitted text.
+ if( $fh = fopen( $tempfile, 'w' )) {
+ for( $i = 0; $i < count( $textinputs ); $i++ ) {
+ $text = urldecode( $textinputs[$i] );
+ $lines = explode( "\n", $text );
+ fwrite ( $fh, "%\n" ); # exit terse mode
+ fwrite ( $fh, "^$input_separator\n" );
+ fwrite ( $fh, "!\n" ); # enter terse mode
+ foreach( $lines as $key=>$value ) {
+ # use carat on each line to escape possible aspell commands
+ fwrite( $fh, "^$value\n" );
+ }
+ }
+ fclose( $fh );
+
+ # exec aspell command - redirect STDERR to STDOUT
+ $cmd = "$aspell_prog $aspell_opts < $tempfile 2>&1";
+ if( $aspellret = shell_exec( $cmd )) {
+ $linesout = explode( "\n", $aspellret );
+ $index = 0;
+ $text_input_index = -1;
+ # parse each line of aspell return
+ foreach( $linesout as $key=>$val ) {
+ $chardesc = substr( $val, 0, 1 );
+ # if '&', then not in dictionary but has suggestions
+ # if '#', then not in dictionary and no suggestions
+ # if '*', then it is a delimiter between text inputs
+ # if '@' then version info
+ if( $chardesc == '&' || $chardesc == '#' ) {
+ $line = explode( " ", $val, 5 );
+ print_words_elem( $line[1], $index, $text_input_index );
+ if( isset( $line[4] )) {
+ $suggs = explode( ", ", $line[4] );
+ } else {
+ $suggs = array();
+ }
+ print_suggs_elem( $suggs, $index, $text_input_index );
+ $index++;
+ } elseif( $chardesc == '*' ) {
+ $text_input_index++;
+ print_textindex_decl( $text_input_index );
+ $index = 0;
+ } elseif( $chardesc != '@' && $chardesc != "" ) {
+ # assume this is error output
+ $aspell_err .= $val;
+ }
+ }
+ if( $aspell_err ) {
+ $aspell_err = "Error executing `$cmd`\\n$aspell_err";
+ error_handler( $aspell_err );
+ }
+ } else {
+ error_handler( "System error: Aspell program execution failed (`$cmd`)" );
+ }
+ } else {
+ error_handler( "System error: Could not open file '$tempfile' for writing" );
+ }
+
+ # close temp file, delete file
+ unlink( $tempfile );
+}
+
+
+?>
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<link rel="stylesheet" type="text/css" href="<?php echo $spellercss ?>" />
+<script language="javascript" src="<?php echo $word_win_src ?>"></script>
+<script language="javascript">
+var suggs = new Array();
+var words = new Array();
+var textinputs = new Array();
+var error;
+<?php
+
+print_textinputs_var();
+
+print_checker_results();
+
+?>
+
+var wordWindowObj = new wordWindow();
+wordWindowObj.originalSpellings = words;
+wordWindowObj.suggestions = suggs;
+wordWindowObj.textInputs = textinputs;
+
+function init_spell() {
+ // check if any error occured during server-side processing
+ if( error ) {
+ alert( error );
+ } else {
+ // call the init_spell() function in the parent frameset
+ if (parent.frames.length) {
+ parent.init_spell( wordWindowObj );
+ } else {
+ alert('This page was loaded outside of a frameset. It might not display properly');
+ }
+ }
+}
+
+
+
+</script>
+
+</head>
+<!-- <body onLoad="init_spell();"> by FredCK -->
+<body onLoad="init_spell();" bgcolor="#ffffff">
+
+<script type="text/javascript">
+wordWindowObj.writeBody();
+</script>
+
+</body>
+</html>
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,180 @@
+#!/usr/bin/perl
+
+use CGI qw/ :standard /;
+use File::Temp qw/ tempfile tempdir /;
+
+# my $spellercss = '/speller/spellerStyle.css'; # by FredCK
+my $spellercss = '../spellerStyle.css'; # by FredCK
+# my $wordWindowSrc = '/speller/wordWindow.js'; # by FredCK
+my $wordWindowSrc = '../wordWindow.js'; # by FredCK
+my @textinputs = param( 'textinputs[]' ); # array
+# my $aspell_cmd = 'aspell'; # by FredCK (for Linux)
+my $aspell_cmd = '"C:\Program Files\Aspell\bin\aspell.exe"'; # by FredCK (for Windows)
+my $lang = 'en_US';
+# my $aspell_opts = "-a --lang=$lang --encoding=utf-8"; # by FredCK
+my $aspell_opts = "-a --lang=$lang --encoding=utf-8 -H"; # by FredCK
+my $input_separator = "A";
+
+# set the 'wordtext' JavaScript variable to the submitted text.
+sub printTextVar {
+ for( my $i = 0; $i <= $#textinputs; $i++ ) {
+ print "textinputs[$i] = decodeURIComponent('" . escapeQuote( $textinputs[$i] ) . "')\n";
+ }
+}
+
+sub printTextIdxDecl {
+ my $idx = shift;
+ print "words[$idx] = [];\n";
+ print "suggs[$idx] = [];\n";
+}
+
+sub printWordsElem {
+ my( $textIdx, $wordIdx, $word ) = @_;
+ print "words[$textIdx][$wordIdx] = '" . escapeQuote( $word ) . "';\n";
+}
+
+sub printSuggsElem {
+ my( $textIdx, $wordIdx, @suggs ) = @_;
+ print "suggs[$textIdx][$wordIdx] = [";
+ for my $i ( 0..$#suggs ) {
+ print "'" . escapeQuote( $suggs[$i] ) . "'";
+ if( $i < $#suggs ) {
+ print ", ";
+ }
+ }
+ print "];\n";
+}
+
+sub printCheckerResults {
+ my $textInputIdx = -1;
+ my $wordIdx = 0;
+ my $unhandledText;
+ # create temp file
+ my $dir = tempdir( CLEANUP => 1 );
+ my( $fh, $tmpfilename ) = tempfile( DIR => $dir );
+
+ # temp file was created properly?
+
+ # open temp file, add the submitted text.
+ for( my $i = 0; $i <= $#textinputs; $i++ ) {
+ $text = url_decode( $textinputs[$i] );
+ @lines = split( /\n/, $text );
+ print $fh "\%\n"; # exit terse mode
+ print $fh "^$input_separator\n";
+ print $fh "!\n"; # enter terse mode
+ for my $line ( @lines ) {
+ # use carat on each line to escape possible aspell commands
+ print $fh "^$line\n";
+ }
+
+ }
+ # exec aspell command
+ my $cmd = "$aspell_cmd $aspell_opts < $tmpfilename 2>&1";
+ open ASPELL, "$cmd |" or handleError( "Could not execute `$cmd`\\n$!" ) and return;
+ # parse each line of aspell return
+ for my $ret ( <ASPELL> ) {
+ chomp( $ret );
+ # if '&', then not in dictionary but has suggestions
+ # if '#', then not in dictionary and no suggestions
+ # if '*', then it is a delimiter between text inputs
+ if( $ret =~ /^\*/ ) {
+ $textInputIdx++;
+ printTextIdxDecl( $textInputIdx );
+ $wordIdx = 0;
+
+ } elsif( $ret =~ /^(&|#)/ ) {
+ my @tokens = split( " ", $ret, 5 );
+ printWordsElem( $textInputIdx, $wordIdx, $tokens[1] );
+ my @suggs = ();
+ if( $tokens[4] ) {
+ @suggs = split( ", ", $tokens[4] );
+ }
+ printSuggsElem( $textInputIdx, $wordIdx, @suggs );
+ $wordIdx++;
+ } else {
+ $unhandledText .= $ret;
+ }
+ }
+ close ASPELL or handleError( "Error executing `$cmd`\\n$unhandledText" ) and return;
+}
+
+sub escapeQuote {
+ my $str = shift;
+ $str =~ s/'/\\'/g;
+ return $str;
+}
+
+sub handleError {
+ my $err = shift;
+ print "error = '" . escapeQuote( $err ) . "';\n";
+}
+
+sub url_decode {
+ local $_ = @_ ? shift : $_;
+ defined or return;
+ # change + signs to spaces
+ tr/+/ /;
+ # change hex escapes to the proper characters
+ s/%([a-fA-F0-9]{2})/pack "H2", $1/eg;
+ return $_;
+}
+
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+# Display HTML
+# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
+
+print <<EOF;
+Content-type: text/html; charset=utf-8
+
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<link rel="stylesheet" type="text/css" href="$spellercss"/>
+<script src="$wordWindowSrc"></script>
+<script type="text/javascript">
+var suggs = new Array();
+var words = new Array();
+var textinputs = new Array();
+var error;
+EOF
+
+printTextVar();
+
+printCheckerResults();
+
+print <<EOF;
+var wordWindowObj = new wordWindow();
+wordWindowObj.originalSpellings = words;
+wordWindowObj.suggestions = suggs;
+wordWindowObj.textInputs = textinputs;
+
+
+function init_spell() {
+ // check if any error occured during server-side processing
+ if( error ) {
+ alert( error );
+ } else {
+ // call the init_spell() function in the parent frameset
+ if (parent.frames.length) {
+ parent.init_spell( wordWindowObj );
+ } else {
+ error = "This page was loaded outside of a frameset. ";
+ error += "It might not display properly";
+ alert( error );
+ }
+ }
+}
+
+</script>
+
+</head>
+<body onLoad="init_spell();">
+
+<script type="text/javascript">
+wordWindowObj.writeBody();
+</script>
+
+</body>
+</html>
+EOF
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,458 @@
+////////////////////////////////////////////////////
+// spellChecker.js
+//
+// spellChecker object
+//
+// This file is sourced on web pages that have a textarea object to evaluate
+// for spelling. It includes the implementation for the spellCheckObject.
+//
+////////////////////////////////////////////////////
+
+
+// constructor
+function spellChecker( textObject ) {
+
+ // public properties - configurable
+// this.popUpUrl = '/speller/spellchecker.html'; // by FredCK
+ this.popUpUrl = 'fck_spellerpages/spellerpages/spellchecker.html'; // by FredCK
+ this.popUpName = 'spellchecker';
+// this.popUpProps = "menu=no,width=440,height=350,top=70,left=120,resizable=yes,status=yes"; // by FredCK
+ this.popUpProps = null ; // by FredCK
+// this.spellCheckScript = '/speller/server-scripts/spellchecker.php'; // by FredCK
+ this.spellCheckScript = 'server-scripts/spellchecker.php'; // by FredCK
+ //this.spellCheckScript = '/cgi-bin/spellchecker.pl';
+
+ // values used to keep track of what happened to a word
+ this.replWordFlag = "R"; // single replace
+ this.ignrWordFlag = "I"; // single ignore
+ this.replAllFlag = "RA"; // replace all occurances
+ this.ignrAllFlag = "IA"; // ignore all occurances
+ this.fromReplAll = "~RA"; // an occurance of a "replace all" word
+ this.fromIgnrAll = "~IA"; // an occurance of a "ignore all" word
+ // properties set at run time
+ this.wordFlags = new Array();
+ this.currentTextIndex = 0;
+ this.currentWordIndex = 0;
+ this.spellCheckerWin = null;
+ this.controlWin = null;
+ this.wordWin = null;
+ this.textArea = textObject; // deprecated
+ this.textInputs = arguments;
+
+ // private methods
+ this._spellcheck = _spellcheck;
+ this._getSuggestions = _getSuggestions;
+ this._setAsIgnored = _setAsIgnored;
+ this._getTotalReplaced = _getTotalReplaced;
+ this._setWordText = _setWordText;
+ this._getFormInputs = _getFormInputs;
+
+ // public methods
+ this.openChecker = openChecker;
+ this.startCheck = startCheck;
+ this.checkTextBoxes = checkTextBoxes;
+ this.checkTextAreas = checkTextAreas;
+ this.spellCheckAll = spellCheckAll;
+ this.ignoreWord = ignoreWord;
+ this.ignoreAll = ignoreAll;
+ this.replaceWord = replaceWord;
+ this.replaceAll = replaceAll;
+ this.terminateSpell = terminateSpell;
+ this.undo = undo;
+
+ // set the current window's "speller" property to the instance of this class.
+ // this object can now be referenced by child windows/frames.
+ window.speller = this;
+}
+
+// call this method to check all text boxes (and only text boxes) in the HTML document
+function checkTextBoxes() {
+ this.textInputs = this._getFormInputs( "^text$" );
+ this.openChecker();
+}
+
+// call this method to check all textareas (and only textareas ) in the HTML document
+function checkTextAreas() {
+ this.textInputs = this._getFormInputs( "^textarea$" );
+ this.openChecker();
+}
+
+// call this method to check all text boxes and textareas in the HTML document
+function spellCheckAll() {
+ this.textInputs = this._getFormInputs( "^text(area)?$" );
+ this.openChecker();
+}
+
+// call this method to check text boxe(s) and/or textarea(s) that were passed in to the
+// object's constructor or to the textInputs property
+function openChecker() {
+ this.spellCheckerWin = window.open( this.popUpUrl, this.popUpName, this.popUpProps );
+ if( !this.spellCheckerWin.opener ) {
+ this.spellCheckerWin.opener = window;
+ }
+}
+
+function startCheck( wordWindowObj, controlWindowObj ) {
+
+ // set properties from args
+ this.wordWin = wordWindowObj;
+ this.controlWin = controlWindowObj;
+
+ // reset properties
+ this.wordWin.resetForm();
+ this.controlWin.resetForm();
+ this.currentTextIndex = 0;
+ this.currentWordIndex = 0;
+ // initialize the flags to an array - one element for each text input
+ this.wordFlags = new Array( this.wordWin.textInputs.length );
+ // each element will be an array that keeps track of each word in the text
+ for( var i=0; i<this.wordFlags.length; i++ ) {
+ this.wordFlags[i] = [];
+ }
+
+ // start
+ this._spellcheck();
+
+ return true;
+}
+
+function ignoreWord() {
+ var wi = this.currentWordIndex;
+ var ti = this.currentTextIndex;
+ if( !this.wordWin ) {
+ alert( 'Error: Word frame not available.' );
+ return false;
+ }
+ if( !this.wordWin.getTextVal( ti, wi )) {
+ alert( 'Error: "Not in dictionary" text is missing.' );
+ return false;
+ }
+ // set as ignored
+ if( this._setAsIgnored( ti, wi, this.ignrWordFlag )) {
+ this.currentWordIndex++;
+ this._spellcheck();
+ }
+}
+
+function ignoreAll() {
+ var wi = this.currentWordIndex;
+ var ti = this.currentTextIndex;
+ if( !this.wordWin ) {
+ alert( 'Error: Word frame not available.' );
+ return false;
+ }
+ // get the word that is currently being evaluated.
+ var s_word_to_repl = this.wordWin.getTextVal( ti, wi );
+ if( !s_word_to_repl ) {
+ alert( 'Error: "Not in dictionary" text is missing' );
+ return false;
+ }
+
+ // set this word as an "ignore all" word.
+ this._setAsIgnored( ti, wi, this.ignrAllFlag );
+
+ // loop through all the words after this word
+ for( var i = ti; i < this.wordWin.textInputs.length; i++ ) {
+ for( var j = 0; j < this.wordWin.totalWords( i ); j++ ) {
+ if(( i == ti && j > wi ) || i > ti ) {
+ // future word: set as "from ignore all" if
+ // 1) do not already have a flag and
+ // 2) have the same value as current word
+ if(( this.wordWin.getTextVal( i, j ) == s_word_to_repl )
+ && ( !this.wordFlags[i][j] )) {
+ this._setAsIgnored( i, j, this.fromIgnrAll );
+ }
+ }
+ }
+ }
+
+ // finally, move on
+ this.currentWordIndex++;
+ this._spellcheck();
+}
+
+function replaceWord() {
+ var wi = this.currentWordIndex;
+ var ti = this.currentTextIndex;
+ if( !this.wordWin ) {
+ alert( 'Error: Word frame not available.' );
+ return false;
+ }
+ if( !this.wordWin.getTextVal( ti, wi )) {
+ alert( 'Error: "Not in dictionary" text is missing' );
+ return false;
+ }
+ if( !this.controlWin.replacementText ) {
+ return;
+ }
+ var txt = this.controlWin.replacementText;
+ if( txt.value ) {
+ var newspell = new String( txt.value );
+ if( this._setWordText( ti, wi, newspell, this.replWordFlag )) {
+ this.currentWordIndex++;
+ this._spellcheck();
+ }
+ }
+}
+
+function replaceAll() {
+ var ti = this.currentTextIndex;
+ var wi = this.currentWordIndex;
+ if( !this.wordWin ) {
+ alert( 'Error: Word frame not available.' );
+ return false;
+ }
+ var s_word_to_repl = this.wordWin.getTextVal( ti, wi );
+ if( !s_word_to_repl ) {
+ alert( 'Error: "Not in dictionary" text is missing' );
+ return false;
+ }
+ var txt = this.controlWin.replacementText;
+ if( !txt.value ) return;
+ var newspell = new String( txt.value );
+
+ // set this word as a "replace all" word.
+ this._setWordText( ti, wi, newspell, this.replAllFlag );
+
+ // loop through all the words after this word
+ for( var i = ti; i < this.wordWin.textInputs.length; i++ ) {
+ for( var j = 0; j < this.wordWin.totalWords( i ); j++ ) {
+ if(( i == ti && j > wi ) || i > ti ) {
+ // future word: set word text to s_word_to_repl if
+ // 1) do not already have a flag and
+ // 2) have the same value as s_word_to_repl
+ if(( this.wordWin.getTextVal( i, j ) == s_word_to_repl )
+ && ( !this.wordFlags[i][j] )) {
+ this._setWordText( i, j, newspell, this.fromReplAll );
+ }
+ }
+ }
+ }
+
+ // finally, move on
+ this.currentWordIndex++;
+ this._spellcheck();
+}
+
+function terminateSpell() {
+ // called when we have reached the end of the spell checking.
+ var msg = ""; // by FredCK
+ var numrepl = this._getTotalReplaced();
+ if( numrepl == 0 ) {
+ // see if there were no misspellings to begin with
+ if( !this.wordWin ) {
+ msg = "";
+ } else {
+ if( this.wordWin.totalMisspellings() ) {
+// msg += "No words changed."; // by FredCK
+ msg += FCKLang.DlgSpellNoChanges ; // by FredCK
+ } else {
+// msg += "No misspellings found."; // by FredCK
+ msg += FCKLang.DlgSpellNoMispell ; // by FredCK
+ }
+ }
+ } else if( numrepl == 1 ) {
+// msg += "One word changed."; // by FredCK
+ msg += FCKLang.DlgSpellOneChange ; // by FredCK
+ } else {
+// msg += numrepl + " words changed."; // by FredCK
+ msg += FCKLang.DlgSpellManyChanges.replace( /%1/g, numrepl ) ;
+ }
+ if( msg ) {
+// msg += "\n"; // by FredCK
+ alert( msg );
+ }
+
+ if( numrepl > 0 ) {
+ // update the text field(s) on the opener window
+ for( var i = 0; i < this.textInputs.length; i++ ) {
+ // this.textArea.value = this.wordWin.text;
+ if( this.wordWin ) {
+ if( this.wordWin.textInputs[i] ) {
+ this.textInputs[i].value = this.wordWin.textInputs[i];
+ }
+ }
+ }
+ }
+
+ // return back to the calling window
+// this.spellCheckerWin.close(); // by FredCK
+ if ( typeof( this.OnFinished ) == 'function' ) // by FredCK
+ this.OnFinished(numrepl) ; // by FredCK
+
+ return true;
+}
+
+function undo() {
+ // skip if this is the first word!
+ var ti = this.currentTextIndex;
+ var wi = this.currentWordIndex
+
+ if( this.wordWin.totalPreviousWords( ti, wi ) > 0 ) {
+ this.wordWin.removeFocus( ti, wi );
+
+ // go back to the last word index that was acted upon
+ do {
+ // if the current word index is zero then reset the seed
+ if( this.currentWordIndex == 0 && this.currentTextIndex > 0 ) {
+ this.currentTextIndex--;
+ this.currentWordIndex = this.wordWin.totalWords( this.currentTextIndex )-1;
+ if( this.currentWordIndex < 0 ) this.currentWordIndex = 0;
+ } else {
+ if( this.currentWordIndex > 0 ) {
+ this.currentWordIndex--;
+ }
+ }
+ } while (
+ this.wordWin.totalWords( this.currentTextIndex ) == 0
+ || this.wordFlags[this.currentTextIndex][this.currentWordIndex] == this.fromIgnrAll
+ || this.wordFlags[this.currentTextIndex][this.currentWordIndex] == this.fromReplAll
+ );
+
+ var text_idx = this.currentTextIndex;
+ var idx = this.currentWordIndex;
+ var preReplSpell = this.wordWin.originalSpellings[text_idx][idx];
+
+ // if we got back to the first word then set the Undo button back to disabled
+ if( this.wordWin.totalPreviousWords( text_idx, idx ) == 0 ) {
+ this.controlWin.disableUndo();
+ }
+
+ // examine what happened to this current word.
+ switch( this.wordFlags[text_idx][idx] ) {
+ // replace all: go through this and all the future occurances of the word
+ // and revert them all to the original spelling and clear their flags
+ case this.replAllFlag :
+ for( var i = text_idx; i < this.wordWin.textInputs.length; i++ ) {
+ for( var j = 0; j < this.wordWin.totalWords( i ); j++ ) {
+ if(( i == text_idx && j >= idx ) || i > text_idx ) {
+ var origSpell = this.wordWin.originalSpellings[i][j];
+ if( origSpell == preReplSpell ) {
+ this._setWordText ( i, j, origSpell, undefined );
+ }
+ }
+ }
+ }
+ break;
+
+ // ignore all: go through all the future occurances of the word
+ // and clear their flags
+ case this.ignrAllFlag :
+ for( var i = text_idx; i < this.wordWin.textInputs.length; i++ ) {
+ for( var j = 0; j < this.wordWin.totalWords( i ); j++ ) {
+ if(( i == text_idx && j >= idx ) || i > text_idx ) {
+ var origSpell = this.wordWin.originalSpellings[i][j];
+ if( origSpell == preReplSpell ) {
+ this.wordFlags[i][j] = undefined;
+ }
+ }
+ }
+ }
+ break;
+
+ // replace: revert the word to its original spelling
+ case this.replWordFlag :
+ this._setWordText ( text_idx, idx, preReplSpell, undefined );
+ break;
+ }
+
+ // For all four cases, clear the wordFlag of this word. re-start the process
+ this.wordFlags[text_idx][idx] = undefined;
+ this._spellcheck();
+ }
+}
+
+function _spellcheck() {
+ var ww = this.wordWin;
+
+ // check if this is the last word in the current text element
+ if( this.currentWordIndex == ww.totalWords( this.currentTextIndex) ) {
+ this.currentTextIndex++;
+ this.currentWordIndex = 0;
+ // keep going if we're not yet past the last text element
+ if( this.currentTextIndex < this.wordWin.textInputs.length ) {
+ this._spellcheck();
+ return;
+ } else {
+ this.terminateSpell();
+ return;
+ }
+ }
+
+ // if this is after the first one make sure the Undo button is enabled
+ if( this.currentWordIndex > 0 ) {
+ this.controlWin.enableUndo();
+ }
+
+ // skip the current word if it has already been worked on
+ if( this.wordFlags[this.currentTextIndex][this.currentWordIndex] ) {
+ // increment the global current word index and move on.
+ this.currentWordIndex++;
+ this._spellcheck();
+ } else {
+ var evalText = ww.getTextVal( this.currentTextIndex, this.currentWordIndex );
+ if( evalText ) {
+ this.controlWin.evaluatedText.value = evalText;
+ ww.setFocus( this.currentTextIndex, this.currentWordIndex );
+ this._getSuggestions( this.currentTextIndex, this.currentWordIndex );
+ }
+ }
+}
+
+function _getSuggestions( text_num, word_num ) {
+ this.controlWin.clearSuggestions();
+ // add suggestion in list for each suggested word.
+ // get the array of suggested words out of the
+ // three-dimensional array containing all suggestions.
+ var a_suggests = this.wordWin.suggestions[text_num][word_num];
+ if( a_suggests ) {
+ // got an array of suggestions.
+ for( var ii = 0; ii < a_suggests.length; ii++ ) {
+ this.controlWin.addSuggestion( a_suggests[ii] );
+ }
+ }
+ this.controlWin.selectDefaultSuggestion();
+}
+
+function _setAsIgnored( text_num, word_num, flag ) {
+ // set the UI
+ this.wordWin.removeFocus( text_num, word_num );
+ // do the bookkeeping
+ this.wordFlags[text_num][word_num] = flag;
+ return true;
+}
+
+function _getTotalReplaced() {
+ var i_replaced = 0;
+ for( var i = 0; i < this.wordFlags.length; i++ ) {
+ for( var j = 0; j < this.wordFlags[i].length; j++ ) {
+ if(( this.wordFlags[i][j] == this.replWordFlag )
+ || ( this.wordFlags[i][j] == this.replAllFlag )
+ || ( this.wordFlags[i][j] == this.fromReplAll )) {
+ i_replaced++;
+ }
+ }
+ }
+ return i_replaced;
+}
+
+function _setWordText( text_num, word_num, newText, flag ) {
+ // set the UI and form inputs
+ this.wordWin.setText( text_num, word_num, newText );
+ // keep track of what happened to this word:
+ this.wordFlags[text_num][word_num] = flag;
+ return true;
+}
+
+function _getFormInputs( inputPattern ) {
+ var inputs = new Array();
+ for( var i = 0; i < document.forms.length; i++ ) {
+ for( var j = 0; j < document.forms[i].elements.length; j++ ) {
+ if( document.forms[i].elements[j].type.match( inputPattern )) {
+ inputs[inputs.length] = document.forms[i].elements[j];
+ }
+ }
+ }
+ return inputs;
+}
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,71 @@
+
+<script>
+
+var wordWindow = null;
+var controlWindow = null;
+
+function init_spell( spellerWindow ) {
+
+ if( spellerWindow ) {
+ if( spellerWindow.windowType == "wordWindow" ) {
+ wordWindow = spellerWindow;
+ } else if ( spellerWindow.windowType == "controlWindow" ) {
+ controlWindow = spellerWindow;
+ }
+ }
+
+ if( controlWindow && wordWindow ) {
+ // populate the speller object and start it off!
+ var speller = opener.speller;
+ wordWindow.speller = speller;
+ speller.startCheck( wordWindow, controlWindow );
+ }
+}
+
+// encodeForPost
+function encodeForPost( str ) {
+ var s = new String( str );
+ s = encodeURIComponent( s );
+ // additionally encode single quotes to evade any PHP
+ // magic_quotes_gpc setting (it inserts escape characters and
+ // therefore skews the btye positions of misspelled words)
+ return s.replace( /\'/g, '%27' );
+}
+
+// post the text area data to the script that populates the speller
+function postWords() {
+ var bodyDoc = window.frames[0].document;
+ bodyDoc.open();
+ bodyDoc.write('<html>');
+ bodyDoc.write('<meta http-equiv="Content-Type" content="text/html; charset=utf-8">');
+ bodyDoc.write('<link rel="stylesheet" type="text/css" href="spellerStyle.css"/>');
+ if (opener) {
+ var speller = opener.speller;
+ bodyDoc.write('<body class="normalText" onLoad="document.forms[0].submit();">');
+ bodyDoc.write('<p>' + window.parent.FCKLang.DlgSpellProgress + '<\/p>'); // by FredCK
+ bodyDoc.write('<form action="'+speller.spellCheckScript+'" method="post">');
+ for( var i = 0; i < speller.textInputs.length; i++ ) {
+ bodyDoc.write('<input type="hidden" name="textinputs[]" value="'+encodeForPost(speller.textInputs[i].value)+'">');
+ }
+ bodyDoc.write('<\/form>');
+ bodyDoc.write('<\/body>');
+ } else {
+ bodyDoc.write('<body class="normalText">');
+ bodyDoc.write('<p><b>This page cannot be displayed<\/b><\/p><p>The window was not opened from another window.<\/p>');
+ bodyDoc.write('<\/body>');
+ }
+ bodyDoc.write('<\/html>');
+ bodyDoc.close();
+}
+</script>
+
+<html>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<head>
+<title>Speller Pages</title>
+</head>
+<frameset rows="*,201" onLoad="postWords();">
+<frame src="blank.html">
+<frame src="controls.html">
+</frameset>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,49 @@
+.blend {
+ font-family: courier new;
+ font-size: 10pt;
+ border: 0;
+ margin-bottom:-1;
+}
+.normalLabel {
+ font-size:8pt;
+}
+.normalText {
+ font-family:arial, helvetica, sans-serif;
+ font-size:10pt;
+ color:000000;
+ background-color:FFFFFF;
+}
+.plainText {
+ font-family: courier new, courier, monospace;
+ font-size: 10pt;
+ color:000000;
+ background-color:FFFFFF;
+}
+.controlWindowBody {
+ font-family:arial, helvetica, sans-serif;
+ font-size:8pt;
+ padding: 7px ; /* by FredCK */
+ margin: 0px ; /* by FredCK */
+ /* color:000000; by FredCK */
+ /* background-color:DADADA; by FredCK */
+}
+.readonlyInput {
+ background-color:DADADA;
+ color:000000;
+ font-size:8pt;
+ width:392px;
+}
+.textDefault {
+ font-size:8pt;
+ width: 200px;
+}
+.buttonDefault {
+ width:90px;
+ height:22px;
+ font-size:8pt;
+}
+.suggSlct {
+ width:200px;
+ margin-top:2;
+ font-size:8pt;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,271 @@
+////////////////////////////////////////////////////
+// wordWindow object
+////////////////////////////////////////////////////
+function wordWindow() {
+ // private properties
+ this._forms = [];
+
+ // private methods
+ this._getWordObject = _getWordObject;
+ //this._getSpellerObject = _getSpellerObject;
+ this._wordInputStr = _wordInputStr;
+ this._adjustIndexes = _adjustIndexes;
+ this._isWordChar = _isWordChar;
+ this._lastPos = _lastPos;
+
+ // public properties
+ this.wordChar = /[a-zA-Z]/;
+ this.windowType = "wordWindow";
+ this.originalSpellings = new Array();
+ this.suggestions = new Array();
+ this.checkWordBgColor = "pink";
+ this.normWordBgColor = "white";
+ this.text = "";
+ this.textInputs = new Array();
+ this.indexes = new Array();
+ //this.speller = this._getSpellerObject();
+
+ // public methods
+ this.resetForm = resetForm;
+ this.totalMisspellings = totalMisspellings;
+ this.totalWords = totalWords;
+ this.totalPreviousWords = totalPreviousWords;
+ //this.getTextObjectArray = getTextObjectArray;
+ this.getTextVal = getTextVal;
+ this.setFocus = setFocus;
+ this.removeFocus = removeFocus;
+ this.setText = setText;
+ //this.getTotalWords = getTotalWords;
+ this.writeBody = writeBody;
+ this.printForHtml = printForHtml;
+}
+
+function resetForm() {
+ if( this._forms ) {
+ for( var i = 0; i < this._forms.length; i++ ) {
+ this._forms[i].reset();
+ }
+ }
+ return true;
+}
+
+function totalMisspellings() {
+ var total_words = 0;
+ for( var i = 0; i < this.textInputs.length; i++ ) {
+ total_words += this.totalWords( i );
+ }
+ return total_words;
+}
+
+function totalWords( textIndex ) {
+ return this.originalSpellings[textIndex].length;
+}
+
+function totalPreviousWords( textIndex, wordIndex ) {
+ var total_words = 0;
+ for( var i = 0; i <= textIndex; i++ ) {
+ for( var j = 0; j < this.totalWords( i ); j++ ) {
+ if( i == textIndex && j == wordIndex ) {
+ break;
+ } else {
+ total_words++;
+ }
+ }
+ }
+ return total_words;
+}
+
+//function getTextObjectArray() {
+// return this._form.elements;
+//}
+
+function getTextVal( textIndex, wordIndex ) {
+ var word = this._getWordObject( textIndex, wordIndex );
+ if( word ) {
+ return word.value;
+ }
+}
+
+function setFocus( textIndex, wordIndex ) {
+ var word = this._getWordObject( textIndex, wordIndex );
+ if( word ) {
+ if( word.type == "text" ) {
+ word.focus();
+ word.style.backgroundColor = this.checkWordBgColor;
+ }
+ }
+}
+
+function removeFocus( textIndex, wordIndex ) {
+ var word = this._getWordObject( textIndex, wordIndex );
+ if( word ) {
+ if( word.type == "text" ) {
+ word.blur();
+ word.style.backgroundColor = this.normWordBgColor;
+ }
+ }
+}
+
+function setText( textIndex, wordIndex, newText ) {
+ var word = this._getWordObject( textIndex, wordIndex );
+ var beginStr;
+ var endStr;
+ if( word ) {
+ var pos = this.indexes[textIndex][wordIndex];
+ var oldText = word.value;
+ // update the text given the index of the string
+ beginStr = this.textInputs[textIndex].substring( 0, pos );
+ endStr = this.textInputs[textIndex].substring(
+ pos + oldText.length,
+ this.textInputs[textIndex].length
+ );
+ this.textInputs[textIndex] = beginStr + newText + endStr;
+
+ // adjust the indexes on the stack given the differences in
+ // length between the new word and old word.
+ var lengthDiff = newText.length - oldText.length;
+ this._adjustIndexes( textIndex, wordIndex, lengthDiff );
+
+ word.size = newText.length;
+ word.value = newText;
+ this.removeFocus( textIndex, wordIndex );
+ }
+}
+
+
+function writeBody() {
+ var d = window.document;
+ var is_html = false;
+
+ d.open();
+
+ // iterate through each text input.
+ for( var txtid = 0; txtid < this.textInputs.length; txtid++ ) {
+ var end_idx = 0;
+ var begin_idx = 0;
+ d.writeln( '<form name="textInput'+txtid+'">' );
+ var wordtxt = this.textInputs[txtid];
+ this.indexes[txtid] = [];
+
+ if( wordtxt ) {
+ var orig = this.originalSpellings[txtid];
+ if( !orig ) break;
+
+ //!!! plain text, or HTML mode?
+ d.writeln( '<div class="plainText">' );
+ // iterate through each occurrence of a misspelled word.
+ for( var i = 0; i < orig.length; i++ ) {
+ // find the position of the current misspelled word,
+ // starting at the last misspelled word.
+ // and keep looking if it's a substring of another word
+ do {
+ begin_idx = wordtxt.indexOf( orig[i], end_idx );
+ end_idx = begin_idx + orig[i].length;
+ // word not found? messed up!
+ if( begin_idx == -1 ) break;
+ // look at the characters immediately before and after
+ // the word. If they are word characters we'll keep looking.
+ var before_char = wordtxt.charAt( begin_idx - 1 );
+ var after_char = wordtxt.charAt( end_idx );
+ } while (
+ this._isWordChar( before_char )
+ || this._isWordChar( after_char )
+ );
+
+ // keep track of its position in the original text.
+ this.indexes[txtid][i] = begin_idx;
+
+ // write out the characters before the current misspelled word
+ for( var j = this._lastPos( txtid, i ); j < begin_idx; j++ ) {
+ // !!! html mode? make it html compatible
+ d.write( this.printForHtml( wordtxt.charAt( j )));
+ }
+
+ // write out the misspelled word.
+ d.write( this._wordInputStr( orig[i] ));
+
+ // if it's the last word, write out the rest of the text
+ if( i == orig.length-1 ){
+ d.write( printForHtml( wordtxt.substr( end_idx )));
+ }
+ }
+
+ d.writeln( '</div>' );
+
+ }
+ d.writeln( '</form>' );
+ }
+ //for ( var j = 0; j < d.forms.length; j++ ) {
+ // alert( d.forms[j].name );
+ // for( var k = 0; k < d.forms[j].elements.length; k++ ) {
+ // alert( d.forms[j].elements[k].name + ": " + d.forms[j].elements[k].value );
+ // }
+ //}
+
+ // set the _forms property
+ this._forms = d.forms;
+ d.close();
+}
+
+// return the character index in the full text after the last word we evaluated
+function _lastPos( txtid, idx ) {
+ if( idx > 0 )
+ return this.indexes[txtid][idx-1] + this.originalSpellings[txtid][idx-1].length;
+ else
+ return 0;
+}
+
+function printForHtml( n ) {
+ return n ; // by FredCK
+
+ var htmlstr = n;
+ if( htmlstr.length == 1 ) {
+ // do simple case statement if it's just one character
+ switch ( n ) {
+ case "\n":
+ htmlstr = '<br/>';
+ break;
+ case "<":
+ htmlstr = '<';
+ break;
+ case ">":
+ htmlstr = '>';
+ break;
+ }
+ return htmlstr;
+ } else {
+ htmlstr = htmlstr.replace( /</g, '<' );
+ htmlstr = htmlstr.replace( />/g, '>' );
+ htmlstr = htmlstr.replace( /\n/g, '<br/>' );
+ return htmlstr;
+ }
+}
+
+function _isWordChar( letter ) {
+ if( letter.search( this.wordChar ) == -1 ) {
+ return false;
+ } else {
+ return true;
+ }
+}
+
+function _getWordObject( textIndex, wordIndex ) {
+ if( this._forms[textIndex] ) {
+ if( this._forms[textIndex].elements[wordIndex] ) {
+ return this._forms[textIndex].elements[wordIndex];
+ }
+ }
+ return null;
+}
+
+function _wordInputStr( word ) {
+ var str = '<input readonly ';
+ str += 'class="blend" type="text" value="' + word + '" size="' + word.length + '">';
+ return str;
+}
+
+function _adjustIndexes( textIndex, wordIndex, lengthDiff ) {
+ for( var i = wordIndex + 1; i < this.originalSpellings[textIndex].length; i++ ) {
+ this.indexes[textIndex][i] = this.indexes[textIndex][i] + lengthDiff;
+ }
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_spellerpages.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,59 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_spellerpages.html
+ * Spell Check dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Spell Check</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="fck_spellerpages/spellerpages/spellChecker.js"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCKLang = oEditor.FCKLang ;
+
+window.onload = function()
+{
+ document.getElementById('txtHtml').value = oEditor.FCK.GetHTML() ;
+
+ var oSpeller = new spellChecker( document.getElementById('txtHtml') ) ;
+ oSpeller.OnFinished = oSpeller_OnFinished ;
+ oSpeller.openChecker() ;
+}
+
+function OnSpellerControlsLoad( controlsWindow )
+{
+ // Translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage( controlsWindow.document ) ;
+}
+
+function oSpeller_OnFinished( numberOCorrections )
+{
+ if ( numberOCorrections > 0 )
+ oEditor.FCK.SetHTML( document.getElementById('txtHtml').value ) ;
+ window.parent.Cancel() ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no" style="padding:0px;">
+ <input type="hidden" id="txtHtml" value="">
+ <iframe id="frmSpell" src="../fckblank.html" name="spellchecker" width="100%" height="100%" frameborder="no"></iframe>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_table.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_table.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_table.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,274 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_table.html
+ * Table dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<html>
+ <head>
+ <title>Table Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="robots" content="noindex, nofollow" />
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+// Gets the table if there is one selected.
+var table ;
+var e = oEditor.FCKSelection.GetSelectedElement() ;
+
+if ( ! e && document.location.search.substr(1) == 'Parent' )
+ e = oEditor.FCKSelection.MoveToAncestorNode( 'TABLE' ) ;
+
+if ( e && e.tagName == "TABLE" )
+ table = e ;
+
+// Fired when the window loading process is finished. It sets the fields with the
+// actual values if a table is selected in the editor.
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if (table)
+ {
+ document.getElementById('txtRows').value = table.rows.length ;
+ document.getElementById('txtColumns').value = table.rows[0].cells.length ;
+
+ // Gets the value from the Width or the Style attribute
+ var iWidth = (table.style.width ? table.style.width : table.width ) ;
+ var iHeight = (table.style.height ? table.style.height : table.height ) ;
+
+ if (iWidth.indexOf('%') >= 0) // Percentual = %
+ {
+ iWidth = parseInt( iWidth.substr(0,iWidth.length - 1) ) ;
+ document.getElementById('selWidthType').value = "percent" ;
+ }
+ else if (iWidth.indexOf('px') >= 0) // Style Pixel = px
+ { //
+ iWidth = iWidth.substr(0,iWidth.length - 2);
+ document.getElementById('selWidthType').value = "pixels" ;
+ }
+
+ if (iHeight && iHeight.indexOf('px') >= 0) // Style Pixel = px
+ iHeight = iHeight.substr(0,iHeight.length - 2);
+
+ document.getElementById('txtWidth').value = iWidth ;
+ document.getElementById('txtHeight').value = iHeight ;
+ document.getElementById('txtBorder').value = table.border ;
+ document.getElementById('selAlignment').value = table.align ;
+ document.getElementById('txtCellPadding').value = table.cellPadding ;
+ document.getElementById('txtCellSpacing').value = table.cellSpacing ;
+// document.getElementById('cmbFontStyle').value = table.className ;
+
+ if (table.caption) document.getElementById('txtCaption').value = table.caption.innerHTML ;
+
+ document.getElementById('txtRows').disabled = true ;
+ document.getElementById('txtColumns').disabled = true ;
+ }
+
+ window.parent.SetOkButton( true ) ;
+ window.parent.SetAutoSize( true ) ;
+}
+
+// Fired when the user press the OK button
+function Ok()
+{
+ var bExists = ( table != null ) ;
+
+ if ( ! bExists )
+ {
+ table = document.createElement( "TABLE" ) ;
+ }
+
+ // Removes the Width and Height styles
+ if ( bExists && table.style.width ) table.style.width = null ; //.removeAttribute("width") ;
+ if ( bExists && table.style.height ) table.style.height = null ; //.removeAttribute("height") ;
+
+ table.width = document.getElementById('txtWidth').value + ( document.getElementById('selWidthType').value == "percent" ? "%" : "") ;
+ table.height = document.getElementById('txtHeight').value ;
+ table.border = document.getElementById('txtBorder').value ;
+ table.align = document.getElementById('selAlignment').value ;
+ table.cellPadding = document.getElementById('txtCellPadding').value ;
+ table.cellSpacing = document.getElementById('txtCellSpacing').value ;
+// table.className = cmbFontStyle.value ;
+
+ if ( document.getElementById('txtCaption').value != '')
+ {
+ if (! table.caption) table.createCaption() ;
+ table.caption.innerHTML = document.getElementById('txtCaption').value ;
+ }
+ else if ( bExists && table.caption )
+ {
+ if ( document.all )
+ table.caption.innerHTML = '' ; // TODO: It causes an IE internal error if using removeChild.
+ else
+ table.caption.parentNode.removeChild( table.caption ) ;
+ }
+
+ if (! bExists)
+ {
+ var iRows = document.getElementById('txtRows').value ;
+ var iCols = document.getElementById('txtColumns').value ;
+
+ for ( var r = 0 ; r < iRows ; r++ )
+ {
+ var oRow = table.insertRow(-1) ;
+ for ( var c = 0 ; c < iCols ; c++ )
+ {
+ var oCell = oRow.insertCell(-1) ;
+ if ( oEditor.FCKBrowserInfo.IsGecko )
+ oCell.innerHTML = '<br _moz_editor_bogus_node="TRUE">' ;
+ //oCell.innerHTML = " " ;
+ }
+ }
+
+ oEditor.FCKUndo.SaveUndoStep() ;
+
+ // START iCM MODIFICATIONS
+ // Amended to ensure that newly inserted tables are not incorrectly nested in P tags, etc
+ // We insert the table first and then rectify any nestings afterwards so we can re-use the
+ // FCKTablesProcessor function that corrects tables on SetHTML()
+ /*
+ table = oEditor.FCK.InsertElementAndGetIt( table ) ;
+ if ( !oEditor.FCKConfig.UseBROnCarriageReturn )
+ {
+ oEditor.FCKTablesProcessor.CheckTableNesting( table ) ;
+ }
+ */
+ // END iCM MODIFICATIONS
+
+ oEditor.FCK.InsertElement( table ) ;
+ }
+
+ return true ;
+}
+
+function IsDigit( e )
+{
+ e = e || event ;
+ var iCode = ( e.keyCode || e.charCode ) ;
+ return
+ (
+ ( iCode >= 48 && iCode <= 57 ) // Numbers
+ || (iCode >= 37 && iCode <= 40) // Arrows
+ || iCode == 8 // Backspace
+ || iCode == 46 // Delete
+ ) ;
+}
+
+ </script>
+ </head>
+ <body bottommargin="5" leftmargin="5" topmargin="5" rightmargin="5" scroll="no" style="OVERFLOW: hidden">
+ <table id="otable" cellSpacing="0" cellPadding="0" width="100%" border="0" height="100%">
+ <tr>
+ <td>
+ <table cellSpacing="1" cellPadding="1" width="100%" border="0">
+ <tr>
+ <td valign="top">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td><span fckLang="DlgTableRows">Rows</span>:</td>
+ <td> <input id="txtRows" type="text" maxLength="3" size="2" value="3" name="txtRows" onkeypress="return IsDigit(event);"></td>
+ </tr>
+ <tr>
+ <td><span fckLang="DlgTableColumns">Columns</span>:</td>
+ <td> <input id="txtColumns" type="text" maxLength="2" size="2" value="2" name="txtColumns" onkeypress="return IsDigit(event);"></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td><span fckLang="DlgTableBorder">Border size</span>:</td>
+ <td> <INPUT id="txtBorder" type="text" maxLength="2" size="2" value="1" name="txtBorder" onkeypress="return IsDigit(event);"></td>
+ </tr>
+ <tr>
+ <td><span fckLang="DlgTableAlign">Alignment</span>:</td>
+ <td> <select id="selAlignment" name="selAlignment">
+ <option fckLang="DlgTableAlignNotSet" value="" selected><Not set></option>
+ <option fckLang="DlgTableAlignLeft" value="left">Left</option>
+ <option fckLang="DlgTableAlignCenter" value="center">Center</option>
+ <option fckLang="DlgTableAlignRight" value="right">Right</option>
+ </select></td>
+ </tr>
+ </table>
+ </td>
+ <td> </td>
+ <td align="right" valign="top">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td><span fckLang="DlgTableWidth">Width</span>:</td>
+ <td> <input id="txtWidth" type="text" maxLength="4" size="3" value="200" name="txtWidth" onkeypress="return IsDigit(event);"></td>
+ <td> <select id="selWidthType" name="selWidthType">
+ <option fckLang="DlgTableWidthPx" value="pixels" selected>pixels</option>
+ <option fckLang="DlgTableWidthPc" value="percent">percent</option>
+ </select></td>
+ </tr>
+ <tr>
+ <td><span fckLang="DlgTableHeight">Height</span>:</td>
+ <td> <INPUT id="txtHeight" type="text" maxLength="4" size="3" name="txtHeight" onkeypress="return IsDigit(event);"></td>
+ <td> <span fckLang="DlgTableWidthPx">pixels</span></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgTableCellSpace">Cell spacing</span>:</td>
+ <td> <input id="txtCellSpacing" type="text" maxLength="2" size="2" value="1" name="txtCellSpacing"
+ onkeypress="return IsDigit(event);"></td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgTableCellPad">Cell padding</span>:</td>
+ <td> <input id="txtCellPadding" type="text" maxLength="2" size="2" value="1" name="txtCellPadding"
+ onkeypress="return IsDigit(event);"></td>
+ <td> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <!--
+ <tr>
+ <td nowrap>
+ <span fcklang="DlgClassName">Class Name</span>:</td>
+ <td> </td>
+ <td>
+ <script type="text/javascript">
+// var tbstyles = new TBCombo( "FontStyle" , "null" , "", oEditor.config.StyleNames, oEditor.config.StyleValues, 'CheckStyle("cmbFontStyle")');
+// document.write(tbstyles.GetHTML());
+ </script></td>
+ </tr>
+ -->
+ <tr>
+ <td nowrap><span fckLang="DlgTableCaption">Caption</span>:</td>
+ <td> </td>
+ <td width="100%">
+ <input id="txtCaption" type="text" style="WIDTH: 100%"></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_tablecell.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_tablecell.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_tablecell.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,217 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_tablecell.html
+ * Cell properties dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<html>
+ <head>
+ <title>Table Cell Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="robots" content="noindex, nofollow" />
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+// Array of selected Cells
+var aCells = oEditor.FCKTableHandler.GetSelectedCells() ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage( document ) ;
+
+ SetStartupValue() ;
+
+ window.parent.SetOkButton( true ) ;
+ window.parent.SetAutoSize( true ) ;
+}
+
+function SetStartupValue()
+{
+ if ( aCells.length > 0 )
+ {
+ var oCell = aCells[0] ;
+ var iWidth = GetAttribute( oCell, 'width' ) ;
+
+ if ( iWidth.indexOf && iWidth.indexOf( '%' ) >= 0 )
+ {
+ iWidth = iWidth.substr( 0, iWidth.length - 1 ) ;
+ GetE('selWidthType').value = 'percent' ;
+ }
+
+ if ( oCell.attributes['noWrap'] != null && oCell.attributes['noWrap'].specified )
+ GetE('selWordWrap').value = !oCell.noWrap ;
+
+ GetE('txtWidth').value = iWidth ;
+ GetE('txtHeight').value = GetAttribute( oCell, 'height' ) ;
+ GetE('selHAlign').value = GetAttribute( oCell, 'align' ) ;
+ GetE('selVAlign').value = GetAttribute( oCell, 'vAlign' ) ;
+ GetE('txtRowSpan').value = GetAttribute( oCell, 'rowSpan' ) ;
+ GetE('txtCollSpan').value = GetAttribute( oCell, 'colSpan' ) ;
+ GetE('txtBackColor').value = GetAttribute( oCell, 'bgColor' ) ;
+ GetE('txtBorderColor').value = GetAttribute( oCell, 'borderColor' ) ;
+// GetE('cmbFontStyle').value = oCell.className ;
+ }
+}
+
+// Fired when the user press the OK button
+function Ok()
+{
+ for( i = 0 ; i < aCells.length ; i++ )
+ {
+ if ( GetE('txtWidth').value.length > 0 )
+ aCells[i].width = GetE('txtWidth').value + ( GetE('selWidthType').value == 'percent' ? '%' : '') ;
+ else
+ aCells[i].removeAttribute( 'width', 0 ) ;
+
+ if ( GetE('selWordWrap').value == 'false' )
+ aCells[i].noWrap = true ;
+ else
+ aCells[i].removeAttribute( 'noWrap' ) ;
+
+ SetAttribute( aCells[i], 'height' , GetE('txtHeight').value ) ;
+ SetAttribute( aCells[i], 'align' , GetE('selHAlign').value ) ;
+ SetAttribute( aCells[i], 'vAlign' , GetE('selVAlign').value ) ;
+ SetAttribute( aCells[i], 'rowSpan' , GetE('txtRowSpan').value ) ;
+ SetAttribute( aCells[i], 'colSpan' , GetE('txtCollSpan').value ) ;
+ SetAttribute( aCells[i], 'bgColor' , GetE('txtBackColor').value ) ;
+ SetAttribute( aCells[i], 'borderColor' , GetE('txtBorderColor').value ) ;
+// SetAttribute( aCells[i], 'className' , GetE('cmbFontStyle').value ) ;
+ }
+
+ return true ;
+}
+
+function SelectBackColor( color )
+{
+ if ( color && color.length > 0 )
+ GetE('txtBackColor').value = color ;
+}
+
+function SelectBorderColor( color )
+{
+ if ( color && color.length > 0 )
+ GetE('txtBorderColor').value = color ;
+}
+
+function SelectColor( wich )
+{
+ oEditor.FCKDialog.OpenDialog( 'FCKDialog_Color', oEditor.FCKLang.DlgColorTitle, 'dialog/fck_colorselector.html', 400, 330, wich == 'Back' ? SelectBackColor : SelectBorderColor, window ) ;
+}
+
+ </script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0" height="100%">
+ <tr>
+ <td>
+ <table cellSpacing="1" cellPadding="1" width="100%" border="0">
+ <tr>
+ <td>
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td nowrap><span fckLang="DlgCellWidth">Width</span>:</td>
+ <td> <input onkeypress="return IsDigit();" id="txtWidth" type="text" maxLength="4"
+ size="3" name="txtWidth"> <select id="selWidthType" name="selWidthType">
+ <option fckLang="DlgCellWidthPx" value="pixels" selected>pixels</option>
+ <option fckLang="DlgCellWidthPc" value="percent">percent</option>
+ </select></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgCellHeight">Height</span>:</td>
+ <td> <INPUT id="txtHeight" type="text" maxLength="4" size="3" name="txtHeight" onkeypress="return IsDigit();"> <span fckLang="DlgCellWidthPx">pixels</span></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgCellWordWrap">Word Wrap</span>:</td>
+ <td> <select id="selWordWrap" name="selAlignment">
+ <option fckLang="DlgCellWordWrapNotSet" value="" selected><Not set></option>
+ <option fckLang="DlgCellWordWrapYes" value="true">Yes</option>
+ <option fckLang="DlgCellWordWrapNo" value="false">No</option>
+ </select></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgCellHorAlign">Horizontal Alignment</span>:</td>
+ <td> <select id="selHAlign" name="selAlignment">
+ <option fckLang="DlgCellHorAlignNotSet" value="" selected><Not set></option>
+ <option fckLang="DlgCellHorAlignLeft" value="left">Left</option>
+ <option fckLang="DlgCellHorAlignCenter" value="center">Center</option>
+ <option fckLang="DlgCellHorAlignRight" value="right">Right</option>
+ </select></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgCellVerAlign">Vertival Alignement</span>:</td>
+ <td> <select id="selVAlign" name="selAlignment">
+ <option fckLang="DlgCellVerAlignNotSet" value="" selected><Not set></option>
+ <option fckLang="DlgCellVerAlignTop" value="top">Top</option>
+ <option fckLang="DlgCellVerAlignMiddle" value="middle">Middle</option>
+ <option fckLang="DlgCellVerAlignBottom" value="bottom">Bottom</option>
+ <option fckLang="DlgCellVerAlignBaseline" value="baseline">Baseline</option>
+ </select></td>
+ </tr>
+ </table>
+ </td>
+ <td> </td>
+ <td align="right">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td nowrap><span fckLang="DlgCellRowSpan">Rows Span</span>:</td>
+ <td> <input onkeypress="return IsDigit();" id="txtRowSpan" type="text" maxLength="3"
+ size="2" name="txtRows"></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgCellCollSpan">Columns Span</span>:</td>
+ <td> <input onkeypress="return IsDigit();" id="txtCollSpan" type="text" maxLength="2"
+ size="2" name="txtColumns"></td>
+ <td></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgCellBackColor">Background Color</span>:</td>
+ <td> <input id="txtBackColor" type="text" size="8" name="txtCellSpacing"></td>
+ <td> <input type="button" fckLang="DlgCellBtnSelect" value="Select..." onclick="SelectColor( 'Back' )"></td>
+ </tr>
+ <tr>
+ <td nowrap><span fckLang="DlgCellBorderColor">Border Color</span>:</td>
+ <td> <input id="txtBorderColor" type="text" size="8" name="txtCellPadding"></td>
+ <td> <input type="button" fckLang="DlgCellBtnSelect" value="Select..." onclick="SelectColor( 'Border' )"></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template1.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template1.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template3.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template/images/template3.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_template.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,210 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_template.html
+ * Template selection dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="robots" content="noindex, nofollow">
+ <style>
+ .TplList
+ {
+ border: #dcdcdc 2px solid;
+ background-color: #ffffff;
+ overflow: auto;
+ width: 90%;
+ }
+
+ .TplItem
+ {
+ margin: 5px;
+ padding: 7px;
+ border: #eeeeee 1px solid;
+ }
+
+ .TplItem TABLE
+ {
+ display: inline;
+ }
+
+ .TplTitle
+ {
+ font-weight: bold;
+ }
+ </style>
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script language="javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCK = oEditor.FCK ;
+var FCKLang = oEditor.FCKLang ;
+var FCKConfig = oEditor.FCKConfig ;
+
+window.onload = function()
+{
+ // Set the right box height (browser dependent).
+ GetE('eList').style.height = document.all ? '100%' : '295px' ;
+
+ // Translate the dialog box texts.
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ window.parent.SetAutoSize( true ) ;
+
+ LoadTemplatesXml() ;
+}
+
+function LoadTemplatesXml()
+{
+ if ( !FCK._Templates )
+ {
+ GetE('eLoading').style.display = '' ;
+
+ // Create the Templates array.
+ FCK._Templates = new Array() ;
+
+ // Load the XML file.
+ var oXml = new oEditor.FCKXml() ;
+ oXml.LoadUrl( FCKConfig.TemplatesXmlPath ) ;
+
+ // Get the Images Base Path.
+ var oAtt = oXml.SelectSingleNode( 'Templates/@imagesBasePath' ) ;
+ var sImagesBasePath = oAtt ? oAtt.value : '' ;
+
+ // Get the "Template" nodes defined in the XML file.
+ var aTplNodes = oXml.SelectNodes( 'Templates/Template' ) ;
+
+ for ( var i = 0 ; i < aTplNodes.length ; i++ )
+ {
+ var oNode = aTplNodes[i]
+
+ var oTemplate = new Object() ;
+
+ var oPart ;
+
+ // Get the Template Title.
+ if ( oPart = oNode.attributes.getNamedItem('title') )
+ oTemplate.Title = oPart.value ;
+ else
+ oTemplate.Title = 'Template ' + ( i + 1 ) ;
+
+ // Get the Template Description.
+ if ( oPart = oXml.SelectSingleNode( 'Description', oNode ) )
+ oTemplate.Description = oPart.text ? oPart.text : oPart.textContent ;
+
+ // Get the Template Image.
+ if ( oPart = oNode.attributes.getNamedItem('image') )
+ oTemplate.Image = sImagesBasePath + oPart.value ;
+
+ // Get the Template HTML.
+ if ( oPart = oXml.SelectSingleNode( 'Html', oNode ) )
+ oTemplate.Html = oPart.text ? oPart.text : oPart.textContent ;
+ else
+ {
+ alert( 'No HTML defined for template index ' + i + '. Please review the "' + FCKConfig.TemplatesXmlPath + '" file.' ) ;
+ continue ;
+ }
+
+ FCK._Templates[ FCK._Templates.length ] = oTemplate ;
+ }
+
+ GetE('eLoading').style.display = 'none' ;
+ }
+
+ if ( FCK._Templates.length == 0 )
+ GetE('eEmpty').style.display = '' ;
+ else
+ {
+ for ( var i = 0 ; i < FCK._Templates.length ; i++ )
+ {
+ var oTemplate = FCK._Templates[i] ;
+
+ var oItemDiv = GetE('eList').appendChild( document.createElement( 'DIV' ) ) ;
+ oItemDiv.TplIndex = i ;
+ oItemDiv.className = 'TplItem' ;
+
+ // Build the inner HTML of our new item DIV.
+ var sInner = '<table><tr>' ;
+
+ if ( oTemplate.Image )
+ sInner += '<td valign="top"><img src="' + oTemplate.Image + '"><\/td>' ;
+
+ sInner += '<td valign="top"><div class="TplTitle">' + oTemplate.Title + '<\/div>' ;
+
+ if ( oTemplate.Description )
+ sInner += '<div>' + oTemplate.Description + '<\/div>' ;
+
+ sInner += '<\/td><\/tr><\/table>' ;
+
+ oItemDiv.innerHTML = sInner ;
+
+ oItemDiv.onmouseover = ItemDiv_OnMouseOver ;
+ oItemDiv.onmouseout = ItemDiv_OnMouseOut ;
+ oItemDiv.onclick = ItemDiv_OnClick ;
+ }
+ }
+}
+
+function ItemDiv_OnMouseOver()
+{
+ this.className += ' PopupSelectionBox' ;
+}
+
+function ItemDiv_OnMouseOut()
+{
+ this.className = this.className.replace( /\s*PopupSelectionBox\s*/, '' ) ;
+}
+
+function ItemDiv_OnClick()
+{
+ SelectTemplate( this.TplIndex ) ;
+}
+
+function SelectTemplate( index )
+{
+ oEditor.FCKUndo.SaveUndoStep() ;
+ FCK.SetHTML( FCK._Templates[index].Html ) ;
+ window.parent.Cancel() ;
+}
+
+ </script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <table width="100%" height="100%">
+ <tr>
+ <td align="center">
+ <span fckLang="DlgTemplatesSelMsg">Please select the template to open in the editor<br>
+ (the actual contents will be lost):</span>
+ </td>
+ </tr>
+ <tr>
+ <td height="100%" align="center">
+ <div id="eList" align="left" class="TplList">
+ <div id="eLoading" align="center" style="DISPLAY: none">
+ <br>
+ <span fckLang="DlgTemplatesLoading">Loading templates list. Please wait...</span>
+ </div>
+ <div id="eEmpty" align="center" style="DISPLAY: none">
+ <br>
+ <span fckLang="DlgTemplatesNoTpl">(No templates defined)</span>
+ </div>
+ </div>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textarea.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textarea.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textarea.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,90 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_textarea.html
+ * Text Area dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Text Area Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.GetSelectedElement() ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl && oActiveEl.tagName == 'TEXTAREA' )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtCols').value = GetAttribute( oActiveEl, 'cols' ) ;
+ GetE('txtRows').value = GetAttribute( oActiveEl, 'rows' ) ;
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'TEXTAREA' ) ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ }
+
+ oActiveEl.name = GetE('txtName').value ;
+ SetAttribute( oActiveEl, 'cols', GetE('txtCols').value ) ;
+ SetAttribute( oActiveEl, 'rows', GetE('txtRows').value ) ;
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style='OVERFLOW: hidden' scroll='no'>
+ <table height="100%" width="100%">
+ <tr>
+ <td align="center">
+ <table border="0" cellpadding="0" cellspacing="0" width="80%">
+ <tr>
+ <td>
+ <span fckLang="DlgTextareaName">Name</span><br>
+ <input type="text" id="txtName" style="WIDTH: 100%">
+ <span fckLang="DlgTextareaCols">Collumns</span><br>
+ <input id="txtCols" type="text" size="5">
+ <br>
+ <span fckLang="DlgTextareaRows">Rows</span><br>
+ <input id="txtRows" type="text" size="5">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textfield.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textfield.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_textfield.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,131 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_textfield.html
+ * Text field dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Text Field Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script src="common/fck_dialog_common.js" type="text/javascript"></script>
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+// Gets the document DOM
+var oDOM = oEditor.FCK.EditorDocument ;
+
+var oActiveEl = oEditor.FCKSelection.GetSelectedElement() ;
+
+window.onload = function()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ if ( oActiveEl && oActiveEl.tagName == 'INPUT' && ( oActiveEl.type == 'text' || oActiveEl.type == 'password' ) )
+ {
+ GetE('txtName').value = oActiveEl.name ;
+ GetE('txtValue').value = oActiveEl.value ;
+ GetE('txtSize').value = GetAttribute( oActiveEl, 'size' ) ;
+ GetE('txtMax').value = GetAttribute( oActiveEl, 'maxLength' ) ;
+ GetE('txtType').value = oActiveEl.type ;
+
+ GetE('txtType').disabled = true ;
+ }
+ else
+ oActiveEl = null ;
+
+ window.parent.SetOkButton( true ) ;
+}
+
+function Ok()
+{
+ if ( isNaN( GetE('txtMax').value ) || GetE('txtMax').value < 0 )
+ {
+ alert( "Maximum characters must be a positive number." ) ;
+ GetE('txtMax').focus() ;
+ return false ;
+ }
+ else if( isNaN( GetE('txtSize').value ) || GetE('txtSize').value < 0 )
+ {
+ alert( "Width must be a positive number." ) ;
+ GetE('txtSize').focus() ;
+ return false ;
+ }
+
+ if ( !oActiveEl )
+ {
+ oActiveEl = oEditor.FCK.EditorDocument.createElement( 'INPUT' ) ;
+ oActiveEl.type = GetE('txtType').value ;
+ oActiveEl = oEditor.FCK.InsertElementAndGetIt( oActiveEl ) ;
+ }
+
+ oActiveEl.name = GetE('txtName').value ;
+ SetAttribute( oActiveEl, 'value' , GetE('txtValue').value ) ;
+ SetAttribute( oActiveEl, 'size' , GetE('txtSize').value ) ;
+ SetAttribute( oActiveEl, 'maxlength', GetE('txtMax').value ) ;
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <table height="100%" width="100%">
+ <tr>
+ <td align="center">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td>
+ <span fckLang="DlgTextName">Name</span><br>
+ <input id="txtName" type="text" size="20">
+ </td>
+ <td></td>
+ <td>
+ <span fckLang="DlgTextValue">Value</span><br>
+ <input id="txtValue" type="text" size="25">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgTextCharWidth">Character Width</span><br>
+ <input id="txtSize" type="text" size="5">
+ </td>
+ <td></td>
+ <td>
+ <span fckLang="DlgTextMaxChars">Maximum Characters</span><br>
+ <input id="txtMax" type="text" size="5">
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <span fckLang="DlgTextType">Type</span><br>
+ <select id="txtType">
+ <option value="text" selected fckLang="DlgTextTypeText">Text</option>
+ <option value="password" fckLang="DlgTextTypePass">Password</option>
+ </select>
+ </td>
+ <td> </td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/00.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/00.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/data.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/data.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/data.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,70 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: data.js
+ * Scripts for the fck_universalkey.html page.
+ * Definition des 104 caracteres en hexa unicode.
+ *
+ * File Authors:
+ * Michel Staelens (michel.staelens at wanadoo.fr)
+ * Abdul-Aziz Al-Oraij (top7up at hotmail.com)
+ */
+
+var Maj = new Array() ;
+var Min = new Array() ;
+
+Maj["Arabic"] ="0651|0021|0040|0023|0024|0025|005E|0026|002A|0029|0028|005F|002B|064E|064B|064F|064C|0625|0625|2018|00F7|00D7|061B|003C|003E|0650|064D|005D|005B|0623|0623|0640|060C|002F|003A|0022|007E|0652|007D|007B|0622|0622|2019|002C|002E|061F|007C|0020|0020|0020|0020|0020" ;
+Min["Arabic"] ="0630|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|0636|0635|062B|0642|0641|063A|0639|0647|062E|062D|062C|062F|0634|0633|064A|0628|0644|0627|062A|0646|0645|0643|0637|0626|0621|0624|0631|0644|0627|0649|0629|0648|0632|0638|005C|0020|0020|0020|0020" ;
+Maj["Belarusian (C)"] ="0401|0021|0022|2116|003B|0025|003A|003F|002A|0028|0029|005F|002B|0419|0426|0423|041A|0415|041D|0413|0428|040E|0417|0425|0027|0424|042B|0412|0410|041F|0420|041E|041B|0414|0416|042D|042F|0427|0421|041C|0406|0422|042C|0411|042E|002C|0020|0020|0020|0020|0020|0020" ;
+Min["Belarusian (C)"] ="0451|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|0439|0446|0443|043A|0435|043D|0433|0448|045E|0437|0445|0027|0444|044B|0432|0430|043F|0440|043E|043B|0434|0436|044D|044F|0447|0441|043C|0456|0442|044C|0431|044E|002E|0020|0020|0020|0020|0020|0020" ;
+Maj["Bulgarian (C)"] ="007E|0021|003F|002B|0022|0025|003D|003A|002F|005F|2116|0406|0056|044B|0423|0415|0418|0428|0429|041A|0421|0414|0417|0426|00A7|042C|042F|0410|041E|0416|0413|0422|041D|0412|041C|0427|042E|0419|042A|042D|0424|0425|041F|0420|041B|0411|0029|0020|0020|0020|0020|0020" ;
+Min["Bulgarian (C)"] ="0060|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|002E|002C|0443|0435|0438|0448|0449|043A|0441|0434|0437|0446|003B|044C|044F|0430|043E|0436|0433|0442|043D|0432|043C|0447|044E|0439|044A|044D|0444|0445|043F|0440|043B|0431|0028|0020|0020|0020|0020|0020" ;
+Maj["Croatian (L)"] ="00B8|0021|0022|0023|0024|0025|0026|002F|0028|0029|003D|003F|00A8|0051|0057|0045|0052|0054|005A|0055|0049|004F|0050|0160|0110|0041|0053|0044|0046|0047|0048|004A|004B|004C|010C|0106|0059|0058|0043|0056|0042|004E|004D|017D|003B|003A|003C|003E|005F|002D|002A|002B" ;
+Min["Croatian (L)"] ="00B8|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|0027|00A8|0071|0077|0065|0072|0074|007A|0075|0069|006F|0070|0161|0111|0061|0073|0064|0066|0067|0068|006A|006B|006C|010D|0107|0079|0078|0063|0076|0062|006E|006D|017E|002C|002E|003C|003E|005F|002D|002A|002B" ;
+Maj["Czech (L)"] ="00B0|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|0025|02C7|0051|0057|0045|0052|0054|005A|0055|0049|004F|0050|002F|0028|0041|0053|0044|0046|0047|0048|004A|004B|004C|0022|0027|0059|0058|0043|0056|0042|004E|004D|003F|003A|005F|005B|007B|0021|0020|0148|010F" ;
+Min["Czech (L)"] ="003B|002B|011B|0161|010D|0159|017E|00FD|00E1|00ED|00E9|003D|00B4|0071|0077|0065|0072|0074|007A|0075|0069|006F|0070|00FA|0029|0061|0073|0064|0066|0067|0068|006A|006B|006C|016F|00A7|0079|0078|0063|0076|0062|006E|006D|002C|002E|002D|005D|007D|00A8|0040|00F3|0165" ;
+Maj["Danish (L)"] ="00A7|0021|0022|0023|00A4|0025|0026|002F|0028|0029|003D|003F|0060|0051|0057|0045|0052|0054|0059|0055|0049|004F|0050|00C5|005E|0041|0053|0044|0046|0047|0048|004A|004B|004C|00C6|00D8|003E|005A|0058|0043|0056|0042|004E|004D|003B|003A|002A|005F|007B|007D|005C|007E" ;
+Min["Danish (L)"] ="00BD|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002B|00B4|0071|0077|0065|0072|0074|0079|0075|0069|006F|0070|00E5|00A8|0061|0073|0064|0066|0067|0068|006A|006B|006C|00E6|00F8|003C|007A|0078|0063|0076|0062|006E|006D|002C|002E|0027|002D|005B|005D|007C|0040" ;
+Maj["Farsi"] ="0020|0021|0040|0023|0024|0025|005E|0026|002A|0029|0028|005F|002B|0020|0020|0020|0020|0020|0020|0020|00F7|00D7|0020|007D|007B|0020|0020|005D|005B|0623|0622|0640|060C|061B|003A|0022|007E|0020|0020|0020|0020|0020|2019|003E|003C|061F|007C|0020|0020|0020|0020|0020"
+Min["Farsi"] ="067E|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|0636|0635|062B|0642|0641|063A|0639|0647|062E|062D|062C|0686|0634|0633|064A|0628|0644|0627|062A|0646|0645|0643|06AF|0638|0637|0632|0631|0630|062F|0621|0648|002E|002F|005C|0020|0020|0020|0020|0020"
+Maj["Finnish (L)"] ="00A7|0021|0022|0023|00A4|0025|0026|002F|0028|0029|003D|003F|0060|0051|0057|0045|0052|0054|0059|0055|0049|004F|0050|00C5|005E|0041|0053|0044|0046|0047|0048|004A|004B|004C|00D6|00C4|003E|005A|0058|0043|0056|0042|004E|004D|003B|003A|002A|005F|007B|007D|005C|007E" ;
+Min["Finnish (L)"] ="00BD|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002B|00B4|0071|0077|0065|0072|0074|0079|0075|0069|006F|0070|00E5|00A8|0061|0073|0064|0066|0067|0068|006A|006B|006C|00F6|00E4|003C|007A|0078|0063|0076|0062|006E|006D|002C|002E|0027|002D|005B|005D|007C|0040" ;
+Maj["French (L)"] ="0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|00B0|002B|0023|0041|005A|0045|0052|0054|0059|0055|0049|004F|0050|00A8|0025|0051|0053|0044|0046|0047|0048|004A|004B|004C|004D|00B5|0057|0058|0043|0056|0042|004E|003F|002E|002F|00A7|003C|005B|007B|00A3|007E|0020" ;
+Min["French (L)"] ="0026|00E9|0022|0027|0028|002D|00E8|005F|00E7|00E0|0029|003D|0040|0061|007A|0065|0072|0074|0079|0075|0069|006F|0070|005E|00F9|0071|0073|0064|0066|0067|0068|006A|006B|006C|006D|002A|0077|0078|0063|0076|0062|006E|002C|003B|003A|0021|003E|005D|007D|0024|007E|0020" ;
+Maj["Greek"] ="007E|0021|0040|0023|0024|0025|0390|0026|03B0|0028|0029|005F|002B|003A|03A3|0395|03A1|03A4|03A5|0398|0399|039F|03A0|0386|038F|0391|03A3|0394|03A6|0393|0397|039E|039A|039B|038C|0022|0396|03A7|03A8|03A9|0392|039D|039C|003C|003E|003F|0388|0389|038A|03AA|03AB|038E" ;
+Min["Greek"] ="0060|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|003B|03C2|03B5|03C1|03C4|03C5|03B8|03B9|03BF|03C0|03AC|03CE|03B1|03C3|03B4|03C6|03B3|03B7|03BE|03BA|03BB|03CC|0027|03B6|03C7|03C8|03C9|03B2|03BD|03BC|002C|002E|002F|03AD|03AE|03AF|03CA|03CB|03CD" ;
+Maj["Hebrew"] ="007E|0021|0040|0023|0024|0025|005E|0026|002A|0028|0029|005F|002B|0051|0057|0045|0052|0054|0059|0055|0049|004F|0050|007B|007D|0041|0053|0044|0046|0047|0048|004A|004B|004C|003A|0022|005A|0058|0043|0056|0042|004E|004D|003C|003E|003F|0020|0020|0020|0020|0020|0020" ;
+Min["Hebrew"] ="0060|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|002F|0027|05E7|05E8|05D0|05D8|05D5|05DF|05DD|05E4|005B|005D|05E9|05D3|05D2|05DB|05E2|05D9|05D7|05DC|05DA|05E3|002C|05D6|05E1|05D1|05D4|05E0|05DE|05E6|05EA|05E5|002E|0020|0020|0020|0020|0020|0020" ;
+Maj["Hungarian (L)"] ="00A7|0027|0022|002B|0021|0025|002F|003D|0028|0029|00ED|00DC|00D3|0051|0057|0045|0052|0054|005A|0055|0049|004F|0050|0150|00DA|0041|0053|0044|0046|0047|0048|004A|004B|004C|00C9|00C1|0170|00CD|0059|0058|0043|0056|0042|004E|004D|003F|002E|003A|002D|005F|007B|007D" ;
+Min["Hungarian (L)"] ="0030|0031|0032|0033|0034|0035|0036|0037|0038|0039|00F6|00FC|00F3|0071|0077|0065|0072|0074|007A|0075|0069|006F|0070|0151|00FA|0061|0073|0064|0066|0067|0068|006A|006B|006C|00E9|00E1|0171|00ED|0079|0078|0063|0076|0062|006E|006D|002C|002E|003A|002D|005F|007B|007D" ;
+Maj["Diacritical (L)"] ="0060|00B4|005E|00A8|007E|00B0|00B7|00B8|00AF|02D9|02DB|02C7|02D8|0051|0057|0045|0052|0054|005A|0055|0049|004F|0050|00C6|02DD|0041|0053|0044|0046|0047|0048|004A|004B|004C|0141|0152|0059|0058|0043|0056|0042|004E|004D|01A0|01AF|00D8|0126|0110|0132|00DE|00D0|00DF" ;
+Min["Diacritical (L)"] ="0060|00B4|005E|00A8|007E|00B0|00B7|00B8|00AF|02D9|02DB|02C7|02D8|0071|0077|0065|0072|0074|007A|0075|0069|006F|0070|00E6|02DD|0061|0073|0064|0066|0067|0068|006A|006B|006C|0142|0153|0079|0078|0063|0076|0062|006E|006D|01A1|01B0|00F8|0127|0111|0133|00FE|00F0|00DF" ;
+Maj["Macedonian (C)"] ="007E|0021|201E|201C|2019|0025|2018|0026|002A|0028|0029|005F|002B|0409|040A|0415|0420|0422|0405|0423|0418|041E|041F|0428|0403|0410|0421|0414|0424|0413|0425|0408|041A|041B|0427|040C|0401|0417|040F|0426|0412|0411|041D|041C|0416|003B|003A|003F|002A|005F|007B|007D" ;
+Min["Macedonian (C)"] ="0060|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|0459|045A|0435|0440|0442|0455|0443|0438|043E|043F|0448|0453|0430|0441|0434|0444|0433|0445|0458|043A|043B|0447|045C|0451|0437|045F|0446|0432|0431|043D|043C|0436|002C|002E|002F|0027|002D|005B|005D" ;
+Maj["Norwegian (L)"] ="00A7|0021|0022|0023|00A4|0025|0026|002F|0028|0029|003D|003F|0060|0051|0057|0045|0052|0054|0059|0055|0049|004F|0050|00C5|005E|0041|0053|0044|0046|0047|0048|004A|004B|00D8|00C6|00C4|003E|005A|0058|0043|0056|0042|004E|004D|003B|003A|002A|005F|007B|007D|005C|007E" ;
+Min["Norwegian (L)"] ="00BD|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002B|00B4|0071|0077|0065|0072|0074|0079|0075|0069|006F|0070|00E5|00A8|0061|0073|0064|0066|0067|0068|006A|006B|00F8|00E6|00E4|003C|007A|0078|0063|0076|0062|006E|006D|002C|002E|0027|002D|005B|005D|007C|0040" ;
+Maj["Polish (L)"] ="002A|0021|0022|0023|00A4|0025|0026|002F|0028|0029|003D|003F|017A|0051|0057|0045|0052|0054|005A|0055|0049|004F|0050|0144|0107|0041|0053|0044|0046|0047|0048|004A|004B|004C|0141|0119|0059|0058|0043|0056|0042|004E|004D|003B|003A|005F|003C|005B|007B|02D9|00B4|02DB" ;
+Min["Polish (L)"] ="0027|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002B|00F3|0071|0077|0065|0072|0074|007A|0075|0069|006F|0070|017C|015B|0061|0073|0064|0066|0067|0068|006A|006B|006C|0142|0105|0079|0078|0063|0076|0062|006E|006D|002C|002E|002D|003E|005D|007D|02D9|00B4|02DB" ;
+Maj["Russian (C)"] ="0401|0021|0040|0023|2116|0025|005E|0026|002A|0028|0029|005F|002B|0419|0426|0423|041A|0415|041D|0413|0428|0429|0417|0425|042A|0424|042B|0412|0410|041F|0420|041E|041B|0414|0416|042D|042F|0427|0421|041C|0418|0422|042C|0411|042E|003E|002E|003A|0022|005B|005D|003F" ;
+Min["Russian (C)"] ="0451|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|0439|0446|0443|043A|0435|043D|0433|0448|0449|0437|0445|044A|0444|044B|0432|0430|043F|0440|043E|043B|0434|0436|044D|044F|0447|0441|043C|0438|0442|044C|0431|044E|003C|002C|003B|0027|007B|007D|002F" ;
+Maj["Serbian (C)"] ="007E|0021|0022|0023|0024|0025|0026|002F|0028|0029|003D|003F|002A|0409|040A|0415|0420|0422|0417|0423|0418|041E|041F|0428|0402|0410|0421|0414|0424|0413|0425|0408|041A|041B|0427|040B|003E|0405|040F|0426|0412|0411|041D|041C|0416|003A|005F|002E|003A|0022|005B|005D" ;
+Min["Serbian (C)"] ="0060|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|0027|002B|0459|045A|0435|0440|0442|0437|0443|0438|043E|043F|0448|0452|0430|0441|0434|0444|0433|0445|0458|043A|043B|0447|045B|003C|0455|045F|0446|0432|0431|043D|043C|0436|002E|002D|002C|003B|0027|007B|007D" ;
+Maj["Serbian (L)"] ="007E|0021|0022|0023|0024|0025|0026|002F|0028|0029|003D|003F|002A|0051|0057|0045|0052|0054|005A|0055|0049|004F|0050|0160|0110|0041|0053|0044|0046|0047|0048|004A|004B|004C|010C|0106|003E|0059|0058|0043|0056|0042|004E|004D|017D|003A|005F|002E|003A|0022|005B|005D" ;
+Min["Serbian (L)"] ="201A|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|0027|002B|0071|0077|0065|0072|0074|007A|0075|0069|006F|0070|0161|0111|0061|0073|0064|0066|0067|0068|006A|006B|006C|010D|0107|003C|0079|0078|0063|0076|0062|006E|006D|017E|002E|002D|002C|003B|0027|007B|007D" ;
+Maj["Slovak (L)"] ="00B0|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|0025|02C7|0051|0057|0045|0052|0054|005A|0055|0049|004F|0050|002F|0028|0041|0053|0044|0046|0047|0048|004A|004B|004C|0022|0021|0059|0058|0043|0056|0042|004E|004D|003F|003A|005F|003C|005B|010F|0029|002A|0020" ;
+Min["Slovak (L)"] ="003B|002B|013E|0161|010D|0165|017E|00FD|00E1|00ED|00E9|003D|00B4|0071|0077|0065|0072|0074|007A|0075|0069|006F|0070|00FA|00E4|0061|0073|0064|0066|0067|0068|006A|006B|006C|00F4|00A7|0079|0078|0063|0076|0062|006E|006D|002C|002E|002D|003E|005D|00F3|0148|0026|0020" ;
+Maj["Spanish (L)"] ="00AA|0021|0022|00B7|0024|0025|0026|002F|0028|0029|003D|003F|00BF|0051|0057|0045|0052|0054|0059|0055|0049|004F|0050|005E|00A8|0041|0053|0044|0046|0047|0048|004A|004B|004C|00D1|00C7|005A|0058|0043|0056|0042|004E|004D|003B|003A|005F|003E|007C|0040|0023|007E|002A" ;
+Min["Spanish (L)"] ="00BA|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|0027|00A1|0071|0077|0065|0072|0074|0079|0075|0069|006F|0070|0060|00B4|0061|0073|0064|0066|0067|0068|006A|006B|006C|00F1|00E7|007A|0078|0063|0076|0062|006E|006D|002C|002E|002D|003C|005C|0040|0023|007E|002B" ;
+Maj["Ukrainian (C)"] ="0401|0021|0040|0023|2116|0025|005E|0026|002A|0028|0029|005F|002B|0419|0426|0423|041A|0415|041D|0413|0428|0429|0417|0425|0407|0424|0406|0412|0410|041F|0420|041E|041B|0414|0416|0404|0490|042F|0427|0421|041C|0418|0422|042C|0411|042E|002E|003A|0022|003C|003E|003F" ;
+Min["Ukrainian (C)"] ="0451|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|0439|0446|0443|043A|0435|043D|0433|0448|0449|0437|0445|0457|0444|0456|0432|0430|043F|0440|043E|043B|0434|0436|0454|0491|044F|0447|0441|043C|0438|0442|044C|0431|044E|002C|003B|0027|007B|007D|002F" ;
+Maj["Vietnamese (L)"] ="007E|0021|0040|0023|0024|0025|005E|0026|002A|0028|0029|005F|002B|0051|0057|0045|0052|0054|0059|0055|0049|004F|0050|01AF|01A0|0041|0053|0044|0046|0047|0048|004A|004B|004C|0102|00C2|005A|0058|0043|0056|0042|004E|004D|00CA|00D4|0110|003C|003E|003F|007D|003A|0022" ;
+Min["Vietnamese (L)"] ="20AB|0031|0032|0033|0034|0035|0036|0037|0038|0039|0030|002D|003D|0071|0077|0065|0072|0074|0079|0075|0069|006F|0070|01B0|01A1|0061|0073|0064|0066|0067|0068|006A|006B|006C|0103|00E2|007A|0078|0063|0076|0062|006E|006D|00EA|00F4|0111|002C|002E|002F|007B|003B|0027" ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/diacritic.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/diacritic.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/diacritic.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,65 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: diacritic.js
+ * Scripts for the fck_universalkey.html page.
+ *
+ * File Authors:
+ * Michel Staelens (michel.staelens at wanadoo.fr)
+ * Abdul-Aziz Al-Oraij (top7up at hotmail.com)
+ */
+
+var dia = new Array()
+
+dia["0060"]=new Array();dia["00B4"]=new Array();dia["005E"]=new Array();dia["00A8"]=new Array();dia["007E"]=new Array();dia["00B0"]=new Array();dia["00B7"]=new Array();dia["00B8"]=new Array();dia["00AF"]=new Array();dia["02D9"]=new Array();dia["02DB"]=new Array();dia["02C7"]=new Array();dia["02D8"]=new Array();dia["02DD"]=new Array();dia["031B"]=new Array();
+dia["0060"]["0061"]="00E0";dia["00B4"]["0061"]="00E1";dia["005E"]["0061"]="00E2";dia["00A8"]["0061"]="00E4";dia["007E"]["0061"]="00E3";dia["00B0"]["0061"]="00E5";dia["00AF"]["0061"]="0101";dia["02DB"]["0061"]="0105";dia["02D8"]["0061"]="0103";
+dia["00B4"]["0063"]="0107";dia["005E"]["0063"]="0109";dia["00B8"]["0063"]="00E7";dia["02D9"]["0063"]="010B";dia["02C7"]["0063"]="010D";
+dia["02C7"]["0064"]="010F";
+dia["0060"]["0065"]="00E8";dia["00B4"]["0065"]="00E9";dia["005E"]["0065"]="00EA";dia["00A8"]["0065"]="00EB";dia["00AF"]["0065"]="0113";dia["02D9"]["0065"]="0117";dia["02DB"]["0065"]="0119";dia["02C7"]["0065"]="011B";dia["02D8"]["0065"]="0115";
+dia["005E"]["0067"]="011D";dia["00B8"]["0067"]="0123";dia["02D9"]["0067"]="0121";dia["02D8"]["0067"]="011F";
+dia["005E"]["0068"]="0125";
+dia["0060"]["0069"]="00EC";dia["00B4"]["0069"]="00ED";dia["005E"]["0069"]="00EE";dia["00A8"]["0069"]="00EF";dia["007E"]["0069"]="0129";dia["00AF"]["0069"]="012B";dia["02DB"]["0069"]="012F";dia["02D8"]["0069"]="012D";
+dia["005E"]["006A"]="0135";
+dia["00B8"]["006B"]="0137";
+dia["00B4"]["006C"]="013A";dia["00B7"]["006C"]="0140";dia["00B8"]["006C"]="013C";dia["02C7"]["006C"]="013E";
+dia["00B4"]["006E"]="0144";dia["007E"]["006E"]="00F1";dia["00B8"]["006E"]="0146";dia["02D8"]["006E"]="0148";
+dia["0060"]["006F"]="00F2";dia["00B4"]["006F"]="00F3";dia["005E"]["006F"]="00F4";dia["00A8"]["006F"]="00F6";dia["007E"]["006F"]="00F5";dia["00AF"]["006F"]="014D";dia["02D8"]["006F"]="014F";dia["02DD"]["006F"]="0151";dia["031B"]["006F"]="01A1";
+dia["00B4"]["0072"]="0155";dia["00B8"]["0072"]="0157";dia["02C7"]["0072"]="0159";
+dia["00B4"]["0073"]="015B";dia["005E"]["0073"]="015D";dia["00B8"]["0073"]="015F";dia["02C7"]["0073"]="0161";
+dia["00B8"]["0074"]="0163";dia["02C7"]["0074"]="0165";
+dia["0060"]["0075"]="00F9";dia["00B4"]["0075"]="00FA";dia["005E"]["0075"]="00FB";dia["00A8"]["0075"]="00FC";dia["007E"]["0075"]="0169";dia["00B0"]["0075"]="016F";dia["00AF"]["0075"]="016B";dia["02DB"]["0075"]="0173";dia["02D8"]["0075"]="016D";dia["02DD"]["0075"]="0171";dia["031B"]["0075"]="01B0";
+dia["005E"]["0077"]="0175";
+dia["00B4"]["0079"]="00FD";dia["005E"]["0079"]="0177";dia["00A8"]["0079"]="00FF";
+dia["00B4"]["007A"]="017A";dia["02D9"]["007A"]="017C";dia["02C7"]["007A"]="017E";
+dia["00B4"]["00E6"]="01FD";
+dia["00B4"]["00F8"]="01FF";
+dia["0060"]["0041"]="00C0";dia["00B4"]["0041"]="00C1";dia["005E"]["0041"]="00C2";dia["00A8"]["0041"]="00C4";dia["007E"]["0041"]="00C3";dia["00B0"]["0041"]="00C5";dia["00AF"]["0041"]="0100";dia["02DB"]["0041"]="0104";dia["02D8"]["0041"]="0102";
+dia["00B4"]["0043"]="0106";dia["005E"]["0043"]="0108";dia["00B8"]["0043"]="00C7";dia["02D9"]["0043"]="010A";dia["02C7"]["0043"]="010C";
+dia["02C7"]["0044"]="010E";
+dia["0060"]["0045"]="00C8";dia["00B4"]["0045"]="00C9";dia["005E"]["0045"]="00CA";dia["00A8"]["0045"]="00CB";dia["00AF"]["0045"]="0112";dia["02D9"]["0045"]="0116";dia["02DB"]["0045"]="0118";dia["02C7"]["0045"]="011A";dia["02D8"]["0045"]="0114";
+dia["005E"]["0047"]="011C";dia["00B8"]["0047"]="0122";dia["02D9"]["0047"]="0120";dia["02D8"]["0047"]="011E";
+dia["005E"]["0048"]="0124";
+dia["0060"]["0049"]="00CC";dia["00B4"]["0049"]="00CD";dia["005E"]["0049"]="00CE";dia["00A8"]["0049"]="00CF";dia["007E"]["0049"]="0128";dia["00AF"]["0049"]="012A";dia["02D9"]["0049"]="0130";dia["02DB"]["0049"]="012E";dia["02D8"]["0049"]="012C";
+dia["005E"]["004A"]="0134";
+dia["00B8"]["004B"]="0136";
+dia["00B4"]["004C"]="0139";dia["00B7"]["004C"]="013F";dia["00B8"]["004C"]="013B";dia["02C7"]["004C"]="013D";
+dia["00B4"]["004E"]="0143";dia["007E"]["004E"]="00D1";dia["00B8"]["004E"]="0145";dia["02D8"]["004E"]="0147";
+dia["0060"]["004F"]="00D2";dia["00B4"]["004F"]="00D3";dia["005E"]["004F"]="00D4";dia["00A8"]["004F"]="00D6";dia["007E"]["004F"]="00D5";dia["00AF"]["004F"]="014C";dia["02D8"]["004F"]="014E";dia["02DD"]["004F"]="0150";dia["031B"]["004F"]="01A0";
+dia["00B4"]["0052"]="0154";dia["00B8"]["0052"]="0156";dia["02C7"]["0052"]="0158";
+dia["00B4"]["0053"]="015A";dia["005E"]["0053"]="015C";dia["00B8"]["0053"]="015E";dia["02C7"]["0053"]="0160";
+dia["00B8"]["0054"]="0162";dia["02C7"]["0054"]="0164";
+dia["0060"]["0055"]="00D9";dia["00B4"]["0055"]="00DA";dia["005E"]["0055"]="00DB";dia["00A8"]["0055"]="00DC";dia["007E"]["0055"]="0168";dia["00B0"]["0055"]="016E";dia["00AF"]["0055"]="016A";dia["02DB"]["0055"]="0172";dia["02D8"]["0055"]="016C";dia["02DD"]["0055"]="0170";dia["031B"]["0055"]="01AF";
+dia["005E"]["0057"]="0174";
+dia["00B4"]["0059"]="00DD";dia["005E"]["0059"]="0176";dia["00A8"]["0059"]="0178";
+dia["00B4"]["005A"]="0179";dia["02D9"]["005A"]="017B";dia["02C7"]["005A"]="017D";
+dia["00B4"]["00C6"]="01FC";
+dia["00B4"]["00D8"]="01FE";
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/dialogue.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/dialogue.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/dialogue.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,31 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: dialogue.js
+ * Scripts for the fck_universalkey.html page.
+ *
+ * File Authors:
+ * Michel Staelens (michel.staelens at wanadoo.fr)
+ * Bernadette Cierzniak
+ * Abdul-Aziz Al-Oraij (top7up at hotmail.com)
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function afficher(txt)
+{
+ document.getElementById( 'uni_area' ).value = txt ;
+}
+
+function rechercher()
+{
+ return document.getElementById( 'uni_area' ).value ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/fck_universalkey.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/fck_universalkey.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/fck_universalkey.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,62 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_universalkey.css
+ * CSS styles for the Universal Keyboard.
+ *
+ * File Authors:
+ * Michel Staelens (michel.staelens at wanadoo.fr)
+ * Bernadette Cierzniak
+ * Abdul-Aziz Al-Oraij (top7up at hotmail.com)
+ */
+
+BODY, TEXTAREA, INPUT, TD, SELECT
+{
+ font-family: Tahoma,verdana,arial,sans-serif;
+}
+DIV
+{
+ position: absolute;
+}
+.simple
+{
+ font-size: 11pt;
+}
+.double
+{
+ font-size: 9pt;
+}
+.simpledia
+{
+ color: red;
+ font-size: 11pt;
+}
+.doubledia
+{
+ color: red;
+ font-size: 9pt;
+}
+.action
+{
+ color: white;
+ font-size: 7pt;
+}
+.clavier
+{
+ color: blue;
+ font-size: 7pt;
+}
+.sign
+{
+ color: gray;
+ font-size: 7pt;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/keyboard_layout.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/keyboard_layout.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/multihexa.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/multihexa.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey/multihexa.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,309 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: multihexa.js
+ * Scripts for the fck_universalkey.html page.
+ * Definition des 104 caracteres en hexa unicode.
+ *
+ * File Authors:
+ * Michel Staelens (michel.staelens at wanadoo.fr)
+ * Bernadette Cierzniak
+ * Abdul-Aziz Al-Oraij (top7up at hotmail.com)
+ */
+
+var caps=0, lock=0, hexchars="0123456789ABCDEF", accent="0000", keydeb=0
+var key=new Array();j=0;for (i in Maj){key[j]=i;j++}
+var ns6=((!document.all)&&(document.getElementById))
+var ie=document.all
+
+var langue=getCk();
+if (langue==""){
+ langue=key[keydeb]
+}
+CarMaj=Maj[langue].split("|");CarMin=Min[langue].split("|")
+
+/*unikey*/
+var posUniKeyLeft=0, posUniKeyTop=0
+if (ns6){posUniKeyLeft=0;posUniKeyTop=60}
+else if (ie){posUniKeyLeft=0;posUniKeyTop=60}
+tracer("fond",posUniKeyLeft,posUniKeyTop,'<img src="fck_universalkey/keyboard_layout.gif" width=404 height=152 border="0"><br />',"sign")
+/*touches*/
+var posX=new Array(0,28,56,84,112,140,168,196,224,252,280,308,336,42,70,98,126,154,182,210,238,266,294,322,350,50,78,106,134,162,190,218,246,274,302,330,64,92,120,148,176,204,232,260,288,316,28,56,84,294,322,350)
+var posY=new Array(14,14,14,14,14,14,14,14,14,14,14,14,14,42,42,42,42,42,42,42,42,42,42,42,42,70,70,70,70,70,70,70,70,70,70,70,98,98,98,98,98,98,98,98,98,98,126,126,126,126,126,126)
+var nbTouches=52
+for (i=0;i<nbTouches;i++){
+ CarMaj[i]=((CarMaj[i]!="0000")?(fromhexby4tocar(CarMaj[i])):"")
+ CarMin[i]=((CarMin[i]!="0000")?(fromhexby4tocar(CarMin[i])):"")
+ if (CarMaj[i]==CarMin[i].toUpperCase()){
+ cecar=((lock==0)&&(caps==0)?CarMin[i]:CarMaj[i])
+ tracer("car"+i,posUniKeyLeft+6+posX[i],posUniKeyTop+3+posY[i],cecar,((dia[hexa(cecar)]!=null)?"simpledia":"simple"))
+ tracer("majus"+i,posUniKeyLeft+15+posX[i],posUniKeyTop+1+posY[i]," ","double")
+ tracer("minus"+i,posUniKeyLeft+3+posX[i],posUniKeyTop+9+posY[i]," ","double")
+ }
+ else{
+ tracer("car"+i,posUniKeyLeft+6+posX[i],posUniKeyTop+3+posY[i]," ","simple")
+ cecar=CarMin[i]
+ tracer("minus"+i,posUniKeyLeft+3+posX[i],posUniKeyTop+9+posY[i],cecar,((dia[hexa(cecar)]!=null)?"doubledia":"double"))
+ cecar=CarMaj[i]
+ tracer("majus"+i,posUniKeyLeft+15+posX[i],posUniKeyTop+1+posY[i],cecar,((dia[hexa(cecar)]!=null)?"doubledia":"double"))
+ }
+}
+/*touches de fonctions*/
+var actC1=new Array(0,371,364,0,378,0,358,0,344,0,112,378)
+var actC2=new Array(0,0,14,42,42,70,70,98,98,126,126,126)
+var actC3=new Array(32,403,403,39,403,47,403,61,403,25,291,403)
+var actC4=new Array(11,11,39,67,67,95,95,123,123,151,151,151)
+var act =new Array(" « KB"," KB » ","Delete","Clear","Back","Caps<br> Lock","Enter","Shift","Shift","<|<","Space",">|>")
+var effet=new Array("keyscroll(-3)","keyscroll(3)","faire(\"del\")","RAZ()","faire(\"bck\")","bloq()","faire(\"\\n\")","haut()","haut()","faire(\"ar\")","faire(\" \")","faire(\"av\")")
+var nbActions=12
+for (i=0;i<nbActions;i++){
+ tracer("act"+i,posUniKeyLeft+1+actC1[i],posUniKeyTop-1+actC2[i],act[i],"action")
+}
+/*navigation*/
+var keyC1=new Array(35,119,203,287)
+var keyC2=new Array(0,0,0,0)
+var keyC3=new Array(116,200,284,368)
+var keyC4=new Array(11,11,11,11)
+for (i=0;i<4;i++){
+ tracer("key"+i,posUniKeyLeft+5+keyC1[i],posUniKeyTop-1+keyC2[i],key[i],"unikey")
+}
+/*zones reactives*/
+tracer("masque",posUniKeyLeft,posUniKeyTop,'<img src="fck_universalkey/00.gif" width=404 height=152 border="0" usemap="#unikey">')
+document.write('<map name="unikey">')
+for (i=0;i<nbTouches;i++){
+ document.write('<area coords="'+posX[i]+','+posY[i]+','+(posX[i]+25)+','+(posY[i]+25)+'" href=# onClick=\'javascript:ecrire('+i+')\'>')
+}
+for (i=0;i<nbActions;i++){
+ document.write('<area coords="'+actC1[i]+','+actC2[i]+','+actC3[i]+','+actC4[i]+'" href=# onClick=\'javascript:'+effet[i]+'\'>')
+}
+for (i=0;i<4;i++){
+ document.write('<area coords="'+keyC1[i]+','+keyC2[i]+','+keyC3[i]+','+keyC4[i]+'" onclick=\'javascript:charger('+i+')\'>')
+}
+document.write('</map>')
+
+/*fonctions*/
+function ecrire(i){
+ txt=rechercher()+"|";subtxt=txt.split("|")
+ ceci=(lock==1)?CarMaj[i]:((caps==1)?CarMaj[i]:CarMin[i])
+ if (test(ceci)){subtxt[0]+=cardia(ceci);distinguer(false)}
+ else if(dia[accent]!=null&&dia[hexa(ceci)]!=null){distinguer(false);accent=hexa(ceci);distinguer(true)}
+ else if(dia[accent]!=null){subtxt[0]+=fromhexby4tocar(accent)+ceci;distinguer(false)}
+ else if(dia[hexa(ceci)]!=null){accent=hexa(ceci);distinguer(true)}
+ else {subtxt[0]+=ceci}
+ txt=subtxt[0]+"|"+subtxt[1]
+ afficher(txt)
+ if (caps==1){caps=0;MinusMajus()}
+}
+function faire(ceci){
+ txt=rechercher()+"|";subtxt=txt.split("|")
+ l0=subtxt[0].length
+ l1=subtxt[1].length
+ c1=subtxt[0].substring(0,(l0-2))
+ c2=subtxt[0].substring(0,(l0-1))
+ c3=subtxt[1].substring(0,1)
+ c4=subtxt[1].substring(0,2)
+ c5=subtxt[0].substring((l0-2),l0)
+ c6=subtxt[0].substring((l0-1),l0)
+ c7=subtxt[1].substring(1,l1)
+ c8=subtxt[1].substring(2,l1)
+ if(dia[accent]!=null){if(ceci==" "){ceci=fromhexby4tocar(accent)}distinguer(false)}
+ switch (ceci){
+ case("av") :if(escape(c4)!="%0D%0A"){txt=subtxt[0]+c3+"|"+c7}else{txt=subtxt[0]+c4+"|"+c8}break
+ case("ar") :if(escape(c5)!="%0D%0A"){txt=c2+"|"+c6+subtxt[1]}else{txt=c1+"|"+c5+subtxt[1]}break
+ case("bck"):if(escape(c5)!="%0D%0A"){txt=c2+"|"+subtxt[1]}else{txt=c1+"|"+subtxt[1]}break
+ case("del"):if(escape(c4)!="%0D%0A"){txt=subtxt[0]+"|"+c7}else{txt=subtxt[0]+"|"+c8}break
+ default:txt=subtxt[0]+ceci+"|"+subtxt[1];break
+ }
+ afficher(txt)
+}
+function RAZ(){txt="";if(dia[accent]!=null){distinguer(false)}afficher(txt)}
+function haut(){caps=1;MinusMajus()}
+function bloq(){lock=(lock==1)?0:1;MinusMajus()}
+
+/*fonctions de traitement du unikey*/
+function tracer(nom,gauche,haut,ceci,classe){ceci="<span class="+classe+">"+ceci+"</span>";document.write('<div id="'+nom+'" >'+ceci+'</div>');if (ns6){document.getElementById(nom).style.left=gauche+"px";document.getElementById(nom).style.top=haut+"px";}else if (ie){document.all(nom).style.left=gauche;document.all(nom).style.top=haut}}
+function retracer(nom,ceci,classe){ceci="<span class="+classe+">"+ceci+"</span>";if (ns6){document.getElementById(nom).innerHTML=ceci}else if (ie){doc=document.all(nom);doc.innerHTML=ceci}}
+function keyscroll(n){
+ keydeb+=n
+ if (keydeb<0){
+ keydeb=0
+ }
+ if (keydeb>key.length-4){
+ keydeb=key.length-4
+ }
+ for (i=keydeb;i<keydeb+4;i++){
+ retracer("key"+(i-keydeb),key[i],"unikey")
+ }
+ if (keydeb==0){
+ retracer("act0"," ","action")
+ }else {
+ retracer("act0",act[0],"action")
+ }
+ if (keydeb==key.length-4){
+ retracer("act1"," ","action")
+ }else {
+ retracer("act1",act[1],"action")
+ }
+}
+function charger(i){
+ langue=key[i+keydeb];setCk(langue);accent="0000"
+ CarMaj=Maj[langue].split("|");CarMin=Min[langue].split("|")
+ for (i=0;i<nbTouches;i++){
+ CarMaj[i]=((CarMaj[i]!="0000")?(fromhexby4tocar(CarMaj[i])):"")
+ CarMin[i]=((CarMin[i]!="0000")?(fromhexby4tocar(CarMin[i])):"")
+ if (CarMaj[i]==CarMin[i].toUpperCase()){
+ cecar=((lock==0)&&(caps==0)?CarMin[i]:CarMaj[i])
+ retracer("car"+i,cecar,((dia[hexa(cecar)]!=null)?"simpledia":"simple"))
+ retracer("minus"+i," ")
+ retracer("majus"+i," ")
+ }
+ else{
+ retracer("car"+i," ")
+ cecar=CarMin[i]
+ retracer("minus"+i,cecar,((dia[hexa(cecar)]!=null)?"doubledia":"double"))
+ cecar=CarMaj[i]
+ retracer("majus"+i,cecar,((dia[hexa(cecar)]!=null)?"doubledia":"double"))
+ }
+ }
+}
+function distinguer(oui){
+ for (i=0;i<nbTouches;i++){
+ if (CarMaj[i]==CarMin[i].toUpperCase()){
+ cecar=((lock==0)&&(caps==0)?CarMin[i]:CarMaj[i])
+ if(test(cecar)){retracer("car"+i,oui?(cardia(cecar)):cecar,oui?"simpledia":"simple")}
+ }
+ else{
+ cecar=CarMin[i]
+ if(test(cecar)){retracer("minus"+i,oui?(cardia(cecar)):cecar,oui?"doubledia":"double")}
+ cecar=CarMaj[i]
+ if(test(cecar)){retracer("majus"+i,oui?(cardia(cecar)):cecar,oui?"doubledia":"double")}
+ }
+ }
+ if (!oui){accent="0000"}
+}
+function MinusMajus(){
+ for (i=0;i<nbTouches;i++){
+ if (CarMaj[i]==CarMin[i].toUpperCase()){
+ cecar=((lock==0)&&(caps==0)?CarMin[i]:CarMaj[i])
+ retracer("car"+i,(test(cecar)?cardia(cecar):cecar),((dia[hexa(cecar)]!=null||test(cecar))?"simpledia":"simple"))
+ }
+ }
+}
+function test(cecar){return(dia[accent]!=null&&dia[accent][hexa(cecar)]!=null)}
+function cardia(cecar){return(fromhexby4tocar(dia[accent][hexa(cecar)]))}
+function fromhex(inval){out=0;for (a=inval.length-1;a>=0;a--){out+=Math.pow(16,inval.length-a-1)*hexchars.indexOf(inval.charAt(a))}return out}
+function fromhexby4tocar(ceci){out4=new String();for (l=0;l<ceci.length;l+=4){out4+=String.fromCharCode(fromhex(ceci.substring(l,l+4)))}return out4}
+function tohex(inval){return hexchars.charAt(inval/16)+hexchars.charAt(inval%16)}
+function tohex2(inval){return tohex(inval/256)+tohex(inval%256)}
+function hexa(ceci){out="";for (k=0;k<ceci.length;k++){out+=(tohex2(ceci.charCodeAt(k)))}return out}
+function getCk(){
+ fromN=document.cookie.indexOf("langue=")+0;
+ if((fromN)!=-1){
+ fromN+=7;
+ toN=document.cookie.indexOf(";",fromN)+0;
+ if(toN==-1){
+ toN=document.cookie.length
+ }
+ return unescape(document.cookie.substring(fromN,toN))
+ }
+ return ""
+}
+function setCk(inval){
+ if(inval!=null){
+ exp=new Date();
+ time=365*60*60*24*1000;
+ exp.setTime(exp.getTime()+time);
+ document.cookie=escape("langue")+"="+escape(inval)+"; "+"expires="+exp.toGMTString()
+ }
+}
+
+// Arabic Keystroke Translator
+function arkey(e) {
+ if ((document.layers)|(navigator.userAgent.indexOf("MSIE 4")>-1)|(langue!="Arabic")) return true;
+
+ if (!e) var e = window.event;
+ if (e.keyCode) keyCode = e.keyCode;
+ else if (e.which) keyCode = e.which;
+ var character = String.fromCharCode(keyCode);
+
+ entry = true;
+ cont=e.srcElement || e.currentTarget || e.target;
+ if (keyCode>64 && keyCode<91) {
+ entry=false;
+ source='Ø´ Ùاؤ Ù Ø« ب ٠ا ٠ت Ù Ù
Ø© Ù Ø® Ø Ø¶ ٠س ٠ع ر ص Ø¡ غ ئ ';
+ shsource='Ù ÙØ¢} ] Ù [ Ùأأ ÷ Ù Ø / Ø¢ Ã Ø Ù Ù Ù ÙØ¥ { ٠٠إ ~';
+
+ if (e.shiftKey) cont.value += shsource.substr((keyCode-64)*2-2,2);
+ else
+ cont.value += source.substr((keyCode-64)*2-2,2);
+ if (cont.value.substr(cont.value.length-1,1)==' ') cont.value=cont.value.substr(0,cont.value.length-1);
+ }
+ if (e.shiftKey) {
+ if (keyCode==186) {cont.value += ':';entry=false;}
+ if (keyCode==188) {cont.value += ',';entry=false;}
+ if (keyCode==190) {cont.value += '.';entry=false;}
+ if (keyCode==191) {cont.value += 'Ø';entry=false;}
+ if (keyCode==192) {cont.value += 'Ù';entry=false;}
+ if (keyCode==219) {cont.value += '<';entry=false;}
+ if (keyCode==221) {cont.value += '>';entry=false;}
+ } else {
+ if (keyCode==186||keyCode==59) {cont.value += 'Ù';entry=false;}
+ if (keyCode==188) {cont.value += 'Ù';entry=false;}
+ if (keyCode==190) {cont.value += 'ز';entry=false;}
+ if (keyCode==191) {cont.value += 'ظ';entry=false;}
+ if (keyCode==192) {cont.value += 'Ø°';entry=false;}
+ if (keyCode==219) {cont.value += 'ج';entry=false;}
+ if (keyCode==221) {cont.value += 'د';entry=false;}
+ if (keyCode==222) {cont.value += 'Ø·';entry=false;}
+ }
+ return entry;
+}
+function hold_it(e){
+ if ((document.layers)|(navigator.userAgent.indexOf("MSIE 4")>-1)|(langue!="Arabic")) return true;
+
+ var keyCode;
+ if (!e) var e = window.event;
+ if (e.keyCode) keyCode = e.keyCode;
+ else if (e.which) keyCode = e.which;
+ var character = String.fromCharCode(keyCode);
+ switch(keyCode){
+ case 186:
+ case 188:
+ case 190:
+ case 191:
+ case 192:
+ case 219:
+ case 221:
+ case 222:
+ case 116:
+ case 59:
+ case 47:
+ case 46:
+ case 44:
+ case 39:
+ return false;
+ case 92:
+ return true;
+ }
+ if (keyCode<63) return true;
+ return false;
+ }
+
+var obj = document.getElementById( 'uni_area' );
+if ( obj && langue=="Arabic"){
+ with (navigator) {
+ if (appName=="Netscape")
+ obj.onkeypress = hold_it;
+ }
+ obj.onkeydown = arkey;
+}
+// Arabic Keystroke Translator End
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/dialog/fck_universalkey.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_universalkey.html
+ * Unicode Keyboard dialog window.
+ *
+ * File Authors:
+ * Abdul-Aziz Al-Oraij (top7up at hotmail.com)
+ * Michel Staelens
+ * Bernadette Cierzniak
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Universal Keyboard</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <link rel="stylesheet" type="text/css" href="fck_universalkey/fck_universalkey.css" />
+ <script type="text/javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+
+window.onload = function()
+{
+ document.body.style.padding = '0px' ;
+
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage(document) ;
+
+ window.parent.SetOkButton( true ) ;
+ window.parent.SetAutoSize( true ) ;
+}
+
+function Ok()
+{
+ var oArea = document.getElementById( 'uni_area' ) ;
+
+ if ( oArea.value.length > 0 )
+ oEditor.FCK.InsertHtml( oArea.value ) ;
+
+ return true ;
+}
+
+ </script>
+ </head>
+ <body style="OVERFLOW: hidden" scroll="no">
+ <textarea id="uni_area" cols="40" rows="4" style="width:100%;height:60px;"></textarea>
+ <script type="text/javascript" src="fck_universalkey/data.js"></script>
+ <script type="text/javascript" src="fck_universalkey/diacritic.js"></script>
+ <script type="text/javascript" src="fck_universalkey/dialogue.js"></script>
+ <script type="text/javascript" src="fck_universalkey/multihexa.js"></script>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/fckblank.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/fckblank.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/fckblank.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,4 @@
+<html>
+<head><title></title></head>
+<body></body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/fckdebug.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/fckdebug.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/fckdebug.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,108 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckdebug.html
+ * This is the Debug window.
+ * It automatically popups if the Debug = true in the configuration file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
+ <title>FCKeditor Debug Window</title>
+ <script type="text/javascript">
+
+var oWindow ;
+var oDiv ;
+
+if ( !window.FCKMessages )
+ window.FCKMessages = new Array() ;
+
+function Initialize()
+{
+ oWindow = window.frames[ 'eOutput' ]
+ oWindow.document.open() ;
+ oWindow.document.write( '<div id="divMsg"><\/div>' ) ;
+ oWindow.document.close() ;
+ oDiv = oWindow.document.getElementById('divMsg') ;
+}
+
+function Output( message, color )
+{
+ if ( color )
+ message = '<font color="' + color + '">' + message + '<\/font>' ;
+
+ window.FCKMessages[ window.FCKMessages.length ] = message ;
+ StartTimer() ;
+}
+
+function StartTimer()
+{
+ window.setTimeout( 'CheckMessages()', 100 ) ;
+}
+
+function CheckMessages()
+{
+ if ( window.FCKMessages.length > 0 )
+ {
+ // Get the first item in the queue
+ var sMessage = window.FCKMessages[0] ;
+
+ // Removes the first item from the queue
+ var oTempArray = new Array() ;
+ for ( i = 1 ; i < window.FCKMessages.length ; i++ )
+ oTempArray[ i - 1 ] = window.FCKMessages[ i ] ;
+ window.FCKMessages = oTempArray ;
+
+ var d = new Date() ;
+ var sTime =
+ ( d.getHours() + 100 + '' ).substr( 1,2 ) + ':' +
+ ( d.getMinutes() + 100 + '' ).substr( 1,2 ) + ':' +
+ ( d.getSeconds() + 100 + '' ).substr( 1,2 ) + ':' +
+ ( d.getMilliseconds() + 1000 + '' ).substr( 1,3 ) ;
+
+ var oMsgDiv = oWindow.document.createElement( 'div' ) ;
+ oMsgDiv.innerHTML = sTime + ': <b>' + sMessage + '<\/b>' ;
+ oDiv.appendChild( oMsgDiv ) ;
+ oMsgDiv.scrollIntoView() ;
+ }
+}
+
+function Clear()
+{
+ oDiv.innerHTML = '' ;
+}
+ </script>
+ </head>
+ <body onload="Initialize();" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10">
+ <TABLE height="100%" cellSpacing="5" cellPadding="0" width="100%" border="0">
+ <TR>
+ <TD>
+ <TABLE cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <TR>
+ <TD><FONT size="+2"><STRONG>FCKeditor Debug Window</STRONG></FONT></TD>
+ <TD align="right"><INPUT type="button" value="Clear" onclick="Clear();"></TD>
+ </TR>
+ </TABLE>
+ </TD>
+ </TR>
+ <TR>
+ <TD height="100%" style="BORDER-RIGHT: #696969 1px solid; BORDER-TOP: #696969 1px solid; BORDER-LEFT: #696969 1px solid; BORDER-BOTTOM: #696969 1px solid">
+ <iframe id="eOutput" name="eOutput" width="100%" height="100%" scrolling="auto" src="fckblank.html" frameborder="no"></iframe>
+ </TD>
+ </TR>
+ </TABLE>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/fckdialog.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/fckdialog.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/fckdialog.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,310 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckdialog.html
+ * This page is used by all dialog box as the container.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="robots" content="noindex, nofollow" />
+ <script type="text/javascript">
+
+// On some Gecko browsers (probably over slow connections) the
+// "dialogArguments" are not set so we must get it from the opener window.
+if ( !window.dialogArguments )
+ window.dialogArguments = window.opener.FCKLastDialogInfo ;
+
+// Sets the Skin CSS
+document.write( '<link href="' + window.dialogArguments.Editor.FCKConfig.SkinPath + 'fck_dialog.css" type="text/css" rel="stylesheet">' ) ;
+
+// Sets the language direction.
+window.document.dir = window.dialogArguments.Editor.FCKLang.Dir ;
+
+var sTitle = window.dialogArguments.Title ;
+document.write( '<title>' + sTitle + '<\/title>' ) ;
+
+function LoadInnerDialog()
+{
+ if ( window.onresize )
+ window.onresize() ;
+
+ // First of all, translate the dialog box contents.
+ window.dialogArguments.Editor.FCKLanguageManager.TranslatePage( document ) ;
+
+ window.frames["frmMain"].document.location.href = window.dialogArguments.Page ;
+}
+
+function InnerDialogLoaded()
+{
+ var oInnerDoc = document.getElementById('frmMain').contentWindow.document ;
+
+ // Set the language direction.
+ oInnerDoc.dir = window.dialogArguments.Editor.FCKLang.Dir ;
+
+ // Sets the Skin CSS.
+ oInnerDoc.write( '<link href="' + window.dialogArguments.Editor.FCKConfig.SkinPath + 'fck_dialog.css" type="text/css" rel="stylesheet">' ) ;
+
+ SetOnKeyDown( oInnerDoc ) ;
+ DisableContextMenu( oInnerDoc ) ;
+
+ return window.dialogArguments.Editor ;
+}
+
+function SetOkButton( showIt )
+{
+ document.getElementById('btnOk').style.visibility = ( showIt ? '' : 'hidden' ) ;
+}
+
+var bAutoSize = false ;
+
+function SetAutoSize( autoSize )
+{
+ bAutoSize = autoSize ;
+ RefreshSize() ;
+}
+
+function RefreshSize()
+{
+ if ( bAutoSize )
+ {
+ var oInnerDoc = document.getElementById('frmMain').contentWindow.document ;
+
+ var iFrameHeight ;
+ if ( document.all )
+ iFrameHeight = oInnerDoc.body.offsetHeight ;
+ else
+ iFrameHeight = document.getElementById('frmMain').contentWindow.innerHeight ;
+
+ var iInnerHeight = oInnerDoc.body.scrollHeight ;
+
+ var iDiff = iInnerHeight - iFrameHeight ;
+
+ if ( iDiff > 0 )
+ {
+ if ( document.all )
+ window.dialogHeight = ( parseInt( window.dialogHeight ) + iDiff ) + 'px' ;
+ else
+ window.resizeBy( 0, iDiff ) ;
+ }
+ }
+}
+
+function Ok()
+{
+ if ( window.frames["frmMain"].Ok && window.frames["frmMain"].Ok() )
+ Cancel() ;
+}
+
+function Cancel()
+{
+ window.close() ;
+}
+
+// Object that holds all available tabs.
+var oTabs = new Object() ;
+
+function TabDiv_OnClick()
+{
+ SetSelectedTab( this.TabCode ) ;
+}
+
+function AddTab( tabCode, tabText, startHidden )
+{
+ if ( typeof( oTabs[ tabCode ] ) != 'undefined' )
+ return ;
+
+ var eTabsRow = document.getElementById( 'Tabs' ) ;
+
+ var oCell = eTabsRow.insertCell( eTabsRow.cells.length - 1 ) ;
+ oCell.noWrap = true ;
+
+ var oDiv = document.createElement( 'DIV' ) ;
+ oDiv.className = 'PopupTab' ;
+ oDiv.innerHTML = tabText ;
+ oDiv.TabCode = tabCode ;
+ oDiv.onclick = TabDiv_OnClick ;
+
+ if ( startHidden )
+ oDiv.style.display = 'none' ;
+
+ eTabsRow = document.getElementById( 'TabsRow' ) ;
+
+ oCell.appendChild( oDiv ) ;
+
+ if ( eTabsRow.style.display == 'none' )
+ {
+ var eTitleArea = document.getElementById( 'TitleArea' ) ;
+ eTitleArea.className = 'PopupTitle' ;
+
+ oDiv.className = 'PopupTabSelected' ;
+ eTabsRow.style.display = '' ;
+
+ if ( ! window.dialogArguments.Editor.FCKBrowserInfo.IsIE )
+ window.onresize() ;
+ }
+
+ oTabs[ tabCode ] = oDiv ;
+ oTabs[ tabCode ].Index = oTabs.length - 1 ;
+}
+
+function SetSelectedTab( tabCode )
+{
+ for ( var sCode in oTabs )
+ {
+ if ( sCode == tabCode )
+ oTabs[sCode].className = 'PopupTabSelected' ;
+ else
+ oTabs[sCode].className = 'PopupTab' ;
+ }
+
+ if ( typeof( window.frames["frmMain"].OnDialogTabChange ) == 'function' )
+ window.frames["frmMain"].OnDialogTabChange( tabCode ) ;
+}
+
+function SetTabVisibility( tabCode, isVisible )
+{
+ var oTab = oTabs[ tabCode ] ;
+ oTab.style.display = isVisible ? '' : 'none' ;
+
+ if ( ! isVisible && oTab.className == 'PopupTabSelected' )
+ {
+ for ( var sCode in oTabs )
+ {
+ if ( oTabs[sCode].style.display != 'none' )
+ {
+ SetSelectedTab( sCode ) ;
+ break ;
+ }
+ }
+ }
+}
+
+function SetOnKeyDown( targetDocument )
+{
+ targetDocument.onkeydown = function ( e )
+ {
+ e = e || event || this.parentWindow.event ;
+ switch ( e.keyCode )
+ {
+ case 13 : // ENTER
+ var oTarget = e.srcElement || e.target ;
+ if ( oTarget.tagName == 'TEXTAREA' ) return ;
+ Ok() ;
+ return false ;
+ case 27 : // ESC
+ Cancel() ;
+ return false ;
+ break ;
+ }
+ return true ;
+ }
+}
+SetOnKeyDown( document ) ;
+
+function DisableContextMenu( targetDocument )
+{
+ if ( window.dialogArguments.Editor.FCKBrowserInfo.IsIE ) return ;
+
+ // Disable Right-Click
+ var oOnContextMenu = function( e )
+ {
+ var sTagName = e.target.tagName ;
+ if ( ! ( ( sTagName == "INPUT" && e.target.type == "text" ) || sTagName == "TEXTAREA" ) )
+ e.preventDefault() ;
+ }
+ targetDocument.addEventListener( 'contextmenu', oOnContextMenu, true ) ;
+}
+DisableContextMenu( document ) ;
+
+if ( ! window.dialogArguments.Editor.FCKBrowserInfo.IsIE )
+{
+ window.onresize = function()
+ {
+ var oFrame = document.getElementById("frmMain") ;
+
+ if ( ! oFrame )
+ return ;
+
+ oFrame.height = 0 ;
+
+ var oCell = document.getElementById("FrameCell") ;
+ var iHeight = oCell.offsetHeight ;
+
+ oFrame.height = iHeight - 2 ;
+ }
+}
+
+window.onfocus = function()
+{
+ document.getElementById('frmMain').contentWindow.focus() ;
+}
+
+if ( window.dialogArguments.Editor.FCKBrowserInfo.IsIE )
+{
+ function Window_OnBeforeUnload()
+ {
+ for ( var t in oTabs )
+ oTabs[t] = null ;
+
+ window.dialogArguments.Editor = null ;
+ }
+ window.attachEvent( "onbeforeunload", Window_OnBeforeUnload ) ;
+}
+
+ </script>
+ </head>
+ <body onload="LoadInnerDialog();" class="PopupBody">
+ <table height="100%" cellspacing="0" cellpadding="0" width="100%" border="0">
+ <tr>
+ <td id="TitleArea" class="PopupTitle PopupTitleBorder">
+ <script type="text/javascript">
+document.write( sTitle ) ;
+ </script>
+ </td>
+ </tr>
+ <tr id="TabsRow" style="DISPLAY: none">
+ <td class="PopupTabArea">
+ <table border="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr id="Tabs" onselectstart="return false;">
+ <td class="PopupTabEmptyArea"> </td>
+ <td class="PopupTabEmptyArea" width="100%"> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr>
+ <td id="FrameCell" height="100%" valign="top">
+ <iframe id="frmMain" src="fckblank.html" name="frmMain" frameborder="0" height="100%" width="100%" scrolling="auto">
+ </iframe>
+ </td>
+ </tr>
+ <tr>
+ <td class="PopupButtons">
+ <table border="0" cellpadding="0" cellspacing="0">
+ <tr>
+ <td width="100%"> </td>
+ <td nowrap="nowrap">
+ <input id="btnOk" style="VISIBILITY: hidden; WIDTH: 100px" type="button" value="Ok" class="Button"
+ onclick="Ok();" fckLang="DlgBtnOK" /> <input type="button" value="Cancel" class="Button" onclick="Cancel();" fckLang="DlgBtnCancel" />
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,58 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckeditor.html
+ * Main page that holds the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor</title>
+ <meta name="robots" content="noindex, nofollow" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <script type="text/javascript" src="lang/fcklanguagemanager.js"></script>
+ <meta http-equiv="Cache-Control" content="public">
+ <script type="text/javascript" src="js/fck_startup.js"></script>
+ </head>
+ <body>
+ <table height="100%" width="100%" cellpadding="0" cellspacing="0" border="0" style="TABLE-LAYOUT: fixed">
+ <tr>
+ <td unselectable="on" style="OVERFLOW: hidden">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr id="Collapsed" style="DISPLAY: none">
+ <td id="ExpandHandle" class="TB_Expand" unselectable="on" colspan="3" onclick="FCKToolbarSet.Expand();return false;"><img class="TB_ExpandImg" src="images/spacer.gif" width="8" height="4" unselectable="on"></td>
+ </tr>
+ <tr id="Expanded" style="DISPLAY: none">
+ <td id="CollapseHandle" style="DISPLAY: none" class="TB_Collapse"
+ unselectable="on" valign="bottom" onclick="FCKToolbarSet.Collapse();return false;"><img class="TB_CollapseImg" src="images/spacer.gif" width="8" height="4" unselectable="on"></td>
+ <td id="eToolbar" class="TB_ToolbarSet" unselectable="on"></td>
+ <td width="1" class="TB_SideBorder"></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr id="eWysiwyg">
+ <td id="eWysiwygCell" height="100%" valign="top">
+ <iframe id="eEditorArea" name="eEditorArea" height="100%" width="100%" frameborder="no" src="fckblank.html"></iframe>
+ </td>
+ </tr>
+ <tr id="eSource" style="DISPLAY: none">
+ <td class="Source" height="100%" valign="top">
+ <textarea id="eSourceField" dir="ltr" style="WIDTH: 100%; HEIGHT: 100%"></textarea>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.original.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.original.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/fckeditor.original.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,75 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckeditor.original.html
+ * Main page that holds the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor</title>
+ <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> <!-- @Packager.RemoveLine -->
+ <meta name="robots" content="noindex, nofollow" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <script type="text/javascript" src="lang/fcklanguagemanager.js"></script>
+ <!-- @Packager.RemoveLine
+ <meta http-equiv="Cache-Control" content="public">
+ @Packager.RemoveLine -->
+ <!-- @Packager.Remove.Start -->
+ <script type="text/javascript" src="_source/internals/fcknamespace.js"></script>
+ <script type="text/javascript" src="_source/internals/fckcoreextensions.js"></script>
+ <script type="text/javascript" src="_source/globals/fck_constants.js"></script>
+ <script type="text/javascript" src="_source/internals/fckbrowserinfo.js"></script>
+ <script type="text/javascript" src="_source/internals/fckscriptloader.js"></script>
+ <script type="text/javascript" src="_source/internals/fckurlparams.js"></script>
+ <script type="text/javascript" src="_source/internals/fck.js"></script>
+ <script type="text/javascript" src="_source/internals/fckconfig.js"></script>
+ <script type="text/javascript" src="_source/globals/fckeditorapi.js"></script>
+ <script type="text/javascript" src="_source/internals/fck_onload.js"></script>
+ <!-- @Packager.Remove.End -->
+ <!-- @Packager.RemoveLine
+ <script type="text/javascript" src="js/fck_startup.js"></script>
+ @Packager.RemoveLine -->
+ </head>
+ <body>
+ <table height="100%" width="100%" cellpadding="0" cellspacing="0" border="0" style="TABLE-LAYOUT: fixed">
+ <tr>
+ <td unselectable="on" style="OVERFLOW: hidden">
+ <table width="100%" cellpadding="0" cellspacing="0" border="0">
+ <tr id="Collapsed" style="DISPLAY: none">
+ <td id="ExpandHandle" class="TB_Expand" unselectable="on" colspan="3" onclick="FCKToolbarSet.Expand();return false;"><img class="TB_ExpandImg" src="images/spacer.gif" width="8" height="4" unselectable="on"></td>
+ </tr>
+ <tr id="Expanded" style="DISPLAY: none">
+ <td id="CollapseHandle" style="DISPLAY: none" class="TB_Collapse"
+ unselectable="on" valign="bottom" onclick="FCKToolbarSet.Collapse();return false;"><img class="TB_CollapseImg" src="images/spacer.gif" width="8" height="4" unselectable="on"></td>
+ <td id="eToolbar" class="TB_ToolbarSet" unselectable="on"></td>
+ <td width="1" class="TB_SideBorder"></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ <tr id="eWysiwyg">
+ <td id="eWysiwygCell" height="100%" valign="top">
+ <iframe id="eEditorArea" name="eEditorArea" height="100%" width="100%" frameborder="no" src="fckblank.html"></iframe>
+ </td>
+ </tr>
+ <tr id="eSource" style="DISPLAY: none">
+ <td class="Source" height="100%" valign="top">
+ <textarea id="eSourceField" dir="ltr" style="WIDTH: 100%; HEIGHT: 100%"></textarea>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,84 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: browser.css
+ * CSS styles used by all pages that compose the File Browser.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body
+{
+ background-color: #f1f1e3;
+}
+
+form
+{
+ margin: 0px 0px 0px 0px ;
+ padding: 0px 0px 0px 0px ;
+}
+
+.Frame
+{
+ background-color: #f1f1e3;
+ border-color: #f1f1e3;
+ border-right: thin inset;
+ border-top: thin inset;
+ border-left: thin inset;
+ border-bottom: thin inset;
+}
+
+body.FileArea
+{
+
+ background-color: #ffffff;
+}
+
+body, td, input, select
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
+}
+
+.ActualFolder
+{
+ font-weight: bold;
+ font-size: 14px;
+}
+
+.PopupButtons
+{
+ border-top: #d5d59d 1px solid;
+ background-color: #e3e3c7;
+ padding: 7px 10px 7px 10px;
+}
+
+.Button, button
+{
+ border-right: #737357 1px solid;
+ border-top: #737357 1px solid;
+ border-left: #737357 1px solid;
+ color: #3b3b1f;
+ border-bottom: #737357 1px solid;
+ background-color: #c7c78f;
+}
+
+.FolderListCurrentFolder img
+{
+ background-image: url(images/FolderOpened.gif);
+}
+
+.FolderListFolder img
+{
+ background-image: url(images/Folder.gif);
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/browser.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,148 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: browser.html
+ * This page compose the File Browser dialog frameset.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Resources Browser</title>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/fckxml.js"></script>
+ <script language="javascript">
+
+function GetUrlParam( paramName )
+{
+ var oRegex = new RegExp( '[\?&]' + paramName + '=([^&]+)', 'i' ) ;
+ var oMatch = oRegex.exec( window.top.location.search ) ;
+
+ if ( oMatch && oMatch.length > 1 )
+ return oMatch[1] ;
+ else
+ return '' ;
+}
+
+var oConnector = new Object() ;
+oConnector.CurrentFolder = '/' ;
+
+var sConnUrl = GetUrlParam( 'Connector' ) ;
+
+// Gecko has some problems when using relative URLs (not starting with slash).
+if ( sConnUrl.substr(0,1) != '/' && sConnUrl.indexOf( '://' ) < 0 )
+ sConnUrl = window.location.href.replace( /browser.html.*$/, '' ) + sConnUrl ;
+
+oConnector.ConnectorUrl = sConnUrl + ( sConnUrl.indexOf('?') != -1 ? '&' : '?' ) ;
+
+var sServerPath = GetUrlParam( 'ServerPath' ) ;
+if ( sServerPath.length > 0 )
+ oConnector.ConnectorUrl += 'ServerPath=' + escape( sServerPath ) + '&' ;
+
+oConnector.ResourceType = GetUrlParam( 'Type' ) ;
+oConnector.ShowAllTypes = ( oConnector.ResourceType.length == 0 ) ;
+
+if ( oConnector.ShowAllTypes )
+ oConnector.ResourceType = 'File' ;
+
+oConnector.SendCommand = function( command, params, callBackFunction )
+{
+ var sUrl = this.ConnectorUrl + 'Command=' + command ;
+ sUrl += '&Type=' + this.ResourceType ;
+ sUrl += '&CurrentFolder=' + escape( this.CurrentFolder ) ;
+
+ if ( params ) sUrl += '&' + params ;
+
+ var oXML = new FCKXml() ;
+
+ if ( callBackFunction )
+ oXML.LoadUrl( sUrl, callBackFunction ) ; // Asynchronous load.
+ else
+ return oXML.LoadUrl( sUrl ) ;
+}
+
+oConnector.CheckError = function( responseXml )
+{
+ var iErrorNumber = 0
+ var oErrorNode = responseXml.SelectSingleNode( 'Connector/Error' ) ;
+
+ if ( oErrorNode )
+ {
+ iErrorNumber = parseInt( oErrorNode.attributes.getNamedItem('number').value ) ;
+
+ switch ( iErrorNumber )
+ {
+ case 0 :
+ break ;
+ case 1 : // Custom error. Message placed in the "text" attribute.
+ alert( oErrorNode.attributes.getNamedItem('text').value ) ;
+ break ;
+ case 101 :
+ alert( 'Folder already exists' ) ;
+ break ;
+ case 102 :
+ alert( 'Invalid folder name' ) ;
+ break ;
+ case 103 :
+ alert( 'You have no permissions to create the folder' ) ;
+ break ;
+ case 110 :
+ alert( 'Unknown error creating folder' ) ;
+ break ;
+ default :
+ alert( 'Error on your request. Error number: ' + iErrorNumber ) ;
+ break ;
+ }
+ }
+ return iErrorNumber ;
+}
+
+var oIcons = new Object() ;
+
+oIcons.AvailableIconsArray = [
+ 'ai','avi','bmp','cs','dll','doc','exe','fla','gif','htm','html','jpg','js',
+ 'mdb','mp3','pdf','ppt','rdp','swf','swt','txt','vsd','xls','xml','zip' ] ;
+
+oIcons.AvailableIcons = new Object() ;
+
+for ( var i = 0 ; i < oIcons.AvailableIconsArray.length ; i++ )
+ oIcons.AvailableIcons[ oIcons.AvailableIconsArray[i] ] = true ;
+
+oIcons.GetIcon = function( fileName )
+{
+ var sExtension = fileName.substr( fileName.lastIndexOf('.') + 1 ).toLowerCase() ;
+
+ if ( this.AvailableIcons[ sExtension ] == true )
+ return sExtension ;
+ else
+ return 'default.icon' ;
+}
+ </script>
+ </head>
+ <frameset cols="150,*" class="Frame" framespacing="3" bordercolor="#f1f1e3" frameborder="yes">
+ <frameset rows="50,*" framespacing="0">
+ <frame src="frmresourcetype.html" scrolling="no" frameborder="no">
+ <frame name="frmFolders" src="frmfolders.html" scrolling="auto" frameborder="yes">
+ </frameset>
+ <frameset rows="50,*,50" framespacing="0">
+ <frame name="frmActualFolder" src="frmactualfolder.html" scrolling="no" frameborder="no">
+ <frame name="frmResourcesList" src="frmresourceslist.html" scrolling="auto" frameborder="yes">
+ <frameset cols="150,*,0" framespacing="0" frameborder="no">
+ <frame name="frmCreateFolder" src="frmcreatefolder.html" scrolling="no" frameborder="no">
+ <frame name="frmUpload" src="frmupload.html" scrolling="no" frameborder="no">
+ <frame name="frmUploadWorker" src="../../../fckblank.html" scrolling="no" frameborder="no">
+ </frameset>
+ </frameset>
+ </frameset>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/basexml.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/basexml.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/basexml.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,58 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: basexml.asp
+ * This file include the functions that create the base XML output.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+
+Sub SetXmlHeaders()
+ ' Cleans the response buffer.
+ Response.Clear()
+
+ ' Prevent the browser from caching the result.
+ Response.CacheControl = "no-cache"
+
+ ' Set the response format.
+ Response.CharSet = "UTF-8"
+ Response.ContentType = "text/xml"
+End Sub
+
+Sub CreateXmlHeader( command, resourceType, currentFolder )
+ ' Create the XML document header.
+ Response.Write "<?xml version=""1.0"" encoding=""utf-8"" ?>"
+
+ ' Create the main "Connector" node.
+ Response.Write "<Connector command=""" & command & """ resourceType=""" & resourceType & """>"
+
+ ' Add the current folder node.
+ Response.Write "<CurrentFolder path=""" & ConvertToXmlAttribute( currentFolder ) & """ url=""" & ConvertToXmlAttribute( GetUrlFromPath( resourceType, currentFolder) ) & """ />"
+End Sub
+
+Sub CreateXmlFooter()
+ Response.Write "</Connector>"
+End Sub
+
+Sub SendError( number, text )
+ SetXmlHeaders
+
+ ' Create the XML document header.
+ Response.Write "<?xml version=""1.0"" encoding=""utf-8"" ?>"
+
+ Response.Write "<Connector><Error number=""" & number & """ text=""" & Server.HTMLEncode( text ) & """ /></Connector>"
+
+ Response.End
+End Sub
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/class_upload.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/class_upload.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/class_upload.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,230 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: class_upload.asp
+ * These are the classes used to handle ASP upload without using third
+ * part components (OCX/DLL).
+ *
+ * File Authors:
+ * NetRube (netrube at 126.com)
+-->
+<%
+'**********************************************
+' File: NetRube_Upload.asp
+' Version: NetRube Upload Class Version 2.1 Build 20050228
+' Author: NetRube
+' Email: NetRube at 126.com
+' Date: 02/28/2005
+' Comments: The code for the Upload.
+' This can free usage, but please
+' not to delete this copyright information.
+' If you have a modification version,
+' Please send out a duplicate to me.
+'**********************************************
+' æ件å: NetRube_Upload.asp
+' çæ¬: NetRube Upload Class Version 2.1 Build 20050228
+' ä½è
: NetRube(ç½ç»ä¹¡å·´ä½¬)
+' çµåé®ä»¶: NetRube at 126.com
+' æ¥æ: 2005å¹´02æ28æ¥
+' 声æ: æ件ä¸ä¼ ç±»
+' æ¬ä¸ä¼ ç±»å¯ä»¥èªç±ä½¿ç¨ï¼ä½è¯·ä¿çæ¤çæ声æä¿¡æ¯
+' å¦ææ¨å¯¹æ¬ä¸ä¼ ç±»è¿è¡ä¿®æ¹å¢å¼ºï¼
+' 请åéä¸ä»½ç»ä¿ºã
+'**********************************************
+
+Class NetRube_Upload
+
+ Public File, Form
+ Private oSourceData
+ Private nMaxSize, nErr, sAllowed, sDenied
+
+ Private Sub Class_Initialize
+ nErr = 0
+ nMaxSize = 1048576
+
+ Set File = Server.CreateObject("Scripting.Dictionary")
+ File.CompareMode = 1
+ Set Form = Server.CreateObject("Scripting.Dictionary")
+ Form.CompareMode = 1
+
+ Set oSourceData = Server.CreateObject("ADODB.Stream")
+ oSourceData.Type = 1
+ oSourceData.Mode = 3
+ oSourceData.Open
+ End Sub
+
+ Private Sub Class_Terminate
+ Form.RemoveAll
+ Set Form = Nothing
+ File.RemoveAll
+ Set File = Nothing
+
+ oSourceData.Close
+ Set oSourceData = Nothing
+ End Sub
+
+ Public Property Get Version
+ Version = "NetRube Upload Class Version 1.0 Build 20041218"
+ End Property
+
+ Public Property Get ErrNum
+ ErrNum = nErr
+ End Property
+
+ Public Property Let MaxSize(nSize)
+ nMaxSize = nSize
+ End Property
+
+ Public Property Let Allowed(sExt)
+ sAllowed = sExt
+ End Property
+
+ Public Property Let Denied(sExt)
+ sDenied = sExt
+ End Property
+
+ Public Sub GetData
+ Dim aCType
+ aCType = Split(Request.ServerVariables("HTTP_CONTENT_TYPE"), ";")
+ If aCType(0) <> "multipart/form-data" Then
+ nErr = 1
+ Exit Sub
+ End If
+
+ Dim nTotalSize
+ nTotalSize = Request.TotalBytes
+ If nTotalSize < 1 Then
+ nErr = 2
+ Exit Sub
+ End If
+ If nMaxSize > 0 And nTotalSize > nMaxSize Then
+ nErr = 3
+ Exit Sub
+ End If
+
+ oSourceData.Write Request.BinaryRead(nTotalSize)
+ oSourceData.Position = 0
+
+ Dim oTotalData, oFormStream, sFormHeader, sFormName, bCrLf, nBoundLen, nFormStart, nFormEnd, nPosStart, nPosEnd, sBoundary
+
+ oTotalData = oSourceData.Read
+ bCrLf = ChrB(13) & ChrB(10)
+ sBoundary = MidB(oTotalData, 1, InStrB(1, oTotalData, bCrLf) - 1)
+ nBoundLen = LenB(sBoundary) + 2
+ nFormStart = nBoundLen
+
+ Set oFormStream = Server.CreateObject("ADODB.Stream")
+
+ Do While (nFormStart + 2) < nTotalSize
+ nFormEnd = InStrB(nFormStart, oTotalData, bCrLf & bCrLf) + 3
+
+ With oFormStream
+ .Type = 1
+ .Mode = 3
+ .Open
+ oSourceData.Position = nFormStart
+ oSourceData.CopyTo oFormStream, nFormEnd - nFormStart
+ .Position = 0
+ .Type = 2
+ .CharSet = "UTF-8"
+ sFormHeader = .ReadText
+ .Close
+ End With
+
+ nFormStart = InStrB(nFormEnd, oTotalData, sBoundary) - 1
+ nPosStart = InStr(22, sFormHeader, " name=", 1) + 7
+ nPosEnd = InStr(nPosStart, sFormHeader, """")
+ sFormName = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
+
+ If InStr(45, sFormHeader, " filename=", 1) > 0 Then
+ Set File(sFormName) = New NetRube_FileInfo
+ File(sFormName).FormName = sFormName
+ File(sFormName).Start = nFormEnd
+ File(sFormName).Size = nFormStart - nFormEnd - 2
+ nPosStart = InStr(nPosEnd, sFormHeader, " filename=", 1) + 11
+ nPosEnd = InStr(nPosStart, sFormHeader, """")
+ File(sFormName).ClientPath = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
+ File(sFormName).Name = Mid(File(sFormName).ClientPath, InStrRev(File(sFormName).ClientPath, "\") + 1)
+ File(sFormName).Ext = LCase(Mid(File(sFormName).Name, InStrRev(File(sFormName).Name, ".") + 1))
+ nPosStart = InStr(nPosEnd, sFormHeader, "Content-Type: ", 1) + 14
+ nPosEnd = InStr(nPosStart, sFormHeader, vbCr)
+ File(sFormName).MIME = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
+ Else
+ With oFormStream
+ .Type = 1
+ .Mode = 3
+ .Open
+ oSourceData.Position = nPosEnd
+ oSourceData.CopyTo oFormStream, nFormStart - nFormEnd - 2
+ .Position = 0
+ .Type = 2
+ .CharSet = "UTF-8"
+ Form(sFormName) = .ReadText
+ .Close
+ End With
+ End If
+
+ nFormStart = nFormStart + nBoundLen
+ Loop
+
+ oTotalData = ""
+ Set oFormStream = Nothing
+ End Sub
+
+ Public Sub SaveAs(sItem, sFileName)
+ If File(sItem).Size < 1 Then
+ nErr = 2
+ Exit Sub
+ End If
+
+ If Not IsAllowed(File(sItem).Ext) Then
+ nErr = 4
+ Exit Sub
+ End If
+
+ Dim oFileStream
+ Set oFileStream = Server.CreateObject("ADODB.Stream")
+ With oFileStream
+ .Type = 1
+ .Mode = 3
+ .Open
+ oSourceData.Position = File(sItem).Start
+ oSourceData.CopyTo oFileStream, File(sItem).Size
+ .Position = 0
+ .SaveToFile sFileName, 2
+ .Close
+ End With
+ Set oFileStream = Nothing
+ End Sub
+
+ Private Function IsAllowed(sExt)
+ Dim oRE
+ Set oRE = New RegExp
+ oRE.IgnoreCase = True
+ oRE.Global = True
+
+ If sDenied = "" Then
+ oRE.Pattern = sAllowed
+ IsAllowed = (sAllowed = "") Or oRE.Test(sExt)
+ Else
+ oRE.Pattern = sDenied
+ IsAllowed = Not oRE.Test(sExt)
+ End If
+
+ Set oRE = Nothing
+ End Function
+End Class
+
+Class NetRube_FileInfo
+ Dim FormName, ClientPath, Path, Name, Ext, Content, Size, MIME, Start
+End Class
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/commands.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/commands.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/commands.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,179 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: commands.asp
+ * This file include the functions that handle the Command requests
+ * in the ASP Connector.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+Sub GetFolders( resourceType, currentFolder )
+ ' Map the virtual path to the local server path.
+ Dim sServerDir
+ sServerDir = ServerMapFolder( resourceType, currentFolder )
+
+ ' Open the "Folders" node.
+ Response.Write "<Folders>"
+
+ Dim oFSO, oCurrentFolder, oFolders, oFolder
+ Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
+ Set oCurrentFolder = oFSO.GetFolder( sServerDir )
+ Set oFolders = oCurrentFolder.SubFolders
+
+ For Each oFolder in oFolders
+ Response.Write "<Folder name=""" & ConvertToXmlAttribute( oFolder.name ) & """ />"
+ Next
+
+ Set oFSO = Nothing
+
+ ' Close the "Folders" node.
+ Response.Write "</Folders>"
+End Sub
+
+Sub GetFoldersAndFiles( resourceType, currentFolder )
+ ' Map the virtual path to the local server path.
+ Dim sServerDir
+ sServerDir = ServerMapFolder( resourceType, currentFolder )
+
+ Dim oFSO, oCurrentFolder, oFolders, oFolder, oFiles, oFile
+ Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
+ Set oCurrentFolder = oFSO.GetFolder( sServerDir )
+ Set oFolders = oCurrentFolder.SubFolders
+ Set oFiles = oCurrentFolder.Files
+
+ ' Open the "Folders" node.
+ Response.Write "<Folders>"
+
+ For Each oFolder in oFolders
+ Response.Write "<Folder name=""" & ConvertToXmlAttribute( oFolder.name ) & """ />"
+ Next
+
+ ' Close the "Folders" node.
+ Response.Write "</Folders>"
+
+ ' Open the "Files" node.
+ Response.Write "<Files>"
+
+ For Each oFile in oFiles
+ Dim iFileSize
+ iFileSize = Round( oFile.size / 1024 )
+ If ( iFileSize < 1 AND oFile.size <> 0 ) Then iFileSize = 1
+
+ Response.Write "<File name=""" & ConvertToXmlAttribute( oFile.name ) & """ size=""" & iFileSize & """ />"
+ Next
+
+ ' Close the "Files" node.
+ Response.Write "</Files>"
+End Sub
+
+Sub CreateFolder( resourceType, currentFolder )
+ Dim sErrorNumber
+
+ Dim sNewFolderName
+ sNewFolderName = Request.QueryString( "NewFolderName" )
+
+ If ( sNewFolderName = "" OR InStr( 1, sNewFolderName, ".." ) > 0 ) Then
+ sErrorNumber = "102"
+ Else
+ ' Map the virtual path to the local server path of the current folder.
+ Dim sServerDir
+ sServerDir = ServerMapFolder( resourceType, currentFolder & "/" & sNewFolderName )
+
+ On Error Resume Next
+
+ CreateServerFolder sServerDir
+
+ Dim iErrNumber, sErrDescription
+ iErrNumber = err.number
+ sErrDescription = err.Description
+
+ On Error Goto 0
+
+ Select Case iErrNumber
+ Case 0
+ sErrorNumber = "0"
+ Case 52
+ sErrorNumber = "102" ' Invalid Folder Name.
+ Case 70
+ sErrorNumber = "103" ' Security Error.
+ Case 76
+ sErrorNumber = "102" ' Path too long.
+ Case Else
+ sErrorNumber = "110"
+ End Select
+ End If
+
+ ' Create the "Error" node.
+ Response.Write "<Error number=""" & sErrorNumber & """ originalNumber=""" & iErrNumber & """ originalDescription=""" & ConvertToXmlAttribute( sErrDescription ) & """ />"
+End Sub
+
+Sub FileUpload( resourceType, currentFolder )
+ Dim oUploader
+ Set oUploader = New NetRube_Upload
+ oUploader.MaxSize = 0
+ oUploader.Allowed = ConfigAllowedExtensions.Item( resourceType )
+ oUploader.Denied = ConfigDeniedExtensions.Item( resourceType )
+ oUploader.GetData
+
+ Dim sErrorNumber
+ sErrorNumber = "0"
+
+ Dim sFileName, sOriginalFileName, sExtension
+ sFileName = ""
+
+ If oUploader.ErrNum > 1 Then
+ sErrorNumber = "202"
+ Else
+ ' Map the virtual path to the local server path.
+ Dim sServerDir
+ sServerDir = ServerMapFolder( resourceType, currentFolder )
+
+ Dim oFSO
+ Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
+
+ ' Get the uploaded file name.
+ sFileName = oUploader.File( "NewFile" ).Name
+ sExtension = oUploader.File( "NewFile" ).Ext
+ sOriginalFileName = sFileName
+
+ Dim iCounter
+ iCounter = 0
+
+ Do While ( True )
+ Dim sFilePath
+ sFilePath = sServerDir & sFileName
+
+ If ( oFSO.FileExists( sFilePath ) ) Then
+ iCounter = iCounter + 1
+ sFileName = RemoveExtension( sOriginalFileName ) & "(" & iCounter & ")." & sExtension
+ sErrorNumber = "201"
+ Else
+ oUploader.SaveAs "NewFile", sFilePath
+ If oUploader.ErrNum > 0 Then sErrorNumber = "202"
+ Exit Do
+ End If
+ Loop
+ End If
+
+ Set oUploader = Nothing
+
+ Response.Clear
+
+ Response.Write "<script type=""text/javascript"">"
+ Response.Write "window.parent.frames['frmUpload'].OnUploadCompleted(" & sErrorNumber & ",'" & Replace( sFileName, "'", "\'" ) & "') ;"
+ Response.Write "</script>"
+
+ Response.End
+End Sub
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/config.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/config.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/config.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,45 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: config.asp
+ * Configuration file for the File Manager Connector for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+
+' SECURITY: You must explicitelly enable this "connector" (set it to "True").
+Dim ConfigIsEnabled
+ConfigIsEnabled = False
+
+' Path to user files relative to the document root.
+Dim ConfigUserFilesPath
+ConfigUserFilesPath = "/UserFiles/"
+
+Dim ConfigAllowedExtensions, ConfigDeniedExtensions
+Set ConfigAllowedExtensions = CreateObject( "Scripting.Dictionary" )
+Set ConfigDeniedExtensions = CreateObject( "Scripting.Dictionary" )
+
+ConfigAllowedExtensions.Add "File", ""
+ConfigDeniedExtensions.Add "File", "php|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|com|dll|vbs|js|reg"
+
+ConfigAllowedExtensions.Add "Image", "jpg|gif|jpeg|png|bmp"
+ConfigDeniedExtensions.Add "Image", ""
+
+ConfigAllowedExtensions.Add "Flash", "swf|fla"
+ConfigDeniedExtensions.Add "Flash", ""
+
+ConfigAllowedExtensions.Add "Media", "swf|fla|jpg|gif|jpeg|png|avi|mpg|mpeg|mp(1-4)|wma|wmv|wav|mid|midi|rmi|rm|ram|rmvb|mov|qt"
+ConfigDeniedExtensions.Add "Media", ""
+
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/connector.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/connector.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/connector.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,119 @@
+<%@ CodePage=65001 Language="VBScript"%>
+<%
+Option Explicit
+%>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: connector.asp
+ * This is the File Manager Connector for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!--#include file="config.asp"-->
+<!--#include file="util.asp"-->
+<!--#include file="io.asp"-->
+<!--#include file="basexml.asp"-->
+<!--#include file="commands.asp"-->
+<!--#include file="class_upload.asp"-->
+<%
+
+If ( ConfigIsEnabled = False ) Then
+ SendError 1, "This connector is disabled. Please check the ""editor/filemanager/browser/default/connectors/asp/config.asp"" file"
+End If
+
+' Get the "UserFiles" path.
+Dim sUserFilesPath
+
+If ( Not IsEmpty( ConfigUserFilesPath ) ) Then
+ sUserFilesPath = ConfigUserFilesPath
+
+ If ( Right( sUserFilesPath, 1 ) <> "/" ) Then
+ sUserFilesPath = sUserFilesPath & "/"
+ End If
+Else
+ sUserFilesPath = "/UserFiles/"
+End If
+
+' Map the "UserFiles" path to a local directory.
+Dim sUserFilesDirectory
+sUserFilesDirectory = Server.MapPath( sUserFilesPath )
+
+If ( Right( sUserFilesDirectory, 1 ) <> "\" ) Then
+ sUserFilesDirectory = sUserFilesDirectory & "\"
+End If
+
+DoResponse
+
+Sub DoResponse()
+ Dim sCommand, sResourceType, sCurrentFolder
+
+ ' Get the main request information.
+ sCommand = Request.QueryString("Command")
+ If ( sCommand = "" ) Then Exit Sub
+
+ sResourceType = Request.QueryString("Type")
+ If ( sResourceType = "" ) Then Exit Sub
+
+ sCurrentFolder = Request.QueryString("CurrentFolder")
+ If ( sCurrentFolder = "" ) Then Exit Sub
+
+ ' Check if it is an allower resource type.
+ if ( Not IsAllowedType( sResourceType ) ) Then Exit Sub
+
+ ' Check the current folder syntax (must begin and start with a slash).
+ If ( Right( sCurrentFolder, 1 ) <> "/" ) Then sCurrentFolder = sCurrentFolder & "/"
+ If ( Left( sCurrentFolder, 1 ) <> "/" ) Then sCurrentFolder = "/" & sCurrentFolder
+
+ ' Check for invalid folder paths (..)
+ If ( InStr( 1, sCurrentFolder, ".." ) <> 0 OR InStr( 1, sResourceType, ".." ) <> 0 ) Then
+ SendError 102, ""
+ End If
+
+ ' File Upload doesn't have to Return XML, so it must be intercepted before anything.
+ If ( sCommand = "FileUpload" ) Then
+ FileUpload sResourceType, sCurrentFolder
+ Exit Sub
+ End If
+
+ SetXmlHeaders
+
+ CreateXmlHeader sCommand, sResourceType, sCurrentFolder
+
+ ' Execute the required command.
+ Select Case sCommand
+ Case "GetFolders"
+ GetFolders sResourceType, sCurrentFolder
+ Case "GetFoldersAndFiles"
+ GetFoldersAndFiles sResourceType, sCurrentFolder
+ Case "CreateFolder"
+ CreateFolder sResourceType, sCurrentFolder
+ End Select
+
+ CreateXmlFooter
+
+ Response.End
+End Sub
+
+Function IsAllowedType( resourceType )
+ Dim oRE
+ Set oRE = New RegExp
+ oRE.IgnoreCase = True
+ oRE.Global = True
+ oRE.Pattern = "^(File|Image|Flash|Media)$"
+
+ IsAllowedType = oRE.Test( resourceType )
+
+ Set oRE = Nothing
+End Function
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/io.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/io.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/io.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,85 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: io.asp
+ * This file include IO specific functions used by the ASP Connector.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+Function GetUrlFromPath( resourceType, folderPath )
+ If resourceType = "" Then
+ GetUrlFromPath = RemoveFromEnd( sUserFilesPath, "/" ) & folderPath
+ Else
+ GetUrlFromPath = sUserFilesPath & resourceType & folderPath
+ End If
+End Function
+
+Function RemoveExtension( fileName )
+ RemoveExtension = Left( fileName, InStrRev( fileName, "." ) - 1 )
+End Function
+
+Function ServerMapFolder( resourceType, folderPath )
+ ' Get the resource type directory.
+ Dim sResourceTypePath
+ sResourceTypePath = sUserFilesDirectory & resourceType & "\"
+
+ ' Ensure that the directory exists.
+ CreateServerFolder sResourceTypePath
+
+ ' Return the resource type directory combined with the required path.
+ ServerMapFolder = sResourceTypePath & RemoveFromStart( folderPath, "/" )
+End Function
+
+Sub CreateServerFolder( folderPath )
+ Dim oFSO
+ Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
+
+ Dim sParent
+ sParent = oFSO.GetParentFolderName( folderPath )
+
+ ' Check if the parent exists, or create it.
+ If ( NOT oFSO.FolderExists( sParent ) ) Then CreateServerFolder( sParent )
+
+ If ( oFSO.FolderExists( folderPath ) = False ) Then
+ oFSO.CreateFolder( folderPath )
+ End If
+
+ Set oFSO = Nothing
+End Sub
+
+Function IsAllowedExt( extension, resourceType )
+ Dim oRE
+ Set oRE = New RegExp
+ oRE.IgnoreCase = True
+ oRE.Global = True
+
+ Dim sAllowed, sDenied
+ sAllowed = ConfigAllowedExtensions.Item( resourceType )
+ sDenied = ConfigDeniedExtensions.Item( resourceType )
+
+ IsAllowedExt = True
+
+ If sDenied <> "" Then
+ oRE.Pattern = sDenied
+ IsAllowedExt = Not oRE.Test( extension )
+ End If
+
+ If IsAllowedExt And sAllowed <> "" Then
+ oRE.Pattern = sAllowed
+ IsAllowedExt = oRE.Test( extension )
+ End If
+
+ Set oRE = Nothing
+End Function
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/util.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/util.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/asp/util.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,51 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: util.asp
+ * This file include generic functions used by the ASP Connector.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+Function RemoveFromStart( sourceString, charToRemove )
+ Dim oRegex
+ Set oRegex = New RegExp
+ oRegex.Pattern = "^" & charToRemove & "+"
+
+ RemoveFromStart = oRegex.Replace( sourceString, "" )
+End Function
+
+Function RemoveFromEnd( sourceString, charToRemove )
+ Dim oRegex
+ Set oRegex = New RegExp
+ oRegex.Pattern = charToRemove & "+$"
+
+ RemoveFromEnd = oRegex.Replace( sourceString, "" )
+End Function
+
+Function ConvertToXmlAttribute( value )
+ ConvertToXmlAttribute = Replace( value, "&", "&" )
+End Function
+
+Function InArray( value, sourceArray )
+ Dim i
+ For i = 0 to UBound( sourceArray )
+ If sourceArray(i) = value Then
+ InArray = True
+ Exit Function
+ End If
+ Next
+ InArray = False
+End Function
+
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,26 @@
+<%@ Page language="c#" Inherits="FredCK.FCKeditorV2.FileBrowserConnector" AutoEventWireup="false" %>
+<%--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: connector.aspx
+ * This is the File Browser Connector for ASP.NET.
+ *
+ * The code of this page if included in the FCKeditor.Net package,
+ * in the FredCK.FCKeditorV2.dll assemblyfile. So to use it you must
+ * include that DLL in your "bin" directory.
+ *
+ * To download the FCKeditor.Net package, go to our official web site:
+ * http://www.fckeditor.net
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+--%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/config.cfm
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/config.cfm 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/config.cfm 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,80 @@
+<cfsetting enablecfoutputonly="Yes">
+
+<cfscript>
+ config = structNew();
+
+ // SECURITY: You must explicitly enable this "connector". (Set enabled to "true")
+ config.enabled = false;
+
+ config.userFilesPath = "/UserFiles/";
+
+ config.serverPath = ""; // use this to force the server path if FCKeditor is not running directly off the root of the application or the FCKeditor directory in the URL is a virtual directory or a symbolic link / junction
+
+ config.allowedExtensions = structNew();
+ config.deniedExtensions = structNew();
+
+ // config.allowedExtensions["File"] = "doc,rtf,pdf,ppt,pps,xls,csv,vnd,zip";
+ config.allowedExtensions["File"] = "";
+ config.deniedExtensions["File"] = "php,asp,aspx,ascx,jsp,cfm,cfc,pl,bat,exe,com,dll,vbs,js,reg";
+
+ config.allowedExtensions["Image"] = "png,gif,jpg,jpeg,bmp";
+ config.deniedExtensions["Image"] = "";
+
+ config.allowedExtensions["Flash"] = "swf,fla";
+ config.deniedExtensions["Flash"] = "";
+
+ config.allowedExtensions["Media"] = "swf,fla,jpg,gif,jpeg,png,avi,mpg,mpeg,mp3,mp4,m4a,wma,wmv,wav,mid,midi,rmi,rm,ram,rmvb,mov,qt";
+ config.deniedExtensions["Media"] = "";
+</cfscript>
+
+<!--- code to maintain backwards compatibility with previous version of cfm connector --->
+<cfif isDefined("application.userFilesPath")>
+
+ <cflock scope="application" type="readonly" timeout="5">
+ <cfset config.userFilesPath = application.userFilesPath>
+ </cflock>
+
+<cfelseif isDefined("server.userFilesPath")>
+
+ <cflock scope="server" type="readonly" timeout="5">
+ <cfset config.userFilesPath = server.userFilesPath>
+ </cflock>
+
+</cfif>
+
+<!--- look for config struct in request, application and server scopes --->
+<cfif isDefined("request.FCKeditor") and isStruct(request.FCKeditor)>
+
+ <cfset variables.FCKeditor = request.FCKeditor>
+
+<cfelseif isDefined("application.FCKeditor") and isStruct(application.FCKeditor)>
+
+ <cflock scope="application" type="readonly" timeout="5">
+ <cfset variables.FCKeditor = duplicate(application.FCKeditor)>
+ </cflock>
+
+<cfelseif isDefined("server.FCKeditor") and isStruct(server.FCKeditor)>
+
+ <cflock scope="server" type="readonly" timeout="5">
+ <cfset variables.FCKeditor = duplicate(server.FCKeditor)>
+ </cflock>
+
+</cfif>
+
+<cfif isDefined("FCKeditor")>
+
+ <!--- copy key values from external to local config (i.e. override default config as required) --->
+ <cfscript>
+ function structCopyKeys(stFrom, stTo) {
+ for ( key in stFrom ) {
+ if ( isStruct(stFrom[key]) ) {
+ structCopyKeys(stFrom[key],stTo[key]);
+ } else {
+ stTo[key] = stFrom[key];
+ }
+ }
+ }
+ structCopyKeys(FCKeditor, config);
+ </cfscript>
+
+</cfif>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/connector.cfm
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/connector.cfm 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/cfm/connector.cfm 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,349 @@
+<cfsetting enablecfoutputonly="yes" showdebugoutput="no">
+<!--- @Packager.Header
+<FileDescription>
+ File Browser connector for ColdFusion.
+ (based on the original CF connector by Hendrik Kramer - hk at lwd.de)
+
+ Note:
+ FCKeditor requires that the connector responds with UTF-8 encoded XML.
+ As ColdFusion 5 does not fully support UTF-8 encoding, we force ASCII
+ file and folder names in this connector to allow CF5 send a UTF-8
+ encoded response - code points under 127 in UTF-8 are stored using a
+ single byte, using the same encoding as ASCII, which is damn handy.
+ This is all grand for the English speakers, like meself, but I dunno
+ how others are gonna take to it. Well, the previous version of this
+ connector already did this with file names and nobody seemed to mind,
+ so fingers-crossed nobody will mind their folder names being munged too.
+
+</FileDescription>
+<Author name="Mark Woods" email="mark at thickpaddy.com" />
+--->
+
+<cfparam name="url.command">
+<cfparam name="url.type">
+<cfparam name="url.currentFolder">
+<!--- note: no serverPath url parameter - see config.cfm if you need to set the serverPath manually --->
+
+<cfinclude template="config.cfm">
+
+<cfscript>
+ userFilesPath = config.userFilesPath;
+ lAllowedExtensions = config.allowedExtensions[url.type];
+ lDeniedExtensions = config.deniedExtensions[url.type];
+
+ // make sure the user files path is correctly formatted
+ userFilesPath = replace(userFilesPath, "\", "/", "ALL");
+ userFilesPath = replace(userFilesPath, '//', '/', 'ALL');
+ if ( right(userFilesPath,1) neq "/" ) {
+ userFilesPath = userFilesPath & "/";
+ }
+ if ( left(userFilesPath,1) neq "/" ) {
+ userFilesPath = "/" & userFilesPath;
+ }
+
+ // make sure the current folder is correctly formatted
+ url.currentFolder = replace(url.currentFolder, "\", "/", "ALL");
+ url.currentFolder = replace(url.currentFolder, '//', '/', 'ALL');
+ if ( right(url.currentFolder,1) neq "/" ) {
+ url.currentFolder = url.currentFolder & "/";
+ }
+ if ( left(url.currentFolder,1) neq "/" ) {
+ url.currentFolder = "/" & url.currentFolder;
+ }
+
+ if ( find("/",getBaseTemplatePath()) neq 0 ) {
+ fs = "/";
+ } else {
+ fs = "\";
+ }
+
+ // Get the base physical path to the web root for this application. The code to determine the path automatically assumes that
+ // the "FCKeditor" directory in the http request path is directly off the web root for the application and that it's not a
+ // virtual directory or a symbolic link / junction. Use the serverPath config setting to force a physical path if necessary.
+ if ( len(config.serverPath) ) {
+ serverPath = config.serverPath;
+ } else {
+ serverPath = replaceNoCase(getBaseTemplatePath(),replace(cgi.script_name,"/",fs,"all"),"");
+ }
+ if ( right(serverPath,1) neq fs ) {
+ serverPath = serverPath & fs;
+ }
+
+ // map the user files path to a physical directory
+ userFilesServerPath = serverPath & replace(userFilesPath,"/",fs,"all");
+
+ xmlContent = ""; // append to this string to build content
+</cfscript>
+
+<!--- create directories in physical path if they don't already exist --->
+<cfset currentPath = serverPath>
+<cftry>
+
+ <cfloop list="#userFilesPath#" index="name" delimiters="/">
+
+ <cfif not directoryExists(currentPath & fs & name)>
+
+ <cfdirectory action="create" directory="#currentPath##name#" mode="755">
+
+ </cfif>
+
+ <cfset currentPath = currentPath & fs & name>
+
+ </cfloop>
+
+ <!--- create sub-directory for file type if it doesn't already exist --->
+ <cfif not directoryExists(userFilesServerPath & fs & url.type)>
+
+ <cfdirectory action="create" directory="#userFilesServerPath##url.type#" mode="755">
+
+ </cfif>
+
+<cfcatch>
+
+ <!--- this should only occur as a result of a permissions problem --->
+ <cfset xmlContent = "<Error number=""103"" />">
+
+</cfcatch>
+</cftry>
+
+<cfif not config.enabled>
+
+ <cfset xmlContent = "<Error number=""1"" text=""This connector is disabled. Please check the 'editor/filemanager/browser/default/connectors/cfm/config.cfm' file"" />">
+
+<cfelseif find("..",url.currentFolder)>
+
+ <cfset xmlContent = "<Error number=""102"" />">
+
+</cfif>
+
+<cfif not len(xmlContent)>
+
+ <!--- no errors thus far - run command --->
+
+ <!--- we need to know the physical path to the current folder for all commands --->
+ <cfset currentFolderPath = userFilesServerPath & url.type & replace(url.currentFolder,"/",fs,"all")>
+
+ <cfswitch expression="#url.command#">
+
+
+ <cfcase value="FileUpload">
+
+ <cfset fileName = "">
+ <cfset fileExt = "">
+
+ <cftry>
+
+ <!--- TODO: upload to a temp directory and move file if extension is allowed --->
+
+ <!--- first upload the file with an unique filename --->
+ <cffile action="upload"
+ fileField="NewFile"
+ destination="#currentFolderPath#"
+ nameConflict="makeunique"
+ mode="644"
+ attributes="normal">
+
+ <cfif ( len(lAllowedExtensions) and not listFindNoCase(lAllowedExtensions,cffile.ServerFileExt) )
+ or ( len(lDeniedExtensions) and listFindNoCase(lDeniedExtensions,cffile.ServerFileExt) )>
+
+ <cfset errorNumber = "202">
+ <cffile action="delete" file="#cffile.ServerDirectory##fs##cffile.ServerFile#">
+
+ <cfelse>
+
+ <cfscript>
+ errorNumber = 0;
+ fileName = cffile.ClientFileName;
+ fileExt = cffile.ServerFileExt;
+
+ // munge filename for html download. Only a-z, 0-9, _, - and . are allowed
+ if( reFind("[^A-Za-z0-9_\-\.]", fileName) ) {
+ fileName = reReplace(fileName, "[^A-Za-z0-9\-\.]", "_", "ALL");
+ fileName = reReplace(fileName, "_{2,}", "_", "ALL");
+ fileName = reReplace(fileName, "([^_]+)_+$", "\1", "ALL");
+ fileName = reReplace(fileName, "$_([^_]+)$", "\1", "ALL");
+ }
+
+ // When the original filename already exists, add numbers (0), (1), (2), ... at the end of the filename.
+ if( compare( cffile.ServerFileName, fileName ) ) {
+ counter = 0;
+ tmpFileName = fileName;
+ while( fileExists("#currentFolderPath##fileName#.#fileExt#") ) {
+ counter = counter + 1;
+ fileName = tmpFileName & '(#counter#)';
+ }
+ }
+ </cfscript>
+
+ <!--- Rename the uploaded file, if neccessary --->
+ <cfif compare(cffile.ServerFileName,fileName)>
+
+ <cfset errorNumber = "201">
+ <cffile
+ action="rename"
+ source="#currentFolderPath##cffile.ServerFileName#.#cffile.ServerFileExt#"
+ destination="#currentFolderPath##fileName#.#fileExt#"
+ mode="644"
+ attributes="normal">
+
+ </cfif>
+
+ </cfif>
+
+ <cfcatch type="Any">
+
+ <cfset errorNumber = "202">
+
+ </cfcatch>
+
+ </cftry>
+
+
+ <cfif errorNumber eq 201>
+
+ <!--- file was changed (201), submit the new filename --->
+ <cfoutput>
+ <script type="text/javascript">
+ window.parent.frames['frmUpload'].OnUploadCompleted(#errorNumber#,'#replace( fileName & "." & fileExt, "'", "\'", "ALL")#');
+ </script>
+ </cfoutput>
+
+ <cfelse>
+
+ <!--- file was uploaded succesfully(0) or an error occured(202). Submit only the error code. --->
+ <cfoutput>
+ <script type="text/javascript">
+ window.parent.frames['frmUpload'].OnUploadCompleted(#errorNumber#);
+ </script>
+ </cfoutput>
+
+ </cfif>
+
+ <cfabort>
+
+ </cfcase>
+
+
+ <cfcase value="GetFolders">
+
+ <!--- Sort directories first, name ascending --->
+ <cfdirectory
+ action="list"
+ directory="#currentFolderPath#"
+ name="qDir"
+ sort="type,name">
+
+ <cfscript>
+ i=1;
+ folders = "";
+ while( i lte qDir.recordCount ) {
+ if( not compareNoCase( qDir.type[i], "FILE" ))
+ break;
+ if( not listFind(".,..", qDir.name[i]) )
+ folders = folders & '<Folder name="#qDir.name[i]#" />';
+ i=i+1;
+ }
+
+ xmlContent = xmlContent & '<Folders>' & folders & '</Folders>';
+ </cfscript>
+
+ </cfcase>
+
+
+ <cfcase value="GetFoldersAndFiles">
+
+ <!--- Sort directories first, name ascending --->
+ <cfdirectory
+ action="list"
+ directory="#currentFolderPath#"
+ name="qDir"
+ sort="type,name">
+
+ <cfscript>
+ i=1;
+ folders = "";
+ files = "";
+ while( i lte qDir.recordCount ) {
+ if( not compareNoCase( qDir.type[i], "DIR" ) and not listFind(".,..", qDir.name[i]) ) {
+ folders = folders & '<Folder name="#qDir.name[i]#" />';
+ } else if( not compareNoCase( qDir.type[i], "FILE" ) ) {
+ fileSizeKB = round(qDir.size[i] / 1024);
+ files = files & '<File name="#qDir.name[i]#" size="#IIf( fileSizeKB GT 0, DE( fileSizeKB ), 1)#" />';
+ }
+ i=i+1;
+ }
+
+ xmlContent = xmlContent & '<Folders>' & folders & '</Folders>';
+ xmlContent = xmlContent & '<Files>' & files & '</Files>';
+ </cfscript>
+
+ </cfcase>
+
+
+ <cfcase value="CreateFolder">
+
+ <cfparam name="url.newFolderName" default="">
+
+ <cfscript>
+ newFolderName = url.newFolderName;
+ if( reFind("[^A-Za-z0-9_\-\.]", newFolderName) ) {
+ // Munge folder name same way as we do the filename
+ // This means folder names are always US-ASCII so we don't have to worry about CF5 and UTF-8
+ newFolderName = reReplace(newFolderName, "[^A-Za-z0-9\-\.]", "_", "all");
+ newFolderName = reReplace(newFolderName, "_{2,}", "_", "all");
+ newFolderName = reReplace(newFolderName, "([^_]+)_+$", "\1", "all");
+ newFolderName = reReplace(newFolderName, "$_([^_]+)$", "\1", "all");
+ }
+ </cfscript>
+
+ <cfif not len(newFolderName) or len(newFolderName) gt 255>
+ <cfset errorNumber = 102>
+ <cfelseif directoryExists(currentFolderPath & newFolderName)>
+ <cfset errorNumber = 101>
+ <cfelseif reFind("^\.\.",newFolderName)>
+ <cfset errorNumber = 103>
+ <cfelse>
+ <cfset errorNumber = 0>
+
+ <cftry>
+ <cfdirectory
+ action="create"
+ directory="#currentFolderPath##newFolderName#"
+ mode="755">
+ <cfcatch>
+ <!---
+ un-resolvable error numbers in ColdFusion:
+ * 102 : Invalid folder name.
+ * 103 : You have no permissions to create the folder.
+ --->
+ <cfset errorNumber = 110>
+ </cfcatch>
+ </cftry>
+ </cfif>
+
+ <cfset xmlContent = xmlContent & '<Error number="#errorNumber#" />'>
+
+ </cfcase>
+
+
+ <cfdefaultcase>
+
+ <cfthrow type="fckeditor.connector" message="Illegal command: #url.command#">
+
+ </cfdefaultcase>
+
+
+ </cfswitch>
+
+</cfif>
+
+<cfscript>
+ xmlHeader = '<?xml version="1.0" encoding="utf-8" ?><Connector command="#url.command#" resourceType="#url.type#">';
+ xmlHeader = xmlHeader & '<CurrentFolder path="#url.currentFolder#" url="#userFilesPath##url.type##url.currentFolder#" />';
+ xmlFooter = '</Connector>';
+</cfscript>
+
+<cfheader name="Pragma" value="no-cache">
+<cfheader name="Cache-Control" value="no-cache, no-store, must-revalidate">
+<cfcontent reset="true" type="text/xml; charset=UTF-8">
+<cfoutput>#xmlHeader##xmlContent##xmlFooter#</cfoutput>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/config.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/config.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/config.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,56 @@
+[//lasso
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: config.lasso
+ * Configuration file for the File Manager Connector for Lasso.
+ *
+ * File Authors:
+ * Jason Huck (jason.huck at corefive.com)
+
+ */
+
+
+
+
+ /*.....................................................................
+ The connector uses the file tags, which require authentication. Enter a
+ valid username and password from Lasso admin for a group with file tags
+ permissions for uploads and the path you define in UserFilesPath below.
+ */
+
+ var('connection') = array(
+ -username='xxxxxxxx',
+ -password='xxxxxxxx'
+ );
+
+
+ /*.....................................................................
+ Set the base path for files that users can upload and browse (relative
+ to server root).
+
+ Set which file extensions are allowed and/or denied for each file type.
+ */
+ var('config') = map(
+ 'UserFilesPath' = '/UserFiles/',
+ 'AllowedExtensions' = map(
+ 'File' = array(),
+ 'Image' = array('jpg','gif','jpeg','png'),
+ 'Flash' = array('swf','fla'),
+ 'Media' = array('swf','fla','jpg','gif','jpeg','png','avi','mpg','mpeg')
+ ),
+ 'DeniedExtensions' = map(
+ 'File' = array('php','asp','aspx','ascx','jsp','cfm','cfc','pl','bat','exe','dll','reg','inc','lasso','lassoapp','cgi'),
+ 'Image' = array(),
+ 'Flash' = array(),
+ 'Media' = array()
+ )
+ );
+]
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/connector.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/connector.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/lasso/connector.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,248 @@
+[//lasso
+/*
+
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+*
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: connector.lasso
+ * This is the File Manager Connector for Lasso.
+ *
+ * File Authors:
+ * Jason Huck (jason.huck at corefive.com)
+
+ */
+
+
+
+
+ /*.....................................................................
+ Include global configuration. See config.lasso for details.
+ */
+ include('config.lasso');
+
+
+ /*.....................................................................
+ Translate current date/time to GMT for custom header.
+ */
+ var('headerDate') = date_localtogmt(date)->format('%a, %d %b %Y %T GMT');
+
+
+ /*.....................................................................
+ Convert query string parameters to variables and initialize output.
+ */
+ var(
+ 'Command' = action_param('Command'),
+ 'Type' = action_param('Type'),
+ 'CurrentFolder' = action_param('CurrentFolder'),
+ 'ServerPath' = action_param('ServerPath'),
+ 'NewFolderName' = action_param('NewFolderName'),
+ 'NewFile' = null,
+ 'NewFileName' = string,
+ 'OrigFilePath' = string,
+ 'NewFilePath' = string,
+ 'commandData' = string,
+ 'folders' = '\t<Folders>\n',
+ 'files' = '\t<Files>\n',
+ 'errorNumber' = integer,
+ 'responseType' = 'xml',
+ 'uploadResult' = '0'
+ );
+
+
+ /*.....................................................................
+ Calculate the path to the current folder.
+ */
+ $ServerPath == '' ? $ServerPath = $config->find('UserFilesPath');
+
+ var('currentFolderURL' = $ServerPath
+ + action_param('Type')
+ + action_param('CurrentFolder')
+ );
+
+
+ /*.....................................................................
+ Build the appropriate response per the 'Command' parameter. Wrap the
+ entire process in an inline for file tag permissions.
+ */
+ inline($connection);
+ select($Command);
+ /*.............................................................
+ List all subdirectories in the 'Current Folder' directory.
+ */
+ case('GetFolders');
+ $commandData += '\t<Folders>\n';
+
+ iterate(file_listdirectory($currentFolderURL), local('this'));
+ #this->endswith('/') ? $commandData += '\t\t<Folder name="' + #this->removetrailing('/')& + '" />\n';
+ /iterate;
+
+ $commandData += '\t</Folders>\n';
+
+
+ /*.............................................................
+ List both files and folders in the 'Current Folder' directory.
+ Include the file sizes in kilobytes.
+ */
+ case('GetFoldersAndFiles');
+ iterate(file_listdirectory($currentFolderURL), local('this'));
+ if(#this->endswith('/'));
+ $folders += '\t\t<Folder name="' + #this->removetrailing('/')& + '" />\n';
+ else;
+ local('size') = file_getsize($currentFolderURL + #this) / 1024;
+ $files += '\t\t<File name="' + #this + '" size="' + #size + '" />\n';
+ /if;
+ /iterate;
+
+ $folders += '\t</Folders>\n';
+ $files += '\t</Files>\n';
+
+ $commandData += $folders + $files;
+
+
+ /*.............................................................
+ Create a directory 'NewFolderName' within the 'Current Folder.'
+ */
+ case('CreateFolder');
+ var('newFolder' = $currentFolderURL + $NewFolderName + '/');
+ file_create($newFolder);
+
+
+ /*.........................................................
+ Map Lasso's file error codes to FCKEditor's error codes.
+ */
+ select(file_currenterror( -errorcode));
+ case(0);
+ $errorNumber = 0;
+ case( -9983);
+ $errorNumber = 101;
+ case( -9976);
+ $errorNumber = 102;
+ case( -9977);
+ $errorNumber = 102;
+ case( -9961);
+ $errorNumber = 103;
+ case;
+ $errorNumber = 110;
+ /select;
+
+ $commandData += '<Error number="' + $errorNumber + '" />\n';
+
+
+ /*.............................................................
+ Process an uploaded file.
+ */
+ case('FileUpload');
+ /*.........................................................
+ This is the only command that returns an HTML response.
+ */
+ $responseType = 'html';
+
+
+ /*.........................................................
+ Was a file actually uploaded?
+ */
+ file_uploads->size ? $NewFile = file_uploads->get(1) | $uploadResult = '202';
+
+ if($uploadResult == '0');
+ /*.....................................................
+ Split the file's extension from the filename in order
+ to follow the API's naming convention for duplicate
+ files. (Test.txt, Test(1).txt, Test(2).txt, etc.)
+ */
+ $NewFileName = $NewFile->find('OrigName');
+ $OrigFilePath = $currentFolderURL + $NewFileName;
+ $NewFilePath = $OrigFilePath;
+ local('fileExtension') = '.' + $NewFile->find('OrigExtension');
+ local('shortFileName') = $NewFileName->removetrailing(#fileExtension)&;
+
+
+ /*.....................................................
+ Make sure the file extension is allowed.
+ */
+ if($config->find('DeniedExtensions')->find($Type) >> $NewFile->find('OrigExtension'));
+ $uploadResult = '202';
+ else;
+ /*.................................................
+ Rename the target path until it is unique.
+ */
+ while(file_exists($NewFilePath));
+ $NewFilePath = $currentFolderURL + #shortFileName + '(' + loop_count + ')' + #fileExtension;
+ /while;
+
+
+ /*.................................................
+ Copy the uploaded file to its final location.
+ */
+ file_copy($NewFile->find('path'), $NewFilePath);
+
+
+ /*.................................................
+ Set the error code for the response. Note whether
+ the file had to be renamed.
+ */
+ select(file_currenterror( -errorcode));
+ case(0);
+ $OrigFilePath != $NewFilePath ? $uploadResult = '201, \'' + $NewFilePath->split('/')->last + '\'';
+ case;
+ $uploadResult = '202';
+ /select;
+ /if;
+ /if;
+
+
+ /*.........................................................
+ Set the HTML response.
+ */
+ $__html_reply__ = '\
+<script type="text/javascript">
+ window.parent.frames[\'frmUpload\'].OnUploadCompleted(' + $uploadResult + ');
+</script>
+ ';
+ /select;
+ /inline;
+
+
+ /*.....................................................................
+ Send a custom header for xml responses.
+ */
+ if($responseType == 'xml');
+ header;
+]
+HTTP/1.0 200 OK
+Date: [$headerDate]
+Server: Lasso Professional [lasso_version( -lassoversion)]
+Expires: Mon, 26 Jul 1997 05:00:00 GMT
+Last-Modified: [$headerDate]
+Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
+Pragma: no-cache
+Keep-Alive: timeout=15, max=98
+Connection: Keep-Alive
+Content-Type: text/xml; charset=utf-8
+[//lasso
+ /header;
+
+
+ /*.................................................................
+ Set the content type encoding for Lasso.
+ */
+ content_type('text/xml; charset=utf-8');
+
+
+ /*.................................................................
+ Wrap the response as XML and output.
+ */
+ $__html_reply__ = '\
+<?xml version="1.0" encoding="utf-8" ?>
+<Connector command="' + $Command + '" resourceType="' + $Type + '">
+ <CurrentFolder path="' + $CurrentFolder + '" url="' + $currentFolderURL + '" />
+' + $commandData + '
+</Connector>
+ ';
+ /if;
+]
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/basexml.pl 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,59 @@
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: basexml.pl
+# This is the File Manager Connector for Perl.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+sub CreateXmlHeader
+{
+ local($command,$resourceType,$currentFolder) = @_;
+
+ # Create the XML document header.
+ print '<?xml version="1.0" encoding="utf-8" ?>';
+
+ # Create the main "Connector" node.
+ print '<Connector command="' . $command . '" resourceType="' . $resourceType . '">';
+
+ # Add the current folder node.
+ print '<CurrentFolder path="' . ConvertToXmlAttribute($currentFolder) . '" url="' . ConvertToXmlAttribute(GetUrlFromPath($resourceType,$currentFolder)) . '" />';
+}
+
+sub CreateXmlFooter
+{
+ print '</Connector>';
+}
+
+sub SendError
+{
+ local( $number, $text ) = @_;
+
+ print << "_HTML_HEAD_";
+Content-Type:text/xml; charset=utf-8
+Pragma: no-cache
+Cache-Control: no-cache
+Expires: Thu, 01 Dec 1994 16:00:00 GMT
+
+_HTML_HEAD_
+
+ # Create the XML document header
+ print '<?xml version="1.0" encoding="utf-8" ?>' ;
+
+ print '<Connector><Error number="' . $number . '" text="' . &specialchar_cnv( $text ) . '" /></Connector>' ;
+
+ exit ;
+}
+
+1;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/commands.pl 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,154 @@
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: commands.pl
+# This is the File Manager Connector for Perl.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+sub GetFolders
+{
+
+ local($resourceType, $currentFolder) = @_;
+
+ # Map the virtual path to the local server path.
+ $sServerDir = &ServerMapFolder($resourceType, $currentFolder);
+ print "<Folders>"; # Open the "Folders" node.
+
+ opendir(DIR,"$sServerDir");
+ @files = grep(!/^\.\.?$/,readdir(DIR));
+ closedir(DIR);
+
+ foreach $sFile (@files) {
+ if($sFile != '.' && $sFile != '..' && (-d "$sServerDir$sFile")) {
+ $cnv_filename = &ConvertToXmlAttribute($sFile);
+ print '<Folder name="' . $cnv_filename . '" />';
+ }
+ }
+ print "</Folders>"; # Close the "Folders" node.
+}
+
+sub GetFoldersAndFiles
+{
+
+ local($resourceType, $currentFolder) = @_;
+ # Map the virtual path to the local server path.
+ $sServerDir = &ServerMapFolder($resourceType,$currentFolder);
+
+ # Initialize the output buffers for "Folders" and "Files".
+ $sFolders = '<Folders>';
+ $sFiles = '<Files>';
+
+ opendir(DIR,"$sServerDir");
+ @files = grep(!/^\.\.?$/,readdir(DIR));
+ closedir(DIR);
+
+ foreach $sFile (@files) {
+ if($sFile ne '.' && $sFile ne '..') {
+ if(-d "$sServerDir$sFile") {
+ $cnv_filename = &ConvertToXmlAttribute($sFile);
+ $sFolders .= '<Folder name="' . $cnv_filename . '" />' ;
+ } else {
+ ($iFileSize,$refdate,$filedate,$fileperm) = (stat("$sServerDir$sFile"))[7,8,9,2];
+ if($iFileSize > 0) {
+ $iFileSize = int($iFileSize / 1024);
+ if($iFileSize < 1) {
+ $iFileSize = 1;
+ }
+ }
+ $cnv_filename = &ConvertToXmlAttribute($sFile);
+ $sFiles .= '<File name="' . $cnv_filename . '" size="' . $iFileSize . '" />' ;
+ }
+ }
+ }
+ print $sFolders ;
+ print '</Folders>'; # Close the "Folders" node.
+ print $sFiles ;
+ print '</Files>'; # Close the "Files" node.
+}
+
+sub CreateFolder
+{
+
+ local($resourceType, $currentFolder) = @_;
+ $sErrorNumber = '0' ;
+ $sErrorMsg = '' ;
+
+ if($FORM{'NewFolderName'} ne "") {
+ $sNewFolderName = $FORM{'NewFolderName'};
+ # Map the virtual path to the local server path of the current folder.
+ $sServerDir = &ServerMapFolder($resourceType, $currentFolder);
+ if(-w $sServerDir) {
+ $sServerDir .= $sNewFolderName;
+ $sErrorMsg = &CreateServerFolder($sServerDir);
+ if($sErrorMsg == 0) {
+ $sErrorNumber = '0';
+ } elsif($sErrorMsg eq 'Invalid argument' || $sErrorMsg eq 'No such file or directory') {
+ $sErrorNumber = '102'; #// Path too long.
+ } else {
+ $sErrorNumber = '110';
+ }
+ } else {
+ $sErrorNumber = '103';
+ }
+ } else {
+ $sErrorNumber = '102' ;
+ }
+ # Create the "Error" node.
+ $cnv_errmsg = &ConvertToXmlAttribute($sErrorMsg);
+ print '<Error number="' . $sErrorNumber . '" originalDescription="' . $cnv_errmsg . '" />';
+}
+
+sub FileUpload
+{
+eval("use File::Copy;");
+
+ local($resourceType, $currentFolder) = @_;
+
+ $sErrorNumber = '0' ;
+ $sFileName = '' ;
+ if($new_fname) {
+ # Map the virtual path to the local server path.
+ $sServerDir = &ServerMapFolder($resourceType,$currentFolder);
+
+ # Get the uploaded file name.
+ $sFileName = $new_fname;
+ $sOriginalFileName = $sFileName;
+
+ $iCounter = 0;
+ while(1) {
+ $sFilePath = $sServerDir . $sFileName;
+ if(-e $sFilePath) {
+ $iCounter++ ;
+ ($path,$BaseName,$ext) = &RemoveExtension($sOriginalFileName);
+ $sFileName = $BaseName . '(' . $iCounter . ').' . $ext;
+ $sErrorNumber = '201';
+ } else {
+ copy("$img_dir/$new_fname","$sFilePath");
+ chmod(0777,$sFilePath);
+ unlink("$img_dir/$new_fname");
+ last;
+ }
+ }
+ } else {
+ $sErrorNumber = '202' ;
+ }
+ $sFileName =~ s/"/\\"/g;
+ print "Content-type: text/html\n\n";
+ print '<script type="text/javascript">';
+ print 'window.parent.frames["frmUpload"].OnUploadCompleted(' . $sErrorNumber . ',"' . $sFileName . '") ;';
+ print '</script>';
+ exit ;
+}
+1;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/connector.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,134 @@
+#!/usr/bin/env perl
+
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: connector.cgi
+# This is the File Manager Connector for Perl.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+# Frederico Caldeira Knabben (fredck at fckeditor.net)
+#####
+
+##
+# ATTENTION: To enable this connector, look for the "SECURITY" comment in this file.
+##
+
+## START: Hack for Windows (Not important to understand the editor code... Perl specific).
+if(Windows_check()) {
+ chdir(GetScriptPath($0));
+}
+
+sub Windows_check
+{
+ # IIS,PWS(NT/95)
+ $www_server_os = $^O;
+ # Win98 & NT(SP4)
+ if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
+ # AnHTTPd/Omni/IIS
+ if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
+ # Win Apache
+ if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
+ if($www_server_os=~ /win/i) { return(1); }
+ return(0);
+}
+
+sub GetScriptPath {
+ local($path) = @_;
+ if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
+ $path;
+}
+## END: Hack for IIS
+
+require 'util.pl';
+require 'io.pl';
+require 'basexml.pl';
+require 'commands.pl';
+require 'upload_fck.pl';
+
+##
+# SECURITY: REMOVE/COMMENT THE FOLLOWING LINE TO ENABLE THIS CONNECTOR.
+##
+&SendError( 1, 'This connector is disabled. Please check the "editor/filemanager/browser/default/connectors/perl/connector.cgi" file' ) ;
+
+ &read_input();
+
+ if($FORM{'ServerPath'} ne "") {
+ $GLOBALS{'UserFilesPath'} = $FORM{'ServerPath'};
+ if(!($GLOBALS{'UserFilesPath'} =~ /\/$/)) {
+ $GLOBALS{'UserFilesPath'} .= '/' ;
+ }
+ } else {
+ $GLOBALS{'UserFilesPath'} = '/UserFiles/';
+ }
+
+ # Map the "UserFiles" path to a local directory.
+ $rootpath = &GetRootPath();
+ $GLOBALS{'UserFilesDirectory'} = $rootpath . $GLOBALS{'UserFilesPath'};
+
+ &DoResponse();
+
+sub DoResponse
+{
+
+ if($FORM{'Command'} eq "" || $FORM{'Type'} eq "" || $FORM{'CurrentFolder'} eq "") {
+ return ;
+ }
+ # Get the main request informaiton.
+ $sCommand = $FORM{'Command'};
+ $sResourceType = $FORM{'Type'};
+ $sCurrentFolder = $FORM{'CurrentFolder'};
+
+ # Check the current folder syntax (must begin and start with a slash).
+ if(!($sCurrentFolder =~ /\/$/)) {
+ $sCurrentFolder .= '/';
+ }
+ if(!($sCurrentFolder =~ /^\//)) {
+ $sCurrentFolder = '/' . $sCurrentFolder;
+ }
+
+ # Check for invalid folder paths (..)
+ if ( $sCurrentFolder =~ /\.\./ ) {
+ SendError( 102, "" ) ;
+ }
+
+ # File Upload doesn't have to Return XML, so it must be intercepted before anything.
+ if($sCommand eq 'FileUpload') {
+ FileUpload($sResourceType,$sCurrentFolder);
+ return ;
+ }
+
+ print << "_HTML_HEAD_";
+Content-Type:text/xml; charset=utf-8
+Pragma: no-cache
+Cache-Control: no-cache
+Expires: Thu, 01 Dec 1994 16:00:00 GMT
+
+_HTML_HEAD_
+
+ &CreateXmlHeader($sCommand,$sResourceType,$sCurrentFolder);
+
+ # Execute the required command.
+ if($sCommand eq 'GetFolders') {
+ &GetFolders($sResourceType,$sCurrentFolder);
+ } elsif($sCommand eq 'GetFoldersAndFiles') {
+ &GetFoldersAndFiles($sResourceType,$sCurrentFolder);
+ } elsif($sCommand eq 'CreateFolder') {
+ &CreateFolder($sResourceType,$sCurrentFolder);
+ }
+
+ &CreateXmlFooter();
+
+ exit ;
+}
+
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/io.pl 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,127 @@
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: io.pl
+# This is the File Manager Connector for Perl.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+sub GetUrlFromPath
+{
+ local($resourceType, $folderPath) = @_;
+
+ if($resourceType eq '') {
+ $rmpath = &RemoveFromEnd($GLOBALS{'UserFilesPath'},'/');
+ return("$rmpath$folderPath");
+ } else {
+ return("$GLOBALS{'UserFilesPath'}$resourceType$folderPath");
+ }
+}
+
+sub RemoveExtension
+{
+ local($fileName) = @_;
+ local($path, $base, $ext);
+ if($fileName !~ /\./) {
+ $fileName .= '.';
+ }
+ if($fileName =~ /([^\\\/]*)\.(.*)$/) {
+ $base = $1;
+ $ext = $2;
+ if($fileName =~ /(.*)$base\.$ext$/) {
+ $path = $1;
+ }
+ }
+ return($path,$base,$ext);
+
+}
+
+sub ServerMapFolder
+{
+ local($resourceType,$folderPath) = @_;
+
+ # Get the resource type directory.
+ $sResourceTypePath = $GLOBALS{'UserFilesDirectory'} . $resourceType . '/';
+
+ # Ensure that the directory exists.
+ &CreateServerFolder($sResourceTypePath);
+
+ # Return the resource type directory combined with the required path.
+ $rmpath = &RemoveFromStart($folderPath,'/');
+ return("$sResourceTypePath$rmpath");
+}
+
+sub GetParentFolder
+{
+ local($folderPath) = @_;
+
+ $folderPath =~ s/[\/][^\/]+[\/]?$//g;
+ return $folderPath;
+}
+
+sub CreateServerFolder
+{
+ local($folderPath) = @_;
+
+ $sParent = &GetParentFolder($folderPath);
+ # Check if the parent exists, or create it.
+ if(!(-e $sParent)) {
+ $sErrorMsg = &CreateServerFolder($sParent);
+ if($sErrorMsg == 1) {
+ return(1);
+ }
+ }
+ if(!(-e $folderPath)) {
+ umask(000);
+ mkdir("$folderPath",0777);
+ chmod(0777,"$folderPath");
+ return(0);
+ } else {
+ return(1);
+ }
+}
+
+sub GetRootPath
+{
+#use Cwd;
+
+# my $dir = getcwd;
+# print $dir;
+# $dir =~ s/$ENV{'DOCUMENT_ROOT'}//g;
+# print $dir;
+# return($dir);
+
+# $wk = $0;
+# $wk =~ s/\/connector\.cgi//g;
+# if($wk) {
+# $current_dir = $wk;
+# } else {
+# $current_dir = `pwd`;
+# }
+# return($current_dir);
+use Cwd;
+
+ if($ENV{'DOCUMENT_ROOT'}) {
+ $dir = $ENV{'DOCUMENT_ROOT'};
+ } else {
+ my $dir = getcwd;
+ $workdir =~ s/\/connector\.cgi//g;
+ $dir =~ s/$workdir//g;
+ }
+ return($dir);
+
+
+
+}
+1;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/upload_fck.pl 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,663 @@
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: upload_fck.pl
+# This is the File Manager Connector for Perl.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+# image data save dir
+$img_dir = './temp/';
+
+
+# File size max(unit KB)
+$MAX_CONTENT_SIZE = 30000;
+
+# Filelock (1=use,0=not use)
+$PM{'flock'} = '1';
+
+
+# upload Content-Type list
+my %UPLOAD_CONTENT_TYPE_LIST = (
+ 'image/(x-)?png' => 'png', # PNG image
+ 'image/p?jpe?g' => 'jpg', # JPEG image
+ 'image/gif' => 'gif', # GIF image
+ 'image/x-xbitmap' => 'xbm', # XBM image
+
+ 'image/(x-(MS-)?)?bmp' => 'bmp', # Windows BMP image
+ 'image/pict' => 'pict', # Macintosh PICT image
+ 'image/tiff' => 'tif', # TIFF image
+ 'application/pdf' => 'pdf', # PDF image
+ 'application/x-shockwave-flash' => 'swf', # Shockwave Flash
+
+ 'video/(x-)?msvideo' => 'avi', # Microsoft Video
+ 'video/quicktime' => 'mov', # QuickTime Video
+ 'video/mpeg' => 'mpeg', # MPEG Video
+ 'video/x-mpeg2' => 'mpv2', # MPEG2 Video
+
+ 'audio/(x-)?midi?' => 'mid', # MIDI Audio
+ 'audio/(x-)?wav' => 'wav', # WAV Audio
+ 'audio/basic' => 'au', # ULAW Audio
+ 'audio/mpeg' => 'mpga', # MPEG Audio
+
+ 'application/(x-)?zip(-compressed)?' => 'zip', # ZIP Compress
+
+ 'text/html' => 'html', # HTML
+ 'text/plain' => 'txt', # TEXT
+ '(?:application|text)/(?:rtf|richtext)' => 'rtf', # RichText
+
+ 'application/msword' => 'doc', # Microsoft Word
+ 'application/vnd.ms-excel' => 'xls', # Microsoft Excel
+
+ ''
+);
+
+# Upload is permitted.
+# A regular expression is possible.
+my %UPLOAD_EXT_LIST = (
+ 'png' => 'PNG image',
+ 'p?jpe?g|jpe|jfif|pjp' => 'JPEG image',
+ 'gif' => 'GIF image',
+ 'xbm' => 'XBM image',
+
+ 'bmp|dib|rle' => 'Windows BMP image',
+ 'pi?ct' => 'Macintosh PICT image',
+ 'tiff?' => 'TIFF image',
+ 'pdf' => 'PDF image',
+ 'swf' => 'Shockwave Flash',
+
+ 'avi' => 'Microsoft Video',
+ 'moo?v|qt' => 'QuickTime Video',
+ 'm(p(e?gv?|e|v)|1v)' => 'MPEG Video',
+ 'mp(v2|2v)' => 'MPEG2 Video',
+
+ 'midi?|kar|smf|rmi|mff' => 'MIDI Audio',
+ 'wav' => 'WAVE Audio',
+ 'au|snd' => 'ULAW Audio',
+ 'mp(e?ga|2|a|3)|abs' => 'MPEG Audio',
+
+ 'zip' => 'ZIP Compress',
+ 'lzh' => 'LZH Compress',
+ 'cab' => 'CAB Compress',
+
+ 'd?html?' => 'HTML',
+ 'rtf|rtx' => 'RichText',
+ 'txt|text' => 'Text',
+
+ ''
+);
+
+
+# sjis or euc
+my $CHARCODE = 'sjis';
+
+$TRANS_2BYTE_CODE = 0;
+
+##############################################################################
+# Summary
+#
+# Form Read input
+#
+# Parameters
+# Returns
+# Memo
+##############################################################################
+sub read_input
+{
+eval("use File::Copy;");
+eval("use File::Path;");
+
+ my ($FORM) = @_;
+
+
+ mkdir($img_dir,0777);
+ chmod(0777,$img_dir);
+
+ undef $img_data_exists;
+ undef @NEWFNAMES;
+ undef @NEWFNAME_DATA;
+
+ if($ENV{'CONTENT_LENGTH'} > 10000000 || $ENV{'CONTENT_LENGTH'} > $MAX_CONTENT_SIZE * 1024) {
+ &upload_error(
+ 'Size Error',
+ sprintf(
+ "Transmitting size is too large.MAX <strong>%d KB</strong> Now Size <strong>%d KB</strong>(<strong>%d bytes</strong> Over)",
+ $MAX_CONTENT_SIZE,
+ int($ENV{'CONTENT_LENGTH'} / 1024),
+ $ENV{'CONTENT_LENGTH'} - $MAX_CONTENT_SIZE * 1024
+ )
+ );
+ }
+
+ my $Buffer;
+ if($ENV{'CONTENT_TYPE'} =~ /multipart\/form-data/) {
+ # METHOD POST only
+ return unless($ENV{'CONTENT_LENGTH'});
+
+ binmode(STDIN);
+ # STDIN A pause character is detected.'(MacIE3.0 boundary of $ENV{'CONTENT_TYPE'} cannot be trusted.)
+ my $Boundary = <STDIN>;
+ $Boundary =~ s/\x0D\x0A//;
+ $Boundary = quotemeta($Boundary);
+ while(<STDIN>) {
+ if(/^\s*Content-Disposition:/i) {
+ my($name,$ContentType,$FileName);
+ # form data get
+ if(/\bname="([^"]+)"/i || /\bname=([^\s:;]+)/i) {
+ $name = $1;
+ $name =~ tr/+/ /;
+ $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+ &Encode(\$name);
+ }
+ if(/\bfilename="([^"]*)"/i || /\bfilename=([^\s:;]*)/i) {
+ $FileName = $1 || 'unknown';
+ }
+ # head read
+ while(<STDIN>) {
+ last if(! /\w/);
+ if(/^\s*Content-Type:\s*"([^"]+)"/i || /^\s*Content-Type:\s*([^\s:;]+)/i) {
+ $ContentType = $1;
+ }
+ }
+ # body read
+ $value = "";
+ while(<STDIN>) {
+ last if(/^$Boundary/o);
+ $value .= $_;
+ };
+ $lastline = $_;
+ $value =~s /\x0D\x0A$//;
+ if($value ne '') {
+ if($FileName || $ContentType) {
+ $img_data_exists = 1;
+ (
+ $FileName, #
+ $Ext, #
+ $Length, #
+ $ImageWidth, #
+ $ImageHeight, #
+ $ContentName #
+ ) = &CheckContentType(\$value,$FileName,$ContentType);
+
+ $FORM{$name} = $FileName;
+ $new_fname = $FileName;
+ push(@NEWFNAME_DATA,"$FileName\t$Ext\t$Length\t$ImageWidth\t$ImageHeight\t$ContentName");
+
+ # Multi-upload correspondence
+ push(@NEWFNAMES,$new_fname);
+ open(OUT,">$img_dir/$new_fname");
+ binmode(OUT);
+ eval "flock(OUT,2);" if($PM{'flock'} == 1);
+ print OUT $value;
+ eval "flock(OUT,8);" if($PM{'flock'} == 1);
+ close(OUT);
+
+ } elsif($name) {
+ $value =~ tr/+/ /;
+ $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+ &Encode(\$value,'trans');
+ $FORM{$name} .= "\0" if(defined($FORM{$name}));
+ $FORM{$name} .= $value;
+ }
+ }
+ };
+ last if($lastline =~ /^$Boundary\-\-/o);
+ }
+ } elsif($ENV{'CONTENT_LENGTH'}) {
+ read(STDIN,$Buffer,$ENV{'CONTENT_LENGTH'});
+ }
+ foreach(split(/&/,$Buffer),split(/&/,$ENV{'QUERY_STRING'})) {
+ my($name, $value) = split(/=/);
+ $name =~ tr/+/ /;
+ $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+ $value =~ tr/+/ /;
+ $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
+
+ &Encode(\$name);
+ &Encode(\$value,'trans');
+ $FORM{$name} .= "\0" if(defined($FORM{$name}));
+ $FORM{$name} .= $value;
+
+ }
+
+}
+
+##############################################################################
+# Summary
+#
+# CheckContentType
+#
+# Parameters
+# Returns
+# Memo
+##############################################################################
+sub CheckContentType
+{
+
+ my($DATA,$FileName,$ContentType) = @_;
+ my($Ext,$ImageWidth,$ImageHeight,$ContentName,$Infomation);
+ my $DataLength = length($$DATA);
+
+ # An unknown file type
+
+ $_ = $ContentType;
+ my $UnknownType = (
+ !$_
+ || /^application\/(x-)?macbinary$/i
+ || /^application\/applefile$/i
+ || /^application\/octet-stream$/i
+ || /^text\/plane$/i
+ || /^x-unknown-content-type/i
+ );
+
+ # MacBinary(Mac Unnecessary data are deleted.)
+ if($UnknownType || $ENV{'HTTP_USER_AGENT'} =~ /Macintosh|Mac_/) {
+ if($DataLength > 128 && !unpack("C",substr($$DATA,0,1)) && !unpack("C",substr($$DATA,74,1)) && !unpack("C",substr($$DATA,82,1)) ) {
+ my $MacBinary_ForkLength = unpack("N", substr($$DATA, 83, 4)); # ForkLength Get
+ my $MacBinary_FileName = quotemeta(substr($$DATA, 2, unpack("C",substr($$DATA, 1, 1))));
+ if($MacBinary_FileName && $MacBinary_ForkLength && $DataLength >= $MacBinary_ForkLength + 128
+ && ($FileName =~ /$MacBinary_FileName/i || substr($$DATA,102,4) eq 'mBIN')) { # DATA TOP 128byte MacBinary!!
+ $$DATA = substr($$DATA,128,$MacBinary_ForkLength);
+ my $ResourceLength = $DataLength - $MacBinary_ForkLength - 128;
+ $DataLength = $MacBinary_ForkLength;
+ }
+ }
+ }
+
+ # A file name is changed into EUC.
+# &jcode::convert(\$FileName,'euc',$FormCodeDefault);
+# &jcode::h2z_euc(\$FileName);
+ $FileName =~ s/^.*\\//; # Windows, Mac
+ $FileName =~ s/^.*\///; # UNIX
+ $FileName =~ s/&/&/g;
+ $FileName =~ s/"/"/g;
+ $FileName =~ s/</</g;
+ $FileName =~ s/>/>/g;
+#
+# if($CHARCODE ne 'euc') {
+# &jcode::convert(\$FileName,$CHARCODE,'euc');
+# }
+
+ # An extension is extracted and it changes into a small letter.
+ my $FileExt;
+ if($FileName =~ /\.(\w+)$/) {
+ $FileExt = $1;
+ $FileExt =~ tr/A-Z/a-z/;
+ }
+
+ # Executable file detection (ban on upload)
+ if($$DATA =~ /^MZ/) {
+ $Ext = 'exe';
+ }
+ # text
+ if(!$Ext && ($UnknownType || $ContentType =~ /^text\//i || $ContentType =~ /^application\/(?:rtf|richtext)$/i || $ContentType =~ /^image\/x-xbitmap$/i)
+ && ! $$DATA =~ /[\000-\006\177\377]/) {
+# $$DATA =~ s/\x0D\x0A/\n/g;
+# $$DATA =~ tr/\x0D\x0A/\n\n/;
+#
+# if(
+# $$DATA =~ /<\s*SCRIPT(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*(?:.|\n)*?\bONLOAD\s*=(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*(?:.|\n)*?\bONCLICK\s*=(?:.|\n)*?>/i
+# ) {
+# $Infomation = '(JavaScript contains)';
+# }
+# if($$DATA =~ /<\s*TABLE(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*BLINK(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*MARQUEE(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*OBJECT(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*EMBED(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*FRAME(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*APPLET(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*FORM(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*(?:.|\n)*?\bSRC\s*=(?:.|\n)*?>/i
+# || $$DATA =~ /<\s*(?:.|\n)*?\bDYNSRC\s*=(?:.|\n)*?>/i
+# ) {
+# $Infomation = '(the HTML tag which is not safe is included)';
+# }
+
+ if($FileExt =~ /^txt$/i || $FileExt =~ /^cgi$/i || $FileExt =~ /^pl$/i) { # Text File
+ $Ext = 'txt';
+ } elsif($ContentType =~ /^text\/html$/i || $FileExt =~ /html?/i || $$DATA =~ /<\s*HTML(?:.|\n)*?>/i) { # HTML File
+ $Ext = 'html';
+ } elsif($ContentType =~ /^image\/x-xbitmap$/i || $FileExt =~ /^xbm$/i) { # XBM(x-BitMap) Image
+ my $XbmName = $1;
+ my ($XbmWidth, $XbmHeight);
+ if($$DATA =~ /\#define\s*$XbmName\_width\s*(\d+)/i) {
+ $XbmWidth = $1;
+ }
+ if($$DATA =~ /\#define\s*$XbmName\_height\s*(\d+)/i) {
+ $XbmHeight = $1;
+ }
+ if($XbmWidth && $XbmHeight) {
+ $Ext = 'xbm';
+ $ImageWidth = $XbmWidth;
+ $ImageHeight = $XbmHeight;
+ }
+ } else { #
+ $Ext = 'txt';
+ }
+ }
+
+ # image
+ if(!$Ext && ($UnknownType || $ContentType =~ /^image\//i)) {
+ # PNG
+ if($$DATA =~ /^\x89PNG\x0D\x0A\x1A\x0A/) {
+ if(substr($$DATA, 12, 4) eq 'IHDR') {
+ $Ext = 'png';
+ ($ImageWidth, $ImageHeight) = unpack("N2", substr($$DATA, 16, 8));
+ }
+ } elsif($$DATA =~ /^GIF8(?:9|7)a/) { # GIF89a(modified), GIF89a, GIF87a
+ $Ext = 'gif';
+ ($ImageWidth, $ImageHeight) = unpack("v2", substr($$DATA, 6, 4));
+ } elsif($$DATA =~ /^II\x2a\x00\x08\x00\x00\x00/ || $$DATA =~ /^MM\x00\x2a\x00\x00\x00\x08/) { # TIFF
+ $Ext = 'tif';
+ } elsif($$DATA =~ /^BM/) { # BMP
+ $Ext = 'bmp';
+ } elsif($$DATA =~ /^\xFF\xD8\xFF/ || $$DATA =~ /JFIF/) { # JPEG
+ my $HeaderPoint = index($$DATA, "\xFF\xD8\xFF", 0);
+ my $Point = $HeaderPoint + 2;
+ while($Point < $DataLength) {
+ my($Maker, $MakerType, $MakerLength) = unpack("C2n",substr($$DATA,$Point,4));
+ if($Maker != 0xFF || $MakerType == 0xd9 || $MakerType == 0xda) {
+ last;
+ } elsif($MakerType >= 0xC0 && $MakerType <= 0xC3) {
+ $Ext = 'jpg';
+ ($ImageHeight, $ImageWidth) = unpack("n2", substr($$DATA, $Point + 5, 4));
+ if($HeaderPoint > 0) {
+ $$DATA = substr($$DATA, $HeaderPoint);
+ $DataLength = length($$DATA);
+ }
+ last;
+ } else {
+ $Point += $MakerLength + 2;
+ }
+ }
+ }
+ }
+
+ # audio
+ if(!$Ext && ($UnknownType || $ContentType =~ /^audio\//i)) {
+ # MIDI Audio
+ if($$DATA =~ /^MThd/) {
+ $Ext = 'mid';
+ } elsif($$DATA =~ /^\x2esnd/) { # ULAW Audio
+ $Ext = 'au';
+ } elsif($$DATA =~ /^RIFF/ || $$DATA =~ /^ID3/ && $$DATA =~ /RIFF/) {
+ my $HeaderPoint = index($$DATA, "RIFF", 0);
+ $_ = substr($$DATA, $HeaderPoint + 8, 8);
+ if(/^WAVEfmt $/) {
+ # WAVE
+ if(unpack("V",substr($$DATA, $HeaderPoint + 16, 4)) == 16) {
+ $Ext = 'wav';
+ } else { # RIFF WAVE MP3
+ $Ext = 'mp3';
+ }
+ } elsif(/^RMIDdata$/) { # RIFF MIDI
+ $Ext = 'rmi';
+ } elsif(/^RMP3data$/) { # RIFF MP3
+ $Ext = 'rmp';
+ }
+ if($ContentType =~ /^audio\//i) {
+ $Infomation .= '(RIFF '. substr($$DATA, $HeaderPoint + 8, 4). ')';
+ }
+ }
+ }
+
+ # a binary file
+ unless ($Ext) {
+ # PDF image
+ if($$DATA =~ /^\%PDF/) {
+ # Picture size is not measured.
+ $Ext = 'pdf';
+ } elsif($$DATA =~ /^FWS/) { # Shockwave Flash
+ $Ext = 'swf';
+ } elsif($$DATA =~ /^RIFF/ || $$DATA =~ /^ID3/ && $$DATA =~ /RIFF/) {
+ my $HeaderPoint = index($$DATA, "RIFF", 0);
+ $_ = substr($$DATA,$HeaderPoint + 8, 8);
+ # AVI
+ if(/^AVI LIST$/) {
+ $Ext = 'avi';
+ }
+ if($ContentType =~ /^video\//i) {
+ $Infomation .= '(RIFF '. substr($$DATA, $HeaderPoint + 8, 4). ')';
+ }
+ } elsif($$DATA =~ /^PK/) { # ZIP Compress File
+ $Ext = 'zip';
+ } elsif($$DATA =~ /^MSCF/) { # CAB Compress File
+ $Ext = 'cab';
+ } elsif($$DATA =~ /^Rar\!/) { # RAR Compress File
+ $Ext = 'rar';
+ } elsif(substr($$DATA, 2, 5) =~ /^\-lh(\d+|d)\-$/) { # LHA Compress File
+ $Infomation .= "(lh$1)";
+ $Ext = 'lzh';
+ } elsif(substr($$DATA, 325, 25) eq "Apple Video Media Handler" || substr($$DATA, 325, 30) eq "Apple \x83\x72\x83\x66\x83\x49\x81\x45\x83\x81\x83\x66\x83\x42\x83\x41\x83\x6E\x83\x93\x83\x68\x83\x89") {
+ # QuickTime
+ $Ext = 'mov';
+ }
+ }
+
+ # Header analysis failure
+ unless ($Ext) {
+ # It will be followed if it applies for the MIME type from the browser.
+ foreach (keys %UPLOAD_CONTENT_TYPE_LIST) {
+ next unless ($_);
+ if($ContentType =~ /^$_$/i) {
+ $Ext = $UPLOAD_CONTENT_TYPE_LIST{$_};
+ $ContentName = &CheckContentExt($Ext);
+ if(
+ grep {$_ eq $Ext;} (
+ 'png',
+ 'gif',
+ 'jpg',
+ 'xbm',
+ 'tif',
+ 'bmp',
+ 'pdf',
+ 'swf',
+ 'mov',
+ 'zip',
+ 'cab',
+ 'lzh',
+ 'rar',
+ 'mid',
+ 'rmi',
+ 'au',
+ 'wav',
+ 'avi',
+ 'exe'
+ )
+ ) {
+ $Infomation .= ' / Header analysis failure';
+ }
+ if($Ext ne $FileExt && &CheckContentExt($FileExt) eq $ContentName) {
+ $Ext = $FileExt;
+ }
+ last;
+ }
+ }
+ # a MIME type is unknown--It judges from an extension.
+ unless ($Ext) {
+ $ContentName = &CheckContentExt($FileExt);
+ if($ContentName) {
+ $Ext = $FileExt;
+ $Infomation .= ' / MIME type is unknown('. $ContentType. ')';
+ last;
+ }
+ }
+ }
+
+# $ContentName = &CheckContentExt($Ext) unless($ContentName);
+# if($Ext && $ContentName) {
+# $ContentName .= $Infomation;
+# } else {
+# &upload_error(
+# 'Extension Error',
+# "$FileName A not corresponding extension ($Ext)<BR>The extension which can be responded ". join(',', sort values(%UPLOAD_EXT_LIST))
+# );
+# }
+
+# # SSI Tag Deletion
+# if($Ext =~ /.?html?/ && $$DATA =~ /<\!/) {
+# foreach (
+# 'config',
+# 'echo',
+# 'exec',
+# 'flastmod',
+# 'fsize',
+# 'include'
+# ) {
+# $$DATA =~ s/\#\s*$_/\&\#35\;$_/ig
+# }
+# }
+
+ return (
+ $FileName,
+ $Ext,
+ int($DataLength / 1024 + 1),
+ $ImageWidth,
+ $ImageHeight,
+ $ContentName
+ );
+}
+
+##############################################################################
+# Summary
+#
+# Extension discernment
+#
+# Parameters
+# Returns
+# Memo
+##############################################################################
+
+sub CheckContentExt
+{
+
+ my($Ext) = @_;
+ my $ContentName;
+ foreach (keys %UPLOAD_EXT_LIST) {
+ next unless ($_);
+ if($_ && $Ext =~ /^$_$/) {
+ $ContentName = $UPLOAD_EXT_LIST{$_};
+ last;
+ }
+ }
+ return $ContentName;
+
+}
+
+##############################################################################
+# Summary
+#
+# Form decode
+#
+# Parameters
+# Returns
+# Memo
+##############################################################################
+sub Encode
+{
+
+ my($value,$Trans) = @_;
+
+# my $FormCode = &jcode::getcode($value) || $FormCodeDefault;
+# $FormCodeDefault ||= $FormCode;
+#
+# if($Trans && $TRANS_2BYTE_CODE) {
+# if($FormCode ne 'euc') {
+# &jcode::convert($value, 'euc', $FormCode);
+# }
+# &jcode::tr(
+# $value,
+# "\xA3\xB0-\xA3\xB9\xA3\xC1-\xA3\xDA\xA3\xE1-\xA3\xFA",
+# '0-9A-Za-z'
+# );
+# if($CHARCODE ne 'euc') {
+# &jcode::convert($value,$CHARCODE,'euc');
+# }
+# } else {
+# if($CHARCODE ne $FormCode) {
+# &jcode::convert($value,$CHARCODE,$FormCode);
+# }
+# }
+# if($CHARCODE eq 'euc') {
+# &jcode::h2z_euc($value);
+# } elsif($CHARCODE eq 'sjis') {
+# &jcode::h2z_sjis($value);
+# }
+
+}
+
+##############################################################################
+# Summary
+#
+# Error Msg
+#
+# Parameters
+# Returns
+# Memo
+##############################################################################
+
+sub upload_error
+{
+
+ local($error_message) = $_[0];
+ local($error_message2) = $_[1];
+
+ print "Content-type: text/html\n\n";
+ print<<EOF;
+<HTML>
+<HEAD>
+<TITLE>Error Message</TITLE></HEAD>
+<BODY>
+<table border="1" cellspacing="10" cellpadding="10">
+ <TR bgcolor="#0000B0">
+ <TD bgcolor="#0000B0" NOWRAP><font size="-1" color="white"><B>Error Message</B></font></TD>
+ </TR>
+</table>
+<UL>
+<H4> $error_message </H4>
+$error_message2 <BR>
+</UL>
+</BODY>
+</HTML>
+EOF
+ &rm_tmp_uploaded_files; # Image Temporary deletion
+ exit;
+}
+
+##############################################################################
+# Summary
+#
+# Image Temporary deletion
+#
+# Parameters
+# Returns
+# Memo
+##############################################################################
+
+sub rm_tmp_uploaded_files
+{
+ if($img_data_exists == 1){
+ sleep 1;
+ foreach $fname_list(@NEWFNAMES) {
+ if(-e "$img_dir/$fname_list") {
+ unlink("$img_dir/$fname_list");
+ }
+ }
+ }
+
+}
+1;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/perl/util.pl 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,56 @@
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: util.pl
+# This is the File Manager Connector for Perl.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+sub RemoveFromStart
+{
+ local($sourceString, $charToRemove) = @_;
+ $sPattern = '^' . $charToRemove . '+' ;
+ $sourceString =~ s/^$charToRemove+//g;
+ return $sourceString;
+}
+
+sub RemoveFromEnd
+{
+ local($sourceString, $charToRemove) = @_;
+ $sPattern = $charToRemove . '+$' ;
+ $sourceString =~ s/$charToRemove+$//g;
+ return $sourceString;
+}
+
+sub ConvertToXmlAttribute
+{
+ local($value) = @_;
+ return $value;
+# return utf8_encode(htmlspecialchars($value));
+
+}
+
+sub specialchar_cnv
+{
+ local($ch) = @_;
+
+ $ch =~ s/&/&/g; # &
+ $ch =~ s/\"/"/g; #"
+ $ch =~ s/\'/'/g; # '
+ $ch =~ s/</</g; # <
+ $ch =~ s/>/>/g; # >
+ return($ch);
+}
+
+1;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/basexml.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/basexml.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/basexml.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,68 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: basexml.php
+ * This is the File Manager Connector for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function SetXmlHeaders()
+{
+ // Prevent the browser from caching the result.
+ // Date in the past
+ header('Expires: Mon, 26 Jul 1997 05:00:00 GMT') ;
+ // always modified
+ header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT') ;
+ // HTTP/1.1
+ header('Cache-Control: no-store, no-cache, must-revalidate') ;
+ header('Cache-Control: post-check=0, pre-check=0', false) ;
+ // HTTP/1.0
+ header('Pragma: no-cache') ;
+
+ // Set the response format.
+ header( 'Content-Type:text/xml; charset=utf-8' ) ;
+}
+
+function CreateXmlHeader( $command, $resourceType, $currentFolder )
+{
+ SetXmlHeaders() ;
+
+ // Create the XML document header.
+ echo '<?xml version="1.0" encoding="utf-8" ?>' ;
+
+ // Create the main "Connector" node.
+ echo '<Connector command="' . $command . '" resourceType="' . $resourceType . '">' ;
+
+ // Add the current folder node.
+ echo '<CurrentFolder path="' . ConvertToXmlAttribute( $currentFolder ) . '" url="' . ConvertToXmlAttribute( GetUrlFromPath( $resourceType, $currentFolder ) ) . '" />' ;
+}
+
+function CreateXmlFooter()
+{
+ echo '</Connector>' ;
+}
+
+function SendError( $number, $text )
+{
+ SetXmlHeaders() ;
+
+ // Create the XML document header
+ echo '<?xml version="1.0" encoding="utf-8" ?>' ;
+
+ echo '<Connector><Error number="' . $number . '" text="' . htmlspecialchars( $text ) . '" /></Connector>' ;
+
+ exit ;
+}
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/commands.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/commands.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/commands.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,211 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: commands.php
+ * This is the File Manager Connector for PHP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function GetFolders( $resourceType, $currentFolder )
+{
+ // Map the virtual path to the local server path.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+
+ // Array that will hold the folders names.
+ $aFolders = array() ;
+
+ $oCurrentFolder = opendir( $sServerDir ) ;
+
+ while ( $sFile = readdir( $oCurrentFolder ) )
+ {
+ if ( $sFile != '.' && $sFile != '..' && is_dir( $sServerDir . $sFile ) )
+ $aFolders[] = '<Folder name="' . ConvertToXmlAttribute( $sFile ) . '" />' ;
+ }
+
+ closedir( $oCurrentFolder ) ;
+
+ // Open the "Folders" node.
+ echo "<Folders>" ;
+
+ natcasesort( $aFolders ) ;
+ foreach ( $aFolders as $sFolder )
+ echo $sFolder ;
+
+ // Close the "Folders" node.
+ echo "</Folders>" ;
+}
+
+function GetFoldersAndFiles( $resourceType, $currentFolder )
+{
+ // Map the virtual path to the local server path.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+
+ // Arrays that will hold the folders and files names.
+ $aFolders = array() ;
+ $aFiles = array() ;
+
+ $oCurrentFolder = opendir( $sServerDir ) ;
+
+ while ( $sFile = readdir( $oCurrentFolder ) )
+ {
+ if ( $sFile != '.' && $sFile != '..' )
+ {
+ if ( is_dir( $sServerDir . $sFile ) )
+ $aFolders[] = '<Folder name="' . ConvertToXmlAttribute( $sFile ) . '" />' ;
+ else
+ {
+ $iFileSize = filesize( $sServerDir . $sFile ) ;
+ if ( $iFileSize > 0 )
+ {
+ $iFileSize = round( $iFileSize / 1024 ) ;
+ if ( $iFileSize < 1 ) $iFileSize = 1 ;
+ }
+
+ $aFiles[] = '<File name="' . ConvertToXmlAttribute( $sFile ) . '" size="' . $iFileSize . '" />' ;
+ }
+ }
+ }
+
+ // Send the folders
+ natcasesort( $aFolders ) ;
+ echo '<Folders>' ;
+
+ foreach ( $aFolders as $sFolder )
+ echo $sFolder ;
+
+ echo '</Folders>' ;
+
+ // Send the files
+ natcasesort( $aFiles ) ;
+ echo '<Files>' ;
+
+ foreach ( $aFiles as $sFiles )
+ echo $sFiles ;
+
+ echo '</Files>' ;
+}
+
+function CreateFolder( $resourceType, $currentFolder )
+{
+ $sErrorNumber = '0' ;
+ $sErrorMsg = '' ;
+
+ if ( isset( $_GET['NewFolderName'] ) )
+ {
+ $sNewFolderName = $_GET['NewFolderName'] ;
+
+ if ( strpos( $sNewFolderName, '..' ) !== FALSE )
+ $sErrorNumber = '102' ; // Invalid folder name.
+ else
+ {
+ // Map the virtual path to the local server path of the current folder.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+
+ if ( is_writable( $sServerDir ) )
+ {
+ $sServerDir .= $sNewFolderName ;
+
+ $sErrorMsg = CreateServerFolder( $sServerDir ) ;
+
+ switch ( $sErrorMsg )
+ {
+ case '' :
+ $sErrorNumber = '0' ;
+ break ;
+ case 'Invalid argument' :
+ case 'No such file or directory' :
+ $sErrorNumber = '102' ; // Path too long.
+ break ;
+ default :
+ $sErrorNumber = '110' ;
+ break ;
+ }
+ }
+ else
+ $sErrorNumber = '103' ;
+ }
+ }
+ else
+ $sErrorNumber = '102' ;
+
+ // Create the "Error" node.
+ echo '<Error number="' . $sErrorNumber . '" originalDescription="' . ConvertToXmlAttribute( $sErrorMsg ) . '" />' ;
+}
+
+function FileUpload( $resourceType, $currentFolder )
+{
+ $sErrorNumber = '0' ;
+ $sFileName = '' ;
+
+ if ( isset( $_FILES['NewFile'] ) && !is_null( $_FILES['NewFile']['tmp_name'] ) )
+ {
+ $oFile = $_FILES['NewFile'] ;
+
+ // Map the virtual path to the local server path.
+ $sServerDir = ServerMapFolder( $resourceType, $currentFolder ) ;
+
+ // Get the uploaded file name.
+ $sFileName = $oFile['name'] ;
+ $sOriginalFileName = $sFileName ;
+ $sExtension = substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) ;
+ $sExtension = strtolower( $sExtension ) ;
+
+ global $Config ;
+
+ $arAllowed = $Config['AllowedExtensions'][$resourceType] ;
+ $arDenied = $Config['DeniedExtensions'][$resourceType] ;
+
+ if ( ( count($arAllowed) == 0 || in_array( $sExtension, $arAllowed ) ) && ( count($arDenied) == 0 || !in_array( $sExtension, $arDenied ) ) )
+ {
+ $iCounter = 0 ;
+
+ while ( true )
+ {
+ $sFilePath = $sServerDir . $sFileName ;
+
+ if ( is_file( $sFilePath ) )
+ {
+ $iCounter++ ;
+ $sFileName = RemoveExtension( $sOriginalFileName ) . '(' . $iCounter . ').' . $sExtension ;
+ $sErrorNumber = '201' ;
+ }
+ else
+ {
+ move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ;
+
+ if ( is_file( $sFilePath ) )
+ {
+ $oldumask = umask(0) ;
+ chmod( $sFilePath, 0777 ) ;
+ umask( $oldumask ) ;
+ }
+
+ break ;
+ }
+ }
+ }
+ else
+ $sErrorNumber = '202' ;
+ }
+ else
+ $sErrorNumber = '202' ;
+
+ echo '<script type="text/javascript">' ;
+ echo 'window.parent.frames["frmUpload"].OnUploadCompleted(' . $sErrorNumber . ',"' . str_replace( '"', '\\"', $sFileName ) . '") ;' ;
+ echo '</script>' ;
+
+ exit ;
+}
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/config.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/config.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/config.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,47 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: config.php
+ * Configuration file for the File Manager Connector for PHP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+global $Config ;
+
+// SECURITY: You must explicitelly enable this "connector". (Set it to "true").
+$Config['Enabled'] = false ;
+
+// Path to user files relative to the document root.
+$Config['UserFilesPath'] = '/UserFiles/' ;
+
+// Fill the following value it you prefer to specify the absolute path for the
+// user files directory. Usefull if you are using a virtual directory, symbolic
+// link or alias. Examples: 'C:\\MySite\\UserFiles\\' or '/root/mysite/UserFiles/'.
+// Attention: The above 'UserFilesPath' must point to the same directory.
+$Config['UserFilesAbsolutePath'] = '' ;
+
+$Config['AllowedExtensions']['File'] = array() ;
+$Config['DeniedExtensions']['File'] = array('php','php3','php5','phtml','asp','aspx','ascx','jsp','cfm','cfc','pl','bat','exe','dll','reg','cgi') ;
+
+$Config['AllowedExtensions']['Image'] = array('jpg','gif','jpeg','png') ;
+$Config['DeniedExtensions']['Image'] = array() ;
+
+$Config['AllowedExtensions']['Flash'] = array('swf','fla') ;
+$Config['DeniedExtensions']['Flash'] = array() ;
+
+$Config['AllowedExtensions']['Media'] = array('swf','fla','jpg','gif','jpeg','png','avi','mpg','mpeg') ;
+$Config['DeniedExtensions']['Media'] = array() ;
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/connector.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/connector.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/connector.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,107 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: connector.php
+ * This is the File Manager Connector for PHP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+include('config.php') ;
+include('util.php') ;
+include('io.php') ;
+include('basexml.php') ;
+include('commands.php') ;
+
+if ( !$Config['Enabled'] )
+ SendError( 1, 'This connector is disabled. Please check the "editor/filemanager/browser/default/connectors/php/config.php" file' ) ;
+
+// Get the "UserFiles" path.
+$GLOBALS["UserFilesPath"] = '' ;
+
+if ( isset( $Config['UserFilesPath'] ) )
+ $GLOBALS["UserFilesPath"] = $Config['UserFilesPath'] ;
+else if ( isset( $_GET['ServerPath'] ) )
+ $GLOBALS["UserFilesPath"] = $_GET['ServerPath'] ;
+else
+ $GLOBALS["UserFilesPath"] = '/UserFiles/' ;
+
+if ( ! ereg( '/$', $GLOBALS["UserFilesPath"] ) )
+ $GLOBALS["UserFilesPath"] .= '/' ;
+
+if ( strlen( $Config['UserFilesAbsolutePath'] ) > 0 )
+{
+ $GLOBALS["UserFilesDirectory"] = $Config['UserFilesAbsolutePath'] ;
+
+ if ( ! ereg( '/$', $GLOBALS["UserFilesDirectory"] ) )
+ $GLOBALS["UserFilesDirectory"] .= '/' ;
+}
+else
+{
+ // Map the "UserFiles" path to a local directory.
+ $GLOBALS["UserFilesDirectory"] = GetRootPath() . $GLOBALS["UserFilesPath"] ;
+}
+
+DoResponse() ;
+
+function DoResponse()
+{
+ if ( !isset( $_GET['Command'] ) || !isset( $_GET['Type'] ) || !isset( $_GET['CurrentFolder'] ) )
+ return ;
+
+ // Get the main request informaiton.
+ $sCommand = $_GET['Command'] ;
+ $sResourceType = $_GET['Type'] ;
+ $sCurrentFolder = $_GET['CurrentFolder'] ;
+
+ // Check if it is an allowed type.
+ if ( !in_array( $sResourceType, array('File','Image','Flash','Media') ) )
+ return ;
+
+ // Check the current folder syntax (must begin and start with a slash).
+ if ( ! ereg( '/$', $sCurrentFolder ) ) $sCurrentFolder .= '/' ;
+ if ( strpos( $sCurrentFolder, '/' ) !== 0 ) $sCurrentFolder = '/' . $sCurrentFolder ;
+
+ // Check for invalid folder paths (..)
+ if ( strpos( $sCurrentFolder, '..' ) )
+ SendError( 102, "" ) ;
+
+ // File Upload doesn't have to Return XML, so it must be intercepted before anything.
+ if ( $sCommand == 'FileUpload' )
+ {
+ FileUpload( $sResourceType, $sCurrentFolder ) ;
+ return ;
+ }
+
+ CreateXmlHeader( $sCommand, $sResourceType, $sCurrentFolder ) ;
+
+ // Execute the required command.
+ switch ( $sCommand )
+ {
+ case 'GetFolders' :
+ GetFolders( $sResourceType, $sCurrentFolder ) ;
+ break ;
+ case 'GetFoldersAndFiles' :
+ GetFoldersAndFiles( $sResourceType, $sCurrentFolder ) ;
+ break ;
+ case 'CreateFolder' :
+ CreateFolder( $sResourceType, $sCurrentFolder ) ;
+ break ;
+ }
+
+ CreateXmlFooter() ;
+
+ exit ;
+}
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/io.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/io.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/io.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,97 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: io.php
+ * This is the File Manager Connector for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function GetUrlFromPath( $resourceType, $folderPath )
+{
+ if ( $resourceType == '' )
+ return RemoveFromEnd( $GLOBALS["UserFilesPath"], '/' ) . $folderPath ;
+ else
+ return $GLOBALS["UserFilesPath"] . $resourceType . $folderPath ;
+}
+
+function RemoveExtension( $fileName )
+{
+ return substr( $fileName, 0, strrpos( $fileName, '.' ) ) ;
+}
+
+function ServerMapFolder( $resourceType, $folderPath )
+{
+ // Get the resource type directory.
+ $sResourceTypePath = $GLOBALS["UserFilesDirectory"] . $resourceType . '/' ;
+
+ // Ensure that the directory exists.
+ CreateServerFolder( $sResourceTypePath ) ;
+
+ // Return the resource type directory combined with the required path.
+ return $sResourceTypePath . RemoveFromStart( $folderPath, '/' ) ;
+}
+
+function GetParentFolder( $folderPath )
+{
+ $sPattern = "-[/\\\\][^/\\\\]+[/\\\\]?$-" ;
+ return preg_replace( $sPattern, '', $folderPath ) ;
+}
+
+function CreateServerFolder( $folderPath )
+{
+ $sParent = GetParentFolder( $folderPath ) ;
+
+ // Check if the parent exists, or create it.
+ if ( !file_exists( $sParent ) )
+ {
+ $sErrorMsg = CreateServerFolder( $sParent ) ;
+ if ( $sErrorMsg != '' )
+ return $sErrorMsg ;
+ }
+
+ if ( !file_exists( $folderPath ) )
+ {
+ // Turn off all error reporting.
+ error_reporting( 0 ) ;
+ // Enable error tracking to catch the error.
+ ini_set( 'track_errors', '1' ) ;
+
+ // To create the folder with 0777 permissions, we need to set umask to zero.
+ $oldumask = umask(0) ;
+ mkdir( $folderPath, 0777 ) ;
+ umask( $oldumask ) ;
+
+ $sErrorMsg = $php_errormsg ;
+
+ // Restore the configurations.
+ ini_restore( 'track_errors' ) ;
+ ini_restore( 'error_reporting' ) ;
+
+ return $sErrorMsg ;
+ }
+ else
+ return '' ;
+}
+
+function GetRootPath()
+{
+ $sRealPath = realpath( './' ) ;
+
+ $sSelfPath = $_SERVER['PHP_SELF'] ;
+ $sSelfPath = substr( $sSelfPath, 0, strrpos( $sSelfPath, '/' ) ) ;
+
+ return substr( $sRealPath, 0, strlen( $sRealPath ) - strlen( $sSelfPath ) ) ;
+}
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/util.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/util.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/php/util.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,37 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: util.php
+ * This is the File Manager Connector for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function RemoveFromStart( $sourceString, $charToRemove )
+{
+ $sPattern = '|^' . $charToRemove . '+|' ;
+ return preg_replace( $sPattern, '', $sourceString ) ;
+}
+
+function RemoveFromEnd( $sourceString, $charToRemove )
+{
+ $sPattern = '|' . $charToRemove . '+$|' ;
+ return preg_replace( $sPattern, '', $sourceString ) ;
+}
+
+function ConvertToXmlAttribute( $value )
+{
+ return utf8_encode( htmlspecialchars( $value ) ) ;
+}
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/test.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/test.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/connectors/test.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,166 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: test.html
+ * Test page for the File Browser connectors.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Connectors Tests</title>
+ <script language="javascript">
+
+function BuildBaseUrl( command )
+{
+ var sUrl =
+ document.getElementById('cmbConnector').value +
+ '?Command=' + command +
+ '&Type=' + document.getElementById('cmbType').value +
+ '&CurrentFolder=' + document.getElementById('txtFolder').value ;
+
+ var sServerPath = document.getElementById('txtServerPath').value ;
+ if ( sServerPath.length > 0 && sServerPath.toLowerCase() != '/userfiles/' )
+ sUrl += '&ServerPath=' + sServerPath ;
+
+ return sUrl ;
+}
+
+function SetFrameUrl( url )
+{
+ if ( document.all )
+ eRunningFrame.document.location = url ;
+ else
+ document.getElementById('eRunningFrame').src = url ;
+
+ document.getElementById('eUrl').innerHTML = url ;
+}
+
+function GetFolders()
+{
+ SetFrameUrl( BuildBaseUrl( 'GetFolders' ) ) ;
+ return false ;
+}
+
+function GetFoldersAndFiles()
+{
+ SetFrameUrl( BuildBaseUrl( 'GetFoldersAndFiles' ) ) ;
+ return false ;
+}
+
+function CreateFolder()
+{
+ var sFolder = prompt( 'Type the folder name:', 'Test Folder' ) ;
+
+ if ( ! sFolder )
+ return ;
+
+ var sUrl = BuildBaseUrl( 'CreateFolder' ) ;
+ sUrl += '&NewFolderName=' + escape( sFolder ) ;
+
+ SetFrameUrl( sUrl ) ;
+ return false ;
+}
+
+function OnUploadCompleted( errorNumber, fileName )
+{
+ switch ( errorNumber )
+ {
+ case 0 :
+ alert( 'File uploaded with no errors' ) ;
+ break ;
+ case 201 :
+ GetFoldersAndFiles()
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
+ break ;
+ case 202 :
+ alert( 'Invalid file' ) ;
+ break ;
+ default :
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
+ break ;
+ }
+}
+
+this.frames.frmUpload = this ;
+
+function SetAction()
+{
+ var sUrl = BuildBaseUrl( 'FileUpload' ) ;
+ document.getElementById('eUrl').innerHTML = sUrl ;
+ document.getElementById('frmUpload').action = sUrl ;
+}
+
+ </script>
+ </head>
+ <body>
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td>Connector:<br>
+ <select id="cmbConnector" name="cmbConnector">
+ <option value="asp/connector.asp" selected>ASP</option>
+ <option value="aspx/connector.aspx">ASP.Net</option>
+ <option value="cfm/connector.cfm">ColdFusion</option>
+ <option value="perl/connector.cgi">Perl</option>
+ <option value="php/connector.php">PHP</option>
+ </select></td>
+ <td> </td>
+ <td>Current Folder<BR>
+ <INPUT id="txtFolder" type="text" value="/" name="txtFolder"></td>
+ <td> </td>
+ <td>Resource Type<BR>
+ <select id="cmbType" name="cmbType">
+ <option value="File" selected>File</option>
+ <option value="Image">Image</option>
+ <option value="Flash">Flash</option>
+ <option value="Media">Media</option>
+ <option value="Invalid">Invalid Type (for testing)</option>
+ </select></td>
+ <TD> </TD>
+ <TD>Server Path<BR>
+ <INPUT id="txtServerPath" type="text" value="/UserFiles/" /></TD>
+ </tr>
+ </table>
+ <br>
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td valign="top"><a href="#" onclick="GetFolders();">Get Folders</a></td>
+ <td> </td>
+ <td valign="top"><a href="#" onclick="GetFoldersAndFiles();">Get Folders and Files</a></td>
+ <td> </td>
+ <td valign="top"><a href="#" onclick="CreateFolder();">Create Folder</a></td>
+ <td> </td>
+ <td valign="top">
+ <form id="frmUpload" action="" target="eRunningFrame" method="post" enctype="multipart/form-data">
+ File Upload<br>
+ <input id="txtFileUpload" type="file" name="NewFile"> <input type="submit" value="Upload" onclick="SetAction();">
+ </form>
+ </td>
+ </tr>
+ </table>
+ <br>
+ URL: <span id="eUrl"></span>
+ </td>
+ </tr>
+ <tr>
+ <td height="100%" vAlign="top">
+ <iframe id="eRunningFrame" src="../../../../fckblank.html" name="eRunningFrame" width="100%" height="100%"></iframe>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmactualfolder.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmactualfolder.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmactualfolder.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,63 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmactualfolder.html
+ * This page shows the actual folder path.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript">
+
+function OnResize()
+{
+ divName.style.width = "1px" ;
+ divName.style.width = tdName.offsetWidth + "px" ;
+}
+
+function SetCurrentFolder( resourceType, folderPath )
+{
+ document.getElementById('tdName').innerHTML = folderPath ;
+}
+
+window.onload = function()
+{
+ window.top.IsLoadedActualFolder = true ;
+}
+
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <button style="WIDTH: 100%" type="button">
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td><img height="32" alt="" src="images/FolderOpened32.gif" width="32"></td>
+ <td> </td>
+ <td id="tdName" width="100%" nowrap class="ActualFolder">/</td>
+ <td> </td>
+ <td><img height="8" src="images/ButtonArrow.gif" width="12"></td>
+ <td> </td>
+ </tr>
+ </table>
+ </button>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmcreatefolder.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,109 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmcreatefolder.html
+ * Page used to create new folders in the current folder.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+function SetCurrentFolder( resourceType, folderPath )
+{
+ oConnector.ResourceType = resourceType ;
+ oConnector.CurrentFolder = folderPath
+}
+
+function CreateFolder()
+{
+ var sFolderName ;
+
+ while ( true )
+ {
+ sFolderName = prompt( 'Type the name of the new folder:', '' ) ;
+
+ if ( sFolderName == null )
+ return ;
+ else if ( sFolderName.length == 0 )
+ alert( 'Please type the folder name' ) ;
+ else
+ break ;
+ }
+
+ oConnector.SendCommand( 'CreateFolder', 'NewFolderName=' + escape( sFolderName) , CreateFolderCallBack ) ;
+}
+
+function CreateFolderCallBack( fckXml )
+{
+ if ( oConnector.CheckError( fckXml ) == 0 )
+ window.parent.frames['frmResourcesList'].Refresh() ;
+
+ /*
+ // Get the current folder path.
+ var oNode = fckXml.SelectSingleNode( 'Connector/Error' ) ;
+ var iErrorNumber = parseInt( oNode.attributes.getNamedItem('number').value ) ;
+
+ switch ( iErrorNumber )
+ {
+ case 0 :
+ window.parent.frames['frmResourcesList'].Refresh() ;
+ break ;
+ case 101 :
+ alert( 'Folder already exists' ) ;
+ break ;
+ case 102 :
+ alert( 'Invalid folder name' ) ;
+ break ;
+ case 103 :
+ alert( 'You have no permissions to create the folder' ) ;
+ break ;
+ case 110 :
+ alert( 'Unknown error creating folder' ) ;
+ break ;
+ default :
+ alert( 'Error creating folder. Error number: ' + iErrorNumber ) ;
+ break ;
+ }
+ */
+}
+
+window.onload = function()
+{
+ window.top.IsLoadedCreateFolder = true ;
+}
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <button type="button" style="WIDTH: 100%" onclick="CreateFolder();">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td><img height="16" alt="" src="images/Folder.gif" width="16"></td>
+ <td> </td>
+ <td nowrap>Create New Folder</td>
+ </tr>
+ </table>
+ </button>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmfolders.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmfolders.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmfolders.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,192 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmfolders.html
+ * This page shows the list of folders available in the parent folder
+ * of the current folder.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+var sActiveFolder ;
+
+var bIsLoaded = false ;
+var iIntervalId ;
+
+var oListManager = new Object() ;
+
+oListManager.Init = function()
+{
+ this.Table = document.getElementById('tableFiles') ;
+ this.UpRow = document.getElementById('trUp') ;
+
+ this.TableRows = new Object() ;
+}
+
+oListManager.Clear = function()
+{
+ // Remove all other rows available.
+ while ( this.Table.rows.length > 1 )
+ this.Table.deleteRow(1) ;
+
+ // Reset the TableRows collection.
+ this.TableRows = new Object() ;
+}
+
+oListManager.AddItem = function( folderName, folderPath )
+{
+ // Create the new row.
+ var oRow = this.Table.insertRow(-1) ;
+ oRow.className = 'FolderListFolder' ;
+
+ // Build the link to view the folder.
+ var sLink = '<a href="#" onclick="OpenFolder(\'' + folderPath + '\');return false;">' ;
+
+ // Add the folder icon cell.
+ var oCell = oRow.insertCell(-1) ;
+ oCell.width = 16 ;
+ oCell.innerHTML = sLink + '<img alt="" src="images/spacer.gif" width="16" height="16" border="0"></a>' ;
+
+ // Add the folder name cell.
+ oCell = oRow.insertCell(-1) ;
+ oCell.noWrap = true ;
+ oCell.innerHTML = ' ' + sLink + folderName + '</a>' ;
+
+ this.TableRows[ folderPath ] = oRow ;
+}
+
+oListManager.ShowUpFolder = function( upFolderPath )
+{
+ this.UpRow.style.display = ( upFolderPath != null ? '' : 'none' ) ;
+
+ if ( upFolderPath != null )
+ {
+ document.getElementById('linkUpIcon').onclick = document.getElementById('linkUp').onclick = function()
+ {
+ LoadFolders( upFolderPath ) ;
+ return false ;
+ }
+ }
+}
+
+function CheckLoaded()
+{
+ if ( window.top.IsLoadedActualFolder
+ && window.top.IsLoadedCreateFolder
+ && window.top.IsLoadedUpload
+ && window.top.IsLoadedResourcesList )
+ {
+ window.clearInterval( iIntervalId ) ;
+ bIsLoaded = true ;
+ OpenFolder( sActiveFolder ) ;
+ }
+}
+
+function OpenFolder( folderPath )
+{
+ sActiveFolder = folderPath ;
+
+ if ( ! bIsLoaded )
+ {
+ if ( ! iIntervalId )
+ iIntervalId = window.setInterval( CheckLoaded, 100 ) ;
+ return ;
+ }
+
+ // Change the style for the select row (to show the opened folder).
+ for ( var sFolderPath in oListManager.TableRows )
+ {
+ oListManager.TableRows[ sFolderPath ].className =
+ ( sFolderPath == folderPath ? 'FolderListCurrentFolder' : 'FolderListFolder' ) ;
+ }
+
+ // Set the current folder in all frames.
+ window.parent.frames['frmActualFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
+ window.parent.frames['frmCreateFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
+ window.parent.frames['frmUpload'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
+
+ // Load the resources list for this folder.
+ window.parent.frames['frmResourcesList'].LoadResources( oConnector.ResourceType, folderPath ) ;
+}
+
+function LoadFolders( folderPath )
+{
+ // Clear the folders list.
+ oListManager.Clear() ;
+
+ // Get the parent folder path.
+ var sParentFolderPath ;
+ if ( folderPath != '/' )
+ sParentFolderPath = folderPath.substring( 0, folderPath.lastIndexOf( '/', folderPath.length - 2 ) + 1 ) ;
+
+ // Show/Hide the Up Folder.
+ oListManager.ShowUpFolder( sParentFolderPath ) ;
+
+ if ( folderPath != '/' )
+ {
+ sActiveFolder = folderPath ;
+ oConnector.CurrentFolder = sParentFolderPath
+ oConnector.SendCommand( 'GetFolders', null, GetFoldersCallBack ) ;
+ }
+ else
+ OpenFolder( '/' ) ;
+}
+
+function GetFoldersCallBack( fckXml )
+{
+ if ( oConnector.CheckError( fckXml ) != 0 )
+ return ;
+
+ // Get the current folder path.
+ var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ;
+ var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ;
+
+ var oNodes = fckXml.SelectNodes( 'Connector/Folders/Folder' ) ;
+
+ for ( var i = 0 ; i < oNodes.length ; i++ )
+ {
+ var sFolderName = oNodes[i].attributes.getNamedItem('name').value ;
+ oListManager.AddItem( sFolderName, sCurrentFolderPath + sFolderName + "/" ) ;
+ }
+
+ OpenFolder( sActiveFolder ) ;
+}
+
+function SetResourceType( type )
+{
+ oConnector.ResourceType = type ;
+ LoadFolders( '/' ) ;
+}
+
+window.onload = function()
+{
+ oListManager.Init() ;
+ LoadFolders( '/' ) ;
+}
+ </script>
+ </head>
+ <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10">
+ <table id="tableFiles" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr id="trUp" style="DISPLAY: none">
+ <td width="16"><a id="linkUpIcon" href="#"><img alt="" src="images/FolderUp.gif" width="16" height="16" border="0"></a></td>
+ <td nowrap width="100%"> <a id="linkUp" href="#">..</a></td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourceslist.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourceslist.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourceslist.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,152 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmresourceslist.html
+ * This page shows all resources available in a folder in the File Browser.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+var oListManager = new Object() ;
+
+oListManager.Init = function()
+{
+ this.Table = document.getElementById('tableFiles') ;
+}
+
+oListManager.Clear = function()
+{
+ // Remove all other rows available.
+ while ( this.Table.rows.length > 0 )
+ this.Table.deleteRow(0) ;
+}
+
+oListManager.AddFolder = function( folderName, folderPath )
+{
+ // Create the new row.
+ var oRow = this.Table.insertRow(-1) ;
+
+ // Build the link to view the folder.
+ var sLink = '<a href="#" onclick="OpenFolder(\'' + folderPath + '\');return false;">' ;
+
+ // Add the folder icon cell.
+ var oCell = oRow.insertCell(-1) ;
+ oCell.width = 16 ;
+ oCell.innerHTML = sLink + '<img alt="" src="images/Folder.gif" width="16" height="16" border="0"></a>' ;
+
+ // Add the folder name cell.
+ oCell = oRow.insertCell(-1) ;
+ oCell.noWrap = true ;
+ oCell.colSpan = 2 ;
+ oCell.innerHTML = ' ' + sLink + folderName + '</a>' ;
+}
+
+oListManager.AddFile = function( fileName, fileUrl, fileSize )
+{
+ // Create the new row.
+ var oRow = this.Table.insertRow(-1) ;
+
+ // Build the link to view the folder.
+ var sLink = '<a href="#" onclick="OpenFile(\'' + fileUrl + '\');return false;">' ;
+
+ // Get the file icon.
+ var sIcon = oIcons.GetIcon( fileName ) ;
+
+ // Add the file icon cell.
+ var oCell = oRow.insertCell(-1) ;
+ oCell.width = 16 ;
+ oCell.innerHTML = sLink + '<img alt="" src="images/icons/' + sIcon + '.gif" width="16" height="16" border="0"></a>' ;
+
+ // Add the file name cell.
+ oCell = oRow.insertCell(-1) ;
+ oCell.innerHTML = ' ' + sLink + fileName + '</a>' ;
+
+ // Add the file size cell.
+ oCell = oRow.insertCell(-1) ;
+ oCell.noWrap = true ;
+ oCell.align = 'right' ;
+ oCell.innerHTML = ' ' + fileSize + ' KB' ;
+}
+
+function OpenFolder( folderPath )
+{
+ // Load the resources list for this folder.
+ window.parent.frames['frmFolders'].LoadFolders( folderPath ) ;
+}
+
+function OpenFile( fileUrl )
+{
+ window.top.opener.SetUrl( fileUrl ) ;
+ window.top.close() ;
+ window.top.opener.focus() ;
+}
+
+function LoadResources( resourceType, folderPath )
+{
+ oListManager.Clear() ;
+ oConnector.ResourceType = resourceType ;
+ oConnector.CurrentFolder = folderPath
+ oConnector.SendCommand( 'GetFoldersAndFiles', null, GetFoldersAndFilesCallBack ) ;
+}
+
+function Refresh()
+{
+ LoadResources( oConnector.ResourceType, oConnector.CurrentFolder ) ;
+}
+
+function GetFoldersAndFilesCallBack( fckXml )
+{
+ if ( oConnector.CheckError( fckXml ) != 0 )
+ return ;
+
+ // Get the current folder path.
+ var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ;
+ var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ;
+ var sCurrentFolderUrl = oNode.attributes.getNamedItem('url').value ;
+
+ // Add the Folders.
+ var oNodes = fckXml.SelectNodes( 'Connector/Folders/Folder' ) ;
+ for ( var i = 0 ; i < oNodes.length ; i++ )
+ {
+ var sFolderName = oNodes[i].attributes.getNamedItem('name').value ;
+ oListManager.AddFolder( sFolderName, sCurrentFolderPath + sFolderName + "/" ) ;
+ }
+
+ // Add the Files.
+ var oNodes = fckXml.SelectNodes( 'Connector/Files/File' ) ;
+ for ( var i = 0 ; i < oNodes.length ; i++ )
+ {
+ var sFileName = oNodes[i].attributes.getNamedItem('name').value ;
+ var sFileSize = oNodes[i].attributes.getNamedItem('size').value ;
+ oListManager.AddFile( sFileName, sCurrentFolderUrl + sFileName, sFileSize ) ;
+ }
+}
+
+window.onload = function()
+{
+ oListManager.Init() ;
+ window.top.IsLoadedResourcesList = true ;
+}
+ </script>
+ </head>
+ <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10">
+ <table id="tableFiles" cellSpacing="1" cellPadding="0" width="100%" border="0">
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourcetype.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourcetype.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmresourcetype.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,61 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmresourcetype.html
+ * This page shows the list of available resource types.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+function SetResourceType( type )
+{
+ window.parent.frames["frmFolders"].SetResourceType( type ) ;
+}
+
+var aTypes = [
+ ['File','File'],
+ ['Image','Image'],
+ ['Flash','Flash'],
+ ['Media','Media']
+] ;
+
+window.onload = function()
+{
+ for ( var i = 0 ; i < aTypes.length ; i++ )
+ {
+ if ( oConnector.ShowAllTypes || aTypes[i][0] == oConnector.ResourceType )
+ AddSelectOption( document.getElementById('cmbType'), aTypes[i][1], aTypes[i][0] ) ;
+ }
+}
+
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td nowrap>
+ Resource Type<BR>
+ <select id="cmbType" style="WIDTH: 100%" onchange="SetResourceType(this.value);">
+ </select>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmupload.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmupload.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/frmupload.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,106 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmupload.html
+ * Page used to upload new files in the current folder.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet" />
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+function SetCurrentFolder( resourceType, folderPath )
+{
+ var sUrl = oConnector.ConnectorUrl +'Command=FileUpload' ;
+ sUrl += '&Type=' + resourceType ;
+ sUrl += '&CurrentFolder=' + folderPath ;
+
+ document.getElementById('frmUpload').action = sUrl ;
+}
+
+function OnSubmit()
+{
+ if ( document.getElementById('NewFile').value.length == 0 )
+ {
+ alert( 'Please select a file from your computer' ) ;
+ return false ;
+ }
+
+ // Set the interface elements.
+ document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder (Upload in progress, please wait...)' ;
+ document.getElementById('btnUpload').disabled = true ;
+
+ return true ;
+}
+
+function OnUploadCompleted( errorNumber, fileName )
+{
+ // Reset the Upload Worker Frame.
+ window.parent.frames['frmUploadWorker'].location = 'about:blank' ;
+
+ // Reset the upload form (On IE we must do a little trick to avout problems).
+ if ( document.all )
+ document.getElementById('NewFile').outerHTML = '<input id="NewFile" name="NewFile" style="WIDTH: 100%" type="file">' ;
+ else
+ document.getElementById('frmUpload').reset() ;
+
+ // Reset the interface elements.
+ document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder' ;
+ document.getElementById('btnUpload').disabled = false ;
+
+ switch ( errorNumber )
+ {
+ case 0 :
+ window.parent.frames['frmResourcesList'].Refresh() ;
+ break ;
+ case 201 :
+ window.parent.frames['frmResourcesList'].Refresh() ;
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
+ break ;
+ case 202 :
+ alert( 'Invalid file' ) ;
+ break ;
+ default :
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
+ break ;
+ }
+}
+
+window.onload = function()
+{
+ window.top.IsLoadedUpload = true ;
+}
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <form id="frmUpload" action="" target="frmUploadWorker" method="post" enctype="multipart/form-data" onsubmit="return OnSubmit();">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td nowrap>
+ <span id="eUploadMessage">Upload a new file in this folder</span><br>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td width="100%"><input id="NewFile" name="NewFile" style="WIDTH: 100%" type="file"></td>
+ <td nowrap> <input id="btnUpload" type="submit" value="Upload"></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/ButtonArrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/Folder.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/Folder.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/Folder32.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/Folder32.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderOpened.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderOpened32.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/FolderUp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/ai.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/avi.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/bmp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/cs.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/default.icon.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/dll.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/doc.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/exe.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/fla.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/gif.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/htm.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/html.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/jpg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/js.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/mdb.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/mp3.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/pdf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/ppt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/rdp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/swf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/swt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/txt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/vsd.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/xls.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/xml.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/32/zip.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/ai.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/avi.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/bmp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/cs.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/default.icon.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/dll.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/doc.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/exe.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/fla.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/gif.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/htm.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/html.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/html.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/jpg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/js.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/js.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/mdb.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/mp3.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/pdf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/ppt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/rdp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/swf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/swt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/txt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/vsd.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/xls.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/xml.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/icons/zip.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/spacer.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/images/spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/common.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/common.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/common.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,34 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: common.js
+ * Common objects and functions shared by all pages that compose the
+ * File Browser dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function AddSelectOption( selectElement, optionText, optionValue )
+{
+ var oOption = document.createElement("OPTION") ;
+
+ oOption.text = optionText ;
+ oOption.value = optionValue ;
+
+ selectElement.options.add(oOption) ;
+
+ return oOption ;
+}
+
+var oConnector = window.parent.oConnector ;
+var oIcons = window.parent.oIcons ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/fckxml.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/fckxml.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/default/js/fckxml.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,109 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxml.js
+ * Defines the FCKXml object that is used for XML data calls
+ * and XML processing.
+ * This script is shared by almost all pages that compose the
+ * File Browser frameset.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKXml = function()
+{}
+
+FCKXml.prototype.GetHttpRequest = function()
+{
+ if ( window.XMLHttpRequest ) // Gecko
+ return new XMLHttpRequest() ;
+ else if ( window.ActiveXObject ) // IE
+ return new ActiveXObject("MsXml2.XmlHttp") ;
+}
+
+FCKXml.prototype.LoadUrl = function( urlToCall, asyncFunctionPointer )
+{
+ var oFCKXml = this ;
+
+ var bAsync = ( typeof(asyncFunctionPointer) == 'function' ) ;
+
+ var oXmlHttp = this.GetHttpRequest() ;
+
+ oXmlHttp.open( "GET", urlToCall, bAsync ) ;
+
+ if ( bAsync )
+ {
+ oXmlHttp.onreadystatechange = function()
+ {
+ if ( oXmlHttp.readyState == 4 )
+ {
+ oFCKXml.DOMDocument = oXmlHttp.responseXML ;
+ if ( oXmlHttp.status == 200 || oXmlHttp.status == 304 )
+ asyncFunctionPointer( oFCKXml ) ;
+ else
+ alert( 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')' ) ;
+ }
+ }
+ }
+
+ oXmlHttp.send( null ) ;
+
+ if ( ! bAsync )
+ {
+ if ( oXmlHttp.status == 200 || oXmlHttp.status == 304 )
+ this.DOMDocument = oXmlHttp.responseXML ;
+ else
+ {
+ alert( 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')' ) ;
+ }
+ }
+}
+
+FCKXml.prototype.SelectNodes = function( xpath )
+{
+ if ( document.all ) // IE
+ return this.DOMDocument.selectNodes( xpath ) ;
+ else // Gecko
+ {
+ var aNodeArray = new Array();
+
+ var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
+ this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), XPathResult.ORDERED_NODE_ITERATOR_TYPE, null) ;
+ if ( xPathResult )
+ {
+ var oNode = xPathResult.iterateNext() ;
+ while( oNode )
+ {
+ aNodeArray[aNodeArray.length] = oNode ;
+ oNode = xPathResult.iterateNext();
+ }
+ }
+ return aNodeArray ;
+ }
+}
+
+FCKXml.prototype.SelectSingleNode = function( xpath )
+{
+ if ( document.all ) // IE
+ return this.DOMDocument.selectSingleNode( xpath ) ;
+ else // Gecko
+ {
+ var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
+ this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), 9, null);
+
+ if ( xPathResult && xPathResult.singleNodeValue )
+ return xPathResult.singleNodeValue ;
+ else
+ return null ;
+ }
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,214 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: browser.css
+ * CSS styles used by all pages that compose the File Browser.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body
+{
+ background-color: #e3e9f1;
+}
+
+form
+{
+ margin: 0px 0px 0px 0px ;
+ padding: 0px 0px 0px 0px ;
+}
+
+a, :link, :active, :visited {
+ color: #000000;
+ text-decoration: none;
+}
+
+:hover {
+ color: #0000fa;
+}
+
+a img {
+ border-width: 0px;
+ border-style: none;
+}
+
+frame
+{
+background-color: #e3e9f1;
+border-color: #000000;
+border-collapse: collapse;
+}
+
+frameset
+{
+background-color: #e3e9f1;
+border-color: #000000;
+border-collapse: collapse;
+}
+
+.progress_hollow
+{
+ background-color: transparent;
+}
+
+.progress_filled
+{
+ background-color: #8fa7c7;
+}
+
+.progress_bar
+{
+ background-color: #F0F7FF;
+ border-width: 1px;
+ border-color: #000000;
+ border-style: solid;
+}
+
+.Frame_none
+{
+ border-width: 0px;
+ border-style: none;
+}
+
+.Frame_t
+{
+ border-right: 0px none;
+ border-top: 1px solid;
+ border-left: 0px none;
+ border-bottom: 0px none;
+}
+
+.Frame_tr
+{
+ border-right: 1px solid;
+ border-top: 1px solid;
+ border-left: 0px none;
+ border-bottom: 0px none;
+}
+
+.Frame_tl
+{
+ border-right: 0px none;
+ border-top: 1px solid;
+ border-left: 1px solid;
+ border-bottom: 0px none;
+}
+
+.Frame_r
+{
+ border-right: 1px solid;
+ border-top: 0px none;
+ border-left: 0px none;
+ border-bottom: 0px none;
+}
+
+.Frame_l
+{
+ border-right: 0px none;
+ border-top: 0px none;
+ border-left: 1px solid;
+ border-bottom: 0px none;
+}
+
+.Frame_rl
+{
+ border-right: 1px solid;
+ border-top: 0px none;
+ border-left: 1px solid;
+ border-bottom: 0px none;
+}
+
+.Frame_b
+{
+ border-right: 0px none;
+ border-top: 0px none;
+ border-left: 0px none;
+ border-bottom: 1px solid;
+}
+
+.Frame_br
+{
+ border-right: 1px solid;
+ border-top: 0px none;
+ border-left: 0px none;
+ border-bottom: 1px solid;
+}
+
+.Frame_bl
+{
+ border-right: 0px none;
+ border-top: 0px none;
+ border-left: 1px solid;
+ border-bottom: 1px solid;
+}
+
+.Frame_tb
+{
+ border-right: 0px none;
+ border-top: 1px solid;
+ border-left: 0px none;
+ border-bottom: 1px solid;
+}
+
+.Frame_all
+{
+ border-right: 1px solid;
+ border-top: 1px solid;
+ border-left: 1px solid;
+ border-bottom: 1px solid;
+}
+
+body.FileArea
+{
+
+ background-color: #ffffff;
+}
+
+body, td, input, select
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
+}
+
+.ActualFolder
+{
+ font-weight: bold;
+ font-size: 14px;
+}
+
+.PopupButtons
+{
+ border-top: #8fa7c7 1px solid;
+ background-color: #ffffff;
+ padding: 7px 10px 7px 10px;
+}
+
+.Button, button
+{
+ border-right: #737357 1px solid;
+ border-top: #737357 1px solid;
+ border-left: #737357 1px solid;
+ color: #ffffff;
+ border-bottom: #737357 1px solid;
+ background-color: #8fa7c7;
+}
+
+.FolderListCurrentFolder img
+{
+ background-image: url(images/FolderOpened.gif);
+}
+
+.FolderListFolder img
+{
+ background-image: url(images/Folder.gif);
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/browser.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,40 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: browser.html
+ * This page compose the File Browser dialog frameset.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <title>FCKeditor - Resources Browser</title>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ </head>
+ <frameset cols="150,*" framespacing="0" bordercolor="#f1f1e3" frameborder="no" class="Frame_none">
+ <frameset rows="50,*" framespacing="0" class="Frame_r">
+ <frame src="frmresourcetype.html" scrolling="no" frameborder="no">
+ <frame name="frmFolders" id="frmFolders" src="frmfolders.html" scrolling="auto" frameborder="no">
+ </frameset>
+ <frameset rows="50,*,50" framespacing="0" class="Frame_none">
+ <frame name="frmActualFolder" src="frmactualfolder.html" scrolling="no" frameborder="no">
+ <frame name="frmResourcesList" id="mainWindow" src="frmresourceslist.html" scrolling="auto" frameborder="no">
+ <frameset cols="150,*,0" framespacing="0" frameborder="no" class="Frame_t">
+ <frame name="frmCreateFolder" id="frmCreateFolder" src="frmcreatefolder.html" scrolling="no" frameborder="no">
+ <frame name="frmUpload" id="frmUpload" src="frmupload.html" scrolling="no" frameborder="no">
+ <frame name="frmUploadWorker" src="" scrolling="no" frameborder="no">
+ </frameset>
+ </frameset>
+ </frameset>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Auth/Default.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Auth/Default.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Auth/Default.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,86 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: Default.php
+ * Im not very clued up on authentication but even i can see that anyone
+ * who can spoof an IP could perform a replay attack on this, but its
+ * better than nothing.
+ * There is a 1 hour time out on tokens to help this slightly.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class Auth {
+
+ function authenticate($data,$fckphp_config) {
+
+ //Hold relevant$fckphp_config vars locally
+ $key=$fckphp_config['auth']['Handler']['SharedKey'];
+ $fckphp_config['authSuccess']=false;
+
+ //Decrypt the data passed to us
+ $decData="";
+ for ($i=0;$i<strlen($data)-1;$i+=2) $decData.=chr(hexdec($data[$i].$data[$i+1]));
+
+ $decArray=explode("|^SEP^|",$decData);
+
+ if (sizeof($decArray)==4) {
+ //0 = Timestamp
+ //1 = Client IP
+ //2 = Username
+ //3 = MD5
+ if ($decArray[3]==md5($decArray[0]."|^SEP^|".$decArray[1]."|^SEP^|".$decArray[2].$key)) {
+ if (time()-$decArray[0]<3600) { //Token valid for max of 1 hour
+ if ($_SERVER['REMOTE_ADDR']==$decArray[1]) {
+
+ //Set the file root to the users individual one
+ $top=str_replace("//","/",$fckphp_config['basedir'].'/'.$fckphp_config['UserFilesPath']."/users");
+ $fckphp_config['UserFilesPath']=$fckphp_config['UserFilesPath']."/users/".$decArray[2];
+ $up=str_replace("//","/",$fckphp_config['basedir'].'/'.$fckphp_config['UserFilesPath']);
+
+ if (!file_exists($top)) {
+ mkdir($top,0777) or die("users folder in UserFilesPath does not exist and could not be created.");
+ chmod($top,0777);
+ }
+
+ //Create folder if it doesnt exist
+ if (!file_exists($up)) {
+ mkdir($up,0777) or die("users/".$decArray[2]." folder in UserFilesPath does not exist and could not be created.");
+ chmod($up,0777); //Just for good measure
+ }
+
+ //Create resource area subfolders if they dont exist
+ foreach ($fckphp_config['ResourceTypes'] as $value) {
+ if (!file_exists("$up/$value")) {
+ mkdir("$up/$value",0777) or die("users/".$decArray[2]."/$value folder in UserFilesPath does not exist and could not be created.");
+ chmod("$up/$value",0777); //Just for good measure
+ }
+ }
+ $fckphp_config['authSuccess']=true;
+ } else {
+ //Not same client as auth token is for
+ }
+ } else {
+ //Token more than an hour old
+ }
+ } else {
+ //Data integrity failed
+ }
+ } else {
+ //Not enough data (decryption failed?)
+ }
+
+ return $fckphp_config;
+ }
+}
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/CreateFolder.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/CreateFolder.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/CreateFolder.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,91 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: CreateFolder.php
+ * Implements the CreateFolder command to make a new folder
+ * in the current directory. Output is in XML.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class CreateFolder {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $newfolder;
+
+ function CreateFolder($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($this->fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ $this->newfolder=str_replace(array("..","/"),"",$_GET['NewFolderName']);
+ }
+
+ function checkFolderName($folderName) {
+
+ //Check the name is not too long
+ if (strlen($folderName)>$this->fckphp_config['MaxDirNameLength']) return false;
+
+ //Check that it only contains valid characters
+ for($i=0;$i<strlen($folderName);$i++) if (!in_array(substr($folderName,$i,1),$this->fckphp_config['DirNameAllowedChars'])) return false;
+
+ //If it got this far all is ok
+ return true;
+ }
+
+ function run() {
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="CreateFolder" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <?php
+ $newdir=str_replace("//","/",($this->real_cwd."/".$this->newfolder));
+
+ //Check the new name
+ if ($this->checkFolderName($this->newfolder)) {
+
+ //Check if it already exists
+ if (is_dir($newdir)) {
+ $err_no=101; //Folder already exists
+ } else {
+
+ //Check if we can create the directory here
+ if (is_writeable($this->real_cwd)) {
+
+ //Make the directory
+ if (mkdir($newdir,0777)) {
+ $err_no=0; //Success
+ } else {
+
+ $err_no=110; //Unknown error
+ }
+ } else {
+ $err_no=103; //No permissions to create
+ }
+ }
+ } else {
+ $err_no=102; //Invalid Folder Name
+ }
+
+ ?>
+ <Error number="<?php echo "".$err_no; ?>" />
+</Connector>
+ <?php
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFile.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFile.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFile.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,64 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: DeleteFile.php
+ * Implements the DeleteFile command to delete a file
+ * in the current directory. Output is in XML.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class DeleteFile {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $newfolder;
+
+ function DeleteFile($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($this->fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ $this->filename=str_replace(array("..","/"),"",$_GET['FileName']);
+ }
+
+ function run() {
+ $result1=false;
+ $result2=true;
+
+ $thumb=$this->real_cwd.'/.thumb_'.$this->filename;
+ $result1=unlink($this->real_cwd.'/'.$this->filename);
+ if (file_exists($thumb)) $result2=unlink($thumb);
+
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="DeleteFile" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <?php
+ if ($result1&&$result2) {
+ $err_no=0;
+ } else {
+ $err_no=302;
+ }
+
+ ?>
+ <Error number="<?php echo "".$err_no; ?>" />
+</Connector>
+ <?php
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFolder.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFolder.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/DeleteFolder.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,78 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: DeleteFolder.php
+ * Implements the DeleteFolder command to delete a folder
+ * in the current directory. Output is in XML.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class DeleteFolder {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $newfolder;
+
+ function DeleteFolder($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($this->fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ $this->foldername=str_replace(array("..","/"),"",$_GET['FolderName']);
+ }
+
+ function run() {
+
+ if ($this->delDir($this->real_cwd.'/'.$this->foldername)) {
+ $err_no=0;
+ } else {
+ $err_no=402;
+ }
+
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="DeleteFolder" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <Error number="<?php echo "".$err_no; ?>" />
+</Connector>
+ <?php
+ }
+
+
+ function delDir($dir) {
+ $dh=opendir($dir);
+ if ($dh) {
+ while ($entry=readdir($dh)) {
+ if (($entry!=".")&&($entry!="..")) {
+ if (is_dir($dir.'/'.$entry)) {
+ $this->delDir($dir.'/'.$entry);
+ } else {
+ $thumb=$dir.'/.thumb_'.$entry;
+ if (file_exists($thumb)) if (!unlink($thumb)) return false;
+ if (!unlink($dir.'/'.$entry)) return false;
+ }
+ }
+ }
+ closedir($dh);
+ return rmdir($dir);
+ } else {
+ return false;
+ }
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/FileUpload.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/FileUpload.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/FileUpload.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,248 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: FileUpload.php
+ * Implements the FileUpload command,
+ * Checks the file uploaded is allowed,
+ * then moves it to the user data area.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class FileUpload {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $newfolder;
+
+ function FileUpload($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($this->fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ }
+
+ function cleanFilename($filename) {
+ $n_filename="";
+
+ //Check that it only contains valid characters
+ for($i=0;$i<strlen($filename);$i++) if (in_array(substr($filename,$i,1),$this->fckphp_config['FileNameAllowedChars'])) $n_filename.=substr($filename,$i,1);
+
+ //If it got this far all is ok
+ return $n_filename;
+ }
+
+ function run() {
+ //If using CGI Upload script, get file info and insert into $_FILE array
+ if (
+ (sizeof($_FILES)==0) &&
+ isset($_GET['file']) &&
+ isset($_GET['file']['NewFile']) &&
+ is_array($_GET['file']['NewFile'])
+ ) {
+ if (isset($_GET['file']['NewFile']['name'])&&$_GET['file']['NewFile']['size']&&$_GET['file']['NewFile']['tmp_name']) {
+ $_FILES['NewFile']['name']=basename(str_replace("\\","/",$_GET['file']['NewFile']['name']));
+ $_FILES['NewFile']['size']=$_GET['file']['NewFile']['size'];
+ $_FILES['NewFile']['tmp_name']=$_GET['file']['NewFile']['tmp_name'];
+ } else {
+ $disp="202,'Incomplete file information from upload CGI'";
+ }
+ }
+
+// if (isset($_FILES['NewFile'])&&isset($_FILES['NewFile']['name'])&&($_FILES['NewFile']['name']!=""))
+// $_FILES['NewFile']['name']=$_FILES['NewFile']['name']; //$this->cleanFilename($_FILES['NewFile']['name']);
+
+ $typeconfig=$this->fckphp_config['ResourceAreas'][$this->type];
+
+ header ("content-type: text/html");
+ if (sizeof($_FILES)>0) {
+ if (array_key_exists("NewFile",$_FILES)) {
+ if ($_FILES['NewFile']['size']<($typeconfig['MaxSize']*1024)) {
+
+ $filename=basename(str_replace("\\","/",$_FILES['NewFile']['name']));
+
+ $lastdot=strrpos($filename,".");
+
+ if ($lastdot!==false) {
+ $ext=substr($filename,($lastdot+1));
+ $filename=substr($filename,0,$lastdot);
+
+ if (in_array(strtolower($ext),$typeconfig['AllowedExtensions'])) {
+
+ $test=0;
+ $dirSizes=array();
+ $globalSize=0;
+ $failSizeCheck=false;
+ if ($this->fckphp_config['DiskQuota']['Global']!=-1) {
+ foreach ($this->fckphp_config['ResourceTypes'] as $resType) {
+
+ $dirSizes[$resType]=
+ $this->getDirSize(
+ $this->fckphp_config['basedir']."/".$this->fckphp_config['UserFilesPath']."/$resType");
+
+ if ($dirSizes[$resType]===false) {
+ //Failed to stat a directory, fall out
+ $failSizeCheck=true;
+ $msg="\\nUnable to determine the size of a folder.";
+ break;
+ }
+ $globalSize+=$dirSizes[$resType];
+ }
+
+ $globalSize+=$_FILES['NewFile']['size'];
+
+ if (!$failSizeCheck) {
+ if ($globalSize>($this->fckphp_config['DiskQuota']['Global']*1048576)) {
+ $failSizeCheck=true;
+ $msg="\\nYou are over the global disk quota.";
+ }
+ }
+ }
+
+ if (($typeconfig['DiskQuota']!=-1)&&(!$failSizeCheck)) {
+ if ($this->fckphp_config['DiskQuota']['Global']==-1) {
+ $dirSizes[$this->type]=
+ $this->getDirSize(
+ $this->fckphp_config['basedir']."/".$this->fckphp_config['UserFilesPath']."/".$this->type);
+ }
+
+ if (($dirSizes[$this->type]+$_FILES['NewFile']['size'])>
+ ($typeconfig['DiskQuota']*1048576)) {
+ $failSizeCheck=true;
+ $msg="\\nYou are over the disk quota for this resource type.";
+ }
+ }
+
+ if ((($this->fckphp_config['DiskQuota']['Global']!=-1)||($typeconfig['DiskQuota']!=-1))&&$failSizeCheck) {
+ //Disk Quota over
+ $disp="202,'Over disk quota, ".$msg."'";
+ } else {
+
+ if (file_exists($this->real_cwd."/$filename.$ext")) {
+ $taskDone=false;
+
+ //File already exists, try renaming
+ //If there are more than 200 files with
+ // the same name giveup
+ for ($i=1;(($i<200)&&($taskDone==false));$i++) {
+ if (!file_exists($this->real_cwd."/$filename($i).$ext")) {
+ if (is_uploaded_file($_FILES['NewFile']['tmp_name'])) {
+ if
+ (move_uploaded_file($_FILES['NewFile']['tmp_name'],($this->real_cwd."/$filename($i).$ext"))) {
+ chmod(($this->real_cwd."/$filename($i).$ext"),0777);
+ $disp="201,'..$filename($i).$ext'";
+ } else {
+ $disp="202,'Failed to upload file, internal error.'";
+ }
+ } else {
+ if
+ (rename($_FILES['NewFile']['tmp_name'],($this->real_cwd."/$filename($i).$ext"))) {
+ chmod(($this->real_cwd."/$filename($i).$ext"),0777);
+ $disp="201,'$filename($i).$ext'";
+ } else {
+ $disp="202,'Failed to upload file, internal error.'";
+ }
+ }
+ $taskDone=true;
+ }
+ }
+ if ($taskDone==false) {
+ $disp="202,'Failed to upload file, internal error..'";
+ }
+ } else {
+ //Upload file
+ if (is_uploaded_file($_FILES['NewFile']['tmp_name'])) {
+ if (move_uploaded_file($_FILES['NewFile']['tmp_name'],($this->real_cwd."/$filename.$ext"))) {
+ chmod(($this->real_cwd."/$filename.$ext"),0777);
+ $disp="0";
+ } else {
+ $disp="202,'Failed to upload file, internal error...'";
+ }
+ } else {
+ if (rename($_FILES['NewFile']['tmp_name'],($this->real_cwd."/$filename.$ext"))) {
+ chmod(($this->real_cwd."/$filename.$ext"),0777);
+ $disp="0";
+ } else {
+ $disp="202,'Failed to upload file, internal error...'";
+ }
+ }
+ }
+ }
+ } else {
+ //Disallowed file extension
+ $disp="202,'Disallowed file type.'";
+ }
+
+ } else {
+ //No file extension to check
+ $disp="202,'Unable to determine file type of file'";
+ }
+
+ } else {
+ //Too big
+ $disp="202,'This file exceeds the maximum upload size.'";
+ }
+ } else {
+ //No file uploaded with field name NewFile
+ $disp="202,'Unable to find uploaded file.'";
+ }
+ } else {
+ //No files uploaded
+
+ //Should really send something back saying
+ //invalid file, but this breaks the filemanager
+ //with firefox, so for now we'll just exit
+ exit(0);
+ //$disp="202";
+ }
+
+ ?>
+ <html>
+ <head>
+ <title>Upload Complete</title>
+ </head>
+ <body>
+ <script type="text/javascript">
+ window.parent.frames['frmUpload'].OnUploadCompleted(<?php echo $disp; ?>) ;
+ </script>
+ </body>
+ </html>
+ <?php
+
+ }
+
+ function getDirSize($dir) {
+ $dirSize=0;
+ if ($dh=@opendir($dir)) {
+ while ($file=@readdir($dh)) {
+ if (($file!=".")&&($file!="..")) {
+ if (is_dir($dir."/".$file)) {
+ $tmp_dirSize=$this->getDirSize($dir."/".$file);
+ if ($tmp_dirSize!==false) $dirSize+=$tmp_dirSize;
+ } else {
+ $dirSize+=filesize($dir."/".$file);
+ }
+ }
+ }
+ @closedir($dh);
+ } else {
+ return false;
+ }
+
+ return $dirSize;
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFolders.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFolders.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFolders.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,66 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: GetFolders.php
+ * Implements the GetFolders command, to list the folders
+ * in the current directory. Output is in XML
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class GetFolders {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+
+ function GetFolders($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ }
+
+ function run() {
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="GetFolders" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <Folders>
+ <?php
+ if ($dh=opendir($this->real_cwd)) {
+ while (($filename=readdir($dh))!==false) {
+ if (($filename!=".")&&($filename!="..")) {
+ if (is_dir($this->real_cwd."/$filename")) {
+
+ //check if$fckphp_configured not to show this folder
+ $hide=false;
+ for($i=0;$i<sizeof($this->fckphp_config['ResourceAreas'][$this->type]['HideFolders']);$i++)
+ $hide=(ereg($this->fckphp_config['ResourceAreas'][$this->type]['HideFolders'][$i],$filename)?true:$hide);
+
+ if (!$hide) echo "<Folder name=\"$filename\" />\n";
+ }
+ }
+ }
+ closedir($dh);
+ }
+ ?>
+ </Folders>
+</Connector>
+ <?php
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFoldersAndFiles.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFoldersAndFiles.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetFoldersAndFiles.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,152 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: GetFoldersAndFiles.php
+ * Implements the GetFoldersAndFiles command, to list
+ * files and folders in the current directory.
+ * Output is in XML
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class GetFoldersAndFiles {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+
+ function GetFoldersAndFiles($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ }
+
+ function run() {
+
+ header ("Content-Type: application/xml; charset=utf-8");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<!DOCTYPE Connector [
+
+<?php include "dtd/iso-lat1.ent";?>
+
+ <!ELEMENT Connector (CurrentFolder,Folders,Files)>
+ <!ATTLIST Connector command CDATA "noname">
+ <!ATTLIST Connector resourceType CDATA "0">
+
+ <!ELEMENT CurrentFolder (#PCDATA)>
+ <!ATTLIST CurrentFolder path CDATA "noname">
+ <!ATTLIST CurrentFolder url CDATA "0">
+
+ <!ELEMENT Folders (#PCDATA)>
+
+ <!ELEMENT Folder (#PCDATA)>
+ <!ATTLIST Folder name CDATA "noname_dir">
+
+ <!ELEMENT Files (#PCDATA)>
+
+ <!ELEMENT File (#PCDATA)>
+ <!ATTLIST File name CDATA "noname_file">
+ <!ATTLIST File size CDATA "0">
+] >
+
+<Connector command="GetFoldersAndFiles" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->fckphp_config['urlprefix'] . $this->actual_cwd; ?>" />
+ <Folders>
+<?php
+ $files=array();
+ if ($dh=opendir($this->real_cwd)) {
+ while (($filename=readdir($dh))!==false) {
+
+ if (($filename!=".")&&($filename!="..")) {
+ if (is_dir($this->real_cwd."/$filename")) {
+ //check if$fckphp_configured not to show this folder
+ $hide=false;
+ for($i=0;$i<sizeof($this->fckphp_config['ResourceAreas'][$this->type]['HideFolders']);$i++)
+ $hide=(ereg($this->fckphp_config['ResourceAreas'][$this->type]['HideFolders'][$i],$filename)?true:$hide);
+
+ if (!$hide) echo "\t\t<Folder name=\"$filename\" />\n";
+
+ } else {
+ array_push($files,$filename);
+ }
+ }
+ }
+ closedir($dh);
+ }
+ echo "\t</Folders>\n";
+ echo "\t<Files>\n";
+
+ for ($i=0;$i<sizeof($files);$i++) {
+
+ $lastdot=strrpos($files[$i],".");
+ $ext=(($lastdot!==false)?(substr($files[$i],$lastdot+1)):"");
+
+ if (in_array(strtolower($ext),$this->fckphp_config['ResourceAreas'][$this->type]['AllowedExtensions'])) {
+
+ //check if$fckphp_configured not to show this file
+ $editable=$hide=false;
+ for($j=0;$j<sizeof($this->fckphp_config['ResourceAreas'][$this->type]['HideFiles']);$j++)
+ $hide=(ereg($this->fckphp_config['ResourceAreas'][$this->type]['HideFiles'][$j],$files[$i])?true:$hide);
+
+ if (!$hide) {
+ if ($this->fckphp_config['ResourceAreas'][$this->type]['AllowImageEditing'])
+ $editable=$this->isImageEditable($this->real_cwd."/".$files[$i]);
+
+ echo "\t\t<File name=\"".htmlentities($files[$i])."\" size=\"".ceil(filesize($this->real_cwd."/".$files[$i])/1024)."\" editable=\"" . ( $editable?"1":"0" ) . "\" />\n";
+ }
+
+ }
+
+ }
+
+ echo "\t</Files>\n";
+ echo "</Connector>\n";
+ }
+
+
+ function isImageEditable($file) {
+ $fh=fopen($file,"r");
+ if ($fh) {
+ $start4=fread($fh,4);
+ fclose($fh);
+
+ $start3=substr($start4,0,3);
+
+ if ($start4=="\x89PNG") { //PNG
+ return (function_exists("imagecreatefrompng") && function_exists("imagepng"));
+
+ } elseif ($start3=="GIF") { //GIF
+ return (function_exists("imagecreatefromgif") && function_exists("imagegif"));
+
+ } elseif ($start3=="\xFF\xD8\xFF") { //JPEG
+ return (function_exists("imagecreatefromjpeg")&& function_exists("imagejpeg"));
+
+ } elseif ($start4=="hsi1") { //JPEG
+ return (function_exists("imagecreatefromjpeg")&& function_exists("imagejpeg"));
+
+ } else {
+ return false;
+ }
+
+ } else {
+ return false;
+ }
+ }
+
+
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetUploadProgress.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetUploadProgress.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/GetUploadProgress.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,89 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: GetUploadProgress.php
+ * Implements the GetFolders command, to list the folders
+ * in the current directory. Output is in XML
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class GetUploadProgress {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $uploadID;
+
+ function GetUploadProgress($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ $this->uploadID=$_GET['uploadID'];
+ $this->refreshURL=$_GET['refreshURL'];
+
+ }
+
+ function run() {
+ if (isset($this->refreshURL)&&($this->refreshURL!="")) {
+ //Continue monitoring
+ $uploadProgress=file($this->refreshURL);
+ $url=$this->refreshURL;
+ } else {
+ //New download
+ $uploadProgressHandler=$this->fckphp_config['uploadProgressHandler'];
+ if ($uploadProgressHandler=='') {
+ //Progresshandler not specified, return generic response
+ ?>
+<Connector command="GetUploadProgress" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <Progress max="2" value="1" />
+ <RefreshURL url="" />
+</Connector>
+ <?php
+ exit(0);
+ }
+
+ $url=$uploadProgressHandler."?iTotal=0&iRead=0&iStatus=1&sessionid=".$this->uploadID."&dtnow=".time()."&dtstart=".time();
+
+ $_SESSION[$this->uploadID]=$url;
+ $uploadProgress=file($url);
+
+ }
+
+ $uploadProgress2=implode("\n",$uploadProgress);
+
+ $parser = xml_parser_create();
+ xml_parse_into_struct($parser, $uploadProgress2, $vals, $index);
+
+ $refreshURL=isset($vals[$index['REFRESHURL'][0]]['value'])?$vals[$index['REFRESHURL'][0]]['value']:"";
+ $totalBytes=isset($vals[$index['TOTALBYTES'][0]]['value'])?$vals[$index['TOTALBYTES'][0]]['value']:0;
+ $readBytes=isset($vals[$index['READBYTES'][0]]['value'])?$vals[$index['READBYTES'][0]]['value']:0;
+ $status=isset($vals[$index['STATUS'][0]]['value'])?$vals[$index['STATUS'][0]]['value']:1;
+
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="GetUploadProgress" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <Progress max="<?php echo $totalBytes; ?>" value="<?php echo $readBytes; ?>" />
+ <RefreshURL url="<?php echo htmlentities($refreshURL); ?>" />
+</Connector>
+ <?php
+ xml_parser_free($parser);
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFile.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFile.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFile.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,99 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: RenameFile.php
+ * Implements the DeleteFile command to delete a file
+ * in the current directory. Output is in XML
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class RenameFile {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $newfolder;
+
+ function RenameFile($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ $this->filename=str_replace(array("..","/"),"",$_GET['FileName']);
+ $this->newname=str_replace(array("..","/"),"",$this->checkName($_GET['NewName']));
+ }
+
+ function checkName($name) {
+ $newName="";
+ for ($i=0;$i<strlen($name);$i++) {
+ if (in_array($name[$i],$this->fckphp_config['FileNameAllowedChars'])) $newName.=$name[$i];
+ }
+ return $newName;
+ }
+
+ function run() {
+ $result1=false;
+ $result2=true;
+
+ if ($this->newname!='') {
+
+ if ($this->nameValid($this->newname)) {
+ //Remove thumbnail if it exists
+ $result2=true;
+ $thumb=$this->real_cwd.'/.thumb_'.$this->filename;
+ if (file_exists($thumb)) $result2=unlink($thumb);
+
+ $result1=rename($this->real_cwd.'/'.$this->filename,$this->real_cwd.'/'.$this->newname);
+ } else {
+ $result1=false;
+ }
+ }
+
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="RenameFile" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <?php
+ if ($result1&&$result2) {
+ $err_no=0;
+ } else {
+ $err_no=502;
+ }
+ ?>
+ <Error number="<?php echo "".$err_no; ?>" />
+</Connector>
+ <?php
+ }
+
+ function nameValid($fname) {
+ $type_config=$this->fckphp_config['ResourceAreas'][$this->type];
+
+ $lastdot=strrpos($fname,".");
+
+ if ($lastdot!==false) {
+ $ext=substr($fname,($lastdot+1));
+ $fname=substr($fname,0,$lastdot);
+
+ if (in_array(strtolower($ext),$type_config['AllowedExtensions'])) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFolder.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFolder.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/RenameFolder.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,73 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: RenameFolder.php
+ * Implements the DeleteFile command to delete a file
+ * in the current directory. Output is in XML
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+class RenameFolder {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $newfolder;
+
+ function RenameFolder($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ $this->foldername=str_replace(array("..","/"),"",$_GET['FolderName']);
+ $this->newname=str_replace(array("..","/"),"",$this->checkName($_GET['NewName']));
+ }
+
+ function checkName($name) {
+ $newName="";
+ for ($i=0;$i<strlen($name);$i++) {
+ if (in_array($name[$i],$this->fckphp_config['DirNameAllowedChars'])) $newName.=$name[$i];
+ }
+ return $newName;
+ }
+
+ function run() {
+ $result1=false;
+
+
+ if ($this->newname!='') {
+ $result1=rename($this->real_cwd.'/'.$this->foldername,$this->real_cwd.'/'.$this->newname);
+ }
+
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="RenameFolder" resourceType="<?php echo $this->type; ?>">
+ <CurrentFolder path="<?php echo $this->raw_cwd; ?>" url="<?php echo $this->actual_cwd; ?>" />
+ <?php
+ if ($result1) {
+ $err_no=0;
+ } else {
+ $err_no=602;
+ }
+
+ ?>
+ <Error number="<?php echo "".$err_no; ?>" />
+</Connector>
+ <?php
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/Thumbnail.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/Thumbnail.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/Thumbnail.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,243 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: Thumbnail.php
+ * Implements the Thumbnail command, to return
+ * a thumbnail to the browser for the sent file,
+ * if the file is an image an attempt is made to
+ * generate a thumbnail, otherwise an appropriate
+ * icon is returned.
+ * Output is image data
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+include "helpers/iconlookup.php";
+
+class Thumbnail {
+ var $fckphp_config;
+ var $type;
+ var $cwd;
+ var $actual_cwd;
+ var $filename;
+
+ function Thumbnail($fckphp_config,$type,$cwd) {
+ $this->fckphp_config=$fckphp_config;
+ $this->type=$type;
+ $this->raw_cwd=$cwd;
+ $this->actual_cwd=str_replace("//","/",($fckphp_config['UserFilesPath']."/$type/".$this->raw_cwd));
+ $this->real_cwd=str_replace("//","/",($this->fckphp_config['basedir']."/".$this->actual_cwd));
+ $this->filename=str_replace(array("..","/"),"",$_GET['FileName']);
+ }
+
+ function run() {
+ //$mimeIcon=getMimeIcon($mime);
+ $fullfile=$this->real_cwd.'/'.$this->filename;
+ $thumbfile=$this->real_cwd.'/.thumb_'.$this->filename;
+ $icon=false;
+
+ if (file_exists($thumbfile)) {
+ $icon=$thumbfile;
+ } else {
+ $mime=$this->getMIME($fullfile);
+ $ext=strtolower($this->getExtension($this->filename));
+
+ if ($this->isImage($mime,$ext))
+ {
+
+ //Try and find a thumbnail, else try to generate one
+ // else send generic picture icon.
+
+ if ($this->isJPEG($mime,$ext)) {
+ $result=$this->resizeFromJPEG($fullfile);
+
+ } elseif ($this->isGIF($mime,$ext)) {
+ $result=$this->resizeFromGIF($fullfile);
+
+ } elseif ($this->isPNG($mime,$ext)) {
+ $result=$this->resizeFromPNG($fullfile);
+ }
+
+ if ($result!==false) {
+ if (function_exists("imagejpeg")) {
+ imagejpeg($result,$thumbfile,70);
+ chmod($thumbfile,0777);
+ $icon=$thumbfile;
+ } elseif (function_exists("imagepng")) {
+ imagepng($result,$thumbfile);
+ chmod($thumbfile,0777);
+ $icon=$thumbfile;
+ } elseif (function_exists("imagegif")) {
+ imagegif($result,$thumbfile);
+ chmod($thumbfile,0777);
+ $icon=$thumbfile;
+ } else {
+ $icon=iconLookup($mime,$ext);
+ }
+
+ } else {
+ $icon=iconLookup($mime,$ext);
+ }
+ } else {
+ $icon=iconLookup($mime,$ext);
+ }
+ }
+
+
+ $iconMime=$this->image2MIME($icon);
+ if ($iconMime==false) $iconMime="image/jpeg";
+
+ header("Content-type: $iconMime",true);
+ readfile($icon);
+
+ }
+
+ function getMIME($file) {
+ $mime="text/plain";
+
+ //If mime magic is installed
+ if (function_exists("mime_content_type")) {
+ $mime=mime_content_type($file);
+ } else {
+ $mime=$this->image2MIME($file);
+ }
+
+ return strtolower($mime);
+ }
+
+ function image2MIME($file) {
+ $fh=fopen($file,"r");
+ if ($fh) {
+ $start4=fread($fh,4);
+ $start3=substr($start4,0,3);
+
+ if ($start4=="\x89PNG") {
+ return "image/png";
+ } elseif ($start3=="GIF") {
+ return "image/gif";
+ } elseif ($start3=="\xFF\xD8\xFF") {
+ return "image/jpeg";
+ } elseif ($start4=="hsi1") {
+ return "image/jpeg";
+ } else {
+ return false;
+ }
+
+ unset($start3);unset($start4);
+ fclose($fh);
+ } else {
+ return false;
+ }
+ }
+
+
+ function isImage($mime,$ext) {
+ if (
+ ($mime=="image/gif")||
+ ($mime=="image/jpeg")||
+ ($mime=="image/jpg")||
+ ($mime=="image/pjpeg")||
+ ($mime=="image/png")||
+ ($ext=="jpg")||
+ ($ext=="jpeg")||
+ ($ext=="png")||
+ ($ext=="gif") ) {
+
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ function isJPEG($mime,$ext) {
+ if (($mime=="image/jpeg")||($mime=="image/jpg")||($mime=="image/pjpeg")||($ext=="jpg")||($ext=="jpeg")) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ function isGIF($mime,$ext) {
+ if (($mime=="image/gif")||($ext=="gif")) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ function isPNG($mime,$ext) {
+ if (($mime=="image/png")||($ext=="png")) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+
+ function getExtension($filename) {
+ //Get Extension
+ $ext="";
+ $lastpos=strrpos($this->filename,'.');
+ if ($lastpos!==false) $ext=substr($this->filename,($lastpos+1));
+ return strtolower($ext);
+ }
+
+ function resizeFromJPEG($file) {
+ if (function_exists("imagecreatefromjpeg")) {
+ $img=@imagecreatefromjpeg($this->real_cwd.'/'.$this->filename);
+ return (($img)?$this->resizeImage($img):false);
+ } else { return false; }
+ }
+
+ function resizeFromGIF($file) {
+ if (function_exists("imagecreatefromgif")) {
+ $img=@imagecreatefromgif($this->real_cwd.'/'.$this->filename);
+ return (($img)?$this->resizeImage($img):false);
+ } else { return false; }
+ }
+
+ function resizeFromPNG($file) {
+ if (function_exists("imagecreatefrompng")) {
+ $img=@imagecreatefrompng($this->real_cwd.'/'.$this->filename);
+ return (($img)?$this->resizeImage($img):false);
+ } else { return false; }
+ }
+
+ function resizeImage($img) {
+ //Get size for thumbnail
+ $width=imagesx($img); $height=imagesy($img);
+ if ($width>$height) { $n_height=$height*(96/$width); $n_width=96; } else { $n_width=$width*(96/$height); $n_height=96; }
+
+ $x=0;$y=0;
+ if ($n_width<96) $x=round((96-$n_width)/2);
+ if ($n_height<96) $y=round((96-$n_height)/2);
+
+ $thumb=imagecreatetruecolor(96,96);
+
+ #Background colour fix by:
+ #Ben Lancaster (benlanc at ster.me.uk)
+ $bgcolor = imagecolorallocate($thumb,255,255,255);
+ imagefill($thumb, 0, 0, $bgcolor);
+
+ if (function_exists("imagecopyresampled")) {
+ if (!($result=@imagecopyresampled($thumb,$img,$x,$y,0,0,$n_width,$n_height,$width,$height))) {
+ $result=imagecopyresized($thumb,$img,$x,$y,0,0,$n_width,$n_height,$width,$height);
+ }
+ } else {
+ $result=imagecopyresized($thumb,$img,$x,$y,0,0,$n_width,$n_height,$width,$height);
+ }
+
+ return ($result)?$thumb:false;
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/.htaccess
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/.htaccess 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/.htaccess 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1 @@
+Options ExecCGI
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/header.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/header.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/header.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,41 @@
+#!/usr/bin/perl
+
+# Mega Upload
+# PHP File Uploader with progress bar Version 1.42
+# Copyright (C) Raditha Dissanyake 2003
+# http://www.raditha.com
+
+# Licence:
+# The contents of this file are subject to the Mozilla Public
+# License Version 1.1 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS
+# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# rights and limitations under the License.
+#
+# The Initial Developer of the Original Code is Raditha Dissanayake.
+# Portions created by Raditha are Copyright (C) 2003
+# Raditha Dissanayake. All Rights Reserved.
+#
+
+$tmp_dir="/www/m/c/mcpuk.net/tmp";
+
+$|=1; #unbuffers streams
+
+$interval=1; # how often to refresh the progress bar
+
+$max_upload = 500000000000; # set this to whatever you feel suitable for you.
+
+
+
+# don't change the next few lines unless you have a very good reason to.
+
+$post_data_file = "$tmp_dir/$sessionid"."_postdata";
+$monitor_file = "$tmp_dir/$sessionid"."_flength";
+$signal_file = "$tmp_dir/$sessionid"."_signal";
+
+
+1;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/iconlookup.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/iconlookup.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/iconlookup.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,111 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: iconlookup.php
+ * (!)
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+function iconLookup($mime,$ext) {
+
+ $mimeIcons=array(
+ "image"=>"image.jpg",
+ "audio"=>"sound.jpg",
+ "video"=>"video.jpg",
+ "text"=>"document2.jpg",
+ "text/html"=>"html.jpg",
+ "application"=>"binary.jpg",
+ "application/pdf"=>"pdf.jpg",
+ "application/msword"=>"document2.jpg",
+ "application/postscript"=>"postscript.jpg",
+ "application/rtf"=>"document2.jpg",
+ "application/vnd.ms-excel"=>"document2.jpg",
+ "application/vnd.ms-powerpoint"=>"document2.jpg",
+ "application/x-tar"=>"tar.jpg",
+ "application/zip"=>"tar.jpg",
+ "message"=>"email.jpg",
+ "message/html"=>"html.jpg",
+ "model"=>"kmplot.jpg",
+ "multipart"=>"kmultiple.jpg"
+ );
+
+ $extIcons=array(
+ "pdf"=>"pdf.jpg",
+ "ps"=>"postscript.jpg",
+ "eps"=>"postscript.jpg",
+ "ai"=>"postscript.jpg",
+ "ra"=>"real_doc.jpg",
+ "rm"=>"real_doc.jpg",
+ "ram"=>"real_doc.jpg",
+ "wav"=>"sound.jpg",
+ "mp3"=>"sound.jpg",
+ "ogg"=>"sound.jpg",
+ "eml"=>"email.jpg",
+ "tar"=>"tar.jpg",
+ "zip"=>"tar.jpg",
+ "bz2"=>"tar.jpg",
+ "tgz"=>"tar.jpg",
+ "gz"=>"tar.jpg",
+ "rar"=>"tar.jpg",
+ "avi"=>"video.jpg",
+ "mpg"=>"video.jpg",
+ "mpeg"=>"video.jpg",
+ "jpg"=>"image.jpg",
+ "gif"=>"image.jpg",
+ "png"=>"image.jpg",
+ "jpeg"=>"image.jpg",
+ "nfo"=>"info.jpg",
+ "xls"=>"spreadsheet.jpg",
+ "csv"=>"spreadsheet.jpg",
+ "html"=>"html.jpg",
+ "doc"=>"document2.jpg",
+ "rtf"=>"document2.jpg",
+ "txt"=>"document2.jpg",
+ "xla"=>"document2.jpg",
+ "xlc"=>"document2.jpg",
+ "xlt"=>"document2.jpg",
+ "xlw"=>"document2.jpg",
+ "txt"=>"document2.jpg"
+ );
+
+ if ($mime!="text/plain") {
+ //Check specific cases
+ $mimes=array_keys($mimeIcons);
+ if (in_array($mime,$mimes)) {
+ return $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF'])."/images/".$mimeIcons[$mime];
+ } else {
+ //Check for the generic mime type
+ $mimePrefix="text";
+ $firstSlash=strpos($mime,"/");
+ if ($firstSlash!==false) $mimePrefix=substr($mime,0,$firstSlash);
+
+ if (in_array($mimePrefix,$mimes)) {
+ return $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF'])."/images/".$mimeIcons[$mimePrefix];
+ } else {
+ return $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF'])."/images/empty.jpg";
+ }
+ }
+ } else {
+ $extensions=array_keys($extIcons);
+ if (in_array($ext,$extensions)) {
+ return $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF'])."/images/".$extIcons[$ext];
+ } else {
+ return $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF'])."/images/empty.jpg";
+ }
+ }
+
+ return $_SERVER['DOCUMENT_ROOT'].dirname($_SERVER['PHP_SELF'])."/images/empty.jpg";
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/progress.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/progress.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/progress.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,413 @@
+#!/usr/bin/perl -w
+
+# PHP File Uploader with progress bar Version 1.43
+# Copyright (C) Raditha Dissanyake 2003,2004
+# http://www.raditha.com
+
+# Licence:
+# The contents of this file are subject to the Mozilla Public
+# License Version 1.1 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under the License is distributed on an "AS
+# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# rights and limitations under the License.
+#
+# The Initial Developer of the Original Code is Raditha Dissanayake.
+# Portions created by Raditha are Copyright (C) 2003,2004
+# Raditha Dissanayake. All Rights Reserved.
+#
+# Portions contributed by Orest Kinasevych are Copyright (C)
+# 2003 Kinasevych Saj
+
+#
+# CHANGES
+# 1.00
+# No longer uses cookies. This has two major benefits; the first
+# being that minority of users who do not like cookies are not
+# inconvinienced. Secondly there is one less dependecy and this
+# would lead to a smoother setup for most people.
+# (if you want to use cookies look at the contrib folder)
+#
+# 1.02
+# added a cache control header in version 1.02
+#
+# 1.10
+# Added a more detailed progress bar in version
+#
+# 1.42
+# The organization of the temporary files have been improved so to
+# make is easier to clean up after abandoned uploads. (as suggested
+# by Igor Kryltsov)
+#
+#
+
+
+
+use CGI;
+use Fcntl qw(:DEFAULT :flock);
+
+#use Carp;
+# Carp is only needed if you want debugging. Uncomment the above line
+# if you comment out any of the carp statements in the body of the
+# script.
+
+
+#
+# the most obvious issue that we will face is file locking.
+# if two threads read and write from the same file at the same
+# time only one of them will be allowed to finish the operation.
+# Since we are storing our temporary data in a file we are likely to
+# run into that exact same problem.
+# We can't overcome it but we can make sure the progress bar does
+# not display junk when that happens.
+#
+#
+# status codes = 0-uploading, 1-started, 2- complete
+
+
+$query = new CGI();
+$sessionid = $query->param('sessionid');
+$sessionid =~ s/[^a-zA-Z0-9]//g; # santized as suggested by Terrence Johnson.
+
+$iTotal = $query->param('iTotal');
+$iRead = $query->param('iRead');
+$status = $query->param('iStatus');
+
+
+##
+# The code that deals with calculating elapsed time, time remaining
+# and upload speed were contributed by Orest Kinasevych
+##
+
+##
+# Get values assigned for current time and upload start time
+##
+#$dtnow = $query->param('dtnow'); # assign value for current time
+$dtnow=time;
+$dtstart = $query->param('dtstart'); # assign value for upload start time
+##
+
+
+#carp "$dtnow $dtstart";
+
+$thisUrl = $query->url;
+
+##
+# Elapsed time
+# Calculate elapsed time and format for display
+##
+$dtelapsed = $dtnow - $dtstart;
+$dtelapsed_sec = ($dtelapsed % 60); # gets number of seconds
+$dtelapsed_min = ((($dtelapsed - $dtelapsed_sec) % 3600) / 60); # gets number of minutes
+$dtelapsed_hours = (((($dtelapsed - $dtelapsed_sec) - ($dtelapsed_min * 60)) % 86400) / 3600);
+# gets number of hours; assuming that we won't be going into days!
+if ($dtelapsed_sec < 10) { $dtelapsed_sec = "0$dtelapsed_sec"; } # append leading zero
+if ($dtelapsed_min < 10) { $dtelapsed_min = "0$dtelapsed_min"; } # append leading zero
+if ($dtelapsed_hours < 10) { $dtelapsed_hours = "0$dtelapsed_hours"; } # append leading zero
+$dtelapsedf = "$dtelapsed_hours:$dtelapsed_min:$dtelapsed_sec"; # display as 00:00:00
+##
+
+##
+# Upload speed
+##
+$bSpeed = 0; # if not yet determined
+if ($dtelapsed > 0) # avoid divide by zero errors
+{
+ $bSpeed = $iRead / $dtelapsed; # Bytes uploaded / Seconds elapsed = Bytes/Second speed
+ $bitSpeed = $bSpeed * 8; # bps
+ $kbitSpeed = $bitSpeed / 1000; # Kbps
+}
+else
+{
+ $kbitSpeed = $bSpeed; # just pass the zero value
+}
+$bSpeedf = sprintf("%d",$kbitSpeed); # remove decimals
+
+
+##
+# Est remaining time
+# Calculate remaining time based on upload speed so far
+##
+
+$bRemaining = $iTotal - $iRead; # Total size - amount uploaded = amount remaining
+$dtRemaining = 0;
+if ($bSpeed > 0) {
+ # Bytes remaining / Bytes/Second = Seconds
+ $dtRemaining = $bRemaining / $bSpeed;
+}
+$dtRemaining = sprintf("%d",$dtRemaining); # remove decimals
+$dtRemaining_sec = ($dtRemaining % 60); # gets number of seconds
+$dtRemaining_min = ((($dtRemaining - $dtRemaining_sec) % 3600) / 60); # gets number of minutes
+$dtRemaining_hours = (((($dtRemaining - $dtRemaining_sec) - ($dtRemaining_min * 60)) % 86400) / 3600); # gets number of hours; assuming that we won't be going into days!
+if ($dtRemaining_sec < 10)
+{
+ # append leading zero
+ $dtRemaining_sec = "0$dtRemaining_sec";
+}
+if ($dtRemaining_min < 10)
+{
+ # append leading zero
+ $dtRemaining_min = "0$dtRemaining_min";
+}
+if ($dtRemaining_hours < 10)
+{
+ # append leading zero
+ $dtRemaining_hours = "0$dtRemaining_hours";
+}
+$dtRemainingf = "$dtRemaining_hours:$dtRemaining_min:$dtRemaining_sec"; # display as 00:00:00
+
+##
+# The values for iStatus are
+# 0 - in progress
+# 1 - New upload
+# 2 - Complete
+##
+
+#carp "iTotal = $iTotal, iRead = $iRead, status = $status, sessionId = $sessionid";
+
+require("./header.cgi");
+
+
+sub readFlength()
+{
+
+ if(open (STAT, $monitor_file))
+ {
+ sysopen(STAT, $monitor_file, O_RDONLY)
+ or die "can't open numfile: $!";
+ $ofh = select(STAT); $| = 1; select ($ofh);
+ $iTotal = <STAT>;
+
+ #carp "trying to read the stuff in $iTotal";
+ if(defined($iTotal) && $iTotal ne "")
+ {
+ return 1;
+
+ }
+ else
+ {
+ return 0;
+ }
+ }
+ return 0;
+
+}
+
+##
+# many thanx to Terrence Johnson who pointed out the fact that i should have added
+# cache control header.
+##
+
+print "Pragma: no-cache\n";
+print "Content-type: text/xml\n\n ";
+
+if($status == 1)
+{
+ #new upload starting
+ show_starting();
+}
+elsif($status ==0)
+{
+ ##
+ # in progress
+ # we will try to read in the total size of data to be transfered from the
+ # shared file. It will also tell us how much data has been transfered upto
+ # now.
+ ##
+ $bRead = -s "$post_data_file";
+
+ if(defined $bRead)
+ {
+ # We have been able to read in it from the file.
+ $percent = $bRead * 100 / $iTotal;
+ $iRead=$bRead;
+
+ }
+ else
+ {
+ &show_error();
+ exit();
+ }
+
+ #
+ # division results in truncation errors at times so don't compare percentage
+ # There have been occaisional reports of the progress bar showing 100% but not
+ # disappearing even after file upload has been completed.
+ #
+ # Nils Menrad came up with the solution which is to modify the end of upload
+ # test.
+ #
+ if((($iTotal == $bRead) && $bRead != 0) || $bRead>$iTotal)
+ {
+ if($status == 1 && -e "$signal_file")
+ {
+ $bRead=0;
+ $status=0;
+ &get_last_values();
+ }
+ else
+ {
+ show_complete();
+ unlink $monitor_file;
+ unlink $post_data_file;
+ unlink $signal_file;
+
+ exit;
+ }
+ }
+ else
+ {
+ $kachal = "$bRead , $iTotal";
+ }
+
+
+ &make_progress_bar();
+ exit;
+}
+else
+{
+ show_complete();
+}
+
+#
+# Since the progress bar is in html, so it needs to refresh itself periodicaly to
+# obtain new values. The refresh url with the query string is generated by this
+# function.
+
+sub make_url
+{
+
+ #print "Content-type: text/html\n\n ";
+ #print "hellow $iTotal $iStatus $sessionid $iRead <br>\n" ;
+
+ ##
+ $url = "$thisUrl?iTotal=$iTotal&iRead=$iRead&iStatus=$status&sessionid=$sessionid&dtnow=$dtnow&dtstart=$dtstart";
+ ##
+ $url =~ s/\n//;
+
+ return $url;
+
+}
+
+sub make_progress_bar
+{
+ $url = make_url();
+
+ print <<__PART1__;
+ <UploadProgress sessionID="$sessionid">
+ <RefreshURL><![CDATA[$url]]></RefreshURL>
+ <TotalBytes>$iTotal</TotalBytes>
+ <ReadBytes>$iRead</ReadBytes>
+ <Status>$status</Status>
+ <Speed>$bSpeedf</Speed>
+ <TimeRemaining>$dtRemainingf</TimeRemaining>
+ <TimeElapsed>$dtelapsedf</TimeElapsed>
+ </UploadProgress>
+__PART1__
+
+}
+
+
+sub show_complete
+{
+
+ $status=2;
+ $url = make_url();
+
+ print <<__PART2__;
+ <UploadProgress sessionID="$sessionid">
+ <RefreshURL><![CDATA[$url]]></RefreshURL>
+ <TotalBytes>$iTotal</TotalBytes>
+ <ReadBytes>$iRead</ReadBytes>
+ <Status>$status</Status>
+ <Speed>$bSpeedf</Speed>
+ <TimeRemaining>0</TimeRemaining>
+ <TimeElapsed>$dtelapsedf</TimeElapsed>
+ </UploadProgress>
+__PART2__
+
+}
+
+sub show_starting
+{
+ #carp "starting";
+ if(readFlength() == 1)
+ {
+ $status=0;
+ }
+ $url = make_url();
+
+ print <<__PART2__;
+ <UploadProgress sessionID="$sessionid">
+ <RefreshURL><![CDATA[$url]]></RefreshURL>
+ <TotalBytes>$iTotal</TotalBytes>
+ <ReadBytes>$iRead</ReadBytes>
+ <Status>$status</Status>
+ <Speed>$bSpeedf</Speed>
+ <TimeRemaining>$dtRemainingf</TimeRemaining>
+ <TimeElapsed>$dtelapsedf</TimeElapsed>
+ </UploadProgress>
+__PART2__
+}
+
+sub show_error
+{
+ $url = make_url();
+ print <<__PART2__;
+ <UploadProgress sessionID="$sessionid">
+ <RefreshURL><![CDATA[$url]]></RefreshURL>
+ <TotalBytes>$iTotal</TotalBytes>
+ <ReadBytes>$iRead</ReadBytes>
+ <Status>-1</Status>
+ <Speed>$bSpeedf</Speed>
+ <TimeRemaining>$dtRemainingf</TimeRemaining>
+ <TimeElapsed>$dtelapsedf</TimeElapsed>
+ </UploadProgress>
+__PART2__
+
+}
+
+# this function may not return;
+sub get_last_values()
+{
+ if($status == 1)
+ {
+ show_starting();
+ exit;
+ }
+ else
+ {
+
+ if($status == 2)
+ {
+
+
+ show_complete();
+ exit;
+ }
+ else
+ {
+
+ #
+ # we have done everything possible to try to retrieve the data
+ # now try to calculate the percentage once again
+ #
+ $iTotal = $iTotal;
+ $bRead = $iRead;
+
+ if(defined($iTotal) && $iTotal != 0)
+ {
+ $percent = $bRead * 100 / $iTotal;
+ $kachal="1";
+ }
+ else
+ {
+ &show_error();
+ exit;
+ }
+ }
+ }
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/upload.cgi
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/upload.cgi 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Commands/helpers/upload.cgi 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,195 @@
+#!/usr/bin/perl
+
+# PHP File Uploader with progress bar Version 1.43
+# Copyright (C) Raditha Dissanyake 2003
+# http://www.raditha.com
+
+# Licence:
+# The contents of this file are subject to the Mozilla Public
+# License Version 1.1 (the "License"); you may not use this file
+# except in compliance with the License. You may obtain a copy of
+# the License at http://www.mozilla.org/MPL/
+#
+# Software distributed under this License is distributed on an "AS
+# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+# implied. See the License for the specific language governing
+# rights and limitations under the License.
+#
+# The Initial Developer of the Original Code is Raditha Dissanayake.
+# Portions created by Raditha are Copyright (C) 2003
+# Raditha Dissanayake. All Rights Reserved.
+#
+
+# CHANGES:
+# As of version 1.00 cookies were abolished!
+# as of version 1.02 stdin is no longer set to non blocking.
+# 1.40 - POST is no longer required and processing is more efficient.
+# Please refer online docs for details.
+# 1.42 - The temporary locations were changed, to make it easier to
+# clean up afterwards.
+
+use CGI;
+use Fcntl qw(:DEFAULT :flock);
+use File::Temp qw/ tempfile tempdir /;
+#use Carp;
+
+
+ at qstring=split(/&/,$ENV{'QUERY_STRING'});
+ at p1 = split(/=/,$qstring[0]);
+$sessionid = $p1[1];
+$sessionid =~ s/[^a-zA-Z0-9]//g; # sanitized as suggested by Terrence Johnson.
+
+ at p1 = split(/=/,$qstring[1]);
+$php_uploader = $p1[1];
+
+require("./header.cgi");
+
+#carp "$post_data_file and $monitor_file";
+
+$content_type = $ENV{'CONTENT_TYPE'};
+$len = $ENV{'CONTENT_LENGTH'};
+$bRead=0;
+$|=1;
+
+sub bye_bye {
+ $mes = shift;
+ print "Content-type: text/html\n\n";
+ print "<br>$mes<br>\n";
+
+ exit;
+}
+
+
+#
+# The thing to watch out for is file locking. Only
+# one thread may open a file for writing at any given time.
+#
+
+if (-e "$post_data_file") {
+ unlink("$post_data_file");
+}
+
+if (-e "$monitor_file") {
+ unlink("$monitor_file");
+}
+
+
+sysopen(FH, $monitor_file, O_RDWR | O_CREAT, 0x777)
+ or die "can't open numfile: $!";
+
+# autoflush FH
+$ofh = select(FH); $| = 1; select ($ofh);
+flock(FH, LOCK_EX)
+ or die "can't write-lock numfile: $!";
+seek(FH, 0, 0)
+ or die "can't rewind numfile : $!";
+print FH $len;
+close(FH);
+
+sleep(1);
+
+
+open(TMP,">","$post_data_file") or &bye_bye ("can't open temp file");
+
+#
+# read and store the raw post data on a temporary file so that we can
+# pass it though to a CGI instance later on.
+#
+
+
+
+my $i=0;
+
+$ofh = select(TMP); $| = 1; select ($ofh);
+
+while (read (STDIN ,$LINE, 32768) && $bRead < $len )
+{
+ $bRead += length $LINE;
+
+ select(undef, undef, undef,0.01); # sleep for 0.35 of a second.
+
+ # Many thanx to Patrick Knoell who came up with the optimized value for
+ # the duration of the sleep
+
+ $i++;
+ print TMP $LINE;
+}
+
+close (TMP);
+
+
+
+#
+# We don't want to decode the post data ourselves. That's like
+# reinventing the wheel. If we handle the post data with the perl
+# CGI module that means the PHP script does not get access to the
+# files, but there is a way around this.
+#
+# We can ask the CGI module to save the files, then we can pass
+# these filenames to the PHP script. In other words instead of
+# giving the raw post data (which contains the 'bodies' of the
+# files), we just send a list of file names.
+#
+#print "\n\n";
+open(STDIN,"$post_data_file") or die "can't open temp file";
+
+# chmod the file so everyone can read it
+# added by Ben Lancaster (benlanc at ster.me.uk)
+chmod (0666, $post_data_file);
+
+my $cg = new CGI();
+my $qstring="?";
+my %vars = $cg->Vars;
+my $j=0;
+
+while(($key,$value) = each %vars)
+{
+
+ $file_upload = $cg->param($key);
+
+ if(defined $value && $value ne '')
+ {
+
+ my $fh = $cg->upload($key);
+ #print "::".$key."::".$fh."::\n";
+ if(defined $fh)
+ {
+ #carp $fh;
+ ($tmp_fh, $tmp_filename) = tempfile();
+
+ # chmod the file so everyone can read it
+ # added by Ben Lancaster (benlanc at ster.me.uk)
+ chmod (0666, $tmp_filename);
+
+ while(<$fh>) {
+ print $tmp_fh $_;
+ }
+
+ close($tmp_fh);
+
+ $fsize =(-s $fh);
+
+
+ $fh =~ s/([^a-zA-Z0-9_\-.])/uc sprintf("%%%02x",ord($1))/eg;
+
+ $tmp_filename =~ s/([^a-zA-Z0-9_\-.])/uc sprintf("%%%02x",ord($1))/eg;
+ $qstring .= "file[$key][name]=$fh&file[$key][size]=$fsize&";
+ $qstring .= "file[$key][tmp_name]=$tmp_filename&";
+ $j++;
+ }
+ else
+ {
+ $value =~ s/([^a-zA-Z0-9_\-.])/uc sprintf("%%%02x",ord($1))/eg;
+ $qstring .= "$key=$value&" ;
+ }
+ }
+}
+
+
+my $url = $php_uploader . $qstring . "&" . $ENV{'QUERY_STRING'};
+
+open (SIGNAL,">", $signal_file);
+print SIGNAL "\n";
+close (SIGNAL);
+
+print "Location: $url\n\n";
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/AuthenticationHandlers.txt
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/AuthenticationHandlers.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/AuthenticationHandlers.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,68 @@
+Authentication via connector::
+
+In my PHP connector the one from the FBXP project, it is
+possible to require authentication before a user can use
+the connector.
+
+The works in the following manor:-
+
+A1/ File Browser Requests Command From Connector
+A2/ Connector.php recieves the request
+ B1/ File config.php imported
+ B2/ If authentication required load the authentication
+ handler file specified in the config, i.e.
+ $config['auth']['HandlerClass']='Default';
+ the Auth/Default.php will be imported
+ B3/ Create new instance of Auth class (defined in the
+ authentication handler imported.
+ C1/ Auth class, authenticate method called, passing
+ the data recieved in the ExtraParams variable
+ of the query string.
+ C2/ authenticate method returns a modified copy of the
+ $config, to indicate successfull authentication
+ $config['authSuccess'] should be set to true, if
+ the authentication failed this should be set to false.
+
+ B4a/ on success command is executed and output sent to client
+ B4b/ on failure blank xml response returned.
+
+A3/ End
+
+
+How to create my own authentication handler::
+
+Create a file in the Auth folder with the name of the handler (your choice)
+i.e. If i wanted to call it MySQL the file i would create would be
+MySQL.php in the Auth folder.
+
+Skeleton for the new authentication class::
+<?php
+class Auth {
+ function authenticate($data,$config) {
+
+ }
+}
+?>
+
+as you can see the class must have a method called authenticate which
+takes two parameters, the value from the ExtraParams ($data) and a
+reference to the connector configuration $config (so you can change
+things depending on the user if you wish) , you can now put what
+ever code you like in that method to determine if the user is allowed
+or not. (you may add extra function to the class for internal use too,
+these will not be called by the connector, but call them from inside
+the authenticate method). The function returns a modified copy of the
+$config, with any changes you like + the addition of a top level
+array element key: authSuccess value: true if authentication
+successful, else false.
+
+If you want to limit what the user can do then you may want to change
+the array at: $config['Commands']
+This holds an array of command that can be executed, if you remove say
+DeleteFolder from the array then the user will not be able to delete
+a folder.
+
+
+By Example:: There is a default authentication handler that i wrote to
+distribute with the connector, so you may want to take a look at it
+to get a better idea of whats going on.
\ No newline at end of file
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/AuthenticationHandlers.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/license.txt
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/license.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/license.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,506 @@
+This connector is supplied under the same license as FCKeditor,
+The Lesser GPL License (LGPL)-
+
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the library's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+
+ <signature of Ty Coon>, 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/license.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/readme.txt
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/readme.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/readme.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,95 @@
+PHP Connector for the FCKeditor v2 File Manager
+Written By Grant French, Sept 2004
+grant at mcpuk.net - http://www.mcpuk.net
+
+FCK Editor - Written By Frederico Caldeira Knabben
+http://www.fckeditor.net
+
+Icons supplied for file types from everaldo -
+http://www.everaldo.com
+
+Permissions fix for upload.cgu and fix for
+thumbnail background colour by -
+Ben Lancaster (benlanc at ster.me.uk)
+
+!!PLEASE READ THROUGH THIS README *BEFORE* CRYING FOR HELP!!
+
+
+NOTES:
+------
+
+This software is provided as is with no guarantees or
+warranties what so ever. It has been proven to work
+under the following setups (many other should work):-
+
+PHP 4.3.x / Apache 1.3.x (FreeBSD/WinXP Pro/OpenBSD)
+PHP 5.x / Apache 2.x (Linux)
+
+Reported to work under IIS with minor alterations.
+(Manually define $_SERVER['DOCUMENT_ROOT'] and dont use
+the upload cgi)
+
+!!! if you specify the relative path of the connector in
+ the fckconfig.js file you may experience some unusual
+ behaviour mainly in firefox, like the resource list
+ failing to refresh. To avoid this specify the absolute
+ path of the connector.
+
+
+CONNECTOR CONFIGURATION
+-----------------------
+
+/FCKeditor/editor/filemanager/browser/mcpuk/connectors/php/config.php
+The config.php file contains most of the configuration options for the
+connector, the file is fully commented, so please take a look through it.
+
+Most commonly asked question:
+Can i put the userfiles outside the FCKeditor folder?
+
+The answer is yes, the folder containing all users files is
+setup be default to be /UserFiles this can be changed
+to anything you like, such as /userdata/editorfiles this is
+done by editing the $fckphp_config['UserFilesPath'] directive
+in the config.php file for the connector
+
+
+
+FILE & FOLDER SETUP:
+--------------------
+
+1. Create the user files folder (set in the config.php)
+ NOTE: you no longer need to create the Image/File/Media/Flash folders
+ if you are using the 'Authentication' option in the connector.
+ If you are not using the 'Authentication' option then you must create
+ the Image File Media and Flash folders in the user files folder.
+
+2. The user files folder must all be chmodded to 0777 (a+wrx)
+
+
+
+Upload Progress (Optional) - Rather Buggy
+-----------------------------------------
+You may move the filemanager/browser/default/connectors/php/Commands/helpers/upload.cgi ,
+filemanager/browser/default/connectors/php/Commands/helpers/progress.cgi and
+filemanager/browser/default/connectors/php/Commands/helpers/header.cgi
+to you cgi-bin folder or set the settings on the folder to allow these to be executed,
+check the first line in each of these files to check that the path to perl is correct
+for your setup. Open the header.cgi file, check and modify settings as required.
+If you have moved these files adjust the path to them in the fckconfig lines as
+specified above and the path the progress.cgi in the config.php file (see below)
+
+
+
+FINAL NOTE:
+-----------
+
+1. Limited support will be provided by email as and when i have time.
+2. If you have any ideas share them either by mailing me or in the
+ forum for the fckeditor (http://sf.net/projects/fckeditor/forums)
+3. Enjoy
+
+
+LICENSE:
+--------
+
+LGPL - Lesser General Public License (see LICENSE.txt file)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/Docs/readme.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/config.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/config.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/config.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,233 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: config.php
+ * Configuration file
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+session_start();
+
+/*------------------------------------------------------------------------------*/
+/* HTTP over SSL Detection (shouldnt require changing) */
+/*------------------------------------------------------------------------------*/
+$fckphp_config['prot']="http";
+$fckphp_config['prot'].=((isset($_SERVER['HTTPS'])&&$_SERVER['HTTPS']=='on')?"s":"");
+$fckphp_config['prot'].="://";
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* The physical path to the document root, Set manually if not using apache */
+/*------------------------------------------------------------------------------*/
+//$fckphp_config['basedir']=$_SERVER['DOCUMENT_ROOT'];
+$fckphp_config['basedir'] = 'D:\Work\FCKeditor\www\FCKeditor.V2\editor\filemanager\browser\mcpuk' ;
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Prefix added to image path before sending back to editor */
+/*------------------------------------------------------------------------------*/
+$fckphp_config['urlprefix']=$fckphp_config['prot'].$_SERVER['SERVER_NAME'];
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Path to user files relative to the document root (no trailing slash) */
+/*------------------------------------------------------------------------------*/
+$fckphp_config['UserFilesPath'] = "/UserFiles" ;
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Progressbar handler (script that monitors upload progress) (''=none)
+/*------------------------------------------------------------------------------*/
+// $fckphp_config['uploadProgressHandler']=''; //No upload progress handler
+$fckphp_config['uploadProgressHandler']=$fckphp_config['prot'].$_SERVER['SERVER_NAME']."/cgi-bin/progress.cgi"; //Perl upload progress handler
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Authentication (auth) :- */
+/* - Req :: Boolean, whether authentication is required */
+/* - HandlerClass :: Name of class to handle authentication in connector */
+/*------------------------------------------------------------------------------*/
+$fckphp_config['auth']['Req']=false;
+$fckphp_config['auth']['HandlerClass']='Default';
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Settings for authentication handler :- */
+/* - SharedKey :: Shared encryption key (as set in test.php in example) */
+/*------------------------------------------------------------------------------*/
+$fckphp_config['auth']['Handler']['SharedKey']="->Shared_K3y-F0R*5enD1NG^auth3nt1caT10n'Info/To\FILE,Brow5er--!";
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Per resource area settings:- */
+/* - AllowedExtensions :: Array, allowed file extensions (in lowercase) */
+/* - AllowedMIME :: Array, allowed mime types (in lowercase) */
+/* - MaxSize :: Number, Maximum size of file uploads in KBytes */
+/* - DiskQuota :: Number, Maximum size allowed for the resource area */
+/* - HideFolders :: Array, RegExp, matching folder names will be hidden */
+/* - HideFiles :: Array, RegExp, matching file names will be hidden */
+/* - AllowImageEditing :: Boolean, whether images in this area may be edited */
+/*------------------------------------------------------------------------------*/
+//First area options are commented
+
+//File Area
+$fckphp_config['ResourceAreas']['File'] =array(
+
+ //Files(identified by extension) that may be uploaded to this area
+ 'AllowedExtensions' => array("zip","doc","xls","pdf","rtf","csv","jpg","gif","jpeg","png","avi","mpg","mpeg","swf","fla"),
+
+ //Not implemented yet
+ 'AllowedMIME' => array(),
+
+ //Set the maximum single upload to this area to 2MB (2048Kb)
+ 'MaxSize' => 2048,
+
+ //Set disk quota for this resource area to 20MB
+ 'DiskQuota' => 20,
+
+ //By Default hide all folders starting with a . (Unix standard)
+ 'HideFolders' => array("^\."),
+
+ //By Default hide all files starting with a . (Unix standard)
+ 'HideFiles' => array("^\."),
+
+ //Do not allow images to be edited in this resource area
+ 'AllowImageEditing' => false
+ );
+
+//Image area
+$fckphp_config['ResourceAreas']['Image'] =array(
+ 'AllowedExtensions' => array("jpg","gif","jpeg","png","tiff","tif",),
+ 'AllowedMIME' => array(),
+ 'MaxSize' => 1024,
+ 'DiskQuota' => 5,
+ 'HideFolders' => array("^\."),
+ 'HideFiles' => array("^\."),
+ 'AllowImageEditing' => false //Not yet complete, but you can take a look and see
+ );
+
+//Flash area
+$fckphp_config['ResourceAreas']['Flash'] =array(
+ 'AllowedExtensions' => array("swf","fla"),
+ 'AllowedMIME' => array(),
+ 'MaxSize' => 1024,
+ 'DiskQuota' => 5,
+ 'HideFolders' => array("^\."),
+ 'HideFiles' => array("^\."),
+ 'AllowImageEditing' => false
+ );
+
+//Media area
+$fckphp_config['ResourceAreas']['Media'] =array(
+ 'AllowedExtensions' => array("swf","fla","jpg","gif","jpeg","png","avi","mpg","mpeg"),
+ 'AllowedMIME' => array(),
+ 'MaxSize' => 5120,
+ 'DiskQuota' => 20,
+ 'HideFolders' => array("^\."),
+ 'HideFiles' => array("^\."),
+ 'AllowImageEditing' => false
+ );
+
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Global Disk Quota - Max size of all resource areas */
+/*------------------------------------------------------------------------------*/
+$fckphp_config['DiskQuota']['Global']=50; //In MBytes (default: 50mb)
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Directory and File Naming :- */
+/* -MaxDirNameLength :: Maximum allowed length of a directory name */
+/* -DirNameAllowedChars :: Array of characters allowed in a directory name */
+/* -FileNameAllowedChars :: Array of characters allowed in a file name */
+/*------------------------------------------------------------------------------*/
+
+$fckphp_config['MaxDirNameLength']=25;
+
+$fckphp_config['DirNameAllowedChars']=array();
+
+ //Allow numbers
+ for($i=48;$i<58;$i++) array_push($fckphp_config['DirNameAllowedChars'],chr($i));
+
+ //Allow lowercase letters
+ for($i=97;$i<123;$i++) array_push($fckphp_config['DirNameAllowedChars'],chr($i));
+
+ //Allow uppercase letters
+ for($i=65;$i<91;$i++) array_push($fckphp_config['DirNameAllowedChars'],chr($i));
+
+ //Allow space,dash,underscore,dot
+ array_push($fckphp_config['DirNameAllowedChars']," ","-","_",".");
+
+$fckphp_config['FileNameAllowedChars']=$fckphp_config['DirNameAllowedChars'];
+array_push($fckphp_config['FileNameAllowedChars'],')','(','[',']','~');
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Debugging :- */
+/* - Debug :: Boolean, if set to true a copy of the connector output is */
+/* sent to a file as well as to the client. */
+/* - DebugOutput :: File to send debug output to (absolute path) */
+/*------------------------------------------------------------------------------*/
+
+$fckphp_config['Debug']=false;
+$fckphp_config['DebugOutput']="/var/www/fckeditor/htdocs/FCKeditor/data/fck_conn_dbg";
+
+#Log PHP errors
+$fckphp_config['Debug_Errors']=false;
+$fckphp_config['Debug_Trace']=false;
+
+#Log Connector output
+$fckphp_config['Debug_Output']=false;
+
+#With each logged event display contents of
+/* $_GET */ $fckphp_config['Debug_GET']=false;
+/* $_POST */ $fckphp_config['Debug_POST']=false;
+/* $_SERVER */ $fckphp_config['Debug_SERVER']=false;
+/* $_SESSIONS */ $fckphp_config['Debug_SESSIONS']=false;
+
+/*==============================================================================*/
+
+
+/*------------------------------------------------------------------------------*/
+/* Internals :- */
+/* ResourceTypes :: Array of valid resource areas */
+/* Commands :: Array of valid commands accepted by the connector */
+/*------------------------------------------------------------------------------*/
+$fckphp_config['ResourceTypes'] = array('File','Image','Flash','Media');
+$fckphp_config['Commands'] = array(
+ "CreateFolder",
+ "GetFolders",
+ "GetFoldersAndFiles",
+ "FileUpload",
+ "Thumbnail",
+ "DeleteFile",
+ "DeleteFolder",
+ "GetUploadProgress",
+ "RenameFile",
+ "RenameFolder"
+ );
+/*==============================================================================*/
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/connector.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/connector.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/connector.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,194 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: connector.php
+ * Main connector file, implements the State Pattern to
+ * redirect requests to the appropriate class based on
+ * the command name passed.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+//Errors in the config.php could still cause problems.
+global $fckphp_config;
+require_once "config.php";
+
+error_reporting(E_ALL);
+function errorHandler ($errno, $errstr, $errfile, $errline, $errcontext) {
+ $reported=false;
+ if (strpos($errstr,"var: Deprecated.")===false) {
+ global $fckphp_config;
+ if ($fckphp_config['Debug']===true && $fckphp_config['Debug_Errors']===true) {
+ $oldData=implode("",file($fckphp_config['DebugOutput']));
+ if ($fh=fopen($fckphp_config['DebugOutput'],"w")) {
+ fwrite($fh,"\n".date("d/m/Y H:i:s")."\n");
+ fwrite($fh,"PHP ERROR:::
+ Error Number: $errno
+ Error Message: $errstr
+ Error File: $errfile
+ Error Line: $errline\n");
+ if ($fckphp_config['Debug_Trace']) fwrite($fh," Error Context: ".print_r($errcontext,true)."\n");
+ if ($fckphp_config['Debug_GET']) fwrite($fh,"\n\$_GET::\n".print_r($_GET,true)."\n");
+ if ($fckphp_config['Debug_POST']) fwrite($fh,"\n\$_POST::\n".print_r($_POST,true)."\n");
+ if ($fckphp_config['Debug_SERVER']) fwrite($fh,"\n\$_SERVER::\n".print_r($_SERVER,true)."\n");
+ if ($fckphp_config['Debug_SESSIONS']) fwrite($fh,"\n\$_SESSIONS::\n".print_r($_SESSION,true)."\n");
+ fwrite($fh,"\n-------------------------------------------------------\n\n\n");
+ fwrite($fh,$oldData); $oldData="";
+ fclose($fh);
+ $reported=true;
+ }
+ }
+
+ if (!$reported) {
+ //display error instead.
+ echo("PHP ERROR::: <br />
+ Error Number: $errno <br />
+ Error Message: $errstr <br />
+ Error File: $errfile <br />
+ Error Line: $errline <br />");
+
+ if ($fckphp_config['Debug_Trace']) echo "Error Context: ".print_r($errcontext,true)."\n";
+ if ($fckphp_config['Debug_GET']) echo "\$_GET::\n".print_r($_GET,true)."<br />\n";
+ if ($fckphp_config['Debug_POST']) echo "\$_POST::\n".print_r($_POST,true)."<br />\n";
+ if ($fckphp_config['Debug_SERVER']) echo "\$_SERVER::\n".print_r($_SERVER,true)."<br />\n";
+ if ($fckphp_config['Debug_SESSIONS']) echo "\$_SESSIONS::\n".print_r($_SESSION,true)."<br />\n";
+ echo "<br />\n<br />\n";
+ }
+ }
+}
+set_error_handler('errorHandler');
+
+if (!isset($_SERVER['DOCUMENT_ROOT'])) $_SERVER["DOCUMENT_ROOT"] = $fckphp_config['basedir'];
+
+if ($fckphp_config['Debug']===true && $fckphp_config['Debug_Output']) ob_start();
+outputHeaders();
+
+//These are the commands we may expect
+$valid_commands=$fckphp_config['Commands'];
+$valid_resource_types=$fckphp_config['ResourceTypes'];
+
+//Get the passed data
+$command=(
+ ((isset($_GET['Command']))&&($_GET['Command']!=""))?
+ $_GET['Command']:
+ ""
+ );
+
+$type=(
+ ((isset($_GET['Type']))&&($_GET['Type']!=""))?
+ $_GET['Type']:
+ "File"
+ );
+
+$cwd=str_replace("..","",
+ (
+ ((isset($_GET['CurrentFolder']))&&($_GET['CurrentFolder']!=""))?
+ $_GET['CurrentFolder']:
+ "/"
+ )
+ );
+
+$cwd=str_replace("..","",$cwd);
+
+$extra=(
+ ((isset($_GET['ExtraParams']))&&($_GET['ExtraParams']!=""))?
+ $_GET['ExtraParams']:
+ ""
+ );
+
+if (in_array($command,$valid_commands)) {
+
+ if ($fckphp_config['auth']['Req']) {
+ require_once "./Auth/".$fckphp_config['auth']['HandlerClass'].".php";
+
+ $auth=new Auth();
+ $fckphp_config=$auth->authenticate($extra,$fckphp_config);
+ if ($fckphp_config['authSuccess']!==true) {
+ header ("content-type: text/xml");
+ echo "<?xml version=\"1.0\" encoding=\"utf-8\" ?>\n";
+ ?>
+<Connector command="authentication_failed" resourceType="authentication_failed">
+ <CurrentFolder path="authentication_failed" url="authentication_failed" />
+ <Error number="-1" />
+</Connector><?php
+ if ($fckphp_config['Debug']===true && $fckphp_config['Debug_Output']) recordOutput();
+ exit(0);
+ }
+ }
+
+ //bit of validation
+ if (!in_array($type,$valid_resource_types)) {
+ echo "Invalid resource type.";
+ if ($fckphp_config['Debug']===true && $fckphp_config['Debug_Output']) recordOutput();
+ exit(0);
+ }
+
+ require_once "Commands/$command.php";
+
+ $action=new $command($fckphp_config,$type,$cwd);
+
+ $action->run();
+ if ($fckphp_config['Debug']===true && $fckphp_config['Debug_Output']) recordOutput();
+
+} else {
+ //No reason for me to be here.
+ echo "Invalid command.";
+ echo str_replace("\n","<br />",print_r($_GET,true));
+ if ($fckphp_config['Debug']===true && $fckphp_config['Debug_Output']) recordOutput();
+ exit(0);
+}
+
+
+function recordOutput() {
+ global $fckphp_config;
+
+ if ($fckphp_config['Debug']===true && $fckphp_config['Debug_Output']) {
+ $contents=ob_get_contents();
+ if (strlen($contents)>0) {
+ $oldData=implode("",file($fckphp_config['DebugOutput']));
+ if ($fh=fopen($fckphp_config['DebugOutput'],"w")) {
+ fwrite($fh,"\n".date("d/m/Y H:i:s")."\n");
+ if ($fckphp_config['Debug_GET']) fwrite($fh,"\n\$_GET::\n".print_r($_GET,true)."\n");
+ if ($fckphp_config['Debug_POST']) fwrite($fh,"\n\$_POST::\n".print_r($_POST,true)."\n");
+ if ($fckphp_config['Debug_SERVER']) fwrite($fh,"\n\$_SERVER::\n".print_r($_SERVER,true)."\n");
+ if ($fckphp_config['Debug_SESSIONS']) fwrite($fh,"\n\$_SESSIONS::\n".print_r($_SESSION,true)."\n");
+ fwrite($fh,$contents);
+ fwrite($fh,"\n-------------------------------------------------------\n\n\n");
+ fwrite($fh,$oldData); $oldData="";
+ fclose($fh);
+ }
+ }
+ ob_flush();
+ }
+}
+
+function outputHeaders() {
+
+ //Anti browser caching headers
+ //Borrowed from fatboy's implementation (fatFCK at code247.com)
+
+ // ensure file is never cached
+ // Date in the past
+ header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
+
+ // always modified
+ header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
+
+ // HTTP/1.1
+ header("Cache-Control: no-store, no-cache, must-revalidate");
+ header("Cache-Control: post-check=0, pre-check=0", false);
+
+ // HTTP/1.0
+ header("Pragma: no-cache");
+}
+?>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/dtd/iso-lat1.ent
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/dtd/iso-lat1.ent 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/dtd/iso-lat1.ent 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,62 @@
+<!ENTITY aacute "á">
+<!ENTITY Aacute "Á">
+<!ENTITY acirc "â">
+<!ENTITY Acirc "Â">
+<!ENTITY agrave "à">
+<!ENTITY Agrave "À">
+<!ENTITY aring "å">
+<!ENTITY Aring "Å">
+<!ENTITY atilde "ã">
+<!ENTITY Atilde "Ã">
+<!ENTITY auml "ä">
+<!ENTITY Auml "Ä">
+<!ENTITY aelig "æ">
+<!ENTITY AElig "Æ">
+<!ENTITY ccedil "ç">
+<!ENTITY Ccedil "Ç">
+<!ENTITY eth "ð">
+<!ENTITY ETH "Ð">
+<!ENTITY eacute "é">
+<!ENTITY Eacute "É">
+<!ENTITY ecirc "ê">
+<!ENTITY Ecirc "Ê">
+<!ENTITY egrave "è">
+<!ENTITY Egrave "È">
+<!ENTITY euml "ë">
+<!ENTITY Euml "Ë">
+<!ENTITY iacute "í">
+<!ENTITY Iacute "Í">
+<!ENTITY icirc "î">
+<!ENTITY Icirc "Î">
+<!ENTITY igrave "ì">
+<!ENTITY Igrave "Ì">
+<!ENTITY iuml "ï">
+<!ENTITY Iuml "Ï">
+<!ENTITY ntilde "ñ">
+<!ENTITY Ntilde "Ñ">
+<!ENTITY oacute "ó">
+<!ENTITY Oacute "Ó">
+<!ENTITY ocirc "ô">
+<!ENTITY Ocirc "Ô">
+<!ENTITY ograve "ò">
+<!ENTITY Ograve "Ò">
+<!ENTITY oslash "ø">
+<!ENTITY Oslash "Ø">
+<!ENTITY otilde "õ">
+<!ENTITY Otilde "Õ">
+<!ENTITY ouml "ö">
+<!ENTITY Ouml "Ö">
+<!ENTITY szlig "ß">
+<!ENTITY thorn "þ">
+<!ENTITY THORN "Þ">
+<!ENTITY uacute "ú">
+<!ENTITY Uacute "Ú">
+<!ENTITY ucirc "û">
+<!ENTITY Ucirc "Û">
+<!ENTITY ugrave "ù">
+<!ENTITY Ugrave "Ù">
+<!ENTITY uuml "ü">
+<!ENTITY Uuml "Ü">
+<!ENTITY yacute "ý">
+<!ENTITY Yacute "Ý">
+<!ENTITY yuml "ÿ">
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/ascii.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/ascii.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/binary.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/binary.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/document2.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/document2.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/email.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/email.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/empty.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/empty.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/html.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/html.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/image.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/image.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/info.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/info.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/kmplot.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/kmplot.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/kmultiple.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/kmultiple.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/pdf.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/pdf.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/php.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/php.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/postscript.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/postscript.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/real_doc.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/real_doc.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/sound.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/sound.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/spreadsheet.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/spreadsheet.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/tar.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/tar.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/video.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/images/video.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/test.html.suspended
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/test.html.suspended 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/test.html.suspended 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,7 @@
+<html><head><title>File Upload Test</title></head>
+<body>
+<form enctype="multipart/form-data" method="post" action="/cgi-bin/upload.cgi?uploadID=58484&Connector=/FCKeditor/editor/filemanager/browser/default/connectors/php/connector.php&Command=FileUpload&Type=Image&CurrentFolder=/&ExtraParams=313131323934373331357c5e5345505e7c3139322e3136382e302e327c5e5345505e7c61646d696e7c5e5345505e7c3338316139376339633638303937393566343665313463613738383230626439">
+<input type="file" name="NewFile" />
+<input type="submit" value="Upload" />
+</form>
+</body></html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/testme.php.suspended
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/testme.php.suspended 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/connectors/php/testme.php.suspended 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,340 @@
+<html>
+<head>
+ <title>Test PHP Connector</title>
+</head>
+<body>
+<?php
+ error_reporting(E_ALL);
+
+ include "config.php";
+
+ $resources=$fckphp_config['ResourceTypes'];
+
+ $dr=$fckphp_config['basedir'];
+ $actual_userfolder=str_replace("//","/",$dr."/".$fckphp_config['UserFilesPath']."/");
+
+
+ //Display base directory set in the$fckphp_config
+ echo "Base Dir is set to: $dr<br />\n";
+
+ //Display the path to this script
+ echo "PHP_SELF: ".$_SERVER['PHP_SELF']."<br />\n";
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+ //Check if PHP has MIME-Magic Support
+ echo "Checking for mime magic support: ".((function_exists("mime_content_type"))?"Yes":"No - you won't get icons by mime type")."<br />";
+
+ //Check if PHP has GD Support
+ echo "Checking for GD support: ".((function_exists("imagecreate"))?"Yes":"No - you won't get thumbnails for images")."<br />";
+ echo " JPEG Support: ".((function_exists("imagecreatefromjpeg"))?"Yes":"No - you won't get thumbnails for jpeg images")."<br />";
+ echo " PNG Support: ".((function_exists("imagecreatefrompng"))?"Yes":"No - you won't get thumbnails for png images")."<br />";
+ echo " GIF Support: ".((function_exists("imagecreatefromgif"))?"Yes":"No - you won't get thumbnails for gif images")."<br />";
+ echo " Image Write Support: ".((function_exists("imagegif") || function_exists("imagepng") || function_exists("imagejpeg"))?"Yes":"No - you won't get thumbnails for any images, as i cant write GIFs, PNGs or JPEGs")."<br />";
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+ //Check if the user files folder set in the$fckphp_config exists
+ echo "Checking if user files folder exists ($actual_userfolder): ";
+ if (is_dir($actual_userfolder)) {
+ echo "[ Passed ]<br />\n";
+ } else {
+ echo "[ Failed ] <br />Task: Create the user files folder in the webroot and point the$fckphp_config.php file to it.<br />\n";
+ echo "Skipping all other tests, fix this one first.";
+ exit(0);
+ }
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+ //Check if the File,Image,Flash,Media folders exist in the user files folder and are writeable
+ echo "Checking for resource type folders under user file folder: <br />\n";
+ foreach ($resources as $value) {
+
+ //Does the folder exist
+ $passed=false;
+ echo " $value exists (".($actual_userfolder.$value).": ";
+ if (is_dir(($actual_userfolder.$value))) {
+ echo "[ Passed ]<br />\n";
+ $passed=true;
+ } else {
+ echo "[ Failed ]<br /> Task: chmod this folder to make it writeable to the php processes user.<br />\n";
+ }
+
+
+ //Is the folder writeable by PHP
+ echo " $value writeable: ";
+ if ($passed) {
+ if (is_writeable(($actual_userfolder.$value))) {
+ echo "[ Passed ]<br />\n";
+ } else {
+ echo "[ Failed ]<br /> Task: chmod this folder to make it writeable to the php processes user.<br />\n";
+ }
+ } else {
+ echo "[ Skipped ]<br />\n";
+ }
+ echo "<br />\n";
+ }
+
+
+ //Check if PHP is$fckphp_configured to use open_basedir
+ echo "Checking if open_basedir restriction in place: (".((($bd=ini_get("open_basedir"))==null)?"Not Set":$bd." - This may cause you some troubles.").")<br />";
+
+ //Try to open the user files folder
+ echo "Trying an opendir on the user files folder: ".((opendir($actual_userfolder))?"[ Passed ]":"[ Failed ]")."<br />";
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+ //Compose the url to the connector
+ $uri="http".(((isset($_SERVER['HTTPS']))&&(strtolower($_SERVER['HTTPS'])!='off'))?"s":"")."://".$_SERVER['SERVER_NAME'].dirname($_SERVER['SCRIPT_NAME'])."/";
+
+
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+ //Test the GetFolders Command
+ echo "Requesting connector.php?Command=GetFolders&Type=Image&CurrentFolder=/ :<br />\n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $test = implode("",file($uri."connector.php?Command=GetFolders&Type=Image&CurrentFolder=/"));
+ $test=htmlentities($test);
+ echo str_replace("\n","<br />",$test);
+ echo "</div> Please do a sanity check on this, it should be something like: \n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $expect="
+<?xml version=\"1.0\" encoding=\"utf-8\" ?>
+<Connector command=\"GetFolders\" resourceType=\"Image\">
+ <CurrentFolder path=\"/\" url=\"/data/resources/Image/\" />
+ <Folders>
+ </Folders>
+</Connector>";
+
+
+ $expect=htmlentities($expect);
+ $expect=str_replace(array("\n","\r"),"<br />",$expect);
+ echo "<b>EXAMPLE RESPONSE</b>".$expect;
+ ?>
+ </div>
+ <br /><br />
+ <?php
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+ //Test GetFoldersAndFiles Command
+ echo "Requesting connector.php?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/ :<br />\n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $test = implode("",file($uri."connector.php?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/"));
+ $test=htmlentities($test);
+ echo str_replace("\n","<br />",$test);
+ echo "</div> Please do a sanity check on this, it should be something like: \n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $expect="
+<?xml version=\"1.0\" encoding=\"utf-8\" ?>
+<Connector command=\"GetFoldersAndFiles\" resourceType=\"Image\">
+<CurrentFolder path=\"/\" url=\"/data/resources/Image/\" />
+<Folders>
+</Folders>
+<Files>
+</Files>
+</Connector>";
+
+
+ $expect=htmlentities($expect);
+ $expect=str_replace(array("\n","\r"),"<br />",$expect);
+ echo "<b>EXAMPLE RESPONSE</b>".$expect;
+ ?>
+ </div>
+ <br /><br />
+ <?php
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+ //Test the CreateFolder command
+ echo "Requesting connector.php?Command=CreateFolder&Type=Image&CurrentFolder=/&NewFolderName=TestFolder99 :<br />\n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $test = implode("",file($uri."connector.php?Command=CreateFolder&Type=Image&CurrentFolder=/&NewFolderName=TestFolder99"));
+ $test=htmlentities($test);
+ echo str_replace("\n","<br />",$test);
+ echo "</div> Please do a sanity check on this, it should be something like: \n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $expect="
+<?xml version=\"1.0\" encoding=\"utf-8\" ?>
+<Connector command=\CreateFolder\" resourceType=\"Image\">
+<CurrentFolder path=\"/\" url=\"/data/resources/Image/\" />
+ <Error number=\"0\" />
+</Connector>";
+
+
+ $expect=htmlentities($expect);
+ $expect=str_replace(array("\n","\r"),"<br />",$expect);
+ echo "<b>EXAMPLE RESPONSE</b>".$expect;
+ ?>
+ </div>
+ <br /><br />
+ <?php
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+ //Test the RenameFolder Command
+ echo "Requesting connector.php?Command=RenameFolder&Type=Image&CurrentFolder=/&FolderName=TestFolder99&NewName=TestFolder90 :<br />\n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $test = implode("",file($uri."connector.php?Command=RenameFolder&Type=Image&CurrentFolder=/&FolderName=TestFolder99&NewName=TestFolder90"));
+ $test=htmlentities($test);
+ echo str_replace("\n","<br />",$test);
+ echo "</div> Please do a sanity check on this, it should be something like: \n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $expect="
+<?xml version=\"1.0\" encoding=\"utf-8\" ?>
+<Connector command=\"RenameFolder\" resourceType=\"Image\">
+ <CurrentFolder path=\"/\" url=\"/data/resources/Image/\" />
+ <Error number=\"0\" />
+</Connector>";
+
+
+ $expect=htmlentities($expect);
+ $expect=str_replace(array("\n","\r"),"<br />",$expect);
+ echo "<b>EXAMPLE RESPONSE</b>".$expect;
+ ?>
+ </div>
+ <br /><br />
+ <?php
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+ //Test the DeleteFolder Command
+ echo "Requesting connector.php?Command=DeleteFolder&Type=Image&CurrentFolder=/&FolderName=TestFolder90 :<br />\n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $test = implode("",file($uri."connector.php?Command=DeleteFolder&Type=Image&CurrentFolder=/&FolderName=TestFolder90"));
+ $test=htmlentities($test);
+ echo str_replace("\n","<br />",$test);
+ echo "</div> Please do a sanity check on this, it should be something like: \n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $expect="
+<?xml version=\"1.0\" encoding=\"utf-8\" ?>
+<Connector command=\"DeleteFolder\" resourceType=\"Image\">
+ <CurrentFolder path=\"/\" url=\"/data/resources/Image/\" />
+ <Error number=\"0\" />
+</Connector>";
+
+
+ $expect=htmlentities($expect);
+ $expect=str_replace(array("\n","\r"),"<br />",$expect);
+ echo "<b>EXAMPLE RESPONSE</b>".$expect;
+ ?>
+ </div>
+ <br /><br />
+ <?php
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+ //Test the Progress.cgi Command
+ echo "Requesting ".$fckphp_config['uploadProgressHandler']."?iTotal=0&iRead=0&iStatus=1&sessionid=92823&dtnow=".time()."&dtstart=".time()." :<br />\n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $test = implode("",file($fckphp_config['uploadProgressHandler']."?iTotal=0&iRead=0&iStatus=1&sessionid=92823&dtnow=".time()."&dtstart=".time()));
+ $test=htmlentities($test);
+ echo str_replace("\n","<br />",$test);
+ echo "</div> Please do a sanity check on this, it should be something like: \n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $expect="
+<UploadProgress sessionID=\"92823\">
+<RefreshURL><![CDATA[".$fckphp_config['uploadProgressHandler']."?iTotal=0&iRead=0&iStatus=1&sessionid=92823&dtnow=1098477167&dtstart=1098477166]]></RefreshURL>
+<TotalBytes>0</TotalBytes>
+<ReadBytes>0</ReadBytes>
+<Status>1</Status>
+<Speed>0</Speed>
+<TimeRemaining>00:00:00</TimeRemaining>
+<TimeElapsed>00:00:01</TimeElapsed>
+</UploadProgress>";
+
+
+ $expect=htmlentities($expect);
+ $expect=str_replace(array("\n","\r"),"<br />",$expect);
+ echo "<b>EXAMPLE RESPONSE</b>".$expect;
+ ?>
+ </div>
+ <br /><br />
+ <?php
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+
+
+ //Seperator
+ echo "\n<br /><hr /><br />\n";
+
+
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+ //Test the GetUploadProgress Command
+ echo "Requesting connector.php?Command=GetUploadProgress&Type=File&CurrentFolder=/Docs/&uploadID=19382&refreshURL=".$fckphp_config['uploadProgressHandler']."?uploadID=19382&read=30&total=100 :<br />\n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $test = implode("",file($uri."connector.php?Command=GetUploadProgress&Type=File&CurrentFolder=/Docs/&uploadID=19382&refreshURL=".$fckphp_config['uploadProgressHandler']."?uploadID=19382&read=30&total=100"));
+ $test=str_replace("&","&",$test);
+ $test=htmlentities($test);
+ echo str_replace("\n","<br />",$test);
+ echo "</div> Please do a sanity check on this, it should be something like: \n
+ <div style=\"border-style:solid;border-width:1px;border-color:#000000\">\n";
+
+ $expect="
+<?xml version=\"1.0\" encoding=\"utf-8\" ?>
+<Connector command=\"GetUploadProgress\" resourceType=\"File\">
+<CurrentFolder path=\"/Docs/\" url=\"/data/resources/File/Docs/\" />
+<Progress max=\"0\" value=\"0\" />
+<RefreshURL url=\"".$fckphp_config['uploadProgressHandler']."?iTotal=&iRead=&iStatus=&sessionid=&dtnow=1098478692&dtstart=\" />
+</Connector>";
+
+
+ $expect=htmlentities($expect);
+ $expect=str_replace(array("\n","\r"),"<br />",$expect);
+ echo "<b>EXAMPLE RESPONSE</b>".$expect;
+ ?>
+ </div>
+ <br /><br />
+ <?php
+//--------------------------------------------------------------------------------------------------------------------------------------------------
+
+
+?>
+</body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmactualfolder.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmactualfolder.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmactualfolder.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,63 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmactualfolder.html
+ * This page shows the actual folder path.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript">
+
+function OnResize()
+{
+ divName.style.width = "1px" ;
+ divName.style.width = tdName.offsetWidth + "px" ;
+}
+
+function SetCurrentFolder( resourceType, folderPath )
+{
+ document.getElementById('tdName').innerHTML = folderPath ;
+}
+
+window.onload = function()
+{
+ window.top.IsLoadedActualFolder = true ;
+}
+
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <button style="WIDTH: 100%" type="button">
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td><img height="32" alt="" src="images/FolderOpened32.gif" width="32"></td>
+ <td> </td>
+ <td id="tdName" width="100%" nowrap class="ActualFolder">/</td>
+ <td> </td>
+ <td><!--<img height="8" src="images/ButtonArrow.gif" width="12">--></td>
+ <td> </td>
+ </tr>
+ </table>
+ </button>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmcreatefolder.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmcreatefolder.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmcreatefolder.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,105 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmcreatefolder.html
+ * Page used to create new folders in the current folder.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/fckxml.js"></script>
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+function SetCurrentFolder( resourceType, folderPath )
+{
+ oConnector.ResourceType = resourceType ;
+ oConnector.CurrentFolder = folderPath
+}
+
+function CreateFolder()
+{
+ var sFolderName ;
+
+ while ( true )
+ {
+ sFolderName = prompt( 'Type the name of the new folder:', '' ) ;
+
+ if ( sFolderName == null )
+ return ;
+ else if ( sFolderName.length == 0 )
+ alert( 'Please type the folder name' ) ;
+ else
+ break ;
+ }
+
+ oConnector.SendCommand( 'CreateFolder', 'NewFolderName=' + escape( sFolderName) , CreateFolderCallBack ) ;
+}
+
+function CreateFolderCallBack( fckXml )
+{
+ // Get the current folder path.
+ var oNode = fckXml.SelectSingleNode( 'Connector/Error' ) ;
+ var iErrorNumber = parseInt( oNode.attributes.getNamedItem('number').value ) ;
+
+ switch ( iErrorNumber )
+ {
+ case 0 :
+ window.parent.frames['frmResourcesList'].Refresh() ;
+ break ;
+ case 101 :
+ alert( 'Folder already exists' ) ;
+ break ;
+ case 102 :
+ alert( 'Invalid folder name' ) ;
+ break ;
+ case 103 :
+ alert( 'You have no permissions to create the folder' ) ;
+ break ;
+ case 110 :
+ alert( 'Unknown error creating folder' ) ;
+ break ;
+ default :
+ alert( 'Error creating folder. Error number: ' + iErrorNumber ) ;
+ break ;
+ }
+}
+
+window.onload = function()
+{
+ window.top.IsLoadedCreateFolder = true ;
+}
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <button type="button" style="WIDTH: 100%" onclick="CreateFolder();">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td><img height="16" alt="" src="images/Folder.gif" width="16"></td>
+ <td> </td>
+ <td nowrap>Create New Folder</td>
+ </tr>
+ </table>
+ </button>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmfolders.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmfolders.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmfolders.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,199 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmfolders.html
+ * This page shows the list of folders available in the parent folder
+ * of the current folder.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/fckxml.js"></script>
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+var sActiveFolder ;
+
+var bIsLoaded = false ;
+var iIntervalId ;
+
+var oListManager = new Object() ;
+
+oListManager.Init = function()
+{
+ this.Table = document.getElementById('tableFiles') ;
+ this.UpRow = document.getElementById('trUp') ;
+
+ this.TableRows = new Object() ;
+}
+
+oListManager.Clear = function()
+{
+ // Remove all other rows available.
+ while ( this.Table.rows.length > 1 )
+ this.Table.deleteRow(1) ;
+
+ // Reset the TableRows collection.
+ this.TableRows = new Object() ;
+}
+
+oListManager.AddItem = function( folderName, folderPath )
+{
+ // Create the new row.
+ var oRow = this.Table.insertRow(-1) ;
+ oRow.className = 'FolderListFolder' ;
+
+ // Build the link to view the folder.
+ var sLink = '<a href="#" onclick="OpenFolder(\'' + folderPath + '\');return false;">' ;
+
+ // Add the folder icon cell.
+ var oCell = oRow.insertCell(-1) ;
+ oCell.width = 16 ;
+ oCell.innerHTML = sLink + '<img alt="" src="images/spacer.gif" width="16" height="16" border="0"></a>' ;
+
+ // Add the folder name cell.
+ oCell = oRow.insertCell(-1) ;
+ oCell.noWrap = true ;
+ oCell.innerHTML = ' ' + sLink + folderName + '</a>' ;
+
+ this.TableRows[ folderPath ] = oRow ;
+}
+
+oListManager.ShowUpFolder = function( upFolderPath )
+{
+ this.UpRow.style.display = ( upFolderPath != null ? '' : 'none' ) ;
+
+ if ( upFolderPath != null )
+ {
+ document.getElementById('linkUpIcon').onclick = document.getElementById('linkUp').onclick = function()
+ {
+ LoadFolders( upFolderPath ) ;
+ return false ;
+ }
+ }
+}
+
+function CheckLoaded()
+{
+ if ( window.top.IsLoadedActualFolder
+ && window.top.IsLoadedCreateFolder
+ && window.top.IsLoadedUpload
+ && window.top.IsLoadedResourcesList )
+ {
+ window.clearInterval( iIntervalId ) ;
+ bIsLoaded = true ;
+ OpenFolder( sActiveFolder ) ;
+ }
+}
+
+function OpenFolder( folderPath )
+{
+ sActiveFolder = folderPath ;
+
+ if ( ! bIsLoaded )
+ {
+ if ( ! iIntervalId )
+ iIntervalId = window.setInterval( CheckLoaded, 100 ) ;
+ return ;
+ }
+
+ // Change the style for the select row (to show the opened folder).
+ for ( var sFolderPath in oListManager.TableRows )
+ {
+ oListManager.TableRows[ sFolderPath ].className =
+ ( sFolderPath == folderPath ? 'FolderListCurrentFolder' : 'FolderListFolder' ) ;
+ }
+
+ // Set the current folder in all frames.
+ window.parent.frames['frmActualFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
+ window.parent.frames['frmCreateFolder'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
+ window.parent.frames['frmUpload'].SetCurrentFolder( oConnector.ResourceType, folderPath ) ;
+
+ // Load the resources list for this folder.
+ window.parent.frames['frmResourcesList'].LoadResources( oConnector.ResourceType, folderPath ) ;
+}
+
+function LoadFolders( folderPath )
+{
+ // Clear the folders list.
+ oListManager.Clear() ;
+
+ // Get the parent folder path.
+ var sParentFolderPath ;
+ if ( folderPath != '/' )
+ sParentFolderPath = folderPath.substring( 0, folderPath.lastIndexOf( '/', folderPath.length - 2 ) + 1 ) ;
+
+ // Show/Hide the Up Folder.
+ oListManager.ShowUpFolder( sParentFolderPath ) ;
+
+ if ( folderPath != '/' )
+ {
+ sActiveFolder = folderPath ;
+ oConnector.CurrentFolder = sParentFolderPath
+ oConnector.SendCommand( 'GetFolders', null, GetFoldersCallBack ) ;
+ }
+ else
+ {
+ oListManager.ShowUpFolder( '/' ) ;
+ sActiveFolder = folderPath ;
+ oConnector.SendCommand( 'GetFolders', null, GetFoldersCallBack ) ;
+ }
+
+}
+
+function GetFoldersCallBack( fckXml )
+{
+ // Get the current folder path.
+ var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ;
+ var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ;
+
+ var oNodes = fckXml.SelectNodes( 'Connector/Folders/Folder' ) ;
+
+ for ( var i = 0 ; i < oNodes.length ; i++ )
+ {
+ var sFolderName = oNodes[i].attributes.getNamedItem('name').value ;
+ oListManager.AddItem( sFolderName, sCurrentFolderPath + sFolderName + "/" ) ;
+ }
+
+ OpenFolder( sActiveFolder ) ;
+}
+
+function SetResourceType( type )
+{
+ oConnector.ResourceType = type ;
+ LoadFolders( '/' ) ;
+}
+
+window.onload = function()
+{
+ oListManager.Init() ;
+
+ if ( oConnector.ResourceType.length == 0 )
+ SetResourceType( 'File' ) ;
+ else
+ LoadFolders( '/' ) ;
+}
+ </script>
+ </head>
+ <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10">
+ <table id="tableFiles" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr id="trUp" style="DISPLAY: none">
+ <td width="16"><a id="linkUpIcon" href="#"><img alt="" src="images/FolderUp.gif" width="16" height="16" border="0"></a></td>
+ <td nowrap width="100%"> <a id="linkUp" href="#">..</a></td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmimageeditor.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmimageeditor.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmimageeditor.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,282 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmimageeditor.html
+ * This page facilitates the editing of images.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/fckxml.js"></script>
+ <script type="text/javascript" src="js/common.js"></script>
+ <script type="text/javascript" src="js/wz_jsgraphics.js"></script>
+ <script type="text/javascript" src="js/EditorContent.js"></script>
+ <script language="javascript" type="text/javascript">
+<!--
+
+oConnector.CurrentFolder = GetMyUrlParam( 'CurrentFolder' ) ;
+var fileName=GetMyUrlParam( 'FileName' ) ;
+var fileURL=unescape( GetMyUrlParam( 'FileURL' ) );
+
+var cursor_X, cursor_Y;
+var imageEditorLoaded=false;
+
+var bottomFrame1, bottomFrame2, bottomFrame3;
+/*
+var t_cx, t_cy, t_cw, t_ch;
+var m_sx, m_sy, m_w, m_h, m_a, m_d;
+var s_sw, s_sh;
+
+var r_ra;
+var constrained;
+var pattern = "images/2x2.gif";*/
+
+function RenameFile( fileName, fileUrl )
+{
+ var promptMsg='Please enter the new name for ' + fileName + ':';
+ var newName=prompt(promptMsg,fileName);
+
+ if ((newName!=null)&&(newName!='')&&(newName!=fileName)) {
+ oConnector.SendCommand( 'RenameFile', "FileName=" + escape( fileName ) + "&NewName=" + escape( newName ), RenameFileCallBack ) ;
+ }
+}
+
+function RenameFolder( folderName )
+{
+ var promptMsg='Please enter the new name for ' + folderName + ':';
+ var newName=prompt(promptMsg,folderName);
+
+ if ((newName!=null)&&(newName!='')&&(newName!=folderName)) {
+ oConnector.SendCommand( 'RenameFolder', "FolderName=" + escape( folderName ) + "&NewName=" + escape ( newName ), RenameFolderCallBack ) ;
+ }
+}
+
+function LoadResources( resourceType, folderPath )
+{
+ oListManager.Clear() ;
+ oConnector.ResourceType = resourceType ;
+ oConnector.CurrentFolder = folderPath
+ oConnector.SendCommand( 'GetFoldersAndFiles', null, GetFoldersAndFilesCallBack ) ;
+}
+
+function Refresh()
+{
+ LoadResources( oConnector.ResourceType, oConnector.CurrentFolder ) ;
+}
+
+function RenameFolderCallBack ( fckXml )
+{
+ var oNodes = fckXml.SelectNodes( 'Connector/Error' );
+ if (oNodes.length>0) {
+ var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ;
+
+ switch (errNo) {
+ case 0 :
+ break;
+
+ case 602 :
+ alert('Failed to rename folder.');
+ break;
+
+ default:
+ alert('Invalid XML response from connector..');
+ }
+ } else {
+ alert('Invalid XML response from connector.');
+ }
+ Refresh();
+}
+
+
+function drawFramework()
+{
+ bottomFrame1 = top.frames['frmCreateFolder'].document;
+ bottomFrame2 = top.frames['frmUpload'].document;
+ bottomFrame3 = top.frames['frmFolders'].document;
+
+ bottomFrame1.body.innerHTML='<table style="border-width: 0px; border-style: none;" align="center" cellpadding="2" id="toolbar1"><table>';
+ bottomFrame2.body.innerHTML='<table style="height: 100%; border-width: 0px; border-style: none;" cellpadding="4"><tr id="toolbar2"></tr><table>';
+ bottomFrame3.body.innerHTML='<table style="border-width: 0px; border-style: none;" align="center" cellpadding="8" id="toolbar3"><table>';
+
+ var toolbar1 = bottomFrame1.getElementById('toolbar1');
+ var toolbar2 = bottomFrame2.getElementById('toolbar2');
+ var toolbar3 = bottomFrame3.getElementById('toolbar3');
+
+
+/*#######################*/
+/* START OF MAIN TOOLBAR */
+/*#######################*/
+
+ /* --- Save Image --- */
+ var row = toolbar3.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<a href="" title="Save Image">' +
+ '<img src="images/toolbar/save.gif" style="width: 22px; height: 22px;" /><br />' +
+ 'Save' +
+ '</a>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+
+
+ /* --- Close Image --- */
+ var row = toolbar3.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<a href="#" title="Close Image" onclick="window.top.location.reload();">' +
+ '<img src="images/toolbar/close.gif" style="width: 22px; height: 22px;" /><br />' +
+ 'Close' +
+ '</a>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+
+
+ /* --- Seperator --- */
+ var row = toolbar3.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<hr /><br />';
+
+ oCell.noWrap = true;
+ oCell.align = 'center';
+
+
+ /* --- Resize Image --- */
+ var row = toolbar3.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'resize\');" class="tb_item" id="tb_scale" title="Resize Image">' +
+ '<img src="images/toolbar/resize.gif" style="width: 22px; height: 22px;" /><br />' +
+ 'Resize' +
+ '</a>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+
+
+ /* --- Crop Image --- */
+ var row = toolbar3.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'crop\');" class="tb_item" id="tb_crop" title="Crop Image">' +
+ '<img src="images/toolbar/crop.gif" style="width: 22px; height: 22px;" /><br />' +
+ 'Crop' +
+ '</a>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+
+
+ /* --- Rotate Image --- */
+ var row = toolbar3.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'rotate\');" class="tb_item" id="tb_rotate" title="Rotate Image">' +
+ '<img src="images/toolbar/rotate.gif" style="width: 22px; height: 22px;" /><br />' +
+ 'Rotate' +
+ '</a>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+
+
+ /* --- Flip Image --- */
+ var row = toolbar3.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<a href="javascript: top.frames[\'frmResourcesList\'].setMode(\'flip\');" class="tb_item" id="tb_flip" title="Flip Image">' +
+ '<img src="images/toolbar/flip.gif" style="width: 22px; height: 22px;" /><br />' +
+ 'Flip' +
+ '</a>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+
+
+
+/*###################*/
+/* START OF INFO BAR */
+/*###################*/
+ /* --- X Position --- */
+ var row = toolbar1.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<div style="display: inline;">X: <div style="display: inline;" id="cursor_x">0</div>px</div>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+ cursor_X=bottomFrame1.getElementById('cursor_x');
+
+ /* --- Y Posision --- */
+ var row = toolbar1.insertRow(-1);
+ var oCell = row.insertCell(-1);
+ oCell.innerHTML = '<div style="display: inline;">Y: <div style="display: inline;" id="cursor_y">0</div>px</div>';
+ oCell.noWrap = true;
+ oCell.align = 'center';
+ cursor_Y=bottomFrame1.getElementById('cursor_y');
+
+
+/*#####################*/
+/* START OF MANUAL BAR */
+/*#####################*/
+
+ /* --- X Position --- */
+ //var row = toolbar2.insertRow(-1);
+ var oCell = toolbar2.insertCell(-1);
+ oCell.innerHTML = '<input type="text" id="cx" />' +
+ '<input type="text" id="cy" />';
+
+ oCell.noWrap = true;
+ oCell.align = 'center';
+ cursor_X=bottomFrame1.getElementById('cursor_x');
+
+
+}
+
+window.onload = function()
+{
+ drawFramework();
+ document.getElementById('theImage').src=fileURL;
+
+ jg_doc = new jsGraphics("imgCanvas"); // draw directly into document
+ jg_doc.setColor("#000000"); // black
+
+// top.frames['frmResourcesList'].setMode('scale');
+ imageEditorLoaded=true;
+// top.frames['frmResourcesList'].setMode('scale');
+}
+
+function updateXY(eventObject)
+{
+ if (imageEditorLoaded) {
+ cursor_X.innerHTML = eventObject.pageX;
+ cursor_Y.innerHTML = eventObject.pageY;
+ }
+}
+
+//-->
+
+ </script>
+ <style type="text/css">
+ body { margin: 0; padding: 0; background-color: #eee; }
+ table { width: 100%; }
+ table td { text-align: center; }
+ .crop{cursor:crosshair;}
+ .selection { border: dotted 1px #000000; position:absolute; width: 0px; height: 1px; z-index:5; }
+ .selectionWhite{ border: dotted 1px #FFFFFF; position:absolute; width: 0px; height: 1px; z-index:5; }
+ .handleBox{ z-index:105; }
+ .error { font-size:large; font-weight:bold; color:#c00; font-family: Helvetica, sans-serif; }
+ </style>
+ </head>
+ <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10">
+ <div id="status"></div>
+ <div id="ant" class="selection" style="visibility:hidden"><img src="img/spacer.gif" width="0" height="0" border="0" alt="" id="cropContent"></div>
+ <br /><table style="margin-left: auto; margin-right: auto;">
+ <tr>
+ <td>
+ <span id="imgCanvas" class="crop"><img src="" alt="" id="theImage" name="theImage"></span>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourceslist.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourceslist.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourceslist.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,384 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmresourceslist.html
+ * This page shows all resources available in a folder in the File Browser.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Grant French (grant at mcpuk.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/fckxml.js"></script>
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+var oListManager = new Object() ;
+
+oListManager.Init = function()
+{
+ this.Table = document.getElementById('tableFiles') ;
+}
+
+oListManager.Clear = function()
+{
+ // Remove all other rows available.
+ while ( this.Table.rows.length > 0 )
+ this.Table.deleteRow(0) ;
+}
+
+oListManager.AddFolder = function( folderName, folderPath )
+{
+ var docWidth=document.body.clientWidth;
+ if (docWidth==null) docWidth=document.body.scrollWidth;
+ var maxCols=docWidth/120;
+ maxCols--;
+
+ var rows=this.Table.getElementsByTagName('tr');
+
+
+ if (rows.length!=0) {
+ var lastRow = rows[(rows.length-1)];
+ var cells = lastRow.getElementsByTagName('td');
+ var lastRow_Cols = cells.length;
+
+ if (lastRow_Cols>=maxCols) {
+ lastRow = this.Table.insertRow(-1);
+ lastRow.className="Frame_tb";
+ }
+ } else {
+ var lastRow = this.Table.insertRow(-1);
+ lastRow.className="Frame_tb";
+ }
+
+ // Build the link to view the folder.
+ var sLink = '<a href="#" onclick="OpenFolder(\'' + escape(folderPath) + '\');return false;">' ;
+ var dLink = '<a href="#" onclick="DeleteFolder(\'' + escape(folderName) + '\');return false;">' ;
+ var rLink = '<a href="#" onclick="RenameFolder(\'' + escape(folderName) + '\');return false;">' ;
+
+ // Add the file icon cell.
+ var oCell = lastRow.insertCell(-1) ;
+ oCell.vAlign="top";
+ oCell.width = 96 ;
+ oCell.innerHTML = sLink + '<img alt="' + folderName + '" src="images/Folder96.jpg" width="96" height="96" border="0"><br />' + folderName + '</a><br />';
+ oCell.innerHTML += dLink + '<img border="0" src="images/delete.gif" width="16" height="16" alt="Delete Folder" title="Delete Folder"></a> ';
+ oCell.innerHTML += rLink + '<img border="0" src="images/edit.gif" width="16" height="16" alt="Rename Folder" title="Rename Folder"></a>' ;
+ oCell.noWrap = true ;
+ oCell.align = 'center' ;
+
+}
+
+oListManager.AddFile = function ( fileName, fileUrl, fileSize, imageEditable )
+{
+ var docWidth=document.body.clientWidth;
+ if (docWidth==null) docWidth=document.body.scrollWidth;
+ var maxCols=docWidth/120;
+ maxCols--;
+
+ var rows=this.Table.getElementsByTagName('tr');
+
+
+ if (rows.length!=0) {
+ var lastRow = rows[(rows.length-1)];
+ var cells = lastRow.getElementsByTagName('td');
+ var lastRow_Cols = cells.length;
+
+ if (lastRow_Cols>=maxCols) {
+ var lastRow = this.Table.insertRow(-1);
+ lastRow.className="Frame_tb";
+ }
+ } else {
+ var lastRow = this.Table.insertRow(-1);
+ lastRow.className="Frame_tb";
+ }
+
+ // Build the link to view the file.
+ var sLink = '<a href="#" title="Size: ' + fileSize + 'kb" onclick="OpenFile(\'' + escape(fileUrl) + '\');return false;">' ;
+ var dLink = '<a href="#" title="Delete file" onclick="DeleteFile(\'' + escape(fileName) + '\');return false;">' ;
+ var eLink = '<a href="#" title="Rename file" onclick="RenameFile(\'' + escape(fileName) + '\');return false;">' ;
+ var eImageLink = '<a href="#" title="Edit Image" onclick="EditImage(\'' + escape(fileName) + '\',\'' + escape(fileUrl) + '\');return false;">' ;
+
+ // Add the file icon cell.
+ var oCell = lastRow.insertCell(-1) ;
+ oCell.vAlign="top";
+ oCell.width = 96 ;
+
+ oCell.innerHTML = sLink +
+ '<img alt="' + fileName + '" src="' +
+ oConnector.ConnectorUrl +
+ '?Command=Thumbnail&Type=' +
+ oConnector.ResourceType +
+ '&CurrentFolder=' +
+ oConnector.CurrentFolder +
+ '&FileName=' + escape(fileName) +
+ '&ExtraParams=' + oConnector.ExtraParams +
+ '" width="96" height="96" border="0"><br />' +
+ fileName + '</a><br />';
+ oCell.innerHTML += dLink + '<img border="0" src="images/delete.gif" width="16" height="16" alt="Delete File" title="Delete File"></a> ';
+ oCell.innerHTML += eLink + '<img border="0" src="images/edit.gif" width="16" height="16" alt="Edit/Rename File" title="Rename File"></a>' ;
+ if (imageEditable==1) {
+ oCell.innerHTML += eImageLink + '<img border="0" src="images/editImage.gif" width="16" height="16" alt="Edit Image" title="Edit Image"></a>' ;
+ }
+
+ oCell.noWrap = true ;
+ oCell.align = 'center' ;
+
+}
+
+oListManager.PackRow = function ()
+{
+ var docWidth=document.body.clientWidth;
+ if (docWidth==null) docWidth=document.body.scrollWidth;
+ var maxCols=docWidth/120;
+ maxCols--;
+
+ var rows=this.Table.getElementsByTagName('tr');
+
+
+ if (rows.length!=0) {
+ var lastRow = rows[(rows.length-1)];
+ var cells = lastRow.getElementsByTagName('td');
+ var lastRow_Cols = cells.length;
+
+ if (lastRow_Cols<maxCols) {
+ for (i=lastRow_Cols;i<maxCols;i++) {
+ var oCell = lastRow.insertCell(-1);
+ oCell.width=96;
+ oCell.innerHTML = ' ';
+ oCell.noWrap=true;
+ oCell.align='center';
+ }
+ }
+ }
+
+}
+
+function OpenFolder( folderPath )
+{
+ // Load the resources list for this folder.
+ window.parent.frames['frmFolders'].LoadFolders( folderPath ) ;
+}
+
+function OpenFile( fileUrl )
+{
+ fileUrl=unescape(fileUrl);
+ window.top.opener.SetUrl( fileUrl ) ;
+ window.top.close() ;
+ window.top.opener.focus() ;
+}
+
+function DeleteFile( fileName, fileUrl )
+{
+ if (confirm('Are you sure you wish to delete ' + unescape(fileName) + '?')) {
+ oConnector.SendCommand( 'DeleteFile', "FileName=" + fileName, DeleteFileCallBack ) ;
+ }
+}
+
+function DeleteFolder( folderName )
+{
+ if (confirm('Are you sure you wish to delete ' + unescape(folderName) + ' and all files in it?')) {
+ oConnector.SendCommand( 'DeleteFolder', "FolderName=" + folderName, DeleteFolderCallBack ) ;
+ }
+}
+
+function RenameFile( fileName, fileUrl )
+{
+ var promptMsg='Please enter the new name for ' + unescape(fileName) + ':';
+ var newName=prompt(promptMsg,unescape(fileName));
+
+ if ((newName!=null)&&(newName!='')&&(newName!=fileName)) {
+ oConnector.SendCommand( 'RenameFile', "FileName=" + fileName + "&NewName=" + escape( newName ), RenameFileCallBack ) ;
+ }
+}
+
+function EditImage( fileName, fileUrl )
+{
+
+ window.location.href="frmimageeditor.html?Connector=" + oConnector.ConnectorUrl +
+ "&Type=" + oConnector.ResourceType +
+ "&CurrentFolder=" + oConnector.CurrentFolder +
+ "&FileName=" + fileName +
+ "&FileURL=" + fileUrl;
+
+}
+
+function RenameFolder( folderName )
+{
+ var promptMsg='Please enter the new name for ' + unescape(folderName) + ':';
+ var newName=prompt(promptMsg,unescape(folderName));
+
+ if ((newName!=null)&&(newName!='')&&(newName!=unescape(folderName))) {
+ oConnector.SendCommand( 'RenameFolder', "FolderName=" + folderName + "&NewName=" + escape ( newName ), RenameFolderCallBack ) ;
+ }
+}
+
+function LoadResources( resourceType, folderPath )
+{
+ oListManager.Clear() ;
+ oConnector.ResourceType = resourceType ;
+ oConnector.CurrentFolder = folderPath
+ oConnector.SendCommand( 'GetFoldersAndFiles', null, GetFoldersAndFilesCallBack ) ;
+}
+
+function Refresh()
+{
+ LoadResources( oConnector.ResourceType, oConnector.CurrentFolder ) ;
+}
+
+function GetFoldersAndFilesCallBack( fckXml )
+{
+ // Get the current folder path.
+ var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ;
+ var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ;
+ var sCurrentFolderUrl = oNode.attributes.getNamedItem('url').value ;
+
+ // Add the Folders.
+ var oNodes = fckXml.SelectNodes( 'Connector/Folders/Folder' ) ;
+
+ if (oNodes!=null) {
+ for ( var i = 0 ; i < oNodes.length ; i++ )
+ {
+ var sFolderName = oNodes[i].attributes.getNamedItem('name').value ;
+ oListManager.AddFolder( sFolderName, sCurrentFolderPath + sFolderName + "/" ) ;
+ }
+ }
+
+ // Add the Files.
+ var oNodes = fckXml.SelectNodes( 'Connector/Files/File' ) ;
+ if (oNodes!=null) {
+ for ( var i = 0 ; i < oNodes.length ; i++ )
+ {
+ var sFileName = oNodes[i].attributes.getNamedItem('name').value ;
+ var sFileSize = oNodes[i].attributes.getNamedItem('size').value ;
+ var iEditable = oNodes[i].attributes.getNamedItem('editable') ;
+ if (iEditable!=null) {
+ iEditable = iEditable.value;
+ } else {
+ iEditable = 0;
+ }
+
+ oListManager.AddFile( sFileName, sCurrentFolderUrl + sFileName, sFileSize, iEditable ) ;
+ }
+ }
+
+ oListManager.PackRow();
+}
+
+function DeleteFileCallBack ( fckXml )
+{
+ var oNodes = fckXml.SelectNodes( 'Connector/Error' );
+ if (oNodes!=null && oNodes.length>0) {
+ var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ;
+
+ switch (errNo) {
+ case 0 :
+ break;
+
+ case 302 :
+ alert('Failed to delete file.');
+ break;
+
+ default:
+ alert('DFi: Invalid XML response from connector..');
+ }
+ } else {
+ alert('DFi: Invalid XML response from connector.');
+ }
+ Refresh();
+}
+
+
+function DeleteFolderCallBack ( fckXml )
+{
+ var oNodes = fckXml.SelectNodes( 'Connector/Error' );
+ if (oNodes!=null && oNodes.length>0) {
+ var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ;
+
+ switch (errNo) {
+ case 0 :
+ break;
+
+ case 402 :
+ alert('Failed to delete folder.');
+ break;
+
+ default:
+ alert('DFo: Invalid XML response from connector..');
+ }
+ } else {
+ alert('DFo: Invalid XML response from connector.');
+ }
+ Refresh();
+}
+
+function RenameFileCallBack ( fckXml )
+{
+ var oNodes = fckXml.SelectNodes( 'Connector/Error' );
+ if (oNodes!=null && oNodes.length>0) {
+ var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ;
+
+ switch (errNo) {
+ case 0 :
+ break;
+
+ case 502 :
+ alert('Failed to rename file.');
+ break;
+
+ default:
+ alert('RFi: Invalid XML response from connector..');
+ }
+ } else {
+ alert('RFi: Invalid XML response from connector.');
+ }
+ Refresh();
+}
+
+
+function RenameFolderCallBack ( fckXml )
+{
+ var oNodes = fckXml.SelectNodes( 'Connector/Error' );
+ if (oNodes!=null && oNodes.length>0) {
+ var errNo = parseInt(oNodes[0].attributes.getNamedItem('number').value) ;
+
+ switch (errNo) {
+ case 0 :
+ break;
+
+ case 602 :
+ alert('Failed to rename folder.');
+ break;
+
+ default:
+ alert('RFo: Invalid XML response from connector..');
+ }
+ } else {
+ alert('RFo: Invalid XML response from connector.');
+ }
+ Refresh();
+}
+
+window.onload = function()
+{
+ oListManager.Init() ;
+ window.top.IsLoadedResourcesList = true ;
+}
+ </script>
+ </head>
+ <body class="FileArea" bottomMargin="10" leftMargin="10" topMargin="10" rightMargin="10">
+ <table id="tableFiles" cellSpacing="4" cellPadding="5" width="100%" border="0">
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourcetype.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourcetype.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmresourcetype.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,66 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmresourcetype.html
+ * This page shows the list of available resource types.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
+ <link href="browser.css" type="text/css" rel="stylesheet">
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+function SetResourceType( type )
+{
+ window.parent.frames["frmFolders"].SetResourceType( type ) ;
+}
+
+var aTypes = [
+ ['File','File'],
+ ['Image','Image'],
+ ['Flash','Flash'],
+ ['Media','Media']
+] ;
+
+window.onload = function()
+{
+ var bHasType = ( oConnector.ResourceType.length > 0 ) ;
+ cmbTypeObj=document.getElementById("cmbType");
+ for ( var i = 0 ; i < aTypes.length ; i++ )
+ {
+ if ( !bHasType || aTypes[i][0] ==
+oConnector.ResourceType )
+ AddSelectOption( cmbTypeObj, aTypes[i][1],
+aTypes[i][0] ) ;
+ }
+}
+
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td nowrap>
+ Resource Type<BR>
+ <select id="cmbType" style="WIDTH: 100%" onchange="SetResourceType(this.value);">
+ </select>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmupload.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmupload.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/frmupload.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,233 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: frmupload.html
+ * Page used to upload new files in the current folder.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Grant French (grant at mcpuk.net)
+-->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html>
+ <head>
+ <link href="browser.css" type="text/css" rel="stylesheet" />
+ <script type="text/javascript" src="js/fckxml.js"></script>
+ <script type="text/javascript" src="js/common.js"></script>
+ <script language="javascript">
+
+var randomnumber=Math.floor(Math.random()*65535);
+var refreshURL='';
+var uploading=false;
+
+function SetCurrentFolder( resourceType, folderPath )
+{
+ var sUrl = oConnector.UploadHandler +'?uploadID='+randomnumber+'&Connector='+escape(oConnector.ConnectorUrl)+'&Command=FileUpload' ;
+ sUrl += '&Type=' + resourceType ;
+ sUrl += '&CurrentFolder=' + folderPath ;
+ sUrl += '&ExtraParams=' + oConnector.ExtraParams ;
+ document.getElementById('frmUpload').action = sUrl ;
+
+ oConnector.ResourceType = resourceType ;
+ oConnector.CurrentFolder = folderPath ;
+}
+
+function OnSubmit()
+{
+ if ( document.getElementById('NewFile').value.length == 0 )
+ {
+ alert( 'Please select a file from your computer' ) ;
+ return false ;
+ }
+
+ // Set the interface elements.
+ document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder (Upload in progress, please wait... 0%)' ;
+ document.getElementById('filebox').style.display="none";
+ resetProgressBar();
+ document.getElementById('progressbox').style.display="inline";
+ document.getElementById('btnUpload').disabled = true ;
+
+ uploading=true;
+ setTimeout("GetUploadProgress()",2000);
+
+ return true ;
+}
+
+function OnUploadCompleted( errorNumber, fileName )
+{
+ uploading=false;
+
+ // Reset the Upload Worker Frame.
+ window.parent.frames['frmUploadWorker'].location = '' ;
+
+ // Reset the upload form.
+ //Sometimes causes IE to get itself in a mess (wont allow second upload)
+ //document.getElementById('NewFile').reset() ;
+
+ // Reset the interface elements.
+ document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder' ;
+ document.getElementById('btnUpload').disabled = false ;
+
+ var randomnumber=Math.floor(Math.random()*65535);
+ SetCurrentFolder(oConnector.ResourceType,oConnector.CurrentFolder);
+
+ switch ( errorNumber )
+ {
+ case 0 :
+ window.parent.frames['frmResourcesList'].Refresh() ;
+ document.getElementById('filebox').style.display="inline";
+ document.getElementById('progressbox').style.display="none";
+ break ;
+ case 201 :
+ window.parent.frames['frmResourcesList'].Refresh() ;
+ document.getElementById('filebox').style.display="inline";
+ document.getElementById('progressbox').style.display="none";
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
+ break ;
+ case 202 :
+ document.getElementById('filebox').style.display="inline";
+ document.getElementById('progressbox').style.display="none";
+ alert( 'Error, "'+fileName+'"' ) ;
+ break ;
+ default :
+ document.getElementById('filebox').style.display="inline";
+ document.getElementById('progressbox').style.display="none";
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
+ break ;
+ }
+}
+
+function resetProgressBar() {
+ oProgressBar=document.getElementById('progress');
+ var rows=oProgressBar.getElementsByTagName('tr');
+ var row=rows[0];
+ var cols=row.getElementsByTagName('td');
+// var label=document.getElementById("progress_label");
+
+// label.innerHTML="0%"
+ for (i=0;i<(cols.length-1);i++) {
+ cols[i].className="progress_hollow";
+ }
+}
+
+warned=false;
+function GetUploadProgressCallback( fckXml ) {
+ // Get the current folder path.
+
+ if (!uploading) return false;
+
+ var oNode = fckXml.SelectSingleNode( 'Connector/CurrentFolder' ) ;
+ if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; }
+ if ((oNode.attributes.getNamedItem('path')==null)||(oNode.attributes.getNamedItem('url')==null)) {
+ if(!warned) { alert("Invalid XML response from connector."); warned=true; }
+ return;
+ }
+
+ var sCurrentFolderPath = oNode.attributes.getNamedItem('path').value ;
+ var sCurrentFolderUrl = oNode.attributes.getNamedItem('url').value ;
+
+ // Add the Folders.
+ var oNode = fckXml.SelectSingleNode( 'Connector/Progress' ) ;
+ if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; }
+ if ((oNode.attributes.getNamedItem('max')==null)||(oNode.attributes.getNamedItem('value')==null)) {
+ if(!warned) { alert("Invalid XML response from connector."); warned=true; }
+ return;
+ }
+
+ var iMax = oNode.attributes.getNamedItem('max').value ;
+ var iValue = oNode.attributes.getNamedItem('value').value ;
+
+ var oNode = fckXml.SelectSingleNode( 'Connector/RefreshURL' ) ;
+ if (oNode==null) { if(!warned) { alert("Invalid XML response from connector."); warned=true; } return false; }
+ if ((oNode.attributes.getNamedItem('url')==null)) {
+ if(!warned) { alert("Invalid XML response from connector."); warned=true; }
+ return;
+ }
+ refreshURL = oNode.attributes.getNamedItem('url').value ;
+
+ var oProgressBar=document.getElementById('progress');
+ //var label=document.getElementById("progress_label");
+ var rows=oProgressBar.getElementsByTagName('tr');
+ var row=rows[0];
+ var cols=row.getElementsByTagName('td');
+ var percentage=Math.floor((iValue/iMax)*100);
+ document.getElementById('eUploadMessage').innerHTML = 'Upload a new file in this folder (Upload in progress, please wait.. ' + percentage + '% )' ;
+
+ //label.innerHTML=percentage+"%"
+ for (i=0;i<(cols.length-1);i++) {
+ if (((i+1)*(100/cols.length))<=percentage) {
+ cols[i].className="progress_filled";
+ } else {
+ cols[i].className="progress_hollow";
+ }
+ }
+
+ if (uploading) getProgressTimer=setTimeout("GetUploadProgress()",1000);
+}
+
+function GetUploadProgress() {
+ if (uploading) oConnector.SendCommand( 'GetUploadProgress', 'uploadID='+randomnumber+'&refreshURL='+escape(refreshURL), GetUploadProgressCallback ) ;
+}
+
+window.onload = function()
+{
+ window.top.IsLoadedUpload = true ;
+}
+ </script>
+ </head>
+ <body bottomMargin="0" topMargin="0">
+ <form id="frmUpload" action="" target="frmUploadWorker" method="post" enctype="multipart/form-data" onsubmit="return OnSubmit();">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td nowrap>
+ <span id="eUploadMessage">Upload a new file in this folder</span><br>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td width="100%">
+ <div id="filebox"><input id="NewFile" name="NewFile" style="width: 100%; background-color: transparent;" type="file"></div>
+ <div id="progressbox" style="display: none">
+ <table id="progress" style="width: 100%" class="progress_bar">
+ <tr>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ <td class="progress_hollow"> </td>
+ </tr>
+ </table>
+ <!--<div id="progress_label"></div>-->
+ </div>
+ </td>
+ <td nowrap> <input id="btnUpload" type="submit" value="Upload"></td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </form>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/2x2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/2x2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/2x2_w.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/2x2_w.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/ButtonArrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/ButtonArrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder32.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder32.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder96.jpg
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/Folder96.jpg
___________________________________________________________________
Name: svn:mime-type
+ image/jpeg
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderOpened.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderOpened.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderOpened32.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderOpened32.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderUp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/FolderUp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/close.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/close.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/delete.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/delete.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/edit.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/edit.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/editImage.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/editImage.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/ai.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/ai.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/avi.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/avi.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/bmp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/bmp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/cs.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/cs.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/default.icon.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/default.icon.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/dll.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/dll.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/doc.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/doc.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/exe.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/exe.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/fla.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/fla.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/gif.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/gif.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/htm.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/htm.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/html.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/html.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/jpg.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/jpg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/js.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/js.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/mdb.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/mdb.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/mp3.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/mp3.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/pdf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/pdf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/ppt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/ppt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/rdp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/rdp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/swf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/swf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/swt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/swt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/txt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/txt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/vsd.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/vsd.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/xls.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/xls.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/xml.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/xml.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/zip.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/32/zip.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/ai.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/ai.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/avi.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/avi.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/bmp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/bmp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/cs.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/cs.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/default.icon.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/default.icon.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/dll.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/dll.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/doc.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/doc.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/exe.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/exe.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/fla.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/fla.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/gif.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/gif.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/htm.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/htm.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/html.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/html.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/jpg.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/jpg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/js.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/js.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/mdb.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/mdb.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/mp3.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/mp3.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/pdf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/pdf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/ppt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/ppt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/rdp.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/rdp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/swf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/swf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/swt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/swt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/txt.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/txt.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/vsd.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/vsd.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/xls.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/xls.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/xml.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/xml.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/zip.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/icons/zip.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/spacer.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/close.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/close.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/crop.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/crop.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/flip.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/flip.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/resize.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/resize.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/rotate.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/rotate.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/save.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/images/toolbar/save.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/EditorContent.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/EditorContent.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/EditorContent.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,32 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: EditorContent.js
+ * (!)
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+var mode='resize';
+
+function setMode(newMode) {
+ if (newMode=="resize" || newMode=="crop" || newMode=="rotate" || newMode=="flip") {
+ mode=newMode;
+ alert("New Mode :: "+mode);
+ } else {
+ alert("Image Editor :: Invalid mode selected.");
+ }
+}
+
+function mouseMove(e) {
+
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/common.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/common.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/common.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,101 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: common.js
+ * Common objects and functions shared by all pages that compose the
+ * File Browser dialog window.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function AddSelectOption( selectElement, optionText, optionValue )
+{
+ var oOption = document.createElement("OPTION") ;
+
+ oOption.text = optionText ;
+ oOption.value = optionValue ;
+
+ selectElement.options.add(oOption) ;
+
+ return oOption ;
+}
+
+function GetUrlParam( paramName )
+{
+ var oRegex = new RegExp( '[\?&]' + paramName + '=([^&]+)', 'i' ) ;
+ var oMatch = oRegex.exec( unescape(window.top.location.search) ) ;
+
+ if ( oMatch && oMatch.length > 1 )
+ return oMatch[1] ;
+ else
+ return '' ;
+}
+
+function GetMyUrlParam( paramName )
+{
+ var oRegex = new RegExp( '[\?&]' + paramName + '=([^&]+)', 'i' ) ;
+ var oMatch = oRegex.exec( window.location.search ) ;
+
+ if ( oMatch && oMatch.length > 1 )
+ return oMatch[1] ;
+ else
+ return '' ;
+}
+
+var oConnector = new Object() ;
+oConnector.CurrentFolder = '/' ;
+oConnector.UploadHandler = GetUrlParam( 'UploadHandler' );
+oConnector.ConnectorUrl = GetUrlParam( 'Connector' ) ;
+oConnector.ResourceType = GetUrlParam( 'Type' ) ;
+oConnector.ExtraParams = GetUrlParam( 'ExtraParams' ) ;
+
+if ((oConnector.UploadHandler=='')||(oConnector.UploadHandler=='undefined')) oConnector.UploadHandler=oConnector.ConnectorUrl;
+
+
+oConnector.SendCommand = function( command, params, callBackFunction )
+{
+ var sUrl = this.ConnectorUrl + '?Command=' + command ;
+ sUrl += '&Type=' + this.ResourceType ;
+ sUrl += '&ExtraParams=' + this.ExtraParams ;
+ sUrl += '&CurrentFolder=' + escape( this.CurrentFolder ) ;
+
+ if ( params ) sUrl += '&' + params ;
+
+ var oXML = new FCKXml() ;
+
+ if ( callBackFunction )
+ oXML.LoadUrl( sUrl, callBackFunction ) ; // Asynchronous load.
+ else
+ return oXML.LoadUrl( sUrl ) ;
+}
+
+var oIcons = new Object() ;
+
+oIcons.AvailableIconsArray = [
+ 'ai','avi','bmp','cs','dll','doc','exe','fla','gif','htm','html','jpg','js',
+ 'mdb','mp3','pdf','ppt','rdp','swf','swt','txt','vsd','xls','xml','zip' ] ;
+
+oIcons.AvailableIcons = new Object() ;
+
+for ( var i = 0 ; i < oIcons.AvailableIconsArray.length ; i++ )
+ oIcons.AvailableIcons[ oIcons.AvailableIconsArray[i] ] = true ;
+
+oIcons.GetIcon = function( fileName )
+{
+ var sExtension = fileName.substr( fileName.lastIndexOf('.') + 1 ).toLowerCase() ;
+
+ if ( this.AvailableIcons[ sExtension ] == true )
+ return sExtension ;
+ else
+ return 'default.icon' ;
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/fckxml.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/fckxml.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/fckxml.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,118 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckxml.js
+ * Defines the FCKXml object that is used for XML data calls
+ * and XML processing.
+ * This script is shared by almost all pages that compose the
+ * File Browser frameset.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKXml = function()
+{}
+
+function escapeHTML(text) {
+text=text.replace('\n','');
+text=text.replace('&','&');
+text=text.replace('<','<');
+text=text.replace('>','>');
+return text;
+}
+
+FCKXml.prototype.GetHttpRequest = function()
+{
+ if ( window.XMLHttpRequest ) // Gecko
+ return new XMLHttpRequest() ;
+ else if ( window.ActiveXObject ) // IE
+ return new ActiveXObject("MsXml2.XmlHttp") ;
+}
+
+FCKXml.prototype.LoadUrl = function( urlToCall, asyncFunctionPointer )
+{
+ var oFCKXml = this ;
+
+ var bAsync = ( typeof(asyncFunctionPointer) == 'function' ) ;
+
+ var oXmlHttp = this.GetHttpRequest() ;
+ oXmlHttp.open( "GET", urlToCall, bAsync ) ;
+
+ if ( bAsync )
+ {
+ oXmlHttp.onreadystatechange = function()
+ {
+ if ( oXmlHttp.readyState == 4 )
+ {
+ /*
+ dbgWin=window.open('','dbgWin','width=700,height=400');
+ txt=dbgWin.document.getElementById('txtXML');
+
+ if (txt==null) {
+ dbgWin.document.write("<textarea style=\"width: 100%; height: 100%\" id=\"txtXML\"></textarea>");
+ txt=dbgWin.document.getElementById('txtXML');
+ }
+
+ txt.value=new String("-----------------------------------------\n" + oXmlHttp.responseText);
+ */
+
+ oFCKXml.DOMDocument = oXmlHttp.responseXML ;
+ asyncFunctionPointer( oFCKXml ) ;
+ }
+ }
+ }
+
+ oXmlHttp.send( null ) ;
+
+ if ( ! bAsync )
+ this.DOMDocument = oXmlHttp.responseXML ;
+}
+
+FCKXml.prototype.SelectNodes = function( xpath )
+{
+ if ( document.all ) // IE
+ return this.DOMDocument.selectNodes( xpath ) ;
+ else // Gecko
+ {
+ var aNodeArray = new Array();
+
+ var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
+ this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), XPathResult.ORDERED_NODE_ITERATOR_TYPE, null) ;
+ if ( xPathResult )
+ {
+ var oNode = xPathResult.iterateNext() ;
+ while( oNode )
+ {
+ aNodeArray[aNodeArray.length] = oNode ;
+ oNode = xPathResult.iterateNext();
+ }
+ }
+ return aNodeArray ;
+ }
+}
+
+FCKXml.prototype.SelectSingleNode = function( xpath )
+{
+ if ( document.all ) // IE
+ return this.DOMDocument.selectSingleNode( xpath ) ;
+ else // Gecko
+ {
+ var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
+ this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), 9, null);
+
+ if ( xPathResult && xPathResult.singleNodeValue )
+ return xPathResult.singleNodeValue ;
+ else
+ return null ;
+ }
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/wz_jsgraphics.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/wz_jsgraphics.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/browser/mcpuk/js/wz_jsgraphics.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,931 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: wz_jsgraphics.js
+ * Javascript Graphics.
+ *
+ * File Authors:
+ * Grant French (grant at mcpuk.net)
+ */
+/***********************************************************************
+** Title.........: Javascript Graphics
+** Version.......: 1.0
+** Author........: Xiang Wei ZHUO <wei at zhuo.org>
+** Filename......: wz_jsgraphics.js
+** Last changed..: 31 Aug 2003
+** Notes.........: Modified for Image Editor, added extra commands
+**/
+
+/* This notice must be untouched at all times.
+
+wz_jsgraphics.js v. 2.03
+The latest version is available at
+http://www.walterzorn.com
+or http://www.devira.com
+or http://www.walterzorn.de
+
+Copyright (c) 2002-2003 Walter Zorn. All rights reserved.
+Created 3. 11. 2002 by Walter Zorn <walter at kreuzotter.de>
+Last modified: 11. 6. 2003
+
+High Performance JavaScript Graphics Library.
+Provides methods
+- to draw lines, rectangles, ellipses, polygons
+ with specifiable line thickness,
+- to fill rectangles and ellipses
+- to draw text.
+NOTE: Operations, functions and branching have rather been optimized
+to efficiency and speed than to shortness of source code.
+
+This program is free software;
+you can redistribute it and/or modify it under the terms of the
+GNU General Public License as published by the Free Software Foundation;
+either version 2 of the License, or (at your option) any later version.
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY;
+without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+See the GNU General Public License
+at http://www.gnu.org/copyleft/gpl.html for more details.
+*/
+
+var jg_ihtm, jg_ie, jg_dom,
+jg_n4 = (document.layers && typeof document.classes != "undefined");
+
+function chkDHTM(x, i)
+{
+ x = document.body || null;
+ jg_ie = (x && typeof x.insertAdjacentHTML != "undefined");
+ jg_dom = (x && !jg_ie &&
+ typeof x.appendChild != "undefined" &&
+ typeof document.createRange != "undefined" &&
+ typeof (i = document.createRange()).setStartBefore != "undefined" &&
+ typeof i.createContextualFragment != "undefined");
+ jg_ihtm = (!jg_ie && !jg_dom && x && typeof x.innerHTML != "undefined");
+}
+
+
+
+
+
+function pntDoc()
+{
+ this.wnd.document.write(this.htm);
+ this.htm = '';
+}
+
+
+
+
+
+function pntCnvDom()
+{
+ var x = document.createRange();
+ x.setStartBefore(this.cnv);
+ x = x.createContextualFragment(this.htm);
+ this.cnv.appendChild(x);
+ this.htm = '';
+}
+
+
+
+
+
+function pntCnvIe()
+{
+ this.cnv.insertAdjacentHTML("BeforeEnd", this.htm);
+ this.htm = '';
+}
+
+
+
+
+
+function pntCnvIhtm()
+{
+ this.cnv.innerHTML += this.htm;
+ this.htm = '';
+}
+
+
+
+
+
+function pntCnv()
+{
+ this.htm = '';
+}
+
+
+
+
+
+function mkDiv(x, y, w, h)
+{
+ this.htm += '<div style="position:absolute;'+
+ 'left:' + x + 'px;'+
+ 'top:' + y + 'px;'+
+ 'width:' + w + 'px;'+
+ 'height:' + h + 'px;'+
+ 'clip:rect(0,'+w+'px,'+h+'px,0);'+
+ 'overflow:hidden;background-color:' + this.color + ';'+
+ '"><\/div>';
+
+ //alert(this.htm);
+}
+
+
+
+
+function mkDivPrint(x, y, w, h)
+{
+ this.htm += '<div style="position:absolute;'+
+ 'border-left:' + w + 'px solid ' + this.color + ';'+
+ 'left:' + x + 'px;'+
+ 'top:' + y + 'px;'+
+ 'width:' + w + 'px;'+
+ 'height:' + h + 'px;'+
+ 'clip:rect(0,'+w+'px,'+h+'px,0);'+
+ 'overflow:hidden;background-color:' + this.color + ';'+
+ '"><\/div>';
+}
+
+
+
+
+
+function mkLyr(x, y, w, h)
+{
+ this.htm += '<layer '+
+ 'left="' + x + '" '+
+ 'top="' + y + '" '+
+ 'width="' + w + '" '+
+ 'height="' + h + '" '+
+ 'bgcolor="' + this.color + '"><\/layer>\n';
+}
+
+
+
+
+
+function mkLbl(txt, x, y)
+{
+ this.htm += '<div style="position:absolute;white-space:nowrap;'+
+ 'left:' + x + 'px;'+
+ 'top:' + y + 'px;'+
+ 'font-family:' + this.ftFam + ';'+
+ 'font-size:' + this.ftSz + ';'+
+ 'color:' + this.color + ';' + this.ftSty + '">'+
+ txt +
+ '<\/div>';
+}
+
+
+
+
+
+function mkLin(x1, y1, x2, y2)
+{
+ if (x1 > x2)
+ {
+ var _x2 = x2;
+ var _y2 = y2;
+ x2 = x1;
+ y2 = y1;
+ x1 = _x2;
+ y1 = _y2;
+ }
+ var dx = x2-x1, dy = Math.abs(y2-y1),
+ x = x1, y = y1,
+ yIncr = (y1 > y2)? -1 : 1;
+
+ if (dx >= dy)
+ {
+ var pr = dy<<1,
+ pru = pr - (dx<<1),
+ p = pr-dx,
+ ox = x;
+ while ((dx--) > 0)
+ {
+ ++x;
+ if (p > 0)
+ {
+ this.mkDiv(ox, y, x-ox, 1);
+ y += yIncr;
+ p += pru;
+ ox = x;
+ }
+ else p += pr;
+ }
+ this.mkDiv(ox, y, x2-ox+1, 1);
+ }
+
+ else
+ {
+ var pr = dx<<1,
+ pru = pr - (dy<<1),
+ p = pr-dy,
+ oy = y;
+ if (y2 <= y1)
+ {
+ while ((dy--) > 0)
+ {
+ if (p > 0)
+ {
+ this.mkDiv(x++, y, 1, oy-y+1);
+ y += yIncr;
+ p += pru;
+ oy = y;
+ }
+ else
+ {
+ y += yIncr;
+ p += pr;
+ }
+ }
+ this.mkDiv(x2, y2, 1, oy-y2+1);
+ }
+ else
+ {
+ while ((dy--) > 0)
+ {
+ y += yIncr;
+ if (p > 0)
+ {
+ this.mkDiv(x++, oy, 1, y-oy);
+ p += pru;
+ oy = y;
+ }
+ else p += pr;
+ }
+ this.mkDiv(x2, oy, 1, y2-oy+1);
+ }
+ }
+}
+
+
+
+
+
+function mkLin2D(x1, y1, x2, y2)
+{
+ if (x1 > x2)
+ {
+ var _x2 = x2;
+ var _y2 = y2;
+ x2 = x1;
+ y2 = y1;
+ x1 = _x2;
+ y1 = _y2;
+ }
+ var dx = x2-x1, dy = Math.abs(y2-y1),
+ x = x1, y = y1,
+ yIncr = (y1 > y2)? -1 : 1;
+
+
+ var s = this.stroke;
+ if (dx >= dy)
+ {
+ if (s-0x3 > 0)
+ {
+ var _s = (s*dx*Math.sqrt(1+dy*dy/(dx*dx))-dx-(s>>1)*dy) / dx;
+ _s = (!(s-0x4)? Math.ceil(_s) : Math.round(_s)) + 1;
+ }
+ else var _s = s;
+ var ad = Math.ceil(s/2);
+
+ var pr = dy<<1,
+ pru = pr - (dx<<1),
+ p = pr-dx,
+ ox = x;
+ while ((dx--) > 0)
+ {
+ ++x;
+ if (p > 0)
+ {
+ this.mkDiv(ox, y, x-ox+ad, _s);
+ y += yIncr;
+ p += pru;
+ ox = x;
+ }
+ else p += pr;
+ }
+ this.mkDiv(ox, y, x2-ox+ad+1, _s);
+ }
+
+ else
+ {
+ if (s-0x3 > 0)
+ {
+ var _s = (s*dy*Math.sqrt(1+dx*dx/(dy*dy))-(s>>1)*dx-dy) / dy;
+ _s = (!(s-0x4)? Math.ceil(_s) : Math.round(_s)) + 1;
+ }
+ else var _s = s;
+ var ad = Math.round(s/2);
+
+ var pr = dx<<1,
+ pru = pr - (dy<<1),
+ p = pr-dy,
+ oy = y;
+ if (y2 <= y1)
+ {
+ ++ad;
+ while ((dy--) > 0)
+ {
+ if (p > 0)
+ {
+ this.mkDiv(x++, y, _s, oy-y+ad);
+ y += yIncr;
+ p += pru;
+ oy = y;
+ }
+ else
+ {
+ y += yIncr;
+ p += pr;
+ }
+ }
+ this.mkDiv(x2, y2, _s, oy-y2+ad);
+ }
+ else
+ {
+ while ((dy--) > 0)
+ {
+ y += yIncr;
+ if (p > 0)
+ {
+ this.mkDiv(x++, oy, _s, y-oy+ad);
+ p += pru;
+ oy = y;
+ }
+ else p += pr;
+ }
+ this.mkDiv(x2, oy, _s, y2-oy+ad+1);
+ }
+ }
+}
+
+
+
+
+
+function mkLinDott(x1, y1, x2, y2)
+{
+ if (x1 > x2)
+ {
+ var _x2 = x2;
+ var _y2 = y2;
+ x2 = x1;
+ y2 = y1;
+ x1 = _x2;
+ y1 = _y2;
+ }
+ var dx = x2-x1, dy = Math.abs(y2-y1),
+ x = x1, y = y1,
+ yIncr = (y1 > y2)? -1 : 1,
+ drw = true;
+ if (dx >= dy)
+ {
+ var pr = dy<<1,
+ pru = pr - (dx<<1),
+ p = pr-dx;
+ while ((dx--) > 0)
+ {
+ if (drw) this.mkDiv(x, y, 1, 1);
+ drw = !drw;
+ if (p > 0)
+ {
+ y += yIncr;
+ p += pru;
+ }
+ else p += pr;
+ ++x;
+ }
+ if (drw) this.mkDiv(x, y, 1, 1);
+ }
+
+ else
+ {
+ var pr = dx<<1,
+ pru = pr - (dy<<1),
+ p = pr-dy;
+ while ((dy--) > 0)
+ {
+ if (drw) this.mkDiv(x, y, 1, 1);
+ drw = !drw;
+ y += yIncr;
+ if (p > 0)
+ {
+ ++x;
+ p += pru;
+ }
+ else p += pr;
+ }
+ if (drw) this.mkDiv(x, y, 1, 1);
+ }
+}
+
+
+
+
+
+function mkOv(left, top, width, height)
+{
+ var a = width>>1, b = height>>1,
+ wod = width&1, hod = (height&1)+1,
+ cx = left+a, cy = top+b,
+ x = 0, y = b,
+ ox = 0, oy = b,
+ aa = (a*a)<<1, bb = (b*b)<<1,
+ st = (aa>>1)*(1-(b<<1)) + bb,
+ tt = (bb>>1) - aa*((b<<1)-1),
+ w, h;
+ while (y > 0)
+ {
+ if (st < 0)
+ {
+ st += bb*((x<<1)+0x3);
+ tt += (bb<<1)*(++x);
+ }
+ else if (tt < 0)
+ {
+ st += bb*((x<<1)+0x3) - (aa<<1)*(y-1);
+ tt += (bb<<1)*(++x) - aa*(((y--)<<1)-0x3);
+ w = x-ox;
+ h = oy-y;
+ if (w&0x2 && h&0x2)
+ {
+ this.mkOvQds(cx, cy, -x+0x2, ox+wod, -oy, oy-1+hod, 1, 1);
+ this.mkOvQds(cx, cy, -x+1, x-1+wod, -y-1, y+hod, 1, 1);
+ }
+ else this.mkOvQds(cx, cy, -x+1, ox+wod, -oy, oy-h+hod, w, h);
+ ox = x;
+ oy = y;
+ }
+ else
+ {
+ tt -= aa*((y<<1)-0x3);
+ st -= (aa<<1)*(--y);
+ }
+ }
+ this.mkDiv(cx-a, cy-oy, a-ox+1, (oy<<1)+hod);
+ this.mkDiv(cx+ox+wod, cy-oy, a-ox+1, (oy<<1)+hod);
+}
+
+
+
+
+
+function mkOv2D(left, top, width, height)
+{
+ var s = this.stroke;
+ width += s-1;
+ height += s-1;
+ var a = width>>1, b = height>>1,
+ wod = width&1, hod = (height&1)+1,
+ cx = left+a, cy = top+b,
+ x = 0, y = b,
+ aa = (a*a)<<1, bb = (b*b)<<1,
+ st = (aa>>1)*(1-(b<<1)) + bb,
+ tt = (bb>>1) - aa*((b<<1)-1);
+
+
+ if (s-0x4 < 0 && (!(s-0x2) || width-0x33 > 0 && height-0x33 > 0))
+ {
+ var ox = 0, oy = b,
+ w, h,
+ pxl, pxr, pxt, pxb, pxw;
+ while (y > 0)
+ {
+ if (st < 0)
+ {
+ st += bb*((x<<1)+0x3);
+ tt += (bb<<1)*(++x);
+ }
+ else if (tt < 0)
+ {
+ st += bb*((x<<1)+0x3) - (aa<<1)*(y-1);
+ tt += (bb<<1)*(++x) - aa*(((y--)<<1)-0x3);
+ w = x-ox;
+ h = oy-y;
+
+ if (w-1)
+ {
+ pxw = w+1+(s&1);
+ h = s;
+ }
+ else if (h-1)
+ {
+ pxw = s;
+ h += 1+(s&1);
+ }
+ else pxw = h = s;
+ this.mkOvQds(cx, cy, -x+1, ox-pxw+w+wod, -oy, -h+oy+hod, pxw, h);
+ ox = x;
+ oy = y;
+ }
+ else
+ {
+ tt -= aa*((y<<1)-0x3);
+ st -= (aa<<1)*(--y);
+ }
+ }
+ this.mkDiv(cx-a, cy-oy, s, (oy<<1)+hod);
+ this.mkDiv(cx+a+wod-s+1, cy-oy, s, (oy<<1)+hod);
+ }
+
+
+ else
+ {
+ var _a = (width-((s-1)<<1))>>1,
+ _b = (height-((s-1)<<1))>>1,
+ _x = 0, _y = _b,
+ _aa = (_a*_a)<<1, _bb = (_b*_b)<<1,
+ _st = (_aa>>1)*(1-(_b<<1)) + _bb,
+ _tt = (_bb>>1) - _aa*((_b<<1)-1),
+
+ pxl = new Array(),
+ pxt = new Array(),
+ _pxb = new Array();
+ pxl[0] = 0;
+ pxt[0] = b;
+ _pxb[0] = _b-1;
+ while (y > 0)
+ {
+ if (st < 0)
+ {
+ st += bb*((x<<1)+0x3);
+ tt += (bb<<1)*(++x);
+ pxl[pxl.length] = x;
+ pxt[pxt.length] = y;
+ }
+ else if (tt < 0)
+ {
+ st += bb*((x<<1)+0x3) - (aa<<1)*(y-1);
+ tt += (bb<<1)*(++x) - aa*(((y--)<<1)-0x3);
+ pxl[pxl.length] = x;
+ pxt[pxt.length] = y;
+ }
+ else
+ {
+ tt -= aa*((y<<1)-0x3);
+ st -= (aa<<1)*(--y);
+ }
+
+ if (_y > 0)
+ {
+ if (_st < 0)
+ {
+ _st += _bb*((_x<<1)+0x3);
+ _tt += (_bb<<1)*(++_x);
+ _pxb[_pxb.length] = _y-1;
+ }
+ else if (_tt < 0)
+ {
+ _st += _bb*((_x<<1)+0x3) - (_aa<<1)*(_y-1);
+ _tt += (_bb<<1)*(++_x) - _aa*(((_y--)<<1)-0x3);
+ _pxb[_pxb.length] = _y-1;
+ }
+ else
+ {
+ _tt -= _aa*((_y<<1)-0x3);
+ _st -= (_aa<<1)*(--_y);
+ _pxb[_pxb.length-1]--;
+ }
+ }
+ }
+
+ var ox = 0, oy = b,
+ _oy = _pxb[0],
+ l = pxl.length,
+ w, h;
+ for (var i = 0; i < l; i++)
+ {
+ if (typeof _pxb[i] != "undefined")
+ {
+ if (_pxb[i] < _oy || pxt[i] < oy)
+ {
+ x = pxl[i];
+ this.mkOvQds(cx, cy, -x+1, ox+wod, -oy, _oy+hod, x-ox, oy-_oy);
+ ox = x;
+ oy = pxt[i];
+ _oy = _pxb[i];
+ }
+ }
+ else
+ {
+ x = pxl[i];
+ this.mkDiv(cx-x+1, cy-oy, 1, (oy<<1)+hod);
+ this.mkDiv(cx+ox+wod, cy-oy, 1, (oy<<1)+hod);
+ ox = x;
+ oy = pxt[i];
+ }
+ }
+ this.mkDiv(cx-a, cy-oy, 1, (oy<<1)+hod);
+ this.mkDiv(cx+ox+wod, cy-oy, 1, (oy<<1)+hod);
+ }
+}
+
+
+
+
+
+function mkOvDott(left, top, width, height)
+{
+ var a = width>>1, b = height>>1,
+ wod = width&1, hod = height&1,
+ cx = left+a, cy = top+b,
+ x = 0, y = b,
+ aa2 = (a*a)<<1, aa4 = aa2<<1, bb = (b*b)<<1,
+ st = (aa2>>1)*(1-(b<<1)) + bb,
+ tt = (bb>>1) - aa2*((b<<1)-1),
+ drw = true;
+ while (y > 0)
+ {
+ if (st < 0)
+ {
+ st += bb*((x<<1)+0x3);
+ tt += (bb<<1)*(++x);
+ }
+ else if (tt < 0)
+ {
+ st += bb*((x<<1)+0x3) - aa4*(y-1);
+ tt += (bb<<1)*(++x) - aa2*(((y--)<<1)-0x3);
+ }
+ else
+ {
+ tt -= aa2*((y<<1)-0x3);
+ st -= aa4*(--y);
+ }
+ if (drw) this.mkOvQds(cx, cy, -x, x+wod, -y, y+hod, 1, 1);
+ drw = !drw;
+ }
+}
+
+
+
+
+
+function mkRect(x, y, w, h)
+{
+ var s = this.stroke;
+ this.mkDiv(x, y, w, s);
+ this.mkDiv(x+w, y, s, h);
+ this.mkDiv(x, y+h, w+s, s);
+ this.mkDiv(x, y+s, s, h-s);
+}
+
+
+
+
+
+function mkRectDott(x, y, w, h)
+{
+ this.drawLine(x, y, x+w, y);
+ this.drawLine(x+w, y, x+w, y+h);
+ this.drawLine(x, y+h, x+w, y+h);
+ this.drawLine(x, y, x, y+h);
+}
+
+
+
+
+
+function jsgFont()
+{
+ this.PLAIN = 'font-weight:normal;';
+ this.BOLD = 'font-weight:bold;';
+ this.ITALIC = 'font-style:italic;';
+ this.ITALIC_BOLD = this.ITALIC + this.BOLD;
+ this.BOLD_ITALIC = this.ITALIC_BOLD;
+}
+var Font = new jsgFont();
+
+
+
+
+
+function jsgStroke()
+{
+ this.DOTTED = -1;
+}
+var Stroke = new jsgStroke();
+
+
+
+
+
+function jsGraphics(id, wnd)
+{
+ this.setColor = new Function('arg', 'this.color = arg;');
+
+
+ this.getColor = new Function('return this.color');
+
+ this.setStroke = function(x)
+ {
+ this.stroke = x;
+ if (!(x+1))
+ {
+ this.drawLine = mkLinDott;
+ this.mkOv = mkOvDott;
+ this.drawRect = mkRectDott;
+ }
+ else if (x-1 > 0)
+ {
+ this.drawLine = mkLin2D;
+ this.mkOv = mkOv2D;
+ this.drawRect = mkRect;
+ }
+ else
+ {
+ this.drawLine = mkLin;
+ this.mkOv = mkOv;
+ this.drawRect = mkRect;
+ }
+ };
+
+
+
+ this.setPrintable = function(arg)
+ {
+ this.printable = arg;
+ this.mkDiv = jg_n4? mkLyr : arg? mkDivPrint : mkDiv;
+ };
+
+
+
+ this.setFont = function(fam, sz, sty)
+ {
+ this.ftFam = fam;
+ this.ftSz = sz;
+ this.ftSty = sty || Font.PLAIN;
+ };
+
+
+
+ this.drawPolyline = this.drawPolyLine = function(x, y, s)
+ {
+ var i = x.length-1; while (i >= 0)
+ this.drawLine(x[i], y[i], x[--i], y[i]);
+ };
+
+
+
+ this.fillRect = function(x, y, w, h)
+ {
+ this.mkDiv(x, y, w, h);
+ };
+
+
+ this.fillRectPattern = function(x, y, w, h, url)
+ {
+ this.htm += '<div style="position:absolute;'+
+ 'left:' + x + 'px;'+
+ 'top:' + y + 'px;'+
+ 'width:' + w + 'px;'+
+ 'height:' + h + 'px;'+
+ 'clip:rect(0,'+w+'px,'+h+'px,0);'+
+ 'overflow:hidden;'+
+ //'background-color:' + this.color + ';'+
+ "background-image: url('" + url + "');"+
+ "layer-background-image: url('" + url + "');"+
+ 'z-index:100;"><\/div>';
+ //alert(this.htm);
+ }
+
+ this.drawHandle = function(x, y, w, h, cursor)
+ {
+
+ this.htm += '<div style="position:absolute;'+
+ 'left:' + x + 'px;'+
+ 'top:' + y + 'px;'+
+ 'width:' + w + 'px;'+
+ 'height:' + h + 'px;'+
+ 'clip:rect(0,'+w+'px,'+h+'px,0);'+
+ 'padding: 2px;overflow:hidden;'+
+ "cursor: '" + cursor + "';"+
+ '" class="handleBox" id="' + cursor + '" ><\/div>';
+ }
+
+ this.drawHandleBox = function(x, y, w, h, cursor)
+ {
+
+ this.htm += '<div style="position:absolute;'+
+ 'left:' + x + 'px;'+
+ 'top:' + y + 'px;'+
+ 'width:' + w + 'px;'+
+ 'height:' + h + 'px;'+
+ 'clip:rect(0,'+(w+2)+'px,'+(h+2)+'px,0);'+
+ 'overflow:hidden; border: solid 1px '+ this.color+';'+
+ "cursor: '" + cursor + "';"+
+ '" class="handleBox" id="' + cursor + '" ><\/div>';
+
+
+ }
+
+ this.drawPolygon = function(x, y)
+ {
+ this.drawPolyline(x, y);
+ this.drawLine(x[x.length-1], y[x.length-1], x[0], y[0]);
+ };
+
+
+
+ this.drawEllipse = this.drawOval = function(x, y, w, h)
+ {
+ this.mkOv(x, y, w, h);
+ };
+
+
+
+ this.fillEllipse = this.fillOval = function(left, top, w, h)
+ {
+ var a = (w -= 1)>>1, b = (h -= 1)>>1,
+ wod = (w&1)+1, hod = (h&1)+1,
+ cx = left+a, cy = top+b,
+ x = 0, y = b,
+ ox = 0, oy = b,
+ aa2 = (a*a)<<1, aa4 = aa2<<1, bb = (b*b)<<1,
+ st = (aa2>>1)*(1-(b<<1)) + bb,
+ tt = (bb>>1) - aa2*((b<<1)-1),
+ pxl, dw, dh;
+ if (w+1) while (y > 0)
+ {
+ if (st < 0)
+ {
+ st += bb*((x<<1)+0x3);
+ tt += (bb<<1)*(++x);
+ }
+ else if (tt < 0)
+ {
+ st += bb*((x<<1)+0x3) - aa4*(y-1);
+ pxl = cx-x;
+ dw = (x<<1)+wod;
+ tt += (bb<<1)*(++x) - aa2*(((y--)<<1)-0x3);
+ dh = oy-y;
+ this.mkDiv(pxl, cy-oy, dw, dh);
+ this.mkDiv(pxl, cy+oy-dh+hod, dw, dh);
+ ox = x;
+ oy = y;
+ }
+ else
+ {
+ tt -= aa2*((y<<1)-0x3);
+ st -= aa4*(--y);
+ }
+ }
+ this.mkDiv(cx-a, cy-oy, w+1, (oy<<1)+hod);
+ };
+
+
+
+ this.drawString = mkLbl;
+
+
+
+ this.clear = function()
+ {
+ this.htm = "";
+ if (this.cnv) this.cnv.innerHTML = this.defhtm;
+
+ };
+
+
+
+ this.mkOvQds = function(cx, cy, xl, xr, yt, yb, w, h)
+ {
+ this.mkDiv(xr+cx, yt+cy, w, h);
+ this.mkDiv(xr+cx, yb+cy, w, h);
+ this.mkDiv(xl+cx, yb+cy, w, h);
+ this.mkDiv(xl+cx, yt+cy, w, h);
+ };
+
+
+ this.setStroke(1);
+ this.setPrintable(false);
+ this.setFont('verdana,geneva,helvetica,sans-serif', String.fromCharCode(0x31, 0x32, 0x70, 0x78), Font.PLAIN);
+ this.color = '#000000';
+ this.htm = '';
+ this.wnd = wnd || window;
+
+
+ if (!(jg_ie || jg_dom || jg_ihtm)) chkDHTM();
+ if (typeof id != 'string' || !id) this.paint = pntDoc;
+ else
+ {
+ this.cnv = document.all? (this.wnd.document.all[id] || null)
+ : document.getElementById? (this.wnd.document.getElementById(id) || null)
+ : null;
+ this.defhtm = (this.cnv && this.cnv.innerHTML)? this.cnv.innerHTML : '';
+ this.paint = jg_dom? pntCnvDom : jg_ie? pntCnvIe : jg_ihtm? pntCnvIhtm : pntCnv;
+ }
+}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/class_upload.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/class_upload.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/class_upload.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,230 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: class_upload.asp
+ * These are the classes used to handle ASP upload without using third
+ * part components (OCX/DLL).
+ *
+ * File Authors:
+ * NetRube (netrube at 126.com)
+-->
+<%
+'**********************************************
+' File: NetRube_Upload.asp
+' Version: NetRube Upload Class Version 2.1 Build 20050228
+' Author: NetRube
+' Email: NetRube at 126.com
+' Date: 02/28/2005
+' Comments: The code for the Upload.
+' This can free usage, but please
+' not to delete this copyright information.
+' If you have a modification version,
+' Please send out a duplicate to me.
+'**********************************************
+' æ件å: NetRube_Upload.asp
+' çæ¬: NetRube Upload Class Version 2.1 Build 20050228
+' ä½è
: NetRube(ç½ç»ä¹¡å·´ä½¬)
+' çµåé®ä»¶: NetRube at 126.com
+' æ¥æ: 2005å¹´02æ28æ¥
+' 声æ: æ件ä¸ä¼ ç±»
+' æ¬ä¸ä¼ ç±»å¯ä»¥èªç±ä½¿ç¨ï¼ä½è¯·ä¿çæ¤çæ声æä¿¡æ¯
+' å¦ææ¨å¯¹æ¬ä¸ä¼ ç±»è¿è¡ä¿®æ¹å¢å¼ºï¼
+' 请åéä¸ä»½ç»ä¿ºã
+'**********************************************
+
+Class NetRube_Upload
+
+ Public File, Form
+ Private oSourceData
+ Private nMaxSize, nErr, sAllowed, sDenied
+
+ Private Sub Class_Initialize
+ nErr = 0
+ nMaxSize = 1048576
+
+ Set File = Server.CreateObject("Scripting.Dictionary")
+ File.CompareMode = 1
+ Set Form = Server.CreateObject("Scripting.Dictionary")
+ Form.CompareMode = 1
+
+ Set oSourceData = Server.CreateObject("ADODB.Stream")
+ oSourceData.Type = 1
+ oSourceData.Mode = 3
+ oSourceData.Open
+ End Sub
+
+ Private Sub Class_Terminate
+ Form.RemoveAll
+ Set Form = Nothing
+ File.RemoveAll
+ Set File = Nothing
+
+ oSourceData.Close
+ Set oSourceData = Nothing
+ End Sub
+
+ Public Property Get Version
+ Version = "NetRube Upload Class Version 1.0 Build 20041218"
+ End Property
+
+ Public Property Get ErrNum
+ ErrNum = nErr
+ End Property
+
+ Public Property Let MaxSize(nSize)
+ nMaxSize = nSize
+ End Property
+
+ Public Property Let Allowed(sExt)
+ sAllowed = sExt
+ End Property
+
+ Public Property Let Denied(sExt)
+ sDenied = sExt
+ End Property
+
+ Public Sub GetData
+ Dim aCType
+ aCType = Split(Request.ServerVariables("HTTP_CONTENT_TYPE"), ";")
+ If aCType(0) <> "multipart/form-data" Then
+ nErr = 1
+ Exit Sub
+ End If
+
+ Dim nTotalSize
+ nTotalSize = Request.TotalBytes
+ If nTotalSize < 1 Then
+ nErr = 2
+ Exit Sub
+ End If
+ If nMaxSize > 0 And nTotalSize > nMaxSize Then
+ nErr = 3
+ Exit Sub
+ End If
+
+ oSourceData.Write Request.BinaryRead(nTotalSize)
+ oSourceData.Position = 0
+
+ Dim oTotalData, oFormStream, sFormHeader, sFormName, bCrLf, nBoundLen, nFormStart, nFormEnd, nPosStart, nPosEnd, sBoundary
+
+ oTotalData = oSourceData.Read
+ bCrLf = ChrB(13) & ChrB(10)
+ sBoundary = MidB(oTotalData, 1, InStrB(1, oTotalData, bCrLf) - 1)
+ nBoundLen = LenB(sBoundary) + 2
+ nFormStart = nBoundLen
+
+ Set oFormStream = Server.CreateObject("ADODB.Stream")
+
+ Do While (nFormStart + 2) < nTotalSize
+ nFormEnd = InStrB(nFormStart, oTotalData, bCrLf & bCrLf) + 3
+
+ With oFormStream
+ .Type = 1
+ .Mode = 3
+ .Open
+ oSourceData.Position = nFormStart
+ oSourceData.CopyTo oFormStream, nFormEnd - nFormStart
+ .Position = 0
+ .Type = 2
+ .CharSet = "UTF-8"
+ sFormHeader = .ReadText
+ .Close
+ End With
+
+ nFormStart = InStrB(nFormEnd, oTotalData, sBoundary) - 1
+ nPosStart = InStr(22, sFormHeader, " name=", 1) + 7
+ nPosEnd = InStr(nPosStart, sFormHeader, """")
+ sFormName = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
+
+ If InStr(45, sFormHeader, " filename=", 1) > 0 Then
+ Set File(sFormName) = New NetRube_FileInfo
+ File(sFormName).FormName = sFormName
+ File(sFormName).Start = nFormEnd
+ File(sFormName).Size = nFormStart - nFormEnd - 2
+ nPosStart = InStr(nPosEnd, sFormHeader, " filename=", 1) + 11
+ nPosEnd = InStr(nPosStart, sFormHeader, """")
+ File(sFormName).ClientPath = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
+ File(sFormName).Name = Mid(File(sFormName).ClientPath, InStrRev(File(sFormName).ClientPath, "\") + 1)
+ File(sFormName).Ext = LCase(Mid(File(sFormName).Name, InStrRev(File(sFormName).Name, ".") + 1))
+ nPosStart = InStr(nPosEnd, sFormHeader, "Content-Type: ", 1) + 14
+ nPosEnd = InStr(nPosStart, sFormHeader, vbCr)
+ File(sFormName).MIME = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
+ Else
+ With oFormStream
+ .Type = 1
+ .Mode = 3
+ .Open
+ oSourceData.Position = nPosEnd
+ oSourceData.CopyTo oFormStream, nFormStart - nFormEnd - 2
+ .Position = 0
+ .Type = 2
+ .CharSet = "UTF-8"
+ Form(sFormName) = .ReadText
+ .Close
+ End With
+ End If
+
+ nFormStart = nFormStart + nBoundLen
+ Loop
+
+ oTotalData = ""
+ Set oFormStream = Nothing
+ End Sub
+
+ Public Sub SaveAs(sItem, sFileName)
+ If File(sItem).Size < 1 Then
+ nErr = 2
+ Exit Sub
+ End If
+
+ If Not IsAllowed(File(sItem).Ext) Then
+ nErr = 4
+ Exit Sub
+ End If
+
+ Dim oFileStream
+ Set oFileStream = Server.CreateObject("ADODB.Stream")
+ With oFileStream
+ .Type = 1
+ .Mode = 3
+ .Open
+ oSourceData.Position = File(sItem).Start
+ oSourceData.CopyTo oFileStream, File(sItem).Size
+ .Position = 0
+ .SaveToFile sFileName, 2
+ .Close
+ End With
+ Set oFileStream = Nothing
+ End Sub
+
+ Private Function IsAllowed(sExt)
+ Dim oRE
+ Set oRE = New RegExp
+ oRE.IgnoreCase = True
+ oRE.Global = True
+
+ If sDenied = "" Then
+ oRE.Pattern = sAllowed
+ IsAllowed = (sAllowed = "") Or oRE.Test(sExt)
+ Else
+ oRE.Pattern = sDenied
+ IsAllowed = Not oRE.Test(sExt)
+ End If
+
+ Set oRE = Nothing
+ End Function
+End Class
+
+Class NetRube_FileInfo
+ Dim FormName, ClientPath, Path, Name, Ext, Content, Size, MIME, Start
+End Class
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/config.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/config.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/config.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,43 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: config.asp
+ * Configuration file for the File Manager Connector for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+
+' SECURITY: You must explicitelly enable this "uploader" (set it to "True").
+Dim ConfigIsEnabled
+ConfigIsEnabled = False
+
+' Path to user files relative to the document root.
+Dim ConfigUserFilesPath
+ConfigUserFilesPath = "/UserFiles/"
+
+' Allowed and Denied extensions configurations.
+Dim ConfigAllowedExtensions, ConfigDeniedExtensions
+Set ConfigAllowedExtensions = CreateObject( "Scripting.Dictionary" )
+Set ConfigDeniedExtensions = CreateObject( "Scripting.Dictionary" )
+
+ConfigAllowedExtensions.Add "File", ""
+ConfigDeniedExtensions.Add "File", "php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi"
+
+ConfigAllowedExtensions.Add "Image", "jpg|gif|jpeg|png|bmp"
+ConfigDeniedExtensions.Add "Image", ""
+
+ConfigAllowedExtensions.Add "Flash", "swf|fla"
+ConfigDeniedExtensions.Add "Flash", ""
+
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/io.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/io.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/io.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,25 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: io.asp
+ * This file include IO specific functions used by the ASP Uploader.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+
+Function RemoveExtension( fileName )
+ RemoveExtension = Left( fileName, InStrRev( fileName, "." ) - 1 )
+End Function
+
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/upload.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/upload.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/asp/upload.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,108 @@
+<%@ CodePage=65001 Language="VBScript"%>
+<%
+Option Explicit
+%>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: upload.asp
+ * This is the "File Uploader" for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<!--#include file="config.asp"-->
+<!--#include file="io.asp"-->
+<!--#include file="class_upload.asp"-->
+<%
+
+' This is the function that sends the results of the uploading process.
+Function SendResults( errorNumber, fileUrl, fileName, customMsg )
+ Response.Write "<script type=""text/javascript"">"
+ Response.Write "window.parent.OnUploadCompleted(" & errorNumber & ",""" & Replace( fileUrl, """", "\""" ) & """,""" & Replace( fileName, """", "\""" ) & """,""" & Replace( customMsg , """", "\""" ) & """) ;"
+ Response.Write "</script>"
+ Response.End
+End Function
+
+%>
+<%
+
+' Check if this uploader has been enabled.
+If ( ConfigIsEnabled = False ) Then
+ SendResults "1", "", "", "This file uploader is disabled. Please check the ""editor/filemanager/upload/asp/config.asp"" file"
+End If
+
+' The the file type (from the QueryString, by default 'File').
+Dim resourceType
+If ( Request.QueryString("Type") <> "" ) Then
+ resourceType = Request.QueryString("Type")
+Else
+ resourceType = "File"
+End If
+
+' Create the Uploader object.
+Dim oUploader
+Set oUploader = New NetRube_Upload
+oUploader.MaxSize = 0
+oUploader.Allowed = ConfigAllowedExtensions.Item( resourceType )
+oUploader.Denied = ConfigDeniedExtensions.Item( resourceType )
+oUploader.GetData
+
+If oUploader.ErrNum > 1 Then
+ SendResults "202", "", "", ""
+Else
+ Dim sFileName, sFileUrl, sErrorNumber, sOriginalFileName, sExtension
+ sFileName = ""
+ sFileUrl = ""
+ sErrorNumber = "0"
+
+ ' Map the virtual path to the local server path.
+ Dim sServerDir
+ sServerDir = Server.MapPath( ConfigUserFilesPath )
+ If ( Right( sServerDir, 1 ) <> "\" ) Then
+ sServerDir = sServerDir & "\"
+ End If
+
+ Dim oFSO
+ Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
+
+ ' Get the uploaded file name.
+ sFileName = oUploader.File( "NewFile" ).Name
+ sExtension = oUploader.File( "NewFile" ).Ext
+ sOriginalFileName = sFileName
+
+ Dim iCounter
+ iCounter = 0
+
+ Do While ( True )
+ Dim sFilePath
+ sFilePath = sServerDir & sFileName
+
+ If ( oFSO.FileExists( sFilePath ) ) Then
+ iCounter = iCounter + 1
+ sFileName = RemoveExtension( sOriginalFileName ) & "(" & iCounter & ")." & sExtension
+ sErrorNumber = "201"
+ Else
+ oUploader.SaveAs "NewFile", sFilePath
+ If oUploader.ErrNum > 0 Then SendResults "202", "", "", ""
+ Exit Do
+ End If
+ Loop
+ Response.Write( sFilePath )
+ sFileUrl = ConfigUserFilesPath & sFileName
+
+ SendResults sErrorNumber, sFileUrl, sFileName, ""
+
+End If
+
+Set oUploader = Nothing
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/aspx/upload.aspx
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/aspx/upload.aspx 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/aspx/upload.aspx 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,26 @@
+<%@ Page language="c#" Inherits="FredCK.FCKeditorV2.Uploader" AutoEventWireup="false" %>
+<%--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: upload.aspx
+ * This is the Uploader for ASP.NET.
+ *
+ * The code of this page if included in the FCKeditor.Net package,
+ * in the FredCK.FCKeditorV2.dll assemblyfile. So to use it you must
+ * include that DLL in your "bin" directory.
+ *
+ * To download the FCKeditor.Net package, go to our official web site:
+ * http://www.fckeditor.net
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+--%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/config.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/config.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/config.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,53 @@
+[//lasso
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: config.php
+ * Configuration file for the Lasso File Uploader.
+ *
+ * File Authors:
+ * Jason Huck (jason.huck at corefive.com)
+ */
+
+ /*.....................................................................
+ The connector uses the file tags, which require authentication. Enter a
+ valid username and password from Lasso admin for a group with file tags
+ permissions for uploads and the path you define in UserFilesPath below.
+ */
+
+ var('connection') = array(
+ -username='xxxxxxxx',
+ -password='xxxxxxxx'
+ );
+
+
+ /*.....................................................................
+ Set the base path for files that users can upload and browse (relative
+ to server root).
+
+ Set which file extensions are allowed and/or denied for each file type.
+ */
+ var('config') = map(
+ 'Enabled' = false,
+ 'UserFilesPath' = '/UserFiles/',
+ 'AllowedExtensions' = map(
+ 'File' = array(),
+ 'Image' = array('jpg','gif','jpeg','png'),
+ 'Flash' = array('swf','fla'),
+ 'Media' = array('swf','fla','jpg','gif','jpeg','png','avi','mpg','mpeg')
+ ),
+ 'DeniedExtensions' = map(
+ 'File' = array('php','asp','aspx','ascx','jsp','cfm','cfc','pl','bat','exe','dll','reg','inc','lasso','cgi','lasso','lassoapp'),
+ 'Image' = array(),
+ 'Flash' = array(),
+ 'Media' = array()
+ )
+ );
+]
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/upload.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/upload.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/lasso/upload.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,152 @@
+[//lasso
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: upload.php
+ * This is the "File Uploader" for Lasso.
+ *
+ * File Authors:
+ * Jason Huck (jason.huck at corefive.com)
+ */
+
+
+ /*.....................................................................
+ Include global configuration. See config.lasso for details.
+ */
+ include('config.lasso');
+
+
+ /*.....................................................................
+ Convert query string parameters to variables and initialize output.
+ */
+ var(
+ 'Type' = action_param('Type'),
+ 'CurrentFolder' = action_param('CurrentFolder'),
+ 'ServerPath' = action_param('ServerPath'),
+ 'NewFile' = null,
+ 'NewFileName' = string,
+ 'OrigFilePath' = string,
+ 'NewFilePath' = string,
+ 'errorNumber' = 0,
+ 'customMsg' = ''
+ );
+
+ $Type == '' ? $Type = 'File';
+
+
+ /*.....................................................................
+ Calculate the path to the current folder.
+ */
+ $ServerPath == '' ? $ServerPath = $config->find('UserFilesPath');
+
+ var('currentFolderURL' = $ServerPath
+ + action_param('Type')
+ + action_param('CurrentFolder')
+ );
+
+
+ /*.....................................................................
+ Custom tag sets the HTML response.
+ */
+
+ define_tag(
+ 'sendresults',
+ -namespace='fck_',
+ -priority='replace',
+ -required='errorNumber',
+ -type='integer',
+ -optional='fileUrl',
+ -type='string',
+ -optional='fileName',
+ -type='string',
+ -optional='customMsg',
+ -type='string',
+ -description='Sets the HTML response for the FCKEditor Quick Upload feature.'
+ );
+ $__html_reply__ = '\
+<script type="text/javascript">
+ window.parent.OnUploadCompleted(' + #errorNumber + ',"'
+ + string_replace(#fileUrl, -find='"', -replace='\\"') + '","'
+ + string_replace(#fileName, -find='"', -replace='\\"') + '","'
+ + string_replace(#customMsg, -find='"', -replace='\\"') + '");
+</script>
+ ';
+ /define_tag;
+
+
+ if($config->find('Enabled'));
+ /*.................................................................
+ Process an uploaded file.
+ */
+ inline($connection);
+ /*.............................................................
+ Was a file actually uploaded?
+ */
+ file_uploads->size ? $NewFile = file_uploads->get(1) | $errorNumber = 202;
+
+ if($errorNumber == 0);
+ /*.........................................................
+ Split the file's extension from the filename in order
+ to follow the API's naming convention for duplicate
+ files. (Test.txt, Test(1).txt, Test(2).txt, etc.)
+ */
+ $NewFileName = $NewFile->find('OrigName');
+ $OrigFilePath = $currentFolderURL + $NewFileName;
+ $NewFilePath = $OrigFilePath;
+ local('fileExtension') = '.' + $NewFile->find('OrigExtension');
+ local('shortFileName') = $NewFileName->removetrailing(#fileExtension)&;
+
+
+ /*.........................................................
+ Make sure the file extension is allowed.
+ */
+
+ if($config->find('DeniedExtensions')->find($Type) >> $NewFile->find('OrigExtension'));
+ $errorNumber = 202;
+ else;
+ /*.....................................................
+ Rename the target path until it is unique.
+ */
+ while(file_exists($NewFilePath));
+ $NewFileName = #shortFileName + '(' + loop_count + ')' + #fileExtension;
+ $NewFilePath = $currentFolderURL + $NewFileName;
+ /while;
+
+
+ /*.....................................................
+ Copy the uploaded file to its final location.
+ */
+ file_copy($NewFile->find('path'), $NewFilePath);
+
+
+ /*.....................................................
+ Set the error code for the response.
+ */
+ select(file_currenterror( -errorcode));
+ case(0);
+ $OrigFilePath != $NewFilePath ? $errorNumber = 201;
+ case;
+ $errorNumber = 202;
+ /select;
+ /if;
+ /if;
+ /inline;
+ else;
+ $errorNumber = 1;
+ $customMsg = 'This file uploader is disabled. Please check the "editor/filemanager/upload/lasso/config.lasso" file.';
+ /if;
+
+ fck_sendresults(
+ -errorNumber=$errorNumber,
+ -fileUrl=$NewFilePath,
+ -fileName=$NewFileName,
+ -customMsg=$customMsg
+ );
+]
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/config.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/config.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/config.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,38 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: config.php
+ * Configuration file for the PHP File Uploader.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+global $Config ;
+
+// SECURITY: You must explicitelly enable this "uploader".
+$Config['Enabled'] = false ;
+
+// Path to uploaded files relative to the document root.
+$Config['UserFilesPath'] = '/UserFiles/' ;
+
+$Config['AllowedExtensions']['File'] = array() ;
+$Config['DeniedExtensions']['File'] = array('php','php3','php5','phtml','asp','aspx','ascx','jsp','cfm','cfc','pl','bat','exe','dll','reg','cgi') ;
+
+$Config['AllowedExtensions']['Image'] = array('jpg','gif','jpeg','png') ;
+$Config['DeniedExtensions']['Image'] = array() ;
+
+$Config['AllowedExtensions']['Flash'] = array('swf','fla') ;
+$Config['DeniedExtensions']['Flash'] = array() ;
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/upload.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/upload.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/upload.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,100 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: upload.php
+ * This is the "File Uploader" for PHP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+require('config.php') ;
+require('util.php') ;
+
+// This is the function that sends the results of the uploading process.
+function SendResults( $errorNumber, $fileUrl = '', $fileName = '', $customMsg = '' )
+{
+ echo '<script type="text/javascript">' ;
+ echo 'window.parent.OnUploadCompleted(' . $errorNumber . ',"' . str_replace( '"', '\\"', $fileUrl ) . '","' . str_replace( '"', '\\"', $fileName ) . '", "' . str_replace( '"', '\\"', $customMsg ) . '") ;' ;
+ echo '</script>' ;
+ exit ;
+}
+
+// Check if this uploader has been enabled.
+if ( !$Config['Enabled'] )
+ SendResults( '1', '', '', 'This file uploader is disabled. Please check the "editor/filemanager/upload/php/config.php" file' ) ;
+
+// Check if the file has been correctly uploaded.
+if ( !isset( $_FILES['NewFile'] ) || is_null( $_FILES['NewFile']['tmp_name'] ) || $_FILES['NewFile']['name'] == '' )
+ SendResults( '202' ) ;
+
+// Get the posted file.
+$oFile = $_FILES['NewFile'] ;
+
+// Get the uploaded file name and extension.
+$sFileName = $oFile['name'] ;
+$sOriginalFileName = $sFileName ;
+$sExtension = substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) ;
+$sExtension = strtolower( $sExtension ) ;
+
+// The the file type (from the QueryString, by default 'File').
+$sType = isset( $_GET['Type'] ) ? $_GET['Type'] : 'File' ;
+
+// Get the allowed and denied extensions arrays.
+$arAllowed = $Config['AllowedExtensions'][$sType] ;
+$arDenied = $Config['DeniedExtensions'][$sType] ;
+
+// Check if it is an allowed extension.
+if ( ( count($arAllowed) > 0 && !in_array( $sExtension, $arAllowed ) ) || ( count($arDenied) > 0 && in_array( $sExtension, $arDenied ) ) )
+ SendResults( '202' ) ;
+
+$sErrorNumber = '0' ;
+$sFileUrl = '' ;
+
+// Initializes the counter used to rename the file, if another one with the same name already exists.
+$iCounter = 0 ;
+
+// The the target directory.
+$sServerDir = GetRootPath() . $Config["UserFilesPath"] ;
+
+while ( true )
+{
+ // Compose the file path.
+ $sFilePath = $sServerDir . $sFileName ;
+
+ // If a file with that name already exists.
+ if ( is_file( $sFilePath ) )
+ {
+ $iCounter++ ;
+ $sFileName = RemoveExtension( $sOriginalFileName ) . '(' . $iCounter . ').' . $sExtension ;
+ $sErrorNumber = '201' ;
+ }
+ else
+ {
+ move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ;
+
+ if ( is_file( $sFilePath ) )
+ {
+ $oldumask = umask(0) ;
+ chmod( $sFilePath, 0777 ) ;
+ umask( $oldumask ) ;
+ }
+
+ $sFileUrl = $Config["UserFilesPath"] . $sFileName ;
+
+ break ;
+ }
+}
+
+SendResults( $sErrorNumber, $sFileUrl, $sFileName ) ;
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/util.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/util.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/php/util.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,36 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: util.php
+ * This is the File Manager Connector for ASP.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+function RemoveExtension( $fileName )
+{
+ return substr( $fileName, 0, strrpos( $fileName, '.' ) ) ;
+}
+
+function GetRootPath()
+{
+ $sRealPath = realpath( './' ) ;
+
+ $sSelfPath = $_SERVER['PHP_SELF'] ;
+ $sSelfPath = substr( $sSelfPath, 0, strrpos( $sSelfPath, '/' ) ) ;
+
+ return substr( $sRealPath, 0, strlen( $sRealPath ) - strlen( $sSelfPath ) ) ;
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/test.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/test.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/filemanager/upload/test.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,127 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: test.html
+ * Test page for the "File Uploaders".
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>FCKeditor - Uploaders Tests</title>
+ <script language="javascript">
+
+function SendFile()
+{
+ var sUploaderUrl = cmbUploaderUrl.value ;
+
+ if ( sUploaderUrl.length == 0 )
+ sUploaderUrl = txtCustomUrl.value ;
+
+ if ( sUploaderUrl.length == 0 )
+ {
+ alert( 'Please provide your custom URL or select a default one' ) ;
+ return ;
+ }
+
+ eURL.innerHTML = sUploaderUrl ;
+ txtUrl.value = '' ;
+
+ frmUpload.action = sUploaderUrl ;
+ frmUpload.submit() ;
+}
+
+function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
+{
+ switch ( errorNumber )
+ {
+ case 0 : // No errors
+ txtUrl.value = fileUrl ;
+ alert( 'File uploaded with no errors' ) ;
+ break ;
+ case 1 : // Custom error
+ alert( customMsg ) ;
+ break ;
+ case 10 : // Custom warning
+ txtUrl.value = fileUrl ;
+ alert( customMsg ) ;
+ break ;
+ case 201 :
+ txtUrl.value = fileUrl ;
+ alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
+ break ;
+ case 202 :
+ alert( 'Invalid file' ) ;
+ break ;
+ case 203 :
+ alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
+ break ;
+ default :
+ alert( 'Error on file upload. Error number: ' + errorNumber ) ;
+ break ;
+ }
+}
+
+ </script>
+ </head>
+ <body>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0" height="100%">
+ <tr>
+ <td>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td nowrap>
+ Select the "File Uploader" to use:<br>
+ <select id="cmbUploaderUrl" name="Select1">
+ <option selected value="asp/upload.asp">ASP</option>
+ <option value="aspx/upload.aspx">ASP.Net</option>
+ <option value="php/upload.php">PHP</option>
+ <option value="">(Custom)</option>
+ </select>
+ </td>
+ <td nowrap> </td>
+ <td width="100%">
+ Custom Uploader URL:<BR>
+ <input id="txtCustomUrl" style="WIDTH: 100%; BACKGROUND-COLOR: #dcdcdc" disabled type="text">
+ </td>
+ </tr>
+ </table>
+ <br>
+ <table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td noWrap>
+ <form id="frmUpload" target="UploadWindow" enctype="multipart/form-data" action="" method="post">
+ Upload a new file:<br>
+ <input type="file" name="NewFile"><br>
+ <input type="button" value="Send it to the Server" onclick="SendFile();">
+ </form>
+ </td>
+ <td style="WIDTH: 16px"> </td>
+ <td vAlign="top" width="100%">
+ Uploaded File URL:<br>
+ <INPUT id="txtUrl" style="WIDTH: 100%" readonly type="text">
+ </td>
+ </tr>
+ </table>
+ <br>
+ Post URL: <span id="eURL"> </span>
+ </td>
+ </tr>
+ <tr>
+ <td height="100%">
+ <iframe name="UploadWindow" width="100%" height="100%" src="../../fckblank.html"></iframe>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/anchor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/anchor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/aiua.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/aiua.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/ak.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/ak.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/alien.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/alien.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/alien2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/alien2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/angry.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/angry.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/angry1.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/angry1.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/apophys.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/apophys.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/assjani.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/assjani.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/asthanos.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/asthanos.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bazuzeus.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bazuzeus.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/beaute.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/beaute.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bigsmile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bigsmile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/blush.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/blush.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/boid.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/boid.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bonk.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bonk.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bored.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/bored.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/borg.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/borg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/capo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/capo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/confused.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/confused.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/cool.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/cool.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/crazy.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/crazy.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/cwm14.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/cwm14.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/demis_roussos.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/demis_roussos.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/devil.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/devil.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/devil2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/devil2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/double0smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/double0smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/eek3.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/eek3.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/eltaf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/eltaf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/gele.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/gele.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/halm.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/halm.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/happy.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/happy.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon12.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon12.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon23.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon23.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon26.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon26.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_angel.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_angel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_bandit.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_bandit.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_bravo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_bravo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_clown.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/icon_clown.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/jesors.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/jesors.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/jesors1.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/jesors1.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/lol3.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/lol3.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/love.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/love.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/mad.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/mad.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/megaphone.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/megaphone.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/mmm.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/mmm.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/music.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/music.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/notify.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/notify.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/nuts.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/nuts.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/obanon.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/obanon.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/ouaip.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/ouaip.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/pleure.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/pleure.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/plugin.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/plugin.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/question.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/question.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/question2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/question2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rasta2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rasta2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rastapop.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rastapop.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rosebud.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/rosebud.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sad.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sad.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sad2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sad2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/shocked.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/shocked.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sick.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sick.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sick2.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sick2.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/slaap.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/slaap.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sleep.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sleep.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/smiley_peur.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/smiley_peur.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sors.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sors.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sovxx.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/sovxx.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/spamafote.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/spamafote.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tap67.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tap67.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/thumbdown.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/thumbdown.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/thumbup.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/thumbup.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tigi.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tigi.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/toad666.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/toad666.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tongue.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tongue.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tuffgong.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/tuffgong.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/urgeman.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/urgeman.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/vanadium.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/vanadium.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wink.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wink.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/worship.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/worship.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wouaf.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wouaf.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/wow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/xp1700.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/xp1700.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/yltype.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/yltype.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/yopyopyop.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/yopyopyop.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/youpi.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/youpi.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/zoor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/fun/zoor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/angel_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/angel_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/angry_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/angry_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/broken_heart.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/broken_heart.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/cake.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/cake.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/confused_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/confused_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/cry_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/cry_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/devil_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/devil_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/embaressed_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/embaressed_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/envelope.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/envelope.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/heart.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/heart.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/kiss.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/kiss.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/lightbulb.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/lightbulb.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/omg_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/omg_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/regular_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/regular_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/sad_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/sad_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/shades_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/shades_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/teeth_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/teeth_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/thumbs_down.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/thumbs_down.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/thumbs_up.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/thumbs_up.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/tounge_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/tounge_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/whatchutalkingabout_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/wink_smile.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/smiley/msn/wink_smile.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/images/spacer.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/images/spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/js/fck_startup.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/js/fck_startup.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/js/fck_startup.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,24 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * This file has been compacted for best loading performance.
+ */
+var NS;if (!(NS=window.parent.__FCKeditorNS)) NS=window.parent.__FCKeditorNS=new Object();
+Array.prototype.addItem=function(A){var i=this.length;this[i]=A;return i;};Array.prototype.indexOf=function(A){for (var i=0;i<this.length;i++){if (this[i]==A) return i;};return-1;};String.prototype.startsWith=function(A){return (this.substr(0,A.length)==A);};String.prototype.endsWith=function(A,B){var C=this.length;var D=A.length;if (D>C) return false;if (B){var E=new RegExp(A+'$','i');return E.test(this);}else return (D==0||this.substr(C-D,D)==A);};String.prototype.remove=function(A,B){var s='';if (A>0) s=this.substring(0,A);if (A+B<this.length) s+=this.substring(A+B,this.length);return s;};String.prototype.trim=function(){return this.replace(/(^\s*)|(\s*$)/g,'');};String.prototype.ltrim=function(){return this.replace(/^\s*/g,'');};String.prototype.rtrim=function(){return this.replace(/\s*$/g,'');};String.prototype.replaceNewLineChars=function(A){return this.replace(/\n/g,A);}
+var FCK_STATUS_NOTLOADED=window.parent.FCK_STATUS_NOTLOADED=0;var FCK_STATUS_ACTIVE=window.parent.FCK_STATUS_ACTIVE=1;var FCK_STATUS_COMPLETE=window.parent.FCK_STATUS_COMPLETE=2;var FCK_TRISTATE_OFF=window.parent.FCK_TRISTATE_OFF=0;var FCK_TRISTATE_ON=window.parent.FCK_TRISTATE_ON=1;var FCK_TRISTATE_DISABLED=window.parent.FCK_TRISTATE_DISABLED=-1;var FCK_UNKNOWN=window.parent.FCK_UNKNOWN=-1000;var FCK_TOOLBARITEM_ONLYICON=window.parent.FCK_TOOLBARITEM_ONLYICON=0;var FCK_TOOLBARITEM_ONLYTEXT=window.parent.FCK_TOOLBARITEM_ONLYTEXT=1;var FCK_TOOLBARITEM_ICONTEXT=window.parent.FCK_TOOLBARITEM_ICONTEXT=2;var FCK_EDITMODE_WYSIWYG=window.parent.FCK_EDITMODE_WYSIWYG=0;var FCK_EDITMODE_SOURCE=window.parent.FCK_EDITMODE_SOURCE=1;
+var FCKBrowserInfo;if (!(FCKBrowserInfo=NS.FCKBrowserInfo)){FCKBrowserInfo=NS.FCKBrowserInfo=new Object();var sAgent=navigator.userAgent.toLowerCase();FCKBrowserInfo.IsIE=(sAgent.indexOf("msie")!=-1);FCKBrowserInfo.IsGecko=!FCKBrowserInfo.IsIE;FCKBrowserInfo.IsSafari=(sAgent.indexOf("safari")!=-1);FCKBrowserInfo.IsNetscape=(sAgent.indexOf("netscape")!=-1);};
+var FCKScriptLoader=new Object();FCKScriptLoader.IsLoading=false;FCKScriptLoader.Queue=new Array();FCKScriptLoader.AddScript=function(A){FCKScriptLoader.Queue[FCKScriptLoader.Queue.length]=A;if (!this.IsLoading) this.CheckQueue();};FCKScriptLoader.CheckQueue=function(){if (this.Queue.length>0){this.IsLoading=true;var A=this.Queue[0];var B=new Array();for (i=1;i<this.Queue.length;i++) B[i-1]=this.Queue[i];this.Queue=B;this.LoadFile(A);}else{this.IsLoading=false;if (this.OnEmpty) this.OnEmpty();};};if (FCKBrowserInfo.IsSafari){FCKScriptLoader.LoadFile=function(A){if (A.lastIndexOf('.css')>0){this.CheckQueue();return;};var B=new XMLHttpRequest();B.open("GET",A,false);B.send(null);if (B.status==200){try{eval(B.responseText);}catch (e){alert('Error parsing '+A+': '+e.message);};}else alert('Error loading '+A);this.CheckQueue();};}else{FCKScriptLoader.LoadFile=function(A){var e;if (A.lastIndexOf('.css')>0){e=document.createElement('LINK');e.rel='stylesheet';e.type='text/css';}else{e=document.createElement("script");e.type="text/javascript";};document.getElementsByTagName("head")[0].appendChild(e);if (e.tagName=='LINK'){if (FCKBrowserInfo.IsIE) e.onload=FCKScriptLoader_OnLoad;else FCKScriptLoader.CheckQueue();e.href=A;}else{e.onload=e.onreadystatechange=FCKScriptLoader_OnLoad;e.src=A;};};function FCKScriptLoader_OnLoad(){if (this.tagName=='LINK'||!this.readyState||this.readyState=='loaded') FCKScriptLoader.CheckQueue();};}
+var FCKURLParams=new Object();var aParams=document.location.search.substr(1).split('&');for (var i=0;i<aParams.length;i++){var aParam=aParams[i].split('=');var sParamName=aParam[0];var sParamValue=aParam[1];FCKURLParams[sParamName]=sParamValue;}
+var FCK=new Object();FCK.Name=FCKURLParams['InstanceName'];FCK.Status=FCK_STATUS_NOTLOADED;FCK.EditMode=FCK_EDITMODE_WYSIWYG;var aElements=window.parent.document.getElementsByName(FCK.Name);aElements[aElements.length]=window.parent.document.getElementById(FCK.Name);var i=0;while ((FCK.LinkedField=aElements[i++])){if (FCK.LinkedField.tagName=='INPUT'||FCK.LinkedField.tagName=='TEXTAREA') break;};var FCKTempBin=new Object();FCKTempBin.Elements=new Array();FCKTempBin.AddElement=function(A){var B=FCKTempBin.Elements.length;FCKTempBin.Elements[B]=A;return B;};FCKTempBin.RemoveElement=function(A){var e=FCKTempBin.Elements[A];FCKTempBin.Elements[A]=null;return e;};FCKTempBin.Reset=function(){var i=0;while (i<FCKTempBin.Elements.length) FCKTempBin.Elements[i++]==null;FCKTempBin.Elements.length=0;}
+var FCKConfig=FCK.Config=new Object();if (document.location.protocol=='file:'){FCKConfig.BasePath=document.location.pathname.substr(1);FCKConfig.BasePath=FCKConfig.BasePath.replace(/\\/gi, '/');FCKConfig.BasePath='file://'+FCKConfig.BasePath.substring(0,FCKConfig.BasePath.lastIndexOf('/')+1);}else{FCKConfig.BasePath=document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/')+1);FCKConfig.FullBasePath=document.location.protocol+'//'+document.location.host+FCKConfig.BasePath;};FCKConfig.EditorPath=FCKConfig.BasePath.replace(/editor\/$/,'');try{FCKConfig.ScreenWidth=screen.width;FCKConfig.ScreenHeight=screen.height;}catch (e){FCKConfig.ScreenWidth=800;FCKConfig.ScreenHeight=600;};FCKConfig.ProcessHiddenField=function(){this.PageConfig=new Object();var A=window.parent.document.getElementById(FCK.Name+'___Config');if (!A) return;var B=A.value.split('&');for (var i=0;i<B.length;i++){if (B[i].length==0) continue;var C=B[i].split('=');var D=unescape(C[0]);var E=unescape(C[1]);if (D=='CustomConfigurationsPath') FCKConfig[D]=E;else if (E.toLowerCase()=="true") this.PageConfig[D]=true;else if (E.toLowerCase()=="false") this.PageConfig[D]=false;else if (!isNaN(E)) this.PageConfig[D]=parseInt(E);else this.PageConfig[D]=E;};};FCKConfig.LoadPageConfig=function(){for (var A in this.PageConfig) FCKConfig[A]=this.PageConfig[A];};FCKConfig.ToolbarSets=new Object();FCKConfig.Plugins=new Object();FCKConfig.Plugins.Items=new Array();FCKConfig.Plugins.Add=function(A,B,C){FCKConfig.Plugins.Items.addItem([A,B,C]);};FCKConfig.ProtectedSource=new Object();FCKConfig.ProtectedSource.RegexEntries=new Array();FCKConfig.ProtectedSource.Add=function(A){this.RegexEntries.addItem(A);};FCKConfig.ProtectedSource.Protect=function(A){function _Replace(protectedSource){var B=FCKTempBin.AddElement(protectedSource);return '<!--{PS..'+B+'}-->';};for (var i=0;i<this.RegexEntries.length;i++){A=A.replace(this.RegexEntries[i],_Replace);};return A;};FCKConfig.ProtectedSource.Revert=function(A,B){function _Replace(m,opener,index){var C=B?FCKTempBin.RemoveElement(index):FCKTempBin.Elements[index];return FCKConfig.ProtectedSource.Revert(C,B);};return A.replace(/(<|<)!--\{PS..(\d+)\}--(>|>)/g,_Replace);};FCKConfig.ProtectedSource.Add(/<!--[\s\S]*?-->/g);
+var FCKeditorAPI;function FCKeditorAPI_GetInstance(instanceName){return this.__Instances[instanceName];};if (!window.parent.FCKeditorAPI){FCKeditorAPI=window.parent.FCKeditorAPI=new Object();FCKeditorAPI.__Instances=new Object();FCKeditorAPI.Version='2.1.1';FCKeditorAPI.GetInstance=FCKeditorAPI_GetInstance;}else FCKeditorAPI=window.parent.FCKeditorAPI;FCKeditorAPI.__Instances[FCK.Name]=FCK;
+function Window_OnContextMenu(e){if (e) e.preventDefault();else{if (event.srcElement==document.getElementById('eSourceField')) return true;};return false;};window.document.oncontextmenu=Window_OnContextMenu;if (FCKBrowserInfo.IsGecko){function Window_OnResize(){var oFrame=document.getElementById('eEditorArea');oFrame.height=0;var oCell=document.getElementById(FCK.EditMode==FCK_EDITMODE_WYSIWYG?'eWysiwygCell':'eSource');var iHeight=oCell.offsetHeight;oFrame.height=iHeight-2;};window.onresize=Window_OnResize;};if (FCKBrowserInfo.IsIE){var aCleanupDocs=new Array();aCleanupDocs[0]=document;function Window_OnBeforeUnload(){var d,e;var j=0;while ((d=aCleanupDocs[j++])){var i=0;while ((e=d.getElementsByTagName("DIV").item(i++))){if (e.FCKToolbarButton) e.FCKToolbarButton=null;if (e.FCKSpecialCombo) e.FCKSpecialCombo=null;if (e.Command) e.Command=null;};i=0;while ((e=d.getElementsByTagName("TR").item(i++))){if (e.FCKContextMenuItem) e.FCKContextMenuItem=null;};aCleanupDocs[j]=null;};if (typeof(FCKTempBin)!='undefined') FCKTempBin.Reset();};window.attachEvent("onunload",Window_OnBeforeUnload);};function Window_OnLoad(){if (FCKBrowserInfo.IsNetscape) document.getElementById('eWysiwygCell').style.paddingRight='2px';LoadConfigFile();};window.onload=Window_OnLoad;function LoadConfigFile(){FCKScriptLoader.OnEmpty=ProcessHiddenField;FCKScriptLoader.AddScript('../fckconfig.js');};function ProcessHiddenField(){FCKConfig.ProcessHiddenField();LoadCustomConfigFile();};function LoadCustomConfigFile(){if (FCKConfig.CustomConfigurationsPath.length>0){FCKScriptLoader.OnEmpty=LoadPageConfig;FCKScriptLoader.AddScript(FCKConfig.CustomConfigurationsPath);}else{LoadPageConfig();};};function LoadPageConfig(){FCKConfig.LoadPageConfig();LoadStyles();};function LoadStyles(){FCKScriptLoader.OnEmpty=LoadScripts;FCKScriptLoader.AddScript(FCKConfig.SkinPath+'fck_editor.css');FCKScriptLoader.AddScript(FCKConfig.SkinPath+'fck_contextmenu.css');};function LoadScripts(){FCKScriptLoader.OnEmpty=null;if (FCKBrowserInfo.IsIE) FCKScriptLoader.AddScript('js/fckeditorcode_ie_1.js');else FCKScriptLoader.AddScript('js/fckeditorcode_gecko_1.js');};function LoadLanguageFile(){FCKScriptLoader.OnEmpty=LoadEditor;FCKScriptLoader.AddScript('lang/'+FCKLanguageManager.ActiveLanguage.Code+'.js');};function LoadEditor(){FCKScriptLoader.OnEmpty=null;if (FCKLang) window.document.dir=FCKLang.Dir;FCK.StartEditor();}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_1.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_1.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_1.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,27 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * This file has been compacted for best loading performance.
+ */
+var FCKDebug=new Object();if (FCKConfig.Debug){FCKDebug.Output=function(A,B){if (!FCKConfig.Debug) return;if (A!=null&&isNaN(A)) A=A.replace(/</g,"<");if (!this.DebugWindow||this.DebugWindow.closed) this.DebugWindow=window.open('fckdebug.html','FCKeditorDebug','menubar=no,scrollbars=no,resizable=yes,location=no,toolbar=no,width=600,height=500',true);if (this.DebugWindow.Output) this.DebugWindow.Output(A,B);};}else FCKDebug.Output=function() {};
+var FCKTools=new Object();FCKTools.GetLinkedFieldValue=function(){return FCK.LinkedField.value;};FCKTools.AttachToLinkedFieldFormSubmit=function(A){var B=FCK.LinkedField.form;if (!B) return;if (FCKBrowserInfo.IsIE) B.attachEvent("onsubmit",A);else B.addEventListener('submit',A,true);if (!B.updateFCKeditor) B.updateFCKeditor=new Array();B.updateFCKeditor[B.updateFCKeditor.length]=A;if (!B.originalSubmit&&(typeof(B.submit)=='function'||(!B.submit.tagName&&!B.submit.length))){B.originalSubmit=B.submit;B.submit=FCKTools_SubmitReplacer;};};function FCKTools_SubmitReplacer(){if (this.updateFCKeditor){for (var i=0;i<this.updateFCKeditor.length;i++) this.updateFCKeditor[i]();};this.originalSubmit();};FCKTools.AddSelectOption=function(A,B,C,D){var E=A.createElement("OPTION");E.text=C;E.value=D;B.options.add(E);return E;};FCKTools.RemoveAllSelectOptions=function(A){for (var i=A.options.length-1;i>=0;i--){A.options.remove(i);};};FCKTools.SelectNoCase=function(A,B,C){var D=B.toString().toLowerCase();for (var i=0;i<A.options.length;i++){if (D==A.options[i].value.toLowerCase()){A.selectedIndex=i;return;};};if (C!=null) FCKTools.SelectNoCase(A,C);};FCKTools.HTMLEncode=function(A){if (!A) return '';A=A.replace(/&/g,"&");A=A.replace(/"/g,""");A=A.replace(/</g,"<");A=A.replace(/>/g,">");A=A.replace(/'/g,"'");return A;};FCKTools.GetResultingArray=function(A,B){switch (typeof(A)){case "string":return A.split(B);case "function":return B();default:if (isArray(A)) return A;else return new Array();};};FCKTools.GetElementPosition=function(A){var c={ X:0,Y:0 };while (A){c.X+=A.offsetLeft;c.Y+=A.offsetTop;A=A.offsetParent;};return c;};FCKTools.GetElementAscensor=function(A,B){var e=A;var C=","+B.toUpperCase()+",";while (e){if (C.indexOf(","+e.nodeName.toUpperCase()+",")!=-1) return e;e=e.parentNode;};return null;};FCKTools.Pause=function(A){var B=new Date();while (true){var C=new Date();if (A<C-B) return;};};FCKTools.ConvertStyleSizeToHtml=function(A){return A.endsWith('%')?A:parseInt(A);};FCKTools.ConvertHtmlSizeToStyle=function(A){return A.endsWith('%')?A:(A+'px');};
+var GECKO_BOGUS='<br _moz_editor_bogus_node="TRUE">';FCKTools.AppendStyleSheet=function(A,B){var e=A.createElement('LINK');e.rel='stylesheet';e.type='text/css';e.href=B;A.getElementsByTagName("HEAD")[0].appendChild(e);return e;};FCKTools.ClearElementAttributes=function(A){for (var i=0;i<A.attributes.length;i++){A.removeAttribute(A.attributes[i].name,0);};};FCKTools.GetAllChildrenIds=function(A){var B=new Array();var C=function(parent){for (var i=0;i<parent.childNodes.length;i++){var D=parent.childNodes[i].id;if (D&&D.length>0) B[B.length]=D;C(parent.childNodes[i]);};};C(A);return B;};FCKTools.RemoveOuterTags=function(e){var A=e.ownerDocument.createDocumentFragment();for (var i=0;i<e.childNodes.length;i++) A.appendChild(e.childNodes[i]);e.parentNode.replaceChild(A,e);};FCKTools.CreateXmlObject=function(A){switch (A){case 'XmlHttp':return new XMLHttpRequest();case 'DOMDocument':return document.implementation.createDocument('','',null);};return null;};
+var FCKRegexLib=new Object();FCKRegexLib.AposEntity=/'/gi;FCKRegexLib.ObjectElements=/^(?:IMG|TABLE|TR|TD|INPUT|SELECT|TEXTAREA|HR|OBJECT)$/i;FCKRegexLib.BlockElements=/^(?:P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TD)$/i;FCKRegexLib.EmptyElements=/^(?:BASE|META|LINK|HR|BR|PARAM|IMG|AREA|INPUT)$/i;FCKRegexLib.NamedCommands=/^(?:Cut|Copy|Paste|Print|SelectAll|RemoveFormat|Unlink|Undo|Redo|Bold|Italic|Underline|StrikeThrough|Subscript|Superscript|JustifyLeft|JustifyCenter|JustifyRight|JustifyFull|Outdent|Indent|InsertOrderedList|InsertUnorderedList|InsertHorizontalRule)$/i;FCKRegexLib.BodyContents=/([\s\S]*\<body[^\>]*\>)([\s\S]*)(\<\/body\>[\s\S]*)/i;FCKRegexLib.ToReplace=/___fcktoreplace:([\w]+)/ig;FCKRegexLib.MetaHttpEquiv=/http-equiv\s*=\s*["']?([^"' ]+)/i;FCKRegexLib.HasBaseTag=/<base /i;FCKRegexLib.HeadOpener=/<head\s?[^>]*>/i;FCKRegexLib.HeadCloser=/<\/head\s*>/i;FCKRegexLib.TableBorderClass=/\s*FCK__ShowTableBorders\s*/;FCKRegexLib.ElementName=/^[A-Za-z_:][\w.-:]*$/;FCKRegexLib.ForceSimpleAmpersand=/___FCKAmp___/g;FCKRegexLib.SpaceNoClose=/\/>/g;FCKRegexLib.EmptyParagraph=/^<(p|div)>\s*<\/\1>$/i;FCKRegexLib.TagBody=/></;FCKRegexLib.StrongOpener=/<STRONG([ \>])/gi;FCKRegexLib.StrongCloser=/<\/STRONG>/gi;FCKRegexLib.EmOpener=/<EM([ \>])/gi;FCKRegexLib.EmCloser=/<\/EM>/gi;FCKRegexLib.GeckoEntitiesMarker=/#\?-\:/g;
+FCKLanguageManager.GetActiveLanguage=function(){if (FCKConfig.AutoDetectLanguage){var A;if (navigator.userLanguage) A=navigator.userLanguage.toLowerCase();else if (navigator.language) A=navigator.language.toLowerCase();else{return FCKConfig.DefaultLanguage;};if (A.length>=5){A=A.substr(0,5);if (this.AvailableLanguages[A]) return A;};if (A.length>=2){A=A.substr(0,2);if (this.AvailableLanguages[A]) return A;};};return this.DefaultLanguage;};FCKLanguageManager.TranslateElements=function(A,B,C){var e=A.getElementsByTagName(B);for (var i=0;i<e.length;i++){var D=e[i].getAttribute('fckLang');if (D){var s=FCKLang[D];if (s) eval('e[i].'+C+' = s');};};};FCKLanguageManager.TranslatePage=function(A){this.TranslateElements(A,'INPUT','value');this.TranslateElements(A,'SPAN','innerHTML');this.TranslateElements(A,'LABEL','innerHTML');this.TranslateElements(A,'OPTION','innerHTML');};if (FCKLanguageManager.AvailableLanguages[FCKConfig.DefaultLanguage]) FCKLanguageManager.DefaultLanguage=FCKConfig.DefaultLanguage;else FCKLanguageManager.DefaultLanguage='en';FCKLanguageManager.ActiveLanguage=new Object();FCKLanguageManager.ActiveLanguage.Code=FCKLanguageManager.GetActiveLanguage();FCKLanguageManager.ActiveLanguage.Name=FCKLanguageManager.AvailableLanguages[FCKLanguageManager.ActiveLanguage.Code];FCK.Language=FCKLanguageManager;LoadLanguageFile();
+var FCKEvents;if (!(FCKEvents=NS.FCKEvents)){FCKEvents=NS.FCKEvents=function(A){this.Owner=A;this.RegisteredEvents=new Object();};FCKEvents.prototype.AttachEvent=function(A,B){if (!this.RegisteredEvents[A]) this.RegisteredEvents[A]=new Array();this.RegisteredEvents[A][this.RegisteredEvents[A].length]=B;};FCKEvents.prototype.FireEvent=function(A,B){var C=true;var D=this.RegisteredEvents[A];if (D){for (var i=0;i<D.length;i++) C=(D[i](this.Owner,B)&&C);};return C;};}
+var FCKXHtmlEntities=new Object();if (FCKConfig.ProcessHTMLEntities){FCKXHtmlEntities.Entities={' ':'nbsp','¡':'iexcl','¢':'cent','£':'pound','¤':'curren','Â¥':'yen','¦':'brvbar','§':'sect','¨':'uml','©':'copy','ª':'ordf','«':'laquo','¬':'not','Â':'shy','®':'reg','¯':'macr','°':'deg','±':'plusmn','²':'sup2','³':'sup3','´':'acute','µ':'micro','¶':'para','·':'middot','¸':'cedil','¹':'sup1','º':'ordm','»':'raquo','¼':'frac14','½':'frac12','¾':'frac34','¿':'iquest','Ã':'times','÷':'divide','Æ':'fnof','â¢':'bull','â¦':'hellip','â²':'prime','â³':'Prime','â¾':'oline','â':'frasl','â':'weierp','â':'image','â':'real','â¢':'trade','âµ':'alefsym','â':'larr','â':'uarr','â':'rarr','â':'darr','â':'harr','âµ':'crarr','â':'lArr','â':'uArr','â':'rArr','â':'dArr','â':'hArr','â':'forall','â':'part','â':'exist','â
':'empty','â':'nabla','â':'isin','â':'notin','â':'ni','â':'prod','â':'sum','â':'minus','â':'lowast','â':'radic','â':'prop','â':'infin','â ':'ang','â§':'and','â¨':'or','â©':'cap','âª':'cup','â«':'int','â´':'there4','â¼':'sim','â
':'cong','â':'asymp','â ':'ne','â¡':'equiv','â¤':'le','â¥':'ge','â':'sub','â':'sup','â':'nsub','â':'sube','â':'supe','â':'oplus','â':'otimes','â¥':'perp','â
':'sdot','â':'loz','â ':'spades','â£':'clubs','â¥':'hearts','â¦':'diams','"':'quot','Ë':'circ','Ë':'tilde','â':'ensp','â':'emsp','â':'thinsp','â':'zwnj','â':'zwj','â':'lrm','â':'rlm','â':'ndash','â':'mdash','â':'lsquo','â':'rsquo','â':'sbquo','â':'ldquo','â':'rdquo','â':'bdquo','â ':'dagger','â¡':'Dagger','â°':'permil','â¹':'lsaquo','âº':'rsaquo','â¬':'euro'};FCKXHtmlEntities.Chars='';for (var e in FCKXHtmlEntities.Entities) FCKXHtmlEntities.Chars+=e;if (FCKConfig.IncludeLatinEntities){var oEntities={'Ã':'Agrave','Ã':'Aacute','Ã':'Acirc','Ã':'Atilde','Ã':'Auml','Ã
':'Aring','Ã':'AElig','Ã':'Ccedil','Ã':'Egrave','Ã':'Eacute','Ã':'Ecirc','Ã':'Euml','Ã':'Igrave','Ã':'Iacute','Ã':'Icirc','Ã':'Iuml','Ã':'ETH','Ã':'Ntilde','Ã':'Ograve','Ã':'Oacute','Ã':'Ocirc','Ã':'Otilde','Ã':'Ouml','Ã':'Oslash','Ã':'Ugrave','Ã':'Uacute','Ã':'Ucirc','Ã':'Uuml','Ã':'Yacute','Ã':'THORN','Ã':'szlig','à ':'agrave','á':'aacute','â':'acirc','ã':'atilde','ä':'auml','Ã¥':'aring','æ':'aelig','ç':'ccedil','è':'egrave','é':'eacute','ê':'ecirc','ë':'euml','ì':'igrave','Ã':'iacute','î':'icirc','ï':'iuml','ð':'eth','ñ':'ntilde','ò':'ograve','ó':'oacute','ô':'ocirc','õ':'otilde','ö':'ouml','ø':'oslash','ù':'ugrave','ú':'uacute','û':'ucirc','ü':'uuml','ý':'yacute','þ':'thorn','ÿ':'yuml','Å':'OElig','Å':'oelig','Å ':'Scaron','Å¡':'scaron','Ÿ':'Yuml'};for (var e in oEntities){FCKXHtmlEntities.Entities[e]=oEntities[e];FCKXHtmlEntities.Chars+=e;};oEntities=null;};if (FCKConfig.IncludeGreekEntities){var oEntities={'Î':'Alpha','Î':'Beta','Î':'Gamma','Î':'Delta','Î':'Epsilon','Î':'Zeta','Î':'Eta','Î':'Theta','Î':'Iota','Î':'Kappa','Î':'Lambda','Î':'Mu','Î':'Nu','Î':'Xi','Î':'Omicron','Î ':'Pi','Ρ':'Rho','Σ':'Sigma','Τ':'Tau','Î¥':'Upsilon','Φ':'Phi','Χ':'Chi','Ψ':'Psi','Ω':'Omega','α':'alpha','β':'beta','γ':'gamma','δ':'delta','ε':'epsilon','ζ':'zeta','η':'eta','θ':'theta','ι':'iota','κ':'kappa','λ':'lambda','μ':'mu','ν':'nu','ξ':'xi','ο':'omicron','Ï':'pi','Ï':'rho','Ï':'sigmaf','Ï':'sigma','Ï':'tau','Ï
':'upsilon','Ï':'phi','Ï':'chi','Ï':'psi','Ï':'omega'};for (var e in oEntities){FCKXHtmlEntities.Entities[e]=oEntities[e];FCKXHtmlEntities.Chars+=e;};oEntities=null;};FCKXHtmlEntities.EntitiesRegex=new RegExp('','');FCKXHtmlEntities.EntitiesRegex.compile('['+FCKXHtmlEntities.Chars+']|[^'+FCKXHtmlEntities.Chars+']+','g');}else{FCKXHtmlEntities.Entities={ 'Â ':'nbsp' };FCKXHtmlEntities.EntitiesRegex=/[Â ]|[^Â ]+/g;}
+var FCKXHtml=new Object();FCKXHtml.CurrentJobNum=0;FCKXHtml.GetXHTML=function(A,B,C){FCKXHtml.SpecialBlocks=new Array();this.XML=FCKTools.CreateXmlObject('DOMDocument');this.MainNode=this.XML.appendChild(this.XML.createElement('xhtml'));FCKXHtml.CurrentJobNum++;if (B) this._AppendNode(this.MainNode,A);else this._AppendChildNodes(this.MainNode,A,false);var D=this._GetMainXmlString();D=D.substr(7,D.length-15).trim();if (FCKBrowserInfo.IsGecko) D=D.replace(/<br\/>$/,'');D=D.replace(FCKRegexLib.SpaceNoClose,' />');if (FCKConfig.ForceSimpleAmpersand) D=D.replace(FCKRegexLib.ForceSimpleAmpersand,'&');if (C) D=FCKCodeFormatter.Format(D);for (var i=0;i<FCKXHtml.SpecialBlocks.length;i++){var E=new RegExp('___FCKsi___'+i);D=D.replace(E,FCKXHtml.SpecialBlocks[i]);};this.XML=null;return D};FCKXHtml._AppendAttribute=function(A,B,C){try{var D=this.XML.createAttribute(B);D.value=C?C:'';A.attributes.setNamedItem(D);}catch (e){};};FCKXHtml._AppendChildNodes=function(A,B,C){var D=0;if (B.hasChildNodes()){var E=B.childNodes;for (var i=0;i<E.length;i++){if (this._AppendNode(A,E[i])) D++;};};if (D==0){if (C&&FCKConfig.FillEmptyBlocks){this._AppendEntity(A,'nbsp');return;};if (!FCKRegexLib.EmptyElements.test(B.nodeName)) A.appendChild(this.XML.createTextNode(''));};};FCKXHtml._AppendNode=function(A,B){switch (B.nodeType){case 1:if (B.getAttribute('_fckfakelement')) return FCKXHtml._AppendNode(A,FCK.GetRealElement(B));if (FCKBrowserInfo.IsGecko&&B.hasAttribute('_moz_editor_bogus_node')) return false;if (B.getAttribute('_fckdelete')) return false;var C=B.nodeName;if (!FCKRegexLib.ElementName.test(C)) return false;C=C.toLowerCase();if (FCKBrowserInfo.IsGecko&&C=='br'&&B.hasAttribute('type')&&B.getAttribute('type',2)=='_moz') return false;if (B._fckxhtmljob&&B._fckxhtmljob==FCKXHtml.CurrentJobNum) return false;else B._fckxhtmljob=FCKXHtml.CurrentJobNum;var D=this._CreateNode(C);FCKXHtml._AppendAttributes(A,B,D,C);var E=FCKXHtml.TagProcessors[C];if (E){D=E(D,B);if (!D) break;}else this._AppendChildNodes(D,B,FCKRegexLib.BlockElements.test(C));A.appendChild(D);break;case 3:this._AppendTextNode(A,B.nodeValue.replaceNewLineChars(' '));break;case 8:try { A.appendChild(this.XML.createComment(B.nodeValue));}catch (e) { /* Do nothing... probably this is a wrong format comment. */};break;default:A.appendChild(this.XML.createComment("Element not supported - Type: "+B.nodeType+" Name: "+B.nodeName));break;};return true;};if (FCKConfig.ForceStrongEm){FCKXHtml._CreateNode=function(A){switch (A){case 'b':A='strong';break;case 'i':A='em';break;};return this.XML.createElement(A);};}else{FCKXHtml._CreateNode=function(A){return this.XML.createElement(A);};};FCKXHtml._AppendSpecialItem=function(A){return '___FCKsi___'+FCKXHtml.SpecialBlocks.addItem(A);};FCKXHtml._AppendTextNode=function(A,B){var C=B.match(FCKXHtmlEntities.EntitiesRegex);if (C){for (var i=0;i<C.length;i++){if (C[i].length==1){var D=FCKXHtmlEntities.Entities[C[i]];if (D!=null){this._AppendEntity(A,D);continue;};};A.appendChild(this.XML.createTextNode(C[i]));};};};FCKXHtml.TagProcessors=new Object();FCKXHtml.TagProcessors['img']=function(A){if (!A.attributes.getNamedItem('alt')) FCKXHtml._AppendAttribute(A,'alt','');return A;};FCKXHtml.TagProcessors['script']=function(A,B){if (!A.attributes.getNamedItem('type')) FCKXHtml._AppendAttribute(A,'type','text/javascript');A.appendChild(FCKXHtml.XML.createTextNode(FCKXHtml._AppendSpecialItem(B.text)));return A;};FCKXHtml.TagProcessors['style']=function(A,B){if (B.getAttribute('_fcktemp')) return null;if (!A.attributes.getNamedItem('type')) FCKXHtml._AppendAttribute(A,'type','text/css');A.appendChild(FCKXHtml.XML.createTextNode(FCKXHtml._AppendSpecialItem(B.innerHTML)));return A;};FCKXHtml.TagProcessors['title']=function(A,B){A.appendChild(FCKXHtml.XML.createTextNode(FCK.EditorDocument.title));return A;};FCKXHtml.TagProcessors['base']=function(A,B){if (B.getAttribute('_fcktemp')) return null;return A;};FCKXHtml.TagProcessors['link']=function(A,B){if (B.getAttribute('_fcktemp')) return null;return A;};FCKXHtml.TagProcessors['table']=function(A,B){var C=A.attributes.getNamedItem('class');if (C&&FCKRegexLib.TableBorderClass.test(C.nodeValue)){var D=C.nodeValue.replace(FCKRegexLib.TableBorderClass,'');if (D.length==0) A.attributes.removeNamedItem('class');else FCKXHtml._AppendAttribute(A,'class',D);};FCKXHtml._AppendChildNodes(A,B,false);return A;}
+FCKXHtml._GetMainXmlString=function(){var A=new XMLSerializer();return A.serializeToString(this.MainNode).replace(FCKRegexLib.GeckoEntitiesMarker,'&');};FCKXHtml._AppendEntity=function(A,B){A.appendChild(this.XML.createTextNode('#?-:'+B+';'));};FCKXHtml._AppendAttributes=function(A,B,C){var D=B.attributes;for (var n=0;n<D.length;n++){var E=D[n];if (E.specified){var F=E.nodeName.toLowerCase();var G;if (F=='_fckxhtmljob') continue;else if (F.indexOf('_moz')==0) continue;else if (F=='class') G=E.nodeValue;else if (E.nodeValue===true) G=F;else G=B.getAttribute(F,2);if (FCKConfig.ForceSimpleAmpersand&&G.replace) G=G.replace(/&/g,'___FCKAmp___');this._AppendAttribute(C,F,G);};};}
+var FCKCodeFormatter;if (!(FCKCodeFormatter=NS.FCKCodeFormatter)){FCKCodeFormatter=NS.FCKCodeFormatter=new Object();FCKCodeFormatter.Regex=new Object();FCKCodeFormatter.Regex.BlocksOpener=/\<(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|AREA|OPTION)[^\>]*\>/gi;FCKCodeFormatter.Regex.BlocksCloser=/\<\/(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|AREA|OPTION)[^\>]*\>/gi;FCKCodeFormatter.Regex.NewLineTags=/\<(BR|HR)[^\>]\>/gi;FCKCodeFormatter.Regex.MainTags=/\<\/?(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR)[^\>]*\>/gi;FCKCodeFormatter.Regex.LineSplitter=/\s*\n+\s*/g;FCKCodeFormatter.Regex.IncreaseIndent=/^\<(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL)[ \/\>]/i;FCKCodeFormatter.Regex.DecreaseIndent=/^\<\/(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL)[ \>]/i;FCKCodeFormatter.Regex.FormatIndentatorRemove=new RegExp(FCKConfig.FormatIndentator);FCKCodeFormatter.Format=function(A){var B=A.replace(this.Regex.BlocksOpener,'\n$&');;B=B.replace(this.Regex.BlocksCloser,'$&\n');B=B.replace(this.Regex.NewLineTags,'$&\n');B=B.replace(this.Regex.MainTags,'\n$&\n');var C='';var D=B.split(this.Regex.LineSplitter);B='';for (var i=0;i<D.length;i++){var E=D[i];if (E.length==0) continue;if (this.Regex.DecreaseIndent.test(E)) C=C.replace(this.Regex.FormatIndentatorRemove,'');B+=C+E+'\n';if (this.Regex.IncreaseIndent.test(E)) C+=FCKConfig.FormatIndentator;};return B.trim();};}
+var FCKUndo=new Object();FCKUndo.SaveUndoStep=function(){}
+FCK.Events=new FCKEvents(FCK);FCK.Toolbar=null;FCK.TempBaseTag=FCKConfig.BaseHref.length>0?'<base href="'+FCKConfig.BaseHref+'" _fcktemp="true"></base>':'';FCK.StartEditor=function(){this.EditorWindow=window.frames['eEditorArea'];this.EditorDocument=this.EditorWindow.document;this.SetHTML(FCKTools.GetLinkedFieldValue());FCKTools.AttachToLinkedFieldFormSubmit(this.UpdateLinkedField);FCKUndo.SaveUndoStep();this.SetStatus(FCK_STATUS_ACTIVE);};function Window_OnFocus(){FCK.Focus();};FCK.SetStatus=function(A){this.Status=A;if (A==FCK_STATUS_ACTIVE){window.onfocus=window.document.body.onfocus=Window_OnFocus;if (FCKConfig.StartupFocus) FCK.Focus();if (FCKBrowserInfo.IsIE) FCKScriptLoader.AddScript('js/fckeditorcode_ie_2.js');else FCKScriptLoader.AddScript('js/fckeditorcode_gecko_2.js');};this.Events.FireEvent('OnStatusChange',A);};FCK.GetHTML=function(A){var B;if (FCK.EditMode==FCK_EDITMODE_WYSIWYG){if (FCKBrowserInfo.IsIE) B=this.EditorDocument.body.innerHTML.replace(FCKRegexLib.ToReplace,'$1');else B=this.EditorDocument.body.innerHTML;}else B=document.getElementById('eSourceField').value;if (A) return FCKCodeFormatter.Format(B);else return B;};FCK.GetXHTML=function(A){var B=(FCK.EditMode==FCK_EDITMODE_SOURCE);if (B) this.SwitchEditMode();var C;if (FCKConfig.FullPage) C=FCKXHtml.GetXHTML(this.EditorDocument.getElementsByTagName('html')[0],true,A);else{if (FCKConfig.IgnoreEmptyParagraphValue&&this.EditorDocument.body.innerHTML=='<P> </P>') C='';else C=FCKXHtml.GetXHTML(this.EditorDocument.body,false,A);};if (B) this.SwitchEditMode();if (FCKBrowserInfo.IsIE) C=C.replace(FCKRegexLib.ToReplace,'$1');if (FCK.DocTypeDeclaration&&FCK.DocTypeDeclaration.length>0) C=FCK.DocTypeDeclaration+'\n'+C;if (FCK.XmlDeclaration&&FCK.XmlDeclaration.length>0) C=FCK.XmlDeclaration+'\n'+C;return FCKConfig.ProtectedSource.Revert(C);};FCK.UpdateLinkedField=function(){if (FCKConfig.EnableXHTML) FCK.LinkedField.value=FCK.GetXHTML(FCKConfig.FormatOutput);else FCK.LinkedField.value=FCK.GetHTML(FCKConfig.FormatOutput);FCK.Events.FireEvent('OnAfterLinkedFieldUpdate');};FCK.ShowContextMenu=function(x,y){if (this.Status!=FCK_STATUS_COMPLETE) return;FCKContextMenu.Show(x,y);this.Events.FireEvent("OnContextMenu");};FCK.RegisteredDoubleClickHandlers=new Object();FCK.OnDoubleClick=function(A){var B=FCK.RegisteredDoubleClickHandlers[A.tagName];if (B) B(A);};FCK.RegisterDoubleClickHandler=function(A,B){FCK.RegisteredDoubleClickHandlers[B.toUpperCase()]=A;};FCK.OnAfterSetHTML=function(){var A,i=0;while((A=FCKDocumentProcessors[i++])) A.ProcessDocument(FCK.EditorDocument);this.Events.FireEvent('OnAfterSetHTML');};var FCKDocumentProcessors=new Array();var FCKDocumentProcessors_CreateFakeImage=function(A,B){var C=FCK.EditorDocument.createElement('IMG');C.className=A;C.src=FCKConfig.FullBasePath+'images/spacer.gif';C.setAttribute('_fckfakelement','true',0);C.setAttribute('_fckrealelement',FCKTempBin.AddElement(B),0);return C;};var FCKAnchorsProcessor=new Object();FCKAnchorsProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('A');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.name.length>0&&(!C.getAttribute('href')||C.getAttribute('href').length==0)){var D=FCKDocumentProcessors_CreateFakeImage('FCK__Anchor',C.cloneNode(true));D.setAttribute('_fckanchor','true',0);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);};};};FCKDocumentProcessors.addItem(FCKAnchorsProcessor);var FCKPageBreaksProcessor=new Object();FCKPageBreaksProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('CENTER');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.style.pageBreakAfter=='always'&&C.innerHTML.trim().length==0){var D=FCKDocumentProcessors_CreateFakeImage('FCK__PageBreak',C.cloneNode(true));C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);};};};FCKDocumentProcessors.addItem(FCKPageBreaksProcessor);var FCKFlashProcessor=new Object();FCKFlashProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('EMBED');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.src.endsWith('.swf',true)){var D=FCKDocumentProcessors_CreateFakeImage('FCK__Flash',C.cloneNode(true));D.setAttribute('_fckflash','true',0);FCKFlashProcessor.RefreshView(D,C);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);};};};FCKFlashProcessor.RefreshView=function(A,B){if (B.width>0) A.style.width=FCKTools.ConvertHtmlSizeToStyle(B.width);if (B.height>0) A.style.height=FCKTools.ConvertHtmlSizeToStyle(B.height);};FCKDocumentProcessors.addItem(FCKFlashProcessor);FCK.GetRealElement=function(A){var e=FCKTempBin.Elements[A.getAttribute('_fckrealelement')];if (A.getAttribute('_fckflash')){if (A.style.width.length>0) e.width=FCKTools.ConvertStyleSizeToHtml(A.style.width);if (A.style.height.length>0) e.height=FCKTools.ConvertStyleSizeToHtml(A.style.height);};return e;};
+FCK.Description="FCKeditor for Gecko Browsers";FCK.InitializeBehaviors=function(){if (FCKConfig.ShowBorders){var A=FCKTools.AppendStyleSheet(this.EditorDocument,FCKConfig.FullBasePath+'css/fck_showtableborders_gecko.css');A.setAttribute('_fcktemp','true');};var B=function(e){e.preventDefault();FCK.ShowContextMenu(e.clientX,e.clientY);};this.EditorDocument.addEventListener('contextmenu',B,true);var C=function(e){if (e.ctrlKey&&!e.shiftKey&&!e.altKey){var D=false;switch (e.which){case 66:case 98:FCK.ExecuteNamedCommand('bold');D=true;break;case 105:case 73:FCK.ExecuteNamedCommand('italic');D=true;break;case 117:case 85:FCK.ExecuteNamedCommand('underline');D=true;break;case 86:case 118:D=(FCK.Status!=FCK_STATUS_COMPLETE||!FCK.Events.FireEvent("OnPaste"));break;};if (D){e.preventDefault();e.stopPropagation();};};};this.EditorDocument.addEventListener('keypress',C,true);this.ExecOnSelectionChange=function(){FCK.Events.FireEvent("OnSelectionChange");};this.ExecOnSelectionChangeTimer=function(){if (FCK.LastOnChangeTimer) window.clearTimeout(FCK.LastOnChangeTimer);FCK.LastOnChangeTimer=window.setTimeout(FCK.ExecOnSelectionChange,100);};this.EditorDocument.addEventListener('mouseup',this.ExecOnSelectionChange,false);this.EditorDocument.addEventListener('keyup',this.ExecOnSelectionChangeTimer,false);this._DblClickListener=function(e){FCK.OnDoubleClick(e.target);e.stopPropagation();};this.EditorDocument.addEventListener('dblclick',this._DblClickListener,true);this._OnLoad=function(){if (this._FCK_HTML){this.document.body.innerHTML=this._FCK_HTML;this._FCK_HTML=null;};};this.EditorWindow.addEventListener('load',this._OnLoad,true);};FCK.MakeEditable=function(){try{FCK.EditorDocument.designMode='on';FCK.EditorDocument.execCommand('useCSS',false,!FCKConfig.GeckoUseSPAN);}catch (e) {};};FCK.Focus=function(){try{FCK.EditorWindow.focus();}catch(e) {};};FCK.SetHTML=function(A,B){A=A.replace(FCKRegexLib.StrongOpener,'<b$1');A=A.replace(FCKRegexLib.StrongCloser,'<\/b>');A=A.replace(FCKRegexLib.EmOpener,'<i$1');A=A.replace(FCKRegexLib.EmCloser,'<\/i>');if (B||FCK.EditMode==FCK_EDITMODE_WYSIWYG){A=FCKConfig.ProtectedSource.Protect(A);if (FCKConfig.FullPage&&FCKRegexLib.BodyContents.test(A)){if (FCK.TempBaseTag.length>0&&!FCKRegexLib.HasBaseTag.test(A)) A=A.replace(FCKRegexLib.HeadOpener,'$&'+FCK.TempBaseTag);A=A.replace(FCKRegexLib.HeadCloser,'<link href="'+FCKConfig.BasePath+'css/fck_internal.css'+'" rel="stylesheet" type="text/css" _fcktemp="true" /></head>');var C=A.match(FCKRegexLib.BodyContents);var D=C[1];var E=C[2];var F=C[3];var G=D+' '+F;if (!this._Initialized){FCK.EditorDocument.designMode="on";FCK.EditorDocument.execCommand("useCSS",false,!FCKConfig.GeckoUseSPAN);this._Initialized=true;};this.EditorDocument.open();this.EditorDocument.write(G);this.EditorDocument.close();if (this.EditorDocument.body) this.EditorDocument.body.innerHTML=E;else this.EditorWindow._FCK_HTML=E;this.InitializeBehaviors();}else{if (!this._Initialized){this.EditorDocument.dir=FCKConfig.ContentLangDirection;var G='<title></title>'+'<link href="'+FCKConfig.EditorAreaCSS+'" rel="stylesheet" type="text/css" />'+'<link href="'+FCKConfig.BasePath+'css/fck_internal.css'+'" rel="stylesheet" type="text/css" _fcktemp="true" />'+FCK.TempBaseTag;this.EditorDocument.getElementsByTagName("HEAD")[0].innerHTML=G;this.InitializeBehaviors();this._Initialized=true;};if (A.length==0) FCK.EditorDocument.body.innerHTML=GECKO_BOGUS;else if (FCKRegexLib.EmptyParagraph.test(A)) FCK.EditorDocument.body.innerHTML=A.replace(FCKRegexLib.TagBody,'>'+GECKO_BOGUS+'<');else FCK.EditorDocument.body.innerHTML=A;FCK.MakeEditable();};FCK.OnAfterSetHTML();}else document.getElementById('eSourceField').value=A;}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_2.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_2.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_gecko_2.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,56 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * This file has been compacted for best loading performance.
+ */
+FCK.RedirectNamedCommands=new Object();FCK.ExecuteNamedCommand=function(A,B){FCKUndo.SaveUndoStep();if (FCK.RedirectNamedCommands[A]!=null) FCK.ExecuteRedirectedNamedCommand(A,B);else{FCK.Focus();FCK.EditorDocument.execCommand(A,false,B);FCK.Events.FireEvent('OnSelectionChange');};FCKUndo.SaveUndoStep();};FCK.GetNamedCommandState=function(A){try{if (!FCK.EditorDocument.queryCommandEnabled(A)) return FCK_TRISTATE_DISABLED;else return FCK.EditorDocument.queryCommandState(A)?FCK_TRISTATE_ON:FCK_TRISTATE_OFF;}catch (e){return FCK_TRISTATE_OFF;};};FCK.GetNamedCommandValue=function(A){var B='';var C=FCK.GetNamedCommandState(A);if (C==FCK_TRISTATE_DISABLED) return null;try{B=this.EditorDocument.queryCommandValue(A);}catch(e) {};return B?B:'';};FCK.PasteFromWord=function(){FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.PasteFromWord,'dialog/fck_paste.html',400,330,'Word');};FCK.Preview=function(){var A=FCKConfig.ScreenWidth*0.8;var B=FCKConfig.ScreenHeight*0.7;var C=(FCKConfig.ScreenWidth-A)/2;var D=window.open('',null,'toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width='+A+',height='+B+',left='+C);var E;if (FCKConfig.FullPage){if (FCK.TempBaseTag.length>0) E=FCK.GetXHTML().replace(FCKRegexLib.HeadOpener,'$&'+FCK.TempBaseTag);else E=FCK.GetXHTML();}else{E=FCKConfig.DocType+'<html dir="'+FCKConfig.ContentLangDirection+'">'+'<head><title>'+FCKLang.Preview+'</title>'+'<link href="'+FCKConfig.EditorAreaCSS+'" rel="stylesheet" type="text/css" />'+FCK.TempBaseTag+'</head><body>'+FCK.GetXHTML()+'</body></html>';};D.document.write(E);D.document.close();};FCK.SwitchEditMode=function(){var A=(FCK.EditMode==FCK_EDITMODE_WYSIWYG);document.getElementById('eWysiwyg').style.display=A?'none':'';document.getElementById('eSource').style.display=A?'':'none';if (A){if (FCKBrowserInfo.IsIE) FCKUndo.SaveUndoStep();document.getElementById('eSourceField').value=(FCKConfig.EnableXHTML&&FCKConfig.EnableSourceXHTML?FCK.GetXHTML(FCKConfig.FormatSource):FCK.GetHTML(FCKConfig.FormatSource));}else FCK.SetHTML(FCK.GetHTML(),true);FCK.EditMode=A?FCK_EDITMODE_SOURCE:FCK_EDITMODE_WYSIWYG;FCKToolbarSet.RefreshModeState();FCK.Focus();};FCK.CreateElement=function(A){var e=FCK.EditorDocument.createElement(A);return FCK.InsertElementAndGetIt(e);};FCK.InsertElementAndGetIt=function(e){e.setAttribute('__FCKTempLabel',1);this.InsertElement(e);var A=FCK.EditorDocument.getElementsByTagName(e.tagName);for (var i=0;i<A.length;i++){if (A[i].getAttribute('__FCKTempLabel')){A[i].removeAttribute('__FCKTempLabel');return A[i];};};return null;};
+FCK._BaseGetNamedCommandState=FCK.GetNamedCommandState;FCK.GetNamedCommandState=function(A){switch (A){case 'Unlink':return FCKSelection.HasAncestorNode('A')?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED;default:return FCK._BaseGetNamedCommandState(A);};};FCK.RedirectNamedCommands={Print:true,Paste:true,Cut:true,Copy:true};FCK.ExecuteRedirectedNamedCommand=function(A,B){switch (A){case 'Print':FCK.EditorWindow.print();break;case 'Paste':try { if (FCK.Paste()) FCK.ExecuteNamedCommand('Paste');}catch (e) { alert(FCKLang.PasteErrorPaste);};break;case 'Cut':try { FCK.ExecuteNamedCommand('Cut');}catch (e) { alert(FCKLang.PasteErrorCut);};break;case 'Copy':try { FCK.ExecuteNamedCommand('Copy');}catch (e) { alert(FCKLang.PasteErrorCopy);};break;default:FCK.ExecuteNamedCommand(A,B);};};FCK.AttachToOnSelectionChange=function(A){this.Events.AttachEvent('OnSelectionChange',A);};FCK.Paste=function(){if (FCKConfig.ForcePasteAsPlainText){FCK.PasteAsPlainText();return false;}else return true;};FCK.InsertHtml=function(A){var B=FCKSelection.Delete();var C=B.getRangeAt(0);var D=C.createContextualFragment(A);var E=D.lastChild;C.insertNode(D);C.setEndAfter(E);C.setStartAfter(E);B.removeAllRanges();B=FCK.EditorWindow.getSelection();B.addRange(C);this.Focus();};FCK.InsertElement=function(A){var B=FCKSelection.Delete();var C=B.getRangeAt(0);C.insertNode(A);C.setEndAfter(A);C.setStartAfter(A);this.Focus();};FCK.PasteAsPlainText=function(){FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.PasteAsText,'dialog/fck_paste.html',400,330,'PlainText');};FCK.GetClipboardHTML=function(){return '';};FCK.CreateLink=function(A){FCK.ExecuteNamedCommand('Unlink');if (A.length>0){var B='javascript:void(0);/*'+(new Date().getTime())+'*/';FCK.ExecuteNamedCommand('CreateLink',B);var C=document.evaluate("//a[@href='"+B+"']",this.EditorDocument.body,null,9,null).singleNodeValue;if (C){C.href=A;return C;};};};
+var FCKSelection=new Object();FCK.Selection=FCKSelection;
+FCKSelection.GetType=function(){this._Type='Text';var A=FCK.EditorWindow.getSelection();if (A&&A.rangeCount==1){var B=A.getRangeAt(0);if (B.startContainer==B.endContainer&&(B.endOffset-B.startOffset)==1) this._Type='Control';};return this._Type;};FCKSelection.GetSelectedElement=function(){if (this.GetType()=='Control'){var A=FCK.EditorWindow.getSelection();return A.anchorNode.childNodes[A.anchorOffset];};};FCKSelection.GetParentElement=function(){if (this.GetType()=='Control') return FCKSelection.GetSelectedElement().parentElement;else{var A=FCK.EditorWindow.getSelection();if (A){var B=A.anchorNode;while (B&&B.nodeType!=1) B=B.parentNode;return B;};};};FCKSelection.SelectNode=function(A){FCK.Focus();var B=FCK.EditorDocument.createRange();B.selectNode(A);var C=FCK.EditorWindow.getSelection();C.removeAllRanges();C.addRange(B);};FCKSelection.Collapse=function(A){var B=FCK.EditorWindow.getSelection();if (A==null||A===true) B.collapseToStart();else B.collapseToEnd();};FCKSelection.HasAncestorNode=function(A){var B=this.GetSelectedElement();if (!B&&FCK.EditorWindow){try { B=FCK.EditorWindow.getSelection().getRangeAt(0).startContainer;}catch(e){};};while (B){if (B.nodeType==1&&B.tagName==A) return true;B=B.parentNode;};return false;};FCKSelection.MoveToAncestorNode=function(A){var B;var C=this.GetSelectedElement();if (!C) C=FCK.EditorWindow.getSelection().getRangeAt(0).startContainer;while (C){if (C.tagName==A) return C;C=C.parentNode;};return null;};FCKSelection.Delete=function(){var A=FCK.EditorWindow.getSelection();for (var i=0;i<A.rangeCount;i++){A.getRangeAt(i).deleteContents();};return A;};
+var FCKPanel=function(A){if (A) this.Window=A;else{this.Window=window;while (this.Window!=window.top){try{if (this.Window.parent.document.body.tagName=='FRAMESET') break;}catch (e){break;};this.Window=this.Window.parent;};};};FCKPanel.prototype.Create=function(){this._IFrame=this.Window.document.createElement('iframe');this._IFrame.src='about:blank';this._IFrame.frameBorder='0';this._IFrame.scrolling='no';this._IFrame.style.left='0px';this._IFrame.style.top='0px';this._IFrame.width=10;this._IFrame.height=10;this._IFrame.style.position='absolute';this._IFrame.style.visibility='hidden';this._IFrame.IsFCKPanel=true;this._IFrame.Panel=this;this.Window.document.body.appendChild(this._IFrame);this.Document=this._IFrame.contentWindow.document;this.Document.open();this.Document.write('<html><head></head><body><\/body><\/html>');this.Document.close();this.Document.body.style.margin=this.Document.body.style.padding='0px';if (this.StyleSheet) FCKTools.AppendStyleSheet(this.Document,this.StyleSheet);this.OuterDiv=this.Document.body.appendChild(this.Document.createElement('DIV'));this.OuterDiv.style.cssFloat='left';this.PanelDiv=this.OuterDiv.appendChild(this.Document.createElement('DIV'));this.PanelDiv.className='FCK_Panel';this.Created=true;};FCKPanel.prototype.Show=function(A,B,C,D,E,F){if (!this.Created) this.Create();if (D!=null&&F&&D<this.OuterDiv.offsetWidth) this.PanelDiv.style.width=D;if (E!=null&&F&&E<this.PanelDiv.offsetHeight) this.PanelDiv.style.height=E+'px';var G=this.GetElementPosition(C);A+=G.X;B+=G.Y;if (A+this.OuterDiv.offsetWidth>this.Window.innerWidth){A-=A+this.OuterDiv.offsetWidth-this.Window.innerWidth;};this._IFrame.style.left=A+'px';this._IFrame.style.top=B+'px';function SetOnClickListener(targetWindow,targetFunction){try{if (targetWindow==null||(targetWindow.frameElement&&targetWindow.frameElement.IsFCKPanel)) return;targetWindow.document.addEventListener('click',targetFunction,false);}catch (e) {};for (var i=0;i<targetWindow.frames.length;i++) SetOnClickListener(targetWindow.frames[i],targetFunction);};SetOnClickListener(window.top,FCKPanelEventHandlers.OnDocumentClick);this._IFrame.width=this.OuterDiv.offsetWidth;this._IFrame.height=this.OuterDiv.offsetHeight;this._IFrame.style.visibility='';};FCKPanel.prototype.GetElementPosition=function(A){var c={ X:0,Y:0 };while (A){c.X+=A.offsetLeft;c.Y+=A.offsetTop;if (A.offsetParent==null&&A.ownerDocument.defaultView!=this.Window) A=A.ownerDocument.defaultView.frameElement;else A=A.offsetParent;};return c;};FCKPanel.prototype.Hide=function(){this.PanelDiv.style.overflow='visible';this._IFrame.style.visibility='hidden';};var FCKPanelEventHandlers=new Object();FCKPanelEventHandlers.OnDocumentClick=function(e){var A=e.target.ownerDocument.defaultView;if (!A.IsFCKPanel){function RemoveOnClickListener(targetWindow){if (targetWindow==null) return;try{if (targetWindow.frameElement&&targetWindow.frameElement.IsFCKPanel) targetWindow.frameElement.Panel.Hide();else targetWindow.document.removeEventListener('click',FCKPanelEventHandlers.OnDocumentClick,false);}catch (e) {};for (var i=0;i<targetWindow.frames.length;i++) RemoveOnClickListener(targetWindow.frames[i]);};RemoveOnClickListener(window.top);};}
+var FCKTableHandler=new Object();FCKTableHandler.InsertRow=function(){var A=FCKSelection.MoveToAncestorNode("TR");if (!A) return;var B=A.cloneNode(true);A.parentNode.insertBefore(B,A);FCKTableHandler.ClearRow(A);};FCKTableHandler.DeleteRows=function(A){if (!A) A=FCKSelection.MoveToAncestorNode("TR");if (!A) return;var B=FCKTools.GetElementAscensor(A,'TABLE');if (B.rows.length==1){FCKTableHandler.DeleteTable(B);return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteTable=function(A){if (!A) A=FCKSelection.MoveToAncestorNode("TABLE");if (!A) return;A.parentNode.removeChild(A);};FCKTableHandler.InsertColumn=function(){var A=FCKSelection.MoveToAncestorNode("TD");if (!A) A=FCKSelection.MoveToAncestorNode("TH");if (!A) return;var B=FCKTools.GetElementAscensor(A,'TABLE');var C=A.cellIndex+1;for (var i=0;i<B.rows.length;i++){var D=B.rows[i];if (D.cells.length<C) continue;A=D.cells[C-1].cloneNode(false);if (FCKBrowserInfo.IsGecko) A.innerHTML=FCKBrowserInfo.IsGecko?GECKO_BOGUS:'';var E=D.cells[C];if (E) D.insertBefore(A,E);else D.appendChild(A);};};FCKTableHandler.DeleteColumns=function(){var A=FCKSelection.MoveToAncestorNode("TD");if (!A) return;var B=FCKTools.GetElementAscensor(A,'TABLE');var C=A.cellIndex;for (var i=B.rows.length-1;i>=0;i--){var D=B.rows[i];if (C==0&&D.cells.length==1){FCKTableHandler.DeleteRows(D);continue;};if (D.cells[C]) D.removeChild(D.cells[C]);};};FCKTableHandler.InsertCell=function(A){var B=A?A:FCKSelection.MoveToAncestorNode("TD");if (!B) return;var C=FCK.EditorDocument.createElement("TD");if (FCKBrowserInfo.IsGecko) C.innerHTML=GECKO_BOGUS;if (B.cellIndex==B.parentNode.cells.lenght-1){B.parentNode.appendChild(C);}else{B.parentNode.insertBefore(C,B.nextSibling);};return C;};FCKTableHandler.DeleteCell=function(A){if (A.parentNode.cells.length==1){FCKTableHandler.DeleteRows(FCKTools.GetElementAscensor(A,'TR'));return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteCells=function(){var A=FCKTableHandler.GetSelectedCells();for (var i=A.length-1;i>=0;i--){FCKTableHandler.DeleteCell(A[i]);};};FCKTableHandler.MergeCells=function(){var A=FCKTableHandler.GetSelectedCells();if (A.length<2) return;if (A[0].parentNode!=A[A.length-1].parentNode) return;var B=isNaN(A[0].colSpan)?1:A[0].colSpan;var C='';for (var i=A.length-1;i>0;i--){B+=isNaN(A[i].colSpan)?1:A[i].colSpan;C=A[i].innerHTML+C;FCKTableHandler.DeleteCell(A[i]);};A[0].colSpan=B;A[0].innerHTML+=C;};FCKTableHandler.SplitCell=function(){var A=FCKTableHandler.GetSelectedCells();if (A.length!=1) return;var B=this._CreateTableMap(A[0].parentNode.parentNode);var C=FCKTableHandler._GetCellIndexSpan(B,A[0].parentNode.rowIndex,A[0]);var D=this._GetCollumnCells(B,C);for (var i=0;i<D.length;i++){if (D[i]==A[0]){var E=this.InsertCell(A[0]);if (!isNaN(A[0].rowSpan)&&A[0].rowSpan>1) E.rowSpan=A[0].rowSpan;}else{if (isNaN(D[i].colSpan)) D[i].colSpan=2;else D[i].colSpan+=1;};};};FCKTableHandler._GetCellIndexSpan=function(A,B,C){if (A.length<B+1) return null;var D=A[B];for (var c=0;c<D.length;c++){if (D[c]==C) return c;};return null;};FCKTableHandler._GetCollumnCells=function(A,B){var C=new Array();for (var r=0;r<A.length;r++){var D=A[r][B];if (D&&(C.length==0||C[C.length-1]!=D)) C[C.length]=D;};return C;};FCKTableHandler._CreateTableMap=function(A){var B=A.rows;var r=-1;var C=new Array();for (var i=0;i<B.length;i++){r++;if (!C[r]) C[r]=new Array();var c=-1;for (var j=0;j<B[i].cells.length;j++){var D=B[i].cells[j];c++;while (C[r][c]) c++;var E=isNaN(D.colSpan)?1:D.colSpan;var F=isNaN(D.rowSpan)?1:D.rowSpan;for (var G=0;G<F;G++){if (!C[r+G]) C[r+G]=new Array();for (var H=0;H<E;H++){C[r+G][c+H]=B[i].cells[j];};};c+=E-1;};};return C;};FCKTableHandler.ClearRow=function(A){var B=A.cells;for (var i=0;i<B.length;i++){if (FCKBrowserInfo.IsGecko) B[i].innerHTML=GECKO_BOGUS;else B[i].innerHTML='';};}
+FCKTableHandler.GetSelectedCells=function(){var A=new Array();var B=FCK.EditorWindow.getSelection();if (B.rangeCount==1&&B.anchorNode.nodeType==3){var C=FCKTools.GetElementAscensor(B.anchorNode,'TD');if (C){A[0]=C;return A;};};for (var i=0;i<B.rangeCount;i++){var D=B.getRangeAt(i);var E=D.startContainer.childNodes[D.startOffset];if (E.tagName=='TD') A[A.length]=E;};return A;};
+var FCKXml;if (!(FCKXml=NS.FCKXml)){FCKXml=NS.FCKXml=function(){};FCKXml.prototype.LoadUrl=function(A){var B=this;var C=FCKTools.CreateXmlObject('XmlHttp');C.open("GET",A,false);C.send(null);if (C.status==200||C.status==304) this.DOMDocument=C.responseXML;else if (C.status==0&&C.readyState==4) this.DOMDocument=C.responseXML;else alert('Error loading "'+A+'"');};FCKXml.prototype.SelectNodes=function(A,B){var C=new Array();var D=this.DOMDocument.evaluate(A,B?B:this.DOMDocument,this.DOMDocument.createNSResolver(this.DOMDocument.documentElement),XPathResult.ORDERED_NODE_ITERATOR_TYPE,null);if (D){var E=D.iterateNext();while(E){C[C.length]=E;E=D.iterateNext();};};return C;};FCKXml.prototype.SelectSingleNode=function(A,B){var C=this.DOMDocument.evaluate(A,B?B:this.DOMDocument,this.DOMDocument.createNSResolver(this.DOMDocument.documentElement),9,null);if (C&&C.singleNodeValue) return C.singleNodeValue;else return null;};}
+var FCKStyleDef=function(A,B){this.Name=A;this.Element=B.toUpperCase();this.IsObjectElement=FCKRegexLib.ObjectElements.test(this.Element);this.Attributes=new Object();};FCKStyleDef.prototype.AddAttribute=function(A,B){this.Attributes[A]=B;};FCKStyleDef.prototype.GetOpenerTag=function(){var s='<'+this.Element;for (var a in this.Attributes) s+=' '+a+'="'+this.Attributes[a]+'"';return s+'>';};FCKStyleDef.prototype.GetCloserTag=function(){return '</'+this.Element+'>';};FCKStyleDef.prototype.RemoveFromSelection=function(){if (FCKSelection.GetType()=='Control') this._RemoveMe(FCKSelection.GetSelectedElement());else this._RemoveMe(FCKSelection.GetParentElement());}
+FCKStyleDef.prototype.ApplyToSelection=function(){if (FCKSelection.GetType()=='Text'&&!this.IsObjectElement){var A=FCK.EditorWindow.getSelection();var e=FCK.EditorDocument.createElement(this.Element);for (var i=0;i<A.rangeCount;i++){e.appendChild(A.getRangeAt(i).extractContents());};this._AddAttributes(e);this._RemoveDuplicates(e);var B=A.getRangeAt(0);B.insertNode(e);}else{var C=FCKSelection.GetSelectedElement();if (C.tagName==this.Element) this._AddAttributes(C);};};FCKStyleDef.prototype._AddAttributes=function(A){for (var a in this.Attributes) A.setAttribute(a,this.Attributes[a],0);};FCKStyleDef.prototype._RemoveDuplicates=function(A){for (var i=0;i<A.childNodes.length;i++){var B=A.childNodes[i];if (B.nodeType!=1) continue;this._RemoveDuplicates(B);if (this.IsEqual(B)) FCKTools.RemoveOuterTags(B);};};FCKStyleDef.prototype.IsEqual=function(e){if (e.tagName!=this.Element) return false;for (var a in this.Attributes){if (e.getAttribute(a)!=this.Attributes[a]) return false;};return true;};FCKStyleDef.prototype._RemoveMe=function(A){if (!A) return;var B=A.parentNode;if (A.nodeType==1&&this.IsEqual(A)){if (this.IsObjectElement){for (var a in this.Attributes) A.removeAttribute(a,0);return;}else FCKTools.RemoveOuterTags(A);};this._RemoveMe(B);}
+var FCKStylesLoader=function(){this.Styles=new Object();this.StyleGroups=new Object();this.Loaded=false;this.HasObjectElements=false;};FCKStylesLoader.prototype.Load=function(A){var B=new FCKXml();B.LoadUrl(A);var C=B.SelectNodes('Styles/Style');for (var i=0;i<C.length;i++){var D=C[i].attributes.getNamedItem('element').value.toUpperCase();var E=new FCKStyleDef(C[i].attributes.getNamedItem('name').value,D);if (E.IsObjectElement) this.HasObjectElements=true;var F=B.SelectNodes('Attribute',C[i]);for (var j=0;j<F.length;j++){var G=F[j].attributes.getNamedItem('name').value;var H=F[j].attributes.getNamedItem('value').value;if (G.toLowerCase()=='style'){var I=document.createElement('SPAN');I.style.cssText=H;H=I.style.cssText;};E.AddAttribute(G,H);};this.Styles[E.Name]=E;var J=this.StyleGroups[D];if (J==null){this.StyleGroups[D]=new Array();J=this.StyleGroups[D];};J[J.length]=E;};this.Loaded=true;}
+var FCKNamedCommand=function(A){this.Name=A;};FCKNamedCommand.prototype.Execute=function(){FCK.ExecuteNamedCommand(this.Name);};FCKNamedCommand.prototype.GetState=function(){return FCK.GetNamedCommandState(this.Name);};
+var FCKDialogCommand=function(A,B,C,D,E,F,G){this.Name=A;this.Title=B;this.Url=C;this.Width=D;this.Height=E;this.GetStateFunction=F;this.GetStateParam=G;};FCKDialogCommand.prototype.Execute=function(){FCKDialog.OpenDialog('FCKDialog_'+this.Name,this.Title,this.Url,this.Width,this.Height);};FCKDialogCommand.prototype.GetState=function(){if (this.GetStateFunction) return this.GetStateFunction(this.GetStateParam);else return FCK_TRISTATE_OFF;};var FCKUndefinedCommand=function(){this.Name='Undefined';};FCKUndefinedCommand.prototype.Execute=function(){alert(FCKLang.NotImplemented);};FCKUndefinedCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKFontNameCommand=function(){this.Name='FontName';};FCKFontNameCommand.prototype.Execute=function(A){if (A==null||A==""){}else FCK.ExecuteNamedCommand('FontName',A);};FCKFontNameCommand.prototype.GetState=function(){return FCK.GetNamedCommandValue('FontName');};var FCKFontSizeCommand=function(){this.Name='FontSize';};FCKFontSizeCommand.prototype.Execute=function(A){if (typeof(A)=='string') A=parseInt(A);if (A==null||A==''){FCK.ExecuteNamedCommand('FontSize',3);}else FCK.ExecuteNamedCommand('FontSize',A);};FCKFontSizeCommand.prototype.GetState=function(){return FCK.GetNamedCommandValue('FontSize');};var FCKFormatBlockCommand=function(){this.Name='FormatBlock';};FCKFormatBlockCommand.prototype.Execute=function(A){if (A==null||A=='') FCK.ExecuteNamedCommand('FormatBlock','<P>');else FCK.ExecuteNamedCommand('FormatBlock','<'+A+'>');};FCKFormatBlockCommand.prototype.GetState=function(){return FCK.GetNamedCommandValue('FormatBlock');};var FCKPreviewCommand=function(){this.Name='Preview';};FCKPreviewCommand.prototype.Execute=function(){FCK.Preview();};FCKPreviewCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKSaveCommand=function(){this.Name='Save';};FCKSaveCommand.prototype.Execute=function(){var A=FCK.LinkedField.form;if (typeof(A.onsubmit)=='function'){var B=A.onsubmit();if (B!=null&&B===false) return;};A.submit();};FCKSaveCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKNewPageCommand=function(){this.Name='NewPage';};FCKNewPageCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();FCK.SetHTML('');FCKUndo.Typing=true;};FCKNewPageCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKSourceCommand=function(){this.Name='Source';};FCKSourceCommand.prototype.Execute=function(){if (FCKBrowserInfo.IsGecko){var A=FCKConfig.ScreenWidth*0.65;var B=FCKConfig.ScreenHeight*0.65;FCKDialog.OpenDialog('FCKDialog_Source',FCKLang.Source,'dialog/fck_source.html',A,B,null,null,true);}else FCK.SwitchEditMode();};FCKSourceCommand.prototype.GetState=function(){return (FCK.EditMode==FCK_EDITMODE_WYSIWYG?FCK_TRISTATE_OFF:FCK_TRISTATE_ON);};var FCKUndoCommand=function(){this.Name='Undo';};FCKUndoCommand.prototype.Execute=function(){if (FCKBrowserInfo.IsIE) FCKUndo.Undo();else FCK.ExecuteNamedCommand('Undo');};FCKUndoCommand.prototype.GetState=function(){if (FCKBrowserInfo.IsIE) return (FCKUndo.CheckUndoState()?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED);else return FCK.GetNamedCommandState('Undo');};var FCKRedoCommand=function(){this.Name='Redo';};FCKRedoCommand.prototype.Execute=function(){if (FCKBrowserInfo.IsIE) FCKUndo.Redo();else FCK.ExecuteNamedCommand('Redo');};FCKRedoCommand.prototype.GetState=function(){if (FCKBrowserInfo.IsIE) return (FCKUndo.CheckRedoState()?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED);else return FCK.GetNamedCommandState('Redo');};var FCKPageBreakCommand=function(){this.Name='PageBreak';};FCKPageBreakCommand.prototype.Execute=function(){var A=FCK.EditorDocument.createElement('CENTER');A.style.pageBreakAfter='always';var B=FCKDocumentProcessors_CreateFakeImage('FCK__PageBreak',A);B=FCK.InsertElement(B);};FCKPageBreakCommand.prototype.GetState=function(){return 0;}
+var FCKSpellCheckCommand=function(){this.Name='SpellCheck';this.IsEnabled=(FCKConfig.SpellChecker=='SpellerPages');};FCKSpellCheckCommand.prototype.Execute=function(){FCKDialog.OpenDialog('FCKDialog_SpellCheck','Spell Check','dialog/fck_spellerpages.html',440,480);};FCKSpellCheckCommand.prototype.GetState=function(){return this.IsEnabled?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED;}
+var FCKTextColorCommand=function(A){this.Name=A=='ForeColor'?'TextColor':'BGColor';this.Type=A;this._Panel=new FCKPanel();this._Panel.StyleSheet=FCKConfig.SkinPath+'fck_contextmenu.css';this._Panel.Create();this._CreatePanelBody(this._Panel.Document,this._Panel.PanelDiv);};FCKTextColorCommand.prototype.Execute=function(A,B,C){FCK._ActiveColorPanelType=this.Type;this._Panel.Show(A,B,C);};FCKTextColorCommand.prototype.SetColor=function(A){if (FCK._ActiveColorPanelType=='ForeColor') FCK.ExecuteNamedCommand('ForeColor',A);else if (FCKBrowserInfo.IsGecko) FCK.ExecuteNamedCommand('hilitecolor',A);else FCK.ExecuteNamedCommand('BackColor',A);delete FCK._ActiveColorPanelType;};FCKTextColorCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};function FCKTextColorCommand_OnMouseOver() { this.className='ColorSelected';};function FCKTextColorCommand_OnMouseOut() { this.className='ColorDeselected';};function FCKTextColorCommand_OnClick(){this.className='ColorDeselected';this.Command.SetColor('#'+this.Color);this.Command._Panel.Hide();};function FCKTextColorCommand_AutoOnClick(){this.className='ColorDeselected';this.Command.SetColor('');this.Command._Panel.Hide();};function FCKTextColorCommand_MoreOnClick(){this.className='ColorDeselected';this.Command._Panel.Hide();FCKDialog.OpenDialog('FCKDialog_Color',FCKLang.DlgColorTitle,'dialog/fck_colorselector.html',400,330,this.Command.SetColor);};FCKTextColorCommand.prototype._CreatePanelBody=function(A,B){function CreateSelectionDiv(){var C=A.createElement("DIV");C.className='ColorDeselected';C.onmouseover=FCKTextColorCommand_OnMouseOver;C.onmouseout=FCKTextColorCommand_OnMouseOut;return C;};var D=B.appendChild(A.createElement("TABLE"));D.style.tableLayout='fixed';D.cellPadding=0;D.cellSpacing=0;D.border=0;D.width=150;var E=D.insertRow(-1).insertCell(-1);E.colSpan=8;var C=E.appendChild(CreateSelectionDiv());C.innerHTML='<table cellspacing="0" cellpadding="0" width="100%" border="0">\<tr>\<td><div class="ColorBoxBorder"><div class="ColorBox" style="background-color: #000000"></div></div></td>\<td nowrap width="100%" align="center" unselectable="on">' + FCKLang.ColorAutomatic + '</td>\</tr>\</table>';C.Command=this;C.onclick=FCKTextColorCommand_AutoOnClick;var G=FCKConfig.FontColors.toString().split(',');var H=0;while (H<G.length){var I=D.insertRow(-1);for (var i=0;i<8&&H<G.length;i++,H++){C=I.insertCell(-1).appendChild(CreateSelectionDiv());C.Color=G[H];C.innerHTML='<div class="ColorBoxBorder"><div class="ColorBox" style="background-color: #'+G[H]+'"></div></div>';C.Command=this;C.onclick=FCKTextColorCommand_OnClick;};};E=D.insertRow(-1).insertCell(-1);E.colSpan=8;C=E.appendChild(CreateSelectionDiv());C.innerHTML='<table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td nowrap align="center">'+FCKLang.ColorMoreColors+'</td></tr></table>';C.Command=this;C.onclick=FCKTextColorCommand_MoreOnClick;}
+var FCKPastePlainTextCommand=function(){this.Name='PasteText';};FCKPastePlainTextCommand.prototype.Execute=function(){FCK.PasteAsPlainText();};FCKPastePlainTextCommand.prototype.GetState=function(){return FCK.GetNamedCommandState('Paste');};
+var FCKPasteWordCommand=function(){this.Name='PasteWord';};FCKPasteWordCommand.prototype.Execute=function(){FCK.PasteFromWord();};FCKPasteWordCommand.prototype.GetState=function(){if (FCKConfig.ForcePasteAsPlainText) return FCK_TRISTATE_DISABLED;else return FCK.GetNamedCommandState('Paste');};
+var FCKTableCommand=function(A){this.Name=A;};FCKTableCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();switch (this.Name){case 'TableInsertRow':FCKTableHandler.InsertRow();break;case 'TableDeleteRows':FCKTableHandler.DeleteRows();break;case 'TableInsertColumn':FCKTableHandler.InsertColumn();break;case 'TableDeleteColumns':FCKTableHandler.DeleteColumns();break;case 'TableInsertCell':FCKTableHandler.InsertCell();break;case 'TableDeleteCells':FCKTableHandler.DeleteCells();break;case 'TableMergeCells':FCKTableHandler.MergeCells();break;case 'TableSplitCell':FCKTableHandler.SplitCell();break;default:alert(FCKLang.UnknownCommand.replace(/%1/g,this.Name));};};FCKTableCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;}
+var FCKStyleCommand=function(){this.Name='Style';this.StylesLoader=new FCKStylesLoader();this.StylesLoader.Load(FCKConfig.StylesXmlPath);this.Styles=this.StylesLoader.Styles;};FCKStyleCommand.prototype.Execute=function(A,B){FCKUndo.SaveUndoStep();if (B.Selected) B.Style.RemoveFromSelection();else B.Style.ApplyToSelection();FCKUndo.SaveUndoStep();FCK.Focus();FCK.Events.FireEvent("OnSelectionChange");};FCKStyleCommand.prototype.GetState=function(){var A=FCK.EditorDocument.selection;if (FCKSelection.GetType()=='Control'){var e=FCKSelection.GetSelectedElement();if (e) return this.StylesLoader.StyleGroups[e.tagName]?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED;};return FCK_TRISTATE_OFF;};FCKStyleCommand.prototype.GetActiveStyles=function(){var A=new Array();if (FCKSelection.GetType()=='Control') this._CheckStyle(FCKSelection.GetSelectedElement(),A,false);else this._CheckStyle(FCKSelection.GetParentElement(),A,true);return A;};FCKStyleCommand.prototype._CheckStyle=function(A,B,C){if (!A) return;if (A.nodeType==1){var D=this.StylesLoader.StyleGroups[A.tagName];if (D){for (var i=0;i<D.length;i++){if (D[i].IsEqual(A)) B[B.length]=D[i];};};};if (C) this._CheckStyle(A.parentNode,B,C);}
+var FCKCommands=FCK.Commands=new Object();FCKCommands.LoadedCommands=new Object();FCKCommands.RegisterCommand=function(A,B){this.LoadedCommands[A]=B;};FCKCommands.GetCommand=function(A){var B=FCKCommands.LoadedCommands[A];if (B) return B;switch (A){case 'DocProps':B=new FCKDialogCommand('DocProps',FCKLang.DocProps,'dialog/fck_docprops.html',400,390,FCKCommands.GetFullPageState);break;case 'Templates':B=new FCKDialogCommand('Templates',FCKLang.DlgTemplatesTitle,'dialog/fck_template.html',380,450);break;case 'Link':B=new FCKDialogCommand('Link',FCKLang.DlgLnkWindowTitle,'dialog/fck_link.html',400,330,FCK.GetNamedCommandState,'CreateLink');break;case 'Anchor':B=new FCKDialogCommand('Anchor',FCKLang.DlgAnchorTitle,'dialog/fck_anchor.html',370,170);break;case 'BulletedList':B=new FCKDialogCommand('BulletedList',FCKLang.BulletedListProp,'dialog/fck_listprop.html',370,170);break;case 'NumberedList':B=new FCKDialogCommand('NumberedList',FCKLang.NumberedListProp,'dialog/fck_listprop.html',370,170);break;case 'About':B=new FCKDialogCommand('About',FCKLang.About,'dialog/fck_about.html',400,330);break;case 'Find':B=new FCKDialogCommand('Find',FCKLang.DlgFindTitle,'dialog/fck_find.html',340,170);break;case 'Replace':B=new FCKDialogCommand('Replace',FCKLang.DlgReplaceTitle,'dialog/fck_replace.html',340,200);break;case 'Image':B=new FCKDialogCommand('Image',FCKLang.DlgImgTitle,'dialog/fck_image.html',450,400);break;case 'Flash':B=new FCKDialogCommand('Flash',FCKLang.DlgFlashTitle,'dialog/fck_flash.html',450,400);break;case 'SpecialChar':B=new FCKDialogCommand('SpecialChar',FCKLang.DlgSpecialCharTitle,'dialog/fck_specialchar.html',400,300);break;case 'Smiley':B=new FCKDialogCommand('Smiley',FCKLang.DlgSmileyTitle,'dialog/fck_smiley.html',FCKConfig.SmileyWindowWidth,FCKConfig.SmileyWindowHeight);break;case 'Table':B=new FCKDialogCommand('Table',FCKLang.DlgTableTitle,'dialog/fck_table.html',400,250);break;case 'TableProp':B=new FCKDialogCommand('Table',FCKLang.DlgTableTitle,'dialog/fck_table.html?Parent',400,250);break;case 'TableCellProp':B=new FCKDialogCommand('TableCell',FCKLang.DlgCellTitle,'dialog/fck_tablecell.html',500,250);break;case 'UniversalKey':B=new FCKDialogCommand('UniversalKey',FCKLang.UniversalKeyboard,'dialog/fck_universalkey.html',415,300);break;case 'Style':B=new FCKStyleCommand();break;case 'FontName':B=new FCKFontNameCommand();break;case 'FontSize':B=new FCKFontSizeCommand();break;case 'FontFormat':B=new FCKFormatBlockCommand();break;case 'Source':B=new FCKSourceCommand();break;case 'Preview':B=new FCKPreviewCommand();break;case 'Save':B=new FCKSaveCommand();break;case 'NewPage':B=new FCKNewPageCommand();break;case 'PageBreak':B=new FCKPageBreakCommand();break;case 'TextColor':B=new FCKTextColorCommand('ForeColor');break;case 'BGColor':B=new FCKTextColorCommand('BackColor');break;case 'PasteText':B=new FCKPastePlainTextCommand();break;case 'PasteWord':B=new FCKPasteWordCommand();break;case 'TableInsertRow':B=new FCKTableCommand('TableInsertRow');break;case 'TableDeleteRows':B=new FCKTableCommand('TableDeleteRows');break;case 'TableInsertColumn':B=new FCKTableCommand('TableInsertColumn');break;case 'TableDeleteColumns':B=new FCKTableCommand('TableDeleteColumns');break;case 'TableInsertCell':B=new FCKTableCommand('TableInsertCell');break;case 'TableDeleteCells':B=new FCKTableCommand('TableDeleteCells');break;case 'TableMergeCells':B=new FCKTableCommand('TableMergeCells');break;case 'TableSplitCell':B=new FCKTableCommand('TableSplitCell');break;case 'Form':B=new FCKDialogCommand('Form',FCKLang.Form,'dialog/fck_form.html',380,230);break;case 'Checkbox':B=new FCKDialogCommand('Checkbox',FCKLang.Checkbox,'dialog/fck_checkbox.html',380,230);break;case 'Radio':B=new FCKDialogCommand('Radio',FCKLang.RadioButton,'dialog/fck_radiobutton.html',380,230);break;case 'TextField':B=new FCKDialogCommand('TextField',FCKLang.TextField,'dialog/fck_textfield.html',380,230);break;case 'Textarea':B=new FCKDialogCommand('Textarea',FCKLang.Textarea,'dialog/fck_textarea.html',380,230);break;case 'HiddenField':B=new FCKDialogCommand('HiddenField',FCKLang.HiddenField,'dialog/fck_hiddenfield.html',380,230);break;case 'Button':B=new FCKDialogCommand('Button',FCKLang.Button,'dialog/fck_button.html',380,230);break;case 'Select':B=new FCKDialogCommand('Select',FCKLang.SelectionField,'dialog/fck_select.html',400,380);break;case 'ImageButton':B=new FCKDialogCommand('ImageButton',FCKLang.ImageButton,'dialog/fck_image.html?ImageButton',450,400);break;case 'SpellCheck':B=new FCKSpellCheckCommand();break;case 'Undo':B=new FCKUndoCommand();break;case 'Redo':B=new FCKRedoCommand();break;case 'Undefined':B=new FCKUndefinedCommand();break;default:if (FCKRegexLib.NamedCommands.test(A)) B=new FCKNamedCommand(A);else{alert(FCKLang.UnknownCommand.replace(/%1/g,A));return null;};};FCKCommands.LoadedCommands[A]=B;return B;};FCKCommands.GetFullPageState=function(){return FCKConfig.FullPage?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED;};
+var FCKToolbarButton=function(A,B,C,D,E,F){this.Command=FCKCommands.GetCommand(A);this.Label=B?B:A;this.Tooltip=C?C:(B?B:A);this.Style=D?D:FCK_TOOLBARITEM_ONLYICON;this.SourceView=E?true:false;this.ContextSensitive=F?true:false;this.IconPath=FCKConfig.SkinPath+'toolbar/'+A.toLowerCase()+'.gif';this.State=FCK_UNKNOWN;};FCKToolbarButton.prototype.CreateInstance=function(A){this.DOMDiv=document.createElement('div');this.DOMDiv.className='TB_Button_Off';this.DOMDiv.FCKToolbarButton=this;var B='<table title="'+this.Tooltip+'" cellspacing="0" cellpadding="0" border="0" unselectable="on">'+'<tr>';if (this.Style!=FCK_TOOLBARITEM_ONLYTEXT) B+='<td class="TB_Icon" unselectable="on"><img src="'+this.IconPath+'" width="21" height="21" unselectable="on"></td>';if (this.Style!=FCK_TOOLBARITEM_ONLYICON) B+='<td class="TB_Text" unselectable="on" nowrap>'+this.Label+'</td>';B+='</tr>'+'</table>';this.DOMDiv.innerHTML=B;var C=A.DOMRow.insertCell(-1);C.appendChild(this.DOMDiv);this.RefreshState();};FCKToolbarButton.prototype.RefreshState=function(){var A=this.Command.GetState();if (A==this.State) return;this.State=A;switch (this.State){case FCK_TRISTATE_ON:this.DOMDiv.className='TB_Button_On';this.DOMDiv.onmouseover=FCKToolbarButton_OnMouseOnOver;this.DOMDiv.onmouseout=FCKToolbarButton_OnMouseOnOut;this.DOMDiv.onclick=FCKToolbarButton_OnClick;break;case FCK_TRISTATE_OFF:this.DOMDiv.className='TB_Button_Off';this.DOMDiv.onmouseover=FCKToolbarButton_OnMouseOffOver;this.DOMDiv.onmouseout=FCKToolbarButton_OnMouseOffOut;this.DOMDiv.onclick=FCKToolbarButton_OnClick;break;default:this.Disable();break;};};function FCKToolbarButton_OnMouseOnOver(){this.className='TB_Button_On TB_Button_On_Over';};function FCKToolbarButton_OnMouseOnOut(){this.className='TB_Button_On';};function FCKToolbarButton_OnMouseOffOver(){this.className='TB_Button_On TB_Button_Off_Over';};function FCKToolbarButton_OnMouseOffOut(){this.className='TB_Button_Off';};function FCKToolbarButton_OnClick(e){this.FCKToolbarButton.Click(e);return false;};FCKToolbarButton.prototype.Click=function(){this.Command.Execute();};FCKToolbarButton.prototype.Enable=function(){this.RefreshState();};FCKToolbarButton.prototype.Disable=function(){this.State=FCK_TRISTATE_DISABLED;this.DOMDiv.className='TB_Button_Disabled';this.DOMDiv.onmouseover=null;this.DOMDiv.onmouseout=null;this.DOMDiv.onclick=null;}
+var FCKSpecialCombo=function(A){this.FieldWidth=80;this.PanelWidth=130;this.PanelMaxHeight=150;this.Label=' ';this.Caption=A;this.Tooltip=A;this.Style=FCK_TOOLBARITEM_ICONTEXT;this.Enabled=true;this.Items=new Object();this._Panel=new FCKPanel();this._Panel.StyleSheet=FCKConfig.SkinPath+'fck_contextmenu.css';this._Panel.Create();this._Panel.PanelDiv.className+=' SC_Panel';this._Panel.PanelDiv.innerHTML='<table cellpadding="0" cellspacing="0" width="100%" style="TABLE-LAYOUT: fixed"><tr><td nowrap></td></tr></table>';this._ItemsHolderEl=this._Panel.PanelDiv.getElementsByTagName('TD')[0];};function FCKSpecialCombo_ItemOnMouseOver(){this.className+=' SC_ItemOver';};function FCKSpecialCombo_ItemOnMouseOut(){this.className=this.originalClass;};function FCKSpecialCombo_ItemOnClick(){this.FCKSpecialCombo._Panel.Hide();this.FCKSpecialCombo.SetLabel(this.FCKItemLabel);if (typeof(this.FCKSpecialCombo.OnSelect)=='function') this.FCKSpecialCombo.OnSelect(this.FCKItemID,this);};FCKSpecialCombo.prototype.AddItem=function(A,B,C){var D=this._ItemsHolderEl.appendChild(this._Panel.Document.createElement('DIV'));D.className=D.originalClass='SC_Item';D.innerHTML=B;D.FCKItemID=A;D.FCKItemLabel=C?C:A;D.FCKSpecialCombo=this;D.Selected=false;D.onmouseover=FCKSpecialCombo_ItemOnMouseOver;D.onmouseout=FCKSpecialCombo_ItemOnMouseOut;D.onclick=FCKSpecialCombo_ItemOnClick;this.Items[A.toString().toLowerCase()]=D;return D;};FCKSpecialCombo.prototype.SelectItem=function(A){A=A?A.toString().toLowerCase():'';var B=this.Items[A];if (B){B.className=B.originalClass='SC_ItemSelected';B.Selected=true;};};FCKSpecialCombo.prototype.DeselectAll=function(){for (var i in this.Items){this.Items[i].className=this.Items[i].originalClass='SC_Item';this.Items[i].Selected=false;};};FCKSpecialCombo.prototype.SetLabelById=function(A){A=A?A.toString().toLowerCase():'';var B=this.Items[A];this.SetLabel(B?B.FCKItemLabel:'');};FCKSpecialCombo.prototype.SetLabel=function(A){this.Label=A.length==0?' ':A;if (this._LabelEl) this._LabelEl.innerHTML=this.Label;};FCKSpecialCombo.prototype.SetEnabled=function(A){this.Enabled=A;this._OuterTable.className=A?'':'SC_FieldDisabled';};FCKSpecialCombo.prototype.Create=function(A){this._OuterTable=A.appendChild(document.createElement('TABLE'));this._OuterTable.cellPadding=0;this._OuterTable.cellSpacing=0;this._OuterTable.insertRow(-1);var B;var C;switch (this.Style){case FCK_TOOLBARITEM_ONLYICON:B='TB_ButtonType_Icon';C=false;break;case FCK_TOOLBARITEM_ONLYTEXT:B='TB_ButtonType_Text';C=false;break;case FCK_TOOLBARITEM_ICONTEXT:C=true;break;};if (this.Caption&&this.Caption.length>0&&C){var D=this._OuterTable.rows[0].insertCell(-1);D.unselectable='on';D.innerHTML=this.Caption;D.className='SC_FieldCaption';};var E=this._OuterTable.rows[0].insertCell(-1).appendChild(document.createElement('DIV'));if (C){E.className='SC_Field';E.style.width=this.FieldWidth+'px';E.innerHTML='<table width="100%" cellpadding="0" cellspacing="0" style="TABLE-LAYOUT: fixed;" unselectable="on"><tbody><tr><td class="SC_FieldLabel" unselectable="on"><label unselectable="on"> </label></td><td class="SC_FieldButton" unselectable="on"> </td></tr></tbody></table>';this._LabelEl=E.getElementsByTagName('label')[0];this._LabelEl.innerHTML=this.Label;}else{E.className='TB_Button_Off';E.innerHTML='<table cellpadding="0" cellspacing="0" style="TABLE-LAYOUT: fixed;" unselectable="on"><tbody><tr><td class="SC_FieldButton" style="border-left: none;" unselectable="on"> </td></tr></tbody></table>';E.innerHTML='<table title="'+this.Tooltip+'" class="'+B+'" cellspacing="0" cellpadding="0" border="0" unselectable="on">'+'<tr>'+'<td class="TB_Text" unselectable="on">'+this.Caption+'</td>'+'<td class="TB_ButtonArrow" unselectable="on"><img src="'+FCKConfig.SkinPath+'images/toolbar.buttonarrow.gif" width="5" height="3"></td>'+'</tr>'+'</table>';};E.SpecialCombo=this;E.onmouseover=FCKSpecialCombo_OnMouseOver;E.onmouseout=FCKSpecialCombo_OnMouseOut;E.onclick=FCKSpecialCombo_OnClick;};function FCKSpecialCombo_OnMouseOver(){if (this.SpecialCombo.Enabled){switch (this.SpecialCombo.Style){case FCK_TOOLBARITEM_ONLYICON:this.className='TB_Button_On';break;case FCK_TOOLBARITEM_ONLYTEXT:this.className='TB_Button_On';break;case FCK_TOOLBARITEM_ICONTEXT:this.className='SC_Field SC_FieldOver';break;};};};function FCKSpecialCombo_OnMouseOut(){switch (this.SpecialCombo.Style){case FCK_TOOLBARITEM_ONLYICON:this.className='TB_Button_Off';break;case FCK_TOOLBARITEM_ONLYTEXT:this.className='TB_Button_Off';break;case FCK_TOOLBARITEM_ICONTEXT:this.className='SC_Field';break;};};function FCKSpecialCombo_OnClick(e){if (e){e.stopPropagation();FCKPanelEventHandlers.OnDocumentClick(e);};if (this.SpecialCombo.Enabled){var oPanel=this.SpecialCombo._Panel;if (typeof(this.SpecialCombo.OnBeforeClick)=='function') this.SpecialCombo.OnBeforeClick(this.SpecialCombo);if (this.SpecialCombo._ItemsHolderEl.offsetHeight>this.SpecialCombo.PanelMaxHeight) oPanel.PanelDiv.style.height=this.SpecialCombo.PanelMaxHeight+'px';else oPanel.PanelDiv.style.height=this.SpecialCombo._ItemsHolderEl.offsetHeight+'px';oPanel.PanelDiv.style.width=this.SpecialCombo.PanelWidth+'px';if (FCKBrowserInfo.IsGecko) oPanel.PanelDiv.style.overflow='-moz-scrollbars-vertical';oPanel.Show(0,this.offsetHeight,this,null,this.SpecialCombo.PanelMaxHeight,true);};return false;};
+var FCKToolbarSpecialCombo=function(){this.SourceView=false;this.ContextSensitive=true;};function FCKToolbarSpecialCombo_OnSelect(itemId,item){this.Command.Execute(itemId,item);};FCKToolbarSpecialCombo.prototype.CreateInstance=function(A){this._Combo=new FCKSpecialCombo(this.GetLabel());this._Combo.FieldWidth=this.FieldWidth!=null?this.FieldWidth:100;this._Combo.PanelWidth=this.PanelWidth!=null?this.PanelWidth:150;this._Combo.PanelMaxHeight=this.PanelMaxHeight!=null?this.PanelMaxHeight:150;this._Combo.Tooltip=this.Tooltip;this._Combo.Style=this.Style;this.CreateItems(this._Combo);this._Combo.Create(A.DOMRow.insertCell(-1));this._Combo.Command=this.Command;this._Combo.OnSelect=FCKToolbarSpecialCombo_OnSelect;};function FCKToolbarSpecialCombo_RefreshActiveItems(combo,value){combo.DeselectAll();combo.SelectItem(value);combo.SetLabelById(value);};FCKToolbarSpecialCombo.prototype.RefreshState=function(){var A;var B=this.Command.GetState();if (B!=FCK_TRISTATE_DISABLED){A=FCK_TRISTATE_ON;if (this.RefreshActiveItems) this.RefreshActiveItems(this._Combo,B);else FCKToolbarSpecialCombo_RefreshActiveItems(this._Combo,B);}else A=FCK_TRISTATE_DISABLED;if (A==this.State) return;if (A==FCK_TRISTATE_DISABLED){this._Combo.DeselectAll();this._Combo.SetLabel('');};this.State=A;this._Combo.SetEnabled(A!=FCK_TRISTATE_DISABLED);};FCKToolbarSpecialCombo.prototype.Enable=function(){this.RefreshState();};FCKToolbarSpecialCombo.prototype.Disable=function(){this.State=FCK_TRISTATE_DISABLED;this._Combo.DeselectAll();this._Combo.SetLabel('');this._Combo.SetEnabled(false);}
+var FCKToolbarFontsCombo=function(A,B){this.Command=FCKCommands.GetCommand('FontName');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;};FCKToolbarFontsCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarFontsCombo.prototype.GetLabel=function(){return FCKLang.Font;};FCKToolbarFontsCombo.prototype.CreateItems=function(A){var B=FCKConfig.FontNames.split(';');for (var i=0;i<B.length;i++) this._Combo.AddItem(B[i],'<span style="font-family: \''+B[i]+'\'; font-size: 12px;">'+B[i]+'</span>');}
+var FCKToolbarFontSizeCombo=function(A,B){this.Command=FCKCommands.GetCommand('FontSize');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;};FCKToolbarFontSizeCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarFontSizeCombo.prototype.GetLabel=function(){return FCKLang.FontSize;};FCKToolbarFontSizeCombo.prototype.CreateItems=function(A){A.FieldWidth=70;var B=FCKConfig.FontSizes.split(';');for (var i=0;i<B.length;i++){var C=B[i].split('/');this._Combo.AddItem(C[0],'<font size="'+C[0]+'">'+C[1]+'</font>',C[1]);};}
+var FCKToolbarFontFormatCombo=function(A,B){this.Command=FCKCommands.GetCommand('FontFormat');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;this.PanelWidth=190;};FCKToolbarFontFormatCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarFontFormatCombo.prototype.GetLabel=function(){return FCKLang.FontFormat;};FCKToolbarFontFormatCombo.prototype.CreateItems=function(A){var B=FCKLang['FontFormats'].split(';');var C={p:B[0],pre:B[1],address:B[2],h1:B[3],h2:B[4],h3:B[5],h4:B[6],h5:B[7],h6:B[8],div:B[9]};var D=FCKConfig.FontFormats.split(';');for (var i=0;i<D.length;i++){if (D[i]=='div'&&FCKBrowserInfo.IsGecko) continue;this._Combo.AddItem(D[i],'<'+D[i]+'>'+C[D[i]]+'</'+D[i]+'>',C[D[i]]);};}
+var FCKToolbarStyleCombo=function(A,B){this.Command=FCKCommands.GetCommand('Style');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;};FCKToolbarStyleCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarStyleCombo.prototype.GetLabel=function(){return FCKLang.Style;};FCKToolbarStyleCombo.prototype.CreateItems=function(A){FCKTools.AppendStyleSheet(A._Panel.Document,FCKConfig.EditorAreaCSS);if (!FCKBrowserInfo.IsGecko) A.OnBeforeClick=this.RefreshVisibleItems;for (var s in this.Command.Styles){var B=this.Command.Styles[s];var C;if (B.IsObjectElement) C=A.AddItem(s,s);else C=A.AddItem(s,B.GetOpenerTag()+s+B.GetCloserTag());C.Style=B;};};FCKToolbarStyleCombo.prototype.RefreshActiveItems=function(A){A.DeselectAll();var B=this.Command.GetActiveStyles();if (B.length>0){for (var i=0;i<B.length;i++) A.SelectItem(B[i].Name);A.SetLabelById(B[0].Name);}else A.SetLabel('');};FCKToolbarStyleCombo.prototype.RefreshVisibleItems=function(A){if (FCKSelection.GetType()=='Control') var B=FCKSelection.GetSelectedElement().tagName;for (var i in A.Items){var C=A.Items[i];if ((B&&C.Style.Element==B)||(!B&&!C.Style.IsObjectElement)) C.style.display='';else C.style.display='none';};}
+var FCKToolbarPanelButton=function(A,B,C,D){this.Command=FCKCommands.GetCommand(A);this.Label=B?B:A;this.Tooltip=C?C:(B?B:A);this.Style=D?D:FCK_TOOLBARITEM_ONLYICON;this.State=FCK_UNKNOWN;};FCKToolbarPanelButton.prototype.Click=function(e){if (e){e.stopPropagation();FCKPanelEventHandlers.OnDocumentClick(e);};if (this.State!=FCK_TRISTATE_DISABLED){this.Command.Execute(0,this.DOMDiv.offsetHeight,this.DOMDiv);};return false;};FCKToolbarPanelButton.prototype.CreateInstance=function(A){this.DOMDiv=document.createElement('div');this.DOMDiv.className='TB_Button_Off';this.DOMDiv.FCKToolbarButton=this;var B='<table title="'+this.Tooltip+'" cellspacing="0" cellpadding="0" border="0" unselectable="on">'+'<tr>';if (this.Style!=FCK_TOOLBARITEM_ONLYTEXT) B+='<td class="TB_Icon" unselectable="on"><img src="'+FCKConfig.SkinPath+'toolbar/'+this.Command.Name.toLowerCase()+'.gif" width="21" height="21" unselectable="on"></td>';if (this.Style!=FCK_TOOLBARITEM_ONLYICON) B+='<td class="TB_Text" unselectable="on" nowrap>'+this.Label+'</td>';B+='<td class="TB_ButtonArrow" unselectable="on"><img src="'+FCKConfig.SkinPath+'images/toolbar.buttonarrow.gif" width="5" height="3"></td>'+'</tr>'+'</table>';this.DOMDiv.innerHTML=B;var C=A.DOMRow.insertCell(-1);C.appendChild(this.DOMDiv);this.RefreshState();};FCKToolbarPanelButton.prototype.RefreshState=FCKToolbarButton.prototype.RefreshState;FCKToolbarPanelButton.prototype.Enable=FCKToolbarButton.prototype.Enable;FCKToolbarPanelButton.prototype.Disable=FCKToolbarButton.prototype.Disable;
+var FCKToolbarItems=new Object();FCKToolbarItems.LoadedItems=new Object();FCKToolbarItems.RegisterItem=function(A,B){this.LoadedItems[A]=B;};FCKToolbarItems.GetItem=function(A){var B=FCKToolbarItems.LoadedItems[A];if (B) return B;switch (A){case 'Source':B=new FCKToolbarButton('Source',FCKLang.Source,null,FCK_TOOLBARITEM_ICONTEXT,true,true);break;case 'DocProps':B=new FCKToolbarButton('DocProps',FCKLang.DocProps);break;case 'Templates':B=new FCKToolbarButton('Templates',FCKLang.Templates);break;case 'Save':B=new FCKToolbarButton('Save',FCKLang.Save,null,null,true);break;case 'NewPage':B=new FCKToolbarButton('NewPage',FCKLang.NewPage,null,null,true);break;case 'Preview':B=new FCKToolbarButton('Preview',FCKLang.Preview,null,null,true);break;case 'About':B=new FCKToolbarButton('About',FCKLang.About,null,null,true);break;case 'Cut':B=new FCKToolbarButton('Cut',FCKLang.Cut,null,null,false,true);break;case 'Copy':B=new FCKToolbarButton('Copy',FCKLang.Copy,null,null,false,true);break;case 'Paste':B=new FCKToolbarButton('Paste',FCKLang.Paste,null,null,false,true);break;case 'PasteText':B=new FCKToolbarButton('PasteText',FCKLang.PasteText,null,null,false,true);break;case 'PasteWord':B=new FCKToolbarButton('PasteWord',FCKLang.PasteWord,null,null,false,true);break;case 'Print':B=new FCKToolbarButton('Print',FCKLang.Print,null,null,false,true);break;case 'SpellCheck':B=new FCKToolbarButton('SpellCheck',FCKLang.SpellCheck);break;case 'Undo':B=new FCKToolbarButton('Undo',FCKLang.Undo,null,null,false,true);break;case 'Redo':B=new FCKToolbarButton('Redo',FCKLang.Redo,null,null,false,true);break;case 'SelectAll':B=new FCKToolbarButton('SelectAll',FCKLang.SelectAll);break;case 'RemoveFormat':B=new FCKToolbarButton('RemoveFormat',FCKLang.RemoveFormat,null,null,false,true);break;case 'Bold':B=new FCKToolbarButton('Bold',FCKLang.Bold,null,null,false,true);break;case 'Italic':B=new FCKToolbarButton('Italic',FCKLang.Italic,null,null,false,true);break;case 'Underline':B=new FCKToolbarButton('Underline',FCKLang.Underline,null,null,false,true);break;case 'StrikeThrough':B=new FCKToolbarButton('StrikeThrough',FCKLang.StrikeThrough,null,null,false,true);break;case 'Subscript':B=new FCKToolbarButton('Subscript',FCKLang.Subscript,null,null,false,true);break;case 'Superscript':B=new FCKToolbarButton('Superscript',FCKLang.Superscript,null,null,false,true);break;case 'OrderedList':B=new FCKToolbarButton('InsertOrderedList',FCKLang.NumberedListLbl,FCKLang.NumberedList,null,false,true);break;case 'UnorderedList':B=new FCKToolbarButton('InsertUnorderedList',FCKLang.BulletedListLbl,FCKLang.BulletedList,null,false,true);break;case 'Outdent':B=new FCKToolbarButton('Outdent',FCKLang.DecreaseIndent,null,null,false,true);break;case 'Indent':B=new FCKToolbarButton('Indent',FCKLang.IncreaseIndent,null,null,false,true);break;case 'Link':B=new FCKToolbarButton('Link',FCKLang.InsertLinkLbl,FCKLang.InsertLink,null,false,true);break;case 'Unlink':B=new FCKToolbarButton('Unlink',FCKLang.RemoveLink,null,null,false,true);break;case 'Anchor':B=new FCKToolbarButton('Anchor',FCKLang.Anchor);break;case 'Image':B=new FCKToolbarButton('Image',FCKLang.InsertImageLbl,FCKLang.InsertImage);break;case 'Flash':B=new FCKToolbarButton('Flash',FCKLang.InsertFlashLbl,FCKLang.InsertFlash);break;case 'Table':B=new FCKToolbarButton('Table',FCKLang.InsertTableLbl,FCKLang.InsertTable);break;case 'SpecialChar':B=new FCKToolbarButton('SpecialChar',FCKLang.InsertSpecialCharLbl,FCKLang.InsertSpecialChar);break;case 'Smiley':B=new FCKToolbarButton('Smiley',FCKLang.InsertSmileyLbl,FCKLang.InsertSmiley);break;case 'PageBreak':B=new FCKToolbarButton('PageBreak',FCKLang.PageBreakLbl,FCKLang.PageBreak);break;case 'UniversalKey':B=new FCKToolbarButton('UniversalKey',FCKLang.UniversalKeyboard);break;case 'Rule':B=new FCKToolbarButton('InsertHorizontalRule',FCKLang.InsertLineLbl,FCKLang.InsertLine,null,false,true);break;case 'JustifyLeft':B=new FCKToolbarButton('JustifyLeft',FCKLang.LeftJustify,null,null,false,true);break;case 'JustifyCenter':B=new FCKToolbarButton('JustifyCenter',FCKLang.CenterJustify,null,null,false,true);break;case 'JustifyRight':B=new FCKToolbarButton('JustifyRight',FCKLang.RightJustify,null,null,false,true);break;case 'JustifyFull':B=new FCKToolbarButton('JustifyFull',FCKLang.BlockJustify,null,null,false,true);break;case 'Style':B=new FCKToolbarStyleCombo();break;case 'FontName':B=new FCKToolbarFontsCombo();break;case 'FontSize':B=new FCKToolbarFontSizeCombo();break;case 'FontFormat':B=new FCKToolbarFontFormatCombo();break;case 'TextColor':B=new FCKToolbarPanelButton('TextColor',FCKLang.TextColor);break;case 'BGColor':B=new FCKToolbarPanelButton('BGColor',FCKLang.BGColor);break;case 'Find':B=new FCKToolbarButton('Find',FCKLang.Find);break;case 'Replace':B=new FCKToolbarButton('Replace',FCKLang.Replace);break;case 'Form':B=new FCKToolbarButton('Form',FCKLang.Form);break;case 'Checkbox':B=new FCKToolbarButton('Checkbox',FCKLang.Checkbox);break;case 'Radio':B=new FCKToolbarButton('Radio',FCKLang.RadioButton);break;case 'TextField':B=new FCKToolbarButton('TextField',FCKLang.TextField);break;case 'Textarea':B=new FCKToolbarButton('Textarea',FCKLang.Textarea);break;case 'HiddenField':B=new FCKToolbarButton('HiddenField',FCKLang.HiddenField);break;case 'Button':B=new FCKToolbarButton('Button',FCKLang.Button);break;case 'Select':B=new FCKToolbarButton('Select',FCKLang.SelectionField);break;case 'ImageButton':B=new FCKToolbarButton('ImageButton',FCKLang.ImageButton);break;default:alert(FCKLang.UnknownToolbarItem.replace(/%1/g,A));return null;};FCKToolbarItems.LoadedItems[A]=B;return B;}
+var FCKToolbar=function(){this.Items=new Array();var e=this.DOMTable=document.createElement('table');e.className='TB_Toolbar';e.style.styleFloat=e.style.cssFloat=FCKLang.Dir=='rtl'?'right':'left';e.cellPadding=0;e.cellSpacing=0;e.border=0;this.DOMRow=e.insertRow(-1);var A=this.DOMRow.insertCell(-1);A.className='TB_Start';A.innerHTML='<img src="'+FCKConfig.SkinPath+'images/toolbar.start.gif" width="7" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">';FCKToolbarSet.DOMElement.appendChild(e);};FCKToolbar.prototype.AddItem=function(A){this.Items[this.Items.length]=A;A.CreateInstance(this);};FCKToolbar.prototype.AddSeparator=function(){var A=this.DOMRow.insertCell(-1);A.unselectable='on';A.innerHTML='<img src="'+FCKConfig.SkinPath+'images/toolbar.separator.gif" width="5" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">';};FCKToolbar.prototype.AddTerminator=function(){var A=this.DOMRow.insertCell(-1);A.className='TB_End';A.innerHTML='<img src="'+FCKConfig.SkinPath+'images/toolbar.end.gif" width="12" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">';};
+var FCKToolbarBreak=function(){var A=document.createElement('div');A.style.clear=A.style.cssFloat=FCKLang.Dir=='rtl'?'right':'left';FCKToolbarSet.DOMElement.appendChild(A);}
+var FCKToolbarSet=FCK.ToolbarSet=new Object();document.getElementById('ExpandHandle').title=FCKLang.ToolbarExpand;document.getElementById('CollapseHandle').title=FCKLang.ToolbarCollapse;FCKToolbarSet.Toolbars=new Array();FCKToolbarSet.ItemsWysiwygOnly=new Array();FCKToolbarSet.ItemsContextSensitive=new Array();FCKToolbarSet.Expand=function(){document.getElementById('Collapsed').style.display='none';document.getElementById('Expanded').style.display='';if (!FCKBrowserInfo.IsIE){window.setTimeout("window.onresize()",1);};};FCKToolbarSet.Collapse=function(){document.getElementById('Collapsed').style.display='';document.getElementById('Expanded').style.display='none';if (!FCKBrowserInfo.IsIE){window.setTimeout("window.onresize()",1);};};FCKToolbarSet.Restart=function(){if (!FCKConfig.ToolbarCanCollapse||FCKConfig.ToolbarStartExpanded) this.Expand();else this.Collapse();document.getElementById('CollapseHandle').style.display=FCKConfig.ToolbarCanCollapse?'':'none';};FCKToolbarSet.Load=function(A){this.DOMElement=document.getElementById('eToolbar');var B=FCKConfig.ToolbarSets[A];if (!B){alert(FCKLang.UnknownToolbarSet.replace(/%1/g,A));return;};this.Toolbars=new Array();for (var x=0;x<B.length;x++){var C=B[x];var D;if (typeof(C)=='string'){if (C=='/') D=new FCKToolbarBreak();}else{D=new FCKToolbar();for (var j=0;j<C.length;j++){var E=C[j];if (E=='-') D.AddSeparator();else{var F=FCKToolbarItems.GetItem(E);if (F){D.AddItem(F);if (!F.SourceView) this.ItemsWysiwygOnly[this.ItemsWysiwygOnly.length]=F;if (F.ContextSensitive) this.ItemsContextSensitive[this.ItemsContextSensitive.length]=F;};};};D.AddTerminator();};this.Toolbars[this.Toolbars.length]=D;};};FCKToolbarSet.RefreshModeState=function(){if (FCK.EditMode==FCK_EDITMODE_WYSIWYG){for (var i=0;i<FCKToolbarSet.ItemsWysiwygOnly.length;i++) FCKToolbarSet.ItemsWysiwygOnly[i].Enable();FCKToolbarSet.RefreshItemsState();}else{FCKToolbarSet.RefreshItemsState();for (var i=0;i<FCKToolbarSet.ItemsWysiwygOnly.length;i++) FCKToolbarSet.ItemsWysiwygOnly[i].Disable();};};FCKToolbarSet.RefreshItemsState=function(){for (var i=0;i<FCKToolbarSet.ItemsContextSensitive.length;i++) FCKToolbarSet.ItemsContextSensitive[i].RefreshState();};
+var FCKDialog=new Object();FCKDialog.OpenDialog=function(A,B,C,D,E,F,G,H){var I=new Object();I.Title=B;I.Page=C;I.Editor=window;I.CustomValue=F;var J=FCKConfig.BasePath+'fckdialog.html';this.Show(I,A,J,D,E,G,H);};
+FCKDialog.Show=function(A,B,C,D,E,F,G){var H=(FCKConfig.ScreenHeight-E)/2;var I=(FCKConfig.ScreenWidth-D)/2;var J="location=no,menubar=no,toolbar=no,dependent=yes,dialog=yes,minimizable=no,modal=yes,alwaysRaised=yes"+",resizable="+(G?'yes':'no')+",width="+D+",height="+E+",top="+H+",left="+I;if (!F) F=window;var K=F.open('','FCKeditorDialog_'+B,J,true);K.moveTo(I,H);K.resizeTo(D,E);K.focus();K.location.href=C;K.dialogArguments=A;F.FCKLastDialogInfo=A;this.Window=K;try{window.top.captureEvents(Event.CLICK|Event.MOUSEDOWN|Event.MOUSEUP|Event.FOCUS);window.top.parent.addEventListener('mousedown',this.CheckFocus,true);window.top.parent.addEventListener('mouseup',this.CheckFocus,true);window.top.parent.addEventListener('click',this.CheckFocus,true);window.top.parent.addEventListener('focus',this.CheckFocus,true);}catch (e){};};FCKDialog.CheckFocus=function(){if (typeof(FCKDialog)!="object") return false;if (FCKDialog.Window&&!FCKDialog.Window.closed) FCKDialog.Window.focus();else{try{window.top.releaseEvents(Event.CLICK|Event.MOUSEDOWN|Event.MOUSEUP|Event.FOCUS);window.top.parent.removeEventListener('onmousedown',FCKDialog.CheckFocus,true);window.top.parent.removeEventListener('mouseup',FCKDialog.CheckFocus,true);window.top.parent.removeEventListener('click',FCKDialog.CheckFocus,true);window.top.parent.removeEventListener('onfocus',FCKDialog.CheckFocus,true);}catch (e){};};return false;};
+var FCKContextMenuItem=function(A,B,C,D){this.ContextMenu=A;this.Command=FCKCommands.GetCommand(B);this.Label=C?C:B;this.HasIcon=D?true:false;};function FCKContextMenuItem_OnMouseOver(){if (this.className!='CM_Disabled') this.className='CM_Over';};function FCKContextMenuItem_OnMouseOut(){if (this.className!='CM_Disabled') this.className='CM_Option';};function FCKContextMenuItem_OnClick(){if (this.className!='CM_Disabled'){this.FCKContextMenuItem.ContextMenu.Hide();this.FCKContextMenuItem.Command.Execute();};return false;};FCKContextMenuItem.prototype.CreateTableRow=function(A){this._Row=A.insertRow(-1);this._Row.className='CM_Disabled';this._Row.FCKContextMenuItem=this;this._Row.onmouseover=FCKContextMenuItem_OnMouseOver;this._Row.onmouseout=FCKContextMenuItem_OnMouseOut;this._Row.onclick=FCKContextMenuItem_OnClick;var B=this._Row.insertCell(-1);B.className='CM_Icon';if (this.HasIcon) B.innerHTML='<img alt="" src="'+FCKConfig.SkinPath+'toolbar/'+this.Command.Name.toLowerCase()+'.gif" width="21" height="20" unselectable="on">';B=this._Row.insertCell(-1);B.className='CM_Label';B.unselectable='on';B.noWrap=true;B.innerHTML=this.Label;};FCKContextMenuItem.prototype.SetVisible=function(A){this._Row.style.display=A?'':'none';};FCKContextMenuItem.prototype.RefreshState=function(){switch (this.Command.GetState()){case FCK_TRISTATE_ON:case FCK_TRISTATE_OFF:this._Row.className='CM_Option';break;default:this._Row.className='CM_Disabled';break;};};
+var FCKContextMenuSeparator=function(){};FCKContextMenuSeparator.prototype.CreateTableRow=function(A){this._Row=A.insertRow(-1);this._Row.className='CM_Separator';var B=this._Row.insertCell(-1);B.className='CM_Icon';B=this._Row.insertCell(-1);B.className='CM_Label';B.innerHTML='<div></div>';};FCKContextMenuSeparator.prototype.SetVisible=function(A){this._Row.style.display=A?'':'none';};FCKContextMenuSeparator.prototype.RefreshState=function(){};
+var FCKContextMenuGroup=function(A,B,C,D,E){this.IsVisible=true;this.Items=new Array();if (A) this.Add(new FCKContextMenuSeparator());if (B&&C&&D) this.Add(new FCKContextMenuItem(B,C,D,E));this.ValidationFunction=null;};FCKContextMenuGroup.prototype.Add=function(A){this.Items[this.Items.length]=A;};FCKContextMenuGroup.prototype.CreateTableRows=function(A){for (var i=0;i<this.Items.length;i++){this.Items[i].CreateTableRow(A);};};FCKContextMenuGroup.prototype.SetVisible=function(A){for (var i=0;i<this.Items.length;i++){this.Items[i].SetVisible(A);};this.IsVisible=A;};FCKContextMenuGroup.prototype.RefreshState=function(){if (!this.IsVisible) return;for (var i=0;i<this.Items.length;i++){this.Items[i].RefreshState();};}
+var FCKContextMenu=new Object();FCKContextMenu._IsLoaded=false;FCKContextMenu.Reload=function(){this._Div=this._Document.createElement('DIV');this._Div.className='CM_ContextMenu';this._Div.style.position='absolute';this._Div.style.visibility='hidden';this._Document.body.appendChild(this._Div);var A=this._Document.createElement('TABLE');A.cellSpacing=0;A.cellPadding=0;A.border=0;this._Div.appendChild(A);this.Groups=new Object();for (var i=0;i<FCKConfig.ContextMenu.length;i++){var B=FCKConfig.ContextMenu[i];this.Groups[B]=this._GetGroup(B);this.Groups[B].CreateTableRows(A);};this._IsLoaded=true;};FCKContextMenu._GetGroup=function(A){var B;switch (A){case 'Generic':B=new FCKContextMenuGroup();B.Add(new FCKContextMenuItem(this,'Cut',FCKLang.Cut,true));B.Add(new FCKContextMenuItem(this,'Copy',FCKLang.Copy,true));B.Add(new FCKContextMenuItem(this,'Paste',FCKLang.Paste,true));break;case 'Link':B=new FCKContextMenuGroup();B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'Link',FCKLang.EditLink,true));B.Add(new FCKContextMenuItem(this,'Unlink',FCKLang.RemoveLink,true));break;case 'TableCell':B=new FCKContextMenuGroup();B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableInsertRow',FCKLang.InsertRow,true));B.Add(new FCKContextMenuItem(this,'TableDeleteRows',FCKLang.DeleteRows,true));B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableInsertColumn',FCKLang.InsertColumn,true));B.Add(new FCKContextMenuItem(this,'TableDeleteColumns',FCKLang.DeleteColumns,true));B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableInsertCell',FCKLang.InsertCell,true));B.Add(new FCKContextMenuItem(this,'TableDeleteCells',FCKLang.DeleteCells,true));B.Add(new FCKContextMenuItem(this,'TableMergeCells',FCKLang.MergeCells,true));B.Add(new FCKContextMenuItem(this,'TableSplitCell',FCKLang.SplitCell,true));B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableCellProp',FCKLang.CellProperties,true));B.Add(new FCKContextMenuItem(this,'TableProp',FCKLang.TableProperties,true));break;case 'Table':return new FCKContextMenuGroup(true,this,'Table',FCKLang.TableProperties,true);case 'Image':return new FCKContextMenuGroup(true,this,'Image',FCKLang.ImageProperties,true);case 'Flash':return new FCKContextMenuGroup(true,this,'Flash',FCKLang.FlashProperties,true);case 'Form':return new FCKContextMenuGroup(true,this,'Form',FCKLang.FormProp,true);case 'Checkbox':return new FCKContextMenuGroup(true,this,'Checkbox',FCKLang.CheckboxProp,true);case 'Radio':return new FCKContextMenuGroup(true,this,'Radio',FCKLang.RadioButtonProp,true);case 'TextField':return new FCKContextMenuGroup(true,this,'TextField',FCKLang.TextFieldProp,true);case 'HiddenField':return new FCKContextMenuGroup(true,this,'HiddenField',FCKLang.HiddenFieldProp,true);case 'ImageButton':return new FCKContextMenuGroup(true,this,'ImageButton',FCKLang.ImageButtonProp,true);case 'Button':return new FCKContextMenuGroup(true,this,'Button',FCKLang.ButtonProp,true);case 'Select':return new FCKContextMenuGroup(true,this,'Select',FCKLang.SelectionFieldProp,true);case 'Textarea':return new FCKContextMenuGroup(true,this,'Textarea',FCKLang.TextareaProp,true);case 'BulletedList':return new FCKContextMenuGroup(true,this,'BulletedList',FCKLang.BulletedListProp,true);case 'NumberedList':return new FCKContextMenuGroup(true,this,'NumberedList',FCKLang.NumberedListProp,true);case 'Anchor':return new FCKContextMenuGroup(true,this,'Anchor',FCKLang.AnchorProp,true);};return B;};FCKContextMenu.RefreshState=function(){var A=FCKSelection.GetSelectedElement();var B;if (A) B=A.tagName;if (this.Groups['Link']) this.Groups['Link'].SetVisible(FCK.GetNamedCommandState('Unlink')!=FCK_TRISTATE_DISABLED);if (this.Groups['TableCell']) this.Groups['TableCell'].SetVisible(B!='TABLE'&&FCKSelection.HasAncestorNode('TABLE'));if (this.Groups['Table']) this.Groups['Table'].SetVisible(B=='TABLE');if (this.Groups['Image']) this.Groups['Image'].SetVisible(B=='IMG'&&!A.getAttribute('_fckfakelement'));if (this.Groups['Flash']) this.Groups['Flash'].SetVisible(B=='IMG'&&A.getAttribute('_fckflash'));if (this.Groups['Anchor']) this.Groups['Anchor'].SetVisible(B=='IMG'&&A.getAttribute('_fckanchor'));if (this.Groups['BulletedList']) this.Groups['BulletedList'].SetVisible(FCKSelection.HasAncestorNode('UL'));if (this.Groups['NumberedList']) this.Groups['NumberedList'].SetVisible(FCKSelection.HasAncestorNode('OL'));if (this.Groups['Select']) this.Groups['Select'].SetVisible(B=='SELECT');if (this.Groups['Textarea']) this.Groups['Textarea'].SetVisible(B=='TEXTAREA');if (this.Groups['Form']) this.Groups['Form'].SetVisible(FCKSelection.HasAncestorNode('FORM'));if (this.Groups['Checkbox']) this.Groups['Checkbox'].SetVisible(B=='INPUT'&&A.type=='checkbox');if (this.Groups['Radio']) this.Groups['Radio'].SetVisible(B=='INPUT'&&A.type=='radio');if (this.Groups['TextField']) this.Groups['TextField'].SetVisible(B=='INPUT'&&(A.type=='text'||A.type=='password'));if (this.Groups['HiddenField']) this.Groups['HiddenField'].SetVisible(B=='INPUT'&&A.type=='hidden');if (this.Groups['ImageButton']) this.Groups['ImageButton'].SetVisible(B=='INPUT'&&A.type=='image');if (this.Groups['Button']) this.Groups['Button'].SetVisible(B=='INPUT'&&(A.type=='button'||A.type=='submit'||A.type=='reset'));for (var o in this.Groups){this.Groups[o].RefreshState();};};
+FCKTools.AppendStyleSheet(window.parent.document,FCKConfig.SkinPath+'fck_contextmenu.css');FCKContextMenu.Show=function(x,y){if (!this._Document){this._Document=window.parent.document;};if (!this._IsLoaded){this.Reload();this._Div.style.zIndex=10000;this._Div.oncontextmenu=function() { return false;};};this.RefreshState();var A=FCKTools.GetElementPosition(FCK.EditorWindow.frameElement);var B=FCKTools.GetElementPosition(window.frameElement);x+=A.X+B.X;y+=A.Y+B.Y;var C=x+this._Div.offsetWidth-this._Div.ownerDocument.defaultView.innerWidth;var D=y+this._Div.offsetHeight-this._Div.ownerDocument.defaultView.innerHeight;if (C>0) x-=this._Div.offsetWidth;if (D>0) y-=this._Div.offsetHeight;this._Div.style.left=x+'px';this._Div.style.top=y+'px';var E=FCK.EditorWindow;while (E){E.document.addEventListener('click',FCKContextMenu._OnDocumentClick,false);if (E!=E.parent) E=E.parent;else if (E.opener==null) E=E.opener;else break;};this._Div.style.visibility='';};FCKContextMenu._OnDocumentClick=function(A){var e=A.target;while (e){if (e==FCKContextMenu._Div) return;e=e.parentNode;};FCKContextMenu.Hide();};FCKContextMenu.Hide=function(){this._Div.style.visibility='hidden';this._Div.style.left=this._Div.style.top='1px';}
+if (!FCKConfig.PluginsPath.endsWith('/')) FCKConfig.PluginsPath+='/';var FCKPlugin=function(A,B,C){this.Name=A;this.BasePath=C?C:FCKConfig.PluginsPath;this.Path=this.BasePath+A+'/';if (!B||B.length==0) this.AvailableLangs=new Array();else this.AvailableLangs=B.split(',');};FCKPlugin.prototype.Load=function(){if (this.AvailableLangs.length>0){var A;if (this.AvailableLangs.indexOf(FCKLanguageManager.ActiveLanguage.Code)>=0) A=FCKLanguageManager.ActiveLanguage.Code;else A=this.AvailableLangs[0];FCKScriptLoader.AddScript(this.Path+'lang/'+A+'.js');};FCKScriptLoader.AddScript(this.Path+'fckplugin.js');}
+var FCKPlugins=FCK.Plugins=new Object();FCKPlugins.ItemsCount=0;FCKPlugins.Loaded=false;FCKPlugins.Items=new Object();for (var i=0;i<FCKConfig.Plugins.Items.length;i++){var oItem=FCKConfig.Plugins.Items[i];FCKPlugins.Items[oItem[0]]=new FCKPlugin(oItem[0],oItem[1],oItem[2]);FCKPlugins.ItemsCount++;};FCKPlugins.Load=function(){for (var s in this.Items) this.Items[s].Load();this.Loaded=true;FCKPlugins.Load=null;}
+if (FCKLang&&window.document.dir.toLowerCase()!=FCKLang.Dir.toLowerCase()) window.document.dir=FCKLang.Dir;if (FCKConfig.ForcePasteAsPlainText) FCK.Events.AttachEvent("OnPaste",FCK.Paste);if (FCKPlugins.ItemsCount>0){FCKScriptLoader.OnEmpty=CompleteLoading;FCKPlugins.Load();}else CompleteLoading();function CompleteLoading(){FCKToolbarSet.Name=FCKURLParams['Toolbar']||'Default';FCKToolbarSet.Load(FCKToolbarSet.Name);FCKToolbarSet.Restart();FCK.AttachToOnSelectionChange(FCKToolbarSet.RefreshItemsState);FCK.SetStatus(FCK_STATUS_COMPLETE);if (typeof(window.parent.FCKeditor_OnComplete)=='function') window.parent.FCKeditor_OnComplete(FCK);}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_1.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_1.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_1.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,27 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * This file has been compacted for best loading performance.
+ */
+var FCKDebug=new Object();if (FCKConfig.Debug){FCKDebug.Output=function(A,B){if (!FCKConfig.Debug) return;if (A!=null&&isNaN(A)) A=A.replace(/</g,"<");if (!this.DebugWindow||this.DebugWindow.closed) this.DebugWindow=window.open('fckdebug.html','FCKeditorDebug','menubar=no,scrollbars=no,resizable=yes,location=no,toolbar=no,width=600,height=500',true);if (this.DebugWindow.Output) this.DebugWindow.Output(A,B);};}else FCKDebug.Output=function() {};
+var FCKTools=new Object();FCKTools.GetLinkedFieldValue=function(){return FCK.LinkedField.value;};FCKTools.AttachToLinkedFieldFormSubmit=function(A){var B=FCK.LinkedField.form;if (!B) return;if (FCKBrowserInfo.IsIE) B.attachEvent("onsubmit",A);else B.addEventListener('submit',A,true);if (!B.updateFCKeditor) B.updateFCKeditor=new Array();B.updateFCKeditor[B.updateFCKeditor.length]=A;if (!B.originalSubmit&&(typeof(B.submit)=='function'||(!B.submit.tagName&&!B.submit.length))){B.originalSubmit=B.submit;B.submit=FCKTools_SubmitReplacer;};};function FCKTools_SubmitReplacer(){if (this.updateFCKeditor){for (var i=0;i<this.updateFCKeditor.length;i++) this.updateFCKeditor[i]();};this.originalSubmit();};FCKTools.AddSelectOption=function(A,B,C,D){var E=A.createElement("OPTION");E.text=C;E.value=D;B.options.add(E);return E;};FCKTools.RemoveAllSelectOptions=function(A){for (var i=A.options.length-1;i>=0;i--){A.options.remove(i);};};FCKTools.SelectNoCase=function(A,B,C){var D=B.toString().toLowerCase();for (var i=0;i<A.options.length;i++){if (D==A.options[i].value.toLowerCase()){A.selectedIndex=i;return;};};if (C!=null) FCKTools.SelectNoCase(A,C);};FCKTools.HTMLEncode=function(A){if (!A) return '';A=A.replace(/&/g,"&");A=A.replace(/"/g,""");A=A.replace(/</g,"<");A=A.replace(/>/g,">");A=A.replace(/'/g,"'");return A;};FCKTools.GetResultingArray=function(A,B){switch (typeof(A)){case "string":return A.split(B);case "function":return B();default:if (isArray(A)) return A;else return new Array();};};FCKTools.GetElementPosition=function(A){var c={ X:0,Y:0 };while (A){c.X+=A.offsetLeft;c.Y+=A.offsetTop;A=A.offsetParent;};return c;};FCKTools.GetElementAscensor=function(A,B){var e=A;var C=","+B.toUpperCase()+",";while (e){if (C.indexOf(","+e.nodeName.toUpperCase()+",")!=-1) return e;e=e.parentNode;};return null;};FCKTools.Pause=function(A){var B=new Date();while (true){var C=new Date();if (A<C-B) return;};};FCKTools.ConvertStyleSizeToHtml=function(A){return A.endsWith('%')?A:parseInt(A);};FCKTools.ConvertHtmlSizeToStyle=function(A){return A.endsWith('%')?A:(A+'px');};
+FCKTools.AppendStyleSheet=function(A,B){return A.createStyleSheet(B);};FCKTools.ClearElementAttributes=function(A){A.clearAttributes();};FCKTools.GetAllChildrenIds=function(A){var B=new Array();for (var i=0;i<A.all.length;i++){var C=A.all[i].id;if (C&&C.length>0) B[B.length]=C;};return B;};FCKTools.RemoveOuterTags=function(e){e.insertAdjacentHTML('beforeBegin',e.innerHTML);e.parentNode.removeChild(e);};FCKTools.CreateXmlObject=function(A){var B;switch (A){case 'XmlHttp':B=['MSXML2.XmlHttp','Microsoft.XmlHttp'];break;case 'DOMDocument':B=['MSXML2.DOMDocument','Microsoft.XmlDom'];break;};for (var i=0;i<2;i++){try { return new ActiveXObject(B[i]);}catch (e){};};if (FCKLang.NoActiveX){alert(FCKLang.NoActiveX);FCKLang.NoActiveX=null;};}
+var FCKRegexLib=new Object();FCKRegexLib.AposEntity=/'/gi;FCKRegexLib.ObjectElements=/^(?:IMG|TABLE|TR|TD|INPUT|SELECT|TEXTAREA|HR|OBJECT)$/i;FCKRegexLib.BlockElements=/^(?:P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TD)$/i;FCKRegexLib.EmptyElements=/^(?:BASE|META|LINK|HR|BR|PARAM|IMG|AREA|INPUT)$/i;FCKRegexLib.NamedCommands=/^(?:Cut|Copy|Paste|Print|SelectAll|RemoveFormat|Unlink|Undo|Redo|Bold|Italic|Underline|StrikeThrough|Subscript|Superscript|JustifyLeft|JustifyCenter|JustifyRight|JustifyFull|Outdent|Indent|InsertOrderedList|InsertUnorderedList|InsertHorizontalRule)$/i;FCKRegexLib.BodyContents=/([\s\S]*\<body[^\>]*\>)([\s\S]*)(\<\/body\>[\s\S]*)/i;FCKRegexLib.ToReplace=/___fcktoreplace:([\w]+)/ig;FCKRegexLib.MetaHttpEquiv=/http-equiv\s*=\s*["']?([^"' ]+)/i;FCKRegexLib.HasBaseTag=/<base /i;FCKRegexLib.HeadOpener=/<head\s?[^>]*>/i;FCKRegexLib.HeadCloser=/<\/head\s*>/i;FCKRegexLib.TableBorderClass=/\s*FCK__ShowTableBorders\s*/;FCKRegexLib.ElementName=/^[A-Za-z_:][\w.-:]*$/;FCKRegexLib.ForceSimpleAmpersand=/___FCKAmp___/g;FCKRegexLib.SpaceNoClose=/\/>/g;FCKRegexLib.EmptyParagraph=/^<(p|div)>\s*<\/\1>$/i;FCKRegexLib.TagBody=/></;FCKRegexLib.StrongOpener=/<STRONG([ \>])/gi;FCKRegexLib.StrongCloser=/<\/STRONG>/gi;FCKRegexLib.EmOpener=/<EM([ \>])/gi;FCKRegexLib.EmCloser=/<\/EM>/gi;FCKRegexLib.GeckoEntitiesMarker=/#\?-\:/g;
+FCKLanguageManager.GetActiveLanguage=function(){if (FCKConfig.AutoDetectLanguage){var A;if (navigator.userLanguage) A=navigator.userLanguage.toLowerCase();else if (navigator.language) A=navigator.language.toLowerCase();else{return FCKConfig.DefaultLanguage;};if (A.length>=5){A=A.substr(0,5);if (this.AvailableLanguages[A]) return A;};if (A.length>=2){A=A.substr(0,2);if (this.AvailableLanguages[A]) return A;};};return this.DefaultLanguage;};FCKLanguageManager.TranslateElements=function(A,B,C){var e=A.getElementsByTagName(B);for (var i=0;i<e.length;i++){var D=e[i].getAttribute('fckLang');if (D){var s=FCKLang[D];if (s) eval('e[i].'+C+' = s');};};};FCKLanguageManager.TranslatePage=function(A){this.TranslateElements(A,'INPUT','value');this.TranslateElements(A,'SPAN','innerHTML');this.TranslateElements(A,'LABEL','innerHTML');this.TranslateElements(A,'OPTION','innerHTML');};if (FCKLanguageManager.AvailableLanguages[FCKConfig.DefaultLanguage]) FCKLanguageManager.DefaultLanguage=FCKConfig.DefaultLanguage;else FCKLanguageManager.DefaultLanguage='en';FCKLanguageManager.ActiveLanguage=new Object();FCKLanguageManager.ActiveLanguage.Code=FCKLanguageManager.GetActiveLanguage();FCKLanguageManager.ActiveLanguage.Name=FCKLanguageManager.AvailableLanguages[FCKLanguageManager.ActiveLanguage.Code];FCK.Language=FCKLanguageManager;LoadLanguageFile();
+var FCKEvents;if (!(FCKEvents=NS.FCKEvents)){FCKEvents=NS.FCKEvents=function(A){this.Owner=A;this.RegisteredEvents=new Object();};FCKEvents.prototype.AttachEvent=function(A,B){if (!this.RegisteredEvents[A]) this.RegisteredEvents[A]=new Array();this.RegisteredEvents[A][this.RegisteredEvents[A].length]=B;};FCKEvents.prototype.FireEvent=function(A,B){var C=true;var D=this.RegisteredEvents[A];if (D){for (var i=0;i<D.length;i++) C=(D[i](this.Owner,B)&&C);};return C;};}
+var FCKXHtmlEntities=new Object();if (FCKConfig.ProcessHTMLEntities){FCKXHtmlEntities.Entities={' ':'nbsp','¡':'iexcl','¢':'cent','£':'pound','¤':'curren','Â¥':'yen','¦':'brvbar','§':'sect','¨':'uml','©':'copy','ª':'ordf','«':'laquo','¬':'not','Â':'shy','®':'reg','¯':'macr','°':'deg','±':'plusmn','²':'sup2','³':'sup3','´':'acute','µ':'micro','¶':'para','·':'middot','¸':'cedil','¹':'sup1','º':'ordm','»':'raquo','¼':'frac14','½':'frac12','¾':'frac34','¿':'iquest','Ã':'times','÷':'divide','Æ':'fnof','â¢':'bull','â¦':'hellip','â²':'prime','â³':'Prime','â¾':'oline','â':'frasl','â':'weierp','â':'image','â':'real','â¢':'trade','âµ':'alefsym','â':'larr','â':'uarr','â':'rarr','â':'darr','â':'harr','âµ':'crarr','â':'lArr','â':'uArr','â':'rArr','â':'dArr','â':'hArr','â':'forall','â':'part','â':'exist','â
':'empty','â':'nabla','â':'isin','â':'notin','â':'ni','â':'prod','â':'sum','â':'minus','â':'lowast','â':'radic','â':'prop','â':'infin','â ':'ang','â§':'and','â¨':'or','â©':'cap','âª':'cup','â«':'int','â´':'there4','â¼':'sim','â
':'cong','â':'asymp','â ':'ne','â¡':'equiv','â¤':'le','â¥':'ge','â':'sub','â':'sup','â':'nsub','â':'sube','â':'supe','â':'oplus','â':'otimes','â¥':'perp','â
':'sdot','â':'loz','â ':'spades','â£':'clubs','â¥':'hearts','â¦':'diams','"':'quot','Ë':'circ','Ë':'tilde','â':'ensp','â':'emsp','â':'thinsp','â':'zwnj','â':'zwj','â':'lrm','â':'rlm','â':'ndash','â':'mdash','â':'lsquo','â':'rsquo','â':'sbquo','â':'ldquo','â':'rdquo','â':'bdquo','â ':'dagger','â¡':'Dagger','â°':'permil','â¹':'lsaquo','âº':'rsaquo','â¬':'euro'};FCKXHtmlEntities.Chars='';for (var e in FCKXHtmlEntities.Entities) FCKXHtmlEntities.Chars+=e;if (FCKConfig.IncludeLatinEntities){var oEntities={'Ã':'Agrave','Ã':'Aacute','Ã':'Acirc','Ã':'Atilde','Ã':'Auml','Ã
':'Aring','Ã':'AElig','Ã':'Ccedil','Ã':'Egrave','Ã':'Eacute','Ã':'Ecirc','Ã':'Euml','Ã':'Igrave','Ã':'Iacute','Ã':'Icirc','Ã':'Iuml','Ã':'ETH','Ã':'Ntilde','Ã':'Ograve','Ã':'Oacute','Ã':'Ocirc','Ã':'Otilde','Ã':'Ouml','Ã':'Oslash','Ã':'Ugrave','Ã':'Uacute','Ã':'Ucirc','Ã':'Uuml','Ã':'Yacute','Ã':'THORN','Ã':'szlig','à ':'agrave','á':'aacute','â':'acirc','ã':'atilde','ä':'auml','Ã¥':'aring','æ':'aelig','ç':'ccedil','è':'egrave','é':'eacute','ê':'ecirc','ë':'euml','ì':'igrave','Ã':'iacute','î':'icirc','ï':'iuml','ð':'eth','ñ':'ntilde','ò':'ograve','ó':'oacute','ô':'ocirc','õ':'otilde','ö':'ouml','ø':'oslash','ù':'ugrave','ú':'uacute','û':'ucirc','ü':'uuml','ý':'yacute','þ':'thorn','ÿ':'yuml','Å':'OElig','Å':'oelig','Å ':'Scaron','Å¡':'scaron','Ÿ':'Yuml'};for (var e in oEntities){FCKXHtmlEntities.Entities[e]=oEntities[e];FCKXHtmlEntities.Chars+=e;};oEntities=null;};if (FCKConfig.IncludeGreekEntities){var oEntities={'Î':'Alpha','Î':'Beta','Î':'Gamma','Î':'Delta','Î':'Epsilon','Î':'Zeta','Î':'Eta','Î':'Theta','Î':'Iota','Î':'Kappa','Î':'Lambda','Î':'Mu','Î':'Nu','Î':'Xi','Î':'Omicron','Î ':'Pi','Ρ':'Rho','Σ':'Sigma','Τ':'Tau','Î¥':'Upsilon','Φ':'Phi','Χ':'Chi','Ψ':'Psi','Ω':'Omega','α':'alpha','β':'beta','γ':'gamma','δ':'delta','ε':'epsilon','ζ':'zeta','η':'eta','θ':'theta','ι':'iota','κ':'kappa','λ':'lambda','μ':'mu','ν':'nu','ξ':'xi','ο':'omicron','Ï':'pi','Ï':'rho','Ï':'sigmaf','Ï':'sigma','Ï':'tau','Ï
':'upsilon','Ï':'phi','Ï':'chi','Ï':'psi','Ï':'omega'};for (var e in oEntities){FCKXHtmlEntities.Entities[e]=oEntities[e];FCKXHtmlEntities.Chars+=e;};oEntities=null;};FCKXHtmlEntities.EntitiesRegex=new RegExp('','');FCKXHtmlEntities.EntitiesRegex.compile('['+FCKXHtmlEntities.Chars+']|[^'+FCKXHtmlEntities.Chars+']+','g');}else{FCKXHtmlEntities.Entities={ 'Â ':'nbsp' };FCKXHtmlEntities.EntitiesRegex=/[Â ]|[^Â ]+/g;}
+var FCKXHtml=new Object();FCKXHtml.CurrentJobNum=0;FCKXHtml.GetXHTML=function(A,B,C){FCKXHtml.SpecialBlocks=new Array();this.XML=FCKTools.CreateXmlObject('DOMDocument');this.MainNode=this.XML.appendChild(this.XML.createElement('xhtml'));FCKXHtml.CurrentJobNum++;if (B) this._AppendNode(this.MainNode,A);else this._AppendChildNodes(this.MainNode,A,false);var D=this._GetMainXmlString();D=D.substr(7,D.length-15).trim();if (FCKBrowserInfo.IsGecko) D=D.replace(/<br\/>$/,'');D=D.replace(FCKRegexLib.SpaceNoClose,' />');if (FCKConfig.ForceSimpleAmpersand) D=D.replace(FCKRegexLib.ForceSimpleAmpersand,'&');if (C) D=FCKCodeFormatter.Format(D);for (var i=0;i<FCKXHtml.SpecialBlocks.length;i++){var E=new RegExp('___FCKsi___'+i);D=D.replace(E,FCKXHtml.SpecialBlocks[i]);};this.XML=null;return D};FCKXHtml._AppendAttribute=function(A,B,C){try{var D=this.XML.createAttribute(B);D.value=C?C:'';A.attributes.setNamedItem(D);}catch (e){};};FCKXHtml._AppendChildNodes=function(A,B,C){var D=0;if (B.hasChildNodes()){var E=B.childNodes;for (var i=0;i<E.length;i++){if (this._AppendNode(A,E[i])) D++;};};if (D==0){if (C&&FCKConfig.FillEmptyBlocks){this._AppendEntity(A,'nbsp');return;};if (!FCKRegexLib.EmptyElements.test(B.nodeName)) A.appendChild(this.XML.createTextNode(''));};};FCKXHtml._AppendNode=function(A,B){switch (B.nodeType){case 1:if (B.getAttribute('_fckfakelement')) return FCKXHtml._AppendNode(A,FCK.GetRealElement(B));if (FCKBrowserInfo.IsGecko&&B.hasAttribute('_moz_editor_bogus_node')) return false;if (B.getAttribute('_fckdelete')) return false;var C=B.nodeName;if (!FCKRegexLib.ElementName.test(C)) return false;C=C.toLowerCase();if (FCKBrowserInfo.IsGecko&&C=='br'&&B.hasAttribute('type')&&B.getAttribute('type',2)=='_moz') return false;if (B._fckxhtmljob&&B._fckxhtmljob==FCKXHtml.CurrentJobNum) return false;else B._fckxhtmljob=FCKXHtml.CurrentJobNum;var D=this._CreateNode(C);FCKXHtml._AppendAttributes(A,B,D,C);var E=FCKXHtml.TagProcessors[C];if (E){D=E(D,B);if (!D) break;}else this._AppendChildNodes(D,B,FCKRegexLib.BlockElements.test(C));A.appendChild(D);break;case 3:this._AppendTextNode(A,B.nodeValue.replaceNewLineChars(' '));break;case 8:try { A.appendChild(this.XML.createComment(B.nodeValue));}catch (e) { /* Do nothing... probably this is a wrong format comment. */};break;default:A.appendChild(this.XML.createComment("Element not supported - Type: "+B.nodeType+" Name: "+B.nodeName));break;};return true;};if (FCKConfig.ForceStrongEm){FCKXHtml._CreateNode=function(A){switch (A){case 'b':A='strong';break;case 'i':A='em';break;};return this.XML.createElement(A);};}else{FCKXHtml._CreateNode=function(A){return this.XML.createElement(A);};};FCKXHtml._AppendSpecialItem=function(A){return '___FCKsi___'+FCKXHtml.SpecialBlocks.addItem(A);};FCKXHtml._AppendTextNode=function(A,B){var C=B.match(FCKXHtmlEntities.EntitiesRegex);if (C){for (var i=0;i<C.length;i++){if (C[i].length==1){var D=FCKXHtmlEntities.Entities[C[i]];if (D!=null){this._AppendEntity(A,D);continue;};};A.appendChild(this.XML.createTextNode(C[i]));};};};FCKXHtml.TagProcessors=new Object();FCKXHtml.TagProcessors['img']=function(A){if (!A.attributes.getNamedItem('alt')) FCKXHtml._AppendAttribute(A,'alt','');return A;};FCKXHtml.TagProcessors['script']=function(A,B){if (!A.attributes.getNamedItem('type')) FCKXHtml._AppendAttribute(A,'type','text/javascript');A.appendChild(FCKXHtml.XML.createTextNode(FCKXHtml._AppendSpecialItem(B.text)));return A;};FCKXHtml.TagProcessors['style']=function(A,B){if (B.getAttribute('_fcktemp')) return null;if (!A.attributes.getNamedItem('type')) FCKXHtml._AppendAttribute(A,'type','text/css');A.appendChild(FCKXHtml.XML.createTextNode(FCKXHtml._AppendSpecialItem(B.innerHTML)));return A;};FCKXHtml.TagProcessors['title']=function(A,B){A.appendChild(FCKXHtml.XML.createTextNode(FCK.EditorDocument.title));return A;};FCKXHtml.TagProcessors['base']=function(A,B){if (B.getAttribute('_fcktemp')) return null;return A;};FCKXHtml.TagProcessors['link']=function(A,B){if (B.getAttribute('_fcktemp')) return null;return A;};FCKXHtml.TagProcessors['table']=function(A,B){var C=A.attributes.getNamedItem('class');if (C&&FCKRegexLib.TableBorderClass.test(C.nodeValue)){var D=C.nodeValue.replace(FCKRegexLib.TableBorderClass,'');if (D.length==0) A.attributes.removeNamedItem('class');else FCKXHtml._AppendAttribute(A,'class',D);};FCKXHtml._AppendChildNodes(A,B,false);return A;}
+FCKXHtml._GetMainXmlString=function(){return this.MainNode.xml;};FCKXHtml._AppendEntity=function(A,B){A.appendChild(this.XML.createEntityReference(B));};FCKXHtml._AppendAttributes=function(A,B,C,D){var E=B.attributes;for (var n=0;n<E.length;n++){var F=E[n];if (F.specified){var G=F.nodeName.toLowerCase();var H;if (G=='_fckxhtmljob') continue;else if (G=='style') H=B.style.cssText;else if (G=='class'||G.indexOf('on')==0) H=F.nodeValue;else if (D=='body'&&G=='contenteditable') continue;else if (F.nodeValue===true) H=G;else if (!(H=B.getAttribute(G,2))) H=F.nodeValue;if (FCKConfig.ForceSimpleAmpersand&&H.replace) H=H.replace(/&/g,'___FCKAmp___');this._AppendAttribute(C,G,H);};};};FCKXHtml.TagProcessors['meta']=function(A,B){var C=A.attributes.getNamedItem('http-equiv');if (C==null||C.value.length==0){var D=B.outerHTML.match(FCKRegexLib.MetaHttpEquiv);if (D){D=D[1];FCKXHtml._AppendAttribute(A,'http-equiv',D);};};return A;};FCKXHtml.TagProcessors['font']=function(A,B){if (A.attributes.length==0) A=FCKXHtml.XML.createDocumentFragment();FCKXHtml._AppendChildNodes(A,B);return A;};FCKXHtml.TagProcessors['input']=function(A,B){if (B.name) FCKXHtml._AppendAttribute(A,'name',B.name);if (B.value&&!A.attributes.getNamedItem('value')) FCKXHtml._AppendAttribute(A,'value',B.value);return A;};FCKXHtml.TagProcessors['option']=function(A,B){if (B.selected&&!A.attributes.getNamedItem('selected')) FCKXHtml._AppendAttribute(A,'selected','selected');FCKXHtml._AppendChildNodes(A,B);return A;};FCKXHtml.TagProcessors['abbr']=function(A,B){var C=B.nextSibling;while (true){if (C&&C.nodeName!='/ABBR'){FCKXHtml._AppendNode(A,C);C=C.nextSibling;}else break;};return A;};FCKXHtml.TagProcessors['area']=function(A,B){if (!A.attributes.getNamedItem('coords')){var C=B.getAttribute('coords',2);if (C&&C!='0,0,0') FCKXHtml._AppendAttribute(A,'coords',C);};if (!A.attributes.getNamedItem('shape')){var C=B.getAttribute('shape',2);if (C&&C.length>0) FCKXHtml._AppendAttribute(A,'shape',C);};return A;};FCKXHtml.TagProcessors['label']=function(A,B){if (B.htmlFor.length>0) FCKXHtml._AppendAttribute(A,'for',B.htmlFor);FCKXHtml._AppendChildNodes(A,B);return A;};FCKXHtml.TagProcessors['form']=function(A,B){if (B.acceptCharset.length>0&&B.acceptCharset!='UNKNOWN') FCKXHtml._AppendAttribute(A,'accept-charset',B.acceptCharset);if (B.name) FCKXHtml._AppendAttribute(A,'name',B.name);FCKXHtml._AppendChildNodes(A,B);return A;};FCKXHtml.TagProcessors['textarea']=FCKXHtml.TagProcessors['select']=function(A,B){if (B.name) FCKXHtml._AppendAttribute(A,'name',B.name);FCKXHtml._AppendChildNodes(A,B);return A;}
+var FCKCodeFormatter;if (!(FCKCodeFormatter=NS.FCKCodeFormatter)){FCKCodeFormatter=NS.FCKCodeFormatter=new Object();FCKCodeFormatter.Regex=new Object();FCKCodeFormatter.Regex.BlocksOpener=/\<(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|AREA|OPTION)[^\>]*\>/gi;FCKCodeFormatter.Regex.BlocksCloser=/\<\/(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|AREA|OPTION)[^\>]*\>/gi;FCKCodeFormatter.Regex.NewLineTags=/\<(BR|HR)[^\>]\>/gi;FCKCodeFormatter.Regex.MainTags=/\<\/?(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR)[^\>]*\>/gi;FCKCodeFormatter.Regex.LineSplitter=/\s*\n+\s*/g;FCKCodeFormatter.Regex.IncreaseIndent=/^\<(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL)[ \/\>]/i;FCKCodeFormatter.Regex.DecreaseIndent=/^\<\/(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL)[ \>]/i;FCKCodeFormatter.Regex.FormatIndentatorRemove=new RegExp(FCKConfig.FormatIndentator);FCKCodeFormatter.Format=function(A){var B=A.replace(this.Regex.BlocksOpener,'\n$&');;B=B.replace(this.Regex.BlocksCloser,'$&\n');B=B.replace(this.Regex.NewLineTags,'$&\n');B=B.replace(this.Regex.MainTags,'\n$&\n');var C='';var D=B.split(this.Regex.LineSplitter);B='';for (var i=0;i<D.length;i++){var E=D[i];if (E.length==0) continue;if (this.Regex.DecreaseIndent.test(E)) C=C.replace(this.Regex.FormatIndentatorRemove,'');B+=C+E+'\n';if (this.Regex.IncreaseIndent.test(E)) C+=FCKConfig.FormatIndentator;};return B.trim();};}
+var FCKUndo=new Object();FCKUndo.SavedData=new Array();FCKUndo.CurrentIndex=-1;FCKUndo.TypesCount=FCKUndo.MaxTypes=25;FCKUndo.Typing=false;FCKUndo.SaveUndoStep=function(){FCKUndo.SavedData=FCKUndo.SavedData.slice(0,FCKUndo.CurrentIndex+1);var A=FCK.EditorDocument.body.innerHTML;if (FCKUndo.CurrentIndex>=0&&A==FCKUndo.SavedData[FCKUndo.CurrentIndex][0]) return;if (FCKUndo.CurrentIndex+1>=FCKConfig.MaxUndoLevels) FCKUndo.SavedData.shift();else FCKUndo.CurrentIndex++;var B;if (FCK.EditorDocument.selection.type=='Text') B=FCK.EditorDocument.selection.createRange().getBookmark();FCKUndo.SavedData[FCKUndo.CurrentIndex]=[A,B];FCK.Events.FireEvent("OnSelectionChange");};FCKUndo.CheckUndoState=function(){return (FCKUndo.Typing||FCKUndo.CurrentIndex>0);};FCKUndo.CheckRedoState=function(){return (!FCKUndo.Typing&&FCKUndo.CurrentIndex<(FCKUndo.SavedData.length-1));};FCKUndo.Undo=function(){if (FCKUndo.CheckUndoState()){if (FCKUndo.CurrentIndex==(FCKUndo.SavedData.length-1)){FCKUndo.SaveUndoStep();};FCKUndo._ApplyUndoLevel(--FCKUndo.CurrentIndex);FCK.Events.FireEvent("OnSelectionChange");};};FCKUndo.Redo=function(){if (FCKUndo.CheckRedoState()){FCKUndo._ApplyUndoLevel(++FCKUndo.CurrentIndex);FCK.Events.FireEvent("OnSelectionChange");};};FCKUndo._ApplyUndoLevel=function(A){var B=FCKUndo.SavedData[A];if (!B) return;FCK.SetInnerHtml(B[0]);if (B[1]){var C=FCK.EditorDocument.selection.createRange();C.moveToBookmark(B[1]);C.select();};FCKUndo.TypesCount=0;FCKUndo.Typing=false;}
+FCK.Events=new FCKEvents(FCK);FCK.Toolbar=null;FCK.TempBaseTag=FCKConfig.BaseHref.length>0?'<base href="'+FCKConfig.BaseHref+'" _fcktemp="true"></base>':'';FCK.StartEditor=function(){this.EditorWindow=window.frames['eEditorArea'];this.EditorDocument=this.EditorWindow.document;this.SetHTML(FCKTools.GetLinkedFieldValue());FCKTools.AttachToLinkedFieldFormSubmit(this.UpdateLinkedField);FCKUndo.SaveUndoStep();this.SetStatus(FCK_STATUS_ACTIVE);};function Window_OnFocus(){FCK.Focus();};FCK.SetStatus=function(A){this.Status=A;if (A==FCK_STATUS_ACTIVE){window.onfocus=window.document.body.onfocus=Window_OnFocus;if (FCKConfig.StartupFocus) FCK.Focus();if (FCKBrowserInfo.IsIE) FCKScriptLoader.AddScript('js/fckeditorcode_ie_2.js');else FCKScriptLoader.AddScript('js/fckeditorcode_gecko_2.js');};this.Events.FireEvent('OnStatusChange',A);};FCK.GetHTML=function(A){var B;if (FCK.EditMode==FCK_EDITMODE_WYSIWYG){if (FCKBrowserInfo.IsIE) B=this.EditorDocument.body.innerHTML.replace(FCKRegexLib.ToReplace,'$1');else B=this.EditorDocument.body.innerHTML;}else B=document.getElementById('eSourceField').value;if (A) return FCKCodeFormatter.Format(B);else return B;};FCK.GetXHTML=function(A){var B=(FCK.EditMode==FCK_EDITMODE_SOURCE);if (B) this.SwitchEditMode();var C;if (FCKConfig.FullPage) C=FCKXHtml.GetXHTML(this.EditorDocument.getElementsByTagName('html')[0],true,A);else{if (FCKConfig.IgnoreEmptyParagraphValue&&this.EditorDocument.body.innerHTML=='<P> </P>') C='';else C=FCKXHtml.GetXHTML(this.EditorDocument.body,false,A);};if (B) this.SwitchEditMode();if (FCKBrowserInfo.IsIE) C=C.replace(FCKRegexLib.ToReplace,'$1');if (FCK.DocTypeDeclaration&&FCK.DocTypeDeclaration.length>0) C=FCK.DocTypeDeclaration+'\n'+C;if (FCK.XmlDeclaration&&FCK.XmlDeclaration.length>0) C=FCK.XmlDeclaration+'\n'+C;return FCKConfig.ProtectedSource.Revert(C);};FCK.UpdateLinkedField=function(){if (FCKConfig.EnableXHTML) FCK.LinkedField.value=FCK.GetXHTML(FCKConfig.FormatOutput);else FCK.LinkedField.value=FCK.GetHTML(FCKConfig.FormatOutput);FCK.Events.FireEvent('OnAfterLinkedFieldUpdate');};FCK.ShowContextMenu=function(x,y){if (this.Status!=FCK_STATUS_COMPLETE) return;FCKContextMenu.Show(x,y);this.Events.FireEvent("OnContextMenu");};FCK.RegisteredDoubleClickHandlers=new Object();FCK.OnDoubleClick=function(A){var B=FCK.RegisteredDoubleClickHandlers[A.tagName];if (B) B(A);};FCK.RegisterDoubleClickHandler=function(A,B){FCK.RegisteredDoubleClickHandlers[B.toUpperCase()]=A;};FCK.OnAfterSetHTML=function(){var A,i=0;while((A=FCKDocumentProcessors[i++])) A.ProcessDocument(FCK.EditorDocument);this.Events.FireEvent('OnAfterSetHTML');};var FCKDocumentProcessors=new Array();var FCKDocumentProcessors_CreateFakeImage=function(A,B){var C=FCK.EditorDocument.createElement('IMG');C.className=A;C.src=FCKConfig.FullBasePath+'images/spacer.gif';C.setAttribute('_fckfakelement','true',0);C.setAttribute('_fckrealelement',FCKTempBin.AddElement(B),0);return C;};var FCKAnchorsProcessor=new Object();FCKAnchorsProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('A');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.name.length>0&&(!C.getAttribute('href')||C.getAttribute('href').length==0)){var D=FCKDocumentProcessors_CreateFakeImage('FCK__Anchor',C.cloneNode(true));D.setAttribute('_fckanchor','true',0);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);};};};FCKDocumentProcessors.addItem(FCKAnchorsProcessor);var FCKPageBreaksProcessor=new Object();FCKPageBreaksProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('CENTER');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.style.pageBreakAfter=='always'&&C.innerHTML.trim().length==0){var D=FCKDocumentProcessors_CreateFakeImage('FCK__PageBreak',C.cloneNode(true));C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);};};};FCKDocumentProcessors.addItem(FCKPageBreaksProcessor);var FCKFlashProcessor=new Object();FCKFlashProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('EMBED');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.src.endsWith('.swf',true)){var D=FCKDocumentProcessors_CreateFakeImage('FCK__Flash',C.cloneNode(true));D.setAttribute('_fckflash','true',0);FCKFlashProcessor.RefreshView(D,C);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);};};};FCKFlashProcessor.RefreshView=function(A,B){if (B.width>0) A.style.width=FCKTools.ConvertHtmlSizeToStyle(B.width);if (B.height>0) A.style.height=FCKTools.ConvertHtmlSizeToStyle(B.height);};FCKDocumentProcessors.addItem(FCKFlashProcessor);FCK.GetRealElement=function(A){var e=FCKTempBin.Elements[A.getAttribute('_fckrealelement')];if (A.getAttribute('_fckflash')){if (A.style.width.length>0) e.width=FCKTools.ConvertStyleSizeToHtml(A.style.width);if (A.style.height.length>0) e.height=FCKTools.ConvertStyleSizeToHtml(A.style.height);};return e;};
+FCK.Description="FCKeditor for Internet Explorer 5.5+";FCK._BehaviorsStyle='<style type="text/css" _fcktemp="true">\ INPUT { behavior:url(' + FCKConfig.FullBasePath + 'css/behaviors/hiddenfield.htc);} ';if (FCKConfig.ShowBorders) FCK._BehaviorsStyle+='TABLE { behavior: url('+FCKConfig.FullBasePath+'css/behaviors/showtableborders.htc) ; }';var sNoHandlers='INPUT, TEXTAREA, SELECT, .FCK__Anchor, .FCK__PageBreak';if (FCKConfig.DisableImageHandles) sNoHandlers+=', IMG';if (FCKConfig.DisableTableHandles) sNoHandlers+=', TABLE';FCK._BehaviorsStyle+=sNoHandlers+' { behavior: url('+FCKConfig.FullBasePath+'css/behaviors/disablehandles.htc) ; }';FCK._BehaviorsStyle+='</style>';function Doc_OnMouseUp(){if (FCK.EditorWindow.event.srcElement.tagName=='HTML'){FCK.Focus();FCK.EditorWindow.event.cancelBubble=true;FCK.EditorWindow.event.returnValue=false;};};function Doc_OnPaste(){if (FCK.Status==FCK_STATUS_COMPLETE) return FCK.Events.FireEvent("OnPaste");else return false;};function Doc_OnContextMenu(){var e=FCK.EditorWindow.event;FCK.ShowContextMenu(e.screenX,e.screenY);return false;};function Doc_OnKeyDown(){var e=FCK.EditorWindow.event;switch (e.keyCode){case 13:if (FCKConfig.UseBROnCarriageReturn&&!(e.ctrlKey||e.altKey||e.shiftKey)){Doc_OnKeyDownUndo();if (FCK.EditorDocument.queryCommandState('InsertOrderedList')||FCK.EditorDocument.queryCommandState('InsertUnorderedList')) return true;FCK.InsertHtml('<br> ');var oRange=FCK.EditorDocument.selection.createRange();oRange.moveStart('character',-1);oRange.select();FCK.EditorDocument.selection.clear();return false;};break;case 9:if (FCKConfig.TabSpaces>0&&!(e.ctrlKey||e.altKey||e.shiftKey)){Doc_OnKeyDownUndo();FCK.InsertHtml(window.FCKTabHTML);return false;};break;case 90:if (e.ctrlKey&&!(e.altKey||e.shiftKey)){FCKUndo.Undo();return false;};break;case 89:if (e.ctrlKey&&!(e.altKey||e.shiftKey)){FCKUndo.Redo();return false;};break;};if (!(e.keyCode>=16&&e.keyCode<=18)) Doc_OnKeyDownUndo();return true;};function Doc_OnKeyDownUndo(){if (!FCKUndo.Typing){FCKUndo.SaveUndoStep();FCKUndo.Typing=true;FCK.Events.FireEvent("OnSelectionChange");};FCKUndo.TypesCount++;if (FCKUndo.TypesCount>FCKUndo.MaxTypes){FCKUndo.TypesCount=0;FCKUndo.SaveUndoStep();};};function Doc_OnDblClick(){FCK.OnDoubleClick(FCK.EditorWindow.event.srcElement);FCK.EditorWindow.event.cancelBubble=true;};function Doc_OnSelectionChange(){FCK.Events.FireEvent("OnSelectionChange");};FCK.InitializeBehaviors=function(A){this.EditorDocument.attachEvent('onmouseup',Doc_OnMouseUp);this.EditorDocument.body.attachEvent('onpaste',Doc_OnPaste);this.EditorDocument.attachEvent('oncontextmenu',Doc_OnContextMenu);if (FCKConfig.TabSpaces>0){window.FCKTabHTML='';for (i=0;i<FCKConfig.TabSpaces;i++) window.FCKTabHTML+=" ";};this.EditorDocument.attachEvent("onkeydown",Doc_OnKeyDown);this.EditorDocument.attachEvent("ondblclick",Doc_OnDblClick);this.EditorDocument.attachEvent("onselectionchange",Doc_OnSelectionChange);};FCK.Focus=function(){try{if (FCK.EditMode==FCK_EDITMODE_WYSIWYG) FCK.EditorDocument.body.focus();else document.getElementById('eSourceField').focus();}catch(e) {};};FCK.SetHTML=function(A,B){if (B||FCK.EditMode==FCK_EDITMODE_WYSIWYG){A=FCKConfig.ProtectedSource.Protect(A);var C;if (FCKConfig.FullPage){var C=FCK._BehaviorsStyle+'<link href="'+FCKConfig.FullBasePath+'css/fck_internal.css'+'" rel="stylesheet" type="text/css" _fcktemp="true" />';if (FCK.TempBaseTag.length>0&&!FCKRegexLib.HasBaseTag.test(A)) C+=FCK.TempBaseTag;C=A.replace(FCKRegexLib.HeadOpener,'$&'+C);}else{C=FCKConfig.DocType+'<html dir="'+FCKConfig.ContentLangDirection+'"';if (FCKConfig.IEForceVScroll) C+=' style="overflow-y: scroll"';C+='><head><title></title>'+'<link href="'+FCKConfig.EditorAreaCSS+'" rel="stylesheet" type="text/css" />'+'<link href="'+FCKConfig.FullBasePath+'css/fck_internal.css'+'" rel="stylesheet" type="text/css" _fcktemp="true" />';C+=FCK._BehaviorsStyle;C+=FCK.TempBaseTag;C+='</head><body>'+A+'</body></html>';};this.EditorDocument.open('','_self','',true);this.EditorDocument.write(C);this.EditorDocument.close();this.InitializeBehaviors();this.EditorDocument.body.contentEditable=true;FCK.OnAfterSetHTML();}else document.getElementById('eSourceField').value=A;};FCK.InsertHtml=function(A){FCK.Focus();FCKUndo.SaveUndoStep();var B=FCK.EditorDocument.selection;if (B.type.toLowerCase()!="none") B.clear();B.createRange().pasteHTML(A);};FCK.SetInnerHtml=function(A){var B=FCK.EditorDocument;B.body.innerHTML='<div id="__fakeFCKRemove__"> </div>'+A;B.getElementById('__fakeFCKRemove__').removeNode(true);}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_2.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_2.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/js/fckeditorcode_ie_2.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,56 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * This file has been compacted for best loading performance.
+ */
+FCK.RedirectNamedCommands=new Object();FCK.ExecuteNamedCommand=function(A,B){FCKUndo.SaveUndoStep();if (FCK.RedirectNamedCommands[A]!=null) FCK.ExecuteRedirectedNamedCommand(A,B);else{FCK.Focus();FCK.EditorDocument.execCommand(A,false,B);FCK.Events.FireEvent('OnSelectionChange');};FCKUndo.SaveUndoStep();};FCK.GetNamedCommandState=function(A){try{if (!FCK.EditorDocument.queryCommandEnabled(A)) return FCK_TRISTATE_DISABLED;else return FCK.EditorDocument.queryCommandState(A)?FCK_TRISTATE_ON:FCK_TRISTATE_OFF;}catch (e){return FCK_TRISTATE_OFF;};};FCK.GetNamedCommandValue=function(A){var B='';var C=FCK.GetNamedCommandState(A);if (C==FCK_TRISTATE_DISABLED) return null;try{B=this.EditorDocument.queryCommandValue(A);}catch(e) {};return B?B:'';};FCK.PasteFromWord=function(){FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.PasteFromWord,'dialog/fck_paste.html',400,330,'Word');};FCK.Preview=function(){var A=FCKConfig.ScreenWidth*0.8;var B=FCKConfig.ScreenHeight*0.7;var C=(FCKConfig.ScreenWidth-A)/2;var D=window.open('',null,'toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width='+A+',height='+B+',left='+C);var E;if (FCKConfig.FullPage){if (FCK.TempBaseTag.length>0) E=FCK.GetXHTML().replace(FCKRegexLib.HeadOpener,'$&'+FCK.TempBaseTag);else E=FCK.GetXHTML();}else{E=FCKConfig.DocType+'<html dir="'+FCKConfig.ContentLangDirection+'">'+'<head><title>'+FCKLang.Preview+'</title>'+'<link href="'+FCKConfig.EditorAreaCSS+'" rel="stylesheet" type="text/css" />'+FCK.TempBaseTag+'</head><body>'+FCK.GetXHTML()+'</body></html>';};D.document.write(E);D.document.close();};FCK.SwitchEditMode=function(){var A=(FCK.EditMode==FCK_EDITMODE_WYSIWYG);document.getElementById('eWysiwyg').style.display=A?'none':'';document.getElementById('eSource').style.display=A?'':'none';if (A){if (FCKBrowserInfo.IsIE) FCKUndo.SaveUndoStep();document.getElementById('eSourceField').value=(FCKConfig.EnableXHTML&&FCKConfig.EnableSourceXHTML?FCK.GetXHTML(FCKConfig.FormatSource):FCK.GetHTML(FCKConfig.FormatSource));}else FCK.SetHTML(FCK.GetHTML(),true);FCK.EditMode=A?FCK_EDITMODE_SOURCE:FCK_EDITMODE_WYSIWYG;FCKToolbarSet.RefreshModeState();FCK.Focus();};FCK.CreateElement=function(A){var e=FCK.EditorDocument.createElement(A);return FCK.InsertElementAndGetIt(e);};FCK.InsertElementAndGetIt=function(e){e.setAttribute('__FCKTempLabel',1);this.InsertElement(e);var A=FCK.EditorDocument.getElementsByTagName(e.tagName);for (var i=0;i<A.length;i++){if (A[i].getAttribute('__FCKTempLabel')){A[i].removeAttribute('__FCKTempLabel');return A[i];};};return null;};
+FCK.Paste=function(){if (FCKConfig.ForcePasteAsPlainText){FCK.PasteAsPlainText();return false;}else if (FCKConfig.AutoDetectPasteFromWord){var A=FCK.GetClipboardHTML();var B=/<\w[^>]* class="?MsoNormal"?/gi;if (B.test(A)){if (confirm(FCKLang["PasteWordConfirm"])){FCK.PasteFromWord();return false;};};}else return true;};FCK.PasteAsPlainText=function(){var A=FCKTools.HTMLEncode(clipboardData.getData("Text"));A=A.replace(/\n/g,'<BR>');this.InsertHtml(A);};FCK.InsertElement=function(A){FCK.InsertHtml(A.outerHTML);};FCK.GetClipboardHTML=function(){var A=document.getElementById('___FCKHiddenDiv');if (!A){var A=document.createElement('DIV');A.id='___FCKHiddenDiv';A.style.visibility='hidden';A.style.overflow='hidden';A.style.position='absolute';A.style.width=1;A.style.height=1;document.body.appendChild(A);};A.innerHTML='';var C=document.body.createTextRange();C.moveToElementText(A);C.execCommand('Paste');var D=A.innerHTML;A.innerHTML='';return D;};FCK.AttachToOnSelectionChange=function(A){this.Events.AttachEvent('OnSelectionChange',A);};FCK.CreateLink=function(A){FCK.ExecuteNamedCommand('Unlink');if (A.length>0){var B='javascript:void(0);/*'+(new Date().getTime())+'*/';FCK.ExecuteNamedCommand('CreateLink',B);var C=this.EditorDocument.links;for (i=0;i<C.length;i++){if (C[i].href==B){C[i].href=A;return C[i];};};};};
+var FCKSelection=new Object();FCK.Selection=FCKSelection;
+FCKSelection.GetType=function(){return FCK.EditorDocument.selection.type;};FCKSelection.GetSelectedElement=function(){if (this.GetType()=='Control'){var A=FCK.EditorDocument.selection.createRange();if (A&&A.item) return FCK.EditorDocument.selection.createRange().item(0);};};FCKSelection.GetParentElement=function(){switch (this.GetType()){case 'Control':return FCKSelection.GetSelectedElement().parentElement;case 'None':return;default:return FCK.EditorDocument.selection.createRange().parentElement();};};FCKSelection.SelectNode=function(A){FCK.Focus();FCK.EditorDocument.selection.empty();var B=FCK.EditorDocument.selection.createRange();B.moveToElementText(A);B.select();};FCKSelection.Collapse=function(A){FCK.Focus();var B=FCK.EditorDocument.selection.createRange();B.collapse(A==null||A===true);B.select();};FCKSelection.HasAncestorNode=function(A){var B;if (FCK.EditorDocument.selection.type=="Control"){B=this.GetSelectedElement();}else{var C=FCK.EditorDocument.selection.createRange();B=C.parentElement();};while (B){if (B.tagName==A) return true;B=B.parentNode;};return false;};FCKSelection.MoveToAncestorNode=function(A){var B;if (FCK.EditorDocument.selection.type=="Control"){var C=FCK.EditorDocument.selection.createRange();for (i=0;i<C.length;i++){if (C(i).parentNode){B=C(i).parentNode;break;};};}else{var C=FCK.EditorDocument.selection.createRange();B=C.parentElement();};while (B&&B.nodeName!=A) B=B.parentNode;return B;};FCKSelection.Delete=function(){var A=FCK.EditorDocument.selection;if (A.type.toLowerCase()!="none"){A.clear();};return A;};
+var FCKPanel=function(A){this.Window=A?A:window;};function FCKPanel_OnContextMenu() { return false;};FCKPanel.prototype.Create=function(){this._Popup=this.Window.createPopup();this.Document=this._Popup.document;aCleanupDocs[aCleanupDocs.length]=this.Document;this.Document.oncontextmenu=FCKPanel_OnContextMenu;if (this.StyleSheet) FCKTools.AppendStyleSheet(this.Document,this.StyleSheet);this.PanelDiv=this.Document.body.appendChild(this.Document.createElement('DIV'));this.PanelDiv.className='FCK_Panel';this.Created=true;};FCKPanel.prototype.Show=function(A,B,C,D,E,F){if (!this.Created) this._Create();this._Popup.show(A,B,0,0,C);if (D==null||(F&&D>this.PanelDiv.offsetWidth)) var G=this.PanelDiv.offsetWidth;else var G=D;if (E==null||(F&&E>this.PanelDiv.offsetHeight)) var I=this.PanelDiv.offsetHeight;else var I=E;this.PanelDiv.style.height=I;this._Popup.show(A,B,G,I,C);};FCKPanel.prototype.Hide=function(){if (this._Popup) this._Popup.hide();}
+var FCKTableHandler=new Object();FCKTableHandler.InsertRow=function(){var A=FCKSelection.MoveToAncestorNode("TR");if (!A) return;var B=A.cloneNode(true);A.parentNode.insertBefore(B,A);FCKTableHandler.ClearRow(A);};FCKTableHandler.DeleteRows=function(A){if (!A) A=FCKSelection.MoveToAncestorNode("TR");if (!A) return;var B=FCKTools.GetElementAscensor(A,'TABLE');if (B.rows.length==1){FCKTableHandler.DeleteTable(B);return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteTable=function(A){if (!A) A=FCKSelection.MoveToAncestorNode("TABLE");if (!A) return;A.parentNode.removeChild(A);};FCKTableHandler.InsertColumn=function(){var A=FCKSelection.MoveToAncestorNode("TD");if (!A) A=FCKSelection.MoveToAncestorNode("TH");if (!A) return;var B=FCKTools.GetElementAscensor(A,'TABLE');var C=A.cellIndex+1;for (var i=0;i<B.rows.length;i++){var D=B.rows[i];if (D.cells.length<C) continue;A=D.cells[C-1].cloneNode(false);if (FCKBrowserInfo.IsGecko) A.innerHTML=FCKBrowserInfo.IsGecko?GECKO_BOGUS:'';var E=D.cells[C];if (E) D.insertBefore(A,E);else D.appendChild(A);};};FCKTableHandler.DeleteColumns=function(){var A=FCKSelection.MoveToAncestorNode("TD");if (!A) return;var B=FCKTools.GetElementAscensor(A,'TABLE');var C=A.cellIndex;for (var i=B.rows.length-1;i>=0;i--){var D=B.rows[i];if (C==0&&D.cells.length==1){FCKTableHandler.DeleteRows(D);continue;};if (D.cells[C]) D.removeChild(D.cells[C]);};};FCKTableHandler.InsertCell=function(A){var B=A?A:FCKSelection.MoveToAncestorNode("TD");if (!B) return;var C=FCK.EditorDocument.createElement("TD");if (FCKBrowserInfo.IsGecko) C.innerHTML=GECKO_BOGUS;if (B.cellIndex==B.parentNode.cells.lenght-1){B.parentNode.appendChild(C);}else{B.parentNode.insertBefore(C,B.nextSibling);};return C;};FCKTableHandler.DeleteCell=function(A){if (A.parentNode.cells.length==1){FCKTableHandler.DeleteRows(FCKTools.GetElementAscensor(A,'TR'));return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteCells=function(){var A=FCKTableHandler.GetSelectedCells();for (var i=A.length-1;i>=0;i--){FCKTableHandler.DeleteCell(A[i]);};};FCKTableHandler.MergeCells=function(){var A=FCKTableHandler.GetSelectedCells();if (A.length<2) return;if (A[0].parentNode!=A[A.length-1].parentNode) return;var B=isNaN(A[0].colSpan)?1:A[0].colSpan;var C='';for (var i=A.length-1;i>0;i--){B+=isNaN(A[i].colSpan)?1:A[i].colSpan;C=A[i].innerHTML+C;FCKTableHandler.DeleteCell(A[i]);};A[0].colSpan=B;A[0].innerHTML+=C;};FCKTableHandler.SplitCell=function(){var A=FCKTableHandler.GetSelectedCells();if (A.length!=1) return;var B=this._CreateTableMap(A[0].parentNode.parentNode);var C=FCKTableHandler._GetCellIndexSpan(B,A[0].parentNode.rowIndex,A[0]);var D=this._GetCollumnCells(B,C);for (var i=0;i<D.length;i++){if (D[i]==A[0]){var E=this.InsertCell(A[0]);if (!isNaN(A[0].rowSpan)&&A[0].rowSpan>1) E.rowSpan=A[0].rowSpan;}else{if (isNaN(D[i].colSpan)) D[i].colSpan=2;else D[i].colSpan+=1;};};};FCKTableHandler._GetCellIndexSpan=function(A,B,C){if (A.length<B+1) return null;var D=A[B];for (var c=0;c<D.length;c++){if (D[c]==C) return c;};return null;};FCKTableHandler._GetCollumnCells=function(A,B){var C=new Array();for (var r=0;r<A.length;r++){var D=A[r][B];if (D&&(C.length==0||C[C.length-1]!=D)) C[C.length]=D;};return C;};FCKTableHandler._CreateTableMap=function(A){var B=A.rows;var r=-1;var C=new Array();for (var i=0;i<B.length;i++){r++;if (!C[r]) C[r]=new Array();var c=-1;for (var j=0;j<B[i].cells.length;j++){var D=B[i].cells[j];c++;while (C[r][c]) c++;var E=isNaN(D.colSpan)?1:D.colSpan;var F=isNaN(D.rowSpan)?1:D.rowSpan;for (var G=0;G<F;G++){if (!C[r+G]) C[r+G]=new Array();for (var H=0;H<E;H++){C[r+G][c+H]=B[i].cells[j];};};c+=E-1;};};return C;};FCKTableHandler.ClearRow=function(A){var B=A.cells;for (var i=0;i<B.length;i++){if (FCKBrowserInfo.IsGecko) B[i].innerHTML=GECKO_BOGUS;else B[i].innerHTML='';};}
+FCKTableHandler.GetSelectedCells=function(){var A=new Array();var B=FCK.EditorDocument.selection.createRange();var C=B.parentElement();if (C&&C.tagName=="TD") A[0]=C;else{var C=FCKSelection.MoveToAncestorNode("TABLE");if (C){for (var i=0;i<C.cells.length;i++){var E=FCK.EditorDocument.selection.createRange();E.moveToElementText(C.cells[i]);if (B.inRange(E)||(B.compareEndPoints('StartToStart',E)>=0&&B.compareEndPoints('StartToEnd',E)<=0)||(B.compareEndPoints('EndToStart',E)>=0&&B.compareEndPoints('EndToEnd',E)<=0)){A[A.length]=C.cells[i];};};};};return A;};
+var FCKXml;if (!(FCKXml=NS.FCKXml)){FCKXml=NS.FCKXml=function(){this.Error=false;};FCKXml.prototype.LoadUrl=function(A){this.Error=false;var B=FCKTools.CreateXmlObject('XmlHttp');if (!B){this.Error=true;return;};B.open("GET",A,false);B.send(null);if (B.status==200||B.status==304) this.DOMDocument=B.responseXML;else if (B.status==0&&B.readyState==4){this.DOMDocument=FCKTools.CreateXmlObject('DOMDocument');this.DOMDocument.async=false;this.DOMDocument.resolveExternals=false;this.DOMDocument.loadXML(B.responseText);}else{this.Error=true;alert('Error loading "'+A+'"');};};FCKXml.prototype.SelectNodes=function(A,B){if (this.Error) return new Array();if (B) return B.selectNodes(A);else return this.DOMDocument.selectNodes(A);};FCKXml.prototype.SelectSingleNode=function(A,B){if (this.Error) return;if (B) return B.selectSingleNode(A);else return this.DOMDocument.selectSingleNode(A);};}
+var FCKStyleDef=function(A,B){this.Name=A;this.Element=B.toUpperCase();this.IsObjectElement=FCKRegexLib.ObjectElements.test(this.Element);this.Attributes=new Object();};FCKStyleDef.prototype.AddAttribute=function(A,B){this.Attributes[A]=B;};FCKStyleDef.prototype.GetOpenerTag=function(){var s='<'+this.Element;for (var a in this.Attributes) s+=' '+a+'="'+this.Attributes[a]+'"';return s+'>';};FCKStyleDef.prototype.GetCloserTag=function(){return '</'+this.Element+'>';};FCKStyleDef.prototype.RemoveFromSelection=function(){if (FCKSelection.GetType()=='Control') this._RemoveMe(FCKSelection.GetSelectedElement());else this._RemoveMe(FCKSelection.GetParentElement());}
+FCKStyleDef.prototype.ApplyToSelection=function(){var A=FCK.EditorDocument.selection;if (A.type=='Text'){var B=A.createRange();var e=document.createElement(this.Element);e.innerHTML=B.htmlText;this._AddAttributes(e);this._RemoveDuplicates(e);B.pasteHTML(e.outerHTML);}else if (A.type=='Control'){var C=FCKSelection.GetSelectedElement();if (C.tagName==this.Element) this._AddAttributes(C);};};FCKStyleDef.prototype._AddAttributes=function(A){for (var a in this.Attributes){if (a.toLowerCase()=='style') A.style.cssText=this.Attributes[a];else A.setAttribute(a,this.Attributes[a],0);};};FCKStyleDef.prototype._RemoveDuplicates=function(A){for (var i=0;i<A.children.length;i++){var B=A.children[i];this._RemoveDuplicates(B);if (this.IsEqual(B)){B.insertAdjacentHTML('beforeBegin',B.innerHTML);B.parentElement.removeChild(B);};};};FCKStyleDef.prototype.IsEqual=function(e){if (e.tagName!=this.Element) return false;for (var a in this.Attributes){switch (a.toLowerCase()){case 'style':if (e.style.cssText.toLowerCase()!=this.Attributes[a].toLowerCase()) return false;break;case 'class':if (e.getAttribute('className',0)!=this.Attributes[a]) return false;break;default:if (e.getAttribute(a,0)!=this.Attributes[a]) return false;};};return true;};FCKStyleDef.prototype._RemoveMe=function(A){if (!A) return;var B=A.parentElement;if (this.IsEqual(A)){if (this.IsObjectElement){for (var a in this.Attributes){switch (a.toLowerCase()){case 'class':A.removeAttribute('className',0);break;default:A.removeAttribute(a,0);};};return;}else FCKTools.RemoveOuterTags(A);};this._RemoveMe(B);}
+var FCKStylesLoader=function(){this.Styles=new Object();this.StyleGroups=new Object();this.Loaded=false;this.HasObjectElements=false;};FCKStylesLoader.prototype.Load=function(A){var B=new FCKXml();B.LoadUrl(A);var C=B.SelectNodes('Styles/Style');for (var i=0;i<C.length;i++){var D=C[i].attributes.getNamedItem('element').value.toUpperCase();var E=new FCKStyleDef(C[i].attributes.getNamedItem('name').value,D);if (E.IsObjectElement) this.HasObjectElements=true;var F=B.SelectNodes('Attribute',C[i]);for (var j=0;j<F.length;j++){var G=F[j].attributes.getNamedItem('name').value;var H=F[j].attributes.getNamedItem('value').value;if (G.toLowerCase()=='style'){var I=document.createElement('SPAN');I.style.cssText=H;H=I.style.cssText;};E.AddAttribute(G,H);};this.Styles[E.Name]=E;var J=this.StyleGroups[D];if (J==null){this.StyleGroups[D]=new Array();J=this.StyleGroups[D];};J[J.length]=E;};this.Loaded=true;}
+var FCKNamedCommand=function(A){this.Name=A;};FCKNamedCommand.prototype.Execute=function(){FCK.ExecuteNamedCommand(this.Name);};FCKNamedCommand.prototype.GetState=function(){return FCK.GetNamedCommandState(this.Name);};
+var FCKDialogCommand=function(A,B,C,D,E,F,G){this.Name=A;this.Title=B;this.Url=C;this.Width=D;this.Height=E;this.GetStateFunction=F;this.GetStateParam=G;};FCKDialogCommand.prototype.Execute=function(){FCKDialog.OpenDialog('FCKDialog_'+this.Name,this.Title,this.Url,this.Width,this.Height);};FCKDialogCommand.prototype.GetState=function(){if (this.GetStateFunction) return this.GetStateFunction(this.GetStateParam);else return FCK_TRISTATE_OFF;};var FCKUndefinedCommand=function(){this.Name='Undefined';};FCKUndefinedCommand.prototype.Execute=function(){alert(FCKLang.NotImplemented);};FCKUndefinedCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKFontNameCommand=function(){this.Name='FontName';};FCKFontNameCommand.prototype.Execute=function(A){if (A==null||A==""){}else FCK.ExecuteNamedCommand('FontName',A);};FCKFontNameCommand.prototype.GetState=function(){return FCK.GetNamedCommandValue('FontName');};var FCKFontSizeCommand=function(){this.Name='FontSize';};FCKFontSizeCommand.prototype.Execute=function(A){if (typeof(A)=='string') A=parseInt(A);if (A==null||A==''){FCK.ExecuteNamedCommand('FontSize',3);}else FCK.ExecuteNamedCommand('FontSize',A);};FCKFontSizeCommand.prototype.GetState=function(){return FCK.GetNamedCommandValue('FontSize');};var FCKFormatBlockCommand=function(){this.Name='FormatBlock';};FCKFormatBlockCommand.prototype.Execute=function(A){if (A==null||A=='') FCK.ExecuteNamedCommand('FormatBlock','<P>');else FCK.ExecuteNamedCommand('FormatBlock','<'+A+'>');};FCKFormatBlockCommand.prototype.GetState=function(){return FCK.GetNamedCommandValue('FormatBlock');};var FCKPreviewCommand=function(){this.Name='Preview';};FCKPreviewCommand.prototype.Execute=function(){FCK.Preview();};FCKPreviewCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKSaveCommand=function(){this.Name='Save';};FCKSaveCommand.prototype.Execute=function(){var A=FCK.LinkedField.form;if (typeof(A.onsubmit)=='function'){var B=A.onsubmit();if (B!=null&&B===false) return;};A.submit();};FCKSaveCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKNewPageCommand=function(){this.Name='NewPage';};FCKNewPageCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();FCK.SetHTML('');FCKUndo.Typing=true;};FCKNewPageCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};var FCKSourceCommand=function(){this.Name='Source';};FCKSourceCommand.prototype.Execute=function(){if (FCKBrowserInfo.IsGecko){var A=FCKConfig.ScreenWidth*0.65;var B=FCKConfig.ScreenHeight*0.65;FCKDialog.OpenDialog('FCKDialog_Source',FCKLang.Source,'dialog/fck_source.html',A,B,null,null,true);}else FCK.SwitchEditMode();};FCKSourceCommand.prototype.GetState=function(){return (FCK.EditMode==FCK_EDITMODE_WYSIWYG?FCK_TRISTATE_OFF:FCK_TRISTATE_ON);};var FCKUndoCommand=function(){this.Name='Undo';};FCKUndoCommand.prototype.Execute=function(){if (FCKBrowserInfo.IsIE) FCKUndo.Undo();else FCK.ExecuteNamedCommand('Undo');};FCKUndoCommand.prototype.GetState=function(){if (FCKBrowserInfo.IsIE) return (FCKUndo.CheckUndoState()?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED);else return FCK.GetNamedCommandState('Undo');};var FCKRedoCommand=function(){this.Name='Redo';};FCKRedoCommand.prototype.Execute=function(){if (FCKBrowserInfo.IsIE) FCKUndo.Redo();else FCK.ExecuteNamedCommand('Redo');};FCKRedoCommand.prototype.GetState=function(){if (FCKBrowserInfo.IsIE) return (FCKUndo.CheckRedoState()?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED);else return FCK.GetNamedCommandState('Redo');};var FCKPageBreakCommand=function(){this.Name='PageBreak';};FCKPageBreakCommand.prototype.Execute=function(){var A=FCK.EditorDocument.createElement('CENTER');A.style.pageBreakAfter='always';var B=FCKDocumentProcessors_CreateFakeImage('FCK__PageBreak',A);B=FCK.InsertElement(B);};FCKPageBreakCommand.prototype.GetState=function(){return 0;}
+var FCKSpellCheckCommand=function(){this.Name='SpellCheck';this.IsEnabled=(FCKConfig.SpellChecker=='ieSpell'||FCKConfig.SpellChecker=='SpellerPages');};FCKSpellCheckCommand.prototype.Execute=function(){switch (FCKConfig.SpellChecker){case 'ieSpell':this._RunIeSpell();break;case 'SpellerPages':FCKDialog.OpenDialog('FCKDialog_SpellCheck','Spell Check','dialog/fck_spellerpages.html',440,480);break;};};FCKSpellCheckCommand.prototype._RunIeSpell=function(){try{var A=new ActiveXObject("ieSpell.ieSpellExtension");A.CheckAllLinkedDocuments(FCK.EditorDocument);}catch(e){if(e.number==-2146827859){if (confirm(FCKLang.IeSpellDownload)) window.open(FCKConfig.IeSpellDownloadUrl,'IeSpellDownload');}else alert('Error Loading ieSpell: '+e.message+' ('+e.number+')');};};FCKSpellCheckCommand.prototype.GetState=function(){return this.IsEnabled?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED;}
+var FCKTextColorCommand=function(A){this.Name=A=='ForeColor'?'TextColor':'BGColor';this.Type=A;this._Panel=new FCKPanel();this._Panel.StyleSheet=FCKConfig.SkinPath+'fck_contextmenu.css';this._Panel.Create();this._CreatePanelBody(this._Panel.Document,this._Panel.PanelDiv);};FCKTextColorCommand.prototype.Execute=function(A,B,C){FCK._ActiveColorPanelType=this.Type;this._Panel.Show(A,B,C);};FCKTextColorCommand.prototype.SetColor=function(A){if (FCK._ActiveColorPanelType=='ForeColor') FCK.ExecuteNamedCommand('ForeColor',A);else if (FCKBrowserInfo.IsGecko) FCK.ExecuteNamedCommand('hilitecolor',A);else FCK.ExecuteNamedCommand('BackColor',A);delete FCK._ActiveColorPanelType;};FCKTextColorCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;};function FCKTextColorCommand_OnMouseOver() { this.className='ColorSelected';};function FCKTextColorCommand_OnMouseOut() { this.className='ColorDeselected';};function FCKTextColorCommand_OnClick(){this.className='ColorDeselected';this.Command.SetColor('#'+this.Color);this.Command._Panel.Hide();};function FCKTextColorCommand_AutoOnClick(){this.className='ColorDeselected';this.Command.SetColor('');this.Command._Panel.Hide();};function FCKTextColorCommand_MoreOnClick(){this.className='ColorDeselected';this.Command._Panel.Hide();FCKDialog.OpenDialog('FCKDialog_Color',FCKLang.DlgColorTitle,'dialog/fck_colorselector.html',400,330,this.Command.SetColor);};FCKTextColorCommand.prototype._CreatePanelBody=function(A,B){function CreateSelectionDiv(){var C=A.createElement("DIV");C.className='ColorDeselected';C.onmouseover=FCKTextColorCommand_OnMouseOver;C.onmouseout=FCKTextColorCommand_OnMouseOut;return C;};var D=B.appendChild(A.createElement("TABLE"));D.style.tableLayout='fixed';D.cellPadding=0;D.cellSpacing=0;D.border=0;D.width=150;var E=D.insertRow(-1).insertCell(-1);E.colSpan=8;var C=E.appendChild(CreateSelectionDiv());C.innerHTML='<table cellspacing="0" cellpadding="0" width="100%" border="0">\<tr>\<td><div class="ColorBoxBorder"><div class="ColorBox" style="background-color: #000000"></div></div></td>\<td nowrap width="100%" align="center" unselectable="on">' + FCKLang.ColorAutomatic + '</td>\</tr>\</table>';C.Command=this;C.onclick=FCKTextColorCommand_AutoOnClick;var G=FCKConfig.FontColors.toString().split(',');var H=0;while (H<G.length){var I=D.insertRow(-1);for (var i=0;i<8&&H<G.length;i++,H++){C=I.insertCell(-1).appendChild(CreateSelectionDiv());C.Color=G[H];C.innerHTML='<div class="ColorBoxBorder"><div class="ColorBox" style="background-color: #'+G[H]+'"></div></div>';C.Command=this;C.onclick=FCKTextColorCommand_OnClick;};};E=D.insertRow(-1).insertCell(-1);E.colSpan=8;C=E.appendChild(CreateSelectionDiv());C.innerHTML='<table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td nowrap align="center">'+FCKLang.ColorMoreColors+'</td></tr></table>';C.Command=this;C.onclick=FCKTextColorCommand_MoreOnClick;}
+var FCKPastePlainTextCommand=function(){this.Name='PasteText';};FCKPastePlainTextCommand.prototype.Execute=function(){FCK.PasteAsPlainText();};FCKPastePlainTextCommand.prototype.GetState=function(){return FCK.GetNamedCommandState('Paste');};
+var FCKPasteWordCommand=function(){this.Name='PasteWord';};FCKPasteWordCommand.prototype.Execute=function(){FCK.PasteFromWord();};FCKPasteWordCommand.prototype.GetState=function(){if (FCKConfig.ForcePasteAsPlainText) return FCK_TRISTATE_DISABLED;else return FCK.GetNamedCommandState('Paste');};
+var FCKTableCommand=function(A){this.Name=A;};FCKTableCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();switch (this.Name){case 'TableInsertRow':FCKTableHandler.InsertRow();break;case 'TableDeleteRows':FCKTableHandler.DeleteRows();break;case 'TableInsertColumn':FCKTableHandler.InsertColumn();break;case 'TableDeleteColumns':FCKTableHandler.DeleteColumns();break;case 'TableInsertCell':FCKTableHandler.InsertCell();break;case 'TableDeleteCells':FCKTableHandler.DeleteCells();break;case 'TableMergeCells':FCKTableHandler.MergeCells();break;case 'TableSplitCell':FCKTableHandler.SplitCell();break;default:alert(FCKLang.UnknownCommand.replace(/%1/g,this.Name));};};FCKTableCommand.prototype.GetState=function(){return FCK_TRISTATE_OFF;}
+var FCKStyleCommand=function(){this.Name='Style';this.StylesLoader=new FCKStylesLoader();this.StylesLoader.Load(FCKConfig.StylesXmlPath);this.Styles=this.StylesLoader.Styles;};FCKStyleCommand.prototype.Execute=function(A,B){FCKUndo.SaveUndoStep();if (B.Selected) B.Style.RemoveFromSelection();else B.Style.ApplyToSelection();FCKUndo.SaveUndoStep();FCK.Focus();FCK.Events.FireEvent("OnSelectionChange");};FCKStyleCommand.prototype.GetState=function(){var A=FCK.EditorDocument.selection;if (FCKSelection.GetType()=='Control'){var e=FCKSelection.GetSelectedElement();if (e) return this.StylesLoader.StyleGroups[e.tagName]?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED;};return FCK_TRISTATE_OFF;};FCKStyleCommand.prototype.GetActiveStyles=function(){var A=new Array();if (FCKSelection.GetType()=='Control') this._CheckStyle(FCKSelection.GetSelectedElement(),A,false);else this._CheckStyle(FCKSelection.GetParentElement(),A,true);return A;};FCKStyleCommand.prototype._CheckStyle=function(A,B,C){if (!A) return;if (A.nodeType==1){var D=this.StylesLoader.StyleGroups[A.tagName];if (D){for (var i=0;i<D.length;i++){if (D[i].IsEqual(A)) B[B.length]=D[i];};};};if (C) this._CheckStyle(A.parentNode,B,C);}
+var FCKCommands=FCK.Commands=new Object();FCKCommands.LoadedCommands=new Object();FCKCommands.RegisterCommand=function(A,B){this.LoadedCommands[A]=B;};FCKCommands.GetCommand=function(A){var B=FCKCommands.LoadedCommands[A];if (B) return B;switch (A){case 'DocProps':B=new FCKDialogCommand('DocProps',FCKLang.DocProps,'dialog/fck_docprops.html',400,390,FCKCommands.GetFullPageState);break;case 'Templates':B=new FCKDialogCommand('Templates',FCKLang.DlgTemplatesTitle,'dialog/fck_template.html',380,450);break;case 'Link':B=new FCKDialogCommand('Link',FCKLang.DlgLnkWindowTitle,'dialog/fck_link.html',400,330,FCK.GetNamedCommandState,'CreateLink');break;case 'Anchor':B=new FCKDialogCommand('Anchor',FCKLang.DlgAnchorTitle,'dialog/fck_anchor.html',370,170);break;case 'BulletedList':B=new FCKDialogCommand('BulletedList',FCKLang.BulletedListProp,'dialog/fck_listprop.html',370,170);break;case 'NumberedList':B=new FCKDialogCommand('NumberedList',FCKLang.NumberedListProp,'dialog/fck_listprop.html',370,170);break;case 'About':B=new FCKDialogCommand('About',FCKLang.About,'dialog/fck_about.html',400,330);break;case 'Find':B=new FCKDialogCommand('Find',FCKLang.DlgFindTitle,'dialog/fck_find.html',340,170);break;case 'Replace':B=new FCKDialogCommand('Replace',FCKLang.DlgReplaceTitle,'dialog/fck_replace.html',340,200);break;case 'Image':B=new FCKDialogCommand('Image',FCKLang.DlgImgTitle,'dialog/fck_image.html',450,400);break;case 'Flash':B=new FCKDialogCommand('Flash',FCKLang.DlgFlashTitle,'dialog/fck_flash.html',450,400);break;case 'SpecialChar':B=new FCKDialogCommand('SpecialChar',FCKLang.DlgSpecialCharTitle,'dialog/fck_specialchar.html',400,300);break;case 'Smiley':B=new FCKDialogCommand('Smiley',FCKLang.DlgSmileyTitle,'dialog/fck_smiley.html',FCKConfig.SmileyWindowWidth,FCKConfig.SmileyWindowHeight);break;case 'Table':B=new FCKDialogCommand('Table',FCKLang.DlgTableTitle,'dialog/fck_table.html',400,250);break;case 'TableProp':B=new FCKDialogCommand('Table',FCKLang.DlgTableTitle,'dialog/fck_table.html?Parent',400,250);break;case 'TableCellProp':B=new FCKDialogCommand('TableCell',FCKLang.DlgCellTitle,'dialog/fck_tablecell.html',500,250);break;case 'UniversalKey':B=new FCKDialogCommand('UniversalKey',FCKLang.UniversalKeyboard,'dialog/fck_universalkey.html',415,300);break;case 'Style':B=new FCKStyleCommand();break;case 'FontName':B=new FCKFontNameCommand();break;case 'FontSize':B=new FCKFontSizeCommand();break;case 'FontFormat':B=new FCKFormatBlockCommand();break;case 'Source':B=new FCKSourceCommand();break;case 'Preview':B=new FCKPreviewCommand();break;case 'Save':B=new FCKSaveCommand();break;case 'NewPage':B=new FCKNewPageCommand();break;case 'PageBreak':B=new FCKPageBreakCommand();break;case 'TextColor':B=new FCKTextColorCommand('ForeColor');break;case 'BGColor':B=new FCKTextColorCommand('BackColor');break;case 'PasteText':B=new FCKPastePlainTextCommand();break;case 'PasteWord':B=new FCKPasteWordCommand();break;case 'TableInsertRow':B=new FCKTableCommand('TableInsertRow');break;case 'TableDeleteRows':B=new FCKTableCommand('TableDeleteRows');break;case 'TableInsertColumn':B=new FCKTableCommand('TableInsertColumn');break;case 'TableDeleteColumns':B=new FCKTableCommand('TableDeleteColumns');break;case 'TableInsertCell':B=new FCKTableCommand('TableInsertCell');break;case 'TableDeleteCells':B=new FCKTableCommand('TableDeleteCells');break;case 'TableMergeCells':B=new FCKTableCommand('TableMergeCells');break;case 'TableSplitCell':B=new FCKTableCommand('TableSplitCell');break;case 'Form':B=new FCKDialogCommand('Form',FCKLang.Form,'dialog/fck_form.html',380,230);break;case 'Checkbox':B=new FCKDialogCommand('Checkbox',FCKLang.Checkbox,'dialog/fck_checkbox.html',380,230);break;case 'Radio':B=new FCKDialogCommand('Radio',FCKLang.RadioButton,'dialog/fck_radiobutton.html',380,230);break;case 'TextField':B=new FCKDialogCommand('TextField',FCKLang.TextField,'dialog/fck_textfield.html',380,230);break;case 'Textarea':B=new FCKDialogCommand('Textarea',FCKLang.Textarea,'dialog/fck_textarea.html',380,230);break;case 'HiddenField':B=new FCKDialogCommand('HiddenField',FCKLang.HiddenField,'dialog/fck_hiddenfield.html',380,230);break;case 'Button':B=new FCKDialogCommand('Button',FCKLang.Button,'dialog/fck_button.html',380,230);break;case 'Select':B=new FCKDialogCommand('Select',FCKLang.SelectionField,'dialog/fck_select.html',400,380);break;case 'ImageButton':B=new FCKDialogCommand('ImageButton',FCKLang.ImageButton,'dialog/fck_image.html?ImageButton',450,400);break;case 'SpellCheck':B=new FCKSpellCheckCommand();break;case 'Undo':B=new FCKUndoCommand();break;case 'Redo':B=new FCKRedoCommand();break;case 'Undefined':B=new FCKUndefinedCommand();break;default:if (FCKRegexLib.NamedCommands.test(A)) B=new FCKNamedCommand(A);else{alert(FCKLang.UnknownCommand.replace(/%1/g,A));return null;};};FCKCommands.LoadedCommands[A]=B;return B;};FCKCommands.GetFullPageState=function(){return FCKConfig.FullPage?FCK_TRISTATE_OFF:FCK_TRISTATE_DISABLED;};
+var FCKToolbarButton=function(A,B,C,D,E,F){this.Command=FCKCommands.GetCommand(A);this.Label=B?B:A;this.Tooltip=C?C:(B?B:A);this.Style=D?D:FCK_TOOLBARITEM_ONLYICON;this.SourceView=E?true:false;this.ContextSensitive=F?true:false;this.IconPath=FCKConfig.SkinPath+'toolbar/'+A.toLowerCase()+'.gif';this.State=FCK_UNKNOWN;};FCKToolbarButton.prototype.CreateInstance=function(A){this.DOMDiv=document.createElement('div');this.DOMDiv.className='TB_Button_Off';this.DOMDiv.FCKToolbarButton=this;var B='<table title="'+this.Tooltip+'" cellspacing="0" cellpadding="0" border="0" unselectable="on">'+'<tr>';if (this.Style!=FCK_TOOLBARITEM_ONLYTEXT) B+='<td class="TB_Icon" unselectable="on"><img src="'+this.IconPath+'" width="21" height="21" unselectable="on"></td>';if (this.Style!=FCK_TOOLBARITEM_ONLYICON) B+='<td class="TB_Text" unselectable="on" nowrap>'+this.Label+'</td>';B+='</tr>'+'</table>';this.DOMDiv.innerHTML=B;var C=A.DOMRow.insertCell(-1);C.appendChild(this.DOMDiv);this.RefreshState();};FCKToolbarButton.prototype.RefreshState=function(){var A=this.Command.GetState();if (A==this.State) return;this.State=A;switch (this.State){case FCK_TRISTATE_ON:this.DOMDiv.className='TB_Button_On';this.DOMDiv.onmouseover=FCKToolbarButton_OnMouseOnOver;this.DOMDiv.onmouseout=FCKToolbarButton_OnMouseOnOut;this.DOMDiv.onclick=FCKToolbarButton_OnClick;break;case FCK_TRISTATE_OFF:this.DOMDiv.className='TB_Button_Off';this.DOMDiv.onmouseover=FCKToolbarButton_OnMouseOffOver;this.DOMDiv.onmouseout=FCKToolbarButton_OnMouseOffOut;this.DOMDiv.onclick=FCKToolbarButton_OnClick;break;default:this.Disable();break;};};function FCKToolbarButton_OnMouseOnOver(){this.className='TB_Button_On TB_Button_On_Over';};function FCKToolbarButton_OnMouseOnOut(){this.className='TB_Button_On';};function FCKToolbarButton_OnMouseOffOver(){this.className='TB_Button_On TB_Button_Off_Over';};function FCKToolbarButton_OnMouseOffOut(){this.className='TB_Button_Off';};function FCKToolbarButton_OnClick(e){this.FCKToolbarButton.Click(e);return false;};FCKToolbarButton.prototype.Click=function(){this.Command.Execute();};FCKToolbarButton.prototype.Enable=function(){this.RefreshState();};FCKToolbarButton.prototype.Disable=function(){this.State=FCK_TRISTATE_DISABLED;this.DOMDiv.className='TB_Button_Disabled';this.DOMDiv.onmouseover=null;this.DOMDiv.onmouseout=null;this.DOMDiv.onclick=null;}
+var FCKSpecialCombo=function(A){this.FieldWidth=80;this.PanelWidth=130;this.PanelMaxHeight=150;this.Label=' ';this.Caption=A;this.Tooltip=A;this.Style=FCK_TOOLBARITEM_ICONTEXT;this.Enabled=true;this.Items=new Object();this._Panel=new FCKPanel();this._Panel.StyleSheet=FCKConfig.SkinPath+'fck_contextmenu.css';this._Panel.Create();this._Panel.PanelDiv.className+=' SC_Panel';this._Panel.PanelDiv.innerHTML='<table cellpadding="0" cellspacing="0" width="100%" style="TABLE-LAYOUT: fixed"><tr><td nowrap></td></tr></table>';this._ItemsHolderEl=this._Panel.PanelDiv.getElementsByTagName('TD')[0];};function FCKSpecialCombo_ItemOnMouseOver(){this.className+=' SC_ItemOver';};function FCKSpecialCombo_ItemOnMouseOut(){this.className=this.originalClass;};function FCKSpecialCombo_ItemOnClick(){this.FCKSpecialCombo._Panel.Hide();this.FCKSpecialCombo.SetLabel(this.FCKItemLabel);if (typeof(this.FCKSpecialCombo.OnSelect)=='function') this.FCKSpecialCombo.OnSelect(this.FCKItemID,this);};FCKSpecialCombo.prototype.AddItem=function(A,B,C){var D=this._ItemsHolderEl.appendChild(this._Panel.Document.createElement('DIV'));D.className=D.originalClass='SC_Item';D.innerHTML=B;D.FCKItemID=A;D.FCKItemLabel=C?C:A;D.FCKSpecialCombo=this;D.Selected=false;D.onmouseover=FCKSpecialCombo_ItemOnMouseOver;D.onmouseout=FCKSpecialCombo_ItemOnMouseOut;D.onclick=FCKSpecialCombo_ItemOnClick;this.Items[A.toString().toLowerCase()]=D;return D;};FCKSpecialCombo.prototype.SelectItem=function(A){A=A?A.toString().toLowerCase():'';var B=this.Items[A];if (B){B.className=B.originalClass='SC_ItemSelected';B.Selected=true;};};FCKSpecialCombo.prototype.DeselectAll=function(){for (var i in this.Items){this.Items[i].className=this.Items[i].originalClass='SC_Item';this.Items[i].Selected=false;};};FCKSpecialCombo.prototype.SetLabelById=function(A){A=A?A.toString().toLowerCase():'';var B=this.Items[A];this.SetLabel(B?B.FCKItemLabel:'');};FCKSpecialCombo.prototype.SetLabel=function(A){this.Label=A.length==0?' ':A;if (this._LabelEl) this._LabelEl.innerHTML=this.Label;};FCKSpecialCombo.prototype.SetEnabled=function(A){this.Enabled=A;this._OuterTable.className=A?'':'SC_FieldDisabled';};FCKSpecialCombo.prototype.Create=function(A){this._OuterTable=A.appendChild(document.createElement('TABLE'));this._OuterTable.cellPadding=0;this._OuterTable.cellSpacing=0;this._OuterTable.insertRow(-1);var B;var C;switch (this.Style){case FCK_TOOLBARITEM_ONLYICON:B='TB_ButtonType_Icon';C=false;break;case FCK_TOOLBARITEM_ONLYTEXT:B='TB_ButtonType_Text';C=false;break;case FCK_TOOLBARITEM_ICONTEXT:C=true;break;};if (this.Caption&&this.Caption.length>0&&C){var D=this._OuterTable.rows[0].insertCell(-1);D.unselectable='on';D.innerHTML=this.Caption;D.className='SC_FieldCaption';};var E=this._OuterTable.rows[0].insertCell(-1).appendChild(document.createElement('DIV'));if (C){E.className='SC_Field';E.style.width=this.FieldWidth+'px';E.innerHTML='<table width="100%" cellpadding="0" cellspacing="0" style="TABLE-LAYOUT: fixed;" unselectable="on"><tbody><tr><td class="SC_FieldLabel" unselectable="on"><label unselectable="on"> </label></td><td class="SC_FieldButton" unselectable="on"> </td></tr></tbody></table>';this._LabelEl=E.getElementsByTagName('label')[0];this._LabelEl.innerHTML=this.Label;}else{E.className='TB_Button_Off';E.innerHTML='<table cellpadding="0" cellspacing="0" style="TABLE-LAYOUT: fixed;" unselectable="on"><tbody><tr><td class="SC_FieldButton" style="border-left: none;" unselectable="on"> </td></tr></tbody></table>';E.innerHTML='<table title="'+this.Tooltip+'" class="'+B+'" cellspacing="0" cellpadding="0" border="0" unselectable="on">'+'<tr>'+'<td class="TB_Text" unselectable="on">'+this.Caption+'</td>'+'<td class="TB_ButtonArrow" unselectable="on"><img src="'+FCKConfig.SkinPath+'images/toolbar.buttonarrow.gif" width="5" height="3"></td>'+'</tr>'+'</table>';};E.SpecialCombo=this;E.onmouseover=FCKSpecialCombo_OnMouseOver;E.onmouseout=FCKSpecialCombo_OnMouseOut;E.onclick=FCKSpecialCombo_OnClick;};function FCKSpecialCombo_OnMouseOver(){if (this.SpecialCombo.Enabled){switch (this.SpecialCombo.Style){case FCK_TOOLBARITEM_ONLYICON:this.className='TB_Button_On';break;case FCK_TOOLBARITEM_ONLYTEXT:this.className='TB_Button_On';break;case FCK_TOOLBARITEM_ICONTEXT:this.className='SC_Field SC_FieldOver';break;};};};function FCKSpecialCombo_OnMouseOut(){switch (this.SpecialCombo.Style){case FCK_TOOLBARITEM_ONLYICON:this.className='TB_Button_Off';break;case FCK_TOOLBARITEM_ONLYTEXT:this.className='TB_Button_Off';break;case FCK_TOOLBARITEM_ICONTEXT:this.className='SC_Field';break;};};function FCKSpecialCombo_OnClick(e){if (e){e.stopPropagation();FCKPanelEventHandlers.OnDocumentClick(e);};if (this.SpecialCombo.Enabled){var oPanel=this.SpecialCombo._Panel;if (typeof(this.SpecialCombo.OnBeforeClick)=='function') this.SpecialCombo.OnBeforeClick(this.SpecialCombo);if (this.SpecialCombo._ItemsHolderEl.offsetHeight>this.SpecialCombo.PanelMaxHeight) oPanel.PanelDiv.style.height=this.SpecialCombo.PanelMaxHeight+'px';else oPanel.PanelDiv.style.height=this.SpecialCombo._ItemsHolderEl.offsetHeight+'px';oPanel.PanelDiv.style.width=this.SpecialCombo.PanelWidth+'px';if (FCKBrowserInfo.IsGecko) oPanel.PanelDiv.style.overflow='-moz-scrollbars-vertical';oPanel.Show(0,this.offsetHeight,this,null,this.SpecialCombo.PanelMaxHeight,true);};return false;};
+var FCKToolbarSpecialCombo=function(){this.SourceView=false;this.ContextSensitive=true;};function FCKToolbarSpecialCombo_OnSelect(itemId,item){this.Command.Execute(itemId,item);};FCKToolbarSpecialCombo.prototype.CreateInstance=function(A){this._Combo=new FCKSpecialCombo(this.GetLabel());this._Combo.FieldWidth=this.FieldWidth!=null?this.FieldWidth:100;this._Combo.PanelWidth=this.PanelWidth!=null?this.PanelWidth:150;this._Combo.PanelMaxHeight=this.PanelMaxHeight!=null?this.PanelMaxHeight:150;this._Combo.Tooltip=this.Tooltip;this._Combo.Style=this.Style;this.CreateItems(this._Combo);this._Combo.Create(A.DOMRow.insertCell(-1));this._Combo.Command=this.Command;this._Combo.OnSelect=FCKToolbarSpecialCombo_OnSelect;};function FCKToolbarSpecialCombo_RefreshActiveItems(combo,value){combo.DeselectAll();combo.SelectItem(value);combo.SetLabelById(value);};FCKToolbarSpecialCombo.prototype.RefreshState=function(){var A;var B=this.Command.GetState();if (B!=FCK_TRISTATE_DISABLED){A=FCK_TRISTATE_ON;if (this.RefreshActiveItems) this.RefreshActiveItems(this._Combo,B);else FCKToolbarSpecialCombo_RefreshActiveItems(this._Combo,B);}else A=FCK_TRISTATE_DISABLED;if (A==this.State) return;if (A==FCK_TRISTATE_DISABLED){this._Combo.DeselectAll();this._Combo.SetLabel('');};this.State=A;this._Combo.SetEnabled(A!=FCK_TRISTATE_DISABLED);};FCKToolbarSpecialCombo.prototype.Enable=function(){this.RefreshState();};FCKToolbarSpecialCombo.prototype.Disable=function(){this.State=FCK_TRISTATE_DISABLED;this._Combo.DeselectAll();this._Combo.SetLabel('');this._Combo.SetEnabled(false);}
+var FCKToolbarFontsCombo=function(A,B){this.Command=FCKCommands.GetCommand('FontName');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;};FCKToolbarFontsCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarFontsCombo.prototype.GetLabel=function(){return FCKLang.Font;};FCKToolbarFontsCombo.prototype.CreateItems=function(A){var B=FCKConfig.FontNames.split(';');for (var i=0;i<B.length;i++) this._Combo.AddItem(B[i],'<span style="font-family: \''+B[i]+'\'; font-size: 12px;">'+B[i]+'</span>');}
+var FCKToolbarFontSizeCombo=function(A,B){this.Command=FCKCommands.GetCommand('FontSize');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;};FCKToolbarFontSizeCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarFontSizeCombo.prototype.GetLabel=function(){return FCKLang.FontSize;};FCKToolbarFontSizeCombo.prototype.CreateItems=function(A){A.FieldWidth=70;var B=FCKConfig.FontSizes.split(';');for (var i=0;i<B.length;i++){var C=B[i].split('/');this._Combo.AddItem(C[0],'<font size="'+C[0]+'">'+C[1]+'</font>',C[1]);};}
+var FCKToolbarFontFormatCombo=function(A,B){this.Command=FCKCommands.GetCommand('FontFormat');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;this.PanelWidth=190;};FCKToolbarFontFormatCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarFontFormatCombo.prototype.GetLabel=function(){return FCKLang.FontFormat;};FCKToolbarFontFormatCombo.prototype.CreateItems=function(A){var B=FCKLang['FontFormats'].split(';');var C={p:B[0],pre:B[1],address:B[2],h1:B[3],h2:B[4],h3:B[5],h4:B[6],h5:B[7],h6:B[8],div:B[9]};var D=FCKConfig.FontFormats.split(';');for (var i=0;i<D.length;i++){if (D[i]=='div'&&FCKBrowserInfo.IsGecko) continue;this._Combo.AddItem(D[i],'<'+D[i]+'>'+C[D[i]]+'</'+D[i]+'>',C[D[i]]);};}
+var FCKToolbarStyleCombo=function(A,B){this.Command=FCKCommands.GetCommand('Style');this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:FCK_TOOLBARITEM_ICONTEXT;};FCKToolbarStyleCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarStyleCombo.prototype.GetLabel=function(){return FCKLang.Style;};FCKToolbarStyleCombo.prototype.CreateItems=function(A){FCKTools.AppendStyleSheet(A._Panel.Document,FCKConfig.EditorAreaCSS);if (!FCKBrowserInfo.IsGecko) A.OnBeforeClick=this.RefreshVisibleItems;for (var s in this.Command.Styles){var B=this.Command.Styles[s];var C;if (B.IsObjectElement) C=A.AddItem(s,s);else C=A.AddItem(s,B.GetOpenerTag()+s+B.GetCloserTag());C.Style=B;};};FCKToolbarStyleCombo.prototype.RefreshActiveItems=function(A){A.DeselectAll();var B=this.Command.GetActiveStyles();if (B.length>0){for (var i=0;i<B.length;i++) A.SelectItem(B[i].Name);A.SetLabelById(B[0].Name);}else A.SetLabel('');};FCKToolbarStyleCombo.prototype.RefreshVisibleItems=function(A){if (FCKSelection.GetType()=='Control') var B=FCKSelection.GetSelectedElement().tagName;for (var i in A.Items){var C=A.Items[i];if ((B&&C.Style.Element==B)||(!B&&!C.Style.IsObjectElement)) C.style.display='';else C.style.display='none';};}
+var FCKToolbarPanelButton=function(A,B,C,D){this.Command=FCKCommands.GetCommand(A);this.Label=B?B:A;this.Tooltip=C?C:(B?B:A);this.Style=D?D:FCK_TOOLBARITEM_ONLYICON;this.State=FCK_UNKNOWN;};FCKToolbarPanelButton.prototype.Click=function(e){if (e){e.stopPropagation();FCKPanelEventHandlers.OnDocumentClick(e);};if (this.State!=FCK_TRISTATE_DISABLED){this.Command.Execute(0,this.DOMDiv.offsetHeight,this.DOMDiv);};return false;};FCKToolbarPanelButton.prototype.CreateInstance=function(A){this.DOMDiv=document.createElement('div');this.DOMDiv.className='TB_Button_Off';this.DOMDiv.FCKToolbarButton=this;var B='<table title="'+this.Tooltip+'" cellspacing="0" cellpadding="0" border="0" unselectable="on">'+'<tr>';if (this.Style!=FCK_TOOLBARITEM_ONLYTEXT) B+='<td class="TB_Icon" unselectable="on"><img src="'+FCKConfig.SkinPath+'toolbar/'+this.Command.Name.toLowerCase()+'.gif" width="21" height="21" unselectable="on"></td>';if (this.Style!=FCK_TOOLBARITEM_ONLYICON) B+='<td class="TB_Text" unselectable="on" nowrap>'+this.Label+'</td>';B+='<td class="TB_ButtonArrow" unselectable="on"><img src="'+FCKConfig.SkinPath+'images/toolbar.buttonarrow.gif" width="5" height="3"></td>'+'</tr>'+'</table>';this.DOMDiv.innerHTML=B;var C=A.DOMRow.insertCell(-1);C.appendChild(this.DOMDiv);this.RefreshState();};FCKToolbarPanelButton.prototype.RefreshState=FCKToolbarButton.prototype.RefreshState;FCKToolbarPanelButton.prototype.Enable=FCKToolbarButton.prototype.Enable;FCKToolbarPanelButton.prototype.Disable=FCKToolbarButton.prototype.Disable;
+var FCKToolbarItems=new Object();FCKToolbarItems.LoadedItems=new Object();FCKToolbarItems.RegisterItem=function(A,B){this.LoadedItems[A]=B;};FCKToolbarItems.GetItem=function(A){var B=FCKToolbarItems.LoadedItems[A];if (B) return B;switch (A){case 'Source':B=new FCKToolbarButton('Source',FCKLang.Source,null,FCK_TOOLBARITEM_ICONTEXT,true,true);break;case 'DocProps':B=new FCKToolbarButton('DocProps',FCKLang.DocProps);break;case 'Templates':B=new FCKToolbarButton('Templates',FCKLang.Templates);break;case 'Save':B=new FCKToolbarButton('Save',FCKLang.Save,null,null,true);break;case 'NewPage':B=new FCKToolbarButton('NewPage',FCKLang.NewPage,null,null,true);break;case 'Preview':B=new FCKToolbarButton('Preview',FCKLang.Preview,null,null,true);break;case 'About':B=new FCKToolbarButton('About',FCKLang.About,null,null,true);break;case 'Cut':B=new FCKToolbarButton('Cut',FCKLang.Cut,null,null,false,true);break;case 'Copy':B=new FCKToolbarButton('Copy',FCKLang.Copy,null,null,false,true);break;case 'Paste':B=new FCKToolbarButton('Paste',FCKLang.Paste,null,null,false,true);break;case 'PasteText':B=new FCKToolbarButton('PasteText',FCKLang.PasteText,null,null,false,true);break;case 'PasteWord':B=new FCKToolbarButton('PasteWord',FCKLang.PasteWord,null,null,false,true);break;case 'Print':B=new FCKToolbarButton('Print',FCKLang.Print,null,null,false,true);break;case 'SpellCheck':B=new FCKToolbarButton('SpellCheck',FCKLang.SpellCheck);break;case 'Undo':B=new FCKToolbarButton('Undo',FCKLang.Undo,null,null,false,true);break;case 'Redo':B=new FCKToolbarButton('Redo',FCKLang.Redo,null,null,false,true);break;case 'SelectAll':B=new FCKToolbarButton('SelectAll',FCKLang.SelectAll);break;case 'RemoveFormat':B=new FCKToolbarButton('RemoveFormat',FCKLang.RemoveFormat,null,null,false,true);break;case 'Bold':B=new FCKToolbarButton('Bold',FCKLang.Bold,null,null,false,true);break;case 'Italic':B=new FCKToolbarButton('Italic',FCKLang.Italic,null,null,false,true);break;case 'Underline':B=new FCKToolbarButton('Underline',FCKLang.Underline,null,null,false,true);break;case 'StrikeThrough':B=new FCKToolbarButton('StrikeThrough',FCKLang.StrikeThrough,null,null,false,true);break;case 'Subscript':B=new FCKToolbarButton('Subscript',FCKLang.Subscript,null,null,false,true);break;case 'Superscript':B=new FCKToolbarButton('Superscript',FCKLang.Superscript,null,null,false,true);break;case 'OrderedList':B=new FCKToolbarButton('InsertOrderedList',FCKLang.NumberedListLbl,FCKLang.NumberedList,null,false,true);break;case 'UnorderedList':B=new FCKToolbarButton('InsertUnorderedList',FCKLang.BulletedListLbl,FCKLang.BulletedList,null,false,true);break;case 'Outdent':B=new FCKToolbarButton('Outdent',FCKLang.DecreaseIndent,null,null,false,true);break;case 'Indent':B=new FCKToolbarButton('Indent',FCKLang.IncreaseIndent,null,null,false,true);break;case 'Link':B=new FCKToolbarButton('Link',FCKLang.InsertLinkLbl,FCKLang.InsertLink,null,false,true);break;case 'Unlink':B=new FCKToolbarButton('Unlink',FCKLang.RemoveLink,null,null,false,true);break;case 'Anchor':B=new FCKToolbarButton('Anchor',FCKLang.Anchor);break;case 'Image':B=new FCKToolbarButton('Image',FCKLang.InsertImageLbl,FCKLang.InsertImage);break;case 'Flash':B=new FCKToolbarButton('Flash',FCKLang.InsertFlashLbl,FCKLang.InsertFlash);break;case 'Table':B=new FCKToolbarButton('Table',FCKLang.InsertTableLbl,FCKLang.InsertTable);break;case 'SpecialChar':B=new FCKToolbarButton('SpecialChar',FCKLang.InsertSpecialCharLbl,FCKLang.InsertSpecialChar);break;case 'Smiley':B=new FCKToolbarButton('Smiley',FCKLang.InsertSmileyLbl,FCKLang.InsertSmiley);break;case 'PageBreak':B=new FCKToolbarButton('PageBreak',FCKLang.PageBreakLbl,FCKLang.PageBreak);break;case 'UniversalKey':B=new FCKToolbarButton('UniversalKey',FCKLang.UniversalKeyboard);break;case 'Rule':B=new FCKToolbarButton('InsertHorizontalRule',FCKLang.InsertLineLbl,FCKLang.InsertLine,null,false,true);break;case 'JustifyLeft':B=new FCKToolbarButton('JustifyLeft',FCKLang.LeftJustify,null,null,false,true);break;case 'JustifyCenter':B=new FCKToolbarButton('JustifyCenter',FCKLang.CenterJustify,null,null,false,true);break;case 'JustifyRight':B=new FCKToolbarButton('JustifyRight',FCKLang.RightJustify,null,null,false,true);break;case 'JustifyFull':B=new FCKToolbarButton('JustifyFull',FCKLang.BlockJustify,null,null,false,true);break;case 'Style':B=new FCKToolbarStyleCombo();break;case 'FontName':B=new FCKToolbarFontsCombo();break;case 'FontSize':B=new FCKToolbarFontSizeCombo();break;case 'FontFormat':B=new FCKToolbarFontFormatCombo();break;case 'TextColor':B=new FCKToolbarPanelButton('TextColor',FCKLang.TextColor);break;case 'BGColor':B=new FCKToolbarPanelButton('BGColor',FCKLang.BGColor);break;case 'Find':B=new FCKToolbarButton('Find',FCKLang.Find);break;case 'Replace':B=new FCKToolbarButton('Replace',FCKLang.Replace);break;case 'Form':B=new FCKToolbarButton('Form',FCKLang.Form);break;case 'Checkbox':B=new FCKToolbarButton('Checkbox',FCKLang.Checkbox);break;case 'Radio':B=new FCKToolbarButton('Radio',FCKLang.RadioButton);break;case 'TextField':B=new FCKToolbarButton('TextField',FCKLang.TextField);break;case 'Textarea':B=new FCKToolbarButton('Textarea',FCKLang.Textarea);break;case 'HiddenField':B=new FCKToolbarButton('HiddenField',FCKLang.HiddenField);break;case 'Button':B=new FCKToolbarButton('Button',FCKLang.Button);break;case 'Select':B=new FCKToolbarButton('Select',FCKLang.SelectionField);break;case 'ImageButton':B=new FCKToolbarButton('ImageButton',FCKLang.ImageButton);break;default:alert(FCKLang.UnknownToolbarItem.replace(/%1/g,A));return null;};FCKToolbarItems.LoadedItems[A]=B;return B;}
+var FCKToolbar=function(){this.Items=new Array();var e=this.DOMTable=document.createElement('table');e.className='TB_Toolbar';e.style.styleFloat=e.style.cssFloat=FCKLang.Dir=='rtl'?'right':'left';e.cellPadding=0;e.cellSpacing=0;e.border=0;this.DOMRow=e.insertRow(-1);var A=this.DOMRow.insertCell(-1);A.className='TB_Start';A.innerHTML='<img src="'+FCKConfig.SkinPath+'images/toolbar.start.gif" width="7" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">';FCKToolbarSet.DOMElement.appendChild(e);};FCKToolbar.prototype.AddItem=function(A){this.Items[this.Items.length]=A;A.CreateInstance(this);};FCKToolbar.prototype.AddSeparator=function(){var A=this.DOMRow.insertCell(-1);A.unselectable='on';A.innerHTML='<img src="'+FCKConfig.SkinPath+'images/toolbar.separator.gif" width="5" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">';};FCKToolbar.prototype.AddTerminator=function(){var A=this.DOMRow.insertCell(-1);A.className='TB_End';A.innerHTML='<img src="'+FCKConfig.SkinPath+'images/toolbar.end.gif" width="12" height="21" style="VISIBILITY: hidden" onload="this.style.visibility = \'\';" unselectable="on">';};
+var FCKToolbarBreak=function(){var A=document.createElement('div');A.className='TB_Break';A.style.clear=FCKLang.Dir=='rtl'?'left':'right';FCKToolbarSet.DOMElement.appendChild(A);}
+var FCKToolbarSet=FCK.ToolbarSet=new Object();document.getElementById('ExpandHandle').title=FCKLang.ToolbarExpand;document.getElementById('CollapseHandle').title=FCKLang.ToolbarCollapse;FCKToolbarSet.Toolbars=new Array();FCKToolbarSet.ItemsWysiwygOnly=new Array();FCKToolbarSet.ItemsContextSensitive=new Array();FCKToolbarSet.Expand=function(){document.getElementById('Collapsed').style.display='none';document.getElementById('Expanded').style.display='';if (!FCKBrowserInfo.IsIE){window.setTimeout("window.onresize()",1);};};FCKToolbarSet.Collapse=function(){document.getElementById('Collapsed').style.display='';document.getElementById('Expanded').style.display='none';if (!FCKBrowserInfo.IsIE){window.setTimeout("window.onresize()",1);};};FCKToolbarSet.Restart=function(){if (!FCKConfig.ToolbarCanCollapse||FCKConfig.ToolbarStartExpanded) this.Expand();else this.Collapse();document.getElementById('CollapseHandle').style.display=FCKConfig.ToolbarCanCollapse?'':'none';};FCKToolbarSet.Load=function(A){this.DOMElement=document.getElementById('eToolbar');var B=FCKConfig.ToolbarSets[A];if (!B){alert(FCKLang.UnknownToolbarSet.replace(/%1/g,A));return;};this.Toolbars=new Array();for (var x=0;x<B.length;x++){var C=B[x];var D;if (typeof(C)=='string'){if (C=='/') D=new FCKToolbarBreak();}else{D=new FCKToolbar();for (var j=0;j<C.length;j++){var E=C[j];if (E=='-') D.AddSeparator();else{var F=FCKToolbarItems.GetItem(E);if (F){D.AddItem(F);if (!F.SourceView) this.ItemsWysiwygOnly[this.ItemsWysiwygOnly.length]=F;if (F.ContextSensitive) this.ItemsContextSensitive[this.ItemsContextSensitive.length]=F;};};};D.AddTerminator();};this.Toolbars[this.Toolbars.length]=D;};};FCKToolbarSet.RefreshModeState=function(){if (FCK.EditMode==FCK_EDITMODE_WYSIWYG){for (var i=0;i<FCKToolbarSet.ItemsWysiwygOnly.length;i++) FCKToolbarSet.ItemsWysiwygOnly[i].Enable();FCKToolbarSet.RefreshItemsState();}else{FCKToolbarSet.RefreshItemsState();for (var i=0;i<FCKToolbarSet.ItemsWysiwygOnly.length;i++) FCKToolbarSet.ItemsWysiwygOnly[i].Disable();};};FCKToolbarSet.RefreshItemsState=function(){for (var i=0;i<FCKToolbarSet.ItemsContextSensitive.length;i++) FCKToolbarSet.ItemsContextSensitive[i].RefreshState();};
+var FCKDialog=new Object();FCKDialog.OpenDialog=function(A,B,C,D,E,F,G,H){var I=new Object();I.Title=B;I.Page=C;I.Editor=window;I.CustomValue=F;var J=FCKConfig.BasePath+'fckdialog.html';this.Show(I,A,J,D,E,G,H);};
+FCKDialog.Show=function(A,B,C,D,E,F){if (!F) F=window;F.showModalDialog(C,A,"dialogWidth:"+D+"px;dialogHeight:"+E+"px;help:no;scroll:no;status:no");};
+var FCKContextMenuItem=function(A,B,C,D){this.ContextMenu=A;this.Command=FCKCommands.GetCommand(B);this.Label=C?C:B;this.HasIcon=D?true:false;};function FCKContextMenuItem_OnMouseOver(){if (this.className!='CM_Disabled') this.className='CM_Over';};function FCKContextMenuItem_OnMouseOut(){if (this.className!='CM_Disabled') this.className='CM_Option';};function FCKContextMenuItem_OnClick(){if (this.className!='CM_Disabled'){this.FCKContextMenuItem.ContextMenu.Hide();this.FCKContextMenuItem.Command.Execute();};return false;};FCKContextMenuItem.prototype.CreateTableRow=function(A){this._Row=A.insertRow(-1);this._Row.className='CM_Disabled';this._Row.FCKContextMenuItem=this;this._Row.onmouseover=FCKContextMenuItem_OnMouseOver;this._Row.onmouseout=FCKContextMenuItem_OnMouseOut;this._Row.onclick=FCKContextMenuItem_OnClick;var B=this._Row.insertCell(-1);B.className='CM_Icon';if (this.HasIcon) B.innerHTML='<img alt="" src="'+FCKConfig.SkinPath+'toolbar/'+this.Command.Name.toLowerCase()+'.gif" width="21" height="20" unselectable="on">';B=this._Row.insertCell(-1);B.className='CM_Label';B.unselectable='on';B.noWrap=true;B.innerHTML=this.Label;};FCKContextMenuItem.prototype.SetVisible=function(A){this._Row.style.display=A?'':'none';};FCKContextMenuItem.prototype.RefreshState=function(){switch (this.Command.GetState()){case FCK_TRISTATE_ON:case FCK_TRISTATE_OFF:this._Row.className='CM_Option';break;default:this._Row.className='CM_Disabled';break;};};
+var FCKContextMenuSeparator=function(){};FCKContextMenuSeparator.prototype.CreateTableRow=function(A){this._Row=A.insertRow(-1);this._Row.className='CM_Separator';var B=this._Row.insertCell(-1);B.className='CM_Icon';B=this._Row.insertCell(-1);B.className='CM_Label';B.innerHTML='<div></div>';};FCKContextMenuSeparator.prototype.SetVisible=function(A){this._Row.style.display=A?'':'none';};FCKContextMenuSeparator.prototype.RefreshState=function(){};
+var FCKContextMenuGroup=function(A,B,C,D,E){this.IsVisible=true;this.Items=new Array();if (A) this.Add(new FCKContextMenuSeparator());if (B&&C&&D) this.Add(new FCKContextMenuItem(B,C,D,E));this.ValidationFunction=null;};FCKContextMenuGroup.prototype.Add=function(A){this.Items[this.Items.length]=A;};FCKContextMenuGroup.prototype.CreateTableRows=function(A){for (var i=0;i<this.Items.length;i++){this.Items[i].CreateTableRow(A);};};FCKContextMenuGroup.prototype.SetVisible=function(A){for (var i=0;i<this.Items.length;i++){this.Items[i].SetVisible(A);};this.IsVisible=A;};FCKContextMenuGroup.prototype.RefreshState=function(){if (!this.IsVisible) return;for (var i=0;i<this.Items.length;i++){this.Items[i].RefreshState();};}
+var FCKContextMenu=new Object();FCKContextMenu._IsLoaded=false;FCKContextMenu.Reload=function(){this._Div=this._Document.createElement('DIV');this._Div.className='CM_ContextMenu';this._Div.style.position='absolute';this._Div.style.visibility='hidden';this._Document.body.appendChild(this._Div);var A=this._Document.createElement('TABLE');A.cellSpacing=0;A.cellPadding=0;A.border=0;this._Div.appendChild(A);this.Groups=new Object();for (var i=0;i<FCKConfig.ContextMenu.length;i++){var B=FCKConfig.ContextMenu[i];this.Groups[B]=this._GetGroup(B);this.Groups[B].CreateTableRows(A);};this._IsLoaded=true;};FCKContextMenu._GetGroup=function(A){var B;switch (A){case 'Generic':B=new FCKContextMenuGroup();B.Add(new FCKContextMenuItem(this,'Cut',FCKLang.Cut,true));B.Add(new FCKContextMenuItem(this,'Copy',FCKLang.Copy,true));B.Add(new FCKContextMenuItem(this,'Paste',FCKLang.Paste,true));break;case 'Link':B=new FCKContextMenuGroup();B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'Link',FCKLang.EditLink,true));B.Add(new FCKContextMenuItem(this,'Unlink',FCKLang.RemoveLink,true));break;case 'TableCell':B=new FCKContextMenuGroup();B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableInsertRow',FCKLang.InsertRow,true));B.Add(new FCKContextMenuItem(this,'TableDeleteRows',FCKLang.DeleteRows,true));B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableInsertColumn',FCKLang.InsertColumn,true));B.Add(new FCKContextMenuItem(this,'TableDeleteColumns',FCKLang.DeleteColumns,true));B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableInsertCell',FCKLang.InsertCell,true));B.Add(new FCKContextMenuItem(this,'TableDeleteCells',FCKLang.DeleteCells,true));B.Add(new FCKContextMenuItem(this,'TableMergeCells',FCKLang.MergeCells,true));B.Add(new FCKContextMenuItem(this,'TableSplitCell',FCKLang.SplitCell,true));B.Add(new FCKContextMenuSeparator());B.Add(new FCKContextMenuItem(this,'TableCellProp',FCKLang.CellProperties,true));B.Add(new FCKContextMenuItem(this,'TableProp',FCKLang.TableProperties,true));break;case 'Table':return new FCKContextMenuGroup(true,this,'Table',FCKLang.TableProperties,true);case 'Image':return new FCKContextMenuGroup(true,this,'Image',FCKLang.ImageProperties,true);case 'Flash':return new FCKContextMenuGroup(true,this,'Flash',FCKLang.FlashProperties,true);case 'Form':return new FCKContextMenuGroup(true,this,'Form',FCKLang.FormProp,true);case 'Checkbox':return new FCKContextMenuGroup(true,this,'Checkbox',FCKLang.CheckboxProp,true);case 'Radio':return new FCKContextMenuGroup(true,this,'Radio',FCKLang.RadioButtonProp,true);case 'TextField':return new FCKContextMenuGroup(true,this,'TextField',FCKLang.TextFieldProp,true);case 'HiddenField':return new FCKContextMenuGroup(true,this,'HiddenField',FCKLang.HiddenFieldProp,true);case 'ImageButton':return new FCKContextMenuGroup(true,this,'ImageButton',FCKLang.ImageButtonProp,true);case 'Button':return new FCKContextMenuGroup(true,this,'Button',FCKLang.ButtonProp,true);case 'Select':return new FCKContextMenuGroup(true,this,'Select',FCKLang.SelectionFieldProp,true);case 'Textarea':return new FCKContextMenuGroup(true,this,'Textarea',FCKLang.TextareaProp,true);case 'BulletedList':return new FCKContextMenuGroup(true,this,'BulletedList',FCKLang.BulletedListProp,true);case 'NumberedList':return new FCKContextMenuGroup(true,this,'NumberedList',FCKLang.NumberedListProp,true);case 'Anchor':return new FCKContextMenuGroup(true,this,'Anchor',FCKLang.AnchorProp,true);};return B;};FCKContextMenu.RefreshState=function(){var A=FCKSelection.GetSelectedElement();var B;if (A) B=A.tagName;if (this.Groups['Link']) this.Groups['Link'].SetVisible(FCK.GetNamedCommandState('Unlink')!=FCK_TRISTATE_DISABLED);if (this.Groups['TableCell']) this.Groups['TableCell'].SetVisible(B!='TABLE'&&FCKSelection.HasAncestorNode('TABLE'));if (this.Groups['Table']) this.Groups['Table'].SetVisible(B=='TABLE');if (this.Groups['Image']) this.Groups['Image'].SetVisible(B=='IMG'&&!A.getAttribute('_fckfakelement'));if (this.Groups['Flash']) this.Groups['Flash'].SetVisible(B=='IMG'&&A.getAttribute('_fckflash'));if (this.Groups['Anchor']) this.Groups['Anchor'].SetVisible(B=='IMG'&&A.getAttribute('_fckanchor'));if (this.Groups['BulletedList']) this.Groups['BulletedList'].SetVisible(FCKSelection.HasAncestorNode('UL'));if (this.Groups['NumberedList']) this.Groups['NumberedList'].SetVisible(FCKSelection.HasAncestorNode('OL'));if (this.Groups['Select']) this.Groups['Select'].SetVisible(B=='SELECT');if (this.Groups['Textarea']) this.Groups['Textarea'].SetVisible(B=='TEXTAREA');if (this.Groups['Form']) this.Groups['Form'].SetVisible(FCKSelection.HasAncestorNode('FORM'));if (this.Groups['Checkbox']) this.Groups['Checkbox'].SetVisible(B=='INPUT'&&A.type=='checkbox');if (this.Groups['Radio']) this.Groups['Radio'].SetVisible(B=='INPUT'&&A.type=='radio');if (this.Groups['TextField']) this.Groups['TextField'].SetVisible(B=='INPUT'&&(A.type=='text'||A.type=='password'));if (this.Groups['HiddenField']) this.Groups['HiddenField'].SetVisible(B=='INPUT'&&A.type=='hidden');if (this.Groups['ImageButton']) this.Groups['ImageButton'].SetVisible(B=='INPUT'&&A.type=='image');if (this.Groups['Button']) this.Groups['Button'].SetVisible(B=='INPUT'&&(A.type=='button'||A.type=='submit'||A.type=='reset'));for (var o in this.Groups){this.Groups[o].RefreshState();};};
+function FCKContextMenu_OnContextMenu() { return false;};FCKContextMenu.Show=function(x,y){if (!this._Popup){this._Popup=window.createPopup();this._Document=this._Popup.document;this._Document.createStyleSheet(FCKConfig.SkinPath+'fck_contextmenu.css');this._Document.oncontextmenu=FCKContextMenu_OnContextMenu;aCleanupDocs[aCleanupDocs.length]=this._Document;};if (!this._IsLoaded){this.Reload();this._Div.style.visibility='';};this.RefreshState();this._Popup.show(x,y,0,0);this._Popup.show(x,y,this._Div.offsetWidth,this._Div.offsetHeight);};FCKContextMenu.Hide=function(){if (this._Popup) this._Popup.hide();}
+if (!FCKConfig.PluginsPath.endsWith('/')) FCKConfig.PluginsPath+='/';var FCKPlugin=function(A,B,C){this.Name=A;this.BasePath=C?C:FCKConfig.PluginsPath;this.Path=this.BasePath+A+'/';if (!B||B.length==0) this.AvailableLangs=new Array();else this.AvailableLangs=B.split(',');};FCKPlugin.prototype.Load=function(){if (this.AvailableLangs.length>0){var A;if (this.AvailableLangs.indexOf(FCKLanguageManager.ActiveLanguage.Code)>=0) A=FCKLanguageManager.ActiveLanguage.Code;else A=this.AvailableLangs[0];FCKScriptLoader.AddScript(this.Path+'lang/'+A+'.js');};FCKScriptLoader.AddScript(this.Path+'fckplugin.js');}
+var FCKPlugins=FCK.Plugins=new Object();FCKPlugins.ItemsCount=0;FCKPlugins.Loaded=false;FCKPlugins.Items=new Object();for (var i=0;i<FCKConfig.Plugins.Items.length;i++){var oItem=FCKConfig.Plugins.Items[i];FCKPlugins.Items[oItem[0]]=new FCKPlugin(oItem[0],oItem[1],oItem[2]);FCKPlugins.ItemsCount++;};FCKPlugins.Load=function(){for (var s in this.Items) this.Items[s].Load();this.Loaded=true;FCKPlugins.Load=null;}
+if (FCKLang&&window.document.dir.toLowerCase()!=FCKLang.Dir.toLowerCase()) window.document.dir=FCKLang.Dir;if (FCKConfig.ForcePasteAsPlainText) FCK.Events.AttachEvent("OnPaste",FCK.Paste);if (FCKPlugins.ItemsCount>0){FCKScriptLoader.OnEmpty=CompleteLoading;FCKPlugins.Load();}else CompleteLoading();function CompleteLoading(){FCKToolbarSet.Name=FCKURLParams['Toolbar']||'Default';FCKToolbarSet.Load(FCKToolbarSet.Name);FCKToolbarSet.Restart();FCK.AttachToOnSelectionChange(FCKToolbarSet.RefreshItemsState);FCK.SetStatus(FCK_STATUS_COMPLETE);if (typeof(window.parent.FCKeditor_OnComplete)=='function') window.parent.FCKeditor_OnComplete(FCK);}
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/_translationstatus.txt
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/_translationstatus.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/_translationstatus.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,67 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: _translationstatus.txt
+ * Translation Status.
+ * A useful site with languages information:
+ * http://www.omniglot.com/
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+PROCESSING: ar.js Found: 375 Missing: 2
+PROCESSING: bg.js Found: 375 Missing: 2
+PROCESSING: bs.js Found: 232 Missing: 145
+PROCESSING: ca.js Found: 375 Missing: 2
+PROCESSING: cs.js Found: 352 Missing: 25
+PROCESSING: da.js Found: 375 Missing: 2
+PROCESSING: de.js Found: 375 Missing: 2
+PROCESSING: el.js Found: 232 Missing: 145
+PROCESSING: en-au.js Found: 375 Missing: 2
+PROCESSING: en-uk.js Found: 375 Missing: 2
+PROCESSING: eo.js Found: 352 Missing: 25
+PROCESSING: es.js Found: 375 Missing: 2
+PROCESSING: et.js Found: 232 Missing: 145
+PROCESSING: eu.js Found: 375 Missing: 2
+PROCESSING: fa.js Found: 358 Missing: 19
+PROCESSING: fi.js Found: 375 Missing: 2
+PROCESSING: fo.js Found: 358 Missing: 19
+PROCESSING: fr.js Found: 375 Missing: 2
+PROCESSING: gl.js Found: 375 Missing: 2
+PROCESSING: he.js Found: 375 Missing: 2
+PROCESSING: hr.js Found: 375 Missing: 2
+PROCESSING: hu.js Found: 377 Missing: 0
+PROCESSING: it.js Found: 375 Missing: 2
+PROCESSING: ja.js Found: 375 Missing: 2
+PROCESSING: ko.js Found: 375 Missing: 2
+PROCESSING: lt.js Found: 375 Missing: 2
+PROCESSING: mn.js Found: 232 Missing: 145
+PROCESSING: ms.js Found: 358 Missing: 19
+PROCESSING: nl.js Found: 375 Missing: 2
+PROCESSING: no.js Found: 375 Missing: 2
+PROCESSING: pl.js Found: 352 Missing: 25
+PROCESSING: pt-br.js Found: 375 Missing: 2
+PROCESSING: pt.js Found: 375 Missing: 2
+PROCESSING: ro.js Found: 375 Missing: 2
+PROCESSING: ru.js Found: 375 Missing: 2
+PROCESSING: sk.js Found: 375 Missing: 2
+PROCESSING: sl.js Found: 375 Missing: 2
+PROCESSING: sr-latn.js Found: 375 Missing: 2
+PROCESSING: sr.js Found: 375 Missing: 2
+PROCESSING: sv.js Found: 375 Missing: 2
+PROCESSING: th.js Found: 352 Missing: 25
+PROCESSING: tr.js Found: 374 Missing: 3
+PROCESSING: uk.js Found: 375 Missing: 2
+PROCESSING: vi.js Found: 374 Missing: 3
+PROCESSING: zh-cn.js Found: 375 Missing: 2
+PROCESSING: zh.js Found: 375 Missing: 2
\ No newline at end of file
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/lang/_translationstatus.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/ar.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/ar.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/ar.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: ar.js
+ * Arabic language file.
+ *
+ * File Authors:
+ * Abdul-Aziz Abdul-Kareem Al-Oraij (http://aziz.oraij.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "rtl",
+
+ToolbarCollapse : "ضÙ
شرÙØ· اÙأدÙات",
+ToolbarExpand : "تÙ
دد شرÙØ· اÙأدÙات",
+
+// Toolbar Items and Context Menu
+Save : "ØÙظ",
+NewPage : "صÙØØ© جدÙدة",
+Preview : "Ù
عاÙÙØ© اÙصÙØØ©",
+Cut : "Ùص",
+Copy : "Ùسخ",
+Paste : "ÙصÙ",
+PasteText : "Ùص٠ÙÙص بسÙØ·",
+PasteWord : "Ùص٠Ù
Ù ÙÙرد",
+Print : "طباعة",
+SelectAll : "تØدÙد اÙÙÙ",
+RemoveFormat : "إزاÙØ© اÙتÙسÙÙات",
+InsertLinkLbl : "رابط",
+InsertLink : "إدراج/تØرÙر رابط",
+RemoveLink : "إزاÙØ© رابط",
+Anchor : "إدراج/تØرÙر إشارة Ù
رجعÙØ©",
+InsertImageLbl : "صÙرة",
+InsertImage : "إدراج/تØرÙر صÙرة",
+InsertFlashLbl : "ÙÙاش",
+InsertFlash : "إدراج/تØرÙر ÙÙÙÙ
ÙÙاش",
+InsertTableLbl : "جدÙÙ",
+InsertTable : "إدراج/تØرÙر جدÙÙ",
+InsertLineLbl : "خط ÙاصÙ",
+InsertLine : "إدراج خط ÙاصÙ",
+InsertSpecialCharLbl: "رÙ
Ùز",
+InsertSpecialChar : "إدراج رÙ
Ùز..Ù",
+InsertSmileyLbl : "ابتساÙ
ات",
+InsertSmiley : "إدراج ابتساÙ
ات",
+About : "ØÙÙ FCKeditor",
+Bold : "غاÙ
Ù",
+Italic : "Ù
ائÙ",
+Underline : "تسطÙر",
+StrikeThrough : "ÙتÙسط٠خط",
+Subscript : "Ù
ÙØ®Ùض",
+Superscript : "Ù
رتÙع",
+LeftJustify : "Ù
Øاذاة Ø¥Ù٠اÙÙسار",
+CenterJustify : "تÙسÙØ·",
+RightJustify : "Ù
Øاذاة Ø¥Ù٠اÙÙÙ
ÙÙ",
+BlockJustify : "ضبط",
+DecreaseIndent : "Ø¥ÙÙاص اÙÙ
ساÙØ© اÙبادئة",
+IncreaseIndent : "زÙادة اÙÙ
ساÙØ© اÙبادئة",
+Undo : "تراجع",
+Redo : "إعادة",
+NumberedListLbl : "تعداد رÙÙ
Ù",
+NumberedList : "إدراج/Ø¥Ùغاء تعداد رÙÙ
Ù",
+BulletedListLbl : "تعداد ÙÙØ·Ù",
+BulletedList : "إدراج/Ø¥Ùغاء تعداد ÙÙØ·Ù",
+ShowTableBorders : "Ù
عاÙÙØ© ØدÙد اÙجداÙÙ",
+ShowDetails : "Ù
عاÙÙØ© اÙتÙاصÙÙ",
+Style : "ÙÙ
Ø·",
+FontFormat : "تÙسÙÙ",
+Font : "خط",
+FontSize : "ØجÙ
اÙخط",
+TextColor : "ÙÙ٠اÙÙص",
+BGColor : "ÙÙ٠اÙØ®ÙÙÙØ©",
+Source : "Ø´Ùرة اÙÙ
صدر",
+Find : "بØØ«",
+Replace : "استبداÙ",
+SpellCheck : "تدÙÙ٠إÙ
ÙائÙ",
+UniversalKeyboard : "ÙÙØØ© اÙÙ
ÙاتÙØ Ø§ÙعاÙÙ
ÙØ©",
+
+Form : "ÙÙ
Ùذج",
+Checkbox : "خاÙØ© اختÙار",
+RadioButton : "زر Ø®Ùار",
+TextField : "Ù
ربع Ùص",
+Textarea : "ÙاØÙØ© Ùص",
+HiddenField : "إدراج ØÙÙ Ø®ÙÙ",
+Button : "زر ضغط",
+SelectionField : "ÙائÙ
Ø© Ù
ÙسدÙØ©",
+ImageButton : "زر صÙرة",
+
+// Context Menu
+EditLink : "تØرÙر رابط",
+InsertRow : "إدراج صÙ",
+DeleteRows : "Øذ٠صÙÙÙ",
+InsertColumn : "إدراج عÙ
Ùد",
+DeleteColumns : "Øذ٠أعÙ
دة",
+InsertCell : "إدراج Ø®ÙÙØ©",
+DeleteCells : "ØØ°Ù Ø®ÙاÙا",
+MergeCells : "دÙ
ج Ø®ÙاÙا",
+SplitCell : "تÙسÙÙ
Ø®ÙÙØ©",
+CellProperties : "خصائص اÙØ®ÙÙØ©",
+TableProperties : "خصائص اÙجدÙÙ",
+ImageProperties : "خصائص اÙصÙرة",
+FlashProperties : "خصائص ÙÙÙÙ
اÙÙÙاش",
+
+AnchorProp : "خصائص اÙإشارة اÙÙ
رجعÙØ©",
+ButtonProp : "خصائص زر اÙضغط",
+CheckboxProp : "خصائص خاÙØ© اÙاختÙار",
+HiddenFieldProp : "خصائص اÙØÙ٠اÙØ®ÙÙ",
+RadioButtonProp : "خصائص زر اÙØ®Ùار",
+ImageButtonProp : "خصائص زر اÙصÙرة",
+TextFieldProp : "خصائص Ù
ربع اÙÙص",
+SelectionFieldProp : "خصائص اÙÙائÙ
Ø© اÙÙ
ÙسدÙØ©",
+TextareaProp : "خصائص ÙاØÙØ© اÙÙص",
+FormProp : "خصائص اÙÙÙ
Ùذج",
+
+FontFormats : "عادÙ;Ù
ÙسÙÙ;دÙس;اÙعÙÙا٠1;اÙعÙÙا٠2;اÙعÙÙا٠3;اÙعÙÙا٠4;اÙعÙÙا٠5;اÙعÙÙا٠6",
+
+// Alerts and Messages
+ProcessingXHTML : "اÙتظر ÙÙÙÙا٠رÙØ«Ù
ا تتÙ
Ù
عاÙÙجةâ XHTML. ÙÙ Ùستغر٠طÙÙÙاÙ...",
+Done : "تÙ
",
+PasteWordConfirm : "Ùبد٠أ٠اÙÙص اÙÙ
راد ÙصÙÙ Ù
ÙسÙØ® Ù
٠برÙاÙ
ج ÙÙرد. Ù٠تÙد تÙظÙÙÙ Ùب٠اÙشرÙع Ù٠عÙ
ÙÙØ© اÙÙصÙØ",
+NotCompatiblePaste : "Ùذ٠اÙÙ
Ùزة تØتاج ÙÙ
تصÙØ Ù
٠اÙÙÙعInternet Explorer إصدار 5.5 ÙÙ
ا ÙÙÙ. Ù٠تÙد اÙÙص٠دÙ٠تÙظÙ٠اÙÙÙدØ",
+UnknownToolbarItem : "عÙصر شرÙØ· أدÙات غÙر Ù
عرÙÙ \"%1\"",
+UnknownCommand : "Ø£Ù
ر غÙر Ù
عرÙÙ \"%1\"",
+NotImplemented : "ÙÙ
ÙتÙ
دعÙ
Ùذا اÙØ£Ù
ر",
+UnknownToolbarSet : "ÙÙ
أتÙ
ÙÙ Ù
٠اÙعثÙر عÙÙ Ø·ÙÙ
اÙأدÙات \"%1\" ",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "Ù
ÙاÙÙ",
+DlgBtnCancel : "Ø¥Ùغاء اÙØ£Ù
ر",
+DlgBtnClose : "إغÙاÙ",
+DlgBtnBrowseServer : "تصÙØ Ø§ÙخادÙ
",
+DlgAdvancedTag : "Ù
تÙدÙ
",
+DlgOpOther : "<أخرÙ>",
+DlgInfoTab : "Ù
عÙÙÙ
ات",
+DlgAlertUrl : "اÙرجاء Ùتابة عÙÙا٠اÙØ¥ÙترÙت",
+
+// General Dialogs Labels
+DlgGenNotSet : "<بدÙ٠تØدÙد>",
+DlgGenId : "Id",
+DlgGenLangDir : "اتجا٠اÙÙص",
+DlgGenLangDirLtr : "اÙÙسار ÙÙÙÙ
ÙÙ (LTR)",
+DlgGenLangDirRtl : "اÙÙÙ
ÙÙ ÙÙÙسار (RTL)",
+DlgGenLangCode : "رÙ
ز اÙÙغة",
+DlgGenAccessKey : "Ù
ÙاتÙØ Ø§Ùاختصار",
+DlgGenName : "اÙاسÙ
",
+DlgGenTabIndex : "اÙترتÙب",
+DlgGenLongDescr : "عÙÙا٠اÙÙص٠اÙÙ
ÙصÙÙ",
+DlgGenClass : "Ùئات اÙتÙسÙÙ",
+DlgGenTitle : "تÙÙ
ÙØ Ø§Ùشاشة",
+DlgGenContType : "ÙÙع اÙتÙÙ
ÙØ",
+DlgGenLinkCharset : "ترÙ
Ùز اÙÙ
ادة اÙÙ
رطÙÙبة",
+DlgGenStyle : "ÙÙ
Ø·",
+
+// Image Dialog
+DlgImgTitle : "خصائص اÙصÙرة",
+DlgImgInfoTab : "Ù
عÙÙÙ
ات اÙصÙرة",
+DlgImgBtnUpload : "أرسÙÙا ÙÙخادÙ
",
+DlgImgURL : "Ù
ÙÙع اÙصÙرة",
+DlgImgUpload : "رÙع",
+DlgImgAlt : "اÙÙصÙ",
+DlgImgWidth : "اÙعرض",
+DlgImgHeight : "اÙارتÙاع",
+DlgImgLockRatio : "تÙاس٠اÙØجÙ
",
+DlgBtnResetSize : "استعادة اÙØجÙ
اÙأصÙÙ",
+DlgImgBorder : "سÙ
٠اÙØدÙد",
+DlgImgHSpace : "تباعد Ø£ÙÙÙ",
+DlgImgVSpace : "تباعد عÙ
ÙدÙ",
+DlgImgAlign : "Ù
Øاذاة",
+DlgImgAlignLeft : "Ùسار",
+DlgImgAlignAbsBottom: "أسÙ٠اÙÙص",
+DlgImgAlignAbsMiddle: "Ùسط اÙسطر",
+DlgImgAlignBaseline : "عÙ٠اÙسطر",
+DlgImgAlignBottom : "أسÙÙ",
+DlgImgAlignMiddle : "Ùسط",
+DlgImgAlignRight : "ÙÙ
ÙÙ",
+DlgImgAlignTextTop : "أعÙ٠اÙÙص",
+DlgImgAlignTop : "أعÙÙ",
+DlgImgPreview : "Ù
عاÙÙØ©",
+DlgImgAlertUrl : "ÙضÙا٠اÙتب اÙÙ
ÙÙع اÙذ٠تÙجد عÙÙÙ Ùذ٠اÙصÙرة.",
+DlgImgLinkTab : "اÙرابط",
+
+// Flash Dialog
+DlgFlashTitle : "خصائص ÙÙÙÙ
اÙÙÙاش",
+DlgFlashChkPlay : "تشغÙ٠تÙÙائÙ",
+DlgFlashChkLoop : "تÙرار",
+DlgFlashChkMenu : "تÙ
ÙÙÙ ÙائÙ
Ø© ÙÙÙÙ
اÙÙÙاش",
+DlgFlashScale : "اÙØجÙ
",
+DlgFlashScaleAll : "إظÙار اÙÙÙ",
+DlgFlashScaleNoBorder : "بÙا ØدÙد",
+DlgFlashScaleFit : "ضبط تاÙ
",
+
+// Link Dialog
+DlgLnkWindowTitle : "ارتباط تشعبÙ",
+DlgLnkInfoTab : "Ù
عÙÙÙ
ات اÙرابط",
+DlgLnkTargetTab : "اÙÙدÙ",
+
+DlgLnkType : "ÙÙع اÙربط",
+DlgLnkTypeURL : "اÙعÙÙاÙ",
+DlgLnkTypeAnchor : "Ù
Ùا٠ÙÙ Ùذا اÙÙ
ستÙد",
+DlgLnkTypeEMail : "برÙد Ø¥ÙÙترÙÙÙ",
+DlgLnkProto : "اÙبرÙتÙÙÙÙ",
+DlgLnkProtoOther : "<أخرÙ>",
+DlgLnkURL : "اÙÙ
ÙÙع",
+DlgLnkAnchorSel : "اختر عÙاÙ
Ø© Ù
رجعÙØ©",
+DlgLnkAnchorByName : "Øسب اسÙ
اÙعÙاÙ
Ø©",
+DlgLnkAnchorById : "Øسب تعرÙ٠اÙعÙصر",
+DlgLnkNoAnchors : "<Ùا ÙÙجد عÙاÙ
ات Ù
رجعÙØ© ÙÙ Ùذا اÙÙ
ستÙد>",
+DlgLnkEMail : "عÙÙا٠برÙد Ø¥ÙÙترÙÙÙ",
+DlgLnkEMailSubject : "Ù
ÙضÙع اÙرساÙØ©",
+DlgLnkEMailBody : "Ù
ØتÙ٠اÙرساÙØ©",
+DlgLnkUpload : "رÙع",
+DlgLnkBtnUpload : "أرسÙÙا ÙÙخادÙ
",
+
+DlgLnkTarget : "اÙÙدÙ",
+DlgLnkTargetFrame : "<إطار>",
+DlgLnkTargetPopup : "<ÙاÙذة Ù
ÙبثÙØ©>",
+DlgLnkTargetBlank : "إطار جدÙد (_blank)",
+DlgLnkTargetParent : "اÙإطار اÙأص٠(_parent)",
+DlgLnkTargetSelf : "ÙÙس اÙإطار (_self)",
+DlgLnkTargetTop : "صÙØØ© ÙاÙ
ÙØ© (_top)",
+DlgLnkTargetFrameName : "اسÙ
اÙإطار اÙÙدÙ",
+DlgLnkPopWinName : "تسÙ
ÙØ© اÙÙاÙذة اÙÙ
ÙبثÙØ©",
+DlgLnkPopWinFeat : "خصائص اÙÙاÙذة اÙÙ
ÙبثÙØ©",
+DlgLnkPopResize : "ÙابÙØ© ÙÙتØجÙÙ
",
+DlgLnkPopLocation : "شرÙØ· اÙعÙÙاÙ",
+DlgLnkPopMenu : "اÙÙÙائÙ
اÙرئÙسÙØ©",
+DlgLnkPopScroll : "أشرطة اÙتÙ
رÙر",
+DlgLnkPopStatus : "شرÙØ· اÙØاÙØ© اÙسÙÙÙ",
+DlgLnkPopToolbar : "شرÙØ· اÙأدÙات",
+DlgLnkPopFullScrn : "Ù
Ùئ اÙشاشة (IE)",
+DlgLnkPopDependent : "تابع (Netscape)",
+DlgLnkPopWidth : "اÙعرض",
+DlgLnkPopHeight : "اÙارتÙاع",
+DlgLnkPopLeft : "اÙتÙ
رÙز ÙÙÙسار",
+DlgLnkPopTop : "اÙتÙ
رÙز ÙÙأعÙÙ",
+
+DlnLnkMsgNoUrl : "ÙضÙا٠أدخ٠عÙÙا٠اÙÙ
ÙÙع اÙØ°Ù ÙØ´Ùر Ø¥ÙÙ٠اÙرابط",
+DlnLnkMsgNoEMail : "ÙضÙا٠أدخ٠عÙÙا٠اÙبرÙد اÙØ¥ÙÙترÙÙÙ",
+DlnLnkMsgNoAnchor : "ÙضÙا٠Øدد اÙعÙاÙ
Ø© اÙÙ
رجعÙØ© اÙÙ
رغÙبة",
+
+// Color Dialog
+DlgColorTitle : "اختر ÙÙÙاÙ",
+DlgColorBtnClear : "Ù
سØ",
+DlgColorHighlight : "تØدÙد",
+DlgColorSelected : "اختÙار",
+
+// Smiley Dialog
+DlgSmileyTitle : "إدراج ابتساÙ
ات ",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "إدراج رÙ
ز",
+
+// Table Dialog
+DlgTableTitle : "إدراج جدÙÙ",
+DlgTableRows : "صÙÙÙ",
+DlgTableColumns : "أعÙ
دة",
+DlgTableBorder : "سÙ
٠اÙØدÙد",
+DlgTableAlign : "اÙÙ
Øاذاة",
+DlgTableAlignNotSet : "<بدÙ٠تØدÙد>",
+DlgTableAlignLeft : "Ùسار",
+DlgTableAlignCenter : "Ùسط",
+DlgTableAlignRight : "ÙÙ
ÙÙ",
+DlgTableWidth : "اÙعرض",
+DlgTableWidthPx : "بÙسÙ",
+DlgTableWidthPc : "باÙÙ
ئة",
+DlgTableHeight : "اÙارتÙاع",
+DlgTableCellSpace : "تباعد اÙØ®ÙاÙا",
+DlgTableCellPad : "اÙÙ
ساÙØ© اÙبادئة",
+DlgTableCaption : "اÙÙصÙ",
+
+// Table Cell Dialog
+DlgCellTitle : "خصائص اÙØ®ÙÙØ©",
+DlgCellWidth : "اÙعرض",
+DlgCellWidthPx : "بÙسÙ",
+DlgCellWidthPc : "باÙÙ
ئة",
+DlgCellHeight : "اÙارتÙاع",
+DlgCellWordWrap : "اÙتÙا٠اÙÙص",
+DlgCellWordWrapNotSet : "<بدÙ٠تØدÙد>",
+DlgCellWordWrapYes : "ÙعÙ
",
+DlgCellWordWrapNo : "Ùا",
+DlgCellHorAlign : "اÙÙ
Øاذاة اÙØ£ÙÙÙØ©",
+DlgCellHorAlignNotSet : "<بدÙ٠تØدÙد>",
+DlgCellHorAlignLeft : "Ùسار",
+DlgCellHorAlignCenter : "Ùسط",
+DlgCellHorAlignRight: "ÙÙ
ÙÙ",
+DlgCellVerAlign : "اÙÙ
Øاذاة اÙعÙ
ÙدÙØ©",
+DlgCellVerAlignNotSet : "<بدÙ٠تØدÙد>",
+DlgCellVerAlignTop : "أعÙÙ",
+DlgCellVerAlignMiddle : "Ùسط",
+DlgCellVerAlignBottom : "أسÙÙ",
+DlgCellVerAlignBaseline : "عÙ٠اÙسطر",
+DlgCellRowSpan : "اÙ
تداد اÙصÙÙÙ",
+DlgCellCollSpan : "اÙ
تداد اÙأعÙ
دة",
+DlgCellBackColor : "ÙÙ٠اÙØ®ÙÙÙØ©",
+DlgCellBorderColor : "ÙÙ٠اÙØدÙد",
+DlgCellBtnSelect : "ØدÙد...",
+
+// Find Dialog
+DlgFindTitle : "بØØ«",
+DlgFindFindBtn : "ابØØ«",
+DlgFindNotFoundMsg : "ÙÙ
ÙتÙ
اÙعثÙر عÙ٠اÙÙص اÙÙ
Øدد.",
+
+// Replace Dialog
+DlgReplaceTitle : "استبداÙ",
+DlgReplaceFindLbl : "اÙبØØ« عÙ:",
+DlgReplaceReplaceLbl : "استبدا٠بÙ:",
+DlgReplaceCaseChk : "Ù
طابÙØ© ØاÙØ© اÙØ£ØرÙ",
+DlgReplaceReplaceBtn : "استبداÙ",
+DlgReplaceReplAllBtn : "استبدا٠اÙÙÙ",
+DlgReplaceWordChk : "اÙÙÙÙ
Ø© باÙÙاÙ
Ù ÙÙØ·",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "اÙإعدادات اÙØ£Ù
ÙÙØ© ÙÙÙ
تصÙØ Ø§Ùذ٠تستخدÙ
٠تÙ
Ùع اÙÙص٠اÙتÙÙائÙ. ÙضÙا٠استخدÙ
ÙÙØØ© اÙÙ
ÙاتÙØ ÙÙع٠ذÙÙ (Ctrl+V).",
+PasteErrorCut : "اÙإعدادات اÙØ£Ù
ÙÙØ© ÙÙÙ
تصÙØ Ø§Ùذ٠تستخدÙ
٠تÙ
Ùع اÙÙص اÙتÙÙائÙ. ÙضÙا٠استخدÙ
ÙÙØØ© اÙÙ
ÙاتÙØ ÙÙع٠ذÙÙ (Ctrl+X).",
+PasteErrorCopy : "اÙإعدادات اÙØ£Ù
ÙÙØ© ÙÙÙ
تصÙØ Ø§Ùذ٠تستخدÙ
٠تÙ
Ùع اÙÙسخ اÙتÙÙائÙ. ÙضÙا٠استخدÙ
ÙÙØØ© اÙÙ
ÙاتÙØ ÙÙع٠ذÙÙ (Ctrl+C).",
+
+PasteAsText : "Ùص٠ÙÙص بسÙØ·",
+PasteFromWord : "Ùص٠Ù
Ù ÙÙرد",
+
+DlgPasteMsg2 : "اÙص٠داخ٠اÙصÙدÙ٠باستخداÙ
زرÙÙ (<STRONG>Ctrl+V</STRONG>) ÙÙ ÙÙØØ© اÙÙ
ÙاتÙØØ Ø«Ù
اضغط زر <STRONG>Ù
ÙاÙÙ</STRONG>.",
+DlgPasteIgnoreFont : "تجاÙ٠تعرÙÙات أسÙ
اء اÙخطÙØ·",
+DlgPasteRemoveStyles : "إزاÙØ© تعرÙÙات اÙØ£ÙÙ
اط",
+DlgPasteCleanBox : "ÙظÙÙ Ù
ØتÙ٠اÙصÙدÙÙ",
+
+
+// Color Picker
+ColorAutomatic : "تÙÙائÙ",
+ColorMoreColors : "Ø£ÙÙا٠إضاÙÙØ©...",
+
+// Document Properties
+DocProps : "خصائص اÙصÙØØ©",
+
+// Anchor Dialog
+DlgAnchorTitle : "خصائص إشارة Ù
رجعÙØ©",
+DlgAnchorName : "اسÙ
اÙإشارة اÙÙ
رجعÙØ©",
+DlgAnchorErrorName : "اÙرجاء Ùتابة اسÙ
اÙإشارة اÙÙ
رجعÙØ©",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "ÙÙست Ù٠اÙÙاÙ
Ùس",
+DlgSpellChangeTo : "اÙتغÙÙر Ø¥ÙÙ",
+DlgSpellBtnIgnore : "تجاÙÙ",
+DlgSpellBtnIgnoreAll : "تجاÙ٠اÙÙÙ",
+DlgSpellBtnReplace : "تغÙÙر",
+DlgSpellBtnReplaceAll : "تغÙÙر اÙÙÙ",
+DlgSpellBtnUndo : "تراجع",
+DlgSpellNoSuggestions : "- Ùا تÙجد اÙتراØات -",
+DlgSpellProgress : "جار٠اÙتدÙÙ٠إÙ
ÙائÙاÙ",
+DlgSpellNoMispell : "تÙ
Ø¥ÙÙ
ا٠اÙتدÙÙ٠اÙØ¥Ù
ÙائÙ: ÙÙ
ÙتÙ
اÙعثÙر عÙ٠أ٠أخطاء Ø¥Ù
ÙائÙØ©",
+DlgSpellNoChanges : "تÙ
Ø¥ÙÙ
ا٠اÙتدÙÙ٠اÙØ¥Ù
ÙائÙ: ÙÙ
ÙتÙ
تغÙÙر Ø£Ù ÙÙÙ
Ø©",
+DlgSpellOneChange : "تÙ
Ø¥ÙÙ
ا٠اÙتدÙÙ٠اÙØ¥Ù
ÙائÙ: تÙ
تغÙÙر ÙÙÙ
Ø© ÙاØدة ÙÙØ·",
+DlgSpellManyChanges : "تÙ
Ø¥ÙÙ
ا٠اÙتدÙÙ٠اÙØ¥Ù
ÙائÙ: تÙ
تغÙÙر %1 ÙÙÙ
ات\ÙÙÙ
Ø©",
+
+IeSpellDownload : "اÙÙ
دÙ٠اÙØ¥Ù
Ùائ٠(اÙØ¥ÙجÙÙزÙ) غÙر Ù
ثبÙت. Ù٠تÙد تØÙ
ÙÙ٠اÙØ¢ÙØ",
+
+// Button Dialog
+DlgButtonText : "اÙÙÙÙ
Ø©/اÙتسÙ
ÙØ©",
+DlgButtonType : "ÙÙع اÙزر",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "اÙاسÙ
",
+DlgCheckboxValue : "اÙÙÙÙ
Ø©",
+DlgCheckboxSelected : "Ù
Øدد",
+
+// Form Dialog
+DlgFormName : "اÙاسÙ
",
+DlgFormAction : "اسÙ
اÙÙ
ÙÙ",
+DlgFormMethod : "اÙأسÙÙب",
+
+// Select Field Dialog
+DlgSelectName : "اÙاسÙ
",
+DlgSelectValue : "اÙÙÙÙ
Ø©",
+DlgSelectSize : "اÙØجÙ
",
+DlgSelectLines : "اÙأسطر",
+DlgSelectChkMulti : "اÙسÙ
Ø§Ø Ø¨ØªØدÙدات Ù
تعددة",
+DlgSelectOpAvail : "اÙØ®Ùارات اÙÙ
تاØØ©",
+DlgSelectOpText : "اÙÙص",
+DlgSelectOpValue : "اÙÙÙÙ
Ø©",
+DlgSelectBtnAdd : "إضاÙØ©",
+DlgSelectBtnModify : "تعدÙÙ",
+DlgSelectBtnUp : "تØرÙÙ ÙأعÙÙ",
+DlgSelectBtnDown : "تØرÙÙ ÙأسÙÙ",
+DlgSelectBtnSetValue : "اجعÙÙا Ù
Øددة",
+DlgSelectBtnDelete : "إزاÙØ©",
+
+// Textarea Dialog
+DlgTextareaName : "اÙاسÙ
",
+DlgTextareaCols : "اÙأعÙ
دة",
+DlgTextareaRows : "اÙصÙÙÙ",
+
+// Text Field Dialog
+DlgTextName : "اÙاسÙ
",
+DlgTextValue : "اÙÙÙÙ
Ø©",
+DlgTextCharWidth : "اÙعرض باÙØ£ØرÙ",
+DlgTextMaxChars : "عدد اÙØرÙ٠اÙØ£ÙصÙ",
+DlgTextType : "ÙÙع اÙÙ
ØتÙÙ",
+DlgTextTypeText : "Ùص",
+DlgTextTypePass : "ÙÙÙ
Ø© Ù
رÙر",
+
+// Hidden Field Dialog
+DlgHiddenName : "اÙاسÙ
",
+DlgHiddenValue : "اÙÙÙÙ
Ø©",
+
+// Bulleted List Dialog
+BulletedListProp : "خصائص اÙتعداد اÙÙÙØ·Ù",
+NumberedListProp : "خصائص اÙتعداد اÙرÙÙ
Ù",
+DlgLstType : "اÙÙÙع",
+DlgLstTypeCircle : "دائرة",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Ù
ربع",
+DlgLstTypeNumbers : "أرÙاÙ
(1Ø 2Ø 3)Ù",
+DlgLstTypeLCase : "ØرÙ٠صغÙرة (a, b, c)Ù",
+DlgLstTypeUCase : "ØرÙÙ ÙبÙرة (A, B, C)Ù",
+DlgLstTypeSRoman : "ترÙÙÙ
رÙÙ
اÙ٠صغÙر (i, ii, iii)Ù",
+DlgLstTypeLRoman : "ترÙÙÙ
رÙÙ
اÙÙ ÙبÙر (I, II, III)Ù",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "عاÙ
",
+DlgDocBackTab : "اÙØ®ÙÙÙØ©",
+DlgDocColorsTab : "اÙØ£ÙÙا٠ÙاÙÙÙاÙ
Ø´",
+DlgDocMetaTab : "اÙÙ
عرÙÙات اÙرأسÙØ©",
+
+DlgDocPageTitle : "عÙÙا٠اÙصÙØØ©",
+DlgDocLangDir : "اتجا٠اÙÙغة",
+DlgDocLangDirLTR : "اÙÙسار ÙÙÙÙ
ÙÙ (LTR)",
+DlgDocLangDirRTL : "اÙÙÙ
ÙÙ ÙÙÙسار (RTL)",
+DlgDocLangCode : "رÙ
ز اÙÙغة",
+DlgDocCharSet : "ترÙ
Ùز اÙØرÙÙ",
+DlgDocCharSetOther : "ترÙ
Ùز ØرÙ٠آخر",
+
+DlgDocDocType : "ترÙÙسة ÙÙع اÙصÙØØ©",
+DlgDocDocTypeOther : "ترÙÙسة ÙÙع صÙØØ© أخرÙ",
+DlgDocIncXHTML : "تضÙ
Ù٠إعÙاÙاتâ Ùغة XHTMLÙ",
+DlgDocBgColor : "ÙÙ٠اÙØ®ÙÙÙØ©",
+DlgDocBgImage : "رابط اÙصÙرة اÙØ®ÙÙÙØ©",
+DlgDocBgNoScroll : "جعÙÙا عÙاÙ
Ø© Ù
ائÙØ©",
+DlgDocCText : "اÙÙص",
+DlgDocCLink : "اÙرÙابط",
+DlgDocCVisited : "اÙÙ
زارة",
+DlgDocCActive : "اÙÙشطة",
+DlgDocMargins : "ÙÙاÙ
Ø´ اÙصÙØØ©",
+DlgDocMaTop : "عÙÙÙ",
+DlgDocMaLeft : "Ø£Ùسر",
+DlgDocMaRight : "Ø£ÙÙ
Ù",
+DlgDocMaBottom : "سÙÙÙ",
+DlgDocMeIndex : "اÙÙÙÙ
ات اÙأساسÙØ© (Ù
ÙصÙÙØ© بÙÙاصÙ)Ù",
+DlgDocMeDescr : "Ùص٠اÙصÙØØ©",
+DlgDocMeAuthor : "اÙÙاتب",
+DlgDocMeCopy : "اÙÙ
اÙÙ",
+DlgDocPreview : "Ù
عاÙÙØ©",
+
+// Templates Dialog
+Templates : "اÙÙÙاÙب",
+DlgTemplatesTitle : "ÙÙاÙب اÙÙ
ØتÙÙ",
+DlgTemplatesSelMsg : "اختر اÙÙاÙب اÙذ٠تÙد Ùضع٠Ù٠اÙÙ
Øرر <br>(سÙتÙ
ÙÙدا٠اÙÙ
ØتÙ٠اÙØاÙÙ):",
+DlgTemplatesLoading : "جار٠تØÙ
ÙÙ ÙائÙ
Ø© اÙÙÙاÙØ¨Ø Ø§Ùرجاء اÙاÙتظار...",
+DlgTemplatesNoTpl : "(ÙÙ
ÙتÙ
تعرÙ٠أ٠ÙاÙب)",
+
+// About Dialog
+DlgAboutAboutTab : "Ùبذة",
+DlgAboutBrowserInfoTab : "Ù
عÙÙÙ
ات Ù
تصÙØÙ",
+DlgAboutVersion : "اÙإصدار",
+DlgAboutLicense : "Ù
رخÙص بØسب ÙاÙÙÙ GNU LGPL",
+DlgAboutInfo : "ÙÙ
زÙد Ù
٠اÙÙ
عÙÙÙ
ات تÙض٠بزÙارة"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/bg.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/bg.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/bg.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: bg.js
+ * Bulgarian language file.
+ *
+ * File Authors:
+ * Miroslav Ivanov (miro at primal-chaos.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "СкÑий панела Ñ Ð¸Ð½ÑÑÑÑменÑиÑе",
+ToolbarExpand : "Ðокажи панела Ñ Ð¸Ð½ÑÑÑÑменÑиÑе",
+
+// Toolbar Items and Context Menu
+Save : "Ðапази",
+NewPage : "Ðова ÑÑÑаниÑа",
+Preview : "ÐÑедваÑиÑелен изглед",
+Cut : "ÐзÑежи",
+Copy : "ÐапамеÑи",
+Paste : "ÐмÑкни",
+PasteText : "ÐмÑкни Ñамо ÑекÑÑ",
+PasteWord : "ÐмÑкни Ð¾Ñ MS Word",
+Print : "ÐеÑаÑ",
+SelectAll : "СелекÑиÑай вÑиÑко",
+RemoveFormat : "ÐзÑÑий ÑоÑмаÑиÑанеÑо",
+InsertLinkLbl : "ÐÑÑзка",
+InsertLink : "Ðобави/РедакÑиÑай вÑÑзка",
+RemoveLink : "ÐзÑÑий вÑÑзка",
+Anchor : "Ðобави/РедакÑиÑай коÑва",
+InsertImageLbl : "ÐзобÑажение",
+InsertImage : "Ðобави/РедакÑиÑай изобÑажение",
+InsertFlashLbl : "Flash",
+InsertFlash : "Ðобави/РедакÑиай Flash обекÑ",
+InsertTableLbl : "ТаблиÑа",
+InsertTable : "Ðобави/РедакÑиÑай ÑаблиÑа",
+InsertLineLbl : "ÐиниÑ",
+InsertLine : "ÐмÑкни Ñ
оÑизонÑална линиÑ",
+InsertSpecialCharLbl: "СпеÑиален Ñимвол",
+InsertSpecialChar : "ÐмÑкни ÑпеÑиален Ñимвол",
+InsertSmileyLbl : "УÑмивка",
+InsertSmiley : "Ðобави ÑÑмивка",
+About : "Ðа FCKeditor",
+Bold : "Удебелен",
+Italic : "ÐÑÑÑив",
+Underline : "ÐодÑеÑÑан",
+StrikeThrough : "ÐаÑеÑÑан",
+Subscript : "ÐÐ½Ð´ÐµÐºÑ Ð·Ð° база",
+Superscript : "ÐÐ½Ð´ÐµÐºÑ Ð·Ð° ÑÑепен",
+LeftJustify : "ÐодÑавнÑване в лÑво",
+CenterJustify : "ÐодÑавнÑвне в ÑÑедаÑа",
+RightJustify : "ÐодÑавнÑване в дÑÑно",
+BlockJustify : "ÐвÑÑÑÑанно подÑавнÑване",
+DecreaseIndent : "Ðамали оÑÑÑÑпа",
+IncreaseIndent : "УвелиÑи оÑÑÑÑпа",
+Undo : "ÐÑмени",
+Redo : "ÐовÑоÑи",
+NumberedListLbl : "ÐÑмеÑиÑан ÑпиÑÑк",
+NumberedList : "Ðобави/ÐзÑÑий нÑмеÑиÑан ÑпиÑÑк",
+BulletedListLbl : "ÐенÑмеÑиÑан ÑпиÑÑк",
+BulletedList : "Ðобави/ÐзÑÑий ненÑмеÑиÑан ÑпиÑÑк",
+ShowTableBorders : "Ðокажи ÑамкиÑе на ÑаблиÑаÑа",
+ShowDetails : "Ðокажи подÑобноÑÑи",
+Style : "СÑил",
+FontFormat : "ФоÑмаÑ",
+Font : "ШÑиÑÑ",
+FontSize : "РазмеÑ",
+TextColor : "ЦвÑÑ Ð½Ð° ÑекÑÑа",
+BGColor : "ЦвÑÑ Ð½Ð° Ñона",
+Source : "Ðод",
+Find : "ТÑÑÑи",
+Replace : "ÐамеÑÑи",
+SpellCheck : "ÐÑовеÑи пÑавопиÑа",
+UniversalKeyboard : "УнивеÑÑална клавиаÑÑÑа",
+
+Form : "ФоÑмÑлÑÑ",
+Checkbox : "Ðоле за оÑмеÑка",
+RadioButton : "Ðоле за опÑиÑ",
+TextField : "ТекÑÑово поле",
+Textarea : "ТекÑÑова облаÑÑ",
+HiddenField : "СкÑиÑо поле",
+Button : "ÐÑÑон",
+SelectionField : "ÐадаÑо Ð¼ÐµÐ½Ñ Ñ Ð¾Ð¿Ñии",
+ImageButton : "ÐÑÑон-изобÑажение",
+
+// Context Menu
+EditLink : "РедакÑиÑай вÑÑзка",
+InsertRow : "Ðобави Ñед",
+DeleteRows : "ÐзÑÑий ÑедовеÑе",
+InsertColumn : "Ðобави колона",
+DeleteColumns : "ÐзÑÑий колониÑе",
+InsertCell : "Ðобави клеÑка",
+DeleteCells : "ÐзÑÑий клеÑкиÑе",
+MergeCells : "Ðбедини клеÑкиÑе",
+SplitCell : "Раздели клеÑкаÑа",
+CellProperties : "ÐаÑамеÑÑи на клеÑкаÑа",
+TableProperties : "ÐаÑамеÑÑи на ÑаблиÑаÑа",
+ImageProperties : "ÐаÑамеÑÑи на изобÑажениеÑо",
+FlashProperties : "ÐаÑамеÑÑи на Flash обекÑа",
+
+AnchorProp : "ÐаÑамеÑÑи на коÑваÑа",
+ButtonProp : "ÐаÑамеÑÑи на бÑÑона",
+CheckboxProp : "ÐаÑамеÑÑи на полеÑо за оÑмеÑка",
+HiddenFieldProp : "ÐаÑамеÑÑи на ÑкÑиÑоÑо поле",
+RadioButtonProp : "ÐаÑамеÑÑи на полеÑо за опÑиÑ",
+ImageButtonProp : "ÐаÑамеÑÑи на бÑÑона-изобÑажение",
+TextFieldProp : "ÐаÑамеÑÑи на ÑекÑÑовоÑо-поле",
+SelectionFieldProp : "ÐаÑамеÑÑи на падаÑоÑо Ð¼ÐµÐ½Ñ Ñ Ð¾Ð¿Ñии",
+TextareaProp : "ÐаÑамеÑÑи на ÑекÑÑоваÑа облаÑÑ",
+FormProp : "ÐаÑамеÑÑи на ÑоÑмÑлÑÑа",
+
+FontFormats : "ÐоÑмален;ФоÑмаÑиÑан;ÐдÑеÑ;Ðаглавие 1;Ðаглавие 2;Ðаглавие 3;Ðаглавие 4;Ðаглавие 5;Ðаглавие 6;ÐаÑагÑÐ°Ñ (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "ÐбÑабоÑка на XHTML. ÐÐ¾Ð»Ñ Ð¸Ð·ÑакайÑе...",
+Done : "ÐоÑово",
+PasteWordConfirm : "ТекÑÑÑÑ, койÑо иÑкаÑе да вмÑкнеÑе е копиÑан Ð¾Ñ MS Word. ÐелаеÑе ли да бÑде изÑиÑÑен пÑеди вмÑкванеÑо?",
+NotCompatiblePaste : "Тази опеÑаÑÐ¸Ñ Ð¸Ð·Ð¸Ñква MS Internet Explorer веÑÑÐ¸Ñ 5.5 или по-виÑока. ÐелаеÑе ли да вмÑкнеÑе запамеÑеноÑо без изÑиÑÑване?",
+UnknownToolbarItem : "ÐÐµÐ¿Ð¾Ð·Ð½Ð°Ñ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½Ñ \"%1\"",
+UnknownCommand : "ÐепознаÑа команда \"%1\"",
+NotImplemented : "ÐомандаÑа не е имплеменÑиÑана",
+UnknownToolbarSet : "ÐанелÑÑ \"%1\" не ÑÑÑеÑÑвÑва",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "ÐÐ",
+DlgBtnCancel : "ÐÑказ",
+DlgBtnClose : "ÐаÑвоÑи",
+DlgBtnBrowseServer : "Разгледай ÑÑÑвÑÑа",
+DlgAdvancedTag : "ÐодÑобноÑÑи...",
+DlgOpOther : "<ÐÑÑго>",
+DlgInfoTab : "ÐнÑоÑмаÑиÑ",
+DlgAlertUrl : "ÐолÑ, вÑведеÑе пÑÐ»Ð½Ð¸Ñ Ð¿ÑÑ (URL)",
+
+// General Dialogs Labels
+DlgGenNotSet : "<не е наÑÑÑоен>",
+DlgGenId : "ÐденÑиÑикаÑоÑ",
+DlgGenLangDir : "поÑока на ÑеÑÑа",
+DlgGenLangDirLtr : "ÐÑ Ð»Ñво на дÑÑно",
+DlgGenLangDirRtl : "ÐÑ Ð´ÑÑно на лÑво",
+DlgGenLangCode : "Ðод на езика",
+DlgGenAccessKey : "ÐÑÑз клавиÑ",
+DlgGenName : "Ðме",
+DlgGenTabIndex : "Ред на доÑÑÑп",
+DlgGenLongDescr : "ÐпиÑание на вÑÑзкаÑа",
+DlgGenClass : "ÐÐ»Ð°Ñ Ð¾Ñ ÑÑиловиÑе ÑаблиÑи",
+DlgGenTitle : "ÐÑепоÑÑÑиÑелно заглавие",
+DlgGenContType : "ÐÑепоÑÑÑиÑелен Ñип на ÑÑдÑÑжаниеÑо",
+DlgGenLinkCharset : "Тип на ÑвÑÑÐ·Ð°Ð½Ð¸Ñ ÑеÑÑÑÑ",
+DlgGenStyle : "СÑил",
+
+// Image Dialog
+DlgImgTitle : "ÐаÑамеÑÑи на изобÑажениеÑо",
+DlgImgInfoTab : "ÐнÑоÑмаÑÐ¸Ñ Ð·Ð° изобÑажениеÑо",
+DlgImgBtnUpload : "ÐÑаÑи кÑм ÑÑÑвÑÑа",
+DlgImgURL : "ÐÑлен пÑÑ (URL)",
+DlgImgUpload : "ÐаÑи",
+DlgImgAlt : "ÐлÑеÑнаÑивен ÑекÑÑ",
+DlgImgWidth : "ШиÑина",
+DlgImgHeight : "ÐиÑоÑина",
+DlgImgLockRatio : "Ðапази пÑопоÑÑиÑÑа",
+DlgBtnResetSize : "ÐÑзÑÑанови ÑазмеÑа",
+DlgImgBorder : "Рамка",
+DlgImgHSpace : "ХоÑизонÑален оÑÑÑÑп",
+DlgImgVSpace : "ÐеÑÑикален оÑÑÑÑп",
+DlgImgAlign : "ÐодÑавнÑване",
+DlgImgAlignLeft : "ÐÑво",
+DlgImgAlignAbsBottom: "Ðай-долÑ",
+DlgImgAlignAbsMiddle: "ТоÑно по ÑÑедаÑа",
+DlgImgAlignBaseline : "Ðо базоваÑа линиÑ",
+DlgImgAlignBottom : "ÐолÑ",
+DlgImgAlignMiddle : "Ðо ÑÑедаÑа",
+DlgImgAlignRight : "ÐÑÑно",
+DlgImgAlignTextTop : "ÐÑÑÑ
Ñ ÑекÑÑа",
+DlgImgAlignTop : "ÐÑгоÑе",
+DlgImgPreview : "Ðзглед",
+DlgImgAlertUrl : "ÐолÑ, вÑведеÑе пÑÐ»Ð½Ð¸Ñ Ð¿ÑÑ Ð´Ð¾ изобÑажениеÑо",
+DlgImgLinkTab : "ÐÑÑзка",
+
+// Flash Dialog
+DlgFlashTitle : "ÐаÑамеÑÑи на Flash обекÑа",
+DlgFlashChkPlay : "ÐвÑомаÑиÑно ÑÑаÑÑиÑане",
+DlgFlashChkLoop : "Ðово ÑÑаÑÑиÑане Ñлед завÑÑÑванеÑо",
+DlgFlashChkMenu : "РазÑеÑено Flash менÑ",
+DlgFlashScale : "ÐÑазмеÑÑване",
+DlgFlashScaleAll : "Ðокажи ÑÐµÐ»Ð¸Ñ Ð¾Ð±ÐµÐºÑ",
+DlgFlashScaleNoBorder : "Ðез Ñамка",
+DlgFlashScaleFit : "СпоÑед мÑÑÑоÑо",
+
+// Link Dialog
+DlgLnkWindowTitle : "ÐÑÑзка",
+DlgLnkInfoTab : "ÐнÑоÑмаÑÐ¸Ñ Ð·Ð° вÑÑзкаÑа",
+DlgLnkTargetTab : "Цел",
+
+DlgLnkType : "Ðид на вÑÑзкаÑа",
+DlgLnkTypeURL : "ÐÑлен пÑÑ (URL)",
+DlgLnkTypeAnchor : "ÐоÑва в ÑекÑÑаÑа ÑÑÑаниÑа",
+DlgLnkTypeEMail : "Ð-поÑа",
+DlgLnkProto : "ÐÑоÑокол",
+DlgLnkProtoOther : "<дÑÑго>",
+DlgLnkURL : "ÐÑлен пÑÑ (URL)",
+DlgLnkAnchorSel : "ÐзбеÑеÑе коÑва",
+DlgLnkAnchorByName : "Ðо име на коÑваÑа",
+DlgLnkAnchorById : "Ðо иденÑиÑикаÑÐ¾Ñ Ð½Ð° елеменÑ",
+DlgLnkNoAnchors : "<ÐÑма коÑви в ÑекÑÑÐ¸Ñ Ð´Ð¾ÐºÑменÑ>",
+DlgLnkEMail : "ÐдÑÐµÑ Ð·Ð° е-поÑа",
+DlgLnkEMailSubject : "Тема на пиÑмоÑо",
+DlgLnkEMailBody : "ТекÑÑ Ð½Ð° пиÑмоÑо",
+DlgLnkUpload : "ÐаÑи",
+DlgLnkBtnUpload : "ÐÑаÑи на ÑÑÑвÑÑа",
+
+DlgLnkTarget : "Цел",
+DlgLnkTargetFrame : "<Ñамка>",
+DlgLnkTargetPopup : "<дÑÑеÑен пÑозоÑеÑ>",
+DlgLnkTargetBlank : "Ðов пÑозоÑÐµÑ (_blank)",
+DlgLnkTargetParent : "РодиÑелÑки пÑозоÑÐµÑ (_parent)",
+DlgLnkTargetSelf : "ÐкÑÐ¸Ð²Ð½Ð¸Ñ Ð¿ÑозоÑÐµÑ (_self)",
+DlgLnkTargetTop : "Ð¦ÐµÐ»Ð¸Ñ Ð¿ÑозоÑÐµÑ (_top)",
+DlgLnkTargetFrameName : "Ðме на ÑÐµÐ»ÐµÐ²Ð¸Ñ Ð¿ÑозоÑеÑ",
+DlgLnkPopWinName : "Ðме на дÑÑеÑÐ½Ð¸Ñ Ð¿ÑозоÑеÑ",
+DlgLnkPopWinFeat : "ÐаÑамеÑÑи на дÑÑеÑÐ½Ð¸Ñ Ð¿ÑозоÑеÑ",
+DlgLnkPopResize : "С пÑоменливи ÑазмеÑи",
+DlgLnkPopLocation : "Ðоле за адÑеÑ",
+DlgLnkPopMenu : "ÐенÑ",
+DlgLnkPopScroll : "ÐлÑзгаÑ",
+DlgLnkPopStatus : "Ðоле за ÑÑаÑÑÑ",
+DlgLnkPopToolbar : "Ðанел Ñ Ð±ÑÑони",
+DlgLnkPopFullScrn : "ÐолÑм екÑан (MS IE)",
+DlgLnkPopDependent : "ÐавиÑим (Netscape)",
+DlgLnkPopWidth : "ШиÑина",
+DlgLnkPopHeight : "ÐиÑоÑина",
+DlgLnkPopLeft : "ÐооÑдинаÑи - X",
+DlgLnkPopTop : "ÐооÑдинаÑи - Y",
+
+DlnLnkMsgNoUrl : "ÐолÑ, напиÑеÑе пÑÐ»Ð½Ð¸Ñ Ð¿ÑÑ (URL)",
+DlnLnkMsgNoEMail : "ÐолÑ, напиÑеÑе адÑеÑа за е-поÑа",
+DlnLnkMsgNoAnchor : "ÐолÑ, избеÑеÑе коÑва",
+
+// Color Dialog
+DlgColorTitle : "ÐзбеÑеÑе ÑвÑÑ",
+DlgColorBtnClear : "ÐзÑиÑÑи",
+DlgColorHighlight : "ТекÑÑ",
+DlgColorSelected : "ÐзбÑан",
+
+// Smiley Dialog
+DlgSmileyTitle : "Ðобави ÑÑмивка",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "ÐзбеÑеÑе ÑпеÑиален Ñимвол",
+
+// Table Dialog
+DlgTableTitle : "ÐаÑамеÑÑи на ÑаблиÑаÑа",
+DlgTableRows : "Редове",
+DlgTableColumns : "Ðолони",
+DlgTableBorder : "Ð Ð°Ð·Ð¼ÐµÑ Ð½Ð° ÑамкаÑа",
+DlgTableAlign : "ÐодÑавнÑване",
+DlgTableAlignNotSet : "<Ðе е избÑано>",
+DlgTableAlignLeft : "ÐÑво",
+DlgTableAlignCenter : "ЦенÑÑÑ",
+DlgTableAlignRight : "ÐÑÑно",
+DlgTableWidth : "ШиÑина",
+DlgTableWidthPx : "пикÑели",
+DlgTableWidthPc : "пÑоÑенÑи",
+DlgTableHeight : "ÐиÑоÑина",
+DlgTableCellSpace : "РазÑÑоÑние Ð¼ÐµÐ¶Ð´Ñ ÐºÐ»ÐµÑкиÑе",
+DlgTableCellPad : "ÐÑÑÑÑп на ÑÑдÑÑжаниеÑо в клеÑкиÑе",
+DlgTableCaption : "Ðаглавие",
+
+// Table Cell Dialog
+DlgCellTitle : "ÐаÑамеÑÑи на клеÑкаÑа",
+DlgCellWidth : "ШиÑина",
+DlgCellWidthPx : "пикÑели",
+DlgCellWidthPc : "пÑоÑенÑи",
+DlgCellHeight : "ÐиÑоÑина",
+DlgCellWordWrap : "пÑенаÑÑне на нов Ñед",
+DlgCellWordWrapNotSet : "<Ðе е наÑÑÑоено>",
+DlgCellWordWrapYes : "Ðа",
+DlgCellWordWrapNo : "не",
+DlgCellHorAlign : "ХоÑизонÑално подÑавнÑване",
+DlgCellHorAlignNotSet : "<Ðе е наÑÑÑоено>",
+DlgCellHorAlignLeft : "ÐÑво",
+DlgCellHorAlignCenter : "ЦенÑÑÑ",
+DlgCellHorAlignRight: "ÐÑÑно",
+DlgCellVerAlign : "ÐеÑÑикално подÑавнÑване",
+DlgCellVerAlignNotSet : "<Ðе е наÑÑÑоено>",
+DlgCellVerAlignTop : "ÐоÑе",
+DlgCellVerAlignMiddle : "Ðо ÑÑедаÑа",
+DlgCellVerAlignBottom : "ÐолÑ",
+DlgCellVerAlignBaseline : "Ðо базоваÑа линиÑ",
+DlgCellRowSpan : "повеÑе Ð¾Ñ ÐµÐ´Ð¸Ð½ Ñед",
+DlgCellCollSpan : "повеÑе Ð¾Ñ ÐµÐ´Ð½Ð° колона",
+DlgCellBackColor : "Ñонов ÑвÑÑ",
+DlgCellBorderColor : "ÑвÑÑ Ð½Ð° ÑамкаÑа",
+DlgCellBtnSelect : "ÐзбеÑеÑе...",
+
+// Find Dialog
+DlgFindTitle : "ТÑÑÑи",
+DlgFindFindBtn : "ТÑÑÑи",
+DlgFindNotFoundMsg : "Ð£ÐºÐ°Ð·Ð°Ð½Ð¸Ñ ÑекÑÑ Ð½Ðµ беÑе намеÑен.",
+
+// Replace Dialog
+DlgReplaceTitle : "ÐамеÑÑи",
+DlgReplaceFindLbl : "ТÑÑÑи:",
+DlgReplaceReplaceLbl : "ÐамеÑÑи Ñ:",
+DlgReplaceCaseChk : "СÑÑ ÑÑÑÐ¸Ñ ÑегиÑÑÑÑ",
+DlgReplaceReplaceBtn : "ÐамеÑÑи",
+DlgReplaceReplAllBtn : "ÐамеÑÑи вÑиÑки",
+DlgReplaceWordChk : "ТÑÑÑи ÑÑÑаÑа дÑма",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "ÐаÑÑÑойкиÑе за ÑигÑÑноÑÑ Ð½Ð° ваÑÐ¸Ñ Ð±ÑазÑÑÑ Ð½Ðµ ÑазÑеÑÐ°Ð²Ð°Ñ Ð½Ð° ÑедакÑоÑа да изпÑлни вмÑкванеÑо. Ðа ÑелÑа използвайÑе клавиаÑÑÑаÑа (Ctrl+V).",
+PasteErrorCut : "ÐаÑÑÑойкиÑе за ÑигÑÑноÑÑ Ð½Ð° ваÑÐ¸Ñ Ð±ÑазÑÑÑ Ð½Ðµ ÑазÑеÑÐ°Ð²Ð°Ñ Ð½Ð° ÑедакÑоÑа да изпÑлни изÑÑзванеÑо. Ðа ÑелÑа използвайÑе клавиаÑÑÑаÑа (Ctrl+X).",
+PasteErrorCopy : "ÐаÑÑÑойкиÑе за ÑигÑÑноÑÑ Ð½Ð° ваÑÐ¸Ñ Ð±ÑазÑÑÑ Ð½Ðµ ÑазÑеÑÐ°Ð²Ð°Ñ Ð½Ð° ÑедакÑоÑа да изпÑлни запамеÑÑванеÑо. Ðа ÑелÑа използвайÑе клавиаÑÑÑаÑа (Ctrl+C).",
+
+PasteAsText : "ÐмÑкни каÑо ÑиÑÑ ÑекÑÑ",
+PasteFromWord : "ÐмÑкни Ð¾Ñ MS Word",
+
+DlgPasteMsg2 : "ÐмÑкнеÑе ÑÑк ÑÑдÑжаниеÑо Ñ ÐºÐ»Ð°Ð²Ð¸Ð°ÑÑаÑаÑа (<STRONG>Ctrl+V</STRONG>) и наÑиÑнеÑе <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "ÐгноÑиÑай ÑÑиÑÑовиÑе деÑиниÑии",
+DlgPasteRemoveStyles : "ÐзÑÑий ÑÑиловиÑе деÑиниÑии",
+DlgPasteCleanBox : "ÐзÑиÑÑи",
+
+
+// Color Picker
+ColorAutomatic : "Ðо подÑазбиÑане",
+ColorMoreColors : "ÐÑÑги ÑвеÑове...",
+
+// Document Properties
+DocProps : "ÐаÑамеÑÑи на докÑменÑа",
+
+// Anchor Dialog
+DlgAnchorTitle : "ÐаÑамеÑÑи на коÑваÑа",
+DlgAnchorName : "Ðме на коÑваÑа",
+DlgAnchorErrorName : "ÐолÑ, вÑведеÑе име на коÑваÑа",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "ÐипÑва в ÑеÑника",
+DlgSpellChangeTo : "ÐÑомени на",
+DlgSpellBtnIgnore : "ÐгноÑиÑай",
+DlgSpellBtnIgnoreAll : "ÐгноÑиÑай вÑиÑки",
+DlgSpellBtnReplace : "ÐамеÑÑи",
+DlgSpellBtnReplaceAll : "ÐамеÑÑи вÑиÑки",
+DlgSpellBtnUndo : "ÐÑмени",
+DlgSpellNoSuggestions : "- ÐÑма пÑÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ -",
+DlgSpellProgress : "ÐзвÑÑÑване на пÑовеÑкаÑа за пÑавопиÑ...",
+DlgSpellNoMispell : "ÐÑовеÑкаÑа за пÑÐ°Ð²Ð¾Ð¿Ð¸Ñ Ð·Ð°Ð²ÑÑÑена: не Ñа оÑкÑиÑи пÑавопиÑни гÑеÑки",
+DlgSpellNoChanges : "ÐÑовеÑкаÑа за пÑÐ°Ð²Ð¾Ð¿Ð¸Ñ Ð·Ð°Ð²ÑÑÑена: нÑма пÑоменени дÑми",
+DlgSpellOneChange : "ÐÑовеÑкаÑа за пÑÐ°Ð²Ð¾Ð¿Ð¸Ñ Ð·Ð°Ð²ÑÑÑена: една дÑма е пÑоменена",
+DlgSpellManyChanges : "ÐÑовеÑкаÑа за пÑÐ°Ð²Ð¾Ð¿Ð¸Ñ Ð·Ð°Ð²ÑÑÑена: %1 дÑми Ñа пÑоменени",
+
+IeSpellDownload : "ÐнÑÑÑÑменÑÑÑ Ð·Ð° пÑовеÑка на пÑÐ°Ð²Ð¾Ð¿Ð¸Ñ Ð½Ðµ е инÑÑалиÑан. ÐелаеÑе ли да го инÑÑалиÑаÑе ?",
+
+// Button Dialog
+DlgButtonText : "ТекÑÑ (СÑойноÑÑ)",
+DlgButtonType : "Тип",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Ðме",
+DlgCheckboxValue : "СÑойноÑÑ",
+DlgCheckboxSelected : "ÐÑмеÑнаÑо",
+
+// Form Dialog
+DlgFormName : "Ðме",
+DlgFormAction : "ÐейÑÑвие",
+DlgFormMethod : "ÐеÑод",
+
+// Select Field Dialog
+DlgSelectName : "Ðме",
+DlgSelectValue : "СÑойноÑÑ",
+DlgSelectSize : "РазмеÑ",
+DlgSelectLines : "линии",
+DlgSelectChkMulti : "РазÑеÑено множеÑÑвено ÑелекÑиÑане",
+DlgSelectOpAvail : "ÐÑзможни опÑии",
+DlgSelectOpText : "ТекÑÑ",
+DlgSelectOpValue : "СÑойноÑÑ",
+DlgSelectBtnAdd : "Ðобави",
+DlgSelectBtnModify : "ÐÑомени",
+DlgSelectBtnUp : "ÐагоÑе",
+DlgSelectBtnDown : "ÐадолÑ",
+DlgSelectBtnSetValue : "ÐаÑÑÑой каÑо избÑана ÑÑойноÑÑ",
+DlgSelectBtnDelete : "ÐзÑÑий",
+
+// Textarea Dialog
+DlgTextareaName : "Ðме",
+DlgTextareaCols : "Ðолони",
+DlgTextareaRows : "Редове",
+
+// Text Field Dialog
+DlgTextName : "Ðме",
+DlgTextValue : "СÑойноÑÑ",
+DlgTextCharWidth : "ШиÑина на ÑимволиÑе",
+DlgTextMaxChars : "ÐакÑимÑм Ñимволи",
+DlgTextType : "Тип",
+DlgTextTypeText : "ТекÑÑ",
+DlgTextTypePass : "ÐаÑола",
+
+// Hidden Field Dialog
+DlgHiddenName : "Ðме",
+DlgHiddenValue : "СÑойноÑÑ",
+
+// Bulleted List Dialog
+BulletedListProp : "ÐаÑамеÑÑи на ненÑмеÑиÑÐ°Ð½Ð¸Ñ ÑпиÑÑк",
+NumberedListProp : "ÐаÑамеÑÑи на нÑмеÑиÑÐ°Ð½Ð¸Ñ ÑпиÑÑк",
+DlgLstType : "Тип",
+DlgLstTypeCircle : "ÐкÑÑжноÑÑ",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "ÐвадÑаÑ",
+DlgLstTypeNumbers : "ЧиÑла (1, 2, 3)",
+DlgLstTypeLCase : "Ðалки бÑкви (a, b, c)",
+DlgLstTypeUCase : "Ðолеми бÑкви (A, B, C)",
+DlgLstTypeSRoman : "Ðалки ÑимÑки ÑиÑла (i, ii, iii)",
+DlgLstTypeLRoman : "Ðолеми ÑимÑки ÑиÑла (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "ÐбÑи",
+DlgDocBackTab : "Фон",
+DlgDocColorsTab : "ЦвеÑове и оÑÑÑÑпи",
+DlgDocMetaTab : "ÐеÑа данни",
+
+DlgDocPageTitle : "Ðаглавие на ÑÑÑаниÑаÑа",
+DlgDocLangDir : "ÐоÑока на ÑеÑÑа",
+DlgDocLangDirLTR : "ÐÑ Ð»Ñво на дÑÑно",
+DlgDocLangDirRTL : "ÐÑ Ð´ÑÑно на лÑво",
+DlgDocLangCode : "Ðод на езика",
+DlgDocCharSet : "ÐодиÑане на ÑимволиÑе",
+DlgDocCharSetOther : "ÐÑÑго кодиÑане на ÑимволиÑе",
+
+DlgDocDocType : "Тип на докÑменÑа",
+DlgDocDocTypeOther : "ÐÑÑг Ñип на докÑменÑа",
+DlgDocIncXHTML : "ÐклÑÑи XHTML деклаÑаÑиÑ",
+DlgDocBgColor : "ЦвÑÑ Ð½Ð° Ñона",
+DlgDocBgImage : "ÐÑлен пÑÑ Ð´Ð¾ ÑоновоÑо изобÑажение",
+DlgDocBgNoScroll : "Ðе-повÑаÑÑÑо Ñе Ñоново изобÑажение",
+DlgDocCText : "ТекÑÑ",
+DlgDocCLink : "ÐÑÑзка",
+DlgDocCVisited : "ÐоÑеÑена вÑÑзка",
+DlgDocCActive : "ÐкÑивна вÑÑзка",
+DlgDocMargins : "ÐÑÑÑÑпи на ÑÑÑаниÑаÑа",
+DlgDocMaTop : "ÐоÑе",
+DlgDocMaLeft : "ÐÑво",
+DlgDocMaRight : "ÐÑÑно",
+DlgDocMaBottom : "ÐолÑ",
+DlgDocMeIndex : "ÐлÑÑови дÑми за докÑменÑа (Ñазделени ÑÑÑ Ð·Ð°Ð¿ÐµÑаи)",
+DlgDocMeDescr : "ÐпиÑание на докÑменÑа",
+DlgDocMeAuthor : "ÐвÑоÑ",
+DlgDocMeCopy : "ÐвÑоÑÑки пÑава",
+DlgDocPreview : "Ðзглед",
+
+// Templates Dialog
+Templates : "Шаблони",
+DlgTemplatesTitle : "Шаблони",
+DlgTemplatesSelMsg : "ÐзбеÑеÑе Ñаблон <br>(ÑекÑÑоÑо ÑÑдÑÑжание на ÑедакÑоÑа Ñе бÑде загÑбено):",
+DlgTemplatesLoading : "ÐаÑеждане на ÑпиÑÑка Ñ ÑаблониÑе. ÐÐ¾Ð»Ñ Ð¸Ð·ÑакайÑе...",
+DlgTemplatesNoTpl : "(ÐÑма деÑиниÑани Ñаблони)",
+
+// About Dialog
+DlgAboutAboutTab : "Ðа",
+DlgAboutBrowserInfoTab : "ÐнÑоÑмаÑÐ¸Ñ Ð·Ð° бÑаÑзÑÑа",
+DlgAboutVersion : "веÑÑиÑ",
+DlgAboutLicense : "ÐиÑенз по ÑÑловиÑÑа на GNU Lesser General Public License",
+DlgAboutInfo : "Ðа повеÑе инÑоÑмаÑÐ¸Ñ Ð¿Ð¾ÑеÑеÑе"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/bs.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/bs.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/bs.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: bs.js
+ * Bosnian language file.
+ *
+ * File Authors:
+ * Muris Trax (www.elektronika.ba)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Skupi trake sa alatima",
+ToolbarExpand : "Otvori trake sa alatima",
+
+// Toolbar Items and Context Menu
+Save : "Snimi",
+NewPage : "Novi dokument",
+Preview : "Prikaži",
+Cut : "Izreži",
+Copy : "Kopiraj",
+Paste : "Zalijepi",
+PasteText : "Zalijepi kao obièan tekst",
+PasteWord : "Zalijepi iz Word-a",
+Print : "Å tampaj",
+SelectAll : "Selektuj sve",
+RemoveFormat : "Poništi format",
+InsertLinkLbl : "Link",
+InsertLink : "Ubaci/Izmjeni link",
+RemoveLink : "Izbriši link",
+Anchor : "Insert/Edit Anchor", //MISSING
+InsertImageLbl : "Slika",
+InsertImage : "Ubaci/Izmjeni sliku",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Tabela",
+InsertTable : "Ubaci/Izmjeni tabelu",
+InsertLineLbl : "Linija",
+InsertLine : "Ubaci horizontalnu liniju",
+InsertSpecialCharLbl: "Specijalni karakter",
+InsertSpecialChar : "Ubaci specijalni karater",
+InsertSmileyLbl : "Smješko",
+InsertSmiley : "Ubaci smješka",
+About : "O FCKeditor-u",
+Bold : "Boldiraj",
+Italic : "Ukosi",
+Underline : "Podvuci",
+StrikeThrough : "Precrtaj",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Lijevo poravnanje",
+CenterJustify : "Centralno poravnanje",
+RightJustify : "Desno poravnanje",
+BlockJustify : "Puno poravnanje",
+DecreaseIndent : "Smanji uvod",
+IncreaseIndent : "Poveæaj uvod",
+Undo : "Vrati",
+Redo : "Ponovi",
+NumberedListLbl : "Numerisana lista",
+NumberedList : "Ubaci/Izmjeni numerisanu listu",
+BulletedListLbl : "Lista",
+BulletedList : "Ubaci/Izmjeni listu",
+ShowTableBorders : "Pokaži okvire tabela",
+ShowDetails : "Pokaži detalje",
+Style : "Stil",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "Velièina",
+TextColor : "Boja teksta",
+BGColor : "Boja pozadine",
+Source : "HTML kôd",
+Find : "Naði",
+Replace : "Zamjeni",
+SpellCheck : "Check Spell", //MISSING
+UniversalKeyboard : "Universal Keyboard", //MISSING
+
+Form : "Form", //MISSING
+Checkbox : "Checkbox", //MISSING
+RadioButton : "Radio Button", //MISSING
+TextField : "Text Field", //MISSING
+Textarea : "Textarea", //MISSING
+HiddenField : "Hidden Field", //MISSING
+Button : "Button", //MISSING
+SelectionField : "Selection Field", //MISSING
+ImageButton : "Image Button", //MISSING
+
+// Context Menu
+EditLink : "Izmjeni link",
+InsertRow : "Ubaci red",
+DeleteRows : "Briši redove",
+InsertColumn : "Ubaci kolonu",
+DeleteColumns : "Briši kolone",
+InsertCell : "Ubaci æeliju",
+DeleteCells : "Briši æelije",
+MergeCells : "Spoji æelije",
+SplitCell : "Razdvoji æeliju",
+CellProperties : "Svojstva æelije",
+TableProperties : "Svojstva tabele",
+ImageProperties : "Svojstva slike",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Anchor Properties", //MISSING
+ButtonProp : "Button Properties", //MISSING
+CheckboxProp : "Checkbox Properties", //MISSING
+HiddenFieldProp : "Hidden Field Properties", //MISSING
+RadioButtonProp : "Radio Button Properties", //MISSING
+ImageButtonProp : "Image Button Properties", //MISSING
+TextFieldProp : "Text Field Properties", //MISSING
+SelectionFieldProp : "Selection Field Properties", //MISSING
+TextareaProp : "Textarea Properties", //MISSING
+FormProp : "Form Properties", //MISSING
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Procesiram XHTML. Molim saèekajte...",
+Done : "Gotovo",
+PasteWordConfirm : "Tekst koji želite zalijepiti èini se da je kopiran iz Worda. Da li želite da se prvo oèisti?",
+NotCompatiblePaste : "Ova komanda je podržana u Internet Explorer-u verzijama 5.5 ili novijim. Da li želite da izvršite lijepljenje teksta bez èišæenja?",
+UnknownToolbarItem : "Nepoznata stavka sa trake sa alatima \"%1\"",
+UnknownCommand : "Nepoznata komanda \"%1\"",
+NotImplemented : "Komanda nije implementirana",
+UnknownToolbarSet : "Traka sa alatima \"%1\" ne postoji",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Odustani",
+DlgBtnClose : "Zatvori",
+DlgBtnBrowseServer : "Browse Server", //MISSING
+DlgAdvancedTag : "Naprednije",
+DlgOpOther : "<Other>", //MISSING
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<nije podešeno>",
+DlgGenId : "Id",
+DlgGenLangDir : "Smjer pisanja",
+DlgGenLangDirLtr : "S lijeva na desno (LTR)",
+DlgGenLangDirRtl : "S desna na lijevo (RTL)",
+DlgGenLangCode : "Jezièni kôd",
+DlgGenAccessKey : "Pristupna tipka",
+DlgGenName : "Naziv",
+DlgGenTabIndex : "Tab indeks",
+DlgGenLongDescr : "Dugaèki opis URL-a",
+DlgGenClass : "Klase CSS stilova",
+DlgGenTitle : "Advisory title",
+DlgGenContType : "Advisory vrsta sadržaja",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Stil",
+
+// Image Dialog
+DlgImgTitle : "Svojstva slike",
+DlgImgInfoTab : "Info slike",
+DlgImgBtnUpload : "Å alji na server",
+DlgImgURL : "URL",
+DlgImgUpload : "Å alji",
+DlgImgAlt : "Tekst na slici",
+DlgImgWidth : "Å irina",
+DlgImgHeight : "Visina",
+DlgImgLockRatio : "Zakljuèaj odnos",
+DlgBtnResetSize : "Resetuj dimenzije",
+DlgImgBorder : "Okvir",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Poravnanje",
+DlgImgAlignLeft : "Lijevo",
+DlgImgAlignAbsBottom: "Abs dole",
+DlgImgAlignAbsMiddle: "Abs sredina",
+DlgImgAlignBaseline : "Bazno",
+DlgImgAlignBottom : "Dno",
+DlgImgAlignMiddle : "Sredina",
+DlgImgAlignRight : "Desno",
+DlgImgAlignTextTop : "Vrh teksta",
+DlgImgAlignTop : "Vrh",
+DlgImgPreview : "Prikaz",
+DlgImgAlertUrl : "Molimo ukucajte URL od slike.",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link info",
+DlgLnkTargetTab : "Prozor",
+
+DlgLnkType : "Tip linka",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Sidro na ovoj stranici",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<drugi>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Izaberi sidro",
+DlgLnkAnchorByName : "Po nazivu sidra",
+DlgLnkAnchorById : "Po Id-u elementa",
+DlgLnkNoAnchors : "<Nema dostupnih sidra na stranici>",
+DlgLnkEMail : "E-Mail Adresa",
+DlgLnkEMailSubject : "Subjekt poruke",
+DlgLnkEMailBody : "Poruka",
+DlgLnkUpload : "Å alji",
+DlgLnkBtnUpload : "Å alji na server",
+
+DlgLnkTarget : "Prozor",
+DlgLnkTargetFrame : "<frejm>",
+DlgLnkTargetPopup : "<popup prozor>",
+DlgLnkTargetBlank : "Novi prozor (_blank)",
+DlgLnkTargetParent : "Glavni prozor (_parent)",
+DlgLnkTargetSelf : "Isti prozor (_self)",
+DlgLnkTargetTop : "Najgornji prozor (_top)",
+DlgLnkTargetFrameName : "Target Frame Name", //MISSING
+DlgLnkPopWinName : "Naziv popup prozora",
+DlgLnkPopWinFeat : "Moguænosti popup prozora",
+DlgLnkPopResize : "Promjenljive velièine",
+DlgLnkPopLocation : "Traka za lokaciju",
+DlgLnkPopMenu : "Izborna traka",
+DlgLnkPopScroll : "Scroll traka",
+DlgLnkPopStatus : "Statusna traka",
+DlgLnkPopToolbar : "Traka sa alatima",
+DlgLnkPopFullScrn : "Cijeli ekran (IE)",
+DlgLnkPopDependent : "Ovisno (Netscape)",
+DlgLnkPopWidth : "Å irina",
+DlgLnkPopHeight : "Visina",
+DlgLnkPopLeft : "Lijeva pozicija",
+DlgLnkPopTop : "Gornja pozicija",
+
+DlnLnkMsgNoUrl : "Molimo ukucajte URL link",
+DlnLnkMsgNoEMail : "Molimo ukucajte e-mail adresu",
+DlnLnkMsgNoAnchor : "Molimo izaberite sidro",
+
+// Color Dialog
+DlgColorTitle : "Izaberi boju",
+DlgColorBtnClear : "Oèisti",
+DlgColorHighlight : "Igled",
+DlgColorSelected : "Selektovana",
+
+// Smiley Dialog
+DlgSmileyTitle : "Ubaci smješka",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Izaberi specijalni karakter",
+
+// Table Dialog
+DlgTableTitle : "Svojstva tabele",
+DlgTableRows : "Redova",
+DlgTableColumns : "Kolona",
+DlgTableBorder : "Okvir",
+DlgTableAlign : "Poravnanje",
+DlgTableAlignNotSet : "<Nije podešeno>",
+DlgTableAlignLeft : "Lijevo",
+DlgTableAlignCenter : "Centar",
+DlgTableAlignRight : "Desno",
+DlgTableWidth : "Å irina",
+DlgTableWidthPx : "piksela",
+DlgTableWidthPc : "posto",
+DlgTableHeight : "Visina",
+DlgTableCellSpace : "Razmak æelija",
+DlgTableCellPad : "Uvod æelija",
+DlgTableCaption : "Naslov",
+
+// Table Cell Dialog
+DlgCellTitle : "Svojstva æelije",
+DlgCellWidth : "Å irina",
+DlgCellWidthPx : "piksela",
+DlgCellWidthPc : "posto",
+DlgCellHeight : "Visina",
+DlgCellWordWrap : "Vrapuj tekst",
+DlgCellWordWrapNotSet : "<Nije podešeno>",
+DlgCellWordWrapYes : "Da",
+DlgCellWordWrapNo : "Ne",
+DlgCellHorAlign : "Horizontalno poravnanje",
+DlgCellHorAlignNotSet : "<Nije podešeno>",
+DlgCellHorAlignLeft : "Lijevo",
+DlgCellHorAlignCenter : "Centar",
+DlgCellHorAlignRight: "Desno",
+DlgCellVerAlign : "Vertikalno poravnanje",
+DlgCellVerAlignNotSet : "<Nije podešeno>",
+DlgCellVerAlignTop : "Gore",
+DlgCellVerAlignMiddle : "Sredina",
+DlgCellVerAlignBottom : "Dno",
+DlgCellVerAlignBaseline : "Bazno",
+DlgCellRowSpan : "Spajanje æelija",
+DlgCellCollSpan : "Spajanje kolona",
+DlgCellBackColor : "Boja pozadine",
+DlgCellBorderColor : "Boja okvira",
+DlgCellBtnSelect : "Selektuj...",
+
+// Find Dialog
+DlgFindTitle : "Naði",
+DlgFindFindBtn : "Naði",
+DlgFindNotFoundMsg : "Traženi tekst nije pronaðen.",
+
+// Replace Dialog
+DlgReplaceTitle : "Zamjeni",
+DlgReplaceFindLbl : "Naði šta:",
+DlgReplaceReplaceLbl : "Zamjeni sa:",
+DlgReplaceCaseChk : "Uporeðuj velika/mala slova",
+DlgReplaceReplaceBtn : "Zamjeni",
+DlgReplaceReplAllBtn : "Zamjeni sve",
+DlgReplaceWordChk : "Uporeðuj samo cijelu rijeè",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Sigurnosne postavke vašeg pretraživaèa ne dozvoljavaju operacije automatskog lijepljenja. Molimo koristite kraticu na tastaturi (Ctrl+V).",
+PasteErrorCut : "Sigurnosne postavke vašeg pretraživaèa ne dozvoljavaju operacije automatskog rezanja. Molimo koristite kraticu na tastaturi (Ctrl+X).",
+PasteErrorCopy : "Sigurnosne postavke Vašeg pretraživaèa ne dozvoljavaju operacije automatskog kopiranja. Molimo koristite kraticu na tastaturi (Ctrl+C).",
+
+PasteAsText : "Zalijepi kao obièan tekst",
+PasteFromWord : "Zalijepi iz Word-a",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "Automatska",
+ColorMoreColors : "Više boja...",
+
+// Document Properties
+DocProps : "Document Properties", //MISSING
+
+// Anchor Dialog
+DlgAnchorTitle : "Anchor Properties", //MISSING
+DlgAnchorName : "Anchor Name", //MISSING
+DlgAnchorErrorName : "Please type the anchor name", //MISSING
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Not in dictionary", //MISSING
+DlgSpellChangeTo : "Change to", //MISSING
+DlgSpellBtnIgnore : "Ignore", //MISSING
+DlgSpellBtnIgnoreAll : "Ignore All", //MISSING
+DlgSpellBtnReplace : "Replace", //MISSING
+DlgSpellBtnReplaceAll : "Replace All", //MISSING
+DlgSpellBtnUndo : "Undo", //MISSING
+DlgSpellNoSuggestions : "- No suggestions -", //MISSING
+DlgSpellProgress : "Spell check in progress...", //MISSING
+DlgSpellNoMispell : "Spell check complete: No misspellings found", //MISSING
+DlgSpellNoChanges : "Spell check complete: No words changed", //MISSING
+DlgSpellOneChange : "Spell check complete: One word changed", //MISSING
+DlgSpellManyChanges : "Spell check complete: %1 words changed", //MISSING
+
+IeSpellDownload : "Spell checker not installed. Do you want to download it now?", //MISSING
+
+// Button Dialog
+DlgButtonText : "Text (Value)", //MISSING
+DlgButtonType : "Type", //MISSING
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name", //MISSING
+DlgCheckboxValue : "Value", //MISSING
+DlgCheckboxSelected : "Selected", //MISSING
+
+// Form Dialog
+DlgFormName : "Name", //MISSING
+DlgFormAction : "Action", //MISSING
+DlgFormMethod : "Method", //MISSING
+
+// Select Field Dialog
+DlgSelectName : "Name", //MISSING
+DlgSelectValue : "Value", //MISSING
+DlgSelectSize : "Size", //MISSING
+DlgSelectLines : "lines", //MISSING
+DlgSelectChkMulti : "Allow multiple selections", //MISSING
+DlgSelectOpAvail : "Available Options", //MISSING
+DlgSelectOpText : "Text", //MISSING
+DlgSelectOpValue : "Value", //MISSING
+DlgSelectBtnAdd : "Add", //MISSING
+DlgSelectBtnModify : "Modify", //MISSING
+DlgSelectBtnUp : "Up", //MISSING
+DlgSelectBtnDown : "Down", //MISSING
+DlgSelectBtnSetValue : "Set as selected value", //MISSING
+DlgSelectBtnDelete : "Delete", //MISSING
+
+// Textarea Dialog
+DlgTextareaName : "Name", //MISSING
+DlgTextareaCols : "Columns", //MISSING
+DlgTextareaRows : "Rows", //MISSING
+
+// Text Field Dialog
+DlgTextName : "Name", //MISSING
+DlgTextValue : "Value", //MISSING
+DlgTextCharWidth : "Character Width", //MISSING
+DlgTextMaxChars : "Maximum Characters", //MISSING
+DlgTextType : "Type", //MISSING
+DlgTextTypeText : "Text", //MISSING
+DlgTextTypePass : "Password", //MISSING
+
+// Hidden Field Dialog
+DlgHiddenName : "Name", //MISSING
+DlgHiddenValue : "Value", //MISSING
+
+// Bulleted List Dialog
+BulletedListProp : "Bulleted List Properties", //MISSING
+NumberedListProp : "Numbered List Properties", //MISSING
+DlgLstType : "Type", //MISSING
+DlgLstTypeCircle : "Circle", //MISSING
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Square", //MISSING
+DlgLstTypeNumbers : "Numbers (1, 2, 3)", //MISSING
+DlgLstTypeLCase : "Lowercase Letters (a, b, c)", //MISSING
+DlgLstTypeUCase : "Uppercase Letters (A, B, C)", //MISSING
+DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)", //MISSING
+DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)", //MISSING
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General", //MISSING
+DlgDocBackTab : "Background", //MISSING
+DlgDocColorsTab : "Colors and Margins", //MISSING
+DlgDocMetaTab : "Meta Data", //MISSING
+
+DlgDocPageTitle : "Page Title", //MISSING
+DlgDocLangDir : "Language Direction", //MISSING
+DlgDocLangDirLTR : "Left to Right (LTR)", //MISSING
+DlgDocLangDirRTL : "Right to Left (RTL)", //MISSING
+DlgDocLangCode : "Language Code", //MISSING
+DlgDocCharSet : "Character Set Encoding", //MISSING
+DlgDocCharSetOther : "Other Character Set Encoding", //MISSING
+
+DlgDocDocType : "Document Type Heading", //MISSING
+DlgDocDocTypeOther : "Other Document Type Heading", //MISSING
+DlgDocIncXHTML : "Include XHTML Declarations", //MISSING
+DlgDocBgColor : "Background Color", //MISSING
+DlgDocBgImage : "Background Image URL", //MISSING
+DlgDocBgNoScroll : "Nonscrolling Background", //MISSING
+DlgDocCText : "Text", //MISSING
+DlgDocCLink : "Link", //MISSING
+DlgDocCVisited : "Visited Link", //MISSING
+DlgDocCActive : "Active Link", //MISSING
+DlgDocMargins : "Page Margins", //MISSING
+DlgDocMaTop : "Top", //MISSING
+DlgDocMaLeft : "Left", //MISSING
+DlgDocMaRight : "Right", //MISSING
+DlgDocMaBottom : "Bottom", //MISSING
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)", //MISSING
+DlgDocMeDescr : "Document Description", //MISSING
+DlgDocMeAuthor : "Author", //MISSING
+DlgDocMeCopy : "Copyright", //MISSING
+DlgDocPreview : "Preview", //MISSING
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "About", //MISSING
+DlgAboutBrowserInfoTab : "Browser Info", //MISSING
+DlgAboutVersion : "verzija",
+DlgAboutLicense : "Licencirano pod uslovima GNU Lesser General Public License",
+DlgAboutInfo : "Za više informacija posjetite"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/ca.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/ca.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/ca.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: ca.js
+ * Catalan language file.
+ *
+ * File Authors:
+ * Jordi Cerdan (nan at myp.ad)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Col·lapsar barra",
+ToolbarExpand : "Expandir barra",
+
+// Toolbar Items and Context Menu
+Save : "Guardar",
+NewPage : "Nova PÃ gina",
+Preview : "Vista Prèvia",
+Cut : "Tallar",
+Copy : "Copiar",
+Paste : "Enganxar",
+PasteText : "Enganxar com text planer",
+PasteWord : "Enganxar des de Word",
+Print : "Imprimir",
+SelectAll : "Seleccionar tot",
+RemoveFormat : "Eliminar Format",
+InsertLinkLbl : "Enllaç",
+InsertLink : "Afegir/Editar Enllaç",
+RemoveLink : "Eliminar Enllaç",
+Anchor : "Afegir/Editar Ãncora",
+InsertImageLbl : "Imatge",
+InsertImage : "Afegir/Editar Imatge",
+InsertFlashLbl : "Flash",
+InsertFlash : "Afegir/Editar Flash",
+InsertTableLbl : "Taula",
+InsertTable : "Afegir/Editar Taula",
+InsertLineLbl : "LÃnia",
+InsertLine : "Afegir LÃnia Horitzontal",
+InsertSpecialCharLbl: "Carà cter Especial",
+InsertSpecialChar : "Afegir Carà cter Especial",
+InsertSmileyLbl : "Icona",
+InsertSmiley : "Afegir Icona",
+About : "Sobre FCKeditor",
+Bold : "Negreta",
+Italic : "Ità lica",
+Underline : "Subratllat",
+StrikeThrough : "Tatxat",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Justificar Esquerra",
+CenterJustify : "Justificar Centrat",
+RightJustify : "Justificar Dreta",
+BlockJustify : "Justificar Bloc",
+DecreaseIndent : "Disminuir Indentació",
+IncreaseIndent : "Augmentar Indentació",
+Undo : "Desfer",
+Redo : "Refer",
+NumberedListLbl : "Llista Numerada",
+NumberedList : "Afegir/Eliminar Llista Numerada",
+BulletedListLbl : "Llista Marcada",
+BulletedList : "Afegir/Eliminar Llista Marcada",
+ShowTableBorders : "Mostrar Costats de Taules",
+ShowDetails : "Mostrar Detalls",
+Style : "Estil",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "Tamany",
+TextColor : "Color de Text",
+BGColor : "Color de Fons",
+Source : "Font",
+Find : "Cercar",
+Replace : "Remplaçar",
+SpellCheck : "Verificar sintaxi",
+UniversalKeyboard : "Teclat universal",
+
+Form : "Formulari",
+Checkbox : "Casella de verificació",
+RadioButton : "Botó rà dio",
+TextField : "Camp de text",
+Textarea : "Ãrea de text",
+HiddenField : "Camp ocult",
+Button : "botó",
+SelectionField : "Camp de selecció",
+ImageButton : "Botó imatge",
+
+// Context Menu
+EditLink : "Editar Enllaç",
+InsertRow : "Afegir Fila",
+DeleteRows : "Eliminar Files",
+InsertColumn : "Afegir Columna",
+DeleteColumns : "Eliminar Columnes",
+InsertCell : "Afegir Cel·la",
+DeleteCells : "Eliminar Cel·les",
+MergeCells : "Fusionar Cel·les",
+SplitCell : "Separar Cel·les",
+CellProperties : "Proprietats de Cel·la",
+TableProperties : "Proprietats de Taula",
+ImageProperties : "Proprietats d'Image",
+FlashProperties : "Proprietats Flash",
+
+AnchorProp : "Proprietats d'Ã ncora",
+ButtonProp : "Proprietats de botó",
+CheckboxProp : "Proprietats de casella de verificació",
+HiddenFieldProp : "Proprietats de camp ocult",
+RadioButtonProp : "Proprietats de botó rà dio",
+ImageButtonProp : "Proprietats de botó imatge",
+TextFieldProp : "Proprietats de camp de text",
+SelectionFieldProp : "Proprietats de camp de selecció",
+TextareaProp : "Proprietats de camp de text",
+FormProp : "Proprietats de formulari",
+
+FontFormats : "Normal;Formatejat;Adreça;Capçalera 1;Capçalera 2;Capçalera 3;Capçalera 4;Capçalera 5;Capçalera 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Processant XHTML. Si us plau esperi...",
+Done : "Fet",
+PasteWordConfirm : "El text que voleu enganxar sembla provenir de Word. Voleu netejar aquest text abans que sigui enganxat?",
+NotCompatiblePaste : "Aquesta funció és disponible per a Internet Explorer versió 5.5 o superior. Voleu enganxar sense netejar?",
+UnknownToolbarItem : "Element de la Barra d'eines desconegut \"%1\"",
+UnknownCommand : "Nom de comanda desconegut \"%1\"",
+NotImplemented : "Mètode no implementat",
+UnknownToolbarSet : "Conjunt de barra d'eines \"%1\" inexistent",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancelar",
+DlgBtnClose : "Tancar",
+DlgBtnBrowseServer : "Veure servidor",
+DlgAdvancedTag : "Avançat",
+DlgOpOther : "Altres",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Si us plau, afegiu la URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<no definit>",
+DlgGenId : "Id",
+DlgGenLangDir : "Direcció Idioma",
+DlgGenLangDirLtr : "Esquerra a Dreta (LTR)",
+DlgGenLangDirRtl : "Dreta a Esquerra (RTL)",
+DlgGenLangCode : "Codi de Llengua",
+DlgGenAccessKey : "Clau d'accés",
+DlgGenName : "Nom",
+DlgGenTabIndex : "Index de Tab",
+DlgGenLongDescr : "Descripció Llarga URL",
+DlgGenClass : "Classes del Full d'Estils",
+DlgGenTitle : "TÃtol Consultiu",
+DlgGenContType : "Tipus de Contingut Consultiu",
+DlgGenLinkCharset : "Conjunt de Carà cters Font Enllaçat",
+DlgGenStyle : "Estil",
+
+// Image Dialog
+DlgImgTitle : "Proprietats d'Imatge",
+DlgImgInfoTab : "Informació d'Imatge",
+DlgImgBtnUpload : "Enviar-la al servidor",
+DlgImgURL : "URL",
+DlgImgUpload : "Pujar",
+DlgImgAlt : "Text Alternatiu",
+DlgImgWidth : "Amplada",
+DlgImgHeight : "Alçada",
+DlgImgLockRatio : "Bloquejar Proporcions",
+DlgBtnResetSize : "Restaurar Tamany",
+DlgImgBorder : "Costat",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Alineació",
+DlgImgAlignLeft : "Left",
+DlgImgAlignAbsBottom: "Abs Bottom",
+DlgImgAlignAbsMiddle: "Abs Middle",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Bottom",
+DlgImgAlignMiddle : "Middle",
+DlgImgAlignRight : "Right",
+DlgImgAlignTextTop : "Text Top",
+DlgImgAlignTop : "Top",
+DlgImgPreview : "Vista Prèvia",
+DlgImgAlertUrl : "Si us plau, escriviu la URL de la imatge",
+DlgImgLinkTab : "Enllaç",
+
+// Flash Dialog
+DlgFlashTitle : "Propietats Flash",
+DlgFlashChkPlay : "Reprodució Automà tica",
+DlgFlashChkLoop : "Bucle",
+DlgFlashChkMenu : "Habilitar Menu Flash",
+DlgFlashScale : "Escala",
+DlgFlashScaleAll : "Mostrar tot",
+DlgFlashScaleNoBorder : "Sense Costats",
+DlgFlashScaleFit : "Mida exacta",
+
+// Link Dialog
+DlgLnkWindowTitle : "Enllaç",
+DlgLnkInfoTab : "Informació d'Enllaç",
+DlgLnkTargetTab : "DestÃ",
+
+DlgLnkType : "Tipus de Link",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ãncora en aquesta pà gina",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocol",
+DlgLnkProtoOther : "<altra>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Seleccionar una à ncora",
+DlgLnkAnchorByName : "Per nom d'Ã ncora",
+DlgLnkAnchorById : "Per Id d'element",
+DlgLnkNoAnchors : "<No hi ha à ncores disponibles en aquest document>",
+DlgLnkEMail : "Adreça d'E-Mail",
+DlgLnkEMailSubject : "Subjecte del Missatge",
+DlgLnkEMailBody : "Cos del Missatge",
+DlgLnkUpload : "Pujar",
+DlgLnkBtnUpload : "Enviar al Servidor",
+
+DlgLnkTarget : "DestÃ",
+DlgLnkTargetFrame : "<marc>",
+DlgLnkTargetPopup : "<finestra popup>",
+DlgLnkTargetBlank : "Nova Finestra (_blank)",
+DlgLnkTargetParent : "Finestra Pare (_parent)",
+DlgLnkTargetSelf : "Mateixa Finestra (_self)",
+DlgLnkTargetTop : "Finestra Major (_top)",
+DlgLnkTargetFrameName : "Nom del marc de destÃ",
+DlgLnkPopWinName : "Nom Finestra Popup",
+DlgLnkPopWinFeat : "CaracterÃstiques Finestra Popup",
+DlgLnkPopResize : "Redimensionable",
+DlgLnkPopLocation : "Barra d'Adreça",
+DlgLnkPopMenu : "Barra de Menú",
+DlgLnkPopScroll : "Barres d'Scroll",
+DlgLnkPopStatus : "Barra d'Estat",
+DlgLnkPopToolbar : "Barra d'Eines",
+DlgLnkPopFullScrn : "Pantalla completa (IE)",
+DlgLnkPopDependent : "Depenent (Netscape)",
+DlgLnkPopWidth : "Amplada",
+DlgLnkPopHeight : "Alçada",
+DlgLnkPopLeft : "Posició Esquerra",
+DlgLnkPopTop : "Posició Dalt",
+
+DlnLnkMsgNoUrl : "Si us plau, escrigui l'enllaç URL",
+DlnLnkMsgNoEMail : "Si us plau, escrigui l'adreça e-mail",
+DlnLnkMsgNoAnchor : "Si us plau, escrigui l'Ã ncora",
+
+// Color Dialog
+DlgColorTitle : "Seleccioni Color",
+DlgColorBtnClear : "Netejar",
+DlgColorHighlight : "Realçar",
+DlgColorSelected : "Seleccionat",
+
+// Smiley Dialog
+DlgSmileyTitle : "Afegir una Icona",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Seleccioneu Carà cter Especial",
+
+// Table Dialog
+DlgTableTitle : "Proprietats de Taula",
+DlgTableRows : "Files",
+DlgTableColumns : "Columnes",
+DlgTableBorder : "Tamany de Costat",
+DlgTableAlign : "Alineació",
+DlgTableAlignNotSet : "<No Definit>",
+DlgTableAlignLeft : "Esquerra",
+DlgTableAlignCenter : "Centre",
+DlgTableAlignRight : "Dreta",
+DlgTableWidth : "Amplada",
+DlgTableWidthPx : "pÃxels",
+DlgTableWidthPc : "percentatge",
+DlgTableHeight : "Alçada",
+DlgTableCellSpace : "Cell spacing",
+DlgTableCellPad : "Cell padding",
+DlgTableCaption : "Capçalera",
+
+// Table Cell Dialog
+DlgCellTitle : "Proprietats de Cel·la",
+DlgCellWidth : "Amplada",
+DlgCellWidthPx : "pÃxels",
+DlgCellWidthPc : "percentatge",
+DlgCellHeight : "Alçada",
+DlgCellWordWrap : "Word Wrap",
+DlgCellWordWrapNotSet : "<No Definit>",
+DlgCellWordWrapYes : "Si",
+DlgCellWordWrapNo : "No",
+DlgCellHorAlign : "Alineació Horitzontal",
+DlgCellHorAlignNotSet : "<No Definit>",
+DlgCellHorAlignLeft : "Esquerra",
+DlgCellHorAlignCenter : "Centre",
+DlgCellHorAlignRight: "Dreta",
+DlgCellVerAlign : "Alineació Vertical",
+DlgCellVerAlignNotSet : "<No definit>",
+DlgCellVerAlignTop : "Top",
+DlgCellVerAlignMiddle : "Middle",
+DlgCellVerAlignBottom : "Bottom",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "Rows Span",
+DlgCellCollSpan : "Columns Span",
+DlgCellBackColor : "Color de Fons",
+DlgCellBorderColor : "Colr de Costat",
+DlgCellBtnSelect : "Seleccioni...",
+
+// Find Dialog
+DlgFindTitle : "Cercar",
+DlgFindFindBtn : "Cercar",
+DlgFindNotFoundMsg : "El text especificat no ha estat trobat.",
+
+// Replace Dialog
+DlgReplaceTitle : "Remplaçar",
+DlgReplaceFindLbl : "Cercar:",
+DlgReplaceReplaceLbl : "Remplaçar per:",
+DlgReplaceCaseChk : "Sensible a Majúscules",
+DlgReplaceReplaceBtn : "Remplaçar",
+DlgReplaceReplAllBtn : "Remplaçar Tot",
+DlgReplaceWordChk : "Cercar Paraula Completa",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "La seguretat del vostre navigador no permet executar automà ticament les operacions d'enganxat. Si us plau, utilitzeu el teclat (Ctrl+V).",
+PasteErrorCut : "La seguretat del vostre navigador no permet executar automà ticament les operacions de tallar. Si us plau, utilitzeu el teclat (Ctrl+X).",
+PasteErrorCopy : "La seguretat del vostre navigador no permet executar automà ticament les operacions de copiar. Si us plau, utilitzeu el teclat (Ctrl+C).",
+
+PasteAsText : "Enganxar com Text Planer",
+PasteFromWord : "Enganxar com Word",
+
+DlgPasteMsg2 : "Si us plau, enganxeu dins del següent camp utilitzant el teclat (<STRONG>Ctrl+V</STRONG>) i premeu <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorar definicions de font",
+DlgPasteRemoveStyles : "Eliminar definicions d'estil",
+DlgPasteCleanBox : "Netejar camp",
+
+
+// Color Picker
+ColorAutomatic : "Automà tic",
+ColorMoreColors : "Més Colors...",
+
+// Document Properties
+DocProps : "Proprietats de document",
+
+// Anchor Dialog
+DlgAnchorTitle : "Proprietats d'Ã ncora",
+DlgAnchorName : "Nom d'Ã ncora",
+DlgAnchorErrorName : "Si us plau, escrigui el nom de l'ancora",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "No és al diccionari",
+DlgSpellChangeTo : "Canviar a",
+DlgSpellBtnIgnore : "Ignorar",
+DlgSpellBtnIgnoreAll : "Ignorar tot",
+DlgSpellBtnReplace : "Remplaçar",
+DlgSpellBtnReplaceAll : "Replaçar tot",
+DlgSpellBtnUndo : "Desfer",
+DlgSpellNoSuggestions : "Cap suggestió",
+DlgSpellProgress : "Comprovació de sintaxi en progrés",
+DlgSpellNoMispell : "Comprovació de sintaxi completada",
+DlgSpellNoChanges : "Comprovació de sintaxi: cap paraulada canviada",
+DlgSpellOneChange : "Comprovació de sintaxi: una paraula canviada",
+DlgSpellManyChanges : "Comprovació de sintaxi %1 paraules canviades",
+
+IeSpellDownload : "Comprovació de sintaxi no instal·lat. Voleu descarregar-ho ara?",
+
+// Button Dialog
+DlgButtonText : "Text (Valor)",
+DlgButtonType : "Tipus",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nom",
+DlgCheckboxValue : "Valor",
+DlgCheckboxSelected : "Seleccionat",
+
+// Form Dialog
+DlgFormName : "Nom",
+DlgFormAction : "Acció",
+DlgFormMethod : "Mètode",
+
+// Select Field Dialog
+DlgSelectName : "Nom",
+DlgSelectValue : "Valor",
+DlgSelectSize : "Tamany",
+DlgSelectLines : "LÃnies",
+DlgSelectChkMulti : "Permetre múltiples seleccions",
+DlgSelectOpAvail : "Opcions disponibles",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Valor",
+DlgSelectBtnAdd : "Afegir",
+DlgSelectBtnModify : "Modificar",
+DlgSelectBtnUp : "Amunt",
+DlgSelectBtnDown : "Avall",
+DlgSelectBtnSetValue : "Seleccionar per defecte",
+DlgSelectBtnDelete : "Esborrar",
+
+// Textarea Dialog
+DlgTextareaName : "Nom",
+DlgTextareaCols : "Columnes",
+DlgTextareaRows : "Files",
+
+// Text Field Dialog
+DlgTextName : "Nom",
+DlgTextValue : "Valor",
+DlgTextCharWidth : "Amplada de carà cter",
+DlgTextMaxChars : "Mà xim de carà cters",
+DlgTextType : "Tipus",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Contrassenya",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nom",
+DlgHiddenValue : "Valor",
+
+// Bulleted List Dialog
+BulletedListProp : "Proprietats de llista marcada",
+NumberedListProp : "Proprietats de llista numerada",
+DlgLstType : "Tipus",
+DlgLstTypeCircle : "Cercle",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Quadrat",
+DlgLstTypeNumbers : "Números (1, 2, 3)",
+DlgLstTypeLCase : "Lletres minúscules (a, b, c)",
+DlgLstTypeUCase : "Lletres majúscules (A, B, C)",
+DlgLstTypeSRoman : "Números romans minúscules (i, ii, iii)",
+DlgLstTypeLRoman : "Números romans majúscules (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General",
+DlgDocBackTab : "Fons",
+DlgDocColorsTab : "Colors i marges",
+DlgDocMetaTab : "Dades Meta",
+
+DlgDocPageTitle : "TÃtol de la pà gina",
+DlgDocLangDir : "Direcció llenguatge",
+DlgDocLangDirLTR : "Esquerra a dreta (LTR)",
+DlgDocLangDirRTL : "Dreta a esquerra (RTL)",
+DlgDocLangCode : "Codi de llenguatge",
+DlgDocCharSet : "Codificació de conjunt de carà cters",
+DlgDocCharSetOther : "Altra codificació de conjunt de carà cters",
+
+DlgDocDocType : "Capçalera de tipus de document",
+DlgDocDocTypeOther : "Altra Capçalera de tipus de document",
+DlgDocIncXHTML : "Incloure declaracions XHTML",
+DlgDocBgColor : "Color de fons",
+DlgDocBgImage : "URL de la imatge de fons",
+DlgDocBgNoScroll : "Fons fixe",
+DlgDocCText : "Text",
+DlgDocCLink : "Enllaç",
+DlgDocCVisited : "Enllaç visitat",
+DlgDocCActive : "Enllaç actiu",
+DlgDocMargins : "Marges de pà gina",
+DlgDocMaTop : "Cap",
+DlgDocMaLeft : "Esquerra",
+DlgDocMaRight : "Dreta",
+DlgDocMaBottom : "Peu",
+DlgDocMeIndex : "Mots clau per a indexació (separats per coma)",
+DlgDocMeDescr : "Descripció del document",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Vista prèvia",
+
+// Templates Dialog
+Templates : "Plantilles",
+DlgTemplatesTitle : "Contingut Plantilles",
+DlgTemplatesSelMsg : "Si us plau, seleccioneu la plantilla per obrir en l'editor<br>(el contingut actual no serà enregistrat):",
+DlgTemplatesLoading : "Carregant la llista de plantilles. Si us plau, esperi...",
+DlgTemplatesNoTpl : "(No hi ha plantilles definides)",
+
+// About Dialog
+DlgAboutAboutTab : "Sobre",
+DlgAboutBrowserInfoTab : "Informació del navigador",
+DlgAboutVersion : "versió",
+DlgAboutLicense : "Sota els termes de la Llicència GNU Lesser General Public License",
+DlgAboutInfo : "Per a més informació aneu a"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/cs.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/cs.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/cs.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: cs.js
+ * Czech language file.
+ *
+ * File Authors:
+ * David Horák (david.horak at email.cz)
+ * Petr PlavjanÃk (plavjanik at gmail.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Skrýt panel nástrojů",
+ToolbarExpand : "Zobrazit panel nástrojů",
+
+// Toolbar Items and Context Menu
+Save : "Uložit",
+NewPage : "Nová stránka",
+Preview : "Náhled",
+Cut : "Vyjmout",
+Copy : "KopÃrovat",
+Paste : "Vložit",
+PasteText : "Vložit jako Äistý text",
+PasteWord : "Vložit z Wordu",
+Print : "Tisk",
+SelectAll : "Vybrat vše",
+RemoveFormat : "Odstranit formátovánÃ",
+InsertLinkLbl : "Odkaz",
+InsertLink : "Vložit/zmÄnit odkaz",
+RemoveLink : "Odstranit odkaz",
+Anchor : "VložÃt/zmÄnit záložku",
+InsertImageLbl : "Obrázek",
+InsertImage : "Vložit/zmÄnit obrázek",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Tabulka",
+InsertTable : "Vložit/zmÄnit tabulku",
+InsertLineLbl : "Linka",
+InsertLine : "Vložit vodorovnou linku",
+InsertSpecialCharLbl: "Speciálnà znaky",
+InsertSpecialChar : "Vložit speciálnà znaky",
+InsertSmileyLbl : "SmajlÃky",
+InsertSmiley : "Vložit smajlÃk",
+About : "O aplikaci FCKeditor",
+Bold : "TuÄné",
+Italic : "KurzÃva",
+Underline : "Podtržené",
+StrikeThrough : "PÅeÅ¡krtnuté",
+Subscript : "Dolnà index",
+Superscript : "Hornà index",
+LeftJustify : "Zarovnat vlevo",
+CenterJustify : "Zarovnat na stÅed",
+RightJustify : "Zarovnat vpravo",
+BlockJustify : "Zarovnat do bloku",
+DecreaseIndent : "ZmenÅ¡it odsazenÃ",
+IncreaseIndent : "ZvÄtÅ¡it odsazenÃ",
+Undo : "ZpÄt",
+Redo : "Znovu",
+NumberedListLbl : "ÄÃslovánÃ",
+NumberedList : "Vložit/odstranit ÄÃslovaný seznam",
+BulletedListLbl : "Odrážky",
+BulletedList : "Vložit/odstranit odrážky",
+ShowTableBorders : "Zobrzit okraje tabulek",
+ShowDetails : "Zobrazit podrobnosti",
+Style : "Styl",
+FontFormat : "Formát",
+Font : "PÃsmo",
+FontSize : "Velikost",
+TextColor : "Barva textu",
+BGColor : "Barva pozadÃ",
+Source : "Zdroj",
+Find : "Hledat",
+Replace : "Nahradit",
+SpellCheck : "Zkontrolovat pravopis",
+UniversalKeyboard : "Univerzálnà klávesnice",
+
+Form : "FormuláÅ",
+Checkbox : "ZaÅ¡krtávacà polÃÄko",
+RadioButton : "PÅepÃnaÄ",
+TextField : "Textové pole",
+Textarea : "Textová oblast",
+HiddenField : "Skryté pole",
+Button : "TlaÄÃtko",
+SelectionField : "Seznam",
+ImageButton : "Obrázkové tlaÄÃtko",
+
+// Context Menu
+EditLink : "ZmÄnit odkaz",
+InsertRow : "Vložit Åádek",
+DeleteRows : "Smazat Åádek",
+InsertColumn : "Vložit sloupec",
+DeleteColumns : "Smazat sloupec",
+InsertCell : "Vložit buÅku",
+DeleteCells : "Smazat buÅky",
+MergeCells : "SlouÄit buÅky",
+SplitCell : "RozdÄlit buÅku",
+CellProperties : "Vlastnosti buÅky",
+TableProperties : "Vlastnosti tabulky",
+ImageProperties : "Vlastnosti obrázku",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Vlastnosti záložky",
+ButtonProp : "Vlastnosti tlaÄÃtka",
+CheckboxProp : "Vlastnosti zaÅ¡krtávacÃho polÃÄka",
+HiddenFieldProp : "Vlastnosti skrytého pole",
+RadioButtonProp : "Vlastnosti pÅepÃnaÄe",
+ImageButtonProp : "Vlastnostà obrázkového tlaÄÃtka",
+TextFieldProp : "Vlastnosti textového pole",
+SelectionFieldProp : "Vlastnosti seznamu",
+TextareaProp : "Vlastnosti textové oblasti",
+FormProp : "Vlastnosti formuláÅe",
+
+FontFormats : "NormálnÃ;Formátovaný;Adresa;Nadpis 1;Nadpis 2;Nadpis 3;Nadpis 4;Nadpis 5;Nadpis 6",
+
+// Alerts and Messages
+ProcessingXHTML : "ProbÃhá zpracovánà XHTML. ProsÃm Äekejte...",
+Done : "Hotovo",
+PasteWordConfirm : "Jak je vidÄt, vkládaný text je kopÃrován z Wordu. Chceet jej pÅed vloženÃm vyÄistit?",
+NotCompatiblePaste : "Tento pÅÃkaz je dostupný pouze v Internet Exploreru verze 5.5 nebo vyÅ¡Å¡Ã. Chcete vložit text bez vyÄiÅ¡tÄnÃ?",
+UnknownToolbarItem : "Neznámá položka panelu nástrojů \"%1\"",
+UnknownCommand : "Neznámý pÅÃkaz \"%1\"",
+NotImplemented : "PÅÃkaz nenà implementován",
+UnknownToolbarSet : "Panel nástrojů \"%1\" neexistuje",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Storno",
+DlgBtnClose : "ZavÅÃt",
+DlgBtnBrowseServer : "Vybrat na serveru",
+DlgAdvancedTag : "RozÅ¡ÃÅené",
+DlgOpOther : "<OstatnÃ>",
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<nenastaveno>",
+DlgGenId : "Id",
+DlgGenLangDir : "Orientace jazyka",
+DlgGenLangDirLtr : "Zleva do prava (LTR)",
+DlgGenLangDirRtl : "Zprava do leva (RTL)",
+DlgGenLangCode : "Kód jazyka",
+DlgGenAccessKey : "PÅÃstupový klÃÄ",
+DlgGenName : "Jméno",
+DlgGenTabIndex : "PoÅadà prvku",
+DlgGenLongDescr : "Dlouhý popis URL",
+DlgGenClass : "TÅÃda stylu",
+DlgGenTitle : "Pomocný titulek",
+DlgGenContType : "Pomocný typ obsahu",
+DlgGenLinkCharset : "PÅiÅazená znaková sada",
+DlgGenStyle : "Styl",
+
+// Image Dialog
+DlgImgTitle : "Vlastosti obrázku",
+DlgImgInfoTab : "Informace o obrázku",
+DlgImgBtnUpload : "Odeslat na server",
+DlgImgURL : "URL",
+DlgImgUpload : "Odeslat",
+DlgImgAlt : "Alternativnà text",
+DlgImgWidth : "Å ÃÅka",
+DlgImgHeight : "Výška",
+DlgImgLockRatio : "Zámek",
+DlgBtnResetSize : "Původnà velikost",
+DlgImgBorder : "Okraje",
+DlgImgHSpace : "H-mezera",
+DlgImgVSpace : "V-mezera",
+DlgImgAlign : "ZarovnánÃ",
+DlgImgAlignLeft : "Vlevo",
+DlgImgAlignAbsBottom: "Zcela dolů",
+DlgImgAlignAbsMiddle: "DoprostÅed",
+DlgImgAlignBaseline : "Na úÄaÅÃ",
+DlgImgAlignBottom : "Dolů",
+DlgImgAlignMiddle : "Na stÅed",
+DlgImgAlignRight : "Vpravo",
+DlgImgAlignTextTop : "Na hornà okraj textu",
+DlgImgAlignTop : "Nahoru",
+DlgImgPreview : "Náhled",
+DlgImgAlertUrl : "Zadejte prosÃm URL obrázku",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Odkaz",
+DlgLnkInfoTab : "Informace o odkazu",
+DlgLnkTargetTab : "CÃl",
+
+DlgLnkType : "Typ odkazu",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Kotva v této stránce",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<jiný>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Vybrat kotvu",
+DlgLnkAnchorByName : "Podle jména kotvy",
+DlgLnkAnchorById : "Podle Id objektu",
+DlgLnkNoAnchors : "<Ve stránce žádná kotva nenà definována>",
+DlgLnkEMail : "E-Mailová adresa",
+DlgLnkEMailSubject : "PÅedmÄt zprávy",
+DlgLnkEMailBody : "TÄlo zprávy",
+DlgLnkUpload : "Odeslat",
+DlgLnkBtnUpload : "Odeslat na Server",
+
+DlgLnkTarget : "CÃl",
+DlgLnkTargetFrame : "<rámec>",
+DlgLnkTargetPopup : "<vyskakovacà okno>",
+DlgLnkTargetBlank : "Nové okno (_blank)",
+DlgLnkTargetParent : "RodiÄovské okno (_parent)",
+DlgLnkTargetSelf : "Stejné okno (_self)",
+DlgLnkTargetTop : "Hlavnà okno (_top)",
+DlgLnkTargetFrameName : "Název cÃlového rámu",
+DlgLnkPopWinName : "Název vyskakovacÃho okna",
+DlgLnkPopWinFeat : "Vlastnosti vyskakovacÃho okna",
+DlgLnkPopResize : "MÄnitelná velikost",
+DlgLnkPopLocation : "Panel umÃstÄnÃ",
+DlgLnkPopMenu : "Panel nabÃdky",
+DlgLnkPopScroll : "PosuvnÃky",
+DlgLnkPopStatus : "Stavový Åádek",
+DlgLnkPopToolbar : "Panel nástrojů",
+DlgLnkPopFullScrn : "Celá obrazovka (IE)",
+DlgLnkPopDependent : "Závislost (Netscape)",
+DlgLnkPopWidth : "Å ÃÅka",
+DlgLnkPopHeight : "Výška",
+DlgLnkPopLeft : "Levý okraj",
+DlgLnkPopTop : "Hornà okraj",
+
+DlnLnkMsgNoUrl : "Zadejte prosÃm URL odkazu",
+DlnLnkMsgNoEMail : "Zadejte prosÃm e-mailovou adresu",
+DlnLnkMsgNoAnchor : "Vyberte prosÃm kotvu",
+
+// Color Dialog
+DlgColorTitle : "VýbÄr barvy",
+DlgColorBtnClear : "Vymazat",
+DlgColorHighlight : "ZvýraznÄná",
+DlgColorSelected : "Vybraná",
+
+// Smiley Dialog
+DlgSmileyTitle : "Vkládánà smajlÃků",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "VýbÄr speciálnÃho znaku",
+
+// Table Dialog
+DlgTableTitle : "Vlastnosti tabulky",
+DlgTableRows : "Åádky",
+DlgTableColumns : "Sloupce",
+DlgTableBorder : "OhraniÄenÃ",
+DlgTableAlign : "ZarovnánÃ",
+DlgTableAlignNotSet : "<nenastaveno>",
+DlgTableAlignLeft : "Vlevo",
+DlgTableAlignCenter : "Na stÅed",
+DlgTableAlignRight : "Vpravo",
+DlgTableWidth : "Å ÃÅka",
+DlgTableWidthPx : "bodů",
+DlgTableWidthPc : "procent",
+DlgTableHeight : "Výška",
+DlgTableCellSpace : "Vzdálenost bunÄk",
+DlgTableCellPad : "Odsazenà obsahu",
+DlgTableCaption : "Popis",
+
+// Table Cell Dialog
+DlgCellTitle : "Vlastnosti buÅky",
+DlgCellWidth : "Å ÃÅka",
+DlgCellWidthPx : "bodů",
+DlgCellWidthPc : "procent",
+DlgCellHeight : "Výška",
+DlgCellWordWrap : "ZalamovánÃ",
+DlgCellWordWrapNotSet : "<nenanstaveno>",
+DlgCellWordWrapYes : "Ano",
+DlgCellWordWrapNo : "Ne",
+DlgCellHorAlign : "Vodorovné zarovnánÃ",
+DlgCellHorAlignNotSet : "<nenastaveno>",
+DlgCellHorAlignLeft : "Vlevo",
+DlgCellHorAlignCenter : "Na stÅed",
+DlgCellHorAlignRight: "Vpravo",
+DlgCellVerAlign : "Svislé zarovnánÃ",
+DlgCellVerAlignNotSet : "<nenastaveno>",
+DlgCellVerAlignTop : "Nahoru",
+DlgCellVerAlignMiddle : "DoprostÅed",
+DlgCellVerAlignBottom : "Dolů",
+DlgCellVerAlignBaseline : "Na úÄaÅÃ",
+DlgCellRowSpan : "SlouÄené Åádky",
+DlgCellCollSpan : "SlouÄené sloupce",
+DlgCellBackColor : "Barva pozadÃ",
+DlgCellBorderColor : "Rarva ohraniÄenÃ",
+DlgCellBtnSelect : "VýbÄr...",
+
+// Find Dialog
+DlgFindTitle : "Hledat",
+DlgFindFindBtn : "Hledat",
+DlgFindNotFoundMsg : "Hledaný text nebyl nalezen.",
+
+// Replace Dialog
+DlgReplaceTitle : "Nahradit",
+DlgReplaceFindLbl : "Co hledat:",
+DlgReplaceReplaceLbl : "ÄÃm nahradit:",
+DlgReplaceCaseChk : "RozliÅ¡ovat velikost pÃsma",
+DlgReplaceReplaceBtn : "Nahradit",
+DlgReplaceReplAllBtn : "Nahradit vše",
+DlgReplaceWordChk : "Pouze celá slova",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "BezpeÄnostnà nastavenà VaÅ¡eho prohlÞeÄe nedovolujà editoru spustit funkci pro vloženà textu ze schránky. ProsÃm vložte text ze schránky pomocà klávesnice (Ctrl+V).",
+PasteErrorCut : "BezpeÄnostnà nastavenà VaÅ¡eho prohlÞeÄe nedovolujà editoru spustit funkci pro vyjmutà zvoleného textu do schránky. ProsÃm vyjmÄte zvolený text do schránky pomocà klávesnice (Ctrl+X).",
+PasteErrorCopy : "BezpeÄnostnà nastavenà VaÅ¡eho prohlÞeÄe nedovolujà editoru spustit funkci pro kopÃrovánà zvoleného textu do schránky. ProsÃm zkopÃrujte zvolený text do schránky pomocà klávesnice (Ctrl+C).",
+
+PasteAsText : "Vložit jako Äistý text",
+PasteFromWord : "Vložit text z Wordu",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "Automaticky",
+ColorMoreColors : "VÃce barev...",
+
+// Document Properties
+DocProps : "Vlastnosti dokumentu",
+
+// Anchor Dialog
+DlgAnchorTitle : "Vlastnosti záložky",
+DlgAnchorName : "Název záložky",
+DlgAnchorErrorName : "Zadejte prosÃm název záložky",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Nenà ve slovnÃku",
+DlgSpellChangeTo : "ZmÄnit na",
+DlgSpellBtnIgnore : "PÅeskoÄit",
+DlgSpellBtnIgnoreAll : "PÅeskakovat vÅ¡e",
+DlgSpellBtnReplace : "ZamÄnit",
+DlgSpellBtnReplaceAll : "ZamÄÅovat vÅ¡e",
+DlgSpellBtnUndo : "ZpÄt",
+DlgSpellNoSuggestions : "- žádné návrhy -",
+DlgSpellProgress : "ProbÃhá kontrola pravopisu...",
+DlgSpellNoMispell : "Kontrola pravopisu dokonÄena: Žádné pravopisné chyby nenalezeny",
+DlgSpellNoChanges : "Kontrola pravopisu dokonÄena: Beze zmÄn",
+DlgSpellOneChange : "Kontrola pravopisu dokonÄena: Jedno slovo zmÄnÄno",
+DlgSpellManyChanges : "Kontrola pravopisu dokonÄena: %1 slov zmÄnÄno",
+
+IeSpellDownload : "Kontrola pravopisu nenà nainstalována. Chcete ji nynà stáhnout?",
+
+// Button Dialog
+DlgButtonText : "Popisek",
+DlgButtonType : "Typ",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Název",
+DlgCheckboxValue : "Hodnota",
+DlgCheckboxSelected : "Zaškrtnuto",
+
+// Form Dialog
+DlgFormName : "Název",
+DlgFormAction : "Akce",
+DlgFormMethod : "Metoda",
+
+// Select Field Dialog
+DlgSelectName : "Název",
+DlgSelectValue : "Hodnota",
+DlgSelectSize : "Velikost",
+DlgSelectLines : "Åádků",
+DlgSelectChkMulti : "Povolit mnohonásobné výbÄry",
+DlgSelectOpAvail : "Dostupná nastavenÃ",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Hodnota",
+DlgSelectBtnAdd : "PÅidat",
+DlgSelectBtnModify : "ZmÄnit",
+DlgSelectBtnUp : "Nahoru",
+DlgSelectBtnDown : "Dolů",
+DlgSelectBtnSetValue : "Nastavit jako vybranou hodnotu",
+DlgSelectBtnDelete : "Smazat",
+
+// Textarea Dialog
+DlgTextareaName : "Název",
+DlgTextareaCols : "Sloupců",
+DlgTextareaRows : "Åádků",
+
+// Text Field Dialog
+DlgTextName : "Název",
+DlgTextValue : "Hodnota",
+DlgTextCharWidth : "Å ÃÅka ve znacÃch",
+DlgTextMaxChars : "Maximálnà poÄet znaků",
+DlgTextType : "Typ",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Heslo",
+
+// Hidden Field Dialog
+DlgHiddenName : "Název",
+DlgHiddenValue : "Hodnota",
+
+// Bulleted List Dialog
+BulletedListProp : "Vlastnosti odrážek",
+NumberedListProp : "Vlastnosti ÄÃslovaného seznamu",
+DlgLstType : "Typ",
+DlgLstTypeCircle : "Kružnice",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Ätverec",
+DlgLstTypeNumbers : "ÄÃsla (1, 2, 3)",
+DlgLstTypeLCase : "Malá pÃsmena (a, b, c)",
+DlgLstTypeUCase : "Velká pÃsmena (A, B, C)",
+DlgLstTypeSRoman : "Malé ÅÃmská ÄÃslice (i, ii, iii)",
+DlgLstTypeLRoman : "Velké ÅÃmské ÄÃslice (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Obecné",
+DlgDocBackTab : "PozadÃ",
+DlgDocColorsTab : "Barvy a okraje",
+DlgDocMetaTab : "Metadata",
+
+DlgDocPageTitle : "Titulek stránky",
+DlgDocLangDir : "SmÄr jazyku",
+DlgDocLangDirLTR : "Zleva do prava ",
+DlgDocLangDirRTL : "Zprava doleva",
+DlgDocLangCode : "Kód jazyku",
+DlgDocCharSet : "Znaková sada",
+DlgDocCharSetOther : "Dalšà znaková sada",
+
+DlgDocDocType : "Typ dokumentu",
+DlgDocDocTypeOther : "Jiný typ dokumetu",
+DlgDocIncXHTML : "Zahrnou deklarace XHTML",
+DlgDocBgColor : "Barva pozadÃ",
+DlgDocBgImage : "URL obrázku na pozadÃ",
+DlgDocBgNoScroll : "Nerolovatelné pozadÃ",
+DlgDocCText : "Text",
+DlgDocCLink : "Odkaz",
+DlgDocCVisited : "NavÅ¡tÃvený odkaz",
+DlgDocCActive : "Vybraný odkaz",
+DlgDocMargins : "Okraje stránky",
+DlgDocMaTop : "HornÃ",
+DlgDocMaLeft : "Levý",
+DlgDocMaRight : "Pravý",
+DlgDocMaBottom : "DolnÃ",
+DlgDocMeIndex : "KlÃÄová slova (oddÄlená Äárkou)",
+DlgDocMeDescr : "Popis dokumentu",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Autorská práva",
+DlgDocPreview : "Náhled",
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "O aplikaci",
+DlgAboutBrowserInfoTab : "Informace o prohlÞeÄi",
+DlgAboutVersion : "verze",
+DlgAboutLicense : "Licencováno pomocà GNU Lesser General Public License",
+DlgAboutInfo : "VÃce informacà zÃskáte na"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/da.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/da.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/da.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: da.js
+ * Danish language file.
+ *
+ * File Authors:
+ * Jørgen Nordstrøm (jn at FirstWeb.dk)
+ * Jesper Michelsen (jm at i-deVision.dk)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Sammenfold Værktøjskasse",
+ToolbarExpand : "Udvid Værktøjskasse",
+
+// Toolbar Items and Context Menu
+Save : "Gem",
+NewPage : "Ny side",
+Preview : "Vis eksempel",
+Cut : "Klip",
+Copy : "Kopier",
+Paste : "Indsæt",
+PasteText : "Indsæt som ren tekst",
+PasteWord : "Indsæt fra Word",
+Print : "Udskriv",
+SelectAll : "Vælg alt",
+RemoveFormat : "Slet formatering",
+InsertLinkLbl : "Link",
+InsertLink : "Indsæt/Rediger Link",
+RemoveLink : "Slet Link",
+Anchor : "Insert/Rediger Anker",
+InsertImageLbl : "Indsæt Billed",
+InsertImage : "Indsæt/Rediger Billed",
+InsertFlashLbl : "Flash",
+InsertFlash : "Indsæt/rediger Flash",
+InsertTableLbl : "Table",
+InsertTable : "Indsæt/Rediger Tabel",
+InsertLineLbl : "Linie",
+InsertLine : "Indsæt horisontal Linie",
+InsertSpecialCharLbl: "Special Karakter",
+InsertSpecialChar : "Indsæt Special Karakter",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Indsæt Smiley",
+About : "Om FCKeditor",
+Bold : "Fed",
+Italic : "Kursiv",
+Underline : "Understreget",
+StrikeThrough : "Overstreget",
+Subscript : "Sænket skrift",
+Superscript : "Hævet skrift",
+LeftJustify : "Venstrestillet",
+CenterJustify : "Centreret",
+RightJustify : "Højrestillet",
+BlockJustify : "Lige margener",
+DecreaseIndent : "Forøg indrykning",
+IncreaseIndent : "Formindsk indrykning",
+Undo : "Fortryd",
+Redo : "Anuller fortryd",
+NumberedListLbl : "Tal opstilling",
+NumberedList : "Indsæt/Slet Tal opstilling",
+BulletedListLbl : "Punkttegn opstilling",
+BulletedList : "Indsæt/Slet Punkttegn opstilling",
+ShowTableBorders : "Vis tabel kanter",
+ShowDetails : "Vis detaljer",
+Style : "Typografi",
+FontFormat : "Formatering",
+Font : "Skrifttype",
+FontSize : "Skriftstørrelse",
+TextColor : "Tekstfarve",
+BGColor : "Baggrundsfarve",
+Source : "Kilde",
+Find : "Søg",
+Replace : "Erstat",
+SpellCheck : "Stavekontrol",
+UniversalKeyboard : "Universalt Tastatur",
+
+Form : "Indsæt Form",
+Checkbox : "Indsæt Afkrydsningsboks",
+RadioButton : "Indsæt Radioknap",
+TextField : "Indsæt Tekstfelt",
+Textarea : "Indsæt Tekstboks",
+HiddenField : "Indsæt Skjultfelt",
+Button : "Indsæt Knap",
+SelectionField : "Indsæt Valgfelt",
+ImageButton : "Indsæt Billedknap",
+
+// Context Menu
+EditLink : "Rediger link",
+InsertRow : "Indsæt række",
+DeleteRows : "Slet rækker",
+InsertColumn : "Indsæt kolonne",
+DeleteColumns : "Slet kolonner",
+InsertCell : "Indsæt celle",
+DeleteCells : "Slet celle",
+MergeCells : "Flet celler",
+SplitCell : "Opdel celler",
+CellProperties : "Celle egenskaber",
+TableProperties : "Tabel egenskaber",
+ImageProperties : "Billed egenskaber",
+FlashProperties : "Flash egenskaber",
+
+AnchorProp : "Anker egenskaber",
+ButtonProp : "Knap egenskaber",
+CheckboxProp : "Afkrydsningsboks egenskaber",
+HiddenFieldProp : "Skjultfelt egenskaber",
+RadioButtonProp : "Radioknap egenskaber",
+ImageButtonProp : "Billedknap egenskaber",
+TextFieldProp : "Tekstfelt egenskaber",
+SelectionFieldProp : "Valgfelt egenskaber",
+TextareaProp : "Tekstboks egenskaber",
+FormProp : "Form egenskaber",
+
+FontFormats : "Normal;Formateret;Adresse;Overskrift 1;Overskrift 2;Overskrift 3;Overskrift 4;Overskrift 5;Overskrift 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Behandler XHTML. Vent venligst...",
+Done : "Færdig",
+PasteWordConfirm : "Den tekst du forsøger at indsætte ser ud til at komme fra Word. Vil du rense teksten før den indsættes ?",
+NotCompatiblePaste : "Denne kommando er tilgændelig i Internet Explorer 5.5 og senere. Vil du indsætte teksten uden at rense den ?",
+UnknownToolbarItem : "Ukendt værktøjslinje objekt \"%1\"",
+UnknownCommand : "Ukendt kommando navn \"%1\"",
+NotImplemented : "Kommandoen er ikke implementeret",
+UnknownToolbarSet : "Værktøjslinjen \"%1\" eksisterer ikke",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Anuller",
+DlgBtnClose : "Luk",
+DlgBtnBrowseServer : "Gennemse Server",
+DlgAdvancedTag : "Avanceret",
+DlgOpOther : "<Andet>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Indtast URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ikke sat>",
+DlgGenId : "Id",
+DlgGenLangDir : "Tekstretning",
+DlgGenLangDirLtr : "Venstre mod højre (LTR)",
+DlgGenLangDirRtl : "Højre mod venstre (RTL)",
+DlgGenLangCode : "Sprog kode",
+DlgGenAccessKey : "Adgangsnøgle",
+DlgGenName : "Navn",
+DlgGenTabIndex : "Tabulator Indeks",
+DlgGenLongDescr : "Udvidet beskrivelse",
+DlgGenClass : "Typografiark",
+DlgGenTitle : "Titel",
+DlgGenContType : "Indholdstype",
+DlgGenLinkCharset : "Tegnsæt",
+DlgGenStyle : "Typografi",
+
+// Image Dialog
+DlgImgTitle : "Billed egenskaber",
+DlgImgInfoTab : "Billed info",
+DlgImgBtnUpload : "Send til serveren",
+DlgImgURL : "URL",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Alternativ tekst",
+DlgImgWidth : "Bredde",
+DlgImgHeight : "Højde",
+DlgImgLockRatio : "Lås størrelsesforhold",
+DlgBtnResetSize : "Nulstil størrelse",
+DlgImgBorder : "Ramme",
+DlgImgHSpace : "HMargin",
+DlgImgVSpace : "VMargin",
+DlgImgAlign : "Justering",
+DlgImgAlignLeft : "Venstre",
+DlgImgAlignAbsBottom: "Abs bund",
+DlgImgAlignAbsMiddle: "Abs Midte",
+DlgImgAlignBaseline : "Bundlinje",
+DlgImgAlignBottom : "Bund",
+DlgImgAlignMiddle : "Midte",
+DlgImgAlignRight : "Højre",
+DlgImgAlignTextTop : "Tekst top",
+DlgImgAlignTop : "Top",
+DlgImgPreview : "Vis eksempel",
+DlgImgAlertUrl : "Indtast stien til billedet",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Flash egenskaber",
+DlgFlashChkPlay : "Automatisk afspilning",
+DlgFlashChkLoop : "Gentagelse",
+DlgFlashChkMenu : "Vis Flash menu",
+DlgFlashScale : "Skalér",
+DlgFlashScaleAll : "Vis alt",
+DlgFlashScaleNoBorder : "Ingen ramme",
+DlgFlashScaleFit : "Tilpas størrelse",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link info",
+DlgLnkTargetTab : "MÃ¥l",
+
+DlgLnkType : "Link type",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Anker på denne side",
+DlgLnkTypeEMail : "Email",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<anden>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Vælg et anker",
+DlgLnkAnchorByName : "Efter anker navn",
+DlgLnkAnchorById : "Efter element Id",
+DlgLnkNoAnchors : "<Der er ingen ankre tilgængelige i dette dokument>",
+DlgLnkEMail : "Email Adresse",
+DlgLnkEMailSubject : "Emne",
+DlgLnkEMailBody : "Besked",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Send til serveren",
+
+DlgLnkTarget : "MÃ¥l",
+DlgLnkTargetFrame : "<ramme>",
+DlgLnkTargetPopup : "<popup vindue>",
+DlgLnkTargetBlank : "Nyt vindue (_blank)",
+DlgLnkTargetParent : "Overliggende vindue (_parent)",
+DlgLnkTargetSelf : "Samme vindue (_self)",
+DlgLnkTargetTop : "Ãverste vindue (_top)",
+DlgLnkTargetFrameName : "Visnings vinduets navn",
+DlgLnkPopWinName : "Popup vinduets navn",
+DlgLnkPopWinFeat : "Popup vinduets egenskaber",
+DlgLnkPopResize : "Skalering",
+DlgLnkPopLocation : "Lokationslinje",
+DlgLnkPopMenu : "Menulinje",
+DlgLnkPopScroll : "Scrollbars",
+DlgLnkPopStatus : "Statuslinje",
+DlgLnkPopToolbar : "Værktøjslinje",
+DlgLnkPopFullScrn : "Fuld skærm (IE)",
+DlgLnkPopDependent : "Afhængig (Netscape)",
+DlgLnkPopWidth : "Bredde",
+DlgLnkPopHeight : "Højde",
+DlgLnkPopLeft : "Position fra venstre",
+DlgLnkPopTop : "Position fra toppen",
+
+DlnLnkMsgNoUrl : "Indtast link URL",
+DlnLnkMsgNoEMail : "Indtast e-mail addressen",
+DlnLnkMsgNoAnchor : "Vælg Anker",
+
+// Color Dialog
+DlgColorTitle : "Vælg farve",
+DlgColorBtnClear : "Slet alt",
+DlgColorHighlight : "Marker",
+DlgColorSelected : "valgt",
+
+// Smiley Dialog
+DlgSmileyTitle : "Insæt en smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Vælg specialkarakter",
+
+// Table Dialog
+DlgTableTitle : "Tabel egenskaber",
+DlgTableRows : "Rækker",
+DlgTableColumns : "Kolonner",
+DlgTableBorder : "Ramme størrelse",
+DlgTableAlign : "Justering",
+DlgTableAlignNotSet : "<Ikke sat>",
+DlgTableAlignLeft : "Venstrestillet",
+DlgTableAlignCenter : "Centreret",
+DlgTableAlignRight : "Højrestillet",
+DlgTableWidth : "Bredde",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "procent",
+DlgTableHeight : "Højde",
+DlgTableCellSpace : "Afstand mellem celler",
+DlgTableCellPad : "Celle margin",
+DlgTableCaption : "Titel",
+
+// Table Cell Dialog
+DlgCellTitle : "Celle egenskaber",
+DlgCellWidth : "Bredde",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "procent",
+DlgCellHeight : "Højde",
+DlgCellWordWrap : "Orddeling",
+DlgCellWordWrapNotSet : "<Ikke sat>",
+DlgCellWordWrapYes : "Ja",
+DlgCellWordWrapNo : "Nej",
+DlgCellHorAlign : "Horisontal justering",
+DlgCellHorAlignNotSet : "<Ikke sat>",
+DlgCellHorAlignLeft : "Venstrestillet",
+DlgCellHorAlignCenter : "Centreret",
+DlgCellHorAlignRight: "Højrestillet",
+DlgCellVerAlign : "Vertikal Justering",
+DlgCellVerAlignNotSet : "<Ikke sat>",
+DlgCellVerAlignTop : "Top",
+DlgCellVerAlignMiddle : "Midte",
+DlgCellVerAlignBottom : "Bund",
+DlgCellVerAlignBaseline : "Bundlinje",
+DlgCellRowSpan : "Antal rækker cellen spænder over",
+DlgCellCollSpan : "Antal kolonner cellen spænder over",
+DlgCellBackColor : "Baggrundsfarve",
+DlgCellBorderColor : "rammefarve",
+DlgCellBtnSelect : "Vælg...",
+
+// Find Dialog
+DlgFindTitle : "Find",
+DlgFindFindBtn : "Find",
+DlgFindNotFoundMsg : "Den angivne tekst blev ikke fundet",
+
+// Replace Dialog
+DlgReplaceTitle : "Erstat",
+DlgReplaceFindLbl : "Find:",
+DlgReplaceReplaceLbl : "Erstat med:",
+DlgReplaceCaseChk : "Forskel på store og små bogstaver",
+DlgReplaceReplaceBtn : "Erstat",
+DlgReplaceReplAllBtn : "Erstat alle",
+DlgReplaceWordChk : "Kun hele ord",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Din browsers sikkerhedsindstillinger tillader ikke editoren at indsætte tekst automatisk. Brug i stedet tastaturet til at indsætte teksten (Ctrl+V).",
+PasteErrorCut : "Din browsers sikkerhedsindstillinger tillader ikke editoren at klippe tekst automatisk. Brug i stedet tastaturet til at klippe teksten (Ctrl+X).",
+PasteErrorCopy : "Din browsers sikkerhedsindstillinger tillader ikke editoren at kopiere tekst automatisk. Brug i stedet tastaturet til at kopiere teksten (Ctrl+V).",
+
+PasteAsText : "Indsæt som ren tekst",
+PasteFromWord : "Indsæt fra Word",
+
+DlgPasteMsg2 : "Indsæt i boksen herunder (<STRONG>Ctrl+V</STRONG>) og klik <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorer font definitioner",
+DlgPasteRemoveStyles : "Fjern typografi definitioner",
+DlgPasteCleanBox : "Slet indhold",
+
+
+// Color Picker
+ColorAutomatic : "Automatisk",
+ColorMoreColors : "Flere farver...",
+
+// Document Properties
+DocProps : "Dokument egenskaber",
+
+// Anchor Dialog
+DlgAnchorTitle : "Anker egenskaber",
+DlgAnchorName : "Anker navn",
+DlgAnchorErrorName : "Indtast Anker navn",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Findes ikke i ordbogen",
+DlgSpellChangeTo : "Ãndre til",
+DlgSpellBtnIgnore : "Ignorere",
+DlgSpellBtnIgnoreAll : "Ignorere alle",
+DlgSpellBtnReplace : "Udskift",
+DlgSpellBtnReplaceAll : "Udskift alle",
+DlgSpellBtnUndo : "Tilbage",
+DlgSpellNoSuggestions : "- Intet forslag -",
+DlgSpellProgress : "Stavekontrolen arbejder...",
+DlgSpellNoMispell : "Stavekontrol færdig: Ingen fejl fundet",
+DlgSpellNoChanges : "Stavekontrol færdig: Ingen ord ændret",
+DlgSpellOneChange : "Stavekontrol færdig: Et ord ændret",
+DlgSpellManyChanges : "Stavekontrol færdig: %1 ord ændret",
+
+IeSpellDownload : "Stavekontrol ikke installeret. Vil du hente den nu?",
+
+// Button Dialog
+DlgButtonText : "Tekst (Værdi)",
+DlgButtonType : "Type",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Navn",
+DlgCheckboxValue : "Værdi",
+DlgCheckboxSelected : "Valgt",
+
+// Form Dialog
+DlgFormName : "Navn",
+DlgFormAction : "Handling",
+DlgFormMethod : "Metod",
+
+// Select Field Dialog
+DlgSelectName : "Navn",
+DlgSelectValue : "Værdi",
+DlgSelectSize : "Størrelse",
+DlgSelectLines : "linier",
+DlgSelectChkMulti : "Tillad flere valg",
+DlgSelectOpAvail : "Valgmulighedder",
+DlgSelectOpText : "Tekst",
+DlgSelectOpValue : "Værdi",
+DlgSelectBtnAdd : "Tilføj",
+DlgSelectBtnModify : "Ãndre",
+DlgSelectBtnUp : "Op",
+DlgSelectBtnDown : "Ned",
+DlgSelectBtnSetValue : "Sæt som udvalgt",
+DlgSelectBtnDelete : "Slet",
+
+// Textarea Dialog
+DlgTextareaName : "Navn",
+DlgTextareaCols : "Kolonne",
+DlgTextareaRows : "Række",
+
+// Text Field Dialog
+DlgTextName : "Navn",
+DlgTextValue : "Værdi",
+DlgTextCharWidth : "Synligt antal bogstaver",
+DlgTextMaxChars : "Maximum antal bogstaver",
+DlgTextType : "Type",
+DlgTextTypeText : "Tekst",
+DlgTextTypePass : "Kodeord",
+
+// Hidden Field Dialog
+DlgHiddenName : "Navn",
+DlgHiddenValue : "Værdi",
+
+// Bulleted List Dialog
+BulletedListProp : "Punkttegnopstilling egenskaber",
+NumberedListProp : "Talopstilling egenskaber",
+DlgLstType : "Type",
+DlgLstTypeCircle : "Cirkel",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Firkant",
+DlgLstTypeNumbers : "Nummereret (1, 2, 3)",
+DlgLstTypeLCase : "Små bogstaver (a, b, c)",
+DlgLstTypeUCase : "Store bogstaver (A, B, C)",
+DlgLstTypeSRoman : "Små Romertal (i, ii, iii)",
+DlgLstTypeLRoman : "Store Romertal (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Generelt",
+DlgDocBackTab : "Baggrund",
+DlgDocColorsTab : "Farver og Margin",
+DlgDocMetaTab : "Meta Information",
+
+DlgDocPageTitle : "Side Titel",
+DlgDocLangDir : "Sprog",
+DlgDocLangDirLTR : "Venstre Til Højre (LTR)",
+DlgDocLangDirRTL : "Højre Til Venstre (RTL)",
+DlgDocLangCode : "Landekode",
+DlgDocCharSet : "Karakter sæt kode",
+DlgDocCharSetOther : "Anden karakter sæt kode",
+
+DlgDocDocType : "Dokument type kategori",
+DlgDocDocTypeOther : "Anden dokument type kategori",
+DlgDocIncXHTML : "Inkludere XHTML deklartion",
+DlgDocBgColor : "Baggrundsfarve",
+DlgDocBgImage : "Baggrundsbilled URL",
+DlgDocBgNoScroll : "Ikke scrollbar baggrund",
+DlgDocCText : "Tekst",
+DlgDocCLink : "Link",
+DlgDocCVisited : "Besøgt link",
+DlgDocCActive : "Aktivt link",
+DlgDocMargins : "Side margin",
+DlgDocMaTop : "Top",
+DlgDocMaLeft : "Venstre",
+DlgDocMaRight : "Højre",
+DlgDocMaBottom : "Bund",
+DlgDocMeIndex : "Dokument index nøgleord (komma sepereret)",
+DlgDocMeDescr : "Dokument beskrivelse",
+DlgDocMeAuthor : "Forfatter",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Vis",
+
+// Templates Dialog
+Templates : "Skabeloner",
+DlgTemplatesTitle : "Indholdsskabeloner",
+DlgTemplatesSelMsg : "Vælg den skabelon, som skal åbnes i editoren<br>(Nuværende indhold vil blive overskrevet):",
+DlgTemplatesLoading : "Henter liste over skabeloner. Vent venligst...",
+DlgTemplatesNoTpl : "(Der er ikke defineret nogen skabelon)",
+
+// About Dialog
+DlgAboutAboutTab : "About",
+DlgAboutBrowserInfoTab : "Browser Info",
+DlgAboutVersion : "version",
+DlgAboutLicense : "Licens under vilkår for GNU Lesser General Public License",
+DlgAboutInfo : "For yderlig information gå til"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/de.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/de.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/de.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: de.js
+ * German language file.
+ *
+ * File Authors:
+ * Maik Unruh (m.unruh at mm-concept.de)
+ * Hendrik Kramer (HK at lwd.de)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Toolbar einklappen",
+ToolbarExpand : "Toolbar ausklappen",
+
+// Toolbar Items and Context Menu
+Save : "Speichern",
+NewPage : "Neue Seite",
+Preview : "Vorschau",
+Cut : "Ausschneiden",
+Copy : "Kopieren",
+Paste : "Einfügen",
+PasteText : "aus Textdatei einfügen",
+PasteWord : "aus Word einfügen",
+Print : "Drucken",
+SelectAll : "Alles auswählen",
+RemoveFormat : "Formatierungen entfernen",
+InsertLinkLbl : "Link",
+InsertLink : "Link einfügen/editieren",
+RemoveLink : "Link entfernen",
+Anchor : "Anker einfügen/editieren",
+InsertImageLbl : "Bild",
+InsertImage : "Bild einfügen/editieren",
+InsertFlashLbl : "Flash",
+InsertFlash : "Flash einfügen/editieren",
+InsertTableLbl : "Tabelle",
+InsertTable : "Tabelle einfügen/editieren",
+InsertLineLbl : "Linie",
+InsertLine : "Horizontale Linie einfügen",
+InsertSpecialCharLbl: "Sonderzeichen",
+InsertSpecialChar : "Sonderzeichen einfügen/editieren",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Smiley einfügen",
+About : "Ãber FCKeditor",
+Bold : "Fett",
+Italic : "Kursiv",
+Underline : "Unterstrichen",
+StrikeThrough : "Durchgestrichen",
+Subscript : "Tiefgestellt",
+Superscript : "Hochgestellt",
+LeftJustify : "Linksbündig",
+CenterJustify : "Zentriert",
+RightJustify : "Rechtsbündig",
+BlockJustify : "Blocksatz",
+DecreaseIndent : "Einzug verringern",
+IncreaseIndent : "Einzug erhöhen",
+Undo : "Rückgängig",
+Redo : "Wiederherstellen",
+NumberedListLbl : "Nummerierte Liste",
+NumberedList : "Nummerierte Liste einfügen/entfernen",
+BulletedListLbl : "Liste",
+BulletedList : "Liste einfügen/entfernen",
+ShowTableBorders : "Zeige Tabellenrahmen",
+ShowDetails : "Zeige Details",
+Style : "Style",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "Size",
+TextColor : "Textfarbe",
+BGColor : "Hintergrundfarbe",
+Source : "Quellcode",
+Find : "Finden",
+Replace : "Ersetzen",
+SpellCheck : "Rechtschreibprü:fung",
+UniversalKeyboard : "Universal-Tastatur",
+
+Form : "Formular",
+Checkbox : "Checkbox",
+RadioButton : "Radiobutton",
+TextField : "Textfeld einzeilig",
+Textarea : "Textfeld mehrzeilig",
+HiddenField : "verstecktes Feld",
+Button : "Klickbutton",
+SelectionField : "Auswahlfeld",
+ImageButton : "Bildbutton",
+
+// Context Menu
+EditLink : "Link editieren",
+InsertRow : "Zeile einfügen",
+DeleteRows : "Zeile entfernen",
+InsertColumn : "Spalte einfügen",
+DeleteColumns : "Spalte löschen",
+InsertCell : "Zelle einfügen",
+DeleteCells : "Zelle löschen",
+MergeCells : "Zellen vereinen",
+SplitCell : "Zelle teilen",
+CellProperties : "Zellen Eigenschaften",
+TableProperties : "Tabellen Eigenschaften",
+ImageProperties : "Bild Eigenschaften",
+FlashProperties : "Flash Eigenschaften",
+
+AnchorProp : "Anker Eigenschaften",
+ButtonProp : "Button Eigenschaften",
+CheckboxProp : "Checkbox Eigenschaften",
+HiddenFieldProp : "Verstecktes Feld Eigenschaften",
+RadioButtonProp : "Radiobutton Eigenschaften",
+ImageButtonProp : "Bildbutton Eigenschaften",
+TextFieldProp : "Textfeld einzeilig Eigenschaften",
+SelectionFieldProp : "Auswahlfeld Eigenschaften",
+TextareaProp : "Textfeld mehrzeilig Eigenschaften",
+FormProp : "Formular Eigenschaften",
+
+FontFormats : "Normal;Formatiert;Addresse;Ãberschrift 1;Ãberschrift 2;Ãberschrift 3;Ãberschrift 4;Ãberschrift 5;Ãberschrift 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Bearbeite XHTML. Bitte warten...",
+Done : "Fertig",
+PasteWordConfirm : "Der Text, den Sie einfügen Möchten, scheint aus Word kopiert zu sein. Möchten Sie ihn zuvor bereinigen lassen?",
+NotCompatiblePaste : "Diese Funktion steht nur im Internet Explorer ab Version 5.5 zur Verfügung. Möchten Sie den Text unbereinigt einfügen?",
+UnknownToolbarItem : "Unbekanntes Menüleisten-Objekt \"%1\"",
+UnknownCommand : "Unbekannter Befehl \"%1\"",
+NotImplemented : "Befehl nicht implementiert",
+UnknownToolbarSet : "Menüleiste \"%1\" existiert nicht",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Abbrechen",
+DlgBtnClose : "SchlieÃen",
+DlgBtnBrowseServer : "Server durchsuchen",
+DlgAdvancedTag : "Erweitert",
+DlgOpOther : "<andere>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Bitte tragen Sie die URL ein",
+
+// General Dialogs Labels
+DlgGenNotSet : "< nichts >",
+DlgGenId : "ID",
+DlgGenLangDir : "Schreibrichtung",
+DlgGenLangDirLtr : "Links nach Rechts (LTR)",
+DlgGenLangDirRtl : "Rechts nach Links (RTL)",
+DlgGenLangCode : "Sprachenkürzel",
+DlgGenAccessKey : "Schlüssel",
+DlgGenName : "Name",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Langform URL",
+DlgGenClass : "Stylesheet Klasse",
+DlgGenTitle : "Titel Beschreibung",
+DlgGenContType : "Content Beschreibung",
+DlgGenLinkCharset : "Ziel-Zeichensatz",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "Bild Eigenschaften",
+DlgImgInfoTab : "Bild-Info",
+DlgImgBtnUpload : "Zum Server senden",
+DlgImgURL : "Bildauswahl",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Alternativer Text",
+DlgImgWidth : "Breite",
+DlgImgHeight : "Höhe",
+DlgImgLockRatio : "GröÃenverhaeltniss beibehalten",
+DlgBtnResetSize : "GröÃe zuruecksetzen",
+DlgImgBorder : "Rahmen",
+DlgImgHSpace : "H-Freiraum",
+DlgImgVSpace : "V-Freiraum",
+DlgImgAlign : "Ausrichtung",
+DlgImgAlignLeft : "Links",
+DlgImgAlignAbsBottom: "Abs Unten",
+DlgImgAlignAbsMiddle: "Abs Mitte",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Unten",
+DlgImgAlignMiddle : "Mitte",
+DlgImgAlignRight : "Rechts",
+DlgImgAlignTextTop : "Text Oben",
+DlgImgAlignTop : "Oben",
+DlgImgPreview : "Vorschau",
+DlgImgAlertUrl : "Bitte geben Sie die Bild-URL an",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Eigenschaften",
+DlgFlashChkPlay : "autom. Abspielen",
+DlgFlashChkLoop : "Endlosschleife",
+DlgFlashChkMenu : "Aktiviere Flash Menü",
+DlgFlashScale : "Skalierung",
+DlgFlashScaleAll : "Alles anzeigen",
+DlgFlashScaleNoBorder : "ohne Rand",
+DlgFlashScaleFit : "Passgenau",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link Info",
+DlgLnkTargetTab : "Zielseite",
+
+DlgLnkType : "Link-Typ",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Anker in dieser Seite",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokoll",
+DlgLnkProtoOther : "<anderes>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Anker auswählen",
+DlgLnkAnchorByName : "nach Anker Name",
+DlgLnkAnchorById : "nach Element Id",
+DlgLnkNoAnchors : "<keine Anker im Dokument vorhanden>",
+DlgLnkEMail : "E-Mail Addresse",
+DlgLnkEMailSubject : "Betreffzeile",
+DlgLnkEMailBody : "Nachrichtentext",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Uum Server senden",
+
+DlgLnkTarget : "Zielseite",
+DlgLnkTargetFrame : "<Frame>",
+DlgLnkTargetPopup : "<Pop-up Fenster>",
+DlgLnkTargetBlank : "Neues Fenster (_blank)",
+DlgLnkTargetParent : "Oberes Fenster (_parent)",
+DlgLnkTargetSelf : "Gleiches Fenster (_self)",
+DlgLnkTargetTop : "Oberstes Fenster (_top)",
+DlgLnkTargetFrameName : "Ziel-Frame Name",
+DlgLnkPopWinName : "Pop-up Fenster Name",
+DlgLnkPopWinFeat : "Pop-up Fenster Eigenschaften",
+DlgLnkPopResize : "VergröÃerbar",
+DlgLnkPopLocation : "Adress-Leiste",
+DlgLnkPopMenu : "Menü-Leiste",
+DlgLnkPopScroll : "Scroll-Leisten",
+DlgLnkPopStatus : "Status-Leiste",
+DlgLnkPopToolbar : "Werkzeugleiste",
+DlgLnkPopFullScrn : "Vollbild (IE)",
+DlgLnkPopDependent : "Abhängig (Netscape)",
+DlgLnkPopWidth : "Breite",
+DlgLnkPopHeight : "Höhe",
+DlgLnkPopLeft : "Linke Position",
+DlgLnkPopTop : "Obere Position",
+
+DlnLnkMsgNoUrl : "Bitte geben Sie die Link-URL an",
+DlnLnkMsgNoEMail : "Bitte geben Sie e-Mail Adresse an",
+DlnLnkMsgNoAnchor : "Bitte waehlen Sie einen Anker aus",
+
+// Color Dialog
+DlgColorTitle : "Farbauswahl",
+DlgColorBtnClear : "Keine Farbe",
+DlgColorHighlight : "Vorschau",
+DlgColorSelected : "Ausgewählt",
+
+// Smiley Dialog
+DlgSmileyTitle : "Smiley auswählen",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Sonderzeichen auswählen",
+
+// Table Dialog
+DlgTableTitle : "Tabellen Eigenschaften",
+DlgTableRows : "Zeile",
+DlgTableColumns : "Spalte",
+DlgTableBorder : "Rahmen",
+DlgTableAlign : "Ausrichtung",
+DlgTableAlignNotSet : "<nichts>",
+DlgTableAlignLeft : "Links",
+DlgTableAlignCenter : "Zentriert",
+DlgTableAlignRight : "Rechts",
+DlgTableWidth : "Breite",
+DlgTableWidthPx : "Pixel",
+DlgTableWidthPc : "%",
+DlgTableHeight : "Höhe",
+DlgTableCellSpace : "Zellenabstand auÃen",
+DlgTableCellPad : "Zellenabstand innen",
+DlgTableCaption : "Ãeberschrift",
+
+// Table Cell Dialog
+DlgCellTitle : "Zellen-Eigenschaften",
+DlgCellWidth : "Breite",
+DlgCellWidthPx : "Pixel",
+DlgCellWidthPc : "%",
+DlgCellHeight : "Höhe",
+DlgCellWordWrap : "Umbruch",
+DlgCellWordWrapNotSet : "<nichts>",
+DlgCellWordWrapYes : "Ja",
+DlgCellWordWrapNo : "Nein",
+DlgCellHorAlign : "Horizontale Ausrichtung",
+DlgCellHorAlignNotSet : "<nichts>",
+DlgCellHorAlignLeft : "Links",
+DlgCellHorAlignCenter : "Zentriert",
+DlgCellHorAlignRight: "Rechts",
+DlgCellVerAlign : "Vertikale Ausrichtung",
+DlgCellVerAlignNotSet : "<nichts>",
+DlgCellVerAlignTop : "Oben",
+DlgCellVerAlignMiddle : "Mitte",
+DlgCellVerAlignBottom : "Unten",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "Zeilen zusammenfassen",
+DlgCellCollSpan : "Spalten zusammenfassen",
+DlgCellBackColor : "Hintergrundfarbe",
+DlgCellBorderColor : "Rahmenfarbe",
+DlgCellBtnSelect : "Auswahl...",
+
+// Find Dialog
+DlgFindTitle : "Finden",
+DlgFindFindBtn : "Finden",
+DlgFindNotFoundMsg : "Der Suchtext wurde nicht gefunden.",
+
+// Replace Dialog
+DlgReplaceTitle : "Ersetzen",
+DlgReplaceFindLbl : "Suche nach:",
+DlgReplaceReplaceLbl : "Ersetze mit:",
+DlgReplaceCaseChk : "GroÃ-Kleinschreibung beachten",
+DlgReplaceReplaceBtn : "Ersetzen",
+DlgReplaceReplAllBtn : "Alle Ersetzen",
+DlgReplaceWordChk : "Nur ganze Worte suchen",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch einzufügen. Bitte benutzen Sie die System-Zwischenablage ueber STRG-C (kopieren) und STRG-V (einfügen).",
+PasteErrorCut : "Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch auszuschneiden. Bitte benutzen Sie die System-Zwischenablage ueber STRG-X (ausschneiden) und STRG-V (einfügen).",
+PasteErrorCopy : "Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch kopieren. Bitte benutzen Sie die System-Zwischenablage ueber STRG-C (kopieren).",
+
+PasteAsText : "Als Text einfügen",
+PasteFromWord : "Aus Word einfügen",
+
+DlgPasteMsg2 : "Bitte fügen Sie den Text in der folgenden Box über die Tastatur (mit <STRONG>Ctrl+V</STRONG>) ein und bestätigen Sie mit <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignoriere Schriftart-Definitionen",
+DlgPasteRemoveStyles : "Entferne Style-Definitionen",
+DlgPasteCleanBox : "Inhalt aufräumen",
+
+
+// Color Picker
+ColorAutomatic : "Automatisch",
+ColorMoreColors : "Weitere Farben...",
+
+// Document Properties
+DocProps : "Dokument Eigenschaften",
+
+// Anchor Dialog
+DlgAnchorTitle : "Anker Eigenschaften",
+DlgAnchorName : "Anker Name",
+DlgAnchorErrorName : "Bitte geben Sie den Namen des Ankers ein",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Nicht im Wörterbuch",
+DlgSpellChangeTo : "Ãendern in",
+DlgSpellBtnIgnore : "Ignorieren",
+DlgSpellBtnIgnoreAll : "Alle Ignorieren",
+DlgSpellBtnReplace : "Ersetzen",
+DlgSpellBtnReplaceAll : "Alle Ersetzen",
+DlgSpellBtnUndo : "Rückgängig",
+DlgSpellNoSuggestions : " - keine Vorschläge - ",
+DlgSpellProgress : "Rechtschreibprüfung läuft...",
+DlgSpellNoMispell : "Rechtschreibprüfung abgeschlossen - keine Fehler gefunden",
+DlgSpellNoChanges : "Rechtschreibprüfung abgeschlossen - keine Worte geändert",
+DlgSpellOneChange : "Rechtschreibprüfung abgeschlossen - ein Wort geändert",
+DlgSpellManyChanges : "Rechtschreibprüfung abgeschlossen - %1 Wörter geändert",
+
+IeSpellDownload : "Rechtschreibprüfung nicht installiert. Möchten Sie sie jetzt herunterladen?",
+
+// Button Dialog
+DlgButtonText : "Text (Wert)",
+DlgButtonType : "Typ",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name",
+DlgCheckboxValue : "Wert",
+DlgCheckboxSelected : "ausgewählt",
+
+// Form Dialog
+DlgFormName : "Name",
+DlgFormAction : "Action",
+DlgFormMethod : "Method",
+
+// Select Field Dialog
+DlgSelectName : "Name",
+DlgSelectValue : "Wert",
+DlgSelectSize : "GröÃe",
+DlgSelectLines : "Linien",
+DlgSelectChkMulti : "Erlaube Mehrfachauswahl",
+DlgSelectOpAvail : "Mögliche Optionen",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Wert",
+DlgSelectBtnAdd : "Hinzufügen",
+DlgSelectBtnModify : "Ãendern",
+DlgSelectBtnUp : "Hoch",
+DlgSelectBtnDown : "Runter",
+DlgSelectBtnSetValue : "Setze als Standardwert",
+DlgSelectBtnDelete : "Entfernen",
+
+// Textarea Dialog
+DlgTextareaName : "Name",
+DlgTextareaCols : "Spalten",
+DlgTextareaRows : "Reihen",
+
+// Text Field Dialog
+DlgTextName : "Name",
+DlgTextValue : "Wert",
+DlgTextCharWidth : "Zeichenbreite",
+DlgTextMaxChars : "Max. Zeichen",
+DlgTextType : "Typ",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Passwort",
+
+// Hidden Field Dialog
+DlgHiddenName : "Name",
+DlgHiddenValue : "Wert",
+
+// Bulleted List Dialog
+BulletedListProp : "Listen-Eigenschaften",
+NumberedListProp : "Nummerierte Listen-Eigenschaften",
+DlgLstType : "Typ",
+DlgLstTypeCircle : "Kreis",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Quadrat",
+DlgLstTypeNumbers : "Nummern (1, 2, 3)",
+DlgLstTypeLCase : "Kleinbuchstaben (a, b, c)",
+DlgLstTypeUCase : "GroÃbuchstaben (A, B, C)",
+DlgLstTypeSRoman : "Kleine römische Zahlen (i, ii, iii)",
+DlgLstTypeLRoman : "GroÃe römische Zahlen (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Allgemein",
+DlgDocBackTab : "Hintergrund",
+DlgDocColorsTab : "Farben und Abstände",
+DlgDocMetaTab : "Metadaten",
+
+DlgDocPageTitle : "Seitentitel",
+DlgDocLangDir : "Schriftrichtung",
+DlgDocLangDirLTR : "Links nach Rechts",
+DlgDocLangDirRTL : "rechts nach Links",
+DlgDocLangCode : "Sprachkürzel",
+DlgDocCharSet : "Zeichenkodierung",
+DlgDocCharSetOther : "Andere Zeichenkodierung",
+
+DlgDocDocType : "Dokumententyp",
+DlgDocDocTypeOther : "Anderer Dokumententyp",
+DlgDocIncXHTML : "Beziehe XHTML Deklarationen ein",
+DlgDocBgColor : "Hintergrundfarbe",
+DlgDocBgImage : "Hintergrundbild URL",
+DlgDocBgNoScroll : "Nicht-Scrollender Hintergrund",
+DlgDocCText : "Text",
+DlgDocCLink : "Link",
+DlgDocCVisited : "Besuchter Link",
+DlgDocCActive : "Aktiver Link",
+DlgDocMargins : "Seitenränder",
+DlgDocMaTop : "Oben",
+DlgDocMaLeft : "Links",
+DlgDocMaRight : "Rechts",
+DlgDocMaBottom : "Unten",
+DlgDocMeIndex : "Schlüsselwörter (Komma-getrennt)",
+DlgDocMeDescr : "Dokument-Beschreibung",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Vorschau",
+
+// Templates Dialog
+Templates : "Vorlagen",
+DlgTemplatesTitle : "Vorlagen",
+DlgTemplatesSelMsg : "Klicken Sie auf eine Vorlage, um sie im Editor zu öffnen(der aktuelle Inhalt wird dabei gelöscht!):",
+DlgTemplatesLoading : "Liste der Vorlagen wird geladen. Bitte warten...",
+DlgTemplatesNoTpl : "(keine Vorlagen definiert)",
+
+// About Dialog
+DlgAboutAboutTab : "Ãber",
+DlgAboutBrowserInfoTab : "Browser-Info",
+DlgAboutVersion : "Version",
+DlgAboutLicense : "Lizensiert unter den Richtlinien der GNU Lesser General Public License",
+DlgAboutInfo : "Für weitere Informationen siehe"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/el.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/el.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/el.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: el.js
+ * Greek language file.
+ *
+ * File Authors:
+ * Spyros Barbatos (sbarbatos{at}users.sourceforge.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "ÎÏÏκÏÏ
Ïη ÎÏάÏÎ±Ï ÎÏγαλείÏν",
+ToolbarExpand : "ÎμÏάνιÏη ÎÏάÏÎ±Ï ÎÏγαλείÏν",
+
+// Toolbar Items and Context Menu
+Save : "ÎÏοθήκεÏ
Ïη",
+NewPage : "ÎÎα Σελίδα",
+Preview : "Î ÏοεÏιÏκÏÏιÏη",
+Cut : "ÎÏοκοÏή",
+Copy : "ÎνÏιγÏαÏή",
+Paste : "ÎÏικÏλληÏη",
+PasteText : "ÎÏικÏλληÏη (αÏÎ»Ï ÎºÎµÎ¯Î¼ÎµÎ½Î¿)",
+PasteWord : "ÎÏικÏλληÏη αÏÏ Ïο Word",
+Print : "ÎκÏÏÏÏÏη",
+SelectAll : "ÎÏιλογή ÏλÏν",
+RemoveFormat : "ÎÏαίÏεÏη ÎοÏÏοÏοίηÏηÏ",
+InsertLinkLbl : "ΣÏνδεÏÎ¼Î¿Ï (Link)",
+InsertLink : "ÎιÏαγÏγή/ÎεÏαβολή ΣÏ
νδÎÏμοÏ
(Link)",
+RemoveLink : "ÎÏαίÏεÏη ΣÏ
νδÎÏμοÏ
(Link)",
+Anchor : "Insert/Edit Anchor", //MISSING
+InsertImageLbl : "ÎικÏνα",
+InsertImage : "ÎιÏαγÏγή/ÎεÏαβολή ÎικÏναÏ",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "ΠίνακαÏ",
+InsertTable : "ÎιÏαγÏγή/ÎεÏαβολή Πίνακα",
+InsertLineLbl : "ÎÏαμμή",
+InsertLine : "ÎιÏαγÏγή ÎÏιζÏνÏÎ¹Î±Ï ÎÏαμμήÏ",
+InsertSpecialCharLbl: "ÎÎ¹Î´Î¹ÎºÏ Î£Ïμβολο",
+InsertSpecialChar : "ÎιÏαγÏγή ÎÎ¹Î´Î¹ÎºÎ¿Ï Î£Ï
μβÏλοÏ
",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "ÎιÏαγÏγή Smiley",
+About : "ΠεÏί ÏοÏ
FCKeditor",
+Bold : "ÎνÏονα",
+Italic : "Πλάγια",
+Underline : "Î¥ÏογÏάμμιÏη",
+StrikeThrough : "ÎιαγÏάμμιÏη",
+Subscript : "ÎείκÏηÏ",
+Superscript : "ÎκθÎÏηÏ",
+LeftJustify : "ΣÏοίÏιÏη ÎÏιÏÏεÏά",
+CenterJustify : "ΣÏοίÏιÏη ÏÏο ÎÎνÏÏο",
+RightJustify : "ΣÏοίÏιÏη Îεξιά",
+BlockJustify : "ΠλήÏÎ·Ï Î£ÏοίÏιÏη (Block)",
+DecreaseIndent : "ÎείÏÏη ÎÏοÏήÏ",
+IncreaseIndent : "ÎÏξηÏη ÎÏοÏήÏ",
+Undo : "Undo",
+Redo : "Redo",
+NumberedListLbl : "ÎίÏÏα με ÎÏιθμοÏÏ",
+NumberedList : "ÎιÏαγÏγή/ÎιαγÏαÏή ÎίÏÏÎ±Ï Î¼Îµ ÎÏιθμοÏÏ",
+BulletedListLbl : "ÎίÏÏα με Bullets",
+BulletedList : "ÎιÏαγÏγή/ÎιαγÏαÏή ÎίÏÏÎ±Ï Î¼Îµ Bullets",
+ShowTableBorders : "Î Ïοβολή ÎÏίÏν Πίνακα",
+ShowDetails : "Î Ïοβολή ÎεÏÏομεÏειÏν",
+Style : "Style",
+FontFormat : "ÎοÏÏή ÎÏαμμαÏοÏειÏάÏ",
+Font : "ÎÏαμμαÏοÏειÏά",
+FontSize : "ÎÎγεθοÏ",
+TextColor : "ΧÏÏμα ÎÏαμμάÏÏν",
+BGColor : "ΧÏÏμα Î¥ÏοβάθÏοÏ
",
+Source : "HTML κÏδικαÏ",
+Find : "ÎναζήÏηÏη",
+Replace : "ÎνÏικαÏάÏÏαÏη",
+SpellCheck : "Check Spell", //MISSING
+UniversalKeyboard : "Universal Keyboard", //MISSING
+
+Form : "Form", //MISSING
+Checkbox : "Checkbox", //MISSING
+RadioButton : "Radio Button", //MISSING
+TextField : "Text Field", //MISSING
+Textarea : "Textarea", //MISSING
+HiddenField : "Hidden Field", //MISSING
+Button : "Button", //MISSING
+SelectionField : "Selection Field", //MISSING
+ImageButton : "Image Button", //MISSING
+
+// Context Menu
+EditLink : "ÎεÏαβολή ΣÏ
νδÎÏμοÏ
(Link)",
+InsertRow : "ÎιÏαγÏγή ÎÏαμμήÏ",
+DeleteRows : "ÎιαγÏαÏή ÎÏαμμÏν",
+InsertColumn : "ÎιÏαγÏγή ÎολÏναÏ",
+DeleteColumns : "ÎιαγÏαÏή ÎολÏνÏν",
+InsertCell : "ÎιÏαγÏγή ÎελιοÏ",
+DeleteCells : "ÎιαγÏαÏή ÎελιÏν",
+MergeCells : "ÎνοÏοίηÏη ÎελιÏν",
+SplitCell : "ÎιαÏÏÏιÏμÏÏ ÎελιοÏ",
+CellProperties : "ÎδιÏÏηÏÎµÏ ÎελιοÏ",
+TableProperties : "ÎδιÏÏηÏÎµÏ Î Î¯Î½Î±ÎºÎ±",
+ImageProperties : "ÎδιÏÏηÏÎµÏ ÎικÏναÏ",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Anchor Properties", //MISSING
+ButtonProp : "Button Properties", //MISSING
+CheckboxProp : "Checkbox Properties", //MISSING
+HiddenFieldProp : "Hidden Field Properties", //MISSING
+RadioButtonProp : "Radio Button Properties", //MISSING
+ImageButtonProp : "Image Button Properties", //MISSING
+TextFieldProp : "Text Field Properties", //MISSING
+SelectionFieldProp : "Selection Field Properties", //MISSING
+TextareaProp : "Textarea Properties", //MISSING
+FormProp : "Form Properties", //MISSING
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6",
+
+// Alerts and Messages
+ProcessingXHTML : "ÎÏεξεÏγαÏία XHTML. ΠαÏÎ±ÎºÎ±Î»Ï ÏεÏιμÎνεÏε...",
+Done : "ÎÏοιμο",
+PasteWordConfirm : "Το κείμενο ÏοÏ
θÎλεÏε να εÏικολήÏεÏε, ÏαίνεÏαι ÏÏÏ ÏÏοÎÏÏεÏαι αÏÏ Ïο Word. ÎÎλεÏε να καθαÏιÏÏεί ÏÏιν εÏικοληθεί;",
+NotCompatiblePaste : "ÎÏ
Ïή η εÏιλογή είναι διαθÎÏιμη ÏÏον Internet Explorer ÎκδοÏη 5.5+. ÎÎλεÏε να γίνει η εÏικÏλληÏη ÏÏÏÎ¯Ï ÎºÎ±Î¸Î±ÏιÏμÏ;",
+UnknownToolbarItem : "ÎγνÏÏÏο ανÏικείμενο ÏÎ·Ï Î¼ÏάÏÎ±Ï ÎµÏγαλείÏν \"%1\"",
+UnknownCommand : "ÎγνÏÏÏή ενÏολή \"%1\"",
+NotImplemented : "ΠενÏολή δεν ÎÏει ενεÏγοÏοιηθεί",
+UnknownToolbarSet : "ΠμÏάÏα εÏγαλείÏν \"%1\" δεν Ï
ÏάÏÏει",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "ÎκÏÏÏÏη",
+DlgBtnClose : "ÎλείÏιμο",
+DlgBtnBrowseServer : "Browse Server", //MISSING
+DlgAdvancedTag : "Îια ÏÏοÏÏÏημÎνοÏ
Ï",
+DlgOpOther : "<Other>", //MISSING
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<ÏÏÏίÏ>",
+DlgGenId : "Id",
+DlgGenLangDir : "ÎαÏεÏθÏ
νÏη κειμÎνοÏ
",
+DlgGenLangDirLtr : "ÎÏιÏÏεÏά ÏÏÎ¿Ï Îεξιά (LTR)",
+DlgGenLangDirRtl : "Îεξιά ÏÏÎ¿Ï ÎÏιÏÏεÏά (RTL)",
+DlgGenLangCode : "ÎÏδικÏÏ ÎλÏÏÏαÏ",
+DlgGenAccessKey : "ΣÏ
νÏÏμεÏ
Ïη (Access Key)",
+DlgGenName : "Name",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Long Description URL",
+DlgGenClass : "Stylesheet Classes",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "ÎδιÏÏηÏÎµÏ ÎικÏναÏ",
+DlgImgInfoTab : "ΠληÏοÏοÏÎ¯ÎµÏ ÎικÏναÏ",
+DlgImgBtnUpload : "ÎÏοÏÏολή ÏÏον ÎιακομιÏÏή",
+DlgImgURL : "URL",
+DlgImgUpload : "ÎÏοÏÏολή",
+DlgImgAlt : "ÎναλλακÏÎ¹ÎºÏ Îείμενο (ALT)",
+DlgImgWidth : "ΠλάÏοÏ",
+DlgImgHeight : "ÎÏοÏ",
+DlgImgLockRatio : "ÎλείδÏμα ÎναλογίαÏ",
+DlgBtnResetSize : "ÎÏαναÏοÏά ÎÏÏÎ¹ÎºÎ¿Ï ÎεγÎθοÏ
Ï",
+DlgImgBorder : "ΠεÏιθÏÏιο",
+DlgImgHSpace : "ÎÏιζÏνÏÎ¹Î¿Ï Î§ÏÏÎ¿Ï (HSpace)",
+DlgImgVSpace : "ÎάθεÏÎ¿Ï Î§ÏÏÎ¿Ï (VSpace)",
+DlgImgAlign : "ÎÏ
θÏ
γÏάμμιÏη (Align)",
+DlgImgAlignLeft : "ÎÏιÏÏεÏά",
+DlgImgAlignAbsBottom: "ÎÏÏλÏ
Ïα ÎάÏÏ (Abs Bottom)",
+DlgImgAlignAbsMiddle: "ÎÏÏλÏ
Ïα ÏÏη ÎÎÏη (Abs Middle)",
+DlgImgAlignBaseline : "ÎÏαμμή ÎάÏÎ·Ï (Baseline)",
+DlgImgAlignBottom : "ÎάÏÏ (Bottom)",
+DlgImgAlignMiddle : "ÎÎÏη (Middle)",
+DlgImgAlignRight : "Îεξιά (Right)",
+DlgImgAlignTextTop : "ÎοÏÏ
Ïή ÎειμÎνοÏ
(Text Top)",
+DlgImgAlignTop : "Î Î¬Î½Ï (Top)",
+DlgImgPreview : "Î ÏοεÏιÏκÏÏιÏη",
+DlgImgAlertUrl : "ÎιÏάγεÏε Ïην ÏοÏοθεÏία (URL) ÏÎ·Ï ÎµÎ¹ÎºÏναÏ",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Î¥ÏεÏÏÏνδεÏÎ¼Î¿Ï (Link)",
+DlgLnkInfoTab : "Link",
+DlgLnkTargetTab : "ΠαÏάθÏ
Ïο ΣÏÏÏÎ¿Ï (Target)",
+
+DlgLnkType : "ΤÏÏÎ¿Ï Î¥ÏεÏÏÏ
νδÎÏμοÏ
(Link)",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Anchor in this page",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocol",
+DlgLnkProtoOther : "<άλλο>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "ÎÏιλÎξÏε Îνα Anchor",
+DlgLnkAnchorByName : "ÎάÏει ÏοÏ
ÎνÏμαÏÎ¿Ï (Name)ÏοÏ
Anchor",
+DlgLnkAnchorById : "ÎάÏει ÏοÏ
Element Id",
+DlgLnkNoAnchors : "<Îεν Ï
ÏάÏÏοÏ
ν Anchors ÏÏο κείμενο>",
+DlgLnkEMail : "ÎιεÏθÏ
νÏη ÎλεκÏÏÎ¿Î½Î¹ÎºÎ¿Ï Î¤Î±ÏÏ
δÏομείοÏ
",
+DlgLnkEMailSubject : "ÎÎμα ÎηνÏμαÏοÏ",
+DlgLnkEMailBody : "Îείμενο ÎηνÏμαÏοÏ",
+DlgLnkUpload : "ÎÏοÏÏολή",
+DlgLnkBtnUpload : "ÎÏοÏÏολή ÏÏον ÎιακομιÏÏή",
+
+DlgLnkTarget : "ΠαÏάθÏ
Ïο ΣÏÏÏÎ¿Ï (Target)",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<popup window>",
+DlgLnkTargetBlank : "ÎÎο ΠαÏάθÏ
Ïο (_blank)",
+DlgLnkTargetParent : "ÎÎ¿Î½Î¹ÎºÏ Î Î±ÏάθÏ
Ïο (_parent)",
+DlgLnkTargetSelf : "Îδιο ΠαÏάθÏ
Ïο (_self)",
+DlgLnkTargetTop : "ÎνÏÏαÏο ΠαÏάθÏ
Ïο (_top)",
+DlgLnkTargetFrameName : "Target Frame Name", //MISSING
+DlgLnkPopWinName : "Îνομα Popup Window",
+DlgLnkPopWinFeat : "ÎÏιλογÎÏ Popup Window",
+DlgLnkPopResize : "Îε αλλαγή ÎεγÎθοÏ
Ï",
+DlgLnkPopLocation : "ÎÏάÏα ΤοÏοθεÏίαÏ",
+DlgLnkPopMenu : "ÎÏάÏα Menu",
+DlgLnkPopScroll : "ÎÏάÏÎµÏ ÎÏλιÏηÏ",
+DlgLnkPopStatus : "ÎÏάÏα Status",
+DlgLnkPopToolbar : "ÎÏάÏα ÎÏγαλείÏν",
+DlgLnkPopFullScrn : "ÎλÏκληÏη η ÎθÏνη (IE)",
+DlgLnkPopDependent : "Dependent (Netscape)",
+DlgLnkPopWidth : "ΠλάÏοÏ",
+DlgLnkPopHeight : "ÎÏοÏ",
+DlgLnkPopLeft : "ΤοÏοθεÏία ÎÏιÏÏεÏÎ®Ï ÎκÏηÏ",
+DlgLnkPopTop : "ΤοÏοθεÏία Î Î¬Î½Ï ÎκÏηÏ",
+
+DlnLnkMsgNoUrl : "ÎιÏάγεÏε Ïην ÏοÏοθεÏία (URL) ÏοÏ
Ï
ÏεÏÏÏ
νδÎÏμοÏ
(Link)",
+DlnLnkMsgNoEMail : "ÎιÏάγεÏε Ïην διεÏθÏ
νÏη ηλεκÏÏÎ¿Î½Î¹ÎºÎ¿Ï ÏαÏÏ
δÏομείοÏ
",
+DlnLnkMsgNoAnchor : "ÎÏιλÎξÏε Îνα Anchor",
+
+// Color Dialog
+DlgColorTitle : "ÎÏιλογή ÏÏÏμαÏοÏ",
+DlgColorBtnClear : "ÎαθαÏιÏμÏÏ",
+DlgColorHighlight : "Î ÏοεÏιÏκÏÏιÏη",
+DlgColorSelected : "ÎÏιλεγμÎνο",
+
+// Smiley Dialog
+DlgSmileyTitle : "ÎÏιλÎξÏε Îνα Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "ÎÏιλÎξÏε Îνα ÎÎ¹Î´Î¹ÎºÏ Î£Ïμβολο",
+
+// Table Dialog
+DlgTableTitle : "ÎδιÏÏηÏÎµÏ Î Î¯Î½Î±ÎºÎ±",
+DlgTableRows : "ÎÏαμμÎÏ",
+DlgTableColumns : "ÎολÏνεÏ",
+DlgTableBorder : "ÎÎÎ³ÎµÎ¸Î¿Ï Î ÎµÏιθÏÏίοÏ
",
+DlgTableAlign : "ΣÏοίÏιÏη",
+DlgTableAlignNotSet : "<ÏÏÏίÏ>",
+DlgTableAlignLeft : "ÎÏιÏÏεÏά",
+DlgTableAlignCenter : "ÎÎνÏÏο",
+DlgTableAlignRight : "Îεξιά",
+DlgTableWidth : "ΠλάÏοÏ",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "\%",
+DlgTableHeight : "ÎÏοÏ",
+DlgTableCellSpace : "Cell spacing",
+DlgTableCellPad : "Cell padding",
+DlgTableCaption : "Î¥ÏÎÏÏιÏλοÏ",
+
+// Table Cell Dialog
+DlgCellTitle : "ÎδιÏÏηÏÎµÏ ÎελιοÏ",
+DlgCellWidth : "ΠλάÏοÏ",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "\%",
+DlgCellHeight : "ÎÏοÏ",
+DlgCellWordWrap : "Îε αλλαγή γÏαμμήÏ",
+DlgCellWordWrapNotSet : "<ÏÏÏίÏ>",
+DlgCellWordWrapYes : "Îαι",
+DlgCellWordWrapNo : "ÎÏι",
+DlgCellHorAlign : "ÎÏιζÏνÏια ΣÏοίÏιÏη",
+DlgCellHorAlignNotSet : "<ÏÏÏίÏ>",
+DlgCellHorAlignLeft : "ÎÏιÏÏεÏά",
+DlgCellHorAlignCenter : "ÎÎνÏÏο",
+DlgCellHorAlignRight: "Îεξιά",
+DlgCellVerAlign : "ÎάθεÏη ΣÏοίÏιÏη",
+DlgCellVerAlignNotSet : "<ÏÏÏίÏ>",
+DlgCellVerAlignTop : "Î Î¬Î½Ï (Top)",
+DlgCellVerAlignMiddle : "ÎÎÏη (Middle)",
+DlgCellVerAlignBottom : "ÎάÏÏ (Bottom)",
+DlgCellVerAlignBaseline : "ÎÏαμμή ÎάÏÎ·Ï (Baseline)",
+DlgCellRowSpan : "ÎÏιθμÏÏ ÎÏαμμÏν (Rows Span)",
+DlgCellCollSpan : "ÎÏιθμÏÏ ÎολÏνÏν (Columns Span)",
+DlgCellBackColor : "ΧÏÏμα Î¥ÏοβάθÏοÏ
",
+DlgCellBorderColor : "ΧÏÏμα ΠεÏιθÏÏίοÏ
",
+DlgCellBtnSelect : "ÎÏιλογή...",
+
+// Find Dialog
+DlgFindTitle : "ÎναζήÏηÏη",
+DlgFindFindBtn : "ÎναζήÏηÏη",
+DlgFindNotFoundMsg : "Το κείμενο δεν βÏÎθηκε.",
+
+// Replace Dialog
+DlgReplaceTitle : "ÎνÏικαÏάÏÏαÏη",
+DlgReplaceFindLbl : "ÎναζήÏηÏη:",
+DlgReplaceReplaceLbl : "ÎνÏικαÏάÏÏαÏη με:",
+DlgReplaceCaseChk : "ÎλεγÏÎ¿Ï ÏεζÏν/κεÏαλαίÏν",
+DlgReplaceReplaceBtn : "ÎνÏικαÏάÏÏαÏη",
+DlgReplaceReplAllBtn : "ÎνÏικαÏάÏÏαÏη ÎλÏν",
+DlgReplaceWordChk : "ÎÏÏεÏη ÏλήÏοÏ
Ï Î»ÎξηÏ",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Îι ÏÏ
θμίÏÎµÎ¹Ï Î±ÏÏÎ±Î»ÎµÎ¯Î±Ï ÏοÏ
ÏÏ
λλομεÏÏηÏή ÏÎ±Ï Î´ÎµÎ½ εÏιÏÏÎÏοÏ
ν Ïην εÏιλεγμÎνη εÏγαÏία εÏικÏλληÏηÏ. ΧÏηÏιμοÏοιείÏÏε Ïο ÏληκÏÏολÏγιο (Ctrl+V).",
+PasteErrorCut : "Îι ÏÏ
θμίÏÎµÎ¹Ï Î±ÏÏÎ±Î»ÎµÎ¯Î±Ï ÏοÏ
ÏÏ
λλομεÏÏηÏή ÏÎ±Ï Î´ÎµÎ½ εÏιÏÏÎÏοÏ
ν Ïην εÏιλεγμÎνη εÏγαÏία αÏοκοÏήÏ. ΧÏηÏιμοÏοιείÏÏε Ïο ÏληκÏÏολÏγιο (Ctrl+X).",
+PasteErrorCopy : "Îι ÏÏ
θμίÏÎµÎ¹Ï Î±ÏÏÎ±Î»ÎµÎ¯Î±Ï ÏοÏ
ÏÏ
λλομεÏÏηÏή ÏÎ±Ï Î´ÎµÎ½ εÏιÏÏÎÏοÏ
ν Ïην εÏιλεγμÎνη εÏγαÏία ανÏιγÏαÏήÏ. ΧÏηÏιμοÏοιείÏÏε Ïο ÏληκÏÏολÏγιο (Ctrl+C).",
+
+PasteAsText : "ÎÏικÏλληÏη ÏÏ ÎÏÎ»Ï Îείμενο",
+PasteFromWord : "ÎÏικÏλληÏη αÏÏ Ïο Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "ÎÏ
ÏÏμαÏο",
+ColorMoreColors : "ΠεÏιÏÏÏÏεÏα ÏÏÏμαÏα...",
+
+// Document Properties
+DocProps : "Document Properties", //MISSING
+
+// Anchor Dialog
+DlgAnchorTitle : "Anchor Properties", //MISSING
+DlgAnchorName : "Anchor Name", //MISSING
+DlgAnchorErrorName : "Please type the anchor name", //MISSING
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Not in dictionary", //MISSING
+DlgSpellChangeTo : "Change to", //MISSING
+DlgSpellBtnIgnore : "Ignore", //MISSING
+DlgSpellBtnIgnoreAll : "Ignore All", //MISSING
+DlgSpellBtnReplace : "Replace", //MISSING
+DlgSpellBtnReplaceAll : "Replace All", //MISSING
+DlgSpellBtnUndo : "Undo", //MISSING
+DlgSpellNoSuggestions : "- No suggestions -", //MISSING
+DlgSpellProgress : "Spell check in progress...", //MISSING
+DlgSpellNoMispell : "Spell check complete: No misspellings found", //MISSING
+DlgSpellNoChanges : "Spell check complete: No words changed", //MISSING
+DlgSpellOneChange : "Spell check complete: One word changed", //MISSING
+DlgSpellManyChanges : "Spell check complete: %1 words changed", //MISSING
+
+IeSpellDownload : "Spell checker not installed. Do you want to download it now?", //MISSING
+
+// Button Dialog
+DlgButtonText : "Text (Value)", //MISSING
+DlgButtonType : "Type", //MISSING
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name", //MISSING
+DlgCheckboxValue : "Value", //MISSING
+DlgCheckboxSelected : "Selected", //MISSING
+
+// Form Dialog
+DlgFormName : "Name", //MISSING
+DlgFormAction : "Action", //MISSING
+DlgFormMethod : "Method", //MISSING
+
+// Select Field Dialog
+DlgSelectName : "Name", //MISSING
+DlgSelectValue : "Value", //MISSING
+DlgSelectSize : "Size", //MISSING
+DlgSelectLines : "lines", //MISSING
+DlgSelectChkMulti : "Allow multiple selections", //MISSING
+DlgSelectOpAvail : "Available Options", //MISSING
+DlgSelectOpText : "Text", //MISSING
+DlgSelectOpValue : "Value", //MISSING
+DlgSelectBtnAdd : "Add", //MISSING
+DlgSelectBtnModify : "Modify", //MISSING
+DlgSelectBtnUp : "Up", //MISSING
+DlgSelectBtnDown : "Down", //MISSING
+DlgSelectBtnSetValue : "Set as selected value", //MISSING
+DlgSelectBtnDelete : "Delete", //MISSING
+
+// Textarea Dialog
+DlgTextareaName : "Name", //MISSING
+DlgTextareaCols : "Columns", //MISSING
+DlgTextareaRows : "Rows", //MISSING
+
+// Text Field Dialog
+DlgTextName : "Name", //MISSING
+DlgTextValue : "Value", //MISSING
+DlgTextCharWidth : "Character Width", //MISSING
+DlgTextMaxChars : "Maximum Characters", //MISSING
+DlgTextType : "Type", //MISSING
+DlgTextTypeText : "Text", //MISSING
+DlgTextTypePass : "Password", //MISSING
+
+// Hidden Field Dialog
+DlgHiddenName : "Name", //MISSING
+DlgHiddenValue : "Value", //MISSING
+
+// Bulleted List Dialog
+BulletedListProp : "Bulleted List Properties", //MISSING
+NumberedListProp : "Numbered List Properties", //MISSING
+DlgLstType : "Type", //MISSING
+DlgLstTypeCircle : "Circle", //MISSING
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Square", //MISSING
+DlgLstTypeNumbers : "Numbers (1, 2, 3)", //MISSING
+DlgLstTypeLCase : "Lowercase Letters (a, b, c)", //MISSING
+DlgLstTypeUCase : "Uppercase Letters (A, B, C)", //MISSING
+DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)", //MISSING
+DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)", //MISSING
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General", //MISSING
+DlgDocBackTab : "Background", //MISSING
+DlgDocColorsTab : "Colors and Margins", //MISSING
+DlgDocMetaTab : "Meta Data", //MISSING
+
+DlgDocPageTitle : "Page Title", //MISSING
+DlgDocLangDir : "Language Direction", //MISSING
+DlgDocLangDirLTR : "Left to Right (LTR)", //MISSING
+DlgDocLangDirRTL : "Right to Left (RTL)", //MISSING
+DlgDocLangCode : "Language Code", //MISSING
+DlgDocCharSet : "Character Set Encoding", //MISSING
+DlgDocCharSetOther : "Other Character Set Encoding", //MISSING
+
+DlgDocDocType : "Document Type Heading", //MISSING
+DlgDocDocTypeOther : "Other Document Type Heading", //MISSING
+DlgDocIncXHTML : "Include XHTML Declarations", //MISSING
+DlgDocBgColor : "Background Color", //MISSING
+DlgDocBgImage : "Background Image URL", //MISSING
+DlgDocBgNoScroll : "Nonscrolling Background", //MISSING
+DlgDocCText : "Text", //MISSING
+DlgDocCLink : "Link", //MISSING
+DlgDocCVisited : "Visited Link", //MISSING
+DlgDocCActive : "Active Link", //MISSING
+DlgDocMargins : "Page Margins", //MISSING
+DlgDocMaTop : "Top", //MISSING
+DlgDocMaLeft : "Left", //MISSING
+DlgDocMaRight : "Right", //MISSING
+DlgDocMaBottom : "Bottom", //MISSING
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)", //MISSING
+DlgDocMeDescr : "Document Description", //MISSING
+DlgDocMeAuthor : "Author", //MISSING
+DlgDocMeCopy : "Copyright", //MISSING
+DlgDocPreview : "Preview", //MISSING
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "About", //MISSING
+DlgAboutBrowserInfoTab : "Browser Info", //MISSING
+DlgAboutVersion : "ÎκδοÏη",
+DlgAboutLicense : "Îδεια ÏÏήÏÎ·Ï Ï
ÏÏ ÏοÏ
Ï ÏÏοÏ
Ï ÏÎ·Ï GNU Lesser General Public License",
+DlgAboutInfo : "Îια ÏεÏιÏÏÏÏεÏÎµÏ ÏληÏοÏοÏίεÏ"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-au.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-au.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-au.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: en-au.js
+ * English (Australia) language file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Christopher Dawes (fckeditor at dawes.id.au)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Collapse Toolbar",
+ToolbarExpand : "Expand Toolbar",
+
+// Toolbar Items and Context Menu
+Save : "Save",
+NewPage : "New Page",
+Preview : "Preview",
+Cut : "Cut",
+Copy : "Copy",
+Paste : "Paste",
+PasteText : "Paste as plain text",
+PasteWord : "Paste from Word",
+Print : "Print",
+SelectAll : "Select All",
+RemoveFormat : "Remove Format",
+InsertLinkLbl : "Link",
+InsertLink : "Insert/Edit Link",
+RemoveLink : "Remove Link",
+Anchor : "Insert/Edit Anchor",
+InsertImageLbl : "Image",
+InsertImage : "Insert/Edit Image",
+InsertFlashLbl : "Flash",
+InsertFlash : "Insert/Edit Flash",
+InsertTableLbl : "Table",
+InsertTable : "Insert/Edit Table",
+InsertLineLbl : "Line",
+InsertLine : "Insert Horizontal Line",
+InsertSpecialCharLbl: "Special Char",
+InsertSpecialChar : "Insert Special Character",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Insert Smiley",
+About : "About FCKeditor",
+Bold : "Bold",
+Italic : "Italic",
+Underline : "Underline",
+StrikeThrough : "Strike Through",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Left Justify",
+CenterJustify : "Center Justify",
+RightJustify : "Right Justify",
+BlockJustify : "Block Justify",
+DecreaseIndent : "Decrease Indent",
+IncreaseIndent : "Increase Indent",
+Undo : "Undo",
+Redo : "Redo",
+NumberedListLbl : "Numbered List",
+NumberedList : "Insert/Remove Numbered List",
+BulletedListLbl : "Bulleted List",
+BulletedList : "Insert/Remove Bulleted List",
+ShowTableBorders : "Show Table Borders",
+ShowDetails : "Show Details",
+Style : "Style",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "Size",
+TextColor : "Text Color",
+BGColor : "Background Color",
+Source : "Source",
+Find : "Find",
+Replace : "Replace",
+SpellCheck : "Check Spell",
+UniversalKeyboard : "Universal Keyboard",
+
+Form : "Form",
+Checkbox : "Checkbox",
+RadioButton : "Radio Button",
+TextField : "Text Field",
+Textarea : "Textarea",
+HiddenField : "Hidden Field",
+Button : "Button",
+SelectionField : "Selection Field",
+ImageButton : "Image Button",
+
+// Context Menu
+EditLink : "Edit Link",
+InsertRow : "Insert Row",
+DeleteRows : "Delete Rows",
+InsertColumn : "Insert Column",
+DeleteColumns : "Delete Columns",
+InsertCell : "Insert Cell",
+DeleteCells : "Delete Cells",
+MergeCells : "Merge Cells",
+SplitCell : "Split Cell",
+CellProperties : "Cell Properties",
+TableProperties : "Table Properties",
+ImageProperties : "Image Properties",
+FlashProperties : "Flash Properties",
+
+AnchorProp : "Anchor Properties",
+ButtonProp : "Button Properties",
+CheckboxProp : "Checkbox Properties",
+HiddenFieldProp : "Hidden Field Properties",
+RadioButtonProp : "Radio Button Properties",
+ImageButtonProp : "Image Button Properties",
+TextFieldProp : "Text Field Properties",
+SelectionFieldProp : "Selection Field Properties",
+TextareaProp : "Textarea Properties",
+FormProp : "Form Properties",
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Processing XHTML. Please wait...",
+Done : "Done",
+PasteWordConfirm : "The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?",
+NotCompatiblePaste : "This command is available for Internet Explorer version 5.5 or more. Do you want to paste without cleaning?",
+UnknownToolbarItem : "Unknown toolbar item \"%1\"",
+UnknownCommand : "Unknown command name \"%1\"",
+NotImplemented : "Command not implemented",
+UnknownToolbarSet : "Toolbar set \"%1\" doesn't exist",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancel",
+DlgBtnClose : "Close",
+DlgBtnBrowseServer : "Browse Server",
+DlgAdvancedTag : "Advanced",
+DlgOpOther : "<Other>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Please insert the URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<not set>",
+DlgGenId : "Id",
+DlgGenLangDir : "Language Direction",
+DlgGenLangDirLtr : "Left to Right (LTR)",
+DlgGenLangDirRtl : "Right to Left (RTL)",
+DlgGenLangCode : "Language Code",
+DlgGenAccessKey : "Access Key",
+DlgGenName : "Name",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Long Description URL",
+DlgGenClass : "Stylesheet Classes",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "Image Properties",
+DlgImgInfoTab : "Image Info",
+DlgImgBtnUpload : "Send it to the Server",
+DlgImgURL : "URL",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Alternative Text",
+DlgImgWidth : "Width",
+DlgImgHeight : "Height",
+DlgImgLockRatio : "Lock Ratio",
+DlgBtnResetSize : "Reset Size",
+DlgImgBorder : "Border",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Align",
+DlgImgAlignLeft : "Left",
+DlgImgAlignAbsBottom: "Abs Bottom",
+DlgImgAlignAbsMiddle: "Abs Middle",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Bottom",
+DlgImgAlignMiddle : "Middle",
+DlgImgAlignRight : "Right",
+DlgImgAlignTextTop : "Text Top",
+DlgImgAlignTop : "Top",
+DlgImgPreview : "Preview",
+DlgImgAlertUrl : "Please type the image URL",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties",
+DlgFlashChkPlay : "Auto Play",
+DlgFlashChkLoop : "Loop",
+DlgFlashChkMenu : "Enable Flash Menu",
+DlgFlashScale : "Scale",
+DlgFlashScaleAll : "Show all",
+DlgFlashScaleNoBorder : "No Border",
+DlgFlashScaleFit : "Exact Fit",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link Info",
+DlgLnkTargetTab : "Target",
+
+DlgLnkType : "Link Type",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Anchor in this page",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocol",
+DlgLnkProtoOther : "<other>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Select an Anchor",
+DlgLnkAnchorByName : "By Anchor Name",
+DlgLnkAnchorById : "By Element Id",
+DlgLnkNoAnchors : "<No anchors available in the document>",
+DlgLnkEMail : "E-Mail Address",
+DlgLnkEMailSubject : "Message Subject",
+DlgLnkEMailBody : "Message Body",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Send it to the Server",
+
+DlgLnkTarget : "Target",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<popup window>",
+DlgLnkTargetBlank : "New Window (_blank)",
+DlgLnkTargetParent : "Parent Window (_parent)",
+DlgLnkTargetSelf : "Same Window (_self)",
+DlgLnkTargetTop : "Topmost Window (_top)",
+DlgLnkTargetFrameName : "Target Frame Name",
+DlgLnkPopWinName : "Popup Window Name",
+DlgLnkPopWinFeat : "Popup Window Features",
+DlgLnkPopResize : "Resizable",
+DlgLnkPopLocation : "Location Bar",
+DlgLnkPopMenu : "Menu Bar",
+DlgLnkPopScroll : "Scroll Bars",
+DlgLnkPopStatus : "Status Bar",
+DlgLnkPopToolbar : "Toolbar",
+DlgLnkPopFullScrn : "Full Screen (IE)",
+DlgLnkPopDependent : "Dependent (Netscape)",
+DlgLnkPopWidth : "Width",
+DlgLnkPopHeight : "Height",
+DlgLnkPopLeft : "Left Position",
+DlgLnkPopTop : "Top Position",
+
+DlnLnkMsgNoUrl : "Please type the link URL",
+DlnLnkMsgNoEMail : "Please type the e-mail address",
+DlnLnkMsgNoAnchor : "Please select an anchor",
+
+// Color Dialog
+DlgColorTitle : "Select Color",
+DlgColorBtnClear : "Clear",
+DlgColorHighlight : "Highlight",
+DlgColorSelected : "Selected",
+
+// Smiley Dialog
+DlgSmileyTitle : "Insert a Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Select Special Character",
+
+// Table Dialog
+DlgTableTitle : "Table Properties",
+DlgTableRows : "Rows",
+DlgTableColumns : "Columns",
+DlgTableBorder : "Border size",
+DlgTableAlign : "Alignment",
+DlgTableAlignNotSet : "<Not set>",
+DlgTableAlignLeft : "Left",
+DlgTableAlignCenter : "Centre",
+DlgTableAlignRight : "Right",
+DlgTableWidth : "Width",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "percent",
+DlgTableHeight : "Height",
+DlgTableCellSpace : "Cell spacing",
+DlgTableCellPad : "Cell padding",
+DlgTableCaption : "Caption",
+
+// Table Cell Dialog
+DlgCellTitle : "Cell Properties",
+DlgCellWidth : "Width",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "percent",
+DlgCellHeight : "Height",
+DlgCellWordWrap : "Word Wrap",
+DlgCellWordWrapNotSet : "<Not set>",
+DlgCellWordWrapYes : "Yes",
+DlgCellWordWrapNo : "No",
+DlgCellHorAlign : "Horizontal Alignment",
+DlgCellHorAlignNotSet : "<Not set>",
+DlgCellHorAlignLeft : "Left",
+DlgCellHorAlignCenter : "Centre",
+DlgCellHorAlignRight: "Right",
+DlgCellVerAlign : "Vertical Alignment",
+DlgCellVerAlignNotSet : "<Not set>",
+DlgCellVerAlignTop : "Top",
+DlgCellVerAlignMiddle : "Middle",
+DlgCellVerAlignBottom : "Bottom",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "Rows Span",
+DlgCellCollSpan : "Columns Span",
+DlgCellBackColor : "Background Color",
+DlgCellBorderColor : "Border Color",
+DlgCellBtnSelect : "Select...",
+
+// Find Dialog
+DlgFindTitle : "Find",
+DlgFindFindBtn : "Find",
+DlgFindNotFoundMsg : "The specified text was not found.",
+
+// Replace Dialog
+DlgReplaceTitle : "Replace",
+DlgReplaceFindLbl : "Find what:",
+DlgReplaceReplaceLbl : "Replace with:",
+DlgReplaceCaseChk : "Match case",
+DlgReplaceReplaceBtn : "Replace",
+DlgReplaceReplAllBtn : "Replace All",
+DlgReplaceWordChk : "Match whole word",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Your browser security settings don't permit the editor to automaticaly execute pasting operations. Please use the keyboard for that (Ctrl+V).",
+PasteErrorCut : "Your browser security settings don't permit the editor to automaticaly execute cutting operations. Please use the keyboard for that (Ctrl+X).",
+PasteErrorCopy : "Your browser security settings don't permit the editor to automaticaly execute copying operations. Please use the keyboard for that (Ctrl+C).",
+
+PasteAsText : "Paste as Plain Text",
+PasteFromWord : "Paste from Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignore Font Face definitions",
+DlgPasteRemoveStyles : "Remove Styles definitions",
+DlgPasteCleanBox : "Clean Up Box",
+
+
+// Color Picker
+ColorAutomatic : "Automatic",
+ColorMoreColors : "More Colors...",
+
+// Document Properties
+DocProps : "Document Properties",
+
+// Anchor Dialog
+DlgAnchorTitle : "Anchor Properties",
+DlgAnchorName : "Anchor Name",
+DlgAnchorErrorName : "Please type the anchor name",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Not in dictionary",
+DlgSpellChangeTo : "Change to",
+DlgSpellBtnIgnore : "Ignore",
+DlgSpellBtnIgnoreAll : "Ignore All",
+DlgSpellBtnReplace : "Replace",
+DlgSpellBtnReplaceAll : "Replace All",
+DlgSpellBtnUndo : "Undo",
+DlgSpellNoSuggestions : "- No suggestions -",
+DlgSpellProgress : "Spell check in progress...",
+DlgSpellNoMispell : "Spell check complete: No misspellings found",
+DlgSpellNoChanges : "Spell check complete: No words changed",
+DlgSpellOneChange : "Spell check complete: One word changed",
+DlgSpellManyChanges : "Spell check complete: %1 words changed",
+
+IeSpellDownload : "Spell checker not installed. Do you want to download it now?",
+
+// Button Dialog
+DlgButtonText : "Text (Value)",
+DlgButtonType : "Type",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name",
+DlgCheckboxValue : "Value",
+DlgCheckboxSelected : "Selected",
+
+// Form Dialog
+DlgFormName : "Name",
+DlgFormAction : "Action",
+DlgFormMethod : "Method",
+
+// Select Field Dialog
+DlgSelectName : "Name",
+DlgSelectValue : "Value",
+DlgSelectSize : "Size",
+DlgSelectLines : "lines",
+DlgSelectChkMulti : "Allow multiple selections",
+DlgSelectOpAvail : "Available Options",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Value",
+DlgSelectBtnAdd : "Add",
+DlgSelectBtnModify : "Modify",
+DlgSelectBtnUp : "Up",
+DlgSelectBtnDown : "Down",
+DlgSelectBtnSetValue : "Set as selected value",
+DlgSelectBtnDelete : "Delete",
+
+// Textarea Dialog
+DlgTextareaName : "Name",
+DlgTextareaCols : "Columns",
+DlgTextareaRows : "Rows",
+
+// Text Field Dialog
+DlgTextName : "Name",
+DlgTextValue : "Value",
+DlgTextCharWidth : "Character Width",
+DlgTextMaxChars : "Maximum Characters",
+DlgTextType : "Type",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Password",
+
+// Hidden Field Dialog
+DlgHiddenName : "Name",
+DlgHiddenValue : "Value",
+
+// Bulleted List Dialog
+BulletedListProp : "Bulleted List Properties",
+NumberedListProp : "Numbered List Properties",
+DlgLstType : "Type",
+DlgLstTypeCircle : "Circle",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Square",
+DlgLstTypeNumbers : "Numbers (1, 2, 3)",
+DlgLstTypeLCase : "Lowercase Letters (a, b, c)",
+DlgLstTypeUCase : "Uppercase Letters (A, B, C)",
+DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)",
+DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General",
+DlgDocBackTab : "Background",
+DlgDocColorsTab : "Colors and Margins",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Page Title",
+DlgDocLangDir : "Language Direction",
+DlgDocLangDirLTR : "Left to Right (LTR)",
+DlgDocLangDirRTL : "Right to Left (RTL)",
+DlgDocLangCode : "Language Code",
+DlgDocCharSet : "Character Set Encoding",
+DlgDocCharSetOther : "Other Character Set Encoding",
+
+DlgDocDocType : "Document Type Heading",
+DlgDocDocTypeOther : "Other Document Type Heading",
+DlgDocIncXHTML : "Include XHTML Declarations",
+DlgDocBgColor : "Background Color",
+DlgDocBgImage : "Background Image URL",
+DlgDocBgNoScroll : "Nonscrolling Background",
+DlgDocCText : "Text",
+DlgDocCLink : "Link",
+DlgDocCVisited : "Visited Link",
+DlgDocCActive : "Active Link",
+DlgDocMargins : "Page Margins",
+DlgDocMaTop : "Top",
+DlgDocMaLeft : "Left",
+DlgDocMaRight : "Right",
+DlgDocMaBottom : "Bottom",
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
+DlgDocMeDescr : "Document Description",
+DlgDocMeAuthor : "Author",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Preview",
+
+// Templates Dialog
+Templates : "Templates",
+DlgTemplatesTitle : "Content Templates",
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):",
+DlgTemplatesLoading : "Loading templates list. Please wait...",
+DlgTemplatesNoTpl : "(No templates defined)",
+
+// About Dialog
+DlgAboutAboutTab : "About",
+DlgAboutBrowserInfoTab : "Browser Info",
+DlgAboutVersion : "version",
+DlgAboutLicense : "Licensed under the terms of the GNU Lesser General Public License",
+DlgAboutInfo : "For further information go to"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-uk.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-uk.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/en-uk.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: en-uk.js
+ * English (United Kingdom) language file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Christopher Dawes (fckeditor at dawes.id.au)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Collapse Toolbar",
+ToolbarExpand : "Expand Toolbar",
+
+// Toolbar Items and Context Menu
+Save : "Save",
+NewPage : "New Page",
+Preview : "Preview",
+Cut : "Cut",
+Copy : "Copy",
+Paste : "Paste",
+PasteText : "Paste as plain text",
+PasteWord : "Paste from Word",
+Print : "Print",
+SelectAll : "Select All",
+RemoveFormat : "Remove Format",
+InsertLinkLbl : "Link",
+InsertLink : "Insert/Edit Link",
+RemoveLink : "Remove Link",
+Anchor : "Insert/Edit Anchor",
+InsertImageLbl : "Image",
+InsertImage : "Insert/Edit Image",
+InsertFlashLbl : "Flash",
+InsertFlash : "Insert/Edit Flash",
+InsertTableLbl : "Table",
+InsertTable : "Insert/Edit Table",
+InsertLineLbl : "Line",
+InsertLine : "Insert Horizontal Line",
+InsertSpecialCharLbl: "Special Char",
+InsertSpecialChar : "Insert Special Character",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Insert Smiley",
+About : "About FCKeditor",
+Bold : "Bold",
+Italic : "Italic",
+Underline : "Underline",
+StrikeThrough : "Strike Through",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Left Justify",
+CenterJustify : "Center Justify",
+RightJustify : "Right Justify",
+BlockJustify : "Block Justify",
+DecreaseIndent : "Decrease Indent",
+IncreaseIndent : "Increase Indent",
+Undo : "Undo",
+Redo : "Redo",
+NumberedListLbl : "Numbered List",
+NumberedList : "Insert/Remove Numbered List",
+BulletedListLbl : "Bulleted List",
+BulletedList : "Insert/Remove Bulleted List",
+ShowTableBorders : "Show Table Borders",
+ShowDetails : "Show Details",
+Style : "Style",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "Size",
+TextColor : "Text Color",
+BGColor : "Background Color",
+Source : "Source",
+Find : "Find",
+Replace : "Replace",
+SpellCheck : "Check Spell",
+UniversalKeyboard : "Universal Keyboard",
+
+Form : "Form",
+Checkbox : "Checkbox",
+RadioButton : "Radio Button",
+TextField : "Text Field",
+Textarea : "Textarea",
+HiddenField : "Hidden Field",
+Button : "Button",
+SelectionField : "Selection Field",
+ImageButton : "Image Button",
+
+// Context Menu
+EditLink : "Edit Link",
+InsertRow : "Insert Row",
+DeleteRows : "Delete Rows",
+InsertColumn : "Insert Column",
+DeleteColumns : "Delete Columns",
+InsertCell : "Insert Cell",
+DeleteCells : "Delete Cells",
+MergeCells : "Merge Cells",
+SplitCell : "Split Cell",
+CellProperties : "Cell Properties",
+TableProperties : "Table Properties",
+ImageProperties : "Image Properties",
+FlashProperties : "Flash Properties",
+
+AnchorProp : "Anchor Properties",
+ButtonProp : "Button Properties",
+CheckboxProp : "Checkbox Properties",
+HiddenFieldProp : "Hidden Field Properties",
+RadioButtonProp : "Radio Button Properties",
+ImageButtonProp : "Image Button Properties",
+TextFieldProp : "Text Field Properties",
+SelectionFieldProp : "Selection Field Properties",
+TextareaProp : "Textarea Properties",
+FormProp : "Form Properties",
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Processing XHTML. Please wait...",
+Done : "Done",
+PasteWordConfirm : "The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?",
+NotCompatiblePaste : "This command is available for Internet Explorer version 5.5 or more. Do you want to paste without cleaning?",
+UnknownToolbarItem : "Unknown toolbar item \"%1\"",
+UnknownCommand : "Unknown command name \"%1\"",
+NotImplemented : "Command not implemented",
+UnknownToolbarSet : "Toolbar set \"%1\" doesn't exist",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancel",
+DlgBtnClose : "Close",
+DlgBtnBrowseServer : "Browse Server",
+DlgAdvancedTag : "Advanced",
+DlgOpOther : "<Other>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Please insert the URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<not set>",
+DlgGenId : "Id",
+DlgGenLangDir : "Language Direction",
+DlgGenLangDirLtr : "Left to Right (LTR)",
+DlgGenLangDirRtl : "Right to Left (RTL)",
+DlgGenLangCode : "Language Code",
+DlgGenAccessKey : "Access Key",
+DlgGenName : "Name",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Long Description URL",
+DlgGenClass : "Stylesheet Classes",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "Image Properties",
+DlgImgInfoTab : "Image Info",
+DlgImgBtnUpload : "Send it to the Server",
+DlgImgURL : "URL",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Alternative Text",
+DlgImgWidth : "Width",
+DlgImgHeight : "Height",
+DlgImgLockRatio : "Lock Ratio",
+DlgBtnResetSize : "Reset Size",
+DlgImgBorder : "Border",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Align",
+DlgImgAlignLeft : "Left",
+DlgImgAlignAbsBottom: "Abs Bottom",
+DlgImgAlignAbsMiddle: "Abs Middle",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Bottom",
+DlgImgAlignMiddle : "Middle",
+DlgImgAlignRight : "Right",
+DlgImgAlignTextTop : "Text Top",
+DlgImgAlignTop : "Top",
+DlgImgPreview : "Preview",
+DlgImgAlertUrl : "Please type the image URL",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties",
+DlgFlashChkPlay : "Auto Play",
+DlgFlashChkLoop : "Loop",
+DlgFlashChkMenu : "Enable Flash Menu",
+DlgFlashScale : "Scale",
+DlgFlashScaleAll : "Show all",
+DlgFlashScaleNoBorder : "No Border",
+DlgFlashScaleFit : "Exact Fit",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link Info",
+DlgLnkTargetTab : "Target",
+
+DlgLnkType : "Link Type",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Anchor in this page",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocol",
+DlgLnkProtoOther : "<other>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Select an Anchor",
+DlgLnkAnchorByName : "By Anchor Name",
+DlgLnkAnchorById : "By Element Id",
+DlgLnkNoAnchors : "<No anchors available in the document>",
+DlgLnkEMail : "E-Mail Address",
+DlgLnkEMailSubject : "Message Subject",
+DlgLnkEMailBody : "Message Body",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Send it to the Server",
+
+DlgLnkTarget : "Target",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<popup window>",
+DlgLnkTargetBlank : "New Window (_blank)",
+DlgLnkTargetParent : "Parent Window (_parent)",
+DlgLnkTargetSelf : "Same Window (_self)",
+DlgLnkTargetTop : "Topmost Window (_top)",
+DlgLnkTargetFrameName : "Target Frame Name",
+DlgLnkPopWinName : "Popup Window Name",
+DlgLnkPopWinFeat : "Popup Window Features",
+DlgLnkPopResize : "Resizable",
+DlgLnkPopLocation : "Location Bar",
+DlgLnkPopMenu : "Menu Bar",
+DlgLnkPopScroll : "Scroll Bars",
+DlgLnkPopStatus : "Status Bar",
+DlgLnkPopToolbar : "Toolbar",
+DlgLnkPopFullScrn : "Full Screen (IE)",
+DlgLnkPopDependent : "Dependent (Netscape)",
+DlgLnkPopWidth : "Width",
+DlgLnkPopHeight : "Height",
+DlgLnkPopLeft : "Left Position",
+DlgLnkPopTop : "Top Position",
+
+DlnLnkMsgNoUrl : "Please type the link URL",
+DlnLnkMsgNoEMail : "Please type the e-mail address",
+DlnLnkMsgNoAnchor : "Please select an anchor",
+
+// Color Dialog
+DlgColorTitle : "Select Color",
+DlgColorBtnClear : "Clear",
+DlgColorHighlight : "Highlight",
+DlgColorSelected : "Selected",
+
+// Smiley Dialog
+DlgSmileyTitle : "Insert a Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Select Special Character",
+
+// Table Dialog
+DlgTableTitle : "Table Properties",
+DlgTableRows : "Rows",
+DlgTableColumns : "Columns",
+DlgTableBorder : "Border size",
+DlgTableAlign : "Alignment",
+DlgTableAlignNotSet : "<Not set>",
+DlgTableAlignLeft : "Left",
+DlgTableAlignCenter : "Centre",
+DlgTableAlignRight : "Right",
+DlgTableWidth : "Width",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "percent",
+DlgTableHeight : "Height",
+DlgTableCellSpace : "Cell spacing",
+DlgTableCellPad : "Cell padding",
+DlgTableCaption : "Caption",
+
+// Table Cell Dialog
+DlgCellTitle : "Cell Properties",
+DlgCellWidth : "Width",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "percent",
+DlgCellHeight : "Height",
+DlgCellWordWrap : "Word Wrap",
+DlgCellWordWrapNotSet : "<Not set>",
+DlgCellWordWrapYes : "Yes",
+DlgCellWordWrapNo : "No",
+DlgCellHorAlign : "Horizontal Alignment",
+DlgCellHorAlignNotSet : "<Not set>",
+DlgCellHorAlignLeft : "Left",
+DlgCellHorAlignCenter : "Centre",
+DlgCellHorAlignRight: "Right",
+DlgCellVerAlign : "Vertical Alignment",
+DlgCellVerAlignNotSet : "<Not set>",
+DlgCellVerAlignTop : "Top",
+DlgCellVerAlignMiddle : "Middle",
+DlgCellVerAlignBottom : "Bottom",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "Rows Span",
+DlgCellCollSpan : "Columns Span",
+DlgCellBackColor : "Background Color",
+DlgCellBorderColor : "Border Color",
+DlgCellBtnSelect : "Select...",
+
+// Find Dialog
+DlgFindTitle : "Find",
+DlgFindFindBtn : "Find",
+DlgFindNotFoundMsg : "The specified text was not found.",
+
+// Replace Dialog
+DlgReplaceTitle : "Replace",
+DlgReplaceFindLbl : "Find what:",
+DlgReplaceReplaceLbl : "Replace with:",
+DlgReplaceCaseChk : "Match case",
+DlgReplaceReplaceBtn : "Replace",
+DlgReplaceReplAllBtn : "Replace All",
+DlgReplaceWordChk : "Match whole word",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Your browser security settings don't permit the editor to automaticaly execute pasting operations. Please use the keyboard for that (Ctrl+V).",
+PasteErrorCut : "Your browser security settings don't permit the editor to automaticaly execute cutting operations. Please use the keyboard for that (Ctrl+X).",
+PasteErrorCopy : "Your browser security settings don't permit the editor to automaticaly execute copying operations. Please use the keyboard for that (Ctrl+C).",
+
+PasteAsText : "Paste as Plain Text",
+PasteFromWord : "Paste from Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignore Font Face definitions",
+DlgPasteRemoveStyles : "Remove Styles definitions",
+DlgPasteCleanBox : "Clean Up Box",
+
+
+// Color Picker
+ColorAutomatic : "Automatic",
+ColorMoreColors : "More Colors...",
+
+// Document Properties
+DocProps : "Document Properties",
+
+// Anchor Dialog
+DlgAnchorTitle : "Anchor Properties",
+DlgAnchorName : "Anchor Name",
+DlgAnchorErrorName : "Please type the anchor name",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Not in dictionary",
+DlgSpellChangeTo : "Change to",
+DlgSpellBtnIgnore : "Ignore",
+DlgSpellBtnIgnoreAll : "Ignore All",
+DlgSpellBtnReplace : "Replace",
+DlgSpellBtnReplaceAll : "Replace All",
+DlgSpellBtnUndo : "Undo",
+DlgSpellNoSuggestions : "- No suggestions -",
+DlgSpellProgress : "Spell check in progress...",
+DlgSpellNoMispell : "Spell check complete: No misspellings found",
+DlgSpellNoChanges : "Spell check complete: No words changed",
+DlgSpellOneChange : "Spell check complete: One word changed",
+DlgSpellManyChanges : "Spell check complete: %1 words changed",
+
+IeSpellDownload : "Spell checker not installed. Do you want to download it now?",
+
+// Button Dialog
+DlgButtonText : "Text (Value)",
+DlgButtonType : "Type",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name",
+DlgCheckboxValue : "Value",
+DlgCheckboxSelected : "Selected",
+
+// Form Dialog
+DlgFormName : "Name",
+DlgFormAction : "Action",
+DlgFormMethod : "Method",
+
+// Select Field Dialog
+DlgSelectName : "Name",
+DlgSelectValue : "Value",
+DlgSelectSize : "Size",
+DlgSelectLines : "lines",
+DlgSelectChkMulti : "Allow multiple selections",
+DlgSelectOpAvail : "Available Options",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Value",
+DlgSelectBtnAdd : "Add",
+DlgSelectBtnModify : "Modify",
+DlgSelectBtnUp : "Up",
+DlgSelectBtnDown : "Down",
+DlgSelectBtnSetValue : "Set as selected value",
+DlgSelectBtnDelete : "Delete",
+
+// Textarea Dialog
+DlgTextareaName : "Name",
+DlgTextareaCols : "Columns",
+DlgTextareaRows : "Rows",
+
+// Text Field Dialog
+DlgTextName : "Name",
+DlgTextValue : "Value",
+DlgTextCharWidth : "Character Width",
+DlgTextMaxChars : "Maximum Characters",
+DlgTextType : "Type",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Password",
+
+// Hidden Field Dialog
+DlgHiddenName : "Name",
+DlgHiddenValue : "Value",
+
+// Bulleted List Dialog
+BulletedListProp : "Bulleted List Properties",
+NumberedListProp : "Numbered List Properties",
+DlgLstType : "Type",
+DlgLstTypeCircle : "Circle",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Square",
+DlgLstTypeNumbers : "Numbers (1, 2, 3)",
+DlgLstTypeLCase : "Lowercase Letters (a, b, c)",
+DlgLstTypeUCase : "Uppercase Letters (A, B, C)",
+DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)",
+DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General",
+DlgDocBackTab : "Background",
+DlgDocColorsTab : "Colors and Margins",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Page Title",
+DlgDocLangDir : "Language Direction",
+DlgDocLangDirLTR : "Left to Right (LTR)",
+DlgDocLangDirRTL : "Right to Left (RTL)",
+DlgDocLangCode : "Language Code",
+DlgDocCharSet : "Character Set Encoding",
+DlgDocCharSetOther : "Other Character Set Encoding",
+
+DlgDocDocType : "Document Type Heading",
+DlgDocDocTypeOther : "Other Document Type Heading",
+DlgDocIncXHTML : "Include XHTML Declarations",
+DlgDocBgColor : "Background Color",
+DlgDocBgImage : "Background Image URL",
+DlgDocBgNoScroll : "Nonscrolling Background",
+DlgDocCText : "Text",
+DlgDocCLink : "Link",
+DlgDocCVisited : "Visited Link",
+DlgDocCActive : "Active Link",
+DlgDocMargins : "Page Margins",
+DlgDocMaTop : "Top",
+DlgDocMaLeft : "Left",
+DlgDocMaRight : "Right",
+DlgDocMaBottom : "Bottom",
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
+DlgDocMeDescr : "Document Description",
+DlgDocMeAuthor : "Author",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Preview",
+
+// Templates Dialog
+Templates : "Templates",
+DlgTemplatesTitle : "Content Templates",
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):",
+DlgTemplatesLoading : "Loading templates list. Please wait...",
+DlgTemplatesNoTpl : "(No templates defined)",
+
+// About Dialog
+DlgAboutAboutTab : "About",
+DlgAboutBrowserInfoTab : "Browser Info",
+DlgAboutVersion : "version",
+DlgAboutLicense : "Licensed under the terms of the GNU Lesser General Public License",
+DlgAboutInfo : "For further information go to"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/en.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/en.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/en.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,477 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: en.js
+ * English language file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Collapse Toolbar",
+ToolbarExpand : "Expand Toolbar",
+
+// Toolbar Items and Context Menu
+Save : "Save",
+NewPage : "New Page",
+Preview : "Preview",
+Cut : "Cut",
+Copy : "Copy",
+Paste : "Paste",
+PasteText : "Paste as plain text",
+PasteWord : "Paste from Word",
+Print : "Print",
+SelectAll : "Select All",
+RemoveFormat : "Remove Format",
+InsertLinkLbl : "Link",
+InsertLink : "Insert/Edit Link",
+RemoveLink : "Remove Link",
+Anchor : "Insert/Edit Anchor",
+InsertImageLbl : "Image",
+InsertImage : "Insert/Edit Image",
+InsertFlashLbl : "Flash",
+InsertFlash : "Insert/Edit Flash",
+InsertTableLbl : "Table",
+InsertTable : "Insert/Edit Table",
+InsertLineLbl : "Line",
+InsertLine : "Insert Horizontal Line",
+InsertSpecialCharLbl: "Special Char",
+InsertSpecialChar : "Insert Special Character",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Insert Smiley",
+About : "About FCKeditor",
+Bold : "Bold",
+Italic : "Italic",
+Underline : "Underline",
+StrikeThrough : "Strike Through",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Left Justify",
+CenterJustify : "Center Justify",
+RightJustify : "Right Justify",
+BlockJustify : "Block Justify",
+DecreaseIndent : "Decrease Indent",
+IncreaseIndent : "Increase Indent",
+Undo : "Undo",
+Redo : "Redo",
+NumberedListLbl : "Numbered List",
+NumberedList : "Insert/Remove Numbered List",
+BulletedListLbl : "Bulleted List",
+BulletedList : "Insert/Remove Bulleted List",
+ShowTableBorders : "Show Table Borders",
+ShowDetails : "Show Details",
+Style : "Style",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "Size",
+TextColor : "Text Color",
+BGColor : "Background Color",
+Source : "Source",
+Find : "Find",
+Replace : "Replace",
+SpellCheck : "Check Spell",
+UniversalKeyboard : "Universal Keyboard",
+PageBreakLbl : "Page Break",
+PageBreak : "Insert Page Break",
+
+Form : "Form",
+Checkbox : "Checkbox",
+RadioButton : "Radio Button",
+TextField : "Text Field",
+Textarea : "Textarea",
+HiddenField : "Hidden Field",
+Button : "Button",
+SelectionField : "Selection Field",
+ImageButton : "Image Button",
+
+// Context Menu
+EditLink : "Edit Link",
+InsertRow : "Insert Row",
+DeleteRows : "Delete Rows",
+InsertColumn : "Insert Column",
+DeleteColumns : "Delete Columns",
+InsertCell : "Insert Cell",
+DeleteCells : "Delete Cells",
+MergeCells : "Merge Cells",
+SplitCell : "Split Cell",
+CellProperties : "Cell Properties",
+TableProperties : "Table Properties",
+ImageProperties : "Image Properties",
+FlashProperties : "Flash Properties",
+
+AnchorProp : "Anchor Properties",
+ButtonProp : "Button Properties",
+CheckboxProp : "Checkbox Properties",
+HiddenFieldProp : "Hidden Field Properties",
+RadioButtonProp : "Radio Button Properties",
+ImageButtonProp : "Image Button Properties",
+TextFieldProp : "Text Field Properties",
+SelectionFieldProp : "Selection Field Properties",
+TextareaProp : "Textarea Properties",
+FormProp : "Form Properties",
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Processing XHTML. Please wait...",
+Done : "Done",
+PasteWordConfirm : "The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?",
+NotCompatiblePaste : "This command is available for Internet Explorer version 5.5 or more. Do you want to paste without cleaning?",
+UnknownToolbarItem : "Unknown toolbar item \"%1\"",
+UnknownCommand : "Unknown command name \"%1\"",
+NotImplemented : "Command not implemented",
+UnknownToolbarSet : "Toolbar set \"%1\" doesn't exist",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.",
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancel",
+DlgBtnClose : "Close",
+DlgBtnBrowseServer : "Browse Server",
+DlgAdvancedTag : "Advanced",
+DlgOpOther : "<Other>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Please insert the URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<not set>",
+DlgGenId : "Id",
+DlgGenLangDir : "Language Direction",
+DlgGenLangDirLtr : "Left to Right (LTR)",
+DlgGenLangDirRtl : "Right to Left (RTL)",
+DlgGenLangCode : "Language Code",
+DlgGenAccessKey : "Access Key",
+DlgGenName : "Name",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Long Description URL",
+DlgGenClass : "Stylesheet Classes",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "Image Properties",
+DlgImgInfoTab : "Image Info",
+DlgImgBtnUpload : "Send it to the Server",
+DlgImgURL : "URL",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Alternative Text",
+DlgImgWidth : "Width",
+DlgImgHeight : "Height",
+DlgImgLockRatio : "Lock Ratio",
+DlgBtnResetSize : "Reset Size",
+DlgImgBorder : "Border",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Align",
+DlgImgAlignLeft : "Left",
+DlgImgAlignAbsBottom: "Abs Bottom",
+DlgImgAlignAbsMiddle: "Abs Middle",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Bottom",
+DlgImgAlignMiddle : "Middle",
+DlgImgAlignRight : "Right",
+DlgImgAlignTextTop : "Text Top",
+DlgImgAlignTop : "Top",
+DlgImgPreview : "Preview",
+DlgImgAlertUrl : "Please type the image URL",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties",
+DlgFlashChkPlay : "Auto Play",
+DlgFlashChkLoop : "Loop",
+DlgFlashChkMenu : "Enable Flash Menu",
+DlgFlashScale : "Scale",
+DlgFlashScaleAll : "Show all",
+DlgFlashScaleNoBorder : "No Border",
+DlgFlashScaleFit : "Exact Fit",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link Info",
+DlgLnkTargetTab : "Target",
+
+DlgLnkType : "Link Type",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Anchor in this page",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocol",
+DlgLnkProtoOther : "<other>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Select an Anchor",
+DlgLnkAnchorByName : "By Anchor Name",
+DlgLnkAnchorById : "By Element Id",
+DlgLnkNoAnchors : "<No anchors available in the document>",
+DlgLnkEMail : "E-Mail Address",
+DlgLnkEMailSubject : "Message Subject",
+DlgLnkEMailBody : "Message Body",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Send it to the Server",
+
+DlgLnkTarget : "Target",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<popup window>",
+DlgLnkTargetBlank : "New Window (_blank)",
+DlgLnkTargetParent : "Parent Window (_parent)",
+DlgLnkTargetSelf : "Same Window (_self)",
+DlgLnkTargetTop : "Topmost Window (_top)",
+DlgLnkTargetFrameName : "Target Frame Name",
+DlgLnkPopWinName : "Popup Window Name",
+DlgLnkPopWinFeat : "Popup Window Features",
+DlgLnkPopResize : "Resizable",
+DlgLnkPopLocation : "Location Bar",
+DlgLnkPopMenu : "Menu Bar",
+DlgLnkPopScroll : "Scroll Bars",
+DlgLnkPopStatus : "Status Bar",
+DlgLnkPopToolbar : "Toolbar",
+DlgLnkPopFullScrn : "Full Screen (IE)",
+DlgLnkPopDependent : "Dependent (Netscape)",
+DlgLnkPopWidth : "Width",
+DlgLnkPopHeight : "Height",
+DlgLnkPopLeft : "Left Position",
+DlgLnkPopTop : "Top Position",
+
+DlnLnkMsgNoUrl : "Please type the link URL",
+DlnLnkMsgNoEMail : "Please type the e-mail address",
+DlnLnkMsgNoAnchor : "Please select an anchor",
+
+// Color Dialog
+DlgColorTitle : "Select Color",
+DlgColorBtnClear : "Clear",
+DlgColorHighlight : "Highlight",
+DlgColorSelected : "Selected",
+
+// Smiley Dialog
+DlgSmileyTitle : "Insert a Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Select Special Character",
+
+// Table Dialog
+DlgTableTitle : "Table Properties",
+DlgTableRows : "Rows",
+DlgTableColumns : "Columns",
+DlgTableBorder : "Border size",
+DlgTableAlign : "Alignment",
+DlgTableAlignNotSet : "<Not set>",
+DlgTableAlignLeft : "Left",
+DlgTableAlignCenter : "Center",
+DlgTableAlignRight : "Right",
+DlgTableWidth : "Width",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "percent",
+DlgTableHeight : "Height",
+DlgTableCellSpace : "Cell spacing",
+DlgTableCellPad : "Cell padding",
+DlgTableCaption : "Caption",
+
+// Table Cell Dialog
+DlgCellTitle : "Cell Properties",
+DlgCellWidth : "Width",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "percent",
+DlgCellHeight : "Height",
+DlgCellWordWrap : "Word Wrap",
+DlgCellWordWrapNotSet : "<Not set>",
+DlgCellWordWrapYes : "Yes",
+DlgCellWordWrapNo : "No",
+DlgCellHorAlign : "Horizontal Alignment",
+DlgCellHorAlignNotSet : "<Not set>",
+DlgCellHorAlignLeft : "Left",
+DlgCellHorAlignCenter : "Center",
+DlgCellHorAlignRight: "Right",
+DlgCellVerAlign : "Vertical Alignment",
+DlgCellVerAlignNotSet : "<Not set>",
+DlgCellVerAlignTop : "Top",
+DlgCellVerAlignMiddle : "Middle",
+DlgCellVerAlignBottom : "Bottom",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "Rows Span",
+DlgCellCollSpan : "Columns Span",
+DlgCellBackColor : "Background Color",
+DlgCellBorderColor : "Border Color",
+DlgCellBtnSelect : "Select...",
+
+// Find Dialog
+DlgFindTitle : "Find",
+DlgFindFindBtn : "Find",
+DlgFindNotFoundMsg : "The specified text was not found.",
+
+// Replace Dialog
+DlgReplaceTitle : "Replace",
+DlgReplaceFindLbl : "Find what:",
+DlgReplaceReplaceLbl : "Replace with:",
+DlgReplaceCaseChk : "Match case",
+DlgReplaceReplaceBtn : "Replace",
+DlgReplaceReplAllBtn : "Replace All",
+DlgReplaceWordChk : "Match whole word",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Your browser security settings don't permit the editor to automatically execute pasting operations. Please use the keyboard for that (Ctrl+V).",
+PasteErrorCut : "Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl+X).",
+PasteErrorCopy : "Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl+C).",
+
+PasteAsText : "Paste as Plain Text",
+PasteFromWord : "Paste from Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignore Font Face definitions",
+DlgPasteRemoveStyles : "Remove Styles definitions",
+DlgPasteCleanBox : "Clean Up Box",
+
+
+// Color Picker
+ColorAutomatic : "Automatic",
+ColorMoreColors : "More Colors...",
+
+// Document Properties
+DocProps : "Document Properties",
+
+// Anchor Dialog
+DlgAnchorTitle : "Anchor Properties",
+DlgAnchorName : "Anchor Name",
+DlgAnchorErrorName : "Please type the anchor name",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Not in dictionary",
+DlgSpellChangeTo : "Change to",
+DlgSpellBtnIgnore : "Ignore",
+DlgSpellBtnIgnoreAll : "Ignore All",
+DlgSpellBtnReplace : "Replace",
+DlgSpellBtnReplaceAll : "Replace All",
+DlgSpellBtnUndo : "Undo",
+DlgSpellNoSuggestions : "- No suggestions -",
+DlgSpellProgress : "Spell check in progress...",
+DlgSpellNoMispell : "Spell check complete: No misspellings found",
+DlgSpellNoChanges : "Spell check complete: No words changed",
+DlgSpellOneChange : "Spell check complete: One word changed",
+DlgSpellManyChanges : "Spell check complete: %1 words changed",
+
+IeSpellDownload : "Spell checker not installed. Do you want to download it now?",
+
+// Button Dialog
+DlgButtonText : "Text (Value)",
+DlgButtonType : "Type",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name",
+DlgCheckboxValue : "Value",
+DlgCheckboxSelected : "Selected",
+
+// Form Dialog
+DlgFormName : "Name",
+DlgFormAction : "Action",
+DlgFormMethod : "Method",
+
+// Select Field Dialog
+DlgSelectName : "Name",
+DlgSelectValue : "Value",
+DlgSelectSize : "Size",
+DlgSelectLines : "lines",
+DlgSelectChkMulti : "Allow multiple selections",
+DlgSelectOpAvail : "Available Options",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Value",
+DlgSelectBtnAdd : "Add",
+DlgSelectBtnModify : "Modify",
+DlgSelectBtnUp : "Up",
+DlgSelectBtnDown : "Down",
+DlgSelectBtnSetValue : "Set as selected value",
+DlgSelectBtnDelete : "Delete",
+
+// Textarea Dialog
+DlgTextareaName : "Name",
+DlgTextareaCols : "Columns",
+DlgTextareaRows : "Rows",
+
+// Text Field Dialog
+DlgTextName : "Name",
+DlgTextValue : "Value",
+DlgTextCharWidth : "Character Width",
+DlgTextMaxChars : "Maximum Characters",
+DlgTextType : "Type",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Password",
+
+// Hidden Field Dialog
+DlgHiddenName : "Name",
+DlgHiddenValue : "Value",
+
+// Bulleted List Dialog
+BulletedListProp : "Bulleted List Properties",
+NumberedListProp : "Numbered List Properties",
+DlgLstType : "Type",
+DlgLstTypeCircle : "Circle",
+DlgLstTypeDisc : "Disc",
+DlgLstTypeSquare : "Square",
+DlgLstTypeNumbers : "Numbers (1, 2, 3)",
+DlgLstTypeLCase : "Lowercase Letters (a, b, c)",
+DlgLstTypeUCase : "Uppercase Letters (A, B, C)",
+DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)",
+DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General",
+DlgDocBackTab : "Background",
+DlgDocColorsTab : "Colors and Margins",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Page Title",
+DlgDocLangDir : "Language Direction",
+DlgDocLangDirLTR : "Left to Right (LTR)",
+DlgDocLangDirRTL : "Right to Left (RTL)",
+DlgDocLangCode : "Language Code",
+DlgDocCharSet : "Character Set Encoding",
+DlgDocCharSetOther : "Other Character Set Encoding",
+
+DlgDocDocType : "Document Type Heading",
+DlgDocDocTypeOther : "Other Document Type Heading",
+DlgDocIncXHTML : "Include XHTML Declarations",
+DlgDocBgColor : "Background Color",
+DlgDocBgImage : "Background Image URL",
+DlgDocBgNoScroll : "Nonscrolling Background",
+DlgDocCText : "Text",
+DlgDocCLink : "Link",
+DlgDocCVisited : "Visited Link",
+DlgDocCActive : "Active Link",
+DlgDocMargins : "Page Margins",
+DlgDocMaTop : "Top",
+DlgDocMaLeft : "Left",
+DlgDocMaRight : "Right",
+DlgDocMaBottom : "Bottom",
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
+DlgDocMeDescr : "Document Description",
+DlgDocMeAuthor : "Author",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Preview",
+
+// Templates Dialog
+Templates : "Templates",
+DlgTemplatesTitle : "Content Templates",
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):",
+DlgTemplatesLoading : "Loading templates list. Please wait...",
+DlgTemplatesNoTpl : "(No templates defined)",
+
+// About Dialog
+DlgAboutAboutTab : "About",
+DlgAboutBrowserInfoTab : "Browser Info",
+DlgAboutVersion : "version",
+DlgAboutLicense : "Licensed under the terms of the GNU Lesser General Public License",
+DlgAboutInfo : "For further information go to"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/eo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/eo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/eo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: eo.js
+ * Esperanto language file.
+ *
+ * File Authors:
+ * Tim Morley (timsk at openoffice.org)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "KaÅi Ilobreton",
+ToolbarExpand : "Vidigi Ilojn",
+
+// Toolbar Items and Context Menu
+Save : "Sekurigi",
+NewPage : "Nova PaÄo",
+Preview : "Vidigi Aspekton",
+Cut : "Eltondi",
+Copy : "Kopii",
+Paste : "Interglui",
+PasteText : "Interglui kiel Tekston",
+PasteWord : "Interglui el Word",
+Print : "Presi",
+SelectAll : "Elekti Äion",
+RemoveFormat : "Forigi Formaton",
+InsertLinkLbl : "Ligilo",
+InsertLink : "Enmeti/ÅanÄi Ligilon",
+RemoveLink : "Forigi Ligilon",
+Anchor : "Enmeti/ÅanÄi Ankron",
+InsertImageLbl : "Bildo",
+InsertImage : "Enmeti/ÅanÄi Bildon",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Tabelo",
+InsertTable : "Enmeti/ÅanÄi Tabelon",
+InsertLineLbl : "Horizonta Linio",
+InsertLine : "Enmeti Horizonta Linio",
+InsertSpecialCharLbl: "Speciala Signo",
+InsertSpecialChar : "Enmeti Specialan Signon",
+InsertSmileyLbl : "Mienvinjeto",
+InsertSmiley : "Enmeti Mienvinjeton",
+About : "Pri FCKeditor",
+Bold : "Grasa",
+Italic : "Kursiva",
+Underline : "Substreko",
+StrikeThrough : "Trastreko",
+Subscript : "Subskribo",
+Superscript : "Superskribo",
+LeftJustify : "Maldekstrigi",
+CenterJustify : "Centrigi",
+RightJustify : "Dekstrigi",
+BlockJustify : "Äisrandigi AmbaÅflanke",
+DecreaseIndent : "Malpligrandigi KrommarÄenon",
+IncreaseIndent : "Pligrandigi KrommarÄenon",
+Undo : "Malfari",
+Redo : "Refari",
+NumberedListLbl : "Numera Listo",
+NumberedList : "Enmeti/Forigi Numeran Liston",
+BulletedListLbl : "Bula Listo",
+BulletedList : "Enmeti/Forigi Bulan Liston",
+ShowTableBorders : "Vidigi Borderojn de Tabelo",
+ShowDetails : "Vidigi Detalojn",
+Style : "Stilo",
+FontFormat : "Formato",
+Font : "Tiparo",
+FontSize : "Grando",
+TextColor : "Teksta Koloro",
+BGColor : "Fona Koloro",
+Source : "Fonto",
+Find : "SerÄi",
+Replace : "AnstataÅigi",
+SpellCheck : "Literumada Kontrolilo",
+UniversalKeyboard : "Universala Klavaro",
+
+Form : "Formularo",
+Checkbox : "Markobutono",
+RadioButton : "Radiobutono",
+TextField : "Teksta kampo",
+Textarea : "Teksta Areo",
+HiddenField : "KaÅita Kampo",
+Button : "Butono",
+SelectionField : "Elekta Kampo",
+ImageButton : "Bildbutono",
+
+// Context Menu
+EditLink : "Modifier Ligilon",
+InsertRow : "Enmeti Linion",
+DeleteRows : "Forigi Liniojn",
+InsertColumn : "Enmeti Kolumnon",
+DeleteColumns : "Forigi Kolumnojn",
+InsertCell : "Enmeti Äelon",
+DeleteCells : "Forigi Äelojn",
+MergeCells : "Kunfandi Äelojn",
+SplitCell : "Dividi Äelojn",
+CellProperties : "Atributoj de Äelo",
+TableProperties : "Atributoj de Tabelo",
+ImageProperties : "Atributoj de Bildo",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Ankraj Atributoj",
+ButtonProp : "Butonaj Atributoj",
+CheckboxProp : "Markobutonaj Atributoj",
+HiddenFieldProp : "Atributoj de KaÅita Kampo",
+RadioButtonProp : "Radiobutonaj Atributoj",
+ImageButtonProp : "Bildbutonaj Atributoj",
+TextFieldProp : "Atributoj de Teksta Kampo",
+SelectionFieldProp : "Atributoj de Elekta Kampo",
+TextareaProp : "Atributoj de Teksta Areo",
+FormProp : "Formularaj Atributoj",
+
+FontFormats : "Normala;Formatita;Adreso;Titolo 1;Titolo 2;Titolo 3;Titolo 4;Titolo 5;Titolo 6;Paragrafo (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Traktado de XHTML. Bonvolu pacienci...",
+Done : "Finita",
+PasteWordConfirm : "La algluota teksto Åajnas esti Word-devena. Äu vi volas purigi Äin antaÅ ol interglui?",
+NotCompatiblePaste : "Tiu Äi komando bezonas almenaÅ Internet Explorer 5.5. Äu vi volas daÅrigi sen purigado?",
+UnknownToolbarItem : "Ilobretero nekonata \"%1\"",
+UnknownCommand : "Komandonomo nekonata \"%1\"",
+NotImplemented : "Komando ne ankoraÅ realigita",
+UnknownToolbarSet : "La ilobreto \"%1\" ne ekzistas",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "Akcepti",
+DlgBtnCancel : "Rezigni",
+DlgBtnClose : "Fermi",
+DlgBtnBrowseServer : "Foliumi en la Servilo",
+DlgAdvancedTag : "Speciala",
+DlgOpOther : "<Alia>",
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<DefaÅlta>",
+DlgGenId : "Id",
+DlgGenLangDir : "Skribdirekto",
+DlgGenLangDirLtr : "De maldekstro dekstren (LTR)",
+DlgGenLangDirRtl : "De dekstro maldekstren (RTL)",
+DlgGenLangCode : "Lingva Kodo",
+DlgGenAccessKey : "Fulmoklavo",
+DlgGenName : "Nomo",
+DlgGenTabIndex : "Taba Ordo",
+DlgGenLongDescr : "URL de Longa Priskribo",
+DlgGenClass : "Klasoj de Stilfolioj",
+DlgGenTitle : "Indika Titolo",
+DlgGenContType : "Indika Enhavotipo",
+DlgGenLinkCharset : "Signaro de la Ligita Rimedo",
+DlgGenStyle : "Stilo",
+
+// Image Dialog
+DlgImgTitle : "Atributoj de Bildo",
+DlgImgInfoTab : "Informoj pri Bildo",
+DlgImgBtnUpload : "Sendu al Servilo",
+DlgImgURL : "URL",
+DlgImgUpload : "AlÅuti",
+DlgImgAlt : "AnstataÅiga Teksto",
+DlgImgWidth : "LarÄo",
+DlgImgHeight : "Alto",
+DlgImgLockRatio : "Konservi Proporcion",
+DlgBtnResetSize : "Origina Grando",
+DlgImgBorder : "Bordero",
+DlgImgHSpace : "HSpaco",
+DlgImgVSpace : "VSpaco",
+DlgImgAlign : "Äisrandigo",
+DlgImgAlignLeft : "Maldekstre",
+DlgImgAlignAbsBottom: "Abs Malsupre",
+DlgImgAlignAbsMiddle: "Abs Centre",
+DlgImgAlignBaseline : "Je Malsupro de Teksto",
+DlgImgAlignBottom : "Malsupre",
+DlgImgAlignMiddle : "Centre",
+DlgImgAlignRight : "Dekstre",
+DlgImgAlignTextTop : "Je Supro de Teksto",
+DlgImgAlignTop : "Supre",
+DlgImgPreview : "Vidigi Aspekton",
+DlgImgAlertUrl : "Bonvolu tajpi la URL de la bildo",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Ligilo",
+DlgLnkInfoTab : "Informoj pri la Ligilo",
+DlgLnkTargetTab : "Celo",
+
+DlgLnkType : "Tipo de Ligilo",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ankri en tiu Äi paÄo",
+DlgLnkTypeEMail : "RetpoÅto",
+DlgLnkProto : "Protokolo",
+DlgLnkProtoOther : "<alia>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Elekti Ankron",
+DlgLnkAnchorByName : "Per Ankronomo",
+DlgLnkAnchorById : "Per Elementidentigilo",
+DlgLnkNoAnchors : "<Ne disponeblas ankroj en la dokumento>",
+DlgLnkEMail : "Retadreso",
+DlgLnkEMailSubject : "Temlinio",
+DlgLnkEMailBody : "MesaÄa korpo",
+DlgLnkUpload : "AlÅuti",
+DlgLnkBtnUpload : "Sendi al Servilo",
+
+DlgLnkTarget : "Celo",
+DlgLnkTargetFrame : "<kadro>",
+DlgLnkTargetPopup : "<Åprucfenestro>",
+DlgLnkTargetBlank : "Nova Fenestro (_blank)",
+DlgLnkTargetParent : "Gepatra Fenestro (_parent)",
+DlgLnkTargetSelf : "Sama Fenestro (_self)",
+DlgLnkTargetTop : "Plej Supra Fenestro (_top)",
+DlgLnkTargetFrameName : "Nomo de Kadro",
+DlgLnkPopWinName : "Nomo de Åprucfenestro",
+DlgLnkPopWinFeat : "Atributoj de la Åprucfenestro",
+DlgLnkPopResize : "Grando ÅanÄebla",
+DlgLnkPopLocation : "Adresobreto",
+DlgLnkPopMenu : "Menubreto",
+DlgLnkPopScroll : "Rulumlisteloj",
+DlgLnkPopStatus : "Statobreto",
+DlgLnkPopToolbar : "Ilobreto",
+DlgLnkPopFullScrn : "Tutekrane (IE)",
+DlgLnkPopDependent : "Dependa (Netscape)",
+DlgLnkPopWidth : "LarÄo",
+DlgLnkPopHeight : "Alto",
+DlgLnkPopLeft : "Pozicio de Maldekstro",
+DlgLnkPopTop : "Pozicio de Supro",
+
+DlnLnkMsgNoUrl : "Bonvolu entajpi la URL-on",
+DlnLnkMsgNoEMail : "Bonvolu entajpi la retadreson",
+DlnLnkMsgNoAnchor : "Bonvolu elekti ankron",
+
+// Color Dialog
+DlgColorTitle : "Elekti",
+DlgColorBtnClear : "Forigi",
+DlgColorHighlight : "Emfazi",
+DlgColorSelected : "Elektita",
+
+// Smiley Dialog
+DlgSmileyTitle : "Enmeti Mienvinjeton",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Enmeti Specialan Signon",
+
+// Table Dialog
+DlgTableTitle : "Atributoj de Tabelo",
+DlgTableRows : "Linioj",
+DlgTableColumns : "Kolumnoj",
+DlgTableBorder : "Bordero",
+DlgTableAlign : "Äisrandigo",
+DlgTableAlignNotSet : "<DefaÅlte>",
+DlgTableAlignLeft : "Maldekstre",
+DlgTableAlignCenter : "Centre",
+DlgTableAlignRight : "Dekstre",
+DlgTableWidth : "LarÄo",
+DlgTableWidthPx : "Bitbilderoj",
+DlgTableWidthPc : "elcentoj",
+DlgTableHeight : "Alto",
+DlgTableCellSpace : "Interspacigo de Äeloj",
+DlgTableCellPad : "ÄirkaÅenhava Plenigado",
+DlgTableCaption : "Titolo",
+
+// Table Cell Dialog
+DlgCellTitle : "Atributoj de Celo",
+DlgCellWidth : "LarÄo",
+DlgCellWidthPx : "bitbilderoj",
+DlgCellWidthPc : "elcentoj",
+DlgCellHeight : "Alto",
+DlgCellWordWrap : "Linifaldo",
+DlgCellWordWrapNotSet : "<DefaÅlte>",
+DlgCellWordWrapYes : "Jes",
+DlgCellWordWrapNo : "Ne",
+DlgCellHorAlign : "Horizonta Äisrandigo",
+DlgCellHorAlignNotSet : "<DefaÅlte>",
+DlgCellHorAlignLeft : "Maldekstre",
+DlgCellHorAlignCenter : "Centre",
+DlgCellHorAlignRight: "Dekstre",
+DlgCellVerAlign : "Vertikala Äisrandigo",
+DlgCellVerAlignNotSet : "<DefaÅlte>",
+DlgCellVerAlignTop : "Supre",
+DlgCellVerAlignMiddle : "Centre",
+DlgCellVerAlignBottom : "Malsupre",
+DlgCellVerAlignBaseline : "Je Malsupro de Teksto",
+DlgCellRowSpan : "Linioj Kunfanditaj",
+DlgCellCollSpan : "Kolumnoj Kunfanditaj",
+DlgCellBackColor : "Fono",
+DlgCellBorderColor : "Bordero",
+DlgCellBtnSelect : "Elekti...",
+
+// Find Dialog
+DlgFindTitle : "SerÄi",
+DlgFindFindBtn : "SerÄi",
+DlgFindNotFoundMsg : "La celteksto ne estas trovita.",
+
+// Replace Dialog
+DlgReplaceTitle : "AnstataÅigi",
+DlgReplaceFindLbl : "SerÄi:",
+DlgReplaceReplaceLbl : "AnstataÅigi per:",
+DlgReplaceCaseChk : "Kongruigi Usklecon",
+DlgReplaceReplaceBtn : "AnstataÅigi",
+DlgReplaceReplAllBtn : "AnstataÅigi Äiun",
+DlgReplaceWordChk : "Tuta Vorto",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras intergluajn operaciojn. Bonvolu uzi la klavaron por tio (ctrl-V).",
+PasteErrorCut : "La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras eltondajn operaciojn. Bonvolu uzi la klavaron por tio (ctrl-X).",
+PasteErrorCopy : "La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras kopiajn operaciojn. Bonvolu uzi la klavaron por tio (ctrl-C).",
+
+PasteAsText : "Interglui kiel Tekston",
+PasteFromWord : "Interglui el Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "AÅtomata",
+ColorMoreColors : "Pli da Koloroj...",
+
+// Document Properties
+DocProps : "Dokumentaj Atributoj",
+
+// Anchor Dialog
+DlgAnchorTitle : "Ankraj Atributoj",
+DlgAnchorName : "Ankra Nomo",
+DlgAnchorErrorName : "Bv tajpi la ankran nomon",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Ne trovita en la vortaro",
+DlgSpellChangeTo : "ÅanÄi al",
+DlgSpellBtnIgnore : "Malatenti",
+DlgSpellBtnIgnoreAll : "Malatenti Äiun",
+DlgSpellBtnReplace : "AnstataÅigi",
+DlgSpellBtnReplaceAll : "AnstataÅigi Äiun",
+DlgSpellBtnUndo : "Malfari",
+DlgSpellNoSuggestions : "- Neniu propono -",
+DlgSpellProgress : "Literumkontrolado daÅras...",
+DlgSpellNoMispell : "Literumkontrolado finita: neniu fuÅo trovita",
+DlgSpellNoChanges : "Literumkontrolado finita: neniu vorto ÅanÄita",
+DlgSpellOneChange : "Literumkontrolado finita: unu vorto ÅanÄita",
+DlgSpellManyChanges : "Literumkontrolado finita: %1 vortoj ÅanÄitaj",
+
+IeSpellDownload : "Literumada Kontrolilo ne instalita. Äu vi volas elÅuti Äin nun?",
+
+// Button Dialog
+DlgButtonText : "Teksto (Valoro)",
+DlgButtonType : "Tipo",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nomo",
+DlgCheckboxValue : "Valoro",
+DlgCheckboxSelected : "Elektita",
+
+// Form Dialog
+DlgFormName : "Nomo",
+DlgFormAction : "Ago",
+DlgFormMethod : "Metodo",
+
+// Select Field Dialog
+DlgSelectName : "Nomo",
+DlgSelectValue : "Valoro",
+DlgSelectSize : "Grando",
+DlgSelectLines : "Linioj",
+DlgSelectChkMulti : "Permesi Plurajn Elektojn",
+DlgSelectOpAvail : "Elektoj Disponeblaj",
+DlgSelectOpText : "Teksto",
+DlgSelectOpValue : "Valoro",
+DlgSelectBtnAdd : "Aldoni",
+DlgSelectBtnModify : "Modifi",
+DlgSelectBtnUp : "Supren",
+DlgSelectBtnDown : "Malsupren",
+DlgSelectBtnSetValue : "Agordi kiel Elektitan Valoron",
+DlgSelectBtnDelete : "Forigi",
+
+// Textarea Dialog
+DlgTextareaName : "Nomo",
+DlgTextareaCols : "Kolumnoj",
+DlgTextareaRows : "Vicoj",
+
+// Text Field Dialog
+DlgTextName : "Nomo",
+DlgTextValue : "Valoro",
+DlgTextCharWidth : "SignolarÄo",
+DlgTextMaxChars : "Maksimuma Nombro da Signoj",
+DlgTextType : "Tipo",
+DlgTextTypeText : "Teksto",
+DlgTextTypePass : "Pasvorto",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nomo",
+DlgHiddenValue : "Valoro",
+
+// Bulleted List Dialog
+BulletedListProp : "Atributoj de Bula Listo",
+NumberedListProp : "Atributoj de Numera Listo",
+DlgLstType : "Tipo",
+DlgLstTypeCircle : "Cirklo",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Kvadrato",
+DlgLstTypeNumbers : "Ciferoj (1, 2, 3)",
+DlgLstTypeLCase : "Minusklaj Literoj (a, b, c)",
+DlgLstTypeUCase : "Majusklaj Literoj (A, B, C)",
+DlgLstTypeSRoman : "Malgrandaj Romanaj Ciferoj (i, ii, iii)",
+DlgLstTypeLRoman : "Grandaj Romanaj Ciferoj (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Äeneralaĵoj",
+DlgDocBackTab : "Fono",
+DlgDocColorsTab : "Koloroj kaj MarÄenoj",
+DlgDocMetaTab : "Metadatumoj",
+
+DlgDocPageTitle : "PaÄotitolo",
+DlgDocLangDir : "Skribdirekto de la Lingvo",
+DlgDocLangDirLTR : "De maldekstro dekstren (LTR)",
+DlgDocLangDirRTL : "De dekstro maldekstren (LTR)",
+DlgDocLangCode : "Lingvokodo",
+DlgDocCharSet : "Signara Kodo",
+DlgDocCharSetOther : "Alia Signara Kodo",
+
+DlgDocDocType : "Dokumenta Tipo",
+DlgDocDocTypeOther : "Alia Dokumenta Tipo",
+DlgDocIncXHTML : "Inkluzivi XHTML Deklaroj",
+DlgDocBgColor : "Fona Koloro",
+DlgDocBgImage : "URL de Fona Bildo",
+DlgDocBgNoScroll : "Neruluma Fono",
+DlgDocCText : "Teksto",
+DlgDocCLink : "Ligilo",
+DlgDocCVisited : "Vizitita Ligilo",
+DlgDocCActive : "Aktiva Ligilo",
+DlgDocMargins : "PaÄaj MarÄenoj",
+DlgDocMaTop : "Supra",
+DlgDocMaLeft : "Maldekstra",
+DlgDocMaRight : "Dekstra",
+DlgDocMaBottom : "Malsupra",
+DlgDocMeIndex : "Ålosilvortoj de la Dokumento (apartigita de komoj)",
+DlgDocMeDescr : "Dokumenta Priskribo",
+DlgDocMeAuthor : "Verkinto",
+DlgDocMeCopy : "Kopirajto",
+DlgDocPreview : "Aspekto",
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "Pri",
+DlgAboutBrowserInfoTab : "Informoj pri TTT-legilo",
+DlgAboutVersion : "versio",
+DlgAboutLicense : "Disdonata laÅ la GNU Lesser General Public License",
+DlgAboutInfo : "Por pli da informoj, vizitu"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/es.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/es.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/es.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: es.js
+ * Spanish language file.
+ *
+ * File Authors:
+ * Gabriel Schillaci (internetbug at users.sourceforge.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Contraer Barra",
+ToolbarExpand : "Expandir Barra",
+
+// Toolbar Items and Context Menu
+Save : "Guardar",
+NewPage : "Nueva Página",
+Preview : "Vista Previa",
+Cut : "Cortar",
+Copy : "Copiar",
+Paste : "Pegar",
+PasteText : "Pegar como texto plano",
+PasteWord : "Pegar desde Word",
+Print : "Imprimir",
+SelectAll : "Seleccionar Todo",
+RemoveFormat : "Eliminar Formato",
+InsertLinkLbl : "VÃnculo",
+InsertLink : "Insertar/Editar VÃnculo",
+RemoveLink : "Eliminar VÃnculo",
+Anchor : "Referencia",
+InsertImageLbl : "Imagen",
+InsertImage : "Insertar/Editar Imagen",
+InsertFlashLbl : "Flash",
+InsertFlash : "Insertar/Editar Flash",
+InsertTableLbl : "Tabla",
+InsertTable : "Insertar/Editar Tabla",
+InsertLineLbl : "LÃnea",
+InsertLine : "Insertar LÃnea Horizontal",
+InsertSpecialCharLbl: "Caracter Especial",
+InsertSpecialChar : "Insertar Caracter Especial",
+InsertSmileyLbl : "Emoticons",
+InsertSmiley : "Insertar Emoticons",
+About : "Acerca de FCKeditor",
+Bold : "Negrita",
+Italic : "Cursiva",
+Underline : "Subrayado",
+StrikeThrough : "Tachado",
+Subscript : "SubÃndice",
+Superscript : "SuperÃndice",
+LeftJustify : "Alinear a Izquierda",
+CenterJustify : "Centrar",
+RightJustify : "Alinear a Derecha",
+BlockJustify : "Justificado",
+DecreaseIndent : "Disminuir SangrÃa",
+IncreaseIndent : "Aumentar SangrÃa",
+Undo : "Deshacer",
+Redo : "Rehacer",
+NumberedListLbl : "Numeración",
+NumberedList : "Insertar/Eliminar Numeración",
+BulletedListLbl : "Viñetas",
+BulletedList : "Insertar/Eliminar Viñetas",
+ShowTableBorders : "Mostrar Bordes de Tablas",
+ShowDetails : "Mostrar saltos de Párrafo",
+Style : "Estilo",
+FontFormat : "Formato",
+Font : "Fuente",
+FontSize : "Tamaño",
+TextColor : "Color de Texto",
+BGColor : "Color de Fondo",
+Source : "Fuente HTML",
+Find : "Buscar",
+Replace : "Reemplazar",
+SpellCheck : "OrtografÃa",
+UniversalKeyboard : "Teclado Universal",
+
+Form : "Formulario",
+Checkbox : "Casilla de Verificación",
+RadioButton : "Botones de Radio",
+TextField : "Campo de Texto",
+Textarea : "Area de Texto",
+HiddenField : "Campo Oculto",
+Button : "Botón",
+SelectionField : "Campo de Selección",
+ImageButton : "Botón Imagen",
+
+// Context Menu
+EditLink : "Editar VÃnculo",
+InsertRow : "Insertar Fila",
+DeleteRows : "Eliminar Filas",
+InsertColumn : "Insertar Columna",
+DeleteColumns : "Eliminar Columnas",
+InsertCell : "Insertar Celda",
+DeleteCells : "Eliminar Celdas",
+MergeCells : "Combinar Celdas",
+SplitCell : "Dividir Celda",
+CellProperties : "Propiedades de Celda",
+TableProperties : "Propiedades de Tabla",
+ImageProperties : "Propiedades de Imagen",
+FlashProperties : "Propiedades de Flash",
+
+AnchorProp : "Propiedades de Referencia",
+ButtonProp : "Propiedades de Botón",
+CheckboxProp : "Propiedades de Casilla",
+HiddenFieldProp : "Propiedades de Campo Oculto",
+RadioButtonProp : "Propiedades de Botón de Radio",
+ImageButtonProp : "Propiedades de Botón de Imagen",
+TextFieldProp : "Propiedades de Campo de Texto",
+SelectionFieldProp : "Propiedades de Campo de Selección",
+TextareaProp : "Propiedades de Area de Texto",
+FormProp : "Propiedades de Formulario",
+
+FontFormats : "Normal;Formateado;Direccion;Encabezado 1;Encabezado 2;Encabezado 3;Encabezado 4;Encabezado 5;Encabezado 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Procesando XHTML. Por favor, espere...",
+Done : "Hecho",
+PasteWordConfirm : "El texto que desea parece provenir de Word. Desea depurarlo antes de pegarlo?",
+NotCompatiblePaste : "Este comando está disponible sólo para Internet Explorer version 5.5 or superior. Desea pegar sin depurar?",
+UnknownToolbarItem : "Item de barra desconocido \"%1\"",
+UnknownCommand : "Nombre de comando desconocido \"%1\"",
+NotImplemented : "Comando no implementado",
+UnknownToolbarSet : "Nombre de barra \"%1\" no definido",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancelar",
+DlgBtnClose : "Cerrar",
+DlgBtnBrowseServer : "Ver Servidor",
+DlgAdvancedTag : "Avanzado",
+DlgOpOther : "<Otro>",
+DlgInfoTab : "Información",
+DlgAlertUrl : "Inserte el URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<No definido>",
+DlgGenId : "Id",
+DlgGenLangDir : "Orientación de idioma",
+DlgGenLangDirLtr : "Izquierda a Derecha (LTR)",
+DlgGenLangDirRtl : "Derecha a Izquierda (RTL)",
+DlgGenLangCode : "Código de idioma",
+DlgGenAccessKey : "Clave de Acceso",
+DlgGenName : "Nombre",
+DlgGenTabIndex : "Indice de tabulación",
+DlgGenLongDescr : "Descripción larga URL",
+DlgGenClass : "Clases de hojas de estilo",
+DlgGenTitle : "TÃtulo",
+DlgGenContType : "Tipo de Contenido",
+DlgGenLinkCharset : "Fuente de caracteres vinculado",
+DlgGenStyle : "Estilo",
+
+// Image Dialog
+DlgImgTitle : "Propiedades de Imagen",
+DlgImgInfoTab : "Información de Imagen",
+DlgImgBtnUpload : "Enviar al Servidor",
+DlgImgURL : "URL",
+DlgImgUpload : "Cargar",
+DlgImgAlt : "Texto Alternativo",
+DlgImgWidth : "Anchura",
+DlgImgHeight : "Altura",
+DlgImgLockRatio : "Proporcional",
+DlgBtnResetSize : "Tamaño Original",
+DlgImgBorder : "Borde",
+DlgImgHSpace : "Esp.Horiz",
+DlgImgVSpace : "Esp.Vert",
+DlgImgAlign : "Alineación",
+DlgImgAlignLeft : "Izquierda",
+DlgImgAlignAbsBottom: "Abs inferior",
+DlgImgAlignAbsMiddle: "Abs centro",
+DlgImgAlignBaseline : "LÃnea de base",
+DlgImgAlignBottom : "Pie",
+DlgImgAlignMiddle : "Centro",
+DlgImgAlignRight : "Derecha",
+DlgImgAlignTextTop : "Tope del texto",
+DlgImgAlignTop : "Tope",
+DlgImgPreview : "Vista Previa",
+DlgImgAlertUrl : "Por favor tipee el URL de la imagen",
+DlgImgLinkTab : "VÃnculo",
+
+// Flash Dialog
+DlgFlashTitle : "Propiedades de Flash",
+DlgFlashChkPlay : "Autoejecución",
+DlgFlashChkLoop : "Repetir",
+DlgFlashChkMenu : "Activar Menú Flash",
+DlgFlashScale : "Escala",
+DlgFlashScaleAll : "Mostrar todo",
+DlgFlashScaleNoBorder : "Sin Borde",
+DlgFlashScaleFit : "Ajustado",
+
+// Link Dialog
+DlgLnkWindowTitle : "VÃnculo",
+DlgLnkInfoTab : "Información de VÃnculo",
+DlgLnkTargetTab : "Destino",
+
+DlgLnkType : "Tipo de vÃnculo",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Referencia en esta página",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocolo",
+DlgLnkProtoOther : "<otro>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Seleccionar una referencia",
+DlgLnkAnchorByName : "Por Nombre de Referencia",
+DlgLnkAnchorById : "Por ID de elemento",
+DlgLnkNoAnchors : "<No hay referencias disponibles en el documento>",
+DlgLnkEMail : "Dirección de E-Mail",
+DlgLnkEMailSubject : "TÃtulo del Mensaje",
+DlgLnkEMailBody : "Cuerpo del Mensaje",
+DlgLnkUpload : "Cargar",
+DlgLnkBtnUpload : "Enviar al Servidor",
+
+DlgLnkTarget : "Destino",
+DlgLnkTargetFrame : "<marco>",
+DlgLnkTargetPopup : "<ventana emergente>",
+DlgLnkTargetBlank : "Nueva Ventana(_blank)",
+DlgLnkTargetParent : "Ventana Padre (_parent)",
+DlgLnkTargetSelf : "Misma Ventana (_self)",
+DlgLnkTargetTop : "Ventana primaria (_top)",
+DlgLnkTargetFrameName : "Nombre del Marco Destino",
+DlgLnkPopWinName : "Nombre de Ventana Emergente",
+DlgLnkPopWinFeat : "CaracterÃsticas de Ventana Emergente",
+DlgLnkPopResize : "Ajustable",
+DlgLnkPopLocation : "Barra de ubicación",
+DlgLnkPopMenu : "Barra de Menú",
+DlgLnkPopScroll : "Barras de desplazamiento",
+DlgLnkPopStatus : "Barra de Estado",
+DlgLnkPopToolbar : "Barra de Herramientas",
+DlgLnkPopFullScrn : "Pantalla Completa (IE)",
+DlgLnkPopDependent : "Dependiente (Netscape)",
+DlgLnkPopWidth : "Anchura",
+DlgLnkPopHeight : "Altura",
+DlgLnkPopLeft : "Posición Izquierda",
+DlgLnkPopTop : "Posición Derecha",
+
+DlnLnkMsgNoUrl : "Por favor tipee el vÃnculo URL",
+DlnLnkMsgNoEMail : "Por favor tipee la dirección de e-mail",
+DlnLnkMsgNoAnchor : "Por favor seleccione una referencia",
+
+// Color Dialog
+DlgColorTitle : "Seleccionar Color",
+DlgColorBtnClear : "Ninguno",
+DlgColorHighlight : "Resaltado",
+DlgColorSelected : "Seleccionado",
+
+// Smiley Dialog
+DlgSmileyTitle : "Insertar un Emoticon",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Seleccione un caracter especial",
+
+// Table Dialog
+DlgTableTitle : "Propiedades de Tabla",
+DlgTableRows : "Filas",
+DlgTableColumns : "Columnas",
+DlgTableBorder : "Tamaño de Borde",
+DlgTableAlign : "Alineación",
+DlgTableAlignNotSet : "<No establecido>",
+DlgTableAlignLeft : "Izquierda",
+DlgTableAlignCenter : "Centrado",
+DlgTableAlignRight : "Derecha",
+DlgTableWidth : "Anchura",
+DlgTableWidthPx : "pixeles",
+DlgTableWidthPc : "porcentaje",
+DlgTableHeight : "Altura",
+DlgTableCellSpace : "Esp. e/celdas",
+DlgTableCellPad : "Esp. interior",
+DlgTableCaption : "TÃtulo",
+
+// Table Cell Dialog
+DlgCellTitle : "Propiedades de Celda",
+DlgCellWidth : "Anchura",
+DlgCellWidthPx : "pixeles",
+DlgCellWidthPc : "porcentaje",
+DlgCellHeight : "Altura",
+DlgCellWordWrap : "Cortar LÃnea",
+DlgCellWordWrapNotSet : "<No establecido>",
+DlgCellWordWrapYes : "Si",
+DlgCellWordWrapNo : "No",
+DlgCellHorAlign : "Alineación Horizontal",
+DlgCellHorAlignNotSet : "<No establecido>",
+DlgCellHorAlignLeft : "Izquierda",
+DlgCellHorAlignCenter : "Centrado",
+DlgCellHorAlignRight: "Derecha",
+DlgCellVerAlign : "Alineación Vertical",
+DlgCellVerAlignNotSet : "<Not establecido>",
+DlgCellVerAlignTop : "Tope",
+DlgCellVerAlignMiddle : "Medio",
+DlgCellVerAlignBottom : "ie",
+DlgCellVerAlignBaseline : "LÃnea de Base",
+DlgCellRowSpan : "Abarcar Filas",
+DlgCellCollSpan : "Abarcar Columnas",
+DlgCellBackColor : "Color de Fondo",
+DlgCellBorderColor : "Color de Borde",
+DlgCellBtnSelect : "Seleccione...",
+
+// Find Dialog
+DlgFindTitle : "Buscar",
+DlgFindFindBtn : "Buscar",
+DlgFindNotFoundMsg : "El texto especificado no ha sido encontrado.",
+
+// Replace Dialog
+DlgReplaceTitle : "Reemplazar",
+DlgReplaceFindLbl : "Texto a buscar:",
+DlgReplaceReplaceLbl : "Reemplazar con:",
+DlgReplaceCaseChk : "Coincidir may/min",
+DlgReplaceReplaceBtn : "Reemplazar",
+DlgReplaceReplAllBtn : "Reemplazar Todo",
+DlgReplaceWordChk : "Coincidir toda la palabra",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de pegado. Por favor use el teclado (Ctrl+V).",
+PasteErrorCut : "La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de cortado. Por favor use el teclado (Ctrl+X).",
+PasteErrorCopy : "La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de copiado. Por favor use el teclado (Ctrl+C).",
+
+PasteAsText : "Pegar como Texto Plano",
+PasteFromWord : "Pegar desde Word",
+
+DlgPasteMsg2 : "Por favor pegue dentro del cuadro utilizando el teclado (<STRONG>Ctrl+V</STRONG>); luego presione <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorar definiciones de fuentes",
+DlgPasteRemoveStyles : "Remover definiciones de estilo",
+DlgPasteCleanBox : "Clean Up Box",
+
+
+// Color Picker
+ColorAutomatic : "Automático",
+ColorMoreColors : "Más Colores...",
+
+// Document Properties
+DocProps : "Propiedades del Documento",
+
+// Anchor Dialog
+DlgAnchorTitle : "Propiedades de la Referencia",
+DlgAnchorName : "Nombre de la Referencia",
+DlgAnchorErrorName : "Por favor, complete el nombre de la Referencia",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "No se encuentra en el Diccionario",
+DlgSpellChangeTo : "Cambiar a",
+DlgSpellBtnIgnore : "Ignorar",
+DlgSpellBtnIgnoreAll : "Ignorar Todo",
+DlgSpellBtnReplace : "Reemplazar",
+DlgSpellBtnReplaceAll : "Reemplazar Todo",
+DlgSpellBtnUndo : "Deshacer",
+DlgSpellNoSuggestions : "- No hay sugerencias -",
+DlgSpellProgress : "Control de OrtografÃa en progreso...",
+DlgSpellNoMispell : "Control finalizado: no se encontraron errores",
+DlgSpellNoChanges : "Control finalizado: no se ha cambiado ninguna palabra",
+DlgSpellOneChange : "Control finalizado: se ha cambiado una palabra",
+DlgSpellManyChanges : "Control finalizado: se ha cambiado %1 palabras",
+
+IeSpellDownload : "Módulo de Control de OrtografÃa no instalado. ¿Desea descargarlo ahora?",
+
+// Button Dialog
+DlgButtonText : "Texto (Valor)",
+DlgButtonType : "Tipo",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nombre",
+DlgCheckboxValue : "Valor",
+DlgCheckboxSelected : "Seleccionado",
+
+// Form Dialog
+DlgFormName : "Nombre",
+DlgFormAction : "Acción",
+DlgFormMethod : "Método",
+
+// Select Field Dialog
+DlgSelectName : "Nombre",
+DlgSelectValue : "Valor",
+DlgSelectSize : "Tamaño",
+DlgSelectLines : "Lineas",
+DlgSelectChkMulti : "Permitir múltiple selección",
+DlgSelectOpAvail : "Opciones disponibles",
+DlgSelectOpText : "Texto",
+DlgSelectOpValue : "Valor",
+DlgSelectBtnAdd : "Agregar",
+DlgSelectBtnModify : "Modificar",
+DlgSelectBtnUp : "Subir",
+DlgSelectBtnDown : "Bajar",
+DlgSelectBtnSetValue : "Establecer como predeterminado",
+DlgSelectBtnDelete : "Eliminar",
+
+// Textarea Dialog
+DlgTextareaName : "Nombre",
+DlgTextareaCols : "Columnas",
+DlgTextareaRows : "Filas",
+
+// Text Field Dialog
+DlgTextName : "Nombre",
+DlgTextValue : "Valor",
+DlgTextCharWidth : "Caracteres de ancho",
+DlgTextMaxChars : "Máximo caracteres",
+DlgTextType : "Tipo",
+DlgTextTypeText : "Texto",
+DlgTextTypePass : "Contraseña",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nombre",
+DlgHiddenValue : "Valor",
+
+// Bulleted List Dialog
+BulletedListProp : "Propiedades de Viñetas",
+NumberedListProp : "Propiedades de Numeraciones",
+DlgLstType : "Tipo",
+DlgLstTypeCircle : "CÃrculo",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Cuadrado",
+DlgLstTypeNumbers : "Números (1, 2, 3)",
+DlgLstTypeLCase : "letras en minúsculas (a, b, c)",
+DlgLstTypeUCase : "letras en mayúsculas (A, B, C)",
+DlgLstTypeSRoman : "Números Romanos (i, ii, iii)",
+DlgLstTypeLRoman : "Números Romanos (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General",
+DlgDocBackTab : "Fondo",
+DlgDocColorsTab : "Colores y Márgenes",
+DlgDocMetaTab : "Meta Información",
+
+DlgDocPageTitle : "TÃtulo de Página",
+DlgDocLangDir : "Orientación de idioma",
+DlgDocLangDirLTR : "Izq. a Derecha (LTR)",
+DlgDocLangDirRTL : "Der. a Izquierda (RTL)",
+DlgDocLangCode : "Código de Idioma",
+DlgDocCharSet : "Codif. de Conjunto de Caracteres",
+DlgDocCharSetOther : "Otra Codificación",
+
+DlgDocDocType : "Encabezado de Tipo de Documento",
+DlgDocDocTypeOther : "Otro Encabezado",
+DlgDocIncXHTML : "Incluir Declaraciones XHTML",
+DlgDocBgColor : "Color de Fondo",
+DlgDocBgImage : "URL de Imagen de Fondo",
+DlgDocBgNoScroll : "Fondo sin rolido",
+DlgDocCText : "Texto",
+DlgDocCLink : "VÃnculo",
+DlgDocCVisited : "VÃnculo Visitado",
+DlgDocCActive : "VÃnculo Activo",
+DlgDocMargins : "Márgenes de Página",
+DlgDocMaTop : "Tope",
+DlgDocMaLeft : "Izquierda",
+DlgDocMaRight : "Derecha",
+DlgDocMaBottom : "Pie",
+DlgDocMeIndex : "Claves de indexación del Documento (separados por comas)",
+DlgDocMeDescr : "Descripción del Documento",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Vista Previa",
+
+// Templates Dialog
+Templates : "Plantillas",
+DlgTemplatesTitle : "Contenido de Plantillas",
+DlgTemplatesSelMsg : "Por favor selecciona la plantilla a abrir en el editor<br>(el contenido actual se perderá):",
+DlgTemplatesLoading : "Cargando lista de Plantillas. Por favor, aguarde...",
+DlgTemplatesNoTpl : "(No hay plantillas definidas)",
+
+// About Dialog
+DlgAboutAboutTab : "Acerca de",
+DlgAboutBrowserInfoTab : "Información de Navegador",
+DlgAboutVersion : "versión",
+DlgAboutLicense : "Licenciado bajo los términos de GNU Lesser General Public License",
+DlgAboutInfo : "Para mayor información por favor dirigirse a"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/et.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/et.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/et.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: et.js
+ * Estonian language file.
+ *
+ * File Authors:
+ * Kristjan Kivikangur (kristjan at ttrk.ee)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Voldi tööriistariba",
+ToolbarExpand : "Laienda tööriistariba",
+
+// Toolbar Items and Context Menu
+Save : "Salvesta",
+NewPage : "Uus leht",
+Preview : "Eelvaade",
+Cut : "Lõika",
+Copy : "Kopeeri",
+Paste : "Kleebi",
+PasteText : "Kleebi tavalise tekstina",
+PasteWord : "Kleebi Wordist",
+Print : "Prindi",
+SelectAll : "Vali kõik",
+RemoveFormat : "Eemalda vorming",
+InsertLinkLbl : "Link",
+InsertLink : "Sisesta/Muuda link",
+RemoveLink : "Eemalda link",
+Anchor : "Insert/Edit Anchor", //MISSING
+InsertImageLbl : "Pilt",
+InsertImage : "Sisesta/Muuda pilt",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Tabel",
+InsertTable : "Sisesta/Muuda tabel",
+InsertLineLbl : "Joon",
+InsertLine : "Sisesta horisontaaljoon",
+InsertSpecialCharLbl: "Erimärgid",
+InsertSpecialChar : "Sisesta erimärk",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Sisesta Smiley",
+About : "FCKeditor kohta",
+Bold : "Paks",
+Italic : "Kursiiv",
+Underline : "Allajoonitud",
+StrikeThrough : "Läbijoonitud",
+Subscript : "Allindeks",
+Superscript : "Ãlaindeks",
+LeftJustify : "Vasakjoondus",
+CenterJustify : "Keskjoondus",
+RightJustify : "Paremjoondus",
+BlockJustify : "Rööpjoondus",
+DecreaseIndent : "Vähenda taanet",
+IncreaseIndent : "Suurenda taanet",
+Undo : "Võta tagasi",
+Redo : "Tee uuesti",
+NumberedListLbl : "Nummerdatud loetelu",
+NumberedList : "Sisesta/Eemalda nummerdatud loetelu",
+BulletedListLbl : "Täpitud loetelu",
+BulletedList : "Sisesta/Eemalda täpitud loetelu",
+ShowTableBorders : "Nöita tabeli jooni",
+ShowDetails : "Näita üksikasju",
+Style : "Laad",
+FontFormat : "Vorming",
+Font : "Font",
+FontSize : "Suurus",
+TextColor : "Teksti värv",
+BGColor : "Tausta värv",
+Source : "Lähtekood",
+Find : "Otsi",
+Replace : "Asenda",
+SpellCheck : "Check Spell", //MISSING
+UniversalKeyboard : "Universal Keyboard", //MISSING
+
+Form : "Form", //MISSING
+Checkbox : "Checkbox", //MISSING
+RadioButton : "Radio Button", //MISSING
+TextField : "Text Field", //MISSING
+Textarea : "Textarea", //MISSING
+HiddenField : "Hidden Field", //MISSING
+Button : "Button", //MISSING
+SelectionField : "Selection Field", //MISSING
+ImageButton : "Image Button", //MISSING
+
+// Context Menu
+EditLink : "Muuda linki",
+InsertRow : "Lisa rida",
+DeleteRows : "Eemalda ridu",
+InsertColumn : "Lisa veerg",
+DeleteColumns : "Eemalda veerud",
+InsertCell : "Lisa lahter",
+DeleteCells : "Eemalda lahtrid",
+MergeCells : "Ãhenda lahtrid",
+SplitCell : "Lahuta lahtrid",
+CellProperties : "Lahtri atribuudid",
+TableProperties : "Tabeli atribuudid",
+ImageProperties : "Pildi atribuudid",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Anchor Properties", //MISSING
+ButtonProp : "Button Properties", //MISSING
+CheckboxProp : "Checkbox Properties", //MISSING
+HiddenFieldProp : "Hidden Field Properties", //MISSING
+RadioButtonProp : "Radio Button Properties", //MISSING
+ImageButtonProp : "Image Button Properties", //MISSING
+TextFieldProp : "Text Field Properties", //MISSING
+SelectionFieldProp : "Selection Field Properties", //MISSING
+TextareaProp : "Textarea Properties", //MISSING
+FormProp : "Form Properties", //MISSING
+
+FontFormats : "Tavaline;Vormindatud;Aadress;Pealkiri 1;Pealkiri 2;Pealkiri 3;Pealkiri 4;Pealkiri 5;Pealkiri 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Töötlen XHTML. Palun oota...",
+Done : "Tehtud",
+PasteWordConfirm : "Tekst, mida soovid lisada paistab pärinevat Wordist. Kas soovid seda enne kleepimist puhastada?",
+NotCompatiblePaste : "See käsk on saadaval ainult Internet Explorer versioon 5.5 või rohkem puhul. Kas soovid kleepida ilma puhastamata?",
+UnknownToolbarItem : "Tundmatu tööriistariba üksus \"%1\"",
+UnknownCommand : "Tundmatu käsunimi \"%1\"",
+NotImplemented : "Käsku ei täidetud",
+UnknownToolbarSet : "Tööriistariba \"%1\" ei eksisteeri",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Loobu",
+DlgBtnClose : "Sule",
+DlgBtnBrowseServer : "Browse Server", //MISSING
+DlgAdvancedTag : "Täpsemalt",
+DlgOpOther : "<Other>", //MISSING
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<määramata>",
+DlgGenId : "Id",
+DlgGenLangDir : "Keele suund",
+DlgGenLangDirLtr : "Vasakult paremale (LTR)",
+DlgGenLangDirRtl : "Paremalt vasakule (RTL)",
+DlgGenLangCode : "Keele kood",
+DlgGenAccessKey : "Juurdepääsu võti",
+DlgGenName : "Nimi",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Pikk kirjeldus URL",
+DlgGenClass : "Stiilistiku klassid",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Laad",
+
+// Image Dialog
+DlgImgTitle : "Pildi atribuudid",
+DlgImgInfoTab : "Pildi info",
+DlgImgBtnUpload : "Saada serverile",
+DlgImgURL : "URL",
+DlgImgUpload : "Lae üles",
+DlgImgAlt : "Alternatiivne tekst",
+DlgImgWidth : "Laius",
+DlgImgHeight : "Kõrgus",
+DlgImgLockRatio : "Lukusta kuvasuhe",
+DlgBtnResetSize : "Lähtesta suurus",
+DlgImgBorder : "Joon",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Joondus",
+DlgImgAlignLeft : "Vasak",
+DlgImgAlignAbsBottom: "Abs alla",
+DlgImgAlignAbsMiddle: "Abs keskele",
+DlgImgAlignBaseline : "Baasjoonele",
+DlgImgAlignBottom : "Alla",
+DlgImgAlignMiddle : "Keskele",
+DlgImgAlignRight : "Paremale",
+DlgImgAlignTextTop : "Teksti üles",
+DlgImgAlignTop : "Ãles",
+DlgImgPreview : "Eelvaade",
+DlgImgAlertUrl : "Palun kirjuta pildi URL",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Lingi info",
+DlgLnkTargetTab : "Sihtkoht",
+
+DlgLnkType : "Lingi tüüp",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ankur sellel lehel",
+DlgLnkTypeEMail : "E-Post",
+DlgLnkProto : "Protokoll",
+DlgLnkProtoOther : "<muu>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Vali ankur",
+DlgLnkAnchorByName : "Ankru nime järgi",
+DlgLnkAnchorById : "Elemendi Id järgi",
+DlgLnkNoAnchors : "<Selles dokumendis ei ole ankruid>",
+DlgLnkEMail : "E-Posti aadress",
+DlgLnkEMailSubject : "Sõnumi teema",
+DlgLnkEMailBody : "Sõnumi tekst",
+DlgLnkUpload : "Lae üles",
+DlgLnkBtnUpload : "Saada serverile",
+
+DlgLnkTarget : "Sihtkoht",
+DlgLnkTargetFrame : "<raam>",
+DlgLnkTargetPopup : "<hüpikaken>",
+DlgLnkTargetBlank : "Uus aken (_blank)",
+DlgLnkTargetParent : "Vanem aken (_parent)",
+DlgLnkTargetSelf : "Sama aken (_self)",
+DlgLnkTargetTop : "Pealmine aken (_top)",
+DlgLnkTargetFrameName : "Target Frame Name", //MISSING
+DlgLnkPopWinName : "Hüpikakna nimi",
+DlgLnkPopWinFeat : "Hüpikakna omadused",
+DlgLnkPopResize : "Suurendatav",
+DlgLnkPopLocation : "Aadressiriba",
+DlgLnkPopMenu : "Menüüriba",
+DlgLnkPopScroll : "Kerimisribad",
+DlgLnkPopStatus : "Olekuriba",
+DlgLnkPopToolbar : "Tööriistariba",
+DlgLnkPopFullScrn : "Täisekraan (IE)",
+DlgLnkPopDependent : "Sõltuv (Netscape)",
+DlgLnkPopWidth : "Laius",
+DlgLnkPopHeight : "Kõrgus",
+DlgLnkPopLeft : "Vasak asukoht",
+DlgLnkPopTop : "Ãlemine asukoht",
+
+DlnLnkMsgNoUrl : "Palun kirjuta lingi URL",
+DlnLnkMsgNoEMail : "Palun kirjuta E-Posti aadress",
+DlnLnkMsgNoAnchor : "Palun vali ankur",
+
+// Color Dialog
+DlgColorTitle : "Vali värv",
+DlgColorBtnClear : "Tühjenda",
+DlgColorHighlight : "Märgi",
+DlgColorSelected : "Valitud",
+
+// Smiley Dialog
+DlgSmileyTitle : "Sisesta Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Vali erimärk",
+
+// Table Dialog
+DlgTableTitle : "Tabeli atribuudid",
+DlgTableRows : "Read",
+DlgTableColumns : "Veerud",
+DlgTableBorder : "Joone suurus",
+DlgTableAlign : "Joondus",
+DlgTableAlignNotSet : "<Määramata>",
+DlgTableAlignLeft : "Vasak",
+DlgTableAlignCenter : "Kesk",
+DlgTableAlignRight : "Parem",
+DlgTableWidth : "Laius",
+DlgTableWidthPx : "pikslit",
+DlgTableWidthPc : "protsenti",
+DlgTableHeight : "Kõrgus",
+DlgTableCellSpace : "Lahtri vahe",
+DlgTableCellPad : "Lahtri täidis",
+DlgTableCaption : "Seletiitel",
+
+// Table Cell Dialog
+DlgCellTitle : "Lahtri atribuudid",
+DlgCellWidth : "Laius",
+DlgCellWidthPx : "pikslit",
+DlgCellWidthPc : "protsenti",
+DlgCellHeight : "Kõrgus",
+DlgCellWordWrap : "Murra ridu",
+DlgCellWordWrapNotSet : "<Määramata>",
+DlgCellWordWrapYes : "Jah",
+DlgCellWordWrapNo : "Ei",
+DlgCellHorAlign : "Horisontaaljoondus",
+DlgCellHorAlignNotSet : "<Määramata>",
+DlgCellHorAlignLeft : "Vasak",
+DlgCellHorAlignCenter : "Kesk",
+DlgCellHorAlignRight: "Parem",
+DlgCellVerAlign : "Vertikaaljoondus",
+DlgCellVerAlignNotSet : "<Määramata>",
+DlgCellVerAlignTop : "Ãles",
+DlgCellVerAlignMiddle : "Keskele",
+DlgCellVerAlignBottom : "Alla",
+DlgCellVerAlignBaseline : "Baasjoonele",
+DlgCellRowSpan : "Reaulatus",
+DlgCellCollSpan : "Veeruulatus",
+DlgCellBackColor : "Tausta värv",
+DlgCellBorderColor : "Joone värv",
+DlgCellBtnSelect : "Vali...",
+
+// Find Dialog
+DlgFindTitle : "Otsi",
+DlgFindFindBtn : "Otsi",
+DlgFindNotFoundMsg : "Valitud teksti ei leitud.",
+
+// Replace Dialog
+DlgReplaceTitle : "Asenda",
+DlgReplaceFindLbl : "Leia mida:",
+DlgReplaceReplaceLbl : "Asenda millega:",
+DlgReplaceCaseChk : "Erista suurtähti",
+DlgReplaceReplaceBtn : "Asenda",
+DlgReplaceReplAllBtn : "Asenda kõik",
+DlgReplaceWordChk : "Otsi terveid sõnu",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Sinu brauseri turvaseaded ei luba redaktoril automaatselt kleepida. Palun kasutage selleks klaviatuuri (Ctrl+V).",
+PasteErrorCut : "Sinu brauseri turvaseaded ei luba redaktoril automaatselt lõigata. Palun kasutage selleks klaviatuuri (Ctrl+X).",
+PasteErrorCopy : "Sinu brauseri turvaseaded ei luba redaktoril automaatselt kopeerida. Palun kasutage selleks klaviatuuri (Ctrl+C).",
+
+PasteAsText : "Kleebi tavalise tekstina",
+PasteFromWord : "Kleebi Wordist",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "Automaatne",
+ColorMoreColors : "Rohkem värve...",
+
+// Document Properties
+DocProps : "Document Properties", //MISSING
+
+// Anchor Dialog
+DlgAnchorTitle : "Anchor Properties", //MISSING
+DlgAnchorName : "Anchor Name", //MISSING
+DlgAnchorErrorName : "Please type the anchor name", //MISSING
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Not in dictionary", //MISSING
+DlgSpellChangeTo : "Change to", //MISSING
+DlgSpellBtnIgnore : "Ignore", //MISSING
+DlgSpellBtnIgnoreAll : "Ignore All", //MISSING
+DlgSpellBtnReplace : "Replace", //MISSING
+DlgSpellBtnReplaceAll : "Replace All", //MISSING
+DlgSpellBtnUndo : "Undo", //MISSING
+DlgSpellNoSuggestions : "- No suggestions -", //MISSING
+DlgSpellProgress : "Spell check in progress...", //MISSING
+DlgSpellNoMispell : "Spell check complete: No misspellings found", //MISSING
+DlgSpellNoChanges : "Spell check complete: No words changed", //MISSING
+DlgSpellOneChange : "Spell check complete: One word changed", //MISSING
+DlgSpellManyChanges : "Spell check complete: %1 words changed", //MISSING
+
+IeSpellDownload : "Spell checker not installed. Do you want to download it now?", //MISSING
+
+// Button Dialog
+DlgButtonText : "Text (Value)", //MISSING
+DlgButtonType : "Type", //MISSING
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name", //MISSING
+DlgCheckboxValue : "Value", //MISSING
+DlgCheckboxSelected : "Selected", //MISSING
+
+// Form Dialog
+DlgFormName : "Name", //MISSING
+DlgFormAction : "Action", //MISSING
+DlgFormMethod : "Method", //MISSING
+
+// Select Field Dialog
+DlgSelectName : "Name", //MISSING
+DlgSelectValue : "Value", //MISSING
+DlgSelectSize : "Size", //MISSING
+DlgSelectLines : "lines", //MISSING
+DlgSelectChkMulti : "Allow multiple selections", //MISSING
+DlgSelectOpAvail : "Available Options", //MISSING
+DlgSelectOpText : "Text", //MISSING
+DlgSelectOpValue : "Value", //MISSING
+DlgSelectBtnAdd : "Add", //MISSING
+DlgSelectBtnModify : "Modify", //MISSING
+DlgSelectBtnUp : "Up", //MISSING
+DlgSelectBtnDown : "Down", //MISSING
+DlgSelectBtnSetValue : "Set as selected value", //MISSING
+DlgSelectBtnDelete : "Delete", //MISSING
+
+// Textarea Dialog
+DlgTextareaName : "Name", //MISSING
+DlgTextareaCols : "Columns", //MISSING
+DlgTextareaRows : "Rows", //MISSING
+
+// Text Field Dialog
+DlgTextName : "Name", //MISSING
+DlgTextValue : "Value", //MISSING
+DlgTextCharWidth : "Character Width", //MISSING
+DlgTextMaxChars : "Maximum Characters", //MISSING
+DlgTextType : "Type", //MISSING
+DlgTextTypeText : "Text", //MISSING
+DlgTextTypePass : "Password", //MISSING
+
+// Hidden Field Dialog
+DlgHiddenName : "Name", //MISSING
+DlgHiddenValue : "Value", //MISSING
+
+// Bulleted List Dialog
+BulletedListProp : "Bulleted List Properties", //MISSING
+NumberedListProp : "Numbered List Properties", //MISSING
+DlgLstType : "Type", //MISSING
+DlgLstTypeCircle : "Circle", //MISSING
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Square", //MISSING
+DlgLstTypeNumbers : "Numbers (1, 2, 3)", //MISSING
+DlgLstTypeLCase : "Lowercase Letters (a, b, c)", //MISSING
+DlgLstTypeUCase : "Uppercase Letters (A, B, C)", //MISSING
+DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)", //MISSING
+DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)", //MISSING
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General", //MISSING
+DlgDocBackTab : "Background", //MISSING
+DlgDocColorsTab : "Colors and Margins", //MISSING
+DlgDocMetaTab : "Meta Data", //MISSING
+
+DlgDocPageTitle : "Page Title", //MISSING
+DlgDocLangDir : "Language Direction", //MISSING
+DlgDocLangDirLTR : "Left to Right (LTR)", //MISSING
+DlgDocLangDirRTL : "Right to Left (RTL)", //MISSING
+DlgDocLangCode : "Language Code", //MISSING
+DlgDocCharSet : "Character Set Encoding", //MISSING
+DlgDocCharSetOther : "Other Character Set Encoding", //MISSING
+
+DlgDocDocType : "Document Type Heading", //MISSING
+DlgDocDocTypeOther : "Other Document Type Heading", //MISSING
+DlgDocIncXHTML : "Include XHTML Declarations", //MISSING
+DlgDocBgColor : "Background Color", //MISSING
+DlgDocBgImage : "Background Image URL", //MISSING
+DlgDocBgNoScroll : "Nonscrolling Background", //MISSING
+DlgDocCText : "Text", //MISSING
+DlgDocCLink : "Link", //MISSING
+DlgDocCVisited : "Visited Link", //MISSING
+DlgDocCActive : "Active Link", //MISSING
+DlgDocMargins : "Page Margins", //MISSING
+DlgDocMaTop : "Top", //MISSING
+DlgDocMaLeft : "Left", //MISSING
+DlgDocMaRight : "Right", //MISSING
+DlgDocMaBottom : "Bottom", //MISSING
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)", //MISSING
+DlgDocMeDescr : "Document Description", //MISSING
+DlgDocMeAuthor : "Author", //MISSING
+DlgDocMeCopy : "Copyright", //MISSING
+DlgDocPreview : "Preview", //MISSING
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "About", //MISSING
+DlgAboutBrowserInfoTab : "Browser Info", //MISSING
+DlgAboutVersion : "versioon",
+DlgAboutLicense : "Litsenseeritud GNU Lesser General Public License litsentsiga",
+DlgAboutInfo : "Täpsema info saamiseks mine"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/eu.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/eu.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/eu.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: eu.js
+ * Basque language file.
+ * Euskara hizkuntza fitxategia.
+ *
+ * File Authors:
+ * Ibon Igartua (Librezale.org)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Estutu Tresna Barra",
+ToolbarExpand : "Hedatu Tresna Barra",
+
+// Toolbar Items and Context Menu
+Save : "Gorde",
+NewPage : "Orrialde Berria",
+Preview : "Aurrebista",
+Cut : "Ebaki",
+Copy : "Kopiatu",
+Paste : "Itsatsi",
+PasteText : "Itsatsi testu bezala",
+PasteWord : "Itsatsi Word-etik",
+Print : "Inprimatu",
+SelectAll : "Hautatu dena",
+RemoveFormat : "Kendu Formatoa",
+InsertLinkLbl : "Esteka",
+InsertLink : "Txertatu/Editatu Esteka",
+RemoveLink : "Kendu Esteka",
+Anchor : "Aingura",
+InsertImageLbl : "Irudia",
+InsertImage : "Txertatu/Editatu Irudia",
+InsertFlashLbl : "Flasha",
+InsertFlash : "Txertatu/Editatu Flasha",
+InsertTableLbl : "Taula",
+InsertTable : "Txertatu/Editatu Taula",
+InsertLineLbl : "Lerroa",
+InsertLine : "Txertatu Marra Horizontala",
+InsertSpecialCharLbl: "Karaktere Berezia",
+InsertSpecialChar : "Txertatu Karaktere Berezia",
+InsertSmileyLbl : "Aurpegierak",
+InsertSmiley : "Txertatu Aurpegierak",
+About : "FCKeditor-ri buruz",
+Bold : "Lodia",
+Italic : "Etzana",
+Underline : "Azpimarratu",
+StrikeThrough : "Marratua",
+Subscript : "Azpi-indize",
+Superscript : "Goi-indize",
+LeftJustify : "Lerrokatu Ezkerrean",
+CenterJustify : "Lerrokatu Erdian",
+RightJustify : "Lerrokatu Eskuman",
+BlockJustify : "Justifikatu",
+DecreaseIndent : "Txikitu Koska",
+IncreaseIndent : "Handitu Koska",
+Undo : "Desegin",
+Redo : "Berregin",
+NumberedListLbl : "Zenbakidun Zerrenda",
+NumberedList : "Txertatu/Kendu Zenbakidun zerrenda",
+BulletedListLbl : "Buletdun Zerrenda",
+BulletedList : "Txertatu/Kendu Buletdun zerrenda",
+ShowTableBorders : "Erakutsi Taularen Ertzak",
+ShowDetails : "Erakutsi Xehetasunak",
+Style : "Estiloa",
+FontFormat : "Formatoa",
+Font : "Letra-tipoa",
+FontSize : "Tamaina",
+TextColor : "Testu Kolorea",
+BGColor : "Atzeko kolorea",
+Source : "HTML Iturburua",
+Find : "Bilatu",
+Replace : "Ordezkatu",
+SpellCheck : "Ortografia",
+UniversalKeyboard : "Teklatu Unibertsala",
+
+Form : "Formularioa",
+Checkbox : "Kontrol-laukia",
+RadioButton : "Aukera-botoia",
+TextField : "Testu Eremua",
+Textarea : "Testu-area",
+HiddenField : "Ezkutuko Eremua",
+Button : "Botoia",
+SelectionField : "Hautespen Eremua",
+ImageButton : "Irudi Botoia",
+
+// Context Menu
+EditLink : "Aldatu Esteka",
+InsertRow : "Txertatu Errenkada",
+DeleteRows : "Ezabatu Errenkadak",
+InsertColumn : "Txertatu Zutabea",
+DeleteColumns : "Ezabatu Zutabeak",
+InsertCell : "Txertatu Gelaxka",
+DeleteCells : "Kendu Gelaxkak",
+MergeCells : "Batu Gelaxkak",
+SplitCell : "Zatitu Gelaxka",
+CellProperties : "Gelaxkaren Ezaugarriak",
+TableProperties : "Taularen Ezaugarriak",
+ImageProperties : "Irudiaren Ezaugarriak",
+FlashProperties : "Flasharen Ezaugarriak",
+
+AnchorProp : "Ainguraren Ezaugarriak",
+ButtonProp : "Botoiaren Ezaugarriak",
+CheckboxProp : "Kontrol-laukiko Ezaugarriak",
+HiddenFieldProp : "Ezkutuko Eremuaren Ezaugarriak",
+RadioButtonProp : "Aukera-botoiaren Ezaugarriak",
+ImageButtonProp : "Irudi Botoiaren Ezaugarriak",
+TextFieldProp : "Testu Eremuaren Ezaugarriak",
+SelectionFieldProp : "Hautespen Eremuaren Ezaugarriak",
+TextareaProp : "Testu-arearen Ezaugarriak",
+FormProp : "Formularioaren Ezaugarriak",
+
+FontFormats : "Arrunta;Formateatua;Helbidea;Izenburua 1;Izenburua 2;Izenburua 3;Izenburua 4;Izenburua 5;Izenburua 6;Paragrafoa (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "XHTML Prozesatzen. Itxaron mesedez...",
+Done : "Eginda",
+PasteWordConfirm : "Itsatsi nahi duzun textua Wordetik hartua dela dirudi. Itsatsi baino lehen garbitu nahi duzu?",
+NotCompatiblePaste : "Komando hau Internet Explorer 5.5 bertsiorako edo ondorengoentzako erabilgarria dago. Garbitu gabe itsatsi nahi duzu?",
+UnknownToolbarItem : "Ataza barrako elementu ezezaguna \"%1\"",
+UnknownCommand : "Komando izen ezezaguna \"%1\"",
+NotImplemented : "Komando ez inplementatua",
+UnknownToolbarSet : "Ataza barra \"%1\" taldea ez da existitzen",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "Ados",
+DlgBtnCancel : "Utzi",
+DlgBtnClose : "Itxi",
+DlgBtnBrowseServer : "Zerbitzaria arakatu",
+DlgAdvancedTag : "Aurreratua",
+DlgOpOther : "<Bestelakoak>",
+DlgInfoTab : "Informazioa",
+DlgAlertUrl : "Mesedez URLa idatzi ezazu",
+
+// General Dialogs Labels
+DlgGenNotSet : "<Ezarri gabe>",
+DlgGenId : "Id",
+DlgGenLangDir : "Hizkuntzaren Norabidea",
+DlgGenLangDirLtr : "Ezkerretik Eskumara(LTR)",
+DlgGenLangDirRtl : "Eskumatik Ezkerrera (RTL)",
+DlgGenLangCode : "Hizkuntza Kodea",
+DlgGenAccessKey : "Sarbide-gakoa",
+DlgGenName : "Izena",
+DlgGenTabIndex : "Tabulazio Indizea",
+DlgGenLongDescr : "URL Deskribapen Luzea",
+DlgGenClass : "Estilo-orriko Klaseak",
+DlgGenTitle : "Izenburua",
+DlgGenContType : "Eduki Mota (Content Type)",
+DlgGenLinkCharset : "Estekatutako Karaktere Multzoa",
+DlgGenStyle : "Estiloa",
+
+// Image Dialog
+DlgImgTitle : "Irudi Ezaugarriak",
+DlgImgInfoTab : "Irudi informazioa",
+DlgImgBtnUpload : "Zerbitzarira bidalia",
+DlgImgURL : "URL",
+DlgImgUpload : "Gora Kargatu",
+DlgImgAlt : "Textu Alternatiboa",
+DlgImgWidth : "Zabalera",
+DlgImgHeight : "Altuera",
+DlgImgLockRatio : "Erlazioa Blokeatu",
+DlgBtnResetSize : "Tamaina Berrezarri",
+DlgImgBorder : "Ertza",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Lerrokatu",
+DlgImgAlignLeft : "Ezkerrera",
+DlgImgAlignAbsBottom: "Abs Behean",
+DlgImgAlignAbsMiddle: "Abs Erdian",
+DlgImgAlignBaseline : "Oinan",
+DlgImgAlignBottom : "Behean",
+DlgImgAlignMiddle : "Erdian",
+DlgImgAlignRight : "Eskuman",
+DlgImgAlignTextTop : "Testua Goian",
+DlgImgAlignTop : "Goian",
+DlgImgPreview : "Aurrebista",
+DlgImgAlertUrl : "Mesedez Irudiaren URLa idatzi",
+DlgImgLinkTab : "Esteka",
+
+// Flash Dialog
+DlgFlashTitle : "Flasharen Ezaugarriak",
+DlgFlashChkPlay : "Automatikoki Erreproduzitu",
+DlgFlashChkLoop : "Begizta",
+DlgFlashChkMenu : "Flasharen Menua Gaitu",
+DlgFlashScale : "Eskalatu",
+DlgFlashScaleAll : "Dena erakutsi",
+DlgFlashScaleNoBorder : "Ertzarik gabe",
+DlgFlashScaleFit : "Doitu",
+
+// Link Dialog
+DlgLnkWindowTitle : "Esteka",
+DlgLnkInfoTab : "Estekaren Informazioa",
+DlgLnkTargetTab : "Helburua",
+
+DlgLnkType : "Esteka Mota",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Aingura horrialde honentan",
+DlgLnkTypeEMail : "ePosta",
+DlgLnkProto : "Protokoloa",
+DlgLnkProtoOther : "<Beste batzuk>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Aingura bat hautatu",
+DlgLnkAnchorByName : "Aingura izenagatik",
+DlgLnkAnchorById : "Elementuaren ID-gatik",
+DlgLnkNoAnchors : "<Ez daude aingurak eskuragarri dokumentuan>",
+DlgLnkEMail : "ePosta Helbidea",
+DlgLnkEMailSubject : "Mezuaren Gaia",
+DlgLnkEMailBody : "Mezuaren Gorputza",
+DlgLnkUpload : "Gora kargatu",
+DlgLnkBtnUpload : "Zerbitzarira bidali",
+
+DlgLnkTarget : "Target (Helburua)",
+DlgLnkTargetFrame : "<marko>",
+DlgLnkTargetPopup : "<popup lehioa>",
+DlgLnkTargetBlank : "Lehio Berria (_blank)",
+DlgLnkTargetParent : "Lehio Gurasoa (_parent)",
+DlgLnkTargetSelf : "Lehio Berdina (_self)",
+DlgLnkTargetTop : "Goiko Lehioa (_top)",
+DlgLnkTargetFrameName : "Marko Helburuaren Izena",
+DlgLnkPopWinName : "Popup Lehioaren Izena",
+DlgLnkPopWinFeat : "Popup Lehioaren Ezaugarriak",
+DlgLnkPopResize : "Tamaina Aldakorra",
+DlgLnkPopLocation : "Kokaleku Barra",
+DlgLnkPopMenu : "Menu Barra",
+DlgLnkPopScroll : "Korritze Barrak",
+DlgLnkPopStatus : "Egoera Barra",
+DlgLnkPopToolbar : "Tresna Barra",
+DlgLnkPopFullScrn : "Pantaila Osoa (IE)",
+DlgLnkPopDependent : "Menpekoa (Netscape)",
+DlgLnkPopWidth : "Zabalera",
+DlgLnkPopHeight : "Altuera",
+DlgLnkPopLeft : "Ezkerreko Posizioa",
+DlgLnkPopTop : "Goiko Posizioa",
+
+DlnLnkMsgNoUrl : "Mesedez URL esteka idatzi",
+DlnLnkMsgNoEMail : "Mesedez ePosta helbidea idatzi",
+DlnLnkMsgNoAnchor : "Mesedez aingura bat aukeratu",
+
+// Color Dialog
+DlgColorTitle : "Kolore Aukeraketa",
+DlgColorBtnClear : "Garbitu",
+DlgColorHighlight : "Nabarmendu",
+DlgColorSelected : "Aukeratuta",
+
+// Smiley Dialog
+DlgSmileyTitle : "Aurpegiera Sartu",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Karaktere Berezia Aukeratu",
+
+// Table Dialog
+DlgTableTitle : "Taularen Ezaugarriak",
+DlgTableRows : "Lerroak",
+DlgTableColumns : "Zutabeak",
+DlgTableBorder : "Ertzaren Zabalera",
+DlgTableAlign : "Lerrokatu",
+DlgTableAlignNotSet : "<Ezarri gabe>",
+DlgTableAlignLeft : "Ezkerrean",
+DlgTableAlignCenter : "Erdian",
+DlgTableAlignRight : "Eskuman",
+DlgTableWidth : "Zabalera",
+DlgTableWidthPx : "pixel",
+DlgTableWidthPc : "ehuneko",
+DlgTableHeight : "Altuera",
+DlgTableCellSpace : "Gelaxka arteko tartea",
+DlgTableCellPad : "Gelaxken betegarria",
+DlgTableCaption : "Epigrafea",
+
+// Table Cell Dialog
+DlgCellTitle : "Gelaxken Ezaugarriak",
+DlgCellWidth : "Zabalera",
+DlgCellWidthPx : "pixel",
+DlgCellWidthPc : "ehuneko",
+DlgCellHeight : "Altuera",
+DlgCellWordWrap : "Itzulbira",
+DlgCellWordWrapNotSet : "<Ezarri gabe>",
+DlgCellWordWrapYes : "Bai",
+DlgCellWordWrapNo : "Ez",
+DlgCellHorAlign : "Horizontal Alignment",
+DlgCellHorAlignNotSet : "<Ezarri gabe>",
+DlgCellHorAlignLeft : "Ezkerrean",
+DlgCellHorAlignCenter : "Erdian",
+DlgCellHorAlignRight: "Eskuman",
+DlgCellVerAlign : "Lerrokatu Bertikalki",
+DlgCellVerAlignNotSet : "<Ezarri gabe>",
+DlgCellVerAlignTop : "Goian",
+DlgCellVerAlignMiddle : "Erdian",
+DlgCellVerAlignBottom : "Behean",
+DlgCellVerAlignBaseline : "Oinan",
+DlgCellRowSpan : "Lerroak Hedatu",
+DlgCellCollSpan : "Zutabeak Hedatu",
+DlgCellBackColor : "Atzeko Kolorea",
+DlgCellBorderColor : "Ertzako Kolorea",
+DlgCellBtnSelect : "Aukertau...",
+
+// Find Dialog
+DlgFindTitle : "Bilaketa",
+DlgFindFindBtn : "Bilatu",
+DlgFindNotFoundMsg : "Idatzitako testua ez da topatu.",
+
+// Replace Dialog
+DlgReplaceTitle : "Ordeztu",
+DlgReplaceFindLbl : "Zer bilatu:",
+DlgReplaceReplaceLbl : "Zerekin ordeztu:",
+DlgReplaceCaseChk : "Maiuskula/minuskula",
+DlgReplaceReplaceBtn : "Ordeztu",
+DlgReplaceReplAllBtn : "Ordeztu Guztiak",
+DlgReplaceWordChk : "Esaldi osoa bilatu",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Zure web nabigatzailearen segurtasun ezarpenak testuak automatikoki itsastea ez dute baimentzen. Mesedez teklatua erabili ezazu (Ctrl+V).",
+PasteErrorCut : "Zure web nabigatzailearen segurtasun ezarpenak testuak automatikoki moztea ez dute baimentzen. Mesedez teklatua erabili ezazu (Ctrl+X).",
+PasteErrorCopy : "Zure web nabigatzailearen segurtasun ezarpenak testuak automatikoki kopiatzea ez dute baimentzen. Mesedez teklatua erabili ezazu (Ctrl+C).",
+
+PasteAsText : "Testu Arrunta bezala Itsatsi",
+PasteFromWord : "Word-etik itsatsi",
+
+DlgPasteMsg2 : "Mesedez teklatua erabilita (<STRONG>Ctrl+V</STRONG>) ondorego eremuan testua itsatsi eta <STRONG>OK</STRONG> sakatu.",
+DlgPasteIgnoreFont : "Letra Motaren definizioa ezikusi",
+DlgPasteRemoveStyles : "Estilo definizioak kendu",
+DlgPasteCleanBox : "Testu-eremua Garbitu",
+
+
+// Color Picker
+ColorAutomatic : "Automatikoa",
+ColorMoreColors : "Kolore gehiago...",
+
+// Document Properties
+DocProps : "Dokumentuaren Ezarpenak",
+
+// Anchor Dialog
+DlgAnchorTitle : "Ainguraren Ezaugarriak",
+DlgAnchorName : "Ainguraren Izena",
+DlgAnchorErrorName : "Idatzi ainguraren izena",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Ez dago hiztegian",
+DlgSpellChangeTo : "Honekin ordezkatu",
+DlgSpellBtnIgnore : "Ezikusi",
+DlgSpellBtnIgnoreAll : "Denak Ezikusi",
+DlgSpellBtnReplace : "Ordezkatu",
+DlgSpellBtnReplaceAll : "Denak Ordezkatu",
+DlgSpellBtnUndo : "Desegin",
+DlgSpellNoSuggestions : "- Iradokizunik ez -",
+DlgSpellProgress : "Zuzenketa ortografikoa martxan...",
+DlgSpellNoMispell : "Zuzenketa ortografikoa bukatuta: Akatsik ez",
+DlgSpellNoChanges : "Zuzenketa ortografikoa bukatuta: Ez da ezer aldatu",
+DlgSpellOneChange : "Zuzenketa ortografikoa bukatuta: Hitz bat aldatu da",
+DlgSpellManyChanges : "Zuzenketa ortografikoa bukatuta: %1 hitz aldatu dira",
+
+IeSpellDownload : "Zuzentzaile ortografikoa ez dago instalatuta. Deskargatu nahi duzu?",
+
+// Button Dialog
+DlgButtonText : "Testua (Balorea)",
+DlgButtonType : "Mota",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Izena",
+DlgCheckboxValue : "Balorea",
+DlgCheckboxSelected : "Hautatuta",
+
+// Form Dialog
+DlgFormName : "Izena",
+DlgFormAction : "Ekintza",
+DlgFormMethod : "Method",
+
+// Select Field Dialog
+DlgSelectName : "Izena",
+DlgSelectValue : "Balorea",
+DlgSelectSize : "Tamaina",
+DlgSelectLines : "lerro kopurura",
+DlgSelectChkMulti : "Hautaketa anitzak baimendu",
+DlgSelectOpAvail : "Aukera Eskuragarriak",
+DlgSelectOpText : "Testua",
+DlgSelectOpValue : "Balorea",
+DlgSelectBtnAdd : "Gehitu",
+DlgSelectBtnModify : "Aldatu",
+DlgSelectBtnUp : "Gora",
+DlgSelectBtnDown : "Behera",
+DlgSelectBtnSetValue : "Aukeratutako balorea ezarri",
+DlgSelectBtnDelete : "Ezabatu",
+
+// Textarea Dialog
+DlgTextareaName : "Izena",
+DlgTextareaCols : "Zutabeak",
+DlgTextareaRows : "Lerroak",
+
+// Text Field Dialog
+DlgTextName : "Izena",
+DlgTextValue : "Balorea",
+DlgTextCharWidth : "Zabalera",
+DlgTextMaxChars : "Zenbat karaktere gehienez",
+DlgTextType : "Mota",
+DlgTextTypeText : "Testua",
+DlgTextTypePass : "Pasahitza",
+
+// Hidden Field Dialog
+DlgHiddenName : "Izena",
+DlgHiddenValue : "Balorea",
+
+// Bulleted List Dialog
+BulletedListProp : "Buletdun Zerrendaren Ezarpenak",
+NumberedListProp : "Zenbakidun Zerrendaren Ezarpenak",
+DlgLstType : "Mota",
+DlgLstTypeCircle : "Zirkulua",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Karratua",
+DlgLstTypeNumbers : "Zenbakiak (1, 2, 3)",
+DlgLstTypeLCase : "Letra xeheak (a, b, c)",
+DlgLstTypeUCase : "Letra larriak (A, B, C)",
+DlgLstTypeSRoman : "Erromatar zenbaki zeheak (i, ii, iii)",
+DlgLstTypeLRoman : "Erromatar zenbaki larriak (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Orokorra",
+DlgDocBackTab : "Atzekaldea",
+DlgDocColorsTab : "Koloreak eta Marjinak",
+DlgDocMetaTab : "Meta Informazioa",
+
+DlgDocPageTitle : "Orriaren Izenburua",
+DlgDocLangDir : "Hizkuntzaren Norabidea",
+DlgDocLangDirLTR : "Ezkerretik eskumara (LTR)",
+DlgDocLangDirRTL : "Eskumatik ezkerrera (RTL)",
+DlgDocLangCode : "Hizkuntzaren Kodea",
+DlgDocCharSet : "Karaktere Multzoaren Kodeketa",
+DlgDocCharSetOther : "Beste Karaktere Multzoaren Kodeketa",
+
+DlgDocDocType : "Document Type Goiburua",
+DlgDocDocTypeOther : "Beste Document Type Goiburua",
+DlgDocIncXHTML : "XHTML Ezarpenak",
+DlgDocBgColor : "Atzeko Kolorea",
+DlgDocBgImage : "Atzeko Irudiaren URL-a",
+DlgDocBgNoScroll : "Korritze gabeko Atzekaldea",
+DlgDocCText : "Testua",
+DlgDocCLink : "Estekak",
+DlgDocCVisited : "Bisitatutako Estekak",
+DlgDocCActive : "Esteka Aktiboa",
+DlgDocMargins : "Orrialdearen marjinak",
+DlgDocMaTop : "Goian",
+DlgDocMaLeft : "Ezkerrean",
+DlgDocMaRight : "Eskuman",
+DlgDocMaBottom : "Behean",
+DlgDocMeIndex : "Dokumentuaren Gako-hitzak (komarekin bananduta)",
+DlgDocMeDescr : "Dokumentuaren Deskribapena",
+DlgDocMeAuthor : "Egilea",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Aurrebista",
+
+// Templates Dialog
+Templates : "Txantiloiak",
+DlgTemplatesTitle : "Eduki Txantiloiak",
+DlgTemplatesSelMsg : "Mesedez txantiloia aukeratu editorean kargatzeko<br>(orain dauden edukiak galduko dira):",
+DlgTemplatesLoading : "Txantiloiak kargatzen. Itxaron mesedez...",
+DlgTemplatesNoTpl : "(Ez dago definitutako txantiloirik)",
+
+// About Dialog
+DlgAboutAboutTab : "Honi buruz",
+DlgAboutBrowserInfoTab : "Nabigatzailearen Informazioa",
+DlgAboutVersion : "bertsioa",
+DlgAboutLicense : "GNU Lesser General Public License Lizentziapean",
+DlgAboutInfo : "Informazio gehiago eskuratzeko hona joan"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/fa.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/fa.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/fa.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fa.js
+ * Persian language file.
+ *
+ * File Authors:
+ * Hamed Taj-Abadi (hamed at ranginkaman.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "rtl",
+
+ToolbarCollapse : "بست٠Ù
ÙÙابزار",
+ToolbarExpand : "بازکرد٠Ù
ÙÙابزار",
+
+// Toolbar Items and Context Menu
+Save : "ذخÙرÙ",
+NewPage : "جدÙد",
+Preview : "Ù¾ÙØ´ ÙÙ
اÙØ´",
+Cut : "برش",
+Copy : "Ú©Ù¾Û",
+Paste : "ÚسباÙدÙ",
+PasteText : "ÚسباÙد٠ب٠عÙÙا٠Ù
ت٠سادÙ",
+PasteWord : "ÚسباÙد٠از WORD",
+Print : "Úاپ",
+SelectAll : "اÙتخاب ÙÙ
Ù",
+RemoveFormat : "برداشت٠ÙرÙ
ت",
+InsertLinkLbl : "ÙÙÙÚ©",
+InsertLink : "درج/ÙÙراÙØ´ ÙÙÙÚ©",
+RemoveLink : "برداشت٠ÙÙÙÚ©",
+Anchor : "درج/ÙÙراÙØ´ ÙÙگر",
+InsertImageLbl : "تصÙÙر",
+InsertImage : "درج/ÙÙراÙØ´ تصÙÙر",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "جدÙÙ",
+InsertTable : "درج/ÙÙراÙØ´ جدÙÙ",
+InsertLineLbl : "خط",
+InsertLine : "درج خط اÙÙÛ",
+InsertSpecialCharLbl: "Ø´Ùاس٠ÙÙÚÙ",
+InsertSpecialChar : "درج Ø´Ùاس٠ÙÙÚÙ",
+InsertSmileyLbl : "Ø®ÙداÙÚ©",
+InsertSmiley : "درج Ø®ÙداÙÚ©",
+About : "دربار٠FCKeditor",
+Bold : "پررÙÚ¯",
+Italic : "اÙتاÙÙÚ©",
+Underline : "زÙرخط",
+StrikeThrough : "Ù
Ùا٠خط",
+Subscript : "اÙدÙس پائÙÙ",
+Superscript : "اÙدÙس باÙا",
+LeftJustify : "ÚÙ¾ ÚÙÙ",
+CenterJustify : "Ùسط ÚÙÙ",
+RightJustify : "راست ÚÙÙ",
+BlockJustify : "بÙÙÚ© ÚÙÙ",
+DecreaseIndent : "کاÙØ´ تÙرÙتگÛ",
+IncreaseIndent : "اÙزاÙØ´ تÙرÙتگÛ",
+Undo : "ÙاÚÙدÙ",
+Redo : "بازÚÙدÙ",
+NumberedListLbl : "ÙÙرست عددÛ",
+NumberedList : "درج/برداشت٠ÙÙرست عددÛ",
+BulletedListLbl : "ÙÙرست ÙÙط٠اÛ",
+BulletedList : "درج/برداشت٠ÙÙرست ÙÙط٠اÛ",
+ShowTableBorders : "ÙÙ
اÙØ´ Ùب٠جدÙÙ",
+ShowDetails : "ÙÙ
اÙØ´ جزئÙات",
+Style : "سبک",
+FontFormat : "ÙرÙ
ت",
+Font : "ÙÙÙ
",
+FontSize : "اÙدازÙ",
+TextColor : "رÙÚ¯ Ù
تÙ",
+BGColor : "رÙÚ¯ پس زÙ
ÙÙÙ",
+Source : "Ù
Ùبع",
+Find : "جستجÙ",
+Replace : "جاÙگزÙÙÛ",
+SpellCheck : "Ú©Ùتر٠اÙ
Ùا",
+UniversalKeyboard : "صÙØÙ Ú©ÙÙد جÙاÙÛ",
+
+Form : "ÙرÙ
",
+Checkbox : "دکÙ
٠گزÙÙ٠اÛ",
+RadioButton : "دکÙ
٠رادÙÙÙÛ",
+TextField : "ÙÙÙد Ù
تÙÛ",
+Textarea : "ÙاØÙÙ Ù
تÙÛ",
+HiddenField : "ÙÙÙد Ù¾ÙÙاÙ",
+Button : "دکÙ
Ù",
+SelectionField : "ÙÙÙد اÙتخابÛ",
+ImageButton : "دکÙ
٠تصÙÙرÛ",
+
+// Context Menu
+EditLink : "ÙÙراÙØ´ ÙÙÙÚ©",
+InsertRow : "درج سطر",
+DeleteRows : "Øذ٠سطرÙا",
+InsertColumn : "درج ستÙÙ",
+DeleteColumns : "Øذ٠ستÙÙÙا",
+InsertCell : "درج سÙÙÙ",
+DeleteCells : "Øذ٠سÙÙÙÙا",
+MergeCells : "ادغاÙ
سÙÙÙÙا",
+SplitCell : "تÙÚ©ÙÚ© سÙÙÙ",
+CellProperties : "ÙÙÚÚ¯ÙÙØ§Û Ø³ÙÙÙ",
+TableProperties : "ÙÙÚÚ¯ÙÙØ§Û Ø¬Ø¯ÙÙ",
+ImageProperties : "ÙÙÚÚ¯ÙÙØ§Û ØªØµÙÙر",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "ÙÙÚÚ¯ÙÙØ§Û ÙÙگر",
+ButtonProp : "ÙÙÚÚ¯ÙÙØ§Û Ø¯Ú©Ù
Ù",
+CheckboxProp : "ÙÙÚÚ¯ÙÙØ§Û Ø¯Ú©Ù
٠گزÙÙ٠اÛ",
+HiddenFieldProp : "ÙÙÚÚ¯ÙÙØ§Û ÙÙÙد Ù¾ÙÙاÙ",
+RadioButtonProp : "ÙÙÚÚ¯ÙÙØ§Û Ø¯Ú©Ù
٠رادÙÙÙÛ",
+ImageButtonProp : "ÙÙÚÚ¯ÙÙØ§Û Ø¯Ú©Ù
٠تصÙÙرÛ",
+TextFieldProp : "ÙÙÚÚ¯ÙÙØ§Û ÙÙÙد Ù
تÙÛ",
+SelectionFieldProp : "ÙÙÚÚ¯ÙÙØ§Û ÙÙÙد اÙتخابÛ",
+TextareaProp : "ÙÙÚÚ¯ÙÙØ§Û ÙاØÙÙ Ù
تÙÛ",
+FormProp : "ÙÙÚÚ¯ÙÙØ§Û ÙرÙ
",
+
+FontFormats : "ÙرÙ
اÙ;ÙرÙ
ت شدÙ;آدرس;سرÙÙÙس 1;سرÙÙÙس 2;سرÙÙÙس 3;سرÙÙÙس 4;سرÙÙÙس 5;سرÙÙÙس 6;بÙد;(DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "پردازش XHTML. ÙØ·Ùا صبر Ú©ÙÙد...",
+Done : "اÙجاÙ
شد",
+PasteWordConfirm : "Ù
تÙÛ Ú©Ù Ù
Û Ø®ÙاÙÙد بÚسباÙÙد ب٠Ùظر از WORD Ú©Ù¾Û Ø´Ø¯Ù Ø§Ø³Øª. Ø¢Ùا Ù
اÙÙÙد Ùب٠از ÚسباÙد٠آÙرا تÙ
Ùز Ú©ÙÙØ¯Ø ",
+NotCompatiblePaste : "اÙÙ ÙرÙ
Ø§Ù Ø¨Ø±Ø§Û Ù
رÙرگر Internet Explorer از Ùگارش 5.5 Ùا باÙاتر در دسترس است. Ø¢Ùا Ù
اÙÙÙد بدÙ٠تÙ
Ùز کرد٠Ù
ت٠را بÚسباÙÙدØ",
+UnknownToolbarItem : "ÙÙر٠Ù
ÙÙابزار ÙاشÙاخت٠\"%1\"",
+UnknownCommand : "ÙاÙ
دستÙر ÙاشÙاخت٠\"%1\"",
+NotImplemented : "دستÙر اجرا Ùشد",
+UnknownToolbarSet : "Ù
جÙ
Ùع٠Ù
ÙÙابزار \"%1\" ÙجÙد Ùدارد",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "تائÙد",
+DlgBtnCancel : "اÙصراÙ",
+DlgBtnClose : "بستÙ",
+DlgBtnBrowseServer : "ÙÙرست ÙÙ
اÙÛ Ø³Ø±Ùر",
+DlgAdvancedTag : "Ù¾ÙشرÙتÙ",
+DlgOpOther : "<غÙرÙ>",
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<تعÙÙ ÙشدÙ>",
+DlgGenId : "کد",
+DlgGenLangDir : "جÙت ÙÙ
Ø§Û Ø²Ø¨Ø§Ù",
+DlgGenLangDirLtr : "ÚÙ¾ ب٠راست (LTR)",
+DlgGenLangDirRtl : "راست ب٠ÚÙ¾ (RTL)",
+DlgGenLangCode : "کد زباÙ",
+DlgGenAccessKey : "Ú©ÙÙد دستÙابÛ",
+DlgGenName : "ÙاÙ
",
+DlgGenTabIndex : "اÙدÙس برگÙ",
+DlgGenLongDescr : "URL تÙضÙØ Ø·ÙÙاÙÛ",
+DlgGenClass : "Ú©ÙاسÙØ§Û Ø§Ø³ØªØ§ÙÙ Ø´Ùت",
+DlgGenTitle : "عÙÙا٠کÙ
Ú©Û",
+DlgGenContType : "ÙÙع Ù
ØتÙÛ Ú©Ù
Ú©Û",
+DlgGenLinkCharset : "Ù
جÙ
Ùع٠ÙÙÙس٠Ù
Ùبع ÙÙÙÚ© شدÙ",
+DlgGenStyle : "سبک",
+
+// Image Dialog
+DlgImgTitle : "ÙÙÚÚ¯ÙÙØ§Û ØªØµÙÙر",
+DlgImgInfoTab : "اطÙاعات تصÙÙر",
+DlgImgBtnUpload : "ب٠سرÙر ارسا٠کÙ",
+DlgImgURL : "URL",
+DlgImgUpload : "اÙتÙا٠ب٠سرÙر",
+DlgImgAlt : "Ù
ت٠جاÙگزÙÙ",
+DlgImgWidth : "Ù¾ÙÙا",
+DlgImgHeight : "درازا",
+DlgImgLockRatio : "ÙÙ٠کرد٠Ùسبت",
+DlgBtnResetSize : "بازÙشاÙÛ Ø§ÙدازÙ",
+DlgImgBorder : "ÙبÙ",
+DlgImgHSpace : "ÙاصÙ٠اÙÙÛ",
+DlgImgVSpace : "ÙاصÙ٠عÙ
ÙدÛ",
+DlgImgAlign : "ÚÙÙØ´",
+DlgImgAlignLeft : "ÚÙ¾",
+DlgImgAlignAbsBottom: "پائÙÙ Ù
Ø·ÙÙ",
+DlgImgAlignAbsMiddle: "Ùسط Ù
Ø·ÙÙ",
+DlgImgAlignBaseline : "خط پاÙÙ",
+DlgImgAlignBottom : "پائÙÙ",
+DlgImgAlignMiddle : "Ùسط",
+DlgImgAlignRight : "راست",
+DlgImgAlignTextTop : "Ù
ت٠باÙا",
+DlgImgAlignTop : "باÙا",
+DlgImgPreview : "Ù¾ÙØ´ ÙÙ
اÙØ´",
+DlgImgAlertUrl : "ÙØ·Ùا URL تصÙÙر را اÙتخاب Ú©ÙÙد",
+DlgImgLinkTab : "ÙÙÙÚ©",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "ÙÙÙÚ©",
+DlgLnkInfoTab : "اطÙاعات ÙÙÙÚ©",
+DlgLnkTargetTab : "Ù
Ùصد",
+
+DlgLnkType : "ÙÙع ÙÙÙÚ©",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ù¾ÙÙÙد در صÙØ٠جارÛ",
+DlgLnkTypeEMail : "پست اÙکترÙÙÙÚ©Û",
+DlgLnkProto : "پرÙتکÙ",
+DlgLnkProtoOther : "<غÙرÙ>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "ÙÚ© Ù¾ÙÙÙد اÙتخاب Ú©ÙÙد",
+DlgLnkAnchorByName : "با ÙاÙ
Ù¾ÙÙÙد",
+DlgLnkAnchorById : "با کد اÙÙ
اÙ",
+DlgLnkNoAnchors : "<در اÙ٠سÙد Ù¾ÙÙÙØ¯Û Ù
ÙجÙد ÙÙست>",
+DlgLnkEMail : "آدرس پست اÙکترÙÙÙÚ©Û",
+DlgLnkEMailSubject : "Ù
ÙضÙع Ù¾ÙاÙ
",
+DlgLnkEMailBody : "Ù
ت٠پÙاÙ
",
+DlgLnkUpload : "اÙتÙا٠ب٠سرÙر",
+DlgLnkBtnUpload : "ب٠سرÙر ارسا٠کÙ",
+
+DlgLnkTarget : "Ù
Ùصد",
+DlgLnkTargetFrame : "<ÙرÙÙ
>",
+DlgLnkTargetPopup : "<Ù¾Ùجر٠پاپاپ>",
+DlgLnkTargetBlank : "Ù¾Ùجر٠جدÙد (_blank)",
+DlgLnkTargetParent : "Ù¾Ùجر٠ÙاÙد (_parent)",
+DlgLnkTargetSelf : "ÙÙ
ا٠پÙجر٠(_self)",
+DlgLnkTargetTop : "باÙاترÙÙ Ù¾Ùجر٠(_top)",
+DlgLnkTargetFrameName : "ÙاÙ
ÙرÙÙ
Ù
Ùصد",
+DlgLnkPopWinName : "ÙاÙ
Ù¾Ùجر٠پاپاپ",
+DlgLnkPopWinFeat : "خصÙصÙات Ù¾Ùجر٠پاپاپ",
+DlgLnkPopResize : "Ùاب٠تغÙراÙدازÙ",
+DlgLnkPopLocation : "ÙÙار Ù
ÙÙعÙت",
+DlgLnkPopMenu : "ÙÙار Ù
ÙÙ",
+DlgLnkPopScroll : "ÙÙارÙØ§Û Ø·ÙÙ
ار",
+DlgLnkPopStatus : "ÙÙار ÙضعÙت",
+DlgLnkPopToolbar : "ÙÙارابزار",
+DlgLnkPopFullScrn : "تÙ
اÙ
صÙØÙ (IE)",
+DlgLnkPopDependent : "Ùابست٠(Netscape)",
+DlgLnkPopWidth : "Ù¾ÙÙا",
+DlgLnkPopHeight : "درازا",
+DlgLnkPopLeft : "Ù
ÙÙعÙت ÚÙ¾",
+DlgLnkPopTop : "Ù
ÙÙعÙت باÙا",
+
+DlnLnkMsgNoUrl : "ÙØ·Ùا URL ÙÙÙÚ© را Ùارد Ú©ÙÙد",
+DlnLnkMsgNoEMail : "ÙØ·Ùا آدرس اÙÙ
Ù٠را Ùارد Ú©ÙÙد",
+DlnLnkMsgNoAnchor : "ÙØ·Ùا Ù¾ÙÙÙØ¯Û Ø§Ùتخاب Ú©ÙÙد",
+
+// Color Dialog
+DlgColorTitle : "اÙتخاب رÙÚ¯",
+DlgColorBtnClear : "پاک کردÙ",
+DlgColorHighlight : "ÙاÙÙاÙت",
+DlgColorSelected : "اÙتخاب شدÙ",
+
+// Smiley Dialog
+DlgSmileyTitle : "درج Ø®ÙداÙÚ©",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "اÙتخاب Ø´Ùاس٠ÙØ§Û ÙÙÚÙ",
+
+// Table Dialog
+DlgTableTitle : "ÙÙÚÚ¯ÙÙØ§Û Ø¬Ø¯ÙÙ",
+DlgTableRows : "سطرÙا",
+DlgTableColumns : "ستÙÙÙا",
+DlgTableBorder : "اÙداز٠ÙبÙ",
+DlgTableAlign : "ÚÙÙØ´",
+DlgTableAlignNotSet : "<تعÙÙ ÙشدÙ>",
+DlgTableAlignLeft : "ÚÙ¾",
+DlgTableAlignCenter : "Ùسط",
+DlgTableAlignRight : "راست",
+DlgTableWidth : "Ù¾ÙÙا",
+DlgTableWidthPx : "Ù¾ÙکسÙ",
+DlgTableWidthPc : "درصد",
+DlgTableHeight : "درازا",
+DlgTableCellSpace : "ÙاصÙÙ Ù
Ùا٠سÙÙÙÙا",
+DlgTableCellPad : "ÙاصÙ٠پرشد٠در سÙÙÙ",
+DlgTableCaption : "عÙÙاÙ",
+
+// Table Cell Dialog
+DlgCellTitle : "ÙÙÚÚ¯ÙÙØ§Û Ø³ÙÙÙ",
+DlgCellWidth : "Ù¾ÙÙا",
+DlgCellWidthPx : "Ù¾ÙکسÙ",
+DlgCellWidthPc : "درصد",
+DlgCellHeight : "درازا",
+DlgCellWordWrap : "شکست٠کÙÙ
ات",
+DlgCellWordWrapNotSet : "<تعÙÙ ÙشدÙ>",
+DlgCellWordWrapYes : "بÙÙ",
+DlgCellWordWrapNo : "Ø®Ùر",
+DlgCellHorAlign : "ÚÙÙØ´ اÙÙÛ",
+DlgCellHorAlignNotSet : "<تعÙÙ ÙشدÙ>",
+DlgCellHorAlignLeft : "ÚÙ¾",
+DlgCellHorAlignCenter : "Ùسط",
+DlgCellHorAlignRight: "راست",
+DlgCellVerAlign : "ÚÙÙØ´ عÙ
ÙدÛ",
+DlgCellVerAlignNotSet : "<تعÙÙ ÙشدÙ>",
+DlgCellVerAlignTop : "باÙا",
+DlgCellVerAlignMiddle : "Ù
ÙاÙ",
+DlgCellVerAlignBottom : "پائÙÙ",
+DlgCellVerAlignBaseline : "خط پاÙÙ",
+DlgCellRowSpan : "Ú¯Ø³ØªØ±Ø¯Ú¯Û Ø³Ø·Ø±Ùا",
+DlgCellCollSpan : "Ú¯Ø³ØªØ±Ø¯Ú¯Û Ø³ØªÙÙÙا",
+DlgCellBackColor : "رÙÚ¯ پس زÙ
ÙÙÙ",
+DlgCellBorderColor : "رÙÚ¯ ÙبÙ",
+DlgCellBtnSelect : "اÙتخاب Ú©ÙÙد...",
+
+// Find Dialog
+DlgFindTitle : "ÙاÙتÙ",
+DlgFindFindBtn : "ÙاÙتÙ",
+DlgFindNotFoundMsg : "Ù
ت٠Ù
Ùرد Ùظر ÙاÙت Ùشد.",
+
+// Replace Dialog
+DlgReplaceTitle : "جاÙگزÙÙÛ",
+DlgReplaceFindLbl : "ÚÙ ÚÙز را Ù
Û ÙابÙد:",
+DlgReplaceReplaceLbl : "جاÙگزÙÙÛ Ø¨Ø§:",
+DlgReplaceCaseChk : "اÙطبا٠ÙاÙب",
+DlgReplaceReplaceBtn : "جاÙگزÙÙÛ",
+DlgReplaceReplAllBtn : "جاÙگزÙÙÛ ÙÙ
Ù Ù
Ùارد",
+DlgReplaceWordChk : "اÙطبا٠کÙÙ
٠کاÙ
Ù",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "تÙظÙÙ
ات اÙ
ÙÙØªÛ Ù
رÙرگر Ø´Ù
ا اجاز٠ÙÙ
Û Ø¯Ùد Ú©Ù ÙÙراÙشگر ب٠طÙر Ø®Ùدکار عÙ
ÙکردÙØ§Û ÚسباÙد٠کÙÙ
ات را اÙجاÙ
دÙد. ÙØ·Ùا از Ú©ÙÙ
Ù Ú©ÙÙØ¯Û Ù
رتبط با اÙÙکار را استÙاد٠کÙÙد (Ctrl+V).",
+PasteErrorCut : "تÙظÙÙ
ات اÙ
ÙÙØªÛ Ù
رÙرگر Ø´Ù
ا اجاز٠ÙÙ
Û Ø¯Ùد Ú©Ù ÙÙراÙشگر ب٠طÙر Ø®Ùدکار عÙ
ÙکردÙØ§Û Ø¨Ø±Ø´ Ú©ÙÙ
ات را اÙجاÙ
دÙد. ÙØ·Ùا از Ú©ÙÙ
Ù Ú©ÙÙØ¯Û Ù
رتبط با اÙÙکار را استÙاد٠کÙÙد (Ctrl+X).",
+PasteErrorCopy : "تÙظÙÙ
ات اÙ
ÙÙØªÛ Ù
رÙرگر Ø´Ù
ا اجاز٠ÙÙ
Û Ø¯Ùد Ú©Ù ÙÙراÙشگر ب٠طÙر Ø®Ùدکار عÙ
ÙکردÙØ§Û Ú©Ù¾Û Ú©Ø±Ø¯Ù Ú©ÙÙ
ات را اÙجاÙ
دÙد. ÙØ·Ùا از Ú©ÙÙ
Ù Ú©ÙÙØ¯Û Ù
رتبط با اÙÙکار را استÙاد٠کÙÙد (Ctrl+C).",
+
+PasteAsText : "ÚسباÙد٠ب٠عÙÙا٠Ù
ت٠سادÙ",
+PasteFromWord : "ÚسباÙد٠از Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "Ø®Ùدکار",
+ColorMoreColors : "رÙÚ¯ÙØ§Û Ø¨Ùشتر...",
+
+// Document Properties
+DocProps : "ÙÙÚÚ¯ÙÙØ§Û Ø³Ùد",
+
+// Anchor Dialog
+DlgAnchorTitle : "ÙÙÚÚ¯ÙÙØ§Û ÙÙگر",
+DlgAnchorName : "ÙاÙ
ÙÙگر",
+DlgAnchorErrorName : "ÙØ·Ùا ÙاÙ
ÙÙگر را Ùارد Ú©ÙÙد",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "در ÙاÚÙ ÙاÙ
Ù Ù
ÙجÙد ÙÙست",
+DlgSpellChangeTo : "تغÙر بÙ",
+DlgSpellBtnIgnore : "ÚØ´Ù
Ù¾ÙØ´Û",
+DlgSpellBtnIgnoreAll : "ÚØ´Ù
Ù¾ÙØ´Û ÙÙ
Ù",
+DlgSpellBtnReplace : "جاÙگزÙÙÛ",
+DlgSpellBtnReplaceAll : "جاÙگزÙÙÛ ÙÙ
Ù",
+DlgSpellBtnUndo : "ÙاÚÙÙØ´",
+DlgSpellNoSuggestions : "- Ù¾ÙØ´ÙÙØ§Ø¯Û ÙÙست -",
+DlgSpellProgress : "Ú©Ùتر٠اÙ
Ùا در Øا٠اÙجاÙ
...",
+DlgSpellNoMispell : "Ú©Ùتر٠اÙ
Ùا اÙجاÙ
شد. ÙÙÚ ØºÙØ· اÙ
ÙØ§Ø¦Û ÙاÙت Ùشد",
+DlgSpellNoChanges : "Ú©Ùتر٠اÙ
Ùا اÙجاÙ
شد. ÙÙÚ Ú©ÙÙ
Ù Ø§Û ØªØºÙر ÙÙاÙت",
+DlgSpellOneChange : "Ú©Ùتر٠اÙ
Ùا اÙجاÙ
شد. ÙÚ© Ú©ÙÙ
٠تغÙر ÙاÙت",
+DlgSpellManyChanges : "Ú©Ùتر٠اÙ
Ùا اÙجاÙ
شد. %1 Ú©ÙÙ
٠تغÙر ÙاÙت",
+
+IeSpellDownload : "Ú©Ùتر٠کÙÙد٠اÙ
Ùا Ùصب Ùشد٠است. Ø¢Ùا Ù
اÙÙÙد Ø¢Ùرا ÙÙ
اکÙÙ٠درÙاÙت Ú©ÙÙدØ",
+
+// Button Dialog
+DlgButtonText : "Ù
ت٠(Ù
Ùدار)",
+DlgButtonType : "ÙÙع",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "ÙاÙ
",
+DlgCheckboxValue : "Ù
Ùدار",
+DlgCheckboxSelected : "برگزÙدÙ",
+
+// Form Dialog
+DlgFormName : "ÙاÙ
",
+DlgFormAction : "اÙداÙ
",
+DlgFormMethod : "Ù
تد",
+
+// Select Field Dialog
+DlgSelectName : "ÙاÙ
",
+DlgSelectValue : "Ù
Ùدار",
+DlgSelectSize : "اÙدازÙ",
+DlgSelectLines : "خطÙØ·",
+DlgSelectChkMulti : "اÙتخاب ÚÙد گزÙÙÙ Ø§Û Ù
جاز",
+DlgSelectOpAvail : "گزÙÙÙ ÙØ§Û Ù
ÙجÙد",
+DlgSelectOpText : "Ù
تÙ",
+DlgSelectOpValue : "Ù
Ùدار",
+DlgSelectBtnAdd : "اضاÙÙ",
+DlgSelectBtnModify : "ÙÙراÙØ´",
+DlgSelectBtnUp : "باÙا",
+DlgSelectBtnDown : "پائÙÙ",
+DlgSelectBtnSetValue : "تÙظÙÙ
ب٠عÙÙا٠Ù
Ùدار برگزÙدÙ",
+DlgSelectBtnDelete : "ØØ°Ù",
+
+// Textarea Dialog
+DlgTextareaName : "ÙاÙ
",
+DlgTextareaCols : "ستÙÙÙا",
+DlgTextareaRows : "سطرÙا",
+
+// Text Field Dialog
+DlgTextName : "ÙاÙ
",
+DlgTextValue : "Ù
Ùدار",
+DlgTextCharWidth : "Ù¾ÙÙØ§Û Ø´ÙاسÙ",
+DlgTextMaxChars : "بÙØ´ÙÙÙ Ø´ÙاسÙ",
+DlgTextType : "ÙÙع",
+DlgTextTypeText : "Ù
تÙ",
+DlgTextTypePass : "Ú©ÙÙ
٠عبÙر",
+
+// Hidden Field Dialog
+DlgHiddenName : "ÙاÙ
",
+DlgHiddenValue : "Ù
Ùدار",
+
+// Bulleted List Dialog
+BulletedListProp : "ÙÙÚÚ¯ÙÙØ§Û ÙÙرست دکÙ
٠اÛ",
+NumberedListProp : "ÙÙÚÚ¯ÙÙØ§Û ÙÙرست عددÛ",
+DlgLstType : "ÙÙع",
+DlgLstTypeCircle : "داÙرÙ",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Ù
ربع",
+DlgLstTypeNumbers : "Ø´Ù
ار٠Ùا (1Ø 2Ø 3)",
+DlgLstTypeLCase : "ØرÙÙ Ú©ÙÚÚ© (aØ bØ c)",
+DlgLstTypeUCase : "ØرÙ٠بزرگ (AØ BØ C)",
+DlgLstTypeSRoman : "ارÙاÙ
ÙÙÙاÙÛ Ú©ÙÚÚ© (iØ iiØ iii)",
+DlgLstTypeLRoman : "ارÙاÙ
ÙÙÙاÙÛ Ø¨Ø²Ø±Ú¯ (IØ IIØ III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "عÙ
ÙÙ
Û",
+DlgDocBackTab : "پس زÙ
ÙÙÙ",
+DlgDocColorsTab : "رÙÚ¯Ùا Ù ØاشÙÙ Ùا",
+DlgDocMetaTab : "ÙرادادÙ",
+
+DlgDocPageTitle : "عÙÙا٠صÙØÙ",
+DlgDocLangDir : "جÙت زباÙ",
+DlgDocLangDirLTR : "ÚÙ¾ ب٠راست (LTF(",
+DlgDocLangDirRTL : "راست ب٠ÚÙ¾ (RTL(",
+DlgDocLangCode : "کد زباÙ",
+DlgDocCharSet : "رÙ
Ø²Ú¯Ø°Ø§Ø±Û ÙÙÙسÙ",
+DlgDocCharSetOther : "رÙ
Ø²Ú¯Ø°Ø§Ø±Û ÙÙÙس٠ÙØ§Û Ø¯Ùگر",
+
+DlgDocDocType : "عÙÙا٠ÙÙع سÙد",
+DlgDocDocTypeOther : "عÙÙا٠ÙÙع سÙد ÙØ§Û Ø¯Ùگر",
+DlgDocIncXHTML : "شاÙ
٠تعارÙÙ XHTML",
+DlgDocBgColor : "رÙÚ¯ پس زÙ
ÙÙÙ",
+DlgDocBgImage : "URL تصÙÙر پس زÙ
ÙÙÙ",
+DlgDocBgNoScroll : "پس زÙ
ÙÙ٠غÙر Ø·ÙÙ
ارÛ",
+DlgDocCText : "Ù
تÙ",
+DlgDocCLink : "ÙÙÙÚ©",
+DlgDocCVisited : "ÙÙÙÚ© Ù
شاÙد٠شدÙ",
+DlgDocCActive : "ÙÙÙÚ© ÙعاÙ",
+DlgDocMargins : "ØاشÙ٠صÙØÙ",
+DlgDocMaTop : "رÙ",
+DlgDocMaLeft : "ÚÙ¾",
+DlgDocMaRight : "راست",
+DlgDocMaBottom : "زÙر",
+DlgDocMeIndex : "Ú©ÙÙ
ات Ú©ÙÙØ¯Û Ø§ÙدÙس کرد٠سÙد (با کاÙ
ا جدا Ø´ÙÙد)",
+DlgDocMeDescr : "سÙد",
+DlgDocMeAuthor : "ÙÙÙسÙدÙ",
+DlgDocMeCopy : "Ú©Ù¾Û Ø±Ø§Ùت",
+DlgDocPreview : "Ù¾ÙØ´ ÙÙ
اÙØ´",
+
+// Templates Dialog
+Templates : "اÙÚ¯ÙÙا",
+DlgTemplatesTitle : "اÙÚ¯ÙÙØ§Û Ù
ØتÙÙات",
+DlgTemplatesSelMsg : "ÙØ·Ùا اÙÚ¯ÙÛ Ù
Ùرد Ùظر را Ø¨Ø±Ø§Û Ø¨Ø§Ø² کرد٠در ÙÙراÙشگر اÙتخاب ÙÙ
ائÙد<br>(Ù
ØتÙÙات اصÙÛ Ø§Ø² دست Ø®ÙاÙÙد رÙت):",
+DlgTemplatesLoading : "Ø¨Ø§Ø±Ú¯Ø°Ø§Ø±Û ÙÙرست اÙÚ¯ÙÙا. ÙØ·Ùا صبر Ú©ÙÙد...",
+DlgTemplatesNoTpl : "(اÙÚ¯ÙØ¦Û ØªØ¹Ø±ÙÙ Ùشد٠است)",
+
+// About Dialog
+DlgAboutAboutTab : "دربارÙ",
+DlgAboutBrowserInfoTab : "اطÙاعات Ù
رÙرگر",
+DlgAboutVersion : "Ùگارش",
+DlgAboutLicense : "ÙÙساÙس تØت تÙاÙÙÙاÙ
Ù GNU Lesser General Public License",
+DlgAboutInfo : "Ø¨Ø±Ø§Û Ø§Ø·Ùاعات بÙشتر ب٠آدرس زÙر برÙÙد"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/fcklanguagemanager.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/fcklanguagemanager.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/fcklanguagemanager.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,71 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fcklanguagemanager.js
+ * This file list all available languages in the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+var FCKLanguageManager = new Object() ;
+
+FCKLanguageManager.AvailableLanguages =
+{
+ 'ar' : 'Arabic',
+ 'bg' : 'Bulgarian',
+ 'bs' : 'Bosnian',
+ 'ca' : 'Catalan',
+ 'cs' : 'Czech',
+ 'da' : 'Danish',
+ 'de' : 'German',
+ 'el' : 'Greek',
+ 'en' : 'English',
+ 'en-au' : 'English (Australia)',
+ 'en-uk' : 'English (United Kingdom)',
+ 'eo' : 'Esperanto',
+ 'es' : 'Spanish',
+ 'et' : 'Estonian',
+ 'eu' : 'Basque',
+ 'fa' : 'Persian',
+ 'fi' : 'Finnish',
+ 'fo' : 'Faroese',
+ 'fr' : 'French',
+ 'gl' : 'Galician',
+ 'he' : 'Hebrew',
+ 'hr' : 'Croatian',
+ 'hu' : 'Hungarian',
+ 'it' : 'Italian',
+ 'ja' : 'Japanese',
+ 'ko' : 'Korean',
+ 'lt' : 'Lithuanian',
+ 'mn' : 'Mongolian',
+ 'ms' : 'Malay',
+ 'nl' : 'Dutch',
+ 'no' : 'Norwegian',
+ 'pl' : 'Polish',
+ 'pt' : 'Portuguese (Portugal)',
+ 'pt-br' : 'Portuguese (Brazil)',
+ 'ro' : 'Romanian',
+ 'ru' : 'Russian',
+ 'sk' : 'Slovak',
+ 'sl' : 'Slovenian',
+ 'sr' : 'Serbian (Cyrillic)',
+ 'sr-latn' : 'Serbian (Latin)',
+ 'sv' : 'Swedish',
+ 'th' : 'Thai',
+ 'tr' : 'Turkish',
+ 'uk' : 'Ukrainian',
+ 'vi' : 'Vietnamese',
+ 'zh' : 'Chinese Traditional',
+ 'zh-cn' : 'Chinese Simplified'
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/fi.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/fi.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/fi.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fi.js
+ * Finnish language file.
+ *
+ * File Authors:
+ * Marko Korhonen (marko.korhonen at datafisher.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Piilota työkalurivi",
+ToolbarExpand : "Näytä työkalurivi",
+
+// Toolbar Items and Context Menu
+Save : "Tallenna",
+NewPage : "Tyhjennä",
+Preview : "Esikatsele",
+Cut : "Leikkaa",
+Copy : "Kopioi",
+Paste : "Liitä",
+PasteText : "Liitä tekstinä",
+PasteWord : "Liitä Wordista",
+Print : "Tulosta",
+SelectAll : "Valitse kaikki",
+RemoveFormat : "Poista muotoilu",
+InsertLinkLbl : "Linkki",
+InsertLink : "Lisää linkki/muokkaa linkkiä",
+RemoveLink : "Poista linkki",
+Anchor : "Lisää ankkuri/muokkaa ankkuria",
+InsertImageLbl : "Kuva",
+InsertImage : "Lisää kuva/muokkaa kuvaa",
+InsertFlashLbl : "Flash",
+InsertFlash : "Lisää/muokkaa Flashia",
+InsertTableLbl : "Taulu",
+InsertTable : "Lisää taulu/muokkaa taulua",
+InsertLineLbl : "Murtoviiva",
+InsertLine : "Lisää murtoviiva",
+InsertSpecialCharLbl: "Erikoismerkki",
+InsertSpecialChar : "Lisää erikoismerkki",
+InsertSmileyLbl : "Hymiö",
+InsertSmiley : "Lisää hymiö",
+About : "FCKeditorista",
+Bold : "Lihavoitu",
+Italic : "Kursivoitu",
+Underline : "Alleviivattu",
+StrikeThrough : "Yliviivattu",
+Subscript : "Alaindeksi",
+Superscript : "Yläindeksi",
+LeftJustify : "Tasaa vasemmat reunat",
+CenterJustify : "Keskitä",
+RightJustify : "Tasaa oikeat reunat",
+BlockJustify : "Tasaa molemmat reunat",
+DecreaseIndent : "Pienennä sisennystä",
+IncreaseIndent : "Suurenna sisennystä",
+Undo : "Kumoa",
+Redo : "Toista",
+NumberedListLbl : "Numerointi",
+NumberedList : "Lisää/poista numerointi",
+BulletedListLbl : "Luottelomerkit",
+BulletedList : "Lisää/poista luottelomerkit",
+ShowTableBorders : "Näytä taulun rajat",
+ShowDetails : "Näytä muotoilu",
+Style : "Tyyli",
+FontFormat : "Muotoilu",
+Font : "Fontti",
+FontSize : "Koko",
+TextColor : "Tekstiväri",
+BGColor : "Taustaväri",
+Source : "Koodi",
+Find : "Etsi",
+Replace : "Korvaa",
+SpellCheck : "Tarkista oikeinkirjoitus",
+UniversalKeyboard : "Universaali näppäimistö",
+
+Form : "Lomake",
+Checkbox : "Valintaruutu",
+RadioButton : "Radiopainike",
+TextField : "Tekstikenttä",
+Textarea : "Tekstilaatikko",
+HiddenField : "Piilokenttä",
+Button : "Painike",
+SelectionField : "Valintakenttä",
+ImageButton : "Kuvapainike",
+
+// Context Menu
+EditLink : "Muokkaa linkkiä",
+InsertRow : "Lisää rivi",
+DeleteRows : "Poista rivit",
+InsertColumn : "Lisää sarake",
+DeleteColumns : "Poista sarakkeet",
+InsertCell : "Lisää solu",
+DeleteCells : "Poista solut",
+MergeCells : "Yhdistä solut",
+SplitCell : "Jaa solu",
+CellProperties : "Solun ominaisuudet",
+TableProperties : "Taulun ominaisuudet",
+ImageProperties : "Kuvan ominaisuudet",
+FlashProperties : "Flash ominaisuudet",
+
+AnchorProp : "Ankkurin ominaisuudet",
+ButtonProp : "Painikkeen ominaisuudet",
+CheckboxProp : "Valintaruudun ominaisuudet",
+HiddenFieldProp : "Piilokentän ominaisuudet",
+RadioButtonProp : "Radiopainikkeen ominaisuudet",
+ImageButtonProp : "Kuvapainikkeen ominaisuudet",
+TextFieldProp : "Tekstikentän ominaisuudet",
+SelectionFieldProp : "Valintakentän ominaisuudet",
+TextareaProp : "Tekstilaatikon ominaisuudet",
+FormProp : "Lomakkeen ominaisuudet",
+
+FontFormats : "Normaali;Muotoiltu;Osoite;Otsikko 1;Otsikko 2;Otsikko 3;Otsikko 4;Otsikko 5;Otsikko 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Prosessoidaan XHTML:ää. Odota hetki...",
+Done : "Valmis",
+PasteWordConfirm : "Teksti, jonka haluat liittää, näyttää olevan kopioitu Wordista. Haluatko puhdistaa sen ennen liittämistä?",
+NotCompatiblePaste : "Tämä komento toimii vain Internet Explorer 5.5:ssa tai uudemmassa. Haluatko liittää ilman puhdistusta?",
+UnknownToolbarItem : "Tuntemanton työkalu \"%1\"",
+UnknownCommand : "Tuntematon komento \"%1\"",
+NotImplemented : "Komentoa ei ole liitetty sovellukseen",
+UnknownToolbarSet : "Työkalukokonaisuus \"%1\" ei ole olemassa",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Peruuta",
+DlgBtnClose : "Sulje",
+DlgBtnBrowseServer : "Selaa palvelinta",
+DlgAdvancedTag : "Lisäominaisuudet",
+DlgOpOther : "Muut",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Lisää URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ei asetettu>",
+DlgGenId : "Tunniste",
+DlgGenLangDir : "Kielen suunta",
+DlgGenLangDirLtr : "Vasemmalta oikealle (LTR)",
+DlgGenLangDirRtl : "Oikealta vasemmalle (RTL)",
+DlgGenLangCode : "Kielikoodi",
+DlgGenAccessKey : "Pikanäppäin",
+DlgGenName : "Nimi",
+DlgGenTabIndex : "Tabulaattori indeksi",
+DlgGenLongDescr : "Pitkän kuvauksen URL",
+DlgGenClass : "Tyyliluokat",
+DlgGenTitle : "Avustava otsikko",
+DlgGenContType : "Avustava sisällön tyyppi",
+DlgGenLinkCharset : "Linkitetty kirjaimisto",
+DlgGenStyle : "Tyyli",
+
+// Image Dialog
+DlgImgTitle : "Kuvan ominaisuudet",
+DlgImgInfoTab : "Kuvan tiedot",
+DlgImgBtnUpload : "Lähetä palvelimelle",
+DlgImgURL : "Osoite",
+DlgImgUpload : "Lisää kuva",
+DlgImgAlt : "Vaihtoehtoinen teksti",
+DlgImgWidth : "Leveys",
+DlgImgHeight : "Korkeus",
+DlgImgLockRatio : "Lukitse suhteet",
+DlgBtnResetSize : "Alkuperäinen koko",
+DlgImgBorder : "Raja",
+DlgImgHSpace : "Vaakatila",
+DlgImgVSpace : "Pystytila",
+DlgImgAlign : "Kohdistus",
+DlgImgAlignLeft : "Vasemmalle",
+DlgImgAlignAbsBottom: "Aivan alas",
+DlgImgAlignAbsMiddle: "Aivan keskelle",
+DlgImgAlignBaseline : "Alas (teksti)",
+DlgImgAlignBottom : "Alas",
+DlgImgAlignMiddle : "Keskelle",
+DlgImgAlignRight : "Oikealle",
+DlgImgAlignTextTop : "Ylös (teksti)",
+DlgImgAlignTop : "Ylös",
+DlgImgPreview : "Esikatselu",
+DlgImgAlertUrl : "Kirjoita kuvan osoite (URL)",
+DlgImgLinkTab : "Linkki",
+
+// Flash Dialog
+DlgFlashTitle : "Flash ominaisuudet",
+DlgFlashChkPlay : "Automaattinen käynnistys",
+DlgFlashChkLoop : "Toisto",
+DlgFlashChkMenu : "Näytä Flash-valikko",
+DlgFlashScale : "Levitä",
+DlgFlashScaleAll : "Näytä kaikki",
+DlgFlashScaleNoBorder : "Ei rajaa",
+DlgFlashScaleFit : "Tarkka koko",
+
+// Link Dialog
+DlgLnkWindowTitle : "Linkki",
+DlgLnkInfoTab : "Linkin tiedot",
+DlgLnkTargetTab : "Kohde",
+
+DlgLnkType : "Linkkityyppi",
+DlgLnkTypeURL : "Osoite",
+DlgLnkTypeAnchor : "Ankkuri tässä sivussa",
+DlgLnkTypeEMail : "Sähköposti",
+DlgLnkProto : "Protokolla",
+DlgLnkProtoOther : "<muu>",
+DlgLnkURL : "Osoite",
+DlgLnkAnchorSel : "Valitse ankkuri",
+DlgLnkAnchorByName : "Ankkurin nimen mukaan",
+DlgLnkAnchorById : "Ankkurin ID:n mukaan",
+DlgLnkNoAnchors : "<Ei ankkureita tässä dokumentissa>",
+DlgLnkEMail : "Sähköpostiosoite",
+DlgLnkEMailSubject : "Aihe",
+DlgLnkEMailBody : "Viesti",
+DlgLnkUpload : "Lisää tiedosto",
+DlgLnkBtnUpload : "Lähetä palvelimelle",
+
+DlgLnkTarget : "Kohde",
+DlgLnkTargetFrame : "<kehys>",
+DlgLnkTargetPopup : "<popup ikkuna>",
+DlgLnkTargetBlank : "Uusi ikkuna (_blank)",
+DlgLnkTargetParent : "Emoikkuna (_parent)",
+DlgLnkTargetSelf : "Sama ikkuna (_self)",
+DlgLnkTargetTop : "Päällimmäisin ikkuna (_top)",
+DlgLnkTargetFrameName : "Kohdekehyksen nimi",
+DlgLnkPopWinName : "Popup ikkunan nimi",
+DlgLnkPopWinFeat : "Popup ikkunan ominaisuudet",
+DlgLnkPopResize : "Venytettävä",
+DlgLnkPopLocation : "Osoiterivi",
+DlgLnkPopMenu : "Valikkorivi",
+DlgLnkPopScroll : "Vierityspalkit",
+DlgLnkPopStatus : "Tilarivi",
+DlgLnkPopToolbar : "Vakiopainikkeet",
+DlgLnkPopFullScrn : "Täysi ikkuna (IE)",
+DlgLnkPopDependent : "Riippuva (Netscape)",
+DlgLnkPopWidth : "Leveys",
+DlgLnkPopHeight : "Korkeus",
+DlgLnkPopLeft : "Vasemmalta (px)",
+DlgLnkPopTop : "Ylhäältä (px)",
+
+DlnLnkMsgNoUrl : "Linkille on kirjoitettava URL",
+DlnLnkMsgNoEMail : "Kirjoita sähköpostiosoite",
+DlnLnkMsgNoAnchor : "Valitse ankkuri",
+
+// Color Dialog
+DlgColorTitle : "Valitse väri",
+DlgColorBtnClear : "Tyhjennä",
+DlgColorHighlight : "Kohdalla",
+DlgColorSelected : "Valittu",
+
+// Smiley Dialog
+DlgSmileyTitle : "Lisää hymiö",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Valitse erikoismerkki",
+
+// Table Dialog
+DlgTableTitle : "Taulun ominaisuudet",
+DlgTableRows : "Rivit",
+DlgTableColumns : "Sarakkeet",
+DlgTableBorder : "Rajan paksuus",
+DlgTableAlign : "Kohdistus",
+DlgTableAlignNotSet : "<ei asetettu>",
+DlgTableAlignLeft : "Vasemmalle",
+DlgTableAlignCenter : "Keskelle",
+DlgTableAlignRight : "Oikealle",
+DlgTableWidth : "Leveys",
+DlgTableWidthPx : "pikseliä",
+DlgTableWidthPc : "prosenttia",
+DlgTableHeight : "Korkeus",
+DlgTableCellSpace : "Solujen väli",
+DlgTableCellPad : "Solujen sisennys",
+DlgTableCaption : "Otsikko",
+
+// Table Cell Dialog
+DlgCellTitle : "Solun ominaisuudet",
+DlgCellWidth : "Leveys",
+DlgCellWidthPx : "pikseliä",
+DlgCellWidthPc : "prosenttia",
+DlgCellHeight : "Korkeus",
+DlgCellWordWrap : "Tekstikierrätys",
+DlgCellWordWrapNotSet : "<Ei asetettu>",
+DlgCellWordWrapYes : "Kyllä",
+DlgCellWordWrapNo : "Ei",
+DlgCellHorAlign : "Vaakakohdistus",
+DlgCellHorAlignNotSet : "<Ei asetettu>",
+DlgCellHorAlignLeft : "Vasemmalle",
+DlgCellHorAlignCenter : "Keskelle",
+DlgCellHorAlignRight: "Oikealle",
+DlgCellVerAlign : "Pystykohdistus",
+DlgCellVerAlignNotSet : "<Ei asetettu>",
+DlgCellVerAlignTop : "Ylös",
+DlgCellVerAlignMiddle : "Keskelle",
+DlgCellVerAlignBottom : "Alas",
+DlgCellVerAlignBaseline : "Tekstin alas",
+DlgCellRowSpan : "Rivin jatkuvuus",
+DlgCellCollSpan : "Sarakkeen jatkuvuus",
+DlgCellBackColor : "Taustaväri",
+DlgCellBorderColor : "Rajan väri",
+DlgCellBtnSelect : "Valitse...",
+
+// Find Dialog
+DlgFindTitle : "Etsi",
+DlgFindFindBtn : "Etsi",
+DlgFindNotFoundMsg : "Etsittyä tekstiä ei löytynyt.",
+
+// Replace Dialog
+DlgReplaceTitle : "Korvaa",
+DlgReplaceFindLbl : "Etsi mitä:",
+DlgReplaceReplaceLbl : "Korvaa tällä:",
+DlgReplaceCaseChk : "Sama kirjainkoko",
+DlgReplaceReplaceBtn : "Korvaa",
+DlgReplaceReplAllBtn : "Korvaa kaikki",
+DlgReplaceWordChk : "Koko sana",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Selaimesi turva-asetukset eivät salli editorin toteuttaa liittämistä. Käytä näppäimistöä liittämiseen (Ctrl+V).",
+PasteErrorCut : "Selaimesi turva-asetukset eivät salli editorin toteuttaa leikkaamista. Käytä näppäimistöä leikkaamiseen (Ctrl+X).",
+PasteErrorCopy : "Selaimesi turva-asetukset eivät salli editorin toteuttaa kopioimista. Käytä näppäimistöä kopioimiseen (Ctrl+C).",
+
+PasteAsText : "Liitä tekstinä",
+PasteFromWord : "Liitä Wordista",
+
+DlgPasteMsg2 : "Liitä painamalla (<STRONG>Ctrl+V</STRONG>) ja painamalla <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Jätä huomioimatta fonttimääritykset",
+DlgPasteRemoveStyles : "Poista tyylimääritykset",
+DlgPasteCleanBox : "Tyhjennä",
+
+
+// Color Picker
+ColorAutomatic : "Automaattinen",
+ColorMoreColors : "Lisää värejä...",
+
+// Document Properties
+DocProps : "Dokumentin ominaisuudet",
+
+// Anchor Dialog
+DlgAnchorTitle : "Ankkurin ominaisuudet",
+DlgAnchorName : "Nimi",
+DlgAnchorErrorName : "Ankkurille on kirjoitettava nimi",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Ei sanakirjassa",
+DlgSpellChangeTo : "Vaihda",
+DlgSpellBtnIgnore : "Jätä huomioimatta",
+DlgSpellBtnIgnoreAll : "Jätä kaikki huomioimatta",
+DlgSpellBtnReplace : "Korvaa",
+DlgSpellBtnReplaceAll : "Korvaa kaikki",
+DlgSpellBtnUndo : "Kumoa",
+DlgSpellNoSuggestions : "Ei ehdotuksia",
+DlgSpellProgress : "Tarkistus käynnissä...",
+DlgSpellNoMispell : "Tarkistus valmis: Ei virheitä",
+DlgSpellNoChanges : "Tarkistus valmis: Yhtään sanaa ei muutettu",
+DlgSpellOneChange : "Tarkistus valmis: Yksi sana muutettiin",
+DlgSpellManyChanges : "Tarkistus valmis: %1 sanaa muutettiin",
+
+IeSpellDownload : "Oikeinkirjoituksen tarkistusta ei ole asennettu. Haluatko ladata sen nyt?",
+
+// Button Dialog
+DlgButtonText : "Teksti (arvo)",
+DlgButtonType : "Tyyppi",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nimi",
+DlgCheckboxValue : "Arvo",
+DlgCheckboxSelected : "Valittu",
+
+// Form Dialog
+DlgFormName : "Nimi",
+DlgFormAction : "Toiminto",
+DlgFormMethod : "Tapa",
+
+// Select Field Dialog
+DlgSelectName : "Nimi",
+DlgSelectValue : "Arvo",
+DlgSelectSize : "Koko",
+DlgSelectLines : "Rivit",
+DlgSelectChkMulti : "Salli usea valinta",
+DlgSelectOpAvail : "Ominaisuudet",
+DlgSelectOpText : "Teksti",
+DlgSelectOpValue : "Arvo",
+DlgSelectBtnAdd : "Lisää",
+DlgSelectBtnModify : "Muuta",
+DlgSelectBtnUp : "Ylös",
+DlgSelectBtnDown : "Alas",
+DlgSelectBtnSetValue : "Aseta valituksi",
+DlgSelectBtnDelete : "Poista",
+
+// Textarea Dialog
+DlgTextareaName : "Nimi",
+DlgTextareaCols : "Sarakkeita",
+DlgTextareaRows : "Rivejä",
+
+// Text Field Dialog
+DlgTextName : "Nimi",
+DlgTextValue : "Arvo",
+DlgTextCharWidth : "Leveys",
+DlgTextMaxChars : "Maksimi merkkimäärä",
+DlgTextType : "Tyyppi",
+DlgTextTypeText : "Teksti",
+DlgTextTypePass : "Salasana",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nimi",
+DlgHiddenValue : "Arvo",
+
+// Bulleted List Dialog
+BulletedListProp : "Luettelon ominaisuudet",
+NumberedListProp : "Numeroinnin ominaisuudet",
+DlgLstType : "Tyyppi",
+DlgLstTypeCircle : "Kehä",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Neliö",
+DlgLstTypeNumbers : "Numerot (1, 2, 3)",
+DlgLstTypeLCase : "Pienet kirjaimet (a, b, c)",
+DlgLstTypeUCase : "Isot kirjaimet (A, B, C)",
+DlgLstTypeSRoman : "Pienet roomalaiset numerot (i, ii, iii)",
+DlgLstTypeLRoman : "Isot roomalaiset numerot (Ii, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Yleiset",
+DlgDocBackTab : "Tausta",
+DlgDocColorsTab : "Värit ja marginaalit",
+DlgDocMetaTab : "Meta-tieto",
+
+DlgDocPageTitle : "Sivun nimi",
+DlgDocLangDir : "Kielen suunta",
+DlgDocLangDirLTR : "Vasemmalta oikealle (LTR)",
+DlgDocLangDirRTL : "Oikealta vasemmalle (RTL)",
+DlgDocLangCode : "Kielikoodi",
+DlgDocCharSet : "Merkistäkoodaus",
+DlgDocCharSetOther : "Muu merkistäkoodaus",
+
+DlgDocDocType : "Dokumentin tyyppi",
+DlgDocDocTypeOther : "Muu dokumentin tyyppi",
+DlgDocIncXHTML : "Lisää XHTML julistukset",
+DlgDocBgColor : "Taustaväri",
+DlgDocBgImage : "Taustakuva",
+DlgDocBgNoScroll : "Paikallaanpysyvä tausta",
+DlgDocCText : "Teksti",
+DlgDocCLink : "Linkki",
+DlgDocCVisited : "Vierailtu linkki",
+DlgDocCActive : "Aktiivinen linkki",
+DlgDocMargins : "Sivun marginaalit",
+DlgDocMaTop : "Ylä",
+DlgDocMaLeft : "Vasen",
+DlgDocMaRight : "Oikea",
+DlgDocMaBottom : "Ala",
+DlgDocMeIndex : "Hakusanat (pilkulla erotettuna)",
+DlgDocMeDescr : "Kuvaus",
+DlgDocMeAuthor : "Tekijä",
+DlgDocMeCopy : "Tekijänoikeudet",
+DlgDocPreview : "Esikatselu",
+
+// Templates Dialog
+Templates : "Pohjat",
+DlgTemplatesTitle : "Sisältöpohjat",
+DlgTemplatesSelMsg : "Valitse pohja editoriin<br>(aiempi sisältö menetetään):",
+DlgTemplatesLoading : "Ladataan listaa pohjista. Hetkinen...",
+DlgTemplatesNoTpl : "(Ei määriteltyjä pohjia)",
+
+// About Dialog
+DlgAboutAboutTab : "Editorista",
+DlgAboutBrowserInfoTab : "Selaimen tiedot",
+DlgAboutVersion : "versio",
+DlgAboutLicense : "Lisenssi: GNU Lesser General Public License",
+DlgAboutInfo : "Lisää tietoa osoitteesta"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/fo.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/fo.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/fo.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fo.js
+ * Faroese language file.
+ *
+ * File Authors:
+ * SÃmin Lassaberg
+ * Helgi Arnthorsson
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Goym amboðalistan",
+ToolbarExpand : "VÃs amboðalistan",
+
+// Toolbar Items and Context Menu
+Save : "Geim",
+NewPage : "Nýggj sÃða",
+Preview : "VÃs dømi",
+Cut : "Klipp",
+Copy : "Avrita",
+Paste : "Set inn",
+PasteText : "Set inn sum reinan tekst",
+PasteWord : "Set inn frá Word",
+Print : "Prenta",
+SelectAll : "Markera alt",
+RemoveFormat : "Sletta sniðgeving",
+InsertLinkLbl : "Leinkja",
+InsertLink : "Seta inn/Broyta Leinkju",
+RemoveLink : "Sletta Leinkju",
+Anchor : "Seta inn/Broyta staðsetingarmerki",
+InsertImageLbl : "Seta inn mynd",
+InsertImage : "Seta inn/Broyta mynd",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Talva",
+InsertTable : "Seta inn/Broyta talvu",
+InsertLineLbl : "Linja",
+InsertLine : "Seta inn vatnrætta linju",
+InsertSpecialCharLbl: "Serlig tekn",
+InsertSpecialChar : "Seta inn serligt tekn",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Seta inn Smiley",
+About : "Um FCKeditor",
+Bold : "Feit",
+Italic : "Skástillað",
+Underline : "Undirstrikað",
+StrikeThrough : "Strikað yvir",
+Subscript : "Lækkað skrift",
+Superscript : "Hækkað skrift",
+LeftJustify : "Vinstristillað",
+CenterJustify : "Miðstillað",
+RightJustify : "Hægristillað",
+BlockJustify : "Beinir tekstkantar",
+DecreaseIndent : "Ãkja innrykk",
+IncreaseIndent : "Minka innrykk",
+Undo : "Angra",
+Redo : "Broyt aftur à upprunamynd",
+NumberedListLbl : "Talsettur listi",
+NumberedList : "Seta inn/Sletta talsettan lista",
+BulletedListLbl : "Punktsettur listi",
+BulletedList : "Seta inn/Sletta punktsettan lista",
+ShowTableBorders : "VÃsa talvukantar ",
+ShowDetails : "VÃsa detaljur",
+Style : "Tekstsnið",
+FontFormat : "Sniðgeving",
+Font : "Skrift",
+FontSize : "Skriftstødd",
+TextColor : "Tekstlitur",
+BGColor : "Litur aftanfyri",
+Source : "Kelda",
+Find : "Leita",
+Replace : "Set à staðin",
+SpellCheck : "Stavseting",
+UniversalKeyboard : "Universalt Tastatur",
+
+Form : "Seta inn Form",
+Checkbox : "Seta inn Avmerkingarboks",
+RadioButton : "Seta inn Radioknap",
+TextField : "Seta inn Tekstteig",
+Textarea : "Seta inn Tekstøki",
+HiddenField : "Seta inn GoymdanTeig",
+Button : "Seta inn knapp",
+SelectionField : "Seta inn Valteig",
+ImageButton : "Seta inn Myndaknapp",
+
+// Context Menu
+EditLink : "Broyt leinkju",
+InsertRow : "Seta inn rekkju",
+DeleteRows : "Sletta rekkjur",
+InsertColumn : "Seta inn søjlur",
+DeleteColumns : "Sletta søjlur",
+InsertCell : "Seta inn sellu",
+DeleteCells : "Sletta sellu",
+MergeCells : "Flætta sellur",
+SplitCell : "Deila sellur",
+CellProperties : "Eginleikar fyri sellu",
+TableProperties : "Eginleikar fyri talvu",
+ImageProperties : "Eginleikar fyri mynd",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Eginleikar fyri staðsetingarpunkt",
+ButtonProp : "Eginleikar fyri knapp",
+CheckboxProp : "Eginleikar fyri avmerkingarboks",
+HiddenFieldProp : "Eginleikar fyri goymdan teig",
+RadioButtonProp : "Eginleikar fyri radioknapp",
+ImageButtonProp : "Eginleikar fyri myndaknapp",
+TextFieldProp : "Eginleikar fyri Tekstateig",
+SelectionFieldProp : "Eginleikar fyri Valteig",
+TextareaProp : "Eginleikar fyri Tekstaøki",
+FormProp : "Eginleikar fyri form",
+
+FontFormats : "Normalt;Sniðgevið;Adressa;Yvirskrift 1;Yvirskrift 2;Yvirskrift 3;Yvirskrift 4;Yvirskrift 5;Yvirskrift 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Viðgerir XHTML. BÃða...",
+Done : "Liðugt",
+PasteWordConfirm : "Teksturin, tú roynir at seta inn, sýnist at vera frá Word. Vilt tú reinsa tekstin, áðrenn hann verður settur inn?",
+NotCompatiblePaste : "Hesin ordri er tøkur à Internet Explorer 5.5 og nýggjari. Vilt tú seta tekstin inn, uttan at reinsa hann?",
+UnknownToolbarItem : "Ãkendur lutur à amboðalinju \"%1\"",
+UnknownCommand : "Kenni ikki ordra \"%1\"",
+NotImplemented : "Ordrin er ikki gjørdur virkin",
+UnknownToolbarSet : "Amboðalinjan \"%1\" finst ikki",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Angra",
+DlgBtnClose : "Lukka",
+DlgBtnBrowseServer : "Hyggja á servara",
+DlgAdvancedTag : "ÃtvÃðka",
+DlgOpOther : "<Annað>",
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<ikki sett>",
+DlgGenId : "Id",
+DlgGenLangDir : "Tekstakós",
+DlgGenLangDirLtr : "Vinstri móti høgri (LTR)",
+DlgGenLangDirRtl : "Høgri móti vinstri (RTL)",
+DlgGenLangCode : "Málkoda",
+DlgGenAccessKey : "Atgongdslykil",
+DlgGenName : "Navn",
+DlgGenTabIndex : "Tabulator Indeks",
+DlgGenLongDescr : "vÃðka frágreiðing",
+DlgGenClass : "Typografiark",
+DlgGenTitle : "Heiti",
+DlgGenContType : "Innihaldsslag",
+DlgGenLinkCharset : "Teknset",
+DlgGenStyle : "Prentlist",
+
+// Image Dialog
+DlgImgTitle : "Mynd eginleikar",
+DlgImgInfoTab : "Mynd info",
+DlgImgBtnUpload : "Send til serveren",
+DlgImgURL : "URL",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Annar tekstur",
+DlgImgWidth : "Breidd",
+DlgImgHeight : "Hædd",
+DlgImgLockRatio : "Læs støddarlutfall",
+DlgBtnResetSize : "Nulstilla stødd",
+DlgImgBorder : "Ramma",
+DlgImgHSpace : "HMargin",
+DlgImgVSpace : "VMargin",
+DlgImgAlign : "Justering",
+DlgImgAlignLeft : "Vinstra",
+DlgImgAlignAbsBottom: "Abs botnur",
+DlgImgAlignAbsMiddle: "Abs Miðja",
+DlgImgAlignBaseline : "Botnlinja",
+DlgImgAlignBottom : "Botnur",
+DlgImgAlignMiddle : "Miðja",
+DlgImgAlignRight : "Høgra",
+DlgImgAlignTextTop : "Tekstur ovast",
+DlgImgAlignTop : "Ovast",
+DlgImgPreview : "VÃs dømi",
+DlgImgAlertUrl : "Slá inn slóðina til myndina",
+DlgImgLinkTab : "Leinkja",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Leinkja",
+DlgLnkInfoTab : "Leinkju info",
+DlgLnkTargetTab : "Mál",
+
+DlgLnkType : "Leinkju slag",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Akker á hesari sÃðuni",
+DlgLnkTypeEMail : "Teldupostur",
+DlgLnkProto : "Protokoll",
+DlgLnkProtoOther : "<onnur>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "VEl eitt akker",
+DlgLnkAnchorByName : "Eftir akker navni",
+DlgLnkAnchorById : "Eftir element Id",
+DlgLnkNoAnchors : "<Tað eru ongi akker tøk à hesum dokumentinum;",
+DlgLnkEMail : "Teldupost Adresse",
+DlgLnkEMailSubject : "Evni",
+DlgLnkEMailBody : "Boð",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Send til servaran",
+
+DlgLnkTarget : "Mál",
+DlgLnkTargetFrame : "<ramma>",
+DlgLnkTargetPopup : "<popup vindeyga>",
+DlgLnkTargetBlank : "Nytt vindeyga (_blank)",
+DlgLnkTargetParent : "Omaná liggjandi vindeyga (_parent)",
+DlgLnkTargetSelf : "Sama vindeyga (_self)",
+DlgLnkTargetTop : "ovasta vindeyga (_top)",
+DlgLnkTargetFrameName : "vÃsa vindeygas navn",
+DlgLnkPopWinName : "Popup vindeygas navn",
+DlgLnkPopWinFeat : "Popup vindeygas eginleikar",
+DlgLnkPopResize : "Skalering",
+DlgLnkPopLocation : "Lokationslinja",
+DlgLnkPopMenu : "Menulinja",
+DlgLnkPopScroll : "Scrollbars",
+DlgLnkPopStatus : "Statuslinja",
+DlgLnkPopToolbar : "Værktøjslinja",
+DlgLnkPopFullScrn : "Fullur skermur (IE)",
+DlgLnkPopDependent : "Bundin (Netscape)",
+DlgLnkPopWidth : "Breidd",
+DlgLnkPopHeight : "Hædd",
+DlgLnkPopLeft : "Positión frá vinstru",
+DlgLnkPopTop : "Positión frá toppinum",
+
+DlnLnkMsgNoUrl : "Inntasta leinkju URL",
+DlnLnkMsgNoEMail : "Inntasta teldupost addressuna",
+DlnLnkMsgNoAnchor : "Vel akker",
+
+// Color Dialog
+DlgColorTitle : "vel farvu",
+DlgColorBtnClear : "sletta alt",
+DlgColorHighlight : "Markera",
+DlgColorSelected : "valt",
+
+// Smiley Dialog
+DlgSmileyTitle : "Innset ein smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "vel specialkarakter",
+
+// Table Dialog
+DlgTableTitle : "Tabel eginleikar",
+DlgTableRows : "Rekkjur",
+DlgTableColumns : "Kolonnur",
+DlgTableBorder : "Rammu stødd",
+DlgTableAlign : "Justering",
+DlgTableAlignNotSet : "<Ikki sett>",
+DlgTableAlignLeft : "Vinstrastilla",
+DlgTableAlignCenter : "Miðseta",
+DlgTableAlignRight : "Høgrastilla",
+DlgTableWidth : "Breidd",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "prosent",
+DlgTableHeight : "Hædd",
+DlgTableCellSpace : "Fjarstøða millum sellur",
+DlgTableCellPad : "Sellu breddi",
+DlgTableCaption : "Heiti",
+
+// Table Cell Dialog
+DlgCellTitle : "Sellu eginleikar",
+DlgCellWidth : "Breidd",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "prosent",
+DlgCellHeight : "Hædd",
+DlgCellWordWrap : "Orðbýti",
+DlgCellWordWrapNotSet : "<Ikki sett>",
+DlgCellWordWrapYes : "Ja",
+DlgCellWordWrapNo : "Nej",
+DlgCellHorAlign : "Horisontal justering",
+DlgCellHorAlignNotSet : "<Ikke sat>",
+DlgCellHorAlignLeft : "Vinstrastilla",
+DlgCellHorAlignCenter : "Miðsett",
+DlgCellHorAlignRight: "Høgrastilla",
+DlgCellVerAlign : "Lodrøtt Justering",
+DlgCellVerAlignNotSet : "<Ikki sett>",
+DlgCellVerAlignTop : "Ovast",
+DlgCellVerAlignMiddle : "Miðja",
+DlgCellVerAlignBottom : "Niðast",
+DlgCellVerAlignBaseline : "Botnlinja",
+DlgCellRowSpan : "Tal av rekkjum sellan spennur yvir",
+DlgCellCollSpan : "Tal av talrøðum sellan spennur yvir",
+DlgCellBackColor : "Bakgrundsfarva",
+DlgCellBorderColor : "rammufarva",
+DlgCellBtnSelect : "Vel...",
+
+// Find Dialog
+DlgFindTitle : "Finn",
+DlgFindFindBtn : "Finn",
+DlgFindNotFoundMsg : "Teksturin bleiv ikki funnin",
+
+// Replace Dialog
+DlgReplaceTitle : "Set à staðin",
+DlgReplaceFindLbl : "Finn:",
+DlgReplaceReplaceLbl : "Set à staðin við:",
+DlgReplaceCaseChk : "Munur á stórum og smáðum stavum",
+DlgReplaceReplaceBtn : "Set à staðin",
+DlgReplaceReplAllBtn : "Skift alt út",
+DlgReplaceWordChk : "Bert heil orð",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Leitarans trygdarinstillingar loyva ikki editorinum at innseta tekstin automatiskt. Brúka knappaborðið til at innseta tekstin (Ctrl+V).",
+PasteErrorCut : "Leitarans trygdarinstillingar loyva ikki editorinum at klippa tekstin automatiskt. Brúka à staðin knappaborðið til at klippa tekstin (Ctrl+X).",
+PasteErrorCopy : "Leitarans trygdarinstillingar loyva ikki editorinum at avrita tekstin automatiskt. Brúka à staðin knappaborðið til at avrita tekstin (Ctrl+V).",
+
+PasteAsText : "Seta inn som reinur tekstur",
+PasteFromWord : "Seta inn fra Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "Automatisk",
+ColorMoreColors : "Fleiri farvur...",
+
+// Document Properties
+DocProps : "Dokument eginleikar",
+
+// Anchor Dialog
+DlgAnchorTitle : "Akker eginleikar",
+DlgAnchorName : "Akker navn",
+DlgAnchorErrorName : "Slá innn akker navn",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Finnst ikki à orðabókini",
+DlgSpellChangeTo : "broyta til",
+DlgSpellBtnIgnore : "Ignorera",
+DlgSpellBtnIgnoreAll : "Ignorera alt",
+DlgSpellBtnReplace : "Skift út",
+DlgSpellBtnReplaceAll : "Skift út alt",
+DlgSpellBtnUndo : "Aftur",
+DlgSpellNoSuggestions : "- Einki uppskot -",
+DlgSpellProgress : "Stavarin arbeiðir...",
+DlgSpellNoMispell : "Stavarain liðugur: Eingin feilur funnin",
+DlgSpellNoChanges : "Stavarain liðugur: Einki orð broytt",
+DlgSpellOneChange : "Stavarain liðugur: Eitt orð broytt",
+DlgSpellManyChanges : "Stavarain liðugur: %1 orð broytt",
+
+IeSpellDownload : "Stavarin ikki lagdur inn. vilt tú heinta hann nú?",
+
+// Button Dialog
+DlgButtonText : "Tekstur (Virði)",
+DlgButtonType : "Slag",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Navn",
+DlgCheckboxValue : "Virði",
+DlgCheckboxSelected : "Valgt",
+
+// Form Dialog
+DlgFormName : "Navn",
+DlgFormAction : "Gerð",
+DlgFormMethod : "Háttur",
+
+// Select Field Dialog
+DlgSelectName : "Navn",
+DlgSelectValue : "Virði",
+DlgSelectSize : "Stødd",
+DlgSelectLines : "linjir",
+DlgSelectChkMulti : "Loyv fleiri valmøguleikar",
+DlgSelectOpAvail : "valmøguleikar",
+DlgSelectOpText : "Tekstur",
+DlgSelectOpValue : "Virði",
+DlgSelectBtnAdd : "Legg afturat",
+DlgSelectBtnModify : "Broyt",
+DlgSelectBtnUp : "Upp",
+DlgSelectBtnDown : "Niður",
+DlgSelectBtnSetValue : "Set sum útvald",
+DlgSelectBtnDelete : "Sletta",
+
+// Textarea Dialog
+DlgTextareaName : "Navn",
+DlgTextareaCols : "talrøð",
+DlgTextareaRows : "Rekkja",
+
+// Text Field Dialog
+DlgTextName : "Navn",
+DlgTextValue : "Virði",
+DlgTextCharWidth : "Sjónligt tal av bókstavum",
+DlgTextMaxChars : "Hægst loyvda tal av bókstavum",
+DlgTextType : "Slag",
+DlgTextTypeText : "Tekstur",
+DlgTextTypePass : "Koduorð",
+
+// Hidden Field Dialog
+DlgHiddenName : "Navn",
+DlgHiddenValue : "Virði",
+
+// Bulleted List Dialog
+BulletedListProp : "Punktteknsuppsetingar eginleikar",
+NumberedListProp : "Taluppsetingar eginleikar",
+DlgLstType : "Slag",
+DlgLstTypeCircle : "Sirkul",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Fýrakantur",
+DlgLstTypeNumbers : "Talmerkt (1, 2, 3)",
+DlgLstTypeLCase : "Smáir bókstavir (a, b, c)",
+DlgLstTypeUCase : "Stórir bókstavir (A, B, C)",
+DlgLstTypeSRoman : "Smá rómaratøl (i, ii, iii)",
+DlgLstTypeLRoman : "Stór rómaratøl (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Generelt",
+DlgDocBackTab : "Bakgrund",
+DlgDocColorsTab : "Farva og Breddin",
+DlgDocMetaTab : "Meta Information",
+
+DlgDocPageTitle : "SÃðu heiti",
+DlgDocLangDir : "Mál",
+DlgDocLangDirLTR : "Frá vinstru móti høgru (LTR)",
+DlgDocLangDirRTL : "Frá høgru móti vinstru (RTL)",
+DlgDocLangCode : "Landakoda",
+DlgDocCharSet : "Karakter set kodu",
+DlgDocCharSetOther : "Annar karakter set kodu",
+
+DlgDocDocType : "Dokument slag kategori",
+DlgDocDocTypeOther : "Annað dokument slag kategori",
+DlgDocIncXHTML : "Inkludere XHTML deklartion",
+DlgDocBgColor : "Bakgrundsfarva",
+DlgDocBgImage : "Bakgrundsmynd URL",
+DlgDocBgNoScroll : "Ikki scrollbar bakgrund",
+DlgDocCText : "Tekstur",
+DlgDocCLink : "Leinkja",
+DlgDocCVisited : "Vitja leinkja",
+DlgDocCActive : "Aktiv leinkja",
+DlgDocMargins : "SÃðu breddi",
+DlgDocMaTop : "Ovast",
+DlgDocMaLeft : "Vinstra",
+DlgDocMaRight : "Høgra",
+DlgDocMaBottom : "Niðast",
+DlgDocMeIndex : "Dokument index lyklaorð (komma sundurskilt)",
+DlgDocMeDescr : "Dokument lýsing",
+DlgDocMeAuthor : "Høvundur",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "VÃs",
+
+// Templates Dialog
+Templates : "Frymlar",
+DlgTemplatesTitle : "Innihaldsfrymlar",
+DlgTemplatesSelMsg : "Vel tann frymilin, sum skal opnast à editorinum<br>(Tað verður skriva útyvir núverandi innihald):",
+DlgTemplatesLoading : "Heintar lista yvir frymlar. Vinarliga bÃða...",
+DlgTemplatesNoTpl : "(Ongin frymil er valdur)",
+
+// About Dialog
+DlgAboutAboutTab : "Um",
+DlgAboutBrowserInfoTab : "Browsara upplýsingar",
+DlgAboutVersion : "versión",
+DlgAboutLicense : "Loyvi undir treytum fyri GNU Lesser General Public License",
+DlgAboutInfo : "Fleiri upplýsingar, far til"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/fr.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/fr.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/fr.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fr.js
+ * French language file.
+ *
+ * File Authors:
+ * Hubert Garrido (liane at users.sourceforge.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Masquer Outils",
+ToolbarExpand : "Afficher Outils",
+
+// Toolbar Items and Context Menu
+Save : "Enregistrer",
+NewPage : "Nouvelle Page",
+Preview : "Prévisualisation",
+Cut : "Couper",
+Copy : "Copier",
+Paste : "Coller",
+PasteText : "Coller comme texte",
+PasteWord : "Coller de Word",
+Print : "Imprimer",
+SelectAll : "Tout sélectionner",
+RemoveFormat : "Supprimer Format",
+InsertLinkLbl : "Lien",
+InsertLink : "Insérer/Modifier Lien",
+RemoveLink : "Supprimer Lien",
+Anchor : "Insérer/Modifier Ancre",
+InsertImageLbl : "Image",
+InsertImage : "Insérer/Modifier Image",
+InsertFlashLbl : "Animation Flash",
+InsertFlash : "Insérer/Modifier Animation Flash",
+InsertTableLbl : "Tableau",
+InsertTable : "Insérer/Modifier Tableau",
+InsertLineLbl : "Séparateur",
+InsertLine : "Insérer Séparateur",
+InsertSpecialCharLbl: "Caractère Spécial",
+InsertSpecialChar : "Insérer Caractère Spécial",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Insérer Smiley",
+About : "A propos de FCKeditor",
+Bold : "Gras",
+Italic : "Italique",
+Underline : "Souligné",
+StrikeThrough : "Barré",
+Subscript : "Indice",
+Superscript : "Exposant",
+LeftJustify : "Aligné à Gauche",
+CenterJustify : "Centré",
+RightJustify : "Aligné à Droite",
+BlockJustify : "Texte Justifié",
+DecreaseIndent : "Diminuer le Retrait",
+IncreaseIndent : "Augmenter le Retrait",
+Undo : "Annuler",
+Redo : "Refaire",
+NumberedListLbl : "Liste Numérotée",
+NumberedList : "Insérer/Supprimer Liste Numérotée",
+BulletedListLbl : "Liste à puces",
+BulletedList : "Insérer/Supprimer Liste à puces",
+ShowTableBorders : "Afficher Bordures de Tableau",
+ShowDetails : "Afficher Caractères Invisibles",
+Style : "Style",
+FontFormat : "Format",
+Font : "Police",
+FontSize : "Taille",
+TextColor : "Couleur de Caractère",
+BGColor : "Couleur de Fond",
+Source : "Source",
+Find : "Chercher",
+Replace : "Remplacer",
+SpellCheck : "Orthographe",
+UniversalKeyboard : "Clavier Universel",
+
+Form : "Formulaire",
+Checkbox : "Case à cocher",
+RadioButton : "Bouton Radio",
+TextField : "Champ Texte",
+Textarea : "Zone Texte",
+HiddenField : "Champ caché",
+Button : "Bouton",
+SelectionField : "Liste/Menu",
+ImageButton : "Bouton Image",
+
+// Context Menu
+EditLink : "Modifier Lien",
+InsertRow : "Insérer une Ligne",
+DeleteRows : "Supprimer des Lignes",
+InsertColumn : "Insérer une Colonne",
+DeleteColumns : "Supprimer des Colonnes",
+InsertCell : "Insérer une Cellule",
+DeleteCells : "Supprimer des Cellules",
+MergeCells : "Fusionner les Cellules",
+SplitCell : "Scinder les Cellules",
+CellProperties : "Propriétés de Cellule",
+TableProperties : "Propriétés de Tableau",
+ImageProperties : "Propriétés d'Image",
+FlashProperties : "Propriétés d'Animation Flash",
+
+AnchorProp : "Propriétés d'Ancre",
+ButtonProp : "Propriétés de Bouton",
+CheckboxProp : "Propriétés de Case à Cocher",
+HiddenFieldProp : "Propriétés de Champ Caché",
+RadioButtonProp : "Propriétés de Bouton Radio",
+ImageButtonProp : "Propriétés de Bouton Image",
+TextFieldProp : "Propriétés de Champ Texte",
+SelectionFieldProp : "Propriétés de Liste/Menu",
+TextareaProp : "Propriétés de Zone Texte",
+FormProp : "Propriétés de Formulaire",
+
+FontFormats : "Normal;Formatted;Address;Titre 1;Titre 2;Titre 3;Titre 4;Titre 5;Titre 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Calcul XHTML. Veuillez patienter...",
+Done : "Terminé",
+PasteWordConfirm : "Le texte à coller semble provenir de Word. Désirez-vous le nettoyer avant de coller?",
+NotCompatiblePaste : "Cette commande nécessite Internet Explorer version 5.5 minimum. Souhaitez-vous coller sans nettoyage?",
+UnknownToolbarItem : "Elément de barre d'outil inconnu \"%1\"",
+UnknownCommand : "Nom de commande inconnu \"%1\"",
+NotImplemented : "Commande non encore écrite",
+UnknownToolbarSet : "La barre d'outils \"%1\" n'existe pas",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Annuler",
+DlgBtnClose : "Fermer",
+DlgBtnBrowseServer : "Parcourir le Serveur",
+DlgAdvancedTag : "Avancé",
+DlgOpOther : "<Autre>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Veuillez saisir l'URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<Par Défaut>",
+DlgGenId : "Id",
+DlgGenLangDir : "Sens d'Ecriture",
+DlgGenLangDirLtr : "Gauche vers Droite (LTR)",
+DlgGenLangDirRtl : "Droite vers Gauche (RTL)",
+DlgGenLangCode : "Code Langue",
+DlgGenAccessKey : "Equivalent Clavier",
+DlgGenName : "Nom",
+DlgGenTabIndex : "Ordre de Tabulation",
+DlgGenLongDescr : "URL de Description Longue",
+DlgGenClass : "Classes de Feuilles de Style",
+DlgGenTitle : "Titre Indicatif",
+DlgGenContType : "Type de Contenu Indicatif",
+DlgGenLinkCharset : "Encodage de Caractère de la cible",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "Propriétés d'Image",
+DlgImgInfoTab : "Informations sur l'Image",
+DlgImgBtnUpload : "Envoyer au Serveur",
+DlgImgURL : "URL",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Texte de Remplacement",
+DlgImgWidth : "Largeur",
+DlgImgHeight : "Hauteur",
+DlgImgLockRatio : "Garder proportions",
+DlgBtnResetSize : "Taille Originale",
+DlgImgBorder : "Bordure",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Alignement",
+DlgImgAlignLeft : "Gauche",
+DlgImgAlignAbsBottom: "Abs Bas",
+DlgImgAlignAbsMiddle: "Abs Milieu",
+DlgImgAlignBaseline : "Bas du texte",
+DlgImgAlignBottom : "Bas",
+DlgImgAlignMiddle : "Milieu",
+DlgImgAlignRight : "Droite",
+DlgImgAlignTextTop : "Haut du texte",
+DlgImgAlignTop : "Haut",
+DlgImgPreview : "Prévisualisation",
+DlgImgAlertUrl : "Veuillez saisir l'URL de l'image",
+DlgImgLinkTab : "Lien",
+
+// Flash Dialog
+DlgFlashTitle : "Propriétés d'animation Flash",
+DlgFlashChkPlay : "Lecture automatique",
+DlgFlashChkLoop : "Boucle",
+DlgFlashChkMenu : "Activer menu Flash",
+DlgFlashScale : "Affichage",
+DlgFlashScaleAll : "Par défault (tout montrer)",
+DlgFlashScaleNoBorder : "Sans Bordure",
+DlgFlashScaleFit : "Ajuster aux Dimensions",
+
+// Link Dialog
+DlgLnkWindowTitle : "Propriétés de Lien",
+DlgLnkInfoTab : "Informations sur le Lien",
+DlgLnkTargetTab : "Destination",
+
+DlgLnkType : "Type de Lien",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ancre dans cette page",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocole",
+DlgLnkProtoOther : "<autre>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Sélectionner une Ancre",
+DlgLnkAnchorByName : "Par Nom d'Ancre",
+DlgLnkAnchorById : "Par Id d'Elément",
+DlgLnkNoAnchors : "<Pas d'ancre disponible dans le document>",
+DlgLnkEMail : "Adresse E-Mail",
+DlgLnkEMailSubject : "Sujet du Message",
+DlgLnkEMailBody : "Corps du Message",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Envoyer au Serveur",
+
+DlgLnkTarget : "Destination",
+DlgLnkTargetFrame : "<cadre>",
+DlgLnkTargetPopup : "<fenêtre popup>",
+DlgLnkTargetBlank : "Nouvelle Fenêtre (_blank)",
+DlgLnkTargetParent : "Fenêtre Mère (_parent)",
+DlgLnkTargetSelf : "Même Fenêtre (_self)",
+DlgLnkTargetTop : "Fenêtre Supérieure (_top)",
+DlgLnkTargetFrameName : "Nom du Cadre de Destination",
+DlgLnkPopWinName : "Nom de la Fenêtre Popup",
+DlgLnkPopWinFeat : "Caractéristiques de la Fenêtre Popup",
+DlgLnkPopResize : "Taille Modifiable",
+DlgLnkPopLocation : "Barre d'Adresses",
+DlgLnkPopMenu : "Barre de Menu",
+DlgLnkPopScroll : "Barres de Défilement",
+DlgLnkPopStatus : "Barre d'Etat",
+DlgLnkPopToolbar : "Barre d'Outils",
+DlgLnkPopFullScrn : "Plein Ecran (IE)",
+DlgLnkPopDependent : "Dépendante (Netscape)",
+DlgLnkPopWidth : "Largeur",
+DlgLnkPopHeight : "Hauteur",
+DlgLnkPopLeft : "Position Gauche",
+DlgLnkPopTop : "Position Haut",
+
+DlnLnkMsgNoUrl : "Veuillez saisir l'URL",
+DlnLnkMsgNoEMail : "Veuillez saisir l'adresse e-mail",
+DlnLnkMsgNoAnchor : "Veuillez sélectionner une ancre",
+
+// Color Dialog
+DlgColorTitle : "Sélectionner",
+DlgColorBtnClear : "Effacer",
+DlgColorHighlight : "Highlight",
+DlgColorSelected : "Sélectionné",
+
+// Smiley Dialog
+DlgSmileyTitle : "Insérer Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Insérer Caractère Spécial",
+
+// Table Dialog
+DlgTableTitle : "Propriétés de Tableau",
+DlgTableRows : "Lignes",
+DlgTableColumns : "Colonnes",
+DlgTableBorder : "Bordure",
+DlgTableAlign : "Alignement",
+DlgTableAlignNotSet : "<Par Défaut>",
+DlgTableAlignLeft : "Gauche",
+DlgTableAlignCenter : "Centré",
+DlgTableAlignRight : "Droite",
+DlgTableWidth : "Largeur",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "pourcentage",
+DlgTableHeight : "Hauteur",
+DlgTableCellSpace : "Espacement",
+DlgTableCellPad : "Contour",
+DlgTableCaption : "Titre",
+
+// Table Cell Dialog
+DlgCellTitle : "Propriétés de cellule",
+DlgCellWidth : "Largeur",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "pourcentage",
+DlgCellHeight : "Hauteur",
+DlgCellWordWrap : "Retour à la ligne",
+DlgCellWordWrapNotSet : "<Par Défaut>",
+DlgCellWordWrapYes : "Oui",
+DlgCellWordWrapNo : "Non",
+DlgCellHorAlign : "Alignement Horizontal",
+DlgCellHorAlignNotSet : "<Par Défaut>",
+DlgCellHorAlignLeft : "Gauche",
+DlgCellHorAlignCenter : "Centré",
+DlgCellHorAlignRight: "Droite",
+DlgCellVerAlign : "Alignement Vertical",
+DlgCellVerAlignNotSet : "<Par Défaut>",
+DlgCellVerAlignTop : "Haut",
+DlgCellVerAlignMiddle : "Milieu",
+DlgCellVerAlignBottom : "Bas",
+DlgCellVerAlignBaseline : "Bas du texte",
+DlgCellRowSpan : "Lignes Fusionnées",
+DlgCellCollSpan : "Colonnes Fusionnées",
+DlgCellBackColor : "Fond",
+DlgCellBorderColor : "Bordure",
+DlgCellBtnSelect : "Choisir...",
+
+// Find Dialog
+DlgFindTitle : "Chercher",
+DlgFindFindBtn : "Chercher",
+DlgFindNotFoundMsg : "Le texte indiqué est introuvable.",
+
+// Replace Dialog
+DlgReplaceTitle : "Remplacer",
+DlgReplaceFindLbl : "Rechercher:",
+DlgReplaceReplaceLbl : "Remplacer par:",
+DlgReplaceCaseChk : "Respecter la casse",
+DlgReplaceReplaceBtn : "Remplacer",
+DlgReplaceReplAllBtn : "Tout remplacer",
+DlgReplaceWordChk : "Mot entier",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Les paramètres de sécurité de votre navigateur empêchent l'éditeur de coller automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl+V).",
+PasteErrorCut : "Les paramètres de sécurité de votre navigateur empêchent l'éditeur de couper automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl+X).",
+PasteErrorCopy : "Les paramètres de sécurité de votre navigateur empêchent l'éditeur de copier automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl+C).",
+
+PasteAsText : "Coller comme texte",
+PasteFromWord : "Coller à partir de Word",
+
+DlgPasteMsg2 : "Veuillez coller dans la zone ci-dessous en utilisant le clavier (<STRONG>Ctrl+V</STRONG>) et cliquez sur <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorer les Polices de Caractères",
+DlgPasteRemoveStyles : "Supprimer les Styles",
+DlgPasteCleanBox : "Effacer le contenu",
+
+
+// Color Picker
+ColorAutomatic : "Automatique",
+ColorMoreColors : "Plus de Couleurs...",
+
+// Document Properties
+DocProps : "Propriétés du Document",
+
+// Anchor Dialog
+DlgAnchorTitle : "Propriétés de l'Ancre",
+DlgAnchorName : "Nom de l'Ancre",
+DlgAnchorErrorName : "Veuillez saisir le nom de l'ancre",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Pas dans le dictionnaire",
+DlgSpellChangeTo : "Changer en",
+DlgSpellBtnIgnore : "Ignorer",
+DlgSpellBtnIgnoreAll : "Ignorer Tout",
+DlgSpellBtnReplace : "Remplacer",
+DlgSpellBtnReplaceAll : "Remplacer Tout",
+DlgSpellBtnUndo : "Annuler",
+DlgSpellNoSuggestions : "- Aucune suggestion -",
+DlgSpellProgress : "Vérification d'orthographe en cours...",
+DlgSpellNoMispell : "Vérification d'orthographe terminée: Aucune erreur trouvée",
+DlgSpellNoChanges : "Vérification d'orthographe terminée: Pas de modifications",
+DlgSpellOneChange : "Vérification d'orthographe terminée: Un mot modifié",
+DlgSpellManyChanges : "Vérification d'orthographe terminée: %1 mots modifiés",
+
+IeSpellDownload : "Le Correcteur n'est pas installé. Souhaitez-vous le télécharger maintenant?",
+
+// Button Dialog
+DlgButtonText : "Texte (Valeur)",
+DlgButtonType : "Type",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nom",
+DlgCheckboxValue : "Valeur",
+DlgCheckboxSelected : "Sélectionné",
+
+// Form Dialog
+DlgFormName : "Nom",
+DlgFormAction : "Action",
+DlgFormMethod : "Méthode",
+
+// Select Field Dialog
+DlgSelectName : "Nom",
+DlgSelectValue : "Valeur",
+DlgSelectSize : "Taille",
+DlgSelectLines : "lignes",
+DlgSelectChkMulti : "Sélection multiple",
+DlgSelectOpAvail : "Options Disponibles",
+DlgSelectOpText : "Texte",
+DlgSelectOpValue : "Valeur",
+DlgSelectBtnAdd : "Ajouter",
+DlgSelectBtnModify : "Modifier",
+DlgSelectBtnUp : "Monter",
+DlgSelectBtnDown : "Descendre",
+DlgSelectBtnSetValue : "Valeur sélectionnée",
+DlgSelectBtnDelete : "Supprimer",
+
+// Textarea Dialog
+DlgTextareaName : "Nom",
+DlgTextareaCols : "Colonnes",
+DlgTextareaRows : "Lignes",
+
+// Text Field Dialog
+DlgTextName : "Nom",
+DlgTextValue : "Valeur",
+DlgTextCharWidth : "Largeur en Caractères",
+DlgTextMaxChars : "Nombre Maximum de Caractères",
+DlgTextType : "Type",
+DlgTextTypeText : "Texte",
+DlgTextTypePass : "Mot de Passe",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nom",
+DlgHiddenValue : "Valeur",
+
+// Bulleted List Dialog
+BulletedListProp : "Propriétés de Liste à puces",
+NumberedListProp : "Propriétés de Numérotée",
+DlgLstType : "Type",
+DlgLstTypeCircle : "Cercle",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Carré",
+DlgLstTypeNumbers : "Nombres (1, 2, 3)",
+DlgLstTypeLCase : "Lettres Minuscules (a, b, c)",
+DlgLstTypeUCase : "Lettres Majuscules (A, B, C)",
+DlgLstTypeSRoman : "Chiffres Romains Minuscules (i, ii, iii)",
+DlgLstTypeLRoman : "Chiffres Romains Majuscules (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Général",
+DlgDocBackTab : "Fond",
+DlgDocColorsTab : "Couleurs et Marges",
+DlgDocMetaTab : "Métadonnées",
+
+DlgDocPageTitle : "Titre de la Page",
+DlgDocLangDir : "Sens d'Ecriture",
+DlgDocLangDirLTR : "Gauche vers Droite (LTR)",
+DlgDocLangDirRTL : "Droite vers Gauche (RTL)",
+DlgDocLangCode : "Code Langue",
+DlgDocCharSet : "Encodage de Caractère",
+DlgDocCharSetOther : "Autre Encodage de Caractère",
+
+DlgDocDocType : "Type de Document",
+DlgDocDocTypeOther : "Autre Type de Document",
+DlgDocIncXHTML : "Inclure les déclarations XHTML",
+DlgDocBgColor : "Couleur de Fond",
+DlgDocBgImage : "Image de Fond",
+DlgDocBgNoScroll : "Image fixe sans défilement",
+DlgDocCText : "Texte",
+DlgDocCLink : "Lien",
+DlgDocCVisited : "Lien Visité",
+DlgDocCActive : "Lien Activé",
+DlgDocMargins : "Marges",
+DlgDocMaTop : "Haut",
+DlgDocMaLeft : "Gauche",
+DlgDocMaRight : "Droite",
+DlgDocMaBottom : "Bas",
+DlgDocMeIndex : "Mots Clés (séparés par des virgules)",
+DlgDocMeDescr : "Description",
+DlgDocMeAuthor : "Auteur",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Prévisualisation",
+
+// Templates Dialog
+Templates : "Modèles",
+DlgTemplatesTitle : "Modèles de Contenu",
+DlgTemplatesSelMsg : "Veuillez sélectionner le modèle à ouvrir dans l'éditeur<br>(le contenu actuel sera remplacé):",
+DlgTemplatesLoading : "Chargement de la liste des modèles. Veuillez patienter...",
+DlgTemplatesNoTpl : "(Aucun modèle disponible)",
+
+// About Dialog
+DlgAboutAboutTab : "A propos de",
+DlgAboutBrowserInfoTab : "Navigateur",
+DlgAboutVersion : "version",
+DlgAboutLicense : "License selon les termes de GNU Lesser General Public License",
+DlgAboutInfo : "Pour plus d'informations, aller à "
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/gl.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/gl.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/gl.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: gl.js
+ * Galician language file.
+ *
+ * File Authors:
+ * Fernando Riveiro Lopez
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Ocultar Ferramentas",
+ToolbarExpand : "Mostrar Ferramentas",
+
+// Toolbar Items and Context Menu
+Save : "Gardar",
+NewPage : "Nova Páxina",
+Preview : "Vista Previa",
+Cut : "Cortar",
+Copy : "Copiar",
+Paste : "Pegar",
+PasteText : "Pegar como texto plano",
+PasteWord : "Pegar dende Word",
+Print : "Imprimir",
+SelectAll : "Seleccionar todo",
+RemoveFormat : "Eliminar Formato",
+InsertLinkLbl : "Ligazón",
+InsertLink : "Inserir/Editar Ligazón",
+RemoveLink : "Eliminar Ligazón",
+Anchor : "Inserir/Editar Referencia",
+InsertImageLbl : "Imaxe",
+InsertImage : "Inserir/Editar Imaxe",
+InsertFlashLbl : "Flash",
+InsertFlash : "Inserir/Editar Flash",
+InsertTableLbl : "Tabla",
+InsertTable : "Inserir/Editar Tabla",
+InsertLineLbl : "Liña",
+InsertLine : "Inserir Liña Horizontal",
+InsertSpecialCharLbl: "Carácter Special",
+InsertSpecialChar : "Inserir Carácter Especial",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Inserir Smiley",
+About : "Acerca de FCKeditor",
+Bold : "Negrita",
+Italic : "Cursiva",
+Underline : "Sub-raiado",
+StrikeThrough : "Tachado",
+Subscript : "SubÃndice",
+Superscript : "SuperÃndice",
+LeftJustify : "Aliñar á Esquerda",
+CenterJustify : "Centrado",
+RightJustify : "Aliñar á Dereita",
+BlockJustify : "Xustificado",
+DecreaseIndent : "Disminuir SangrÃa",
+IncreaseIndent : "Aumentar SangrÃa",
+Undo : "Desfacer",
+Redo : "Refacer",
+NumberedListLbl : "Lista Numerada",
+NumberedList : "Inserir/Eliminar Lista Numerada",
+BulletedListLbl : "Marcas",
+BulletedList : "Inserir/Eliminar Marcas",
+ShowTableBorders : "Mostrar Bordes das Taboas",
+ShowDetails : "Mostrar Marcas Parágrafo",
+Style : "Estilo",
+FontFormat : "Formato",
+Font : "Tipo",
+FontSize : "Tamaño",
+TextColor : "Cor do Texto",
+BGColor : "Cor do Fondo",
+Source : "Código Fonte",
+Find : "Procurar",
+Replace : "Substituir",
+SpellCheck : "Corrección Ortográfica",
+UniversalKeyboard : "Teclado Universal",
+
+Form : "Formulario",
+Checkbox : "Cadro de Verificación",
+RadioButton : "Botón de Radio",
+TextField : "Campo de Texto",
+Textarea : "Ãrea de Texto",
+HiddenField : "Campo Oculto",
+Button : "Botón",
+SelectionField : "Campo de Selección",
+ImageButton : "Botón de Imaxe",
+
+// Context Menu
+EditLink : "Editar Ligazón",
+InsertRow : "Inserir Fila",
+DeleteRows : "Borrar Filas",
+InsertColumn : "Inserir Columna",
+DeleteColumns : "Borrar Columnas",
+InsertCell : "Inserir Cela",
+DeleteCells : "Borrar Cela",
+MergeCells : "Unir Celas",
+SplitCell : "Partir Celas",
+CellProperties : "Propriedades da Cela",
+TableProperties : "Propriedades da Taboa",
+ImageProperties : "Propriedades Imaxe",
+FlashProperties : "Propriedades Flash",
+
+AnchorProp : "Propriedades da Referencia",
+ButtonProp : "Propriedades do Botón",
+CheckboxProp : "Propriedades do Cadro de Verificación",
+HiddenFieldProp : "Propriedades do Campo Oculto",
+RadioButtonProp : "Propriedades do Botón de Radio",
+ImageButtonProp : "Propriedades do Botón de Imaxe",
+TextFieldProp : "Propriedades do Campo de Texto",
+SelectionFieldProp : "Propriedades do Campo de Selección",
+TextareaProp : "Propriedades da Ãrea de Texto",
+FormProp : "Propriedades do Formulario",
+
+FontFormats : "Normal;Formateado;Enderezo;Enacabezado 1;Encabezado 2;Encabezado 3;Encabezado 4;Encabezado 5;Encabezado 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Procesando XHTML. Por facor, agarde...",
+Done : "Feiro",
+PasteWordConfirm : "Parece que o texto que quere pegar está copiado do Word.¿Quere limpar o formato antes de pegalo?",
+NotCompatiblePaste : "Este comando está disponible para Internet Explorer versión 5.5 ou superior. ¿Quere pegalo sen limpar o formato?",
+UnknownToolbarItem : "Ãtem de ferramentas descoñecido \"%1\"",
+UnknownCommand : "Nome de comando descoñecido \"%1\"",
+NotImplemented : "Comando non implementado",
+UnknownToolbarSet : "O conxunto de ferramentas \"%1\" non existe",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancelar",
+DlgBtnClose : "Pechar",
+DlgBtnBrowseServer : "Navegar no Servidor",
+DlgAdvancedTag : "Advanzado",
+DlgOpOther : "<Outro>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Por favor, insira a URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<non definido>",
+DlgGenId : "Id",
+DlgGenLangDir : "Orientación do Idioma",
+DlgGenLangDirLtr : "Esquerda a Dereita (LTR)",
+DlgGenLangDirRtl : "Dereita a Esquerda (RTL)",
+DlgGenLangCode : "Código do Idioma",
+DlgGenAccessKey : "Chave de Acceso",
+DlgGenName : "Nome",
+DlgGenTabIndex : "Ãndice de Tabulación",
+DlgGenLongDescr : "Descrición Completa da URL",
+DlgGenClass : "Clases da Folla de Estilos",
+DlgGenTitle : "TÃtulo",
+DlgGenContType : "Tipo de Contido",
+DlgGenLinkCharset : "Fonte de Caracteres Vinculado",
+DlgGenStyle : "Estilo",
+
+// Image Dialog
+DlgImgTitle : "Propriedades da Imaxe",
+DlgImgInfoTab : "Información da Imaxe",
+DlgImgBtnUpload : "Enviar ó Servidor",
+DlgImgURL : "URL",
+DlgImgUpload : "Carregar",
+DlgImgAlt : "Texto Alternativo",
+DlgImgWidth : "Largura",
+DlgImgHeight : "Altura",
+DlgImgLockRatio : "Proporcional",
+DlgBtnResetSize : "Tamaño Orixinal",
+DlgImgBorder : "LÃmite",
+DlgImgHSpace : "Esp. Horiz.",
+DlgImgVSpace : "Esp. Vert.",
+DlgImgAlign : "Aliñamento",
+DlgImgAlignLeft : "Esquerda",
+DlgImgAlignAbsBottom: "Abs Inferior",
+DlgImgAlignAbsMiddle: "Abs Centro",
+DlgImgAlignBaseline : "Liña Base",
+DlgImgAlignBottom : "Pé",
+DlgImgAlignMiddle : "Centro",
+DlgImgAlignRight : "Dereita",
+DlgImgAlignTextTop : "Tope do Texto",
+DlgImgAlignTop : "Tope",
+DlgImgPreview : "Vista Previa",
+DlgImgAlertUrl : "Por favor, escriba a URL da imaxe",
+DlgImgLinkTab : "Ligazón",
+
+// Flash Dialog
+DlgFlashTitle : "Propriedades Flash",
+DlgFlashChkPlay : "Auto Execución",
+DlgFlashChkLoop : "Bucle",
+DlgFlashChkMenu : "Activar Menú Flash",
+DlgFlashScale : "Escalar",
+DlgFlashScaleAll : "Amosar Todo",
+DlgFlashScaleNoBorder : "Sen Borde",
+DlgFlashScaleFit : "Encaixar axustando",
+
+// Link Dialog
+DlgLnkWindowTitle : "Ligazón",
+DlgLnkInfoTab : "Información da Ligazón",
+DlgLnkTargetTab : "Referencia a esta páxina",
+
+DlgLnkType : "Tipo de Ligazón",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Referencia nesta páxina",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocolo",
+DlgLnkProtoOther : "<outro>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Seleccionar unha Referencia",
+DlgLnkAnchorByName : "Por Nome de Referencia",
+DlgLnkAnchorById : "Por Element Id",
+DlgLnkNoAnchors : "<Non hai referencias disponibles no documento>",
+DlgLnkEMail : "Enderezo de E-Mail",
+DlgLnkEMailSubject : "Asunto do Mensaxe",
+DlgLnkEMailBody : "Corpo do Mensaxe",
+DlgLnkUpload : "Carregar",
+DlgLnkBtnUpload : "Enviar ó servidor",
+
+DlgLnkTarget : "Destino",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<Xanela Emerxente>",
+DlgLnkTargetBlank : "Nova Xanela (_blank)",
+DlgLnkTargetParent : "Xanela Pai (_parent)",
+DlgLnkTargetSelf : "Mesma Xanela (_self)",
+DlgLnkTargetTop : "Xanela Primaria (_top)",
+DlgLnkTargetFrameName : "Nome do Marco Destino",
+DlgLnkPopWinName : "Nome da Xanela Emerxente",
+DlgLnkPopWinFeat : "CaracterÃsticas da Xanela Emerxente",
+DlgLnkPopResize : "Axustable",
+DlgLnkPopLocation : "Barra de Localización",
+DlgLnkPopMenu : "Barra de Menú",
+DlgLnkPopScroll : "Barras de Desplazamento",
+DlgLnkPopStatus : "Barra de Estado",
+DlgLnkPopToolbar : "Barra de Ferramentas",
+DlgLnkPopFullScrn : "A Toda Pantalla (IE)",
+DlgLnkPopDependent : "Dependente (Netscape)",
+DlgLnkPopWidth : "Largura",
+DlgLnkPopHeight : "Altura",
+DlgLnkPopLeft : "Posición Esquerda",
+DlgLnkPopTop : "Posición dende Arriba",
+
+DlnLnkMsgNoUrl : "Por favor, escriba a ligazón URL",
+DlnLnkMsgNoEMail : "Por favor, escriba o enderezo de e-mail",
+DlnLnkMsgNoAnchor : "Por favor, seleccione un destino",
+
+// Color Dialog
+DlgColorTitle : "Seleccionar Color",
+DlgColorBtnClear : "Nengunha",
+DlgColorHighlight : "Destacado",
+DlgColorSelected : "Seleccionado",
+
+// Smiley Dialog
+DlgSmileyTitle : "Inserte un Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Seleccione Caracter Especial",
+
+// Table Dialog
+DlgTableTitle : "Propiedades da Taboa",
+DlgTableRows : "Filas",
+DlgTableColumns : "Columnas",
+DlgTableBorder : "Tamaño do Borde",
+DlgTableAlign : "Aliñamento",
+DlgTableAlignNotSet : "<Non Definido>",
+DlgTableAlignLeft : "Esquerda",
+DlgTableAlignCenter : "Centro",
+DlgTableAlignRight : "Ereita",
+DlgTableWidth : "Largura",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "percent",
+DlgTableHeight : "Altura",
+DlgTableCellSpace : "Marxe entre Celas",
+DlgTableCellPad : "Marxe interior",
+DlgTableCaption : "TÃtulo",
+
+// Table Cell Dialog
+DlgCellTitle : "Propriedades da Cela",
+DlgCellWidth : "Largura",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "percent",
+DlgCellHeight : "Altura",
+DlgCellWordWrap : "Axustar Liñas",
+DlgCellWordWrapNotSet : "<Non Definido>",
+DlgCellWordWrapYes : "Si",
+DlgCellWordWrapNo : "Non",
+DlgCellHorAlign : "Aliñamento Horizontal",
+DlgCellHorAlignNotSet : "<Non definido>",
+DlgCellHorAlignLeft : "Esquerda",
+DlgCellHorAlignCenter : "Centro",
+DlgCellHorAlignRight: "Dereita",
+DlgCellVerAlign : "Aliñamento Vertical",
+DlgCellVerAlignNotSet : "<Non definido>",
+DlgCellVerAlignTop : "Arriba",
+DlgCellVerAlignMiddle : "Medio",
+DlgCellVerAlignBottom : "Abaixo",
+DlgCellVerAlignBaseline : "Liña de Base",
+DlgCellRowSpan : "Ocupar Filas",
+DlgCellCollSpan : "Ocupar Columnas",
+DlgCellBackColor : "Color de Fondo",
+DlgCellBorderColor : "Color de Borde",
+DlgCellBtnSelect : "Seleccionar...",
+
+// Find Dialog
+DlgFindTitle : "Procurar",
+DlgFindFindBtn : "Procurar",
+DlgFindNotFoundMsg : "Non te atopou o texto indicado.",
+
+// Replace Dialog
+DlgReplaceTitle : "Substituir",
+DlgReplaceFindLbl : "Texto a procurar:",
+DlgReplaceReplaceLbl : "Substituir con:",
+DlgReplaceCaseChk : "Coincidir Mai./min.",
+DlgReplaceReplaceBtn : "Substituir",
+DlgReplaceReplAllBtn : "Substitiur Todo",
+DlgReplaceWordChk : "Coincidir con toda a palabra",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Os axustes de seguridade do seu navegador non permiten que o editor realice automáticamente as tarefas de pegado. Por favor, use o teclado para iso (Ctrl+V).",
+PasteErrorCut : "Os axustes de seguridade do seu navegador non permiten que o editor realice automáticamente as tarefas de corte. Por favor, use o teclado para iso (Ctrl+X).",
+PasteErrorCopy : "Os axustes de seguridade do seu navegador non permiten que o editor realice automáticamente as tarefas de copia. Por favor, use o teclado para iso (Ctrl+C).",
+
+PasteAsText : "Pegar como texto plano",
+PasteFromWord : "Pegar dende Word",
+
+DlgPasteMsg2 : "Por favor, pegue dentro do seguinte cadro usando o teclado (<STRONG>Ctrl+V</STRONG>) e pulse <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorar as definicións de TipografÃa",
+DlgPasteRemoveStyles : "Eliminar as definicións de Estilos",
+DlgPasteCleanBox : "Limpar o Cadro",
+
+
+// Color Picker
+ColorAutomatic : "Automático",
+ColorMoreColors : "Máis Cores...",
+
+// Document Properties
+DocProps : "Propriedades do Documento",
+
+// Anchor Dialog
+DlgAnchorTitle : "Propriedades da Referencia",
+DlgAnchorName : "Nome da Referencia",
+DlgAnchorErrorName : "Por favor, escriba o nome da referencia",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Non está no diccionario",
+DlgSpellChangeTo : "Cambiar a",
+DlgSpellBtnIgnore : "Ignorar",
+DlgSpellBtnIgnoreAll : "Ignorar Todas",
+DlgSpellBtnReplace : "Substituir",
+DlgSpellBtnReplaceAll : "Substituir Todas",
+DlgSpellBtnUndo : "Desfacer",
+DlgSpellNoSuggestions : "- Sen candidatos -",
+DlgSpellProgress : "Corrección ortográfica en progreso...",
+DlgSpellNoMispell : "Corrección ortográfica rematada: Non se atoparon erros",
+DlgSpellNoChanges : "Corrección ortográfica rematada: Non se substituiu nengunha verba",
+DlgSpellOneChange : "Corrección ortográfica rematada: Unha verba substituida",
+DlgSpellManyChanges : "Corrección ortográfica rematada: %1 verbas substituidas",
+
+IeSpellDownload : "O corrector ortográfico non está instalado. ¿Quere descargalo agora?",
+
+// Button Dialog
+DlgButtonText : "Texto (Valor)",
+DlgButtonType : "Tipo",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nome",
+DlgCheckboxValue : "Valor",
+DlgCheckboxSelected : "Seleccionado",
+
+// Form Dialog
+DlgFormName : "Nome",
+DlgFormAction : "Acción",
+DlgFormMethod : "Método",
+
+// Select Field Dialog
+DlgSelectName : "Nome",
+DlgSelectValue : "Valor",
+DlgSelectSize : "Tamaño",
+DlgSelectLines : "liñas",
+DlgSelectChkMulti : "Permitir múltiples seleccións",
+DlgSelectOpAvail : "Opcións Disponibles",
+DlgSelectOpText : "Texto",
+DlgSelectOpValue : "Valor",
+DlgSelectBtnAdd : "Engadir",
+DlgSelectBtnModify : "Modificar",
+DlgSelectBtnUp : "Subir",
+DlgSelectBtnDown : "Baixar",
+DlgSelectBtnSetValue : "Definir como valor por defecto",
+DlgSelectBtnDelete : "Borrar",
+
+// Textarea Dialog
+DlgTextareaName : "Nome",
+DlgTextareaCols : "Columnas",
+DlgTextareaRows : "Filas",
+
+// Text Field Dialog
+DlgTextName : "Nome",
+DlgTextValue : "Valor",
+DlgTextCharWidth : "Tamaño do Caracter",
+DlgTextMaxChars : "Máximo de Caracteres",
+DlgTextType : "Tipo",
+DlgTextTypeText : "Texto",
+DlgTextTypePass : "Chave",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nome",
+DlgHiddenValue : "Valor",
+
+// Bulleted List Dialog
+BulletedListProp : "Propriedades das Marcas",
+NumberedListProp : "Propriedades da Lista de Numeración",
+DlgLstType : "Tipo",
+DlgLstTypeCircle : "CÃrculo",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Cuadrado",
+DlgLstTypeNumbers : "Números (1, 2, 3)",
+DlgLstTypeLCase : "Letras Minúsculas (a, b, c)",
+DlgLstTypeUCase : "Letras Maiúsculas (A, B, C)",
+DlgLstTypeSRoman : "Números Romanos en minúscula (i, ii, iii)",
+DlgLstTypeLRoman : "Números Romanos en Maiúscula (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Xeral",
+DlgDocBackTab : "Fondo",
+DlgDocColorsTab : "Cores e Marxes",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "TÃtulo da Páxina",
+DlgDocLangDir : "Orientación do Idioma",
+DlgDocLangDirLTR : "Esquerda a Dereita (LTR)",
+DlgDocLangDirRTL : "Dereita a Esquerda (RTL)",
+DlgDocLangCode : "Código de Idioma",
+DlgDocCharSet : "Codificación do Xogo de Caracteres",
+DlgDocCharSetOther : "Outra Codificación do Xogo de Caracteres",
+
+DlgDocDocType : "Encabezado do Tipo de Documento",
+DlgDocDocTypeOther : "Outro Encabezado do Tipo de Documento",
+DlgDocIncXHTML : "Incluir Declaracións XHTML",
+DlgDocBgColor : "Cor de Fondo",
+DlgDocBgImage : "URL da Imaxe de Fondo",
+DlgDocBgNoScroll : "Fondo Fixo",
+DlgDocCText : "Texto",
+DlgDocCLink : "Ligazóns",
+DlgDocCVisited : "Ligazón Visitada",
+DlgDocCActive : "Ligazón Activa",
+DlgDocMargins : "Marxes da Páxina",
+DlgDocMaTop : "Arriba",
+DlgDocMaLeft : "Esquerda",
+DlgDocMaRight : "Dereita",
+DlgDocMaBottom : "Abaixo",
+DlgDocMeIndex : "Palabras Chave de Indexación do Documento (separadas por comas)",
+DlgDocMeDescr : "Descripción do Documento",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Vista Previa",
+
+// Templates Dialog
+Templates : "Plantillas",
+DlgTemplatesTitle : "Plantillas de Contido",
+DlgTemplatesSelMsg : "Por favor, seleccione a plantilla a abrir no editor<br>(o contido actual perderase):",
+DlgTemplatesLoading : "Cargando listado de plantillas. Por favor, espere...",
+DlgTemplatesNoTpl : "(Non hai plantillas definidas)",
+
+// About Dialog
+DlgAboutAboutTab : "Acerca de",
+DlgAboutBrowserInfoTab : "Información do Navegador",
+DlgAboutVersion : "versión",
+DlgAboutLicense : "Licencia concedida baixo os termos da GNU Lesser General Public License",
+DlgAboutInfo : "Para máis información visitar:"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/he.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/he.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/he.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: he.js
+ * Hebrew language file.
+ *
+ * File Authors:
+ * Tamir Mordo (tamir at tetitu.co.il)
+ * Ophir Radnitz (ophir at liqweed.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "rtl",
+
+ToolbarCollapse : "×××××¥ סר×× ×××××",
+ToolbarExpand : "פת××ת סר×× ×××××",
+
+// Toolbar Items and Context Menu
+Save : "ש××ר×",
+NewPage : "××£ ××ש",
+Preview : "תצ××× ×ק××××",
+Cut : "×××ר×",
+Copy : "×עתק×",
+Paste : "×××ק×",
+PasteText : "××××§× ×××§×¡× ×¤×©××",
+PasteWord : "××××§× ×-Word",
+Print : "××פס×",
+SelectAll : "×××רת ×××",
+RemoveFormat : "×סרת ××¢×צ××",
+InsertLinkLbl : "ק×ש×ר",
+InsertLink : "××ספת/ער××ת ק×ש×ר",
+RemoveLink : "×סרת ×ק×ש×ר",
+Anchor : "××ספת/ער××ת × ×§××ת ×¢××××",
+InsertImageLbl : "ת××× ×",
+InsertImage : "××ספת/ער××ת ת××× ×",
+InsertFlashLbl : "פ××ש",
+InsertFlash : "××סף/ער×× ×¤××ש",
+InsertTableLbl : "××××",
+InsertTable : "××ספת/ער××ת ××××",
+InsertLineLbl : "ק×",
+InsertLine : "××ספת ×§× ××פק×",
+InsertSpecialCharLbl: "×ª× ×××××",
+InsertSpecialChar : "××ספת ×ª× ×××××",
+InsertSmileyLbl : "ס×××××",
+InsertSmiley : "××ספת ס×××××",
+About : "××××ת FCKeditor",
+Bold : "××××ש",
+Italic : "× ×××",
+Underline : "×§× ×ª×ת××",
+StrikeThrough : "×ת×× ×××ק",
+Subscript : "×ת×× ×ª×ת××",
+Superscript : "×ת×× ×¢××××",
+LeftJustify : "××ש×ר ×ש×××",
+CenterJustify : "×ר×××",
+RightJustify : "××ש×ר ×××××",
+BlockJustify : "××ש×ר ×ש×××××",
+DecreaseIndent : "×ק×× ×ª ××× ×× ×צ××",
+IncreaseIndent : "××××ת ××× ×× ×צ××",
+Undo : "××××× ×¦×¢× ××ר××",
+Redo : "×××¨× ×¢× ×¦×¢× ××ר××",
+NumberedListLbl : "רש××× ×××ספרת",
+NumberedList : "××ספת/×סרת רש××× ×××ספרת",
+BulletedListLbl : "רש××ת × ×§×××ת",
+BulletedList : "××ספת/×סרת רש××ת × ×§×××ת",
+ShowTableBorders : "×צ×ת ×ס×רת ×××××",
+ShowDetails : "×צ×ת פר×××",
+Style : "ס×× ××",
+FontFormat : "×¢×צ××",
+Font : "××פ×",
+FontSize : "××××",
+TextColor : "צ××¢ ×קס×",
+BGColor : "צ××¢ רקע",
+Source : "×ק×ר",
+Find : "××פ×ש",
+Replace : "×××פ×",
+SpellCheck : "×××קת ×××ת",
+UniversalKeyboard : "×ק××ת ××× ××רס××ת",
+
+Form : "××פס",
+Checkbox : "ת××ת ס××××",
+RadioButton : "×××¦× ×פשר×××ת",
+TextField : "ש×× ×קס×",
+Textarea : "××××ר ×קס×",
+HiddenField : "ש×× ××××",
+Button : "×פת×ר",
+SelectionField : "ש×× ×××ר×",
+ImageButton : "×פת×ר ת××× ×",
+
+// Context Menu
+EditLink : "ער××ת ק×ש×ר",
+InsertRow : "××ספת ש×ר×",
+DeleteRows : "×××קת ש×ר×ת",
+InsertColumn : "××ספת ×¢××××",
+DeleteColumns : "×××קת ×¢××××ת",
+InsertCell : "××ספת ת×",
+DeleteCells : "×××קת ת×××",
+MergeCells : "××××× ×ª×××",
+SplitCell : "פ×צ×× ×ª×××",
+CellProperties : "ת××× ×ת ×ת×",
+TableProperties : "ת××× ×ת ×××××",
+ImageProperties : "ת××× ×ת ×ת××× ×",
+FlashProperties : "××פ××× × ×¤××ש",
+
+AnchorProp : "××פ××× × × ×§××ת ×¢××××",
+ButtonProp : "××פ××× × ×פת×ר",
+CheckboxProp : "××פ××× × ×ª××ת ס××××",
+HiddenFieldProp : "××פ×× × ×©×× ××××",
+RadioButtonProp : "××פ××× × ×××¦× ×פשר×××ת",
+ImageButtonProp : "××פ×× × ×פת×ר ת××× ×",
+TextFieldProp : "××פ××× × ×©×× ×קס×",
+SelectionFieldProp : "××פ××× × ×©×× ×××ר×",
+TextareaProp : "××פ×× × ××××ר ×קס×",
+FormProp : "××פ×× × ××פס",
+
+FontFormats : "× ×ר×××;ק××;×ת××ת;××תרת;××תרת 2;××תרת 3;××תרת 4;××תרת 5;××תרת 6",
+
+// Alerts and Messages
+ProcessingXHTML : "××¢×× XHTML, × × ×××ת××...",
+Done : "××ש××× ××ש×××",
+PasteWordConfirm : "× ×¨×× ×××§×¡× ×©××××× ×ª× ×××××ק ×ק××¨× ×ק×××¥ Word. ××× ×רצ×× × ×× ×§×ת ×××ª× ××¨× ××××ק×?",
+NotCompatiblePaste : "פע××× ×× ×××× × ××פ××¤× Internet Explorer ××××¨×¡× 5.5 ×××¢××. ××× ×××ש×× ×××××§× ××× ×× ×ק××?",
+UnknownToolbarItem : "פר×× ×× ××××¢ ×סר×× ××××× \"%1\"",
+UnknownCommand : "×©× ×¤×¢××× ×× ××××¢ \"%1\"",
+NotImplemented : "×פק××× ×× ×××ש×ת",
+UnknownToolbarSet : "ער×ת סר×× ××××× \"%1\" ×× ×§×××ת",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "××ש×ר",
+DlgBtnCancel : "×××××",
+DlgBtnClose : "ס××ר×",
+DlgBtnBrowseServer : "ס××ר ×שרת",
+DlgAdvancedTag : "×פשר×××ת ×תק×××ת",
+DlgOpOther : "<××ר>",
+DlgInfoTab : "××××¢",
+DlgAlertUrl : "×× × ××× URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<×× × ×§××¢>",
+DlgGenId : "××××× (Id)",
+DlgGenLangDir : "××××× ×©×¤×",
+DlgGenLangDirLtr : "ש××× ××××× (LTR)",
+DlgGenLangDirRtl : "×××× ×ש××× (RTL)",
+DlgGenLangCode : "ק×× ×©×¤×",
+DlgGenAccessKey : "×קש ××ש×",
+DlgGenName : "ש×",
+DlgGenTabIndex : "×ספר ×××",
+DlgGenLongDescr : "ק×ש×ר ×ת×××ר ×פ×ר×",
+DlgGenClass : "×××××× ×ת ×¢×צ×× ×§××צ×ת",
+DlgGenTitle : "××תרת ××צעת",
+DlgGenContType : "Content Type ××צע",
+DlgGenLinkCharset : "ק×××× ××ש×× ××ק×שר",
+DlgGenStyle : "ס×× ××",
+
+// Image Dialog
+DlgImgTitle : "ת××× ×ת ×ת××× ×",
+DlgImgInfoTab : "××××¢ ×¢× ×ת××× ×",
+DlgImgBtnUpload : "ש×××× ×שרת",
+DlgImgURL : "×ת××ת (URL)",
+DlgImgUpload : "××¢×××",
+DlgImgAlt : "××§×¡× ×××פ×",
+DlgImgWidth : "ר×××",
+DlgImgHeight : "××××",
+DlgImgLockRatio : "× ×¢××ת ×××ס",
+DlgBtnResetSize : "××פ×ס ×××××",
+DlgImgBorder : "×ס×רת",
+DlgImgHSpace : "×ר××× ××פק×",
+DlgImgVSpace : "×ר××× ×× ××",
+DlgImgAlign : "××ש×ר",
+DlgImgAlignLeft : "×ש×××",
+DlgImgAlignAbsBottom: "×ת×ת×ת ×××ס×××××ת",
+DlgImgAlignAbsMiddle: "×ר××× ××ס×××××",
+DlgImgAlignBaseline : "××§× ×ת×ת×ת",
+DlgImgAlignBottom : "×ת×ת×ת",
+DlgImgAlignMiddle : "×××צע",
+DlgImgAlignRight : "×××××",
+DlgImgAlignTextTop : "×ר×ש ××קס×",
+DlgImgAlignTop : "×××¢××",
+DlgImgPreview : "תצ××× ×ק××××",
+DlgImgAlertUrl : "× × ××ק××× ×ת ×ת××ת ×ת××× ×",
+DlgImgLinkTab : "ק×ש×ר",
+
+// Flash Dialog
+DlgFlashTitle : "××פ×× × ×¤××ש",
+DlgFlashChkPlay : "× ×× ×××××××",
+DlgFlashChkLoop : "×××××",
+DlgFlashChkMenu : "×פשר תפר×× ×¤××ש",
+DlgFlashScale : "××××",
+DlgFlashScaleAll : "××¦× ×××",
+DlgFlashScaleNoBorder : "××× ×××××ת",
+DlgFlashScaleFit : "×ת××× ××ש××ת",
+
+// Link Dialog
+DlgLnkWindowTitle : "ק×ש×ר",
+DlgLnkInfoTab : "××××¢ ×¢× ×ק×ש×ר",
+DlgLnkTargetTab : "××ר×",
+
+DlgLnkType : "ס×× ×§×ש×ר",
+DlgLnkTypeURL : "×ת××ת (URL)",
+DlgLnkTypeAnchor : "×¢××× ××¢××× ××",
+DlgLnkTypeEMail : "×××''×",
+DlgLnkProto : "פר×××ק××",
+DlgLnkProtoOther : "<××ר>",
+DlgLnkURL : "×ת××ת (URL)",
+DlgLnkAnchorSel : "×××רת ×¢×××",
+DlgLnkAnchorByName : "עפ''× ×©× ××¢×××",
+DlgLnkAnchorById : "עפ''× ××××× (Id) ×ר×××",
+DlgLnkNoAnchors : "<××× ×¢××× ×× ×××× ×× ×××£>",
+DlgLnkEMail : "×ת××ת ××××''×",
+DlgLnkEMailSubject : "× ××©× ×××××¢×",
+DlgLnkEMailBody : "×××£ ×××××¢×",
+DlgLnkUpload : "××¢×××",
+DlgLnkBtnUpload : "ש×××× ×שרת",
+
+DlgLnkTarget : "××ר×",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<×××× ×§×פץ>",
+DlgLnkTargetBlank : "×××× ××ש (_blank)",
+DlgLnkTargetParent : "×××× ××× (_parent)",
+DlgLnkTargetSelf : "××××ª× ××××× (_self)",
+DlgLnkTargetTop : "×××× ×¨××©× (_top)",
+DlgLnkTargetFrameName : "×©× frame ×××¢×",
+DlgLnkPopWinName : "×©× ××××× ×ק×פץ",
+DlgLnkPopWinFeat : "ת××× ×ת ××××× ×ק×פץ",
+DlgLnkPopResize : "××¢× ×××× × ××ª× ×ש×× ××",
+DlgLnkPopLocation : "סר×× ×ת××ת",
+DlgLnkPopMenu : "סר×× ×ª×¤×¨××",
+DlgLnkPopScroll : "× ××ª× ××××××",
+DlgLnkPopStatus : "סר×× ×××××",
+DlgLnkPopToolbar : "סר×× ×××××",
+DlgLnkPopFullScrn : "××¡× ××× (IE)",
+DlgLnkPopDependent : "ת××× (Netscape)",
+DlgLnkPopWidth : "ר×××",
+DlgLnkPopHeight : "××××",
+DlgLnkPopLeft : "××ק×× ×¦× ×©×××",
+DlgLnkPopTop : "××ק×× ×¦× ×¢××××",
+
+DlnLnkMsgNoUrl : "× × ××ק××× ×ת ×ת××ת ×ק×ש×ר (URL)",
+DlnLnkMsgNoEMail : "× × ××ק××× ×ת ×ת××ת ××××''×",
+DlnLnkMsgNoAnchor : "× × ××××ר ×¢××× ××ס××",
+
+// Color Dialog
+DlgColorTitle : "×××רת צ××¢",
+DlgColorBtnClear : "××פ×ס",
+DlgColorHighlight : "× ××××",
+DlgColorSelected : "× ××ר",
+
+// Smiley Dialog
+DlgSmileyTitle : "××ספת ס×××××",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "×××רת ×ª× ×××××",
+
+// Table Dialog
+DlgTableTitle : "ת××× ×ת ××××",
+DlgTableRows : "ש×ר×ת",
+DlgTableColumns : "×¢××××ת",
+DlgTableBorder : "×××× ×ס×רת",
+DlgTableAlign : "××ש×ר",
+DlgTableAlignNotSet : "<×× × ×§××¢>",
+DlgTableAlignLeft : "ש×××",
+DlgTableAlignCenter : "×ר××",
+DlgTableAlignRight : "××××",
+DlgTableWidth : "ר×××",
+DlgTableWidthPx : "פ×קס×××",
+DlgTableWidthPc : "××××",
+DlgTableHeight : "××××",
+DlgTableCellSpace : "×ר××× ×ª×",
+DlgTableCellPad : "ר×פ×× ×ª×",
+DlgTableCaption : "××ת××",
+
+// Table Cell Dialog
+DlgCellTitle : "ת××× ×ת ת×",
+DlgCellWidth : "ר×××",
+DlgCellWidthPx : "פ×קס×××",
+DlgCellWidthPc : "××××",
+DlgCellHeight : "××××",
+DlgCellWordWrap : "××××ת ש×ר×ת",
+DlgCellWordWrapNotSet : "<×× × ×§××¢>",
+DlgCellWordWrapYes : "××",
+DlgCellWordWrapNo : "××",
+DlgCellHorAlign : "××ש×ר ××פק×",
+DlgCellHorAlignNotSet : "<×× × ×§××¢>",
+DlgCellHorAlignLeft : "ש×××",
+DlgCellHorAlignCenter : "×ר××",
+DlgCellHorAlignRight: "××××",
+DlgCellVerAlign : "××ש×ר ×× ××",
+DlgCellVerAlignNotSet : "<×× × ×§××¢>",
+DlgCellVerAlignTop : "×××¢××",
+DlgCellVerAlignMiddle : "×××צע",
+DlgCellVerAlignBottom : "×ת×ת×ת",
+DlgCellVerAlignBaseline : "×§× ×ª×ת×ת",
+DlgCellRowSpan : "×××× ×©×ר×ת",
+DlgCellCollSpan : "×××× ×¢××××ת",
+DlgCellBackColor : "צ××¢ רקע",
+DlgCellBorderColor : "צ××¢ ×ס×רת",
+DlgCellBtnSelect : "×××ר×...",
+
+// Find Dialog
+DlgFindTitle : "××פ×ש",
+DlgFindFindBtn : "××פ×ש",
+DlgFindNotFoundMsg : "×××§×¡× ××××קש ×× × ×צ×.",
+
+// Replace Dialog
+DlgReplaceTitle : "×××פ×",
+DlgReplaceFindLbl : "××פ×ש ××ר××ת:",
+DlgReplaceReplaceLbl : "××××¤× ×××ר××ת:",
+DlgReplaceCaseChk : "×ת××ת ס×× ××ת××ת (Case)",
+DlgReplaceReplaceBtn : "×××פ×",
+DlgReplaceReplAllBtn : "××××¤× ××× ××¢×××",
+DlgReplaceWordChk : "×ת××× ××××× ×××××",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "×××ר×ת ×××××× ××פ××¤× ×©×× ×× ××פשר×ת ××¢××¨× ××צע פע×××ת ××××§× ××××××××ת. ×ש ××שת×ש ××ק××ת ××©× ×× (Ctrl+V).",
+PasteErrorCut : "×××ר×ת ×××××× ××פ××¤× ×©×× ×× ××פשר×ת ××¢××¨× ××צע פע×××ת ××××¨× ××××××××ת. ×ש ××שת×ש ××ק××ת ××©× ×× (Ctrl+X).",
+PasteErrorCopy : "×××ר×ת ×××××× ××פ××¤× ×©×× ×× ××פשר×ת ××¢××¨× ××צע פע×××ת ××¢×ª×§× ××××××××ת. ×ש ××שת×ש ××ק××ת ××©× ×× (Ctrl+C).",
+
+PasteAsText : "××××§× ×××§×¡× ×¤×©××",
+PasteFromWord : "××××§× ×-Word",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "×תע×× ××××ר×ת ס×× ×¤×× ×",
+DlgPasteRemoveStyles : "×סר ×××ר×ת ס×× ××",
+DlgPasteCleanBox : "ק×פסת × ×ק××",
+
+
+// Color Picker
+ColorAutomatic : "×××××××",
+ColorMoreColors : "צ××¢×× × ×ספ××...",
+
+// Document Properties
+DocProps : "××פ×× × ×ס××",
+
+// Anchor Dialog
+DlgAnchorTitle : "××פ×× × × ×§××ת ×¢××××",
+DlgAnchorName : "×©× ×× ×§××ת ×¢××××",
+DlgAnchorErrorName : "×× × ××× ×©× ×× ×§××ת ×¢××××",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "×× × ××¦× ××××××",
+DlgSpellChangeTo : "×©× × ×",
+DlgSpellBtnIgnore : "×תע××",
+DlgSpellBtnIgnoreAll : "×תע×× ××××",
+DlgSpellBtnReplace : "××××£",
+DlgSpellBtnReplaceAll : "××××£ ×××",
+DlgSpellBtnUndo : "Undo",
+DlgSpellNoSuggestions : "- ××× ×צע×ת -",
+DlgSpellProgress : "×××ק×ת ×××ת ×ת×××× ....",
+DlgSpellNoMispell : "×××ק×ת ×××ת ×סת××××: ×× × ×צ×× ×©×××¢×ת ×ת××",
+DlgSpellNoChanges : "×××ק×ת ×××ת ×סת××××: ×× ×©×× ×ª× ××£ ××××",
+DlgSpellOneChange : "×××ק×ת ×××ת ×סת××××: ש×× ×ª× ×××× ××ת",
+DlgSpellManyChanges : "×××ק×ת ×××ת ×סת××××: %1 ××××× ×©×× ×",
+
+IeSpellDownload : "×××ק ××××ת ×× ××תק×, ××× ××ª× ××¢×× ××× ×××ר××?",
+
+// Button Dialog
+DlgButtonText : "××§×¡× (ער×)",
+DlgButtonType : "ס××",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "ש×",
+DlgCheckboxValue : "ער×",
+DlgCheckboxSelected : "×××ר",
+
+// Form Dialog
+DlgFormName : "ש×",
+DlgFormAction : "ש×× ××",
+DlgFormMethod : "ס×× ×©××××",
+
+// Select Field Dialog
+DlgSelectName : "ש×",
+DlgSelectValue : "ער×",
+DlgSelectSize : "××××",
+DlgSelectLines : "ש×ר×ת",
+DlgSelectChkMulti : "×פשר ×××ר×ת ×ר×××ת",
+DlgSelectOpAvail : "×פשר×××ת ×××× ×ת",
+DlgSelectOpText : "×קס×",
+DlgSelectOpValue : "ער×",
+DlgSelectBtnAdd : "××סף",
+DlgSelectBtnModify : "×©× ×",
+DlgSelectBtnUp : "×××¢××",
+DlgSelectBtnDown : "××××",
+DlgSelectBtnSetValue : "ק××¢ ××ר×רת ××××",
+DlgSelectBtnDelete : "××ק",
+
+// Textarea Dialog
+DlgTextareaName : "ש×",
+DlgTextareaCols : "×¢××××ת",
+DlgTextareaRows : "ש×ר×ת",
+
+// Text Field Dialog
+DlgTextName : "ש×",
+DlgTextValue : "ער×",
+DlgTextCharWidth : "ר××× ×××ת××ת",
+DlgTextMaxChars : "×קס×××ת ××ת××ת",
+DlgTextType : "ס××",
+DlgTextTypeText : "×קס×",
+DlgTextTypePass : "ס×ס××",
+
+// Hidden Field Dialog
+DlgHiddenName : "ש×",
+DlgHiddenValue : "ער×",
+
+// Bulleted List Dialog
+BulletedListProp : "××פ××× × ×¨×©×××",
+NumberedListProp : "××פ××× × ×¨×©××× ×××ספרת",
+DlgLstType : "ס××",
+DlgLstTypeCircle : "×¢××××",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "×ר×××¢",
+DlgLstTypeNumbers : "×ספר×× (1, 2, 3)",
+DlgLstTypeLCase : "××ת××ת ק×× ×ת (a, b, c)",
+DlgLstTypeUCase : "××ת××ת ×××××ת (A, B, C)",
+DlgLstTypeSRoman : "ספר×ת ר×××××ת ק×× ×ת (i, ii, iii)",
+DlgLstTypeLRoman : "ספר×ת ר×××××ת ×××××ת (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "××××",
+DlgDocBackTab : "רקע",
+DlgDocColorsTab : "צ××¢×× ××××××ת",
+DlgDocMetaTab : "× ×ª×× × META",
+
+DlgDocPageTitle : "××תרת ××£",
+DlgDocLangDir : "××××× ×©×¤×",
+DlgDocLangDirLTR : "ש××× ××××× (LTR)",
+DlgDocLangDirRTL : "×××× ×ש××× (RTL)",
+DlgDocLangCode : "ק×× ×©×¤×",
+DlgDocCharSet : "ק×××× ××ת××ת",
+DlgDocCharSetOther : "ק×××× ××ת××ת ××ר",
+
+DlgDocDocType : "×××ר×ת ס×× ×ס××",
+DlgDocDocTypeOther : "×××ר×ת ס×× ×ס×× ××ר×ת",
+DlgDocIncXHTML : "×××× ×××ר×ת XHTML",
+DlgDocBgColor : "צ××¢ רקע",
+DlgDocBgImage : "URL ×ת××× ×ª רקע",
+DlgDocBgNoScroll : "ר××¢ ××× ×××××",
+DlgDocCText : "×קס×",
+DlgDocCLink : "ק×ש×ר",
+DlgDocCVisited : "ק×ש×ר ש××קר",
+DlgDocCActive : " ק×ש×ר פע××",
+DlgDocMargins : "×××××ת ××£",
+DlgDocMaTop : "×××¢××",
+DlgDocMaLeft : "ש××××",
+DlgDocMaRight : "×××× ×",
+DlgDocMaBottom : "××××",
+DlgDocMeIndex : "××¤×ª× ×¢× ××× ×× ×©× ××ס×× )×××¤×¨× ×פס×ק(",
+DlgDocMeDescr : "ת××ר ×ס××",
+DlgDocMeAuthor : "×××ר",
+DlgDocMeCopy : "×××××ת ××צר××",
+DlgDocPreview : "תצ××× ×ק××××",
+
+// Templates Dialog
+Templates : "ת×× ××ת",
+DlgTemplatesTitle : "ת×××ת ת×××",
+DlgTemplatesSelMsg : "×× × ××ר ת×× ×ת ×פת××× ××¢××¨× <BR>×ת××× ××ק××¨× ×××ק:",
+DlgTemplatesLoading : "××¢×× ×¨×©××ת ת×× ××ת ×× × ××ת×",
+DlgTemplatesNoTpl : "(×× ×××××¨× ×ª×× ××ת)",
+
+// About Dialog
+DlgAboutAboutTab : "××××ת",
+DlgAboutBrowserInfoTab : "××רסת ×פ×פ×",
+DlgAboutVersion : "××רס×",
+DlgAboutLicense : "×רש××× ×ª×ת ×ª× ×× GNU Lesser General Public License",
+DlgAboutInfo : "××××¢ × ×סף × ××ª× ××צ×× ×××:"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/hr.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/hr.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/hr.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: hr.js
+ * Croatian language file.
+ *
+ * File Authors:
+ * Alex Varga (avarga at globaldizajn.hr)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Smanji trake s alatima",
+ToolbarExpand : "Proširi trake s alatima",
+
+// Toolbar Items and Context Menu
+Save : "Snimi",
+NewPage : "Nova stranica",
+Preview : "Pregledaj",
+Cut : "Izreži",
+Copy : "Kopiraj",
+Paste : "Zalijepi",
+PasteText : "Zalijepi kao Äisti tekst",
+PasteWord : "Zalijepi iz Worda",
+Print : "Ispiši",
+SelectAll : "Odaberi sve",
+RemoveFormat : "Ukloni formatiranje",
+InsertLinkLbl : "Link",
+InsertLink : "Ubaci/promijeni link",
+RemoveLink : "Ukloni link",
+Anchor : "Ubaci/promijeni sidro",
+InsertImageLbl : "Slika",
+InsertImage : "Ubaci/promijeni sliku",
+InsertFlashLbl : "Flash",
+InsertFlash : "Ubaci/promijeni Flash",
+InsertTableLbl : "Tablica",
+InsertTable : "Ubaci/promijeni tablicu",
+InsertLineLbl : "Linija",
+InsertLine : "Ubaci vodoravnu liniju",
+InsertSpecialCharLbl: "Posebni karakteri",
+InsertSpecialChar : "Ubaci posebne znakove",
+InsertSmileyLbl : "Smješko",
+InsertSmiley : "Ubaci smješka",
+About : "O FCKeditoru",
+Bold : "Podebljaj",
+Italic : "Ukosi",
+Underline : "Potcrtano",
+StrikeThrough : "Precrtano",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Lijevo poravnanje",
+CenterJustify : "Središnje poravnanje",
+RightJustify : "Desno poravnanje",
+BlockJustify : "Blok poravnanje",
+DecreaseIndent : "Pomakni ulijevo",
+IncreaseIndent : "Pomakni udesno",
+Undo : "Poništi",
+Redo : "Ponovi",
+NumberedListLbl : "BrojÄana lista",
+NumberedList : "Ubaci/ukloni brojÄanu listu",
+BulletedListLbl : "ObiÄna lista",
+BulletedList : "Ubaci/ukloni obiÄnu listu",
+ShowTableBorders : "Prikaži okvir tablice",
+ShowDetails : "Prikaži detalje",
+Style : "Stil",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "VeliÄina",
+TextColor : "Boja teksta",
+BGColor : "Boja pozadine",
+Source : "Kôd",
+Find : "PronaÄi",
+Replace : "Zamijeni",
+SpellCheck : "Provjeri pravopis",
+UniversalKeyboard : "Univerzalna tipkovnica",
+
+Form : "Form",
+Checkbox : "Checkbox",
+RadioButton : "Radio Button",
+TextField : "Text Field",
+Textarea : "Textarea",
+HiddenField : "Hidden Field",
+Button : "Button",
+SelectionField : "Selection Field",
+ImageButton : "Image Button",
+
+// Context Menu
+EditLink : "Promijeni link",
+InsertRow : "Ubaci red",
+DeleteRows : "Izbriši redove",
+InsertColumn : "Ubaci kolonu",
+DeleteColumns : "Izbriši kolone",
+InsertCell : "Ubaci Äelije",
+DeleteCells : "IzbriÅ¡i Äelije",
+MergeCells : "Spoji Äelije",
+SplitCell : "Razdvoji Äelije",
+CellProperties : "Svojstva Äelije",
+TableProperties : "Svojstva tablice",
+ImageProperties : "Svojstva slike",
+FlashProperties : "Flash svojstva",
+
+AnchorProp : "Svojstva sidra",
+ButtonProp : "Image Button svojstva",
+CheckboxProp : "Checkbox svojstva",
+HiddenFieldProp : "Hidden Field svojstva",
+RadioButtonProp : "Radio Button svojstva",
+ImageButtonProp : "Image Button svojstva",
+TextFieldProp : "Text Field svojstva",
+SelectionFieldProp : "Selection svojstva",
+TextareaProp : "Textarea svojstva",
+FormProp : "Form svojstva",
+
+FontFormats : "Normal;Formatirano;Adresa;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6",
+
+// Alerts and Messages
+ProcessingXHTML : "ObraÄujem XHTML. Molimo priÄekajte...",
+Done : "Završio",
+PasteWordConfirm : "Tekst koji želite zalijepiti Äini se da je kopiran iz Worda. Želite li prije oÄistiti tekst?",
+NotCompatiblePaste : "Ova naredba je dostupna samo u Internet Exploreru 5.5 ili novijem. Želite li nastaviti bez ÄiÅ¡Äenja?",
+UnknownToolbarItem : "Nepoznati Älan trake s alatima \"%1\"",
+UnknownCommand : "Nepoznata naredba \"%1\"",
+NotImplemented : "Naredba nije implementirana",
+UnknownToolbarSet : "Traka s alatima \"%1\" ne postoji",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Poništi",
+DlgBtnClose : "Zatvori",
+DlgBtnBrowseServer : "Pretraži server",
+DlgAdvancedTag : "Napredno",
+DlgOpOther : "<Drugo>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Molimo unesite URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<nije postavljeno>",
+DlgGenId : "Id",
+DlgGenLangDir : "Smjer jezika",
+DlgGenLangDirLtr : "S lijeva na desno (LTR)",
+DlgGenLangDirRtl : "S desna na lijevo (RTL)",
+DlgGenLangCode : "Kôd jezika",
+DlgGenAccessKey : "Pristupna tipka",
+DlgGenName : "Naziv",
+DlgGenTabIndex : "Tab Indeks",
+DlgGenLongDescr : "DugaÄki opis URL",
+DlgGenClass : "Stylesheet klase",
+DlgGenTitle : "Advisory naslov",
+DlgGenContType : "Advisory vrsta sadržaja",
+DlgGenLinkCharset : "Kodna stranica povezanih resursa",
+DlgGenStyle : "Stil",
+
+// Image Dialog
+DlgImgTitle : "Svojstva slika",
+DlgImgInfoTab : "Info slike",
+DlgImgBtnUpload : "Pošalji na server",
+DlgImgURL : "URL",
+DlgImgUpload : "Pošalji",
+DlgImgAlt : "Alternativni tekst",
+DlgImgWidth : "Å irina",
+DlgImgHeight : "Visina",
+DlgImgLockRatio : "ZakljuÄaj odnos",
+DlgBtnResetSize : "ObriÅ¡i veliÄinu",
+DlgImgBorder : "Okvir",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Poravnaj",
+DlgImgAlignLeft : "Lijevo",
+DlgImgAlignAbsBottom: "Abs dolje",
+DlgImgAlignAbsMiddle: "Abs sredina",
+DlgImgAlignBaseline : "Bazno",
+DlgImgAlignBottom : "Dolje",
+DlgImgAlignMiddle : "Sredina",
+DlgImgAlignRight : "Desno",
+DlgImgAlignTextTop : "Vrh teksta",
+DlgImgAlignTop : "Vrh",
+DlgImgPreview : "Pregledaj",
+DlgImgAlertUrl : "Unesite URL slike",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Flash svojstva",
+DlgFlashChkPlay : "Auto Play",
+DlgFlashChkLoop : "Ponavljaj",
+DlgFlashChkMenu : "OmoguÄi Flash izbornik",
+DlgFlashScale : "Omjer",
+DlgFlashScaleAll : "Prikaži sve",
+DlgFlashScaleNoBorder : "Bez okvira",
+DlgFlashScaleFit : "ToÄna veliÄina",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link Info",
+DlgLnkTargetTab : "Meta",
+
+DlgLnkType : "Link vrsta",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Sidro na ovoj stranici",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<drugo>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Odaberi sidro",
+DlgLnkAnchorByName : "Po nazivu sidra",
+DlgLnkAnchorById : "Po Id elementa",
+DlgLnkNoAnchors : "<Nema dostupnih sidra>",
+DlgLnkEMail : "E-Mail adresa",
+DlgLnkEMailSubject : "Naslov",
+DlgLnkEMailBody : "Sadržaj poruke",
+DlgLnkUpload : "Pošalji",
+DlgLnkBtnUpload : "Pošalji na server",
+
+DlgLnkTarget : "Meta",
+DlgLnkTargetFrame : "<okvir>",
+DlgLnkTargetPopup : "<popup prozor>",
+DlgLnkTargetBlank : "Novi prozor (_blank)",
+DlgLnkTargetParent : "Roditeljski prozor (_parent)",
+DlgLnkTargetSelf : "Isti prozor (_self)",
+DlgLnkTargetTop : "Vršni prozor (_top)",
+DlgLnkTargetFrameName : "Ime ciljnog okvira",
+DlgLnkPopWinName : "Naziv popup prozora",
+DlgLnkPopWinFeat : "MoguÄnosti popup prozora",
+DlgLnkPopResize : "Promjenljive veliÄine",
+DlgLnkPopLocation : "Traka za lokaciju",
+DlgLnkPopMenu : "Izborna traka",
+DlgLnkPopScroll : "Scroll traka",
+DlgLnkPopStatus : "Statusna traka",
+DlgLnkPopToolbar : "Traka s alatima",
+DlgLnkPopFullScrn : "Cijeli ekran (IE)",
+DlgLnkPopDependent : "Ovisno (Netscape)",
+DlgLnkPopWidth : "Å irina",
+DlgLnkPopHeight : "Visina",
+DlgLnkPopLeft : "Lijeva pozicija",
+DlgLnkPopTop : "Gornja pozicija",
+
+DlnLnkMsgNoUrl : "Molimo upišite URL link",
+DlnLnkMsgNoEMail : "Molimo upišite e-mail adresu",
+DlnLnkMsgNoAnchor : "Molimo odaberite sidro",
+
+// Color Dialog
+DlgColorTitle : "Odaberite boju",
+DlgColorBtnClear : "Obriši",
+DlgColorHighlight : "Osvijetli",
+DlgColorSelected : "Odaberi",
+
+// Smiley Dialog
+DlgSmileyTitle : "Ubaci smješka",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Odaberite posebni karakter",
+
+// Table Dialog
+DlgTableTitle : "Svojstva tablice",
+DlgTableRows : "Redova",
+DlgTableColumns : "Kolona",
+DlgTableBorder : "VeliÄina okvira",
+DlgTableAlign : "Poravnanje",
+DlgTableAlignNotSet : "<nije postavljeno>",
+DlgTableAlignLeft : "Lijevo",
+DlgTableAlignCenter : "Središnje",
+DlgTableAlignRight : "Desno",
+DlgTableWidth : "Å irina",
+DlgTableWidthPx : "piksela",
+DlgTableWidthPc : "postotaka",
+DlgTableHeight : "Visina",
+DlgTableCellSpace : "Prostornost Äelija",
+DlgTableCellPad : "Razmak Äelija",
+DlgTableCaption : "Naslov",
+
+// Table Cell Dialog
+DlgCellTitle : "Svojstva Äelije",
+DlgCellWidth : "Å irina",
+DlgCellWidthPx : "piksela",
+DlgCellWidthPc : "postotaka",
+DlgCellHeight : "Visina",
+DlgCellWordWrap : "Word Wrap",
+DlgCellWordWrapNotSet : "<nije postavljeno>",
+DlgCellWordWrapYes : "Da",
+DlgCellWordWrapNo : "Ne",
+DlgCellHorAlign : "Vodoravno poravnanje",
+DlgCellHorAlignNotSet : "<nije postavljeno>",
+DlgCellHorAlignLeft : "Lijevo",
+DlgCellHorAlignCenter : "Središnje",
+DlgCellHorAlignRight: "Desno",
+DlgCellVerAlign : "Okomito poravnanje",
+DlgCellVerAlignNotSet : "<nije postavljeno>",
+DlgCellVerAlignTop : "Gornje",
+DlgCellVerAlignMiddle : "Srednišnje",
+DlgCellVerAlignBottom : "Donje",
+DlgCellVerAlignBaseline : "Bazno",
+DlgCellRowSpan : "Spajanje redova",
+DlgCellCollSpan : "Spajanje kolona",
+DlgCellBackColor : "Boja pozadine",
+DlgCellBorderColor : "Boja okvira",
+DlgCellBtnSelect : "Odaberi...",
+
+// Find Dialog
+DlgFindTitle : "PronaÄi",
+DlgFindFindBtn : "PronaÄi",
+DlgFindNotFoundMsg : "Traženi tekst nije pronaÄen.",
+
+// Replace Dialog
+DlgReplaceTitle : "Zamijeni",
+DlgReplaceFindLbl : "PronaÄi:",
+DlgReplaceReplaceLbl : "Zamijeni s:",
+DlgReplaceCaseChk : "Usporedi mala/velika slova",
+DlgReplaceReplaceBtn : "Zamijeni",
+DlgReplaceReplAllBtn : "Zamijeni sve",
+DlgReplaceWordChk : "Usporedi cijele rijeÄi",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Sigurnosne postavke VaÅ¡eg pretraživaÄa ne dozvoljavaju operacije automatskog ljepljenja. Molimo koristite kraticu na tipkovnici (Ctrl+V).",
+PasteErrorCut : "Sigurnosne postavke VaÅ¡eg pretraživaÄa ne dozvoljavaju operacije automatskog izrezivanja. Molimo koristite kraticu na tipkovnici (Ctrl+X).",
+PasteErrorCopy : "Sigurnosne postavke VaÅ¡eg pretraživaÄa ne dozvoljavaju operacije automatskog kopiranja. Molimo koristite kraticu na tipkovnici (Ctrl+C).",
+
+PasteAsText : "Zalijepi kao Äisti tekst",
+PasteFromWord : "Zalijepi iz Worda",
+
+DlgPasteMsg2 : "Molimo zaljepite unutar doljnjeg okvira koristeÄi tipkovnicu (<STRONG>Ctrl+V</STRONG>) i kliknite <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Zanemari definiciju vrste fonta",
+DlgPasteRemoveStyles : "Ukloni definicije stilova",
+DlgPasteCleanBox : "OÄisti okvir",
+
+
+// Color Picker
+ColorAutomatic : "Automatski",
+ColorMoreColors : "Više boja...",
+
+// Document Properties
+DocProps : "Svojstva dokumenta",
+
+// Anchor Dialog
+DlgAnchorTitle : "Svojstva sidra",
+DlgAnchorName : "Ime sidra",
+DlgAnchorErrorName : "Molimo unesite ime sidra",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Nije u rjeÄniku",
+DlgSpellChangeTo : "Promijeni u",
+DlgSpellBtnIgnore : "Zanemari",
+DlgSpellBtnIgnoreAll : "Zanemari sve",
+DlgSpellBtnReplace : "Zamijeni",
+DlgSpellBtnReplaceAll : "Zamijeni sve",
+DlgSpellBtnUndo : "Vrati",
+DlgSpellNoSuggestions : "-Nema preporuke-",
+DlgSpellProgress : "Provjera u tijeku...",
+DlgSpellNoMispell : "Provjera završena: Nema grešaka",
+DlgSpellNoChanges : "Provjera završena: Nije napravljena promjena",
+DlgSpellOneChange : "Provjera zavrÅ¡ena: Jedna rijeÄ promjenjena",
+DlgSpellManyChanges : "Provjera zavrÅ¡ena: Promijenjeno %1 rijeÄi",
+
+IeSpellDownload : "Provjera pravopisa nije instalirana. Želite li skinuti provjeru pravopisa?",
+
+// Button Dialog
+DlgButtonText : "Tekst (vrijednost)",
+DlgButtonType : "Vrsta",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Ime",
+DlgCheckboxValue : "Vrijednost",
+DlgCheckboxSelected : "Odabrano",
+
+// Form Dialog
+DlgFormName : "Ime",
+DlgFormAction : "Akcija",
+DlgFormMethod : "Metoda",
+
+// Select Field Dialog
+DlgSelectName : "Ime",
+DlgSelectValue : "Vrijednost",
+DlgSelectSize : "VeliÄina",
+DlgSelectLines : "linija",
+DlgSelectChkMulti : "Dozvoli višestruki odabir",
+DlgSelectOpAvail : "Dostupne opcije",
+DlgSelectOpText : "Tekst",
+DlgSelectOpValue : "Vrijednost",
+DlgSelectBtnAdd : "Dodaj",
+DlgSelectBtnModify : "Promijeni",
+DlgSelectBtnUp : "Gore",
+DlgSelectBtnDown : "Dolje",
+DlgSelectBtnSetValue : "Postavi kao odabranu vrijednost",
+DlgSelectBtnDelete : "Obriši",
+
+// Textarea Dialog
+DlgTextareaName : "Ime",
+DlgTextareaCols : "Kolona",
+DlgTextareaRows : "Redova",
+
+// Text Field Dialog
+DlgTextName : "Ime",
+DlgTextValue : "Vrijednost",
+DlgTextCharWidth : "Å irina",
+DlgTextMaxChars : "Najviše karaktera",
+DlgTextType : "Vrsta",
+DlgTextTypeText : "Tekst",
+DlgTextTypePass : "Å ifra",
+
+// Hidden Field Dialog
+DlgHiddenName : "Ime",
+DlgHiddenValue : "Vrijednost",
+
+// Bulleted List Dialog
+BulletedListProp : "Svojstva liste",
+NumberedListProp : "Svojstva brojÄane liste",
+DlgLstType : "Vrsta",
+DlgLstTypeCircle : "Krug",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Kvadrat",
+DlgLstTypeNumbers : "Brojevi (1, 2, 3)",
+DlgLstTypeLCase : "Mala slova (a, b, c)",
+DlgLstTypeUCase : "Velika slova (A, B, C)",
+DlgLstTypeSRoman : "Male rimske brojke (i, ii, iii)",
+DlgLstTypeLRoman : "Velike rimske brojke (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "OpÄenito",
+DlgDocBackTab : "Pozadina",
+DlgDocColorsTab : "Boje i margine",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Naslov stranice",
+DlgDocLangDir : "Smjer jezika",
+DlgDocLangDirLTR : "S lijeva na desno",
+DlgDocLangDirRTL : "S desna na lijevo",
+DlgDocLangCode : "Kôd jezika",
+DlgDocCharSet : "Enkodiranje znakova",
+DlgDocCharSetOther : "Ostalo enkodiranje znakova",
+
+DlgDocDocType : "Zaglavlje vrste dokumenta",
+DlgDocDocTypeOther : "Ostalo zaglavlje vrste dokumenta",
+DlgDocIncXHTML : "Ubaci XHTML deklaracije",
+DlgDocBgColor : "Boja pozadine",
+DlgDocBgImage : "URL slike pozadine",
+DlgDocBgNoScroll : "Pozadine se ne pomiÄe",
+DlgDocCText : "Tekst",
+DlgDocCLink : "Link",
+DlgDocCVisited : "PosjeÄeni link",
+DlgDocCActive : "Aktivni link",
+DlgDocMargins : "Margine stranice",
+DlgDocMaTop : "Vrh",
+DlgDocMaLeft : "Lijevo",
+DlgDocMaRight : "Desno",
+DlgDocMaBottom : "Dolje",
+DlgDocMeIndex : "KljuÄne rijeÄi dokumenta (odvojene zarezom)",
+DlgDocMeDescr : "Opis dokumenta",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Autorska prava",
+DlgDocPreview : "Pregledaj",
+
+// Templates Dialog
+Templates : "Predlošci",
+DlgTemplatesTitle : "Predlošci sadržaja",
+DlgTemplatesSelMsg : "Molimo odaberite predložak koji želite otvoriti<br>(stvarni sadržaj Äe biti izgubljen):",
+DlgTemplatesLoading : "UÄitavam listu predložaka. Molimo priÄekajte...",
+DlgTemplatesNoTpl : "(Nema definiranih predložaka)",
+
+// About Dialog
+DlgAboutAboutTab : "O FCKEditoru",
+DlgAboutBrowserInfoTab : "Podaci o pretraživaÄu",
+DlgAboutVersion : "inaÄica",
+DlgAboutLicense : "Licencirano pod uvjetima GNU Lesser General Public License",
+DlgAboutInfo : "Za više informacija posjetite"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/hu.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/hu.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/hu.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: hu.js
+ * Hungarian language file.
+ *
+ * File Authors:
+ * Varga Zsolt (meridian at netteszt.hu)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Egyszerû eszköztár",
+ToolbarExpand : "BõvÃtett eszköztár",
+
+// Toolbar Items and Context Menu
+Save : "Mentés",
+NewPage : "Ãj oldal",
+Preview : "Elõnézet",
+Cut : "Kivágás",
+Copy : "Másolás",
+Paste : "Beillesztés",
+PasteText : "Beillesztés formázatlan szövegként",
+PasteWord : "Beillesztés Wordbõl",
+Print : "Nyomtatás",
+SelectAll : "Minden kijelölése",
+RemoveFormat : "Formázás törlése",
+InsertLinkLbl : "Hivatkozás",
+InsertLink : "Hivatkozás beillesztése/módosÃtása",
+RemoveLink : "Hivatkozás törlése",
+Anchor : "Horgony beillesztése/szerkesztése",
+InsertImageLbl : "Kép",
+InsertImage : "Kép beillesztése/módosÃtása",
+InsertFlashLbl : "Flash",
+InsertFlash : "Flash beillesztése, módosÃtása",
+InsertTableLbl : "Táblázat",
+InsertTable : "Táblázat beillesztése/módosÃtása",
+InsertLineLbl : "Vonal",
+InsertLine : "Elválasztóvonal beillesztése",
+InsertSpecialCharLbl: "Speciális karakter",
+InsertSpecialChar : "Speciális karakter beillesztése",
+InsertSmileyLbl : "Hangulatjelek",
+InsertSmiley : "Hangulatjelek beillesztése",
+About : "FCKeditor névjegy",
+Bold : "Félkövér",
+Italic : "Dõlt",
+Underline : "Aláhúzott",
+StrikeThrough : "Ãthúzott",
+Subscript : "Alsó index",
+Superscript : "Felsõ index",
+LeftJustify : "Balra",
+CenterJustify : "Középre",
+RightJustify : "Jobbra",
+BlockJustify : "Sorkizárt",
+DecreaseIndent : "Behúzás csökkentése",
+IncreaseIndent : "Behúzás növelése",
+Undo : "Visszavonás",
+Redo : "Ismétlés",
+NumberedListLbl : "Számozás",
+NumberedList : "Számozás beillesztése/törlése",
+BulletedListLbl : "Felsorolás",
+BulletedList : "Felsorolás beillesztése/törlése",
+ShowTableBorders : "Táblázat szegély mutatása",
+ShowDetails : "Részletek mutatása",
+Style : "StÃlus",
+FontFormat : "Formátum",
+Font : "Betûtipus",
+FontSize : "Méret",
+TextColor : "BetûszÃn",
+BGColor : "HáttérszÃn",
+Source : "Forráskód",
+Find : "Keresés",
+Replace : "Csere",
+SpellCheck : "HelyesÃrásellenÅrzés",
+UniversalKeyboard : "Ãltalános billentyűzet",
+
+Form : "Å°rlap",
+Checkbox : "JelölÅnégyzet",
+RadioButton : "Választógomb",
+TextField : "SzövegmezÅ",
+Textarea : "Szövegterület",
+HiddenField : "RejtettmezÅ",
+Button : "Gomb",
+SelectionField : "VálasztómezÅ",
+ImageButton : "Képgomb",
+
+// Context Menu
+EditLink : "Hivatkozás módosÃtása",
+InsertRow : "Sor beszúrása",
+DeleteRows : "Sor(ok) törlése",
+InsertColumn : "Oszlop beszúrása",
+DeleteColumns : "Oszlop(ok) törlése",
+InsertCell : "Cella beszúrása",
+DeleteCells : "Cellák törlése",
+MergeCells : "Cellák egyesÃtése",
+SplitCell : "Cellák szétválasztása",
+CellProperties : "Cellák tulajdonsága",
+TableProperties : "Táblázat tulajdonsága",
+ImageProperties : "Kép tulajdonsága",
+FlashProperties : "Flash tulajdonsága",
+
+AnchorProp : "Horgony(ok) tulajdonsága(i)",
+ButtonProp : "Gomb(ok) tulajdonsága(i) ",
+CheckboxProp : "JelölÅnégyzet(ek) tulajdonsága(i)",
+HiddenFieldProp : "RejtettmezÅ(k) tulajdonsága(i)",
+RadioButtonProp : "Választógomb(ok) tulajdonsága(i)",
+ImageButtonProp : "Képgomb(ok) tulajdonsága(i)",
+TextFieldProp : "SzövegmezÅ(k) tulajdonsága(i)",
+SelectionFieldProp : "VálasztómezÅ(k) tulajdonsága(i)",
+TextareaProp : "Szövegterület(ek) tulajdonsága(i)",
+FormProp : "Űrlap(ok) tulajdonsága(i)",
+
+FontFormats : "Normál;Formázott;CÃmsor;Fejléc 1;Fejléc 2;Fejléc 3;Fejléc 4;Fejléc 5;Fejléc 6;Bekezdés (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "XHTML feldolgozása. Kérem várjon...",
+Done : "Kész",
+PasteWordConfirm : "A szöveg amit be szeretnél illeszteni úgy néz ki Word-bõl van másolva. Do you want to clean it before pasting?",
+NotCompatiblePaste : "Ez a parancs csak Internet Explorer 5.5 verziótól használható (Firefox rulez). Do you want to paste without cleaning?",
+UnknownToolbarItem : "Ismeretlen eszköztár elem \"%1\"",
+UnknownCommand : "Ismeretlen parancs \"%1\"",
+NotImplemented : "A parancs nincs beágyazva",
+UnknownToolbarSet : "Eszközkészlet beállÃtás \"%1\" nem létezik",
+NoActiveX : "A böngészÅd biztonsági beállÃtásai limitálják a szerkesztÅ lehetÅségeit. Engedélyezned kell ezt az opciót: \"Run ActiveX controls and plug-ins\". Kitapasztalhatod a hibákat és feljegyezheted a hiányzó képességeket.",
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Mégsem",
+DlgBtnClose : "Bezárás",
+DlgBtnBrowseServer : "Szerver tallózása",
+DlgAdvancedTag : "Haladó",
+DlgOpOther : "Egyéb",
+DlgInfoTab : "Információ",
+DlgAlertUrl : "Illeszd be a hivatkozást",
+
+// General Dialogs Labels
+DlgGenNotSet : "<nincs beállÃtva>",
+DlgGenId : "AzonosÃtó",
+DlgGenLangDir : "Nyelv útmutató",
+DlgGenLangDirLtr : "Balról jobbra",
+DlgGenLangDirRtl : "Jobbról balra",
+DlgGenLangCode : "Nyelv kód",
+DlgGenAccessKey : "Elérési kulcs",
+DlgGenName : "Név",
+DlgGenTabIndex : "Tabulátor index",
+DlgGenLongDescr : "Hosszú URL",
+DlgGenClass : "StÃluskészlet",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Hivatkozott kódlap készlet",
+DlgGenStyle : "StÃlus",
+
+// Image Dialog
+DlgImgTitle : "Kép tulajdonsága",
+DlgImgInfoTab : "Kép információ",
+DlgImgBtnUpload : "Küldés a szervernek",
+DlgImgURL : "URL",
+DlgImgUpload : "Feltöltés",
+DlgImgAlt : "Buborék szöveg",
+DlgImgWidth : "Szélesség",
+DlgImgHeight : "Magasság",
+DlgImgLockRatio : "Arány megtartása",
+DlgBtnResetSize : "Eredeti méret",
+DlgImgBorder : "Keret",
+DlgImgHSpace : "VÃzsz. táv",
+DlgImgVSpace : "Függ. táv",
+DlgImgAlign : "IgazÃtás",
+DlgImgAlignLeft : "Bal",
+DlgImgAlignAbsBottom: "Legaljára",
+DlgImgAlignAbsMiddle: "Közepére",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Aljára",
+DlgImgAlignMiddle : "Középre",
+DlgImgAlignRight : "Jobbra",
+DlgImgAlignTextTop : "Szöveg tetjére",
+DlgImgAlignTop : "Tetejére",
+DlgImgPreview : "Elõnézet",
+DlgImgAlertUrl : "Töltse ki a kép URL-ét",
+DlgImgLinkTab : "Hivatkozás",
+
+// Flash Dialog
+DlgFlashTitle : "Flash tulajdonsága",
+DlgFlashChkPlay : "Automata lejátszás",
+DlgFlashChkLoop : "Folyamatosan",
+DlgFlashChkMenu : "Flash menü engedélyezése",
+DlgFlashScale : "Méretezés",
+DlgFlashScaleAll : "Mindent mutat",
+DlgFlashScaleNoBorder : "Keret nélkül",
+DlgFlashScaleFit : "Teljes kitöltés",
+
+// Link Dialog
+DlgLnkWindowTitle : "Hivatkozás",
+DlgLnkInfoTab : "Hivatkozás információ",
+DlgLnkTargetTab : "Cél",
+
+DlgLnkType : "Hivatkozás tipusa",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Horgony az oldalon",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokoll",
+DlgLnkProtoOther : "<más>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Horgony választása",
+DlgLnkAnchorByName : "Horgony név szerint",
+DlgLnkAnchorById : "AzonosÃtó szerint elõsorban ",
+DlgLnkNoAnchors : "<Nincs horgony a dokumentumban>",
+DlgLnkEMail : "E-Mail cÃm",
+DlgLnkEMailSubject : "Ãzenet tárgya",
+DlgLnkEMailBody : "Ãzenet",
+DlgLnkUpload : "Feltöltés",
+DlgLnkBtnUpload : "Küldés a szerverhez",
+
+DlgLnkTarget : "Cél",
+DlgLnkTargetFrame : "<keret>",
+DlgLnkTargetPopup : "<felugró ablak>",
+DlgLnkTargetBlank : "Ãj ablak (_blank)",
+DlgLnkTargetParent : "Szülõ ablak (_parent)",
+DlgLnkTargetSelf : "Azonos ablak (_self)",
+DlgLnkTargetTop : "Legfelsõ ablak (_top)",
+DlgLnkTargetFrameName : "Cél frame neve",
+DlgLnkPopWinName : "Felugró ablak neve",
+DlgLnkPopWinFeat : "Felugró ablak jellemzõi",
+DlgLnkPopResize : "Méretezhetõ",
+DlgLnkPopLocation : "Location Bar",
+DlgLnkPopMenu : "Menü sor",
+DlgLnkPopScroll : "GördÃtõsáv",
+DlgLnkPopStatus : "Ãllapotsor",
+DlgLnkPopToolbar : "Eszköztár",
+DlgLnkPopFullScrn : "Teljes képernyõ (IE)",
+DlgLnkPopDependent : "Netscape sajátosság",
+DlgLnkPopWidth : "Szélesség",
+DlgLnkPopHeight : "Magasság",
+DlgLnkPopLeft : "Bal pozÃció",
+DlgLnkPopTop : "Felsõ pozÃció",
+
+DlnLnkMsgNoUrl : "Adja meg a hivatkozás URL-ét",
+DlnLnkMsgNoEMail : "Adja meg az e-mail cÃmet",
+DlnLnkMsgNoAnchor : "Válasszon egy horgonyt",
+
+// Color Dialog
+DlgColorTitle : "Szinválasztás",
+DlgColorBtnClear : "Törlés",
+DlgColorHighlight : "Világos rész",
+DlgColorSelected : "Választott",
+
+// Smiley Dialog
+DlgSmileyTitle : "Hangulatjel beszúrása",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Speciális karakter választása",
+
+// Table Dialog
+DlgTableTitle : "Táblázat tulajdonságai",
+DlgTableRows : "Sorok",
+DlgTableColumns : "Oszlopok",
+DlgTableBorder : "Szegélyméret",
+DlgTableAlign : "IgazÃtás",
+DlgTableAlignNotSet : "<Nincs beállÃtva>",
+DlgTableAlignLeft : "Bal",
+DlgTableAlignCenter : "Közép",
+DlgTableAlignRight : "Jobb",
+DlgTableWidth : "Szélesség",
+DlgTableWidthPx : "képpontok",
+DlgTableWidthPc : "százalék",
+DlgTableHeight : "Magasság",
+DlgTableCellSpace : "Cell spacing",
+DlgTableCellPad : "Cell padding",
+DlgTableCaption : "Felirat",
+
+// Table Cell Dialog
+DlgCellTitle : "Cella tulajdonságai",
+DlgCellWidth : "Szélesség",
+DlgCellWidthPx : "képpontok",
+DlgCellWidthPc : "százalék",
+DlgCellHeight : "Height",
+DlgCellWordWrap : "Sortörés",
+DlgCellWordWrapNotSet : "<Nincs beállÃtva>",
+DlgCellWordWrapYes : "Igen",
+DlgCellWordWrapNo : "Nem",
+DlgCellHorAlign : "VÃzszintes igazÃtás",
+DlgCellHorAlignNotSet : "<Nincs beállÃtva>",
+DlgCellHorAlignLeft : "Bal",
+DlgCellHorAlignCenter : "Közép",
+DlgCellHorAlignRight: "Jobb",
+DlgCellVerAlign : "Függõleges igazÃtás",
+DlgCellVerAlignNotSet : "<Nincs beállÃtva>",
+DlgCellVerAlignTop : "Tetejére",
+DlgCellVerAlignMiddle : "Középre",
+DlgCellVerAlignBottom : "Aljára",
+DlgCellVerAlignBaseline : "Egyvonalba",
+DlgCellRowSpan : "Sorok egyesÃtése",
+DlgCellCollSpan : "Oszlopok egyesÃtése",
+DlgCellBackColor : "HáttérszÃn",
+DlgCellBorderColor : "SzegélyszÃn",
+DlgCellBtnSelect : "Kiválasztás...",
+
+// Find Dialog
+DlgFindTitle : "Keresés",
+DlgFindFindBtn : "Keresés",
+DlgFindNotFoundMsg : "A keresett szöveg nem található.",
+
+// Replace Dialog
+DlgReplaceTitle : "Csere",
+DlgReplaceFindLbl : "Keresendõ:",
+DlgReplaceReplaceLbl : "Cserélendõ:",
+DlgReplaceCaseChk : "Találatok",
+DlgReplaceReplaceBtn : "Csere",
+DlgReplaceReplAllBtn : "Ãsszes cseréje",
+DlgReplaceWordChk : "Egész dokumentumban",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "A böngészõ biztonsági beállÃtásai nem engedélyezik a szerkesztõnek, hogy végrehatjsa a beillesztés mûveletet.Használja az alábbi billentyûzetkombinációt (Ctrl+V).",
+PasteErrorCut : "A böngészõ biztonsági beállÃtásai nem engedélyezik a szerkesztõnek, hogy végrehatjsa a kivágás mûveletet.Használja az alábbi billentyûzetkombinációt (Ctrl+X).",
+PasteErrorCopy : "A böngészõ biztonsági beállÃtásai nem engedélyezik a szerkesztõnek, hogy végrehatjsa a másolás mûveletet.Használja az alábbi billentyûzetkombinációt (Ctrl+X).",
+
+PasteAsText : "Beillesztés formázatlan szövegként",
+PasteFromWord : "Beillesztés Wordbõl",
+
+DlgPasteMsg2 : "Másold be az alábbi mezÅbe a következÅ billentyűk használatával (<STRONG>Ctrl+V</STRONG>) és nyomj <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Betű formázások megszüntetése",
+DlgPasteRemoveStyles : "StÃluslapok eltávolÃtása",
+DlgPasteCleanBox : "MezŠtartalmának törlése",
+
+
+// Color Picker
+ColorAutomatic : "Automatikus",
+ColorMoreColors : "Több szÃn...",
+
+// Document Properties
+DocProps : "Dokumentum tulajdonsága",
+
+// Anchor Dialog
+DlgAnchorTitle : "Horgony tulajdonsága",
+DlgAnchorName : "Horgony neve",
+DlgAnchorErrorName : "Kérem adja meg a horgony nevét",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Nincs a könyvtárban",
+DlgSpellChangeTo : "Ãtváltás",
+DlgSpellBtnIgnore : "Kihagyja",
+DlgSpellBtnIgnoreAll : "Ãsszeset kihagyja",
+DlgSpellBtnReplace : "Csere",
+DlgSpellBtnReplaceAll : "Ãsszes cseréje",
+DlgSpellBtnUndo : "Visszavonás",
+DlgSpellNoSuggestions : "Nincs feltevés",
+DlgSpellProgress : "HelyesÃrásellenÅrzés folyamatban...",
+DlgSpellNoMispell : "HelyesÃrásellenÅrzés kész: Nem találtam hibát",
+DlgSpellNoChanges : "HelyesÃrásellenÅrzés kész: Nincs változtatott szó",
+DlgSpellOneChange : "HelyesÃrásellenÅrzés kész: Egy szó cserélve",
+DlgSpellManyChanges : "HelyesÃrásellenÅrzés kész: %1 szó cserélve",
+
+IeSpellDownload : "A helyesÃrásellenÅrzÅ nincs telepÃtve. Szeretné letölteni most?",
+
+// Button Dialog
+DlgButtonText : "Szöveg (Ãrték)",
+DlgButtonType : "TÃpus",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Név",
+DlgCheckboxValue : "Ãrték",
+DlgCheckboxSelected : "Választott",
+
+// Form Dialog
+DlgFormName : "Név",
+DlgFormAction : "Esemény",
+DlgFormMethod : "Metódus",
+
+// Select Field Dialog
+DlgSelectName : "Név",
+DlgSelectValue : "Ãrték",
+DlgSelectSize : "Méret",
+DlgSelectLines : "sorok",
+DlgSelectChkMulti : "Engedi a többszörös kiválasztást",
+DlgSelectOpAvail : "ElérhetŠopciók",
+DlgSelectOpText : "Szöveg",
+DlgSelectOpValue : "Ãrték",
+DlgSelectBtnAdd : "BÅvÃt",
+DlgSelectBtnModify : "MódosÃt",
+DlgSelectBtnUp : "Fel",
+DlgSelectBtnDown : "Le",
+DlgSelectBtnSetValue : "BeállÃtja a kiválasztott értéket",
+DlgSelectBtnDelete : "Töröl",
+
+// Textarea Dialog
+DlgTextareaName : "Név",
+DlgTextareaCols : "Oszlopok",
+DlgTextareaRows : "Sorok",
+
+// Text Field Dialog
+DlgTextName : "Név",
+DlgTextValue : "Ãrték",
+DlgTextCharWidth : "Karakter szélesség",
+DlgTextMaxChars : "Maximum karakterek",
+DlgTextType : "TÃpus",
+DlgTextTypeText : "Szöveg",
+DlgTextTypePass : "Jelszó",
+
+// Hidden Field Dialog
+DlgHiddenName : "Név",
+DlgHiddenValue : "Ãrték",
+
+// Bulleted List Dialog
+BulletedListProp : "Felsorolás tulajdonságai",
+NumberedListProp : "Számozás tulajdonságai",
+DlgLstType : "TÃpus",
+DlgLstTypeCircle : "Ciklus",
+DlgLstTypeDisc : "Lemez",
+DlgLstTypeSquare : "Négyzet",
+DlgLstTypeNumbers : "Számok (1, 2, 3)",
+DlgLstTypeLCase : "Kisbetűs (a, b, c)",
+DlgLstTypeUCase : "Nagybetűs (a, b, c)",
+DlgLstTypeSRoman : "Kis római számok (i, ii, iii)",
+DlgLstTypeLRoman : "Nagy római számok (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Ãltalános",
+DlgDocBackTab : "Háttér",
+DlgDocColorsTab : "SzÃnek és margók",
+DlgDocMetaTab : "Meta adatok",
+
+DlgDocPageTitle : "OldalcÃm",
+DlgDocLangDir : "Nyelv utasÃtás",
+DlgDocLangDirLTR : "Balról jobbra (LTR)",
+DlgDocLangDirRTL : "Jobbról balra (RTL)",
+DlgDocLangCode : "Nyelv kód",
+DlgDocCharSet : "Karakterkódolás",
+DlgDocCharSetOther : "Más karakterkódolás",
+
+DlgDocDocType : "Dokumentum cÃmsor tÃpus",
+DlgDocDocTypeOther : "Más dokumentum cÃmsor tÃpus",
+DlgDocIncXHTML : "XHTML elemeket tartalmaz",
+DlgDocBgColor : "HáttérszÃn",
+DlgDocBgImage : "Háttérkép cÃm",
+DlgDocBgNoScroll : "Nem gördÃthetÅ háttér",
+DlgDocCText : "Szöveg",
+DlgDocCLink : "CÃm",
+DlgDocCVisited : "Látogatott cÃm",
+DlgDocCActive : "AktÃv cÃm",
+DlgDocMargins : "Oldal margók",
+DlgDocMaTop : "FelsÅ",
+DlgDocMaLeft : "Bal",
+DlgDocMaRight : "Jobb",
+DlgDocMaBottom : "Felül",
+DlgDocMeIndex : "Dokumentum keresÅszavak (vesszÅvel elválasztva)",
+DlgDocMeDescr : "Dokumentum leÃrás",
+DlgDocMeAuthor : "SzerzÅ",
+DlgDocMeCopy : "SzerzÅi jog",
+DlgDocPreview : "ElÅnézet",
+
+// Templates Dialog
+Templates : "Sablonok",
+DlgTemplatesTitle : "ElérhetŠsablonok",
+DlgTemplatesSelMsg : "Válaszd ki melyik sablon nyÃljon meg a szerkesztÅben<br>(a jelenlegi tartalom elveszik):",
+DlgTemplatesLoading : "Sablon lista betöltése. Kis türelmet...",
+DlgTemplatesNoTpl : "(Nincs sablon megadva)",
+
+// About Dialog
+DlgAboutAboutTab : "About",
+DlgAboutBrowserInfoTab : "BöngészŠinformáció",
+DlgAboutVersion : "verzió",
+DlgAboutLicense : "GNU Lesser General Public License szabadalom alá tartozik",
+DlgAboutInfo : "További információkért menjen"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/it.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/it.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/it.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: it.js
+ * Italian language file.
+ *
+ * File Authors:
+ * Simone Chiaretta (simone at piyosailing.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Nasconti la barra degli strumenti",
+ToolbarExpand : "Mostra la barra degli strumenti",
+
+// Toolbar Items and Context Menu
+Save : "Salva",
+NewPage : "Nuova pagina vuota",
+Preview : "Anteprima",
+Cut : "Taglia",
+Copy : "Copia",
+Paste : "Incolla",
+PasteText : "Incolla come testo semplice",
+PasteWord : "Incolla da Word",
+Print : "Stampa",
+SelectAll : "Seleziona tutto",
+RemoveFormat : "Elimina formattazione",
+InsertLinkLbl : "Collegamento",
+InsertLink : "Inserisci/Modifica collegamento",
+RemoveLink : "Elimina collegamento",
+Anchor : "Inserisci/Modifica Ancora",
+InsertImageLbl : "Immagine",
+InsertImage : "Inserisci/Modifica immagine",
+InsertFlashLbl : "Oggetto Flash",
+InsertFlash : "Inserisci/Modifica Oggetto Flash",
+InsertTableLbl : "Tabella",
+InsertTable : "Inserisci/Modifica tabella",
+InsertLineLbl : "Riga orizzontale",
+InsertLine : "Inserisci riga orizzontale",
+InsertSpecialCharLbl: "Caratteri speciali",
+InsertSpecialChar : "Inserisci carattere speciale",
+InsertSmileyLbl : "Emoticon",
+InsertSmiley : "Inserisci emoticon",
+About : "Informazioni su FCKeditor",
+Bold : "Grassetto",
+Italic : "Corsivo",
+Underline : "Sottolineato",
+StrikeThrough : "Barrato",
+Subscript : "Pedice",
+Superscript : "Apice",
+LeftJustify : "Allinea a sinistra",
+CenterJustify : "Centra",
+RightJustify : "Allinea a destra",
+BlockJustify : "Giustifica",
+DecreaseIndent : "Riduci rientro",
+IncreaseIndent : "Aumenta rientro",
+Undo : "Annulla",
+Redo : "Ripristina",
+NumberedListLbl : "Elenco numerato",
+NumberedList : "Inserisci/Modifica elenco numerato",
+BulletedListLbl : "Elenco puntato",
+BulletedList : "Inserisci/Modifica elenco puntato",
+ShowTableBorders : "Mostra bordi tabelle",
+ShowDetails : "Mostra dettagli",
+Style : "Stile",
+FontFormat : "Formato",
+Font : "Font",
+FontSize : "Dimensione",
+TextColor : "Colore testo",
+BGColor : "Colore sfondo",
+Source : "Codice Sorgente",
+Find : "Trova",
+Replace : "Sostituisci",
+SpellCheck : "Correttore ortografico",
+UniversalKeyboard : "Tastiera univerale",
+
+Form : "Modulo",
+Checkbox : "Checkbox",
+RadioButton : "Radio Button",
+TextField : "Campo di testo",
+Textarea : "Area di testo",
+HiddenField : "Campo nascosto",
+Button : "Bottone",
+SelectionField : "Menu di selezione",
+ImageButton : "Bottone immagine",
+
+// Context Menu
+EditLink : "Modifica collegamento",
+InsertRow : "Inserisci riga",
+DeleteRows : "Elimina righe",
+InsertColumn : "Inserisci colonna",
+DeleteColumns : "Elimina colonne",
+InsertCell : "Inserisci cella",
+DeleteCells : "Elimina celle",
+MergeCells : "Unisce celle",
+SplitCell : "Dividi celle",
+CellProperties : "Proprietà cella",
+TableProperties : "Proprietà tabella",
+ImageProperties : "Proprietà immagine",
+FlashProperties : "Proprietà Oggetto Flash",
+
+AnchorProp : "Proprietà ancora",
+ButtonProp : "Proprietà bottone",
+CheckboxProp : "Proprietà checkbox",
+HiddenFieldProp : "Proprietà campo nascosto",
+RadioButtonProp : "Proprietà radio button",
+ImageButtonProp : "Proprietà bottone immagine",
+TextFieldProp : "Proprietà campo di testo",
+SelectionFieldProp : "Proprietà menu di selezione",
+TextareaProp : "Proprietà area di testo",
+FormProp : "Proprietà modulo",
+
+FontFormats : "Normale;Formattato;Indirizzo;Titolo 1;Titolo 2;Titolo 3;Titolo 4;Titolo 5;Titolo 6;Paragrafo (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Elaborazione XHTML in corso. Attendere prego...",
+Done : "Completato",
+PasteWordConfirm : "Il testo da incollare sembra provenire da Word. Desideri pulirlo prima di incollare?",
+NotCompatiblePaste : "Questa funzione è disponibile solo per Internet Explorer 5.5 o superiore. Desideri incollare il testo senza pulirlo?",
+UnknownToolbarItem : "Elemento della barra strumenti sconosciuto \"%1\"",
+UnknownCommand : "Comando sconosciuto \"%1\"",
+NotImplemented : "Commando non implementato",
+UnknownToolbarSet : "La barra di strumenti \"%1\" non esiste",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Annulla",
+DlgBtnClose : "Chiudi",
+DlgBtnBrowseServer : "Cerca sul server",
+DlgAdvancedTag : "Avanzate",
+DlgOpOther : "<Altro>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Devi inserire l'URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<non impostato>",
+DlgGenId : "Id",
+DlgGenLangDir : "Direzione scrittura",
+DlgGenLangDirLtr : "Da Sinistra a Destra (LTR)",
+DlgGenLangDirRtl : "Da Destra a Sinistra (RTL)",
+DlgGenLangCode : "Codice Lingua",
+DlgGenAccessKey : "Scorciatoria<br>da tastiera",
+DlgGenName : "Nome",
+DlgGenTabIndex : "Ordine di tabulazione",
+DlgGenLongDescr : "URL descrizione estesa",
+DlgGenClass : "Nome classe CSS",
+DlgGenTitle : "Titolo",
+DlgGenContType : "Tipo della risorsa collegata",
+DlgGenLinkCharset : "Set di caretteri della risorsa collegata",
+DlgGenStyle : "Stile",
+
+// Image Dialog
+DlgImgTitle : "Proprietà immagine",
+DlgImgInfoTab : "Informazioni immagine",
+DlgImgBtnUpload : "Invia al server",
+DlgImgURL : "URL",
+DlgImgUpload : "Carica",
+DlgImgAlt : "Testo alternativo",
+DlgImgWidth : "Larghezza",
+DlgImgHeight : "Altezza",
+DlgImgLockRatio : "Blocca rapporto",
+DlgBtnResetSize : "Reimposta dimensione",
+DlgImgBorder : "Bordo",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Allineamento",
+DlgImgAlignLeft : "Sinistra",
+DlgImgAlignAbsBottom: "In basso assoluto",
+DlgImgAlignAbsMiddle: "Centrato assoluto",
+DlgImgAlignBaseline : "Linea base",
+DlgImgAlignBottom : "In Basso",
+DlgImgAlignMiddle : "Centrato",
+DlgImgAlignRight : "Destra",
+DlgImgAlignTextTop : "In alto al testo",
+DlgImgAlignTop : "In Alto",
+DlgImgPreview : "Anteprima",
+DlgImgAlertUrl : "Devi inserire l'URL per l'immagine",
+DlgImgLinkTab : "Collegamento",
+
+// Flash Dialog
+DlgFlashTitle : "Proprietà Oggetto Flash",
+DlgFlashChkPlay : "Avvio Automatico",
+DlgFlashChkLoop : "Cicla",
+DlgFlashChkMenu : "Abilita Menu di Flash",
+DlgFlashScale : "Ridimensiona",
+DlgFlashScaleAll : "Mostra Tutto",
+DlgFlashScaleNoBorder : "Senza Bordo",
+DlgFlashScaleFit : "Dimensione Esatta",
+
+// Link Dialog
+DlgLnkWindowTitle : "Collegamento",
+DlgLnkInfoTab : "Informazioni collegamento",
+DlgLnkTargetTab : "Destinazione",
+
+DlgLnkType : "Tipo di Collegamento",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ancora nella pagina",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocollo",
+DlgLnkProtoOther : "<altro>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Scegli Ancora",
+DlgLnkAnchorByName : "Per Nome",
+DlgLnkAnchorById : "Per id elemento",
+DlgLnkNoAnchors : "<Nessuna ancora disponibile nel documento>",
+DlgLnkEMail : "Indirizzo E-Mail",
+DlgLnkEMailSubject : "Oggetto del messaggio",
+DlgLnkEMailBody : "Corpo del messaggio",
+DlgLnkUpload : "Carica",
+DlgLnkBtnUpload : "Invia al Server",
+
+DlgLnkTarget : "Destinazione",
+DlgLnkTargetFrame : "<riquadro>",
+DlgLnkTargetPopup : "<finestra popup>",
+DlgLnkTargetBlank : "Nuova finestra (_blank)",
+DlgLnkTargetParent : "Finestra padre (_parent)",
+DlgLnkTargetSelf : "Stessa finestra (_self)",
+DlgLnkTargetTop : "Finestra superiore (_top)",
+DlgLnkTargetFrameName : "Nome del riquadro di destinazione",
+DlgLnkPopWinName : "Nome finestra popup",
+DlgLnkPopWinFeat : "Caratteristiche finestra popup",
+DlgLnkPopResize : "Ridimensionabile",
+DlgLnkPopLocation : "Barra degli indirizzi",
+DlgLnkPopMenu : "Barra del menu",
+DlgLnkPopScroll : "Barre di scorrimento",
+DlgLnkPopStatus : "Barra di stato",
+DlgLnkPopToolbar : "Barra degli strumenti",
+DlgLnkPopFullScrn : "A tutto schermo (IE)",
+DlgLnkPopDependent : "Dipendente (Netscape)",
+DlgLnkPopWidth : "Larghezza",
+DlgLnkPopHeight : "Altezza",
+DlgLnkPopLeft : "Posizione da sinistra",
+DlgLnkPopTop : "Posizione dall'alto",
+
+DlnLnkMsgNoUrl : "Devi inserire l'URL del collegamento",
+DlnLnkMsgNoEMail : "Devi inserire un'indirizzo e-mail",
+DlnLnkMsgNoAnchor : "Devi selezionare un'ancora",
+
+// Color Dialog
+DlgColorTitle : "Seleziona colore",
+DlgColorBtnClear : "Vuota",
+DlgColorHighlight : "Evidenziato",
+DlgColorSelected : "Selezionato",
+
+// Smiley Dialog
+DlgSmileyTitle : "Inserisci emoticon",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Seleziona carattere speciale",
+
+// Table Dialog
+DlgTableTitle : "Proprietà tabella",
+DlgTableRows : "Righe",
+DlgTableColumns : "Colonne",
+DlgTableBorder : "Dimensione bordo",
+DlgTableAlign : "Allineamento",
+DlgTableAlignNotSet : "<non impostato>",
+DlgTableAlignLeft : "Sinistra",
+DlgTableAlignCenter : "Centrato",
+DlgTableAlignRight : "Destra",
+DlgTableWidth : "Larghezza",
+DlgTableWidthPx : "pixel",
+DlgTableWidthPc : "percento",
+DlgTableHeight : "Altezza",
+DlgTableCellSpace : "Spaziatura celle",
+DlgTableCellPad : "Padding celle",
+DlgTableCaption : "Intestazione",
+
+// Table Cell Dialog
+DlgCellTitle : "Propriet cella",
+DlgCellWidth : "Larghezza",
+DlgCellWidthPx : "pixel",
+DlgCellWidthPc : "percento",
+DlgCellHeight : "Altezza",
+DlgCellWordWrap : "A capo automatico",
+DlgCellWordWrapNotSet : "<non impostato>",
+DlgCellWordWrapYes : "Si",
+DlgCellWordWrapNo : "No",
+DlgCellHorAlign : "Allineamento orizzontale",
+DlgCellHorAlignNotSet : "<non impostato>",
+DlgCellHorAlignLeft : "Sinistra",
+DlgCellHorAlignCenter : "Centrato",
+DlgCellHorAlignRight: "Destra",
+DlgCellVerAlign : "Allineamento verticale",
+DlgCellVerAlignNotSet : "<non impostato>",
+DlgCellVerAlignTop : "In Alto",
+DlgCellVerAlignMiddle : "Centrato",
+DlgCellVerAlignBottom : "In Basso",
+DlgCellVerAlignBaseline : "Linea base",
+DlgCellRowSpan : "Righe occupate",
+DlgCellCollSpan : "Colonne occupate",
+DlgCellBackColor : "Colore sfondo",
+DlgCellBorderColor : "Colore bordo",
+DlgCellBtnSelect : "Scegli...",
+
+// Find Dialog
+DlgFindTitle : "Trova",
+DlgFindFindBtn : "Trova",
+DlgFindNotFoundMsg : "L'elemento cercato non stato trovato.",
+
+// Replace Dialog
+DlgReplaceTitle : "Sostituisci",
+DlgReplaceFindLbl : "Trova:",
+DlgReplaceReplaceLbl : "Sostituisci con:",
+DlgReplaceCaseChk : "Maiuscole/minuscole",
+DlgReplaceReplaceBtn : "Sostituisci",
+DlgReplaceReplAllBtn : "Sostituisci tutto",
+DlgReplaceWordChk : "Solo parole intere",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Le impostazioni di sicurezza del browser non permettono di incollare automaticamente il testo. Usa la tastiera (Ctrl+V).",
+PasteErrorCut : "Le impostazioni di sicurezza del browser non permettono di tagliare automaticamente il testo. Usa la tastiera (Ctrl+X).",
+PasteErrorCopy : "Le impostazioni di sicurezza del browser non permettono di copiare automaticamente il testo. Usa la tastiera (Ctrl+C).",
+
+PasteAsText : "Incolla come testo semplice",
+PasteFromWord : "Incolla da Word",
+
+DlgPasteMsg2 : "Incolla il testo all'interno dell'area sottostante usando la scorciatoia di tastiere (<STRONG>Ctrl+V</STRONG>) e premi <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignora le definizioni di Font",
+DlgPasteRemoveStyles : "Rimuovi le definizioni di Stile",
+DlgPasteCleanBox : "Svuota area di testo",
+
+
+// Color Picker
+ColorAutomatic : "Automatico",
+ColorMoreColors : "Altri colori...",
+
+// Document Properties
+DocProps : "Proprietà del Documento",
+
+// Anchor Dialog
+DlgAnchorTitle : "Proprietà ancora",
+DlgAnchorName : "Nome ancora",
+DlgAnchorErrorName : "Inserici il nome dell'ancora",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Non nel dizionario",
+DlgSpellChangeTo : "Cambia in",
+DlgSpellBtnIgnore : "Ignora",
+DlgSpellBtnIgnoreAll : "Ignora tutto",
+DlgSpellBtnReplace : "Cambia",
+DlgSpellBtnReplaceAll : "Cambia tutto",
+DlgSpellBtnUndo : "Annulla",
+DlgSpellNoSuggestions : "- Nessun suggerimento -",
+DlgSpellProgress : "Controllo ortografico in corso",
+DlgSpellNoMispell : "Controllo ortografico completato: nessun errore trovato",
+DlgSpellNoChanges : "Controllo ortografico completato: nessuna parola cambiata",
+DlgSpellOneChange : "Controllo ortografico completato: 1 parola cambiata",
+DlgSpellManyChanges : "Controllo ortografico completato: %1 parole cambiate",
+
+IeSpellDownload : "Contollo ortografico non installato. Lo vuoi scaricare ora?",
+
+// Button Dialog
+DlgButtonText : "Testo (Value)",
+DlgButtonType : "Tipo",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nome",
+DlgCheckboxValue : "Valore",
+DlgCheckboxSelected : "Selezionato",
+
+// Form Dialog
+DlgFormName : "Nome",
+DlgFormAction : "Azione",
+DlgFormMethod : "Metodo",
+
+// Select Field Dialog
+DlgSelectName : "Nome",
+DlgSelectValue : "Valore",
+DlgSelectSize : "Dimensione",
+DlgSelectLines : "righe",
+DlgSelectChkMulti : "Permetti selezione multipla",
+DlgSelectOpAvail : "Opzioni disponibili",
+DlgSelectOpText : "Testo",
+DlgSelectOpValue : "Valore",
+DlgSelectBtnAdd : "Aggiungi",
+DlgSelectBtnModify : "Modifica",
+DlgSelectBtnUp : "Su",
+DlgSelectBtnDown : "Gi",
+DlgSelectBtnSetValue : "Imposta come predefinito",
+DlgSelectBtnDelete : "Rimuovi",
+
+// Textarea Dialog
+DlgTextareaName : "Nome",
+DlgTextareaCols : "Colonne",
+DlgTextareaRows : "Righe",
+
+// Text Field Dialog
+DlgTextName : "Nome",
+DlgTextValue : "Valore",
+DlgTextCharWidth : "Larghezza",
+DlgTextMaxChars : "Numero massimo di caratteri",
+DlgTextType : "Tipo",
+DlgTextTypeText : "Testo",
+DlgTextTypePass : "Password",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nome",
+DlgHiddenValue : "Valore",
+
+// Bulleted List Dialog
+BulletedListProp : "Proprietà lista puntata",
+NumberedListProp : "Proprietà lista numerata",
+DlgLstType : "Tipo",
+DlgLstTypeCircle : "Tondo",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Quadrato",
+DlgLstTypeNumbers : "Numeri (1, 2, 3)",
+DlgLstTypeLCase : "Caratteri minuscoli (a, b, c)",
+DlgLstTypeUCase : "Caratteri maiuscoli (A, B, C)",
+DlgLstTypeSRoman : "Numeri Romani minuscoli (i, ii, iii)",
+DlgLstTypeLRoman : "Numeri Romani maiuscoli (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Genarale",
+DlgDocBackTab : "Sfondo",
+DlgDocColorsTab : "Colori e margini",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Titolo pagina",
+DlgDocLangDir : "Direzione scrittura",
+DlgDocLangDirLTR : "Da Sinistra a Destra (LTR)",
+DlgDocLangDirRTL : "Da Destra a Sinistra (RTL)",
+DlgDocLangCode : "Codice Lingua",
+DlgDocCharSet : "Set di caretteri",
+DlgDocCharSetOther : "Altro set di caretteri",
+
+DlgDocDocType : "Intestazione DocType",
+DlgDocDocTypeOther : "Altra intestazione DocType",
+DlgDocIncXHTML : "Includi dichiarazione XHTML",
+DlgDocBgColor : "Colore di sfondo",
+DlgDocBgImage : "Immagine di sfondo",
+DlgDocBgNoScroll : "Sfondo fissato",
+DlgDocCText : "Testo",
+DlgDocCLink : "Collegamento",
+DlgDocCVisited : "Collegamento visitato",
+DlgDocCActive : "Collegamento attivo",
+DlgDocMargins : "Margini",
+DlgDocMaTop : "In Alto",
+DlgDocMaLeft : "A Sinistra",
+DlgDocMaRight : "A Destra",
+DlgDocMaBottom : "In Basso",
+DlgDocMeIndex : "Chiavi di indicizzazione documento (separate da virgola)",
+DlgDocMeDescr : "Descrizione documento",
+DlgDocMeAuthor : "Autore",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Anteprima",
+
+// Templates Dialog
+Templates : "Modelli",
+DlgTemplatesTitle : "Contenuto dei modelli",
+DlgTemplatesSelMsg : "Seleziona il modello da aprire nell'editor<br>(il contenuto attuale verrà eliminato):",
+DlgTemplatesLoading : "Caricamento modelli in corso. Attendere prego...",
+DlgTemplatesNoTpl : "(Nessun modello definito)",
+
+// About Dialog
+DlgAboutAboutTab : "Informazioni",
+DlgAboutBrowserInfoTab : "Informazioni Browser",
+DlgAboutVersion : "versione",
+DlgAboutLicense : "Rilasciato sotto la licensa GNU Lesser General Public License",
+DlgAboutInfo : "Localizzazione in Italiano realizzata da Simone Chiaretta<br /><a target=\"_blank\" href=\"http://www.piyosailing.com/S/\">www.piyosailing.com</a><br /><br />Per maggiori informazioni visitare"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/ja.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/ja.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/ja.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: ja.js
+ * Japanese language file.
+ *
+ * File Authors:
+ * Takashi Yamaguchi (jack at omakase.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "ãã¼ã«ãã¼ãé ã",
+ToolbarExpand : "ãã¼ã«ãã¼ã表示",
+
+// Toolbar Items and Context Menu
+Save : "ä¿å",
+NewPage : "æ°ãããã¼ã¸",
+Preview : "ãã¬ãã¥ã¼",
+Cut : "åãåã",
+Copy : "ã³ãã¼",
+Paste : "è²¼ãä»ã",
+PasteText : "ãã¬ã¼ã³ããã¹ãè²¼ãä»ã",
+PasteWord : "ã¯ã¼ãæç« ããè²¼ãä»ã",
+Print : "å°å·",
+SelectAll : "ãã¹ã¦é¸æ",
+RemoveFormat : "ãã©ã¼ãããåé¤",
+InsertLinkLbl : "ãªã³ã¯",
+InsertLink : "ãªã³ã¯æ¿å
¥/ç·¨é",
+RemoveLink : "ãªã³ã¯åé¤",
+Anchor : "ã¢ã³ã«ã¼æ¿å
¥/ç·¨é",
+InsertImageLbl : "ã¤ã¡ã¼ã¸",
+InsertImage : "ã¤ã¡ã¼ã¸æ¿å
¥/ç·¨é",
+InsertFlashLbl : "Flash",
+InsertFlash : "Flashæ¿å
¥/ç·¨é",
+InsertTableLbl : "ãã¼ãã«",
+InsertTable : "ãã¼ãã«æ¿å
¥/ç·¨é",
+InsertLineLbl : "ã©ã¤ã³",
+InsertLine : "横罫ç·",
+InsertSpecialCharLbl: "ç¹æ®æå",
+InsertSpecialChar : "ç¹æ®æåæ¿å
¥",
+InsertSmileyLbl : "çµµæå",
+InsertSmiley : "çµµæåæ¿å
¥",
+About : "FCKeditorãã«ã",
+Bold : "太å",
+Italic : "æä½",
+Underline : "ä¸ç·",
+StrikeThrough : "æã¡æ¶ãç·",
+Subscript : "æ·»ãå",
+Superscript : "ä¸ä»ãæå",
+LeftJustify : "å·¦æã",
+CenterJustify : "ä¸å¤®æã",
+RightJustify : "å³æã",
+BlockJustify : "両端æã",
+DecreaseIndent : "ã¤ã³ãã³ã解é¤",
+IncreaseIndent : "ã¤ã³ãã³ã",
+Undo : "å
ã«æ»ã",
+Redo : "ããç´ã",
+NumberedListLbl : "段è½çªå·",
+NumberedList : "段è½çªå·ã®è¿½å /åé¤",
+BulletedListLbl : "ç®æ¡æ¸ã",
+BulletedList : "ç®æ¡æ¸ãã®è¿½å /åé¤",
+ShowTableBorders : "ãã¼ãã«ãã¼ãã¼è¡¨ç¤º",
+ShowDetails : "詳細表示",
+Style : "ã¹ã¿ã¤ã«",
+FontFormat : "ãã©ã¼ããã",
+Font : "ãã©ã³ã",
+FontSize : "ãµã¤ãº",
+TextColor : "ããã¹ãè²",
+BGColor : "èæ¯è²",
+Source : "ã½ã¼ã¹",
+Find : "æ¤ç´¢",
+Replace : "ç½®ãæã",
+SpellCheck : "ã¹ãã«ãã§ãã¯",
+UniversalKeyboard : "ã¦ããã¼ãµã«ã»ãã¼ãã¼ã",
+
+Form : "ãã©ã¼ã ",
+Checkbox : "ãã§ãã¯ããã¯ã¹",
+RadioButton : "ã©ã¸ãªãã¿ã³",
+TextField : "ï¼è¡ããã¹ã",
+Textarea : "ããã¹ãã¨ãªã¢",
+HiddenField : "ä¸å¯è¦ãã£ã¼ã«ã",
+Button : "ãã¿ã³",
+SelectionField : "é¸æãã£ã¼ã«ã",
+ImageButton : "ç»åãã¿ã³",
+
+// Context Menu
+EditLink : "ãªã³ã¯ç·¨é",
+InsertRow : "è¡æ¿å
¥",
+DeleteRows : "è¡åé¤",
+InsertColumn : "åæ¿å
¥",
+DeleteColumns : "ååé¤",
+InsertCell : "ã»ã«æ¿å
¥",
+DeleteCells : "ã»ã«åé¤",
+MergeCells : "ã»ã«çµå",
+SplitCell : "ã»ã«åå²",
+CellProperties : "ã»ã« ããããã£",
+TableProperties : "ãã¼ãã« ããããã£",
+ImageProperties : "ã¤ã¡ã¼ã¸ ããããã£",
+FlashProperties : "Flash ããããã£",
+
+AnchorProp : "ã¢ã³ã«ã¼ ããããã£",
+ButtonProp : "ãã¿ã³ ããããã£",
+CheckboxProp : "ãã§ãã¯ããã¯ã¹ ããããã£",
+HiddenFieldProp : "ä¸å¯è¦ãã£ã¼ã«ã ããããã£",
+RadioButtonProp : "ã©ã¸ãªãã¿ã³ ããããã£",
+ImageButtonProp : "ç»åãã¿ã³ ããããã£",
+TextFieldProp : "ï¼è¡ããã¹ã ããããã£",
+SelectionFieldProp : "é¸æãã£ã¼ã«ã ããããã£",
+TextareaProp : "ããã¹ãã¨ãªã¢ ããããã£",
+FormProp : "ãã©ã¼ã ããããã£",
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "XHTMLå¦çä¸. ãã°ãããå¾
ã¡ãã ãã...",
+Done : "å®äº",
+PasteWordConfirm : "è²¼ãä»ããè¡ãããã¹ãã¯ãã¯ã¼ãæç« ããã³ãã¼ããããã¨ãã¦ãã¾ããè²¼ãä»ããåã«ã¯ãªã¼ãã³ã°ãè¡ãã¾ããï¼",
+NotCompatiblePaste : "ãã®ã³ãã³ãã¯ã¤ã³ã¿ã¼ãããã»ã¨ã¯ã¹ããã¼ã©ã¼ãã¼ã¸ã§ã³5.5以ä¸ã§å©ç¨å¯è½ã§ããã¯ãªã¼ãã³ã°ããªãã§è²¼ãä»ããè¡ãã¾ããï¼",
+UnknownToolbarItem : "æªç¥ã®ãã¼ã«ãã¼é
ç® \"%1\"",
+UnknownCommand : "æªç¥ã®ã³ãã³ãå \"%1\"",
+NotImplemented : "ã³ãã³ãã¯ã¤ã³ããªã¡ã³ãããã¾ããã§ããã",
+UnknownToolbarSet : "ãã¼ã«ãã¼è¨å® \"%1\" åå¨ãã¾ããã",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "ãã£ã³ã»ã«",
+DlgBtnClose : "éãã",
+DlgBtnBrowseServer : "ãµã¼ãã¼ãã©ã¦ã¶ã¼",
+DlgAdvancedTag : "é«åº¦ãªè¨å®",
+DlgOpOther : "<ãã®ä»>",
+DlgInfoTab : "æ
å ±",
+DlgAlertUrl : "URLãæ¿å
¥ãã¦ãã ãã",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ãªã>",
+DlgGenId : "Id",
+DlgGenLangDir : "æå表è¨ã®æ¹å",
+DlgGenLangDirLtr : "å·¦ããå³ (LTR)",
+DlgGenLangDirRtl : "å³ããå·¦ (RTL)",
+DlgGenLangCode : "è¨èªã³ã¼ã",
+DlgGenAccessKey : "ã¢ã¯ã»ã¹ãã¼",
+DlgGenName : "Nameå±æ§",
+DlgGenTabIndex : "ã¿ãã¤ã³ããã¯ã¹",
+DlgGenLongDescr : "longdescå±æ§(é·æ説æ)",
+DlgGenClass : "ã¹ã¿ã¤ã«ã·ã¼ãã¯ã©ã¹",
+DlgGenTitle : "Titleå±æ§",
+DlgGenContType : "Content Typeå±æ§",
+DlgGenLinkCharset : "ãªã³ã¯charsetå±æ§",
+DlgGenStyle : "ã¹ã¿ã¤ã«ã·ã¼ã",
+
+// Image Dialog
+DlgImgTitle : "ã¤ã¡ã¼ã¸ ããããã£",
+DlgImgInfoTab : "ã¤ã¡ã¼ã¸ æ
å ±",
+DlgImgBtnUpload : "ãµã¼ãã¼ã«éä¿¡",
+DlgImgURL : "URL",
+DlgImgUpload : "ã¢ãããã¼ã",
+DlgImgAlt : "代æ¿ããã¹ã",
+DlgImgWidth : "å¹
",
+DlgImgHeight : "é«ã",
+DlgImgLockRatio : "ããã¯æ¯ç",
+DlgBtnResetSize : "ãµã¤ãºãªã»ãã",
+DlgImgBorder : "ãã¼ãã¼",
+DlgImgHSpace : "横éé",
+DlgImgVSpace : "縦éé",
+DlgImgAlign : "è¡æã",
+DlgImgAlignLeft : "å·¦",
+DlgImgAlignAbsBottom: "ä¸é¨(絶対ç)",
+DlgImgAlignAbsMiddle: "ä¸å¤®(絶対ç)",
+DlgImgAlignBaseline : "ãã¼ã¹ã©ã¤ã³",
+DlgImgAlignBottom : "ä¸",
+DlgImgAlignMiddle : "ä¸å¤®",
+DlgImgAlignRight : "å³",
+DlgImgAlignTextTop : "ããã¹ãä¸é¨",
+DlgImgAlignTop : "ä¸",
+DlgImgPreview : "ãã¬ãã¥ã¼",
+DlgImgAlertUrl : "ã¤ã¡ã¼ã¸ã®URLãå
¥åãã¦ãã ããã",
+DlgImgLinkTab : "ãªã³ã¯",
+
+// Flash Dialog
+DlgFlashTitle : "Flash ããããã£",
+DlgFlashChkPlay : "åç",
+DlgFlashChkLoop : "ã«ã¼ãåç",
+DlgFlashChkMenu : "Flashã¡ãã¥ã¼å¯è½",
+DlgFlashScale : "æ¡å¤§ç¸®å°è¨å®",
+DlgFlashScaleAll : "ãã¹ã¦è¡¨ç¤º",
+DlgFlashScaleNoBorder : "å¤ãè¦ããªãæ§ã«æ¡å¤§",
+DlgFlashScaleFit : "ä¸ä¸å·¦å³ã«ãã£ãã",
+
+// Link Dialog
+DlgLnkWindowTitle : "ãã¤ãã¼ãªã³ã¯",
+DlgLnkInfoTab : "ãã¤ãã¼ãªã³ã¯ æ
å ±",
+DlgLnkTargetTab : "ã¿ã¼ã²ãã",
+
+DlgLnkType : "ãªã³ã¯ã¿ã¤ã",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "ãã®ãã¼ã¸ã®ã¢ã³ã«ã¼",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "ãããã³ã«",
+DlgLnkProtoOther : "<ãã®ä»>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "ã¢ã³ã«ã¼ãé¸æ",
+DlgLnkAnchorByName : "ã¢ã³ã«ã¼å",
+DlgLnkAnchorById : "ã¨ã¬ã¡ã³ãID",
+DlgLnkNoAnchors : "<ããã¥ã¡ã³ãã«ããã¦å©ç¨å¯è½ãªã¢ã³ã«ã¼ã¯ããã¾ããã>",
+DlgLnkEMail : "E-Mail ã¢ãã¬ã¹",
+DlgLnkEMailSubject : "件å",
+DlgLnkEMailBody : "æ¬æ",
+DlgLnkUpload : "ã¢ãããã¼ã",
+DlgLnkBtnUpload : "ãµã¼ãã¼ã«éä¿¡",
+
+DlgLnkTarget : "ã¿ã¼ã²ãã",
+DlgLnkTargetFrame : "<ãã¬ã¼ã >",
+DlgLnkTargetPopup : "<ãããã¢ããã¦ã£ã³ãã¦>",
+DlgLnkTargetBlank : "æ°ããã¦ã£ã³ã㦠(_blank)",
+DlgLnkTargetParent : "親ã¦ã£ã³ã㦠(_parent)",
+DlgLnkTargetSelf : "åãã¦ã£ã³ã㦠(_self)",
+DlgLnkTargetTop : "æä¸ä½ã¦ã£ã³ã㦠(_top)",
+DlgLnkTargetFrameName : "ç®çã®ãã¬ã¼ã å",
+DlgLnkPopWinName : "ãããã¢ããã¦ã£ã³ãã¦å",
+DlgLnkPopWinFeat : "ãããã¢ããã¦ã£ã³ãã¦ç¹å¾´",
+DlgLnkPopResize : "ãªãµã¤ãºå¯è½",
+DlgLnkPopLocation : "ãã±ã¼ã·ã§ã³ãã¼",
+DlgLnkPopMenu : "ã¡ãã¥ã¼ãã¼",
+DlgLnkPopScroll : "ã¹ã¯ãã¼ã«ãã¼",
+DlgLnkPopStatus : "ã¹ãã¼ã¿ã¹ãã¼",
+DlgLnkPopToolbar : "ãã¼ã«ãã¼",
+DlgLnkPopFullScrn : "å
¨ç»é¢ã¢ã¼ã(IE)",
+DlgLnkPopDependent : "éããã¦ã£ã³ãã¦ã«é£åãã¦éãã (Netscape)",
+DlgLnkPopWidth : "å¹
",
+DlgLnkPopHeight : "é«ã",
+DlgLnkPopLeft : "左端ããã®åº§æ¨ã§æå®",
+DlgLnkPopTop : "ä¸ç«¯ããã®åº§æ¨ã§æå®",
+
+DlnLnkMsgNoUrl : "ãªã³ã¯URLãå
¥åãã¦ãã ããã",
+DlnLnkMsgNoEMail : "ã¡ã¼ã«ã¢ãã¬ã¹ãå
¥åãã¦ãã ããã",
+DlnLnkMsgNoAnchor : "ã¢ã³ã«ã¼ãé¸æãã¦ãã ããã",
+
+// Color Dialog
+DlgColorTitle : "è²é¸æ",
+DlgColorBtnClear : "ã¯ãªã¢",
+DlgColorHighlight : "ãã¤ã©ã¤ã",
+DlgColorSelected : "é¸æè²",
+
+// Smiley Dialog
+DlgSmileyTitle : "é¡æåæ¿å
¥",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "ç¹æ®æåé¸æ",
+
+// Table Dialog
+DlgTableTitle : "ãã¼ãã« ããããã£",
+DlgTableRows : "è¡",
+DlgTableColumns : "å",
+DlgTableBorder : "ãã¼ãã¼ãµã¤ãº",
+DlgTableAlign : "ãã£ãã·ã§ã³ã®æ´å",
+DlgTableAlignNotSet : "<ãªã>",
+DlgTableAlignLeft : "å·¦",
+DlgTableAlignCenter : "ä¸å¤®",
+DlgTableAlignRight : "å³",
+DlgTableWidth : "ãã¼ãã«å¹
",
+DlgTableWidthPx : "ãã¯ã»ã«",
+DlgTableWidthPc : "ãã¼ã»ã³ã",
+DlgTableHeight : "ãã¼ãã«é«ã",
+DlgTableCellSpace : "ã»ã«å
ä½ç½",
+DlgTableCellPad : "ã»ã«å
éé",
+DlgTableCaption : "キャï¾ï¾ï½¼ï½®ï¾",
+
+// Table Cell Dialog
+DlgCellTitle : "ã»ã« ããããã£",
+DlgCellWidth : "å¹
",
+DlgCellWidthPx : "ãã¯ã»ã«",
+DlgCellWidthPc : "ãã¼ã»ã³ã",
+DlgCellHeight : "é«ã",
+DlgCellWordWrap : "æãè¿ã",
+DlgCellWordWrapNotSet : "<ãªã>",
+DlgCellWordWrapYes : "Yes",
+DlgCellWordWrapNo : "No",
+DlgCellHorAlign : "ã»ã«æ¨ªã®æ´å",
+DlgCellHorAlignNotSet : "<ãªã>",
+DlgCellHorAlignLeft : "å·¦",
+DlgCellHorAlignCenter : "ä¸å¤®",
+DlgCellHorAlignRight: "å³",
+DlgCellVerAlign : "ã»ã«ç¸¦ã®æ´å",
+DlgCellVerAlignNotSet : "<ãªã>",
+DlgCellVerAlignTop : "ä¸",
+DlgCellVerAlignMiddle : "ä¸å¤®",
+DlgCellVerAlignBottom : "ä¸",
+DlgCellVerAlignBaseline : "ãã¼ã¹ã©ã¤ã³",
+DlgCellRowSpan : "縦å¹
(è¡æ°)",
+DlgCellCollSpan : "横å¹
(åæ°)",
+DlgCellBackColor : "èæ¯è²",
+DlgCellBorderColor : "ãã¼ãã¼ã«ã©ã¼",
+DlgCellBtnSelect : "é¸æ...",
+
+// Find Dialog
+DlgFindTitle : "æ¤ç´¢",
+DlgFindFindBtn : "æ¤ç´¢",
+DlgFindNotFoundMsg : "æå®ãããæååã¯è¦ã¤ããã¾ããã§ããã",
+
+// Replace Dialog
+DlgReplaceTitle : "ç½®ãæã",
+DlgReplaceFindLbl : "æ¤ç´¢ããæåå:",
+DlgReplaceReplaceLbl : "ç½®æãããæåå:",
+DlgReplaceCaseChk : "é¨åä¸è´",
+DlgReplaceReplaceBtn : "ç½®æã",
+DlgReplaceReplAllBtn : "ãã¹ã¦ç½®æã",
+DlgReplaceWordChk : "åèªåä½ã§ä¸è´",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "ãã©ã¦ã¶ã¼ã®ã»ãã¥ãªãã£è¨å®ã«ããã¨ãã£ã¿ã®è²¼ãä»ãæä½ãèªåã§å®è¡ãããã¨ãã§ãã¾ãããå®è¡ããã«ã¯æåã§ãã¼ãã¼ãã®(Ctrl+V)ã使ç¨ãã¦ãã ããã",
+PasteErrorCut : "ãã©ã¦ã¶ã¼ã®ã»ãã¥ãªãã£è¨å®ã«ããã¨ãã£ã¿ã®åãåãæä½ãèªåã§å®è¡ãããã¨ãã§ãã¾ãããå®è¡ããã«ã¯æåã§ãã¼ãã¼ãã®(Ctrl+X)ã使ç¨ãã¦ãã ããã",
+PasteErrorCopy : "ãã©ã¦ã¶ã¼ã®ã»ãã¥ãªãã£è¨å®ã«ããã¨ãã£ã¿ã®ã³ãã¼æä½ãèªåã§å®è¡ãããã¨ãã§ãã¾ãããå®è¡ããã«ã¯æåã§ãã¼ãã¼ãã®(Ctrl+C)ã使ç¨ãã¦ãã ããã",
+
+PasteAsText : "ãã¬ã¼ã³ããã¹ãè²¼ãä»ã",
+PasteFromWord : "ã¯ã¼ãæç« ããè²¼ãä»ã",
+
+DlgPasteMsg2 : "ãã¼ãã¼ã(<STRONG>Ctrl+V</STRONG>)ã使ç¨ãã¦ã次ã®å
¥åã¨ãªã¢å
ã§è²¼ã£ã¦ã<STRONG>OK</STRONG>ãæ¼ãã¦ãã ããã",
+DlgPasteIgnoreFont : "Fontã¿ã°ã®Faceå±æ§ãç¡è¦ãã¾ãã",
+DlgPasteRemoveStyles : "ã¹ã¿ã¤ã«å®ç¾©ãåé¤ãã¾ãã",
+DlgPasteCleanBox : "å
¥åã¨ãªã¢ã¯ãªã¢",
+
+
+// Color Picker
+ColorAutomatic : "èªå",
+ColorMoreColors : "ãã®ä»ã®è²...",
+
+// Document Properties
+DocProps : "ææ¸ ããããã£",
+
+// Anchor Dialog
+DlgAnchorTitle : "ã¢ã³ã«ã¼ ããããã£",
+DlgAnchorName : "ã¢ã³ã«ã¼å",
+DlgAnchorErrorName : "ã¢ã³ã«ã¼åãå¿
ãå
¥åãã¦ãã ããã",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "è¾æ¸ã«ããã¾ãã",
+DlgSpellChangeTo : "å¤æ´",
+DlgSpellBtnIgnore : "ç¡è¦",
+DlgSpellBtnIgnoreAll : "ãã¹ã¦ç¡è¦",
+DlgSpellBtnReplace : "ç½®æ",
+DlgSpellBtnReplaceAll : "ãã¹ã¦ç½®æ",
+DlgSpellBtnUndo : "ããç´ã",
+DlgSpellNoSuggestions : "- 該å½ãªã -",
+DlgSpellProgress : "ã¹ãã«ãã§ãã¯å¦çä¸...",
+DlgSpellNoMispell : "ã¹ãã«ãã§ãã¯å®äº: ã¹ãã«ã®èª¤ãã¯ããã¾ããã§ãã",
+DlgSpellNoChanges : "ã¹ãã«ãã§ãã¯å®äº: èªå¥ã¯å¤æ´ããã¾ããã§ãã",
+DlgSpellOneChange : "ã¹ãã«ãã§ãã¯å®äº: ï¼èªå¥å¤æ´ããã¾ãã",
+DlgSpellManyChanges : "ã¹ãã«ãã§ãã¯å®äº: %1 èªå¥å¤æ´ããã¾ãã",
+
+IeSpellDownload : "ã¹ãã«ãã§ãã«ã¼ãã¤ã³ã¹ãã¼ã«ããã¦ãã¾ãããä»ãããã¦ã³ãã¼ããã¾ãã?",
+
+// Button Dialog
+DlgButtonText : "ããã¹ã (å¤)",
+DlgButtonType : "ã¿ã¤ã",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "åå",
+DlgCheckboxValue : "å¤",
+DlgCheckboxSelected : "é¸ææ¸ã¿",
+
+// Form Dialog
+DlgFormName : "ãã©ã¼ã å",
+DlgFormAction : "ã¢ã¯ã·ã§ã³",
+DlgFormMethod : "ã¡ã½ãã",
+
+// Select Field Dialog
+DlgSelectName : "åå",
+DlgSelectValue : "å¤",
+DlgSelectSize : "ãµã¤ãº",
+DlgSelectLines : "è¡",
+DlgSelectChkMulti : "è¤æ°é
ç®é¸æã許å¯",
+DlgSelectOpAvail : "å©ç¨å¯è½ãªãªãã·ã§ã³",
+DlgSelectOpText : "é¸æé
ç®å",
+DlgSelectOpValue : "é¸æé
ç®å¤",
+DlgSelectBtnAdd : "追å ",
+DlgSelectBtnModify : "ç·¨é",
+DlgSelectBtnUp : "ä¸ã¸",
+DlgSelectBtnDown : "ä¸ã¸",
+DlgSelectBtnSetValue : "é¸æããå¤ãè¨å®",
+DlgSelectBtnDelete : "åé¤",
+
+// Textarea Dialog
+DlgTextareaName : "åå",
+DlgTextareaCols : "å",
+DlgTextareaRows : "è¡",
+
+// Text Field Dialog
+DlgTextName : "åå",
+DlgTextValue : "å¤",
+DlgTextCharWidth : "ãµã¤ãº",
+DlgTextMaxChars : "æ大é·",
+DlgTextType : "ã¿ã¤ã",
+DlgTextTypeText : "ããã¹ã",
+DlgTextTypePass : "ãã¹ã¯ã¼ãå
¥å",
+
+// Hidden Field Dialog
+DlgHiddenName : "åå",
+DlgHiddenValue : "å¤",
+
+// Bulleted List Dialog
+BulletedListProp : "ç®æ¡æ¸ã ããããã£",
+NumberedListProp : "段è½çªå· ããããã£",
+DlgLstType : "ã¿ã¤ã",
+DlgLstTypeCircle : "ç½ä¸¸",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "åè§",
+DlgLstTypeNumbers : "ã¢ã©ãã¢æ°å (1, 2, 3)",
+DlgLstTypeLCase : "è±åå°æå (a, b, c)",
+DlgLstTypeUCase : "è±å大æå (A, B, C)",
+DlgLstTypeSRoman : "ãã¼ãæ°åå°æå (i, ii, iii)",
+DlgLstTypeLRoman : "ãã¼ãæ°å大æå (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "å
¨è¬",
+DlgDocBackTab : "èæ¯",
+DlgDocColorsTab : "è²ã¨ãã¼ã¸ã³",
+DlgDocMetaTab : "ã¡ã¿ãã¼ã¿",
+
+DlgDocPageTitle : "ãã¼ã¸ã¿ã¤ãã«",
+DlgDocLangDir : "è¨èªæå表è¨ã®æ¹å",
+DlgDocLangDirLTR : "å·¦ããå³ã«æå表è¨ãã¾ã(LTR)",
+DlgDocLangDirRTL : "å³ããå·¦ã«æå表è¨ãã¾ã(RTL)",
+DlgDocLangCode : "è¨èªã³ã¼ã",
+DlgDocCharSet : "æåã»ãã符å·å",
+DlgDocCharSetOther : "ä»ã®æåã»ãã符å·å",
+
+DlgDocDocType : "ææ¸ã¿ã¤ããããã¼",
+DlgDocDocTypeOther : "ãã®ä»ææ¸ã¿ã¤ããããã¼",
+DlgDocIncXHTML : "XHTML宣è¨ãã¤ã³ã¯ã«ã¼ã",
+DlgDocBgColor : "èæ¯è²",
+DlgDocBgImage : "èæ¯ç»å URL",
+DlgDocBgNoScroll : "ã¹ã¯ãã¼ã«ããªãèæ¯",
+DlgDocCText : "ããã¹ã",
+DlgDocCLink : "ãªã³ã¯",
+DlgDocCVisited : "ã¢ã¯ã»ã¹æ¸ã¿ãªã³ã¯",
+DlgDocCActive : "ã¢ã¯ã»ã¹ä¸ãªã³ã¯",
+DlgDocMargins : "ãã¼ã¸ã»ãã¼ã¸ã³",
+DlgDocMaTop : "ä¸é¨",
+DlgDocMaLeft : "å·¦",
+DlgDocMaRight : "å³",
+DlgDocMaBottom : "ä¸é¨",
+DlgDocMeIndex : "ææ¸ã®ãã¼ã¯ã¼ã(ã«ã³ãåºåã)",
+DlgDocMeDescr : "ææ¸ã®æ¦è¦",
+DlgDocMeAuthor : "ææ¸ã®ä½è
",
+DlgDocMeCopy : "ææ¸ã®èä½æ¨©",
+DlgDocPreview : "ãã¬ãã¥ã¼",
+
+// Templates Dialog
+Templates : "ãã³ãã¬ã¼ã(éå½¢)",
+DlgTemplatesTitle : "ãã³ãã¬ã¼ãå
容",
+DlgTemplatesSelMsg : "ã¨ãã£ã¿ã¼ã§ä½¿ç¨ãããã³ãã¬ã¼ããé¸æãã¦ãã ããã<br>(ç¾å¨ã®ã¨ãã£ã¿ã®å
容ã¯å¤±ããã¾ã):",
+DlgTemplatesLoading : "ãã³ãã¬ã¼ãä¸è¦§èªã¿è¾¼ã¿ä¸. ãã°ãããå¾
ã¡ãã ãã...",
+DlgTemplatesNoTpl : "(ãã³ãã¬ã¼ããå®ç¾©ããã¦ãã¾ãã)",
+
+// About Dialog
+DlgAboutAboutTab : "ãã¼ã¸ã§ã³æ
å ±",
+DlgAboutBrowserInfoTab : "ãã©ã¦ã¶æ
å ±",
+DlgAboutVersion : "ãã¼ã¸ã§ã³",
+DlgAboutLicense : "Licensed under the terms of the GNU Lesser General Public License",
+DlgAboutInfo : "ãã詳ããæ
å ±ã¯ãã¡ãã§"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/ko.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/ko.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/ko.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: ko.js
+ * Korean language file.
+ *
+ * File Authors:
+ * Taehwan Kwag (thkwag at nate.com)
+ * Hyung-chae, Kim (chaeya at gmail.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "í´ë° ê°ì¶ê¸°",
+ToolbarExpand : "í´ë° ë³´ì´ê¸°",
+
+// Toolbar Items and Context Menu
+Save : "ì ì¥í기",
+NewPage : "ì 문ì",
+Preview : "미리보기",
+Cut : "ìë¼ë´ê¸°",
+Copy : "ë³µì¬í기",
+Paste : "ë¶ì¬ë£ê¸°",
+PasteText : "í
ì¤í¸ë¡ ë¶ì¬ë£ê¸°",
+PasteWord : "MS Word íììì ë¶ì¬ë£ê¸°",
+Print : "ì¸ìí기",
+SelectAll : "ì ì²´ì í",
+RemoveFormat : "í¬ë§· ì§ì°ê¸°",
+InsertLinkLbl : "ë§í¬",
+InsertLink : "ë§í¬ ì½ì
/ë³ê²½",
+RemoveLink : "ë§í¬ ìì ",
+Anchor : "ì±
ê°í¼ ì½ì
/ë³ê²½",
+InsertImageLbl : "ì´ë¯¸ì§",
+InsertImage : "ì´ë¯¸ì§ ì½ì
/ë³ê²½",
+InsertFlashLbl : "íëì¬",
+InsertFlash : "íëì¬ ì½ì
/ë³ê²½",
+InsertTableLbl : "í",
+InsertTable : "í ì½ì
/ë³ê²½",
+InsertLineLbl : "ìíì ",
+InsertLine : "ìíì ì½ì
",
+InsertSpecialCharLbl: "í¹ì문ì ì½ì
",
+InsertSpecialChar : "í¹ì문ì ì½ì
",
+InsertSmileyLbl : "ìì´ì½",
+InsertSmiley : "ìì´ì½ ì½ì
",
+About : "FCKeditorì ëíì¬",
+Bold : "ì§íê²",
+Italic : "ì´í
ë¦",
+Underline : "ë°ì¤",
+StrikeThrough : "ì·¨ìì ",
+Subscript : "ìë 첨ì",
+Superscript : "ì 첨ì",
+LeftJustify : "ì¼ìª½ ì ë ¬",
+CenterJustify : "ê°ì´ë° ì ë ¬",
+RightJustify : "ì¤ë¥¸ìª½ ì ë ¬",
+BlockJustify : "ì쪽 ë§ì¶¤",
+DecreaseIndent : "ë´ì´ì°ê¸°",
+IncreaseIndent : "ë¤ì¬ì°ê¸°",
+Undo : "ì·¨ì",
+Redo : "ì¬ì¤í",
+NumberedListLbl : "ìììë 목ë¡",
+NumberedList : "ìììë 목ë¡",
+BulletedListLbl : "ìììë 목ë¡",
+BulletedList : "ìììë 목ë¡",
+ShowTableBorders : "í í
ë리 보기",
+ShowDetails : "문ìê¸°í¸ ë³´ê¸°",
+Style : "ì¤íì¼",
+FontFormat : "í¬ë§·",
+Font : "í°í¸",
+FontSize : "ê¸ì í¬ê¸°",
+TextColor : "ê¸ì ìì",
+BGColor : "ë°°ê²½ ìì",
+Source : "ìì¤",
+Find : "찾기",
+Replace : "ë°ê¾¸ê¸°",
+SpellCheck : "ì² ìê²ì¬",
+UniversalKeyboard : "ë¤êµì´ ì
ë ¥ê¸°",
+
+Form : "í¼",
+Checkbox : "ì²´í¬ë°ì¤",
+RadioButton : "ë¼ëì¤ë²í¼",
+TextField : "ì
ë ¥íë",
+Textarea : "ì
ë ¥ìì",
+HiddenField : "ì¨ê¹íë",
+Button : "ë²í¼",
+SelectionField : "í¼ì¹¨ëª©ë¡",
+ImageButton : "ì´ë¯¸ì§ë²í¼",
+
+// Context Menu
+EditLink : "ë§í¬ ìì ",
+InsertRow : "ê°ë¡ì¤ ì½ì
",
+DeleteRows : "ê°ë¡ì¤ ìì ",
+InsertColumn : "ì¸ë¡ì¤ ì½ì
",
+DeleteColumns : "ì¸ë¡ì¤ ìì ",
+InsertCell : "ì
ì½ì
",
+DeleteCells : "ì
ìì ",
+MergeCells : "ì
í©ì¹ê¸°",
+SplitCell : "ì
ëë기",
+CellProperties : "ì
ìì±",
+TableProperties : "í ìì±",
+ImageProperties : "ì´ë¯¸ì§ ìì±",
+FlashProperties : "íëì¬ ìì±",
+
+AnchorProp : "ì±
ê°í¼ ìì±",
+ButtonProp : "ë²í¼ ìì±",
+CheckboxProp : "ì²´í¬ë°ì¤ ìì±",
+HiddenFieldProp : "ì¨ê¹íë ìì±",
+RadioButtonProp : "ë¼ëì¤ë²í¼ ìì±",
+ImageButtonProp : "ì´ë¯¸ì§ë²í¼ ìì±",
+TextFieldProp : "ì
ë ¥íë ìì±",
+SelectionFieldProp : "í¼ì¹¨ëª©ë¡ ìì±",
+TextareaProp : "ì
ë ¥ìì ìì±",
+FormProp : "í¼ ìì±",
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6",
+
+// Alerts and Messages
+ProcessingXHTML : "XHTML ì²ë¦¬ì¤. ì ìë§ ê¸°ë¤ë ¤ì£¼ììì.",
+Done : "ìë£",
+PasteWordConfirm : "ë¶ì¬ë£ê¸° í í
ì¤í¸ë MS Wordìì ë³µì¬í ê²ì
ëë¤. ë¶ì¬ë£ê¸° ì ì MS Word í¬ë©§ì ìì íìê² ìµëê¹?",
+NotCompatiblePaste : "ì´ ëª
ë ¹ì ì¸í°ë·ìµì¤íë¡ë¬ 5.5 ë²ì ì´ìììë§ ìëí©ëë¤. í¬ë©§ì ìì íì§ ìê³ ë¶ì¬ë£ê¸° íìê² ìµëê¹?",
+UnknownToolbarItem : "ìììë í´ë°ì
ëë¤. : \"%1\"",
+UnknownCommand : "ìììë 기ë¥ì
ëë¤. : \"%1\"",
+NotImplemented : "기ë¥ì´ ì¤íëì§ ìììµëë¤.",
+UnknownToolbarSet : "í´ë° ì¤ì ì´ ììµëë¤. : \"%1\"",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "ì",
+DlgBtnCancel : "ìëì¤",
+DlgBtnClose : "ë«ê¸°",
+DlgBtnBrowseServer : "ìë² ë³´ê¸°",
+DlgAdvancedTag : "ìì¸í",
+DlgOpOther : "<기í>",
+DlgInfoTab : "ì ë³´",
+DlgAlertUrl : "URLì ì
ë ¥íììì",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ì¤ì ëì§ ìì>",
+DlgGenId : "ID",
+DlgGenLangDir : "ì°ê¸° ë°©í¥",
+DlgGenLangDirLtr : "ì¼ìª½ìì ì¤ë¥¸ìª½ (LTR)",
+DlgGenLangDirRtl : "ì¤ë¥¸ìª½ìì ì¼ìª½ (RTL)",
+DlgGenLangCode : "ì¸ì´ ì½ë",
+DlgGenAccessKey : "ìì¸ì¤ í¤",
+DlgGenName : "Name",
+DlgGenTabIndex : "í ìì",
+DlgGenLongDescr : "URL ì¤ëª
",
+DlgGenClass : "Stylesheet Classes",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "ì´ë¯¸ì§ ì¤ì ",
+DlgImgInfoTab : "ì´ë¯¸ì§ ì ë³´",
+DlgImgBtnUpload : "ìë²ë¡ ì ì¡",
+DlgImgURL : "URL",
+DlgImgUpload : "ì
ë¡ë",
+DlgImgAlt : "ì´ë¯¸ì§ ì¤ëª
",
+DlgImgWidth : "ëë¹",
+DlgImgHeight : "ëì´",
+DlgImgLockRatio : "ë¹ì¨ ì ì§",
+DlgBtnResetSize : "ìë í¬ê¸°ë¡",
+DlgImgBorder : "í
ë리",
+DlgImgHSpace : "ìíì¬ë°±",
+DlgImgVSpace : "ìì§ì¬ë°±",
+DlgImgAlign : "ì ë ¬",
+DlgImgAlignLeft : "ì¼ìª½",
+DlgImgAlignAbsBottom: "ì¤ìë(Abs Bottom)",
+DlgImgAlignAbsMiddle: "ì¤ì¤ê°(Abs Middle)",
+DlgImgAlignBaseline : "기ì¤ì ",
+DlgImgAlignBottom : "ìë",
+DlgImgAlignMiddle : "ì¤ê°",
+DlgImgAlignRight : "ì¤ë¥¸ìª½",
+DlgImgAlignTextTop : "ê¸ìì(Text Top)",
+DlgImgAlignTop : "ì",
+DlgImgPreview : "미리보기",
+DlgImgAlertUrl : "ì´ë¯¸ì§ URLì ì
ë ¥íììì",
+DlgImgLinkTab : "ë§í¬",
+
+// Flash Dialog
+DlgFlashTitle : "íëì¬ ë±ë¡ì ë³´",
+DlgFlashChkPlay : "ìëì¬ì",
+DlgFlashChkLoop : "ë°ë³µ",
+DlgFlashChkMenu : "íëì¬ë©ë´ ê°ë¥",
+DlgFlashScale : "ìì",
+DlgFlashScaleAll : "모ë보기",
+DlgFlashScaleNoBorder : "ê²½ê³ì ìì",
+DlgFlashScaleFit : "ìììëì¡°ì ",
+
+// Link Dialog
+DlgLnkWindowTitle : "ë§í¬",
+DlgLnkInfoTab : "ë§í¬ ì ë³´",
+DlgLnkTargetTab : "íê²",
+
+DlgLnkType : "ë§í¬ ì¢
ë¥",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "ì±
ê°í¼",
+DlgLnkTypeEMail : "ì´ë©ì¼",
+DlgLnkProto : "íë¡í ì½",
+DlgLnkProtoOther : "<기í>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "ì±
ê°í¼ ì í",
+DlgLnkAnchorByName : "ì±
ê°í¼ ì´ë¦",
+DlgLnkAnchorById : "ì±
ê°í¼ ID",
+DlgLnkNoAnchors : "<문ìì ì±
ê°í¼ê° ììµëë¤.>",
+DlgLnkEMail : "ì´ë©ì¼ 주ì",
+DlgLnkEMailSubject : "ì 목",
+DlgLnkEMailBody : "ë´ì©",
+DlgLnkUpload : "ì
ë¡ë",
+DlgLnkBtnUpload : "ìë²ë¡ ì ì¡",
+
+DlgLnkTarget : "íê²",
+DlgLnkTargetFrame : "<íë ì>",
+DlgLnkTargetPopup : "<íì
ì°½>",
+DlgLnkTargetBlank : "ì ì°½ (_blank)",
+DlgLnkTargetParent : "ë¶ëª¨ ì°½ (_parent)",
+DlgLnkTargetSelf : "íì¬ ì°½ (_self)",
+DlgLnkTargetTop : "ìµ ìì ì°½ (_top)",
+DlgLnkTargetFrameName : "íê² íë ì ì´ë¦",
+DlgLnkPopWinName : "íì
ì°½ ì´ë¦",
+DlgLnkPopWinFeat : "íì
ì°½ ì¤ì ",
+DlgLnkPopResize : "í¬ê¸°ì¡°ì ",
+DlgLnkPopLocation : "주ìíìì¤",
+DlgLnkPopMenu : "ë©ë´ë°",
+DlgLnkPopScroll : "ì¤í¬ë¡¤ë°",
+DlgLnkPopStatus : "ìíë°",
+DlgLnkPopToolbar : "í´ë°",
+DlgLnkPopFullScrn : "ì ì²´íë©´ (IE)",
+DlgLnkPopDependent : "Dependent (Netscape)",
+DlgLnkPopWidth : "ëë¹",
+DlgLnkPopHeight : "ëì´",
+DlgLnkPopLeft : "ì¼ìª½ ìì¹",
+DlgLnkPopTop : "ì쪽 ìì¹",
+
+DlnLnkMsgNoUrl : "ë§í¬ URLì ì
ë ¥íììì.",
+DlnLnkMsgNoEMail : "ì´ë©ì¼ì£¼ì를 ì
ë ¥íììì.",
+DlnLnkMsgNoAnchor : "ì±
ê°í¼ëª
ì ì
ë ¥íììì.",
+
+// Color Dialog
+DlgColorTitle : "ìì ì í",
+DlgColorBtnClear : "ì§ì°ê¸°",
+DlgColorHighlight : "íì¬",
+DlgColorSelected : "ì íë¨",
+
+// Smiley Dialog
+DlgSmileyTitle : "ìì´ì½ ì½ì
",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "í¹ì문ì ì í",
+
+// Table Dialog
+DlgTableTitle : "í ì¤ì ",
+DlgTableRows : "ê°ë¡ì¤",
+DlgTableColumns : "ì¸ë¡ì¤",
+DlgTableBorder : "í
ë리 í¬ê¸°",
+DlgTableAlign : "ì ë ¬",
+DlgTableAlignNotSet : "<ì¤ì ëì§ ìì>",
+DlgTableAlignLeft : "ì¼ìª½",
+DlgTableAlignCenter : "ê°ì´ë°",
+DlgTableAlignRight : "ì¤ë¥¸ìª½",
+DlgTableWidth : "ëë¹",
+DlgTableWidthPx : "í½ì
",
+DlgTableWidthPc : "í¼ì¼í¸",
+DlgTableHeight : "ëì´",
+DlgTableCellSpace : "ì
ê°ê²©",
+DlgTableCellPad : "ì
ì¬ë°±",
+DlgTableCaption : "캡ì
",
+
+// Table Cell Dialog
+DlgCellTitle : "ì
ì¤ì ",
+DlgCellWidth : "ëë¹",
+DlgCellWidthPx : "í½ì
",
+DlgCellWidthPc : "í¼ì¼í¸",
+DlgCellHeight : "ëì´",
+DlgCellWordWrap : "ìëë©",
+DlgCellWordWrapNotSet : "<ì¤ì ëì§ ìì>",
+DlgCellWordWrapYes : "ì",
+DlgCellWordWrapNo : "ìëì¤",
+DlgCellHorAlign : "ìí ì ë ¬",
+DlgCellHorAlignNotSet : "<ì¤ì ëì§ ìì>",
+DlgCellHorAlignLeft : "ì¼ìª½",
+DlgCellHorAlignCenter : "ê°ì´ë°",
+DlgCellHorAlignRight: "ì¤ë¥¸ìª½",
+DlgCellVerAlign : "ìì§ ì ë ¬",
+DlgCellVerAlignNotSet : "<ì¤ì ëì§ ìì>",
+DlgCellVerAlignTop : "ì",
+DlgCellVerAlignMiddle : "ì¤ê°",
+DlgCellVerAlignBottom : "ìë",
+DlgCellVerAlignBaseline : "기ì¤ì ",
+DlgCellRowSpan : "ì¸ë¡ í©ì¹ê¸°",
+DlgCellCollSpan : "ê°ë¡ í©ì¹ê¸°",
+DlgCellBackColor : "ë°°ê²½ ìì",
+DlgCellBorderColor : "í
ë리 ìì",
+DlgCellBtnSelect : "ì í",
+
+// Find Dialog
+DlgFindTitle : "찾기",
+DlgFindFindBtn : "찾기",
+DlgFindNotFoundMsg : "문ìì´ì ì°¾ì ì ììµëë¤.",
+
+// Replace Dialog
+DlgReplaceTitle : "ë°ê¾¸ê¸°",
+DlgReplaceFindLbl : "ì°¾ì 문ìì´:",
+DlgReplaceReplaceLbl : "ë°ê¿ 문ìì´:",
+DlgReplaceCaseChk : "ëì문ì 구ë¶",
+DlgReplaceReplaceBtn : "ë°ê¾¸ê¸°",
+DlgReplaceReplAllBtn : "모ë ë°ê¾¸ê¸°",
+DlgReplaceWordChk : "ì¨ì í ë¨ì´",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "ë¸ë¼ì°ì ì ë³´ìì¤ì ë문ì ë¶ì¬ë£ê¸° 기ë¥ì ì¤íí ì ììµëë¤. í¤ë³´ë ëª
ë ¹ì ì¬ì©íììì. (Ctrl+V).",
+PasteErrorCut : "ë¸ë¼ì°ì ì ë³´ìì¤ì ë문ì ìë¼ë´ê¸° 기ë¥ì ì¤íí ì ììµëë¤. í¤ë³´ë ëª
ë ¹ì ì¬ì©íììì. (Ctrl+X).",
+PasteErrorCopy : "ë¸ë¼ì°ì ì ë³´ìì¤ì ë문ì ë³µì¬í기 기ë¥ì ì¤íí ì ììµëë¤. í¤ë³´ë ëª
ë ¹ì ì¬ì©íììì. (Ctrl+C).",
+
+PasteAsText : "í
ì¤í¸ë¡ ë¶ì¬ë£ê¸°",
+PasteFromWord : "MS Word íììì ë¶ì¬ë£ê¸°",
+
+DlgPasteMsg2 : "í¤ë³´ëì (<STRONG>Ctrl+V</STRONG>) 를 ì´ì©í´ì ìììì ë¶ì¬ë£ê³ <STRONG>OK</STRONG> 를 ë르ì¸ì.",
+DlgPasteIgnoreFont : "í°í¸ ì¤ì 무ì",
+DlgPasteRemoveStyles : "ì¤íì¼ ì ì ì ê±°",
+DlgPasteCleanBox : "ê¸ìì ì ê±°",
+
+
+// Color Picker
+ColorAutomatic : "기본ìì",
+ColorMoreColors : "ììì í...",
+
+// Document Properties
+DocProps : "문ì ìì±",
+
+// Anchor Dialog
+DlgAnchorTitle : "ì±
ê°í¼ ìì±",
+DlgAnchorName : "ì±
ê°í¼ ì´ë¦",
+DlgAnchorErrorName : "ì±
ê°í¼ ì´ë¦ì ì
ë ¥íììì.",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "ì¬ì ì ìë ë¨ì´",
+DlgSpellChangeTo : "ë³ê²½í ë¨ì´",
+DlgSpellBtnIgnore : "ê±´ëë",
+DlgSpellBtnIgnoreAll : "모ë ê±´ëë",
+DlgSpellBtnReplace : "ë³ê²½",
+DlgSpellBtnReplaceAll : "모ë ë³ê²½",
+DlgSpellBtnUndo : "ì·¨ì",
+DlgSpellNoSuggestions : "- ì¶ì²ë¨ì´ ìì -",
+DlgSpellProgress : "ì² ìê²ì¬ë¥¼ ì§íì¤ì
ëë¤...",
+DlgSpellNoMispell : "ì² ìê²ì¬ ìë£: ì못ë ì² ìê° ììµëë¤.",
+DlgSpellNoChanges : "ì² ìê²ì¬ ìë£: ë³ê²½ë ë¨ì´ê° ììµëë¤.",
+DlgSpellOneChange : "ì² ìê²ì¬ ìë£: ë¨ì´ê° ë³ê²½ëììµëë¤.",
+DlgSpellManyChanges : "ì² ìê²ì¬ ìë£: %1 ë¨ì´ê° ë³ê²½ëììµëë¤.",
+
+IeSpellDownload : "ì² ì ê²ì¬ê¸°ê° ì² ì¹ëì§ ìììµëë¤. ì§ê¸ ë¤ì´ë¡ëíìê² ìµëê¹?",
+
+// Button Dialog
+DlgButtonText : "ë²í¼ê¸ì(ê°)",
+DlgButtonType : "ë²í¼ì¢
ë¥",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "ì´ë¦",
+DlgCheckboxValue : "ê°",
+DlgCheckboxSelected : "ì íë¨",
+
+// Form Dialog
+DlgFormName : "í¼ì´ë¦",
+DlgFormAction : "ì¤íê²½ë¡(Action)",
+DlgFormMethod : "ë°©ë²(Method)",
+
+// Select Field Dialog
+DlgSelectName : "ì´ë¦",
+DlgSelectValue : "ê°",
+DlgSelectSize : "ì¸ë¡í¬ê¸°",
+DlgSelectLines : "ì¤",
+DlgSelectChkMulti : "ì¬ë¬í목 ì í íì©",
+DlgSelectOpAvail : "ì íìµì
",
+DlgSelectOpText : "ì´ë¦",
+DlgSelectOpValue : "ê°",
+DlgSelectBtnAdd : "ì¶ê°",
+DlgSelectBtnModify : "ë³ê²½",
+DlgSelectBtnUp : "ìë¡",
+DlgSelectBtnDown : "ìëë¡",
+DlgSelectBtnSetValue : "ì íëê²ì¼ë¡ ì¤ì ",
+DlgSelectBtnDelete : "ìì ",
+
+// Textarea Dialog
+DlgTextareaName : "ì´ë¦",
+DlgTextareaCols : "칸ì",
+DlgTextareaRows : "ì¤ì",
+
+// Text Field Dialog
+DlgTextName : "ì´ë¦",
+DlgTextValue : "ê°",
+DlgTextCharWidth : "ê¸ì ëë¹",
+DlgTextMaxChars : "ìµë ê¸ìì",
+DlgTextType : "ì¢
ë¥",
+DlgTextTypeText : "문ìì´",
+DlgTextTypePass : "ë¹ë°ë²í¸",
+
+// Hidden Field Dialog
+DlgHiddenName : "ì´ë¦",
+DlgHiddenValue : "ê°",
+
+// Bulleted List Dialog
+BulletedListProp : "ìììë ëª©ë¡ ìì±",
+NumberedListProp : "ìììë ëª©ë¡ ìì±",
+DlgLstType : "ì¢
ë¥",
+DlgLstTypeCircle : "ì(Circle)",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "ë¤ëª¨ì (Square)",
+DlgLstTypeNumbers : "ë²í¸ (1, 2, 3)",
+DlgLstTypeLCase : "ì문ì (a, b, c)",
+DlgLstTypeUCase : "ë문ì (A, B, C)",
+DlgLstTypeSRoman : "ë¡ë§ì ì문ì (i, ii, iii)",
+DlgLstTypeLRoman : "ë¡ë§ì ë문ì (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "ì¼ë°",
+DlgDocBackTab : "ë°°ê²½",
+DlgDocColorsTab : "ìì ë° ì¬ë°±",
+DlgDocMetaTab : "ë©íë°ì´í°",
+
+DlgDocPageTitle : "íì´ì§ëª
",
+DlgDocLangDir : "문ì ì°ê¸°ë°©í¥",
+DlgDocLangDirLTR : "ì¼ìª½ìì ì¤ë¥¸ìª½ (LTR)",
+DlgDocLangDirRTL : "ì¤ë¥¸ìª½ìì ì¼ìª½ (RTL)",
+DlgDocLangCode : "ì¸ì´ì½ë",
+DlgDocCharSet : "ìºë¦í°ì
ì¸ì½ë©",
+DlgDocCharSetOther : "ë¤ë¥¸ ìºë¦í°ì
ì¸ì½ë©",
+
+DlgDocDocType : "문ì í¤ë",
+DlgDocDocTypeOther : "ë¤ë¥¸ 문ìí¤ë",
+DlgDocIncXHTML : "XHTML 문ìì ì í¬í¨",
+DlgDocBgColor : "ë°°ê²½ìì",
+DlgDocBgImage : "ë°°ê²½ì´ë¯¸ì§ URL",
+DlgDocBgNoScroll : "ì¤í¬ë¡¤ëì§ìë ë°°ê²½",
+DlgDocCText : "í
ì¤í¸",
+DlgDocCLink : "ë§í¬",
+DlgDocCVisited : "방문í ë§í¬(Visited)",
+DlgDocCActive : "íì±íë ë§í¬(Active)",
+DlgDocMargins : "íì´ì§ ì¬ë°±",
+DlgDocMaTop : "ì",
+DlgDocMaLeft : "ì¼ìª½",
+DlgDocMaRight : "ì¤ë¥¸ìª½",
+DlgDocMaBottom : "ìë",
+DlgDocMeIndex : "문ì í¤ìë (콤ë§ë¡ 구ë¶)",
+DlgDocMeDescr : "문ì ì¤ëª
",
+DlgDocMeAuthor : "ìì±ì",
+DlgDocMeCopy : "ì ìê¶",
+DlgDocPreview : "미리보기",
+
+// Templates Dialog
+Templates : "í
í릿",
+DlgTemplatesTitle : "ë´ì© í
í릿",
+DlgTemplatesSelMsg : "ìëí°ìì ì¬ì©í í
í릿ì ì ííììì.<br>(ì§ê¸ê¹ì§ ìì±ë ë´ì©ì ì¬ë¼ì§ëë¤.):",
+DlgTemplatesLoading : "í
í릿 목ë¡ì ë¶ë¬ì¤ëì¤ì
ëë¤. ì ìë§ ê¸°ë¤ë ¤ì£¼ììì.",
+DlgTemplatesNoTpl : "(í
íë¦¿ì´ ììµëë¤.)",
+
+// About Dialog
+DlgAboutAboutTab : "About",
+DlgAboutBrowserInfoTab : "ë¸ë¼ì°ì ì ë³´",
+DlgAboutVersion : "ë²ì ",
+DlgAboutLicense : "Licensed under the terms of the GNU Lesser General Public License",
+DlgAboutInfo : "For further information go to"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/lt.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/lt.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/lt.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: lt.js
+ * Lithuanian language file.
+ *
+ * File Authors:
+ * Tauras Paliulis (tauras.paliulis at tauras.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Sutraukti mygtukų juostÄ
",
+ToolbarExpand : "IÅ¡plÄsti mygtukų juostÄ
",
+
+// Toolbar Items and Context Menu
+Save : "IÅ¡saugoti",
+NewPage : "Naujas puslapis",
+Preview : "Peržiūra",
+Cut : "IÅ¡kirpti",
+Copy : "Kopijuoti",
+Paste : "Ä®dÄti",
+PasteText : "Ä®dÄti kaip grynÄ
tekstÄ
",
+PasteWord : "Ä®dÄti iÅ¡ Word",
+Print : "Spausdinti",
+SelectAll : "PažymÄti viskÄ
",
+RemoveFormat : "Panaikinti formatÄ
",
+InsertLinkLbl : "Nuoroda",
+InsertLink : "Ä®terpti/taisyti nuorodÄ
",
+RemoveLink : "Panaikinti nuorodÄ
",
+Anchor : "Ä®terpti/modifikuoti žymÄ",
+InsertImageLbl : "Vaizdas",
+InsertImage : "Ä®terpti/taisyti vaizdÄ
",
+InsertFlashLbl : "Flash",
+InsertFlash : "Įterpti/taisyti Flash",
+InsertTableLbl : "LentelÄ",
+InsertTable : "Ä®terpti/taisyti lentelÄ",
+InsertLineLbl : "Linija",
+InsertLine : "Ä®terpti horizontaliÄ
linijÄ
",
+InsertSpecialCharLbl: "Spec. simbolis",
+InsertSpecialChar : "Įterpti specialų simbolį",
+InsertSmileyLbl : "Veideliai",
+InsertSmiley : "Įterpti veidelį",
+About : "Apie FCKeditor",
+Bold : "Pusjuodis",
+Italic : "Kursyvas",
+Underline : "Pabrauktas",
+StrikeThrough : "Perbrauktas",
+Subscript : "Apatinis indeksas",
+Superscript : "Viršutinis indeksas",
+LeftJustify : "Lygiuoti kairÄ",
+CenterJustify : "Centruoti",
+RightJustify : "Lygiuoti deÅ¡inÄ",
+BlockJustify : "Lygiuoti abi puses",
+DecreaseIndent : "Sumažinti įtraukÄ
",
+IncreaseIndent : "Padidinti įtraukÄ
",
+Undo : "Atšaukti",
+Redo : "Atstatyti",
+NumberedListLbl : "Numeruotas sÄ
rašas",
+NumberedList : "Ä®terpti/Panaikinti numeruotÄ
sÄ
raÅ¡Ä
",
+BulletedListLbl : "Suženklintas sÄ
rašas",
+BulletedList : "Ä®terpti/Panaikinti suženklintÄ
sÄ
raÅ¡Ä
",
+ShowTableBorders : "Rodyti lentelÄs rÄmus",
+ShowDetails : "Rodyti detales",
+Style : "Stilius",
+FontFormat : "Å rifto formatas",
+Font : "Å riftas",
+FontSize : "Å rifto dydis",
+TextColor : "Teksto spalva",
+BGColor : "Fono spalva",
+Source : "Å altinis",
+Find : "Rasti",
+Replace : "Pakeisti",
+SpellCheck : "Rašybos tikrinimas",
+UniversalKeyboard : "Universali klaviatūra",
+
+Form : "Forma",
+Checkbox : "Žymimasis langelis",
+RadioButton : "Žymimoji akutÄ",
+TextField : "Teksto laukas",
+Textarea : "Teksto sritis",
+HiddenField : "Nerodomas laukas",
+Button : "Mygtukas",
+SelectionField : "Atrankos laukas",
+ImageButton : "Vaizdinis mygtukas",
+
+// Context Menu
+EditLink : "Taisyti nuorodÄ
",
+InsertRow : "Ä®terpti eilutÄ",
+DeleteRows : "Å alinti eilutes",
+InsertColumn : "Įterpti stulpelį",
+DeleteColumns : "Å alinti stulpelius",
+InsertCell : "Įterpti langelį",
+DeleteCells : "Å alinti langelius",
+MergeCells : "Sujungti langelius",
+SplitCell : "Skaidyti langelius",
+CellProperties : "Langelio savybÄs",
+TableProperties : "LentelÄs savybÄs",
+ImageProperties : "Vaizdo savybÄs",
+FlashProperties : "Flash savybÄs",
+
+AnchorProp : "ŽymÄs savybÄs",
+ButtonProp : "Mygtuko savybÄs",
+CheckboxProp : "Žymimojo langelio savybÄs",
+HiddenFieldProp : "Nerodomo lauko savybÄs",
+RadioButtonProp : "Žymimosios akutÄs savybÄs",
+ImageButtonProp : "Vaizdinio mygtuko savybÄs",
+TextFieldProp : "Teksto lauko savybÄs",
+SelectionFieldProp : "Atrankos lauko savybÄs",
+TextareaProp : "Teksto srities savybÄs",
+FormProp : "Formos savybÄs",
+
+FontFormats : "Normalus;Formuotas;Kreipinio;Antraštinis 1;Antraštinis 2;Antraštinis 3;Antraštinis 4;Antraštinis 5;Antraštinis 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Apdorojamas XHTML. Prašome palaukti...",
+Done : "Baigta",
+PasteWordConfirm : "Ä®dedamas tekstas yra panaÅ¡us į kopijÄ
iÅ¡ Word. Ar JÅ«s norite prieÅ¡ įdÄjimÄ
išvalyti jį?",
+NotCompatiblePaste : "Å i komanda yra prieinama tik per Internet Explorer 5.5 ar aukÅ¡tesnÄ versijÄ
. Ar Jūs norite įterpti be valymo?",
+UnknownToolbarItem : "Nežinomas mygtukų juosta elementas \"%1\"",
+UnknownCommand : "Nežinomas komandos vardas \"%1\"",
+NotImplemented : "Komanda nÄra įgyvendinta",
+UnknownToolbarSet : "Mygtukų juostos rinkinys \"%1\" neegzistuoja",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Nutraukti",
+DlgBtnClose : "Uždaryti",
+DlgBtnBrowseServer : "Naršyti po serverį",
+DlgAdvancedTag : "Papildomas",
+DlgOpOther : "<Kita>",
+DlgInfoTab : "Informacija",
+DlgAlertUrl : "Prašome įrašyti URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<nÄra nustatyta>",
+DlgGenId : "Id",
+DlgGenLangDir : "Teksto kryptis",
+DlgGenLangDirLtr : "IÅ¡ kairÄs į deÅ¡inÄ (LTR)",
+DlgGenLangDirRtl : "IÅ¡ deÅ¡inÄs į kairÄ (RTL)",
+DlgGenLangCode : "Kalbos kodas",
+DlgGenAccessKey : "Prieigos raktas",
+DlgGenName : "Vardas",
+DlgGenTabIndex : "Tabuliavimo indeksas",
+DlgGenLongDescr : "Ilgas aprašymas URL",
+DlgGenClass : "Stilių lentelÄs klasÄs",
+DlgGenTitle : "KonsultacinÄ antraÅ¡tÄ",
+DlgGenContType : "Konsultacinio turinio tipas",
+DlgGenLinkCharset : "Susietų iÅ¡teklių simbolių lentelÄ",
+DlgGenStyle : "Stilius",
+
+// Image Dialog
+DlgImgTitle : "Vaizdo savybÄs",
+DlgImgInfoTab : "Vaizdo informacija",
+DlgImgBtnUpload : "Siųsti į serverį",
+DlgImgURL : "URL",
+DlgImgUpload : "Nusiųsti",
+DlgImgAlt : "Alternatyvus Tekstas",
+DlgImgWidth : "Plotis",
+DlgImgHeight : "Aukštis",
+DlgImgLockRatio : "IÅ¡laikyti proporcijÄ
",
+DlgBtnResetSize : "Atstatyti dydį",
+DlgImgBorder : "RÄmelis",
+DlgImgHSpace : "Hor.ErdvÄ",
+DlgImgVSpace : "Vert.ErdvÄ",
+DlgImgAlign : "Lygiuoti",
+DlgImgAlignLeft : "KairÄ",
+DlgImgAlignAbsBottom: "AbsoliuÄiÄ
apaÄiÄ
",
+DlgImgAlignAbsMiddle: "Absoliutų vidurį",
+DlgImgAlignBaseline : "ApatinÄ linijÄ
",
+DlgImgAlignBottom : "ApaÄiÄ
",
+DlgImgAlignMiddle : "Vidurį",
+DlgImgAlignRight : "DeÅ¡inÄ",
+DlgImgAlignTextTop : "Teksto virÅ¡Å«nÄ",
+DlgImgAlignTop : "VirÅ¡Å«nÄ",
+DlgImgPreview : "Peržiūra",
+DlgImgAlertUrl : "Prašome įvesti vaizdo URL",
+DlgImgLinkTab : "Nuoroda",
+
+// Flash Dialog
+DlgFlashTitle : "Flash savybÄs",
+DlgFlashChkPlay : "Automatinis paleidimas",
+DlgFlashChkLoop : "Ciklas",
+DlgFlashChkMenu : "Leisti Flash meniu",
+DlgFlashScale : "Mastelis",
+DlgFlashScaleAll : "Rodyti visÄ
",
+DlgFlashScaleNoBorder : "Be rÄmelio",
+DlgFlashScaleFit : "Tikslus atitikimas",
+
+// Link Dialog
+DlgLnkWindowTitle : "Nuoroda",
+DlgLnkInfoTab : "Nuorodos informacija",
+DlgLnkTargetTab : "Paskirtis",
+
+DlgLnkType : "Nuorodos tipas",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "ŽymÄ Å¡iame puslapyje",
+DlgLnkTypeEMail : "El.paštas",
+DlgLnkProto : "Protokolas",
+DlgLnkProtoOther : "<kitas>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Pasirinkite žymÄ",
+DlgLnkAnchorByName : "Pagal žymÄs vardÄ
",
+DlgLnkAnchorById : "Pagal žymÄs Id",
+DlgLnkNoAnchors : "<Å iame dokumente žymių nÄra>",
+DlgLnkEMail : "El.pašto adresas",
+DlgLnkEMailSubject : "ŽinutÄs tema",
+DlgLnkEMailBody : "ŽinutÄs turinys",
+DlgLnkUpload : "Siųsti",
+DlgLnkBtnUpload : "Siųsti į serverį",
+
+DlgLnkTarget : "Paskirties vieta",
+DlgLnkTargetFrame : "<kadras>",
+DlgLnkTargetPopup : "<išskleidžiamas langas>",
+DlgLnkTargetBlank : "Naujas langas (_blank)",
+DlgLnkTargetParent : "Pirminis langas (_parent)",
+DlgLnkTargetSelf : "Tas pats langas (_self)",
+DlgLnkTargetTop : "Svarbiausias langas (_top)",
+DlgLnkTargetFrameName : "Paskirties kadro vardas",
+DlgLnkPopWinName : "Paskirties lango vardas",
+DlgLnkPopWinFeat : "IÅ¡skleidžiamo lango savybÄs",
+DlgLnkPopResize : "KeiÄiamas dydis",
+DlgLnkPopLocation : "Adreso juosta",
+DlgLnkPopMenu : "Meniu juosta",
+DlgLnkPopScroll : "Slinkties juostos",
+DlgLnkPopStatus : "BÅ«senos juosta",
+DlgLnkPopToolbar : "Mygtukų juosta",
+DlgLnkPopFullScrn : "Visas ekranas (IE)",
+DlgLnkPopDependent : "Priklausomas (Netscape)",
+DlgLnkPopWidth : "Plotis",
+DlgLnkPopHeight : "Aukštis",
+DlgLnkPopLeft : "KairÄ pozicija",
+DlgLnkPopTop : "VirÅ¡utinÄ pozicija",
+
+DlnLnkMsgNoUrl : "Prašome įvesti nuorodos URL",
+DlnLnkMsgNoEMail : "PraÅ¡ome įvesti el.paÅ¡to adresÄ
",
+DlnLnkMsgNoAnchor : "PraÅ¡ome pasirinkti žymÄ",
+
+// Color Dialog
+DlgColorTitle : "Pasirinkite spalvÄ
",
+DlgColorBtnClear : "Trinti",
+DlgColorHighlight : "Paryškinta",
+DlgColorSelected : "PažymÄta",
+
+// Smiley Dialog
+DlgSmileyTitle : "Įterpti veidelį",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Pasirinkite specialų simbolį",
+
+// Table Dialog
+DlgTableTitle : "LentelÄs savybÄs",
+DlgTableRows : "EilutÄs",
+DlgTableColumns : "Stulpeliai",
+DlgTableBorder : "RÄmelio dydis",
+DlgTableAlign : "Lygiuoti",
+DlgTableAlignNotSet : "<Nenustatyta>",
+DlgTableAlignLeft : "KairÄ",
+DlgTableAlignCenter : "CentrÄ
",
+DlgTableAlignRight : "DeÅ¡inÄ",
+DlgTableWidth : "Plotis",
+DlgTableWidthPx : "taškais",
+DlgTableWidthPc : "procentais",
+DlgTableHeight : "Aukštis",
+DlgTableCellSpace : "Tarpas tarp langelių",
+DlgTableCellPad : "Trapas nuo langelio rÄmo iki teksto",
+DlgTableCaption : "AntraÅ¡tÄ",
+
+// Table Cell Dialog
+DlgCellTitle : "Langelio savybÄs",
+DlgCellWidth : "Plotis",
+DlgCellWidthPx : "taškais",
+DlgCellWidthPc : "procentais",
+DlgCellHeight : "Aukštis",
+DlgCellWordWrap : "Teksto laužymas",
+DlgCellWordWrapNotSet : "<Nenustatyta>",
+DlgCellWordWrapYes : "Taip",
+DlgCellWordWrapNo : "Ne",
+DlgCellHorAlign : "Horizontaliai lygiuoti",
+DlgCellHorAlignNotSet : "<Nenustatyta>",
+DlgCellHorAlignLeft : "KairÄ",
+DlgCellHorAlignCenter : "CentrÄ
",
+DlgCellHorAlignRight: "DeÅ¡inÄ",
+DlgCellVerAlign : "Vertikaliai lygiuoti",
+DlgCellVerAlignNotSet : "<Nenustatyta>",
+DlgCellVerAlignTop : "Viršų",
+DlgCellVerAlignMiddle : "Vidurį",
+DlgCellVerAlignBottom : "ApaÄiÄ
",
+DlgCellVerAlignBaseline : "ApatinÄ linijÄ
",
+DlgCellRowSpan : "EiluÄių apjungimas",
+DlgCellCollSpan : "Stulpelių apjungimas",
+DlgCellBackColor : "Fono spalva",
+DlgCellBorderColor : "RÄmelio spalva",
+DlgCellBtnSelect : "PažymÄti...",
+
+// Find Dialog
+DlgFindTitle : "Paieška",
+DlgFindFindBtn : "Surasti",
+DlgFindNotFoundMsg : "Nurodytas tekstas nerastas.",
+
+// Replace Dialog
+DlgReplaceTitle : "Pakeisti",
+DlgReplaceFindLbl : "Surasti tekstÄ
:",
+DlgReplaceReplaceLbl : "Pakeisti tekstu:",
+DlgReplaceCaseChk : "Skirti didžiÄ
sias ir mažÄ
sias raides",
+DlgReplaceReplaceBtn : "Pakeisti",
+DlgReplaceReplAllBtn : "Pakeisti viskÄ
",
+DlgReplaceWordChk : "Atitikti pilnÄ
žodį",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "JÅ«sų narÅ¡yklÄs saugumo nustatymai neleidžia redaktoriui automatiÅ¡kai įvykdyti įdÄjimo operacijų. Tam praÅ¡ome naudoti klaviatÅ«rÄ
(Ctrl+V).",
+PasteErrorCut : "JÅ«sų narÅ¡yklÄs saugumo nustatymai neleidžia redaktoriui automatiÅ¡kai įvykdyti iÅ¡kirpimo operacijų. Tam praÅ¡ome naudoti klaviatÅ«rÄ
(Ctrl+X).",
+PasteErrorCopy : "JÅ«sų narÅ¡yklÄs saugumo nustatymai neleidžia redaktoriui automatiÅ¡kai įvykdyti kopijavimo operacijų. Tam praÅ¡ome naudoti klaviatÅ«rÄ
(Ctrl+C).",
+
+PasteAsText : "Ä®dÄti kaip grynÄ
tekstÄ
",
+PasteFromWord : "Ä®dÄti iÅ¡ Word",
+
+DlgPasteMsg2 : "Žemiau esanÄiame įvedimo lauke įdÄkite tekstÄ
, naudodami klaviatÅ«rÄ
(<STRONG>Ctrl+V</STRONG>) ir spÅ«stelkite mygtukÄ
<STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignoruoti šriftų nustatymus",
+DlgPasteRemoveStyles : "Pašalinti stilių nustatymus",
+DlgPasteCleanBox : "Trinti įvedimo laukÄ
",
+
+
+// Color Picker
+ColorAutomatic : "Automatinis",
+ColorMoreColors : "Daugiau spalvų...",
+
+// Document Properties
+DocProps : "Dokumento savybÄs",
+
+// Anchor Dialog
+DlgAnchorTitle : "ŽymÄs savybÄs",
+DlgAnchorName : "ŽymÄs vardas",
+DlgAnchorErrorName : "PraÅ¡ome įvesti žymÄs vardÄ
",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Žodyne nerastas",
+DlgSpellChangeTo : "Pakeisti į",
+DlgSpellBtnIgnore : "Ignoruoti",
+DlgSpellBtnIgnoreAll : "Ignoruoti visus",
+DlgSpellBtnReplace : "Pakeisti",
+DlgSpellBtnReplaceAll : "Pakeisti visus",
+DlgSpellBtnUndo : "Atšaukti",
+DlgSpellNoSuggestions : "- NÄra pasiÅ«lymų -",
+DlgSpellProgress : "Vyksta rašybos tikrinimas...",
+DlgSpellNoMispell : "Rašybos tikrinimas baigtas: Nerasta rašybos klaidų",
+DlgSpellNoChanges : "RaÅ¡ybos tikrinimas baigtas: NÄra pakeistų žodžių",
+DlgSpellOneChange : "Rašybos tikrinimas baigtas: Vienas žodis pakeistas",
+DlgSpellManyChanges : "Rašybos tikrinimas baigtas: Pakeista %1 žodžių",
+
+IeSpellDownload : "Rašybos tikrinimas neinstaliuotas. Ar Jūs norite jį dabar atsisiųsti?",
+
+// Button Dialog
+DlgButtonText : "Tekstas (ReikÅ¡mÄ)",
+DlgButtonType : "Tipas",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Vardas",
+DlgCheckboxValue : "ReikÅ¡mÄ",
+DlgCheckboxSelected : "PažymÄtas",
+
+// Form Dialog
+DlgFormName : "Vardas",
+DlgFormAction : "Veiksmas",
+DlgFormMethod : "Metodas",
+
+// Select Field Dialog
+DlgSelectName : "Vardas",
+DlgSelectValue : "ReikÅ¡mÄ",
+DlgSelectSize : "Dydis",
+DlgSelectLines : "eiluÄių",
+DlgSelectChkMulti : "Leisti daugeriopÄ
atrankÄ
",
+DlgSelectOpAvail : "Galimos parinktys",
+DlgSelectOpText : "Tekstas",
+DlgSelectOpValue : "ReikÅ¡mÄ",
+DlgSelectBtnAdd : "Įtraukti",
+DlgSelectBtnModify : "Modifikuoti",
+DlgSelectBtnUp : "Aukštyn",
+DlgSelectBtnDown : "Žemyn",
+DlgSelectBtnSetValue : "Laikyti pažymÄta reikÅ¡me",
+DlgSelectBtnDelete : "Trinti",
+
+// Textarea Dialog
+DlgTextareaName : "Vardas",
+DlgTextareaCols : "Ilgis",
+DlgTextareaRows : "Plotis",
+
+// Text Field Dialog
+DlgTextName : "Vardas",
+DlgTextValue : "ReikÅ¡mÄ",
+DlgTextCharWidth : "Ilgis simboliais",
+DlgTextMaxChars : "Maksimalus simbolių skaiÄius",
+DlgTextType : "Tipas",
+DlgTextTypeText : "Tekstas",
+DlgTextTypePass : "Slaptažodis",
+
+// Hidden Field Dialog
+DlgHiddenName : "Vardas",
+DlgHiddenValue : "ReikÅ¡mÄ",
+
+// Bulleted List Dialog
+BulletedListProp : "Suženklinto sÄ
raÅ¡o savybÄs",
+NumberedListProp : "Numeruoto sÄ
raÅ¡o savybÄs",
+DlgLstType : "Tipas",
+DlgLstTypeCircle : "Apskritimas",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Kvadratas",
+DlgLstTypeNumbers : "SkaiÄiai (1, 2, 3)",
+DlgLstTypeLCase : "Mažosios raidÄs (a, b, c)",
+DlgLstTypeUCase : "Didžiosios raidÄs (A, B, C)",
+DlgLstTypeSRoman : "RomÄnų mažieji skaiÄiai (i, ii, iii)",
+DlgLstTypeLRoman : "RomÄnų didieji skaiÄiai (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Bendros savybÄs",
+DlgDocBackTab : "Fonas",
+DlgDocColorsTab : "Spalvos ir kraÅ¡tinÄs",
+DlgDocMetaTab : "Meta duomenys",
+
+DlgDocPageTitle : "Puslapio antraÅ¡tÄ",
+DlgDocLangDir : "Kalbos kryptis",
+DlgDocLangDirLTR : "IÅ¡ kairÄs į deÅ¡inÄ (LTR)",
+DlgDocLangDirRTL : "IÅ¡ deÅ¡inÄs į kairÄ (RTL)",
+DlgDocLangCode : "Kalbos kodas",
+DlgDocCharSet : "Simbolių kodavimo lentelÄ",
+DlgDocCharSetOther : "Kita simbolių kodavimo lentelÄ",
+
+DlgDocDocType : "Dokumento tipo antraÅ¡tÄ",
+DlgDocDocTypeOther : "Kita dokumento tipo antraÅ¡tÄ",
+DlgDocIncXHTML : "Įtraukti XHTML deklaracijas",
+DlgDocBgColor : "Fono spalva",
+DlgDocBgImage : "Fono paveikslÄlio nuoroda (URL)",
+DlgDocBgNoScroll : "Neslenkantis fonas",
+DlgDocCText : "Tekstas",
+DlgDocCLink : "Nuoroda",
+DlgDocCVisited : "Aplankyta nuoroda",
+DlgDocCActive : "Aktyvi nuoroda",
+DlgDocMargins : "Puslapio kraÅ¡tinÄs",
+DlgDocMaTop : "Viršuje",
+DlgDocMaLeft : "KairÄje",
+DlgDocMaRight : "DeÅ¡inÄje",
+DlgDocMaBottom : "ApaÄioje",
+DlgDocMeIndex : "Dokumento indeksavimo raktiniai žodžiai (atskirti kableliais)",
+DlgDocMeDescr : "Dokumento apibūdinimas",
+DlgDocMeAuthor : "Autorius",
+DlgDocMeCopy : "AutorinÄs teisÄs",
+DlgDocPreview : "Peržiūra",
+
+// Templates Dialog
+Templates : "Å ablonai",
+DlgTemplatesTitle : "Turinio Å¡ablonai",
+DlgTemplatesSelMsg : "Pasirinkite norimÄ
Å¡ablonÄ
<br>(<b>DÄmesio!</b> esamas turinys bus prarastas):",
+DlgTemplatesLoading : "Ä®keliamas Å¡ablonų sÄ
rašas. Prašome palaukti...",
+DlgTemplatesNoTpl : "(Å ablonų sÄ
raÅ¡as tuÅ¡Äias)",
+
+// About Dialog
+DlgAboutAboutTab : "Apie",
+DlgAboutBrowserInfoTab : "NarÅ¡yklÄs informacija",
+DlgAboutVersion : "versija",
+DlgAboutLicense : "Licencijuota pagal GNU mažesnÄs atsakomybÄs pagrindinÄs vieÅ¡os licencijos sÄ
lygas",
+DlgAboutInfo : "PapildomÄ
informacijÄ
galima gauti"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/mn.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/mn.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/mn.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: mn.js
+ * Mongolian language file.
+ *
+ * File Authors:
+ * Lkamtseren ODONBAATAR (odonbaatarl at yahoo.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "ÐÐ°Ð³Ð°Ð¶Ð½Ñ Ñ
ÑÑÑг ÑвдÑÑ
",
+ToolbarExpand : "ÐÐ°Ð³Ð°Ð¶Ð½Ñ Ñ
ÑÑÑг Ó©ÑгөÑгөÑ
",
+
+// Toolbar Items and Context Menu
+Save : "ХадгалаÑ
",
+NewPage : "Ð¨Ð¸Ð½Ñ Ñ
ÑÑдаÑ",
+Preview : "УÑидÑлан Ñ
аÑаÑ
",
+Cut : "ХайÑлаÑ
",
+Copy : "Ð¥ÑÑлаÑ
",
+Paste : "ÐÑÑлгаÑ
",
+PasteText : "plain text-ÑÑÑ Ð±ÑÑлгаÑ
",
+PasteWord : "Word-Ð¾Ð¾Ñ Ð±ÑÑлгаÑ
",
+Print : "Ð¥ÑвлÑÑ
",
+SelectAll : "Ðүгдийг Ð½Ñ ÑонгоÑ
",
+RemoveFormat : "ФоÑÐ¼Ð°Ñ Ð°Ð²Ñ Ñ
аÑÑ
",
+InsertLinkLbl : "Ðинк",
+InsertLink : "Ðинк ÐÑÑÑлаÑ
/ÐаÑваÑлаÑ
",
+RemoveLink : "Ðинк Ð°Ð²Ñ Ñ
аÑÑ
",
+Anchor : "Insert/Edit Anchor", //MISSING
+InsertImageLbl : "ÐÑÑаг",
+InsertImage : "ÐÑÑаг ÐÑÑÑлаÑ
/ÐаÑваÑлаÑ
",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Ð¥Ò¯ÑнÑгÑ",
+InsertTable : "Ð¥Ò¯ÑнÑÐ³Ñ ÐÑÑÑлаÑ
/ÐаÑваÑлаÑ
",
+InsertLineLbl : "ÐÑÑааÑ",
+InsertLine : "Хөндлөн зÑÑÐ°Ð°Ñ Ð¾ÑÑÑлаÑ
",
+InsertSpecialCharLbl: "ÐнÑгой ÑÑмдÑгÑ",
+InsertSpecialChar : "ÐнÑгой ÑÑмдÑÐ³Ñ Ð¾ÑÑÑлаÑ
",
+InsertSmileyLbl : "ТодоÑÑ
ойлолÑ",
+InsertSmiley : "ТодоÑÑ
Ð¾Ð¹Ð»Ð¾Ð»Ñ Ð¾ÑÑÑлаÑ
",
+About : "FCKeditor-н ÑÑÑ
ай",
+Bold : "Тод бүдүүн",
+Italic : "ÐалÑÑ",
+Underline : "ÐоогÑÑÑ Ð½Ñ Ð·ÑÑааÑÑай болгоÑ
",
+StrikeThrough : "ÐÑндÑÑÑ Ð½Ñ Ð·ÑÑааÑÑай болгоÑ
",
+Subscript : "СÑÑÑÑ Ð±Ð¾Ð»Ð³Ð¾Ñ
",
+Superscript : "ÐÑÑÑг болгоÑ
",
+LeftJustify : "Ðүүн Ñалд байÑлÑÑлаÑ
",
+CenterJustify : "Төвд байÑлÑÑлаÑ
",
+RightJustify : "ÐаÑÑÑн Ñалд байÑлÑÑлаÑ
",
+BlockJustify : "Ðлок Ñ
ÑлбÑÑÑÑÑ Ð±Ð°Ð¹ÑлÑÑлаÑ
",
+DecreaseIndent : "Ðогол Ð¼Ó©Ñ Ð½ÑмÑÑ
",
+IncreaseIndent : "Ðогол Ð¼Ó©Ñ Ñ
аÑаÑ
",
+Undo : "Ð¥Ò¯Ñингүй болгоÑ
",
+Redo : "ӨмнөÑ
үйлдлÑÑ ÑÑÑгÑÑÑ
",
+NumberedListLbl : "ÐÑгааÑлагдÑан жагÑаалÑ",
+NumberedList : "ÐÑгааÑлагдÑан жагÑÐ°Ð°Ð»Ñ ÐÑÑÑлаÑ
/ÐваÑ
",
+BulletedListLbl : "ЦÑгÑÑй жагÑаалÑ",
+BulletedList : "ЦÑгÑÑй жагÑÐ°Ð°Ð»Ñ ÐÑÑÑлаÑ
/ÐваÑ
",
+ShowTableBorders : "Ð¥Ò¯ÑнÑгÑийн Ñ
Ò¯ÑÑÑг үзүүлÑÑ
",
+ShowDetails : "ÐеÑалÑлан үзүүлÑÑ
",
+Style : "ÐагваÑ",
+FontFormat : "ФоÑмаÑ",
+Font : "ФонÑ",
+FontSize : "Ð¥ÑмжÑÑ",
+TextColor : "ФонÑÐ½Ñ Ó©Ð½Ð³Ó©",
+BGColor : "Ð¤Ð¾Ð½Ð½Ñ Ó©Ð½Ð³Ó©",
+Source : "Ðод",
+Find : "ХайÑ
",
+Replace : "СолиÑ
",
+SpellCheck : "Check Spell", //MISSING
+UniversalKeyboard : "Universal Keyboard", //MISSING
+
+Form : "Form", //MISSING
+Checkbox : "Checkbox", //MISSING
+RadioButton : "Radio Button", //MISSING
+TextField : "Text Field", //MISSING
+Textarea : "Textarea", //MISSING
+HiddenField : "Hidden Field", //MISSING
+Button : "Button", //MISSING
+SelectionField : "Selection Field", //MISSING
+ImageButton : "Image Button", //MISSING
+
+// Context Menu
+EditLink : "Ð¥Ð¾Ð»Ð±Ð¾Ð¾Ñ Ð·Ð°ÑваÑлаÑ
",
+InsertRow : "ÐÓ©Ñ Ð¾ÑÑÑлаÑ
",
+DeleteRows : "ÐÓ©Ñ ÑÑÑгаÑ
",
+InsertColumn : "Ðагана оÑÑÑлаÑ
",
+DeleteColumns : "Ðагана ÑÑÑгаÑ
",
+InsertCell : "ÐÒ¯Ñ
оÑÑÑлаÑ
",
+DeleteCells : "ÐÒ¯Ñ
ÑÑÑгаÑ
",
+MergeCells : "ÐÒ¯Ñ
нÑгÑÑÑ
",
+SplitCell : "ÐÒ¯Ñ
ÑÑÑгайÑлаÑ
",
+CellProperties : "ХооÑон зайн Ñинж ÑанаÑ",
+TableProperties : "Ð¥Ò¯ÑнÑгÑ",
+ImageProperties : "ÐÑÑаг",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Anchor Properties", //MISSING
+ButtonProp : "Button Properties", //MISSING
+CheckboxProp : "Checkbox Properties", //MISSING
+HiddenFieldProp : "Hidden Field Properties", //MISSING
+RadioButtonProp : "Radio Button Properties", //MISSING
+ImageButtonProp : "Image Button Properties", //MISSING
+TextFieldProp : "Text Field Properties", //MISSING
+SelectionFieldProp : "Selection Field Properties", //MISSING
+TextareaProp : "Textarea Properties", //MISSING
+FormProp : "Form Properties", //MISSING
+
+FontFormats : "Ð¥Ñвийн;Formatted;ХаÑг;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "XHTML үйл ÑÐ²Ñ Ñвагдаж байна. ХүлÑÑÐ½Ñ Ò¯Ò¯...",
+Done : "ХийÑ
",
+PasteWordConfirm : "Word-Ð¾Ð¾Ñ Ñ
ÑÑлÑан ÑекÑÑÑÑ Ñанаж байгааг Ð½Ñ Ð±ÑÑлгаÑ
Ñг Ñа Ñ
Ò¯ÑÑ Ð±Ð°Ð¹Ð½Ð° ÑÑ. Та ÑекÑÑ-ÑÑ Ð±ÑÑлгаÑ
Ñн өмнө ÑÑвÑÑлÑÑ
Ò¯Ò¯?",
+NotCompatiblePaste : "ÐÐ½Ñ ÐºÐ¾Ð¼Ð¼Ð°Ð½Ð´ Internet Explorer-Ñн 5.5 бÑÑÑ ÑүүнÑÑÑ Ð´ÑÑÑ Ñ
ÑвилбаÑÑ Ð¸Ð´Ð²ÑÑ
ÑинÑ. Та ÑÑвÑÑлÑÑ
гүйгÑÑÑ Ð±ÑÑлгаÑ
Ñг Ñ
Ò¯ÑÑ Ð±Ð°Ð¹Ð½Ð°?",
+UnknownToolbarItem : "ÐÐ°Ð³Ð°Ð¶Ð½Ñ Ñ
ÑÑгийн \"%1\" item мÑдÑгдÑÑ
гүй байна",
+UnknownCommand : "\"%1\" комманд нÑÑ Ð¼ÑдагдÑÑ
гүй байна",
+NotImplemented : "ÐөвÑÓ©Ó©ÑөгдөÑ
гүй комманд",
+UnknownToolbarSet : "ÐÐ°Ð³Ð°Ð¶Ð½Ñ Ñ
ÑÑÑÐ³Ñ \"%1\" онооÑ
, Ò¯Ò¯ÑÑÑгүй байна",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "ÐолиÑ
",
+DlgBtnClose : "ХааÑ
",
+DlgBtnBrowseServer : "Browse Server", //MISSING
+DlgAdvancedTag : "ÐÑмÑлÑ",
+DlgOpOther : "<Other>", //MISSING
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<ÐнооÑ
гүй>",
+DlgGenId : "Id",
+DlgGenLangDir : "Ð¥Ñлний ÑиглÑл",
+DlgGenLangDirLtr : "ÐүүнÑÑÑ Ð±Ð°ÑÑÑн (LTR)",
+DlgGenLangDirRtl : "ÐаÑÑÑÐ½Ð°Ð°Ñ Ð·Ò¯Ò¯Ð½ (RTL)",
+DlgGenLangCode : "Ð¥Ñлний код",
+DlgGenAccessKey : "ХолбоÑ
ÑүлÑ
Ò¯Ò¯Ñ",
+DlgGenName : "ÐÑÑ",
+DlgGenTabIndex : "Tab индекÑ",
+DlgGenLongDescr : "URL-Ñн ÑайлбаÑ",
+DlgGenClass : "Stylesheet клаÑÑÑÑд",
+DlgGenTitle : "ÐөвлөлдөÑ
гаÑÑиг",
+DlgGenContType : "ÐөвлөлдөÑ
ÑÓ©Ñлийн агÑÑлга",
+DlgGenLinkCharset : "ТÑмдÑÐ³Ñ Ð¾Ð½Ð¾Ð¾Ñ
нөөÑөд Ñ
олбогдÑон",
+DlgGenStyle : "ÐагваÑ",
+
+// Image Dialog
+DlgImgTitle : "ÐÑÑаг",
+DlgImgInfoTab : "ÐÑÑÐ°Ð³Ð½Ñ Ð¼ÑдÑÑлÑл",
+DlgImgBtnUpload : "Үүнийг ÑеÑвÑÑÑÒ¯Ò¯ илгÑÑ",
+DlgImgURL : "URL",
+DlgImgUpload : "Ð¥ÑÑлаÑ
",
+DlgImgAlt : "Ð¢Ð°Ð¹Ð»Ð±Ð°Ñ ÑекÑÑ",
+DlgImgWidth : "Ó¨Ñгөн",
+DlgImgHeight : "ӨндөÑ",
+DlgImgLockRatio : "Lock Ratio",
+DlgBtnResetSize : "Ñ
ÑмжÑÑ Ð´Ð°Ñ
ин онооÑ
",
+DlgImgBorder : "Ð¥Ò¯ÑÑÑ",
+DlgImgHSpace : "Хөндлөн зай",
+DlgImgVSpace : "ÐоÑоо зай",
+DlgImgAlign : "ÐгнÑÑ",
+DlgImgAlignLeft : "Ðүүн",
+DlgImgAlignAbsBottom: "Abs доод Ñалд",
+DlgImgAlignAbsMiddle: "Abs ÐÑнд Ñалд",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Ðоод Ñалд",
+DlgImgAlignMiddle : "ÐÑнд Ñалд",
+DlgImgAlignRight : "ÐаÑÑÑн",
+DlgImgAlignTextTop : "ТекÑÑ Ð´ÑÑÑ",
+DlgImgAlignTop : "ÐÑÑд Ñалд",
+DlgImgPreview : "УÑидÑлан Ñ
аÑаÑ
",
+DlgImgAlertUrl : "ÐÑÑÐ°Ð³Ð½Ñ URL-Ñн ÑÓ©Ñлийн Ñонгоно ÑÑ",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Ðинк",
+DlgLnkInfoTab : "Ðинкийн мÑдÑÑлÑл",
+DlgLnkTargetTab : "ÐайÑлал",
+
+DlgLnkType : "Ðинкийн ÑÓ©Ñөл",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "ÐÐ½Ñ Ñ
ÑÑдаÑандаÑ
Ñ
олбооÑ",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "ÐÑоÑокол",
+DlgLnkProtoOther : "<бÑÑад>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Ð¥Ð¾Ð»Ð±Ð¾Ð¾Ñ ÑонгоÑ
",
+DlgLnkAnchorByName : "ХолбооÑÑн нÑÑÑÑÑ",
+DlgLnkAnchorById : "ÐлемÑÐ½Ñ Id-гааÑ",
+DlgLnkNoAnchors : "<ÐаÑÐ¸Ð¼Ñ Ð±Ð¸Ñиг Ñ
олбооÑгүй байна>",
+DlgLnkEMail : "E-Mail ХаÑг",
+DlgLnkEMailSubject : "Message Subject",
+DlgLnkEMailBody : "Message-ийн агÑÑлга",
+DlgLnkUpload : "Ð¥ÑÑлаÑ
",
+DlgLnkBtnUpload : "Үүнийг ÑеÑвеÑÑÒ¯Ò¯ илгÑÑ",
+
+DlgLnkTarget : "ÐайÑлал",
+DlgLnkTargetFrame : "<ÐгÑÑлаÑ
Ñ
Ò¯ÑÑÑ>",
+DlgLnkTargetPopup : "<popup ÑонÑ
>",
+DlgLnkTargetBlank : "Ð¨Ð¸Ð½Ñ ÑонÑ
(_blank)",
+DlgLnkTargetParent : "ÐÑÑг ÑонÑ
(_parent)",
+DlgLnkTargetSelf : "ТөÑÑÑй ÑонÑ
(_self)",
+DlgLnkTargetTop : "Хамгийн ÑÒ¯Ñүүн байÑ
ÑонÑ
(_top)",
+DlgLnkTargetFrameName : "Target Frame Name", //MISSING
+DlgLnkPopWinName : "Popup ÑонÑ
Ð½Ñ Ð½ÑÑ",
+DlgLnkPopWinFeat : "Popup ÑонÑ
Ð½Ñ Ð¾Ð½Ñлог",
+DlgLnkPopResize : "Ð¥ÑмжÑÑ Ó©Ó©ÑÑлөÑ
",
+DlgLnkPopLocation : "Location Ñ
ÑÑÑг",
+DlgLnkPopMenu : "MeÐ½Ñ Ñ
ÑÑÑг",
+DlgLnkPopScroll : "СкÑол Ñ
ÑÑÑгүүд",
+DlgLnkPopStatus : "СÑаÑÑÑ Ñ
ÑÑÑг",
+DlgLnkPopToolbar : "ÐÐ°Ð³Ð°Ð¶Ð½Ñ Ñ
ÑÑÑг",
+DlgLnkPopFullScrn : "ЦонÑ
дүүÑгÑÑ
(IE)",
+DlgLnkPopDependent : "ХамааÑай (Netscape)",
+DlgLnkPopWidth : "Ó¨Ñгөн",
+DlgLnkPopHeight : "ӨндөÑ",
+DlgLnkPopLeft : "Ðүүн байÑлал",
+DlgLnkPopTop : "ÐÑÑд байÑлал",
+
+DlnLnkMsgNoUrl : "Ðинк URL-ÑÑ ÑÓ©ÑÓ©Ð»Ð¶Ò¯Ò¯Ð»Ð½Ñ Ò¯Ò¯",
+DlnLnkMsgNoEMail : "Ð-mail Ñ
аÑгаа ÑÓ©ÑÓ©Ð»Ð¶Ò¯Ò¯Ð»Ð½Ñ Ò¯Ò¯",
+DlnLnkMsgNoAnchor : "ХолбооÑоо Ñонгоно ÑÑ",
+
+// Color Dialog
+DlgColorTitle : "Өнгө ÑонгоÑ
",
+DlgColorBtnClear : "ЦÑвÑÑлÑÑ
",
+DlgColorHighlight : "Өнгө",
+DlgColorSelected : "СонгогдÑон",
+
+// Smiley Dialog
+DlgSmileyTitle : "ТодоÑÑ
Ð¾Ð¹Ð»Ð¾Ð»Ñ Ð¾ÑÑÑлаÑ
",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "ÐнÑгой ÑÑмдÑÐ³Ñ ÑонгоÑ
",
+
+// Table Dialog
+DlgTableTitle : "Ð¥Ò¯ÑнÑгÑ",
+DlgTableRows : "ÐÓ©Ñ",
+DlgTableColumns : "Ðагана",
+DlgTableBorder : "Ð¥Ò¯ÑÑÑний Ñ
ÑмжÑÑ",
+DlgTableAlign : "ÐгнÑÑ",
+DlgTableAlignNotSet : "<ÐнооÑ
гүй>",
+DlgTableAlignLeft : "Ðүүн Ñалд",
+DlgTableAlignCenter : "Төвд",
+DlgTableAlignRight : "ÐаÑÑÑн Ñалд",
+DlgTableWidth : "Ó¨Ñгөн",
+DlgTableWidthPx : "ÑÑг",
+DlgTableWidthPc : "Ñ
ÑвÑ",
+DlgTableHeight : "ӨндөÑ",
+DlgTableCellSpace : "ÐÒ¯Ñ
Ñ
ооÑондÑн зай",
+DlgTableCellPad : "ÐÒ¯Ñ
доÑоÑлоÑ
",
+DlgTableCaption : "ТайлбаÑ",
+
+// Table Cell Dialog
+DlgCellTitle : "ХооÑон зайн Ñинж ÑанаÑ",
+DlgCellWidth : "Ó¨Ñгөн",
+DlgCellWidthPx : "ÑÑг",
+DlgCellWidthPc : "Ñ
ÑвÑ",
+DlgCellHeight : "ӨндөÑ",
+DlgCellWordWrap : "Үг ÑаÑлаÑ
",
+DlgCellWordWrapNotSet : "<ÐнооÑ
гүй>",
+DlgCellWordWrapYes : "Тийм",
+DlgCellWordWrapNo : "Үгүй",
+DlgCellHorAlign : "ÐоÑоо ÑгнÑÑ",
+DlgCellHorAlignNotSet : "<ÐнооÑ
гүй>",
+DlgCellHorAlignLeft : "Ðүүн",
+DlgCellHorAlignCenter : "Төв",
+DlgCellHorAlignRight: "ÐаÑÑÑн",
+DlgCellVerAlign : "Хөндлөн ÑгнÑÑ",
+DlgCellVerAlignNotSet : "<ÐнооÑ
гүй>",
+DlgCellVerAlignTop : "ÐÑÑд Ñал",
+DlgCellVerAlignMiddle : "ÐÑнд",
+DlgCellVerAlignBottom : "Ðоод Ñал",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "ÐÐ¸Ð¹Ñ Ð¼Ó©Ñ",
+DlgCellCollSpan : "ÐÐ¸Ð¹Ñ Ð±Ð°Ð³Ð°Ð½Ð°",
+DlgCellBackColor : "Ð¤Ð¾Ð½Ð½Ñ Ó©Ð½Ð³Ó©",
+DlgCellBorderColor : "Ð¥Ò¯ÑÑÑний өнгө",
+DlgCellBtnSelect : "Сонго...",
+
+// Find Dialog
+DlgFindTitle : "ХайÑ
",
+DlgFindFindBtn : "ХайÑ
",
+DlgFindNotFoundMsg : "ХайÑан ÑекÑÑ Ð¾Ð»Ñонгүй.",
+
+// Replace Dialog
+DlgReplaceTitle : "СолиÑ
",
+DlgReplaceFindLbl : "ХайÑ
үг/Ò¯ÑÑг:",
+DlgReplaceReplaceLbl : "СолиÑ
үг:",
+DlgReplaceCaseChk : "ТÑнÑÑÑ
Ñөлөв",
+DlgReplaceReplaceBtn : "СолиÑ
",
+DlgReplaceReplAllBtn : "Ðүгдийг Ð½Ñ Ð¡Ð¾Ð»Ð¸Ñ
",
+DlgReplaceWordChk : "ТÑнÑÑÑ
бүÑÑн үг",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Ð¢Ð°Ð½Ñ browser-Ñн Ñ
амгаалалÑÑн ÑоÑ
иÑгоо editor-д авÑомаÑÐ°Ð°Ñ Ð±ÑÑлгаÑ
үйлдÑлийг зөвÑÓ©Ó©ÑÓ©Ñ
гүй байна. (Ctrl+V) ÑовÑÐ½Ñ Ñ
оÑлолÑг аÑиглана ÑÑ.",
+PasteErrorCut : "Ð¢Ð°Ð½Ñ browser-Ñн Ñ
амгаалалÑÑн ÑоÑ
иÑгоо editor-д авÑомаÑÐ°Ð°Ñ Ñ
айÑлаÑ
үйлдÑлийг зөвÑÓ©Ó©ÑÓ©Ñ
гүй байна. (Ctrl+X) ÑовÑÐ½Ñ Ñ
оÑлолÑг аÑиглана ÑÑ.",
+PasteErrorCopy : "Ð¢Ð°Ð½Ñ browser-Ñн Ñ
амгаалалÑÑн ÑоÑ
иÑгоо editor-д авÑомаÑÐ°Ð°Ñ Ñ
ÑÑлаÑ
үйлдÑлийг зөвÑÓ©Ó©ÑÓ©Ñ
гүй байна. (Ctrl+C) ÑовÑÐ½Ñ Ñ
оÑлолÑг аÑиглана ÑÑ.",
+
+PasteAsText : "Plain Text-ÑÑÑ Ð±ÑÑлгаÑ
",
+PasteFromWord : "Word-Ð¾Ð¾Ñ Ð±ÑÑлгаÑ
",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "ÐвÑомаÑааÑ",
+ColorMoreColors : "ÐÑмÑÐ»Ñ Ó©Ð½Ð³Ó©Ð½Ò¯Ò¯Ð´...",
+
+// Document Properties
+DocProps : "Document Properties", //MISSING
+
+// Anchor Dialog
+DlgAnchorTitle : "Anchor Properties", //MISSING
+DlgAnchorName : "Anchor Name", //MISSING
+DlgAnchorErrorName : "Please type the anchor name", //MISSING
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Not in dictionary", //MISSING
+DlgSpellChangeTo : "Change to", //MISSING
+DlgSpellBtnIgnore : "Ignore", //MISSING
+DlgSpellBtnIgnoreAll : "Ignore All", //MISSING
+DlgSpellBtnReplace : "Replace", //MISSING
+DlgSpellBtnReplaceAll : "Replace All", //MISSING
+DlgSpellBtnUndo : "Undo", //MISSING
+DlgSpellNoSuggestions : "- No suggestions -", //MISSING
+DlgSpellProgress : "Spell check in progress...", //MISSING
+DlgSpellNoMispell : "Spell check complete: No misspellings found", //MISSING
+DlgSpellNoChanges : "Spell check complete: No words changed", //MISSING
+DlgSpellOneChange : "Spell check complete: One word changed", //MISSING
+DlgSpellManyChanges : "Spell check complete: %1 words changed", //MISSING
+
+IeSpellDownload : "Spell checker not installed. Do you want to download it now?", //MISSING
+
+// Button Dialog
+DlgButtonText : "Text (Value)", //MISSING
+DlgButtonType : "Type", //MISSING
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Name", //MISSING
+DlgCheckboxValue : "Value", //MISSING
+DlgCheckboxSelected : "Selected", //MISSING
+
+// Form Dialog
+DlgFormName : "Name", //MISSING
+DlgFormAction : "Action", //MISSING
+DlgFormMethod : "Method", //MISSING
+
+// Select Field Dialog
+DlgSelectName : "Name", //MISSING
+DlgSelectValue : "Value", //MISSING
+DlgSelectSize : "Size", //MISSING
+DlgSelectLines : "lines", //MISSING
+DlgSelectChkMulti : "Allow multiple selections", //MISSING
+DlgSelectOpAvail : "Available Options", //MISSING
+DlgSelectOpText : "Text", //MISSING
+DlgSelectOpValue : "Value", //MISSING
+DlgSelectBtnAdd : "Add", //MISSING
+DlgSelectBtnModify : "Modify", //MISSING
+DlgSelectBtnUp : "Up", //MISSING
+DlgSelectBtnDown : "Down", //MISSING
+DlgSelectBtnSetValue : "Set as selected value", //MISSING
+DlgSelectBtnDelete : "Delete", //MISSING
+
+// Textarea Dialog
+DlgTextareaName : "Name", //MISSING
+DlgTextareaCols : "Columns", //MISSING
+DlgTextareaRows : "Rows", //MISSING
+
+// Text Field Dialog
+DlgTextName : "Name", //MISSING
+DlgTextValue : "Value", //MISSING
+DlgTextCharWidth : "Character Width", //MISSING
+DlgTextMaxChars : "Maximum Characters", //MISSING
+DlgTextType : "Type", //MISSING
+DlgTextTypeText : "Text", //MISSING
+DlgTextTypePass : "Password", //MISSING
+
+// Hidden Field Dialog
+DlgHiddenName : "Name", //MISSING
+DlgHiddenValue : "Value", //MISSING
+
+// Bulleted List Dialog
+BulletedListProp : "Bulleted List Properties", //MISSING
+NumberedListProp : "Numbered List Properties", //MISSING
+DlgLstType : "Type", //MISSING
+DlgLstTypeCircle : "Circle", //MISSING
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Square", //MISSING
+DlgLstTypeNumbers : "Numbers (1, 2, 3)", //MISSING
+DlgLstTypeLCase : "Lowercase Letters (a, b, c)", //MISSING
+DlgLstTypeUCase : "Uppercase Letters (A, B, C)", //MISSING
+DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)", //MISSING
+DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)", //MISSING
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General", //MISSING
+DlgDocBackTab : "Background", //MISSING
+DlgDocColorsTab : "Colors and Margins", //MISSING
+DlgDocMetaTab : "Meta Data", //MISSING
+
+DlgDocPageTitle : "Page Title", //MISSING
+DlgDocLangDir : "Language Direction", //MISSING
+DlgDocLangDirLTR : "Left to Right (LTR)", //MISSING
+DlgDocLangDirRTL : "Right to Left (RTL)", //MISSING
+DlgDocLangCode : "Language Code", //MISSING
+DlgDocCharSet : "Character Set Encoding", //MISSING
+DlgDocCharSetOther : "Other Character Set Encoding", //MISSING
+
+DlgDocDocType : "Document Type Heading", //MISSING
+DlgDocDocTypeOther : "Other Document Type Heading", //MISSING
+DlgDocIncXHTML : "Include XHTML Declarations", //MISSING
+DlgDocBgColor : "Background Color", //MISSING
+DlgDocBgImage : "Background Image URL", //MISSING
+DlgDocBgNoScroll : "Nonscrolling Background", //MISSING
+DlgDocCText : "Text", //MISSING
+DlgDocCLink : "Link", //MISSING
+DlgDocCVisited : "Visited Link", //MISSING
+DlgDocCActive : "Active Link", //MISSING
+DlgDocMargins : "Page Margins", //MISSING
+DlgDocMaTop : "Top", //MISSING
+DlgDocMaLeft : "Left", //MISSING
+DlgDocMaRight : "Right", //MISSING
+DlgDocMaBottom : "Bottom", //MISSING
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)", //MISSING
+DlgDocMeDescr : "Document Description", //MISSING
+DlgDocMeAuthor : "Author", //MISSING
+DlgDocMeCopy : "Copyright", //MISSING
+DlgDocPreview : "Preview", //MISSING
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "About", //MISSING
+DlgAboutBrowserInfoTab : "Browser Info", //MISSING
+DlgAboutVersion : "Ð¥ÑвилбаÑ",
+DlgAboutLicense : "GNU Ñөөн еÑөнÑ
ий нийÑийн лиÑензийн ангилалд багÑÑан зөвÑÓ©Ó©ÑөлÑÑй",
+DlgAboutInfo : "ÐÑдÑÑллÑÑÑ ÑÑÑлаÑ
"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/ms.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/ms.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/ms.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: ms.js
+ * Malay language file.
+ *
+ * File Authors:
+ * Fairul Izham Mohd Mokhlas (eg86 at hotmail.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Collapse Toolbar",
+ToolbarExpand : "Expand Toolbar",
+
+// Toolbar Items and Context Menu
+Save : "Simpan",
+NewPage : "Helaian Baru",
+Preview : "Prebiu",
+Cut : "Potong",
+Copy : "Salin",
+Paste : "Tampal",
+PasteText : "Tampal sebagai Text Biasa",
+PasteWord : "Tampal dari Word",
+Print : "Cetak",
+SelectAll : "Pilih Semua",
+RemoveFormat : "Buang Format",
+InsertLinkLbl : "Sambungan",
+InsertLink : "Masukkan/Sunting Sambungan",
+RemoveLink : "Buang Sambungan",
+Anchor : "Masukkan/Sunting Pautan",
+InsertImageLbl : "Gambar",
+InsertImage : "Masukkan/Sunting Gambar",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Jadual",
+InsertTable : "Masukkan/Sunting Jadual",
+InsertLineLbl : "Garisan",
+InsertLine : "Masukkan Garisan Membujur",
+InsertSpecialCharLbl: "Huruf Istimewa",
+InsertSpecialChar : "Masukkan Huruf Istimewa",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Masukkan Smiley",
+About : "Tentang FCKeditor",
+Bold : "Bold",
+Italic : "Italic",
+Underline : "Underline",
+StrikeThrough : "Strike Through",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Jajaran Kiri",
+CenterJustify : "Jajaran Tengah",
+RightJustify : "Jajaran Kanan",
+BlockJustify : "Jajaran Blok",
+DecreaseIndent : "Kurangkan Inden",
+IncreaseIndent : "Tambahkan Inden",
+Undo : "Batalkan",
+Redo : "Ulangkan",
+NumberedListLbl : "Senarai bernombor",
+NumberedList : "Masukkan/Sunting Senarai bernombor",
+BulletedListLbl : "Senarai tidak bernombor",
+BulletedList : "Masukkan/Sunting Senarai tidak bernombor",
+ShowTableBorders : "Tunjukkan Border Jadual",
+ShowDetails : "Tunjukkan Butiran",
+Style : "Stail",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "Saiz",
+TextColor : "Warna Text",
+BGColor : "Warna Latarbelakang",
+Source : "Sumber",
+Find : "Cari",
+Replace : "Ganti",
+SpellCheck : "Semak Ejaan",
+UniversalKeyboard : "Papan Kekunci Universal",
+
+Form : "Borang",
+Checkbox : "Checkbox",
+RadioButton : "Butang Radio",
+TextField : "Text Field",
+Textarea : "Textarea",
+HiddenField : "Field Tersembunyi",
+Button : "Butang",
+SelectionField : "Field Pilihan",
+ImageButton : "Butang Bergambar",
+
+// Context Menu
+EditLink : "Sunting Sambungan",
+InsertRow : "Masukkan Baris",
+DeleteRows : "Buangkan Baris",
+InsertColumn : "Masukkan Lajur",
+DeleteColumns : "Buangkan Lajur",
+InsertCell : "Masukkan Sel",
+DeleteCells : "Buangkan Sel-sel",
+MergeCells : "Cantumkan Sel-sel",
+SplitCell : "Bahagikan Sel",
+CellProperties : "Ciri-ciri Sel",
+TableProperties : "Ciri-ciri Jadual",
+ImageProperties : "Ciri-ciri Gambar",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "Ciri-ciri Pautan",
+ButtonProp : "Ciri-ciri Butang",
+CheckboxProp : "Ciri-ciri Checkbox",
+HiddenFieldProp : "Ciri-ciri Field Tersembunyi",
+RadioButtonProp : "Ciri-ciri Butang Radio",
+ImageButtonProp : "Ciri-ciri Butang Bergambar",
+TextFieldProp : "Ciri-ciri Text Field",
+SelectionFieldProp : "Ciri-ciri Selection Field",
+TextareaProp : "Ciri-ciri Textarea",
+FormProp : "Ciri-ciri Borang",
+
+FontFormats : "Normal;Telah Diformat;Alamat;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Perenggan (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Memproses XHTML. Sila tunggu...",
+Done : "Siap",
+PasteWordConfirm : "Text yang anda hendak tampal adalah berasal dari Word. Adakah anda mahu membuang semua format Word sebelum tampal ke dalam text?",
+NotCompatiblePaste : "Arahan ini bole dilakukan jika anda mempuunyai Internet Explorer version 5.5 atau yang lebih tinggi. Adakah anda hendak tampal text tanpa membuang format Word?",
+UnknownToolbarItem : "Toolbar item tidak diketahui\"%1\"",
+UnknownCommand : "Arahan tidak diketahui \"%1\"",
+NotImplemented : "Arahan tidak terdapat didalam sistem",
+UnknownToolbarSet : "Set toolbar \"%1\" tidak wujud",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Batal",
+DlgBtnClose : "Tutup",
+DlgBtnBrowseServer : "Browse Server",
+DlgAdvancedTag : "Advanced",
+DlgOpOther : "<Lain-lain>",
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<tidak di set>",
+DlgGenId : "Id",
+DlgGenLangDir : "Arah Tulisan",
+DlgGenLangDirLtr : "Kiri ke Kanan (LTR)",
+DlgGenLangDirRtl : "Kanan ke Kiri (RTL)",
+DlgGenLangCode : "Kod Bahasa",
+DlgGenAccessKey : "Kunci Akses",
+DlgGenName : "Nama",
+DlgGenTabIndex : "Indeks Tab ",
+DlgGenLongDescr : "Butiran Panjang URL",
+DlgGenClass : "Kelas-kelas Stylesheet",
+DlgGenTitle : "Tajuk Makluman",
+DlgGenContType : "Jenis Kandungan Makluman",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Stail",
+
+// Image Dialog
+DlgImgTitle : "Ciri-ciri Imej",
+DlgImgInfoTab : "Info Imej",
+DlgImgBtnUpload : "Hantar ke Server",
+DlgImgURL : "URL",
+DlgImgUpload : "Muat Naik",
+DlgImgAlt : "Text Alternatif",
+DlgImgWidth : "Lebar",
+DlgImgHeight : "Tinggi",
+DlgImgLockRatio : "Tetapkan Nisbah",
+DlgBtnResetSize : "Saiz Set Semula",
+DlgImgBorder : "Border",
+DlgImgHSpace : "Ruang Melintang",
+DlgImgVSpace : "Ruang Menegak",
+DlgImgAlign : "Jajaran",
+DlgImgAlignLeft : "Kiri",
+DlgImgAlignAbsBottom: "Bawah Mutlak",
+DlgImgAlignAbsMiddle: "Pertengahan Mutlak",
+DlgImgAlignBaseline : "Garis Dasar",
+DlgImgAlignBottom : "Bawah",
+DlgImgAlignMiddle : "Pertengahan",
+DlgImgAlignRight : "Kanan",
+DlgImgAlignTextTop : "Atas Text",
+DlgImgAlignTop : "Atas",
+DlgImgPreview : "Prebiu",
+DlgImgAlertUrl : "Sila taip URL untuk fail gambar",
+DlgImgLinkTab : "Sambungan",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "Sambungan",
+DlgLnkInfoTab : "Butiran Sambungan",
+DlgLnkTargetTab : "Sasaran",
+
+DlgLnkType : "Jenis Sambungan",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Pautan dalam muka surat ini",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<lain-lain>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Sila pilih pautan",
+DlgLnkAnchorByName : "dengan menggunakan nama pautan",
+DlgLnkAnchorById : "dengan menggunakan ID elemen",
+DlgLnkNoAnchors : "<Tiada pautan terdapat dalam dokumen ini>",
+DlgLnkEMail : "Alamat E-Mail",
+DlgLnkEMailSubject : "Subjek Mesej",
+DlgLnkEMailBody : "Isi Kandungan Mesej",
+DlgLnkUpload : "Muat Naik",
+DlgLnkBtnUpload : "Hantar ke Server",
+
+DlgLnkTarget : "Sasaran",
+DlgLnkTargetFrame : "<bingkai>",
+DlgLnkTargetPopup : "<tetingkap popup>",
+DlgLnkTargetBlank : "Tetingkap Baru (_blank)",
+DlgLnkTargetParent : "Tetingkap Parent (_parent)",
+DlgLnkTargetSelf : "Tetingkap yang Sama (_self)",
+DlgLnkTargetTop : "Tetingkap yang paling atas (_top)",
+DlgLnkTargetFrameName : "Nama Bingkai Sasaran",
+DlgLnkPopWinName : "Nama Tetingkap Popup",
+DlgLnkPopWinFeat : "Ciri Tetingkap Popup",
+DlgLnkPopResize : "Saiz bolehubah",
+DlgLnkPopLocation : "Bar Lokasi",
+DlgLnkPopMenu : "Bar Menu",
+DlgLnkPopScroll : "Bar-bar skrol",
+DlgLnkPopStatus : "Bar Status",
+DlgLnkPopToolbar : "Toolbar",
+DlgLnkPopFullScrn : "Skrin Penuh (IE)",
+DlgLnkPopDependent : "Bergantungan (Netscape)",
+DlgLnkPopWidth : "Lebar",
+DlgLnkPopHeight : "Tinggi",
+DlgLnkPopLeft : "Posisi Kiri",
+DlgLnkPopTop : "Posisi Atas",
+
+DlnLnkMsgNoUrl : "Sila taip sambungan URL",
+DlnLnkMsgNoEMail : "Sila taip alamat e-mail",
+DlnLnkMsgNoAnchor : "Sila pilih pautan berkenaaan",
+
+// Color Dialog
+DlgColorTitle : "Pilihan Warna",
+DlgColorBtnClear : "Nyahwarna",
+DlgColorHighlight : "Terang",
+DlgColorSelected : "Dipilih",
+
+// Smiley Dialog
+DlgSmileyTitle : "Masukkan Smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Sila pilih huruf istimewa",
+
+// Table Dialog
+DlgTableTitle : "Ciri-ciri Jadual",
+DlgTableRows : "Barisan",
+DlgTableColumns : "Jaluran",
+DlgTableBorder : "Saiz Border",
+DlgTableAlign : "Penjajaran",
+DlgTableAlignNotSet : "<Tidak diset>",
+DlgTableAlignLeft : "Kiri",
+DlgTableAlignCenter : "Tengah",
+DlgTableAlignRight : "Kanan",
+DlgTableWidth : "Lebar",
+DlgTableWidthPx : "piksel-piksel",
+DlgTableWidthPc : "peratus",
+DlgTableHeight : "Tinggi",
+DlgTableCellSpace : "Ruangan Antara Sel",
+DlgTableCellPad : "Tambahan Ruang Sel",
+DlgTableCaption : "Keterangan",
+
+// Table Cell Dialog
+DlgCellTitle : "Ciri-ciri Sel",
+DlgCellWidth : "Lebar",
+DlgCellWidthPx : "piksel-piksel",
+DlgCellWidthPc : "peratus",
+DlgCellHeight : "Tinggi",
+DlgCellWordWrap : "Mengulung Perkataan",
+DlgCellWordWrapNotSet : "<Tidak diset>",
+DlgCellWordWrapYes : "Ya",
+DlgCellWordWrapNo : "Tidak",
+DlgCellHorAlign : "Jajaran Membujur",
+DlgCellHorAlignNotSet : "<Tidak diset>",
+DlgCellHorAlignLeft : "Kiri",
+DlgCellHorAlignCenter : "Tengah",
+DlgCellHorAlignRight: "Kanan",
+DlgCellVerAlign : "Jajaran Menegak",
+DlgCellVerAlignNotSet : "<Tidak diset>",
+DlgCellVerAlignTop : "Atas",
+DlgCellVerAlignMiddle : "Tengah",
+DlgCellVerAlignBottom : "Bawah",
+DlgCellVerAlignBaseline : "Garis Dasar",
+DlgCellRowSpan : "Penggunaan Baris",
+DlgCellCollSpan : "Penggunaan Lajur",
+DlgCellBackColor : "Warna Latarbelakang",
+DlgCellBorderColor : "Warna Border",
+DlgCellBtnSelect : "Pilih...",
+
+// Find Dialog
+DlgFindTitle : "Carian",
+DlgFindFindBtn : "Cari",
+DlgFindNotFoundMsg : "Text yang dicari tidak dijumpai.",
+
+// Replace Dialog
+DlgReplaceTitle : "Gantian",
+DlgReplaceFindLbl : "Perkataan yang dicari:",
+DlgReplaceReplaceLbl : "Diganti dengan:",
+DlgReplaceCaseChk : "Padanan case huruf",
+DlgReplaceReplaceBtn : "Ganti",
+DlgReplaceReplAllBtn : "Ganti semua",
+DlgReplaceWordChk : "Padana Keseluruhan perkataan",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Keselamatan perisian browser anda tidak membenarkan operasi tampalan text/imej. Sila gunakan papan kekunci (Ctrl+V).",
+PasteErrorCut : "Keselamatan perisian browser anda tidak membenarkan operasi suntingan text/imej. Sila gunakan papan kekunci (Ctrl+X).",
+PasteErrorCopy : "Keselamatan perisian browser anda tidak membenarkan operasi salinan text/imej. Sila gunakan papan kekunci (Ctrl+C).",
+
+PasteAsText : "Tampal sebagai text biasa",
+PasteFromWord : "Tampal dari perisian \"Word\"",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "Otomatik",
+ColorMoreColors : "Warna lain-lain...",
+
+// Document Properties
+DocProps : "Ciri-ciri dokumen",
+
+// Anchor Dialog
+DlgAnchorTitle : "Ciri-ciri Pautan",
+DlgAnchorName : "Nama Pautan",
+DlgAnchorErrorName : "Sila taip nama pautan",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Tidak terdapat didalam kamus",
+DlgSpellChangeTo : "Tukarkan kepada",
+DlgSpellBtnIgnore : "Biar",
+DlgSpellBtnIgnoreAll : "Biarkan semua",
+DlgSpellBtnReplace : "Ganti",
+DlgSpellBtnReplaceAll : "Gantikan Semua",
+DlgSpellBtnUndo : "Batalkan",
+DlgSpellNoSuggestions : "- Tiada cadangan -",
+DlgSpellProgress : "Pemeriksaan ejaan sedang diproses...",
+DlgSpellNoMispell : "Pemeriksaan ejaan siap: Tiada salah ejaan",
+DlgSpellNoChanges : "Pemeriksaan ejaan siap: Tiada perkataan diubah",
+DlgSpellOneChange : "Pemeriksaan ejaan siap: Satu perkataan telah diubah",
+DlgSpellManyChanges : "Pemeriksaan ejaan siap: %1 perkataan diubah",
+
+IeSpellDownload : "Pemeriksa ejaan tidak dipasang. Adakah anda mahu muat turun sekarang?",
+
+// Button Dialog
+DlgButtonText : "Teks (Nilai)",
+DlgButtonType : "Jenis",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nama",
+DlgCheckboxValue : "Nilai",
+DlgCheckboxSelected : "Dipilih",
+
+// Form Dialog
+DlgFormName : "Nama",
+DlgFormAction : "Tindakan borang",
+DlgFormMethod : "Cara borang dihantar",
+
+// Select Field Dialog
+DlgSelectName : "Nama",
+DlgSelectValue : "Nilai",
+DlgSelectSize : "Saiz",
+DlgSelectLines : "garisan",
+DlgSelectChkMulti : "Benarkan pilihan pelbagai",
+DlgSelectOpAvail : "Pilihan sediada",
+DlgSelectOpText : "Teks",
+DlgSelectOpValue : "Nilai",
+DlgSelectBtnAdd : "Tambah Pilihan",
+DlgSelectBtnModify : "Ubah Pilihan",
+DlgSelectBtnUp : "Naik ke atas",
+DlgSelectBtnDown : "Turun ke bawah",
+DlgSelectBtnSetValue : "Set sebagai nilai terpilih",
+DlgSelectBtnDelete : "Padam",
+
+// Textarea Dialog
+DlgTextareaName : "Nama",
+DlgTextareaCols : "Lajur",
+DlgTextareaRows : "Baris",
+
+// Text Field Dialog
+DlgTextName : "Nama",
+DlgTextValue : "Nilai",
+DlgTextCharWidth : "Lebar isian",
+DlgTextMaxChars : "Isian Maksimum",
+DlgTextType : "Jenis",
+DlgTextTypeText : "Teks",
+DlgTextTypePass : "Kata Laluan",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nama",
+DlgHiddenValue : "Nilai",
+
+// Bulleted List Dialog
+BulletedListProp : "Ciri-ciri senarai berpeluru",
+NumberedListProp : "Ciri-ciri senarai bernombor",
+DlgLstType : "Jenis",
+DlgLstTypeCircle : "Circle",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Square",
+DlgLstTypeNumbers : "Nombor-nombor (1, 2, 3)",
+DlgLstTypeLCase : "Huruf-huruf kecil (a, b, c)",
+DlgLstTypeUCase : "Huruf-huruf besar (A, B, C)",
+DlgLstTypeSRoman : "Nombor Roman Kecil (i, ii, iii)",
+DlgLstTypeLRoman : "Nombor Roman Besar (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Umum",
+DlgDocBackTab : "Latarbelakang",
+DlgDocColorsTab : "Warna dan margin",
+DlgDocMetaTab : "Data Meta",
+
+DlgDocPageTitle : "Tajuk Muka Surat",
+DlgDocLangDir : "Arah Tulisan",
+DlgDocLangDirLTR : "Kiri ke Kanan (LTR)",
+DlgDocLangDirRTL : "Kanan ke Kiri (RTL)",
+DlgDocLangCode : "Kod Bahasa",
+DlgDocCharSet : "Enkod Set Huruf",
+DlgDocCharSetOther : "Enkod Set Huruf yang Lain",
+
+DlgDocDocType : "Jenis Kepala Dokumen",
+DlgDocDocTypeOther : "Jenis Kepala Dokumen yang Lain",
+DlgDocIncXHTML : "Masukkan pemula kod XHTML",
+DlgDocBgColor : "Warna Latarbelakang",
+DlgDocBgImage : "URL Gambar Latarbelakang",
+DlgDocBgNoScroll : "Imej Latarbelakang tanpa Skrol",
+DlgDocCText : "Teks",
+DlgDocCLink : "Sambungan",
+DlgDocCVisited : "Sambungan telah Dilawati",
+DlgDocCActive : "Sambungan Aktif",
+DlgDocMargins : "Margin Muka Surat",
+DlgDocMaTop : "Atas",
+DlgDocMaLeft : "Kiri",
+DlgDocMaRight : "Kanan",
+DlgDocMaBottom : "Bawah",
+DlgDocMeIndex : "Kata Kunci Indeks Dokumen (dipisahkan oleh koma)",
+DlgDocMeDescr : "Keterangan Dokumen",
+DlgDocMeAuthor : "Penulis",
+DlgDocMeCopy : "Hakcipta",
+DlgDocPreview : "Prebiu",
+
+// Templates Dialog
+Templates : "Templat",
+DlgTemplatesTitle : "Templat Kandungan",
+DlgTemplatesSelMsg : "Sila pilih templat untuk dibuka oleh editor<br>(kandungan sebenar akan hilang):",
+DlgTemplatesLoading : "Senarai Templat sedang diproses. Sila Tunggu...",
+DlgTemplatesNoTpl : "(Tiada Templat Disimpan)",
+
+// About Dialog
+DlgAboutAboutTab : "Tentang",
+DlgAboutBrowserInfoTab : "Maklumat Perisian Browser",
+DlgAboutVersion : "versi",
+DlgAboutLicense : "Perlesenan dibawah terma GNU Lesser General Public License",
+DlgAboutInfo : "Untuk maklumat lanjut sila pergi ke"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/nl.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/nl.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/nl.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: nl.js
+ * Dutch language file.
+ *
+ * File Authors:
+ * Bram Crins (bcrins at realdesign.nl)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Menubalk inklappen",
+ToolbarExpand : "Menubalk uitklappen",
+
+// Toolbar Items and Context Menu
+Save : "Opslaan",
+NewPage : "Nieuwe pagina",
+Preview : "Voorbeeld",
+Cut : "Knippen",
+Copy : "Kopiëren",
+Paste : "Plakken",
+PasteText : "Plakken als pure tekst",
+PasteWord : "Plakken Word-gegevens",
+Print : "Printen",
+SelectAll : "Alles selecteren",
+RemoveFormat : "Verwijderen opmaak",
+InsertLinkLbl : "Link",
+InsertLink : "Invoegen/Wijzigen link",
+RemoveLink : "Verwijderen link",
+Anchor : "Interne link",
+InsertImageLbl : "Afbeelding",
+InsertImage : "Invoegen/Wijzigen afbeelding",
+InsertFlashLbl : "Flash",
+InsertFlash : "Invoegen/Wijzigen Flash",
+InsertTableLbl : "Tabel",
+InsertTable : "Invoegen/Wijzigen tabel",
+InsertLineLbl : "Lijn",
+InsertLine : "Invoegen horizontale lijn",
+InsertSpecialCharLbl: "Speciale tekens",
+InsertSpecialChar : "Speciaal teken invoegen",
+InsertSmileyLbl : "Emoticon",
+InsertSmiley : "Emoticon invoegen",
+About : "Over FCKeditor",
+Bold : "Vet",
+Italic : "Schuingedrukt",
+Underline : "Onderstreept",
+StrikeThrough : "Doorhalen",
+Subscript : "Subscript",
+Superscript : "Superscript",
+LeftJustify : "Links uitlijnen",
+CenterJustify : "Centreren",
+RightJustify : "Rechts uitlijnen",
+BlockJustify : "Uitvullen",
+DecreaseIndent : "Oplopenend",
+IncreaseIndent : "Aflopend",
+Undo : "Ongedaan maken",
+Redo : "Opnieuw",
+NumberedListLbl : "Genummerde lijst",
+NumberedList : "Invoegen/Verwijderen genummerde lijst",
+BulletedListLbl : "Opsomming",
+BulletedList : "Invoegen/Verwijderen opsomming",
+ShowTableBorders : "Randen tabel weergeven",
+ShowDetails : "Details weergeven",
+Style : "Stijl",
+FontFormat : "Opmaak",
+Font : "Lettertype",
+FontSize : "Grootte",
+TextColor : "Tekst kleur",
+BGColor : "Achtergrond kleur",
+Source : "Code",
+Find : "Zoeken",
+Replace : "Vervangen",
+SpellCheck : "Spellings controle",
+UniversalKeyboard : "Universeel toetsenbord",
+
+Form : "Formulier",
+Checkbox : "Aanvink vakje",
+RadioButton : "Selectie vakje",
+TextField : "Tekstveld",
+Textarea : "Tekstveld (groot)",
+HiddenField : "Verborgen veld",
+Button : "Knop",
+SelectionField : "Selectieveld",
+ImageButton : "Grafische knop",
+
+// Context Menu
+EditLink : "Link wijzigen",
+InsertRow : "Rij invoegen",
+DeleteRows : "Rijen verwijderen",
+InsertColumn : "Kolom invoegen",
+DeleteColumns : "Kolommen verwijderen",
+InsertCell : "Cel",
+DeleteCells : "Cellen verwijderen",
+MergeCells : "Cellen samenvoegen",
+SplitCell : "Cellen splitsen",
+CellProperties : "Eigenschappen cel",
+TableProperties : "Eigenschappen tabel",
+ImageProperties : "Eigenschappen afbeelding",
+FlashProperties : "Eigenschappen Flash",
+
+AnchorProp : "Eigenschappen interne link",
+ButtonProp : "Eigenschappen knop",
+CheckboxProp : "Eigenschappen aanvink vakje",
+HiddenFieldProp : "Eigenschappen verborgen veld",
+RadioButtonProp : "Eigenschappen selectie vakje",
+ImageButtonProp : "Eigenschappen grafische knop",
+TextFieldProp : "Eigenschappen tekstveld",
+SelectionFieldProp : "Eigenschappen selectieveld",
+TextareaProp : "Eigenschappen tekstveld (groot)",
+FormProp : "Eigenschappen formulier",
+
+FontFormats : "Normaal;Met opmaak;Adres;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Verwerken XHTML. Even geduld aub...",
+Done : "Klaar",
+PasteWordConfirm : "De tekst die je plakt lijkt gekopiëerd uit Word. Wil je de tekst opschonen voordat er geplakt wordt?",
+NotCompatiblePaste : "Deze opdracht is beschikbaar voor Internet Explorer versie 5.5 of hoger. Wil je plakken zonder opschonen?",
+UnknownToolbarItem : "Onbekende item op menubalk \"%1\"",
+UnknownCommand : "Onbekende opdracht naam \"%1\"",
+NotImplemented : "Opdracht niet geïmplementeerd.",
+UnknownToolbarSet : "Menubalk \"%1\" bestaat niet.",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Annuleren",
+DlgBtnClose : "Afsluiten",
+DlgBtnBrowseServer : "Bladeren op server",
+DlgAdvancedTag : "Geavanceerd",
+DlgOpOther : "<Anders>",
+DlgInfoTab : "Informatie",
+DlgAlertUrl : "Geef URL op",
+
+// General Dialogs Labels
+DlgGenNotSet : "<niet ingevuld>",
+DlgGenId : "Kenmerk",
+DlgGenLangDir : "Richting taal",
+DlgGenLangDirLtr : "Links naar Rechts (LTR)",
+DlgGenLangDirRtl : "Rechts naar Links (RTL)",
+DlgGenLangCode : "Code taal",
+DlgGenAccessKey : "Toegangs toets",
+DlgGenName : "Naam",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Lange omschrijving URL",
+DlgGenClass : "Stylesheet Klassen",
+DlgGenTitle : "Advisory titel",
+DlgGenContType : "Advisory Content type",
+DlgGenLinkCharset : "Gelinkte bron karakterset",
+DlgGenStyle : "Stijl",
+
+// Image Dialog
+DlgImgTitle : "Eigenschappen afbeelding",
+DlgImgInfoTab : "Informatie afbeelding",
+DlgImgBtnUpload : "Naar server verzenden",
+DlgImgURL : "URL",
+DlgImgUpload : "Upload",
+DlgImgAlt : "Alternatieve tekst",
+DlgImgWidth : "Breedte",
+DlgImgHeight : "Hoogte",
+DlgImgLockRatio : "Afmetingen vergrendelen",
+DlgBtnResetSize : "Afmetingen resetten",
+DlgImgBorder : "Rand",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Uitlijning",
+DlgImgAlignLeft : "Links",
+DlgImgAlignAbsBottom: "Abs beneden",
+DlgImgAlignAbsMiddle: "Abs midden",
+DlgImgAlignBaseline : "Basislijn",
+DlgImgAlignBottom : "Beneden",
+DlgImgAlignMiddle : "Midden",
+DlgImgAlignRight : "Rechts",
+DlgImgAlignTextTop : "Tekst boven",
+DlgImgAlignTop : "Boven",
+DlgImgPreview : "Voorbeeld",
+DlgImgAlertUrl : "Geeft de URL van de afbeelding",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Eigenschappen Flash",
+DlgFlashChkPlay : "Automatisch afspelen",
+DlgFlashChkLoop : "Herhalen",
+DlgFlashChkMenu : "Flaschmenu\'s inschakelen",
+DlgFlashScale : "Verschalen",
+DlgFlashScaleAll : "Alles tonen",
+DlgFlashScaleNoBorder : "Geen rand",
+DlgFlashScaleFit : "Precies passen",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Informatie link",
+DlgLnkTargetTab : "Doel",
+
+DlgLnkType : "Type link",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Interne link in pagina",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocol",
+DlgLnkProtoOther : "<anders>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Kies een interne link",
+DlgLnkAnchorByName : "Op naam interne link",
+DlgLnkAnchorById : "Op kenmerk interne link",
+DlgLnkNoAnchors : "<Geen interne links in document gevonden.>",
+DlgLnkEMail : "E-Mail adres",
+DlgLnkEMailSubject : "Onderwerp bericht",
+DlgLnkEMailBody : "Inhoud bericht",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "Naar de server versturen.",
+
+DlgLnkTarget : "Doel",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<popup window>",
+DlgLnkTargetBlank : "Nieuw venster (_blank)",
+DlgLnkTargetParent : "Ouder venster (_parent)",
+DlgLnkTargetSelf : "Zelfde venster (_self)",
+DlgLnkTargetTop : "Browser venster (_top)",
+DlgLnkTargetFrameName : "Naam doelframe",
+DlgLnkPopWinName : "Naam popup venster",
+DlgLnkPopWinFeat : "Instellingen popup venster",
+DlgLnkPopResize : "Grootte wijzigen",
+DlgLnkPopLocation : "Locatie menu",
+DlgLnkPopMenu : "Menu balk",
+DlgLnkPopScroll : "Schuifbalken",
+DlgLnkPopStatus : "Statusbalk",
+DlgLnkPopToolbar : "Menubalk",
+DlgLnkPopFullScrn : "Volledig scherm (IE)",
+DlgLnkPopDependent : "Afhankelijk (Netscape)",
+DlgLnkPopWidth : "Breedte",
+DlgLnkPopHeight : "Hoogte",
+DlgLnkPopLeft : "Positie links",
+DlgLnkPopTop : "Positie top",
+
+DlnLnkMsgNoUrl : "Geeft de link van de URL",
+DlnLnkMsgNoEMail : "Geef een e-mail adres",
+DlnLnkMsgNoAnchor : "Selecteer een interne link",
+
+// Color Dialog
+DlgColorTitle : "Selecteer kleur",
+DlgColorBtnClear : "Opschonen",
+DlgColorHighlight : "Accentueren",
+DlgColorSelected : "Geselecteerd",
+
+// Smiley Dialog
+DlgSmileyTitle : "Invoegen smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Selecteer speciaal karakter",
+
+// Table Dialog
+DlgTableTitle : "Eigenschappen tabel",
+DlgTableRows : "Rijen",
+DlgTableColumns : "Kolommen",
+DlgTableBorder : "Breedte rand",
+DlgTableAlign : "Uitlijning",
+DlgTableAlignNotSet : "<Niet ingegven>",
+DlgTableAlignLeft : "Links",
+DlgTableAlignCenter : "Centreren",
+DlgTableAlignRight : "Rechts",
+DlgTableWidth : "Breedte",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "procent",
+DlgTableHeight : "Hoogte",
+DlgTableCellSpace : "Afstand tussen cellen",
+DlgTableCellPad : "Afstand vanaf rand cel",
+DlgTableCaption : "Naam",
+
+// Table Cell Dialog
+DlgCellTitle : "Eigenschappen cel",
+DlgCellWidth : "Breedte",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "procent",
+DlgCellHeight : "Hoogte",
+DlgCellWordWrap : "Afbreken woorden",
+DlgCellWordWrapNotSet : "<Niet ingegeven>",
+DlgCellWordWrapYes : "Ja",
+DlgCellWordWrapNo : "Nee",
+DlgCellHorAlign : "Horizontale uitlijning",
+DlgCellHorAlignNotSet : "<Niet ingegeven>",
+DlgCellHorAlignLeft : "Links",
+DlgCellHorAlignCenter : "Centreren",
+DlgCellHorAlignRight: "Rechts",
+DlgCellVerAlign : "Verticale uitlijning",
+DlgCellVerAlignNotSet : "<Niet ingegeven>",
+DlgCellVerAlignTop : "Boven",
+DlgCellVerAlignMiddle : "Midden",
+DlgCellVerAlignBottom : "Beneden",
+DlgCellVerAlignBaseline : "Basislijn",
+DlgCellRowSpan : "Overkoepeling rijen",
+DlgCellCollSpan : "Overkoepeling kolommen",
+DlgCellBackColor : "Kleur achterrond",
+DlgCellBorderColor : "Kleur rand",
+DlgCellBtnSelect : "Selecteren...",
+
+// Find Dialog
+DlgFindTitle : "Vinden",
+DlgFindFindBtn : "Vinden",
+DlgFindNotFoundMsg : "De opgegeven tekst is niet gevonden.",
+
+// Replace Dialog
+DlgReplaceTitle : "Vervangen",
+DlgReplaceFindLbl : "Zoeken naar:",
+DlgReplaceReplaceLbl : "Vervangen met:",
+DlgReplaceCaseChk : "Hoofdlettergevoelig",
+DlgReplaceReplaceBtn : "Vervangen",
+DlgReplaceReplAllBtn : "Alles vervangen",
+DlgReplaceWordChk : "Hele woord moet voorkomen",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "De beveiligingsinstelling van de browser verhinderen het automatisch plakken. Gebruik Ctrl+V op het toetsenbord.",
+PasteErrorCut : "De beveiligingsinstelling van de browser verhinderen het automatisch knippen. Gebruik Ctrl+X op het toetsenbord.",
+PasteErrorCopy : "De beveiligingsinstelling van de browser verhinderen het automatisch kopieëren. Gebruik Ctrl+C op het toetsenbord.",
+
+PasteAsText : "Plakken als platte tekst",
+PasteFromWord : "Plakken van Word-gegevens",
+
+DlgPasteMsg2 : "Plak de tekst in de volgende box gebruikmakend van je toetstenbord (<STRONG>Ctrl+V</STRONG>) en kies <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Negeer Font Face definities",
+DlgPasteRemoveStyles : "Verwijder Styles definities",
+DlgPasteCleanBox : "Box opschonen",
+
+
+// Color Picker
+ColorAutomatic : "Automatisch",
+ColorMoreColors : "Meer kleuren...",
+
+// Document Properties
+DocProps : "Eigenschappen document",
+
+// Anchor Dialog
+DlgAnchorTitle : "Eigenschappen interne link",
+DlgAnchorName : "Naam interne link",
+DlgAnchorErrorName : "Geef de naam van de interne link op",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Niet in het woordenboek",
+DlgSpellChangeTo : "Wijzig in",
+DlgSpellBtnIgnore : "Negeren",
+DlgSpellBtnIgnoreAll : "Alles negeren",
+DlgSpellBtnReplace : "Vervangen",
+DlgSpellBtnReplaceAll : "Alles vervangen",
+DlgSpellBtnUndo : "Ongedaan maken",
+DlgSpellNoSuggestions : "-Geen suggesties-",
+DlgSpellProgress : "Bezig met spellingscontrole...",
+DlgSpellNoMispell : "Klaar met spellingscontrole: Geen fouten gevonden",
+DlgSpellNoChanges : "Klaar met spellingscontrole: Geen woorden aangepast",
+DlgSpellOneChange : "Klaar met spellingscontrole: 1 woord aangepast",
+DlgSpellManyChanges : "Klaar met spellingscontrole: %1 woorden aangepast",
+
+IeSpellDownload : "Spellingscontrole niet geïnstalleerd. Wil je deze nu downloaden?",
+
+// Button Dialog
+DlgButtonText : "Tekst (waarde)",
+DlgButtonType : "Soort",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Naam",
+DlgCheckboxValue : "Waarde",
+DlgCheckboxSelected : "Geselecteerd",
+
+// Form Dialog
+DlgFormName : "Naam",
+DlgFormAction : "Actie",
+DlgFormMethod : "Methode",
+
+// Select Field Dialog
+DlgSelectName : "Naam",
+DlgSelectValue : "Waarde",
+DlgSelectSize : "Grootte",
+DlgSelectLines : "Regels",
+DlgSelectChkMulti : "Gecombineerde selecties toestaan",
+DlgSelectOpAvail : "Beschikbare opties",
+DlgSelectOpText : "Tekst",
+DlgSelectOpValue : "Waarde",
+DlgSelectBtnAdd : "Toevoegen",
+DlgSelectBtnModify : "Wijzigen",
+DlgSelectBtnUp : "Omhoog",
+DlgSelectBtnDown : "Omlaag",
+DlgSelectBtnSetValue : "Als geselecteerde waarde instellen",
+DlgSelectBtnDelete : "Verwijderen",
+
+// Textarea Dialog
+DlgTextareaName : "Naam",
+DlgTextareaCols : "Kolommen",
+DlgTextareaRows : "Rijen",
+
+// Text Field Dialog
+DlgTextName : "Naam",
+DlgTextValue : "Waarde",
+DlgTextCharWidth : "Breedte karakter",
+DlgTextMaxChars : "Maximum aantal karakters",
+DlgTextType : "Soort",
+DlgTextTypeText : "Tekst",
+DlgTextTypePass : "Wachtwoord",
+
+// Hidden Field Dialog
+DlgHiddenName : "Naam",
+DlgHiddenValue : "Waarde",
+
+// Bulleted List Dialog
+BulletedListProp : "Eigenschappen opsommingslijst",
+NumberedListProp : "Eigenschappen genummerde opsommingslijst",
+DlgLstType : "Soort",
+DlgLstTypeCircle : "Cirkel",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Vierkant",
+DlgLstTypeNumbers : "Nummerks (1, 2, 3)",
+DlgLstTypeLCase : "Kleine letters (a, b, c)",
+DlgLstTypeUCase : "Hoofdletters (A, B, C)",
+DlgLstTypeSRoman : "Klein romeins (i, ii, iii)",
+DlgLstTypeLRoman : "Groot romeins (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Algemeen",
+DlgDocBackTab : "Achtergrond",
+DlgDocColorsTab : "Kleuring en marges",
+DlgDocMetaTab : "Meta data",
+
+DlgDocPageTitle : "Titel pagina",
+DlgDocLangDir : "Richting taal",
+DlgDocLangDirLTR : "Links naar rechts",
+DlgDocLangDirRTL : "Rechts naar links",
+DlgDocLangCode : "Taalcode",
+DlgDocCharSet : "Karakterset-encoding",
+DlgDocCharSetOther : "Andere karakterset-encoding",
+
+DlgDocDocType : "Opschrift document soort",
+DlgDocDocTypeOther : "Ander opschrift document soort",
+DlgDocIncXHTML : "XHTML declaraties meenemen",
+DlgDocBgColor : "Achtergrond kleur",
+DlgDocBgImage : "URL achtergrondplaatje",
+DlgDocBgNoScroll : "Gefixeerde achtergrond",
+DlgDocCText : "Tekst",
+DlgDocCLink : "Link",
+DlgDocCVisited : "Bezochte link",
+DlgDocCActive : "Active link",
+DlgDocMargins : "Afstandsinstellingen document",
+DlgDocMaTop : "Top",
+DlgDocMaLeft : "Links",
+DlgDocMaRight : "Rechts",
+DlgDocMaBottom : "Bodem",
+DlgDocMeIndex : "Trefwoorden betreffende document (komma gescheiden)",
+DlgDocMeDescr : "Beschrijving document",
+DlgDocMeAuthor : "Auteur",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "Voorbeeld",
+
+// Templates Dialog
+Templates : "Sjablonen",
+DlgTemplatesTitle : "Inhoud sjabonen",
+DlgTemplatesSelMsg : "Selecteer een sjabloon die in de editor geopend moet worden. (De actuele inhoud gaat verloren.):",
+DlgTemplatesLoading : "Bezig met laden sjabonen. Even geduld aub...",
+DlgTemplatesNoTpl : "(Geen sjablonen gedefiniëerd)",
+
+// About Dialog
+DlgAboutAboutTab : "Over",
+DlgAboutBrowserInfoTab : "Browser informatie",
+DlgAboutVersion : "Versie",
+DlgAboutLicense : "Gelicenceerd onder de condities van de GNU Lesser General Public License",
+DlgAboutInfo : "Voor meer informatie ga naar "
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/no.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/no.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/no.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: no.js
+ * Norwegian language file.
+ *
+ * File Authors:
+ * Martin Kronstad (www.siteman.no) (martin.kronstad at broadpark.no)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Skjul verktøylinje",
+ToolbarExpand : "Vis verktøylinje",
+
+// Toolbar Items and Context Menu
+Save : "Lagre",
+NewPage : "Ny Side",
+Preview : "Forhåndsvis",
+Cut : "Klipp ut",
+Copy : "Kopier",
+Paste : "Lim inn",
+PasteText : "Lim inn som ren tekst",
+PasteWord : "Lim inn fra Word",
+Print : "Skriv ut",
+SelectAll : "Velg alle",
+RemoveFormat : "Fjern format",
+InsertLinkLbl : "Lenke",
+InsertLink : "Sett inn/Rediger lenke",
+RemoveLink : "Fjern lenke",
+Anchor : "Sett inn/Rediger anker",
+InsertImageLbl : "Bilde",
+InsertImage : "Sett inn/Rediger bilde",
+InsertFlashLbl : "Flash",
+InsertFlash : "Sett inn/Rediger Flash",
+InsertTableLbl : "Tabell",
+InsertTable : "Sett inn/Rediger tabell",
+InsertLineLbl : "Linje",
+InsertLine : "Sett inn horisontal linje",
+InsertSpecialCharLbl: "Spesielt tegn",
+InsertSpecialChar : "Sett inn spesielt tegn",
+InsertSmileyLbl : "Smil",
+InsertSmiley : "Sett inn smil",
+About : "Om FCKeditor",
+Bold : "Fet",
+Italic : "Kursiv",
+Underline : "Understrek",
+StrikeThrough : "Gjennomstrek",
+Subscript : "Senket skrift",
+Superscript : "Hevet skrift",
+LeftJustify : "Venstrejuster",
+CenterJustify : "Midtjuster",
+RightJustify : "Høyrejuster",
+BlockJustify : "Blokkjuster",
+DecreaseIndent : "Senk nivå",
+IncreaseIndent : "Ãk nivÃ¥",
+Undo : "Angre",
+Redo : "Gjør om",
+NumberedListLbl : "Numrert liste",
+NumberedList : "Sett inn/Fjern numrert liste",
+BulletedListLbl : "Uordnet liste",
+BulletedList : "Sett inn/Fjern uordnet liste",
+ShowTableBorders : "Vis tabellrammer",
+ShowDetails : "Vis detaljer",
+Style : "Stil",
+FontFormat : "Format",
+Font : "Skrift",
+FontSize : "Størrelse",
+TextColor : "Tekstfarge",
+BGColor : "Bakgrunnsfarge",
+Source : "Kilde",
+Find : "Finn",
+Replace : "Erstatt",
+SpellCheck : "Stavekontroll",
+UniversalKeyboard : "Universelt tastatur",
+
+Form : "Skjema",
+Checkbox : "Sjekkboks",
+RadioButton : "Radioknapp",
+TextField : "Tekstfelt",
+Textarea : "Tekstområde",
+HiddenField : "Skjult felt",
+Button : "Knapp",
+SelectionField : "Dropdown meny",
+ImageButton : "Bildeknapp",
+
+// Context Menu
+EditLink : "Rediger lenke",
+InsertRow : "Sett inn rad",
+DeleteRows : "Slett rader",
+InsertColumn : "Sett inn kolonne",
+DeleteColumns : "Slett kolonner",
+InsertCell : "Sett inn celle",
+DeleteCells : "Slett celler",
+MergeCells : "Slå sammen celler",
+SplitCell : "Splitt celler",
+CellProperties : "Celleegenskaper",
+TableProperties : "Tabellegenskaper",
+ImageProperties : "Bildeegenskaper",
+FlashProperties : "Flash Egenskaper",
+
+AnchorProp : "Ankeregenskaper",
+ButtonProp : "Knappegenskaper",
+CheckboxProp : "Sjekkboksegenskaper",
+HiddenFieldProp : "Skjult felt egenskaper",
+RadioButtonProp : "Radioknappegenskaper",
+ImageButtonProp : "Bildeknappegenskaper",
+TextFieldProp : "Tekstfeltegenskaper",
+SelectionFieldProp : "Dropdown menyegenskaper",
+TextareaProp : "Tekstfeltegenskaper",
+FormProp : "Skjemaegenskaper",
+
+FontFormats : "Normal;Formatert;Adresse;Tittel 1;Tittel 2;Tittel 3;Tittel 4;Tittel 5;Tittel 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Lager XHTML. Vennligst vent...",
+Done : "Ferdig",
+PasteWordConfirm : "Teksten du prøver å lime inn ser ut som om den kommer fra word , du bør rense den før du limer inn , vil du gjøre dette?",
+NotCompatiblePaste : "Denne kommandoen er tilgjenglig kun for Internet Explorer version 5.5 eller bedre. Vil du fortsette uten å rense?(Du kan lime inn som ren tekst)",
+UnknownToolbarItem : "Ukjent menyvalg \"%1\"",
+UnknownCommand : "Ukjent kommando \"%1\"",
+NotImplemented : "Kommando ikke ennå implimentert",
+UnknownToolbarSet : "Verktøylinjesett \"%1\" finnes ikke",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Avbryt",
+DlgBtnClose : "Lukk",
+DlgBtnBrowseServer : "Bla igjennom server",
+DlgAdvancedTag : "Avansert",
+DlgOpOther : "<Annet>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Vennligst skriv inn URL'en",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ikke satt>",
+DlgGenId : "Id",
+DlgGenLangDir : "Språkretning",
+DlgGenLangDirLtr : "Venstre til høyre (VTH)",
+DlgGenLangDirRtl : "Høyre til venstre (HTV)",
+DlgGenLangCode : "Språk kode",
+DlgGenAccessKey : "Aksessknapp",
+DlgGenName : "Navn",
+DlgGenTabIndex : "Tab Indeks",
+DlgGenLongDescr : "Utvidet beskrivelse",
+DlgGenClass : "Stilarkklasser",
+DlgGenTitle : "Tittel",
+DlgGenContType : "Type",
+DlgGenLinkCharset : "Lenket språkkart",
+DlgGenStyle : "Stil",
+
+// Image Dialog
+DlgImgTitle : "Bildeegenskaper",
+DlgImgInfoTab : "Bildeinformasjon",
+DlgImgBtnUpload : "Send det til serveren",
+DlgImgURL : "URL",
+DlgImgUpload : "Last opp",
+DlgImgAlt : "Alternativ tekst",
+DlgImgWidth : "Bredde",
+DlgImgHeight : "Høyde",
+DlgImgLockRatio : "LÃ¥s forhold",
+DlgBtnResetSize : "Tilbakestill størrelse",
+DlgImgBorder : "Ramme",
+DlgImgHSpace : "HMarg",
+DlgImgVSpace : "VMarg",
+DlgImgAlign : "Juster",
+DlgImgAlignLeft : "Venstre",
+DlgImgAlignAbsBottom: "Abs bunn",
+DlgImgAlignAbsMiddle: "Abs midten",
+DlgImgAlignBaseline : "Bunnlinje",
+DlgImgAlignBottom : "Bunn",
+DlgImgAlignMiddle : "Midten",
+DlgImgAlignRight : "Høyre",
+DlgImgAlignTextTop : "Tekst topp",
+DlgImgAlignTop : "Topp",
+DlgImgPreview : "Forhåndsvis",
+DlgImgAlertUrl : "Vennligst skriv bildeurlen",
+DlgImgLinkTab : "Lenke",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Egenskaper",
+DlgFlashChkPlay : "Auto Spill",
+DlgFlashChkLoop : "Loop",
+DlgFlashChkMenu : "Slå på Flash meny",
+DlgFlashScale : "Skaler",
+DlgFlashScaleAll : "Vis alt",
+DlgFlashScaleNoBorder : "Ingen ramme",
+DlgFlashScaleFit : "Skaler til å passeExact Fit",
+
+// Link Dialog
+DlgLnkWindowTitle : "Lenke",
+DlgLnkInfoTab : "Lenkeinfo",
+DlgLnkTargetTab : "MÃ¥l",
+
+DlgLnkType : "Lenketype",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Bokmerk denne siden",
+DlgLnkTypeEMail : "E-Post",
+DlgLnkProto : "Protokoll",
+DlgLnkProtoOther : "<annet>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Velg ett anker",
+DlgLnkAnchorByName : "Anker etter navn",
+DlgLnkAnchorById : "Element etter ID",
+DlgLnkNoAnchors : "<Ingen anker i dokumentet>",
+DlgLnkEMail : "E-Post Addresse",
+DlgLnkEMailSubject : "Meldingsemne",
+DlgLnkEMailBody : "Melding",
+DlgLnkUpload : "Last opp",
+DlgLnkBtnUpload : "Send til server",
+
+DlgLnkTarget : "MÃ¥l",
+DlgLnkTargetFrame : "<ramme>",
+DlgLnkTargetPopup : "<popup vindu>",
+DlgLnkTargetBlank : "Nytt vindu (_blank)",
+DlgLnkTargetParent : "Foreldre vindu (_parent)",
+DlgLnkTargetSelf : "Samme vindu (_self)",
+DlgLnkTargetTop : "Hele vindu (_top)",
+DlgLnkTargetFrameName : "MÃ¥lramme",
+DlgLnkPopWinName : "Popup vindus navn",
+DlgLnkPopWinFeat : "Popup vindus egenskaper",
+DlgLnkPopResize : "Endre størrelse",
+DlgLnkPopLocation : "Adresselinje",
+DlgLnkPopMenu : "Menylinje",
+DlgLnkPopScroll : "Scrollbar",
+DlgLnkPopStatus : "Statuslinje",
+DlgLnkPopToolbar : "Verktøylinje",
+DlgLnkPopFullScrn : "Full skjerm (IE)",
+DlgLnkPopDependent : "Avhenging (Netscape)",
+DlgLnkPopWidth : "Bredde",
+DlgLnkPopHeight : "Høyde",
+DlgLnkPopLeft : "Venstre posisjon",
+DlgLnkPopTop : "Topp posisjon",
+
+DlnLnkMsgNoUrl : "Vennligst skriv inn lenkens url",
+DlnLnkMsgNoEMail : "Vennligst skriv inn e-postadressen",
+DlnLnkMsgNoAnchor : "Vennligst velg ett anker",
+
+// Color Dialog
+DlgColorTitle : "Velg farge",
+DlgColorBtnClear : "Tøm",
+DlgColorHighlight : "Marker",
+DlgColorSelected : "Velg",
+
+// Smiley Dialog
+DlgSmileyTitle : "Sett inn smil",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Velg spesielt tegn",
+
+// Table Dialog
+DlgTableTitle : "Tabellegenskaper",
+DlgTableRows : "Rader",
+DlgTableColumns : "Kolonner",
+DlgTableBorder : "Rammestørrelse",
+DlgTableAlign : "Justering",
+DlgTableAlignNotSet : "<Ikke satt>",
+DlgTableAlignLeft : "Venstre",
+DlgTableAlignCenter : "Midtjuster",
+DlgTableAlignRight : "Høyre",
+DlgTableWidth : "Bredde",
+DlgTableWidthPx : "pixler",
+DlgTableWidthPc : "prosent",
+DlgTableHeight : "Høyde",
+DlgTableCellSpace : "Celle marg",
+DlgTableCellPad : "Celle polstring",
+DlgTableCaption : "Tittel",
+
+// Table Cell Dialog
+DlgCellTitle : "Celle egenskaper",
+DlgCellWidth : "Bredde",
+DlgCellWidthPx : "pixeler",
+DlgCellWidthPc : "prosent",
+DlgCellHeight : "Høyde",
+DlgCellWordWrap : "Tekstbrytning",
+DlgCellWordWrapNotSet : "<Ikke satt>",
+DlgCellWordWrapYes : "Ja",
+DlgCellWordWrapNo : "Nei",
+DlgCellHorAlign : "Horisontal justering",
+DlgCellHorAlignNotSet : "<Ikke satt>",
+DlgCellHorAlignLeft : "Venstre",
+DlgCellHorAlignCenter : "Midtjuster",
+DlgCellHorAlignRight: "Høyre",
+DlgCellVerAlign : "Vertikal justering",
+DlgCellVerAlignNotSet : "<Ikke satt>",
+DlgCellVerAlignTop : "Topp",
+DlgCellVerAlignMiddle : "Midten",
+DlgCellVerAlignBottom : "Bunn",
+DlgCellVerAlignBaseline : "Bunnlinje",
+DlgCellRowSpan : "Radspenn",
+DlgCellCollSpan : "Kolonnespenn",
+DlgCellBackColor : "Bakgrunnsfarge",
+DlgCellBorderColor : "Rammefarge",
+DlgCellBtnSelect : "Velg...",
+
+// Find Dialog
+DlgFindTitle : "Finn",
+DlgFindFindBtn : "Finn",
+DlgFindNotFoundMsg : "Den spesifiserte teksten ble ikke funnet.",
+
+// Replace Dialog
+DlgReplaceTitle : "Erstatt",
+DlgReplaceFindLbl : "Finn hva:",
+DlgReplaceReplaceLbl : "Erstatt med:",
+DlgReplaceCaseChk : "Riktig case",
+DlgReplaceReplaceBtn : "Erstatt",
+DlgReplaceReplAllBtn : "Erstatt alle",
+DlgReplaceWordChk : "Finn hele ordet",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Din nettlesers sikkerhetsinstillinger tillater ikke automatisk innliming av tekst. Vennligst brukt snareveien (Ctrl+V).",
+PasteErrorCut : "Din nettlesers sikkerhetsinstillinger tillater ikke automatisk klipping av tekst. Vennligst brukt snareveien (Ctrl+X).",
+PasteErrorCopy : "Din nettlesers sikkerhetsinstillinger tillater ikke automatisk kopiering av tekst. Vennligst brukt snareveien (Ctrl+C).",
+
+PasteAsText : "Lim inn som ren tekst",
+PasteFromWord : "Lim inn fra word",
+
+DlgPasteMsg2 : "Vennligst lim inn i den følgende boksen med tastaturet (<STRONG>Ctrl+V</STRONG>) og trykk <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorer fonter",
+DlgPasteRemoveStyles : "Fjern stildefinisjoner",
+DlgPasteCleanBox : "Tøm boksen",
+
+
+// Color Picker
+ColorAutomatic : "Automatisk",
+ColorMoreColors : "Flere farger...",
+
+// Document Properties
+DocProps : "Dokumentegenskaper",
+
+// Anchor Dialog
+DlgAnchorTitle : "Ankeregenskaper",
+DlgAnchorName : "Ankernavn",
+DlgAnchorErrorName : "Vennligst skriv inn ankernavnet",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Ikke i ordboken",
+DlgSpellChangeTo : "Endre til",
+DlgSpellBtnIgnore : "Ignorer",
+DlgSpellBtnIgnoreAll : "Ignorer alle",
+DlgSpellBtnReplace : "Erstatt",
+DlgSpellBtnReplaceAll : "Erstatt alle",
+DlgSpellBtnUndo : "Angre",
+DlgSpellNoSuggestions : "- ingen forslag -",
+DlgSpellProgress : "Stavekontroll pågår...",
+DlgSpellNoMispell : "Stavekontroll fullført: ingen feilstavinger funnet",
+DlgSpellNoChanges : "Stavekontroll fullført: ingen ord endret",
+DlgSpellOneChange : "Stavekontroll fullført: Ett ord endret",
+DlgSpellManyChanges : "Stavekontroll fullført: %1 ord endret",
+
+IeSpellDownload : "Stavekontroll ikke installert, vil du laste den ned nå?",
+
+// Button Dialog
+DlgButtonText : "Tekst",
+DlgButtonType : "Type",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Navn",
+DlgCheckboxValue : "Verdi",
+DlgCheckboxSelected : "Valgt",
+
+// Form Dialog
+DlgFormName : "Navn",
+DlgFormAction : "Handling",
+DlgFormMethod : "Metode",
+
+// Select Field Dialog
+DlgSelectName : "Navn",
+DlgSelectValue : "Verdi",
+DlgSelectSize : "Størrelse",
+DlgSelectLines : "Linjer",
+DlgSelectChkMulti : "Tillat flervalg",
+DlgSelectOpAvail : "Tilgjenglige alternativer",
+DlgSelectOpText : "Tekst",
+DlgSelectOpValue : "Verdi",
+DlgSelectBtnAdd : "Legg til",
+DlgSelectBtnModify : "Endre",
+DlgSelectBtnUp : "Opp",
+DlgSelectBtnDown : "Ned",
+DlgSelectBtnSetValue : "Sett som valgt",
+DlgSelectBtnDelete : "Slett",
+
+// Textarea Dialog
+DlgTextareaName : "Navn",
+DlgTextareaCols : "Kolonner",
+DlgTextareaRows : "Rader",
+
+// Text Field Dialog
+DlgTextName : "Navn",
+DlgTextValue : "verdi",
+DlgTextCharWidth : "Tegnbredde",
+DlgTextMaxChars : "Maks antall tegn",
+DlgTextType : "Type",
+DlgTextTypeText : "Tekst",
+DlgTextTypePass : "Passord",
+
+// Hidden Field Dialog
+DlgHiddenName : "Navn",
+DlgHiddenValue : "Verdi",
+
+// Bulleted List Dialog
+BulletedListProp : "Uordnet listeegenskaper",
+NumberedListProp : "Ordnet listeegenskaper",
+DlgLstType : "Type",
+DlgLstTypeCircle : "Sirkel",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Firkant",
+DlgLstTypeNumbers : "Numre(1, 2, 3)",
+DlgLstTypeLCase : "Små bokstaver (a, b, c)",
+DlgLstTypeUCase : "Store bokstaver(A, B, C)",
+DlgLstTypeSRoman : "Små romerske tall(i, ii, iii)",
+DlgLstTypeLRoman : "Store romerske tall(I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Generalt",
+DlgDocBackTab : "Bakgrunn",
+DlgDocColorsTab : "Farger og marginer",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Sidetittel",
+DlgDocLangDir : "Språkretning",
+DlgDocLangDirLTR : "Venstre til høyre (LTR)",
+DlgDocLangDirRTL : "Høyre til venstre (RTL)",
+DlgDocLangCode : "Språkkode",
+DlgDocCharSet : "Tegnsett",
+DlgDocCharSetOther : "Annet tegnsett",
+
+DlgDocDocType : "Dokumenttype header",
+DlgDocDocTypeOther : "Annet dokumenttype header",
+DlgDocIncXHTML : "Inkulder XHTML deklarasjon",
+DlgDocBgColor : "Bakgrunnsfarge",
+DlgDocBgImage : "Bakgrunnsbilde url",
+DlgDocBgNoScroll : "Ikke scroll bakgrunnsbilde",
+DlgDocCText : "Tekst",
+DlgDocCLink : "Link",
+DlgDocCVisited : "Besøkt lenke",
+DlgDocCActive : "Aktiv lenke",
+DlgDocMargins : "Sidemargin",
+DlgDocMaTop : "Topp",
+DlgDocMaLeft : "Venstre",
+DlgDocMaRight : "Høyre",
+DlgDocMaBottom : "Bunn",
+DlgDocMeIndex : "Dokument nøkkelord (kommaseparert)",
+DlgDocMeDescr : "Dokumentbeskrivelse",
+DlgDocMeAuthor : "Forfatter",
+DlgDocMeCopy : "Kopirett",
+DlgDocPreview : "Forhåndsvising",
+
+// Templates Dialog
+Templates : "Maler",
+DlgTemplatesTitle : "Innholdsmaler",
+DlgTemplatesSelMsg : "Velg malen du vil åpne<br>(innholdet du har skrevet blir tapt!):",
+DlgTemplatesLoading : "Laster malliste. Vennligst vent...",
+DlgTemplatesNoTpl : "(Ingen maler definert)",
+
+// About Dialog
+DlgAboutAboutTab : "Om",
+DlgAboutBrowserInfoTab : "Nettleserinfo",
+DlgAboutVersion : "versjon",
+DlgAboutLicense : "Lisensiert under GNU Lesser General Public License",
+DlgAboutInfo : "Oversatt av Siteman DA<br /><a target=\"_blank\" href=\"http://www.siteman.no\">www.siteman.no</a><br /><br />For mer informasjon gå til"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/pl.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/pl.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/pl.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: pl.js
+ * Polish language file.
+ *
+ * File Authors:
+ * Jakub Boesche (jboesche at gazeta.pl)
+ * Maciej Bochynski (maciej.bochynski at lubman.pl)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "ZwiÅ pasek narzÄdzi",
+ToolbarExpand : "RozwiÅ pasek narzÄdzi",
+
+// Toolbar Items and Context Menu
+Save : "Zapisz",
+NewPage : "Nowa strona",
+Preview : "PodglÄ
d",
+Cut : "Wytnij",
+Copy : "Kopiuj",
+Paste : "Wklej",
+PasteText : "Wklej jako czysty tekst",
+PasteWord : "Wklej z Worda",
+Print : "Drukuj",
+SelectAll : "Zaznacz wszystko",
+RemoveFormat : "UsuÅ formatowanie",
+InsertLinkLbl : "HiperÅÄ
cze",
+InsertLink : "Wstaw/edytuj hiperÅÄ
cze",
+RemoveLink : "UsuÅ hiperÅÄ
cze",
+Anchor : "Wstaw/edytuj kotwicÄ",
+InsertImageLbl : "Obrazek",
+InsertImage : "Wstaw/edytuj obrazek",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "Tabela",
+InsertTable : "Wstaw/edytuj tabelÄ",
+InsertLineLbl : "Linia pozioma",
+InsertLine : "Wstaw poziomÄ
liniÄ",
+InsertSpecialCharLbl: "Znak specjalny",
+InsertSpecialChar : "Wstaw znak specjalny",
+InsertSmileyLbl : "Emotikona",
+InsertSmiley : "Wstaw emotikonÄ",
+About : "O programie FCKeditor",
+Bold : "Pogrubienie",
+Italic : "Kursywa",
+Underline : "PodkreÅlenie",
+StrikeThrough : "PrzekreÅlenie",
+Subscript : "Indeks dolny",
+Superscript : "Indeks górny",
+LeftJustify : "Wyrównaj do lewej",
+CenterJustify : "Wyrównaj do Årodka",
+RightJustify : "Wyrównaj do prawej",
+BlockJustify : "Wyrównaj do lewej i prawej",
+DecreaseIndent : "Zmniejsz wciÄcie",
+IncreaseIndent : "ZwiÄksz wciÄcie",
+Undo : "Cofnij",
+Redo : "Ponów",
+NumberedListLbl : "Lista numerowana",
+NumberedList : "Wstaw/usuÅ numerowanie listy",
+BulletedListLbl : "Lista wypunktowana",
+BulletedList : "Wstaw/usuÅ wypunktowanie listy",
+ShowTableBorders : "Pokazuj ramkÄ tabeli",
+ShowDetails : "Pokaż szczegóÅy",
+Style : "Styl",
+FontFormat : "Format",
+Font : "Czcionka",
+FontSize : "Rozmiar",
+TextColor : "Kolor tekstu",
+BGColor : "Kolor tÅa",
+Source : "ŹródÅo dokumentu",
+Find : "Znajdź",
+Replace : "ZamieÅ",
+SpellCheck : "Sprawdź pisowniÄ",
+UniversalKeyboard : "Klawiatura Uniwersalna",
+
+Form : "Formularz",
+Checkbox : "Checkbox",
+RadioButton : "Pole wyboru",
+TextField : "Pole tekstowe",
+Textarea : "Obszar tekstowy",
+HiddenField : "Pole ukryte",
+Button : "Przycisk",
+SelectionField : "Lista wyboru",
+ImageButton : "Przycisk obrazek",
+
+// Context Menu
+EditLink : "Edytuj hiperÅÄ
cze",
+InsertRow : "Wstaw wiersz",
+DeleteRows : "UsuÅ wiersze",
+InsertColumn : "Wstaw kolumnÄ",
+DeleteColumns : "UsuÅ kolumny",
+InsertCell : "Wstaw komórkÄ",
+DeleteCells : "UsuŠkomórki",
+MergeCells : "PoÅÄ
cz komórki",
+SplitCell : "Podziel komórkÄ",
+CellProperties : "WÅaÅciwoÅci komórki",
+TableProperties : "WÅaÅciwoÅci tabeli",
+ImageProperties : "WÅaÅciwoÅci obrazka",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "WÅaÅciwoÅci kotwicy",
+ButtonProp : "WÅaÅciwoÅci przycisku",
+CheckboxProp : "Checkbox - wÅaÅciwoÅci",
+HiddenFieldProp : "WÅaÅciwoÅci pola ukrytego",
+RadioButtonProp : "WÅaÅciwoÅci pola wyboru",
+ImageButtonProp : "WÅaÅciwoÅci przycisku obrazka",
+TextFieldProp : "WÅaÅciwoÅci pola tekstowego",
+SelectionFieldProp : "WÅaÅciwoÅci listy wyboru",
+TextareaProp : "WÅaÅciwoÅci obszaru tekstowego",
+FormProp : "WÅaÅciwoÅci formularza",
+
+FontFormats : "Normalny;Tekst sformatowany;Adres;NagÅówek 1;NagÅówek 2;NagÅówek 3;NagÅówek 4;NagÅówek 5;NagÅówek 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Przetwarzanie XHTML. ProszÄ czekaÄ...",
+Done : "Gotowe",
+PasteWordConfirm : "Tekst, który chcesz wkleiÄ, prawdopodobnie pochodzi z programu Word. Czy chcesz go wyczyÅcic przed wklejeniem?",
+NotCompatiblePaste : "Ta funkcja jest dostÄpna w programie Internet Explorer w wersji 5.5 lub wyższej. Czy chcesz wkleiÄ tekst bez czyszczenia?",
+UnknownToolbarItem : "Nieznany element paska narzÄdzi \"%1\"",
+UnknownCommand : "Nieznana komenda \"%1\"",
+NotImplemented : "Komenda niezaimplementowana",
+UnknownToolbarSet : "Pasek narzÄdzi \"%1\" nie istnieje",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Anuluj",
+DlgBtnClose : "Zamknij",
+DlgBtnBrowseServer : "PrzeglÄ
daj",
+DlgAdvancedTag : "Zaawansowane",
+DlgOpOther : "<Inny>",
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<nieustawione>",
+DlgGenId : "Id",
+DlgGenLangDir : "Kierunek tekstu",
+DlgGenLangDirLtr : "Od lewej do prawej (LTR)",
+DlgGenLangDirRtl : "Od prawej do lewej (RTL)",
+DlgGenLangCode : "Kod jÄzyka",
+DlgGenAccessKey : "Klawisz dostÄpu",
+DlgGenName : "Nazwa",
+DlgGenTabIndex : "Indeks tabeli",
+DlgGenLongDescr : "Long Description URL",
+DlgGenClass : "Stylesheet Classes",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Styl",
+
+// Image Dialog
+DlgImgTitle : "WÅaÅciwoÅci obrazka",
+DlgImgInfoTab : "Informacje o obrazku",
+DlgImgBtnUpload : "SyÅlij",
+DlgImgURL : "Adres URL",
+DlgImgUpload : "WyÅlij",
+DlgImgAlt : "Tekst zastÄpczy",
+DlgImgWidth : "SzerokoÅÄ",
+DlgImgHeight : "WysokoÅÄ",
+DlgImgLockRatio : "Zablokuj proporcje",
+DlgBtnResetSize : "PrzywrÃ³Ä rozmiar",
+DlgImgBorder : "Ramka",
+DlgImgHSpace : "OdstÄp poziomy",
+DlgImgVSpace : "OdstÄp pionowy",
+DlgImgAlign : "Wyrównaj",
+DlgImgAlignLeft : "Do lewej",
+DlgImgAlignAbsBottom: "Do doÅu",
+DlgImgAlignAbsMiddle: "Do Årodka w pionie",
+DlgImgAlignBaseline : "Do linii bazowej",
+DlgImgAlignBottom : "Do doÅu",
+DlgImgAlignMiddle : "Do Årodka",
+DlgImgAlignRight : "Do prawej",
+DlgImgAlignTextTop : "Do góry tekstu",
+DlgImgAlignTop : "Do góry",
+DlgImgPreview : "PodglÄ
d",
+DlgImgAlertUrl : "Podaj adres obrazka.",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "HiperÅÄ
cze",
+DlgLnkInfoTab : "Informacje ",
+DlgLnkTargetTab : "Cel",
+
+DlgLnkType : "Typ hiperÅÄ
cza",
+DlgLnkTypeURL : "Adres URL",
+DlgLnkTypeAnchor : "OdnoÅnik wewnÄ
trz strony",
+DlgLnkTypeEMail : "Adres e-mail",
+DlgLnkProto : "ProtokóÅ",
+DlgLnkProtoOther : "<inny>",
+DlgLnkURL : "Adres URL",
+DlgLnkAnchorSel : "Wybierz etykietÄ",
+DlgLnkAnchorByName : "Wg etykiety",
+DlgLnkAnchorById : "Wg identyfikatora elementu",
+DlgLnkNoAnchors : "<W dokumencie nie zdefiniowano żadnych etykiet>",
+DlgLnkEMail : "Adres e-mail",
+DlgLnkEMailSubject : "Temat",
+DlgLnkEMailBody : "TreÅÄ",
+DlgLnkUpload : "Upload",
+DlgLnkBtnUpload : "WyÅlij",
+
+DlgLnkTarget : "Cel",
+DlgLnkTargetFrame : "<ramka>",
+DlgLnkTargetPopup : "<wyskakujÄ
ce okno>",
+DlgLnkTargetBlank : "Nowe okno (_blank)",
+DlgLnkTargetParent : "Okno nadrzÄdne (_parent)",
+DlgLnkTargetSelf : "To samo okno (_self)",
+DlgLnkTargetTop : "Okno najwyższe w hierarchii (_top)",
+DlgLnkTargetFrameName : "Nazwa Ramki Docelowej",
+DlgLnkPopWinName : "Nazwa wyskakujÄ
cego okna",
+DlgLnkPopWinFeat : "WÅaÅciwoÅci wyskakujÄ
cego okna",
+DlgLnkPopResize : "Możliwa zmiana rozmiaru",
+DlgLnkPopLocation : "Pasek adresu",
+DlgLnkPopMenu : "Pasek menu",
+DlgLnkPopScroll : "Paski przewijania",
+DlgLnkPopStatus : "Pasek statusu",
+DlgLnkPopToolbar : "Pasek narzÄdzi",
+DlgLnkPopFullScrn : "PeÅny ekran (IE)",
+DlgLnkPopDependent : "Okno zależne (Netscape)",
+DlgLnkPopWidth : "SzerokoÅÄ",
+DlgLnkPopHeight : "WysokoÅÄ",
+DlgLnkPopLeft : "Pozycja w poziomie",
+DlgLnkPopTop : "Pozycja w pionie",
+
+DlnLnkMsgNoUrl : "Podaj adres URL",
+DlnLnkMsgNoEMail : "Podaj adres e-mail",
+DlnLnkMsgNoAnchor : "Wybierz etykietÄ",
+
+// Color Dialog
+DlgColorTitle : "Wybierz kolor",
+DlgColorBtnClear : "WyczyÅÄ",
+DlgColorHighlight : "PodglÄ
d",
+DlgColorSelected : "Wybrane",
+
+// Smiley Dialog
+DlgSmileyTitle : "Wstaw emotikonÄ",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Wybierz znak specjalny",
+
+// Table Dialog
+DlgTableTitle : "WÅaÅciwoÅci tabeli",
+DlgTableRows : "Liczba wierszy",
+DlgTableColumns : "Liczba kolumn",
+DlgTableBorder : "GruboÅÄ ramki",
+DlgTableAlign : "Wyrównanie",
+DlgTableAlignNotSet : "<brak ustawieÅ>",
+DlgTableAlignLeft : "Do lewej",
+DlgTableAlignCenter : "Do Årodka",
+DlgTableAlignRight : "Do prawej",
+DlgTableWidth : "SzerokoÅÄ",
+DlgTableWidthPx : "piksele",
+DlgTableWidthPc : "%",
+DlgTableHeight : "WysokoÅÄ",
+DlgTableCellSpace : "OdstÄp pomiÄdzy komórkami",
+DlgTableCellPad : "Margines wewnÄtrzny komórek",
+DlgTableCaption : "TytuÅ",
+
+// Table Cell Dialog
+DlgCellTitle : "WÅaÅciwoÅci komórki",
+DlgCellWidth : "SzerokoÅÄ",
+DlgCellWidthPx : "piksele",
+DlgCellWidthPc : "%",
+DlgCellHeight : "WysokoÅÄ",
+DlgCellWordWrap : "Zawijanie tekstu",
+DlgCellWordWrapNotSet : "<brak ustawieÅ>",
+DlgCellWordWrapYes : "Tak",
+DlgCellWordWrapNo : "Nie",
+DlgCellHorAlign : "Wyrównanie poziome",
+DlgCellHorAlignNotSet : "<brak ustawieÅ>",
+DlgCellHorAlignLeft : "Do lewej",
+DlgCellHorAlignCenter : "Do Årodka",
+DlgCellHorAlignRight: "Do prawej",
+DlgCellVerAlign : "Wyrównanie pionowe",
+DlgCellVerAlignNotSet : "<brak ustawieÅ>",
+DlgCellVerAlignTop : "Do góry",
+DlgCellVerAlignMiddle : "Do Årodka",
+DlgCellVerAlignBottom : "Do doÅu",
+DlgCellVerAlignBaseline : "Do linii bazowej",
+DlgCellRowSpan : "ZajÄtoÅÄ wierszy",
+DlgCellCollSpan : "ZajÄtoÅÄ kolumn",
+DlgCellBackColor : "Kolor tÅa",
+DlgCellBorderColor : "Kolor ramki",
+DlgCellBtnSelect : "Wybierz...",
+
+// Find Dialog
+DlgFindTitle : "Znajdź",
+DlgFindFindBtn : "Znajdź",
+DlgFindNotFoundMsg : "Nie znaleziono szukanego hasÅa.",
+
+// Replace Dialog
+DlgReplaceTitle : "ZamieÅ",
+DlgReplaceFindLbl : "Znajdź:",
+DlgReplaceReplaceLbl : "ZastÄ
p przez:",
+DlgReplaceCaseChk : "UwzglÄdnij wielkoÅÄ liter",
+DlgReplaceReplaceBtn : "ZastÄ
p",
+DlgReplaceReplAllBtn : "ZastÄ
p wszystko",
+DlgReplaceWordChk : "CaÅe sÅowa",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Ustawienia bezpieczeÅstwa Twojej przeglÄ
darki nie pozwalajÄ
na automatyczne wklejanie tekstu. Użyj skrótu klawiszowego Ctrl+V.",
+PasteErrorCut : "Ustawienia bezpieczeÅstwa Twojej przeglÄ
darki nie pozwalajÄ
na automatyczne wycinanie tekstu. Użyj skrótu klawiszowego Ctrl+X.",
+PasteErrorCopy : "Ustawienia bezpieczeÅstwa Twojej przeglÄ
darki nie pozwalajÄ
na automatyczne kopiowanie tekstu. Użyj skrótu klawiszowego Ctrl+C.",
+
+PasteAsText : "Wklej jako czysty tekst",
+PasteFromWord : "Wklej z Worda",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "Automatycznie",
+ColorMoreColors : "WiÄcej kolorów...",
+
+// Document Properties
+DocProps : "WÅaÅciwoÅci dokumentu",
+
+// Anchor Dialog
+DlgAnchorTitle : "WÅaÅciwoÅci kotwicy",
+DlgAnchorName : "Nazwa kotwicy",
+DlgAnchorErrorName : "Wpisz nazwÄ kotwicy",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "SÅowa nie ma w sÅowniku",
+DlgSpellChangeTo : "ZmieÅ na",
+DlgSpellBtnIgnore : "Ignoruj",
+DlgSpellBtnIgnoreAll : "Ignoruj wszystkie",
+DlgSpellBtnReplace : "ZmieÅ",
+DlgSpellBtnReplaceAll : "ZmieÅ wszystkie",
+DlgSpellBtnUndo : "Undo",
+DlgSpellNoSuggestions : "- Brak sugestii -",
+DlgSpellProgress : "Trwa sprawdzanie ...",
+DlgSpellNoMispell : "Sprawdzanie zakoÅczone: nie znaleziono bÅÄdów",
+DlgSpellNoChanges : "Sprawdzanie zakoÅczone: nie zmieniono żadnego sÅowa",
+DlgSpellOneChange : "Sprawdzanie zakoÅczone: zmieniono jedno sÅowo",
+DlgSpellManyChanges : "Sprawdzanie zakoÅczone: zmieniono %l sÅów",
+
+IeSpellDownload : "SÅownik nie jest zainstalowany. Chcesz go ÅciÄ
gnÄ
Ä?",
+
+// Button Dialog
+DlgButtonText : "Tekst (WartoÅÄ)",
+DlgButtonType : "Typ",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nazwa",
+DlgCheckboxValue : "WartoÅÄ",
+DlgCheckboxSelected : "Zaznaczony",
+
+// Form Dialog
+DlgFormName : "Nazwa",
+DlgFormAction : "Akcja",
+DlgFormMethod : "Metoda",
+
+// Select Field Dialog
+DlgSelectName : "Nazwa",
+DlgSelectValue : "WartoÅÄ",
+DlgSelectSize : "Rozmiar",
+DlgSelectLines : "linii",
+DlgSelectChkMulti : "Wielokrotny wybór",
+DlgSelectOpAvail : "DostÄpne opcje",
+DlgSelectOpText : "Tekst",
+DlgSelectOpValue : "WartoÅÄ",
+DlgSelectBtnAdd : "Dodaj",
+DlgSelectBtnModify : "ZmieÅ",
+DlgSelectBtnUp : "Do góry",
+DlgSelectBtnDown : "Do doÅu",
+DlgSelectBtnSetValue : "Ustaw wartoÅÄ zaznaczonÄ
",
+DlgSelectBtnDelete : "UsuÅ",
+
+// Textarea Dialog
+DlgTextareaName : "Nazwa",
+DlgTextareaCols : "Kolumnu",
+DlgTextareaRows : "Wiersze",
+
+// Text Field Dialog
+DlgTextName : "Nazwa",
+DlgTextValue : "WartoÅÄ",
+DlgTextCharWidth : "SzerokoÅÄ w znakach",
+DlgTextMaxChars : "Max. szerokoÅÄ",
+DlgTextType : "Typ",
+DlgTextTypeText : "Tekst",
+DlgTextTypePass : "HasÅo",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nazwa",
+DlgHiddenValue : "WartoÅÄ",
+
+// Bulleted List Dialog
+BulletedListProp : "WÅaÅciwoÅci listy punktowanej",
+NumberedListProp : "WÅaÅciwoÅci listy numerowanej",
+DlgLstType : "Typ",
+DlgLstTypeCircle : "KoÅo",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Kwadrat",
+DlgLstTypeNumbers : "Cyfry (1, 2, 3)",
+DlgLstTypeLCase : "MaÅe litery (a, b, c)",
+DlgLstTypeUCase : "Duże litery (A, B, C)",
+DlgLstTypeSRoman : "Numeracja rzymska (i, ii, iii)",
+DlgLstTypeLRoman : "Numeracja rzymska (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Ogólne",
+DlgDocBackTab : "TÅo",
+DlgDocColorsTab : "Kolory i marginesy",
+DlgDocMetaTab : "Meta Dane",
+
+DlgDocPageTitle : "TytuÅ strony",
+DlgDocLangDir : "Kierunek pisania",
+DlgDocLangDirLTR : "Od lewej do prawej (LTR)",
+DlgDocLangDirRTL : "Od prawej do lewej (RTL)",
+DlgDocLangCode : "Kod jÄzyka",
+DlgDocCharSet : "Kodowanie znaków",
+DlgDocCharSetOther : "Inne kodowanie znaków",
+
+DlgDocDocType : "NagÅowek typu dokumentu",
+DlgDocDocTypeOther : "Inny typ dokumentu",
+DlgDocIncXHTML : "DoÅÄ
cz deklaracjÄ XHTML",
+DlgDocBgColor : "Kolor tÅa",
+DlgDocBgImage : "Obrazek tÅa",
+DlgDocBgNoScroll : "TÅo nieruchome",
+DlgDocCText : "Tekst",
+DlgDocCLink : "HiperÅÄ
cze",
+DlgDocCVisited : "Odwiedzane hiperÅÄ
cze",
+DlgDocCActive : "Aktywne hiperÅÄ
cze",
+DlgDocMargins : "Marginesy strony",
+DlgDocMaTop : "Górny",
+DlgDocMaLeft : "Lewy",
+DlgDocMaRight : "Prawy",
+DlgDocMaBottom : "Dolny",
+DlgDocMeIndex : "SÅowa kluczowe (oddzielone przecinkami)",
+DlgDocMeDescr : "Opis dokumentu",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Copyright",
+DlgDocPreview : "PodglÄ
d",
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "O ...",
+DlgAboutBrowserInfoTab : "O przeglÄ
darce",
+DlgAboutVersion : "wersja",
+DlgAboutLicense : "na licencji GNU Lesser General Public License",
+DlgAboutInfo : "WiÄcej informacji uzyskasz pod adresem"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt-br.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt-br.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt-br.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: pt-br.js
+ * Brazilian Portuguese language file.
+ *
+ * File Authors:
+ * Carlos Alberto Tomatis Loth (carlos.loth at conectait.com.br)
+ * GibaPhp (www.xoopstotal.com.br)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Ocultar Barra de Ferramentas",
+ToolbarExpand : "Exibir Barra de Ferramentas",
+
+// Toolbar Items and Context Menu
+Save : "Salvar",
+NewPage : "Novo",
+Preview : "Visualizar",
+Cut : "Recortar",
+Copy : "Copiar",
+Paste : "Colar",
+PasteText : "Colar como Texto sem Formatação",
+PasteWord : "Colar do Word",
+Print : "Imprimir",
+SelectAll : "Selecionar Tudo",
+RemoveFormat : "Remover Formatação",
+InsertLinkLbl : "Hiperlink",
+InsertLink : "Inserir/Editar Hiperlink",
+RemoveLink : "Remover Hiperlink",
+Anchor : "Inserir/Editar Ãncora",
+InsertImageLbl : "Figura",
+InsertImage : "Inserir/Editar Figura",
+InsertFlashLbl : "Flash",
+InsertFlash : "Insere/Edita Flash",
+InsertTableLbl : "Tabela",
+InsertTable : "Inserir/Editar Tabela",
+InsertLineLbl : "Linha",
+InsertLine : "Inserir Linha Horizontal",
+InsertSpecialCharLbl: "Caracteres Especiais",
+InsertSpecialChar : "Inserir Caractere Especial",
+InsertSmileyLbl : "Emoticon",
+InsertSmiley : "Inserir Emoticon",
+About : "Sobre FCKeditor",
+Bold : "Negrito",
+Italic : "Itálico",
+Underline : "Sublinhado",
+StrikeThrough : "Tachado",
+Subscript : "Subscrito",
+Superscript : "Sobrescrito",
+LeftJustify : "Alinhar Esquerda",
+CenterJustify : "Centralizar",
+RightJustify : "Alinhar Direita",
+BlockJustify : "Justificado",
+DecreaseIndent : "Diminuir Recuo",
+IncreaseIndent : "Aumentar Recuo",
+Undo : "Desfazer",
+Redo : "Refazer",
+NumberedListLbl : "Numeração",
+NumberedList : "Inserir/Remover Numeração",
+BulletedListLbl : "Marcadores",
+BulletedList : "Inserir/Remover Marcadores",
+ShowTableBorders : "Exibir Bordas da Tabela",
+ShowDetails : "Exibir Detalhes",
+Style : "Estilo",
+FontFormat : "Formatação",
+Font : "Fonte",
+FontSize : "Tamanho",
+TextColor : "Cor do Texto",
+BGColor : "Cor do Plano de Fundo",
+Source : "Código-Fonte",
+Find : "Localizar",
+Replace : "Substituir",
+SpellCheck : "Verificar Ortografia",
+UniversalKeyboard : "Teclado Universal",
+
+Form : "Formulário",
+Checkbox : "Caixa de Seleção",
+RadioButton : "Botão de Opção",
+TextField : "Caixa de Texto",
+Textarea : "Ãrea de Texto",
+HiddenField : "Campo Oculto",
+Button : "Botão",
+SelectionField : "Caixa de Listagem",
+ImageButton : "Botão de Imagem",
+
+// Context Menu
+EditLink : "Editar Hiperlink",
+InsertRow : "Inserir Linha",
+DeleteRows : "Remover Linhas",
+InsertColumn : "Inserir Coluna",
+DeleteColumns : "Remover Colunas",
+InsertCell : "Inserir Células",
+DeleteCells : "Remover Células",
+MergeCells : "Mesclar Células",
+SplitCell : "Dividir Célular",
+CellProperties : "Formatar Célula",
+TableProperties : "Formatar Tabela",
+ImageProperties : "Formatar Figura",
+FlashProperties : "Propriedades Flash",
+
+AnchorProp : "Formatar Ãncora",
+ButtonProp : "Formatar Botão",
+CheckboxProp : "Formatar Caixa de Seleção",
+HiddenFieldProp : "Formatar Campo Oculto",
+RadioButtonProp : "Formatar Botão de Opção",
+ImageButtonProp : "Formatar Botão de Imagem",
+TextFieldProp : "Formatar Caixa de Texto",
+SelectionFieldProp : "Formatar Caixa de Listagem",
+TextareaProp : "Formatar Ãrea de Texto",
+FormProp : "Formatar Formulário",
+
+FontFormats : "Normal;Formatado;Endereço;TÃtulo 1;TÃtulo 2;TÃtulo 3;TÃtulo 4;TÃtulo 5;TÃtulo 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Processando XHTML. Por favor, aguarde...",
+Done : "Pronto",
+PasteWordConfirm : "O texto que você deseja colar parece ter sido copiado do Word. Você gostaria de remover a formatação antes de colar?",
+NotCompatiblePaste : "Este comando está disponÃvel para o navegador Internet Explorer 5.5 ou superior. Você gostaria de colar sem remover a formatação?",
+UnknownToolbarItem : "O item da barra de ferramentas \"%1\" não é reconhecido",
+UnknownCommand : "O comando \"%1\" não é reconhecido",
+NotImplemented : "O comando não foi implementado",
+UnknownToolbarSet : "A barra de ferramentas \"%1\" não existe",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancelar",
+DlgBtnClose : "Fechar",
+DlgBtnBrowseServer : "Localizar no Servidor",
+DlgAdvancedTag : "Avançado",
+DlgOpOther : "<Outros>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Inserir a URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<não ajustado>",
+DlgGenId : "Id",
+DlgGenLangDir : "Direção do idioma",
+DlgGenLangDirLtr : "Esquerda para Direita (LTR)",
+DlgGenLangDirRtl : "Direita para Esquerda (RTL)",
+DlgGenLangCode : "Idioma",
+DlgGenAccessKey : "Chave de Acesso",
+DlgGenName : "Nome",
+DlgGenTabIndex : "Ãndice de Tabulação",
+DlgGenLongDescr : "Descrição da URL",
+DlgGenClass : "Classe de Folhas de Estilo",
+DlgGenTitle : "TÃtulo",
+DlgGenContType : "Tipo de Conteúdo",
+DlgGenLinkCharset : "Conjunto de Caracteres do Hiperlink",
+DlgGenStyle : "Estilos",
+
+// Image Dialog
+DlgImgTitle : "Formatar Figura",
+DlgImgInfoTab : "Informações da Figura",
+DlgImgBtnUpload : "Enviar para o Servidor",
+DlgImgURL : "URL",
+DlgImgUpload : "Submeter",
+DlgImgAlt : "Texto Alternativo",
+DlgImgWidth : "Largura",
+DlgImgHeight : "Altura",
+DlgImgLockRatio : "Manter proporções",
+DlgBtnResetSize : "Redefinir para o Tamanho Original",
+DlgImgBorder : "Borda",
+DlgImgHSpace : "Horizontal",
+DlgImgVSpace : "Vertical",
+DlgImgAlign : "Alinhamento",
+DlgImgAlignLeft : "Esquerda",
+DlgImgAlignAbsBottom: "Inferior Absoluto",
+DlgImgAlignAbsMiddle: "Centralizado Absoluto",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "Inferior",
+DlgImgAlignMiddle : "Centralizado",
+DlgImgAlignRight : "Direita",
+DlgImgAlignTextTop : "Superior Absoluto",
+DlgImgAlignTop : "Superior",
+DlgImgPreview : "Visualização",
+DlgImgAlertUrl : "Por favor, digite o URL da figura.",
+DlgImgLinkTab : "Hiperlink",
+
+// Flash Dialog
+DlgFlashTitle : "Propriedades Flash",
+DlgFlashChkPlay : "Tocar Automaticamente",
+DlgFlashChkLoop : "Loop",
+DlgFlashChkMenu : "Habilita Menu Flash",
+DlgFlashScale : "Escala",
+DlgFlashScaleAll : "Mostrar tudo",
+DlgFlashScaleNoBorder : "Sem Borda",
+DlgFlashScaleFit : "Escala Exata",
+
+// Link Dialog
+DlgLnkWindowTitle : "Hiperlink",
+DlgLnkInfoTab : "Informações do hiperlink",
+DlgLnkTargetTab : "Informações de destino",
+
+DlgLnkType : "Tipo de hiperlink",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ãncora nesta página",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocolo",
+DlgLnkProtoOther : "<outro>",
+DlgLnkURL : "URL do hiperlink",
+DlgLnkAnchorSel : "Selecione uma âncora",
+DlgLnkAnchorByName : "Pelo Nome da âncora",
+DlgLnkAnchorById : "Pelo Id do Elemento",
+DlgLnkNoAnchors : "<Não há âncoras disponÃveis neste documento>",
+DlgLnkEMail : "Endereço E-Mail",
+DlgLnkEMailSubject : "Assunto da Mensagem",
+DlgLnkEMailBody : "Corpo da Mesagem",
+DlgLnkUpload : "Enviar ao Servidor",
+DlgLnkBtnUpload : "Enviar ao Servidor",
+
+DlgLnkTarget : "Destino",
+DlgLnkTargetFrame : "<quadro>",
+DlgLnkTargetPopup : "<janela popup>",
+DlgLnkTargetBlank : "Nova Janela (_blank)",
+DlgLnkTargetParent : "Janela Pai (_parent)",
+DlgLnkTargetSelf : "Mesma Janela (_self)",
+DlgLnkTargetTop : "Janela Superior (_top)",
+DlgLnkTargetFrameName : "Nome do Frame de Destino",
+DlgLnkPopWinName : "Nome da Janela Pop-up",
+DlgLnkPopWinFeat : "Atributos da Janela Pop-up",
+DlgLnkPopResize : "Redimensionável",
+DlgLnkPopLocation : "Barra de Endereços",
+DlgLnkPopMenu : "Barra de Menus",
+DlgLnkPopScroll : "Barras de Rolagem",
+DlgLnkPopStatus : "Barra de Status",
+DlgLnkPopToolbar : "Barra de Ferramentas",
+DlgLnkPopFullScrn : "Modo Tela Cheia (IE)",
+DlgLnkPopDependent : "Dependente (Netscape)",
+DlgLnkPopWidth : "Largura",
+DlgLnkPopHeight : "Altura",
+DlgLnkPopLeft : "Esquerda",
+DlgLnkPopTop : "Superior",
+
+DlnLnkMsgNoUrl : "Por favor, digite o endereço do Hiperlink",
+DlnLnkMsgNoEMail : "Por favor, digite o endereço de e-mail",
+DlnLnkMsgNoAnchor : "Por favor, selecione uma âncora",
+
+// Color Dialog
+DlgColorTitle : "Selecione uma Cor",
+DlgColorBtnClear : "Limpar",
+DlgColorHighlight : "Visualização",
+DlgColorSelected : "Selecionada",
+
+// Smiley Dialog
+DlgSmileyTitle : "Inserir Emoticon",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Selecione um Caractere Especial",
+
+// Table Dialog
+DlgTableTitle : "Formatar Tabela",
+DlgTableRows : "Linhas",
+DlgTableColumns : "Colunas",
+DlgTableBorder : "Borda",
+DlgTableAlign : "Alinhamento",
+DlgTableAlignNotSet : "<Não ajustado>",
+DlgTableAlignLeft : "Esquerda",
+DlgTableAlignCenter : "Centralizado",
+DlgTableAlignRight : "Direita",
+DlgTableWidth : "Largura",
+DlgTableWidthPx : "pixels",
+DlgTableWidthPc : "%",
+DlgTableHeight : "Altura",
+DlgTableCellSpace : "Espaçamento",
+DlgTableCellPad : "Enchimento",
+DlgTableCaption : "Legenda",
+
+// Table Cell Dialog
+DlgCellTitle : "Formatar célula",
+DlgCellWidth : "Largura",
+DlgCellWidthPx : "pixels",
+DlgCellWidthPc : "%",
+DlgCellHeight : "Altura",
+DlgCellWordWrap : "Quebra de Linha",
+DlgCellWordWrapNotSet : "<Não ajustado>",
+DlgCellWordWrapYes : "Sim",
+DlgCellWordWrapNo : "Não",
+DlgCellHorAlign : "Alinhamento Horizontal",
+DlgCellHorAlignNotSet : "<Não ajustado>",
+DlgCellHorAlignLeft : "Esquerda",
+DlgCellHorAlignCenter : "Centralizado",
+DlgCellHorAlignRight: "Direita",
+DlgCellVerAlign : "Alinhamento Vertical",
+DlgCellVerAlignNotSet : "<Não ajustado>",
+DlgCellVerAlignTop : "Superior",
+DlgCellVerAlignMiddle : "Centralizado",
+DlgCellVerAlignBottom : "Inferior",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "Transpor Linhas",
+DlgCellCollSpan : "Transpor Colunas",
+DlgCellBackColor : "Cor do Plano de Fundo",
+DlgCellBorderColor : "Cor da Borda",
+DlgCellBtnSelect : "Selecionar...",
+
+// Find Dialog
+DlgFindTitle : "Localizar...",
+DlgFindFindBtn : "Localizar",
+DlgFindNotFoundMsg : "O texto especificado não foi encontrado.",
+
+// Replace Dialog
+DlgReplaceTitle : "Substituir",
+DlgReplaceFindLbl : "Procurar por:",
+DlgReplaceReplaceLbl : "Substituir por:",
+DlgReplaceCaseChk : "Coincidir Maiúsculas/Minúsculas",
+DlgReplaceReplaceBtn : "Substituir",
+DlgReplaceReplAllBtn : "Substituir Tudo",
+DlgReplaceWordChk : "Coincidir a palavra inteira",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "As configurações de segurança do seu navegador não permitem que o editor excute operações de colar automaticamente. Por favor, utilize o teclado para colar (Ctrl+V).",
+PasteErrorCut : "As configurações de segurança do seu navegador não permitem que o editor excute operações de recortar automaticamente. Por favor, utilize o teclado para recortar (Ctrl+X).",
+PasteErrorCopy : "As configurações de segurança do seu navegador não permitem que o editor excute operações de copiar automaticamente. Por favor, utilize o teclado para copiar (Ctrl+C).",
+
+PasteAsText : "Colar como Texto sem Formatação",
+PasteFromWord : "Colar do Word",
+
+DlgPasteMsg2 : "Transfira o link usado no box usando o teclado com (<STRONG>Ctrl+V</STRONG>) e <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorar definições de fonte",
+DlgPasteRemoveStyles : "Remove definições de estilo",
+DlgPasteCleanBox : "Limpar Box",
+
+
+// Color Picker
+ColorAutomatic : "Automático",
+ColorMoreColors : "Mais Cores...",
+
+// Document Properties
+DocProps : "Propriedades Documento",
+
+// Anchor Dialog
+DlgAnchorTitle : "Formatar Ãncora",
+DlgAnchorName : "Nome da Ãncora",
+DlgAnchorErrorName : "Por favor, digite o nome da âncora",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Não encontrada",
+DlgSpellChangeTo : "Alterar para",
+DlgSpellBtnIgnore : "Ignorar uma vez",
+DlgSpellBtnIgnoreAll : "Ignorar Todas",
+DlgSpellBtnReplace : "Alterar",
+DlgSpellBtnReplaceAll : "Alterar Todas",
+DlgSpellBtnUndo : "Desfazer",
+DlgSpellNoSuggestions : "-sem sugestões de ortografia-",
+DlgSpellProgress : "Verificação ortográfica em andamento...",
+DlgSpellNoMispell : "Verificação encerrada: Não foram encontrados erros de ortografia",
+DlgSpellNoChanges : "Verificação ortográfica encerrada: Não houve alterações",
+DlgSpellOneChange : "Verificação ortográfica encerrada: Uma palavra foi alterada",
+DlgSpellManyChanges : "Verificação ortográfica encerrada: %1 foram alteradas",
+
+IeSpellDownload : "A verificação ortográfica não foi instalada. Você gostaria de realizar o download agora?",
+
+// Button Dialog
+DlgButtonText : "Texto (Valor)",
+DlgButtonType : "Tipo",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nome",
+DlgCheckboxValue : "Valor",
+DlgCheckboxSelected : "Selecionado",
+
+// Form Dialog
+DlgFormName : "Nome",
+DlgFormAction : "Action",
+DlgFormMethod : "Método",
+
+// Select Field Dialog
+DlgSelectName : "Nome",
+DlgSelectValue : "Valor",
+DlgSelectSize : "Tamanho",
+DlgSelectLines : "linhas",
+DlgSelectChkMulti : "Permitir múltiplas seleções",
+DlgSelectOpAvail : "Opções disponÃveis",
+DlgSelectOpText : "Texto",
+DlgSelectOpValue : "Valor",
+DlgSelectBtnAdd : "Adicionar",
+DlgSelectBtnModify : "Modificar",
+DlgSelectBtnUp : "Para cima",
+DlgSelectBtnDown : "Para baixo",
+DlgSelectBtnSetValue : "Definir como selecionado",
+DlgSelectBtnDelete : "Remover",
+
+// Textarea Dialog
+DlgTextareaName : "Nome",
+DlgTextareaCols : "Colunas",
+DlgTextareaRows : "Linhas",
+
+// Text Field Dialog
+DlgTextName : "Nome",
+DlgTextValue : "Valor",
+DlgTextCharWidth : "Comprimento (em caracteres)",
+DlgTextMaxChars : "Número Máximo de Caracteres",
+DlgTextType : "Tipo",
+DlgTextTypeText : "Texto",
+DlgTextTypePass : "Senha",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nome",
+DlgHiddenValue : "Valor",
+
+// Bulleted List Dialog
+BulletedListProp : "Formatar Marcadores",
+NumberedListProp : "Formatar Numeração",
+DlgLstType : "Tipo",
+DlgLstTypeCircle : "CÃrculo",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Quadrado",
+DlgLstTypeNumbers : "Números (1, 2, 3)",
+DlgLstTypeLCase : "Letras Minúsculas (a, b, c)",
+DlgLstTypeUCase : "Letras Maiúsculas (A, B, C)",
+DlgLstTypeSRoman : "Números Romanos Minúsculos (i, ii, iii)",
+DlgLstTypeLRoman : "Números Romanos Maiúsculos (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Geral",
+DlgDocBackTab : "Plano de Fundo",
+DlgDocColorsTab : "Cores e Margens",
+DlgDocMetaTab : "Meta Dados",
+
+DlgDocPageTitle : "TÃtulo da Página",
+DlgDocLangDir : "Direção do Idioma",
+DlgDocLangDirLTR : "Esquerda para Direita (LTR)",
+DlgDocLangDirRTL : "Direita para Esquerda (RTL)",
+DlgDocLangCode : "Código do Idioma",
+DlgDocCharSet : "Codificação de Caracteres",
+DlgDocCharSetOther : "Outra Codificação de Caracteres",
+
+DlgDocDocType : "Cabeçalho Tipo de Documento",
+DlgDocDocTypeOther : "Other Document Type Heading",
+DlgDocIncXHTML : "Incluir Declarações XHTML",
+DlgDocBgColor : "Cor do Plano de Fundo",
+DlgDocBgImage : "URL da Imagem de Plano de Fundo",
+DlgDocBgNoScroll : "Plano de Fundo Fixo",
+DlgDocCText : "Texto",
+DlgDocCLink : "Hiperlink",
+DlgDocCVisited : "Hiperlink Visitado",
+DlgDocCActive : "Hiperlink Ativo",
+DlgDocMargins : "Margens da Página",
+DlgDocMaTop : "Superior",
+DlgDocMaLeft : "Inferior",
+DlgDocMaRight : "Direita",
+DlgDocMaBottom : "Inferior",
+DlgDocMeIndex : "Palavras-chave de Indexação do Documento (separadas por vÃrgula)",
+DlgDocMeDescr : "Descrição do Documento",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Direitos Autorais",
+DlgDocPreview : "Visualizar",
+
+// Templates Dialog
+Templates : "Modelos de layout",
+DlgTemplatesTitle : "Modelo de layout do conteúdo",
+DlgTemplatesSelMsg : "Selecione um modelo de layout para ser aberto no editor<br>(o conteúdo atual será perdido):",
+DlgTemplatesLoading : "Carregando a lista de modelos de layout. Aguarde...",
+DlgTemplatesNoTpl : "(Não foram definidos modelos de layout)",
+
+// About Dialog
+DlgAboutAboutTab : "Sobre",
+DlgAboutBrowserInfoTab : "Informações do Navegador",
+DlgAboutVersion : "versão",
+DlgAboutLicense : "Licenciado sobre os termos da GNU Lesser General Public License",
+DlgAboutInfo : "Para maiores informações visite"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/pt.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: pt.js
+ * Portuguese language file.
+ *
+ * File Authors:
+ * Francisco Pereira (fjpereira at netcabo.pt)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Fechar Barra",
+ToolbarExpand : "Expandir Barra",
+
+// Toolbar Items and Context Menu
+Save : "Guardar",
+NewPage : "Nova Página",
+Preview : "Pré-visualizar",
+Cut : "Cortar",
+Copy : "Copiar",
+Paste : "Colar",
+PasteText : "Colar como texto não formatado",
+PasteWord : "Colar do Word",
+Print : "Imprimir",
+SelectAll : "Seleccionar Tudo",
+RemoveFormat : "Eliminar Formato",
+InsertLinkLbl : "Hiperligação",
+InsertLink : "Inserir/Editar Hiperligação",
+RemoveLink : "Eliminar Hiperligação",
+Anchor : " Inserir/Editar Ãncora",
+InsertImageLbl : "Imagem",
+InsertImage : "Inserir/Editar Imagem",
+InsertFlashLbl : "Flash",
+InsertFlash : "Inserir/Editar Flash",
+InsertTableLbl : "Tabela",
+InsertTable : "Inserir/Editar Tabela",
+InsertLineLbl : "Linha",
+InsertLine : "Inserir Linha Horizontal",
+InsertSpecialCharLbl: "Caracter Especial",
+InsertSpecialChar : "Inserir Caracter Especial",
+InsertSmileyLbl : "Emoticons",
+InsertSmiley : "Inserir Emoticons",
+About : "Acerca do FCKeditor",
+Bold : "Negrito",
+Italic : "Itálico",
+Underline : "Sublinhado",
+StrikeThrough : "Rasurado",
+Subscript : "Superior à Linha",
+Superscript : "Inferior à Linha",
+LeftJustify : "Alinhar à Esquerda",
+CenterJustify : "Alinhar ao Centro",
+RightJustify : "Alinhar à Direita",
+BlockJustify : "Justificado",
+DecreaseIndent : "Diminuir Avanço",
+IncreaseIndent : "Aumentar Avanço",
+Undo : "Anular",
+Redo : "Repetir",
+NumberedListLbl : "Numeração",
+NumberedList : "Inserir/Eliminar Numeração",
+BulletedListLbl : "Marcas",
+BulletedList : "Inserir/Eliminar Marcas",
+ShowTableBorders : "Mostrar Limites da Tabelas",
+ShowDetails : "Mostrar Parágrafo",
+Style : "Estilo",
+FontFormat : "Formato",
+Font : "Tipo de Letra",
+FontSize : "Tamanho",
+TextColor : "Cor do Texto",
+BGColor : "Cor de Fundo",
+Source : "Fonte",
+Find : "Procurar",
+Replace : "Substituir",
+SpellCheck : "Verificação Ortográfica",
+UniversalKeyboard : "Teclado Universal",
+
+Form : "Formulário",
+Checkbox : "Caixa de Verificação",
+RadioButton : "Botão de Opção",
+TextField : "Campo de Texto",
+Textarea : "Ãrea de Texto",
+HiddenField : "Campo Escondido",
+Button : "Botão",
+SelectionField : "Caixa de Combinação",
+ImageButton : "Botão de Imagem",
+
+// Context Menu
+EditLink : "Editar Hiperligação",
+InsertRow : "Inserir Linha",
+DeleteRows : "Eliminar Linhas",
+InsertColumn : "Inserir Coluna",
+DeleteColumns : "Eliminar Coluna",
+InsertCell : "Inserir Célula",
+DeleteCells : "Eliminar Célula",
+MergeCells : "Unir Células",
+SplitCell : "Dividir Célula",
+CellProperties : "Propriedades da Célula",
+TableProperties : "Propriedades da Tabela",
+ImageProperties : "Propriedades da Imagem",
+FlashProperties : "Propriedades do Flash",
+
+AnchorProp : "Propriedades da Ãncora",
+ButtonProp : "Propriedades do Botão",
+CheckboxProp : "Propriedades da Caixa de Verificação",
+HiddenFieldProp : "Propriedades do Campo Escondido",
+RadioButtonProp : "Propriedades do Botão de Opção",
+ImageButtonProp : "Propriedades do Botão de imagens",
+TextFieldProp : "Propriedades do Campo de Texto",
+SelectionFieldProp : "Propriedades da Caixa de Combinação",
+TextareaProp : "Propriedades da Ãrea de Texto",
+FormProp : "Propriedades do Formulário",
+
+FontFormats : "Normal;Formatado;Endereço;TÃtulo 1;TÃtulo 2;TÃtulo 3;TÃtulo 4;TÃtulo 5;TÃtulo 6",
+
+// Alerts and Messages
+ProcessingXHTML : "A Processar XHTML. Por favor, espere...",
+Done : "ConcluÃdo",
+PasteWordConfirm : "O texto que deseja parece ter sido copiado do Word. Deseja limpar a formatação antes de colar?",
+NotCompatiblePaste : "Este comando só está disponÃvel para Internet Explorer versão 5.5 ou superior. Deseja colar sem limpar a formatação?",
+UnknownToolbarItem : "Item de barra desconhecido \"%1\"",
+UnknownCommand : "Nome de comando desconhecido \"%1\"",
+NotImplemented : "Comando não implementado",
+UnknownToolbarSet : "Nome de barra \"%1\" não definido",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Cancelar",
+DlgBtnClose : "Fechar",
+DlgBtnBrowseServer : "Navegar no Servidor",
+DlgAdvancedTag : "Avançado",
+DlgOpOther : "<Outro>",
+DlgInfoTab : "Informação",
+DlgAlertUrl : "Por favor introduza o URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<Não definido>",
+DlgGenId : "Id",
+DlgGenLangDir : "Orientação de idioma",
+DlgGenLangDirLtr : "Esquerda à Direita (LTR)",
+DlgGenLangDirRtl : "Direita a Esquerda (RTL)",
+DlgGenLangCode : "Código de Idioma",
+DlgGenAccessKey : "Chave de Acesso",
+DlgGenName : "Nome",
+DlgGenTabIndex : "Ãndice de Tubulação",
+DlgGenLongDescr : "Descrição Completa do URL",
+DlgGenClass : "Classes de Estilo de Folhas Classes",
+DlgGenTitle : "TÃtulo",
+DlgGenContType : "Tipo de Conteúdo",
+DlgGenLinkCharset : "Fonte de caracteres vinculado",
+DlgGenStyle : "Estilo",
+
+// Image Dialog
+DlgImgTitle : "Propriedades da Imagem",
+DlgImgInfoTab : "Informação da Imagem",
+DlgImgBtnUpload : "Enviar para o Servidor",
+DlgImgURL : "URL",
+DlgImgUpload : "Carregar",
+DlgImgAlt : "Texto Alternativo",
+DlgImgWidth : "Largura",
+DlgImgHeight : "Altura",
+DlgImgLockRatio : "Proporcional",
+DlgBtnResetSize : "Tamanho Original",
+DlgImgBorder : "Limite",
+DlgImgHSpace : "Esp.Horiz",
+DlgImgVSpace : "Esp.Vert",
+DlgImgAlign : "Alinhamento",
+DlgImgAlignLeft : "Esquerda",
+DlgImgAlignAbsBottom: "Abs inferior",
+DlgImgAlignAbsMiddle: "Abs centro",
+DlgImgAlignBaseline : "Linha de base",
+DlgImgAlignBottom : "Fundo",
+DlgImgAlignMiddle : "Centro",
+DlgImgAlignRight : "Direita",
+DlgImgAlignTextTop : "Topo do texto",
+DlgImgAlignTop : "Topo",
+DlgImgPreview : "Pré-visualizar",
+DlgImgAlertUrl : "Por favor introduza o URL da imagem",
+DlgImgLinkTab : "Hiperligação",
+
+// Flash Dialog
+DlgFlashTitle : "Propriedades do Flash",
+DlgFlashChkPlay : "Reproduzir automaticamente",
+DlgFlashChkLoop : "Loop",
+DlgFlashChkMenu : "Permitir Menu do Flash",
+DlgFlashScale : "Escala",
+DlgFlashScaleAll : "Mostrar tudo",
+DlgFlashScaleNoBorder : "Sem Limites",
+DlgFlashScaleFit : "Tamanho Exacto",
+
+// Link Dialog
+DlgLnkWindowTitle : "Hiperligação",
+DlgLnkInfoTab : "Informação de Hiperligação",
+DlgLnkTargetTab : "Destino",
+
+DlgLnkType : "Tipo de Hiperligação",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Referência a esta página",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocolo",
+DlgLnkProtoOther : "<outro>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Seleccionar una referência",
+DlgLnkAnchorByName : "Por Nome de Referência",
+DlgLnkAnchorById : "Por ID de elemento",
+DlgLnkNoAnchors : "<Não há referências disponÃveis no documento>",
+DlgLnkEMail : "Endereço de E-Mail",
+DlgLnkEMailSubject : "TÃtulo de Mensagem",
+DlgLnkEMailBody : "Corpo da Mensagem",
+DlgLnkUpload : "Carregar",
+DlgLnkBtnUpload : "Enviar ao Servidor",
+
+DlgLnkTarget : "Destino",
+DlgLnkTargetFrame : "<Frame>",
+DlgLnkTargetPopup : "<Janela de popup>",
+DlgLnkTargetBlank : "Nova Janela(_blank)",
+DlgLnkTargetParent : "Janela Pai (_parent)",
+DlgLnkTargetSelf : "Mesma janela (_self)",
+DlgLnkTargetTop : "Janela primaria (_top)",
+DlgLnkTargetFrameName : "Nome do Frame Destino",
+DlgLnkPopWinName : "Nome da Janela de Popup",
+DlgLnkPopWinFeat : "CaracterÃsticas de Janela de Popup",
+DlgLnkPopResize : "Ajustável",
+DlgLnkPopLocation : "Barra de localização",
+DlgLnkPopMenu : "Barra de Menu",
+DlgLnkPopScroll : "Barras de deslocamento",
+DlgLnkPopStatus : "Barra de Estado",
+DlgLnkPopToolbar : "Barra de Ferramentas",
+DlgLnkPopFullScrn : "Janela Completa (IE)",
+DlgLnkPopDependent : "Dependente (Netscape)",
+DlgLnkPopWidth : "Largura",
+DlgLnkPopHeight : "Altura",
+DlgLnkPopLeft : "Posição Esquerda",
+DlgLnkPopTop : "Posição Direita",
+
+DlnLnkMsgNoUrl : "Por favor introduza a hiperligação URL",
+DlnLnkMsgNoEMail : "Por favor introduza o endereço de e-mail",
+DlnLnkMsgNoAnchor : "Por favor seleccione uma referência",
+
+// Color Dialog
+DlgColorTitle : "Seleccionar Cor",
+DlgColorBtnClear : "Nenhuma",
+DlgColorHighlight : "Destacado",
+DlgColorSelected : "Seleccionado",
+
+// Smiley Dialog
+DlgSmileyTitle : "Inserir um Emoticon",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Seleccione um caracter especial",
+
+// Table Dialog
+DlgTableTitle : "Propriedades da Tabela",
+DlgTableRows : "Linhas",
+DlgTableColumns : "Colunas",
+DlgTableBorder : "Tamanho do Limite",
+DlgTableAlign : "Alinhamento",
+DlgTableAlignNotSet : "<Não definido>",
+DlgTableAlignLeft : "Esquerda",
+DlgTableAlignCenter : "Centrado",
+DlgTableAlignRight : "Direita",
+DlgTableWidth : "Largura",
+DlgTableWidthPx : "pixeis",
+DlgTableWidthPc : "percentagem",
+DlgTableHeight : "Altura",
+DlgTableCellSpace : "Esp. e/células",
+DlgTableCellPad : "Esp. interior",
+DlgTableCaption : "TÃtulo",
+
+// Table Cell Dialog
+DlgCellTitle : "Propriedades da Célula",
+DlgCellWidth : "Largura",
+DlgCellWidthPx : "pixeis",
+DlgCellWidthPc : "percentagem",
+DlgCellHeight : "Altura",
+DlgCellWordWrap : "Moldar Texto",
+DlgCellWordWrapNotSet : "<Não definido>",
+DlgCellWordWrapYes : "Sim",
+DlgCellWordWrapNo : "Não",
+DlgCellHorAlign : "Alinhamento Horizontal",
+DlgCellHorAlignNotSet : "<Não definido>",
+DlgCellHorAlignLeft : "Esquerda",
+DlgCellHorAlignCenter : "Centrado",
+DlgCellHorAlignRight: "Direita",
+DlgCellVerAlign : "Alinhamento Vertical",
+DlgCellVerAlignNotSet : "<Não definido>",
+DlgCellVerAlignTop : "Topo",
+DlgCellVerAlignMiddle : "Médio",
+DlgCellVerAlignBottom : "Fundi",
+DlgCellVerAlignBaseline : "Linha de Base",
+DlgCellRowSpan : "Unir Linhas",
+DlgCellCollSpan : "Unir Colunas",
+DlgCellBackColor : "Cor do Fundo",
+DlgCellBorderColor : "Cor do Limite",
+DlgCellBtnSelect : "Seleccione...",
+
+// Find Dialog
+DlgFindTitle : "Procurar",
+DlgFindFindBtn : "Procurar",
+DlgFindNotFoundMsg : "O texto especificado não foi encontrado.",
+
+// Replace Dialog
+DlgReplaceTitle : "Substituir",
+DlgReplaceFindLbl : "Texto a Procurar:",
+DlgReplaceReplaceLbl : "Substituir por:",
+DlgReplaceCaseChk : "Maiúsculas/Minúsculas",
+DlgReplaceReplaceBtn : "Substituir",
+DlgReplaceReplAllBtn : "Substituir Tudo",
+DlgReplaceWordChk : "Coincidir com toda a palavra",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "A configuração de segurança do navegador não permite a execução automática de operações de colar. Por favor use o teclado (Ctrl+V).",
+PasteErrorCut : "A configuração de segurança do navegador não permite a execução automática de operações de cortar. Por favor use o teclado (Ctrl+X).",
+PasteErrorCopy : "A configuração de segurança do navegador não permite a execução automática de operações de copiar. Por favor use o teclado (Ctrl+C).",
+
+PasteAsText : "Colar como Texto Simples",
+PasteFromWord : "Colar do Word",
+
+DlgPasteMsg2 : "Por favor, cole dentro da seguinte caixa usando o teclado (<STRONG>Ctrl+V</STRONG>) e prima <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorar da definições do Tipo de Letra ",
+DlgPasteRemoveStyles : "Remover as definições de Estilos",
+DlgPasteCleanBox : "Caixa de Limpeza",
+
+
+// Color Picker
+ColorAutomatic : "Automático",
+ColorMoreColors : "Mais Cores...",
+
+// Document Properties
+DocProps : "Propriedades do Documento",
+
+// Anchor Dialog
+DlgAnchorTitle : "Propriedades da Ãncora",
+DlgAnchorName : "Nome da Ãncora",
+DlgAnchorErrorName : "Por favor, introduza o nome da âncora",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Não está num directório",
+DlgSpellChangeTo : "Mudar para",
+DlgSpellBtnIgnore : "Ignorar",
+DlgSpellBtnIgnoreAll : "Ignorar Tudo",
+DlgSpellBtnReplace : "Substituir",
+DlgSpellBtnReplaceAll : "Substituir Tudo",
+DlgSpellBtnUndo : "Anular",
+DlgSpellNoSuggestions : "- Sem sugestões -",
+DlgSpellProgress : "Verificação ortográfica em progressoâ¦",
+DlgSpellNoMispell : "Verificação ortográfica completa: não foram encontrados erros",
+DlgSpellNoChanges : "Verificação ortográfica completa: não houve alteração de palavras",
+DlgSpellOneChange : "Verificação ortográfica completa: uma palavra alterada",
+DlgSpellManyChanges : "Verificação ortográfica completa: %1 palavras alteradas",
+
+IeSpellDownload : " Verificação ortográfica não instalada. Quer descarregar agora?",
+
+// Button Dialog
+DlgButtonText : "Texto (Valor)",
+DlgButtonType : "Tipo",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nome",
+DlgCheckboxValue : "Valor",
+DlgCheckboxSelected : "Seleccionado",
+
+// Form Dialog
+DlgFormName : "Nome",
+DlgFormAction : "Acção",
+DlgFormMethod : "Método",
+
+// Select Field Dialog
+DlgSelectName : "Nome",
+DlgSelectValue : "Valor",
+DlgSelectSize : "Tamanho",
+DlgSelectLines : "linhas",
+DlgSelectChkMulti : "Permitir selecções múltiplas",
+DlgSelectOpAvail : "Opções PossÃveis",
+DlgSelectOpText : "Texto",
+DlgSelectOpValue : "Valor",
+DlgSelectBtnAdd : "Adicionar",
+DlgSelectBtnModify : "Modificar",
+DlgSelectBtnUp : "Para cima",
+DlgSelectBtnDown : "Para baixo",
+DlgSelectBtnSetValue : "Definir um valor por defeito",
+DlgSelectBtnDelete : "Apagar",
+
+// Textarea Dialog
+DlgTextareaName : "Nome",
+DlgTextareaCols : "Colunas",
+DlgTextareaRows : "Linhas",
+
+// Text Field Dialog
+DlgTextName : "Nome",
+DlgTextValue : "Valor",
+DlgTextCharWidth : "Tamanho do caracter",
+DlgTextMaxChars : "Nr. Máximo de Caracteres",
+DlgTextType : "Tipo",
+DlgTextTypeText : "Texto",
+DlgTextTypePass : "Palavra-chave",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nome",
+DlgHiddenValue : "Valor",
+
+// Bulleted List Dialog
+BulletedListProp : "Propriedades da Marca",
+NumberedListProp : "Propriedades da Numeração",
+DlgLstType : "Tipo",
+DlgLstTypeCircle : "Circulo",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Quadrado",
+DlgLstTypeNumbers : "Números (1, 2, 3)",
+DlgLstTypeLCase : "Letras Minúsculas (a, b, c)",
+DlgLstTypeUCase : "Letras Maiúsculas (A, B, C)",
+DlgLstTypeSRoman : "Numeração Romana em Minúsculas (i, ii, iii)",
+DlgLstTypeLRoman : "Numeração Romana em Maiúsculas (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Geral",
+DlgDocBackTab : "Fundo",
+DlgDocColorsTab : "Cores e Margens",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "TÃtulo da Página",
+DlgDocLangDir : "Orientação de idioma",
+DlgDocLangDirLTR : "Esquerda à Direita (LTR)",
+DlgDocLangDirRTL : "Direita à Esquerda (RTL)",
+DlgDocLangCode : "Código de Idioma",
+DlgDocCharSet : "Codificação de Caracteres",
+DlgDocCharSetOther : "Outra Codificação de Caracteres",
+
+DlgDocDocType : "Tipo de Cabeçalho do Documento",
+DlgDocDocTypeOther : "Outro Tipo de Cabeçalho do Documento",
+DlgDocIncXHTML : "Incluir Declarações XHTML",
+DlgDocBgColor : "Cor de Fundo",
+DlgDocBgImage : "Caminho para a Imagem de Fundo",
+DlgDocBgNoScroll : "Fundo Fixo",
+DlgDocCText : "Texto",
+DlgDocCLink : "Hiperligação",
+DlgDocCVisited : "Hiperligação Visitada",
+DlgDocCActive : "Hiperligação Activa",
+DlgDocMargins : "Margem das Páginas",
+DlgDocMaTop : "Topo",
+DlgDocMaLeft : "Esquerda",
+DlgDocMaRight : "Direita",
+DlgDocMaBottom : "Fundo",
+DlgDocMeIndex : "Palavras de Indexação do Documento (separadas por virgula)",
+DlgDocMeDescr : "Descrição do Documento",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Direitos de Autor",
+DlgDocPreview : "Pré-visualizar",
+
+// Templates Dialog
+Templates : "Modelos",
+DlgTemplatesTitle : "Modelo de Conteúdo",
+DlgTemplatesSelMsg : "Por favor, seleccione o modelo a abrir no editor<br>(o conteúdo actual será perdido):",
+DlgTemplatesLoading : "A carregar a lista de modelos. Aguarde por favor...",
+DlgTemplatesNoTpl : "(Sem modelos definidos)",
+
+// About Dialog
+DlgAboutAboutTab : "Acerca",
+DlgAboutBrowserInfoTab : "Informação do Nevegador",
+DlgAboutVersion : "versão",
+DlgAboutLicense : "Licenciado segundo os términos de GNU Lesser General Public License",
+DlgAboutInfo : "Para mais informações por favor dirija-se a"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/ro.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/ro.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/ro.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: ro.js
+ * Romanian language file.
+ *
+ * File Authors:
+ * Adrian Nicoara
+ * Ionut Traian Popa
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Ascunde bara cu opţiuni",
+ToolbarExpand : "ExpandeazÄ bara cu opÅ£iuni",
+
+// Toolbar Items and Context Menu
+Save : "SalveazÄ",
+NewPage : "PaginÄ nouÄ",
+Preview : "Previzualizare",
+Cut : "Taie",
+Copy : "CopiazÄ",
+Paste : "AdaugÄ",
+PasteText : "AdaugÄ ca text simplu",
+PasteWord : "AdaugÄ din Word",
+Print : "PrinteazÄ",
+SelectAll : "SelecteazÄ tot",
+RemoveFormat : "ÃnlÄturÄ formatarea",
+InsertLinkLbl : "Link (LegÄturÄ web)",
+InsertLink : "InsereazÄ/EditeazÄ link (legÄturÄ web)",
+RemoveLink : "ÃnlÄturÄ link (legÄturÄ web)",
+Anchor : "InsereazÄ/EditeazÄ ancorÄ",
+InsertImageLbl : "Imagine",
+InsertImage : "InsereazÄ/EditeazÄ imagine",
+InsertFlashLbl : "Flash",
+InsertFlash : "InsereazÄ/EditeazÄ flash",
+InsertTableLbl : "Tabel",
+InsertTable : "InsereazÄ/EditeazÄ tabel",
+InsertLineLbl : "Linie",
+InsertLine : "InsereazÄ linie orizontÄ",
+InsertSpecialCharLbl: "Caracter special",
+InsertSpecialChar : "InsereazÄ caracter special",
+InsertSmileyLbl : "FigurÄ expresivÄ (Emoticon)",
+InsertSmiley : "InsereazÄ FigurÄ expresivÄ (Emoticon)",
+About : "Despre FCKeditor",
+Bold : "ÃngroÅat (bold)",
+Italic : "Ãnclinat (italic)",
+Underline : "Subliniat (underline)",
+StrikeThrough : "TÄiat (strike through)",
+Subscript : "Indice (subscript)",
+Superscript : "Putere (superscript)",
+LeftJustify : "Aliniere la stânga",
+CenterJustify : "Aliniere centralÄ",
+RightJustify : "Aliniere la dreapta",
+BlockJustify : "Aliniere în bloc (Block Justify)",
+DecreaseIndent : "Scade indentarea",
+IncreaseIndent : "CreÅte indentarea",
+Undo : "Starea anterioarÄ (undo)",
+Redo : "Starea ulterioarÄ (redo)",
+NumberedListLbl : "ListÄ numerotatÄ",
+NumberedList : "InsereazÄ/Återge listÄ numerotatÄ",
+BulletedListLbl : "ListÄ cu puncte",
+BulletedList : "InsereazÄ/Återge listÄ cu puncte",
+ShowTableBorders : "AratÄ marginile tabelului",
+ShowDetails : "AratÄ detalii",
+Style : "Stil",
+FontFormat : "Formatare",
+Font : "Font",
+FontSize : "MÄrime",
+TextColor : "Culoarea textului",
+BGColor : "Coloarea fundalului",
+Source : "Sursa",
+Find : "GÄseÅte",
+Replace : "ÃnlocuieÅte",
+SpellCheck : "VerificÄ text",
+UniversalKeyboard : "TastaturÄ universalÄ",
+
+Form : "Formular (Form)",
+Checkbox : "BifÄ (Checkbox)",
+RadioButton : "Buton radio (RadioButton)",
+TextField : "Câmp text (TextField)",
+Textarea : "SuprafaÅ£Ä text (Textarea)",
+HiddenField : "Câmp ascuns (HiddenField)",
+Button : "Buton",
+SelectionField : "Câmp selecţie (SelectionField)",
+ImageButton : "Buton imagine (ImageButton)",
+
+// Context Menu
+EditLink : "EditeazÄ Link",
+InsertRow : "InsereazÄ Row",
+DeleteRows : "Återge Rows",
+InsertColumn : "InsereazÄ Column",
+DeleteColumns : "Återge Columns",
+InsertCell : "InsereazÄ Cell",
+DeleteCells : "Återge celule",
+MergeCells : "UneÅte celule",
+SplitCell : "Ãmparte celulÄ",
+CellProperties : "ProprietÄÅ£ile celulei",
+TableProperties : "ProprietÄÅ£ile tabelului",
+ImageProperties : "ProprietÄÅ£ile imaginii",
+FlashProperties : "ProprietÄÅ£ile flash-ului",
+
+AnchorProp : "ProprietÄÅ£i ancorÄ",
+ButtonProp : "ProprietÄÅ£i buton",
+CheckboxProp : "ProprietÄÅ£i bifÄ (Checkbox)",
+HiddenFieldProp : "ProprietÄÅ£i câmp ascuns (Hidden Field)",
+RadioButtonProp : "ProprietÄÅ£i buton radio (Radio Button)",
+ImageButtonProp : "ProprietÄÅ£i buton imagine (Image Button)",
+TextFieldProp : "ProprietÄÅ£i câmp text (Text Field)",
+SelectionFieldProp : "ProprietÄÅ£i câmp selecÅ£ie (Selection Field)",
+TextareaProp : "ProprietÄÅ£i suprafaÅ£Ä text (Textarea)",
+FormProp : "ProprietÄÅ£i formular (Form)",
+
+FontFormats : "Normal;Formatat;Adresa;Titlu 1;Titlu 2;Titlu 3;Titlu 4;Titlu 5;Titlu 6;Paragraf (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "ProcesÄm XHTML. VÄ rugÄm aÅteptaÅ£i...",
+Done : "Am terminat",
+PasteWordConfirm : "Textul pe care doriÅ£i sÄ-l adÄugaÅ£i pare a fi formatat pentru Word. DoriÅ£i sÄ-l curÄÅ£aÅ£i de aceastÄ formatare înainte de a-l adÄuga?",
+NotCompatiblePaste : "AceastÄ facilitate e disponibilÄ doar pentru Microsoft Internet Explorer, versiunea 5.5 sau ulterioarÄ. VreÅ£i sÄ-l adÄugaÅ£i fÄrÄ a-i fi înlÄturat formatarea?",
+UnknownToolbarItem : "Obiectul \"%1\" din bara cu opţiuni necunoscut",
+UnknownCommand : "Comanda \"%1\" necunoscutÄ",
+NotImplemented : "ComandÄ neimplementatÄ",
+UnknownToolbarSet : "Grupul din bara cu opÅ£iuni \"%1\" nu existÄ",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "Bine",
+DlgBtnCancel : "Anulare",
+DlgBtnClose : "Ãnchidere",
+DlgBtnBrowseServer : "RÄsfoieÅte server",
+DlgAdvancedTag : "Avansat",
+DlgOpOther : "<Altul>",
+DlgInfoTab : "Informaţii",
+DlgAlertUrl : "VÄ rugÄm sÄ scrieÅ£i URL-ul",
+
+// General Dialogs Labels
+DlgGenNotSet : "<nesetat>",
+DlgGenId : "Id",
+DlgGenLangDir : "Direcţia cuvintelor",
+DlgGenLangDirLtr : "stânga-dreapta (LTR)",
+DlgGenLangDirRtl : "dreapta-stânga (RTL)",
+DlgGenLangCode : "Codul limbii",
+DlgGenAccessKey : "Tasta de acces",
+DlgGenName : "Nume",
+DlgGenTabIndex : "Indexul tabului",
+DlgGenLongDescr : "Descrierea lungÄ URL",
+DlgGenClass : "Clasele cu stilul paginii (CSS)",
+DlgGenTitle : "Titlul consultativ",
+DlgGenContType : "Tipul consultativ al titlului",
+DlgGenLinkCharset : "Setul de caractere al resursei legate",
+DlgGenStyle : "Stil",
+
+// Image Dialog
+DlgImgTitle : "ProprietÄÅ£ile imaginii",
+DlgImgInfoTab : "Informaţii despre imagine",
+DlgImgBtnUpload : "Trimite la server",
+DlgImgURL : "URL",
+DlgImgUpload : "ÃncarcÄ",
+DlgImgAlt : "Text alternativ",
+DlgImgWidth : "LÄÅ£ime",
+DlgImgHeight : "ÃnÄlÅ£ime",
+DlgImgLockRatio : "PÄstreazÄ proporÅ£iile",
+DlgBtnResetSize : "ReseteazÄ mÄrimea",
+DlgImgBorder : "Margine",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Aliniere",
+DlgImgAlignLeft : "Stânga",
+DlgImgAlignAbsBottom: "Jos absolut (Abs Bottom)",
+DlgImgAlignAbsMiddle: "Mijloc absolut (Abs Middle)",
+DlgImgAlignBaseline : "Linia de jos (Baseline)",
+DlgImgAlignBottom : "Jos",
+DlgImgAlignMiddle : "Mijloc",
+DlgImgAlignRight : "Dreapta",
+DlgImgAlignTextTop : "Text sus",
+DlgImgAlignTop : "Sus",
+DlgImgPreview : "Previzualizare",
+DlgImgAlertUrl : "VÄ rugÄm sÄ scrieÅ£i URL-ul imaginii",
+DlgImgLinkTab : "Link (LegÄturÄ web)",
+
+// Flash Dialog
+DlgFlashTitle : "ProprietÄÅ£ile flash-ului",
+DlgFlashChkPlay : "RuleazÄ automat",
+DlgFlashChkLoop : "RepetÄ (Loop)",
+DlgFlashChkMenu : "ActiveazÄ meniul flash",
+DlgFlashScale : "ScalÄ",
+DlgFlashScaleAll : "AratÄ tot",
+DlgFlashScaleNoBorder : "FÄrÄ margini (No border)",
+DlgFlashScaleFit : "PotriveÅte",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link (LegÄturÄ web)",
+DlgLnkInfoTab : "InformaÅ£ii despre link (LegÄturÄ web)",
+DlgLnkTargetTab : "Å¢intÄ (Target)",
+
+DlgLnkType : "Tipul link-ului (al legÄturii web)",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "AncorÄ Ã®n aceastÄ paginÄ",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protocol",
+DlgLnkProtoOther : "<altul>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "SelectaÅ£i o ancorÄ",
+DlgLnkAnchorByName : "dupÄ numele ancorei",
+DlgLnkAnchorById : "dupÄ Id-ul elementului",
+DlgLnkNoAnchors : "<Nici o ancorÄ disponibilÄ Ã®n document>",
+DlgLnkEMail : "AdresÄ de e-mail",
+DlgLnkEMailSubject : "Subiectul mesajului",
+DlgLnkEMailBody : "Conţinutul mesajului",
+DlgLnkUpload : "ÃncarcÄ",
+DlgLnkBtnUpload : "Trimite la server",
+
+DlgLnkTarget : "Å¢intÄ (Target)",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<fereastra popup>",
+DlgLnkTargetBlank : "FereastrÄ nouÄ (_blank)",
+DlgLnkTargetParent : "Fereastra pÄrinte (_parent)",
+DlgLnkTargetSelf : "AceeaÅi fereastrÄ (_self)",
+DlgLnkTargetTop : "Fereastra din topul ierarhiei (_top)",
+DlgLnkTargetFrameName : "Numele frame-ului Å£intÄ",
+DlgLnkPopWinName : "Numele ferestrei popup",
+DlgLnkPopWinFeat : "ProprietÄÅ£ile ferestrei popup",
+DlgLnkPopResize : "ScalabilÄ",
+DlgLnkPopLocation : "Bara de locaţie",
+DlgLnkPopMenu : "Bara de meniu",
+DlgLnkPopScroll : "Scroll Bars",
+DlgLnkPopStatus : "Bara de status",
+DlgLnkPopToolbar : "Bara de opţiuni",
+DlgLnkPopFullScrn : "Tot ecranul (Full Screen)(IE)",
+DlgLnkPopDependent : "Dependent (Netscape)",
+DlgLnkPopWidth : "LÄÅ£ime",
+DlgLnkPopHeight : "ÃnÄlÅ£ime",
+DlgLnkPopLeft : "Poziţia la stânga",
+DlgLnkPopTop : "Poziţia la dreapta",
+
+DlnLnkMsgNoUrl : "VÄ rugÄm sÄ scrieÅ£i URL-ul",
+DlnLnkMsgNoEMail : "VÄ rugÄm sÄ scrieÅ£i adresa de e-mail",
+DlnLnkMsgNoAnchor : "VÄ rugÄm sÄ selectaÅ£i o ancorÄ",
+
+// Color Dialog
+DlgColorTitle : "SelecteazÄ culoare",
+DlgColorBtnClear : "CurÄÅ£Ä",
+DlgColorHighlight : "SubliniazÄ (Highlight)",
+DlgColorSelected : "Selectat",
+
+// Smiley Dialog
+DlgSmileyTitle : "InsereazÄ o figurÄ expresivÄ (Emoticon)",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "SelecteazÄ caracter special",
+
+// Table Dialog
+DlgTableTitle : "ProprietÄÅ£ile tabelului",
+DlgTableRows : "Linii",
+DlgTableColumns : "Coloane",
+DlgTableBorder : "MÄrimea marginii",
+DlgTableAlign : "Aliniament",
+DlgTableAlignNotSet : "<Nesetat>",
+DlgTableAlignLeft : "Stânga",
+DlgTableAlignCenter : "Centru",
+DlgTableAlignRight : "Dreapta",
+DlgTableWidth : "LÄÅ£ime",
+DlgTableWidthPx : "pixeli",
+DlgTableWidthPc : "procente",
+DlgTableHeight : "ÃnÄlÅ£ime",
+DlgTableCellSpace : "Spaţiu între celule",
+DlgTableCellPad : "Spaţiu în cadrul celulei",
+DlgTableCaption : "Titlu (Caption)",
+
+// Table Cell Dialog
+DlgCellTitle : "ProprietÄÅ£ile celulei",
+DlgCellWidth : "LÄÅ£ime",
+DlgCellWidthPx : "pixeli",
+DlgCellWidthPc : "procente",
+DlgCellHeight : "ÃnÄlÅ£ime",
+DlgCellWordWrap : "Desparte cuvintele (Wrap)",
+DlgCellWordWrapNotSet : "<Nesetat>",
+DlgCellWordWrapYes : "Da",
+DlgCellWordWrapNo : "Nu",
+DlgCellHorAlign : "Aliniament orizontal",
+DlgCellHorAlignNotSet : "<Nesetat>",
+DlgCellHorAlignLeft : "Stânga",
+DlgCellHorAlignCenter : "Centru",
+DlgCellHorAlignRight: "Dreapta",
+DlgCellVerAlign : "Aliniament vertical",
+DlgCellVerAlignNotSet : "<Nesetat>",
+DlgCellVerAlignTop : "Sus",
+DlgCellVerAlignMiddle : "Mijloc",
+DlgCellVerAlignBottom : "Jos",
+DlgCellVerAlignBaseline : "Linia de jos (Baseline)",
+DlgCellRowSpan : "Lungimea în linii (Span)",
+DlgCellCollSpan : "Lungimea în coloane (Span)",
+DlgCellBackColor : "Culoarea fundalului",
+DlgCellBorderColor : "Culoarea marginii",
+DlgCellBtnSelect : "Selectaţi...",
+
+// Find Dialog
+DlgFindTitle : "GÄseÅte",
+DlgFindFindBtn : "GÄseÅte",
+DlgFindNotFoundMsg : "Textul specificat nu a fost gÄsit.",
+
+// Replace Dialog
+DlgReplaceTitle : "Replace",
+DlgReplaceFindLbl : "GÄseÅte:",
+DlgReplaceReplaceLbl : "ÃnlocuieÅte cu:",
+DlgReplaceCaseChk : "DeosebeÅte majuscule de minuscule (Match case)",
+DlgReplaceReplaceBtn : "ÃnlocuieÅte",
+DlgReplaceReplAllBtn : "ÃnlocuieÅte tot",
+DlgReplaceWordChk : "Doar cuvintele întregi",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "SetÄrile de securitate ale navigatorului (browser) pe care îl folosiÅ£i nu permit editorului sÄ execute automat operaÅ£iunea de adÄugare. VÄ rugÄm folosiÅ£i tastatura (Ctrl+V).",
+PasteErrorCut : "SetÄrile de securitate ale navigatorului (browser) pe care îl folosiÅ£i nu permit editorului sÄ execute automat operaÅ£iunea de tÄiere. VÄ rugÄm folosiÅ£i tastatura (Ctrl+X).",
+PasteErrorCopy : "SetÄrile de securitate ale navigatorului (browser) pe care îl folosiÅ£i nu permit editorului sÄ execute automat operaÅ£iunea de copiere. VÄ rugÄm folosiÅ£i tastatura (Ctrl+C).",
+
+PasteAsText : "AdaugÄ ca text simplu (Plain Text)",
+PasteFromWord : "AdaugÄ din Word",
+
+DlgPasteMsg2 : "VÄ rugÄm adÄugaÅ£i în cÄsuÅ£a urmÄtoare folosind tastatura (<STRONG>Ctrl+V</STRONG>) Åi apÄsaÅ£i <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "IgnorÄ definiÅ£iile Font Face",
+DlgPasteRemoveStyles : "Återge definiÅ£iile stilurilor",
+DlgPasteCleanBox : "Återge cÄsuÅ£a",
+
+
+// Color Picker
+ColorAutomatic : "Automatic",
+ColorMoreColors : "Mai multe culori...",
+
+// Document Properties
+DocProps : "ProprietÄÅ£ile documentului",
+
+// Anchor Dialog
+DlgAnchorTitle : "ProprietÄÅ£ile ancorei",
+DlgAnchorName : "Numele ancorei",
+DlgAnchorErrorName : "VÄ rugÄm scrieÅ£i numele ancorei",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Nu e în dicţionar",
+DlgSpellChangeTo : "SchimbÄ Ã®n",
+DlgSpellBtnIgnore : "IgnorÄ",
+DlgSpellBtnIgnoreAll : "IgnorÄ toate",
+DlgSpellBtnReplace : "ÃnlocuieÅte",
+DlgSpellBtnReplaceAll : "ÃnlocuieÅte tot",
+DlgSpellBtnUndo : "Starea anterioarÄ (undo)",
+DlgSpellNoSuggestions : "- FÄrÄ sugestii -",
+DlgSpellProgress : "Verificarea textului în desfÄÅurare...",
+DlgSpellNoMispell : "Verificarea textului terminatÄ: Nici o greÅealÄ gÄsitÄ",
+DlgSpellNoChanges : "Verificarea textului terminatÄ: Nici un cuvânt modificat",
+DlgSpellOneChange : "Verificarea textului terminatÄ: Un cuvânt modificat",
+DlgSpellManyChanges : "Verificarea textului terminatÄ: 1% cuvinte modificate",
+
+IeSpellDownload : "Unealta pentru verificat textul (Spell checker) neinstalatÄ. DoriÅ£i sÄ o descÄrcaÅ£i acum?",
+
+// Button Dialog
+DlgButtonText : "Text (Valoare)",
+DlgButtonType : "Tip",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Nume",
+DlgCheckboxValue : "Valoare",
+DlgCheckboxSelected : "Selectat",
+
+// Form Dialog
+DlgFormName : "Nume",
+DlgFormAction : "Acţiune",
+DlgFormMethod : "MetodÄ",
+
+// Select Field Dialog
+DlgSelectName : "Nume",
+DlgSelectValue : "Valoare",
+DlgSelectSize : "MÄrime",
+DlgSelectLines : "linii",
+DlgSelectChkMulti : "Permite selecţii multiple",
+DlgSelectOpAvail : "Opţiuni disponibile",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Valoare",
+DlgSelectBtnAdd : "AdaugÄ",
+DlgSelectBtnModify : "ModificÄ",
+DlgSelectBtnUp : "Sus",
+DlgSelectBtnDown : "Jos",
+DlgSelectBtnSetValue : "SeteazÄ ca valoare selectatÄ",
+DlgSelectBtnDelete : "Återge",
+
+// Textarea Dialog
+DlgTextareaName : "Nume",
+DlgTextareaCols : "Coloane",
+DlgTextareaRows : "Linii",
+
+// Text Field Dialog
+DlgTextName : "Nume",
+DlgTextValue : "Valoare",
+DlgTextCharWidth : "LÄrgimea caracterului",
+DlgTextMaxChars : "Caractere maxime",
+DlgTextType : "Tip",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "ParolÄ",
+
+// Hidden Field Dialog
+DlgHiddenName : "Nume",
+DlgHiddenValue : "Valoare",
+
+// Bulleted List Dialog
+BulletedListProp : "ProprietÄÅ£ile listei punctate (Bulleted List)",
+NumberedListProp : "ProprietÄÅ£ile listei numerotate (Numbered List)",
+DlgLstType : "Tip",
+DlgLstTypeCircle : "Cerc",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "PÄtrat",
+DlgLstTypeNumbers : "Numere (1, 2, 3)",
+DlgLstTypeLCase : "Minuscule-litere mici (a, b, c)",
+DlgLstTypeUCase : "Majuscule (A, B, C)",
+DlgLstTypeSRoman : "Cifre romane mici (i, ii, iii)",
+DlgLstTypeLRoman : "Cifre romane mari (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "General",
+DlgDocBackTab : "Fundal",
+DlgDocColorsTab : "Culori si margini",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Titlul paginii",
+DlgDocLangDir : "Descrierea limbii",
+DlgDocLangDirLTR : "stânga-dreapta (LTR)",
+DlgDocLangDirRTL : "dreapta-stânga (RTL)",
+DlgDocLangCode : "Codul limbii",
+DlgDocCharSet : "Encoding setului de caractere",
+DlgDocCharSetOther : "Alt encoding al setului de caractere",
+
+DlgDocDocType : "Document Type Heading",
+DlgDocDocTypeOther : "Alt Document Type Heading",
+DlgDocIncXHTML : "Include declaraţii XHTML",
+DlgDocBgColor : "Culoarea fundalului (Background Color)",
+DlgDocBgImage : "URL-ul imaginii din fundal (Background Image URL)",
+DlgDocBgNoScroll : "Fundal neflotant, fix (Nonscrolling Background)",
+DlgDocCText : "Text",
+DlgDocCLink : "Link (LegÄturÄ web)",
+DlgDocCVisited : "Link (LegÄturÄ web) vizitat",
+DlgDocCActive : "Link (LegÄturÄ web) activ",
+DlgDocMargins : "Marginile paginii",
+DlgDocMaTop : "Sus",
+DlgDocMaLeft : "Stânga",
+DlgDocMaRight : "Dreapta",
+DlgDocMaBottom : "Jos",
+DlgDocMeIndex : "Cuvinte cheie dupÄ care se va indexa documentul (separate prin virgulÄ)",
+DlgDocMeDescr : "Descrierea documentului",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Drepturi de autor",
+DlgDocPreview : "Previzualizare",
+
+// Templates Dialog
+Templates : "Template-uri (Åabloane)",
+DlgTemplatesTitle : "Template-uri (Åabloane) de conÅ£inut",
+DlgTemplatesSelMsg : "VÄ rugÄm selectaÅ£i template-ul (Åablonul) ce se va deschide în editor<br>(conÅ£inutul actual va fi pierdut):",
+DlgTemplatesLoading : "Se încarcÄ lista cu template-uri (Åabloane). VÄ rugÄm aÅteptaÅ£i...",
+DlgTemplatesNoTpl : "(Nici un template (Åablon) definit)",
+
+// About Dialog
+DlgAboutAboutTab : "Despre",
+DlgAboutBrowserInfoTab : "Informaţii browser",
+DlgAboutVersion : "versiune",
+DlgAboutLicense : "Licenţiat sub termenii GNU Lesser General Public License",
+DlgAboutInfo : "Pentru informaÅ£ii amÄnunÅ£ite, vizitaÅ£i"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/ru.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/ru.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/ru.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: ru.js
+ * Russian language file.
+ *
+ * File Authors:
+ * Andrey Grebnev (andrey.grebnev at blandware.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "СвеÑнÑÑÑ Ð¿Ð°Ð½ÐµÐ»Ñ Ð¸Ð½ÑÑÑÑменÑов",
+ToolbarExpand : "РазвеÑнÑÑÑ Ð¿Ð°Ð½ÐµÐ»Ñ Ð¸Ð½ÑÑÑÑменÑов",
+
+// Toolbar Items and Context Menu
+Save : "СоÑ
ÑаниÑÑ",
+NewPage : "ÐÐ¾Ð²Ð°Ñ ÑÑÑаниÑа",
+Preview : "ÐÑедваÑиÑелÑнÑй пÑоÑмоÑÑ",
+Cut : "ÐÑÑезаÑÑ",
+Copy : "ÐопиÑоваÑÑ",
+Paste : "ÐÑÑавиÑÑ",
+PasteText : "ÐÑÑавиÑÑ ÑолÑко ÑекÑÑ",
+PasteWord : "ÐÑÑавиÑÑ Ð¸Ð· Word",
+Print : "ÐеÑаÑÑ",
+SelectAll : "ÐÑделиÑÑ Ð²Ñе",
+RemoveFormat : "УбÑаÑÑ ÑоÑмаÑиÑование",
+InsertLinkLbl : "СÑÑлка",
+InsertLink : "ÐÑÑавиÑÑ/РедакÑиÑоваÑÑ ÑÑÑлкÑ",
+RemoveLink : "УбÑаÑÑ ÑÑÑлкÑ",
+Anchor : "ÐÑÑавиÑÑ/РедакÑиÑоваÑÑ ÑкоÑÑ",
+InsertImageLbl : "ÐзобÑажение",
+InsertImage : "ÐÑÑавиÑÑ/РедакÑиÑоваÑÑ Ð¸Ð·Ð¾Ð±Ñажение",
+InsertFlashLbl : "Flash",
+InsertFlash : "ÐÑÑавиÑÑ/РедакÑиÑоваÑÑ Flash",
+InsertTableLbl : "ТаблиÑа",
+InsertTable : "ÐÑÑавиÑÑ/РедакÑиÑоваÑÑ ÑаблиÑÑ",
+InsertLineLbl : "ÐиниÑ",
+InsertLine : "ÐÑÑавиÑÑ Ð³Ð¾ÑизонÑалÑнÑÑ Ð»Ð¸Ð½Ð¸Ñ",
+InsertSpecialCharLbl: "СпеÑиалÑнÑй Ñимвол",
+InsertSpecialChar : "ÐÑÑавиÑÑ ÑпеÑиалÑнÑй Ñимвол",
+InsertSmileyLbl : "Смайлик",
+InsertSmiley : "ÐÑÑавиÑÑ Ñмайлик",
+About : "Ð FCKeditor",
+Bold : "ÐиÑнÑй",
+Italic : "ÐÑÑÑив",
+Underline : "ÐодÑеÑкнÑÑÑй",
+StrikeThrough : "ÐаÑеÑкнÑÑÑй",
+Subscript : "ÐодÑÑÑоÑнÑй индекÑ",
+Superscript : "ÐадÑÑÑоÑнÑй индекÑ",
+LeftJustify : "Ðо Ð»ÐµÐ²Ð¾Ð¼Ñ ÐºÑаÑ",
+CenterJustify : "Ðо ÑенÑÑÑ",
+RightJustify : "Ðо пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ",
+BlockJustify : "Ðо ÑиÑине",
+DecreaseIndent : "УменÑÑиÑÑ Ð¾ÑÑÑÑп",
+IncreaseIndent : "УвелиÑиÑÑ Ð¾ÑÑÑÑп",
+Undo : "ÐÑмениÑÑ",
+Redo : "ÐовÑоÑиÑÑ",
+NumberedListLbl : "ÐÑмеÑованнÑй ÑпиÑок",
+NumberedList : "ÐÑÑавиÑÑ/УдалиÑÑ Ð½ÑмеÑованнÑй ÑпиÑок",
+BulletedListLbl : "ÐаÑкиÑованнÑй ÑпиÑок",
+BulletedList : "ÐÑÑавиÑÑ/УдалиÑÑ Ð¼Ð°ÑкиÑованнÑй ÑпиÑок",
+ShowTableBorders : "ÐоказаÑÑ Ð±Ð¾ÑдÑÑÑ ÑаблиÑÑ",
+ShowDetails : "ÐоказаÑÑ Ð´ÐµÑали",
+Style : "СÑилÑ",
+FontFormat : "ФоÑмаÑиÑование",
+Font : "ШÑиÑÑ",
+FontSize : "РазмеÑ",
+TextColor : "Ð¦Ð²ÐµÑ ÑекÑÑа",
+BGColor : "Ð¦Ð²ÐµÑ Ñона",
+Source : "ÐÑÑоÑник",
+Find : "ÐайÑи",
+Replace : "ÐамениÑÑ",
+SpellCheck : "ÐÑовеÑиÑÑ Ð¾ÑÑогÑаÑиÑ",
+UniversalKeyboard : "УнивеÑÑалÑÐ½Ð°Ñ ÐºÐ»Ð°Ð²Ð¸Ð°ÑÑÑа",
+
+Form : "ФоÑма",
+Checkbox : "Ð¤Ð»Ð°Ð³Ð¾Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°",
+RadioButton : "Ðнопка вÑбоÑа",
+TextField : "ТекÑÑовое поле",
+Textarea : "ТекÑÑÐ¾Ð²Ð°Ñ Ð¾Ð±Ð»Ð°ÑÑÑ",
+HiddenField : "СкÑÑÑое поле",
+Button : "Ðнопка",
+SelectionField : "СпиÑок",
+ImageButton : "Ðнопка Ñ Ð¸Ð·Ð¾Ð±Ñажением",
+
+// Context Menu
+EditLink : "ÐÑÑавиÑÑ ÑÑÑлкÑ",
+InsertRow : "ÐÑÑавиÑÑ ÑÑÑокÑ",
+DeleteRows : "УдалиÑÑ ÑÑÑоки",
+InsertColumn : "ÐÑÑавиÑÑ ÐºÐ¾Ð»Ð¾Ð½ÐºÑ",
+DeleteColumns : "УдалиÑÑ ÐºÐ¾Ð»Ð¾Ð½ÐºÐ¸",
+InsertCell : "ÐÑÑавиÑÑ ÑÑейкÑ",
+DeleteCells : "УдалиÑÑ ÑÑейки",
+MergeCells : "СоединиÑÑ ÑÑейки",
+SplitCell : "РазбиÑÑ ÑÑейкÑ",
+CellProperties : "СвойÑÑва ÑÑейки",
+TableProperties : "СвойÑÑва ÑаблиÑÑ",
+ImageProperties : "СвойÑÑва изобÑажениÑ",
+FlashProperties : "СвойÑÑва Flash",
+
+AnchorProp : "СвойÑÑва ÑкоÑÑ",
+ButtonProp : "СвойÑÑва кнопки",
+CheckboxProp : "СвойÑÑва Ñлаговой кнопки",
+HiddenFieldProp : "СвойÑÑва ÑкÑÑÑого полÑ",
+RadioButtonProp : "СвойÑÑва кнопки вÑбоÑа",
+ImageButtonProp : "СвойÑÑва кнопки Ñ Ð¸Ð·Ð¾Ð±Ñажением",
+TextFieldProp : "СвойÑÑва ÑекÑÑового полÑ",
+SelectionFieldProp : "СвойÑÑва ÑпиÑка",
+TextareaProp : "СвойÑÑва ÑекÑÑовой облаÑÑи",
+FormProp : "СвойÑÑва ÑоÑмÑ",
+
+FontFormats : "ÐоÑмалÑнÑй;ФоÑмаÑиÑованнÑй;ÐдÑеÑ;Ðаголовок 1;Ðаголовок 2;Ðаголовок 3;Ðаголовок 4;Ðаголовок 5;Ðаголовок 6",
+
+// Alerts and Messages
+ProcessingXHTML : "ÐбÑабоÑка XHTML. ÐожалÑйÑÑа подождиÑе...",
+Done : "Сделано",
+PasteWordConfirm : "ТекÑÑ, коÑоÑÑй Ð²Ñ Ñ
оÑиÑе вÑÑавиÑÑ, поÑ
ож на копиÑÑемÑй из Word. ÐÑ Ñ
оÑиÑе оÑиÑÑиÑÑ ÐµÐ³Ð¾ пеÑед вÑÑавкой?",
+NotCompatiblePaste : "ÐÑа команда доÑÑÑпна Ð´Ð»Ñ Internet Explorer веÑÑии 5.5 или вÑÑе. ÐÑ Ñ
оÑиÑе вÑÑавиÑÑ Ð±ÐµÐ· оÑиÑÑки?",
+UnknownToolbarItem : "Ðе извеÑÑнÑй ÑÐ»ÐµÐ¼ÐµÐ½Ñ Ð¿Ð°Ð½ÐµÐ»Ð¸ инÑÑÑÑменÑов \"%1\"",
+UnknownCommand : "Ðе извеÑÑное Ð¸Ð¼Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ \"%1\"",
+NotImplemented : "Ðоманда не Ñеализована",
+UnknownToolbarSet : "ÐÐ°Ð½ÐµÐ»Ñ Ð¸Ð½ÑÑÑÑменÑов \"%1\" не ÑÑÑеÑÑвÑеÑ",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "ÐÐ",
+DlgBtnCancel : "ÐÑмена",
+DlgBtnClose : "ÐакÑÑÑÑ",
+DlgBtnBrowseServer : "ÐÑоÑмоÑÑеÑÑ Ð½Ð° ÑеÑвеÑе",
+DlgAdvancedTag : "РаÑÑиÑеннÑй",
+DlgOpOther : "<ÐÑÑгое>",
+DlgInfoTab : "ÐнÑоÑмаÑиÑ",
+DlgAlertUrl : "ÐожалÑйÑÑа вÑÑавÑÑе URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<не опÑеделено>",
+DlgGenId : "ÐденÑиÑикаÑоÑ",
+DlgGenLangDir : "ÐапÑавление ÑзÑка",
+DlgGenLangDirLtr : "Слева на пÑаво (LTR)",
+DlgGenLangDirRtl : "СпÑава на лево (RTL)",
+DlgGenLangCode : "ЯзÑк",
+DlgGenAccessKey : "ÐоÑÑÑÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ñа",
+DlgGenName : "ÐмÑ",
+DlgGenTabIndex : "ÐоÑледоваÑелÑноÑÑÑ Ð¿ÐµÑеÑ
ода",
+DlgGenLongDescr : "Ðлинное опиÑание URL",
+DlgGenClass : "ÐлаÑÑ CSS",
+DlgGenTitle : "Ðаголовок",
+DlgGenContType : "Тип ÑодеÑжимого",
+DlgGenLinkCharset : "ÐодиÑовка",
+DlgGenStyle : "СÑÐ¸Ð»Ñ CSS",
+
+// Image Dialog
+DlgImgTitle : "СвойÑÑва изобÑажениÑ",
+DlgImgInfoTab : "ÐнÑоÑмаÑÐ¸Ñ Ð¾ изобÑажении",
+DlgImgBtnUpload : "ÐоÑлаÑÑ Ð½Ð° ÑеÑвеÑ",
+DlgImgURL : "URL",
+DlgImgUpload : "ÐакаÑаÑÑ",
+DlgImgAlt : "ÐлÑÑеÑнаÑивнÑй ÑекÑÑ",
+DlgImgWidth : "ШиÑина",
+DlgImgHeight : "ÐÑÑоÑа",
+DlgImgLockRatio : "СоÑ
ÑанÑÑÑ Ð¿ÑопоÑÑии",
+DlgBtnResetSize : "СбÑоÑиÑÑ ÑазмеÑ",
+DlgImgBorder : "ÐоÑдÑÑ",
+DlgImgHSpace : "ÐоÑизонÑалÑнÑй оÑÑÑÑп",
+DlgImgVSpace : "ÐеÑÑикалÑнÑй оÑÑÑÑп",
+DlgImgAlign : "ÐÑÑавнивание",
+DlgImgAlignLeft : "Ðо Ð»ÐµÐ²Ð¾Ð¼Ñ ÐºÑаÑ",
+DlgImgAlignAbsBottom: "ÐÐ±Ñ Ð¿Ð¾Ð½Ð¸Ð·Ñ",
+DlgImgAlignAbsMiddle: "ÐÐ±Ñ Ð¿Ð¾ÑеÑедине",
+DlgImgAlignBaseline : "Ðо базовой линии",
+DlgImgAlignBottom : "ÐонизÑ",
+DlgImgAlignMiddle : "ÐоÑеÑедине",
+DlgImgAlignRight : "Ðо пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ",
+DlgImgAlignTextTop : "ТекÑÑ Ð½Ð°Ð²ÐµÑÑ
Ñ",
+DlgImgAlignTop : "Ðо веÑÑ
Ñ",
+DlgImgPreview : "ÐÑедваÑиÑелÑнÑй пÑоÑмоÑÑ",
+DlgImgAlertUrl : "ÐожалÑйÑÑа введиÑе URL изобÑажениÑ",
+DlgImgLinkTab : "СÑÑлка",
+
+// Flash Dialog
+DlgFlashTitle : "СвойÑÑва Flash",
+DlgFlashChkPlay : "ÐвÑо пÑоигÑÑвание",
+DlgFlashChkLoop : "ÐовÑоÑ",
+DlgFlashChkMenu : "ÐклÑÑиÑÑ Ð¼ÐµÐ½Ñ Flash",
+DlgFlashScale : "ÐаÑÑÑабиÑоваÑÑ",
+DlgFlashScaleAll : "ÐоказÑваÑÑ Ð²Ñе",
+DlgFlashScaleNoBorder : "Ðез боÑдÑÑа",
+DlgFlashScaleFit : "ТоÑное Ñовпадение",
+
+// Link Dialog
+DlgLnkWindowTitle : "СÑÑлка",
+DlgLnkInfoTab : "ÐнÑоÑмаÑÐ¸Ñ ÑÑÑлки",
+DlgLnkTargetTab : "ЦелÑ",
+
+DlgLnkType : "Тип ÑÑÑлки",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "ЯкоÑÑ Ð½Ð° ÑÑÑ ÑÑÑаниÑÑ",
+DlgLnkTypeEMail : "Ðл. поÑÑа",
+DlgLnkProto : "ÐÑоÑокол",
+DlgLnkProtoOther : "<дÑÑгое>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "ÐÑбеÑиÑе ÑкоÑÑ",
+DlgLnkAnchorByName : "Ðо имени ÑкоÑÑ",
+DlgLnkAnchorById : "Ðо иденÑиÑикаÑоÑÑ ÑлеменÑа",
+DlgLnkNoAnchors : "<ÐÐµÑ ÑкоÑей доÑÑÑпнÑÑ
в ÑÑом докÑменÑе>",
+DlgLnkEMail : "ÐдÑÐµÑ Ñл. поÑÑÑ",
+DlgLnkEMailSubject : "Ðаголовок ÑообÑениÑ",
+DlgLnkEMailBody : "Тело ÑообÑениÑ",
+DlgLnkUpload : "ÐакаÑаÑÑ",
+DlgLnkBtnUpload : "ÐоÑлаÑÑ Ð½Ð° ÑеÑвеÑ",
+
+DlgLnkTarget : "ЦелÑ",
+DlgLnkTargetFrame : "<ÑÑейм>",
+DlgLnkTargetPopup : "<вÑплÑваÑÑее окно>",
+DlgLnkTargetBlank : "Ðовое окно (_blank)",
+DlgLnkTargetParent : "РодиÑелÑÑкое окно (_parent)",
+DlgLnkTargetSelf : "Тоже окно (_self)",
+DlgLnkTargetTop : "Самое веÑÑ
нее окно (_top)",
+DlgLnkTargetFrameName : "ÐÐ¼Ñ Ñелевого ÑÑейма",
+DlgLnkPopWinName : "ÐÐ¼Ñ Ð²ÑплÑваÑÑего окна",
+DlgLnkPopWinFeat : "СвойÑÑва вÑплÑваÑÑего окна",
+DlgLnkPopResize : "ÐзменÑÑÑееÑÑ Ð² ÑазмеÑаÑ
",
+DlgLnkPopLocation : "ÐÐ°Ð½ÐµÐ»Ñ Ð»Ð¾ÐºÐ°Ñии",
+DlgLnkPopMenu : "ÐÐ°Ð½ÐµÐ»Ñ Ð¼ÐµÐ½Ñ",
+DlgLnkPopScroll : "ÐолоÑÑ Ð¿ÑокÑÑÑки",
+DlgLnkPopStatus : "СÑÑока ÑоÑÑоÑниÑ",
+DlgLnkPopToolbar : "ÐÐ°Ð½ÐµÐ»Ñ Ð¸Ð½ÑÑÑÑменÑов",
+DlgLnkPopFullScrn : "ÐолнÑй ÑкÑан (IE)",
+DlgLnkPopDependent : "ÐавиÑимÑй (Netscape)",
+DlgLnkPopWidth : "ШиÑина",
+DlgLnkPopHeight : "ÐÑÑоÑа",
+DlgLnkPopLeft : "ÐозиÑÐ¸Ñ Ñлева",
+DlgLnkPopTop : "ÐозиÑÐ¸Ñ ÑвеÑÑ
Ñ",
+
+DlnLnkMsgNoUrl : "ÐожалÑйÑÑа введиÑе URL ÑÑÑлки",
+DlnLnkMsgNoEMail : "ÐожалÑйÑÑа введиÑе адÑÐµÑ Ñл. поÑÑÑ",
+DlnLnkMsgNoAnchor : "ÐожалÑйÑÑа вÑбеÑеÑе ÑкоÑÑ",
+
+// Color Dialog
+DlgColorTitle : "ÐÑбеÑиÑе ÑвеÑ",
+DlgColorBtnClear : "ÐÑиÑÑиÑÑ",
+DlgColorHighlight : "ÐодÑвеÑеннÑй",
+DlgColorSelected : "ÐÑбÑаннÑй",
+
+// Smiley Dialog
+DlgSmileyTitle : "ÐÑÑавиÑÑ Ñмайлик",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "ÐÑбеÑиÑе ÑпеÑиалÑнÑй Ñимвол",
+
+// Table Dialog
+DlgTableTitle : "СвойÑÑва ÑаблиÑÑ",
+DlgTableRows : "СÑÑоки",
+DlgTableColumns : "Ðолонки",
+DlgTableBorder : "Ð Ð°Ð·Ð¼ÐµÑ Ð±Ð¾ÑдÑÑа",
+DlgTableAlign : "ÐÑÑавнивание",
+DlgTableAlignNotSet : "<Ðе ÑÑÑ.>",
+DlgTableAlignLeft : "Слева",
+DlgTableAlignCenter : "Ðо ÑенÑÑÑ",
+DlgTableAlignRight : "СпÑава",
+DlgTableWidth : "ШиÑина",
+DlgTableWidthPx : "пикÑелей",
+DlgTableWidthPc : "пÑоÑенÑов",
+DlgTableHeight : "ÐÑÑоÑа",
+DlgTableCellSpace : "ÐÑомежÑÑок (spacing)",
+DlgTableCellPad : "ÐÑÑÑÑп (padding)",
+DlgTableCaption : "Ðаголовок",
+
+// Table Cell Dialog
+DlgCellTitle : "СвойÑÑва ÑÑейки",
+DlgCellWidth : "ШиÑина",
+DlgCellWidthPx : "пикÑелей",
+DlgCellWidthPc : "пÑоÑенÑов",
+DlgCellHeight : "ÐÑÑоÑа",
+DlgCellWordWrap : "ÐавоÑаÑивание ÑекÑÑа",
+DlgCellWordWrapNotSet : "<Ðе ÑÑÑ.>",
+DlgCellWordWrapYes : "Ðа",
+DlgCellWordWrapNo : "ÐеÑ",
+DlgCellHorAlign : "ÐоÑ. вÑÑавнивание",
+DlgCellHorAlignNotSet : "<Ðе ÑÑÑ.>",
+DlgCellHorAlignLeft : "Слева",
+DlgCellHorAlignCenter : "Ðо ÑенÑÑÑ",
+DlgCellHorAlignRight: "СпÑава",
+DlgCellVerAlign : "ÐеÑÑ. вÑÑавнивание",
+DlgCellVerAlignNotSet : "<Ðе ÑÑÑ.>",
+DlgCellVerAlignTop : "СвеÑÑ
Ñ",
+DlgCellVerAlignMiddle : "ÐоÑеÑедине",
+DlgCellVerAlignBottom : "СнизÑ",
+DlgCellVerAlignBaseline : "Ðо базовой линии",
+DlgCellRowSpan : "Ðиапазон ÑÑÑок (span)",
+DlgCellCollSpan : "Ðиапазон колонок (span)",
+DlgCellBackColor : "Ð¦Ð²ÐµÑ Ñона",
+DlgCellBorderColor : "Ð¦Ð²ÐµÑ Ð±Ð¾ÑдÑÑа",
+DlgCellBtnSelect : "ÐÑбеÑиÑе...",
+
+// Find Dialog
+DlgFindTitle : "ÐайÑи",
+DlgFindFindBtn : "ÐайÑи",
+DlgFindNotFoundMsg : "УказаннÑй ÑекÑÑ Ð½Ðµ найден.",
+
+// Replace Dialog
+DlgReplaceTitle : "ÐамениÑÑ",
+DlgReplaceFindLbl : "ÐайÑи:",
+DlgReplaceReplaceLbl : "ÐамениÑÑ Ð½Ð°:",
+DlgReplaceCaseChk : "УÑиÑÑваÑÑ ÑегиÑÑÑ",
+DlgReplaceReplaceBtn : "ÐамениÑÑ",
+DlgReplaceReplAllBtn : "ÐамениÑÑ Ð²Ñе",
+DlgReplaceWordChk : "Совпадение ÑелÑÑ
Ñлов",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "ÐаÑÑÑойки безопаÑноÑÑи ваÑего бÑаÑзеÑа не позволÑÑÑ ÑедакÑоÑÑ Ð°Ð²ÑомаÑиÑеÑки вÑполнÑÑÑ Ð¾Ð¿ÐµÑаÑии вÑÑавки. ÐожалÑйÑÑа иÑполÑзÑйÑе клавиаÑÑÑÑ Ð´Ð»Ñ ÑÑого (Ctrl+V).",
+PasteErrorCut : "ÐаÑÑÑойки безопаÑноÑÑи ваÑего бÑаÑзеÑа не позволÑÑÑ ÑедакÑоÑÑ Ð°Ð²ÑомаÑиÑеÑки вÑполнÑÑÑ Ð¾Ð¿ÐµÑаÑии вÑÑезаниÑ. ÐожалÑйÑÑа иÑполÑзÑйÑе клавиаÑÑÑÑ Ð´Ð»Ñ ÑÑого (Ctrl+X).",
+PasteErrorCopy : "ÐаÑÑÑойки безопаÑноÑÑи ваÑего бÑаÑзеÑа не позволÑÑÑ ÑедакÑоÑÑ Ð°Ð²ÑомаÑиÑеÑки вÑполнÑÑÑ Ð¾Ð¿ÐµÑаÑии копиÑованиÑ. ÐожалÑйÑÑа иÑполÑзÑйÑе клавиаÑÑÑÑ Ð´Ð»Ñ ÑÑого (Ctrl+C).",
+
+PasteAsText : "ÐÑÑавиÑÑ ÑолÑко ÑекÑÑ",
+PasteFromWord : "ÐÑÑавиÑÑ Ð¸Ð· Word",
+
+DlgPasteMsg2 : "ÐожалÑйÑÑа вÑÑавÑÑе ÑекÑÑ Ð² пÑÑмоÑголÑник иÑполÑзÑÑ ÑоÑеÑание ÐºÐ»Ð°Ð²Ð¸Ñ (<STRONG>Ctrl+V</STRONG>) и нажмиÑе <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "ÐгноÑиÑоваÑÑ Ð¾Ð¿ÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ð³Ð°ÑниÑÑÑÑ",
+DlgPasteRemoveStyles : "УбÑаÑÑ Ð¾Ð¿ÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ ÑÑилей",
+DlgPasteCleanBox : "ÐÑиÑÑиÑÑ",
+
+
+// Color Picker
+ColorAutomatic : "ÐвÑомаÑиÑеÑкий",
+ColorMoreColors : "ЦвеÑа...",
+
+// Document Properties
+DocProps : "СвойÑÑва докÑменÑа",
+
+// Anchor Dialog
+DlgAnchorTitle : "СвойÑÑва ÑкоÑÑ",
+DlgAnchorName : "ÐÐ¼Ñ ÑкоÑÑ",
+DlgAnchorErrorName : "ÐожалÑйÑÑа введиÑе Ð¸Ð¼Ñ ÑкоÑÑ",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "ÐÐµÑ Ð² ÑловаÑе",
+DlgSpellChangeTo : "ÐамениÑÑ Ð½Ð°",
+DlgSpellBtnIgnore : "ÐгноÑиÑоваÑÑ",
+DlgSpellBtnIgnoreAll : "ÐгноÑиÑоваÑÑ Ð²Ñе",
+DlgSpellBtnReplace : "ÐамениÑÑ",
+DlgSpellBtnReplaceAll : "ÐамениÑÑ Ð²Ñе",
+DlgSpellBtnUndo : "ÐÑмениÑÑ",
+DlgSpellNoSuggestions : "- ÐÐµÑ Ð¿Ñедположений -",
+DlgSpellProgress : "ÐÐ´ÐµÑ Ð¿ÑовеÑка оÑÑогÑаÑии...",
+DlgSpellNoMispell : "ÐÑовеÑка оÑÑогÑаÑии законÑена: оÑибок не найдено",
+DlgSpellNoChanges : "ÐÑовеÑка оÑÑогÑаÑии законÑена: ни одного Ñлова не изменено",
+DlgSpellOneChange : "ÐÑовеÑка оÑÑогÑаÑии законÑена: одно Ñлово изменено",
+DlgSpellManyChanges : "ÐÑовеÑка оÑÑогÑаÑии законÑена: 1% Ñлов изменен",
+
+IeSpellDownload : "ÐодÑÐ»Ñ Ð¿ÑовеÑки оÑÑогÑаÑии не ÑÑÑановлен. ХоÑиÑе ÑкаÑаÑÑ ÐµÐ³Ð¾ ÑейÑаÑ?",
+
+// Button Dialog
+DlgButtonText : "ТекÑÑ (ÐнаÑение)",
+DlgButtonType : "Тип",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "ÐмÑ",
+DlgCheckboxValue : "ÐнаÑение",
+DlgCheckboxSelected : "ÐÑбÑаннаÑ",
+
+// Form Dialog
+DlgFormName : "ÐмÑ",
+DlgFormAction : "ÐейÑÑвие",
+DlgFormMethod : "ÐеÑод",
+
+// Select Field Dialog
+DlgSelectName : "ÐмÑ",
+DlgSelectValue : "ÐнаÑение",
+DlgSelectSize : "РазмеÑ",
+DlgSelectLines : "линии",
+DlgSelectChkMulti : "РазÑеÑиÑÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑвеннÑй вÑбоÑ",
+DlgSelectOpAvail : "ÐоÑÑÑпнÑе ваÑианÑÑ",
+DlgSelectOpText : "ТекÑÑ",
+DlgSelectOpValue : "ÐнаÑение",
+DlgSelectBtnAdd : "ÐобавиÑÑ",
+DlgSelectBtnModify : "ÐодиÑиÑиÑоваÑÑ",
+DlgSelectBtnUp : "ÐвеÑÑ
",
+DlgSelectBtnDown : "Ðниз",
+DlgSelectBtnSetValue : "УÑÑановиÑÑ ÐºÐ°Ðº вÑбÑанное знаÑение",
+DlgSelectBtnDelete : "УдалиÑÑ",
+
+// Textarea Dialog
+DlgTextareaName : "ÐмÑ",
+DlgTextareaCols : "Ðолонки",
+DlgTextareaRows : "СÑÑоки",
+
+// Text Field Dialog
+DlgTextName : "ÐмÑ",
+DlgTextValue : "ÐнаÑение",
+DlgTextCharWidth : "ШиÑина",
+DlgTextMaxChars : "ÐакÑ. кол-во Ñимволов",
+DlgTextType : "Тип",
+DlgTextTypeText : "ТекÑÑ",
+DlgTextTypePass : "ÐаÑолÑ",
+
+// Hidden Field Dialog
+DlgHiddenName : "ÐмÑ",
+DlgHiddenValue : "ÐнаÑение",
+
+// Bulleted List Dialog
+BulletedListProp : "СвойÑÑва маÑкиÑованного ÑпиÑка",
+NumberedListProp : "СвойÑÑва нÑмеÑованного ÑпиÑка",
+DlgLstType : "Тип",
+DlgLstTypeCircle : "ÐÑÑг",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "ÐвадÑаÑ",
+DlgLstTypeNumbers : "ÐомеÑа (1, 2, 3)",
+DlgLstTypeLCase : "ÐÑÐºÐ²Ñ Ð½Ð¸Ð¶Ð½ÐµÐ³Ð¾ ÑегиÑÑÑа (a, b, c)",
+DlgLstTypeUCase : "ÐÑÐºÐ²Ñ Ð²ÐµÑÑ
него ÑегиÑÑÑа (A, B, C)",
+DlgLstTypeSRoman : "ÐалÑе ÑимÑкие бÑÐºÐ²Ñ (i, ii, iii)",
+DlgLstTypeLRoman : "ÐолÑÑие ÑимÑкие бÑÐºÐ²Ñ (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "ÐбÑие",
+DlgDocBackTab : "Ðадний Ñон",
+DlgDocColorsTab : "ЦвеÑа и оÑÑÑÑпÑ",
+DlgDocMetaTab : "ÐеÑа даннÑе",
+
+DlgDocPageTitle : "Ðаголовок ÑÑÑаниÑÑ",
+DlgDocLangDir : "ÐапÑавление ÑекÑÑа",
+DlgDocLangDirLTR : "Слева на пÑаво (LTR)",
+DlgDocLangDirRTL : "СпÑава на лево (RTL)",
+DlgDocLangCode : "Ðод ÑзÑка",
+DlgDocCharSet : "ÐодиÑовка набоÑа Ñимволов",
+DlgDocCharSetOther : "ÐÑÑÐ³Ð°Ñ ÐºÐ¾Ð´Ð¸Ñовка набоÑа Ñимволов",
+
+DlgDocDocType : "Ðаголовок Ñипа докÑменÑа",
+DlgDocDocTypeOther : "ÐÑÑгой заголовок Ñипа докÑменÑа",
+DlgDocIncXHTML : "ÐклÑÑиÑÑ XHTML обÑÑвлениÑ",
+DlgDocBgColor : "Ð¦Ð²ÐµÑ Ñона",
+DlgDocBgImage : "URL изобÑÐ°Ð¶ÐµÐ½Ð¸Ñ Ñона",
+DlgDocBgNoScroll : "ÐеÑкÑоллиÑÑемÑй Ñон",
+DlgDocCText : "ТекÑÑ",
+DlgDocCLink : "СÑÑлка",
+DlgDocCVisited : "ÐоÑеÑÐµÐ½Ð½Ð°Ñ ÑÑÑлка",
+DlgDocCActive : "ÐкÑÐ¸Ð²Ð½Ð°Ñ ÑÑÑлка",
+DlgDocMargins : "ÐÑÑÑÑÐ¿Ñ ÑÑÑаниÑÑ",
+DlgDocMaTop : "ÐеÑÑ
ний",
+DlgDocMaLeft : "ÐевÑй",
+DlgDocMaRight : "ÐÑавÑй",
+DlgDocMaBottom : "Ðижний",
+DlgDocMeIndex : "ÐлÑÑевÑе Ñлова докÑменÑа (ÑазделеннÑе запÑÑой)",
+DlgDocMeDescr : "ÐпиÑание докÑменÑа",
+DlgDocMeAuthor : "ÐвÑоÑ",
+DlgDocMeCopy : "ÐвÑоÑÑкие пÑава",
+DlgDocPreview : "ÐÑедваÑиÑелÑнÑй пÑоÑмоÑÑ",
+
+// Templates Dialog
+Templates : "ШаблонÑ",
+DlgTemplatesTitle : "Ð¨Ð°Ð±Ð»Ð¾Ð½Ñ ÑодеÑжимого",
+DlgTemplatesSelMsg : "ÐожалÑйÑÑа вÑбеÑеÑе Ñаблон Ð´Ð»Ñ Ð¾ÑкÑÑÑÐ¸Ñ Ð² ÑедакÑоÑе<br>(ÑекÑÑее ÑодеÑжимое бÑÐ´ÐµÑ Ð¿Ð¾ÑеÑÑно):",
+DlgTemplatesLoading : "ÐагÑÑзка ÑпиÑка Ñаблонов. ÐожалÑйÑÑа подождиÑе...",
+DlgTemplatesNoTpl : "(Ðи одного Ñаблона не опÑеделено)",
+
+// About Dialog
+DlgAboutAboutTab : "РпÑогÑамме",
+DlgAboutBrowserInfoTab : "ÐнÑоÑмаÑÐ¸Ñ Ð±ÑаÑзеÑа",
+DlgAboutVersion : "ÐеÑÑиÑ",
+DlgAboutLicense : "ÐиÑензиÑовано в ÑооÑвеÑÑÑвии Ñ ÑÑловиÑми GNU Lesser General Public License",
+DlgAboutInfo : "ÐÐ»Ñ Ð±Ð¾Ð»ÑÑей инÑоÑмаÑии, поÑеÑиÑе"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/sk.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/sk.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/sk.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sk.js
+ * Slovak language file.
+ *
+ * File Authors:
+ * Samuel Szabo (samuel at nanete.sk)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Skryť panel nástrojov",
+ToolbarExpand : "Zobraziť panel nástrojov",
+
+// Toolbar Items and Context Menu
+Save : "Uložit",
+NewPage : "Nová stránka",
+Preview : "Náhľad",
+Cut : "Vystrihnúť",
+Copy : "KopÃrovaÅ¥",
+Paste : "Vložiť",
+PasteText : "VložiÅ¥ ako Äistý text",
+PasteWord : "Vložiť z Wordu",
+Print : "TlaÄ",
+SelectAll : "Vybrať všetko",
+RemoveFormat : "Odstrániť formátovanie",
+InsertLinkLbl : "Odkaz",
+InsertLink : "Vložiť/zmeniť odkaz",
+RemoveLink : "Odstrániť odkaz",
+Anchor : "Vložiť/zmeniť kotvu",
+InsertImageLbl : "Obrázok",
+InsertImage : "Vložiť/zmeniť obrazok",
+InsertFlashLbl : "Flash",
+InsertFlash : "Vložiť/zmeniť Flash",
+InsertTableLbl : "Tabuľka",
+InsertTable : "Vložiť/zmeniť tabulku",
+InsertLineLbl : "Äiara",
+InsertLine : "VložiÅ¥ vodorovnú Äiara",
+InsertSpecialCharLbl: "Speciálne znaky",
+InsertSpecialChar : "Vložiť špeciálne znaky",
+InsertSmileyLbl : "SmajlÃky",
+InsertSmiley : "VložiÅ¥ smajlÃka",
+About : "O aplikáci FCKeditor",
+Bold : "TuÄné",
+Italic : "KurzÃva",
+Underline : "PodÄiarknuté",
+StrikeThrough : "PreÄiarknuté",
+Subscript : "Dolný index",
+Superscript : "Horný index",
+LeftJustify : "Zarovnať vľavo",
+CenterJustify : "Zarovnať na stred",
+RightJustify : "Zarovnať vpravo",
+BlockJustify : "Zarovnať do bloku",
+DecreaseIndent : "Zmenšiť odsadenie",
+IncreaseIndent : "ZväÄÅ¡iÅ¥ odsadenie",
+Undo : "Späť",
+Redo : "Znovu",
+NumberedListLbl : "ÄÃslovanie",
+NumberedList : "VložiÅ¥/odstrániÅ¥ ÄÃslovaný zoznam",
+BulletedListLbl : "Odrážky",
+BulletedList : "Vložiť/odstraniť odrážky",
+ShowTableBorders : "Zobraziť okraje tabuliek",
+ShowDetails : "Zobraziť podrobnosti",
+Style : "Štýl",
+FontFormat : "Formát",
+Font : "PÃsmo",
+FontSize : "Veľkost",
+TextColor : "Farba textu",
+BGColor : "Farba pozadia",
+Source : "Zdroj",
+Find : "Hľadať",
+Replace : "Nahradiť",
+SpellCheck : "Kontrola pravopisu",
+UniversalKeyboard : "Univerzálna klávesnica",
+
+Form : "Formulár",
+Checkbox : "ZaÅ¡krtávacie polÃÄko",
+RadioButton : "PrepÃnaÄ",
+TextField : "Textové pole",
+Textarea : "Textová oblasť",
+HiddenField : "Skryté pole",
+Button : "TlaÄÃtko",
+SelectionField : "Rozbaľovacà zoznam",
+ImageButton : "Obrázkové tlaÄÃtko",
+
+// Context Menu
+EditLink : "Zmeniť odkaz",
+InsertRow : "Vložiť riadok",
+DeleteRows : "Zmazať riadok",
+InsertColumn : "Vložiť stĺpec",
+DeleteColumns : "Zmazať stĺpec",
+InsertCell : "Vložiť bunku",
+DeleteCells : "Zmazať bunky",
+MergeCells : "ZlúÄiÅ¥ bunky",
+SplitCell : "Rozdeliť bunku",
+CellProperties : "Vlastnosti bunky",
+TableProperties : "Vlastnosti tabulky",
+ImageProperties : "Vlastnosti obrázka",
+FlashProperties : "Vlastnosti Flashu",
+
+AnchorProp : "Vlastnosti kotvy",
+ButtonProp : "Vlastnosti tlaÄÃtka",
+CheckboxProp : "Vlastnosti zaÅ¡krtávacieho polÃÄka",
+HiddenFieldProp : "Vlastnosti skrytého poľa",
+RadioButtonProp : "Vlastnosti prepÃnaÄa",
+ImageButtonProp : "Vlastnosti obrázkového tlaÄÃtka",
+TextFieldProp : "Vlastnosti textového pola",
+SelectionFieldProp : "Vlastnosti rozbaľovacieho zoznamu",
+TextareaProp : "Vlastnosti textové oblasti",
+FormProp : "Vlastnosti formulára",
+
+FontFormats : "Normálny;Formátovaný;Adresa;Nadpis 1;Nadpis 2;Nadpis 3;Nadpis 4;Nadpis 5;Nadpis 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Prebieha spracovanie XHTML. ProsÃm Äakejte...",
+Done : "DokonÄené.",
+PasteWordConfirm : "Vyzerá to tak, že vkladaný text je kopÃrovaný z Wordu. Chcete ho pred vloženÃm vyÄistiÅ¥?",
+NotCompatiblePaste : "Tento prÃkaz je dostupný len v prehliadaÄi Internet Explorer verzie 5.5 alebo vyÅ¡Å¡ej. Chcete vložiÅ¥ text bez vyÄistenia?",
+UnknownToolbarItem : "Neznáma položka panela nástrojov \"%1\"",
+UnknownCommand : "Neznámy prÃkaz \"%1\"",
+NotImplemented : "PrÃkaz nie je implementovaný",
+UnknownToolbarSet : "Panel nástrojov \"%1\" neexistuje",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Zrušiť",
+DlgBtnClose : "Zavrieť",
+DlgBtnBrowseServer : "Prechádzať server",
+DlgAdvancedTag : "RozÅ¡Ãrené",
+DlgOpOther : "<ÄalÅ¡ie>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "ProsÃm vložte URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<nenastavené>",
+DlgGenId : "Id",
+DlgGenLangDir : "Orientácia jazyka",
+DlgGenLangDirLtr : "Zľava doprava (LTR)",
+DlgGenLangDirRtl : "Zprava doľava (RTL)",
+DlgGenLangCode : "Kód jazyka",
+DlgGenAccessKey : "PrÃstupový kľúÄ",
+DlgGenName : "Meno",
+DlgGenTabIndex : "Poradie prvku",
+DlgGenLongDescr : "Dlhý popis URL",
+DlgGenClass : "Trieda štýlu",
+DlgGenTitle : "Pomocný titulok",
+DlgGenContType : "Pomocný typ obsahu",
+DlgGenLinkCharset : "Priradená znaková sada",
+DlgGenStyle : "Štýl",
+
+// Image Dialog
+DlgImgTitle : "Vlastnosti obrázku",
+DlgImgInfoTab : "Informácie o obrázku",
+DlgImgBtnUpload : "Odoslať na server",
+DlgImgURL : "URL",
+DlgImgUpload : "Odoslať",
+DlgImgAlt : "AlternatÃvny text",
+DlgImgWidth : "Å Ãrka",
+DlgImgHeight : "Výška",
+DlgImgLockRatio : "Zámok",
+DlgBtnResetSize : "Pôvodná veľkosť",
+DlgImgBorder : "Okraje",
+DlgImgHSpace : "H-medzera",
+DlgImgVSpace : "V-medzera",
+DlgImgAlign : "Zarovnanie",
+DlgImgAlignLeft : "Vľevo",
+DlgImgAlignAbsBottom: "Ãplne dole",
+DlgImgAlignAbsMiddle: "Do stredu",
+DlgImgAlignBaseline : "Na základÅu",
+DlgImgAlignBottom : "Dole",
+DlgImgAlignMiddle : "Na stred",
+DlgImgAlignRight : "Vpravo",
+DlgImgAlignTextTop : "Na horný okraj textu",
+DlgImgAlignTop : "Nahor",
+DlgImgPreview : "Náhľad",
+DlgImgAlertUrl : "Zadajte prosÃm URL obrázku",
+DlgImgLinkTab : "Odkaz",
+
+// Flash Dialog
+DlgFlashTitle : "Vlastnosti Flashu",
+DlgFlashChkPlay : "Automatické prehrávanie",
+DlgFlashChkLoop : "Opakovanie",
+DlgFlashChkMenu : "Povoliť Flash Menu",
+DlgFlashScale : "Mierka",
+DlgFlashScaleAll : "Zobraziť mierku",
+DlgFlashScaleNoBorder : "Bez okrajov",
+DlgFlashScaleFit : "Roztiahnuť na celé",
+
+// Link Dialog
+DlgLnkWindowTitle : "Odkaz",
+DlgLnkInfoTab : "Informácie o odkaze",
+DlgLnkTargetTab : "Cieľ",
+
+DlgLnkType : "Typ odkazu",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Kotva v tejto stránke",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<iný>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Vybrať kotvu",
+DlgLnkAnchorByName : "Podľa mena kotvy",
+DlgLnkAnchorById : "Podľa Id objektu",
+DlgLnkNoAnchors : "<V stránke žiadna kotva nie je definovaná>",
+DlgLnkEMail : "E-Mailová adresa",
+DlgLnkEMailSubject : "Predmet správy",
+DlgLnkEMailBody : "Telo správy",
+DlgLnkUpload : "Odoslať",
+DlgLnkBtnUpload : "Odoslať na server",
+
+DlgLnkTarget : "Cieľ",
+DlgLnkTargetFrame : "<rámec>",
+DlgLnkTargetPopup : "<vyskakovacie okno>",
+DlgLnkTargetBlank : "Nové okno (_blank)",
+DlgLnkTargetParent : "RodiÄovské okno (_parent)",
+DlgLnkTargetSelf : "Rovnaké okno (_self)",
+DlgLnkTargetTop : "Hlavné okno (_top)",
+DlgLnkTargetFrameName : "Meno rámu cieľa",
+DlgLnkPopWinName : "Názov vyskakovacieho okna",
+DlgLnkPopWinFeat : "Vlastnosti vyskakovacieho okna",
+DlgLnkPopResize : "MÄnitelná velikost",
+DlgLnkPopLocation : "Panel umÃstÄnÃ",
+DlgLnkPopMenu : "Panel ponuky",
+DlgLnkPopScroll : "PosuvnÃky",
+DlgLnkPopStatus : "Stavový riadok",
+DlgLnkPopToolbar : "Panel nástrojov",
+DlgLnkPopFullScrn : "Celá obrazovka (IE)",
+DlgLnkPopDependent : "Závislosť (Netscape)",
+DlgLnkPopWidth : "Å Ãrka",
+DlgLnkPopHeight : "Výška",
+DlgLnkPopLeft : "Ľavý okraj",
+DlgLnkPopTop : "Horný okraj",
+
+DlnLnkMsgNoUrl : "Zadajte prosÃm URL odkazu",
+DlnLnkMsgNoEMail : "Zadajte prosÃm e-mailovú adresu",
+DlnLnkMsgNoAnchor : "Vyberte prosÃm kotvu",
+
+// Color Dialog
+DlgColorTitle : "Výber farby",
+DlgColorBtnClear : "Vymazať",
+DlgColorHighlight : "Zvýraznená",
+DlgColorSelected : "Vybraná",
+
+// Smiley Dialog
+DlgSmileyTitle : "Vkladanie smajlÃkov",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Výber speciálneho znaku",
+
+// Table Dialog
+DlgTableTitle : "Vlastnosti tabuľky",
+DlgTableRows : "Riadky",
+DlgTableColumns : "Stĺpce",
+DlgTableBorder : "OhraniÄenie",
+DlgTableAlign : "Zarovnanie",
+DlgTableAlignNotSet : "<nenastavené>",
+DlgTableAlignLeft : "Vľavo",
+DlgTableAlignCenter : "Na stred",
+DlgTableAlignRight : "Vpravo",
+DlgTableWidth : "Å Ãrka",
+DlgTableWidthPx : "pixelov",
+DlgTableWidthPc : "percent",
+DlgTableHeight : "Výška",
+DlgTableCellSpace : "Vzdialenosť buniek",
+DlgTableCellPad : "Odsadenie obsahu",
+DlgTableCaption : "Popis",
+
+// Table Cell Dialog
+DlgCellTitle : "Vlastnosti bunky",
+DlgCellWidth : "Å Ãrka",
+DlgCellWidthPx : "bodov",
+DlgCellWidthPc : "percent",
+DlgCellHeight : "Výška",
+DlgCellWordWrap : "Zalamovannie",
+DlgCellWordWrapNotSet : "<nenanstavené>",
+DlgCellWordWrapYes : "Ãno",
+DlgCellWordWrapNo : "Nie",
+DlgCellHorAlign : "Vodorovné zarovnanie",
+DlgCellHorAlignNotSet : "<nenastavené>",
+DlgCellHorAlignLeft : "Vľavo",
+DlgCellHorAlignCenter : "Na stred",
+DlgCellHorAlignRight: "Vpravo",
+DlgCellVerAlign : "Zvyslé zarovnanie",
+DlgCellVerAlignNotSet : "<nenastavené>",
+DlgCellVerAlignTop : "Nahor",
+DlgCellVerAlignMiddle : "Doprostred",
+DlgCellVerAlignBottom : "Dole",
+DlgCellVerAlignBaseline : "Na základÅu",
+DlgCellRowSpan : "ZlúÄené riadky",
+DlgCellCollSpan : "ZlúÄené stĺpce",
+DlgCellBackColor : "Farba pozadia",
+DlgCellBorderColor : "Farba ohraniÄenia",
+DlgCellBtnSelect : "Výber...",
+
+// Find Dialog
+DlgFindTitle : "Hľadať",
+DlgFindFindBtn : "Hľadať",
+DlgFindNotFoundMsg : "Hľadaný text nebol nájdený.",
+
+// Replace Dialog
+DlgReplaceTitle : "Nahradiť",
+DlgReplaceFindLbl : "Äo hľadaÅ¥:",
+DlgReplaceReplaceLbl : "ÄÃm nahradiÅ¥:",
+DlgReplaceCaseChk : "RozliÅ¡ovaÅ¥ malé/veľké pÃsmená",
+DlgReplaceReplaceBtn : "Nahradiť",
+DlgReplaceReplAllBtn : "Nahradiť všetko",
+DlgReplaceWordChk : "Len celé slová",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "BezpeÄnostné nastavenie Vášho prohehliadaÄa nedovoľujú editoru spustiÅ¥ funkciu pre vloženie textu zo schránky. ProsÃm vložte text zo schránky pomocou klávesnice (Ctrl+V).",
+PasteErrorCut : "BezpeÄnostné nastavenie Vášho prohehliadaÄa nedovoľujú editoru spustiÅ¥ funkciu pre vystrihnutie zvoleného textu do schránky. ProsÃm vystrihnite zvolený text do schránky pomocou klávesnice (Ctrl+X).",
+PasteErrorCopy : "BezpeÄnostné nastavenie Vášho prohehliadaÄa nedovoľujú editoru spustiÅ¥ funkciu pre kopÃrovánie zvoleného textu do schránky. ProsÃm skopÃrujte zvolený text do schránky pomocou klávesnice (Ctrl+C).",
+
+PasteAsText : "VložiÅ¥ ako Äistý text",
+PasteFromWord : "Vložiť text z Wordu",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "IgnorovaÅ¥ nastavenia typu pÃsma",
+DlgPasteRemoveStyles : "Odstrániť formátovanie",
+DlgPasteCleanBox : "VyÄistiÅ¥ schránku",
+
+
+// Color Picker
+ColorAutomatic : "Automaticky",
+ColorMoreColors : "Viac farieb...",
+
+// Document Properties
+DocProps : "Vlastnosti dokumentu",
+
+// Anchor Dialog
+DlgAnchorTitle : "Vlastnosti kotvy",
+DlgAnchorName : "Meno kotvy",
+DlgAnchorErrorName : "Zadajte prosÃm meno kotvy",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Nie je v slovnÃku",
+DlgSpellChangeTo : "Zmeniť na",
+DlgSpellBtnIgnore : "Ignorovať",
+DlgSpellBtnIgnoreAll : "Ignorovať všetko",
+DlgSpellBtnReplace : "PrepÃsat",
+DlgSpellBtnReplaceAll : "PrepÃsat vÅ¡etko",
+DlgSpellBtnUndo : "Späť",
+DlgSpellNoSuggestions : "- Žiadny návrh -",
+DlgSpellProgress : "Prebieha kontrola pravopisu...",
+DlgSpellNoMispell : "Kontrola pravopisu dokonÄená: bez chyb",
+DlgSpellNoChanges : "Kontrola pravopisu dokonÄená: žiadne slová nezmenené",
+DlgSpellOneChange : "Kontrola pravopisu dokonÄená: zmenené jedno slovo",
+DlgSpellManyChanges : "Kontrola pravopisu dokonÄená: zmenených %1 slov",
+
+IeSpellDownload : "Kontrola pravopisu nie je naiÅ¡talovaná. Chcete ju hneÄ stiahnuÅ¥?",
+
+// Button Dialog
+DlgButtonText : "Text",
+DlgButtonType : "Typ",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Názov",
+DlgCheckboxValue : "Hodnota",
+DlgCheckboxSelected : "Vybrané",
+
+// Form Dialog
+DlgFormName : "Názov",
+DlgFormAction : "Akcie",
+DlgFormMethod : "Metóda",
+
+// Select Field Dialog
+DlgSelectName : "Názov",
+DlgSelectValue : "Hodnota",
+DlgSelectSize : "Veľkosť",
+DlgSelectLines : "riadkov",
+DlgSelectChkMulti : "Povoliť viacnásobný výber",
+DlgSelectOpAvail : "Dostupné možnosti",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Hodnota",
+DlgSelectBtnAdd : "Pridať",
+DlgSelectBtnModify : "Zmeniť",
+DlgSelectBtnUp : "Nahor",
+DlgSelectBtnDown : "Dolu",
+DlgSelectBtnSetValue : "Nastaviť ako vybranú hodnotu",
+DlgSelectBtnDelete : "Zmazať",
+
+// Textarea Dialog
+DlgTextareaName : "Názov",
+DlgTextareaCols : "Stĺpce",
+DlgTextareaRows : "Riadky",
+
+// Text Field Dialog
+DlgTextName : "Názov",
+DlgTextValue : "Hodnota",
+DlgTextCharWidth : "Å Ãrka pola (znakov)",
+DlgTextMaxChars : "Maximálny poÄet znakov",
+DlgTextType : "Typ",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Heslo",
+
+// Hidden Field Dialog
+DlgHiddenName : "Názov",
+DlgHiddenValue : "Hodnota",
+
+// Bulleted List Dialog
+BulletedListProp : "Vlastnosti odrážok",
+NumberedListProp : "Vlastnosti ÄÃslovania",
+DlgLstType : "Typ",
+DlgLstTypeCircle : "Krúžok",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Å tvorec",
+DlgLstTypeNumbers : "ÄÃslovanie (1, 2, 3)",
+DlgLstTypeLCase : "Malé pÃsmená (a, b, c)",
+DlgLstTypeUCase : "Veľké pÃsmená (A, B, C)",
+DlgLstTypeSRoman : "Malé rÃmske ÄÃslice (i, ii, iii)",
+DlgLstTypeLRoman : "Veľké rÃmske ÄÃslice (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Všeobecné",
+DlgDocBackTab : "Pozadie",
+DlgDocColorsTab : "Farby a okraje",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Titulok",
+DlgDocLangDir : "Orientácie jazyka",
+DlgDocLangDirLTR : "Zľeva doprava (LTR)",
+DlgDocLangDirRTL : "Zprava doľava (RTL)",
+DlgDocLangCode : "Kód jazyka",
+DlgDocCharSet : "Kódová stránka",
+DlgDocCharSetOther : "Iná kódová stránka",
+
+DlgDocDocType : "Typ záhlavia dokumentu",
+DlgDocDocTypeOther : "Iný typ záhlavia dokumentu",
+DlgDocIncXHTML : "Obsahuje deklarácie XHTML",
+DlgDocBgColor : "Farba pozadia",
+DlgDocBgImage : "URL adresa obrázku na pozadÃ",
+DlgDocBgNoScroll : "Fixné pozadie",
+DlgDocCText : "Text",
+DlgDocCLink : "Odkaz",
+DlgDocCVisited : "NavÅ¡tÃvený odkaz",
+DlgDocCActive : "AktÃvny odkaz",
+DlgDocMargins : "Okraje stránky",
+DlgDocMaTop : "Horný",
+DlgDocMaLeft : "Ľavý",
+DlgDocMaRight : "Pravý",
+DlgDocMaBottom : "Dolný",
+DlgDocMeIndex : "KľúÄové slová pre indexovanie (oddelené Äiarkou)",
+DlgDocMeDescr : "Popis stránky",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Autorské práva",
+DlgDocPreview : "Náhľad",
+
+// Templates Dialog
+Templates : "Šablóny",
+DlgTemplatesTitle : "Šablóny obsahu",
+DlgTemplatesSelMsg : "ProsÃm vyberte Å¡ablóny ma otvorenie v editore<br>(terajÅ¡Ã obsah bude stratený):",
+DlgTemplatesLoading : "Nahrávam zoznam Å¡ablón. Äakajte prosÃm...",
+DlgTemplatesNoTpl : "(žiadne šablóny nenájdené)",
+
+// About Dialog
+DlgAboutAboutTab : "O aplikáci",
+DlgAboutBrowserInfoTab : "Informácie o prehliadaÄi",
+DlgAboutVersion : "verzie",
+DlgAboutLicense : "Licencované pod pravidlami GNU Lesser General Public License",
+DlgAboutInfo : "Viac informácià zÃskate na"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/sl.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/sl.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/sl.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sl.js
+ * Slovenian language file.
+ *
+ * File Authors:
+ * Boris VolariÄ (vol at rutka.net)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Zloži orodno vrstico",
+ToolbarExpand : "Razširi orodno vrstico",
+
+// Toolbar Items and Context Menu
+Save : "Shrani",
+NewPage : "Nova stran",
+Preview : "Predogled",
+Cut : "Izreži",
+Copy : "Kopiraj",
+Paste : "Prilepi",
+PasteText : "Prilepi kot golo besedilo",
+PasteWord : "Prilepi iz Worda",
+Print : "Natisni",
+SelectAll : "Izberi vse",
+RemoveFormat : "Odstrani oblikovanje",
+InsertLinkLbl : "Povezava",
+InsertLink : "Vstavi/uredi povezavo",
+RemoveLink : "Odstrani povezavo",
+Anchor : "Vstavi/uredi zaznamek",
+InsertImageLbl : "Slika",
+InsertImage : "Vstavi/uredi sliko",
+InsertFlashLbl : "Flash",
+InsertFlash : "Vstavi/Uredi Flash",
+InsertTableLbl : "Tabela",
+InsertTable : "Vstavi/uredi tabelo",
+InsertLineLbl : "Ärta",
+InsertLine : "Vstavi vodoravno Ärto",
+InsertSpecialCharLbl: "Posebni znak",
+InsertSpecialChar : "Vstavi posebni znak",
+InsertSmileyLbl : "Smeško",
+InsertSmiley : "Vstavi smeška",
+About : "O FCKeditorju",
+Bold : "Krepko",
+Italic : "LežeÄe",
+Underline : "PodÄrtano",
+StrikeThrough : "PreÄrtano",
+Subscript : "Podpisano",
+Superscript : "Nadpisano",
+LeftJustify : "Leva poravnava",
+CenterJustify : "Sredinska poravnava",
+RightJustify : "Desna poravnava",
+BlockJustify : "Obojestranska poravnava",
+DecreaseIndent : "Zmanjšaj zamik",
+IncreaseIndent : "PoveÄaj zamik",
+Undo : "Razveljavi",
+Redo : "Ponovi",
+NumberedListLbl : "OÅ¡tevilÄen seznam",
+NumberedList : "Vstavi/odstrani oÅ¡tevilÄevanje",
+BulletedListLbl : "OznaÄen seznam",
+BulletedList : "Vstavi/odstrani oznaÄevanje",
+ShowTableBorders : "Pokaži meje tabele",
+ShowDetails : "Pokaži podrobnosti",
+Style : "Slog",
+FontFormat : "Oblika",
+Font : "Pisava",
+FontSize : "Velikost",
+TextColor : "Barva besedila",
+BGColor : "Barva ozadja",
+Source : "Izvorna koda",
+Find : "Najdi",
+Replace : "Zamenjaj",
+SpellCheck : "Preveri Ärkovanje",
+UniversalKeyboard : "VeÄjeziÄna tipkovnica",
+
+Form : "Obrazec",
+Checkbox : "Potrditveno polje",
+RadioButton : "Izbirno polje",
+TextField : "Vnosno polje",
+Textarea : "Vnosno obmoÄje",
+HiddenField : "Skrito polje",
+Button : "Gumb",
+SelectionField : "Spustni seznam",
+ImageButton : "Gumb s sliko",
+
+// Context Menu
+EditLink : "Uredi povezavo",
+InsertRow : "Vstavi vrstico",
+DeleteRows : "Izbriši vrstice",
+InsertColumn : "Vstavi stolpec",
+DeleteColumns : "Izbriši stolpce",
+InsertCell : "Vstavi celico",
+DeleteCells : "Izbriši celice",
+MergeCells : "Združi celice",
+SplitCell : "Razdeli celico",
+CellProperties : "Lastnosti celice",
+TableProperties : "Lastnosti tabele",
+ImageProperties : "Lastnosti slike",
+FlashProperties : "Lastnosti Flash",
+
+AnchorProp : "Lastnosti zaznamka",
+ButtonProp : "Lastnosti gumba",
+CheckboxProp : "Lastnosti potrditvenega polja",
+HiddenFieldProp : "Lastnosti skritega polja",
+RadioButtonProp : "Lastnosti izbirnega polja",
+ImageButtonProp : "Lastnosti gumba s sliko",
+TextFieldProp : "Lastnosti vnosnega polja",
+SelectionFieldProp : "Lastnosti spustnega seznama",
+TextareaProp : "Lastnosti vnosnega obmoÄja",
+FormProp : "Lastnosti obrazca",
+
+FontFormats : "Navaden;Oblikovan;Napis;Naslov 1;Naslov 2;Naslov 3;Naslov 4;Naslov 5;Naslov 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Obdelujem XHTML. Prosim poÄakajte...",
+Done : "Narejeno",
+PasteWordConfirm : "Izgleda, da želite prilepiti besedilo iz Worda. Ali ga želite oÄistiti, preden ga prilepite?",
+NotCompatiblePaste : "Ta ukaz deluje le v Internet Explorerje razliÄice 5.5 ali viÅ¡je. Ali želite prilepiti brez ÄiÅ¡Äenja?",
+UnknownToolbarItem : "Neznan element orodne vrstice \"%1\"",
+UnknownCommand : "Neznano ime ukaza \"%1\"",
+NotImplemented : "Ukaz ni izdelan",
+UnknownToolbarSet : "Skupina orodnih vrstic \"%1\" ne obstoja",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "V redu",
+DlgBtnCancel : "PrekliÄi",
+DlgBtnClose : "Zapri",
+DlgBtnBrowseServer : "Prebrskaj na strežniku",
+DlgAdvancedTag : "Napredno",
+DlgOpOther : "<Ostalo>",
+DlgInfoTab : "Podatki",
+DlgAlertUrl : "Prosim vpiši spletni naslov",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ni postavljen>",
+DlgGenId : "Id",
+DlgGenLangDir : "Smer jezika",
+DlgGenLangDirLtr : "Od leve proti desni (LTR)",
+DlgGenLangDirRtl : "Od desne proti levi (RTL)",
+DlgGenLangCode : "Oznaka jezika",
+DlgGenAccessKey : "Vstopno geslo",
+DlgGenName : "Ime",
+DlgGenTabIndex : "Å tevilka tabulatorja",
+DlgGenLongDescr : "Dolg opis URL-ja",
+DlgGenClass : "Razred stilne predloge",
+DlgGenTitle : "Predlagani naslov",
+DlgGenContType : "Predlagani tip vsebine (content-type)",
+DlgGenLinkCharset : "Kodna tabela povezanega vira",
+DlgGenStyle : "Slog",
+
+// Image Dialog
+DlgImgTitle : "Lastnosti slike",
+DlgImgInfoTab : "Podatki o sliki",
+DlgImgBtnUpload : "Pošlji na strežnik",
+DlgImgURL : "URL",
+DlgImgUpload : "Pošlji",
+DlgImgAlt : "Nadomestno besedilo",
+DlgImgWidth : "Å irina",
+DlgImgHeight : "Višina",
+DlgImgLockRatio : "Zakleni razmerje",
+DlgBtnResetSize : "Ponastavi velikost",
+DlgImgBorder : "Obroba",
+DlgImgHSpace : "Vodoravni razmik",
+DlgImgVSpace : "NavpiÄni razmik",
+DlgImgAlign : "Poravnava",
+DlgImgAlignLeft : "Levo",
+DlgImgAlignAbsBottom: "Popolnoma na dno",
+DlgImgAlignAbsMiddle: "Popolnoma v sredino",
+DlgImgAlignBaseline : "Na osnovno Ärto",
+DlgImgAlignBottom : "Na dno",
+DlgImgAlignMiddle : "V sredino",
+DlgImgAlignRight : "Desno",
+DlgImgAlignTextTop : "Besedilo na vrh",
+DlgImgAlignTop : "Na vrh",
+DlgImgPreview : "Predogled",
+DlgImgAlertUrl : "Vnesite URL slike",
+DlgImgLinkTab : "Povezava",
+
+// Flash Dialog
+DlgFlashTitle : "Lastnosti Flash",
+DlgFlashChkPlay : "Samodejno predvajaj",
+DlgFlashChkLoop : "Ponavljanje",
+DlgFlashChkMenu : "OmogoÄi Flash Meni",
+DlgFlashScale : "PoveÄava",
+DlgFlashScaleAll : "Pokaži vse",
+DlgFlashScaleNoBorder : "Brez obrobe",
+DlgFlashScaleFit : "NatanÄno prileganje",
+
+// Link Dialog
+DlgLnkWindowTitle : "Povezava",
+DlgLnkInfoTab : "Podatki o povezavi",
+DlgLnkTargetTab : "Cilj",
+
+DlgLnkType : "Vrsta povezave",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Zaznamek na tej strani",
+DlgLnkTypeEMail : "Elektronski naslov",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<drugo>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Izberi zaznamek",
+DlgLnkAnchorByName : "Po imenu zaznamka",
+DlgLnkAnchorById : "Po ID-ju elementa",
+DlgLnkNoAnchors : "<V tem dokumentu ni zaznamkov>",
+DlgLnkEMail : "Elektronski naslov",
+DlgLnkEMailSubject : "Predmet sporoÄila",
+DlgLnkEMailBody : "Vsebina sporoÄila",
+DlgLnkUpload : "Prenesi",
+DlgLnkBtnUpload : "Pošlji na strežnik",
+
+DlgLnkTarget : "Cilj",
+DlgLnkTargetFrame : "<okvir>",
+DlgLnkTargetPopup : "<pojavno okno>",
+DlgLnkTargetBlank : "Novo okno (_blank)",
+DlgLnkTargetParent : "Starševsko okno (_parent)",
+DlgLnkTargetSelf : "Isto okno (_self)",
+DlgLnkTargetTop : "Najvišje okno (_top)",
+DlgLnkTargetFrameName : "Ime ciljnega okvirja",
+DlgLnkPopWinName : "Ime pojavnega okna",
+DlgLnkPopWinFeat : "ZnaÄilnosti pojavnega okna",
+DlgLnkPopResize : "Spremenljive velikosti",
+DlgLnkPopLocation : "Naslovna vrstica",
+DlgLnkPopMenu : "Menijska vrstica",
+DlgLnkPopScroll : "Drsniki",
+DlgLnkPopStatus : "Vrstica stanja",
+DlgLnkPopToolbar : "Orodna vrstica",
+DlgLnkPopFullScrn : "Celozaslonska slika (IE)",
+DlgLnkPopDependent : "Podokno (Netscape)",
+DlgLnkPopWidth : "Å irina",
+DlgLnkPopHeight : "Višina",
+DlgLnkPopLeft : "Lega levo",
+DlgLnkPopTop : "Lega na vrhu",
+
+DlnLnkMsgNoUrl : "Vnesite URL povezave",
+DlnLnkMsgNoEMail : "Vnesite elektronski naslov",
+DlnLnkMsgNoAnchor : "Izberite zaznamek",
+
+// Color Dialog
+DlgColorTitle : "Izberite barvo",
+DlgColorBtnClear : "PoÄisti",
+DlgColorHighlight : "OznaÄi",
+DlgColorSelected : "Izbrano",
+
+// Smiley Dialog
+DlgSmileyTitle : "Vstavi smeška",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Izberi posebni znak",
+
+// Table Dialog
+DlgTableTitle : "Lastnosti tabele",
+DlgTableRows : "Vrstice",
+DlgTableColumns : "Stolpci",
+DlgTableBorder : "Velikost obrobe",
+DlgTableAlign : "Poravnava",
+DlgTableAlignNotSet : "<Ni nastavljeno>",
+DlgTableAlignLeft : "Levo",
+DlgTableAlignCenter : "Sredinsko",
+DlgTableAlignRight : "Desno",
+DlgTableWidth : "Å irina",
+DlgTableWidthPx : "pik",
+DlgTableWidthPc : "procentov",
+DlgTableHeight : "Višina",
+DlgTableCellSpace : "Razmik med celicami",
+DlgTableCellPad : "Polnilo med celicami",
+DlgTableCaption : "Naslov",
+
+// Table Cell Dialog
+DlgCellTitle : "Lastnosti celice",
+DlgCellWidth : "Å irina",
+DlgCellWidthPx : "pik",
+DlgCellWidthPc : "procentov",
+DlgCellHeight : "Višina",
+DlgCellWordWrap : "Pomikanje besedila",
+DlgCellWordWrapNotSet : "<Ni nastavljeno>",
+DlgCellWordWrapYes : "Da",
+DlgCellWordWrapNo : "Ne",
+DlgCellHorAlign : "Vodoravna poravnava",
+DlgCellHorAlignNotSet : "<Ni nastavljeno>",
+DlgCellHorAlignLeft : "Levo",
+DlgCellHorAlignCenter : "Sredinsko",
+DlgCellHorAlignRight: "Desno",
+DlgCellVerAlign : "NavpiÄna poravnava",
+DlgCellVerAlignNotSet : "<Ni nastavljeno>",
+DlgCellVerAlignTop : "Na vrh",
+DlgCellVerAlignMiddle : "V sredino",
+DlgCellVerAlignBottom : "Na dno",
+DlgCellVerAlignBaseline : "Na osnovno Ärto",
+DlgCellRowSpan : "Spojenih vrstic (row-span)",
+DlgCellCollSpan : "Spojenih stolpcev (col-span)",
+DlgCellBackColor : "Barva ozadja",
+DlgCellBorderColor : "Barva obrobe",
+DlgCellBtnSelect : "Izberi...",
+
+// Find Dialog
+DlgFindTitle : "Najdi",
+DlgFindFindBtn : "Najdi",
+DlgFindNotFoundMsg : "Navedeno besedilo ni bilo najdeno.",
+
+// Replace Dialog
+DlgReplaceTitle : "Zamenjaj",
+DlgReplaceFindLbl : "Najdi:",
+DlgReplaceReplaceLbl : "Zamenjaj z:",
+DlgReplaceCaseChk : "Razlikuj velike in male Ärke",
+DlgReplaceReplaceBtn : "Zamenjaj",
+DlgReplaceReplAllBtn : "Zamenjaj vse",
+DlgReplaceWordChk : "Samo cele besede",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Varnostne nastavitve brskalnika ne dopuÅ¡Äajo samodejnega lepljenja. Uporabite kombinacijo tipk na tipkovnici (Ctrl+V).",
+PasteErrorCut : "Varnostne nastavitve brskalnika ne dopuÅ¡Äajo samodejnega izrezovanja. Uporabite kombinacijo tipk na tipkovnici (Ctrl+X).",
+PasteErrorCopy : "Varnostne nastavitve brskalnika ne dopuÅ¡Äajo samodejnega kopiranja. Uporabite kombinacijo tipk na tipkovnici (Ctrl+C).",
+
+PasteAsText : "Prilepi kot golo besedilo",
+PasteFromWord : "Prilepi iz Worda",
+
+DlgPasteMsg2 : "Prosim prilepite v sleÄi okvir s pomoÄjo tipkovnice (<STRONG>Ctrl+V</STRONG>) in pritisnite <STRONG>V redu</STRONG>.",
+DlgPasteIgnoreFont : "Prezri obliko pisave",
+DlgPasteRemoveStyles : "Odstrani nastavitve stila",
+DlgPasteCleanBox : "PoÄisti okvir",
+
+
+// Color Picker
+ColorAutomatic : "Samodejno",
+ColorMoreColors : "VeÄ barv...",
+
+// Document Properties
+DocProps : "Lastnosti dokumenta",
+
+// Anchor Dialog
+DlgAnchorTitle : "Lastnosti zaznamka",
+DlgAnchorName : "Ime zaznamka",
+DlgAnchorErrorName : "Prosim vnesite ime zaznamka",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Ni v slovarju",
+DlgSpellChangeTo : "Spremeni v",
+DlgSpellBtnIgnore : "Prezri",
+DlgSpellBtnIgnoreAll : "Prezri vse",
+DlgSpellBtnReplace : "Zamenjaj",
+DlgSpellBtnReplaceAll : "Zamenjaj vse",
+DlgSpellBtnUndo : "Razveljavi",
+DlgSpellNoSuggestions : "- Ni predlogov -",
+DlgSpellProgress : "Preverjanje Ärkovanja se izvaja...",
+DlgSpellNoMispell : "Ärkovanje je konÄano: Brez napak",
+DlgSpellNoChanges : "Ärkovanje je konÄano: Nobena beseda ni bila spremenjena",
+DlgSpellOneChange : "Ärkovanje je konÄano: Spremenjena je bila ena beseda",
+DlgSpellManyChanges : "Ärkovanje je konÄano: Spremenjenih je bilo %1 besed",
+
+IeSpellDownload : "Ärkovalnik ni nameÅ¡Äen. Ali ga želite prenesti sedaj?",
+
+// Button Dialog
+DlgButtonText : "Besedilo (Vrednost)",
+DlgButtonType : "Tip",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Ime",
+DlgCheckboxValue : "Vrednost",
+DlgCheckboxSelected : "Izbrano",
+
+// Form Dialog
+DlgFormName : "Ime",
+DlgFormAction : "Akcija",
+DlgFormMethod : "Metoda",
+
+// Select Field Dialog
+DlgSelectName : "Ime",
+DlgSelectValue : "Vrednost",
+DlgSelectSize : "Velikost",
+DlgSelectLines : "vrstic",
+DlgSelectChkMulti : "Dovoli izbor veÄih vrstic",
+DlgSelectOpAvail : "Razpoložljive izbire",
+DlgSelectOpText : "Besedilo",
+DlgSelectOpValue : "Vrednost",
+DlgSelectBtnAdd : "Dodaj",
+DlgSelectBtnModify : "Spremeni",
+DlgSelectBtnUp : "Gor",
+DlgSelectBtnDown : "Dol",
+DlgSelectBtnSetValue : "Postavi kot privzeto izbiro",
+DlgSelectBtnDelete : "Izbriši",
+
+// Textarea Dialog
+DlgTextareaName : "Ime",
+DlgTextareaCols : "Stolpcev",
+DlgTextareaRows : "Vrstic",
+
+// Text Field Dialog
+DlgTextName : "Ime",
+DlgTextValue : "Vrednost",
+DlgTextCharWidth : "Dolžina",
+DlgTextMaxChars : "NajveÄje Å¡tevilo znakov",
+DlgTextType : "Tip",
+DlgTextTypeText : "Besedilo",
+DlgTextTypePass : "Geslo",
+
+// Hidden Field Dialog
+DlgHiddenName : "Ime",
+DlgHiddenValue : "Vrednost",
+
+// Bulleted List Dialog
+BulletedListProp : "Lastnosti oznaÄenega seznama",
+NumberedListProp : "Lastnosti oÅ¡tevilÄenega seznama",
+DlgLstType : "Tip",
+DlgLstTypeCircle : "Pikica",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Kvadratek",
+DlgLstTypeNumbers : "Å tevilke (1, 2, 3)",
+DlgLstTypeLCase : "Male Ärke (a, b, c)",
+DlgLstTypeUCase : "Velike Ärke (A, B, C)",
+DlgLstTypeSRoman : "Male rimske Å¡tevilke (i, ii, iii)",
+DlgLstTypeLRoman : "Velike rimske Å¡tevilke (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Splošno",
+DlgDocBackTab : "Ozadje",
+DlgDocColorsTab : "Barve in zamiki",
+DlgDocMetaTab : "Meta podatki",
+
+DlgDocPageTitle : "Naslov strani",
+DlgDocLangDir : "Smer jezika",
+DlgDocLangDirLTR : "Od leve proti desni (LTR)",
+DlgDocLangDirRTL : "Od desne proti levi (RTL)",
+DlgDocLangCode : "Oznaka jezika",
+DlgDocCharSet : "Kodna tabela",
+DlgDocCharSetOther : "Druga kodna tabela",
+
+DlgDocDocType : "Glava tipa dokumenta",
+DlgDocDocTypeOther : "Druga glava tipa dokumenta",
+DlgDocIncXHTML : "Vstavi XHTML deklaracije",
+DlgDocBgColor : "Barva ozadja",
+DlgDocBgImage : "URL slike za ozadje",
+DlgDocBgNoScroll : "NepremiÄno ozadje",
+DlgDocCText : "Besedilo",
+DlgDocCLink : "Povezava",
+DlgDocCVisited : "Obiskana povezava",
+DlgDocCActive : "Aktivna povezava",
+DlgDocMargins : "Zamiki strani",
+DlgDocMaTop : "Na vrhu",
+DlgDocMaLeft : "Levo",
+DlgDocMaRight : "Desno",
+DlgDocMaBottom : "Spodaj",
+DlgDocMeIndex : "KljuÄne besede (loÄene z vejicami)",
+DlgDocMeDescr : "Opis strani",
+DlgDocMeAuthor : "Avtor",
+DlgDocMeCopy : "Avtorske pravice",
+DlgDocPreview : "Predogled",
+
+// Templates Dialog
+Templates : "Predloge",
+DlgTemplatesTitle : "Vsebinske predloge",
+DlgTemplatesSelMsg : "Izberite predlogo, ki jo želite odpreti v urejevalniku<br>(trenutna vsebina bo izgubljena):",
+DlgTemplatesLoading : "Nalagam seznam predlog. Prosim poÄakajte...",
+DlgTemplatesNoTpl : "(Ni pripravljenih predlog)",
+
+// About Dialog
+DlgAboutAboutTab : "Vizitka",
+DlgAboutBrowserInfoTab : "Informacije o brskalniku",
+DlgAboutVersion : "razliÄica",
+DlgAboutLicense : "Pravica za uporabo pod pogoji GNU Lesser General Public License",
+DlgAboutInfo : "Za veÄ informacij obiÅ¡Äite"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr-latn.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr-latn.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr-latn.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sr-latn.js
+ * Serbian (Latin) language file.
+ *
+ * File Authors:
+ * Zoran Subic (zoran at tf.zr.ac.yu)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Smanji liniju sa alatkama",
+ToolbarExpand : "Proiri liniju sa alatkama",
+
+// Toolbar Items and Context Menu
+Save : "SaÄuvaj",
+NewPage : "Nova stranica",
+Preview : "Izgled stranice",
+Cut : "Iseci",
+Copy : "Kopiraj",
+Paste : "Zalepi",
+PasteText : "Zalepi kao neformatiran tekst",
+PasteWord : "Zalepi iz Worda",
+Print : "Å tampa",
+SelectAll : "OznaÄi sve",
+RemoveFormat : "Ukloni formatiranje",
+InsertLinkLbl : "Link",
+InsertLink : "Unesi/izmeni link",
+RemoveLink : "Ukloni link",
+Anchor : "Unesi/izmeni sidro",
+InsertImageLbl : "Slika",
+InsertImage : "Unesi/izmeni sliku",
+InsertFlashLbl : "Fleš",
+InsertFlash : "Unesi/izmeni fleš",
+InsertTableLbl : "Tabela",
+InsertTable : "Unesi/izmeni tabelu",
+InsertLineLbl : "Linija",
+InsertLine : "Unesi horizontalnu liniju",
+InsertSpecialCharLbl: "Specijalni karakteri",
+InsertSpecialChar : "Unesi specijalni karakter",
+InsertSmileyLbl : "Smajli",
+InsertSmiley : "Unesi smajlija",
+About : "O FCKeditoru",
+Bold : "Podebljano",
+Italic : "Kurziv",
+Underline : "PodvuÄeno",
+StrikeThrough : "Precrtano",
+Subscript : "Indeks",
+Superscript : "Stepen",
+LeftJustify : "Levo ravnanje",
+CenterJustify : "Centriran tekst",
+RightJustify : "Desno ravnanje",
+BlockJustify : "Obostrano ravnanje",
+DecreaseIndent : "Smanji levu marginu",
+IncreaseIndent : "UveÄaj levu marginu",
+Undo : "Poni�ti akciju",
+Redo : "Ponovi akciju",
+NumberedListLbl : "Nabrojiva lista",
+NumberedList : "Unesi/ukloni nabrojivu listu",
+BulletedListLbl : "Nenabrojiva lista",
+BulletedList : "Unesi/ukloni nenabrojivu listu",
+ShowTableBorders : "Prikaži okvir tabele",
+ShowDetails : "Prikaži detalje",
+Style : "Stil",
+FontFormat : "Format",
+Font : "Font",
+FontSize : "VeliÄina fonta",
+TextColor : "Boja teksta",
+BGColor : "Boja pozadine",
+Source : "Kôd",
+Find : "Pretraga",
+Replace : "Zamena",
+SpellCheck : "Proveri spelovanje",
+UniversalKeyboard : "Univerzalna tastatura",
+
+Form : "Forma",
+Checkbox : "Polje za potvrdu",
+RadioButton : "Radio-dugme",
+TextField : "Tekstualno polje",
+Textarea : "Zona teksta",
+HiddenField : "Skriveno polje",
+Button : "Dugme",
+SelectionField : "Izborno polje",
+ImageButton : "Dugme sa slikom",
+
+// Context Menu
+EditLink : "Izmeni link",
+InsertRow : "Unesi red",
+DeleteRows : "Obriši redove",
+InsertColumn : "Unesi kolonu",
+DeleteColumns : "Obriši kolone",
+InsertCell : "Unesi Äelije",
+DeleteCells : "ObriÅ¡i Äelije",
+MergeCells : "Spoj celije",
+SplitCell : "Razdvoji celije",
+CellProperties : "Osobine celije",
+TableProperties : "Osobine tabele",
+ImageProperties : "Osobine slike",
+FlashProperties : "Osobine fleša",
+
+AnchorProp : "Osobine sidra",
+ButtonProp : "Osobine dugmeta",
+CheckboxProp : "Osobine polja za potvrdu",
+HiddenFieldProp : "Osobine skrivenog polja",
+RadioButtonProp : "Osobine radio-dugmeta",
+ImageButtonProp : "Osobine dugmeta sa slikom",
+TextFieldProp : "Osobine tekstualnog polja",
+SelectionFieldProp : "Osobine izbornog polja",
+TextareaProp : "Osobine zone teksta",
+FormProp : "Osobine forme",
+
+FontFormats : "Normal;Formatirano;Adresa;Naslov 1;Naslov 2;Naslov 3;Naslov 4;Naslov 5;Naslov 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Obradujem XHTML. Malo strpljenja...",
+Done : "Završio",
+PasteWordConfirm : "Tekst koji želite da nalepite kopiran je iz Worda. Da li želite da bude oÄiÅ¡Äen od formata pre lepljenja?",
+NotCompatiblePaste : "Ova komanda je dostupna samo za Internet Explorer od verzije 5.5. Da li želite da nalepim tekst bez ÄiÅ¡Äenja?",
+UnknownToolbarItem : "Nepoznata stavka toolbara \"%1\"",
+UnknownCommand : "Nepoznata naredba \"%1\"",
+NotImplemented : "Naredba nije implementirana",
+UnknownToolbarSet : "Toolbar \"%1\" ne postoji",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Otkaži",
+DlgBtnClose : "Zatvori",
+DlgBtnBrowseServer : "Pretraži server",
+DlgAdvancedTag : "Napredni tagovi",
+DlgOpOther : "<Ostali>",
+DlgInfoTab : "Info",
+DlgAlertUrl : "Molimo Vas, unesite URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<nije postavljeno>",
+DlgGenId : "Id",
+DlgGenLangDir : "Smer jezika",
+DlgGenLangDirLtr : "S leva na desno (LTR)",
+DlgGenLangDirRtl : "S desna na levo (RTL)",
+DlgGenLangCode : "Kôd jezika",
+DlgGenAccessKey : "Pristupni taster",
+DlgGenName : "Naziv",
+DlgGenTabIndex : "Tab indeks",
+DlgGenLongDescr : "Pun opis URL",
+DlgGenClass : "Stylesheet klase",
+DlgGenTitle : "Advisory naslov",
+DlgGenContType : "Advisory vrsta sadržaja",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Stil",
+
+// Image Dialog
+DlgImgTitle : "Osobine slika",
+DlgImgInfoTab : "Info slike",
+DlgImgBtnUpload : "Pošalji na server",
+DlgImgURL : "URL",
+DlgImgUpload : "Pošalji",
+DlgImgAlt : "Alternativni tekst",
+DlgImgWidth : "Å irina",
+DlgImgHeight : "Visina",
+DlgImgLockRatio : "ZakljuÄaj odnos",
+DlgBtnResetSize : "Resetuj veliÄinu",
+DlgImgBorder : "Okvir",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Ravnanje",
+DlgImgAlignLeft : "Levo",
+DlgImgAlignAbsBottom: "Abs dole",
+DlgImgAlignAbsMiddle: "Abs sredina",
+DlgImgAlignBaseline : "Bazno",
+DlgImgAlignBottom : "Dole",
+DlgImgAlignMiddle : "Sredina",
+DlgImgAlignRight : "Desno",
+DlgImgAlignTextTop : "Vrh teksta",
+DlgImgAlignTop : "Vrh",
+DlgImgPreview : "Izgled",
+DlgImgAlertUrl : "Unesite URL slike",
+DlgImgLinkTab : "Link",
+
+// Flash Dialog
+DlgFlashTitle : "Osobine fleša",
+DlgFlashChkPlay : "Automatski start",
+DlgFlashChkLoop : "Ponavljaj",
+DlgFlashChkMenu : "UkljuÄi fleÅ¡ meni",
+DlgFlashScale : "Skaliraj",
+DlgFlashScaleAll : "Prikaži sve",
+DlgFlashScaleNoBorder : "Bez ivice",
+DlgFlashScaleFit : "Popuni površinu",
+
+// Link Dialog
+DlgLnkWindowTitle : "Link",
+DlgLnkInfoTab : "Link Info",
+DlgLnkTargetTab : "Meta",
+
+DlgLnkType : "Vrsta linka",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Sidro na ovoj stranici",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<drugo>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Odaberi sidro",
+DlgLnkAnchorByName : "Po nazivu sidra",
+DlgLnkAnchorById : "Po Id-ju elementa",
+DlgLnkNoAnchors : "<Nema dostupnih sidra>",
+DlgLnkEMail : "E-Mail adresa",
+DlgLnkEMailSubject : "Naslov",
+DlgLnkEMailBody : "Sadržaj poruke",
+DlgLnkUpload : "Pošalji",
+DlgLnkBtnUpload : "Pošalji na server",
+
+DlgLnkTarget : "Meta",
+DlgLnkTargetFrame : "<okvir>",
+DlgLnkTargetPopup : "<popup prozor>",
+DlgLnkTargetBlank : "Novi prozor (_blank)",
+DlgLnkTargetParent : "Roditeljski prozor (_parent)",
+DlgLnkTargetSelf : "Isti prozor (_self)",
+DlgLnkTargetTop : "Prozor na vrhu (_top)",
+DlgLnkTargetFrameName : "Naziv odredišnog frejma",
+DlgLnkPopWinName : "Naziv popup prozora",
+DlgLnkPopWinFeat : "MoguÄnosti popup prozora",
+DlgLnkPopResize : "Promenljiva velicina",
+DlgLnkPopLocation : "Lokacija",
+DlgLnkPopMenu : "Kontekstni meni",
+DlgLnkPopScroll : "Scroll bar",
+DlgLnkPopStatus : "Statusna linija",
+DlgLnkPopToolbar : "Toolbar",
+DlgLnkPopFullScrn : "Prikaz preko celog ekrana (IE)",
+DlgLnkPopDependent : "Zavisno (Netscape)",
+DlgLnkPopWidth : "Å irina",
+DlgLnkPopHeight : "Visina",
+DlgLnkPopLeft : "Od leve ivice ekrana (px)",
+DlgLnkPopTop : "Od vrha ekrana (px)",
+
+DlnLnkMsgNoUrl : "Unesite URL linka",
+DlnLnkMsgNoEMail : "Otkucajte adresu elektronske pote",
+DlnLnkMsgNoAnchor : "Odaberite sidro",
+
+// Color Dialog
+DlgColorTitle : "Odaberite boju",
+DlgColorBtnClear : "Obriši",
+DlgColorHighlight : "Posvetli",
+DlgColorSelected : "Odaberi",
+
+// Smiley Dialog
+DlgSmileyTitle : "Unesi smajlija",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Odaberite specijalni karakter",
+
+// Table Dialog
+DlgTableTitle : "Osobine tabele",
+DlgTableRows : "Redova",
+DlgTableColumns : "Kolona",
+DlgTableBorder : "VeliÄina okvira",
+DlgTableAlign : "Ravnanje",
+DlgTableAlignNotSet : "<nije postavljeno>",
+DlgTableAlignLeft : "Levo",
+DlgTableAlignCenter : "Sredina",
+DlgTableAlignRight : "Desno",
+DlgTableWidth : "Å irina",
+DlgTableWidthPx : "piksela",
+DlgTableWidthPc : "procenata",
+DlgTableHeight : "Visina",
+DlgTableCellSpace : "Äelijski prostor",
+DlgTableCellPad : "Razmak Äelija",
+DlgTableCaption : "Naslov tabele",
+
+// Table Cell Dialog
+DlgCellTitle : "Osobine Äelije",
+DlgCellWidth : "Å irina",
+DlgCellWidthPx : "piksela",
+DlgCellWidthPc : "procenata",
+DlgCellHeight : "Visina",
+DlgCellWordWrap : "Deljenje reÄi",
+DlgCellWordWrapNotSet : "<nije postavljeno>",
+DlgCellWordWrapYes : "Da",
+DlgCellWordWrapNo : "Ne",
+DlgCellHorAlign : "Vodoravno ravnanje",
+DlgCellHorAlignNotSet : "<nije postavljeno>",
+DlgCellHorAlignLeft : "Levo",
+DlgCellHorAlignCenter : "Sredina",
+DlgCellHorAlignRight: "Desno",
+DlgCellVerAlign : "Vertikalno ravnanje",
+DlgCellVerAlignNotSet : "<nije postavljeno>",
+DlgCellVerAlignTop : "Gornje",
+DlgCellVerAlignMiddle : "Sredina",
+DlgCellVerAlignBottom : "Donje",
+DlgCellVerAlignBaseline : "Bazno",
+DlgCellRowSpan : "Spajanje redova",
+DlgCellCollSpan : "Spajanje kolona",
+DlgCellBackColor : "Boja pozadine",
+DlgCellBorderColor : "Boja okvira",
+DlgCellBtnSelect : "Odaberi...",
+
+// Find Dialog
+DlgFindTitle : "PronaÄi",
+DlgFindFindBtn : "PronaÄi",
+DlgFindNotFoundMsg : "Traženi tekst nije pronaÄen.",
+
+// Replace Dialog
+DlgReplaceTitle : "Zameni",
+DlgReplaceFindLbl : "Pronadi:",
+DlgReplaceReplaceLbl : "Zameni sa:",
+DlgReplaceCaseChk : "Razlikuj mala i velika slova",
+DlgReplaceReplaceBtn : "Zameni",
+DlgReplaceReplAllBtn : "Zameni sve",
+DlgReplaceWordChk : "Uporedi cele reci",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Sigurnosna podeÅ¡avanja VaÅ¡eg pretraživaÄa ne dozvoljavaju operacije automatskog lepljenja teksta. Molimo Vas da koristite preÄicu sa tastature (Ctrl+V).",
+PasteErrorCut : "Sigurnosna podeÅ¡avanja VaÅ¡eg pretraživaÄa ne dozvoljavaju operacije automatskog isecanja teksta. Molimo Vas da koristite preÄicu sa tastature (Ctrl+X).",
+PasteErrorCopy : "Sigurnosna podeÅ¡avanja VaÅ¡eg pretraživaÄa ne dozvoljavaju operacije automatskog kopiranja teksta. Molimo Vas da koristite preÄicu sa tastature (Ctrl+C).",
+
+PasteAsText : "Zalepi kao Äist tekst",
+PasteFromWord : "Zalepi iz Worda",
+
+DlgPasteMsg2 : "Molimo Vas da zalepite unutar donje povrine koristeÄi tastaturnu preÄicu (<STRONG>Ctrl+V</STRONG>) i da pritisnete <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignoriši definicije fontova",
+DlgPasteRemoveStyles : "Ukloni definicije stilova",
+DlgPasteCleanBox : "Obriši sve",
+
+
+// Color Picker
+ColorAutomatic : "Automatski",
+ColorMoreColors : "Više boja...",
+
+// Document Properties
+DocProps : "Osobine dokumenta",
+
+// Anchor Dialog
+DlgAnchorTitle : "Osobine sidra",
+DlgAnchorName : "Ime sidra",
+DlgAnchorErrorName : "Unesite ime sidra",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Nije u reÄniku",
+DlgSpellChangeTo : "Izmeni",
+DlgSpellBtnIgnore : "Ignoriši",
+DlgSpellBtnIgnoreAll : "Ignoriši sve",
+DlgSpellBtnReplace : "Zameni",
+DlgSpellBtnReplaceAll : "Zameni sve",
+DlgSpellBtnUndo : "Vrati akciju",
+DlgSpellNoSuggestions : "- Bez sugestija -",
+DlgSpellProgress : "Provera spelovanja u toku...",
+DlgSpellNoMispell : "Provera spelovanja završena: greške nisu pronadene",
+DlgSpellNoChanges : "Provera spelovanja završena: Nije izmenjena nijedna rec",
+DlgSpellOneChange : "Provera spelovanja zavrÅ¡ena: Izmenjena je jedna reÄ",
+DlgSpellManyChanges : "Provera spelovanja zavrÅ¡ena: %1 reÄ(i) je izmenjeno",
+
+IeSpellDownload : "Provera spelovanja nije instalirana. Da li želite da je skinete sa Interneta?",
+
+// Button Dialog
+DlgButtonText : "Tekst (vrednost)",
+DlgButtonType : "Tip",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Naziv",
+DlgCheckboxValue : "Vrednost",
+DlgCheckboxSelected : "OznaÄeno",
+
+// Form Dialog
+DlgFormName : "Naziv",
+DlgFormAction : "Akcija",
+DlgFormMethod : "Metoda",
+
+// Select Field Dialog
+DlgSelectName : "Naziv",
+DlgSelectValue : "Vrednost",
+DlgSelectSize : "VeliÄina",
+DlgSelectLines : "linija",
+DlgSelectChkMulti : "Dozvoli višestruku selekciju",
+DlgSelectOpAvail : "Dostupne opcije",
+DlgSelectOpText : "Tekst",
+DlgSelectOpValue : "Vrednost",
+DlgSelectBtnAdd : "Dodaj",
+DlgSelectBtnModify : "Izmeni",
+DlgSelectBtnUp : "Gore",
+DlgSelectBtnDown : "Dole",
+DlgSelectBtnSetValue : "Podesi kao oznaÄenu vrednost",
+DlgSelectBtnDelete : "Obriši",
+
+// Textarea Dialog
+DlgTextareaName : "Naziv",
+DlgTextareaCols : "Broj kolona",
+DlgTextareaRows : "Broj redova",
+
+// Text Field Dialog
+DlgTextName : "Naziv",
+DlgTextValue : "Vrednost",
+DlgTextCharWidth : "Å irina (karaktera)",
+DlgTextMaxChars : "Maksimalno karaktera",
+DlgTextType : "Tip",
+DlgTextTypeText : "Tekst",
+DlgTextTypePass : "Lozinka",
+
+// Hidden Field Dialog
+DlgHiddenName : "Naziv",
+DlgHiddenValue : "Vrednost",
+
+// Bulleted List Dialog
+BulletedListProp : "Osobine nenabrojive liste",
+NumberedListProp : "Osobine nabrojive liste",
+DlgLstType : "Tip",
+DlgLstTypeCircle : "Krug",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Kvadrat",
+DlgLstTypeNumbers : "Brojevi (1, 2, 3)",
+DlgLstTypeLCase : "mala slova (a, b, c)",
+DlgLstTypeUCase : "VELIKA slova (A, B, C)",
+DlgLstTypeSRoman : "Male rimske cifre (i, ii, iii)",
+DlgLstTypeLRoman : "Velike rimske cifre (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Opšte osobine",
+DlgDocBackTab : "Pozadina",
+DlgDocColorsTab : "Boje i margine",
+DlgDocMetaTab : "Metapodaci",
+
+DlgDocPageTitle : "Naslov stranice",
+DlgDocLangDir : "Smer jezika",
+DlgDocLangDirLTR : "Sleva nadesno (LTR)",
+DlgDocLangDirRTL : "Zdesna nalevo (RTL)",
+DlgDocLangCode : "Å ifra jezika",
+DlgDocCharSet : "Kodiranje skupa karaktera",
+DlgDocCharSetOther : "Ostala kodiranja skupa karaktera",
+
+DlgDocDocType : "Zaglavlje tipa dokumenta",
+DlgDocDocTypeOther : "Ostala zaglavlja tipa dokumenta",
+DlgDocIncXHTML : "Ukljuci XHTML deklaracije",
+DlgDocBgColor : "Boja pozadine",
+DlgDocBgImage : "URL pozadinske slike",
+DlgDocBgNoScroll : "Fiksirana pozadina",
+DlgDocCText : "Tekst",
+DlgDocCLink : "Link",
+DlgDocCVisited : "PoseÄeni link",
+DlgDocCActive : "Aktivni link",
+DlgDocMargins : "Margine stranice",
+DlgDocMaTop : "Gornja",
+DlgDocMaLeft : "Leva",
+DlgDocMaRight : "Desna",
+DlgDocMaBottom : "Donja",
+DlgDocMeIndex : "KljuÄne reci za indeksiranje dokumenta (razdvojene zarezima)",
+DlgDocMeDescr : "Opis dokumenta",
+DlgDocMeAuthor : "Autor",
+DlgDocMeCopy : "Autorska prava",
+DlgDocPreview : "Izgled stranice",
+
+// Templates Dialog
+Templates : "Obrasci",
+DlgTemplatesTitle : "Obrasci za sadržaj",
+DlgTemplatesSelMsg : "Molimo Vas da odaberete obrazac koji ce biti primenjen na stranicu (trenutni sadržaj ce biti obrisan):",
+DlgTemplatesLoading : "UÄitavam listu obrazaca. Malo strpljenja...",
+DlgTemplatesNoTpl : "(Nema definisanih obrazaca)",
+
+// About Dialog
+DlgAboutAboutTab : "O editoru",
+DlgAboutBrowserInfoTab : "Informacije o pretraživacu",
+DlgAboutVersion : "verzija",
+DlgAboutLicense : "Licencirano pod uslovima GNU Lesser General Public License",
+DlgAboutInfo : "Za više informacija posetite"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/sr.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sr.js
+ * Serbian (Cyrillic) language file.
+ *
+ * File Authors:
+ * Zoran SubiÄ (zoran at tf.zr.ac.yu)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "СмаÑи линиÑÑ Ñа алаÑкама",
+ToolbarExpand : "ÐÑоÑиÑи линиÑÑ Ñа алаÑкама",
+
+// Toolbar Items and Context Menu
+Save : "СаÑÑваÑ",
+NewPage : "Ðова ÑÑÑаниÑа",
+Preview : "Ðзглед ÑÑÑаниÑе",
+Cut : "ÐÑеÑи",
+Copy : "ÐопиÑаÑ",
+Paste : "Ðалепи",
+PasteText : "Ðалепи као неÑоÑмаÑиÑан ÑекÑÑ",
+PasteWord : "Ðалепи из Worda",
+Print : "ШÑампа",
+SelectAll : "ÐзнаÑи Ñве",
+RemoveFormat : "Уклони ÑоÑмаÑиÑаÑе",
+InsertLinkLbl : "Ðинк",
+InsertLink : "УнеÑи/измени линк",
+RemoveLink : "Уклони линк",
+Anchor : "УнеÑи/измени ÑидÑо",
+InsertImageLbl : "Слика",
+InsertImage : "УнеÑи/измени ÑликÑ",
+InsertFlashLbl : "Ð¤Ð»ÐµÑ ÐµÐ»ÐµÐ¼ÐµÐ½Ñ",
+InsertFlash : "УнеÑи/измени ÑлеÑ",
+InsertTableLbl : "Табела",
+InsertTable : "УнеÑи/измени ÑабелÑ",
+InsertLineLbl : "ÐиниÑа",
+InsertLine : "УнеÑи Ñ
оÑизонÑÐ°Ð»Ð½Ñ Ð»Ð¸Ð½Ð¸ÑÑ",
+InsertSpecialCharLbl: "СпеÑиÑални каÑакÑеÑи",
+InsertSpecialChar : "УнеÑи ÑпеÑиÑални каÑакÑеÑ",
+InsertSmileyLbl : "СмаÑли",
+InsertSmiley : "УнеÑи ÑмаÑлиÑа",
+About : "РФЦÐедиÑоÑÑ",
+Bold : "ÐодебÑано",
+Italic : "ÐÑÑзив",
+Underline : "ÐодвÑÑено",
+StrikeThrough : "ÐÑеÑÑÑано",
+Subscript : "ÐндекÑ",
+Superscript : "СÑепен",
+LeftJustify : "Ðево ÑавнаÑе",
+CenterJustify : "ЦенÑÑиÑан ÑекÑÑ",
+RightJustify : "ÐеÑно ÑавнаÑе",
+BlockJustify : "ÐбоÑÑÑано ÑавнаÑе",
+DecreaseIndent : "СмаÑи Ð»ÐµÐ²Ñ Ð¼Ð°ÑгинÑ",
+IncreaseIndent : "УвеÑÐ°Ñ Ð»ÐµÐ²Ñ Ð¼Ð°ÑгинÑ",
+Undo : "ÐониÑÑи акÑиÑÑ",
+Redo : "Ðонови акÑиÑÑ",
+NumberedListLbl : "ÐабÑоÑÐ¸Ð²Ñ Ð»Ð¸ÑÑÑ",
+NumberedList : "УнеÑи/Ñклони набÑоÑÐ¸Ð²Ñ Ð»Ð¸ÑÑÑ",
+BulletedListLbl : "ÐенабÑоÑива лиÑÑа",
+BulletedList : "УнеÑи/Ñклони ненабÑоÑÐ¸Ð²Ñ Ð»Ð¸ÑÑÑ",
+ShowTableBorders : "ÐÑикажи Ð¾ÐºÐ²Ð¸Ñ Ñабеле",
+ShowDetails : "ÐÑикажи деÑаÑе",
+Style : "СÑил",
+FontFormat : "ФоÑмаÑ",
+Font : "ФонÑ",
+FontSize : "ÐелиÑина ÑонÑа",
+TextColor : "ÐоÑа ÑекÑÑа",
+BGColor : "ÐоÑа позадине",
+Source : "Kôд",
+Find : "ÐÑеÑÑага",
+Replace : "Ðамена",
+SpellCheck : "ÐÑовеÑи ÑпеловаÑе",
+UniversalKeyboard : "УнивеÑзална ÑаÑÑаÑÑÑа",
+
+Form : "ФоÑма",
+Checkbox : "ÐоÑе за поÑвÑдÑ",
+RadioButton : "Радио-дÑгме",
+TextField : "ТекÑÑÑално поÑе",
+Textarea : "Ðона ÑекÑÑа",
+HiddenField : "СкÑивено поÑе",
+Button : "ÐÑгме",
+SelectionField : "ÐзбоÑно поÑе",
+ImageButton : "ÐÑгме Ñа Ñликом",
+
+// Context Menu
+EditLink : "ÐÑомени линк",
+InsertRow : "УнеÑи Ñед",
+DeleteRows : "ÐбÑиÑи Ñедове",
+InsertColumn : "УнеÑи колонÑ",
+DeleteColumns : "ÐбÑиÑи колоне",
+InsertCell : "УнеÑи ÑелиÑе",
+DeleteCells : "ÐбÑиÑи ÑелиÑе",
+MergeCells : "Ð¡Ð¿Ð¾Ñ ÑелиÑе",
+SplitCell : "РаздвоÑи ÑелиÑе",
+CellProperties : "ÐÑобине ÑелиÑе",
+TableProperties : "ÐÑобине Ñабеле",
+ImageProperties : "ÐÑобине Ñлике",
+FlashProperties : "ÐÑобине ФлеÑа",
+
+AnchorProp : "ÐÑобине ÑидÑа",
+ButtonProp : "ÐÑобине дÑгмеÑа",
+CheckboxProp : "ÐÑобине поÑа за поÑвÑдÑ",
+HiddenFieldProp : "ÐÑобине ÑкÑивеног поÑа",
+RadioButtonProp : "ÐÑобине Ñадио-дÑгмеÑа",
+ImageButtonProp : "ÐÑобине дÑгмеÑа Ñа Ñликом",
+TextFieldProp : "ÐÑобине ÑекÑÑÑалног поÑа",
+SelectionFieldProp : "ÐÑобине избоÑног поÑа",
+TextareaProp : "ÐÑобине зоне ÑекÑÑа",
+FormProp : "ÐÑобине ÑоÑме",
+
+FontFormats : "Normal;Formatirano;Adresa;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6",
+
+// Alerts and Messages
+ProcessingXHTML : "ÐбÑаÑÑÑем XHTML. Maлo ÑÑÑпÑеÑа...",
+Done : "ÐавÑÑио",
+PasteWordConfirm : "ТекÑÑ ÐºÐ¾Ñи желиÑе да налепиÑе копиÑан Ñе из Worda. Ðа ли желиÑе да бÑде оÑиÑÑен од ÑоÑмаÑа пÑе лепÑеÑа?",
+NotCompatiblePaste : "Ðва команда Ñе доÑÑÑпна Ñамо за ÐнÑеÑÐ½ÐµÑ ÐкплоÑÐµÑ Ð¾Ð´ веÑзиÑе 5.5. Ðа ли желиÑе да налепим ÑекÑÑ Ð±ÐµÐ· ÑиÑÑеÑа?",
+UnknownToolbarItem : "ÐепознаÑа ÑÑавка toolbara \"%1\"",
+UnknownCommand : "ÐепознаÑа наÑедба \"%1\"",
+NotImplemented : "ÐаÑедба ниÑе имплеменÑиÑана",
+UnknownToolbarSet : "Toolbar \"%1\" не поÑÑоÑи",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "OÑкажи",
+DlgBtnClose : "ÐаÑвоÑи",
+DlgBtnBrowseServer : "ÐÑеÑÑажи ÑеÑвеÑ",
+DlgAdvancedTag : "ÐапÑедни Ñагови",
+DlgOpOther : "<ÐÑÑали>",
+DlgInfoTab : "ÐнÑо",
+DlgAlertUrl : "Ðолимо ÐаÑ, ÑнеÑиÑе УРÐ",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ниÑе поÑÑавÑено>",
+DlgGenId : "Ðд",
+DlgGenLangDir : "Ð¡Ð¼ÐµÑ Ñезика",
+DlgGenLangDirLtr : "С лева на деÑно (LTR)",
+DlgGenLangDirRtl : "С деÑна на лево (RTL)",
+DlgGenLangCode : "Kôд Ñезика",
+DlgGenAccessKey : "ÐÑиÑÑÑпни ÑаÑÑеÑ",
+DlgGenName : "Ðазив",
+DlgGenTabIndex : "Таб индекÑ",
+DlgGenLongDescr : "ÐÑн Ð¾Ð¿Ð¸Ñ Ð£Ð Ð",
+DlgGenClass : "Stylesheet клаÑе",
+DlgGenTitle : "Advisory наÑлов",
+DlgGenContType : "Advisory вÑÑÑа ÑадÑжаÑа",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "СÑил",
+
+// Image Dialog
+DlgImgTitle : "ÐÑобине Ñлика",
+DlgImgInfoTab : "ÐнÑо Ñлике",
+DlgImgBtnUpload : "ÐоÑаÑи на ÑеÑвеÑ",
+DlgImgURL : "УРÐ",
+DlgImgUpload : "ÐоÑаÑи",
+DlgImgAlt : "ÐлÑеÑнаÑивни ÑекÑÑ",
+DlgImgWidth : "ШиÑина",
+DlgImgHeight : "ÐиÑина",
+DlgImgLockRatio : "ÐакÑÑÑÐ°Ñ Ð¾Ð´Ð½Ð¾Ñ",
+DlgBtnResetSize : "РеÑеÑÑÑ Ð²ÐµÐ»Ð¸ÑинÑ",
+DlgImgBorder : "ÐквиÑ",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "РавнаÑе",
+DlgImgAlignLeft : "Ðево",
+DlgImgAlignAbsBottom: "Abs доле",
+DlgImgAlignAbsMiddle: "Abs ÑÑедина",
+DlgImgAlignBaseline : "Ðазно",
+DlgImgAlignBottom : "Ðоле",
+DlgImgAlignMiddle : "СÑедина",
+DlgImgAlignRight : "ÐеÑно",
+DlgImgAlignTextTop : "ÐÑÑ
ÑекÑÑа",
+DlgImgAlignTop : "ÐÑÑ
",
+DlgImgPreview : "Ðзглед",
+DlgImgAlertUrl : "УнеÑиÑе УРРÑлике",
+DlgImgLinkTab : "Ðинк",
+
+// Flash Dialog
+DlgFlashTitle : "ÐÑобине ÑлеÑа",
+DlgFlashChkPlay : "ÐÑÑомаÑÑки ÑÑаÑÑ",
+DlgFlashChkLoop : "ÐонавÑаÑ",
+DlgFlashChkMenu : "УкÑÑÑи ÑÐ»ÐµÑ Ð¼ÐµÐ½Ð¸",
+DlgFlashScale : "СкалиÑаÑ",
+DlgFlashScaleAll : "ÐÑикажи Ñве",
+DlgFlashScaleNoBorder : "Ðез ивиÑе",
+DlgFlashScaleFit : "ÐопÑни повÑÑинÑ",
+
+// Link Dialog
+DlgLnkWindowTitle : "Ðинк",
+DlgLnkInfoTab : "Ðинк инÑо",
+DlgLnkTargetTab : "ÐеÑа",
+
+DlgLnkType : "ÐÑÑÑа линка",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "СидÑо на Ð¾Ð²Ð¾Ñ ÑÑÑаниÑи",
+DlgLnkTypeEMail : "EлекÑÑонÑка поÑÑа",
+DlgLnkProto : "ÐÑоÑокол",
+DlgLnkProtoOther : "<дÑÑго>",
+DlgLnkURL : "УРÐ",
+DlgLnkAnchorSel : "ÐдабеÑи ÑидÑо",
+DlgLnkAnchorByName : "Ðо Ð½Ð°Ð·Ð¸Ð²Ñ ÑидÑа",
+DlgLnkAnchorById : "Ðo Ðд-jÑ ÐµÐ»ÐµÐ¼ÐµÐ½Ñа",
+DlgLnkNoAnchors : "<Ðема доÑÑÑпниÑ
ÑидÑа>",
+DlgLnkEMail : "ÐдÑеÑа елекÑÑонÑке поÑÑе",
+DlgLnkEMailSubject : "ÐаÑлов",
+DlgLnkEMailBody : "СадÑÐ¶Ð°Ñ Ð¿Ð¾ÑÑке",
+DlgLnkUpload : "ÐоÑаÑи",
+DlgLnkBtnUpload : "ÐоÑаÑи на ÑеÑвеÑ",
+
+DlgLnkTarget : "MeÑa",
+DlgLnkTargetFrame : "<оквиÑ>",
+DlgLnkTargetPopup : "<иÑкаÑÑÑи пÑозоÑ>",
+DlgLnkTargetBlank : "Ðови пÑÐ¾Ð·Ð¾Ñ (_blank)",
+DlgLnkTargetParent : "РодиÑеÑÑки пÑÐ¾Ð·Ð¾Ñ (_parent)",
+DlgLnkTargetSelf : "ÐÑÑи пÑÐ¾Ð·Ð¾Ñ (_self)",
+DlgLnkTargetTop : "ÐÑÐ¾Ð·Ð¾Ñ Ð½Ð° вÑÑ
Ñ (_top)",
+DlgLnkTargetFrameName : "Ðазив одÑедиÑног ÑÑеÑма",
+DlgLnkPopWinName : "Ðазив иÑкаÑÑÑег пÑозоÑа",
+DlgLnkPopWinFeat : "ÐогÑÑноÑÑи иÑкаÑÑÑег пÑозоÑа",
+DlgLnkPopResize : "ÐÑоменÑива велиÑина",
+DlgLnkPopLocation : "ÐокаÑиÑа",
+DlgLnkPopMenu : "ÐонÑекÑÑни мени",
+DlgLnkPopScroll : "СкÑол баÑ",
+DlgLnkPopStatus : "СÑаÑÑÑна линиÑа",
+DlgLnkPopToolbar : "Toolbar",
+DlgLnkPopFullScrn : "ÐÑиказ пÑеко Ñелог екÑана (ÐE)",
+DlgLnkPopDependent : "ÐавиÑно (Netscape)",
+DlgLnkPopWidth : "ШиÑина",
+DlgLnkPopHeight : "ÐиÑина",
+DlgLnkPopLeft : "Ðд леве ивиÑе екÑана (пикÑела)",
+DlgLnkPopTop : "Ðд вÑÑ
а екÑана (пикÑела)",
+
+DlnLnkMsgNoUrl : "УнеÑиÑе УРРлинка",
+DlnLnkMsgNoEMail : "ÐÑкÑÑаÑÑе адÑеÑÑ ÐµÐ»ÐµÐºÑÑонÑке поÑÑе",
+DlnLnkMsgNoAnchor : "ÐдабеÑиÑе ÑидÑо",
+
+// Color Dialog
+DlgColorTitle : "ÐдабеÑиÑе боÑÑ",
+DlgColorBtnClear : "ÐбÑиÑи",
+DlgColorHighlight : "ÐоÑвеÑли",
+DlgColorSelected : "ÐдабеÑи",
+
+// Smiley Dialog
+DlgSmileyTitle : "УнеÑи ÑмаÑлиÑа",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "ÐдабеÑиÑе ÑпеÑиÑални каÑакÑеÑ",
+
+// Table Dialog
+DlgTableTitle : "ÐÑобине Ñабеле",
+DlgTableRows : "Редова",
+DlgTableColumns : "Kолона",
+DlgTableBorder : "ÐелиÑина оквиÑа",
+DlgTableAlign : "РавнаÑе",
+DlgTableAlignNotSet : "<ниÑе поÑÑавÑено>",
+DlgTableAlignLeft : "Ðево",
+DlgTableAlignCenter : "СÑедина",
+DlgTableAlignRight : "ÐеÑно",
+DlgTableWidth : "ШиÑина",
+DlgTableWidthPx : "пикÑела",
+DlgTableWidthPc : "пÑоÑенаÑа",
+DlgTableHeight : "ÐиÑина",
+DlgTableCellSpace : "ÐелиÑÑки пÑоÑÑоÑ",
+DlgTableCellPad : "Размак ÑелиÑа",
+DlgTableCaption : "ÐаÑлов Ñабеле",
+
+// Table Cell Dialog
+DlgCellTitle : "ÐÑобине ÑелиÑе",
+DlgCellWidth : "ШиÑина",
+DlgCellWidthPx : "пикÑела",
+DlgCellWidthPc : "пÑоÑенаÑа",
+DlgCellHeight : "ÐиÑина",
+DlgCellWordWrap : "ÐеÑеÑе ÑеÑи",
+DlgCellWordWrapNotSet : "<ниÑе поÑÑавÑено>",
+DlgCellWordWrapYes : "Ðа",
+DlgCellWordWrapNo : "Ðе",
+DlgCellHorAlign : "ÐодоÑавно ÑавнаÑе",
+DlgCellHorAlignNotSet : "<ниÑе поÑÑавÑено>",
+DlgCellHorAlignLeft : "Ðево",
+DlgCellHorAlignCenter : "СÑедина",
+DlgCellHorAlignRight: "ÐеÑно",
+DlgCellVerAlign : "ÐеÑÑикално ÑавнаÑе",
+DlgCellVerAlignNotSet : "<ниÑе поÑÑавÑено>",
+DlgCellVerAlignTop : "ÐоÑÑе",
+DlgCellVerAlignMiddle : "СÑедина",
+DlgCellVerAlignBottom : "ÐоÑе",
+DlgCellVerAlignBaseline : "Ðазно",
+DlgCellRowSpan : "СпаÑаÑе Ñедова",
+DlgCellCollSpan : "СпаÑаÑе колона",
+DlgCellBackColor : "ÐоÑа позадине",
+DlgCellBorderColor : "ÐоÑа оквиÑа",
+DlgCellBtnSelect : "OдабеÑи...",
+
+// Find Dialog
+DlgFindTitle : "ÐÑонаÑи",
+DlgFindFindBtn : "ÐÑонаÑи",
+DlgFindNotFoundMsg : "ТÑажени ÑекÑÑ Ð½Ð¸Ñе пÑонаÑен.",
+
+// Replace Dialog
+DlgReplaceTitle : "Ðамени",
+DlgReplaceFindLbl : "ÐÑонаÑи:",
+DlgReplaceReplaceLbl : "Ðамени Ñа:",
+DlgReplaceCaseChk : "РазликÑÑ Ð²ÐµÐ»Ð¸ÐºÐ° и мала Ñлова",
+DlgReplaceReplaceBtn : "Ðамени",
+DlgReplaceReplAllBtn : "Ðамени Ñве",
+DlgReplaceWordChk : "УпоÑеди Ñеле ÑеÑи",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "СигÑÑноÑна подеÑаваÑа ÐаÑег пÑеÑÑаживаÑа не дозвоÑаваÑÑ Ð¾Ð¿ÐµÑаÑиÑе аÑÑомаÑÑког лепÑеÑа ÑекÑÑа. Ðолимо ÐÐ°Ñ Ð´Ð° коÑиÑÑиÑе пÑеÑиÑÑ Ñа ÑаÑÑаÑÑÑе (Ctrl+V).",
+PasteErrorCut : "СигÑÑноÑна подеÑаваÑа ÐаÑег пÑеÑÑаживаÑа не дозвоÑаваÑÑ Ð¾Ð¿ÐµÑаÑиÑе аÑÑомаÑÑког иÑеÑаÑа ÑекÑÑа. Ðолимо ÐÐ°Ñ Ð´Ð° коÑиÑÑиÑе пÑеÑиÑÑ Ñа ÑаÑÑаÑÑÑе (Ctrl+X).",
+PasteErrorCopy : "СигÑÑноÑна подеÑаваÑа ÐаÑег пÑеÑÑаживаÑа не дозвоÑаваÑÑ Ð¾Ð¿ÐµÑаÑиÑе аÑÑомаÑÑког копиÑаÑа ÑекÑÑа. Ðолимо ÐÐ°Ñ Ð´Ð° коÑиÑÑиÑе пÑеÑиÑÑ Ñа ÑаÑÑаÑÑÑе (Ctrl+C).",
+
+PasteAsText : "Ðалепи као ÑиÑÑ ÑекÑÑ",
+PasteFromWord : "Ðалепи из Worda",
+
+DlgPasteMsg2 : "Ðолимо ÐÐ°Ñ Ð´Ð° залепиÑе ÑнÑÑÐ°Ñ Ð´Ð¾Ñе повÑÑине коÑиÑÑеÑи ÑаÑÑаÑÑÑÐ½Ñ Ð¿ÑеÑиÑÑ (<STRONG>Ctrl+V</STRONG>) и да пÑиÑиÑнеÑе <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "ÐгноÑиÑи Font Face деÑиниÑиÑе",
+DlgPasteRemoveStyles : "Уклони деÑиниÑиÑе ÑÑилова",
+DlgPasteCleanBox : "ÐбÑиÑи Ñве",
+
+
+// Color Picker
+ColorAutomatic : "ÐÑÑомаÑÑки",
+ColorMoreColors : "ÐиÑе боÑа...",
+
+// Document Properties
+DocProps : "ÐÑобине докÑменÑа",
+
+// Anchor Dialog
+DlgAnchorTitle : "ÐÑобине ÑидÑа",
+DlgAnchorName : "Ðме ÑидÑа",
+DlgAnchorErrorName : "Ðолимо ÐÐ°Ñ Ð´Ð° ÑнеÑеÑе име ÑидÑа",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "ÐиÑе Ñ ÑеÑникÑ",
+DlgSpellChangeTo : "Ðзмени",
+DlgSpellBtnIgnore : "ÐгноÑиÑи",
+DlgSpellBtnIgnoreAll : "ÐгноÑиÑи Ñве",
+DlgSpellBtnReplace : "Ðамени",
+DlgSpellBtnReplaceAll : "Ðамени Ñве",
+DlgSpellBtnUndo : "ÐÑаÑи акÑиÑÑ",
+DlgSpellNoSuggestions : "- Ðез ÑÑгеÑÑиÑа -",
+DlgSpellProgress : "ÐÑовеÑа ÑпеловаÑа Ñ ÑокÑ...",
+DlgSpellNoMispell : "ÐÑовеÑа ÑпеловаÑа завÑÑена: гÑеÑке ниÑÑ Ð¿ÑонаÑене",
+DlgSpellNoChanges : "ÐÑовеÑа ÑпеловаÑа завÑÑена: ÐиÑе измеÑена ниÑедна ÑеÑ",
+DlgSpellOneChange : "ÐÑовеÑа ÑпеловаÑа завÑÑена: ÐзмеÑена Ñе Ñедна ÑеÑ",
+DlgSpellManyChanges : "ÐÑовеÑа ÑпеловаÑа завÑÑена: %1 ÑеÑ(и) Ñе измеÑено",
+
+IeSpellDownload : "ÐÑовеÑа ÑпеловаÑа ниÑе инÑÑалиÑана. Ðа ли желиÑе да Ñе ÑкинеÑе Ñа ÐнÑеÑнеÑа?",
+
+// Button Dialog
+DlgButtonText : "ТекÑÑ (вÑедноÑÑ)",
+DlgButtonType : "Tип",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Ðазив",
+DlgCheckboxValue : "ÐÑедноÑÑ",
+DlgCheckboxSelected : "ÐзнаÑено",
+
+// Form Dialog
+DlgFormName : "Ðазив",
+DlgFormAction : "AкÑиÑа",
+DlgFormMethod : "MеÑода",
+
+// Select Field Dialog
+DlgSelectName : "Ðазив",
+DlgSelectValue : "ÐÑедноÑÑ",
+DlgSelectSize : "ÐелиÑина",
+DlgSelectLines : "линиÑа",
+DlgSelectChkMulti : "Ðозволи виÑеÑÑÑÑÐºÑ ÑелекÑиÑÑ",
+DlgSelectOpAvail : "ÐоÑÑÑпне опÑиÑе",
+DlgSelectOpText : "ТекÑÑ",
+DlgSelectOpValue : "ÐÑедноÑÑ",
+DlgSelectBtnAdd : "ÐодаÑ",
+DlgSelectBtnModify : "Ðзмени",
+DlgSelectBtnUp : "ÐоÑе",
+DlgSelectBtnDown : "Ðоле",
+DlgSelectBtnSetValue : "ÐодеÑи као ознаÑÐµÐ½Ñ Ð²ÑедноÑÑ",
+DlgSelectBtnDelete : "ÐбÑиÑи",
+
+// Textarea Dialog
+DlgTextareaName : "Ðазив",
+DlgTextareaCols : "ÐÑÐ¾Ñ ÐºÐ¾Ð»Ð¾Ð½Ð°",
+DlgTextareaRows : "ÐÑÐ¾Ñ Ñедова",
+
+// Text Field Dialog
+DlgTextName : "Ðазив",
+DlgTextValue : "ÐÑедноÑÑ",
+DlgTextCharWidth : "ШиÑина (каÑакÑеÑа)",
+DlgTextMaxChars : "ÐакÑимално каÑакÑеÑа",
+DlgTextType : "Тип",
+DlgTextTypeText : "ТекÑÑ",
+DlgTextTypePass : "Ðозинка",
+
+// Hidden Field Dialog
+DlgHiddenName : "Ðазив",
+DlgHiddenValue : "ÐÑедноÑÑ",
+
+// Bulleted List Dialog
+BulletedListProp : "ÐÑобине Bulleted лиÑÑе",
+NumberedListProp : "ÐÑобине набÑоÑиве лиÑÑе",
+DlgLstType : "Тип",
+DlgLstTypeCircle : "ÐÑÑг",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "ÐвадÑаÑ",
+DlgLstTypeNumbers : "ÐÑоÑеви (1, 2, 3)",
+DlgLstTypeLCase : "мала Ñлова (a, b, c)",
+DlgLstTypeUCase : "ÐÐÐÐÐРСÐÐÐÐ (A, B, C)",
+DlgLstTypeSRoman : "Ðале ÑимÑке ÑиÑÑе (i, ii, iii)",
+DlgLstTypeLRoman : "Ðелике ÑимÑке ÑиÑÑе (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "ÐпÑÑе оÑобине",
+DlgDocBackTab : "Ðозадина",
+DlgDocColorsTab : "ÐоÑе и маÑгине",
+DlgDocMetaTab : "ÐеÑаподаÑи",
+
+DlgDocPageTitle : "ÐаÑлов ÑÑÑаниÑе",
+DlgDocLangDir : "Ð¡Ð¼ÐµÑ Ñезика",
+DlgDocLangDirLTR : "Слева надеÑно (LTR)",
+DlgDocLangDirRTL : "ÐдеÑна налево (RTL)",
+DlgDocLangCode : "ШиÑÑа Ñезика",
+DlgDocCharSet : "ÐодиÑаÑе ÑкÑпа каÑакÑеÑа",
+DlgDocCharSetOther : "ÐÑÑала кодиÑаÑа ÑкÑпа каÑакÑеÑа",
+
+DlgDocDocType : "ÐаглавÑе Ñипа докÑменÑа",
+DlgDocDocTypeOther : "ÐÑÑала заглавÑа Ñипа докÑменÑа",
+DlgDocIncXHTML : "УлÑÑÑи XHTML деклаÑаÑиÑе",
+DlgDocBgColor : "ÐоÑа позадине",
+DlgDocBgImage : "УРРпозадинÑке Ñлике",
+DlgDocBgNoScroll : "ФикÑиÑана позадина",
+DlgDocCText : "ТекÑÑ",
+DlgDocCLink : "Ðинк",
+DlgDocCVisited : "ÐоÑеÑени линк",
+DlgDocCActive : "ÐкÑивни линк",
+DlgDocMargins : "ÐаÑгине ÑÑÑаниÑе",
+DlgDocMaTop : "ÐоÑÑа",
+DlgDocMaLeft : "Ðева",
+DlgDocMaRight : "ÐеÑна",
+DlgDocMaBottom : "ÐоÑа",
+DlgDocMeIndex : "ÐÑÑÑне ÑеÑи за индекÑиÑаÑе докÑменÑа (ÑаздвоÑене заÑезом)",
+DlgDocMeDescr : "ÐÐ¿Ð¸Ñ Ð´Ð¾ÐºÑменÑа",
+DlgDocMeAuthor : "ÐÑÑоÑ",
+DlgDocMeCopy : "ÐÑÑоÑÑка пÑава",
+DlgDocPreview : "Ðзглед ÑÑÑаниÑе",
+
+// Templates Dialog
+Templates : "ÐбÑаÑÑи",
+DlgTemplatesTitle : "ÐбÑаÑÑи за ÑадÑжаÑ",
+DlgTemplatesSelMsg : "Ðолимо ÐÐ°Ñ Ð´Ð° одабеÑеÑе обÑÐ°Ð·Ð°Ñ ÐºÐ¾Ñи Ñе биÑи пÑимеÑен на ÑÑÑаниÑÑ (ÑÑенÑÑни ÑадÑÐ¶Ð°Ñ Ñе биÑи обÑиÑан):",
+DlgTemplatesLoading : "УÑиÑавам лиÑÑÑ Ð¾Ð±ÑазаÑа. Ðало ÑÑÑпÑеÑа...",
+DlgTemplatesNoTpl : "(Ðема деÑиниÑаниÑ
обÑазаÑа)",
+
+// About Dialog
+DlgAboutAboutTab : "РедиÑоÑÑ",
+DlgAboutBrowserInfoTab : "ÐнÑоÑмаÑиÑе о пÑеÑÑаживаÑÑ",
+DlgAboutVersion : "веÑзиÑа",
+DlgAboutLicense : "ÐиÑенÑиÑано под ÑÑловима GNU Lesser General Public License",
+DlgAboutInfo : "Ðа виÑе инÑоÑмаÑиÑа поÑеÑиÑе"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/sv.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/sv.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/sv.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: sv.js
+ * Swedish language file.
+ *
+ * File Authors:
+ * Kristoffer Malvefors (kristoffer at intema.ws)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Dölj verktygsfält",
+ToolbarExpand : "Visa verktygsfält",
+
+// Toolbar Items and Context Menu
+Save : "Spara",
+NewPage : "Ny sida",
+Preview : "Förhandsgranska",
+Cut : "Klipp ut",
+Copy : "Kopiera",
+Paste : "Klistra in",
+PasteText : "Klistra in som text",
+PasteWord : "Klistra in från Word",
+Print : "Skriv ut",
+SelectAll : "Markera allt",
+RemoveFormat : "Radera formatering",
+InsertLinkLbl : "Länk",
+InsertLink : "Infoga/Redigera länk",
+RemoveLink : "Radera länk",
+Anchor : "Infoga/Redigera ankarlänk",
+InsertImageLbl : "Bild",
+InsertImage : "Infoga/Redigera bild",
+InsertFlashLbl : "Flash",
+InsertFlash : "Infoga/Redigera Flash",
+InsertTableLbl : "Tabell",
+InsertTable : "Infoga/Redigera tabell",
+InsertLineLbl : "Linje",
+InsertLine : "Infoga horisontal linje",
+InsertSpecialCharLbl: "Utökade tecken",
+InsertSpecialChar : "Klistra in utökat tecken",
+InsertSmileyLbl : "Smiley",
+InsertSmiley : "Infoga Smiley",
+About : "Om FCKeditor",
+Bold : "Fet",
+Italic : "Kursiv",
+Underline : "Understruken",
+StrikeThrough : "Genomstruken",
+Subscript : "Nedsänkta tecken",
+Superscript : "Upphöjda tecken",
+LeftJustify : "Vänsterjustera",
+CenterJustify : "Centrera",
+RightJustify : "Högerjustera",
+BlockJustify : "Justera till marginaler",
+DecreaseIndent : "Minska indrag",
+IncreaseIndent : "Ãka indrag",
+Undo : "Ã
ngra",
+Redo : "Gör om",
+NumberedListLbl : "Numrerad lista",
+NumberedList : "Infoga/Radera numrerad lista",
+BulletedListLbl : "Punktlista",
+BulletedList : "Infoga/Radera punktlista",
+ShowTableBorders : "Visa tabellkant",
+ShowDetails : "Visa radbrytningar",
+Style : "Anpassad stil",
+FontFormat : "Teckenformat",
+Font : "Typsnitt",
+FontSize : "Storlek",
+TextColor : "Textfärg",
+BGColor : "Bakgrundsfärg",
+Source : "Källa",
+Find : "Sök",
+Replace : "Ersätt",
+SpellCheck : "Stavningskontroll",
+UniversalKeyboard : "Universellt tangentbord",
+
+Form : "Formulär",
+Checkbox : "Kryssruta",
+RadioButton : "Alternativknapp",
+TextField : "Textfält",
+Textarea : "Textruta",
+HiddenField : "Dolt fält",
+Button : "Knapp",
+SelectionField : "Flervalslista",
+ImageButton : "Bildknapp",
+
+// Context Menu
+EditLink : "Redigera länk",
+InsertRow : "Infoga rad",
+DeleteRows : "Radera rad",
+InsertColumn : "Infoga kolumn",
+DeleteColumns : "Radera kolumn",
+InsertCell : "Infoga cell",
+DeleteCells : "Radera celler",
+MergeCells : "Sammanfoga celler",
+SplitCell : "Separera celler",
+CellProperties : "Cellegenskaper",
+TableProperties : "Tabellegenskaper",
+ImageProperties : "Bildegenskaper",
+FlashProperties : "Flashegenskaper",
+
+AnchorProp : "Egenskaper för ankarlänk",
+ButtonProp : "Egenskaper för knapp",
+CheckboxProp : "Egenskaper för kryssruta",
+HiddenFieldProp : "Egenskaper för dolt fält",
+RadioButtonProp : "Egenskaper för alternativknapp",
+ImageButtonProp : "Egenskaper för bildknapp",
+TextFieldProp : "Egenskaper för textfält",
+SelectionFieldProp : "Egenskaper för flervalslista",
+TextareaProp : "Egenskaper för textruta",
+FormProp : "Egenskaper för formulär",
+
+FontFormats : "Normal;Formaterad;Adress;Rubrik 1;Rubrik 2;Rubrik 3;Rubrik 4;Rubrik 5;Rubrik 6",
+
+// Alerts and Messages
+ProcessingXHTML : "Bearbetar XHTML. Var god vänta...",
+Done : "Klar",
+PasteWordConfirm : "Texten du vill klistra in verkar vara kopierad från Word. Vill du rensa innan du klistar in?",
+NotCompatiblePaste : "Denna åtgärd är inte tillgängligt för Internet Explorer version 5.5 eller högre. Vill du klistra in utan att rensa?",
+UnknownToolbarItem : "Okänt verktygsfält \"%1\"",
+UnknownCommand : "Okänt kommando \"%1\"",
+NotImplemented : "Kommandot finns ej",
+UnknownToolbarSet : "Verktygsfält \"%1\" finns ej",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "OK",
+DlgBtnCancel : "Avbryt",
+DlgBtnClose : "Stäng",
+DlgBtnBrowseServer : "Bläddra på server",
+DlgAdvancedTag : "Avancerad",
+DlgOpOther : "Ãvrigt",
+DlgInfoTab : "Information",
+DlgAlertUrl : "Var god och ange en URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<ej angivet>",
+DlgGenId : "Id",
+DlgGenLangDir : "Språkriktning",
+DlgGenLangDirLtr : "Vänster till Höger (VTH)",
+DlgGenLangDirRtl : "Höger till Vänster (HTV)",
+DlgGenLangCode : "Språkkod",
+DlgGenAccessKey : "Behörighetsnyckel",
+DlgGenName : "Namn",
+DlgGenTabIndex : "Tabindex",
+DlgGenLongDescr : "URL-beskrivning",
+DlgGenClass : "Stylesheet class",
+DlgGenTitle : "Titel",
+DlgGenContType : "Innehållstyp",
+DlgGenLinkCharset : "Teckenuppställning",
+DlgGenStyle : "Style",
+
+// Image Dialog
+DlgImgTitle : "Bildegenskaper",
+DlgImgInfoTab : "Bildinformation",
+DlgImgBtnUpload : "Skicka till server",
+DlgImgURL : "URL",
+DlgImgUpload : "Ladda upp",
+DlgImgAlt : "Alternativ text",
+DlgImgWidth : "Bredd",
+DlgImgHeight : "Höjd",
+DlgImgLockRatio : "Lås höjd/bredd förhållanden",
+DlgBtnResetSize : "Ã
terställ storlek",
+DlgImgBorder : "Kant",
+DlgImgHSpace : "Horis. marginal",
+DlgImgVSpace : "Vert. marginal",
+DlgImgAlign : "Justering",
+DlgImgAlignLeft : "Vänster",
+DlgImgAlignAbsBottom: "Absolut nederkant",
+DlgImgAlignAbsMiddle: "Absolut centrering",
+DlgImgAlignBaseline : "Baslinje",
+DlgImgAlignBottom : "Nederkant",
+DlgImgAlignMiddle : "Mitten",
+DlgImgAlignRight : "Höger",
+DlgImgAlignTextTop : "Text överkant",
+DlgImgAlignTop : "Ãverkant",
+DlgImgPreview : "Förhandsgranska",
+DlgImgAlertUrl : "Var god och ange bildens URL",
+DlgImgLinkTab : "Länk",
+
+// Flash Dialog
+DlgFlashTitle : "Flashegenskaper",
+DlgFlashChkPlay : "Automatisk uppspelning",
+DlgFlashChkLoop : "Upprepa/Loopa",
+DlgFlashChkMenu : "Aktivera Flashmeny",
+DlgFlashScale : "Skala",
+DlgFlashScaleAll : "Visa allt",
+DlgFlashScaleNoBorder : "Ingen ram",
+DlgFlashScaleFit : "Exakt passning",
+
+// Link Dialog
+DlgLnkWindowTitle : "Länk",
+DlgLnkInfoTab : "Länkinformation",
+DlgLnkTargetTab : "MÃ¥l",
+
+DlgLnkType : "Länktyp",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Ankare i sidan",
+DlgLnkTypeEMail : "E-post",
+DlgLnkProto : "Protokoll",
+DlgLnkProtoOther : "<övrigt>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Välj ett ankare",
+DlgLnkAnchorByName : "efter ankarnamn",
+DlgLnkAnchorById : "efter objektid",
+DlgLnkNoAnchors : "<Inga ankare kunde hittas>",
+DlgLnkEMail : "E-postadress",
+DlgLnkEMailSubject : "Ãmne",
+DlgLnkEMailBody : "Innehåll",
+DlgLnkUpload : "Ladda upp",
+DlgLnkBtnUpload : "Skicka till servern",
+
+DlgLnkTarget : "MÃ¥l",
+DlgLnkTargetFrame : "<ram>",
+DlgLnkTargetPopup : "<popup-fönster>",
+DlgLnkTargetBlank : "Nytt fönster (_blank)",
+DlgLnkTargetParent : "Föregående Window (_parent)",
+DlgLnkTargetSelf : "Detta fönstret (_self)",
+DlgLnkTargetTop : "Ãversta fönstret (_top)",
+DlgLnkTargetFrameName : "MÃ¥lets ramnamn",
+DlgLnkPopWinName : "Popup-fönstrets namn",
+DlgLnkPopWinFeat : "Popup-fönstrets egenskaper",
+DlgLnkPopResize : "Kan ändra storlek",
+DlgLnkPopLocation : "Adressfält",
+DlgLnkPopMenu : "Menyfält",
+DlgLnkPopScroll : "Scrolllista",
+DlgLnkPopStatus : "Statusfält",
+DlgLnkPopToolbar : "Verktygsfält",
+DlgLnkPopFullScrn : "Helskärm (endast IE)",
+DlgLnkPopDependent : "Beroende (endest Netscape)",
+DlgLnkPopWidth : "Bredd",
+DlgLnkPopHeight : "Höjd",
+DlgLnkPopLeft : "Position från vänster",
+DlgLnkPopTop : "Position från sidans topp",
+
+DlnLnkMsgNoUrl : "Var god ange länkens URL",
+DlnLnkMsgNoEMail : "Var god ange E-postadress",
+DlnLnkMsgNoAnchor : "Var god ange ett ankare",
+
+// Color Dialog
+DlgColorTitle : "Välj färg",
+DlgColorBtnClear : "Rensa",
+DlgColorHighlight : "Markera",
+DlgColorSelected : "Vald",
+
+// Smiley Dialog
+DlgSmileyTitle : "Infoga en smiley",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Välj utökat tecken",
+
+// Table Dialog
+DlgTableTitle : "Tabellegenskaper",
+DlgTableRows : "Rader",
+DlgTableColumns : "Kolumner",
+DlgTableBorder : "Kantstorlek",
+DlgTableAlign : "Justering",
+DlgTableAlignNotSet : "<ej angivet>",
+DlgTableAlignLeft : "Vänster",
+DlgTableAlignCenter : "Centrerad",
+DlgTableAlignRight : "Höger",
+DlgTableWidth : "Bredd",
+DlgTableWidthPx : "pixlar",
+DlgTableWidthPc : "procent",
+DlgTableHeight : "Höjd",
+DlgTableCellSpace : "Cellavstånd",
+DlgTableCellPad : "Cellutfyllnad",
+DlgTableCaption : "Rubrik",
+
+// Table Cell Dialog
+DlgCellTitle : "Cellegenskaper",
+DlgCellWidth : "Bredd",
+DlgCellWidthPx : "pixlar",
+DlgCellWidthPc : "procent",
+DlgCellHeight : "Höjd",
+DlgCellWordWrap : "Automatisk radbrytning",
+DlgCellWordWrapNotSet : "<Ej angivet>",
+DlgCellWordWrapYes : "Ja",
+DlgCellWordWrapNo : "Nej",
+DlgCellHorAlign : "Horisontal justering",
+DlgCellHorAlignNotSet : "<Ej angivet>",
+DlgCellHorAlignLeft : "Vänster",
+DlgCellHorAlignCenter : "Centrerad",
+DlgCellHorAlignRight: "Höger",
+DlgCellVerAlign : "Vertikal justering",
+DlgCellVerAlignNotSet : "<Ej angivet>",
+DlgCellVerAlignTop : "Topp",
+DlgCellVerAlignMiddle : "Mitten",
+DlgCellVerAlignBottom : "Nederkant",
+DlgCellVerAlignBaseline : "Underst",
+DlgCellRowSpan : "Radomfång",
+DlgCellCollSpan : "Kolumnomfång",
+DlgCellBackColor : "Bakgrundsfärg",
+DlgCellBorderColor : "Kantfärg",
+DlgCellBtnSelect : "Välj...",
+
+// Find Dialog
+DlgFindTitle : "Sök",
+DlgFindFindBtn : "Sök",
+DlgFindNotFoundMsg : "Angiven text kunde ej hittas.",
+
+// Replace Dialog
+DlgReplaceTitle : "Ersätt",
+DlgReplaceFindLbl : "Sök efter:",
+DlgReplaceReplaceLbl : "Ersätt med:",
+DlgReplaceCaseChk : "Skiftläge",
+DlgReplaceReplaceBtn : "Ersätt",
+DlgReplaceReplAllBtn : "Ersätt alla",
+DlgReplaceWordChk : "Inkludera hela ord",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Säkerhetsinställningar i Er webläsare tillåter inte åtgården Klistra in. Använd (Ctrl+V) istället.",
+PasteErrorCut : "Säkerhetsinställningar i Er webläsare tillåter inte åtgården Klipp ut. Använd (Ctrl+X) istället.",
+PasteErrorCopy : "Säkerhetsinställningar i Er webläsare tillåter inte åtgården Kopiera. Använd (Ctrl+C) istället",
+
+PasteAsText : "Klistra in som vanlig text",
+PasteFromWord : "Klistra in från Word",
+
+DlgPasteMsg2 : "Var god och klistra in Er text i rutan nedan genom att använda (<STRONG>Ctrl+V</STRONG>) klicka sen på <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "Ignorera typsnittsdefinitioner",
+DlgPasteRemoveStyles : "Radera Stildefinitioner",
+DlgPasteCleanBox : "Töm rutans innehåll",
+
+
+// Color Picker
+ColorAutomatic : "Automatisk",
+ColorMoreColors : "Fler färger...",
+
+// Document Properties
+DocProps : "Dokumentegenskaper",
+
+// Anchor Dialog
+DlgAnchorTitle : "Ankaregenskaper",
+DlgAnchorName : "Ankarnamn",
+DlgAnchorErrorName : "Var god ange ett ankarnamn",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Saknas i ordlistan",
+DlgSpellChangeTo : "Ãndra till",
+DlgSpellBtnIgnore : "Ignorera",
+DlgSpellBtnIgnoreAll : "Ignorera alla",
+DlgSpellBtnReplace : "Ersätt",
+DlgSpellBtnReplaceAll : "Ersätt alla",
+DlgSpellBtnUndo : "Ã
ngra",
+DlgSpellNoSuggestions : "- Förslag saknas -",
+DlgSpellProgress : "Stavningskontroll pågår...",
+DlgSpellNoMispell : "Stavningskontroll slutförd: Inga stavfel påträffades.",
+DlgSpellNoChanges : "Stavningskontroll slutförd: Inga ord rättades.",
+DlgSpellOneChange : "Stavningskontroll slutförd: Ett ord rättades.",
+DlgSpellManyChanges : "Stavningskontroll slutförd: %1 ord rättades.",
+
+IeSpellDownload : "Stavningskontrollen är ej installerad. Vill du göra det nu?",
+
+// Button Dialog
+DlgButtonText : "Text (Värde)",
+DlgButtonType : "Typ",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Namn",
+DlgCheckboxValue : "Värde",
+DlgCheckboxSelected : "Vald",
+
+// Form Dialog
+DlgFormName : "Namn",
+DlgFormAction : "Funktion",
+DlgFormMethod : "Metod",
+
+// Select Field Dialog
+DlgSelectName : "Namn",
+DlgSelectValue : "Värde",
+DlgSelectSize : "Storlek",
+DlgSelectLines : "Linjer",
+DlgSelectChkMulti : "Tillåt flerval",
+DlgSelectOpAvail : "Befintliga val",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Värde",
+DlgSelectBtnAdd : "Lägg till",
+DlgSelectBtnModify : "Redigera",
+DlgSelectBtnUp : "Upp",
+DlgSelectBtnDown : "Ner",
+DlgSelectBtnSetValue : "Markera som valt värde",
+DlgSelectBtnDelete : "Radera",
+
+// Textarea Dialog
+DlgTextareaName : "Namn",
+DlgTextareaCols : "Kolumner",
+DlgTextareaRows : "Rader",
+
+// Text Field Dialog
+DlgTextName : "Namn",
+DlgTextValue : "Värde",
+DlgTextCharWidth : "Teckenbredd",
+DlgTextMaxChars : "Max antal tecken",
+DlgTextType : "Typ",
+DlgTextTypeText : "Text",
+DlgTextTypePass : "Lösenord",
+
+// Hidden Field Dialog
+DlgHiddenName : "Namn",
+DlgHiddenValue : "Värde",
+
+// Bulleted List Dialog
+BulletedListProp : "Egenskaper för punktlista",
+NumberedListProp : "Egenskaper för numrerad lista",
+DlgLstType : "Typ",
+DlgLstTypeCircle : "Cirkel",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Ruta",
+DlgLstTypeNumbers : "Nummer (1, 2, 3)",
+DlgLstTypeLCase : "Gemener (a, b, c)",
+DlgLstTypeUCase : "Versaler (A, B, C)",
+DlgLstTypeSRoman : "Små romerska siffror (i, ii, iii)",
+DlgLstTypeLRoman : "Stora romerska siffror (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Allmän",
+DlgDocBackTab : "Bakgrund",
+DlgDocColorsTab : "Färg och marginal",
+DlgDocMetaTab : "Metadata",
+
+DlgDocPageTitle : "Sidtitel",
+DlgDocLangDir : "Språkriktning",
+DlgDocLangDirLTR : "Vänster till Höger",
+DlgDocLangDirRTL : "Höger till Vänster",
+DlgDocLangCode : "Språkkod",
+DlgDocCharSet : "Teckenuppsättningar",
+DlgDocCharSetOther : "Ãvriga teckenuppsättningar",
+
+DlgDocDocType : "Sidhuvud",
+DlgDocDocTypeOther : "Ãvriga sidhuvuden",
+DlgDocIncXHTML : "Inkludera XHTML deklaration",
+DlgDocBgColor : "Bakgrundsfärg",
+DlgDocBgImage : "Bakgrundsbildens URL",
+DlgDocBgNoScroll : "Fast bakgrund",
+DlgDocCText : "Text",
+DlgDocCLink : "Länk",
+DlgDocCVisited : "Besökt länk",
+DlgDocCActive : "Aktiv länk",
+DlgDocMargins : "Sidmarginal",
+DlgDocMaTop : "Topp",
+DlgDocMaLeft : "Vänster",
+DlgDocMaRight : "Höger",
+DlgDocMaBottom : "Botten",
+DlgDocMeIndex : "Sidans nyckelord",
+DlgDocMeDescr : "Sidans beskrivning",
+DlgDocMeAuthor : "Författare",
+DlgDocMeCopy : "Upphovsrätt",
+DlgDocPreview : "Förhandsgranska",
+
+// Templates Dialog
+Templates : "Sidmallar",
+DlgTemplatesTitle : "Sidmallar",
+DlgTemplatesSelMsg : "Var god välj en mall att använda med editorn<br>(allt nuvarande innehåll raderas):",
+DlgTemplatesLoading : "Laddar mallar. Var god vänta...",
+DlgTemplatesNoTpl : "(Ingen mall är vald)",
+
+// About Dialog
+DlgAboutAboutTab : "Om",
+DlgAboutBrowserInfoTab : "Webläsarinfo",
+DlgAboutVersion : "version",
+DlgAboutLicense : "Licensierad under villkoren av GNU Lesser General Public License",
+DlgAboutInfo : "För mer information se"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/th.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/th.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/th.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,476 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: th.js
+ * Thai language file.
+ *
+ * File Authors:
+ * Audy Charin Arsakit (arsakit at gmail.com)
+ * Joy Piyanoot Promnuan (piyanoot at gmail.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "à¸à¹à¸à¸à¹à¸à¸à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸",
+ToolbarExpand : "à¹à¸ªà¸à¸à¹à¸à¸à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸",
+
+// Toolbar Items and Context Menu
+Save : "à¸à¸±à¸à¸à¸¶à¸",
+NewPage : "สรà¹à¸²à¸à¸«à¸à¹à¸²à¹à¸à¸à¸ªà¸²à¸£à¹à¸«à¸¡à¹",
+Preview : "à¸à¸¹à¸«à¸à¹à¸²à¹à¸à¸à¸ªà¸²à¸£à¸à¸±à¸§à¸à¸¢à¹à¸²à¸",
+Cut : "à¸à¸±à¸",
+Copy : "สำà¹à¸à¸²",
+Paste : "วาà¸",
+PasteText : "วาà¸à¸ªà¸³à¹à¸à¸²à¸à¸²à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸à¸£à¸£à¸¡à¸à¸²",
+PasteWord : "วาà¸à¸ªà¸³à¹à¸à¸²à¸à¸²à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¹à¸§à¸´à¸£à¹à¸",
+Print : "สัà¹à¸à¸à¸´à¸¡à¸à¹",
+SelectAll : "à¹à¸¥à¸·à¸à¸à¸à¸±à¹à¸à¸«à¸¡à¸",
+RemoveFormat : "ลà¹à¸²à¸à¸£à¸¹à¸à¹à¸à¸",
+InsertLinkLbl : "ลิà¸à¸à¹à¹à¸à¸·à¹à¸à¸¡à¹à¸¢à¸à¹à¸§à¹à¸ à¸à¸µà¹à¸¡à¸¥à¹ รูà¸à¸ าภหรืà¸à¹à¸à¸¥à¹à¸à¸·à¹à¸à¹",
+InsertLink : "à¹à¸à¸£à¸/à¹à¸à¹à¹à¸ ลิà¸à¸à¹",
+RemoveLink : "ลภลิà¸à¸à¹",
+Anchor : "à¹à¸à¸£à¸/à¹à¸à¹à¹à¸ Anchor",
+InsertImageLbl : "รูà¸à¸ าà¸",
+InsertImage : "à¹à¸à¸£à¸/à¹à¸à¹à¹à¸ รูà¸à¸ าà¸",
+InsertFlashLbl : "Flash", //MISSING
+InsertFlash : "Insert/Edit Flash", //MISSING
+InsertTableLbl : "à¸à¸²à¸£à¸²à¸",
+InsertTable : "à¹à¸à¸£à¸/à¹à¸à¹à¹à¸ à¸à¸²à¸£à¸²à¸",
+InsertLineLbl : "à¹à¸ªà¹à¸à¸à¸±à¹à¸à¸à¸£à¸£à¸à¸±à¸",
+InsertLine : "à¹à¸à¸£à¸à¹à¸ªà¹à¸à¸à¸±à¹à¸à¸à¸£à¸£à¸à¸±à¸",
+InsertSpecialCharLbl: "à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸à¸´à¹à¸¨à¸©",
+InsertSpecialChar : "à¹à¸à¸£à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸à¸´à¹à¸¨à¸©",
+InsertSmileyLbl : "รูà¸à¸ªà¸·à¹à¸à¸à¸²à¸£à¸¡à¸à¹",
+InsertSmiley : "à¹à¸à¸£à¸à¸£à¸¹à¸à¸ªà¸·à¹à¸à¸à¸²à¸£à¸¡à¸à¹",
+About : "à¹à¸à¸µà¹à¸¢à¸§à¸à¸±à¸à¹à¸à¸£à¹à¸à¸£à¸¡ FCKeditor",
+Bold : "à¸à¸±à¸§à¸«à¸à¸²",
+Italic : "à¸à¸±à¸§à¹à¸à¸µà¸¢à¸",
+Underline : "à¸à¸±à¸§à¸à¸µà¸à¹à¸ªà¹à¸à¹à¸à¹",
+StrikeThrough : "à¸à¸±à¸§à¸à¸µà¸à¹à¸ªà¹à¸à¸à¸±à¸",
+Subscript : "à¸à¸±à¸§à¸«à¹à¸à¸¢",
+Superscript : "à¸à¸±à¸§à¸¢à¸",
+LeftJustify : "à¸à¸±à¸à¸à¸´à¸à¸à¹à¸²à¸¢",
+CenterJustify : "à¸à¸±à¸à¸à¸¶à¹à¸à¸à¸¥à¸²à¸",
+RightJustify : "à¸à¸±à¸à¸à¸´à¸à¸à¸§à¸²",
+BlockJustify : "à¸à¸±à¸à¸à¸à¸à¸µà¸«à¸à¹à¸²à¸à¸£à¸°à¸à¸²à¸©",
+DecreaseIndent : "ลà¸à¸£à¸°à¸¢à¸°à¸¢à¹à¸à¸«à¸à¹à¸²",
+IncreaseIndent : "à¹à¸à¸´à¹à¸¡à¸£à¸°à¸¢à¸°à¸¢à¹à¸à¸«à¸à¹à¸²",
+Undo : "ยà¸à¹à¸¥à¸´à¸à¸à¸³à¸ªà¸±à¹à¸",
+Redo : "à¸à¸³à¸à¹à¸³à¸à¸³à¸ªà¸±à¹à¸",
+NumberedListLbl : "ลำà¸à¸±à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¸à¸à¸±à¸§à¹à¸¥à¸",
+NumberedList : "à¹à¸à¸£à¸/à¹à¸à¹à¹à¸ ลำà¸à¸±à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¸à¸à¸±à¸§à¹à¸¥à¸",
+BulletedListLbl : "ลำà¸à¸±à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¸à¸ªà¸±à¸à¸¥à¸±à¸à¸©à¸à¹",
+BulletedList : "à¹à¸à¸£à¸/à¹à¸à¹à¹à¸ ลำà¸à¸±à¸à¸£à¸²à¸¢à¸à¸²à¸£à¹à¸à¸à¸ªà¸±à¸à¸¥à¸±à¸à¸©à¸à¹",
+ShowTableBorders : "à¹à¸ªà¸à¸à¸à¸à¸à¸à¸à¸à¸à¸²à¸£à¸²à¸",
+ShowDetails : "à¹à¸ªà¸à¸à¸£à¸²à¸¢à¸¥à¸°à¹à¸à¸µà¸¢à¸",
+Style : "ลัà¸à¸©à¸à¸°",
+FontFormat : "รูà¸à¹à¸à¸",
+Font : "à¹à¸à¸à¸à¸±à¸à¸©à¸£",
+FontSize : "à¸à¸à¸²à¸",
+TextColor : "สีà¸à¸±à¸§à¸à¸±à¸à¸©à¸£",
+BGColor : "สีà¸à¸·à¹à¸à¸«à¸¥à¸±à¸",
+Source : "à¸à¸¹à¸£à¸«à¸±à¸ª HTML",
+Find : "à¸à¹à¸à¸«à¸²",
+Replace : "à¸à¹à¸à¸«à¸²à¹à¸¥à¸°à¹à¸à¸à¸à¸µà¹",
+SpellCheck : "à¸à¸£à¸§à¸à¸à¸²à¸£à¸ªà¸°à¸à¸à¸à¸³",
+UniversalKeyboard : "à¸à¸µà¸¢à¹à¸à¸à¸£à¹à¸à¸«à¸¥à¸²à¸à¸ าษา",
+
+Form : "à¹à¸à¸à¸à¸à¸£à¹à¸¡",
+Checkbox : "à¹à¸à¹à¸à¸à¹à¸à¸",
+RadioButton : "à¹à¸£à¸à¸´à¹à¸à¸à¸±à¸à¸à¸à¸",
+TextField : "à¹à¸à¹à¸à¸à¹à¸à¸´à¸¥à¸à¹",
+Textarea : "à¹à¸à¹à¸à¸à¹à¹à¸à¹à¸£à¸µà¸¢",
+HiddenField : "ฮิà¸à¹à¸à¸à¸à¸´à¸¥à¸à¹",
+Button : "à¸à¸¸à¹à¸¡",
+SelectionField : "à¹à¸à¸à¸à¸±à¸§à¹à¸¥à¸·à¸à¸",
+ImageButton : "à¸à¸¸à¹à¸¡à¹à¸à¸à¸£à¸¹à¸à¸ าà¸",
+
+// Context Menu
+EditLink : "à¹à¸à¹à¹à¸ ลิà¸à¸à¹",
+InsertRow : "à¹à¸à¸£à¸à¹à¸à¸§",
+DeleteRows : "ลà¸à¹à¸à¸§",
+InsertColumn : "à¹à¸à¸£à¸à¸ªà¸à¸¡à¸à¹",
+DeleteColumns : "ลà¸à¸ªà¸à¸¡à¸à¹",
+InsertCell : "à¹à¸à¸£à¸à¸à¹à¸à¸",
+DeleteCells : "ลà¸à¸à¹à¸à¸",
+MergeCells : "à¸à¸ªà¸²à¸à¸à¹à¸à¸",
+SplitCell : "à¹à¸¢à¸à¸à¹à¸à¸",
+CellProperties : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸à¸à¹à¸à¸",
+TableProperties : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸à¸à¸²à¸£à¸²à¸",
+ImageProperties : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸à¸£à¸¹à¸à¸ าà¸",
+FlashProperties : "Flash Properties", //MISSING
+
+AnchorProp : "รายละà¹à¸à¸µà¸¢à¸ Anchor",
+ButtonProp : "รายละà¹à¸à¸µà¸¢à¸à¸à¸à¸ à¸à¸¸à¹à¸¡",
+CheckboxProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¹à¸à¹à¸à¸à¹à¸à¸",
+HiddenFieldProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ ฮิà¸à¹à¸à¸à¸à¸´à¸¥à¸à¹",
+RadioButtonProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¹à¸£à¸à¸´à¹à¸à¸à¸±à¸à¸à¸à¸",
+ImageButtonProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¸à¸¸à¹à¸¡à¹à¸à¸à¸£à¸¹à¸à¸ าà¸",
+TextFieldProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¹à¸à¹à¸à¸à¹à¸à¸´à¸¥à¸à¹",
+SelectionFieldProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¹à¸à¸à¸à¸±à¸§à¹à¸¥à¸·à¸à¸",
+TextareaProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¹à¸à¹à¸à¹à¸à¹à¸£à¸µà¸¢",
+FormProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¹à¸à¸à¸à¸à¸£à¹à¸¡",
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "à¹à¸à¸£à¹à¸à¸£à¸¡à¸à¸³à¸¥à¸±à¸à¸à¸³à¸à¸²à¸à¸à¹à¸§à¸¢à¹à¸à¸à¹à¸à¹à¸¥à¸¢à¸µ XHTML à¸à¸£à¸¸à¸à¸²à¸£à¸à¸ªà¸±à¸à¸à¸£à¸¹à¹...",
+Done : "à¹à¸à¸£à¹à¸à¸£à¸¡à¸à¸³à¸à¸²à¸à¹à¸ªà¸£à¹à¸à¸ªà¸¡à¸à¸¹à¸£à¸à¹",
+PasteWordConfirm : "à¸à¹à¸à¸¡à¸¹à¸¥à¸à¸µà¹à¸à¹à¸²à¸à¸à¹à¸à¸à¸à¸²à¸£à¸§à¸²à¸à¸¥à¸à¹à¸à¹à¸à¹à¸à¸à¸²à¸ à¸à¸¹à¸à¸à¸±à¸à¸£à¸¹à¸à¹à¸à¸à¸à¸²à¸à¹à¸à¸£à¹à¸à¸£à¸¡à¹à¸§à¸´à¸£à¹à¸. à¸à¹à¸²à¸à¸à¹à¸à¸à¸à¸²à¸£à¸¥à¹à¸²à¸à¸£à¸¹à¸à¹à¸à¸à¸à¸µà¹à¸¡à¸²à¸à¸²à¸à¹à¸à¸£à¹à¸à¸£à¸¡à¹à¸§à¸´à¸£à¹à¸à¸«à¸£à¸·à¸à¹à¸¡à¹?",
+NotCompatiblePaste : "à¸à¸³à¸ªà¸±à¹à¸à¸à¸µà¹à¸à¸³à¸à¸²à¸à¹à¸à¹à¸à¸£à¹à¸à¸£à¸¡à¸à¹à¸à¸à¹à¸§à¹à¸ Internet Explorer version รุà¹à¸ 5.5 หรืà¸à¹à¸«à¸¡à¹à¸à¸§à¹à¸²à¹à¸à¹à¸²à¸à¸±à¹à¸. à¸à¹à¸²à¸à¸à¹à¸à¸à¸à¸²à¸£à¸§à¸²à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¹à¸à¸¢à¹à¸¡à¹à¸¥à¹à¸²à¸à¸£à¸¹à¸à¹à¸à¸à¸à¸µà¹à¸¡à¸²à¸à¸²à¸à¹à¸à¸£à¹à¸à¸£à¸¡à¹à¸§à¸´à¸£à¹à¸à¸«à¸£à¸·à¸à¹à¸¡à¹?",
+UnknownToolbarItem : "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸£à¸°à¸à¸¸à¸à¸¸à¹à¸¡à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸à¹à¸à¹ \"%1\"",
+UnknownCommand : "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸£à¸°à¸à¸¸à¸à¸·à¹à¸à¸à¸³à¸ªà¸±à¹à¸à¹à¸à¹ \"%1\"",
+NotImplemented : "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¹à¸à¹à¸à¸²à¸à¸à¸³à¸ªà¸±à¹à¸à¹à¸à¹",
+UnknownToolbarSet : "à¹à¸¡à¹à¸¡à¸µà¸à¸²à¸£à¸à¸´à¸à¸à¸±à¹à¸à¸à¸¸à¸à¸à¸³à¸ªà¸±à¹à¸à¹à¸à¹à¸à¸à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸ \"%1\" à¸à¸£à¸¸à¸à¸²à¸à¸´à¸à¸à¹à¸à¸à¸¹à¹à¸à¸¹à¹à¸¥à¸£à¸°à¸à¸",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "à¸à¸à¸¥à¸",
+DlgBtnCancel : "ยà¸à¹à¸¥à¸´à¸",
+DlgBtnClose : "à¸à¸´à¸",
+DlgBtnBrowseServer : "à¹à¸à¸´à¸à¸«à¸à¹à¸²à¸à¹à¸²à¸à¸à¸±à¸à¸à¸²à¸£à¹à¸à¸¥à¹à¸à¸±à¸à¹à¸«à¸¥à¸",
+DlgAdvancedTag : "à¸à¸±à¹à¸à¸ªà¸¹à¸",
+DlgOpOther : "<à¸à¸·à¹à¸à¹>",
+DlgInfoTab : "Info", //MISSING
+DlgAlertUrl : "Please insert the URL", //MISSING
+
+// General Dialogs Labels
+DlgGenNotSet : "<à¹à¸¡à¹à¸£à¸°à¸à¸¸>",
+DlgGenId : "à¹à¸à¸à¸µ",
+DlgGenLangDir : "à¸à¸²à¸£à¹à¸à¸µà¸¢à¸-à¸à¹à¸²à¸à¸ าษา",
+DlgGenLangDirLtr : "à¸à¸²à¸à¸à¹à¸²à¸¢à¹à¸à¸à¸§à¸² (LTR)",
+DlgGenLangDirRtl : "à¸à¸²à¸à¸à¸§à¸²à¸¡à¸²à¸à¹à¸²à¸¢ (RTL)",
+DlgGenLangCode : "รหัสภาษา",
+DlgGenAccessKey : "à¹à¸à¸à¹à¸à¸ª à¸à¸µà¸¢à¹",
+DlgGenName : "à¸à¸·à¹à¸",
+DlgGenTabIndex : "ลำà¸à¸±à¸à¸à¸à¸ à¹à¸à¹à¸",
+DlgGenLongDescr : "à¸à¸³à¸à¸à¸´à¸à¸²à¸¢à¸à¸£à¸°à¸à¸à¸ URL",
+DlgGenClass : "à¸à¸¥à¸²à¸ªà¸à¸à¸à¹à¸à¸¥à¹à¸à¸³à¸«à¸à¸à¸¥à¸±à¸à¸©à¸à¸°à¸à¸²à¸£à¹à¸ªà¸à¸à¸à¸¥",
+DlgGenTitle : "à¸à¸³à¹à¸à¸£à¸´à¹à¸à¸à¸³",
+DlgGenContType : "à¸à¸à¸´à¸à¸à¸à¸à¸à¸³à¹à¸à¸£à¸´à¹à¸à¸à¸³",
+DlgGenLinkCharset : "ลิà¸à¸à¹à¹à¸à¸·à¹à¸à¸¡à¹à¸¢à¸à¹à¸à¸¢à¸±à¸à¸à¸¸à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£",
+DlgGenStyle : "ลัà¸à¸©à¸à¸°à¸à¸²à¸£à¹à¸ªà¸à¸à¸à¸¥",
+
+// Image Dialog
+DlgImgTitle : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ รูà¸à¸ าà¸",
+DlgImgInfoTab : "à¸à¹à¸à¸¡à¸¹à¸¥à¸à¸à¸à¸£à¸¹à¸à¸ าà¸",
+DlgImgBtnUpload : "à¸à¸±à¸à¹à¸«à¸¥à¸à¹à¸à¸¥à¹à¹à¸à¹à¸à¹à¸à¹à¸§à¹à¸à¸µà¹à¹à¸à¸£à¸·à¹à¸à¸à¹à¸¡à¹à¸à¹à¸²à¸¢ (à¹à¸à¸´à¸£à¹à¸à¹à¸§à¸à¸£à¹)",
+DlgImgURL : "à¸à¸µà¹à¸à¸¢à¸¹à¹à¸à¹à¸²à¸à¸à¸´à¸ URL",
+DlgImgUpload : "à¸à¸±à¸à¹à¸«à¸¥à¸à¹à¸à¸¥à¹",
+DlgImgAlt : "à¸à¸³à¸à¸£à¸°à¸à¸à¸à¸£à¸¹à¸à¸ าà¸",
+DlgImgWidth : "à¸à¸§à¸²à¸¡à¸à¸§à¹à¸²à¸",
+DlgImgHeight : "à¸à¸§à¸²à¸¡à¸ªà¸¹à¸",
+DlgImgLockRatio : "à¸à¸³à¸«à¸à¸à¸à¸±à¸à¸£à¸²à¸ªà¹à¸§à¸ à¸à¸§à¹à¸²à¸-สูภà¹à¸à¸à¸à¸à¸à¸µà¹",
+DlgBtnResetSize : "à¸à¸³à¸«à¸à¸à¸£à¸¹à¸à¹à¸à¹à¸²à¸à¸à¸²à¸à¸à¸£à¸´à¸",
+DlgImgBorder : "à¸à¸à¸²à¸à¸à¸à¸à¸£à¸¹à¸",
+DlgImgHSpace : "ระยะà¹à¸à¸§à¸à¸à¸",
+DlgImgVSpace : "ระยะà¹à¸à¸§à¸à¸±à¹à¸",
+DlgImgAlign : "à¸à¸²à¸£à¸à¸±à¸à¸§à¸²à¸",
+DlgImgAlignLeft : "à¸à¸´à¸à¸à¹à¸²à¸¢",
+DlgImgAlignAbsBottom: "à¸à¸´à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸à¸ªà¸¸à¸",
+DlgImgAlignAbsMiddle: "à¸à¸¶à¹à¸à¸à¸¥à¸²à¸",
+DlgImgAlignBaseline : "à¸à¸´à¸à¸à¸£à¸£à¸à¸±à¸",
+DlgImgAlignBottom : "à¸à¸´à¸à¸à¹à¸²à¸à¸¥à¹à¸²à¸",
+DlgImgAlignMiddle : "à¸à¸¶à¹à¸à¸à¸¥à¸²à¸à¹à¸à¸§à¸à¸±à¹à¸",
+DlgImgAlignRight : "à¸à¸´à¸à¸à¸§à¸²",
+DlgImgAlignTextTop : "à¹à¸à¹à¸à¸±à¸§à¸à¸±à¸à¸©à¸£",
+DlgImgAlignTop : "à¸à¸à¸ªà¸¸à¸",
+DlgImgPreview : "หà¸à¹à¸²à¹à¸à¸à¸ªà¸²à¸£à¸à¸±à¸§à¸à¸¢à¹à¸²à¸",
+DlgImgAlertUrl : "à¸à¸£à¸¸à¸à¸²à¸£à¸°à¸à¸¸à¸à¸µà¹à¸à¸¢à¸¹à¹à¸à¹à¸²à¸à¸à¸´à¸à¸à¸à¸à¹à¸¥à¸à¹à¸à¸à¸à¹à¸à¸¥à¹à¸£à¸¹à¸à¸ าภ(URL)",
+DlgImgLinkTab : "Link", //MISSING
+
+// Flash Dialog
+DlgFlashTitle : "Flash Properties", //MISSING
+DlgFlashChkPlay : "Auto Play", //MISSING
+DlgFlashChkLoop : "Loop", //MISSING
+DlgFlashChkMenu : "Enable Flash Menu", //MISSING
+DlgFlashScale : "Scale", //MISSING
+DlgFlashScaleAll : "Show all", //MISSING
+DlgFlashScaleNoBorder : "No Border", //MISSING
+DlgFlashScaleFit : "Exact Fit", //MISSING
+
+// Link Dialog
+DlgLnkWindowTitle : "ลิà¸à¸à¹à¹à¸à¸·à¹à¸à¸¡à¹à¸¢à¸à¹à¸§à¹à¸ à¸à¸µà¹à¸¡à¸¥à¹ รูà¸à¸ าภหรืà¸à¹à¸à¸¥à¹à¸à¸·à¹à¸à¹",
+DlgLnkInfoTab : "รายละà¹à¸à¸µà¸¢à¸",
+DlgLnkTargetTab : "à¸à¸²à¸£à¹à¸à¸´à¸à¸«à¸à¹à¸²à¸à¸",
+
+DlgLnkType : "à¸à¸£à¸°à¹à¸ à¸à¸à¸à¸à¸¥à¸´à¸à¸à¹",
+DlgLnkTypeURL : "à¸à¸µà¹à¸à¸¢à¸¹à¹à¸à¹à¸²à¸à¸à¸´à¸à¸à¸à¸à¹à¸¥à¸à¹ (URL)",
+DlgLnkTypeAnchor : "à¸à¸¸à¸à¹à¸à¸·à¹à¸à¸¡à¹à¸¢à¸ (Anchor)",
+DlgLnkTypeEMail : "สà¹à¸à¸à¸µà¹à¸¡à¸¥à¹ (E-Mail)",
+DlgLnkProto : "à¹à¸à¸£à¹à¸à¸à¸à¸¥",
+DlgLnkProtoOther : "<à¸à¸·à¹à¸à¹>",
+DlgLnkURL : "à¸à¸µà¹à¸à¸¢à¸¹à¹à¸à¹à¸²à¸à¸à¸´à¸à¸à¸à¸à¹à¸¥à¸à¹ (URL)",
+DlgLnkAnchorSel : "ระà¸à¸¸à¸à¹à¸à¸¡à¸¹à¸¥à¸à¸à¸à¸à¸¸à¸à¹à¸à¸·à¹à¸à¸¡à¹à¸¢à¸ (Anchor)",
+DlgLnkAnchorByName : "à¸à¸·à¹à¸",
+DlgLnkAnchorById : "à¹à¸à¸à¸µ",
+DlgLnkNoAnchors : "<ยัà¸à¹à¸¡à¹à¸¡à¸µà¸à¸¸à¸à¹à¸à¸·à¹à¸à¸¡à¹à¸¢à¸à¸ ายà¹à¸à¸«à¸à¹à¸²à¹à¸à¸à¸ªà¸²à¸£à¸à¸µà¹>",
+DlgLnkEMail : "à¸à¸µà¹à¸¡à¸¥à¹ (E-Mail)",
+DlgLnkEMailSubject : "หัวà¹à¸£à¸·à¹à¸à¸",
+DlgLnkEMailBody : "à¸à¹à¸à¸à¸§à¸²à¸¡",
+DlgLnkUpload : "à¸à¸±à¸à¹à¸«à¸¥à¸à¹à¸à¸¥à¹",
+DlgLnkBtnUpload : "à¸à¸±à¸à¸à¸¶à¸à¹à¸à¸¥à¹à¹à¸§à¹à¸à¸à¹à¸à¸´à¸£à¹à¸à¹à¸§à¸à¸£à¹",
+
+DlgLnkTarget : "à¸à¸²à¸£à¹à¸à¸´à¸à¸«à¸à¹à¸²à¸¥à¸´à¸à¸à¹",
+DlgLnkTargetFrame : "<à¹à¸à¸´à¸à¹à¸à¹à¸à¸£à¸¡>",
+DlgLnkTargetPopup : "<à¹à¸à¸´à¸à¸«à¸à¹à¸²à¸à¸à¹à¸¥à¹à¸ (Pop-up)>",
+DlgLnkTargetBlank : "à¹à¸à¸´à¸à¸«à¸à¹à¸²à¸à¸à¹à¸«à¸¡à¹ (_blank)",
+DlgLnkTargetParent : "à¹à¸à¸´à¸à¹à¸à¸«à¸à¹à¸²à¸«à¸¥à¸±à¸ (_parent)",
+DlgLnkTargetSelf : "à¹à¸à¸´à¸à¹à¸à¸«à¸à¹à¸²à¸à¸±à¸à¸à¸¸à¸à¸±à¸ (_self)",
+DlgLnkTargetTop : "à¹à¸à¸´à¸à¹à¸à¸«à¸à¹à¸²à¸à¸à¸ªà¸¸à¸ (_top)",
+DlgLnkTargetFrameName : "à¸à¸·à¹à¸à¸à¸²à¸£à¹à¹à¸à¹à¸à¹à¸à¸£à¸¡",
+DlgLnkPopWinName : "ระà¸à¸¸à¸à¸·à¹à¸à¸«à¸à¹à¸²à¸à¸à¹à¸¥à¹à¸ (Pop-up)",
+DlgLnkPopWinFeat : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸à¸«à¸à¹à¸²à¸à¸à¹à¸¥à¹à¸ (Pop-up)",
+DlgLnkPopResize : "à¸à¸£à¸±à¸à¸à¸à¸²à¸à¸«à¸à¹à¸²à¸à¸",
+DlgLnkPopLocation : "à¹à¸ªà¸à¸à¸à¸µà¹à¸à¸¢à¸¹à¹à¸à¸à¸à¹à¸à¸¥à¹",
+DlgLnkPopMenu : "à¹à¸ªà¸à¸à¹à¸à¸à¹à¸¡à¸à¸¹",
+DlgLnkPopScroll : "à¹à¸ªà¸à¸à¹à¸à¸à¹à¸¥à¸·à¹à¸à¸",
+DlgLnkPopStatus : "à¹à¸ªà¸à¸à¹à¸à¸à¸ªà¸à¸²à¸à¸°",
+DlgLnkPopToolbar : "à¹à¸ªà¸à¸à¹à¸à¸à¹à¸à¸£à¸·à¹à¸à¸à¸¡à¸·à¸",
+DlgLnkPopFullScrn : "à¹à¸ªà¸à¸à¹à¸à¹à¸¡à¸«à¸à¹à¸²à¸à¸ (IE5.5++ à¹à¸à¹à¸²à¸à¸±à¹à¸)",
+DlgLnkPopDependent : "à¹à¸ªà¸à¸à¹à¸à¹à¸¡à¸«à¸à¹à¸²à¸à¸ (Netscape)",
+DlgLnkPopWidth : "à¸à¸§à¹à¸²à¸",
+DlgLnkPopHeight : "สูà¸",
+DlgLnkPopLeft : "à¸à¸´à¸à¸±à¸à¸à¹à¸²à¸¢ (Left Position)",
+DlgLnkPopTop : "à¸à¸´à¸à¸±à¸à¸à¸ (Top Position)",
+
+DlnLnkMsgNoUrl : "à¸à¸£à¸¸à¸à¸²à¸£à¸°à¸à¸¸à¸à¸µà¹à¸à¸¢à¸¹à¹à¸à¹à¸²à¸à¸à¸´à¸à¸à¸à¸à¹à¸¥à¸à¹ (URL)",
+DlnLnkMsgNoEMail : "à¸à¸£à¸¸à¸à¸²à¸£à¸°à¸à¸¸à¸à¸µà¹à¸¡à¸¥à¹ (E-mail)",
+DlnLnkMsgNoAnchor : "à¸à¸£à¸¸à¸à¸²à¸£à¸°à¸à¸¸à¸à¸¸à¸à¹à¸à¸·à¹à¸à¸¡à¹à¸¢à¸ (Anchor)",
+
+// Color Dialog
+DlgColorTitle : "à¹à¸¥à¸·à¸à¸à¸ªà¸µ",
+DlgColorBtnClear : "ลà¹à¸²à¸à¸à¹à¸²à¸£à¸«à¸±à¸ªà¸ªà¸µ",
+DlgColorHighlight : "à¸à¸±à¸§à¸à¸¢à¹à¸²à¸à¸ªà¸µ",
+DlgColorSelected : "สีà¸à¸µà¹à¹à¸¥à¸·à¸à¸",
+
+// Smiley Dialog
+DlgSmileyTitle : "à¹à¸à¸£à¸à¸ªà¸±à¸à¸±à¸à¸©à¸à¹à¸ªà¸·à¹à¸à¸à¸²à¸£à¸¡à¸à¹",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "à¹à¸à¸£à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸à¸´à¹à¸¨à¸©",
+
+// Table Dialog
+DlgTableTitle : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¸à¸²à¸£à¸²à¸",
+DlgTableRows : "à¹à¸à¸§",
+DlgTableColumns : "สà¸à¸¡à¸à¹",
+DlgTableBorder : "à¸à¸à¸²à¸à¹à¸ªà¹à¸à¸à¸à¸",
+DlgTableAlign : "à¸à¸²à¸£à¸à¸±à¸à¸à¸³à¹à¸«à¸à¹à¸",
+DlgTableAlignNotSet : "<à¹à¸¡à¹à¸£à¸°à¸à¸¸>",
+DlgTableAlignLeft : "à¸à¸´à¸à¸à¹à¸²à¸¢",
+DlgTableAlignCenter : "à¸à¸¶à¹à¸à¸à¸¥à¸²à¸",
+DlgTableAlignRight : "à¸à¸´à¸à¸à¸§à¸²",
+DlgTableWidth : "à¸à¸§à¹à¸²à¸",
+DlgTableWidthPx : "à¸à¸¸à¸à¸ªà¸µ",
+DlgTableWidthPc : "à¹à¸à¸à¸£à¹à¹à¸à¹à¸",
+DlgTableHeight : "สูà¸",
+DlgTableCellSpace : "ระยะà¹à¸à¸§à¸à¸à¸à¸",
+DlgTableCellPad : "ระยะà¹à¸à¸§à¸à¸±à¹à¸",
+DlgTableCaption : "หัวà¹à¸£à¸·à¹à¸à¸à¸à¸à¸à¸à¸²à¸£à¸²à¸",
+
+// Table Cell Dialog
+DlgCellTitle : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¸à¹à¸à¸",
+DlgCellWidth : "à¸à¸§à¹à¸²à¸",
+DlgCellWidthPx : "à¸à¸¸à¸à¸ªà¸µ",
+DlgCellWidthPc : "à¹à¸à¸à¸£à¹à¹à¸à¹à¸",
+DlgCellHeight : "สูà¸",
+DlgCellWordWrap : "à¸à¸±à¸à¸à¸£à¸£à¸à¸±à¸à¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´",
+DlgCellWordWrapNotSet : "<à¹à¸¡à¹à¸£à¸°à¸à¸¸>",
+DlgCellWordWrapYes : "à¹à¹à¸à¹",
+DlgCellWordWrapNo : "à¹à¸¡à¹",
+DlgCellHorAlign : "à¸à¸²à¸£à¸à¸±à¸à¸§à¸²à¸à¹à¸à¸§à¸à¸à¸",
+DlgCellHorAlignNotSet : "<à¹à¸¡à¹à¸£à¸°à¸à¸¸>",
+DlgCellHorAlignLeft : "à¸à¸´à¸à¸à¹à¸²à¸¢",
+DlgCellHorAlignCenter : "à¸à¸¶à¹à¸à¸à¸¥à¸²à¸",
+DlgCellHorAlignRight: "à¸à¸´à¸à¸à¸§à¸²",
+DlgCellVerAlign : "à¸à¸²à¸£à¸à¸±à¸à¸§à¸²à¸à¹à¸à¸§à¸à¸±à¹à¸",
+DlgCellVerAlignNotSet : "<à¹à¸¡à¹à¸£à¸°à¸à¸¸>",
+DlgCellVerAlignTop : "à¸à¸à¸ªà¸¸à¸",
+DlgCellVerAlignMiddle : "à¸à¸¶à¹à¸à¸à¸¥à¸²à¸",
+DlgCellVerAlignBottom : "ลà¹à¸²à¸à¸ªà¸¸à¸",
+DlgCellVerAlignBaseline : "à¸à¸´à¸à¸à¸£à¸£à¸à¸±à¸",
+DlgCellRowSpan : "à¸à¸³à¸à¸§à¸à¹à¸à¸§à¸à¸µà¹à¸à¸£à¹à¸à¸¡à¸à¸±à¸",
+DlgCellCollSpan : "à¸à¸³à¸à¸§à¸à¸ªà¸à¸¡à¸à¹à¸à¸µà¹à¸à¸£à¹à¸à¸¡à¸à¸±à¸",
+DlgCellBackColor : "สีà¸à¸·à¹à¸à¸«à¸¥à¸±à¸",
+DlgCellBorderColor : "สีà¹à¸ªà¹à¸à¸à¸à¸",
+DlgCellBtnSelect : "à¹à¸¥à¸·à¸à¸..",
+
+// Find Dialog
+DlgFindTitle : "à¸à¹à¸à¸«à¸²",
+DlgFindFindBtn : "à¸à¹à¸à¸«à¸²",
+DlgFindNotFoundMsg : "à¹à¸¡à¹à¸à¸à¸à¸³à¸à¸µà¹à¸à¹à¸à¸«à¸².",
+
+// Replace Dialog
+DlgReplaceTitle : "à¸à¹à¸à¸«à¸²à¹à¸¥à¸°à¹à¸à¸à¸à¸µà¹",
+DlgReplaceFindLbl : "à¸à¹à¸à¸«à¸²à¸à¸³à¸§à¹à¸²:",
+DlgReplaceReplaceLbl : "à¹à¸à¸à¸à¸µà¹à¸à¹à¸§à¸¢:",
+DlgReplaceCaseChk : "à¸à¸±à¸§à¹à¸«à¸à¹-à¹à¸¥à¹à¸ à¸à¹à¸à¸à¸à¸£à¸à¸à¸±à¸",
+DlgReplaceReplaceBtn : "à¹à¸à¸à¸à¸µà¹",
+DlgReplaceReplAllBtn : "à¹à¸à¸à¸à¸µà¹à¸à¸±à¹à¸à¸«à¸¡à¸à¸à¸µà¹à¸à¸",
+DlgReplaceWordChk : "à¸à¹à¸à¸à¸à¸£à¸à¸à¸±à¸à¸à¸¸à¸à¸à¸³",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸§à¸²à¸à¸à¹à¸à¸à¸§à¸²à¸¡à¸à¸µà¹à¸ªà¸³à¹à¸à¸²à¸¡à¸²à¹à¸à¹à¹à¸à¸·à¹à¸à¸à¸à¸²à¸à¸à¸²à¸£à¸à¸³à¸«à¸à¸à¸à¹à¸²à¸£à¸°à¸à¸±à¸à¸à¸§à¸²à¸¡à¸à¸¥à¸à¸à¸ ัย. à¸à¸£à¸¸à¸à¸²à¹à¸à¹à¸à¸¸à¹à¸¡à¸¥à¸±à¸à¹à¸à¸·à¹à¸à¸§à¸²à¸à¸à¹à¸à¸à¸§à¸²à¸¡à¹à¸à¸ (à¸à¸à¸à¸¸à¹à¸¡ Ctrl à¹à¸¥à¸°à¸à¸±à¸§ V à¸à¸£à¹à¸à¸¡à¸à¸±à¸).",
+PasteErrorCut : "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸à¸±à¸à¸à¹à¸à¸à¸§à¸²à¸¡à¸à¸µà¹à¹à¸¥à¸·à¸à¸à¹à¸§à¹à¹à¸à¹à¹à¸à¸·à¹à¸à¸à¸à¸²à¸à¸à¸²à¸£à¸à¸³à¸«à¸à¸à¸à¹à¸²à¸£à¸°à¸à¸±à¸à¸à¸§à¸²à¸¡à¸à¸¥à¸à¸à¸ ัย. à¸à¸£à¸¸à¸à¸²à¹à¸à¹à¸à¸¸à¹à¸¡à¸¥à¸±à¸à¹à¸à¸·à¹à¸à¸§à¸²à¸à¸à¹à¸à¸à¸§à¸²à¸¡à¹à¸à¸ (à¸à¸à¸à¸¸à¹à¸¡ Ctrl à¹à¸¥à¸°à¸à¸±à¸§ X à¸à¸£à¹à¸à¸¡à¸à¸±à¸).",
+PasteErrorCopy : "à¹à¸¡à¹à¸ªà¸²à¸¡à¸²à¸£à¸à¸ªà¸³à¹à¸à¸²à¸à¹à¸à¸à¸§à¸²à¸¡à¸à¸µà¹à¹à¸¥à¸·à¸à¸à¹à¸§à¹à¹à¸à¹à¹à¸à¸·à¹à¸à¸à¸à¸²à¸à¸à¸²à¸£à¸à¸³à¸«à¸à¸à¸à¹à¸²à¸£à¸°à¸à¸±à¸à¸à¸§à¸²à¸¡à¸à¸¥à¸à¸à¸ ัย. à¸à¸£à¸¸à¸à¸²à¹à¸à¹à¸à¸¸à¹à¸¡à¸¥à¸±à¸à¹à¸à¸·à¹à¸à¸§à¸²à¸à¸à¹à¸à¸à¸§à¸²à¸¡à¹à¸à¸ (à¸à¸à¸à¸¸à¹à¸¡ Ctrl à¹à¸¥à¸°à¸à¸±à¸§ C à¸à¸£à¹à¸à¸¡à¸à¸±à¸).",
+
+PasteAsText : "วาà¸à¹à¸à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸à¸£à¸£à¸¡à¸à¸²",
+PasteFromWord : "วาà¸à¹à¸à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸à¸²à¸à¹à¸à¸£à¹à¸à¸£à¸¡à¹à¸§à¸´à¸£à¹à¸",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
+DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
+DlgPasteCleanBox : "Clean Up Box", //MISSING
+
+
+// Color Picker
+ColorAutomatic : "สีà¸à¸±à¸à¹à¸à¸¡à¸±à¸à¸´",
+ColorMoreColors : "à¹à¸¥à¸·à¸à¸à¸ªà¸µà¸à¸·à¹à¸à¹...",
+
+// Document Properties
+DocProps : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸à¹à¸à¸à¸ªà¸²à¸£",
+
+// Anchor Dialog
+DlgAnchorTitle : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ Anchor",
+DlgAnchorName : "à¸à¸·à¹à¸ Anchor",
+DlgAnchorErrorName : "à¸à¸£à¸¸à¸à¸²à¸£à¸°à¸à¸¸à¸à¸·à¹à¸à¸à¸à¸ Anchor",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "à¹à¸¡à¹à¸à¸à¹à¸à¸à¸´à¸à¸à¸±à¸à¸à¸²à¸£à¸µ",
+DlgSpellChangeTo : "à¹à¸à¹à¹à¸à¹à¸à¹à¸",
+DlgSpellBtnIgnore : "ยà¸à¹à¸§à¹à¸",
+DlgSpellBtnIgnoreAll : "ยà¸à¹à¸§à¹à¸à¸à¸±à¹à¸à¸«à¸¡à¸",
+DlgSpellBtnReplace : "à¹à¸à¸à¸à¸µà¹",
+DlgSpellBtnReplaceAll : "à¹à¸à¸à¸à¸µà¹à¸à¸±à¹à¸à¸«à¸¡à¸",
+DlgSpellBtnUndo : "ยà¸à¹à¸¥à¸´à¸",
+DlgSpellNoSuggestions : "- à¹à¸¡à¹à¸¡à¸µà¸à¸³à¹à¸à¸°à¸à¸³à¹à¸à¹ -",
+DlgSpellProgress : "à¸à¸³à¸¥à¸±à¸à¸à¸£à¸§à¸à¸ªà¸à¸à¸à¸³à¸ªà¸°à¸à¸...",
+DlgSpellNoMispell : "à¸à¸£à¸§à¸à¸ªà¸à¸à¸à¸³à¸ªà¸°à¸à¸à¹à¸ªà¸£à¹à¸à¸ªà¸´à¹à¸: à¹à¸¡à¹à¸à¸à¸à¸³à¸ªà¸°à¸à¸à¸à¸´à¸",
+DlgSpellNoChanges : "à¸à¸£à¸§à¸à¸ªà¸à¸à¸à¸³à¸ªà¸°à¸à¸à¹à¸ªà¸£à¹à¸à¸ªà¸´à¹à¸: à¹à¸¡à¹à¸¡à¸µà¸à¸²à¸£à¹à¸à¹à¸à¸³à¹à¸à¹",
+DlgSpellOneChange : "à¸à¸£à¸§à¸à¸ªà¸à¸à¸à¸³à¸ªà¸°à¸à¸à¹à¸ªà¸£à¹à¸à¸ªà¸´à¹à¸: à¹à¸à¹à¹à¸1à¸à¸³",
+DlgSpellManyChanges : "à¸à¸£à¸§à¸à¸ªà¸à¸à¸à¸³à¸ªà¸°à¸à¸à¹à¸ªà¸£à¹à¸à¸ªà¸´à¹à¸:: à¹à¸à¹à¹à¸ %1 à¸à¸³",
+
+IeSpellDownload : "à¹à¸¡à¹à¹à¸à¹à¸à¸´à¸à¸à¸±à¹à¸à¸£à¸°à¸à¸à¸à¸£à¸§à¸à¸ªà¸à¸à¸à¸³à¸ªà¸°à¸à¸. à¸à¹à¸à¸à¸à¸²à¸£à¸à¸´à¸à¸à¸±à¹à¸à¹à¸«à¸¡à¸à¸£à¸±à¸?",
+
+// Button Dialog
+DlgButtonText : "à¸à¹à¸à¸à¸§à¸²à¸¡ (à¸à¹à¸²à¸à¸±à¸§à¹à¸à¸£)",
+DlgButtonType : "à¸à¹à¸à¸à¸§à¸²à¸¡",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "à¸à¸·à¹à¸",
+DlgCheckboxValue : "à¸à¹à¸²à¸à¸±à¸§à¹à¸à¸£",
+DlgCheckboxSelected : "à¹à¸¥à¸·à¸à¸à¹à¸à¹à¸à¸à¹à¸²à¹à¸£à¸´à¹à¸¡à¸à¹à¸",
+
+// Form Dialog
+DlgFormName : "à¸à¸·à¹à¸",
+DlgFormAction : "à¹à¸à¸à¸à¸±à¹à¸",
+DlgFormMethod : "à¹à¸¡à¸à¸à¸",
+
+// Select Field Dialog
+DlgSelectName : "à¸à¸·à¹à¸",
+DlgSelectValue : "à¸à¹à¸²à¸à¸±à¸§à¹à¸à¸£",
+DlgSelectSize : "à¸à¸à¸²à¸",
+DlgSelectLines : "à¸à¸£à¸£à¸à¸±à¸",
+DlgSelectChkMulti : "à¹à¸¥à¸·à¸à¸à¸«à¸¥à¸²à¸¢à¸à¹à¸²à¹à¸à¹",
+DlgSelectOpAvail : "รายà¸à¸²à¸£à¸à¸±à¸§à¹à¸¥à¸·à¸à¸",
+DlgSelectOpText : "à¸à¹à¸à¸à¸§à¸²à¸¡",
+DlgSelectOpValue : "à¸à¹à¸²à¸à¸±à¸§à¹à¸à¸£",
+DlgSelectBtnAdd : "à¹à¸à¸´à¹à¸¡",
+DlgSelectBtnModify : "à¹à¸à¹à¹à¸",
+DlgSelectBtnUp : "à¸à¸",
+DlgSelectBtnDown : "ลà¹à¸²à¸",
+DlgSelectBtnSetValue : "à¹à¸¥à¸·à¸à¸à¹à¸à¹à¸à¸à¹à¸²à¹à¸£à¸´à¹à¸¡à¸à¹à¸",
+DlgSelectBtnDelete : "ลà¸",
+
+// Textarea Dialog
+DlgTextareaName : "à¸à¸·à¹à¸",
+DlgTextareaCols : "สà¸à¸¡à¸ à¹",
+DlgTextareaRows : "à¹à¸à¸§",
+
+// Text Field Dialog
+DlgTextName : "à¸à¸·à¹à¸",
+DlgTextValue : "à¸à¹à¸²à¸à¸±à¸§à¹à¸à¸£",
+DlgTextCharWidth : "à¸à¸§à¸²à¸¡à¸à¸§à¹à¸²à¸",
+DlgTextMaxChars : "à¸à¸³à¸à¸§à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸ªà¸¹à¸à¸ªà¸¸à¸",
+DlgTextType : "à¸à¸à¸´à¸",
+DlgTextTypeText : "à¸à¹à¸à¸à¸§à¸²à¸¡",
+DlgTextTypePass : "รหัสà¸à¹à¸²à¸",
+
+// Hidden Field Dialog
+DlgHiddenName : "à¸à¸·à¹à¸",
+DlgHiddenValue : "à¸à¹à¸²à¸à¸±à¸§à¹à¸à¸£",
+
+// Bulleted List Dialog
+BulletedListProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¸à¸¹à¸¥à¹à¸¥à¹à¸à¸¥à¸´à¸ªà¸à¹",
+NumberedListProp : "à¸à¸¸à¸à¸ªà¸¡à¸à¸±à¸à¸´à¸à¸à¸ à¸à¸±à¸¡à¹à¸à¸à¸£à¹à¸¥à¸´à¸ªà¸à¹",
+DlgLstType : "à¸à¸à¸´à¸",
+DlgLstTypeCircle : "รูà¸à¸§à¸à¸à¸¥à¸¡",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "รูà¸à¸ªà¸µà¹à¹à¸«à¸¥à¸µà¹à¸¢à¸¡",
+DlgLstTypeNumbers : "หมายà¹à¸¥à¸ (1, 2, 3)",
+DlgLstTypeLCase : "à¸à¸±à¸§à¸à¸´à¸¡à¸à¹à¹à¸¥à¹à¸ (a, b, c)",
+DlgLstTypeUCase : "à¸à¸±à¸§à¸à¸´à¸¡à¸à¹à¹à¸«à¸à¹ (A, B, C)",
+DlgLstTypeSRoman : "à¹à¸¥à¸à¹à¸£à¸¡à¸±à¸à¸à¸´à¸¡à¸à¹à¹à¸¥à¹à¸ (i, ii, iii)",
+DlgLstTypeLRoman : "à¹à¸¥à¸à¹à¸£à¸¡à¸±à¸à¸à¸´à¸¡à¸à¹à¹à¸«à¸à¹ (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "ลัà¸à¸©à¸à¸°à¸à¸±à¹à¸§à¹à¸à¸à¸à¸à¹à¸à¸à¸ªà¸²à¸£",
+DlgDocBackTab : "à¸à¸·à¹à¸à¸«à¸¥à¸±à¸",
+DlgDocColorsTab : "สีà¹à¸¥à¸°à¸£à¸°à¸¢à¸°à¸à¸à¸",
+DlgDocMetaTab : "à¸à¹à¸à¸¡à¸¹à¸¥à¸ªà¸³à¸«à¸£à¸±à¸à¹à¸ªà¸´à¸£à¹à¸à¹à¸à¸à¸à¸´à¹à¸",
+
+DlgDocPageTitle : "à¸à¸·à¹à¸à¹à¸à¹à¸à¸´à¹à¸¥",
+DlgDocLangDir : "à¸à¸²à¸£à¸à¹à¸²à¸à¸ าษา",
+DlgDocLangDirLTR : "à¸à¸²à¸à¸à¹à¸²à¸¢à¹à¸à¸à¸§à¸² (LTR)",
+DlgDocLangDirRTL : "à¸à¸²à¸à¸à¸§à¸²à¹à¸à¸à¹à¸²à¸¢ (RTL)",
+DlgDocLangCode : "รหัสภาษา",
+DlgDocCharSet : "à¸à¸¸à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£",
+DlgDocCharSetOther : "à¸à¸¸à¸à¸à¸±à¸§à¸à¸±à¸à¸©à¸£à¸à¸·à¹à¸à¹",
+
+DlgDocDocType : "à¸à¸£à¸°à¹à¸ à¸à¸à¸à¸à¹à¸à¸à¸ªà¸²à¸£",
+DlgDocDocTypeOther : "à¸à¸£à¸°à¹à¸ à¸à¹à¸à¸à¸ªà¸²à¸£à¸à¸·à¹à¸à¹",
+DlgDocIncXHTML : "รวมà¹à¸à¸² XHTML Declarations à¹à¸§à¹à¸à¹à¸§à¸¢",
+DlgDocBgColor : "สีà¸à¸·à¹à¸à¸«à¸¥à¸±à¸",
+DlgDocBgImage : "à¸à¸µà¹à¸à¸¢à¸¹à¹à¸à¹à¸²à¸à¸à¸´à¸à¸à¸à¸à¹à¸¥à¸à¹à¸à¸à¸à¸£à¸¹à¸à¸à¸·à¹à¸à¸«à¸¥à¸±à¸ (Image URL)",
+DlgDocBgNoScroll : "à¸à¸·à¹à¸à¸«à¸¥à¸±à¸à¹à¸à¸à¹à¸¡à¹à¸¡à¸µà¹à¸à¸à¹à¸¥à¸·à¹à¸à¸",
+DlgDocCText : "à¸à¹à¸à¸à¸§à¸²à¸¡",
+DlgDocCLink : "ลิà¸à¸à¹",
+DlgDocCVisited : "ลิà¸à¸à¹à¸à¸µà¹à¹à¸à¸¢à¸à¸¥à¸´à¹à¸à¹à¸¥à¹à¸§ Visited Link",
+DlgDocCActive : "ลิà¸à¸à¹à¸à¸µà¹à¸à¸³à¸¥à¸±à¸à¸à¸¥à¸´à¹à¸ Active Link",
+DlgDocMargins : "ระยะà¸à¸à¸à¸à¸à¸à¸«à¸à¹à¸²à¹à¸à¸à¸ªà¸²à¸£",
+DlgDocMaTop : "à¸à¹à¸²à¸à¸à¸",
+DlgDocMaLeft : "à¸à¹à¸²à¸à¸à¹à¸²à¸¢",
+DlgDocMaRight : "à¸à¹à¸²à¸à¸à¸§à¸²",
+DlgDocMaBottom : "à¸à¹à¸²à¸à¸¥à¹à¸²à¸",
+DlgDocMeIndex : "à¸à¸³à¸ªà¸³à¸à¸±à¸à¸à¸à¸´à¸à¸²à¸¢à¹à¸à¸à¸ªà¸²à¸£ (à¸à¸±à¹à¸à¸à¸³à¸à¹à¸§à¸¢ à¸à¸à¸¡à¸¡à¹à¸²)",
+DlgDocMeDescr : "à¸à¸£à¸°à¹à¸¢à¸à¸à¸à¸´à¸à¸²à¸¢à¹à¸à¸µà¹à¸¢à¸§à¸à¸±à¸à¹à¸à¸à¸ªà¸²à¸£",
+DlgDocMeAuthor : "à¸à¸¹à¹à¸ªà¸£à¹à¸²à¸à¹à¸à¸à¸ªà¸²à¸£",
+DlgDocMeCopy : "สà¸à¸§à¸à¸¥à¸´à¸à¸ªà¸´à¸à¸à¸´à¹",
+DlgDocPreview : "à¸à¸±à¸§à¸à¸¢à¹à¸²à¸à¸«à¸à¹à¸²à¹à¸à¸à¸ªà¸²à¸£",
+
+// Templates Dialog
+Templates : "Templates", //MISSING
+DlgTemplatesTitle : "Content Templates", //MISSING
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):", //MISSING
+DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
+DlgTemplatesNoTpl : "(No templates defined)", //MISSING
+
+// About Dialog
+DlgAboutAboutTab : "à¹à¸à¸µà¹à¸¢à¸§à¸à¸±à¸à¹à¸à¸£à¹à¸à¸£à¸¡",
+DlgAboutBrowserInfoTab : "à¹à¸à¸£à¹à¸à¸£à¸¡à¸à¹à¸à¸à¹à¸§à¹à¸à¸à¸µà¹à¸à¹à¸²à¸à¹à¸à¹",
+DlgAboutVersion : "รุà¹à¸",
+DlgAboutLicense : "สà¸à¸§à¸à¸¥à¸´à¸à¸ªà¸´à¸à¸à¸´à¹ à¹à¸à¸¢à¸à¹à¸¢à¸à¸²à¸¢à¸¥à¸´à¸à¸ªà¸´à¸à¸à¸´à¹à¹à¸à¸ GNU Lesser General Public License",
+DlgAboutInfo : "à¸à¹à¸à¸¡à¸¹à¸¥à¹à¸à¸´à¹à¸¡à¹à¸à¸´à¸¡à¸ าษาà¹à¸à¸¢à¸à¸´à¸à¸à¹à¸</BR>à¸à¸²à¸¢ à¸à¸£à¸´à¸à¸à¸£à¹ à¸à¸²à¸©à¸²à¸à¸´à¸ (à¸à¸¹à¹à¸)</BR><A HREF='mailto:arsakit at gmail.com'>arsakit at gmail.com</A> tel. (+66) 06-9241924</BR>หรืà¸à¸à¸²à¸§à¸à¹à¹à¸«à¸¥à¸à¸£à¸¸à¹à¸à¸ าษาà¹à¸à¸¢à¹à¸à¹à¸à¸µà¹à¹à¸§à¹à¸à¹à¸à¸à¹</BR><A HREF='http://www.thaimall4u.com'>www.Thaimall4u.com</A></BR>à¸à¹à¸à¸¡à¸¹à¸¥à¹à¸à¸´à¹à¸¡à¹à¸à¸´à¸¡à¸ าษาà¸à¸±à¸à¸à¸¤à¸© à¸à¸£à¸¸à¸à¸²à¹à¸à¸à¸µà¹à¸à¸µà¹"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/tr.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/tr.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/tr.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: tr.js
+ * Turkish language file.
+ *
+ * File Authors:
+ * Bogac Guven (bogacmx at yahoo.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Araç Ãubugunu Kapat",
+ToolbarExpand : "Araç Ãubugunu Aç",
+
+// Toolbar Items and Context Menu
+Save : "Kaydet",
+NewPage : "Yeni Sayfa",
+Preview : "Ãn Izleme",
+Cut : "Kes",
+Copy : "Kopyala",
+Paste : "Yapistir",
+PasteText : "Düzyazi Olarak Yapistir",
+PasteWord : "Word'den Yapistir",
+Print : "Yazdir",
+SelectAll : "Tümünü Seç",
+RemoveFormat : "Biçimi Kaldir",
+InsertLinkLbl : "Köprü",
+InsertLink : "Köprü Ekle/Düzenle",
+RemoveLink : "Köprü Kaldir",
+Anchor : "Ãapa Ekle/Düzenle",
+InsertImageLbl : "Resim",
+InsertImage : "Resim Ekle/Düzenle",
+InsertFlashLbl : "Flash",
+InsertFlash : "Flash Ekle/Düzenle",
+InsertTableLbl : "Tablo",
+InsertTable : "Tablo Ekle/Düzenle",
+InsertLineLbl : "Satir",
+InsertLine : "Yatay Satir Ekle",
+InsertSpecialCharLbl: "Ãzel Karakter",
+InsertSpecialChar : "Ãzel Karakter Ekle",
+InsertSmileyLbl : "Ifade",
+InsertSmiley : "Ifade Ekle",
+About : "FCKeditor Hakkinda",
+Bold : "Kalin",
+Italic : "Italik",
+Underline : "Alti Ãizgili",
+StrikeThrough : "Ãstü Ãizgili",
+Subscript : "Alt Simge",
+Superscript : "Ãst Simge",
+LeftJustify : "Sola Dayali",
+CenterJustify : "Ortalanmis",
+RightJustify : "Saga Dayali",
+BlockJustify : "Iki Kenara Yaslanmis",
+DecreaseIndent : "Sekme Azalt",
+IncreaseIndent : "Sekme Arttir",
+Undo : "Geri Al",
+Redo : "Tekrarla",
+NumberedListLbl : "Numarali Liste",
+NumberedList : "Numarali Liste Ekle/Kaldir",
+BulletedListLbl : "Simgeli Liste",
+BulletedList : "Simgeli Liste Ekle/Kaldir",
+ShowTableBorders : "Tablo Kenarlarini Göster",
+ShowDetails : "Detaylari Göster",
+Style : "Stil",
+FontFormat : "Biçim",
+Font : "Yazi Tipi",
+FontSize : "Boyut",
+TextColor : "Yazi Rengi",
+BGColor : "Arka Renk",
+Source : "Kaynak",
+Find : "Bul",
+Replace : "Degistir",
+SpellCheck : "Yazim Denetimi",
+UniversalKeyboard : "Evrensel Klavye",
+
+Form : "Form",
+Checkbox : "Onay Kutusu",
+RadioButton : "Seçenek Dügmesi",
+TextField : "Metin Girisi",
+Textarea : "Ãok Satirli Metin",
+HiddenField : "Gizli Veri",
+Button : "Dügme",
+SelectionField : "Seçim Mönüsü",
+ImageButton : "Resimli Dügme",
+
+// Context Menu
+EditLink : "Köprü Düzenle",
+InsertRow : "Satir Ekle",
+DeleteRows : "Satir Sil",
+InsertColumn : "Sütun Ekle",
+DeleteColumns : "Sütun Sil",
+InsertCell : "Hücre Ekle",
+DeleteCells : "Hücre Sil",
+MergeCells : "Hücreleri Birlestir",
+SplitCell : "Hücre Böl",
+CellProperties : "Hücre Ãzellikleri",
+TableProperties : "Tablo Ãzellikleri",
+ImageProperties : "Resim Ãzellikleri",
+FlashProperties : "Flash Ãzellikleri",
+
+AnchorProp : "Ãapa Ãzellikleri",
+ButtonProp : "Dügme Ãzellikleri",
+CheckboxProp : "Onay Kutusu Ãzellikleri",
+HiddenFieldProp : "Gizli Veri Ãzellikleri",
+RadioButtonProp : "Seçenek Dügmesi Ãzellikleri",
+ImageButtonProp : "Resimli Dügme Ãzellikleri",
+TextFieldProp : "Metin Girisi Ãzellikleri",
+SelectionFieldProp : "Seçim Mönüsü Ãzellikleri",
+TextareaProp : "Ãok Satirli Metin Ãzellikleri",
+FormProp : "Form Ãzellikleri",
+
+FontFormats : "Normal;Biçimli;Adres;Baslik 1;Baslik 2;Baslik 3;Baslik 4;Baslik 5;Baslik 6;Paragraf (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "XHTML isleniyor. Lütfen bekleyin...",
+Done : "Bitti",
+PasteWordConfirm : "Yapistirdiginiz yazi Word'den gelmise benziyor. Yapistirmadan önce silmek ister misiniz?",
+NotCompatiblePaste : "Bu komut Internet Explorer 5.5 ve ileriki sürümleri için mevcuttur. Temizlenmeden yapistirilmasini ister misiniz ?",
+UnknownToolbarItem : "Bilinmeyen araç çubugu ögesi \"%1\"",
+UnknownCommand : "Bilinmeyen komut \"%1\"",
+NotImplemented : "Komut uyarlanamadi",
+UnknownToolbarSet : "\"%1\" araç çubugu ögesi mevcut degil",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "Tamam",
+DlgBtnCancel : "Iptal",
+DlgBtnClose : "Kapat",
+DlgBtnBrowseServer : "Sunucuyu Gez",
+DlgAdvancedTag : "Gelismis",
+DlgOpOther : "<Diger>",
+DlgInfoTab : "Bilgi",
+DlgAlertUrl : "Lütfen URL girin",
+
+// General Dialogs Labels
+DlgGenNotSet : "<tanimlanmamis>",
+DlgGenId : "Kimlik",
+DlgGenLangDir : "Lisan Yönü",
+DlgGenLangDirLtr : "Soldan Saga (LTR)",
+DlgGenLangDirRtl : "Sagdan Sola (RTL)",
+DlgGenLangCode : "Lisan Kodlamasi",
+DlgGenAccessKey : "Erisim Tusu",
+DlgGenName : "Isim",
+DlgGenTabIndex : "Sekme Indeksi",
+DlgGenLongDescr : "Uzun Tanimli URL",
+DlgGenClass : "Stil Klaslari",
+DlgGenTitle : "Danisma Basligi",
+DlgGenContType : "Danisma Içerik Türü",
+DlgGenLinkCharset : "Bagli Kaynak Karakter Gurubu",
+DlgGenStyle : "Stil",
+
+// Image Dialog
+DlgImgTitle : "Resim Ãzellikleri",
+DlgImgInfoTab : "Resim Bilgisi",
+DlgImgBtnUpload : "Sunucuya Yolla",
+DlgImgURL : "URL",
+DlgImgUpload : "Karsiya Yükle",
+DlgImgAlt : "Alternatif Yazi",
+DlgImgWidth : "Genislik",
+DlgImgHeight : "Yükseklik",
+DlgImgLockRatio : "Orani Kilitle",
+DlgBtnResetSize : "Boyutu Basa Döndür",
+DlgImgBorder : "Kenar",
+DlgImgHSpace : "Yatay Bosluk",
+DlgImgVSpace : "Dikey Bosluk",
+DlgImgAlign : "Hizalama",
+DlgImgAlignLeft : "Sol",
+DlgImgAlignAbsBottom: "Tam Alti",
+DlgImgAlignAbsMiddle: "Tam Ortasi",
+DlgImgAlignBaseline : "Taban Ãizgisi",
+DlgImgAlignBottom : "Alt",
+DlgImgAlignMiddle : "Orta",
+DlgImgAlignRight : "Sag",
+DlgImgAlignTextTop : "Yazi Tepeye",
+DlgImgAlignTop : "Tepe",
+DlgImgPreview : "Ãn Izleme",
+DlgImgAlertUrl : "Lütfen resimin URL'sini yaziniz",
+DlgImgLinkTab : "Köprü",
+
+// Flash Dialog
+DlgFlashTitle : "Flash Ãzellikleri",
+DlgFlashChkPlay : "Otomatik Oynat",
+DlgFlashChkLoop : "Döngü",
+DlgFlashChkMenu : "Flash Mönüsünü Kullan",
+DlgFlashScale : "Boyutlandır",
+DlgFlashScaleAll : "Hepsini Göster",
+DlgFlashScaleNoBorder : "Kenar Yok",
+DlgFlashScaleFit : "Tam SıÄdır",
+
+// Link Dialog
+DlgLnkWindowTitle : "Köprü",
+DlgLnkInfoTab : "Köprü Bilgisi",
+DlgLnkTargetTab : "Hedef",
+
+DlgLnkType : "Köprü Türü",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Bu sayfada çapa",
+DlgLnkTypeEMail : "E-Posta",
+DlgLnkProto : "Protokol",
+DlgLnkProtoOther : "<diger>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Ãapa Seç",
+DlgLnkAnchorByName : "Ãapa Ismi ile",
+DlgLnkAnchorById : "Eleman Id ile",
+DlgLnkNoAnchors : "<Bu dokümanda hiç çapa yok>",
+DlgLnkEMail : "E-Posta Adresi",
+DlgLnkEMailSubject : "Mesaj Konusu",
+DlgLnkEMailBody : "Mesaj Vücudu",
+DlgLnkUpload : "Karsiya Yükle",
+DlgLnkBtnUpload : "Sunucuya Gönder",
+
+DlgLnkTarget : "Hedef",
+DlgLnkTargetFrame : "<çerçeve>",
+DlgLnkTargetPopup : "<yeni açilan pencere>",
+DlgLnkTargetBlank : "Yeni Pencere(_blank)",
+DlgLnkTargetParent : "Anne Pencere (_parent)",
+DlgLnkTargetSelf : "Kendi Penceresi (_self)",
+DlgLnkTargetTop : "En Ãst Pencere (_top)",
+DlgLnkTargetFrameName : "Hedef Ãerçeve Ismi",
+DlgLnkPopWinName : "Yeni Açilan Pencere Ismi",
+DlgLnkPopWinFeat : "Yeni Açilan Pencere Ãzellikleri",
+DlgLnkPopResize : "Boyutlandirilabilir",
+DlgLnkPopLocation : "Yer Ãubugu",
+DlgLnkPopMenu : "Mönü Ãubugu",
+DlgLnkPopScroll : "Kaydirma Ãubuklari",
+DlgLnkPopStatus : "Statü Ãubugu",
+DlgLnkPopToolbar : "Araç Ãubugu",
+DlgLnkPopFullScrn : "Tam Ekran (IE)",
+DlgLnkPopDependent : "Bagli-Dependent- (Netscape)",
+DlgLnkPopWidth : "Genislik",
+DlgLnkPopHeight : "Yükseklik",
+DlgLnkPopLeft : "Sola Göre Pozisyon",
+DlgLnkPopTop : "Yukariya Göre Pozisyon",
+
+DlnLnkMsgNoUrl : "Lütfen köprü URL'sini yazin",
+DlnLnkMsgNoEMail : "Lütfen E-posta adresini yazin",
+DlnLnkMsgNoAnchor : "Lütfen bir çapa seçin",
+
+// Color Dialog
+DlgColorTitle : "Renk Seç",
+DlgColorBtnClear : "Temizle",
+DlgColorHighlight : "Belirle",
+DlgColorSelected : "Seçilmis",
+
+// Smiley Dialog
+DlgSmileyTitle : "Ifade Ekle",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Ãzel Karakter Seç",
+
+// Table Dialog
+DlgTableTitle : "Tablo Ãzellikleri",
+DlgTableRows : "Satirlar",
+DlgTableColumns : "Sütunlar",
+DlgTableBorder : "Kenar Kalinligi",
+DlgTableAlign : "Hizalama",
+DlgTableAlignNotSet : "<Tanimlanmamis>",
+DlgTableAlignLeft : "Sol",
+DlgTableAlignCenter : "Merkez",
+DlgTableAlignRight : "Sag",
+DlgTableWidth : "Genislik",
+DlgTableWidthPx : "piksel",
+DlgTableWidthPc : "yüzde",
+DlgTableHeight : "Yükseklik",
+DlgTableCellSpace : "Izgara kalinligi",
+DlgTableCellPad : "Izgara yazi arasi",
+DlgTableCaption : "Baslik",
+
+// Table Cell Dialog
+DlgCellTitle : "Hücre Ãzellikleri",
+DlgCellWidth : "Genislik",
+DlgCellWidthPx : "piksel",
+DlgCellWidthPc : "yüzde",
+DlgCellHeight : "Yükseklik",
+DlgCellWordWrap : "Sözcük Kaydir",
+DlgCellWordWrapNotSet : "<Tanimlanmamis>",
+DlgCellWordWrapYes : "Evet",
+DlgCellWordWrapNo : "Hayir",
+DlgCellHorAlign : "Yatay Hizalama",
+DlgCellHorAlignNotSet : "<Tanimlanmamis>",
+DlgCellHorAlignLeft : "Sol",
+DlgCellHorAlignCenter : "Merkez",
+DlgCellHorAlignRight: "Sag",
+DlgCellVerAlign : "Dikey Hizalama",
+DlgCellVerAlignNotSet : "<Tanimlanmamis>",
+DlgCellVerAlignTop : "Tepe",
+DlgCellVerAlignMiddle : "Orta",
+DlgCellVerAlignBottom : "Alt",
+DlgCellVerAlignBaseline : "Taban Ãizgisi",
+DlgCellRowSpan : "Satir Kapla",
+DlgCellCollSpan : "Sütun Kapla",
+DlgCellBackColor : "Arka Plan Rengi",
+DlgCellBorderColor : "Kenar Rengi",
+DlgCellBtnSelect : "Seç...",
+
+// Find Dialog
+DlgFindTitle : "Bul",
+DlgFindFindBtn : "Bul",
+DlgFindNotFoundMsg : "Belirtilen yazi bulunamadi.",
+
+// Replace Dialog
+DlgReplaceTitle : "Degistir",
+DlgReplaceFindLbl : "Aranan:",
+DlgReplaceReplaceLbl : "Bunla degistir:",
+DlgReplaceCaseChk : "Büyük/küçük harf duyarli",
+DlgReplaceReplaceBtn : "Degistir",
+DlgReplaceReplAllBtn : "Tümünü Degistir",
+DlgReplaceWordChk : "Kelimenin tamami uysun",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "Gezgin yaziliminizin güvenlik ayarlari editörün otomatik yapistirma islemine izin vermiyor. Islem için (Ctrl+V) tuslarini kullanin.",
+PasteErrorCut : "Gezgin yaziliminizin güvenlik ayarlari editörün otomatik kesme islemine izin vermiyor. Islem için (Ctrl+X) tuslarini kullanin.",
+PasteErrorCopy : "Gezgin yaziliminizin güvenlik ayarlari editörün otomatik kopyalama islemine izin vermiyor. Islem için (Ctrl+C) tuslarini kullanin.",
+
+PasteAsText : "Düz Metin Olarak Yapistir",
+PasteFromWord : "Word'den yapistir",
+
+DlgPasteMsg2 : "Please paste inside the following box using the keyboard (<STRONG>Ctrl+V</STRONG>) and hit <STRONG>OK</STRONG>.", //MISSING
+DlgPasteIgnoreFont : "Yazı Tipi tanımlarını yoksay",
+DlgPasteRemoveStyles : "Sitil Tanımlarını çıkar",
+DlgPasteCleanBox : "Temizlik Kutusu",
+
+
+// Color Picker
+ColorAutomatic : "Otomatik",
+ColorMoreColors : "Diger renkler...",
+
+// Document Properties
+DocProps : "Doküman Ãzellikleri",
+
+// Anchor Dialog
+DlgAnchorTitle : "Ãapa Ãzellikleri",
+DlgAnchorName : "Ãapa Ismi",
+DlgAnchorErrorName : "Lütfen çapa için isim giriniz",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Sözlükte Yok",
+DlgSpellChangeTo : "Suna degistir:",
+DlgSpellBtnIgnore : "Yoksay",
+DlgSpellBtnIgnoreAll : "Tümünü Yoksay",
+DlgSpellBtnReplace : "Degistir",
+DlgSpellBtnReplaceAll : "Tümünü Degistir",
+DlgSpellBtnUndo : "Geri Al",
+DlgSpellNoSuggestions : "- Ãneri Yok -",
+DlgSpellProgress : "Yazim denetimi islemde...",
+DlgSpellNoMispell : "Yazim denetimi tamamlandi: Yanlis yazima raslanmadi",
+DlgSpellNoChanges : "Yazim denetimi tamamlandi: Hiçbir kelime degistirilmedi",
+DlgSpellOneChange : "Yazim denetimi tamamlandi: Bir kelime degistirildi",
+DlgSpellManyChanges : "Yazim denetimi tamamlandi: %1 kelime degistirildi",
+
+IeSpellDownload : "Yazim denetimi yüklenmemis. Simdi yüklemek ister misiniz?",
+
+// Button Dialog
+DlgButtonText : "Metin (Deger)",
+DlgButtonType : "Tip",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Isim",
+DlgCheckboxValue : "Deger",
+DlgCheckboxSelected : "Seçili",
+
+// Form Dialog
+DlgFormName : "Isim",
+DlgFormAction : "Islem",
+DlgFormMethod : "Metod",
+
+// Select Field Dialog
+DlgSelectName : "Isim",
+DlgSelectValue : "Deger",
+DlgSelectSize : "Boyut",
+DlgSelectLines : "satir",
+DlgSelectChkMulti : "Ãoklu seçime izin ver",
+DlgSelectOpAvail : "Mevcut Seçenekler",
+DlgSelectOpText : "Metin",
+DlgSelectOpValue : "Deger",
+DlgSelectBtnAdd : "Ekle",
+DlgSelectBtnModify : "Düzenle",
+DlgSelectBtnUp : "Yukari",
+DlgSelectBtnDown : "Asagi",
+DlgSelectBtnSetValue : "Seçili deger olarak ata",
+DlgSelectBtnDelete : "Sil",
+
+// Textarea Dialog
+DlgTextareaName : "Isim",
+DlgTextareaCols : "Sütunlar",
+DlgTextareaRows : "Satirlar",
+
+// Text Field Dialog
+DlgTextName : "Isim",
+DlgTextValue : "Deger",
+DlgTextCharWidth : "Karakter Genisligi",
+DlgTextMaxChars : "En Fazla Karakter",
+DlgTextType : "Tip",
+DlgTextTypeText : "Metin",
+DlgTextTypePass : "Sifre",
+
+// Hidden Field Dialog
+DlgHiddenName : "Isim",
+DlgHiddenValue : "Deger",
+
+// Bulleted List Dialog
+BulletedListProp : "Simgeli Liste Ãzellikleri",
+NumberedListProp : "Numarali Liste Ãzellikleri",
+DlgLstType : "Tip",
+DlgLstTypeCircle : "Ãember",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Kare",
+DlgLstTypeNumbers : "Sayilar (1, 2, 3)",
+DlgLstTypeLCase : "Küçük Harfler (a, b, c)",
+DlgLstTypeUCase : "Büyük Harfler (A, B, C)",
+DlgLstTypeSRoman : "Küçük Romen Rakamlari (i, ii, iii)",
+DlgLstTypeLRoman : "Büyük Romen Rakamlari (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Genel",
+DlgDocBackTab : "Arka Plan",
+DlgDocColorsTab : "Renler ve Mesafeler",
+DlgDocMetaTab : "Tanim Bilgisi (Meta)",
+
+DlgDocPageTitle : "Sayfa Basligi",
+DlgDocLangDir : "Lisan Yönü",
+DlgDocLangDirLTR : "Soldan Saga (LTR)",
+DlgDocLangDirRTL : "Sagdan Sola (RTL)",
+DlgDocLangCode : "Lisan Kodu",
+DlgDocCharSet : "Karakter Kümesi Kodlamasi",
+DlgDocCharSetOther : "Diger Karakter Kümesi Kodlamasi",
+
+DlgDocDocType : "Doküman Türü Basligi",
+DlgDocDocTypeOther : "Diger Doküman Türü Basligi",
+DlgDocIncXHTML : "XHTML Bildirimlerini Dahil Et",
+DlgDocBgColor : "Arka Plan Rengi",
+DlgDocBgImage : "Arka Plan Resim URLsi",
+DlgDocBgNoScroll : "Sabit Arka Plan",
+DlgDocCText : "Metin",
+DlgDocCLink : "Köprü",
+DlgDocCVisited : "Görülmüs Köprü",
+DlgDocCActive : "Aktif Köprü",
+DlgDocMargins : "Kenar Bosluklari",
+DlgDocMaTop : "Tepe",
+DlgDocMaLeft : "Sol",
+DlgDocMaRight : "Sag",
+DlgDocMaBottom : "Alt",
+DlgDocMeIndex : "Doküman Indeksleme Anahtar Kelimeleri (virgülle ayrilmis)",
+DlgDocMeDescr : "Doküman Tanimi",
+DlgDocMeAuthor : "Yazar",
+DlgDocMeCopy : "Telif",
+DlgDocPreview : "Ãn Izleme",
+
+// Templates Dialog
+Templates : "Düzenler",
+DlgTemplatesTitle : "İçerik Düzenleri",
+DlgTemplatesSelMsg : "Editörde açmak için lütfen bir düzen seçin.<br>(hali hazırdaki içerik kaybolacaktır.):",
+DlgTemplatesLoading : "Düzenler listesi yüklenmekte. Lütfen bekleyiniz...",
+DlgTemplatesNoTpl : "(Belirli bir düzen seçilmedi)",
+
+// About Dialog
+DlgAboutAboutTab : "Hakkinda",
+DlgAboutBrowserInfoTab : "Gezgin Bilgisi",
+DlgAboutVersion : "versiyon",
+DlgAboutLicense : "GNU Kisitli Kamu Lisansi (LGPL) kosullari altinda lisanslanmistir",
+DlgAboutInfo : "Daha fazla bilgi için:"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/uk.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/uk.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/uk.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: uk.js
+ * Ukrainian language file.
+ *
+ * File Authors:
+ * Alexander Pervak (pervak at gmail.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "ÐгоÑнÑÑи Ð¿Ð°Ð½ÐµÐ»Ñ ÑнÑÑÑÑменÑÑв",
+ToolbarExpand : "РозгоÑнÑÑи Ð¿Ð°Ð½ÐµÐ»Ñ ÑнÑÑÑÑменÑÑв",
+
+// Toolbar Items and Context Menu
+Save : "ÐбеÑегÑи",
+NewPage : "Ðова ÑÑоÑÑнка",
+Preview : "ÐопеÑеднÑй пеÑеглÑд",
+Cut : "ÐиÑÑзаÑи",
+Copy : "ÐопÑÑваÑи",
+Paste : "ÐÑÑавиÑи",
+PasteText : "ÐÑÑавиÑи ÑÑлÑки ÑекÑÑ",
+PasteWord : "ÐÑÑавиÑи з Word",
+Print : "ÐÑÑк",
+SelectAll : "ÐидÑлиÑи вÑе",
+RemoveFormat : "ÐÑибÑаÑи ÑоÑмаÑÑваннÑ",
+InsertLinkLbl : "ÐоÑиланнÑ",
+InsertLink : "ÐÑÑавиÑи/РедагÑваÑи поÑиланнÑ",
+RemoveLink : "ÐниÑиÑи поÑиланнÑ",
+Anchor : "ÐÑÑавиÑи/РедагÑваÑи ÑкÑÑ",
+InsertImageLbl : "ÐобÑаженнÑ",
+InsertImage : "ÐÑÑавиÑи/РедагÑваÑи зобÑаженнÑ",
+InsertFlashLbl : "Flash",
+InsertFlash : "ÐÑÑавиÑи/РедагÑваÑи Flash",
+InsertTableLbl : "ТаблиÑÑ",
+InsertTable : "ÐÑÑавиÑи/РедагÑваÑи ÑаблиÑÑ",
+InsertLineLbl : "ÐÑнÑÑ",
+InsertLine : "ÐÑÑавиÑи гоÑизонÑалÑÐ½Ñ Ð»ÑнÑÑ",
+InsertSpecialCharLbl: "СпеÑÑалÑний Ñимвол",
+InsertSpecialChar : "ÐÑÑавиÑи ÑпеÑÑалÑний Ñимвол",
+InsertSmileyLbl : "Смайлик",
+InsertSmiley : "ÐÑÑавиÑи Ñмайлик",
+About : "ÐÑо FCKeditor",
+Bold : "ÐиÑний",
+Italic : "ÐÑÑÑив",
+Underline : "ÐÑдкÑеÑлений",
+StrikeThrough : "ÐакÑеÑлений",
+Subscript : "ÐÑдÑÑдковий ÑндекÑ",
+Superscript : "ÐадÑÑдковий индекÑ",
+LeftJustify : "Ðо лÑÐ²Ð¾Ð¼Ñ ÐºÑаÑ",
+CenterJustify : "Ðо ÑенÑÑÑ",
+RightJustify : "Ðо пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ",
+BlockJustify : "Ðо ÑиÑинÑ",
+DecreaseIndent : "ÐменÑиÑи вÑдÑÑÑп",
+IncreaseIndent : "ÐбÑлÑÑиÑи вÑдÑÑÑп",
+Undo : "ÐовеÑнÑÑи",
+Redo : "ÐовÑоÑиÑи",
+NumberedListLbl : "ÐÑмеÑований ÑпиÑок",
+NumberedList : "ÐÑÑавиÑи/ÐидалиÑи нÑмеÑований ÑпиÑок",
+BulletedListLbl : "ÐаÑкований ÑпиÑок",
+BulletedList : "ÐÑÑавиÑи/ÐидалиÑи маÑкований ÑпиÑок",
+ShowTableBorders : "ÐоказаÑи боÑдÑÑи ÑаблиÑÑ",
+ShowDetails : "ÐоказаÑи деÑалÑ",
+Style : "СÑилÑ",
+FontFormat : "ФоÑмаÑÑваннÑ",
+Font : "ШÑиÑÑ",
+FontSize : "РозмÑÑ",
+TextColor : "ÐолÑÑ ÑекÑÑÑ",
+BGColor : "ÐолÑÑ ÑонÑ",
+Source : "ÐжеÑело",
+Find : "ÐоÑÑк",
+Replace : "ÐамÑна",
+SpellCheck : "ÐеÑевÑÑиÑи оÑÑогÑаÑÑÑ",
+UniversalKeyboard : "УнÑвеÑÑалÑна клавÑаÑÑÑа",
+
+Form : "ФоÑма",
+Checkbox : "Флагова кнопка",
+RadioButton : "Ðнопка вибоÑÑ",
+TextField : "ТекÑÑове поле",
+Textarea : "ТекÑÑова облаÑÑÑ",
+HiddenField : "ÐÑиÑ
оване поле",
+Button : "Ðнопка",
+SelectionField : "СпиÑок",
+ImageButton : "Ðнопка Ñз зобÑаженнÑм",
+
+// Context Menu
+EditLink : "ÐÑÑавиÑи поÑиланнÑ",
+InsertRow : "ÐÑÑавиÑи ÑÑÑокÑ",
+DeleteRows : "ÐидалиÑи ÑÑÑоки",
+InsertColumn : "ÐÑÑавиÑи колонкÑ",
+DeleteColumns : "ÐидалиÑи колонки",
+InsertCell : "ÐÑÑавиÑи комÑÑкÑ",
+DeleteCells : "ÐидалиÑи комÑÑки",
+MergeCells : "Ðб'ÑднаÑи комÑÑки",
+SplitCell : "Роз'ÑднаÑи комÑÑкÑ",
+CellProperties : "ÐлаÑÑивоÑÑÑ ÐºÐ¾Ð¼ÑÑки",
+TableProperties : "ÐлаÑÑивоÑÑÑ ÑаблиÑÑ",
+ImageProperties : "ÐлаÑÑивоÑÑÑ Ð·Ð¾Ð±ÑаженнÑ",
+FlashProperties : "ÐлаÑÑивоÑÑÑ Flash",
+
+AnchorProp : "ÐлаÑÑивоÑÑÑ ÑкоÑÑ",
+ButtonProp : "ÐлаÑÑивоÑÑÑ ÐºÐ½Ð¾Ð¿ÐºÐ¸",
+CheckboxProp : "ÐлаÑÑивоÑÑÑ ÑÐ»Ð°Ð³Ð¾Ð²Ð¾Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¸",
+HiddenFieldProp : "ÐлаÑÑивоÑÑÑ Ð¿ÑиÑ
ованого полÑ",
+RadioButtonProp : "ÐлаÑÑивоÑÑÑ ÐºÐ½Ð¾Ð¿ÐºÐ¸ вибоÑÑ",
+ImageButtonProp : "ÐлаÑÑивоÑÑÑ ÐºÐ½Ð¾Ð¿ÐºÐ¸ Ñз зобÑаженнÑм",
+TextFieldProp : "ÐлаÑÑивоÑÑÑ ÑекÑÑового полÑ",
+SelectionFieldProp : "ÐлаÑÑивоÑÑÑ ÑпиÑкÑ",
+TextareaProp : "ÐлаÑÑивоÑÑÑ ÑекÑÑÐ¾Ð²Ð¾Ñ Ð¾Ð±Ð»Ð°ÑÑÑ",
+FormProp : "ÐлаÑÑивоÑÑÑ ÑоÑми",
+
+FontFormats : "ÐоÑмалÑний;ФоÑмаÑований;ÐдÑеÑа;Ðаголовок 1;Ðаголовок 2;Ðаголовок 3;Ðаголовок 4;Ðаголовок 5;Ðаголовок 6",
+
+// Alerts and Messages
+ProcessingXHTML : "ÐбÑобка XHTML. ÐаÑекайÑе, бÑÐ´Ñ Ð»Ð°Ñка...",
+Done : "ÐÑоблено",
+PasteWordConfirm : "ТекÑÑ, Ñо ви Ñ
оÑеÑе вÑÑавиÑи, ÑÑ
ожий на копÑйований з Word. Ðи Ñ
оÑеÑе оÑиÑÑиÑи його пеÑед вÑÑавкоÑ?",
+NotCompatiblePaste : "Ð¦Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° доÑÑÑпна Ð´Ð»Ñ Internet Explorer веÑÑÑÑ 5.5 або виÑе. Ðи Ñ
оÑеÑе вÑÑавиÑи без оÑиÑеннÑ?",
+UnknownToolbarItem : "ÐевÑдомий ÐµÐ»ÐµÐ¼ÐµÐ½Ñ Ð¿Ð°Ð½ÐµÐ»Ñ ÑнÑÑÑÑменÑÑв \"%1\"",
+UnknownCommand : "ÐевÑдоме Ñм'Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ \"%1\"",
+NotImplemented : "Ðоманда не ÑеалÑзована",
+UnknownToolbarSet : "ÐÐ°Ð½ÐµÐ»Ñ ÑнÑÑÑÑменÑÑв \"%1\" не ÑÑнÑÑ",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "ÐÐ",
+DlgBtnCancel : "СкаÑÑваÑи",
+DlgBtnClose : "ÐаÑиниÑи",
+DlgBtnBrowseServer : "ÐеÑедивиÑиÑÑ Ð½Ð° ÑеÑвеÑÑ",
+DlgAdvancedTag : "РозÑиÑений",
+DlgOpOther : "<ÐнÑе>",
+DlgInfoTab : "ÐнÑо",
+DlgAlertUrl : "ÐÑÑавÑе, бÑдÑ-лаÑка, URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<не визнаÑено>",
+DlgGenId : "ÐденÑиÑÑкаÑоÑ",
+DlgGenLangDir : "ÐапÑÑмок мови",
+DlgGenLangDirLtr : "ÐлÑва на пÑаво (LTR)",
+DlgGenLangDirRtl : "ÐпÑава на лÑво (RTL)",
+DlgGenLangCode : "Ðова",
+DlgGenAccessKey : "ÐаÑÑÑа клавÑÑа",
+DlgGenName : "Ðм'Ñ",
+DlgGenTabIndex : "ÐоÑлÑдовнÑÑÑÑ Ð¿ÐµÑеÑ
одÑ",
+DlgGenLongDescr : "Ðовгий Ð¾Ð¿Ð¸Ñ URL",
+DlgGenClass : "ÐÐ»Ð°Ñ CSS",
+DlgGenTitle : "Ðаголовок",
+DlgGenContType : "Тип вмÑÑÑÑ",
+DlgGenLinkCharset : "ÐодиÑовка",
+DlgGenStyle : "СÑÐ¸Ð»Ñ CSS",
+
+// Image Dialog
+DlgImgTitle : "ÐлаÑÑивоÑÑÑ Ð·Ð¾Ð±ÑаженнÑ",
+DlgImgInfoTab : "ÐнÑоÑмаÑÑÑ Ð¿Ñо изобÑажении",
+DlgImgBtnUpload : "ÐадÑÑлаÑи на ÑеÑвеÑ",
+DlgImgURL : "URL",
+DlgImgUpload : "ÐакаÑаÑи",
+DlgImgAlt : "ÐлÑÑеÑнаÑивний ÑекÑÑ",
+DlgImgWidth : "ШиÑина",
+DlgImgHeight : "ÐиÑоÑа",
+DlgImgLockRatio : "ÐбеÑегÑи пÑопоÑÑÑÑ",
+DlgBtnResetSize : "СкинÑÑи ÑозмÑÑ",
+DlgImgBorder : "ÐоÑдÑÑ",
+DlgImgHSpace : "ÐоÑизонÑалÑний вÑдÑÑÑп",
+DlgImgVSpace : "ÐеÑÑикалÑний вÑдÑÑÑп",
+DlgImgAlign : "ÐиÑÑвнÑваннÑ",
+DlgImgAlignLeft : "Ðо лÑÐ²Ð¾Ð¼Ñ ÐºÑаÑ",
+DlgImgAlignAbsBottom: "ÐÐ±Ñ Ð¿Ð¾ низÑ",
+DlgImgAlignAbsMiddle: "ÐÐ±Ñ Ð¿Ð¾ ÑеÑединÑ",
+DlgImgAlignBaseline : "Ðо базовÑй лÑнÑÑ",
+DlgImgAlignBottom : "Ðо низÑ",
+DlgImgAlignMiddle : "Ðо ÑеÑединÑ",
+DlgImgAlignRight : "Ðо пÑÐ°Ð²Ð¾Ð¼Ñ ÐºÑаÑ",
+DlgImgAlignTextTop : "ТекÑÑ Ð½Ð° веÑÑ
Ñ",
+DlgImgAlignTop : "Ðо веÑÑ
Ñ",
+DlgImgPreview : "ÐопеÑеднÑй пеÑеглÑд",
+DlgImgAlertUrl : "ÐÑÐ´Ñ Ð»Ð°Ñка, введÑÑÑ URL зобÑаженнÑ",
+DlgImgLinkTab : "ÐоÑиланнÑ",
+
+// Flash Dialog
+DlgFlashTitle : "ÐлаÑÑивоÑÑÑ Flash",
+DlgFlashChkPlay : "ÐвÑо пÑогÑаваннÑ",
+DlgFlashChkLoop : "ÐаÑиклиÑи",
+DlgFlashChkMenu : "ÐозволиÑи Ð¼ÐµÐ½Ñ Flash",
+DlgFlashScale : "ÐаÑÑÑаб",
+DlgFlashScaleAll : "ÐоказаÑи вÑÑ",
+DlgFlashScaleNoBorder : "Ðез Ñамки",
+DlgFlashScaleFit : "ÐÑйÑний ÑозмÑÑ",
+
+// Link Dialog
+DlgLnkWindowTitle : "ÐоÑиланнÑ",
+DlgLnkInfoTab : "ÐнÑоÑмаÑÑÑ Ð¿Ð¾ÑиланнÑ",
+DlgLnkTargetTab : "ЦÑлÑ",
+
+DlgLnkType : "Тип поÑиланнÑ",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "ЯкÑÑ Ð½Ð° ÑÑ ÑÑоÑÑнкÑ",
+DlgLnkTypeEMail : "Ðл. поÑÑа",
+DlgLnkProto : "ÐÑоÑокол",
+DlgLnkProtoOther : "<ÑнÑе>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "ÐбеÑÑÑÑ ÑкÑÑ",
+DlgLnkAnchorByName : "Ðа Ñм'Ñм ÑкоÑÑ",
+DlgLnkAnchorById : "Ðа ÑденÑиÑÑкаÑоÑом елеменÑа",
+DlgLnkNoAnchors : "<ÐÐµÐ¼Ð°Ñ ÑкоÑÑв доÑÑÑпниÑ
в ÑÑÐ¾Ð¼Ñ Ð´Ð¾ÐºÑменÑÑ>",
+DlgLnkEMail : "ÐдÑеÑа ел. поÑÑи",
+DlgLnkEMailSubject : "Тема лиÑÑа",
+DlgLnkEMailBody : "ТÑло повÑдомленнÑ",
+DlgLnkUpload : "ÐакаÑаÑи",
+DlgLnkBtnUpload : "ÐеÑеÑлаÑи на ÑеÑвеÑ",
+
+DlgLnkTarget : "ЦÑлÑ",
+DlgLnkTargetFrame : "<ÑÑейм>",
+DlgLnkTargetPopup : "<ÑпливаÑÑе вÑкно>",
+DlgLnkTargetBlank : "Ðове вÑкно (_blank)",
+DlgLnkTargetParent : "ÐаÑÑкÑвÑÑке вÑкно (_parent)",
+DlgLnkTargetSelf : "Теж вÑкно (_self)",
+DlgLnkTargetTop : "ÐайвиÑе вÑкно (_top)",
+DlgLnkTargetFrameName : "Ðм'Ñ Ñелевого ÑÑейма",
+DlgLnkPopWinName : "Ðм'Ñ ÑпливаÑÑого вÑкна",
+DlgLnkPopWinFeat : "ÐлаÑÑивоÑÑÑ ÑпливаÑÑого вÑкна",
+DlgLnkPopResize : "ÐмÑнÑÑÑÑÑÑ Ð² ÑозмÑÑаÑ
",
+DlgLnkPopLocation : "ÐÐ°Ð½ÐµÐ»Ñ Ð»Ð¾ÐºÐ°ÑÑÑ",
+DlgLnkPopMenu : "ÐÐ°Ð½ÐµÐ»Ñ Ð¼ÐµÐ½Ñ",
+DlgLnkPopScroll : "ÐолоÑи пÑокÑÑÑки",
+DlgLnkPopStatus : "СÑÑока ÑÑаÑÑÑÑ",
+DlgLnkPopToolbar : "ÐÐ°Ð½ÐµÐ»Ñ ÑнÑÑÑÑменÑÑв",
+DlgLnkPopFullScrn : "Ðовний екÑан (IE)",
+DlgLnkPopDependent : "Ðалежний (Netscape)",
+DlgLnkPopWidth : "ШиÑина",
+DlgLnkPopHeight : "ÐиÑоÑа",
+DlgLnkPopLeft : "ÐозиÑÑÑ Ð·Ð»Ñва",
+DlgLnkPopTop : "ÐозиÑÑÑ Ð·Ð²ÐµÑÑ
Ñ",
+
+DlnLnkMsgNoUrl : "ÐÑÐ´Ñ Ð»Ð°Ñка, занеÑÑÑÑ URL поÑиланнÑ",
+DlnLnkMsgNoEMail : "ÐÑÐ´Ñ Ð»Ð°Ñка, занеÑÑÑÑ Ð°Ð´ÑÐµÑ Ñл. поÑÑÑ",
+DlnLnkMsgNoAnchor : "ÐÑÐ´Ñ Ð»Ð°Ñка, обеÑÑÑÑ ÑкÑÑ",
+
+// Color Dialog
+DlgColorTitle : "ÐбеÑÑÑÑ ÐºÐ¾Ð»ÑÑ",
+DlgColorBtnClear : "ÐÑиÑÑиÑи",
+DlgColorHighlight : "ÐÑдÑвÑÑений",
+DlgColorSelected : "ÐбÑаний",
+
+// Smiley Dialog
+DlgSmileyTitle : "ÐÑÑавиÑи Ñмайлик",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "ÐбеÑÑÑÑ ÑпеÑÑалÑний Ñимвол",
+
+// Table Dialog
+DlgTableTitle : "ÐлаÑÑивоÑÑÑ ÑаблиÑÑ",
+DlgTableRows : "СÑÑоки",
+DlgTableColumns : "Ðолонки",
+DlgTableBorder : "РозмÑÑ Ð±Ð¾ÑдÑÑа",
+DlgTableAlign : "ÐиÑÑвнÑваннÑ",
+DlgTableAlignNotSet : "<Ðе вÑÑ.>",
+DlgTableAlignLeft : "ÐлÑва",
+DlgTableAlignCenter : "Ðо ÑенÑÑÑ",
+DlgTableAlignRight : "ÐпÑава",
+DlgTableWidth : "ШиÑина",
+DlgTableWidthPx : "пÑкÑелÑв",
+DlgTableWidthPc : "вÑдÑоÑкÑв",
+DlgTableHeight : "ÐиÑоÑа",
+DlgTableCellSpace : "ÐÑомÑжок (spacing)",
+DlgTableCellPad : "ÐÑдÑÑÑп (padding)",
+DlgTableCaption : "Ðаголовок",
+
+// Table Cell Dialog
+DlgCellTitle : "ÐлаÑÑивоÑÑÑ ÐºÐ¾Ð¼ÑÑки",
+DlgCellWidth : "ШиÑина",
+DlgCellWidthPx : "пÑкÑелÑв",
+DlgCellWidthPc : "вÑдÑоÑкÑв",
+DlgCellHeight : "ÐиÑоÑа",
+DlgCellWordWrap : "ÐгоÑÑÐ°Ð½Ð½Ñ ÑекÑÑа",
+DlgCellWordWrapNotSet : "<Ðе вÑÑ.>",
+DlgCellWordWrapYes : "Так",
+DlgCellWordWrapNo : "ÐÑ",
+DlgCellHorAlign : "ÐоÑизонÑалÑне виÑÑвнÑваннÑ",
+DlgCellHorAlignNotSet : "<Ðе вÑÑ.>",
+DlgCellHorAlignLeft : "ÐлÑва",
+DlgCellHorAlignCenter : "Ðо ÑенÑÑÑ",
+DlgCellHorAlignRight: "ÐпÑава",
+DlgCellVerAlign : "ÐеÑÑикалÑное виÑÑвнÑваннÑ",
+DlgCellVerAlignNotSet : "<Ðе вÑÑ.>",
+DlgCellVerAlignTop : "ÐвеÑÑ
Ñ",
+DlgCellVerAlignMiddle : "ÐоÑеÑединÑ",
+DlgCellVerAlignBottom : "ÐнизÑ",
+DlgCellVerAlignBaseline : "Ðо базовÑй лÑнÑÑ",
+DlgCellRowSpan : "ÐÑапазон ÑÑÑок (span)",
+DlgCellCollSpan : "ÐÑапазон колонок (span)",
+DlgCellBackColor : "ÐолÑÑ Ñона",
+DlgCellBorderColor : "ÐолÑÑ Ð±Ð¾ÑдÑÑа",
+DlgCellBtnSelect : "ÐбеÑÑÑÑ...",
+
+// Find Dialog
+DlgFindTitle : "ÐоÑÑк",
+DlgFindFindBtn : "ÐоÑÑк",
+DlgFindNotFoundMsg : "Ðказаний ÑекÑÑ Ð½Ðµ знайдений.",
+
+// Replace Dialog
+DlgReplaceTitle : "ÐамÑниÑи",
+DlgReplaceFindLbl : "ШÑкаÑи:",
+DlgReplaceReplaceLbl : "ÐамÑниÑи на:",
+DlgReplaceCaseChk : "УÑиÑÑваÑÑ ÑегиÑÑÑ",
+DlgReplaceReplaceBtn : "ÐамÑниÑи",
+DlgReplaceReplAllBtn : "ÐамÑниÑи вÑе",
+DlgReplaceWordChk : "ÐбÑг ÑÑлиÑ
ÑлÑв",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "ÐаÑÑÑойки безпеки ваÑого бÑаÑзеÑа не дозволÑÑÑÑ ÑедакÑоÑÑ Ð°Ð²ÑомаÑиÑно виконÑваÑи опеÑаÑÑÑ Ð²ÑÑавки. ÐÑÐ´Ñ Ð»Ð°Ñка, викоÑиÑÑовÑйÑе клавÑаÑÑÑÑ Ð´Ð»Ñ ÑÑого (Ctrl+V).",
+PasteErrorCut : "ÐаÑÑÑойки безпеки ваÑого бÑаÑзеÑа не дозволÑÑÑÑ ÑедакÑоÑÑ Ð°Ð²ÑомаÑиÑно виконÑваÑи опеÑаÑÑÑ Ð²Ð¸ÑÑзÑваннÑ. ÐÑÐ´Ñ Ð»Ð°Ñка, викоÑиÑÑовÑйÑе клавÑаÑÑÑÑ Ð´Ð»Ñ ÑÑого (Ctrl+X).",
+PasteErrorCopy : "ÐаÑÑÑойки безпеки ваÑого бÑаÑзеÑа не дозволÑÑÑÑ ÑедакÑоÑÑ Ð°Ð²ÑомаÑиÑно виконÑваÑи опеÑаÑÑÑ ÐºÐ¾Ð¿ÑÑваннÑ. ÐÑÐ´Ñ Ð»Ð°Ñка, викоÑиÑÑовÑйÑе клавÑаÑÑÑÑ Ð´Ð»Ñ ÑÑого (Ctrl+C).",
+
+PasteAsText : "ÐÑÑавиÑи ÑÑлÑки ÑекÑÑ",
+PasteFromWord : "ÐÑÑавиÑи з Word",
+
+DlgPasteMsg2 : "ÐÑдÑ-лаÑка, вÑÑавÑе з бÑÑеÑа обмÑÐ½Ñ Ð² ÑÑ Ð¾Ð±Ð»Ð°ÑÑÑ, коÑиÑÑÑÑÑиÑÑ ÐºÐ¾Ð¼Ð±ÑнаÑÑÑÑ ÐºÐ»Ð°Ð²ÑÑ (<STRONG>Ctrl+V</STRONG>) Ñа наÑиÑнÑÑÑ <STRONG>OK</STRONG>.",
+DlgPasteIgnoreFont : "ÐгноÑÑваÑи налаÑÑÑÐ²Ð°Ð½Ð½Ñ ÑÑиÑÑÑв",
+DlgPasteRemoveStyles : "ÐидалиÑи налаÑÑÑÐ²Ð°Ð½Ð½Ñ ÑÑилÑв",
+DlgPasteCleanBox : "ÐÑиÑÑиÑи облаÑÑÑ",
+
+
+// Color Picker
+ColorAutomatic : "ÐвÑомаÑиÑний",
+ColorMoreColors : "ÐолÑоÑи...",
+
+// Document Properties
+DocProps : "ÐлаÑÑивоÑÑÑ Ð´Ð¾ÐºÑменÑа",
+
+// Anchor Dialog
+DlgAnchorTitle : "ÐлаÑÑивоÑÑÑ ÑкоÑÑ",
+DlgAnchorName : "Ðм'Ñ ÑкоÑÑ",
+DlgAnchorErrorName : "ÐÑÐ´Ñ Ð»Ð°Ñка, занеÑÑÑÑ Ñм'Ñ ÑкоÑÑ",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Ðе Ð¼Ð°Ñ Ð² ÑловникÑ",
+DlgSpellChangeTo : "ÐамÑниÑи на",
+DlgSpellBtnIgnore : "ÐгноÑÑваÑи",
+DlgSpellBtnIgnoreAll : "ÐгноÑÑваÑи вÑе",
+DlgSpellBtnReplace : "ÐамÑниÑи",
+DlgSpellBtnReplaceAll : "ÐамÑниÑи вÑе",
+DlgSpellBtnUndo : "Ðазад",
+DlgSpellNoSuggestions : "- ÐÐµÐ¼Ð°Ñ Ð¿ÑипÑÑÐµÐ½Ñ -",
+DlgSpellProgress : "ÐиконÑÑÑÑÑÑ Ð¿ÐµÑевÑÑка оÑÑогÑаÑÑÑ...",
+DlgSpellNoMispell : "ÐеÑевÑÑÐºÑ Ð¾ÑÑогÑаÑÑÑ Ð·Ð°Ð²ÐµÑÑено: помилок не знайдено",
+DlgSpellNoChanges : "ÐеÑевÑÑÐºÑ Ð¾ÑÑогÑаÑÑÑ Ð·Ð°Ð²ÐµÑÑено: жодне Ñлово не змÑнено",
+DlgSpellOneChange : "ÐеÑевÑÑÐºÑ Ð¾ÑÑогÑаÑÑÑ Ð·Ð°Ð²ÐµÑÑено: змÑнено одно Ñлово",
+DlgSpellManyChanges : "ÐеÑевÑÑÐºÑ Ð¾ÑÑогÑаÑÑÑ Ð·Ð°Ð²ÐµÑÑено: 1% ÑлÑв змÑнено",
+
+IeSpellDownload : "ÐодÑÐ»Ñ Ð¿ÐµÑевÑÑки оÑÑогÑаÑÑÑ Ð½Ðµ вÑÑановлено. ÐажаÑÑн заванÑажиÑи його заÑаз?",
+
+// Button Dialog
+DlgButtonText : "ТекÑÑ (ÐнаÑеннÑ)",
+DlgButtonType : "Тип",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Ðм'Ñ",
+DlgCheckboxValue : "ÐнаÑеннÑ",
+DlgCheckboxSelected : "ÐбÑана",
+
+// Form Dialog
+DlgFormName : "Ðм'Ñ",
+DlgFormAction : "ÐÑÑ",
+DlgFormMethod : "ÐеÑод",
+
+// Select Field Dialog
+DlgSelectName : "Ðм'Ñ",
+DlgSelectValue : "ÐнаÑеннÑ",
+DlgSelectSize : "РозмÑÑ",
+DlgSelectLines : "лÑнÑÑ",
+DlgSelectChkMulti : "ÐозволиÑи обÑÐ°Ð½Ð½Ñ Ð´ÐµÐºÑлÑкоÑ
позиÑÑй",
+DlgSelectOpAvail : "ÐоÑÑÑÐ¿Ð½Ñ Ð²Ð°ÑÑанÑи",
+DlgSelectOpText : "ТекÑÑ",
+DlgSelectOpValue : "ÐнаÑеннÑ",
+DlgSelectBtnAdd : "ÐобавиÑи",
+DlgSelectBtnModify : "ÐмÑниÑи",
+DlgSelectBtnUp : "ÐгоÑÑ",
+DlgSelectBtnDown : "Ðниз",
+DlgSelectBtnSetValue : "ÐÑÑановиÑи Ñк вибÑане знаÑеннÑ",
+DlgSelectBtnDelete : "ÐидалиÑи",
+
+// Textarea Dialog
+DlgTextareaName : "Ðм'Ñ",
+DlgTextareaCols : "Ðолонки",
+DlgTextareaRows : "СÑÑоки",
+
+// Text Field Dialog
+DlgTextName : "Ðм'Ñ",
+DlgTextValue : "ÐнаÑеннÑ",
+DlgTextCharWidth : "ШиÑина",
+DlgTextMaxChars : "ÐакÑ. кÑл-ÑÑ ÑимволÑв",
+DlgTextType : "Тип",
+DlgTextTypeText : "ТекÑÑ",
+DlgTextTypePass : "ÐаÑолÑ",
+
+// Hidden Field Dialog
+DlgHiddenName : "Ðм'Ñ",
+DlgHiddenValue : "ÐнаÑеннÑ",
+
+// Bulleted List Dialog
+BulletedListProp : "ÐлаÑÑивоÑÑÑ Ð¼Ð°Ñкованого ÑпиÑка",
+NumberedListProp : "ÐлаÑÑивоÑÑÑ Ð½ÑмеÑованного ÑпиÑка",
+DlgLstType : "Тип",
+DlgLstTypeCircle : "Ðоло",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "ÐвадÑаÑ",
+DlgLstTypeNumbers : "ÐомеÑи (1, 2, 3)",
+DlgLstTypeLCase : "ÐÑÑеÑи нижнÑого ÑегÑÑÑÑа(a, b, c)",
+DlgLstTypeUCase : "ÐÑÑеÑи ÐÐРХÐЬÐÐÐ Ð ÐÐÐСТРР(A, B, C)",
+DlgLstTypeSRoman : "ÐÐ°Ð»Ñ ÑимÑÑÐºÑ Ð»ÑÑеÑи (i, ii, iii)",
+DlgLstTypeLRoman : "ÐÐµÐ»Ð¸ÐºÑ ÑимÑÑÐºÑ Ð»ÑÑеÑи (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "ÐагалÑнÑ",
+DlgDocBackTab : "ÐÐ°Ð´Ð½Ñ Ñло",
+DlgDocColorsTab : "ÐолÑоÑи Ñа вÑдÑÑÑпи",
+DlgDocMetaTab : "ÐеÑа данÑ",
+
+DlgDocPageTitle : "Ðаголовок ÑÑоÑÑнки",
+DlgDocLangDir : "ÐапÑÑмок ÑекÑÑÑ",
+DlgDocLangDirLTR : "ÐлÑва на пÑаво (LTR)",
+DlgDocLangDirRTL : "ÐпÑава на лево (RTL)",
+DlgDocLangCode : "Ðод мови",
+DlgDocCharSet : "ÐодÑÐ²Ð°Ð½Ð½Ñ Ð½Ð°Ð±Ð¾ÑÑ ÑимволÑв",
+DlgDocCharSetOther : "ÐнÑе кодÑÐ²Ð°Ð½Ð½Ñ Ð½Ð°Ð±Ð¾ÑÑ ÑимволÑв",
+
+DlgDocDocType : "Ðаголовок ÑÐ¸Ð¿Ñ Ð´Ð¾ÐºÑменÑÑ",
+DlgDocDocTypeOther : "ÐнÑий заголовок ÑÐ¸Ð¿Ñ Ð´Ð¾ÐºÑменÑÑ",
+DlgDocIncXHTML : "ÐвÑмкнÑÑи XHTML оголоÑеннÑ",
+DlgDocBgColor : "ÐолÑÑ Ñла",
+DlgDocBgImage : "URL зобÑÐ°Ð¶ÐµÐ½Ð½Ñ Ñла",
+DlgDocBgNoScroll : "Тло без пÑокÑÑÑки",
+DlgDocCText : "ТекÑÑ",
+DlgDocCLink : "ÐоÑиланнÑ",
+DlgDocCVisited : "ÐÑдвÑдане поÑиланнÑ",
+DlgDocCActive : "ÐкÑивне поÑиланнÑ",
+DlgDocMargins : "ÐÑдÑÑÑпи ÑÑоÑÑнки",
+DlgDocMaTop : "ÐеÑÑ
нÑй",
+DlgDocMaLeft : "ÐÑвий",
+DlgDocMaRight : "ÐÑавий",
+DlgDocMaBottom : "ÐижнÑй",
+DlgDocMeIndex : "ÐлÑÑÐ¾Ð²Ñ Ñлова докÑменÑа (ÑоздÑÐ»ÐµÐ½Ñ ÐºÐ¾Ð¼Ð°Ð¼Ð¸)",
+DlgDocMeDescr : "ÐÐ¿Ð¸Ñ Ð´Ð¾ÐºÑменÑа",
+DlgDocMeAuthor : "ÐвÑоÑ",
+DlgDocMeCopy : "ÐвÑоÑÑÑÐºÑ Ð¿Ñава",
+DlgDocPreview : "ÐопеÑеднÑй пеÑеглÑд",
+
+// Templates Dialog
+Templates : "Шаблони",
+DlgTemplatesTitle : "Шаблони змÑÑÑÑ",
+DlgTemplatesSelMsg : "ÐбеÑÑÑÑ, бÑÐ´Ñ Ð»Ð°Ñка, Ñаблон Ð´Ð»Ñ Ð²ÑдкÑиÑÑÑ Ð² ÑедакÑоÑÑ<br>(поÑоÑний змÑÑÑ Ð±Ñде вÑÑаÑено):",
+DlgTemplatesLoading : "ÐаванÑÐ°Ð¶ÐµÐ½Ð½Ñ ÑпиÑÐºÑ ÑаблонÑв. ÐаÑекайÑе, бÑÐ´Ñ Ð»Ð°Ñка...",
+DlgTemplatesNoTpl : "(Ðе визнаÑено жодного ÑаблонÑ)",
+
+// About Dialog
+DlgAboutAboutTab : "ÐÑо пÑогÑамÑ",
+DlgAboutBrowserInfoTab : "ÐнÑоÑмаÑÑÑ Ð±ÑаÑзеÑа",
+DlgAboutVersion : "ÐеÑÑÑÑ",
+DlgAboutLicense : "ÐÑÑензовано згÑдно Ñмовам GNU Lesser General Public License",
+DlgAboutInfo : "ÐодаÑÐºÐ¾Ð²Ñ ÑнÑоÑмаÑÑÑ Ð´Ð¸Ð²ÑÑÑÑÑ Ð½Ð° "
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/vi.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/vi.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/vi.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: vi.js
+ * Vietnamese language file.
+ *
+ * File Authors:
+ * Phan Binh Giang (bbbgiang at yahoo.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "Collapse Toolbar",
+ToolbarExpand : "Expand Toolbar",
+
+// Toolbar Items and Context Menu
+Save : "Ghi",
+NewPage : "Trang Má»i",
+Preview : "Xem trÆ°á»c",
+Cut : "Cắt",
+Copy : "Sao",
+Paste : "Dán",
+PasteText : "Dán Ký tá»± ÄÆ¡n thuần",
+PasteWord : "Dán vá»i Äá»nh dạng Word",
+Print : "In",
+SelectAll : "Chá»n Tất cả",
+RemoveFormat : "Xoá Äá»nh dạng",
+InsertLinkLbl : "Liên kết",
+InsertLink : "Chèn/Sá»a Liên kết",
+RemoveLink : "Xoá Liên kết",
+Anchor : "Chèn/Sá»a Neo",
+InsertImageLbl : "Hình ảnh",
+InsertImage : "Chèn/Sá»a Hình ảnh",
+InsertFlashLbl : "Flash",
+InsertFlash : "Chèn/Sá»a Flash",
+InsertTableLbl : "Bảng",
+InsertTable : "Chèn/Sá»a bảng",
+InsertLineLbl : "ÄÆ°á»ng phân cách",
+InsertLine : "Chèn ÄÆ°á»ng phân cách ngang",
+InsertSpecialCharLbl: "Ký tá»± Äặt biá»t",
+InsertSpecialChar : "Chèn Ký tá»± Äặc biá»t",
+InsertSmileyLbl : "Hình cảm xúc",
+InsertSmiley : "Chèn Hình cảm xúc",
+About : "Giá»i thiá»u vá» FCKeditor",
+Bold : "Äáºm",
+Italic : "Nghiêng",
+Underline : "Gạch chân",
+StrikeThrough : "Gạch ngang",
+Subscript : "Chá» sá» dÆ°á»i",
+Superscript : "ChỠsỠtrên",
+LeftJustify : "Canh bên Trái",
+CenterJustify : "Canh Giữa",
+RightJustify : "Canh bên Phải",
+BlockJustify : "Canh Hai bên",
+DecreaseIndent : "Dá»ch sang Trái",
+IncreaseIndent : "Dá»ch sang Phải",
+Undo : "Phục há»i Lùi",
+Redo : "Phục há»i Tiến",
+NumberedListLbl : "SỠthứ tự",
+NumberedList : "Chèn/Xoá SỠthứ tự",
+BulletedListLbl : "Danh sách Bulleted",
+BulletedList : "Chèn/Xoá Danh sách Bulleted",
+ShowTableBorders : "Hiá»n thá» ÄÆ°á»ng viá»n bảng",
+ShowDetails : "Hiá»n thá» Chi tiết",
+Style : "Mẫu",
+FontFormat : "Äá»nh dạng",
+Font : "Font",
+FontSize : "Cỡ Chữ",
+TextColor : "Mà u Chữ",
+BGColor : "Mà u Ná»n",
+Source : "Mã nguá»n",
+Find : "Tìm",
+Replace : "Thay thế",
+SpellCheck : "Kiá»m tra ChÃnh tả",
+UniversalKeyboard : "Bà n phÃm quá»c tế",
+
+Form : "Form",
+Checkbox : "Ná»t Kiá»m",
+RadioButton : "Ná»t Äà i",
+TextField : "Text Field",
+Textarea : "Textarea",
+HiddenField : "Hidden Field",
+Button : "Button",
+SelectionField : "Selection Field",
+ImageButton : "Image Button",
+
+// Context Menu
+EditLink : "Sá»a Liên kết",
+InsertRow : "Chèn Dòng",
+DeleteRows : "Xoá Dòng",
+InsertColumn : "Chèn Cá»t",
+DeleteColumns : "Xoá Cá»t",
+InsertCell : "Chèn Ã",
+DeleteCells : "Xoá Ã",
+MergeCells : "Trá»n Ã",
+SplitCell : "Chia Ã",
+CellProperties : "Thuá»c tÃnh Ã",
+TableProperties : "Thuá»c tÃnh Bảng",
+ImageProperties : "Thuá»c tÃnh Hình ảnh",
+FlashProperties : "Thuá»c tÃnh Flash",
+
+AnchorProp : "Thuá»c tÃnh Neo",
+ButtonProp : "Thuá»c tÃnh Button",
+CheckboxProp : "Thuá»c tÃnh Ná»t kiá»m",
+HiddenFieldProp : "Thuá»c tÃnh Hidden Field",
+RadioButtonProp : "Thuá»c tÃnh Ná»t Äà i",
+ImageButtonProp : "Thuá»c tÃnh Image Button",
+TextFieldProp : "Thuá»c tÃnh Text Field",
+SelectionFieldProp : "Thuá»c tÃnh Selection Field",
+TextareaProp : "Thuá»c tÃnh Textarea",
+FormProp : "Thuá»c tÃnh Form",
+
+FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Paragraph (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "Äang xá» lý XHTML. Xin hãy Äợi...",
+Done : "Äã hoà n thà nh",
+PasteWordConfirm : "VÄn bản bạn muá»n dán có kèm Äá»nh dạng của Word. Bạn có muá»n loại bá» Äá»nh dạng Word trÆ°á»c khi dán?",
+NotCompatiblePaste : "Lá»nh nà y chá» Äược há» trợ từ trình duyá»t Internet Explorer phiên bản 5.5 hoặc má»i hÆ¡n. Bạn có muá»n dán nguyên mẫu?",
+UnknownToolbarItem : "Không rõ Ná»t \"%1\"",
+UnknownCommand : "Không rõ lá»nh \"%1\"",
+NotImplemented : "Lá»nh không Äược thi hà nh",
+UnknownToolbarSet : "Thanh công cụ \"%1\" không tá»n tại",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "Äá»ng ý",
+DlgBtnCancel : "Bá» qua",
+DlgBtnClose : "Äóng",
+DlgBtnBrowseServer : "Duyá»t trên máy chủ",
+DlgAdvancedTag : "Má» rá»ng",
+DlgOpOther : "<Khác>",
+DlgInfoTab : "Thông tin",
+DlgAlertUrl : "Hãy ÄÆ°a và o má»t URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<không thiết láºp>",
+DlgGenId : "Äá»nh danh",
+DlgGenLangDir : "ÄÆ°á»ng dẫn Ngôn ngữ",
+DlgGenLangDirLtr : "Trái sang Phải (LTR)",
+DlgGenLangDirRtl : "Phải sang Trái (RTL)",
+DlgGenLangCode : "Mã Ngôn ngữ",
+DlgGenAccessKey : "PhÃm Truy cáºp",
+DlgGenName : "Tên",
+DlgGenTabIndex : "Tab Index",
+DlgGenLongDescr : "Mô tả URL",
+DlgGenClass : "Stylesheet Classes",
+DlgGenTitle : "Advisory Title",
+DlgGenContType : "Advisory Content Type",
+DlgGenLinkCharset : "Linked Resource Charset",
+DlgGenStyle : "Mẫu",
+
+// Image Dialog
+DlgImgTitle : "Thuá»c tÃnh Hình ảnh",
+DlgImgInfoTab : "Thông tin Hình ảnh",
+DlgImgBtnUpload : "Gá»i lên Máy chủ",
+DlgImgURL : "URL",
+DlgImgUpload : "Tải lên",
+DlgImgAlt : "Chú thÃch Hình ảnh",
+DlgImgWidth : "Rá»ng",
+DlgImgHeight : "Cao",
+DlgImgLockRatio : "Giữ tá»· lá»",
+DlgBtnResetSize : "KÃch thÆ°á»c gá»c",
+DlgImgBorder : "ÄÆ°á»ng viá»n",
+DlgImgHSpace : "HSpace",
+DlgImgVSpace : "VSpace",
+DlgImgAlign : "Vá» trÃ",
+DlgImgAlignLeft : "Trái",
+DlgImgAlignAbsBottom: "Abs Bottom",
+DlgImgAlignAbsMiddle: "Abs Middle",
+DlgImgAlignBaseline : "Baseline",
+DlgImgAlignBottom : "DÆ°á»i",
+DlgImgAlignMiddle : "Giữa",
+DlgImgAlignRight : "Phải",
+DlgImgAlignTextTop : "Text Top",
+DlgImgAlignTop : "Trên",
+DlgImgPreview : "Xem trÆ°á»c",
+DlgImgAlertUrl : "Hãy ÄÆ°a và o URL của hình ảnh",
+DlgImgLinkTab : "Liên kết",
+
+// Flash Dialog
+DlgFlashTitle : "Thuá»c tÃnh Flash",
+DlgFlashChkPlay : "Tá»± Äá»ng Chạy",
+DlgFlashChkLoop : "Lặp",
+DlgFlashChkMenu : "KÃch hoạt Menu Flash ",
+DlgFlashScale : "Scale",
+DlgFlashScaleAll : "Hiá»n thá» tất cả",
+DlgFlashScaleNoBorder : "Không ÄÆ°á»ng viá»n",
+DlgFlashScaleFit : "Exact Fit",
+
+// Link Dialog
+DlgLnkWindowTitle : "Liên kết",
+DlgLnkInfoTab : "Thông tin Liên kết",
+DlgLnkTargetTab : "HÆ°á»ng tá»i",
+
+DlgLnkType : "Kiá»u Liên kết",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "Neo trong trang nà y",
+DlgLnkTypeEMail : "E-Mail",
+DlgLnkProto : "Giao thức",
+DlgLnkProtoOther : "<khác>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "Chá»n má»t Neo",
+DlgLnkAnchorByName : "Theo Tên Neo",
+DlgLnkAnchorById : "Theo Äá»nh danh Element",
+DlgLnkNoAnchors : "<Không có Neo nà o trong tà i liá»u>",
+DlgLnkEMail : "E-Mail",
+DlgLnkEMailSubject : "Tá»±a Äá» Thông Äiá»p",
+DlgLnkEMailBody : "Ná»i dung Thông Äiá»p",
+DlgLnkUpload : "Tải lên",
+DlgLnkBtnUpload : "Gá»i lên Máy chủ",
+
+DlgLnkTarget : "HÆ°á»ng tá»i",
+DlgLnkTargetFrame : "<frame>",
+DlgLnkTargetPopup : "<cá»a sá» popup>",
+DlgLnkTargetBlank : "Cá»a sá» má»i (_blank)",
+DlgLnkTargetParent : "Cá»a sá» cha (_parent)",
+DlgLnkTargetSelf : "Cùng cá»a sá» (_self)",
+DlgLnkTargetTop : "Cá»a sá» trên cùng(_top)",
+DlgLnkTargetFrameName : "Tên Frame hÆ°á»ng tá»i",
+DlgLnkPopWinName : "Tên Cá»a sá» Popup",
+DlgLnkPopWinFeat : "Cá»a sá» Popup Äặc trÆ°ng",
+DlgLnkPopResize : "KÃch thÆ°á»c thay Äá»i",
+DlgLnkPopLocation : "Location Bar", //MISSING
+DlgLnkPopMenu : "Thanh Menu",
+DlgLnkPopScroll : "Thanh cuá»n",
+DlgLnkPopStatus : "Thanh trạng thái",
+DlgLnkPopToolbar : "Thanh công cụ",
+DlgLnkPopFullScrn : "Toà n mà n hình (IE)",
+DlgLnkPopDependent : "Dependent (Netscape)",
+DlgLnkPopWidth : "Rá»ng",
+DlgLnkPopHeight : "Cao",
+DlgLnkPopLeft : "VỠtrà Trái",
+DlgLnkPopTop : "VỠtrà Trên",
+
+DlnLnkMsgNoUrl : "Hãy ÄÆ°a và o Liên kết URL",
+DlnLnkMsgNoEMail : "Hãy ÄÆ°a và o Äá»a chá» e-mail",
+DlnLnkMsgNoAnchor : "Hãy chá»n má»t Neo",
+
+// Color Dialog
+DlgColorTitle : "Chá»n mà u",
+DlgColorBtnClear : "Xoá",
+DlgColorHighlight : "Äiá»m sáng",
+DlgColorSelected : "Äã chá»n",
+
+// Smiley Dialog
+DlgSmileyTitle : "Chèn má»t hình cảm xúc",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "Chá»n ký tá»± Äặc biá»t",
+
+// Table Dialog
+DlgTableTitle : "Thuá»c tÃnh bảng",
+DlgTableRows : "Dòng",
+DlgTableColumns : "Cá»t",
+DlgTableBorder : "Cỡ ÄÆ°á»ng viá»n",
+DlgTableAlign : "Alignment",
+DlgTableAlignNotSet : "<Không thiết láºp>",
+DlgTableAlignLeft : "Trái",
+DlgTableAlignCenter : "Giữa",
+DlgTableAlignRight : "Phải",
+DlgTableWidth : "Rá»ng",
+DlgTableWidthPx : "Äiá»m",
+DlgTableWidthPc : "%",
+DlgTableHeight : "Cao",
+DlgTableCellSpace : "Khoảng cách Ã",
+DlgTableCellPad : "Äá»m Ã",
+DlgTableCaption : "Äầu Äá»",
+
+// Table Cell Dialog
+DlgCellTitle : "Thuá»c tÃnh Ã",
+DlgCellWidth : "Rá»ng",
+DlgCellWidthPx : "Äiá»m",
+DlgCellWidthPc : "%",
+DlgCellHeight : "Cao",
+DlgCellWordWrap : "Dà n từ",
+DlgCellWordWrapNotSet : "<Không thiết láºp>",
+DlgCellWordWrapYes : "Äá»ng ý",
+DlgCellWordWrapNo : "Không",
+DlgCellHorAlign : "Sắp xếp Ngang",
+DlgCellHorAlignNotSet : "<Không thiết láºp>",
+DlgCellHorAlignLeft : "Trái",
+DlgCellHorAlignCenter : "Giữa",
+DlgCellHorAlignRight: "Phải",
+DlgCellVerAlign : "Sắp xếp Dá»c",
+DlgCellVerAlignNotSet : "<Không thiết láºp>",
+DlgCellVerAlignTop : "Trên",
+DlgCellVerAlignMiddle : "Giữa",
+DlgCellVerAlignBottom : "DÆ°á»i",
+DlgCellVerAlignBaseline : "Baseline",
+DlgCellRowSpan : "Rows Span",
+DlgCellCollSpan : "Columns Span",
+DlgCellBackColor : "Mà u ná»n",
+DlgCellBorderColor : "Mà u viá»n",
+DlgCellBtnSelect : "Chá»n...",
+
+// Find Dialog
+DlgFindTitle : "Tìm",
+DlgFindFindBtn : "Tìm",
+DlgFindNotFoundMsg : "Chuá»i cần tìm không thấy.",
+
+// Replace Dialog
+DlgReplaceTitle : "Thay thế",
+DlgReplaceFindLbl : "Tìm gì:",
+DlgReplaceReplaceLbl : "Thay bằng:",
+DlgReplaceCaseChk : "Äúng chứ HOA/thÆ°á»ng",
+DlgReplaceReplaceBtn : "Thay thế",
+DlgReplaceReplAllBtn : "Thay thế Tất cả",
+DlgReplaceWordChk : "Äúng từ",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "An ninh trình duyá»t của bạn Äược thiết láºp không cho phép trình soạn thảo tá»± Äá»ng thá»±c thi lá»nh dán. Hãy sá» dụng bà n phÃm cho lá»nh nà y (Ctrl+V).",
+PasteErrorCut : "An ninh trình duyá»t của bạn Äược thiết láºp không cho phép trình soạn thảo tá»± Äá»ng thá»±c thi lá»nh cắt. Hãy sá» dụng bà n phÃm cho lá»nh nà y (Ctrl+X).",
+PasteErrorCopy : "An ninh trình duyá»t của bạn Äược thiết láºp không cho phép trình soạn thảo tá»± Äá»ng thá»±c thi lá»nh sao chép. Hãy sá» dụng bà n phÃm cho lá»nh nà y (Ctrl+C).",
+
+PasteAsText : "Dán ký tá»± ÄÆ¡n thuần",
+PasteFromWord : "Dán vá»i Äá»nh dạng Word",
+
+DlgPasteMsg2 : "Hãy dán và o trong khung bên dÆ°á»i, sá» dụng tá» hợp phÃm (<STRONG>Ctrl+V</STRONG>) và nhấn và o ná»t <STRONG>Äá»ng ý</STRONG>.",
+DlgPasteIgnoreFont : "Chấp nháºn các Äá»nh dạng Font",
+DlgPasteRemoveStyles : "Xoá tất cả các Äá»nh dạng Styles",
+DlgPasteCleanBox : "Xoá sạch",
+
+
+// Color Picker
+ColorAutomatic : "Tá»± Äá»ng",
+ColorMoreColors : "Mà u khác...",
+
+// Document Properties
+DocProps : "Thuá»c tÃnh tà i liá»u",
+
+// Anchor Dialog
+DlgAnchorTitle : "Thuá»c tÃnh Neo",
+DlgAnchorName : "Tên Neo",
+DlgAnchorErrorName : "Hãy ÄÆ°a và o tên Neo",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "Không trong từ Äiá»n",
+DlgSpellChangeTo : "Change to",
+DlgSpellBtnIgnore : "Bá» qua",
+DlgSpellBtnIgnoreAll : "BỠqua Tất cả",
+DlgSpellBtnReplace : "Thay thế",
+DlgSpellBtnReplaceAll : "Thay thế Tất cả",
+DlgSpellBtnUndo : "Phục há»i lại",
+DlgSpellNoSuggestions : "- Không Äá» xuất -",
+DlgSpellProgress : "Äang tiến hà nh kiá»m tra chÃnh tả...",
+DlgSpellNoMispell : "Hoà n tất kiá»m tra chÃnh tả: Không có lá»i chÃnh tả",
+DlgSpellNoChanges : "Hoà n tất kiá»m tra chÃnh tả: Không từ nà o Äược thay Äá»i",
+DlgSpellOneChange : "Hoà n tất kiá»m tra chÃnh tả: Má»t từ Äã Äược thay Äá»i",
+DlgSpellManyChanges : "Hoà n tất kiá»m tra chÃnh tả: %1 từ Äã Äược thay Äá»i",
+
+IeSpellDownload : "Chức nÄng kiá»m tra chÃnh tả chÆ°a Äược cà i Äặt. Bạn có tải vá» ngay bây giá»?",
+
+// Button Dialog
+DlgButtonText : "Text (Value)",
+DlgButtonType : "Kiá»u",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "Tên",
+DlgCheckboxValue : "Giá trá»",
+DlgCheckboxSelected : "Äã chá»n",
+
+// Form Dialog
+DlgFormName : "Tên",
+DlgFormAction : "Action",
+DlgFormMethod : "Phương thức",
+
+// Select Field Dialog
+DlgSelectName : "Tên",
+DlgSelectValue : "Giá trá»",
+DlgSelectSize : "KÃch cỡ",
+DlgSelectLines : "dòng",
+DlgSelectChkMulti : "Chấp nháºn chá»n nhiá»u",
+DlgSelectOpAvail : "Available Options",
+DlgSelectOpText : "Text",
+DlgSelectOpValue : "Giá trá»",
+DlgSelectBtnAdd : "Thêm",
+DlgSelectBtnModify : "Thay Äá»i",
+DlgSelectBtnUp : "Lên",
+DlgSelectBtnDown : "Xuá»ng",
+DlgSelectBtnSetValue : "Giá trá» Äược chá»n",
+DlgSelectBtnDelete : "Xoá",
+
+// Textarea Dialog
+DlgTextareaName : "Tên",
+DlgTextareaCols : "Cá»t",
+DlgTextareaRows : "Dòng",
+
+// Text Field Dialog
+DlgTextName : "Tên",
+DlgTextValue : "Giá trá»",
+DlgTextCharWidth : "Rá»ng",
+DlgTextMaxChars : "Sá» Ký tá»± tá»i Äa",
+DlgTextType : "Kiá»u",
+DlgTextTypeText : "Ký tự",
+DlgTextTypePass : "Máºt khẩu",
+
+// Hidden Field Dialog
+DlgHiddenName : "Tên",
+DlgHiddenValue : "Giá trá»",
+
+// Bulleted List Dialog
+BulletedListProp : "Thuá»c tÃnh Danh sách Bulleted",
+NumberedListProp : "Thuá»c tÃnh Danh sách Sá»",
+DlgLstType : "Kiá»u",
+DlgLstTypeCircle : "Tròn",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "Vuông",
+DlgLstTypeNumbers : "Sá» (1, 2, 3)",
+DlgLstTypeLCase : "Chữ cái thÆ°á»ng (a, b, c)",
+DlgLstTypeUCase : "Chữ cái hoa (A, B, C)",
+DlgLstTypeSRoman : "Sá» LaMa thÆ°á»ng (i, ii, iii)",
+DlgLstTypeLRoman : "Sá» LaMa hoa (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "Toà n thá»",
+DlgDocBackTab : "Ná»n",
+DlgDocColorsTab : "Mà u sắc và Biên",
+DlgDocMetaTab : "Meta Data",
+
+DlgDocPageTitle : "Tiêu Äá» Trang",
+DlgDocLangDir : "ÄÆ°á»ng dẫn Ngôn Ngữ",
+DlgDocLangDirLTR : "Trái sang Phải (LTR)",
+DlgDocLangDirRTL : "Phải sang Trái (RTL)",
+DlgDocLangCode : "Mã Ngôn ngữ",
+DlgDocCharSet : "Character Set Encoding",
+DlgDocCharSetOther : "Other Character Set Encoding",
+
+DlgDocDocType : "Kiá»u Äá» mục Tà i liá»u",
+DlgDocDocTypeOther : "Kiá»u Äá» mục Tà i liá»u khác",
+DlgDocIncXHTML : "Bao gá»m cả Äá»nh nghÄ©a XHTML",
+DlgDocBgColor : "Mà u ná»n",
+DlgDocBgImage : "Background Image URL",
+DlgDocBgNoScroll : "Không cuá»n ná»n",
+DlgDocCText : "Text",
+DlgDocCLink : "Liên kết",
+DlgDocCVisited : "Liên kết Äã viếng thÄm",
+DlgDocCActive : "Liên kết Hoạt Äá»ng",
+DlgDocMargins : "Biên của Trang",
+DlgDocMaTop : "Trên",
+DlgDocMaLeft : "Trái",
+DlgDocMaRight : "Phải",
+DlgDocMaBottom : "DÆ°á»i",
+DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
+DlgDocMeDescr : "Mô tả tà i liá»u",
+DlgDocMeAuthor : "Tác giả",
+DlgDocMeCopy : "Bản quyá»n",
+DlgDocPreview : "Xem trÆ°á»c",
+
+// Templates Dialog
+Templates : "Mẫu dựng sẵn",
+DlgTemplatesTitle : "Ná»i dung Mẫu dá»±ng sẵn",
+DlgTemplatesSelMsg : "Please select the template to open in the editor<br>(the actual contents will be lost):",
+DlgTemplatesLoading : "Äang nạp Danh sách Mẫu dá»±ng sẵn. Xin hãy chá»...",
+DlgTemplatesNoTpl : "(Không có Mẫu dá»±ng sẵn nà o Äược Äá»nh nghÄ©a)",
+
+// About Dialog
+DlgAboutAboutTab : "Giá»i thiá»u",
+DlgAboutBrowserInfoTab : "Thông tin trình duyá»t",
+DlgAboutVersion : "phiên bản",
+DlgAboutLicense : "Licensed under the terms of the GNU Lesser General Public License",
+DlgAboutInfo : "Thông tin thêm hãy Äến"
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh-cn.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh-cn.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh-cn.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: zh-cn.js
+ * Chinese Simplified language file.
+ *
+ * File Authors:
+ * NetRube (NetRube at 126.com)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "æå å·¥å
·æ ",
+ToolbarExpand : "å±å¼å·¥å
·æ ",
+
+// Toolbar Items and Context Menu
+Save : "ä¿å",
+NewPage : "æ°å»º",
+Preview : "é¢è§",
+Cut : "åªå",
+Copy : "å¤å¶",
+Paste : "ç²è´´",
+PasteText : "ç²è´´ä¸ºæ æ ¼å¼ææ¬",
+PasteWord : "ä» MS Word ç²è´´",
+Print : "æå°",
+SelectAll : "å
¨é",
+RemoveFormat : "æ¸
é¤æ ¼å¼",
+InsertLinkLbl : "è¶
é¾æ¥",
+InsertLink : "æå
¥/ç¼è¾è¶
é¾æ¥",
+RemoveLink : "åæ¶è¶
é¾æ¥",
+Anchor : "æå
¥/ç¼è¾éç¹é¾æ¥",
+InsertImageLbl : "å¾è±¡",
+InsertImage : "æå
¥/ç¼è¾å¾è±¡",
+InsertFlashLbl : "Flash",
+InsertFlash : "æå
¥/ç¼è¾ Flash",
+InsertTableLbl : "è¡¨æ ¼",
+InsertTable : "æå
¥/ç¼è¾è¡¨æ ¼",
+InsertLineLbl : "水平线",
+InsertLine : "æå
¥æ°´å¹³çº¿",
+InsertSpecialCharLbl: "ç¹æ®ç¬¦å·",
+InsertSpecialChar : "æå
¥ç¹æ®ç¬¦å·",
+InsertSmileyLbl : "表æ
符",
+InsertSmiley : "æå
¥è¡¨æ
å¾æ ",
+About : "å
³äº FCKeditor",
+Bold : "å ç²",
+Italic : "å¾æ",
+Underline : "ä¸å线",
+StrikeThrough : "å é¤çº¿",
+Subscript : "ä¸æ ",
+Superscript : "ä¸æ ",
+LeftJustify : "左对é½",
+CenterJustify : "å±
ä¸å¯¹é½",
+RightJustify : "å³å¯¹é½",
+BlockJustify : "两端对é½",
+DecreaseIndent : "åå°ç¼©è¿é",
+IncreaseIndent : "å¢å 缩è¿é",
+Undo : "æ¤æ¶",
+Redo : "éå",
+NumberedListLbl : "ç¼å·å表",
+NumberedList : "æå
¥/å é¤ç¼å·å表",
+BulletedListLbl : "项ç®å表",
+BulletedList : "æå
¥/å é¤é¡¹ç®å表",
+ShowTableBorders : "æ¾ç¤ºè¡¨æ ¼è¾¹æ¡",
+ShowDetails : "æ¾ç¤ºè¯¦ç»èµæ",
+Style : "æ ·å¼",
+FontFormat : "æ ¼å¼",
+Font : "åä½",
+FontSize : "大å°",
+TextColor : "ææ¬é¢è²",
+BGColor : "èæ¯é¢è²",
+Source : "æºä»£ç ",
+Find : "æ¥æ¾",
+Replace : "æ¿æ¢",
+SpellCheck : "æ¼åæ£æ¥",
+UniversalKeyboard : "软é®ç",
+
+Form : "表å",
+Checkbox : "å¤éæ¡",
+RadioButton : "åéæé®",
+TextField : "åè¡ææ¬",
+Textarea : "å¤è¡ææ¬",
+HiddenField : "éèå",
+Button : "æé®",
+SelectionField : "å表/èå",
+ImageButton : "å¾åå",
+
+// Context Menu
+EditLink : "ç¼è¾è¶
é¾æ¥",
+InsertRow : "æå
¥è¡",
+DeleteRows : "å é¤è¡",
+InsertColumn : "æå
¥å",
+DeleteColumns : "å é¤å",
+InsertCell : "æå
¥åå
æ ¼",
+DeleteCells : "å é¤åå
æ ¼",
+MergeCells : "å并åå
æ ¼",
+SplitCell : "æååå
æ ¼",
+CellProperties : "åå
æ ¼å±æ§",
+TableProperties : "è¡¨æ ¼å±æ§",
+ImageProperties : "å¾è±¡å±æ§",
+FlashProperties : "Flash å±æ§",
+
+AnchorProp : "éç¹é¾æ¥å±æ§",
+ButtonProp : "æé®å±æ§",
+CheckboxProp : "å¤éæ¡å±æ§",
+HiddenFieldProp : "éèåå±æ§",
+RadioButtonProp : "åéæé®å±æ§",
+ImageButtonProp : "å¾ååå±æ§",
+TextFieldProp : "åè¡ææ¬å±æ§",
+SelectionFieldProp : "èå/å表å±æ§",
+TextareaProp : "å¤è¡ææ¬å±æ§",
+FormProp : "表åå±æ§",
+
+FontFormats : "æ®é;å¸¦æ ¼å¼ç;å°å;æ é¢ 1;æ é¢ 2;æ é¢ 3;æ é¢ 4;æ é¢ 5;æ é¢ 6;段è½(DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "æ£å¨å¤ç XHTMLï¼è¯·ç¨ç...",
+Done : "å®æ",
+PasteWordConfirm : "æ¨è¦ç²è´´çå
容好åæ¯æ¥èª MS Wordï¼æ¯å¦è¦æ¸
é¤ MS Word æ ¼å¼ååç²è´´ï¼",
+NotCompatiblePaste : "该å½ä»¤éè¦ Internet Explorer 5.5 ææ´é«çæ¬çæ¯æï¼æ¯å¦æ常è§ç²è´´è¿è¡ï¼",
+UnknownToolbarItem : "æªç¥å·¥å
·æ é¡¹ç® \"%1\"",
+UnknownCommand : "æªç¥å½ä»¤å称 \"%1\"",
+NotImplemented : "å½ä»¤æ æ³æ§è¡",
+UnknownToolbarSet : "å·¥å
·æ 设置 \"%1\" ä¸åå¨",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "ç¡®å®",
+DlgBtnCancel : "åæ¶",
+DlgBtnClose : "å
³é",
+DlgBtnBrowseServer : "æµè§æå¡å¨",
+DlgAdvancedTag : "é«çº§",
+DlgOpOther : "<å
¶å®>",
+DlgInfoTab : "ä¿¡æ¯",
+DlgAlertUrl : "请æå
¥ URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<没æ设置>",
+DlgGenId : "ID",
+DlgGenLangDir : "è¯è¨æ¹å",
+DlgGenLangDirLtr : "ä»å·¦å°å³ (LTR)",
+DlgGenLangDirRtl : "ä»å³å°å·¦ (RTL)",
+DlgGenLangCode : "è¯è¨ä»£ç ",
+DlgGenAccessKey : "访é®é®",
+DlgGenName : "å称",
+DlgGenTabIndex : "Tab é®æ¬¡åº",
+DlgGenLongDescr : "详ç»è¯´æå°å",
+DlgGenClass : "æ ·å¼ç±»å称",
+DlgGenTitle : "æ é¢",
+DlgGenContType : "å
容类å",
+DlgGenLinkCharset : "å符ç¼ç ",
+DlgGenStyle : "è¡å
æ ·å¼",
+
+// Image Dialog
+DlgImgTitle : "å¾è±¡å±æ§",
+DlgImgInfoTab : "å¾è±¡",
+DlgImgBtnUpload : "åéå°æå¡å¨ä¸",
+DlgImgURL : "æºæ件",
+DlgImgUpload : "ä¸ä¼ ",
+DlgImgAlt : "æ¿æ¢ææ¬",
+DlgImgWidth : "宽度",
+DlgImgHeight : "é«åº¦",
+DlgImgLockRatio : "éå®æ¯ä¾",
+DlgBtnResetSize : "æ¢å¤å°ºå¯¸",
+DlgImgBorder : "è¾¹æ¡å¤§å°",
+DlgImgHSpace : "æ°´å¹³é´è·",
+DlgImgVSpace : "åç´é´è·",
+DlgImgAlign : "对é½æ¹å¼",
+DlgImgAlignLeft : "左对é½",
+DlgImgAlignAbsBottom: "ç»å¯¹åºè¾¹",
+DlgImgAlignAbsMiddle: "ç»å¯¹å±
ä¸",
+DlgImgAlignBaseline : "åºçº¿",
+DlgImgAlignBottom : "åºè¾¹",
+DlgImgAlignMiddle : "å±
ä¸",
+DlgImgAlignRight : "å³å¯¹é½",
+DlgImgAlignTextTop : "ææ¬ä¸æ¹",
+DlgImgAlignTop : "顶端",
+DlgImgPreview : "é¢è§",
+DlgImgAlertUrl : "请è¾å
¥å¾è±¡å°å",
+DlgImgLinkTab : "é¾æ¥",
+
+// Flash Dialog
+DlgFlashTitle : "Flash å±æ§",
+DlgFlashChkPlay : "èªå¨ææ¾",
+DlgFlashChkLoop : "循ç¯",
+DlgFlashChkMenu : "å¯ç¨ Flash èå",
+DlgFlashScale : "缩æ¾",
+DlgFlashScaleAll : "å
¨é¨æ¾ç¤º",
+DlgFlashScaleNoBorder : "æ è¾¹æ¡",
+DlgFlashScaleFit : "ä¸¥æ ¼å¹é
",
+
+// Link Dialog
+DlgLnkWindowTitle : "è¶
é¾æ¥",
+DlgLnkInfoTab : "è¶
é¾æ¥ä¿¡æ¯",
+DlgLnkTargetTab : "ç®æ ",
+
+DlgLnkType : "è¶
é¾æ¥ç±»å",
+DlgLnkTypeURL : "è¶
é¾æ¥",
+DlgLnkTypeAnchor : "页å
éç¹é¾æ¥",
+DlgLnkTypeEMail : "çµåé®ä»¶",
+DlgLnkProto : "åè®®",
+DlgLnkProtoOther : "<å
¶å®>",
+DlgLnkURL : "å°å",
+DlgLnkAnchorSel : "éæ©ä¸ä¸ªéç¹",
+DlgLnkAnchorByName : "æéç¹å称",
+DlgLnkAnchorById : "æéç¹ ID",
+DlgLnkNoAnchors : "<æ¤æ档没æå¯ç¨çéç¹>",
+DlgLnkEMail : "å°å",
+DlgLnkEMailSubject : "主é¢",
+DlgLnkEMailBody : "å
容",
+DlgLnkUpload : "ä¸ä¼ ",
+DlgLnkBtnUpload : "åéå°æå¡å¨ä¸",
+
+DlgLnkTarget : "ç®æ ",
+DlgLnkTargetFrame : "<æ¡æ¶>",
+DlgLnkTargetPopup : "<å¼¹åºçªå£>",
+DlgLnkTargetBlank : "æ°çªå£ (_blank)",
+DlgLnkTargetParent : "ç¶çªå£ (_parent)",
+DlgLnkTargetSelf : "æ¬çªå£ (_self)",
+DlgLnkTargetTop : "æ´é¡µ (_top)",
+DlgLnkTargetFrameName : "ç®æ æ¡æ¶å称",
+DlgLnkPopWinName : "å¼¹åºçªå£å称",
+DlgLnkPopWinFeat : "å¼¹åºçªå£å±æ§",
+DlgLnkPopResize : "è°æ´å¤§å°",
+DlgLnkPopLocation : "å°åæ ",
+DlgLnkPopMenu : "èåæ ",
+DlgLnkPopScroll : "æ»å¨æ¡",
+DlgLnkPopStatus : "ç¶ææ ",
+DlgLnkPopToolbar : "å·¥å
·æ ",
+DlgLnkPopFullScrn : "å
¨å± (IE)",
+DlgLnkPopDependent : "ä¾é (NS)",
+DlgLnkPopWidth : "宽",
+DlgLnkPopHeight : "é«",
+DlgLnkPopLeft : "å·¦",
+DlgLnkPopTop : "å³",
+
+DlnLnkMsgNoUrl : "请è¾å
¥è¶
é¾æ¥å°å",
+DlnLnkMsgNoEMail : "请è¾å
¥çµåé®ä»¶å°å",
+DlnLnkMsgNoAnchor : "请éæ©ä¸ä¸ªéç¹",
+
+// Color Dialog
+DlgColorTitle : "éæ©é¢è²",
+DlgColorBtnClear : "æ¸
é¤",
+DlgColorHighlight : "é¢è§",
+DlgColorSelected : "éæ©",
+
+// Smiley Dialog
+DlgSmileyTitle : "æå
¥è¡¨æ
å¾æ ",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "éæ©ç¹æ®ç¬¦å·",
+
+// Table Dialog
+DlgTableTitle : "è¡¨æ ¼å±æ§",
+DlgTableRows : "è¡æ°",
+DlgTableColumns : "åæ°",
+DlgTableBorder : "è¾¹æ¡",
+DlgTableAlign : "对é½",
+DlgTableAlignNotSet : "<没æ设置>",
+DlgTableAlignLeft : "左对é½",
+DlgTableAlignCenter : "å±
ä¸",
+DlgTableAlignRight : "å³å¯¹é½",
+DlgTableWidth : "宽度",
+DlgTableWidthPx : "åç´ ",
+DlgTableWidthPc : "ç¾åæ¯",
+DlgTableHeight : "é«åº¦",
+DlgTableCellSpace : "é´è·",
+DlgTableCellPad : "è¾¹è·",
+DlgTableCaption : "æ é¢",
+
+// Table Cell Dialog
+DlgCellTitle : "åå
æ ¼å±æ§",
+DlgCellWidth : "宽度",
+DlgCellWidthPx : "åç´ ",
+DlgCellWidthPc : "ç¾åæ¯",
+DlgCellHeight : "é«åº¦",
+DlgCellWordWrap : "èªå¨æ¢è¡",
+DlgCellWordWrapNotSet : "<没æ设置>",
+DlgCellWordWrapYes : "æ¯",
+DlgCellWordWrapNo : "å¦",
+DlgCellHorAlign : "水平对é½",
+DlgCellHorAlignNotSet : "<没æ设置>",
+DlgCellHorAlignLeft : "左对é½",
+DlgCellHorAlignCenter : "å±
ä¸",
+DlgCellHorAlignRight: "å³å¯¹é½",
+DlgCellVerAlign : "åç´å¯¹é½",
+DlgCellVerAlignNotSet : "<没æ设置>",
+DlgCellVerAlignTop : "顶端",
+DlgCellVerAlignMiddle : "å±
ä¸",
+DlgCellVerAlignBottom : "åºé¨",
+DlgCellVerAlignBaseline : "åºçº¿",
+DlgCellRowSpan : "纵跨è¡æ°",
+DlgCellCollSpan : "横跨åæ°",
+DlgCellBackColor : "èæ¯é¢è²",
+DlgCellBorderColor : "è¾¹æ¡é¢è²",
+DlgCellBtnSelect : "éæ©...",
+
+// Find Dialog
+DlgFindTitle : "æ¥æ¾",
+DlgFindFindBtn : "æ¥æ¾",
+DlgFindNotFoundMsg : "æå®ææ¬æ²¡ææ¾å°ã",
+
+// Replace Dialog
+DlgReplaceTitle : "æ¿æ¢",
+DlgReplaceFindLbl : "æ¥æ¾:",
+DlgReplaceReplaceLbl : "æ¿æ¢:",
+DlgReplaceCaseChk : "åºå大å°å",
+DlgReplaceReplaceBtn : "æ¿æ¢",
+DlgReplaceReplAllBtn : "å
¨é¨æ¿æ¢",
+DlgReplaceWordChk : "å
¨åå¹é
",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "æ¨çæµè§å¨å®å
¨è®¾ç½®ä¸å
许ç¼è¾å¨èªå¨æ§è¡ç²è´´æä½ï¼è¯·ä½¿ç¨é®çå¿«æ·é®(Ctrl+V)æ¥å®æã",
+PasteErrorCut : "æ¨çæµè§å¨å®å
¨è®¾ç½®ä¸å
许ç¼è¾å¨èªå¨æ§è¡åªåæä½ï¼è¯·ä½¿ç¨é®çå¿«æ·é®(Ctrl+X)æ¥å®æã",
+PasteErrorCopy : "æ¨çæµè§å¨å®å
¨è®¾ç½®ä¸å
许ç¼è¾å¨èªå¨æ§è¡å¤å¶æä½ï¼è¯·ä½¿ç¨é®çå¿«æ·é®(Ctrl+C)æ¥å®æã",
+
+PasteAsText : "ç²è´´ä¸ºæ æ ¼å¼ææ¬",
+PasteFromWord : "ä» MS Word ç²è´´",
+
+DlgPasteMsg2 : "请使ç¨é®çå¿«æ·é®(<STRONG>Ctrl+V</STRONG>)æå
容ç²è´´å°ä¸é¢çæ¹æ¡éï¼åæ <STRONG>ç¡®å®</STRONG>ã",
+DlgPasteIgnoreFont : "å¿½ç¥ Font æ ç¾",
+DlgPasteRemoveStyles : "æ¸
ç CSS æ ·å¼",
+DlgPasteCleanBox : "æ¸
空ä¸é¢å
容",
+
+
+// Color Picker
+ColorAutomatic : "èªå¨",
+ColorMoreColors : "å
¶å®é¢è²...",
+
+// Document Properties
+DocProps : "页é¢å±æ§",
+
+// Anchor Dialog
+DlgAnchorTitle : "å½åéç¹",
+DlgAnchorName : "éç¹å称",
+DlgAnchorErrorName : "请è¾å
¥éç¹å称",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "没æå¨åå
¸é",
+DlgSpellChangeTo : "æ´æ¹ä¸º",
+DlgSpellBtnIgnore : "忽ç¥",
+DlgSpellBtnIgnoreAll : "å
¨é¨å¿½ç¥",
+DlgSpellBtnReplace : "æ¿æ¢",
+DlgSpellBtnReplaceAll : "å
¨é¨æ¿æ¢",
+DlgSpellBtnUndo : "æ¤æ¶",
+DlgSpellNoSuggestions : "- 没æ建议 -",
+DlgSpellProgress : "æ£å¨è¿è¡æ¼åæ£æ¥...",
+DlgSpellNoMispell : "æ¼åæ£æ¥å®æï¼æ²¡æåç°æ¼åé误",
+DlgSpellNoChanges : "æ¼åæ£æ¥å®æï¼æ²¡ææ´æ¹ä»»ä½åè¯",
+DlgSpellOneChange : "æ¼åæ£æ¥å®æï¼æ´æ¹äºä¸ä¸ªåè¯",
+DlgSpellManyChanges : "æ¼åæ£æ¥å®æï¼æ´æ¹äº %1 个åè¯",
+
+IeSpellDownload : "æ¼åæ£æ¥æ件è¿æ²¡å®è£
ï¼ä½ æ¯å¦æ³ç°å¨å°±ä¸è½½ï¼",
+
+// Button Dialog
+DlgButtonText : "æ ç¾(å¼)",
+DlgButtonType : "ç±»å",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "å称",
+DlgCheckboxValue : "éå®å¼",
+DlgCheckboxSelected : "å·²å¾é",
+
+// Form Dialog
+DlgFormName : "å称",
+DlgFormAction : "å¨ä½",
+DlgFormMethod : "æ¹æ³",
+
+// Select Field Dialog
+DlgSelectName : "å称",
+DlgSelectValue : "éå®",
+DlgSelectSize : "é«åº¦",
+DlgSelectLines : "è¡",
+DlgSelectChkMulti : "å
许å¤é",
+DlgSelectOpAvail : "å表å¼",
+DlgSelectOpText : "æ ç¾",
+DlgSelectOpValue : "å¼",
+DlgSelectBtnAdd : "æ°å¢",
+DlgSelectBtnModify : "ä¿®æ¹",
+DlgSelectBtnUp : "ä¸ç§»",
+DlgSelectBtnDown : "ä¸ç§»",
+DlgSelectBtnSetValue : "设为åå§åæ¶éå®",
+DlgSelectBtnDelete : "å é¤",
+
+// Textarea Dialog
+DlgTextareaName : "å称",
+DlgTextareaCols : "å符宽度",
+DlgTextareaRows : "è¡æ°",
+
+// Text Field Dialog
+DlgTextName : "å称",
+DlgTextValue : "åå§å¼",
+DlgTextCharWidth : "å符宽度",
+DlgTextMaxChars : "æå¤å符æ°",
+DlgTextType : "ç±»å",
+DlgTextTypeText : "ææ¬",
+DlgTextTypePass : "å¯ç ",
+
+// Hidden Field Dialog
+DlgHiddenName : "å称",
+DlgHiddenValue : "åå§å¼",
+
+// Bulleted List Dialog
+BulletedListProp : "项ç®å表å±æ§",
+NumberedListProp : "ç¼å·å表å±æ§",
+DlgLstType : "å表类å",
+DlgLstTypeCircle : "åå",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "æ¹å",
+DlgLstTypeNumbers : "æ°å (1, 2, 3)",
+DlgLstTypeLCase : "å°ååæ¯ (a, b, c)",
+DlgLstTypeUCase : "大ååæ¯ (A, B, C)",
+DlgLstTypeSRoman : "å°åç½é©¬æ°å (i, ii, iii)",
+DlgLstTypeLRoman : "大åç½é©¬æ°å (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "常è§",
+DlgDocBackTab : "èæ¯",
+DlgDocColorsTab : "é¢è²åè¾¹è·",
+DlgDocMetaTab : "Meta æ°æ®",
+
+DlgDocPageTitle : "页é¢æ é¢",
+DlgDocLangDir : "è¯è¨æ¹å",
+DlgDocLangDirLTR : "ä»å·¦å°å³ (LTR)",
+DlgDocLangDirRTL : "ä»å³å°å·¦ (RTL)",
+DlgDocLangCode : "è¯è¨ä»£ç ",
+DlgDocCharSet : "å符ç¼ç ",
+DlgDocCharSetOther : "å
¶å®å符ç¼ç ",
+
+DlgDocDocType : "æ档类å",
+DlgDocDocTypeOther : "å
¶å®æ档类å",
+DlgDocIncXHTML : "å
å« XHTML 声æ",
+DlgDocBgColor : "èæ¯é¢è²",
+DlgDocBgImage : "èæ¯å¾å",
+DlgDocBgNoScroll : "ä¸æ»å¨èæ¯å¾å",
+DlgDocCText : "ææ¬",
+DlgDocCLink : "è¶
é¾æ¥",
+DlgDocCVisited : "已访é®çè¶
é¾æ¥",
+DlgDocCActive : "æ´»å¨è¶
é¾æ¥",
+DlgDocMargins : "页é¢è¾¹è·",
+DlgDocMaTop : "ä¸",
+DlgDocMaLeft : "å·¦",
+DlgDocMaRight : "å³",
+DlgDocMaBottom : "ä¸",
+DlgDocMeIndex : "页é¢ç´¢å¼å
³é®å (ç¨åè§éå·[,]åé)",
+DlgDocMeDescr : "页é¢è¯´æ",
+DlgDocMeAuthor : "ä½è
",
+DlgDocMeCopy : "çæ",
+DlgDocPreview : "é¢è§",
+
+// Templates Dialog
+Templates : "模æ¿",
+DlgTemplatesTitle : "å
容模æ¿",
+DlgTemplatesSelMsg : "请éæ©ç¼è¾å¨å
容模æ¿<br>(å½åå
容å°ä¼è¢«æ¸
é¤æ¿æ¢):",
+DlgTemplatesLoading : "æ£å¨å 载模æ¿å表ï¼è¯·ç¨ç...",
+DlgTemplatesNoTpl : "(没æ模æ¿)",
+
+// About Dialog
+DlgAboutAboutTab : "å
³äº",
+DlgAboutBrowserInfoTab : "æµè§å¨ä¿¡æ¯",
+DlgAboutVersion : "çæ¬",
+DlgAboutLicense : "åºäº GNU éç¨å
Œ
±è®¸å¯è¯ææåå¸ ",
+DlgAboutInfo : "è¦è·å¾æ´å¤ä¿¡æ¯è¯·è®¿é® "
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/lang/zh.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,475 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: zh.js
+ * Chinese Traditional language file.
+ *
+ * File Authors:
+ * Zak Fong (zakfong at yahoo.com.tw)
+ */
+
+var FCKLang =
+{
+// Language direction : "ltr" (left to right) or "rtl" (right to left).
+Dir : "ltr",
+
+ToolbarCollapse : "é±èé¢æ¿",
+ToolbarExpand : "顯示é¢æ¿",
+
+// Toolbar Items and Context Menu
+Save : "å²å",
+NewPage : "éæ°æªæ¡",
+Preview : "é 覽",
+Cut : "åªä¸",
+Copy : "è¤è£½",
+Paste : "è²¼ä¸",
+PasteText : "è²¼çºç´æåæ ¼å¼",
+PasteWord : "èª Word è²¼ä¸",
+Print : "åå°",
+SelectAll : "å
¨é¸",
+RemoveFormat : "æ¸
é¤æ ¼å¼",
+InsertLinkLbl : "è¶
é£çµ",
+InsertLink : "æå
¥/編輯è¶
é£çµ",
+RemoveLink : "移é¤è¶
é£çµ",
+Anchor : "æå
¥/編輯é¨é»",
+InsertImageLbl : "å½±å",
+InsertImage : "æå
¥/編輯影å",
+InsertFlashLbl : "Flash",
+InsertFlash : "æå
¥/編輯 Flash",
+InsertTableLbl : "è¡¨æ ¼",
+InsertTable : "æå
¥/ç·¨è¼¯è¡¨æ ¼",
+InsertLineLbl : "æ°´å¹³ç·",
+InsertLine : "æå
¥æ°´å¹³ç·",
+InsertSpecialCharLbl: "ç¹æ®ç¬¦è",
+InsertSpecialChar : "æå
¥ç¹æ®ç¬¦è",
+InsertSmileyLbl : "表æ
符è",
+InsertSmiley : "æå
¥è¡¨æ
符è",
+About : "éæ¼ FCKeditor",
+Bold : "ç²é«",
+Italic : "æé«",
+Underline : "åºç·",
+StrikeThrough : "åªé¤ç·",
+Subscript : "ä¸æ¨",
+Superscript : "ä¸æ¨",
+LeftJustify : "é å·¦å°é½",
+CenterJustify : "ç½®ä¸",
+RightJustify : "é å³å°é½",
+BlockJustify : "å·¦å³å°é½",
+DecreaseIndent : "æ¸å°ç¸®æ",
+IncreaseIndent : "å¢å 縮æ",
+Undo : "復å",
+Redo : "éè¤",
+NumberedListLbl : "ç·¨èæ¸
å®",
+NumberedList : "æå
¥/移é¤ç·¨èæ¸
å®",
+BulletedListLbl : "é
ç®æ¸
å®",
+BulletedList : "æå
¥/移é¤é
ç®æ¸
å®",
+ShowTableBorders : "é¡¯ç¤ºè¡¨æ ¼éæ¡",
+ShowDetails : "顯示詳細è³æ",
+Style : "樣å¼",
+FontFormat : "æ ¼å¼",
+Font : "åé«",
+FontSize : "大å°",
+TextColor : "æåé¡è²",
+BGColor : "èæ¯é¡è²",
+Source : "åå§ç¢¼",
+Find : "å°æ¾",
+Replace : "å代",
+SpellCheck : "æ¼å檢æ¥",
+UniversalKeyboard : "ååéµç¤",
+
+Form : "表å®",
+Checkbox : "æ ¸åæ¹å¡",
+RadioButton : "é¸é
æé",
+TextField : "æåæ¹å¡",
+Textarea : "æååå",
+HiddenField : "é±èæ¬ä½",
+Button : "æé",
+SelectionField : "æ¸
å®/é¸å®",
+ImageButton : "å½±åæé",
+
+// Context Menu
+EditLink : "編輯è¶
é£çµ",
+InsertRow : "æå
¥å",
+DeleteRows : "åªé¤å",
+InsertColumn : "æå
¥æ¬",
+DeleteColumns : "åªé¤æ¬",
+InsertCell : "æå
¥å²åæ ¼",
+DeleteCells : "åªé¤å²åæ ¼",
+MergeCells : "åä½µå²åæ ¼",
+SplitCell : "åå²å²åæ ¼",
+CellProperties : "å²åæ ¼å±¬æ§",
+TableProperties : "è¡¨æ ¼å±¬æ§",
+ImageProperties : "å½±å屬æ§",
+FlashProperties : "Flash 屬æ§",
+
+AnchorProp : "é¨é»å±¬æ§",
+ButtonProp : "æé屬æ§",
+CheckboxProp : "æ ¸åæ¹å¡å±¬æ§",
+HiddenFieldProp : "é±èæ¬ä½å±¬æ§",
+RadioButtonProp : "é¸é
æé屬æ§",
+ImageButtonProp : "å½±åæé屬æ§",
+TextFieldProp : "æåæ¹å¡å±¬æ§",
+SelectionFieldProp : "æ¸
å®/é¸å®å±¬æ§",
+TextareaProp : "æååå屬æ§",
+FormProp : "表å®å±¬æ§",
+
+FontFormats : "ä¸è¬;æ ¼å¼å;å°å;æ¨é¡ 1;æ¨é¡ 2;æ¨é¡ 3;æ¨é¡ 4;æ¨é¡ 5;æ¨é¡ 6;æ®µè½ (DIV)",
+
+// Alerts and Messages
+ProcessingXHTML : "èç XHTML ä¸ï¼è«ç¨åâ¦",
+Done : "å®æ",
+PasteWordConfirm : "æ¨æ³è¦è²¼ä¸çæåä¼¼ä¹æ¯èª Word è¤è£½èä¾ï¼è«åæ¨æ¯å¦è¦å
æ¸
é¤ Word çæ ¼å¼å¾åè¡è²¼ä¸ï¼",
+NotCompatiblePaste : "æ¤æ令å
å¨ Internet Explorer 5.5 æ以ä¸ççæ¬ææãè«åæ¨æ¯å¦åæä¸æ¸
é¤æ ¼å¼å³è²¼ä¸ï¼",
+UnknownToolbarItem : "æªç¥å·¥å
·åé
ç® \"%1\"",
+UnknownCommand : "æªç¥æ令å稱 \"%1\"",
+NotImplemented : "å°æªå®è£æ¤æ令",
+UnknownToolbarSet : "å·¥å
·åè¨å® \"%1\" ä¸åå¨",
+NoActiveX : "You browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
+
+// Dialogs
+DlgBtnOK : "確å®",
+DlgBtnCancel : "åæ¶",
+DlgBtnClose : "éé",
+DlgBtnBrowseServer : "ç覽伺æå¨ç«¯",
+DlgAdvancedTag : "é²é",
+DlgOpOther : "<å
¶ä»>",
+DlgInfoTab : "è³è¨",
+DlgAlertUrl : "è«æå
¥ URL",
+
+// General Dialogs Labels
+DlgGenNotSet : "<å°æªè¨å®>",
+DlgGenId : "ID",
+DlgGenLangDir : "èªè¨æ¹å",
+DlgGenLangDirLtr : "ç±å·¦èå³ (LTR)",
+DlgGenLangDirRtl : "ç±å³èå·¦ (RTL)",
+DlgGenLangCode : "èªè¨ä»£ç¢¼",
+DlgGenAccessKey : "ååéµ",
+DlgGenName : "å稱",
+DlgGenTabIndex : "å®ä½é åº",
+DlgGenLongDescr : "詳細 URL",
+DlgGenClass : "樣å¼è¡¨é¡å¥",
+DlgGenTitle : "æ¨é¡",
+DlgGenContType : "å
§å®¹é¡å",
+DlgGenLinkCharset : "é£çµè³æºä¹ç·¨ç¢¼",
+DlgGenStyle : "樣å¼",
+
+// Image Dialog
+DlgImgTitle : "å½±å屬æ§",
+DlgImgInfoTab : "å½±åè³è¨",
+DlgImgBtnUpload : "ä¸å³è³ä¼ºæå¨",
+DlgImgURL : "URL",
+DlgImgUpload : "ä¸å³",
+DlgImgAlt : "æ¿ä»£æå",
+DlgImgWidth : "寬度",
+DlgImgHeight : "é«åº¦",
+DlgImgLockRatio : "çæ¯ä¾",
+DlgBtnResetSize : "éè¨çºå大å°",
+DlgImgBorder : "éæ¡",
+DlgImgHSpace : "æ°´å¹³è·é¢",
+DlgImgVSpace : "åç´è·é¢",
+DlgImgAlign : "å°é½",
+DlgImgAlignLeft : "é å·¦å°é½",
+DlgImgAlignAbsBottom: "çµå°ä¸æ¹",
+DlgImgAlignAbsMiddle: "çµå°ä¸é",
+DlgImgAlignBaseline : "åºæºç·",
+DlgImgAlignBottom : "é ä¸å°é½",
+DlgImgAlignMiddle : "ç½®ä¸å°é½",
+DlgImgAlignRight : "é å³å°é½",
+DlgImgAlignTextTop : "æåä¸æ¹",
+DlgImgAlignTop : "é ä¸å°é½",
+DlgImgPreview : "é 覽",
+DlgImgAlertUrl : "è«è¼¸å
¥å½±å URL",
+DlgImgLinkTab : "è¶
é£çµ",
+
+// Flash Dialog
+DlgFlashTitle : "Flash 屬æ§",
+DlgFlashChkPlay : "èªåææ¾",
+DlgFlashChkLoop : "éè¤",
+DlgFlashChkMenu : "éåé¸å®",
+DlgFlashScale : "縮æ¾",
+DlgFlashScaleAll : "å
¨é¨é¡¯ç¤º",
+DlgFlashScaleNoBorder : "ç¡éæ¡",
+DlgFlashScaleFit : "精確符å",
+
+// Link Dialog
+DlgLnkWindowTitle : "è¶
é£çµ",
+DlgLnkInfoTab : "è¶
é£çµè³è¨",
+DlgLnkTargetTab : "ç®æ¨",
+
+DlgLnkType : "è¶
é£æ¥é¡å",
+DlgLnkTypeURL : "URL",
+DlgLnkTypeAnchor : "æ¬é é¨é»",
+DlgLnkTypeEMail : "é»åéµä»¶",
+DlgLnkProto : "éè¨åå®",
+DlgLnkProtoOther : "<å
¶ä»>",
+DlgLnkURL : "URL",
+DlgLnkAnchorSel : "è«é¸æé¨é»",
+DlgLnkAnchorByName : "ä¾é¨é»å稱",
+DlgLnkAnchorById : "ä¾å
件 ID",
+DlgLnkNoAnchors : "<æ¬æ件å°ç¡å¯ç¨ä¹é¨é»>",
+DlgLnkEMail : "é»åéµä»¶",
+DlgLnkEMailSubject : "éµä»¶ä¸»æ¨",
+DlgLnkEMailBody : "éµä»¶å
§å®¹",
+DlgLnkUpload : "ä¸å³",
+DlgLnkBtnUpload : "å³éè³ä¼ºæå¨",
+
+DlgLnkTarget : "ç®æ¨",
+DlgLnkTargetFrame : "<æ¡æ¶>",
+DlgLnkTargetPopup : "<快顯è¦çª>",
+DlgLnkTargetBlank : "æ°è¦çª (_blank)",
+DlgLnkTargetParent : "ç¶è¦çª (_parent)",
+DlgLnkTargetSelf : "æ¬è¦çª (_self)",
+DlgLnkTargetTop : "æä¸å±¤è¦çª (_top)",
+DlgLnkTargetFrameName : "ç®æ¨æ¡æ¶å稱",
+DlgLnkPopWinName : "快顯è¦çªå稱",
+DlgLnkPopWinFeat : "快顯è¦çªå±¬æ§",
+DlgLnkPopResize : "å¯èª¿æ´å¤§å°",
+DlgLnkPopLocation : "網åå",
+DlgLnkPopMenu : "é¸å®å",
+DlgLnkPopScroll : "æ²è»¸",
+DlgLnkPopStatus : "çæ
å",
+DlgLnkPopToolbar : "å·¥å
·å",
+DlgLnkPopFullScrn : "å
¨è¢å¹ (IE)",
+DlgLnkPopDependent : "å¾å±¬ (NS)",
+DlgLnkPopWidth : "寬",
+DlgLnkPopHeight : "é«",
+DlgLnkPopLeft : "å·¦",
+DlgLnkPopTop : "å³",
+
+DlnLnkMsgNoUrl : "è«è¼¸å
¥æ¬²é£çµç URL",
+DlnLnkMsgNoEMail : "è«è¼¸å
¥é»åéµä»¶ä½å",
+DlnLnkMsgNoAnchor : "è«é¸æé¨é»",
+
+// Color Dialog
+DlgColorTitle : "è«é¸æé¡è²",
+DlgColorBtnClear : "æ¸
é¤",
+DlgColorHighlight : "é 覽",
+DlgColorSelected : "é¸æ",
+
+// Smiley Dialog
+DlgSmileyTitle : "æå
¥è¡¨æ
符è",
+
+// Special Character Dialog
+DlgSpecialCharTitle : "è«é¸æç¹æ®ç¬¦è",
+
+// Table Dialog
+DlgTableTitle : "è¡¨æ ¼å±¬æ§",
+DlgTableRows : "åæ¸",
+DlgTableColumns : "æ¬æ¸",
+DlgTableBorder : "éæ¡",
+DlgTableAlign : "å°é½",
+DlgTableAlignNotSet : "<æªè¨å®>",
+DlgTableAlignLeft : "é å·¦å°é½",
+DlgTableAlignCenter : "ç½®ä¸",
+DlgTableAlignRight : "é å³å°é½",
+DlgTableWidth : "寬度",
+DlgTableWidthPx : "åç´ ",
+DlgTableWidthPc : "ç¾åæ¯",
+DlgTableHeight : "é«åº¦",
+DlgTableCellSpace : "éè·",
+DlgTableCellPad : "å
§è·",
+DlgTableCaption : "æ¨é¡",
+
+// Table Cell Dialog
+DlgCellTitle : "å²åæ ¼å±¬æ§",
+DlgCellWidth : "寬度",
+DlgCellWidthPx : "åç´ ",
+DlgCellWidthPc : "ç¾åæ¯",
+DlgCellHeight : "é«åº¦",
+DlgCellWordWrap : "èªåæè¡",
+DlgCellWordWrapNotSet : "<å°æªè¨å®>",
+DlgCellWordWrapYes : "æ¯",
+DlgCellWordWrapNo : "å¦",
+DlgCellHorAlign : "æ°´å¹³å°é½",
+DlgCellHorAlignNotSet : "<å°æªè¨å®>",
+DlgCellHorAlignLeft : "é å·¦å°é½",
+DlgCellHorAlignCenter : "ç½®ä¸",
+DlgCellHorAlignRight: "é å³å°é½",
+DlgCellVerAlign : "åç´å°é½",
+DlgCellVerAlignNotSet : "<å°æªè¨å®>",
+DlgCellVerAlignTop : "é ä¸å°é½",
+DlgCellVerAlignMiddle : "ç½®ä¸",
+DlgCellVerAlignBottom : "é ä¸å°é½",
+DlgCellVerAlignBaseline : "åºæºç·",
+DlgCellRowSpan : "åä½µåæ¸",
+DlgCellCollSpan : "åä½µæ¬æ°",
+DlgCellBackColor : "èæ¯é¡è²",
+DlgCellBorderColor : "éæ¡é¡è²",
+DlgCellBtnSelect : "è«é¸æâ¦",
+
+// Find Dialog
+DlgFindTitle : "å°æ¾",
+DlgFindFindBtn : "å°æ¾",
+DlgFindNotFoundMsg : "æªæ¾å°æå®çæåã",
+
+// Replace Dialog
+DlgReplaceTitle : "å代",
+DlgReplaceFindLbl : "å°æ¾:",
+DlgReplaceReplaceLbl : "å代:",
+DlgReplaceCaseChk : "大å°å¯«é ç¸ç¬¦",
+DlgReplaceReplaceBtn : "å代",
+DlgReplaceReplAllBtn : "å
¨é¨å代",
+DlgReplaceWordChk : "å
¨åç¸ç¬¦",
+
+// Paste Operations / Dialog
+PasteErrorPaste : "æ¨çç覽å¨çå®å
¨æ§è¨å®ä¸å
編輯å¨èªåå·è¡è²¼ä¸åä½ãè«ä½¿ç¨å¿«æ·éµ (Ctrl+V) è²¼ä¸ã",
+PasteErrorCut : "æ¨çç覽å¨çå®å
¨æ§è¨å®ä¸å
編輯å¨èªåå·è¡åªä¸åä½ãè«ä½¿ç¨å¿«æ·éµ (Ctrl+X) åªä¸ã",
+PasteErrorCopy : "æ¨çç覽å¨çå®å
¨æ§è¨å®ä¸å
編輯å¨èªåå·è¡è¤è£½åä½ãè«ä½¿ç¨å¿«æ·éµ (Ctrl+C) è¤è£½ã",
+
+PasteAsText : "è²¼çºç´æåæ ¼å¼",
+PasteFromWord : "èª Word è²¼ä¸",
+
+DlgPasteMsg2 : "è«ä½¿ç¨å¿«æ·éµ (<strong>Ctrl+V</strong>) è²¼å°ä¸æ¹ååä¸ä¸¦æä¸ <strong>確å®</strong>",
+DlgPasteIgnoreFont : "移é¤ååè¨å®",
+DlgPasteRemoveStyles : "移é¤æ¨£å¼è¨å®",
+DlgPasteCleanBox : "æ¸
é¤æååå",
+
+
+// Color Picker
+ColorAutomatic : "èªå",
+ColorMoreColors : "æ´å¤é¡è²â¦",
+
+// Document Properties
+DocProps : "æ件屬æ§",
+
+// Anchor Dialog
+DlgAnchorTitle : "å½åé¨é»",
+DlgAnchorName : "é¨é»å稱",
+DlgAnchorErrorName : "è«è¼¸å
¥é¨é»å稱",
+
+// Speller Pages Dialog
+DlgSpellNotInDic : "ä¸å¨åå
¸ä¸",
+DlgSpellChangeTo : "æ´æ¹çº",
+DlgSpellBtnIgnore : "忽ç¥",
+DlgSpellBtnIgnoreAll : "å
¨é¨å¿½ç¥",
+DlgSpellBtnReplace : "å代",
+DlgSpellBtnReplaceAll : "å
¨é¨å代",
+DlgSpellBtnUndo : "復å",
+DlgSpellNoSuggestions : "- ç¡å»ºè°å¼ -",
+DlgSpellProgress : "é²è¡æ¼å檢æ¥ä¸â¦",
+DlgSpellNoMispell : "æ¼å檢æ¥å®æï¼æªç¼ç¾æ¼åé¯èª¤",
+DlgSpellNoChanges : "æ¼å檢æ¥å®æï¼æªæ´æ¹ä»»ä½å®å",
+DlgSpellOneChange : "æ¼å檢æ¥å®æï¼æ´æ¹äº 1 åå®å",
+DlgSpellManyChanges : "æ¼å檢æ¥å®æï¼æ´æ¹äº %1 åå®å",
+
+IeSpellDownload : "å°æªå®è£æ¼å檢æ¥å
件ãæ¨æ¯å¦æ³è¦ç¾å¨ä¸è¼ï¼",
+
+// Button Dialog
+DlgButtonText : "顯示æå (å¼)",
+DlgButtonType : "é¡å",
+
+// Checkbox and Radio Button Dialogs
+DlgCheckboxName : "å稱",
+DlgCheckboxValue : "é¸åå¼",
+DlgCheckboxSelected : "å·²é¸å",
+
+// Form Dialog
+DlgFormName : "å稱",
+DlgFormAction : "åä½",
+DlgFormMethod : "æ¹æ³",
+
+// Select Field Dialog
+DlgSelectName : "å稱",
+DlgSelectValue : "é¸åå¼",
+DlgSelectSize : "大å°",
+DlgSelectLines : "è¡",
+DlgSelectChkMulti : "å¯å¤é¸",
+DlgSelectOpAvail : "å¯ç¨é¸é
",
+DlgSelectOpText : "顯示æå",
+DlgSelectOpValue : "å¼",
+DlgSelectBtnAdd : "æ°å¢",
+DlgSelectBtnModify : "ä¿®æ¹",
+DlgSelectBtnUp : "ä¸ç§»",
+DlgSelectBtnDown : "ä¸ç§»",
+DlgSelectBtnSetValue : "è¨çºé è¨å¼",
+DlgSelectBtnDelete : "åªé¤",
+
+// Textarea Dialog
+DlgTextareaName : "å稱",
+DlgTextareaCols : "åå
寬度",
+DlgTextareaRows : "åæ¸",
+
+// Text Field Dialog
+DlgTextName : "å稱",
+DlgTextValue : "å¼",
+DlgTextCharWidth : "åå
寬度",
+DlgTextMaxChars : "æå¤åå
æ¸",
+DlgTextType : "é¡å",
+DlgTextTypeText : "æå",
+DlgTextTypePass : "å¯ç¢¼",
+
+// Hidden Field Dialog
+DlgHiddenName : "å稱",
+DlgHiddenValue : "å¼",
+
+// Bulleted List Dialog
+BulletedListProp : "é
ç®æ¸
å®å±¬æ§",
+NumberedListProp : "ç·¨èæ¸
å®å±¬æ§",
+DlgLstType : "æ¸
å®é¡å",
+DlgLstTypeCircle : "åå",
+DlgLstTypeDisc : "Disc", //MISSING
+DlgLstTypeSquare : "æ¹å¡",
+DlgLstTypeNumbers : "æ¸å (1, 2, 3)",
+DlgLstTypeLCase : "å°å¯«åæ¯ (a, b, c)",
+DlgLstTypeUCase : "大寫åæ¯ (A, B, C)",
+DlgLstTypeSRoman : "å°å¯«ç¾
馬æ¸å (i, ii, iii)",
+DlgLstTypeLRoman : "大寫ç¾
馬æ¸å (I, II, III)",
+
+// Document Properties Dialog
+DlgDocGeneralTab : "ä¸è¬",
+DlgDocBackTab : "èæ¯",
+DlgDocColorsTab : "顯è²èéç",
+DlgDocMetaTab : "Meta è³æ",
+
+DlgDocPageTitle : "é é¢æ¨é¡",
+DlgDocLangDir : "èªè¨æ¹å",
+DlgDocLangDirLTR : "ç±å·¦èå³ (LTR)",
+DlgDocLangDirRTL : "ç±å³èå·¦ (RTL)",
+DlgDocLangCode : "èªè¨ä»£ç¢¼",
+DlgDocCharSet : "åå
編碼",
+DlgDocCharSetOther : "å
¶ä»åå
編碼",
+
+DlgDocDocType : "æ件é¡å",
+DlgDocDocTypeOther : "å
¶ä»æ件é¡å",
+DlgDocIncXHTML : "å
å« XHTML å®ç¾©",
+DlgDocBgColor : "èæ¯é¡è²",
+DlgDocBgImage : "èæ¯å½±å",
+DlgDocBgNoScroll : "浮水å°",
+DlgDocCText : "æå",
+DlgDocCLink : "è¶
é£çµ",
+DlgDocCVisited : "å·²ç覽éçè¶
é£çµ",
+DlgDocCActive : "ä½ç¨ä¸çè¶
é£çµ",
+DlgDocMargins : "é é¢éç",
+DlgDocMaTop : "ä¸",
+DlgDocMaLeft : "å·¦",
+DlgDocMaRight : "å³",
+DlgDocMaBottom : "ä¸",
+DlgDocMeIndex : "æ件索å¼ééµå (ç¨åå½¢éè[,]åé)",
+DlgDocMeDescr : "æ件說æ",
+DlgDocMeAuthor : "ä½è
",
+DlgDocMeCopy : "çæ¬ææ",
+DlgDocPreview : "é 覽",
+
+// Templates Dialog
+Templates : "樣ç",
+DlgTemplatesTitle : "å
§å®¹æ¨£ç",
+DlgTemplatesSelMsg : "è«é¸æ欲éåç樣ç<br> (åæçå
§å®¹å°æ被æ¸
é¤):",
+DlgTemplatesLoading : "è®å樣çæ¸
å®ä¸ï¼è«ç¨åâ¦",
+DlgTemplatesNoTpl : "(ç¡æ¨£ç)",
+
+// About Dialog
+DlgAboutAboutTab : "éæ¼",
+DlgAboutBrowserInfoTab : "ç覽å¨è³è¨",
+DlgAboutVersion : "çæ¬",
+DlgAboutLicense : "ä¾æ GNU è¼å¯¬é¬å
Œ
±è¨±å¯è(LGPL)ç¼ä½",
+DlgAboutInfo : "æ³ç²å¾æ´å¤è³è¨è«è³ "
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fck_placeholder.html
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fck_placeholder.html 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fck_placeholder.html 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,96 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_placeholder.html
+ * Placeholder Plugin.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<html>
+ <head>
+ <title>Placeholder Properties</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+ <meta content="noindex, nofollow" name="robots">
+ <script language="javascript">
+
+var oEditor = window.parent.InnerDialogLoaded() ;
+var FCKLang = oEditor.FCKLang ;
+var FCKPlaceholders = oEditor.FCKPlaceholders ;
+
+window.onload = function ()
+{
+ // First of all, translate the dialog box texts
+ oEditor.FCKLanguageManager.TranslatePage( document ) ;
+
+ LoadSelected() ;
+
+ // Show the "Ok" button.
+ window.parent.SetOkButton( true ) ;
+}
+
+var eSelected = oEditor.FCKSelection.GetSelectedElement() ;
+
+function LoadSelected()
+{
+ if ( !eSelected )
+ return ;
+
+ if ( eSelected.tagName == 'SPAN' && eSelected._fckplaceholder )
+ document.getElementById('txtName').value = eSelected._fckplaceholder ;
+ else
+ eSelected == null ;
+}
+
+function Ok()
+{
+ var sValue = document.getElementById('txtName').value ;
+
+ if ( eSelected && eSelected._fckplaceholder == sValue )
+ return true ;
+
+ if ( sValue.length == 0 )
+ {
+ alert( FCKLang.PlaceholderErrNoName ) ;
+ return false ;
+ }
+
+ if ( FCKPlaceholders.Exist( sValue ) )
+ {
+ alert( FCKLang.PlaceholderErrNameInUse ) ;
+ return false ;
+ }
+
+ FCKPlaceholders.Add( sValue ) ;
+ return true ;
+}
+
+ </script>
+ </head>
+ <body scroll="no" style="OVERFLOW: hidden">
+ <table height="100%" cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td>
+ <table cellSpacing="0" cellPadding="0" align="center" border="0">
+ <tr>
+ <td>
+ <span fckLang="PlaceholderDlgName">Placeholder Name</span><br>
+ <input id="txtName" type="text">
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+ </table>
+ </body>
+</html>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fckplugin.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fckplugin.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/fckplugin.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,177 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckplugin.js
+ * Plugin to insert "Placeholders" in the editor.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// Register the related command.
+FCKCommands.RegisterCommand( 'Placeholder', new FCKDialogCommand( 'Placeholder', FCKLang.PlaceholderDlgTitle, FCKPlugins.Items['placeholder'].Path + 'fck_placeholder.html', 340, 170 ) ) ;
+
+// Create the "Plaholder" toolbar button.
+var oPlaceholderItem = new FCKToolbarButton( 'Placeholder', FCKLang.PlaceholderBtn ) ;
+oPlaceholderItem.IconPath = FCKPlugins.Items['placeholder'].Path + 'placeholder.gif' ;
+FCKToolbarItems.RegisterItem( 'Placeholder', oPlaceholderItem ) ;
+
+
+// The object used for all Placeholder operations.
+var FCKPlaceholders = new Object() ;
+
+// Add a new placeholder at the actual selection.
+FCKPlaceholders.Add = function( name )
+{
+ var oSpan = FCK.CreateElement( 'SPAN' ) ;
+ this.SetupSpan( oSpan, name ) ;
+}
+
+FCKPlaceholders.SetupSpan = function( span, name )
+{
+ span.innerHTML = '[[ ' + name + ' ]]' ;
+
+ span.style.backgroundColor = '#ffff00' ;
+ span.style.color = '#000000' ;
+
+ if ( FCKBrowserInfo.IsGecko )
+ span.style.cursor = 'default' ;
+
+ span._fckplaceholder = name ;
+ span.contentEditable = false ;
+
+ // To avoid it to be resized.
+ span.onresizestart = function()
+ {
+ FCK.EditorWindow.event.returnValue = false ;
+ return false ;
+ }
+}
+
+// On Gecko we must do this trick so the user select all the SPAN when clicking on it.
+FCKPlaceholders._SetupClickListener = function()
+{
+ FCKPlaceholders._ClickListener = function( e )
+ {
+ if ( e.target.tagName == 'SPAN' && e.target._fckplaceholder )
+ FCKSelection.SelectNode( e.target ) ;
+ }
+
+ FCK.EditorDocument.addEventListener( 'click', FCKPlaceholders._ClickListener, true ) ;
+}
+
+// Open the Placeholder dialog on double click.
+FCKPlaceholders.OnDoubleClick = function( span )
+{
+ if ( span.tagName == 'SPAN' && span._fckplaceholder )
+ FCKCommands.GetCommand( 'Placeholder' ).Execute() ;
+}
+
+FCK.RegisterDoubleClickHandler( FCKPlaceholders.OnDoubleClick, 'SPAN' ) ;
+
+// Check if a Placholder name is already in use.
+FCKPlaceholders.Exist = function( name )
+{
+ var aSpans = FCK.EditorDocument.getElementsByTagName( 'SPAN' )
+
+ for ( var i = 0 ; i < aSpans.length ; i++ )
+ {
+ if ( aSpans[i]._fckplaceholder == name )
+ return true ;
+ }
+}
+
+if ( FCKBrowserInfo.IsIE )
+{
+ FCKPlaceholders.Redraw = function()
+ {
+ var aPlaholders = FCK.EditorDocument.body.innerText.match( /\[\[[^\[\]]+\]\]/g ) ;
+ if ( !aPlaholders )
+ return ;
+
+ var oRange = FCK.EditorDocument.body.createTextRange() ;
+
+ for ( var i = 0 ; i < aPlaholders.length ; i++ )
+ {
+ if ( oRange.findText( aPlaholders[i] ) )
+ {
+ var sName = aPlaholders[i].match( /\[\[\s*([^\]]*?)\s*\]\]/ )[1] ;
+ oRange.pasteHTML( '<span style="color: #000000; background-color: #ffff00" contenteditable="false" _fckplaceholder="' + sName + '">' + aPlaholders[i] + '</span>' ) ;
+ }
+ }
+ }
+}
+else
+{
+ FCKPlaceholders.Redraw = function()
+ {
+ var oInteractor = FCK.EditorDocument.createTreeWalker( FCK.EditorDocument.body, NodeFilter.SHOW_TEXT, FCKPlaceholders._AcceptNode, true ) ;
+
+ var aNodes = new Array() ;
+
+ while ( oNode = oInteractor.nextNode() )
+ {
+ aNodes[ aNodes.length ] = oNode ;
+ }
+
+ for ( var n = 0 ; n < aNodes.length ; n++ )
+ {
+ var aPieces = aNodes[n].nodeValue.split( /(\[\[[^\[\]]+\]\])/g ) ;
+
+ for ( var i = 0 ; i < aPieces.length ; i++ )
+ {
+ if ( aPieces[i].length > 0 )
+ {
+ if ( aPieces[i].indexOf( '[[' ) == 0 )
+ {
+ var sName = aPieces[i].match( /\[\[\s*([^\]]*?)\s*\]\]/ )[1] ;
+
+ var oSpan = FCK.EditorDocument.createElement( 'span' ) ;
+ FCKPlaceholders.SetupSpan( oSpan, sName ) ;
+
+ aNodes[n].parentNode.insertBefore( oSpan, aNodes[n] ) ;
+ }
+ else
+ aNodes[n].parentNode.insertBefore( FCK.EditorDocument.createTextNode( aPieces[i] ) , aNodes[n] ) ;
+ }
+ }
+
+ aNodes[n].parentNode.removeChild( aNodes[n] ) ;
+ }
+
+ FCKPlaceholders._SetupClickListener() ;
+ }
+
+ FCKPlaceholders._AcceptNode = function( node )
+ {
+ if ( /\[\[[^\[\]]+\]\]/.test( node.nodeValue ) )
+ return NodeFilter.FILTER_ACCEPT ;
+ else
+ return NodeFilter.FILTER_SKIP ;
+ }
+}
+
+FCK.Events.AttachEvent( 'OnAfterSetHTML', FCKPlaceholders.Redraw ) ;
+
+// The "Redraw" method must be called on startup.
+FCKPlaceholders.Redraw() ;
+
+// We must process the SPAN tags to replace then with the real resulting value of the placeholder.
+FCKXHtml.TagProcessors['span'] = function( node, htmlNode )
+{
+ if ( htmlNode._fckplaceholder )
+ node = FCKXHtml.XML.createTextNode( '[[' + htmlNode._fckplaceholder + ']]' ) ;
+ else
+ FCKXHtml._AppendChildNodes( node, htmlNode, false ) ;
+
+ return node ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/de.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/de.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/de.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,23 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: de.js
+ * Placholder German language file.
+ *
+ * File Authors:
+ * José Fontanil
+ */
+FCKLang.PlaceholderBtn = 'Einfügen/editieren Platzhalter' ;
+FCKLang.PlaceholderDlgTitle = 'Platzhalter Eigenschaften' ;
+FCKLang.PlaceholderDlgName = 'Platzhalter Name' ;
+FCKLang.PlaceholderErrNoName = 'Bitte den Namen des Platzhalters schreiben' ;
+FCKLang.PlaceholderErrNameInUse = 'Der angegebene Namen ist schon in Gebrauch' ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/en.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/en.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/en.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,23 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: en.js
+ * Placholder English language file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+FCKLang.PlaceholderBtn = 'Insert/Edit Placeholder' ;
+FCKLang.PlaceholderDlgTitle = 'Placeholder Properties' ;
+FCKLang.PlaceholderDlgName = 'Placeholder Name' ;
+FCKLang.PlaceholderErrNoName = 'Please type the placeholder name' ;
+FCKLang.PlaceholderErrNameInUse = 'The specified name is already in use' ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/fr.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/fr.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/fr.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,23 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fr.js
+ * Placholder Italian language file.
+ *
+ * File Authors:
+ * Hubert Garrido (liane at users.sourceforge.net)
+ */
+FCKLang.PlaceholderBtn = 'Insérer/Modifier Substitut' ;
+FCKLang.PlaceholderDlgTitle = 'Propriétés de Substitut' ;
+FCKLang.PlaceholderDlgName = 'Nom de Substitut' ;
+FCKLang.PlaceholderErrNoName = 'Veuillez saisir le nom de Substitut' ;
+FCKLang.PlaceholderErrNameInUse = 'Ce nom est déjà utilisé' ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/it.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/it.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/lang/it.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,23 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: it.js
+ * Placholder Italian language file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+FCKLang.PlaceholderBtn = 'Aggiungi/Modifica Placeholder' ;
+FCKLang.PlaceholderDlgTitle = 'Proprietà del Placeholder' ;
+FCKLang.PlaceholderDlgName = 'Nome del Placeholder' ;
+FCKLang.PlaceholderErrNoName = 'Digitare il nome del placeholder' ;
+FCKLang.PlaceholderErrNameInUse = 'Il nome inserito è già in uso' ;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/placeholder.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/placeholder/placeholder.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/simplecommands/fckplugin.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/simplecommands/fckplugin.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/simplecommands/fckplugin.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,25 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckplugin.js
+ * This plugin register Toolbar items for the combos modifying the style to
+ * not show the box.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKToolbarItems.RegisterItem( 'SourceSimple' , new FCKToolbarButton( 'Source', FCKLang.Source, null, FCK_TOOLBARITEM_ONLYICON, true, true ) ) ;
+FCKToolbarItems.RegisterItem( 'StyleSimple' , new FCKToolbarStyleCombo( null, FCK_TOOLBARITEM_ONLYTEXT ) ) ;
+FCKToolbarItems.RegisterItem( 'FontNameSimple' , new FCKToolbarFontsCombo( null, FCK_TOOLBARITEM_ONLYTEXT ) ) ;
+FCKToolbarItems.RegisterItem( 'FontSizeSimple' , new FCKToolbarFontSizeCombo( null, FCK_TOOLBARITEM_ONLYTEXT ) ) ;
+FCKToolbarItems.RegisterItem( 'FontFormatSimple', new FCKToolbarFontFormatCombo( null, FCK_TOOLBARITEM_ONLYTEXT ) ) ;
Added: zope.html/trunk/src/zope/html/fckeditor/editor/plugins/tablecommands/fckplugin.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/plugins/tablecommands/fckplugin.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/plugins/tablecommands/fckplugin.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,28 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckplugin.js
+ * This plugin register the required Toolbar items to be able to insert the
+ * toolbar commands in the toolbar.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKToolbarItems.RegisterItem( 'TableInsertRow' , new FCKToolbarButton( 'TableInsertRow' , FCKLang.InsertRow ) ) ;
+FCKToolbarItems.RegisterItem( 'TableDeleteRows' , new FCKToolbarButton( 'TableDeleteRows' , FCKLang.DeleteRows ) ) ;
+FCKToolbarItems.RegisterItem( 'TableInsertColumn' , new FCKToolbarButton( 'TableInsertColumn' , FCKLang.InsertColumn ) ) ;
+FCKToolbarItems.RegisterItem( 'TableDeleteColumns' , new FCKToolbarButton( 'TableDeleteColumns', FCKLang.DeleteColumns ) ) ;
+FCKToolbarItems.RegisterItem( 'TableInsertCell' , new FCKToolbarButton( 'TableInsertCell' , FCKLang.InsertCell ) ) ;
+FCKToolbarItems.RegisterItem( 'TableDeleteCells' , new FCKToolbarButton( 'TableDeleteCells' , FCKLang.DeleteCells ) ) ;
+FCKToolbarItems.RegisterItem( 'TableMergeCells' , new FCKToolbarButton( 'TableMergeCells' , FCKLang.MergeCells ) ) ;
+FCKToolbarItems.RegisterItem( 'TableSplitCell' , new FCKToolbarButton( 'TableSplitCell' , FCKLang.SplitCell ) ) ;
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_contextmenu.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_contextmenu.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_contextmenu.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,245 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_contextmenu.css
+ * Styles used by the context menu and panels.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+.CM_ContextMenu, .CM_ContextMenu *
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
+}
+
+.CM_ContextMenu
+{
+ border: 1px solid #8f8f73;
+ padding: 2px;
+ background-color: #ffffff;
+}
+
+.CM_Option, .CM_Over, .CM_Disabled
+{
+ padding: 0px 3px;
+ height: 18px;
+ cursor: default;
+}
+
+.CM_Option, .CM_Over
+{
+ cursor: hand;
+}
+
+.CM_Option .CM_Icon, .CM_Disabled .CM_Icon, .CM_Separator .CM_Icon
+{
+ background-color: #e3e3c7;
+}
+
+.CM_Option .CM_Icon IMG
+{
+ filter: alpha(opacity=70);
+ -moz-opacity:0.70;
+}
+
+.CM_Disabled
+{
+ background-color: #ffffff;
+}
+
+.CM_Disabled .CM_Icon IMG, .CM_Disabled .CM_Label
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity:0.30;
+}
+
+.CM_Option .CM_Label, .CM_Over .CM_Label
+{
+ padding: 1px 10px 1px 3px;
+}
+
+.CM_Over
+{
+ color: #fff;
+ background-color: #8f8f73;
+}
+
+.CM_Over .CM_Icon
+{
+ background-color: #737357;
+}
+
+.CM_Separator TD
+{
+ height: 3px;
+}
+
+.CM_Separator .CM_Label DIV
+{
+ border-top: #b9b99d 1px solid;
+ margin-left: 2px;
+ margin-right: 3px;
+}
+
+/*
+ ### Panel Styles
+*/
+
+.FCK_Panel
+{
+ border: #8f8f73 1px solid;
+ padding: 2px;
+ background-color: #ffffff;
+}
+
+.FCK_Panel, .FCK_Panel TD
+{
+ font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
+ font-size: 11px;
+}
+
+/*
+ ### Color Selector Panel
+*/
+
+.ColorBoxBorder
+{
+ border: #808080 1px solid;
+ position: static;
+}
+
+.ColorBox
+{
+ font-size: 1px;
+ width: 10px;
+ position: static;
+ height: 10px;
+}
+
+.ColorDeselected, .ColorSelected
+{
+ cursor: default;
+}
+
+.ColorDeselected
+{
+ border: #ffffff 1px solid;
+ padding: 2px;
+ float: left;
+}
+
+.ColorSelected
+{
+ border: #330066 1px solid;
+ padding: 2px;
+ float: left;
+ background-color: #c4cdd6;
+}
+
+/*
+ ### Special Combos
+*/
+
+.SC_Panel
+{
+ overflow-y: auto;
+ white-space: nowrap;
+ cursor: default;
+}
+
+.SC_Item, .SC_ItemSelected
+{
+ margin-top: 2px;
+ margin-bottom: 2px;
+ background-position: left center;
+ padding-left: 11px;
+ padding-right: 3px;
+ padding-top: 2px;
+ padding-bottom: 2px;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ width: 100%;
+ background-repeat: no-repeat;
+ border: #dddddd 1px solid;
+}
+
+.SC_Item *, .SC_ItemSelected *
+{
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+
+.SC_ItemSelected
+{
+ border: #9a9afb 1px solid;
+ background-image: url(images/toolbar.arrowright.gif);
+}
+
+.SC_ItemOver
+{
+ border: #316ac5 1px solid;
+}
+
+.SC_Field
+{
+ border: #b7b7a6 1px solid;
+ cursor: default;
+}
+
+.SC_FieldCaption
+{
+ overflow: visible;
+ padding-right: 5px;
+ padding-left: 5px;
+ filter: alpha(opacity=70);
+ -moz-opacity:0.75;
+ height: 23px;
+ background-color: #efefde;
+}
+
+.SC_FieldLabel
+{
+ white-space: nowrap;
+ padding: 2px;
+ width: 100%;
+ cursor: default;
+ background-color: #ffffff;
+ text-overflow: ellipsis;
+ overflow: hidden;
+}
+
+.SC_FieldButton
+{
+ background-position: center center;
+ background-image: url(images/toolbar.buttonarrow.gif);
+ border-left: #b7b7a6 1px solid;
+ width: 14px;
+ background-repeat: no-repeat;
+}
+
+.SC_FieldDisabled .SC_FieldButton, .SC_FieldDisabled .SC_FieldCaption
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity:0.30;
+}
+
+.SC_FieldOver
+{
+ border: #316ac5 1px solid;
+}
+
+.SC_FieldOver .SC_FieldButton
+{
+ border-left: #316ac5 1px solid;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_dialog.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_dialog.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_dialog.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,131 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_dialog.css
+ * Styles used by the dialog boxes.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body
+{
+ margin: 0px;
+ padding: 10px;
+}
+
+body, td, input, select, textarea
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
+}
+
+body, .BackColor
+{
+ background-color: #f1f1e3;
+}
+
+.PopupBody
+{
+ margin: 0px;
+ padding: 0px;
+}
+
+.PopupTitle
+{
+ font-weight: bold;
+ font-size: 14pt;
+ color: #737357;
+ background-color: #e3e3c7;
+ padding: 3px 10px 3px 10px;
+}
+
+.PopupButtons
+{
+ border-top: #d5d59d 1px solid;
+ background-color: #e3e3c7;
+ padding: 7px 10px 7px 10px;
+}
+
+.Button
+{
+ border-right: #737357 1px solid;
+ border-top: #737357 1px solid;
+ border-left: #737357 1px solid;
+ color: #3b3b1f;
+ border-bottom: #737357 1px solid;
+ background-color: #c7c78f;
+}
+
+.DarkBackground
+{
+ background-color: #d7d79f;
+}
+
+.LightBackground
+{
+ background-color: #ffffbe;
+}
+
+.PopupTitleBorder
+{
+ border-bottom: #d5d59d 1px solid;
+}
+
+.PopupTabArea
+{
+ color: #737357;
+ background-color: #e3e3c7;
+}
+
+.PopupTabEmptyArea
+{
+ padding-left: 10px ;
+ border-bottom: #d5d59d 1px solid;
+}
+
+.PopupTab, .PopupTabSelected
+{
+ border-right: #d5d59d 1px solid;
+ border-top: #d5d59d 1px solid;
+ border-left: #d5d59d 1px solid;
+ padding-right: 5px;
+ padding-left: 5px;
+ padding-bottom: 3px;
+ padding-top: 3px;
+ color: #737357;
+}
+
+.PopupTab
+{
+ margin-top: 1px;
+ border-bottom: #d5d59d 1px solid;
+ cursor: pointer;
+ cursor: hand;
+}
+
+.PopupTabSelected
+{
+ font-weight:bold;
+ cursor: default;
+ padding-top: 4px;
+ border-bottom: #f1f1e3 1px solid;
+ background-color: #f1f1e3;
+}
+
+.PopupSelectionBox
+{
+ border: #ff9933 1px solid;
+ background-color: #fffacd;
+ cursor: pointer;
+ cursor: hand;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_editor.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_editor.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/fck_editor.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,150 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_editor.css
+ * Styles used by the editor IFRAME and Toolbar.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+/*
+ ### Basic Editor IFRAME Styles.
+*/
+
+body
+{
+ padding: 1px 1px 1px 1px;
+ margin: 0px 0px 0px 0px;
+}
+
+#eWysiwygCell, .Source
+{
+ border: #696969 1px solid;
+}
+
+#eSourceField
+{
+ border: none;
+ padding: 5px;
+ font-family: Monospace;
+}
+
+/*
+ ### Toolbar Styles
+*/
+
+.TB_ToolbarSet, .TB_Expand, .TB_Collapse
+{
+ background-color: #efefde;
+}
+
+.TB_End
+{
+ display: none;
+}
+
+.TB_ExpandImg
+{
+ background-image: url(images/toolbar.expand.gif);
+ background-repeat: no-repeat;
+}
+
+.TB_CollapseImg
+{
+ background-image: url(images/toolbar.collapse.gif);
+ background-repeat: no-repeat;
+}
+
+.TB_ToolbarSet
+{
+ border-top: #efefde 1px outset;
+ border-bottom: #efefde 1px outset;
+}
+
+.TB_SideBorder
+{
+ background-color: #696969;
+}
+
+.TB_ToolbarSet, .TB_ToolbarSet *
+{
+ font-size: 11px;
+ cursor: default;
+ font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
+}
+
+.TB_Expand, .TB_Collapse
+{
+ padding: 2px 2px 2px 2px;
+ border: #efefde 1px outset;
+}
+
+.TB_Collapse
+{
+ border: #efefde 1px outset;
+ width: 5px;
+}
+
+.TB_Button_On, .TB_Button_Off, .TB_Button_Disabled, .TB_Combo_Off, .TB_Combo_Disabled
+{
+ border: #efefde 1px solid;
+ height: 21px;
+}
+
+.TB_Button_On
+{
+ border-color: #316ac5;
+ background-color: #c1d2ee;
+}
+
+.TB_Button_Off, .TB_Combo_Off
+{
+ filter: alpha(opacity=70);
+ -moz-opacity: 0.70;
+ background-color: #efefde;
+}
+
+.TB_Button_Disabled, .TB_Combo_Disabled
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity: 0.30;
+}
+
+.TB_Button_On_Over, .TB_Button_Off_Over
+{
+ background-color: #dff1ff;
+}
+
+.TB_Icon DIV
+{
+ width: 21px;
+ height: 21px;
+ background-position: 50% 50%;
+ background-repeat: no-repeat;
+}
+
+.TB_Text
+{
+ height: 21px;
+ padding-right: 5px;
+}
+
+.TB_ButtonArrow
+{
+ padding-right: 3px;
+}
+
+.TB_Break
+{
+ height: 23px;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.arrowright.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.arrowright.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.buttonarrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.collapse.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.collapse.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.end.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.end.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.expand.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.expand.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.separator.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.separator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.start.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/images/toolbar.start.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/about.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/about.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/anchor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/anchor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bgcolor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bgcolor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bold.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bold.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bulletedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/bulletedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/button.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/button.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/checkbox.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/checkbox.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/copy.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/copy.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/cut.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/cut.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/docprops.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/docprops.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/find.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/find.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/flash.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/flash.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/form.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/form.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/hiddenfield.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/hiddenfield.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/image.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/image.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/imagebutton.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/imagebutton.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/indent.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/indent.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/inserthorizontalrule.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/inserthorizontalrule.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/insertorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/insertorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/insertunorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/insertunorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/italic.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/italic.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifycenter.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifycenter.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyfull.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyfull.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyleft.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyleft.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyright.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/justifyright.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/link.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/link.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/newpage.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/newpage.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/numberedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/numberedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/outdent.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/outdent.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pagebreak.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pagebreak.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/paste.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/paste.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pastetext.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pastetext.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pasteword.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/pasteword.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/preview.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/preview.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/print.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/print.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/radio.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/radio.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/redo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/redo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/removeformat.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/removeformat.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/replace.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/replace.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/save.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/save.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/select.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/select.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/selectall.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/selectall.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/showdetails.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/showdetails.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/showtableborders.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/showtableborders.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/smiley.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/smiley.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/source.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/source.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/specialchar.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/specialchar.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/spellcheck.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/spellcheck.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/strikethrough.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/strikethrough.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/subscript.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/subscript.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/superscript.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/superscript.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/table.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/table.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablecell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablecell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeletecells.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeletecells.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeletecolumns.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeletecolumns.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeleterows.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tabledeleterows.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertcell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertcell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertcolumn.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertcolumn.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tableinsertrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablemergecells.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablemergecells.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablesplitcell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/tablesplitcell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/templates.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/templates.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textarea.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textarea.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textcolor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textcolor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textfield.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/textfield.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/underline.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/underline.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/undo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/undo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/universalkey.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/universalkey.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/unlink.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/unlink.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/unorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/default/toolbar/unorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_contextmenu.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_contextmenu.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_contextmenu.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,250 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_contextmenu.css
+ * Styles used by the context menu.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+.CM_ContextMenu, .CM_ContextMenu *
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
+}
+
+.CM_ContextMenu
+{
+ border: 1px solid #8f8f73;
+ padding: 2px;
+ background-color: #f7f8fd;
+}
+
+.CM_Option, .CM_Over, .CM_Disabled
+{
+ padding: 0px 3px;
+ height: 18px;
+ cursor: default;
+}
+
+.CM_Option, .CM_Over
+{
+ cursor: hand;
+}
+
+.CM_Option .CM_Icon, .CM_Disabled .CM_Icon, .CM_Separator .CM_Icon
+{
+ background-color: #d6dff7;
+}
+
+.CM_Option .CM_Icon IMG
+{
+ filter: alpha(opacity=70);
+ -moz-opacity: 0.70;
+}
+
+.CM_Disabled
+{
+ background-color: #ffffff;
+}
+
+.CM_Disabled .CM_Icon IMG, .CM_Disabled .CM_Label
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity: 0.30;
+}
+
+.CM_Option .CM_Label, .CM_Over .CM_Label
+{
+ padding: 1px 10px 1px 3px;
+}
+
+.CM_Over
+{
+ color: #ffffff;
+ background-color: #7096FA;
+}
+
+.CM_Over .CM_Icon
+{
+ background-color: #466ca6;
+}
+
+.CM_Separator TD
+{
+ height: 3px;
+}
+
+.CM_Separator .CM_Label DIV
+{
+ border-top: #b9b99d 1px solid;
+ margin-left: 2px;
+ margin-right: 3px;
+}
+
+/*
+ ### Panel Styles
+*/
+
+.FCK_Panel
+{
+ border: #8f8f73 1px solid;
+ padding: 2px;
+ background-color: #f7f8fd;
+}
+
+.FCK_Panel, .FCK_Panel TD
+{
+ font-family: 'Microsoft Sans Serif', Tahoma, Arial, Verdana, Sans-Serif;
+ font-size: 11px;
+}
+
+/*
+ ### Color Selector Panel
+*/
+
+.ColorBoxBorder
+{
+ border: #808080 1px solid;
+ position: static;
+}
+
+.ColorBox
+{
+ font-size: 1px;
+ width: 10px;
+ position: static;
+ height: 10px;
+}
+
+.ColorDeselected, .ColorSelected
+{
+ cursor: default;
+}
+
+.ColorDeselected
+{
+ border: #ffffff 1px solid;
+ padding: 2px;
+ float: left;
+}
+
+.ColorSelected *
+{
+ color: #ffffff;
+}
+
+.ColorSelected
+{
+ border: #7096FA 1px solid;
+ padding: 2px;
+ float: left;
+ background-color: #7096FA;
+}
+
+/*
+ ### Special Combos
+*/
+
+.SC_Panel
+{
+ overflow-y: auto;
+ white-space: nowrap;
+ cursor: default;
+}
+
+.SC_Item, .SC_ItemSelected
+{
+ margin-top: 2px;
+ margin-bottom: 2px;
+ background-position: left center;
+ padding-left: 11px;
+ padding-right: 3px;
+ padding-top: 2px;
+ padding-bottom: 2px;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ width: 100%;
+ background-repeat: no-repeat;
+ border: #dddddd 1px solid;
+}
+
+.SC_Item *, .SC_ItemSelected *
+{
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+
+.SC_ItemSelected
+{
+ border: #9a9afb 1px solid;
+ background-image: url(images/toolbar.arrowright.gif);
+}
+
+.SC_ItemOver
+{
+ border: #316ac5 1px solid;
+}
+
+.SC_Field
+{
+ border: #b7b7a6 1px solid;
+ cursor: default;
+}
+
+.SC_FieldCaption
+{
+ overflow: visible;
+ padding-right: 5px;
+ padding-left: 5px;
+ filter: alpha(opacity=70);
+ -moz-opacity:0.75;
+ height: 23px;
+ background-color: #f7f8fd;
+}
+
+.SC_FieldLabel
+{
+ white-space: nowrap;
+ padding: 2px;
+ width: 100%;
+ cursor: default;
+ background-color: #ffffff;
+ text-overflow: ellipsis;
+ overflow: hidden;
+}
+
+.SC_FieldButton
+{
+ background-position: center center;
+ background-image: url(images/toolbar.buttonarrow.gif);
+ border-left: #b7b7a6 1px solid;
+ width: 14px;
+ background-repeat: no-repeat;
+}
+
+.SC_FieldDisabled .SC_FieldButton, .SC_FieldDisabled .SC_FieldCaption
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity:0.30;
+}
+
+.SC_FieldOver
+{
+ border: #316ac5 1px solid;
+}
+
+.SC_FieldOver .SC_FieldButton
+{
+ border-left: #316ac5 1px solid;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_dialog.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_dialog.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_dialog.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,129 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_dialog.css
+ * Styles used by the dialog boxes.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body
+{
+ margin: 0px;
+ padding: 10px;
+ background-color: #f7f8fd;
+}
+
+body, td, input, select, textarea
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
+}
+
+body, .BackColor
+{
+ background-color: #f7f8fd;
+}
+
+.PopupBody
+{
+ margin: 0px;
+ padding: 0px;
+}
+
+.PopupTitle
+{
+ font-weight: bold;
+ font-size: 14pt;
+ color: #0e3460;
+ background-color: #8cb2fd;
+ padding: 3px 10px 3px 10px;
+}
+
+.PopupButtons
+{
+ border-top: #466ca6 1px solid;
+ background-color: #8cb2fd;
+ padding: 7px 10px 7px 10px;
+}
+
+.Button
+{
+ border: #1c3460 1px solid;
+ color: #000a28;
+ background-color: #7096d3;
+}
+
+.DarkBackground
+{
+ background-color: #d7d79f;
+}
+
+.LightBackground
+{
+ background-color: #ffffbe;
+}
+
+.PopupTitleBorder
+{
+ border-bottom: #d5d59d 1px solid;
+}
+
+.PopupTabArea
+{
+ color: #0e3460;
+ background-color: #8cb2fd;
+}
+
+.PopupTabEmptyArea
+{
+ padding-left: 10px ;
+ border-bottom: #466ca6 1px solid;
+}
+
+.PopupTab, .PopupTabSelected
+{
+ border-right: #466ca6 1px solid;
+ border-top: #466ca6 1px solid;
+ border-left: #466ca6 1px solid;
+ padding-right: 5px;
+ padding-left: 5px;
+ padding-bottom: 3px;
+ padding-top: 3px;
+ color: #0e3460;
+}
+
+.PopupTab
+{
+ margin-top: 1px;
+ border-bottom: #466ca6 1px solid;
+ cursor: pointer;
+ cursor: hand;
+}
+
+.PopupTabSelected
+{
+ font-weight:bold;
+ cursor: default;
+ padding-top: 4px;
+ border-bottom: #f7f8fd 1px solid;
+ background-color: #f7f8fd;
+}
+
+.PopupSelectionBox
+{
+ border: #1e90ff 1px solid;
+ background-color: #add8e6;
+ cursor: pointer;
+ cursor: hand;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_editor.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_editor.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/fck_editor.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,143 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_editor.css
+ * Styles used by the editor IFRAME and Toolbar.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * Aziz Oraij (aziz at oraij.com)
+ */
+
+/*
+ ### Basic Editor IFRAME Styles.
+*/
+
+body
+{
+ padding: 1px 1px 1px 1px;
+ margin: 0px 0px 0px 0px;
+}
+
+#eWysiwygCell, .Source
+{
+ border: #696969 1px solid;
+}
+
+#eSourceField
+{
+ border: none;
+ padding: 5px;
+ font-family: Monospace;
+}
+
+/*
+ ### Toolbar Styles
+*/
+
+.TB_ToolbarSet, .TB_Expand, .TB_Collapse
+{
+ background-color: #f7f8fd;
+}
+
+.TB_Toolbar
+{
+ background-color: #d6dff7;
+ background-image: url(images/toolbar.bg.gif);
+ background-repeat: repeat-x;
+}
+
+.TB_ExpandImg
+{
+ background-image: url(images/toolbar.expand.gif);
+ background-repeat: no-repeat;
+}
+
+.TB_CollapseImg
+{
+ background-image: url(images/toolbar.collapse.gif);
+ background-repeat: no-repeat;
+}
+
+.TB_ToolbarSet
+{
+ border-top: #efefde 1px outset;
+ border-bottom: #efefde 1px outset;
+}
+
+.TB_ToolbarSet, .TB_ToolbarSet *
+{
+ font-size: 11px;
+ cursor: default;
+ font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
+}
+
+.TB_SideBorder
+{
+ background-color: #696969;
+}
+
+.TB_Expand, .TB_Collapse
+{
+ padding: 2px 2px 2px 2px;
+ border: #efefde 1px outset;
+}
+
+.TB_Collapse
+{
+ border: #efefde 1px outset;
+ width: 5px;
+}
+
+.TB_Button_On, .TB_Button_Off, .TB_Button_Disabled, .TB_Combo_Off, .TB_Combo_Disabled
+{
+ border: #efefde 1px solid;
+ height: 21px;
+}
+
+.TB_Button_On
+{
+ border-color: #316ac5;
+ background-color: #c1d2ee;
+}
+
+.TB_Button_Off, .TB_Combo_Off
+{
+ filter: alpha(opacity=70);
+ -moz-opacity: 0.70;
+ background-color: #f7f8fd;
+}
+
+.TB_Button_Disabled, .TB_Combo_Disabled
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity: 0.30;
+}
+
+.TB_Icon DIV
+{
+ width: 21px;
+ height: 21px;
+ background-position: 50% 50%;
+ background-repeat: no-repeat;
+}
+
+.TB_Text
+{
+ height: 21px;
+ padding-right: 5px;
+}
+
+.TB_Break
+{
+ height: 23px;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.arrowright.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.bg.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.buttonarrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.collapse.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.end.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.end.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.expand.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.expand.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.separator.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.separator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.start.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/images/toolbar.start.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/about.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/about.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/anchor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/anchor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bgcolor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bgcolor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bold.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bold.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bulletedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/bulletedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/button.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/button.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/checkbox.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/checkbox.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/copy.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/copy.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/cut.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/cut.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/docprops.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/docprops.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/find.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/find.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/flash.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/flash.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/fontstyleadv.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/fontstyleadv.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/form.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/form.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/hidden.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/hidden.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/hiddenfield.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/hiddenfield.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/image.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/image.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/imagebutton.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/imagebutton.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/indent.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/indent.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/input.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/input.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/inserthorizontalrule.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/inserthorizontalrule.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/insertorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/insertorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/insertunorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/insertunorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/italic.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/italic.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifycenter.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifycenter.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyfull.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyfull.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyleft.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyleft.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyright.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/justifyright.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/link.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/link.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/mail.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/mail.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/new.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/new.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/newpage.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/newpage.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/numberedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/numberedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/open.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/open.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/outdent.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/outdent.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pagebreak.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pagebreak.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/paste.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/paste.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pastetext.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pastetext.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pasteword.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/pasteword.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/preview.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/preview.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/print.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/print.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/radio.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/radio.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/redo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/redo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/removeformat.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/removeformat.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/replace.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/replace.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/save.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/save.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/select.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/select.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/selectall.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/selectall.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/showdetails.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/showdetails.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/showtableborders.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/showtableborders.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/smiley.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/smiley.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/source.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/source.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/specialchar.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/specialchar.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/spellcheck.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/spellcheck.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/strikethrough.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/strikethrough.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/subscript.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/subscript.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/superscript.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/superscript.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/table.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/table.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablecell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablecell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeletecells.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeletecells.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeletecolumns.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeletecolumns.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeleterows.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tabledeleterows.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertcell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertcell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertcolumn.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertcolumn.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tableinsertrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablemergecells.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablemergecells.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablesplitcell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/tablesplitcell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/templates.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/templates.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textarea.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textarea.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textcolor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textcolor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textfield.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/textfield.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/underline.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/underline.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/undo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/undo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/universalkey.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/universalkey.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/unlink.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/unlink.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/unorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/office2003/toolbar/unorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_contextmenu.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_contextmenu.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_contextmenu.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,247 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_contextmenu.css
+ * Styles used by the context menu.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+.CM_ContextMenu, .CM_ContextMenu *
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
+}
+
+.CM_ContextMenu
+{
+ border: 1px solid #8f8f73;
+ padding: 2px;
+ background-color: #f7f7f7;
+}
+
+.CM_Option, .CM_Over, .CM_Disabled
+{
+ padding: 0px 3px;
+ height: 18px;
+ cursor: default;
+}
+
+.CM_Option, .CM_Over
+{
+ cursor: hand;
+}
+
+.CM_Option .CM_Icon, .CM_Disabled .CM_Icon, .CM_Separator .CM_Icon
+{
+ background-color: #dedede;
+}
+
+.CM_Option .CM_Icon IMG
+{
+ filter: alpha(opacity=70);
+ -moz-opacity: 0.70;
+}
+
+.CM_Disabled
+{
+ background-color: #ffffff;
+}
+
+.CM_Disabled .CM_Icon IMG, .CM_Disabled .CM_Label
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity: 0.30;
+}
+
+.CM_Option .CM_Label, .CM_Over .CM_Label
+{
+ padding: 1px 10px 1px 3px;
+}
+
+.CM_Over
+{
+ color: #ffffff;
+ background-color: #8a857d;
+}
+
+.CM_Over .CM_Icon
+{
+ background-color: #6c6761;
+}
+
+.CM_Separator TD
+{
+ height: 3px;
+}
+
+.CM_Separator .CM_Label DIV
+{
+ border-top: #b9b99d 1px solid;
+ margin-left: 2px;
+ margin-right: 3px;
+}
+
+/*
+ ### Panel Styles
+*/
+
+.FCK_Panel
+{
+ border: #8f8f73 1px solid;
+ padding: 2px;
+ background-color: #ffffff;
+}
+
+.FCK_Panel, .FCK_Panel TD
+{
+ font-family: 'Microsoft Sans Serif', Tahoma, Arial, Verdana, Sans-Serif;
+ font-size: 11px;
+}
+
+/*
+ ### Color Selector Panel
+*/
+
+.ColorBoxBorder
+{
+ border: #808080 1px solid;
+ position: static;
+}
+
+.ColorBox
+{
+ font-size: 1px;
+ width: 10px;
+ position: static;
+ height: 10px;
+}
+
+.ColorDeselected, .ColorSelected
+{
+ cursor: default;
+}
+
+.ColorDeselected
+{
+ border: #ffffff 1px solid;
+ padding: 2px;
+ float: left;
+}
+
+.ColorSelected
+{
+ border: #316ac5 1px solid;
+ padding: 2px;
+ float: left;
+ background-color: #c1d2ee;
+}
+
+/*
+ ### Special Combos
+*/
+
+.SC_Panel
+{
+ overflow-y: auto;
+ white-space: nowrap;
+ cursor: default;
+}
+
+.SC_Item, .SC_ItemSelected
+{
+ margin-top: 2px;
+ margin-bottom: 2px;
+ background-position: left center;
+ padding-left: 11px;
+ padding-right: 3px;
+ padding-top: 2px;
+ padding-bottom: 2px;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ width: 100%;
+ background-repeat: no-repeat;
+ border: #dddddd 1px solid;
+}
+
+.SC_Item *, .SC_ItemSelected *
+{
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+
+.SC_ItemSelected
+{
+ border: #9a9afb 1px solid;
+ background-image: url(images/toolbar.arrowright.gif);
+}
+
+.SC_ItemOver
+{
+ border: #316ac5 1px solid;
+}
+
+.SC_Field
+{
+ border: #b7b7a6 1px solid;
+ cursor: default;
+ margin-top: 4px ;
+}
+
+.SC_FieldCaption
+{
+ padding-top: 4px ;
+ overflow: visible;
+ padding-right: 5px;
+ padding-left: 5px;
+ filter: alpha(opacity=70);
+ -moz-opacity:0.75;
+ height: 23px;
+ background-color: #f7f7f7;
+}
+
+.SC_FieldLabel
+{
+ white-space: nowrap;
+ padding: 2px;
+ width: 100%;
+ cursor: default;
+ background-color: #ffffff;
+ text-overflow: ellipsis;
+ overflow: hidden;
+}
+
+.SC_FieldButton
+{
+ background-position: center center;
+ background-image: url(images/toolbar.buttonarrow.gif);
+ border-left: #b7b7a6 1px solid;
+ width: 14px;
+ background-repeat: no-repeat;
+}
+
+.SC_FieldDisabled .SC_FieldButton, .SC_FieldDisabled .SC_FieldCaption
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity:0.30;
+}
+
+.SC_FieldOver
+{
+ border: #316ac5 1px solid;
+}
+
+.SC_FieldOver .SC_FieldButton
+{
+ border-left: #316ac5 1px solid;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_dialog.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_dialog.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_dialog.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,132 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_dialog.css
+ * Styles used by the dialog boxes.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+body
+{
+ margin: 0px;
+ padding: 10px;
+ background-color: #f7f7f7;
+}
+
+body, td, input, select, textarea
+{
+ font-size: 11px;
+ font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
+}
+
+body, .BackColor
+{
+ background-color: #f7f7f7;
+}
+
+.PopupBody
+{
+ margin: 0px;
+ padding: 0px;
+}
+
+.PopupTitle
+{
+ padding-right: 10px;
+ padding-left: 10px;
+ font-weight: bold;
+ font-size: 14pt;
+ padding-bottom: 3px;
+ color: #504845;
+ padding-top: 3px;
+ background-color: #dedede;
+}
+
+.PopupButtons
+{
+ border-top: #cec6b5 1px solid;
+ background-color: #DEDEDE;
+ padding: 7px 10px 7px 10px;
+}
+
+.Button
+{
+ border: #7a7261 1px solid;
+ color: #504845;
+ background-color: #cec6b5;
+}
+
+.DarkBackground
+{
+ background-color: #d7d79f;
+}
+
+.LightBackground
+{
+ background-color: #ffffbe;
+}
+
+.PopupTitleBorder
+{
+ border-bottom: #cec6b5 1px solid;
+}
+
+.PopupTabArea
+{
+ color: #504845;
+ background-color: #DEDEDE;
+}
+
+.PopupTabEmptyArea
+{
+ padding-left: 10px ;
+ border-bottom: #cec6b5 1px solid;
+}
+
+.PopupTab, .PopupTabSelected
+{
+ border-right: #cec6b5 1px solid;
+ border-top: #cec6b5 1px solid;
+ border-left: #cec6b5 1px solid;
+ padding-right: 5px;
+ padding-left: 5px;
+ padding-bottom: 3px;
+ padding-top: 3px;
+ color: #504845;
+}
+
+.PopupTab
+{
+ margin-top: 1px;
+ border-bottom: #cec6b5 1px solid;
+ cursor: pointer;
+ cursor: hand;
+}
+
+.PopupTabSelected
+{
+ font-weight:bold;
+ cursor: default;
+ padding-top: 4px;
+ border-bottom: #f1f1e3 1px solid;
+ background-color: #f7f7f7;
+}
+
+.PopupSelectionBox
+{
+ border: #a9a9a9 1px solid;
+ background-color: #dcdcdc;
+ cursor: pointer;
+ cursor: hand;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_editor.css
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_editor.css 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/fck_editor.css 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,159 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fck_editor.css
+ * Styles used by the editor IFRAME and Toolbar.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ * gazou[Fr]
+ */
+
+/*
+ ### Basic Editor IFRAME Styles.
+*/
+
+body
+{
+ padding: 1px 1px 1px 1px;
+ margin: 0px 0px 0px 0px;
+}
+
+#eWysiwygCell, .Source
+{
+ border: #696969 1px solid;
+}
+
+#eSourceField
+{
+ border: none;
+ padding: 5px;
+ font-family: Monospace;
+}
+
+/*
+ ### Toolbar Styles
+*/
+
+.TB_ToolbarSet, .TB_Expand, .TB_Collapse
+{
+ background-color: #f7f7f7;
+}
+
+.TB_End
+{
+ display: none;
+}
+
+.TB_ExpandImg
+{
+ background-image: url(images/toolbar.expand.gif);
+ background-repeat: no-repeat;
+}
+
+.TB_CollapseImg
+{
+ background-image: url(images/toolbar.collapse.gif);
+ background-repeat: no-repeat;
+}
+
+.TB_ToolbarSet
+{
+ padding: 1px;
+ border-top: #efefde 1px outset;
+ border-bottom: #efefde 1px outset;
+}
+
+.TB_ToolbarSet, .TB_ToolbarSet *
+{
+ font-size: 11px;
+ cursor: default;
+ font-family: 'Microsoft Sans Serif' , Tahoma, Arial, Verdana, Sans-Serif;
+}
+
+.TB_SideBorder
+{
+ background-color: #696969;
+}
+
+.TB_Expand, .TB_Collapse
+{
+ padding: 2px 2px 2px 2px;
+ border: #efefde 1px outset;
+}
+
+.TB_Collapse
+{
+ border: #efefde 1px outset;
+ width: 5px;
+}
+
+.TB_Button_On, .TB_Button_Off, .TB_Button_Disabled
+{
+ padding: 1px ;
+ margin: 1px ;
+ height: 21px;
+}
+
+.TB_Combo_Off, .TB_Combo_Disabled
+{
+ padding: 1px ;
+ margin: 2px ;
+ height: 21px;
+}
+
+.TB_Button_On, .TB_Button_Off, .TB_Button_Disabled
+{
+ border: #cec6b5 1px solid;
+}
+
+.TB_Button_On
+{
+ border-color: #316ac5;
+ background-color: #c1d2ee;
+}
+
+.TB_Button_Off
+{
+ background: #efefef url(images/toolbar.buttonbg.gif) repeat-x;
+}
+
+.TB_Button_Off, .TB_Combo_Off
+{
+ filter: alpha(opacity=70);
+ -moz-opacity: 0.70;
+}
+
+.TB_Button_Disabled, .TB_Combo_Disabled
+{
+ filter: gray() alpha(opacity=30);
+ -moz-opacity: 0.30;
+}
+
+.TB_Icon DIV
+{
+ width: 21px;
+ height: 21px;
+ background-position: 50% 50%;
+ background-repeat: no-repeat;
+}
+
+.TB_Text
+{
+ height: 21px;
+ padding-right: 5px;
+}
+
+.TB_Break
+{
+ height: 23px;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.arrowright.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.buttonarrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.buttonbg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.collapse.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.collapse.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.end.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.end.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.expand.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.expand.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.separator.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.separator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.start.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/images/toolbar.start.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/about.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/about.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/anchor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/anchor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bgcolor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bgcolor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bold.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bold.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bulletedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/bulletedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/button.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/button.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/checkbox.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/checkbox.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/copy.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/copy.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/cut.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/cut.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/docprops.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/docprops.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/find.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/find.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/flash.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/flash.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/form.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/form.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/hiddenfield.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/hiddenfield.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/image.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/image.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/imagebutton.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/imagebutton.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/indent.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/indent.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/inserthorizontalrule.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/inserthorizontalrule.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/insertorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/insertorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/insertunorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/insertunorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/italic.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/italic.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifycenter.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifycenter.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyfull.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyfull.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyleft.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyleft.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyright.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/justifyright.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/link.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/link.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/newpage.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/newpage.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/numberedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/numberedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/outdent.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/outdent.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pagebreak.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pagebreak.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/paste.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/paste.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pastetext.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pastetext.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pasteword.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/pasteword.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/preview.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/preview.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/print.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/print.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/radio.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/radio.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/redo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/redo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/removeformat.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/removeformat.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/replace.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/replace.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/save.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/save.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/select.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/select.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/selectall.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/selectall.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/showdetails.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/showdetails.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/showtableborders.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/showtableborders.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/smiley.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/smiley.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/source.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/source.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/specialchar.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/specialchar.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/spellcheck.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/spellcheck.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/strikethrough.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/strikethrough.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/subscript.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/subscript.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/superscript.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/superscript.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/table.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/table.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablecell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablecell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeletecells.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeletecells.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeletecolumns.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeletecolumns.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeleterows.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tabledeleterows.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertcell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertcell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertcolumn.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertcolumn.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertrow.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tableinsertrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablemergecells.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablemergecells.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablesplitcell.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/tablesplitcell.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/templates.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/templates.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textarea.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textarea.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textcolor.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textcolor.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textfield.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/textfield.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/underline.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/underline.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/undo.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/undo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/universalkey.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/universalkey.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/unlink.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/unlink.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/unorderedlist.gif
===================================================================
(Binary files differ)
Property changes on: zope.html/trunk/src/zope/html/fckeditor/editor/skins/silver/toolbar/unorderedlist.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: zope.html/trunk/src/zope/html/fckeditor/fckconfig.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckconfig.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckconfig.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,177 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckconfig.js
+ * Editor configuration settings.
+ * See the documentation for more info.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+FCKConfig.CustomConfigurationsPath = '' ;
+
+FCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css' ;
+
+FCKConfig.DocType = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">' ;
+
+FCKConfig.BaseHref = '' ;
+
+FCKConfig.FullPage = false ;
+
+FCKConfig.Debug = false ;
+
+FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ;
+
+FCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ;
+
+// FCKConfig.Plugins.Add( 'placeholder', 'en,it' ) ;
+
+FCKConfig.ProtectedSource.Add( /<script[\s\S]*?\/script>/gi ) ; // <SCRIPT> tags.
+// FCKConfig.ProtectedSource.Add( /<%[\s\S]*?%>/g ) ; // ASP style server side code <%...%>
+// FCKConfig.ProtectedSource.Add( /<\?[\s\S]*?\?>/g ) ; // PHP style server side code <?...?>
+// FCKConfig.ProtectedSource.Add( /(<asp:[^\>]+>[\s|\S]*?<\/asp:[^\>]+>)|(<asp:[^\>]+\/>)/gi ) ; // ASP.Net style tags <asp:control>
+
+FCKConfig.AutoDetectLanguage = true ;
+FCKConfig.DefaultLanguage = 'en' ;
+FCKConfig.ContentLangDirection = 'ltr' ;
+
+FCKConfig.EnableXHTML = true ; // Unsupported: Do not change.
+FCKConfig.EnableSourceXHTML = true ; // Unsupported: Do not change.
+
+FCKConfig.ProcessHTMLEntities = true ;
+FCKConfig.IncludeLatinEntities = true ;
+FCKConfig.IncludeGreekEntities = true ;
+
+FCKConfig.FillEmptyBlocks = true ;
+
+FCKConfig.FormatSource = true ;
+FCKConfig.FormatOutput = true ;
+FCKConfig.FormatIndentator = ' ' ;
+
+FCKConfig.ForceStrongEm = true ;
+FCKConfig.GeckoUseSPAN = false ;
+FCKConfig.StartupFocus = false ;
+FCKConfig.ForcePasteAsPlainText = false ;
+FCKConfig.AutoDetectPasteFromWord = true ; // IE only.
+FCKConfig.ForceSimpleAmpersand = false ;
+FCKConfig.TabSpaces = 0 ;
+FCKConfig.ShowBorders = true ;
+FCKConfig.UseBROnCarriageReturn = false ;
+FCKConfig.ToolbarStartExpanded = true ;
+FCKConfig.ToolbarCanCollapse = true ;
+FCKConfig.IEForceVScroll = false ;
+FCKConfig.IgnoreEmptyParagraphValue = true ;
+
+FCKConfig.ToolbarSets["Default"] = [
+ ['Source','DocProps','-','Save','NewPage','Preview','-','Templates'],
+ ['Cut','Copy','Paste','PasteText','PasteWord','-','Print','SpellCheck'],
+ ['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
+ ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
+ ['OrderedList','UnorderedList','-','Outdent','Indent'],
+ ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
+ ['Link','Unlink','Anchor'],
+ ['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak','UniversalKey'],
+ ['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'],
+ '/',
+ ['Style','FontFormat','FontName','FontSize'],
+ ['TextColor','BGColor'],
+ ['About']
+] ;
+
+FCKConfig.ToolbarSets["Basic"] = [
+ ['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','-','About']
+] ;
+
+FCKConfig.ContextMenu = ['Generic','Link','Anchor','Image','Flash','Select','Textarea','Checkbox','Radio','TextField','HiddenField','ImageButton','Button','BulletedList','NumberedList','TableCell','Table','Form'] ;
+
+FCKConfig.FontColors = '000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,808080,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF' ;
+
+FCKConfig.FontNames = 'Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;
+FCKConfig.FontSizes = '1/xx-small;2/x-small;3/small;4/medium;5/large;6/x-large;7/xx-large' ;
+FCKConfig.FontFormats = 'p;div;pre;address;h1;h2;h3;h4;h5;h6' ;
+
+FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'fckstyles.xml' ;
+FCKConfig.TemplatesXmlPath = FCKConfig.EditorPath + 'fcktemplates.xml' ;
+
+FCKConfig.SpellChecker = 'ieSpell' ; // 'ieSpell' | 'SpellerPages'
+FCKConfig.IeSpellDownloadUrl = 'http://www.iespell.com/rel/ieSpellSetup211325.exe' ;
+
+FCKConfig.MaxUndoLevels = 15 ;
+
+FCKConfig.DisableImageHandles = false ;
+FCKConfig.DisableTableHandles = false ;
+
+FCKConfig.LinkDlgHideTarget = false ;
+FCKConfig.LinkDlgHideAdvanced = false ;
+
+FCKConfig.ImageDlgHideLink = false ;
+FCKConfig.ImageDlgHideAdvanced = false ;
+
+FCKConfig.FlashDlgHideAdvanced = false ;
+
+FCKConfig.LinkBrowser = true ;
+FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/asp/connector.asp' ;
+//FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/asp/connector.asp&ServerPath=/CustomFiles/' ;
+// ASP.Net // FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/aspx/connector.aspx' ;
+// ColdFusion // FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/cfm/connector.cfm' ;
+// Perl // FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/perl/connector.cgi' ;
+// PHP // FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/php/connector.php' ;
+// PHP - mcpuk // FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/mcpuk/browser.html?Connector=connectors/php/connector.php' ;
+FCKConfig.LinkBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70%
+FCKConfig.LinkBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ;// 70%
+
+FCKConfig.ImageBrowser = true ;
+FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/asp/connector.asp' ;
+// ASP.Net // FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/aspx/connector.aspx' ;
+// ColdFusion // FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/cfm/connector.cfm' ;
+// Perl // FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/perl/connector.cgi' ;
+// PHP // FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/php/connector.php' ;
+// PHP - mcpuk // FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/mcpuk/browser.html?Type=Image&Connector=connectors/php/connector.php' ;
+FCKConfig.ImageBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70% ;
+FCKConfig.ImageBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; // 70% ;
+
+FCKConfig.FlashBrowser = true ;
+FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/asp/connector.asp' ;
+// ASP.Net // FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/aspx/connector.aspx' ;
+// ColdFusion // FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/cfm/connector.cfm' ;
+// Perl // FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/perl/connector.cgi' ;
+// PHP // FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/php/connector.php' ;
+// PHP - mcpuk // FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/mcpuk/browser.html?Type=Flash&Connector=connectors/php/connector.php' ;
+FCKConfig.FlashBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; //70% ;
+FCKConfig.FlashBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; //70% ;
+
+FCKConfig.LinkUpload = true ;
+FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/upload/asp/upload.asp' ;
+// PHP // FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/upload/php/upload.php' ;
+FCKConfig.LinkUploadAllowedExtensions = "" ; // empty for all
+FCKConfig.LinkUploadDeniedExtensions = ".(php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi)$" ; // empty for no one
+
+FCKConfig.ImageUpload = true ;
+FCKConfig.ImageUploadURL = FCKConfig.BasePath + 'filemanager/upload/asp/upload.asp?Type=Image' ;
+// PHP // FCKConfig.ImageUploadURL = FCKConfig.BasePath + 'filemanager/upload/php/upload.php?Type=Image' ;
+FCKConfig.ImageUploadAllowedExtensions = ".(jpg|gif|jpeg|png)$" ; // empty for all
+FCKConfig.ImageUploadDeniedExtensions = "" ; // empty for no one
+
+FCKConfig.FlashUpload = true ;
+FCKConfig.FlashUploadURL = FCKConfig.BasePath + 'filemanager/upload/asp/upload.asp?Type=Flash' ;
+// PHP // FCKConfig.FlashUploadURL = FCKConfig.BasePath + 'filemanager/upload/php/upload.php?Type=Flash' ;
+FCKConfig.FlashUploadAllowedExtensions = ".(swf|fla)$" ; // empty for all
+FCKConfig.FlashUploadDeniedExtensions = "" ; // empty for no one
+
+FCKConfig.SmileyPath = FCKConfig.BasePath + 'images/smiley/msn/' ;
+FCKConfig.SmileyImages = ['regular_smile.gif','sad_smile.gif','wink_smile.gif','teeth_smile.gif','confused_smile.gif','tounge_smile.gif','embaressed_smile.gif','omg_smile.gif','whatchutalkingabout_smile.gif','angry_smile.gif','angel_smile.gif','shades_smile.gif','devil_smile.gif','cry_smile.gif','lightbulb.gif','thumbs_down.gif','thumbs_up.gif','heart.gif','broken_heart.gif','kiss.gif','envelope.gif'] ;
+FCKConfig.SmileyColumns = 8 ;
+FCKConfig.SmileyWindowWidth = 320 ;
+FCKConfig.SmileyWindowHeight = 240 ;
+
+if( window.console ) window.console.log( 'Config is loaded!' ) ; // @Packager.Compactor.RemoveLine
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.afp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.afp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.afp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,143 @@
+<%
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2004 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * File Name: sampleposteddata.afp
+ * This page lists the data posted by a form.
+ *
+ * Version: 1.0
+ * Modified: 2005-07-01
+ *
+ * File Authors: Soenke Freitag (www.afp-hosting.de)
+ *
+
+DEFINE CLASS goFckeditor AS CONTAINER OLEPUBLIC
+
+ cInstanceName =""
+ BasePath =""
+ cWIDTH =""
+ cHEIGHT =""
+ ToolbarSet =""
+ cValue=""
+ DIMENSION aConfig(10,2)
+
+&& -----------------------------------------------------------------------
+ FUNCTION fckeditor( tcInstanceName )
+ LOCAL lnLoop,lnLoop2
+ THIS.cInstanceName = tcInstanceName
+ THIS.BasePath = '/FCKeditor/'
+ THIS.cWIDTH = '100%'
+ THIS.cHEIGHT = '200'
+ THIS.ToolbarSet = 'Default'
+ THIS.cValue = ''
+ FOR lnLoop=1 TO 10
+ FOR lnLoop2=1 TO 2
+ THIS.aConfig(lnLoop,lnLoop2) = ""
+ NEXT
+ NEXT
+ RETURN
+ ENDFUNC
+
+
+&& -----------------------------------------------------------------------
+ FUNCTION CREATE()
+ ? THIS.CreateHtml()
+ RETURN
+ ENDFUNC
+
+&& -----------------------------------------------------------------------
+ FUNCTION CreateHtml()
+ LOCAL html
+ LOCAL lcLink
+
+ HtmlValue = THIS.cValue && HTMLSPECIALCHARS()
+
+ html = [<div>]
+ IF THIS.IsCompatible()
+ lcLink = THIS.BasePath+[editor/fckeditor.html?InstanceName=]+THIS.cInstanceName
+
+ IF ( THIS.ToolbarSet # '' )
+ lcLink = lcLink + [Toolbar=]+THIS.ToolbarSet
+ ENDIF
+
+ && Render the LINKED HIDDEN FIELD.
+ html = html + [<input type="hidden" id="]+THIS.cInstanceName +[" name="]+THIS.cInstanceName +[" value="]+HtmlValue+[">]
+
+ && Render the configurations HIDDEN FIELD.
+ html = html + [<input type="hidden" id="]+THIS.cInstanceName +[___Config" value="]+THIS.GetConfigFieldString() + [">] +CHR(13)+CHR(10)
+
+ && Render the EDITOR IFRAME.
+ html = html + [<iframe id="]+THIS.cInstanceName +[___Frame" src="Link" width="]+THIS.cWIDTH+[" height="]+THIS.cHEIGHT+[" frameborder="no" scrolling="no"></iframe>]
+ ELSE
+ IF ( AT("%", THIS.cWIDTH)=0 )
+ WidthCSS = THIS.cWIDTH + 'px'
+ ELSE
+ WidthCSS = THIS.cWIDTH
+ ENDIF
+
+ IF ( AT("%",THIS.cHEIGHT)=0 )
+ HeightCSS = THIS.cHEIGHT + 'px'
+ ELSE
+ HeightCSS = THIS.cHEIGHT
+ ENDIF
+
+ html = html + [<textarea name="]+THIS.cInstanceName +[" rows="4" cols="40" style="width: ]+WidthCSS+[ height: ]+HeightCSS+[" wrap="virtual">]+HtmlValue+[</textarea>]
+ ENDIF
+
+ html = html + [</div>]
+
+ RETURN (html)
+ ENDFUNC
+
+
+&& -----------------------------------------------------------------------
+ FUNCTION IsCompatible()
+ LOCAL llRetval
+ LOCAL sAgent
+
+ llRetval=.F.
+
+
+ sAgent = LOWER(ALLTRIM(request.servervariables("HTTP_USER_AGENT")))
+
+ IF AT("msie",sAgent) >0 .AND. AT("mac",sAgent)=0 .AND. AT("opera",sAgent)=0
+ iVersion=VAL(SUBSTR(sAgent,AT("msie",sAgent)+5,3))
+ llRetval= iVersion > 5.5
+ ELSE
+ IF AT("gecko",sAgent)>0
+ iVersion=VAL(SUBSTR(sAgent,AT("gecko/",sAgent)+6,8))
+ llRetval =iVersion > 20030210
+ ENDIF
+ ENDIF
+ RETURN (llRetval)
+ ENDFUNC
+
+&& -----------------------------------------------------------------------
+ FUNCTION GetConfigFieldString()
+ LOCAL sParams
+ LOCAL bFirst
+ LOCAL sKey
+ sParams = ""
+ bFirst = .T.
+ FOR lnLoop=1 TO 10 && ALEN(this.aconfig)
+ IF !EMPTY(THIS.aConfig(lnLoop,1))
+ IF bFirst = .F.
+ sParams = sParams + "&"
+ ELSE
+ bFirst = .F.
+ ENDIF
+ sParams = sParams +THIS.aConfig(lnLoop,1)+[=]+THIS.aConfig(lnLoop,2)
+ ELSE
+ EXIT
+ ENDIF
+ NEXT
+ RETURN(sParams)
+ ENDFUNC
+ENDDEFINE
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.asp
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.asp 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.asp 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,192 @@
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckeditor.asp
+ * This is the integration file for ASP.
+ *
+ * It defines the FCKeditor class that can be used to create editor
+ * instances in ASP pages on server side.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<%
+Class FCKeditor
+
+ private sBasePath
+ private sInstanceName
+ private sWidth
+ private sHeight
+ private sToolbarSet
+ private sValue
+
+ private oConfig
+
+ Private Sub Class_Initialize()
+ sBasePath = "/FCKeditor/"
+ sWidth = "100%"
+ sHeight = "200"
+ sToolbarSet = "Default"
+ sValue = ""
+
+ Set oConfig = CreateObject("Scripting.Dictionary")
+ End Sub
+
+ Public Property Let BasePath( basePathValue )
+ sBasePath = basePathValue
+ End Property
+
+ Public Property Let InstanceName( instanceNameValue )
+ sInstanceName = instanceNameValue
+ End Property
+
+ Public Property Let Width( widthValue )
+ sWidth = widthValue
+ End Property
+
+ Public Property Let Height( heightValue )
+ sHeight = heightValue
+ End Property
+
+ Public Property Let ToolbarSet( toolbarSetValue )
+ sToolbarSet = toolbarSetValue
+ End Property
+
+ Public Property Let Value( newValue )
+ If ( IsNull( newValue ) OR IsEmpty( newValue ) ) Then
+ sValue = ""
+ Else
+ sValue = newValue
+ End If
+ End Property
+
+ Public Property Let Config( configKey, configValue )
+ oConfig.Add configKey, configValue
+ End Property
+
+ Public Function Create( instanceName )
+
+ Response.Write "<div>"
+
+ If IsCompatible() Then
+
+ Dim sFile
+ If Request.QueryString( "fcksource" ) = "true" Then
+ sFile = "fckeditor.original.html"
+ Else
+ sFile = "fckeditor.html"
+ End If
+
+ Dim sLink
+ sLink = sBasePath & "editor/" & sFile & "?InstanceName=" + instanceName
+
+ If (sToolbarSet & "") <> "" Then
+ sLink = sLink + "&Toolbar=" & sToolbarSet
+ End If
+
+ ' Render the linked hidden field.
+ Response.Write "<input type=""hidden"" id=""" & instanceName & """ name=""" & instanceName & """ value=""" & Server.HTMLEncode( sValue ) & """ />"
+
+ ' Render the configurations hidden field.
+ Response.Write "<input type=""hidden"" id=""" & instanceName & "___Config"" value=""" & GetConfigFieldString() & """ />"
+
+ ' Render the editor IFRAME.
+ Response.Write "<iframe id=""" & instanceName & "___Frame"" src=""" & sLink & """ width=""" & sWidth & """ height=""" & sHeight & """ frameborder=""no"" scrolling=""no""></iframe>"
+
+ Else
+
+ Dim sWidthCSS, sHeightCSS
+
+ If InStr( sWidth, "%" ) > 0 Then
+ sWidthCSS = sWidth
+ Else
+ sWidthCSS = sWidth & "px"
+ End If
+
+ If InStr( sHeight, "%" ) > 0 Then
+ sHeightCSS = sHeight
+ Else
+ sHeightCSS = sHeight & "px"
+ End If
+
+ Response.Write "<textarea name=""" & instanceName & """ rows=""4"" cols=""40"" style=""width: " & sWidthCSS & "; height: " & sHeightCSS & """ wrap=""virtual"">" & Server.HTMLEncode( sValue ) & "</textarea>"
+
+ End If
+
+ Response.Write "</div>"
+
+ End Function
+
+ Private Function IsCompatible()
+
+ Dim sAgent
+ sAgent = Request.ServerVariables("HTTP_USER_AGENT")
+
+ Dim iVersion
+
+ If InStr(sAgent, "MSIE") > 0 AND InStr(sAgent, "mac") <= 0 AND InStr(sAgent, "Opera") <= 0 Then
+ iVersion = CInt( ToNumericFormat( Mid(sAgent, InStr(sAgent, "MSIE") + 5, 3) ) )
+ IsCompatible = ( iVersion >= 5.5 )
+ ElseIf InStr(sAgent, "Gecko/") > 0 Then
+ iVersion = CLng( Mid( sAgent, InStr( sAgent, "Gecko/" ) + 6, 8 ) )
+ IsCompatible = ( iVersion >= 20030210 )
+ Else
+ IsCompatible = False
+ End If
+
+ End Function
+
+ ' By Agrotic
+ ' On ASP, when converting string to numbers, the number decimal separator is localized
+ ' so 5.5 will not work on systems were the separator is "," and vice versa.
+ Private Function ToNumericFormat( numberStr )
+
+ If IsNumeric( "5.5" ) Then
+ ToNumericFormat = Replace( numberStr, ",", ".")
+ Else
+ ToNumericFormat = Replace( numberStr, ".", ",")
+ End If
+
+ End Function
+
+ Private Function GetConfigFieldString()
+
+ Dim sParams
+
+ Dim bFirst
+ bFirst = True
+
+ Dim sKey
+ For Each sKey in oConfig
+
+ If bFirst = False Then
+ sParams = sParams & "&"
+ Else
+ bFirst = False
+ End If
+
+ sParams = sParams & EncodeConfig( sKey ) & "=" & EncodeConfig( oConfig(sKey) )
+
+ Next
+
+ GetConfigFieldString = sParams
+
+ End Function
+
+ Private Function EncodeConfig( valueToEncode )
+ EncodeConfig = Replace( valueToEncode, "&", "%26" )
+ EncodeConfig = Replace( EncodeConfig , "=", "%3D" )
+ EncodeConfig = Replace( EncodeConfig , """", "%22" )
+ End Function
+
+End Class
+%>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfc
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfc 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfc 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,213 @@
+<cfcomponent output="false" displayname="FCKeditor" hint="Create an instance of the FCKeditor.">
+<!--- @Packager.Header
+<FileDescription>
+ ColdFusion MX integration.
+ Note this CFC is created for use only with Coldfusion MX and above.
+ For older version, check the fckeditor.cfm.
+
+ Syntax:
+
+ <cfscript>
+ fckEditor = createObject("component", "fckEditorV2/fckeditor");
+ fckEditor.instanceName="myEditor";
+ fckEditor.basePath="/fckEditorV2/";
+ fckEditor.value="This is my <strong>initial</strong> html text.";
+ fckEditor.width="100%";
+ fckEditor.height="200";
+ // ... additional parameters ...
+ fckEditor.create(); // create instance now.
+ </cfscript>
+
+ See your macromedia coldfusion mx documentation for more info.
+
+ *** Note:
+ Do not use path names with a "." (dot) in the name. This is a coldfusion
+ limitation with the cfc invocation.
+</FileDescription>
+<Author name="Hendrik Kramer" email="hk at lwd.de" />
+--->
+<cffunction
+ name="create"
+ access="public"
+ output="true"
+ returntype="void"
+ hint="Initialize the FCKeditor instance."
+>
+
+ <cfparam name="this.instanceName" type="string" />
+ <cfparam name="this.width" type="string" default="100%" />
+ <cfparam name="this.height" type="string" default="200" />
+ <cfparam name="this.toolbarSet" type="string" default="Default" />
+ <cfparam name="this.value" type="string" default="" />
+ <cfparam name="this.basePath" type="string" default="/fckeditor/" />
+ <cfparam name="this.checkBrowser" type="boolean" default="true" />
+ <cfparam name="this.config" type="struct" default="#structNew()#" />
+
+ <cfscript>
+ // display the html editor or a plain textarea?
+ if( isCompatible() )
+ showHTMLEditor();
+ else
+ showTextArea();
+ </cfscript>
+
+</cffunction>
+
+<cffunction
+ name="isCompatible"
+ access="private"
+ output="false"
+ returnType="boolean"
+ hint="Check browser compatibility via HTTP_USER_AGENT, if checkBrowser is true"
+>
+
+ <cfscript>
+ var sAgent = lCase( cgi.HTTP_USER_AGENT );
+ var stResult = "";
+ var sBrowserVersion = "";
+
+ // do not check if argument "checkBrowser" is false
+ if( not this.checkBrowser )
+ return true;
+
+ // check for Internet Explorer ( >= 5.5 )
+ if( find( "msie", sAgent ) and not find( "mac", sAgent ) and not find( "opera", sAgent ) )
+ {
+ // try to extract IE version
+ stResult = reFind( "msie ([5-9]\.[0-9])", sAgent, 1, true );
+ if( arrayLen( stResult.pos ) eq 2 )
+ {
+ // get IE Version
+ sBrowserVersion = mid( sAgent, stResult.pos[2], stResult.len[2] );
+ return ( sBrowserVersion GTE 5.5 );
+ }
+ }
+ // check for Gecko ( >= 20030210+ )
+ else if( find( "gecko/", sAgent ) )
+ {
+ // try to extract Gecko version date
+ stResult = reFind( "gecko/(200[3-9][0-1][0-9][0-3][0-9])", sAgent, 1, true );
+ if( arrayLen( stResult.pos ) eq 2 )
+ {
+ // get Gecko build (i18n date)
+ sBrowserVersion = mid( sAgent, stResult.pos[2], stResult.len[2] );
+ return ( sBrowserVersion GTE 20030210 );
+ }
+ }
+
+ return false;
+ </cfscript>
+</cffunction>
+
+<cffunction
+ name="showTextArea"
+ access="private"
+ output="true"
+ returnType="void"
+ hint="Create a textarea field for non-compatible browsers."
+>
+
+ <cfscript>
+ // append unit "px" for numeric width and/or height values
+ if( isNumeric( this.width ) )
+ this.width = this.width & "px";
+ if( isNumeric( this.height ) )
+ this.height = this.height & "px";
+ </cfscript>
+
+ <cfoutput>
+ <div>
+ <textarea name="#this.instanceName#" rows="4" cols="40" style="WIDTH: #width#; HEIGHT: #height#" wrap="virtual">#HTMLEditFormat(this.value)#</textarea>
+ </div>
+ </cfoutput>
+
+</cffunction>
+
+<cffunction
+ name="showHTMLEditor"
+ access="private"
+ output="true"
+ returnType="void"
+ hint="Create the html editor instance for compatible browsers."
+>
+
+ <cfscript>
+ var sURL = "";
+
+ // try to fix the basePath, if ending slash is missing
+ if( len( this.basePath) and right( this.basePath, 1 ) is not "/" )
+ this.basePath = this.basePath & "/";
+
+ // construct the url
+ sURL = this.basePath & "editor/fckeditor.html?InstanceName=" & this.instanceName;
+
+ // append toolbarset name to the url
+ if( len( this.toolbarSet ) )
+ sURL = sURL & "&Toolbar=" & this.toolbarSet;
+ </cfscript>
+
+ <cfoutput>
+ <div>
+ <input type="hidden" id="#this.instanceName#" name="#this.instanceName#" value="#HTMLEditFormat(this.value)#" />
+ <input type="hidden" id="#this.instanceName#___Config" value="#GetConfigFieldString()#" />
+ <iframe id="#this.instanceName#___Frame" src="#sURL#" width="#this.width#" height="#this.height#" frameborder="no" scrolling="no"></iframe>
+ </div>
+ </cfoutput>
+
+</cffunction>
+
+<cffunction
+ name="GetConfigFieldString"
+ access="private"
+ output="false"
+ returnType="string"
+ hint="Create configuration string: Key1=Value1&Key2=Value2&... (Key/Value:HTML encoded)"
+>
+
+ <cfscript>
+ var sParams = "";
+ var key = "";
+ var fieldValue = "";
+ var fieldLabel = "";
+ var lConfigKeys = "";
+ var iPos = "";
+
+ /**
+ * CFML doesn't store casesensitive names for structure keys, but the configuration names must be casesensitive for js.
+ * So we need to find out the correct case for the configuration keys.
+ * We "fix" this by comparing the caseless configuration keys to a list of all available configuration options in the correct case.
+ * changed 20041206 hk at lwd.de (improvements are welcome!)
+ */
+ lConfigKeys = lConfigKeys & "CustomConfigurationsPath,EditorAreaCSS,DocType,BaseHref,FullPage,Debug,SkinPath,PluginsPath,AutoDetectLanguage,DefaultLanguage,ContentLangDirection,EnableXHTML,EnableSourceXHTML,ProcessHTMLEntities,IncludeLatinEntities,IncludeGreekEntities";
+ lConfigKeys = lConfigKeys & ",FillEmptyBlocks,FormatSource,FormatOutput,FormatIndentator,GeckoUseSPAN,StartupFocus,ForcePasteAsPlainText,ForceSimpleAmpersand,TabSpaces,ShowBorders,UseBROnCarriageReturn";
+ lConfigKeys = lConfigKeys & ",ToolbarStartExpanded,ToolbarCanCollapse,ToolbarSets,ContextMenu,FontColors,FontNames,FontSizes,FontFormats,StylesXmlPath,SpellChecker,IeSpellDownloadUrl,MaxUndoLevels";
+ lConfigKeys = lConfigKeys & ",LinkBrowser,LinkBrowserURL,LinkBrowserWindowWidth,LinkBrowserWindowHeight";
+ lConfigKeys = lConfigKeys & ",LinkUpload,LinkUploadURL,LinkUploadWindowWidth,LinkUploadWindowHeight,LinkUploadAllowedExtensions,LinkUploadDeniedExtensions";
+ lConfigKeys = lConfigKeys & ",ImageBrowser,ImageBrowserURL,ImageBrowserWindowWidth,ImageBrowserWindowHeight,SmileyPath,SmileyImages,SmileyColumns,SmileyWindowWidth,SmileyWindowHeight";
+
+ for( key in this.config )
+ {
+ iPos = listFindNoCase( lConfigKeys, key );
+ if( iPos GT 0 )
+ {
+ if( len( sParams ) )
+ sParams = sParams & "&";
+
+ fieldValue = this.config[key];
+ fieldName = listGetAt( lConfigKeys, iPos );
+
+ // set all boolean possibilities in CFML to true/false values
+ if( isBoolean( fieldValue) and fieldValue )
+ fieldValue = "true";
+ else if( isBoolean( fieldValue) )
+ fieldValue = "false";
+
+ sParams = sParams & HTMLEditFormat( fieldName ) & '=' & HTMLEditFormat( fieldValue );
+ }
+ }
+ return sParams;
+ </cfscript>
+
+</cffunction>
+
+</cfcomponent>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfm
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfm 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.cfm 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,161 @@
+<cfsetting enablecfoutputonly="Yes">
+<!--- @Packager.Header
+<FileDescription>
+ ColdFusion integration.
+ Note this module is created for use with Coldfusion 4.52 and above.
+ For a cfc version for coldfusion mx check the fckeditor.cfc.
+
+ Syntax:
+
+ <cfmodule name="path/to/cfc/fckeditor"
+ instanceName="myEditor"
+ toolbarSet="..."
+ width="..."
+ height="..:"
+ value="..."
+ config="..."
+ >
+</FileDescription>
+<Author name="Hendrik Kramer" email="hk at lwd.de" />
+<Author name="Mark Woods" email="mark at thickpaddy.com" />
+--->
+<!--- ::
+ * Attribute validation
+ :: --->
+<cfparam name="attributes.instanceName" type="string">
+<cfparam name="attributes.width" type="string" default="100%">
+<cfparam name="attributes.height" type="string" default="200">
+<cfparam name="attributes.toolbarSet" type="string" default="Default">
+<cfparam name="attributes.value" type="string" default="">
+<cfparam name="attributes.basePath" type="string" default="/fckeditor/">
+<cfparam name="attributes.checkBrowser" type="boolean" default="true">
+<cfparam name="attributes.config" type="struct" default="#structNew()#">
+
+<!--- ::
+ * check browser compatibility via HTTP_USER_AGENT, if checkBrowser is true
+ :: --->
+
+<cfscript>
+if( attributes.checkBrowser )
+{
+ sAgent = lCase( cgi.HTTP_USER_AGENT );
+ isCompatibleBrowser = false;
+
+ // check for Internet Explorer ( >= 5.5 )
+ if( find( "msie", sAgent ) and not find( "mac", sAgent ) and not find( "opera", sAgent ) )
+ {
+ // try to extract IE version
+ stResult = reFind( "msie ([5-9]\.[0-9])", sAgent, 1, true );
+ if( arrayLen( stResult.pos ) eq 2 )
+ {
+ // get IE Version
+ sBrowserVersion = mid( sAgent, stResult.pos[2], stResult.len[2] );
+ if( sBrowserVersion GTE 5.5 )
+ isCompatibleBrowser = true;
+ }
+ }
+ // check for Gecko ( >= 20030210+ )
+ else if( find( "gecko/", sAgent ) )
+ {
+ // try to extract Gecko version date
+ stResult = reFind( "gecko/(200[3-9][0-1][0-9][0-3][0-9])", sAgent, 1, true );
+ if( arrayLen( stResult.pos ) eq 2 )
+ {
+ // get Gecko build (i18n date)
+ sBrowserVersion = mid( sAgent, stResult.pos[2], stResult.len[2] );
+ if( sBrowserVersion GTE 20030210 )
+ isCompatibleBrowser = true;
+ }
+ }
+}
+else
+{
+ // If we should not check browser compatibility, assume true
+ isCompatibleBrowser = true;
+}
+</cfscript>
+
+<cfif isCompatibleBrowser>
+
+ <!--- ::
+ * show html editor area for compatible browser
+ :: --->
+
+ <cfscript>
+ // try to fix the basePath, if ending slash is missing
+ if( len( attributes.basePath) and right( attributes.basePath, 1 ) is not "/" )
+ attributes.basePath = attributes.basePath & "/";
+
+ // construct the url
+ sURL = attributes.basePath & "editor/fckeditor.html?InstanceName=" & attributes.instanceName;
+
+ // append toolbarset name to the url
+ if( len( attributes.toolbarSet ) )
+ sURL = sURL & "&Toolbar=" & attributes.toolbarSet;
+
+ // create configuration string: Key1=Value1&Key2=Value2&... (Key/Value:HTML encoded)
+
+ /**
+ * CFML doesn't store casesensitive names for structure keys, but the configuration names must be casesensitive for js.
+ * So we need to find out the correct case for the configuration keys.
+ * We "fix" this by comparing the caseless configuration keys to a list of all available configuration options in the correct case.
+ * changed 20041206 hk at lwd.de (improvements are welcome!)
+ */
+ lConfigKeys = "";
+ lConfigKeys = lConfigKeys & "CustomConfigurationsPath,EditorAreaCSS,DocType,BaseHref,FullPage,Debug,SkinPath,PluginsPath,AutoDetectLanguage,DefaultLanguage,ContentLangDirection,EnableXHTML,EnableSourceXHTML,ProcessHTMLEntities,IncludeLatinEntities,IncludeGreekEntities";
+ lConfigKeys = lConfigKeys & ",FillEmptyBlocks,FormatSource,FormatOutput,FormatIndentator,GeckoUseSPAN,StartupFocus,ForcePasteAsPlainText,ForceSimpleAmpersand,TabSpaces,ShowBorders,UseBROnCarriageReturn";
+ lConfigKeys = lConfigKeys & ",ToolbarStartExpanded,ToolbarCanCollapse,ToolbarSets,ContextMenu,FontColors,FontNames,FontSizes,FontFormats,StylesXmlPath,SpellChecker,IeSpellDownloadUrl,MaxUndoLevels";
+ lConfigKeys = lConfigKeys & ",LinkBrowser,LinkBrowserURL,LinkBrowserWindowWidth,LinkBrowserWindowHeight";
+ lConfigKeys = lConfigKeys & ",LinkUpload,LinkUploadURL,LinkUploadWindowWidth,LinkUploadWindowHeight,LinkUploadAllowedExtensions,LinkUploadDeniedExtensions";
+ lConfigKeys = lConfigKeys & ",ImageBrowser,ImageBrowserURL,ImageBrowserWindowWidth,ImageBrowserWindowHeight,SmileyPath,SmileyImages,SmileyColumns,SmileyWindowWidth,SmileyWindowHeight";
+
+ sConfig = "";
+
+ for( key in attributes.config )
+ {
+ iPos = listFindNoCase( lConfigKeys, key );
+ if( iPos GT 0 )
+ {
+ if( len( sConfig ) )
+ sConfig = sConfig & "&";
+
+ fieldValue = attributes.config[key];
+ fieldName = listGetAt( lConfigKeys, iPos );
+
+ sConfig = sConfig & urlEncodedFormat( fieldName ) & '=' & urlEncodedFormat( fieldValue );
+ }
+ }
+ </cfscript>
+
+ <cfoutput>
+ <div>
+ <input type="hidden" id="#attributes.instanceName#" name="#attributes.instanceName#" value="#HTMLEditFormat(attributes.value)#" />
+ <input type="hidden" id="#attributes.instanceName#___Config" value="#sConfig#" />
+ <iframe id="#attributes.instanceName#___Frame" src="#sURL#" width="#attributes.width#" height="#attributes.height#" frameborder="no" scrolling="no"></iframe>
+ </div>
+ </cfoutput>
+
+<cfelse>
+
+ <!--- ::
+ * show plain textarea for non compatible browser
+ :: --->
+
+ <cfscript>
+ // append unit "px" for numeric width and/or height values
+ if( isNumeric( attributes.width ) )
+ attributes.width = attributes.width & "px";
+ if( isNumeric( attributes.height ) )
+ attributes.height = attributes.height & "px";
+ </cfscript>
+
+ <!--- Fixed Bug ##1075166. hk at lwd.de 20041206 --->
+ <cfoutput>
+ <div>
+ <textarea name="#attributes.instanceName#" rows="4" cols="40" style="WIDTH: #attributes.width#; HEIGHT: #attributes.height#" wrap="virtual">#HTMLEditFormat(attributes.value)#</textarea>
+ </div>
+ </cfoutput>
+
+</cfif>
+
+<cfsetting enablecfoutputonly="No"><cfexit method="exittag">
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.js
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,175 @@
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckeditor.js
+ * This is the integration file for JavaScript.
+ *
+ * It defines the FCKeditor class that can be used to create editor
+ * instances in a HTML page in the client side. For server side
+ * operations, use the specific integration system.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+// FCKeditor Class
+var FCKeditor = function( instanceName, width, height, toolbarSet, value )
+{
+ // Properties
+ this.InstanceName = instanceName ;
+ this.Width = width || '100%' ;
+ this.Height = height || '200' ;
+ this.ToolbarSet = toolbarSet || 'Default' ;
+ this.Value = value || '' ;
+ this.BasePath = '/fckeditor/' ;
+ this.CheckBrowser = true ;
+ this.DisplayErrors = true ;
+ this.EnableSafari = false ; // This is a temporary property, while Safari support is under development.
+
+ this.Config = new Object() ;
+
+ // Events
+ this.OnError = null ; // function( source, errorNumber, errorDescription )
+}
+
+FCKeditor.prototype.Create = function()
+{
+ // Check for errors
+ if ( !this.InstanceName || this.InstanceName.length == 0 )
+ {
+ this._ThrowError( 701, 'You must specify a instance name.' ) ;
+ return ;
+ }
+
+ document.write( '<div>' ) ;
+
+ if ( !this.CheckBrowser || this._IsCompatibleBrowser() )
+ {
+ document.write( '<input type="hidden" id="' + this.InstanceName + '" name="' + this.InstanceName + '" value="' + this._HTMLEncode( this.Value ) + '" />' ) ;
+ document.write( this._GetConfigHtml() ) ;
+ document.write( this._GetIFrameHtml() ) ;
+ }
+ else
+ {
+ var sWidth = this.Width.toString().indexOf('%') > 0 ? this.Width : this.Width + 'px' ;
+ var sHeight = this.Height.toString().indexOf('%') > 0 ? this.Height : this.Height + 'px' ;
+ document.write('<textarea name="' + this.InstanceName + '" rows="4" cols="40" style="WIDTH: ' + sWidth + '; HEIGHT: ' + sHeight + '" wrap="virtual">' + this._HTMLEncode( this.Value ) + '<\/textarea>') ;
+ }
+
+ document.write( '</div>' ) ;
+}
+
+FCKeditor.prototype.ReplaceTextarea = function()
+{
+ if ( !this.CheckBrowser || this._IsCompatibleBrowser() )
+ {
+ var oTextarea = document.getElementById( this.InstanceName ) ;
+
+ if ( !oTextarea )
+ oTextarea = document.getElementsByName( this.InstanceName )[0] ;
+
+ if ( !oTextarea || oTextarea.tagName != 'TEXTAREA' )
+ {
+ alert( 'Error: The TEXTAREA id "' + this.InstanceName + '" was not found' ) ;
+ return ;
+ }
+
+ oTextarea.style.display = 'none' ;
+ this._InsertHtmlBefore( this._GetConfigHtml(), oTextarea ) ;
+ this._InsertHtmlBefore( this._GetIFrameHtml(), oTextarea ) ;
+ }
+}
+
+FCKeditor.prototype._InsertHtmlBefore = function( html, element )
+{
+ if ( element.insertAdjacentHTML ) // IE
+ element.insertAdjacentHTML( 'beforeBegin', html ) ;
+ else // Gecko
+ {
+ var oRange = document.createRange() ;
+ oRange.setStartBefore( element ) ;
+ var oFragment = oRange.createContextualFragment( html );
+ element.parentNode.insertBefore( oFragment, element ) ;
+ }
+}
+
+FCKeditor.prototype._GetConfigHtml = function()
+{
+ var sConfig = '' ;
+ for ( var o in this.Config )
+ {
+ if ( sConfig.length > 0 ) sConfig += '&' ;
+ sConfig += escape(o) + '=' + escape( this.Config[o] ) ;
+ }
+
+ return '<input type="hidden" id="' + this.InstanceName + '___Config" value="' + sConfig + '" />' ;
+}
+
+FCKeditor.prototype._GetIFrameHtml = function()
+{
+ var sFile = (/fcksource=true/i).test( window.top.location.search ) ? 'fckeditor.original.html' : 'fckeditor.html' ;
+
+ var sLink = this.BasePath + 'editor/' + sFile + '?InstanceName=' + this.InstanceName ;
+ if (this.ToolbarSet) sLink += '&Toolbar=' + this.ToolbarSet ;
+
+ return '<iframe id="' + this.InstanceName + '___Frame" src="' + sLink + '" width="' + this.Width + '" height="' + this.Height + '" frameborder="no" scrolling="no"></iframe>' ;
+}
+
+FCKeditor.prototype._IsCompatibleBrowser = function()
+{
+ var sAgent = navigator.userAgent.toLowerCase() ;
+
+ // Internet Explorer
+ if ( sAgent.indexOf("msie") != -1 && sAgent.indexOf("mac") == -1 && sAgent.indexOf("opera") == -1 )
+ {
+ var sBrowserVersion = navigator.appVersion.match(/MSIE (.\..)/)[1] ;
+ return ( sBrowserVersion >= 5.5 ) ;
+ }
+ // Gecko
+ else if ( navigator.product == "Gecko" && navigator.productSub >= 20030210 )
+ return true ;
+ // Safari
+ else if ( this.EnableSafari && sAgent.indexOf( 'safari' ) != -1 )
+ return ( sAgent.match( /safari\/(\d+)/ )[1] >= 312 ) ; // Build must be at least 312 (1.3)
+ else
+ return false ;
+}
+
+FCKeditor.prototype._ThrowError = function( errorNumber, errorDescription )
+{
+ this.ErrorNumber = errorNumber ;
+ this.ErrorDescription = errorDescription ;
+
+ if ( this.DisplayErrors )
+ {
+ document.write( '<div style="COLOR: #ff0000">' ) ;
+ document.write( '[ FCKeditor Error ' + this.ErrorNumber + ': ' + this.ErrorDescription + ' ]' ) ;
+ document.write( '</div>' ) ;
+ }
+
+ if ( typeof( this.OnError ) == 'function' )
+ this.OnError( this, errorNumber, errorDescription ) ;
+}
+
+FCKeditor.prototype._HTMLEncode = function( text )
+{
+ if ( typeof( text ) != "string" )
+ text = text.toString() ;
+
+ text = text.replace(/&/g, "&") ;
+ text = text.replace(/"/g, """) ;
+ text = text.replace(/</g, "<") ;
+ text = text.replace(/>/g, ">") ;
+ text = text.replace(/'/g, "'") ;
+
+ return text ;
+}
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.lasso
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.lasso 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.lasso 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,100 @@
+[//lasso
+/*
+
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+
+ * http://www.fckeditor.net/
+ *
+ * File Name: fckeditor.lasso
+ * This is the integration file for Lasso.
+ *
+ * It defines the FCKeditor class ("custom type" in Lasso terms)
+ * that can be used to create editor instances in Lasso pages on server side.
+ *
+ * File Authors:
+ * Jason Huck (jason.huck at corefive.com)
+
+ */
+
+
+
+ define_type(
+ 'editor',
+ -namespace='fck_',
+ -description='Creates an instance of FCKEditor.'
+ );
+ local(
+ 'instancename' = 'FCKEditor1',
+ 'width' = '100%',
+ 'height' = '200',
+ 'toolbarset' = 'Default',
+ 'initialvalue' = string,
+ 'basepath' = '/fckeditor/',
+ 'config' = array,
+ 'checkbrowser' = true,
+ 'displayerrors' = false
+ );
+
+ define_tag(
+ 'onCreate',
+ -required='instancename', -type='string',
+ -optional='width', -type='string',
+ -optional='height', -type='string',
+ -optional='toolbarset', -type='string',
+ -optional='initialvalue', -type='string',
+ -optional='basepath', -type='string',
+ -optional='config', -type='array'
+ );
+ self->instancename = #instancename;
+ local_defined('width') ? self->width = #width;
+ local_defined('height') ? self->height = #height;
+ local_defined('toolbarset') ? self->toolbarset = #toolbarset;
+ local_defined('initialvalue') ? self->initialvalue = #initialvalue;
+ local_defined('basepath') ? self->basepath = #basepath;
+ local_defined('config') ? self->config = #config;
+ /define_tag;
+
+ define_tag('create');
+ if(self->isCompatibleBrowser);
+ local('out' = '
+ <div>
+ <input type="hidden" id="' + self->instancename + '" name="' + self->instancename + '" value="' + encode_html(self->initialvalue) + '">
+ ' + self->parseConfig + '
+ <iframe id="' + self->instancename + '___Frame" src="' + self->basepath + 'editor/fckeditor.html?InstanceName=' + self->instancename + '&Toolbar=' + self->toolbarset + '" width="' + self->width + '" height="' + self->height + '" frameborder="no" scrolling="no"></iframe>
+ </div>
+ ');
+ else;
+ local('out' = '
+ <div>
+ <textarea name="' + self->instancename + '" rows="4" cols="40" style="width: ' + self->width + '; height: ' + self->height + '" wrap="virtual">' + encode_html(self->initialvalue) + '</textarea>
+ </div>
+ ');
+ /if;
+ return(@#out);
+ /define_tag;
+
+ define_tag('isCompatibleBrowser');
+ local('result' = true);
+ (client_browser >> 'Apple' || client_browser >> 'Opera' || client_browser >> 'KHTML') ? #result = false;
+ return(#result);
+ /define_tag;
+
+ define_tag('parseConfig');
+ if(self->config->size);
+ local('out' = '<input type="hidden" id="' + self->instancename + '___Config" value="');
+ iterate(self->config, local('this'));
+ loop_count > 1 ? #out += '&';
+ #out += encode_html(#this->first) + '=' + encode_html(#this->second);
+ /iterate;
+ #out += '">\n';
+ return(@#out);
+ /if;
+ /define_tag;
+ /define_type;
+]
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.php
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.php 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.php 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,162 @@
+<?php
+/*
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckeditor.php
+ * This is the integration file for PHP.
+ *
+ * It defines the FCKeditor class that can be used to create editor
+ * instances in PHP pages on server side.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+ */
+
+class FCKeditor
+{
+ var $InstanceName ;
+ var $BasePath ;
+ var $Width ;
+ var $Height ;
+ var $ToolbarSet ;
+ var $Value ;
+ var $Config ;
+
+ // PHP 5 Constructor (by Marcus Bointon <coolbru at users.sourceforge.net>)
+ function __construct( $instanceName )
+ {
+ $this->InstanceName = $instanceName ;
+ $this->BasePath = '/FCKeditor/' ;
+ $this->Width = '100%' ;
+ $this->Height = '200' ;
+ $this->ToolbarSet = 'Default' ;
+ $this->Value = '' ;
+
+ $this->Config = array() ;
+ }
+
+ // PHP 4 Contructor
+ function FCKeditor( $instanceName )
+ {
+ $this->__construct( $instanceName ) ;
+ }
+
+ function Create()
+ {
+ echo $this->CreateHtml() ;
+ }
+
+ function CreateHtml()
+ {
+ $HtmlValue = htmlspecialchars( $this->Value ) ;
+
+ $Html = '<div>' ;
+
+ if ( $this->IsCompatible() )
+ {
+ if ( isset( $_GET['fcksource'] ) && $_GET['fcksource'] == "true" )
+ $File = 'fckeditor.original.html' ;
+ else
+ $File = 'fckeditor.html' ;
+
+ $Link = "{$this->BasePath}editor/{$File}?InstanceName={$this->InstanceName}" ;
+
+ if ( $this->ToolbarSet != '' )
+ $Link .= "&Toolbar={$this->ToolbarSet}" ;
+
+ // Render the linked hidden field.
+ $Html .= "<input type=\"hidden\" id=\"{$this->InstanceName}\" name=\"{$this->InstanceName}\" value=\"{$HtmlValue}\" />" ;
+
+ // Render the configurations hidden field.
+ $Html .= "<input type=\"hidden\" id=\"{$this->InstanceName}___Config\" value=\"" . $this->GetConfigFieldString() . "\" />" ;
+
+ // Render the editor IFRAME.
+ $Html .= "<iframe id=\"{$this->InstanceName}___Frame\" src=\"{$Link}\" width=\"{$this->Width}\" height=\"{$this->Height}\" frameborder=\"no\" scrolling=\"no\"></iframe>" ;
+ }
+ else
+ {
+ if ( strpos( $this->Width, '%' ) === false )
+ $WidthCSS = $this->Width . 'px' ;
+ else
+ $WidthCSS = $this->Width ;
+
+ if ( strpos( $this->Height, '%' ) === false )
+ $HeightCSS = $this->Height . 'px' ;
+ else
+ $HeightCSS = $this->Height ;
+
+ $Html .= "<textarea name=\"{$this->InstanceName}\" rows=\"4\" cols=\"40\" style=\"width: {$WidthCSS}; height: {$HeightCSS}\" wrap=\"virtual\">{$HtmlValue}</textarea>" ;
+ }
+
+ $Html .= '</div>' ;
+
+ return $Html ;
+ }
+
+ function IsCompatible()
+ {
+ global $HTTP_USER_AGENT ;
+
+ if ( isset( $HTTP_USER_AGENT ) )
+ $sAgent = $HTTP_USER_AGENT ;
+ else
+ $sAgent = $_SERVER['HTTP_USER_AGENT'] ;
+
+ if ( strpos($sAgent, 'MSIE') !== false && strpos($sAgent, 'mac') === false && strpos($sAgent, 'Opera') === false )
+ {
+ $iVersion = (float)substr($sAgent, strpos($sAgent, 'MSIE') + 5, 3) ;
+ return ($iVersion >= 5.5) ;
+ }
+ else if ( strpos($sAgent, 'Gecko/') !== false )
+ {
+ $iVersion = (int)substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ;
+ return ($iVersion >= 20030210) ;
+ }
+ else
+ return false ;
+ }
+
+ function GetConfigFieldString()
+ {
+ $sParams = '' ;
+ $bFirst = true ;
+
+ foreach ( $this->Config as $sKey => $sValue )
+ {
+ if ( $bFirst == false )
+ $sParams .= '&' ;
+ else
+ $bFirst = false ;
+
+ if ( $sValue === true )
+ $sParams .= $this->EncodeConfig( $sKey ) . '=true' ;
+ else if ( $sValue === false )
+ $sParams .= $this->EncodeConfig( $sKey ) . '=false' ;
+ else
+ $sParams .= $this->EncodeConfig( $sKey ) . '=' . $this->EncodeConfig( $sValue ) ;
+ }
+
+ return $sParams ;
+ }
+
+ function EncodeConfig( $valueToEncode )
+ {
+ $chars = array(
+ '&' => '%26',
+ '=' => '%3D',
+ '"' => '%22' ) ;
+
+ return strtr( $valueToEncode, $chars ) ;
+ }
+}
+
+?>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fckeditor.pl
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckeditor.pl 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckeditor.pl 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,135 @@
+#####
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# File Name: fckeditor.pl
+# This is the integration file for Perl.
+#
+# File Authors:
+# Takashi Yamaguchi (jack at omakase.net)
+#####
+
+#my $InstanceName;
+#my $BasePath;
+#my $Width;
+#my $Height;
+#my $ToolbarSet;
+#my $Value;
+#my %Config;
+
+sub FCKeditor
+{
+
+ local($instanceName) = @_;
+ $InstanceName = $instanceName;
+ $BasePath = '/FCKeditor/';
+ $Width = '100%';
+ $Height = '200';
+ $ToolbarSet = 'Default';
+ $Value = '';
+}
+
+sub Create
+{
+ print &CreateHtml();
+}
+
+sub specialchar_cnv
+{
+
+ local($ch) = @_;
+
+ $ch =~ s/&/&/g; # &
+ $ch =~ s/\"/"/g; #"
+ $ch =~ s/\'/'/g; # '
+ $ch =~ s/</</g; # <
+ $ch =~ s/>/>/g; # >
+ return($ch);
+}
+
+sub CreateHtml
+{
+
+ $HtmlValue = &specialchar_cnv($Value);
+ $Html = '<div>' ;
+ if(&IsCompatible()) {
+ $Link = $BasePath . "editor/fckeditor.html?InstanceName=$InstanceName";
+ if($ToolbarSet ne '') {
+ $Link .= "&Toolbar=$ToolbarSet";
+ }
+ #// Render the linked hidden field.
+ $Html .= "<input type=\"hidden\" id=\"$InstanceName\" name=\"$InstanceName\" value=\"$HtmlValue\" />" ;
+
+ #// Render the configurations hidden field.
+ $cfgstr = &GetConfigFieldString();
+ $wk = $InstanceName."___Config";
+ $Html .= "<input type=\"hidden\" id=\"$wk\" value=\"$cfgstr\" />" ;
+
+ #// Render the editor IFRAME.
+ $wk = $InstanceName."___Frame";
+ $Html .= "<iframe id=\"$wk\" src=\"$Link\" width=\"$Width\" height=\"$Height\" frameborder=\"no\" scrolling=\"no\"></iframe>";
+ } else {
+ if($Width =~ /\%/g){
+ $WidthCSS = $Width;
+ } else {
+ $WidthCSS = $Width . 'px';
+ }
+ if($Height =~ /\%/g){
+ $HeightCSS = $Height;
+ } else {
+ $HeightCSS = $Height . 'px';
+ }
+ $Html .= "<textarea name=\"$InstanceName\" rows=\"4\" cols=\"40\" style=\"width: $WidthCSS; height: $HeightCSS\" wrap=\"virtual\">$HtmlValue</textarea>";
+ }
+ $Html .= '</div>';
+ return($Html);
+}
+
+sub IsCompatible
+{
+
+ $sAgent = $ENV{'HTTP_USER_AGENT'};
+ if(($sAgent =~ /MSIE/i) && !($sAgent =~ /mac/i) && !($sAgent =~ /Opera/i)) {
+ $iVersion = substr($sAgent,index($sAgent,'MSIE') + 5,3);
+ return($iVersion >= 5.5) ;
+ } elsif($sAgent =~ /Gecko\//i) {
+ $iVersion = substr($sAgent,index($sAgent,'Gecko/') + 6,8);
+ return($iVersion >= 20030210) ;
+ } else {
+ return(0); # 2.0 PR fix
+ }
+}
+
+sub GetConfigFieldString
+{
+ $sParams = '';
+ $bFirst = 0;
+ foreach $sKey (keys %Config) {
+ $sValue = $Config{$sKey};
+ if($bFirst == 1) {
+ $sParams .= '&';
+ } else {
+ $bFirst = 1;
+ }
+ $k = &specialchar_cnv($sKey);
+ $v = &specialchar_cnv($sValue);
+ if($sValue eq "true") {
+ $sParams .= "$k=true";
+ } elsif($sValue eq "false") {
+ $sParams .= "$k=false";
+ } else {
+ $sParams .= "$k=$v";
+ }
+ }
+ return($sParams);
+}
+
+1;
Added: zope.html/trunk/src/zope/html/fckeditor/fckstyles.xml
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fckstyles.xml 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fckstyles.xml 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!--
+ * FCKeditor - The text editor for internet
+ * Copyright (C) 2003-2005 Frederico Caldeira Knabben
+ *
+ * Licensed under the terms of the GNU Lesser General Public License:
+ * http://www.opensource.org/licenses/lgpl-license.php
+ *
+ * For further information visit:
+ * http://www.fckeditor.net/
+ *
+ * "Support Open Source software. What about a donation today?"
+ *
+ * File Name: fckstyles.xml
+ * This is the sample style definitions file. It makes the styles combo
+ * completely customizable.
+ * See FCKConfig.StylesXmlPath in the configuration file.
+ *
+ * File Authors:
+ * Frederico Caldeira Knabben (fredck at fckeditor.net)
+-->
+<Styles>
+ <Style name="Image on Left" element="img">
+ <Attribute name="style" value="padding: 5px; margin-right: 5px" />
+ <Attribute name="border" value="2" />
+ <Attribute name="align" value="left" />
+ </Style>
+ <Style name="Image on Right" element="img">
+ <Attribute name="style" value="padding: 5px; margin-left: 5px" />
+ <Attribute name="border" value="2" />
+ <Attribute name="align" value="right" />
+ </Style>
+ <Style name="Custom Bold" element="span">
+ <Attribute name="style" value="font-weight: bold;" />
+ </Style>
+ <Style name="Custom Italic" element="em" />
+ <Style name="Title" element="span">
+ <Attribute name="class" value="Title" />
+ </Style>
+ <Style name="Code" element="span">
+ <Attribute name="class" value="Code" />
+ </Style>
+ <Style name="Title H3" element="h3" />
+ <Style name="Custom Ruler" element="hr">
+ <Attribute name="size" value="1" />
+ <Attribute name="color" value="#ff0000" />
+ </Style>
+</Styles>
\ No newline at end of file
Added: zope.html/trunk/src/zope/html/fckeditor/fcktemplates.xml
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/fcktemplates.xml 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/fcktemplates.xml 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<Templates imagesBasePath="fck_template/images/">
+ <Template title="Image and Title" image="template1.gif">
+ <Description>One main image with a title and text that surround the image.</Description>
+ <Html>
+ <![CDATA[
+ <img style="MARGIN-RIGHT: 10px" height="100" alt="" width="100" align="left"/>
+ <h3>Type the title here</h3>
+ Type the text here
+ ]]>
+ </Html>
+ </Template>
+ <Template title="Strange Template" image="template2.gif">
+ <Description>A template that defines two colums, each one with a title, and some text.</Description>
+ <Html>
+ <![CDATA[
+ <table cellspacing="0" cellpadding="0" width="100%" border="0">
+ <tbody>
+ <tr>
+ <td width="50%">
+ <h3>Title 1</h3>
+ </td>
+ <td> </td>
+ <td width="50%">
+ <h3>Title 2</h3>
+ </td>
+ </tr>
+ <tr>
+ <td>Text 1</td>
+ <td> </td>
+ <td>Text 2</td>
+ </tr>
+ </tbody>
+ </table>
+ More text goes here.
+ ]]>
+ </Html>
+ </Template>
+ <Template title="Text and Table" image="template3.gif">
+ <Description>A title with some text and a table.</Description>
+ <Html>
+ <![CDATA[
+ <table align="left" width="80%" border="0" cellspacing="0" cellpadding="0"><tr><td>
+ <h3>Title goes here</h3>
+ <p>
+ <table style="FLOAT: right" cellspacing="0" cellpadding="0" width="150" border="1">
+ <tbody>
+ <tr>
+ <td align="center" colspan="3"><strong>Table title</strong></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
+ </tbody>
+ </table>
+ Type the text here</p>
+ </td></tr></table>
+ ]]>
+ </Html>
+ </Template>
+</Templates>
Added: zope.html/trunk/src/zope/html/fckeditor/htaccess.txt
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/htaccess.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/htaccess.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,29 @@
+#
+# FCKeditor - The text editor for internet
+# Copyright (C) 2003-2005 Frederico Caldeira Knabben
+#
+# Licensed under the terms of the GNU Lesser General Public License:
+# http://www.opensource.org/licenses/lgpl-license.php
+#
+# For further information visit:
+# http://www.fckeditor.net/
+#
+# "Support Open Source software. What about a donation today?"
+#
+# -----------------------------------------------------------------------------
+#
+# On some specific Linux installations you could face problems with Firefox.
+# It could give you errors when loading the editor saying that some illegal
+# characters were found (three strange chars in the beginning of the file).
+# This could happen if you map the .js or .css files to PHP, for example.
+#
+# Those characters are the Byte Order Mask (BOM) of the Unicode encoded files.
+# All FCKeditor files are encoded with Unicode.
+#
+# Just rename this file to ".htaccess" and live it in the editor directory.
+# There are no security issues on doing it. It just set the ".js" and ".css"
+# files to their correct type.
+#
+
+AddType application/x-javascript .js
+AddType text/css .css
\ No newline at end of file
Property changes on: zope.html/trunk/src/zope/html/fckeditor/htaccess.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/fckeditor/license.txt
===================================================================
--- zope.html/trunk/src/zope/html/fckeditor/license.txt 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/fckeditor/license.txt 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,458 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
Property changes on: zope.html/trunk/src/zope/html/fckeditor/license.txt
___________________________________________________________________
Name: svn:eol-style
+ native
Added: zope.html/trunk/src/zope/html/field.py
===================================================================
--- zope.html/trunk/src/zope/html/field.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/field.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,86 @@
+"""Interfaces and fields for HTML/XHTML documents.
+
+"""
+__docformat__ = "reStructuredText"
+
+import zope.interface
+import zope.schema
+import zope.schema.interfaces
+
+
+class IHtmlTextField(zope.schema.interfaces.IText):
+ """Text that contains HTML markup.
+
+ This is an abstract interface. Only the concrete derived
+ interfaces should be used for actual field definitions.
+
+ """
+
+
+class IHtmlDocumentField(IHtmlTextField):
+ """HTML document field.
+
+ This is for fields that represent complete HTML documents,
+ including the document head as well as the body.
+
+ """
+
+
+class IHtmlFragmentField(IHtmlTextField):
+ """HTML fragment field.
+
+ This is for fields that represent pieces of HTML that can be
+ composed to create complete documents. This field implies no
+ specifics about what portion of an HTML document is represented,
+ but it must be internally well-formed.
+
+ """
+
+
+class IXhtmlTextField(zope.schema.interfaces.IText):
+ """Text that contains XHTML markup.
+
+ This is an abstract interface. Only the concrete derived
+ interfaces should be used for actual field definitions.
+
+ """
+
+
+class IXhtmlDocumentField(IXhtmlTextField):
+ """XHTML document field.
+
+ This is for fields that represent complete XHTML documents,
+ including the document head as well as the body.
+
+ """
+
+
+class IXhtmlFragmentField(IXhtmlTextField):
+ """XHTML fragment field.
+
+ This is for fields that represent pieces of XHTML that can be
+ composed to create complete documents. This field implies no
+ specifics about what portion of an HTML document is represented,
+ but it must be internally well-formed.
+
+ """
+
+
+class HtmlDocument(zope.schema.Text):
+
+ zope.interface.implements(IHtmlDocumentField)
+
+
+class HtmlFragment(zope.schema.Text):
+
+ zope.interface.implements(IHtmlFragmentField)
+
+
+class XhtmlDocument(zope.schema.Text):
+
+ zope.interface.implements(IXhtmlDocumentField)
+
+
+class XhtmlFragment(zope.schema.Text):
+
+ zope.interface.implements(IXhtmlFragmentField)
Added: zope.html/trunk/src/zope/html/ftesting.zcml
===================================================================
--- zope.html/trunk/src/zope/html/ftesting.zcml 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/ftesting.zcml 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,46 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:browser="http://namespaces.zope.org/browser"
+ i18n_domain="zope"
+ package="zope.html"
+ >
+
+ <!-- This file is the equivalent of site.zcml and it is -->
+ <!-- used for functional testing setup -->
+
+ <include package="zope.app" />
+ <include package="zope.app.debugskin" />
+ <include package="zope.app.server" />
+ <include package="zope.app.authentication" />
+
+ <authenticatedGroup
+ id="zope.Authenticated"
+ title="Everybody"
+ />
+
+ <unauthenticatedPrincipal
+ id="zope.anybody"
+ title="Unauthenticated User" />
+
+ <!-- Principal that tests generally run as -->
+ <principal
+ id="zope.user"
+ title="User"
+ login="user"
+ password="userpw" />
+
+ <include package="zope.formlib"/>
+ <include package="zope.mimetype" file="meta.zcml"/>
+ <include package="zope.mimetype"/>
+ <include package="zope.file"/>
+ <include package="zc.resourcelibrary" file="meta.zcml"/>
+ <include package="zc.resourcelibrary"/>
+ <include package="zope.html"/>
+
+ <securityPolicy
+ component="zope.security.simplepolicies.PermissiveSecurityPolicy"
+ />
+
+ <adapter factory=".ntests.requestToTZInfo"/>
+
+</configure>
Added: zope.html/trunk/src/zope/html/i18n.py
===================================================================
--- zope.html/trunk/src/zope/html/i18n.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/i18n.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,19 @@
+"""Internationalization support for zope.html.
+
+This defines a `MessageFactory` for the I18N domain for the zope.html
+package. This is normally used with this import::
+
+ from i18n import _
+
+The factory is then used normally. Two examples::
+
+ text = _('some internationalized text')
+ text = _('helpful-descriptive-message-id', 'default text')
+
+"""
+__docformat__ = "reStructuredText"
+
+import zope.i18nmessageid
+
+
+_ = zope.i18nmessageid.MessageFactory("zope.html")
Added: zope.html/trunk/src/zope/html/interfaces.py
===================================================================
--- zope.html/trunk/src/zope/html/interfaces.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/interfaces.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,21 @@
+"""Interfaces for zope.html.
+
+"""
+__docformat__ = "reStructuredText"
+
+import zope.interface
+import zope.schema
+
+from i18n import _
+
+
+class IEditableHtmlInformation(zope.interface.Interface):
+ """Information about an HTML file or fragment."""
+
+ isFragment = zope.schema.Bool(
+ title=_("Is fragment?"),
+ description=_("Set to true if the HTML should be handled as a"
+ " fragment to be composed to create a document."),
+ required=True,
+ readonly=False,
+ )
Added: zope.html/trunk/src/zope/html/ntests.py
===================================================================
--- zope.html/trunk/src/zope/html/ntests.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/ntests.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,34 @@
+"""Test harness for zope.html functional tests.
+
+$Id: ntests.py 3259 2005-08-19 16:46:26Z gary $
+"""
+import os
+import unittest
+
+import pytz
+
+import zope.component
+import zope.interface.common.idatetime
+import zope.publisher.interfaces
+
+from zope.app.testing import functional
+
+import zc.testlayer.ftesting
+
+#### testing framework ####
+
+ at zope.component.adapter(zope.publisher.interfaces.IRequest)
+ at zope.interface.implementer(zope.interface.common.idatetime.ITZInfo)
+def requestToTZInfo(request):
+ return pytz.timezone('US/Eastern')
+
+#### test setup ####
+
+EditableHtmlLayer = zc.testlayer.ftesting.FTestingLayer(
+ os.path.join(os.path.split(__file__)[0], 'ftesting.zcml'),
+ __name__, "EditableHtmlLayer")
+
+def test_suite():
+ suite = functional.FunctionalDocFileSuite("browser.txt")
+ suite.layer = EditableHtmlLayer
+ return suite
Added: zope.html/trunk/src/zope/html/tests.py
===================================================================
--- zope.html/trunk/src/zope/html/tests.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/tests.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,28 @@
+"""Test harness for zope.html.
+
+"""
+__docformat__ = "reStructuredText"
+
+from zope.testing import doctest
+
+import zope.annotation.attribute
+import zope.app.testing.placelesssetup
+import zope.component
+import zope.mimetype.types
+
+
+def setUp(test):
+ zope.app.testing.placelesssetup.setUp()
+ zope.component.provideAdapter(
+ zope.annotation.attribute.AttributeAnnotations)
+ # we have to initialize the mimetype handling
+ zope.mimetype.types.setup()
+
+
+def tearDown(test):
+ zope.app.testing.placelesssetup.tearDown()
+
+
+def test_suite():
+ return doctest.DocFileSuite(
+ "docinfo.txt", setUp=setUp, tearDown=tearDown)
Added: zope.html/trunk/src/zope/html/widget.py
===================================================================
--- zope.html/trunk/src/zope/html/widget.py 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/widget.py 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,50 @@
+"""Widget implementations for rich-text fields.
+
+"""
+__docformat__ = "reStructuredText"
+
+import zope.app.form.browser
+
+import zc.resourcelibrary
+
+
+class FckeditorWidget(zope.app.form.browser.TextAreaWidget):
+
+ toolbarConfiguration = "zope"
+
+ def __call__(self):
+ zc.resourcelibrary.need("fckeditor")
+ #
+ # XXX The 'shortname' here needs some salt to ensure that
+ # multiple widgets with the same trailing name are
+ # distinguishable; some encoding of the full name seems
+ # appropriate, or a per-request counter would also do nicely.
+ #
+ d = {
+ "name": self.name,
+ "shortname": self.name.split('.', 1)[-1],
+ "toolbars": self.toolbarConfiguration,
+ }
+ # suppress the rows/cols since those are ignored anyway
+ self.width = 10
+ self.height = 10
+ textarea = super(FckeditorWidget, self).__call__()
+ textarea = textarea.replace(' cols="10"', "", 1)
+ textarea = textarea.replace(' rows="10"', "", 1)
+
+ return textarea + (JAVASCRIPT_TEMPLATE % d)
+
+
+# This uses a hard-coded width instead of a percentage, because the
+# percentage doesn't seem to work in Firefox/Mozilla/Epiphany.
+# Hopefully this will be fixed or there's some better workaround for
+# it.
+
+JAVASCRIPT_TEMPLATE = '''
+<script type="text/javascript" language="JavaScript">
+var oFCKeditor_%(shortname)s = new FCKeditor("%(name)s", 600, 400, "%(toolbars)s");
+ oFCKeditor_%(shortname)s.BasePath = "/@@/fckeditor/";
+ oFCKeditor_%(shortname)s.Config["CustomConfigurationsPath"] = "/@@/zope_fckconfig.js";
+ oFCKeditor_%(shortname)s.ReplaceTextarea();
+</script>
+'''
Added: zope.html/trunk/src/zope/html/zope_fckconfig.js
===================================================================
--- zope.html/trunk/src/zope/html/zope_fckconfig.js 2006-08-15 21:33:15 UTC (rev 69547)
+++ zope.html/trunk/src/zope/html/zope_fckconfig.js 2006-08-15 21:36:17 UTC (rev 69548)
@@ -0,0 +1,45 @@
+/* Configuration substantially based on the configuration from Tiks:
+ * http://svn.tiks.org/svn/repos/Tiks/trunk/src/tiks/widgets/fckeditor/browser/tiks_fckconfig.js
+ * by Roger Ineichen (dev at projekt01.ch)
+ */
+
+FCKConfig.BasePath = '/@@/fckeditor/editor/';
+FCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css' ;
+FCKConfig.CustomConfigurationsPath = "/@@/zope_fckconfig.js";
+
+FCKConfig.ToolbarSets["zope"] = [
+ ['Source','DocProps'],
+ ['Cut','Copy','Paste','PasteText','PasteWord','-'],
+ ['SelectAll','RemoveFormat'],
+ ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
+ ['OrderedList','UnorderedList','-','Outdent','Indent'],
+ ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
+ ['Image','Link','Unlink','Anchor','Table','Rule'],
+ '/',
+ ['Style','FontFormat','FontName','FontSize'],
+ ['TextColor','BGColor'],
+ ['About']
+ ];
+
+// set faked table borders on table wth border="0"
+FCKConfig.ShowBorders = true ;
+
+// The contextURL is set in the javescipt template and used in the explorer implementation
+FCKConfig.contextURL = window.top.top.contextURL;
+
+FCKConfig.LinkBrowser = false ;
+FCKConfig.LinkBrowserURL = window.top.top.explorerURL;
+FCKConfig.LinkBrowserWindowWidth = 650 ; // 40%
+FCKConfig.LinkBrowserWindowHeight = 440 ; // 40%
+
+FCKConfig.ImageBrowser = false ;
+FCKConfig.ImageBrowserURL = window.top.top.explorerURL;
+FCKConfig.ImageBrowserWindowWidth = 650 ; // 40% ;
+FCKConfig.ImageBrowserWindowHeight = 440 ; // 40% ;
+
+// change this views if you need to load a different file explorer tree
+// This way you can load different explorers for different widget since
+// you can load different configuration scripts for each widget.
+// See tiks.skintools.explorer for more info
+FCKConfig.treeview = '@@explorer_tree';
+FCKConfig.insertview = '@@explorer_insert';
More information about the Checkins
mailing list