#2867 - Upgrading from FCKEditor 2.6.4.1 to FCKEditor 2.6.5, Build 23959, 21-SEP-2009.

skala
Ivan Tcholakov 16 years ago
parent 965f0ad605
commit 7deb5a929d
  1. 34
      documentation/changelog.html
  2. 182
      main/inc/lib/fckeditor/_whatsnew.html
  3. 139
      main/inc/lib/fckeditor/_whatsnew_history.html
  4. 4
      main/inc/lib/fckeditor/editor/_source/classes/fckeditingarea.js
  5. 3
      main/inc/lib/fckeditor/editor/_source/classes/fckpanel.js
  6. 4
      main/inc/lib/fckeditor/editor/_source/fckeditorapi.js
  7. 10
      main/inc/lib/fckeditor/editor/_source/internals/fck.js
  8. 3
      main/inc/lib/fckeditor/editor/_source/internals/fckcommands.js
  9. 447
      main/inc/lib/fckeditor/editor/_source/internals/fckscayt.js
  10. 9
      main/inc/lib/fckeditor/editor/_source/internals/fcktoolbaritems.js
  11. 2
      main/inc/lib/fckeditor/editor/_source/internals/fcktoolbarset.js
  12. 4
      main/inc/lib/fckeditor/editor/dialog/fck_about.html
  13. 4
      main/inc/lib/fckeditor/editor/dialog/fck_paste.html
  14. 751
      main/inc/lib/fckeditor/editor/dialog/fck_scayt.html
  15. 169
      main/inc/lib/fckeditor/editor/dialog/fck_scayt/scayt_dialog.css
  16. 7
      main/inc/lib/fckeditor/editor/dialog/fck_table.html
  17. 8
      main/inc/lib/fckeditor/editor/fckeditor.html
  18. 9
      main/inc/lib/fckeditor/editor/fckeditor.original.html
  19. 1
      main/inc/lib/fckeditor/editor/filemanager/browser/default/frmactualfolder.html
  20. 6
      main/inc/lib/fckeditor/editor/filemanager/connectors/php/io.php
  21. 17
      main/inc/lib/fckeditor/editor/js/fckeditorcode_gecko.js
  22. 19
      main/inc/lib/fckeditor/editor/js/fckeditorcode_ie.js
  23. 112
      main/inc/lib/fckeditor/editor/lang/_translationstatus.txt
  24. 7
      main/inc/lib/fckeditor/editor/lang/af.js
  25. 7
      main/inc/lib/fckeditor/editor/lang/ar.js
  26. 7
      main/inc/lib/fckeditor/editor/lang/bg.js
  27. 7
      main/inc/lib/fckeditor/editor/lang/bn.js
  28. 7
      main/inc/lib/fckeditor/editor/lang/bs.js
  29. 7
      main/inc/lib/fckeditor/editor/lang/ca.js
  30. 7
      main/inc/lib/fckeditor/editor/lang/cs.js
  31. 7
      main/inc/lib/fckeditor/editor/lang/da.js
  32. 7
      main/inc/lib/fckeditor/editor/lang/de.js
  33. 7
      main/inc/lib/fckeditor/editor/lang/el.js
  34. 7
      main/inc/lib/fckeditor/editor/lang/en-au.js
  35. 7
      main/inc/lib/fckeditor/editor/lang/en-ca.js
  36. 7
      main/inc/lib/fckeditor/editor/lang/en-uk.js
  37. 7
      main/inc/lib/fckeditor/editor/lang/en.js
  38. 7
      main/inc/lib/fckeditor/editor/lang/eo.js
  39. 7
      main/inc/lib/fckeditor/editor/lang/es.js
  40. 7
      main/inc/lib/fckeditor/editor/lang/et.js
  41. 7
      main/inc/lib/fckeditor/editor/lang/eu.js
  42. 7
      main/inc/lib/fckeditor/editor/lang/fa.js
  43. 7
      main/inc/lib/fckeditor/editor/lang/fi.js
  44. 7
      main/inc/lib/fckeditor/editor/lang/fo.js
  45. 7
      main/inc/lib/fckeditor/editor/lang/fr-ca.js
  46. 7
      main/inc/lib/fckeditor/editor/lang/fr.js
  47. 7
      main/inc/lib/fckeditor/editor/lang/gl.js
  48. 7
      main/inc/lib/fckeditor/editor/lang/gu.js
  49. 7
      main/inc/lib/fckeditor/editor/lang/he.js
  50. 7
      main/inc/lib/fckeditor/editor/lang/hi.js
  51. 7
      main/inc/lib/fckeditor/editor/lang/hr.js
  52. 7
      main/inc/lib/fckeditor/editor/lang/hu.js
  53. 7
      main/inc/lib/fckeditor/editor/lang/is.js
  54. 7
      main/inc/lib/fckeditor/editor/lang/it.js
  55. 7
      main/inc/lib/fckeditor/editor/lang/ja.js
  56. 7
      main/inc/lib/fckeditor/editor/lang/km.js
  57. 7
      main/inc/lib/fckeditor/editor/lang/ko.js
  58. 7
      main/inc/lib/fckeditor/editor/lang/lt.js
  59. 7
      main/inc/lib/fckeditor/editor/lang/lv.js
  60. 7
      main/inc/lib/fckeditor/editor/lang/mn.js
  61. 7
      main/inc/lib/fckeditor/editor/lang/ms.js
  62. 7
      main/inc/lib/fckeditor/editor/lang/nb.js
  63. 7
      main/inc/lib/fckeditor/editor/lang/nl.js
  64. 7
      main/inc/lib/fckeditor/editor/lang/no.js
  65. 7
      main/inc/lib/fckeditor/editor/lang/pl.js
  66. 7
      main/inc/lib/fckeditor/editor/lang/pt-br.js
  67. 7
      main/inc/lib/fckeditor/editor/lang/pt.js
  68. 7
      main/inc/lib/fckeditor/editor/lang/ro.js
  69. 7
      main/inc/lib/fckeditor/editor/lang/ru.js
  70. 7
      main/inc/lib/fckeditor/editor/lang/sk.js
  71. 37
      main/inc/lib/fckeditor/editor/lang/sl.js
  72. 7
      main/inc/lib/fckeditor/editor/lang/sr-latn.js
  73. 7
      main/inc/lib/fckeditor/editor/lang/sr.js
  74. 7
      main/inc/lib/fckeditor/editor/lang/sv.js
  75. 7
      main/inc/lib/fckeditor/editor/lang/th.js
  76. 7
      main/inc/lib/fckeditor/editor/lang/tr.js
  77. 7
      main/inc/lib/fckeditor/editor/lang/uk.js
  78. 7
      main/inc/lib/fckeditor/editor/lang/vi.js
  79. 7
      main/inc/lib/fckeditor/editor/lang/zh-cn.js
  80. 7
      main/inc/lib/fckeditor/editor/lang/zh.js
  81. 3
      main/inc/lib/fckeditor/editor/plugins/customizations/fckplugin.js
  82. 2
      main/inc/lib/fckeditor/fckconfig.js
  83. 2
      main/inc/lib/fckeditor/fckpackager.xml

@ -19,6 +19,32 @@
<a href="index.html">Documentation</a> &gt; Changelog
<div id="outerframe">
<div id="main">
<h1>Dokeos 1.8.6.2 - .............</h1>
<h3>Release notes - summary</h3>
<p>....</p>
<h3>New Features</h3>
<ul>
<li>...</li>
</li>
</ul>
<h3>Debugging</h3>
<ul>
<li>Online editor: A upgrade from FCKEditor 2.6.4.1 to <strong>FCKEditor 2.6.5, Build 23959</strong> has been implemented. (#2867)</li>
<li>...</li>
</ul>
<br />
<h3>CSS changes</h3>
<ul>
<li>...</li>
</ul>
<h3>Known issues</h3>
<ul>
<li>...</li>
</ul>
<h3>Deprecated files</h3>
<ul>
<li>...</li>
</ul>
<br />
<h1>Dokeos 1.8.6.1 - August 2009</h1>
<h3>Release notes - summary</h3>
@ -35,13 +61,13 @@
<li>An internationalization option has been added for improving sorting in arbitrary language. When the <a href="http://php.net/manual/en/book.intl.php" target="_blank">intl</a> php-extension has been installed, various sorting routines exploit it for better sorting. Rationale: The PHP5 run-time environment does not provide native and reliable way of sorting UTF-8 strings. (FS#306)</li>
<li>Installation script: The page about system requilements has been updated. Also, at the very beginning, a check has been added whether the <a href="http://php.net/manual/en/book.mbstring.php" target="_blank">mbstring</a> php-extension is installed - see <a href="http://dokeos.com/forum/viewtopic.php?t=29548" target="_blank">the related forum topic</a>. (FS#306)</li>
<li>A new php-based configuration for the online editor has been implemented, see <i>dokeos/main/inc/lib/fckeditor/myconfig.php</i>. Also, toolbar definitions have been split in separate php-files within the directory <i>dokeos/main/inc/lib/fckeditor/toolbars/</i> . Customization of the editor is more convenient and flexible now. (FS#2867)</li>
<li>Online editor: A upgrade from FCKEditor 2.6.4 to <b>FCKEditor 2.6.4.1</b> has been implemented. (FS#4383)</li>
<li>Online editor: A upgrade from FCKEditor 2.6.4 to <strong>FCKEditor 2.6.4.1</strong> has been implemented. (FS#4383)</li>
<li>Online editor: Blocking copy/paste for trainees has been added. The feature is configurable through editing the toolbar definition files within the directory <i>dokeos/main/inc/lib/fckeditor/toolbars/</i> . (FS#2867)</li>
<li>Online editor: Preview tabs have been added to the dialogs for inserting video, flv-video, and YouTube video. (FS#2867)</li>
<li>Online editor: The <b>audio</b> plugin has been activated by default as an implementation of the "Insert audio / Audio properties" dialog. This new plugin is intended to replace the "MP3" plugin. (FS#2867)</li>
<li>Online editor: The <strong>audio</strong> plugin has been activated by default as an implementation of the "Insert audio / Audio properties" dialog. This new plugin is intended to replace the "MP3" plugin. (FS#2867)</li>
<li>Online editor: The simple file manager, the advanced file manager and the image manager have been integrated by default with the editor's dialog system. Thus, they work faster and in a more secure way. (FS#2867)</li>
<li>Online editor: Configuration of the <b>mimetex</b> plugin has been reworked to gain simplicity. The procedure for configuration has been updated, see <a href="http://www.dokeos.com/forum/viewtopic.php?t=29594" target="_blank">the related forum topic</a>. (FS#2867)</li>
<li>Online editor: A new <b>asciimath</b> plugin for inserting mathematical formulas has been added. It is based on the <a href="http://mathcs.chapman.edu/~jipsen/mathml/asciimath.html" target="_blank">ASCIIMathML.js</a> library. (FS#2867)</li>
<li>Online editor: Configuration of the <strong>mimetex</strong> plugin has been reworked to gain simplicity. The procedure for configuration has been updated, see <a href="http://www.dokeos.com/forum/viewtopic.php?t=29594" target="_blank">the related forum topic</a>. (FS#2867)</li>
<li>Online editor: A new <strong>asciimath</strong> plugin for inserting mathematical formulas has been added. It is based on the <a href="http://mathcs.chapman.edu/~jipsen/mathml/asciimath.html" target="_blank">ASCIIMathML.js</a> library. (FS#2867)</li>
<li>Social: Added possibility to define RSS feeds inside personal page of social network (need to define an 'rssfeeds' extra user text field)</li>
</ul>
<h3>Debugging</h3>

@ -33,143 +33,73 @@
<h1>
FCKeditor ChangeLog - What's New?</h1>
<h3>
Version 2.6.4.1</h3>
<p>
Fixed Bugs:</p>
<ul>
<li><strong>Security release, upgrade is highly recommended.</strong></li>
</ul>
<h3>
Version 2.6.4</h3>
<p>
Fixed Bugs:</p>
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2777">#2777</a>] Merging
cells between table header and body is no longer possible.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2815">#2815</a>] Fixed
WSC issues at slow connection speed. Added SSL support.</li>
<li>Language file updates for the following languages:
<ul>
<li>Chinese (Traditional)</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2846">#2846</a>] French</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2801">#2801</a>] Hebrew</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2824">#2824</a>] Russian</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2811">#2811</a>] Turkish</li>
</ul>
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2757">#2757</a>] Fixed
a minor bug which causes selection positions to be improperly restored during undos
and redos.</li>
</ul>
<h3>
Version 2.6.4 Beta</h3>
Version 2.6.5</h3>
<p>
New Features and Improvements:</p>
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2685">#2685</a>] Integration
with "WebSpellChecker", a <strong>zero installation and free spell checker</strong>
provided by SpellChecker.net. This is now the default spell checker in the editor
(requires internet connection). All previous spell checking solutions are still
available.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2430">#2430</a>] In the
table dialog it's possible to create header cells in the first row (included in
a thead element) or the first column of the table. </li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/822">#822</a>] The table
cell dialog allows switching between normal data cells or header cells (TD vs. TH).
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2515">#2515</a>] New language
file for Icelandic.</li>
<li>Introduced the Spell Check As You Type (SCAYT) spell checking option.</li>
</ul>
<p>
Fixed Bugs:</p>
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2381">#2381</a>] Protected
the editor from duplicate iframes</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1752">#1752</a>] Fixed
the issue with tablecommands plugin and undefined tagName.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2333">#2333</a>] The &amp;gt;
character inside text wasn't encoded in Opera and Safari.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2467">#2467</a>] Fixed
JavaScript error with the fit window command in source mode.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2472">#2472</a>] Splitting
a TH will create a two TH, not a TH and a TD.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1891">#1891</a>] Removed
unnecessary name attributes in dialogs. </li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/798">#798</a>, <a target="_blank"
href="http://dev.fckeditor.net/ticket/2495">#2495</a>] If an image was placed inside
a container with dimensions or floating it wasn't possible to edit its properties
from the toolbar or context menu.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1982">#1982</a>] Submenus
in IE7 now are shown properly.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2496">#2496</a>] Using
the Paste dialogs in IE might insert the content at the start of the editor.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2349">#2496</a>] Fixed
RTL dialog layout in Internet Explorer.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2488">#2488</a>] Fixed
the issue where email links in IE would take the browser to a new page in addition
to calling up the email client.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2519">#2519</a>] Fixed
race condition at registering the FCKeditorAPI object in multiple editor scenarios.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2525">#2525</a>] Fixed
JavaScript error in Google Chrome when StartupShowBlocks is set to true.</li>
<li><strong>Security release, upgrade is highly recommended</strong> (fixed security issues in ASP and ColdFusion scripts).
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2856">#2856</a>] Fixed
problem with inches in paste dialog.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3120">#3120</a>]
# (pound sign) is not correctly escaped in file urls.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2915">#2915</a>]
About plugin shows misleading user language.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2821">#2821</a>] Configuration
items that used floating point numbers were parsed as integers.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2604">#2064</a>] The asp
connector didn't work correctly in windows 2000 servers.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3429">#3429</a>] Fixed
problem in IE8 with XHTML doctype. Thanks to duncansimey.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3446">#3446</a>] Fixed self-closed
&lt;option&gt; in the table cell dialog.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3181">#3181</a>] Node selection
could raise an error in IE8.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2156">#2156</a>]
After calling GetData() the style removal operations didn't work in IE. Thanks to
Compendium Blogware.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3427">#3427</a>] Improved
compatibility of Document properties dialog with Eclipse.</li>
<li>Language file updates for the following languages:
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2440">#2440</a>] Dutch</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2451">#2451</a>] Basque</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2451">#2650</a>] Danish</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2208">#2535</a>] German
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2908">#2908</a>] Czech </li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2849">#2849</a>] Lithuanian</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3636">#3636</a>] Polish</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3741">#3741</a>] Korean</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2861">#2861</a>] Slovenian</li>
</ul>
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2531">#2531</a>] The ENTER
key will properly scroll to the cursor position when breaking long paragraphs.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2573">#2573</a>] The type
name in configurations for the ASP connector are now case sensitive.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2503">#2503</a>] DL, DT
and DD where missing the formatting in the generated HTML.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2516">#2516</a>] Replaced
the extension AddItem of Array with the standard "push" method.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2486">#2486</a>] Vertically
splitting cell with colspan &gt; 1 breaks table layout.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2597">#2597</a>] Fixed
the issue where dropping contents from outside of the editor doesn't work in Safari.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2412">#2412</a>] Fixed
the issue where FCK.InsertHtml() is no longer removing selected contents after content
insertion in Firefox.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2407">#2407</a>] Fixed
the issue where the Div container command and the blockquote command would break
lists.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2469">#2469</a>] Fixed
a minor issue where FCK.SetData() may cause the editor to become unresponsive to
the first click after being defocused.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2611">#2611</a>] Fixed
an extra slash on quickupload of the asp connector.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2616">#2616</a>] Fixed
another situation where new elements were inserted at the beginning of the content
in IE.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2634">#2634</a>] Fixed
two obsolete references to Array::AddItem() instances still in the code.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2679">#2679</a>] Fixed
infinite loop problems with FCKDomRangeIterator class which causes some commands
to hang when applied to certain document structures.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2649">#2649</a>] Fixed
a JavaScript error in IE when user tries to search with the "Match whole word" option
enabled and the matched word is at exactly the end of document.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2603">#2603</a>] Changed
the <a href="http://docs.fckeditor.net/EMailProtection">EMailProtection</a> to "none"
for better compatibility.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2612">#2612</a>] The 'ForcePasteAsPlainText'
configuration option didn't work correctly in Safari and Chrome.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2696">#2696</a>] Fixed
non-working autogrow plugin.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2753">#2753</a>] Fixed
occasional exceptions in the dragersizetable plugin with IE.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2653">#2653</a>] and [<a
target="_blank" href="http://dev.fckeditor.net/ticket/2733">#2733</a>] Enable undo
of changes to tables and table cells.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1865">#1865</a>] The context
menu is now working properly over the last row in a table with thead. Thanks to
Koen Willems.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3439">#3439</a>] IgnoreEmptyParagraphValue
had no effect if ProcessHTMLEntities is false.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3880">#3880</a>] Fixed some minor
logical and typing mistakes in fckdomrange_ie.js.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2689">#2689</a>] If a
custom connector tried to use the "url" attribute for files it was always reencoded.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1537">#1537</a>] Fixed extra
&lt;p&gt; tag added before pasted contents from Paste From Word dialog.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2874">#2874</a>] Fixed wrong position
of caption tag in tables with table headers.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3818">#3818</a>] Fixed layout error
in text and background color popups when more colors button is disabled.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3481">#3481</a>] Fixed an issue in
WebKit where paste actions inside table cells may leak outside of the table cell.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3677">#3677</a>] Fixed JavaScript
error when trying to create link for images inside floating div containers.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3925">#3925</a>] Removed obsolete
parentWindow reference from FCKDialog.OpenDialog().</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2936">#2936</a>] Added protection
in the PHP upload if the destination folder is placed at the root and doesn't exit.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/4357">#4357</a>] Avoid problem in
the paste dialog if IIS is set to process HTML files as Asp.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2201">#2201</a>] Fixed a crash in IE
in an object is selected (with handles) on unload of the editor.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/3053">#3053</a>] Fixed problems with
the height of the content area in Safari and Chrome.</li>
</ul>
<p>
<a href="_whatsnew_history.html">See previous versions history</a></p>

@ -32,6 +32,145 @@
<body>
<h1>
FCKeditor ChangeLog - What's New?</h1>
<h3>
Version 2.6.4.1</h3>
<p>
Fixed Bugs:</p>
<ul>
<li><strong>Security release, upgrade is highly recommended.</strong></li>
</ul>
<h3>
Version 2.6.4</h3>
<p>
Fixed Bugs:</p>
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2777">#2777</a>] Merging
cells between table header and body is no longer possible.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2815">#2815</a>] Fixed
WSC issues at slow connection speed. Added SSL support.</li>
<li>Language file updates for the following languages:
<ul>
<li>Chinese (Traditional)</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2846">#2846</a>] French</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2801">#2801</a>] Hebrew</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2824">#2824</a>] Russian</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2811">#2811</a>] Turkish</li>
</ul>
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2757">#2757</a>] Fixed
a minor bug which causes selection positions to be improperly restored during undos
and redos.</li>
</ul>
<h3>
Version 2.6.4 Beta</h3>
<p>
New Features and Improvements:</p>
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2685">#2685</a>] Integration
with "WebSpellChecker", a <strong>zero installation and free spell checker</strong>
provided by SpellChecker.net. This is now the default spell checker in the editor
(requires internet connection). All previous spell checking solutions are still
available.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2430">#2430</a>] In the
table dialog it's possible to create header cells in the first row (included in
a thead element) or the first column of the table. </li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/822">#822</a>] The table
cell dialog allows switching between normal data cells or header cells (TD vs. TH).
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2515">#2515</a>] New language
file for Icelandic.</li>
</ul>
<p>
Fixed Bugs:</p>
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2381">#2381</a>] Protected
the editor from duplicate iframes</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1752">#1752</a>] Fixed
the issue with tablecommands plugin and undefined tagName.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2333">#2333</a>] The &amp;gt;
character inside text wasn't encoded in Opera and Safari.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2467">#2467</a>] Fixed
JavaScript error with the fit window command in source mode.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2472">#2472</a>] Splitting
a TH will create a two TH, not a TH and a TD.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1891">#1891</a>] Removed
unnecessary name attributes in dialogs. </li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/798">#798</a>, <a target="_blank"
href="http://dev.fckeditor.net/ticket/2495">#2495</a>] If an image was placed inside
a container with dimensions or floating it wasn't possible to edit its properties
from the toolbar or context menu.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1982">#1982</a>] Submenus
in IE7 now are shown properly.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2496">#2496</a>] Using
the Paste dialogs in IE might insert the content at the start of the editor.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2349">#2496</a>] Fixed
RTL dialog layout in Internet Explorer.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2488">#2488</a>] Fixed
the issue where email links in IE would take the browser to a new page in addition
to calling up the email client.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2519">#2519</a>] Fixed
race condition at registering the FCKeditorAPI object in multiple editor scenarios.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2525">#2525</a>] Fixed
JavaScript error in Google Chrome when StartupShowBlocks is set to true.</li>
<li>Language file updates for the following languages:
<ul>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2440">#2440</a>] Dutch</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2451">#2451</a>] Basque</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2451">#2650</a>] Danish</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2208">#2535</a>] German
</li>
</ul>
</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2531">#2531</a>] The ENTER
key will properly scroll to the cursor position when breaking long paragraphs.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2573">#2573</a>] The type
name in configurations for the ASP connector are now case sensitive.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2503">#2503</a>] DL, DT
and DD where missing the formatting in the generated HTML.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2516">#2516</a>] Replaced
the extension AddItem of Array with the standard "push" method.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2486">#2486</a>] Vertically
splitting cell with colspan &gt; 1 breaks table layout.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2597">#2597</a>] Fixed
the issue where dropping contents from outside of the editor doesn't work in Safari.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2412">#2412</a>] Fixed
the issue where FCK.InsertHtml() is no longer removing selected contents after content
insertion in Firefox.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2407">#2407</a>] Fixed
the issue where the Div container command and the blockquote command would break
lists.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2469">#2469</a>] Fixed
a minor issue where FCK.SetData() may cause the editor to become unresponsive to
the first click after being defocused.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2611">#2611</a>] Fixed
an extra slash on quickupload of the asp connector.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2616">#2616</a>] Fixed
another situation where new elements were inserted at the beginning of the content
in IE.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2634">#2634</a>] Fixed
two obsolete references to Array::AddItem() instances still in the code.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2679">#2679</a>] Fixed
infinite loop problems with FCKDomRangeIterator class which causes some commands
to hang when applied to certain document structures.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2649">#2649</a>] Fixed
a JavaScript error in IE when user tries to search with the "Match whole word" option
enabled and the matched word is at exactly the end of document.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2603">#2603</a>] Changed
the <a href="http://docs.fckeditor.net/EMailProtection">EMailProtection</a> to "none"
for better compatibility.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2612">#2612</a>] The 'ForcePasteAsPlainText'
configuration option didn't work correctly in Safari and Chrome.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2696">#2696</a>] Fixed
non-working autogrow plugin.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2753">#2753</a>] Fixed
occasional exceptions in the dragersizetable plugin with IE.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/2653">#2653</a>] and [<a
target="_blank" href="http://dev.fckeditor.net/ticket/2733">#2733</a>] Enable undo
of changes to tables and table cells.</li>
<li>[<a target="_blank" href="http://dev.fckeditor.net/ticket/1865">#1865</a>] The context
menu is now working properly over the last row in a table with thead. Thanks to
Koen Willems.</li>
</ul>
<h3>
Version 2.6.3</h3>
<p>

@ -354,7 +354,11 @@ FCKEditingArea.prototype._FocusIE = function()
function FCKEditingArea_Cleanup()
{
if ( this.Document )
{
// Avoid IE crash if an object is selected on unload #2201
this.Document.selection.empty() ;
this.Document.body.innerHTML = "" ;
}
this.TargetElement = null ;
this.IFrame = null ;
this.Document = null ;

@ -231,6 +231,9 @@ FCKPanel.prototype.Show = function( x, y, relElement, width, height )
this.RelativeElement = relElement ;
}
// Save the popup related arguments so they can be used by others (e.g. SCAYT).
this._PopupArgs = [x, y, iMainWidth, eMainNode.offsetHeight, relElement];
// Second call: Show the Popup at the specified location, with the correct size.
this._Popup.show( x, y, iMainWidth, eMainNode.offsetHeight, relElement ) ;

@ -40,8 +40,8 @@ function InitializeAPI()
// objects that aren't really FCKeditor instances.
var sScript =
'window.FCKeditorAPI = {' +
'Version : "2.6.4.1",' +
'VersionBuild : "23405",' +
'Version : "2.6.5",' +
'VersionBuild : "23959",' +
'Instances : window.FCKeditorAPI && window.FCKeditorAPI.Instances || {},' +
'GetInstance : function( name )' +

@ -235,6 +235,8 @@ var FCK =
GetData : function( format )
{
FCK.Events.FireEvent("OnBeforeGetData") ;
// We assume that if the user is in source editing, the editor value must
// represent the exact contents of the source, as the user wanted it to be.
if ( FCK.EditMode == FCK_EDITMODE_SOURCE )
@ -270,7 +272,11 @@ var FCK =
data = FCK.XmlDeclaration + '\n' + data ;
}
return FCKConfig.ProtectedSource.Revert( data ) ;
data = FCKConfig.ProtectedSource.Revert( data ) ;
setTimeout( function() { FCK.Events.FireEvent("OnAfterGetData") ; }, 0 ) ;
return data ;
},
UpdateLinkedField : function()
@ -494,7 +500,7 @@ var FCK =
FCK.Events.FireEvent( 'OnAfterSetHTML' ) ;
}
if ( FCKBrowserInfo.IsGecko )
if ( window.onresize )
window.onresize() ;
},

@ -142,6 +142,9 @@ FCKCommands.GetCommand = function( commandName )
// Generic Undefined command (usually used when a command is under development).
case 'Undefined' : oCommand = new FCKUndefinedCommand() ; break ;
case 'Scayt' : oCommand = FCKScayt.CreateCommand() ; break ;
case 'ScaytContext' : oCommand = FCKScayt.CreateContextCommand() ; break ;
// By default we assume that it is a named command.
default:
if ( FCKRegexLib.NamedCommands.test( commandName ) )

@ -0,0 +1,447 @@
/*
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2009 Frederico Caldeira Knabben
*
* == BEGIN LICENSE ==
*
* Licensed under the terms of any of the following licenses at your
* choice:
*
* - GNU General Public License Version 2 or later (the "GPL")
* http://www.gnu.org/licenses/gpl.html
*
* - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
* http://www.gnu.org/licenses/lgpl.html
*
* - Mozilla Public License Version 1.1 or later (the "MPL")
* http://www.mozilla.org/MPL/MPL-1.1.html
*
* == END LICENSE ==
*/
var FCKScayt;
(function()
{
var scaytOnLoad = [] ;
var isEngineLoaded = ( FCK && FCK.EditorWindow && FCK.EditorWindow.parent.parent.scayt)
? true : false ;
var scaytEnable = false;
var scaytReady = false;
function ScaytEngineLoad( callback )
{
if ( isEngineLoaded )
return ;
isEngineLoaded = true ;
var top = FCK.EditorWindow.parent.parent;
var init = function ()
{
window.scayt = top.scayt ;
InitScayt() ;
var ScaytCombobox = FCKToolbarItems.LoadedItems[ 'ScaytCombobox' ] ;
ScaytCombobox && ScaytCombobox.SetEnabled( scyt_control && scyt_control.disabled ) ;
InitSetup() ;
};
if ( top.scayt )
{
init() ;
return ;
}
// Compose the scayt url.
if (FCK.Config.ScaytCustomUrl)
FCK.Config.ScaytCustomUrl = new String(FCK.Config.ScaytCustomUrl).replace( new RegExp( "^http[s]*:\/\/"),"") ;
var protocol = document.location.protocol ;
var baseUrl = FCK.Config.ScaytCustomUrl ||'svc.spellchecker.net/spellcheck3/lf/scayt/scayt4.js' ;
var scaytUrl = protocol + '//' + baseUrl ;
var scaytConfigBaseUrl = ParseUrl( scaytUrl ).path + '/' ;
// SCAYT is targetted to CKEditor, so we need this trick to make it work here.
var CKEDITOR = top.window.CKEDITOR || ( top.window.CKEDITOR = {} ) ;
CKEDITOR._djScaytConfig =
{
baseUrl : scaytConfigBaseUrl,
addOnLoad : function()
{
init();
},
isDebug : false
};
if ( callback )
scaytOnLoad.push( callback ) ;
DoLoadScript( scaytUrl ) ;
}
/**
* DoLoadScript - load scripts with dinamic tag script creating
* @param string url
*/
function DoLoadScript( url )
{
if (!url)
return false ;
var top = FCK.EditorWindow.parent.parent;
var s = top.document.createElement('script') ;
s.type = 'text/javascript' ;
s.src = url ;
top.document.getElementsByTagName('head')[0].appendChild(s) ;
return true ;
}
function ParseUrl( data )
{
var m = data.match(/(.*)[\/\\]([^\/\\]+\.\w+)$/) ;
return m ? { path: m[1], file: m[2] } : data ;
}
function createScaytControl ()
{
// Get public scayt params.
var oParams = {} ;
var top = FCK.EditorWindow.parent.parent;
oParams.srcNodeRef = FCK.EditingArea.IFrame; // Get the iframe.
// syntax : AppName.AppVersion@AppRevision
//oParams.assocApp = "FCKEDITOR." + FCKeditorAPI.Varsion + "@" + FCKeditorAPI.VersionBuild;
oParams.customerid = FCK.Config.ScaytCustomerid ;
oParams.customDictionaryName = FCK.Config.ScaytCustomDictionaryName ;
oParams.userDictionaryName = FCK.Config.ScaytUserDictionaryName ;
oParams.defLang = FCK.Config.ScaytDefLang ;
var scayt = top.scayt;
var scayt_control = window.scayt_control = new scayt( oParams ) ;
}
function InitScayt()
{
createScaytControl();
var scayt_control = window.scayt_control ;
if ( scayt_control )
{
scayt_control.setDisabled( false ) ;
scaytReady = true;
scaytEnable = !scayt_control.disabled ;
// set default scayt status
var ScaytCombobox = FCKToolbarItems.LoadedItems[ 'ScaytCombobox' ] ;
ScaytCombobox && ScaytCombobox.Enable() ;
ShowScaytState() ;
}
for ( var i = 0 ; i < scaytOnLoad.length ; i++ )
{
try
{
scaytOnLoad[i].call( this ) ;
}
catch(err)
{}
}
}
// ###
// SCAYT command class.
var ScaytCommand = function()
{
name = 'Scayt' ;
}
ScaytCommand.prototype.Execute = function( action )
{
switch ( action )
{
case 'Options' :
case 'Langs' :
case 'About' :
if ( isEngineLoaded && scaytReady && !scaytEnable )
{
ScaytMessage( 'SCAYT is not enabled' );
break;
}
if ( isEngineLoaded && scaytReady )
FCKDialog.OpenDialog( 'Scayt', 'SCAYT Settings', 'dialog/fck_scayt.html?' + action.toLowerCase(), 343, 343 );
break;
default :
if ( !isEngineLoaded )
{
var me = this;
ScaytEngineLoad( function ()
{
me.SetEnabled( !window.scayt_control.disabled ) ;
}) ;
return true;
}
else if ( scaytReady )
{
// Switch the current scayt state.
if ( scaytEnable )
this.Disable() ;
else
this.Enable() ;
ShowScaytState() ;
}
}
if ( !isEngineLoaded )
return ScaytMessage( 'SCAYT is not loaded' ) || false;
if ( !scaytReady )
return ScaytMessage( 'SCAYT is not ready' ) || false;
return true;
}
ScaytCommand.prototype.Enable = function()
{
window.scayt_control.setDisabled( false ) ;
scaytEnable = true;
}
ScaytCommand.prototype.Disable = function()
{
window.scayt_control.setDisabled( true ) ;
scaytEnable = false;
}
ScaytCommand.prototype.SetEnabled = function( state )
{
if ( state )
this.Enable() ;
else
this.Disable() ;
ShowScaytState() ;
return true;
}
ScaytCommand.prototype.GetState = function()
{
return FCK_TRISTATE_OFF;
}
function ShowScaytState()
{
var combo = FCKToolbarItems.GetItem( 'SpellCheck' ) ;
if ( !combo || !combo._Combo || !combo._Combo._OuterTable )
return;
var bItem = combo._Combo._OuterTable.getElementsByTagName( 'img' )[1] ;
var dNode = combo._Combo.Items['trigger'] ;
if ( scaytEnable )
{
bItem.style.opacity = '1' ;
dNode.innerHTML = GetStatusLabel() ;
}
else
{
bItem.style.opacity = '0.5' ;
dNode.innerHTML = GetStatusLabel() ;
}
}
function GetStatusLabel()
{
if ( !scaytReady )
return '<b>Enable SCAYT</b>' ;
return scaytEnable ? '<b>Disable SCAYT</b>' : '<b>Enable SCAYT</b>' ;
}
// ###
// Class for the toolbar item.
var ToolbarScaytComboBox = function( tooltip, style )
{
this.Command = FCKCommands.GetCommand( 'Scayt' ) ;
this.CommandName = 'Scayt' ;
this.Label = this.GetLabel() ;
this.Tooltip = FCKLang.ScaytTitle ;
this.Style = FCK_TOOLBARITEM_ONLYTEXT ; //FCK_TOOLBARITEM_ICONTEXT OR FCK_TOOLBARITEM_ONLYTEXT
}
ToolbarScaytComboBox.prototype = new FCKToolbarSpecialCombo ;
//Add the items to the combo list
ToolbarScaytComboBox.prototype.CreateItems = function()
{
this._Combo.AddItem( 'Trigger', '<b>Enable SCAYT</b>' );
this._Combo.AddItem( 'Options', FCKLang.ScaytTitleOptions || "Options" );
this._Combo.AddItem( 'Langs', FCKLang.ScaytTitleLangs || "Languages");
this._Combo.AddItem( 'About', FCKLang.ScaytTitleAbout || "About");
}
// Label shown in the toolbar.
ToolbarScaytComboBox.prototype.GetLabel = function()
{
var strip = FCKConfig.SkinPath + 'fck_strip.gif';
return FCKBrowserInfo.IsIE ?
'<div class="TB_Button_Image"><img src="' + strip + '" style="top:-192px"></div>'
:
'<img class="TB_Button_Image" src="' + FCK_SPACER_PATH + '" style="background-position: 0px -192px;background-image: url(' + strip + ');">';
}
function ScaytMessage( m )
{
m && alert( m ) ;
}
var ScaytContextCommand = function()
{
name = 'ScaytContext' ;
}
ScaytContextCommand.prototype.Execute = function( contextInfo )
{
var action = contextInfo && contextInfo.action,
node = action && contextInfo.node,
scayt_control = window.scayt_control;
if ( node )
{
switch ( action )
{
case 'Suggestion' :
scayt_control.replace( node, contextInfo.suggestion ) ;
break ;
case 'Ignore' :
scayt_control.ignore( node ) ;
break ;
case 'Ignore All' :
scayt_control.ignoreAll( node ) ;
break ;
case 'Add Word' :
var top = FCK.EditorWindow.parent.parent ;
top.scayt.addWordToUserDictionary( node ) ;
break ;
}
}
}
// Register context menu listeners.
function InitSetup()
{
FCK.ContextMenu.RegisterListener(
{
AddItems : function( menu )
{
var top = FCK.EditorWindow.parent.parent;
var scayt_control = window.scayt_control,
scayt = top.scayt;
if ( !scayt_control )
return;
var node = scayt_control.getScaytNode() ;
if ( !node )
return;
var suggestions = scayt.getSuggestion( scayt_control.getWord( node ), scayt_control.getLang() ) ;
if ( !suggestions || !suggestions.length )
return;
menu.AddSeparator() ;
var maxSuggestions = FCK.Config.ScaytMaxSuggestions || 5 ;
var suggAveCount = ( maxSuggestions == -1 ) ? suggestions.length : maxSuggestions ;
for ( var i = 0 ; i < suggAveCount ; i += 1 )
{
if ( suggestions[i] )
{
menu.AddItem( 'ScaytContext', suggestions[i], null, false, {
'action' : 'Suggestion',
'node' : node,
'suggestion' : suggestions[i] } ) ;
}
}
menu.AddSeparator() ;
menu.AddItem( 'ScaytContext', 'Ignore', null, false, { 'action' : 'Ignore', 'node' : node } );
menu.AddItem( 'ScaytContext', 'Ignore All', null, false, { 'action' : 'Ignore All', 'node' : node } );
menu.AddItem( 'ScaytContext', 'Add Word', null, false, { 'action' : 'Add Word', 'node' : node } );
try
{
if (scaytReady && scaytEnable)
scayt_control.fireOnContextMenu( null, FCK.ContextMenu._InnerContextMenu);
}
catch( err ) {}
}
}) ;
FCK.Events.AttachEvent( 'OnPaste', function()
{
window.scayt_control.refresh() ;
return true;
} ) ;
}
// ##
// Register event listeners.
FCK.Events.AttachEvent( 'OnAfterSetHTML', function()
{
if ( FCKConfig.SpellChecker == 'SCAYT' )
{
if ( !isEngineLoaded && FCK.Config.ScaytAutoStartup )
ScaytEngineLoad() ;
if ( FCK.EditMode == FCK_EDITMODE_WYSIWYG && isEngineLoaded && scaytReady )
createScaytControl();
ShowScaytState() ;
}
} ) ;
FCK.Events.AttachEvent( 'OnBeforeGetData', function()
{
scaytReady && window.scayt_control.reset();
} ) ;
FCK.Events.AttachEvent( 'OnAfterGetData', function()
{
scaytReady && window.scayt_control.refresh();
} ) ;
// ###
// The main object that holds the SCAYT interaction in the code.
FCKScayt =
{
CreateCommand : function()
{
return new ScaytCommand();
},
CreateContextCommand : function()
{
return new ScaytContextCommand();
},
CreateToolbarItem : function()
{
return new ToolbarScaytComboBox() ;
}
} ;
})() ;

@ -52,7 +52,6 @@ FCKToolbarItems.GetItem = function( itemName )
case 'PasteText' : oItem = new FCKToolbarButton( 'PasteText' , FCKLang.PasteText, null, null, false, true, 10 ) ; break ;
case 'PasteWord' : oItem = new FCKToolbarButton( 'PasteWord' , FCKLang.PasteWord, null, null, false, true, 11 ) ; break ;
case 'Print' : oItem = new FCKToolbarButton( 'Print' , FCKLang.Print, null, null, false, true, 12 ) ; break ;
case 'SpellCheck' : oItem = new FCKToolbarButton( 'SpellCheck', FCKLang.SpellCheck, null, null, null, null, 13 ) ; break ;
case 'Undo' : oItem = new FCKToolbarButton( 'Undo' , FCKLang.Undo, null, null, false, true, 14 ) ; break ;
case 'Redo' : oItem = new FCKToolbarButton( 'Redo' , FCKLang.Redo, null, null, false, true, 15 ) ; break ;
case 'SelectAll' : oItem = new FCKToolbarButton( 'SelectAll' , FCKLang.SelectAll, null, null, true, null, 18 ) ; break ;
@ -113,6 +112,14 @@ FCKToolbarItems.GetItem = function( itemName )
case 'ImageButton' : oItem = new FCKToolbarButton( 'ImageButton' , FCKLang.ImageButton, null, null, null, null, 55 ) ; break ;
case 'ShowBlocks' : oItem = new FCKToolbarButton( 'ShowBlocks' , FCKLang.ShowBlocks, null, null, null, true, 72 ) ; break ;
case 'SpellCheck' :
if ( FCKConfig.SpellChecker == 'SCAYT' )
oItem = FCKScayt.CreateToolbarItem() ;
else
oItem = new FCKToolbarButton( 'SpellCheck', FCKLang.SpellCheck, null, null, null, null, 13 ) ;
break ;
default:
alert( FCKLang.UnknownToolbarItem.replace( /%1/g, itemName ) ) ;
return null ;

@ -239,7 +239,7 @@ FCKToolbarSet.prototype._ChangeVisibility = function( collapse )
this._Document.getElementById( 'xCollapsed' ).style.display = collapse ? '' : 'none' ;
this._Document.getElementById( 'xExpanded' ).style.display = collapse ? 'none' : '' ;
if ( FCKBrowserInfo.IsGecko )
if ( window.onresize )
{
// I had to use "setTimeout" because Gecko was not responding in a right
// way when calling window.onresize() directly.

@ -83,8 +83,8 @@ window.onload = function()
border-left: #000000 1px solid; border-bottom: #000000 1px solid">
<span fcklang="DlgAboutVersion">version</span>
<br />
<b>2.6.4.1</b><br />
Build 23405</td>
<b>2.6.5</b><br />
Build 23959</td>
</tr>
</table>
</td>

@ -56,7 +56,7 @@ window.onload = function ()
'javascript:void( (function(){' +
'document.open() ;' +
'document.domain=\'' + document.domain + '\' ;' +
'document.write(\'<html><head><script>window.onerror = function() { return true ; };<\/script><\/head><body><\/body><\/html>\') ;' +
'document.write(\'<html><head><scr' + 'ipt>window.onerror = function() { return true ; };<\/script><\/head><body><\/body><\/html>\') ;' +
'document.close() ;' +
'document.body.contentEditable = true ;' +
'window.focus() ;' +
@ -73,7 +73,7 @@ window.onload = function ()
// Avoid errors if the pasted content has any script that fails: #389
var oDoc = oFrame.contentWindow.document ;
oDoc.open() ;
oDoc.write('<html><head><script>window.onerror = function() { return true ; };<\/script><\/head><body><\/body><\/html>') ;
oDoc.write('<html><head><scr' + 'ipt>window.onerror = function() { return true ; };<\/script><\/head><body><\/body><\/html>') ;
oDoc.close() ;
if ( FCKBrowserInfo.IsIE )

@ -0,0 +1,751 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<!--
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2009 Frederico Caldeira Knabben
*
* == BEGIN LICENSE ==
*
* Licensed under the terms of any of the following licenses at your
* choice:
*
* - GNU General Public License Version 2 or later (the "GPL")
* http://www.gnu.org/licenses/gpl.html
*
* - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
* http://www.gnu.org/licenses/lgpl.html
*
* - Mozilla Public License Version 1.1 or later (the "MPL")
* http://www.mozilla.org/MPL/MPL-1.1.html
*
* == END LICENSE ==
-->
<html>
<head>
<title>SCAYT 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>
<link type="text/css" href="fck_scayt/scayt_dialog.css" rel="stylesheet" />
<script type="text/javascript">
var dialog = window.parent ;
var oEditor = dialog.InnerDialogLoaded() ;
var FCKLang = oEditor.FCKLang;
var scayt = oEditor.scayt;
var scayt_control = oEditor.scayt_control;
var lang_list = {};
var sLang;
var fckLang;
var chosed_lang;
var options;
var tabs = scayt_control.uiTags || [1,1,0,1];
var userDicActive = tabs[2] == 1;
var captions;
var dic_buttons = [
// [0] contains buttons for creating
"dic_create,dic_restore",
// [1] contains buton for manipulation
"dic_rename,dic_delete"
];
var get =
new function(){
var mergeObjs = function(obj1, obj2)
{
for (var k in obj1)
obj2[k] = obj1[k];
return obj2;
};
var removeWhitespaces = function( s )
{
s = s.replace( new RegExp("^ +| +$"), '' ) ;
return s ;
};
var addEvent = function( el ,sEventName, fTodo )
{
if (el.addEventListener) {
el.addEventListener (sEventName,fTodo,false);
} else if (el.attachEvent) {
el.attachEvent ("on"+sEventName,fTodo);
} else {
el["on"+sEventName] = fTodo;
}
};
var getElementsByClassName = function (node,classname ,strTag) {
strTag = strTag || "*";
node = node || document;
if (node.getElementsByClassName)
return node.getElementsByClassName(classname);
else {
var objColl = node.getElementsByTagName(strTag);
if (!objColl.length && strTag == "*" && node.all) objColl = node.all;
var arr = new Array();
var delim = classname.indexOf('|') != -1 ? '|' : ' ';
var arrClass = classname.split(delim);
for (var i = 0, j = objColl.length; i < j; i++) {
var arrObjClass = objColl[i].className.split(' ');
if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
var c = 0;
comparisonLoop:
for ( var k = 0, l = arrObjClass.length ; k < l ; k++ )
{
for ( var m = 0, n = arrClass.length ; m < n ; m++ )
{
if ( arrClass[m] == arrObjClass[k] )
c++ ;
if ( ( delim == '|' && c == 1 ) || ( delim == ' ' && c == arrClass.length ) )
{
arr.push( objColl[i] ) ;
break comparisonLoop ;
}
}
}
}
return arr;
}
};
var hasClassName = function ( sClassName, elem ) {
//.split(/\s+/);
var aCnames = elem.className.split(/\s+/) || [];
for (var i=0, l=aCnames.length; i<l ; i++){
if (sClassName == aCnames[i])
return true;
}
return false;
}
var single = {
addClass : function ( sClassName ) {
//console.info( sClassName, this.className, );
if ( hasClassName(sClassName , this) )
return this;
var s = removeWhitespaces(this.className + " " +sClassName);
this.className = s;
return this;
},
removeClass : function ( sClassName ) {
var s = removeWhitespaces(this.className.replace(sClassName,""));
this.className = s;
return this;
},
setStyle : function( oStyles )
{
for ( var style in oStyles )
{
this.style[style] = oStyles[style] ;
}
return this ;
},
bindOnclick : function ( handler ) {
//addEvent( this, "click" , handler);
this.onclick = handler;
return this;
},
bindOnchange : function ( handler ) {
//addEvent( this, "change" , handler);
this.onchange = handler;
return this;
},
getAttr : function ( sAttrName )
{
if ( !sAttrName )
return null;
return this[sAttrName];
},
setAttr : function ( sAttrName , attrVal )
{
if ( !sAttrName || !attrVal )
return null;
this[sAttrName] = attrVal;
return this;
},
remAttr : function ( sAttrName )
{
if ( !sAttrName )
return null;
}
};
var singleCaller = function ( sMethod,args ) {
for ( var i=0, l=this.length; i<l ; i++ ){
var oItem = mergeObjs( single, this[i] );
oItem[sMethod].apply(this[i],args);
}
};
var collection = {
addClass : function ( sClassName ){
singleCaller.call(this, "addClass", [sClassName])
return this;
},
removeClass : function ( sClassName ) {
singleCaller.call(this, "removeClass", [sClassName])
return this;
},
setStyle : function ( oStyles ) {
singleCaller.call(this, "setStyle", [oStyles])
return this;
},
bindOnclick : function ( f ) {
singleCaller.call(this, "bindOnclick", [f])
return this;
},
bindOnchange : function ( f ) {
singleCaller.call(this, "bindOnchange", [f])
return this;
},
forEach : function ( fTodo ) {
//el,i
for (var i=0, l=this.length; i<l ; i++){
fTodo.apply(this[i], [this[i],i ]);
}
return this;
}
};
this.byClass = function( sClassName ){
var o = getElementsByClassName(document, sClassName );
return o ? mergeObjs( collection, o ) : o;
};
this.byId = function( sId ){
var o = document.getElementById( sId );
return o ? mergeObjs( single, o ) : o;
};
this.gup = function ( name ){
name = name.replace( /[\[]/, '\\\[' ).replace( /[\]]/, '\\\]' ) ;
var regexS = '[\\?&]' + name + '=([^&#]*)' ;
var regex = new RegExp( regexS ) ;
var results = regex.exec( window.location.href ) ;
if( results == null )
return '' ;
else
return results[ 1 ] ;
};
this.wrap = function ( o ) {
return o ? mergeObjs( single, o ) : o;
};
this.forEach = function ( oScope, fTodo ){
collection.forEach.apply( oScope,[fTodo] );
};
};
// Add the dialog tabs.
tabs[0] == 1 && dialog.AddTab( 'options', 'Options' ) ;
tabs[1] == 1 && dialog.AddTab( 'langs', 'Languages' ) ;
tabs[2] == 1 && dialog.AddTab( 'dictionary', 'Dictionary' ) ;
tabs[3] == 1 && dialog.AddTab( 'about', 'About' ) ;
// Function called when a dialog tab is selected.
function OnDialogTabChange( tabCode )
{
ShowE('inner_options' , ( tabCode == 'options' ) ) ;
ShowE('inner_langs' , ( tabCode == 'langs' ) ) ;
ShowE('inner_dictionary' , ( tabCode == 'dictionary' ) ) ;
ShowE('inner_about' , ( tabCode == 'about' ) ) ;
}
window.onload = function()
{
// Things to do when the page is loaded.
if ( document.location.search.length )
dialog.SetSelectedTab( document.location.search.substr(1) ) ;
dialog.SetOkButton( true ) ;
if (!scayt) throw "SCAYT is undefined";
if (!scayt_control) throw "SCAYT_CONTROL is undefined";
// show alowed tabs
tabs = scayt_control.uiTags || [1,1,1,0];
sLang = scayt_control.getLang();
fckLang = "en";
options = scayt_control.option();
// apply captions
scayt.getCaption( fckLang, function( caps )
{
//console.info( "scayt.getCaption runned" )
captions = caps;
apllyCaptions();
//lang_list = scayt.getLangList();
lang_list = scayt.getLangList() ;//|| {ltr: {"en_US" : "English","en_GB" : "British English","pt_BR" : "Brazilian Portuguese","da_DK" : "Danish","nl_NL" : "Dutch","en_CA" : "English Canadian","fi_FI" : "Finnish","fr_FR" : "French","fr_CA" : "French Canadian","de_DE" : "German","el_GR" : "Greek","hu_HU" : "Hungarian","it_IT" : "Italian","nb_NO" : "Norwegian","pl_PL" : "Polish","pt_PT" : "Portuguese","ru_RU" : "Russian","es_ES" : "Spanish","sv_SE" : "Swedish","tr_TR" : "Turkish","uk_UA" : "Ukrainian","cy_GB" : "Welsh"},rtl: {"ar_EG" : "Arabic"}};
// ** animate options
get.byClass("_scayt_option").forEach(function(el,i){
if ('undefined' != typeof(options[el.name])) {
// *** set default values
if ( 1 == options[ el.name ] ){
//el.setAttribute("checked","true");
get.wrap(el).setAttr("checked" ,true)
//document.all_options[el.name].checked = "true";
//el.checked = true;
//alert( options[ dojo.attr(el ,'name') ] + " el " )
}
//console.info(options)
// *** bind events
get.wrap(el).bindOnclick( function(ev){
var that = get.wrap(this);
var isCheck = that.getAttr("checked");
//console.info(isCheck)
if ( isCheck == false ) {
//that.setAttr("checked",false);
options[ this.name ] = 0;
}else{
//that.setAttr("checked",true);
options[ this.name ] = 1;
}
//console.info(options)
});
}
});
// * Create languages tab
// ** convert langs obj to array
var lang_arr = [];
for (var k in lang_list.rtl){
// find curent lang
if ( k == sLang)
chosed_lang = lang_list.rtl[k] + "::" + k;
lang_arr[lang_arr.length] = lang_list.rtl[k] + "::" + k;
}
for (var k in lang_list.ltr){
// find curent lang
if ( k == sLang)
chosed_lang = lang_list.ltr[k] + "::" + k;
lang_arr[lang_arr.length] = lang_list.ltr[k] + "::" + k;
}
lang_arr.sort();
// ** find lang containers
var lcol = get.byId("lcolid");
var rcol = get.byId("rcolid");
// ** place langs in DOM
get.forEach(lang_arr , function( l , i ){
//console.info( l,i );
var l_arr = l.split('::');
var l_name = l_arr[0];
var l_code = l_arr[1];
var row = document.createElement('div');
row.id = l_code;
row.className = "li";
// split langs on half
var col = ( i < lang_arr.length/2 ) ? lcol:rcol ;
// append row
//console.dir( col )
col.appendChild(row);
var row_dom = get.byId( l_code )
row_dom.innerHTML = l_name;
var checkActiveLang = function( id ){
return chosed_lang.split("::")[1] == id;
};
// bind click
row_dom.bindOnclick(function(ev){
if ( checkActiveLang(this.id) ) return false;
var elId = this.id;
get.byId(this.id)
.addClass("Button")
.removeClass("DarkBackground");
window.setTimeout( function (){ get.byId(elId).setStyle({opacity:"0.5",cursor:"no-drop"}); } ,300 );
get.byId(chosed_lang.split("::")[1])
.addClass("DarkBackground")
.removeClass("Button")
.setStyle({opacity:"1",cursor:"pointer"});
chosed_lang = this.innerHTML + "::" + this.id;
return true;
})
.setStyle({
cursor:"pointer"
});
// select current lang
if (l == chosed_lang)
row_dom.addClass("Button").setStyle({opacity:"0.5",cursor:"no-drop"});
else
row_dom.addClass("DarkBackground").setStyle({opacity:"1"});
});
// * user dictionary
if ( userDicActive ){
initUserDictionary()
}
});
}
var buttons = [ 'dic_create','dic_delete','dic_rename','dic_restore' ];
var labels = [ 'mixedCase','mixedWithDigits','allCaps','ignoreDomainNames' ];
function apllyCaptions ( )
{
// fill tabs headers
// add missing captions
get.byClass("PopupTab").forEach(function(el,i){
if ( tabs[i] == 1 ){
el.style.display = "block";
}
el.innerHTML = captions['tab_'+el.id];
});
// Fill options labels.
for ( i in labels )
{
var label = 'label_' + labels[ i ],
labelElement = document.getElementById( label );
if ( 'undefined' != typeof labelElement
&& 'undefined' != typeof captions[ label ] && captions[ label ] !== ""
&& 'undefined' != typeof options[labels[ i ]] )
{
labelElement.innerHTML = captions[ label ];
var labelParent = labelElement.parentNode;
labelParent.style.display = "block";
}
}
// fill dictionary section
for ( var i in buttons )
{
var button = buttons[ i ];
get.byId( button ).innerHTML = '<span>' + captions[ 'button_' + button] +'</span>' ;
}
get.byId("dname").innerHTML = captions['label_dname'];
get.byId( 'dic_info' ).innerHTML = captions[ 'dic_info' ];
// fill about tab
var about = '<p>' + captions[ 'about_throwt_image' ] + '</p>'+
'<p>' + captions[ 'version' ] + scayt.version.toString() + '</p>' +
'<p>' + captions[ 'about_throwt_copy' ] + '</p>';
get.byId( 'scayt_about' ).innerHTML = about;
}
function initUserDictionary () {
scayt.getNameUserDictionary(
function( o )
{
var dic_name = o.dname;
if ( dic_name )
{
get.byId( 'dic_name' ).value = dic_name;
display_dic_buttons( dic_buttons[1] );
}
else
display_dic_buttons( dic_buttons[0] );
},
function ()
{
get.byId( 'dic_name' ).value("");
dic_error_message(captions["err_dic_enable"] || "Used dictionary are unaveilable now.")
}
);
dic_success_message("");
// ** bind event listeners
get.byClass("button").bindOnclick(function( ){
// get dic name
var dic_name = get.byId('dic_name').value ;
// check common dictionary rules
if (!dic_name) {
dic_error_message(" Dictionary name should not be empty. ");
return false;
}
//apply handler
window[this.id].apply( window, [this, dic_name, dic_buttons ] );
//console.info( typeof window[this.id], window[this.id].calle )
return false;
});
}
dic_create = function( el, dic_name , dic_buttons )
{
// comma separated button's ids include repeats if exists
var all_buttons = dic_buttons[0] + ',' + dic_buttons[1];
var err_massage = captions["err_dic_create"];
var suc_massage = captions["succ_dic_create"];
//console.info("--plugin ");
scayt.createUserDictionary(dic_name,
function(arg)
{
//console.info( "dic_create callback called with args" , arg );
hide_dic_buttons ( all_buttons );
display_dic_buttons ( dic_buttons[1] );
suc_massage = suc_massage.replace("%s" , arg.dname );
dic_success_message (suc_massage);
},
function(arg)
{
//console.info( "dic_create errorback called with args" , arg )
err_massage = err_massage.replace("%s" ,arg.dname );
dic_error_message ( err_massage + "( "+ (arg.message || "") +")");
});
};
dic_rename = function( el, dic_name , dic_buttons )
{
//
// try to rename dictionary
// @TODO: rename dict
//console.info ( captions["err_dic_rename"] )
var err_massage = captions["err_dic_rename"] || "";
var suc_massage = captions["succ_dic_rename"] || "";
scayt.renameUserDictionary(dic_name,
function(arg)
{
//console.info( "dic_rename callback called with args" , arg );
suc_massage = suc_massage.replace("%s" , arg.dname );
set_dic_name( dic_name );
dic_success_message ( suc_massage );
},
function(arg)
{
//console.info( "dic_rename errorback called with args" , arg )
err_massage = err_massage.replace("%s" , arg.dname );
set_dic_name( dic_name );
dic_error_message( err_massage + "( " + ( arg.message || "" ) + " )" );
});
};
dic_delete = function ( el, dic_name , dic_buttons )
{
var all_buttons = dic_buttons[0] + ',' + dic_buttons[1];
var err_massage = captions["err_dic_delete"];
var suc_massage = captions["succ_dic_delete"];
// try to delete dictionary
// @TODO: delete dict
scayt.deleteUserDictionary(
function(arg)
{
//console.info( "dic_delete callback " , dic_name ,arg );
suc_massage = suc_massage.replace("%s" , arg.dname );
hide_dic_buttons ( all_buttons );
display_dic_buttons ( dic_buttons[0] );
set_dic_name( "" ); // empty input field
dic_success_message( suc_massage );
},
function(arg)
{
//console.info( " dic_delete errorback called with args" , arg )
err_massage = err_massage.replace("%s" , arg.dname );
dic_error_message(err_massage);
});
};
dic_restore = dialog.dic_restore || function ( el, dic_name , dic_buttons )
{
// try to restore existing dictionary
var all_buttons = dic_buttons[0] + ',' + dic_buttons[1];
var err_massage = captions["err_dic_restore"];
var suc_massage = captions["succ_dic_restore"];
scayt.restoreUserDictionary(dic_name,
function(arg)
{
//console.info( "dic_restore callback called with args" , arg );
suc_massage = suc_massage.replace("%s" , arg.dname );
hide_dic_buttons ( all_buttons );
display_dic_buttons(dic_buttons[1]);
dic_success_message( suc_massage );
},
function(arg)
{
//console.info( " dic_restore errorback called with args" , arg )
err_massage = err_massage.replace("%s" , arg.dname );
dic_error_message( err_massage );
});
};
function dic_error_message( m )
{
if ( !m )
return ;
get.byId('dic_message').innerHTML = '<span class="error">' + m + '</span>' ;
}
function dic_success_message( m )
{
if ( !m )
return ;
get.byId('dic_message').innerHTML = '<span class="success">' + m + '</span>' ;
}
function display_dic_buttons ( sIds ){
sIds = new String( sIds );
get.forEach( sIds.split(','), function ( id,i) {
get.byId(id).setStyle({display:"inline"});
});
}
function hide_dic_buttons ( sIds ){
sIds = new String( sIds );
get.forEach( sIds.split(','), function ( id,i) {
get.byId(id).setStyle({display:"none"});
});
}
function set_dic_name ( dic_name ) {
get.byId('dic_name').value = dic_name;
}
function display_dic_tab () {
get.byId("dic_tab").style.display = "block";
}
function Ok()
{
// Things to do when the Ok button is clicked.
var c = 0;
// set upp options if any was set
var o = scayt_control.option();
//console.info(options)
for ( var oN in options ) {
if ( o[oN] != options[oN] && c == 0){
//console.info( "set option " )
scayt_control.option( options );
c++;
}
}
//setup languge if it was change
var csLang = chosed_lang.split("::")[1];
if ( csLang && sLang != csLang ){
scayt_control.setLang( csLang );
//console.info(sLang+" -> "+csLang , scayt_control)
c++;
}
if ( c > 0 ) scayt_control.refresh();
return dialog.Cancel();
}
</script>
<style type="text/css">
body, td, input, textarea, select, label { font-family: Arial, Verdana, Geneva, helvetica, sans-serif; font-size: 11px; }
</style>
</head>
<body style="OVERFLOW: hidden" scroll="no">
<div class="tab_container" id="inner_options">
<ul id="scayt_options">
<li class="_scayt_options">
<input class="_scayt_option" type="checkbox" value="0" name="allCaps" />
<label for="allCaps" id="label_allCaps"></label>
</li>
<li>
<input class="_scayt_option" type="checkbox" value="0" name="ignoreDomainNames" />
<label for="ignoreDomainNames" id="label_ignoreDomainNames"></label>
</li>
<li>
<input class="_scayt_option" type="checkbox" value="0" name="mixedCase" />
<label for="mixedCase" id="label_mixedCase"></label>
</li>
<li>
<input class="_scayt_option" type="checkbox" value="0" name="mixedWithDigits" />
<label for="mixedWithDigits" id="label_mixedWithDigits"></label>
</li>
</ul>
</div>
<div class="tab_container" id="inner_langs">
<div class="lcol" id="lcolid"></div>
<div class="rcol" id="rcolid"></div>
</div>
<div class="tab_container" id="inner_dictionary">
<div id="dic_message"></div>
<div id="_off_dic_tab" class="dictionary" >
<div style="padding-left:10px;">
<label id="dname" for="dname"></label>
<input type="text" size="14" maxlength="15" value="" id="dic_name" name="dic_name"/>
</div>
<div class="dic_buttons">
<a href="#" id="dic_create" class="button"> </a>
<a href="#" id="dic_delete" class="button"> </a>
<a href="#" id="dic_rename" class="button"> </a>
<a href="#" id="dic_restore" class="button"> </a>
</div>
<div id="dic_info"></div>
</div>
</div>
<div id="inner_about" class="tab_container">
<div id="scayt_about"></div>
</div>
</body>
</html>

@ -0,0 +1,169 @@
html, body
{
background-color: transparent;
margin: 0px;
padding: 0px;
}
body
{
padding: 10px;
}
body, td, input, select, textarea
{
font-size: 11px;
font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
}
.midtext
{
padding:0px;
margin:10px;
}
.midtext p
{
padding:0px;
margin:10px;
}
.Button
{
border: #737357 1px solid;
color: #3b3b1f;
background-color: #c7c78f;
}
.PopupTabArea , .button
{
color: #737357;
background-color: #e3e3c7;
}
.PopupTitleBorder
{
border-bottom: #d5d59d 1px solid;
}
.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: 3px 5px 3px 5px;
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;
}
ul {
padding:0;
margin:0px 0px 12px 0px;
list-style-type:none;
}
ul.tabs {
height:20px;
margin:10px 0px;
}
ul.tabs li {
float: left;
display:none;
}
div.tab_container {
/*display:none;*/
padding: 0px 5px ;
}
.lcol {
float:left;
width:47%;
margin-left:5px;
}
.rcol {
float:right;
width:47%;
margin-right:5px;
}
div.tabs-container{
height:220px;
overflow-x:hidden;
overflow-y:auto;
}
div.tabs-container h3{
margin:5px 15px 7px 15px;
background-color:transparent;
font-size: 14px ;
}
.li {
border: 1px solid transparent;
}
#dic_message{
height: 24px;
}
#dic_message .error{
color: red ;
}
#dic_message .success{
color: blue ;
}
.dic_buttons {
margin-top: 5px;
padding-left:10px;
}
.dic_buttons a {
display: none;
}
a.button {
border: #d5d59d 1px solid;
padding: 2px 4px;
margin-right: 4px;
text-decoration: none;
}
a.button:hover,
a.button:active,
a.button:visited{
padding: 2px 4px;
margin-right: 4px;
text-decoration: none;
}
a.button:hover {
border: #d5d59d 1px solid;
color: #e3e3c7;
background-color: #737357;
}
#scayt_options li {
display: none;
}
#dic_info {
margin:10px;
}
#dic_tab {
display:none;
}

@ -287,9 +287,12 @@ function Ok()
var eCaption = oEditor.FCKDomTools.GetFirstChild( table, 'CAPTION' ) ;
if ( eCaption && !oEditor.FCKBrowserInfo.IsIE )
eCaption.parentNode.removeChild( eCaption ) ;
if ( document.getElementById('txtCaption').value != '' )
{
if ( !eCaption )
if ( !eCaption || !oEditor.FCKBrowserInfo.IsIE )
{
eCaption = oDoc.createElement( 'CAPTION' ) ;
table.insertBefore( eCaption, table.firstChild ) ;
@ -303,8 +306,6 @@ function Ok()
// table.deleteCaption() (see #505).
if ( oEditor.FCKBrowserInfo.IsIE )
eCaption.innerHTML = '' ;
else
eCaption.parentNode.removeChild( eCaption ) ;
}
return true ;

@ -290,16 +290,16 @@ function WaitForActive( editorInstance, newStatus )
}
}
// Gecko browsers doesn't calculate well the IFRAME size so we must
// Gecko and Webkit browsers don't calculate well the IFRAME size so we must
// recalculate it every time the window size changes.
if ( FCKBrowserInfo.IsGecko && !FCKBrowserInfo.IsOpera )
if ( FCKBrowserInfo.IsGecko || FCKBrowserInfo.IsSafari )
{
window.onresize = function( e )
{
// Running in Chrome makes the window receive the event including subframes.
// Running in Firefox's chrome makes the window receive the event including subframes.
// we care only about this window. Ticket #1642.
// #2002: The originalTarget from the event can be the current document, the window, or the editing area.
if ( e && e.originalTarget !== document && e.originalTarget !== window && (!e.originalTarget.ownerDocument || e.originalTarget.ownerDocument != document ))
if ( e && e.originalTarget && e.originalTarget !== document && e.originalTarget !== window && (!e.originalTarget.ownerDocument || e.originalTarget.ownerDocument != document ))
return ;
var oCell = document.getElementById( 'xEditingArea' ) ;

@ -202,6 +202,7 @@ LoadScript( '_source/classes/fcktoolbarfontformatcombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarfontscombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarfontsizecombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarpanelbutton.js' ) ;
LoadScript( '_source/internals/fckscayt.js' ) ;
LoadScript( '_source/internals/fcktoolbaritems.js' ) ;
LoadScript( '_source/classes/fcktoolbar.js' ) ;
LoadScript( '_source/classes/fcktoolbarbreak_' + sSuffix + '.js' ) ;
@ -372,16 +373,16 @@ function WaitForActive( editorInstance, newStatus )
}
}
// Gecko browsers doesn't calculate well the IFRAME size so we must
// Gecko and Webkit browsers don't calculate well the IFRAME size so we must
// recalculate it every time the window size changes.
if ( FCKBrowserInfo.IsGecko && !FCKBrowserInfo.IsOpera )
if ( FCKBrowserInfo.IsGecko || FCKBrowserInfo.IsSafari )
{
window.onresize = function( e )
{
// Running in Chrome makes the window receive the event including subframes.
// Running in Firefox's chrome makes the window receive the event including subframes.
// we care only about this window. Ticket #1642.
// #2002: The originalTarget from the event can be the current document, the window, or the editing area.
if ( e && e.originalTarget !== document && e.originalTarget !== window && (!e.originalTarget.ownerDocument || e.originalTarget.ownerDocument != document ))
if ( e && e.originalTarget && e.originalTarget !== document && e.originalTarget !== window && (!e.originalTarget.ownerDocument || e.originalTarget.ownerDocument != document ))
return ;
var oCell = document.getElementById( 'xEditingArea' ) ;

@ -27,7 +27,6 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="browser.css" type="text/css" rel="stylesheet">
<script type="text/javascript">
// Automatically detect the correct document.domain (#1919).
(function()
{

@ -21,12 +21,10 @@
*
* This is the File Manager Connector for PHP.
*/
function CombinePaths( $sBasePath, $sFolder )
{
return RemoveFromEnd( $sBasePath, '/' ) . '/' . RemoveFromStart( $sFolder, '/' ) ;
}
function GetResourceTypePath( $resourceType, $sCommand )
{
global $Config ;
@ -100,7 +98,7 @@ function CreateServerFolder( $folderPath, $lastFolder = null )
}
// Check if the parent exists, or create it.
if ( !file_exists( $sParent ) )
if ( !empty($sParent) && !file_exists( $sParent ) )
{
//prevents agains infinite loop when we can't create root folder
if ( !is_null( $lastFolder ) && $lastFolder === $sParent) {
@ -270,6 +268,7 @@ function GetCurrentFolder()
// Check for invalid folder paths (..)
if ( strpos( $sCurrentFolder, '..' ) || strpos( $sCurrentFolder, "\\" ))
SendError( 102, '' ) ;
if ( preg_match(",(/\.)|[[:cntrl:]]|(//)|(\\\\)|([\:\*\?\"\<\>\|]),", $sCurrentFolder))
SendError( 102, '' ) ;
@ -331,7 +330,6 @@ EOF;
$rpl = array( '\\' => '\\\\', '"' => '\\"' ) ;
echo 'window.parent.OnUploadCompleted(' . $errorNumber . ',"' . strtr( $fileUrl, $rpl ) . '","' . strtr( $fileName, $rpl ) . '", "' . strtr( $customMsg, $rpl ) . '") ;' ;
echo '</script>' ;
exit ;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -21,59 +21,59 @@
* Translations Status.
*/
af.js Found: 396 Missing: 32
ar.js Found: 420 Missing: 8
bg.js Found: 373 Missing: 55
bn.js Found: 380 Missing: 48
bs.js Found: 226 Missing: 202
ca.js Found: 420 Missing: 8
cs.js Found: 428 Missing: 0
da.js Found: 419 Missing: 9
de.js Found: 420 Missing: 8
el.js Found: 396 Missing: 32
en-au.js Found: 423 Missing: 5
en-ca.js Found: 423 Missing: 5
en-uk.js Found: 423 Missing: 5
eo.js Found: 346 Missing: 82
es.js Found: 428 Missing: 0
et.js Found: 411 Missing: 17
eu.js Found: 420 Missing: 8
fa.js Found: 413 Missing: 15
fi.js Found: 411 Missing: 17
fo.js Found: 420 Missing: 8
fr-ca.js Found: 419 Missing: 9
fr.js Found: 428 Missing: 0
gl.js Found: 381 Missing: 47
gu.js Found: 411 Missing: 17
he.js Found: 428 Missing: 0
hi.js Found: 420 Missing: 8
hr.js Found: 420 Missing: 8
hu.js Found: 411 Missing: 17
is.js Found: 428 Missing: 0
it.js Found: 410 Missing: 18
ja.js Found: 420 Missing: 8
km.js Found: 370 Missing: 58
ko.js Found: 391 Missing: 37
lt.js Found: 428 Missing: 0
lv.js Found: 381 Missing: 47
mn.js Found: 411 Missing: 17
ms.js Found: 352 Missing: 76
nb.js Found: 414 Missing: 14
nl.js Found: 420 Missing: 8
no.js Found: 414 Missing: 14
pl.js Found: 412 Missing: 16
pt-br.js Found: 411 Missing: 17
pt.js Found: 381 Missing: 47
ro.js Found: 410 Missing: 18
ru.js Found: 427 Missing: 1
sk.js Found: 420 Missing: 8
sl.js Found: 411 Missing: 17
sr-latn.js Found: 368 Missing: 60
sr.js Found: 368 Missing: 60
sv.js Found: 409 Missing: 19
th.js Found: 393 Missing: 35
tr.js Found: 428 Missing: 0
uk.js Found: 419 Missing: 9
vi.js Found: 419 Missing: 9
zh-cn.js Found: 428 Missing: 0
zh.js Found: 423 Missing: 5
af.js Found: 396 Missing: 36
ar.js Found: 420 Missing: 12
bg.js Found: 373 Missing: 59
bn.js Found: 380 Missing: 52
bs.js Found: 226 Missing: 206
ca.js Found: 420 Missing: 12
cs.js Found: 428 Missing: 4
da.js Found: 419 Missing: 13
de.js Found: 420 Missing: 12
el.js Found: 396 Missing: 36
en-au.js Found: 423 Missing: 9
en-ca.js Found: 423 Missing: 9
en-uk.js Found: 423 Missing: 9
eo.js Found: 346 Missing: 86
es.js Found: 428 Missing: 4
et.js Found: 411 Missing: 21
eu.js Found: 420 Missing: 12
fa.js Found: 413 Missing: 19
fi.js Found: 411 Missing: 21
fo.js Found: 420 Missing: 12
fr-ca.js Found: 419 Missing: 13
fr.js Found: 428 Missing: 4
gl.js Found: 381 Missing: 51
gu.js Found: 411 Missing: 21
he.js Found: 428 Missing: 4
hi.js Found: 420 Missing: 12
hr.js Found: 420 Missing: 12
hu.js Found: 411 Missing: 21
is.js Found: 428 Missing: 4
it.js Found: 410 Missing: 22
ja.js Found: 420 Missing: 12
km.js Found: 370 Missing: 62
ko.js Found: 391 Missing: 41
lt.js Found: 428 Missing: 4
lv.js Found: 381 Missing: 51
mn.js Found: 411 Missing: 21
ms.js Found: 352 Missing: 80
nb.js Found: 414 Missing: 18
nl.js Found: 420 Missing: 12
no.js Found: 414 Missing: 18
pl.js Found: 412 Missing: 20
pt-br.js Found: 411 Missing: 21
pt.js Found: 381 Missing: 51
ro.js Found: 410 Missing: 22
ru.js Found: 427 Missing: 5
sk.js Found: 420 Missing: 12
sl.js Found: 426 Missing: 6
sr-latn.js Found: 368 Missing: 64
sr.js Found: 368 Missing: 64
sv.js Found: 409 Missing: 23
th.js Found: 393 Missing: 39
tr.js Found: 428 Missing: 4
uk.js Found: 419 Missing: 13
vi.js Found: 419 Missing: 13
zh-cn.js Found: 428 Missing: 4
zh.js Found: 423 Missing: 9

@ -530,5 +530,10 @@ DlgAboutInfo : "Vir meer informasie gaan na ",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "لمزيد من المعلومات تفضل بزيارة",
DlgDivGeneralTab : "عام",
DlgDivAdvancedTab : "متقدم",
DlgDivStyle : "المظهر",
DlgDivInlineStyle : "المظهر المضمن"
DlgDivInlineStyle : "المظهر المضمن",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "За повече информация посетете",
DlgDivGeneralTab : "Общи параметри",
DlgDivAdvancedTab : "Допълнителни параметри",
DlgDivStyle : "Стил",
DlgDivInlineStyle : "Вграден стил"
DlgDivInlineStyle : "Вграден стил",
ScaytTitle : "SCAYT",
ScaytTitleOptions : "Опции",
ScaytTitleLangs : "Езици",
ScaytTitleAbout : "Информация"
};

@ -530,5 +530,10 @@ DlgAboutInfo : "আরও তথর জনয যন",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Za više informacija posjetite",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Per a més informació aneu a",
DlgDivGeneralTab : "General",
DlgDivAdvancedTab : "Avançat",
DlgDivStyle : "Estil",
DlgDivInlineStyle : "Estil en línia"
DlgDivInlineStyle : "Estil en línia",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Více informací získáte na",
DlgDivGeneralTab : "Obecné",
DlgDivAdvancedTab : "Rozšířené",
DlgDivStyle : "Styl",
DlgDivInlineStyle : "Vložený styl"
DlgDivInlineStyle : "Vložený styl",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For yderlig information gå til",
DlgDivGeneralTab : "Generelt",
DlgDivAdvancedTab : "Avanceret",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Inline style"
DlgDivInlineStyle : "Inline style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Für weitere Informationen siehe",
DlgDivGeneralTab : "Allgemein",
DlgDivAdvancedTab : "Erweitert",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Inline Style"
DlgDivInlineStyle : "Inline Style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Για περισσότερες πληροφορίες",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For further information go to",
DlgDivGeneralTab : "General",
DlgDivAdvancedTab : "Advanced",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Inline Style"
DlgDivInlineStyle : "Inline Style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For further information go to",
DlgDivGeneralTab : "General",
DlgDivAdvancedTab : "Advanced",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Inline Style"
DlgDivInlineStyle : "Inline Style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For further information go to",
DlgDivGeneralTab : "General",
DlgDivAdvancedTab : "Advanced",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Inline Style"
DlgDivInlineStyle : "Inline Style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For further information go to",
DlgDivGeneralTab : "General",
DlgDivAdvancedTab : "Advanced",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Inline Style"
DlgDivInlineStyle : "Inline Style",
ScaytTitle : "SCAYT",
ScaytTitleOptions : "Options",
ScaytTitleLangs : "Languages",
ScaytTitleAbout : "About"
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Por pli da informoj, vizitu",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Para mayor información por favor dirigirse a",
DlgDivGeneralTab : "General",
DlgDivAdvancedTab : "Avanzado",
DlgDivStyle : "Estilo",
DlgDivInlineStyle : "Estilos CSS"
DlgDivInlineStyle : "Estilos CSS",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Täpsema info saamiseks mine",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -531,5 +531,10 @@ DlgAboutInfo : "Informazio gehiago eskuratzeko hona joan",
DlgDivGeneralTab : "Orokorra",
DlgDivAdvancedTab : "Aurreratua",
DlgDivStyle : "Estiloa",
DlgDivInlineStyle : "Inline Estiloa"
DlgDivInlineStyle : "Inline Estiloa",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "برای آگاهی بیشتر به این نشانی بروی
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Lisää tietoa osoitteesta",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Fyri fleiri upplýsingar, far til",
DlgDivGeneralTab : "Generelt",
DlgDivAdvancedTab : "Fjølbroytt",
DlgDivStyle : "Typografi",
DlgDivInlineStyle : "Inline typografi"
DlgDivInlineStyle : "Inline typografi",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Pour plus d'informations, visiter",
DlgDivGeneralTab : "Général",
DlgDivAdvancedTab : "Avancé",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Attribut Style"
DlgDivInlineStyle : "Attribut Style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Pour plus d'informations, aller à",
DlgDivGeneralTab : "Général",
DlgDivAdvancedTab : "Avancé",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Attribut Style"
DlgDivInlineStyle : "Attribut Style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Para máis información visitar:",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "વધિ:",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "מידע נוסף ניתן למצוא כאן:",
DlgDivGeneralTab : "כללי",
DlgDivAdvancedTab : "מתקדם",
DlgDivStyle : "סגנון",
DlgDivInlineStyle : "סגנון בתוך השורה"
DlgDivInlineStyle : "סגנון בתוך השורה",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "अधिक जनकि यह
DlgDivGeneralTab : "सय",
DlgDivAdvancedTab : "एडड",
DlgDivStyle : "सइल",
DlgDivInlineStyle : "इनलइन सइल"
DlgDivInlineStyle : "इनलइन सइल",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Za više informacija posjetite",
DlgDivGeneralTab : "Općenito",
DlgDivAdvancedTab : "Napredno",
DlgDivStyle : "Stil",
DlgDivInlineStyle : "Stil u redu"
DlgDivInlineStyle : "Stil u redu",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "További információkért látogasson el ide:",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Nánari upplýsinar, sjá:",
DlgDivGeneralTab : "Almennt",
DlgDivAdvancedTab : "Sérhæft",
DlgDivStyle : "Stíll",
DlgDivInlineStyle : "Línulægur stíll"
DlgDivInlineStyle : "Línulægur stíll",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Per maggiori informazioni visitare",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "より詳しい情報はこちらで",
DlgDivGeneralTab : "全般",
DlgDivAdvancedTab : "高度な設定",
DlgDivStyle : "スタイル",
DlgDivInlineStyle : "インラインスタイル"
DlgDivInlineStyle : "インラインスタイル",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "សតមនផងទ
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "더 많은 정보를 보시려면 다음 사이트로 가십시
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Papildomą informaciją galima gauti",
DlgDivGeneralTab : "Bendros savybės",
DlgDivAdvancedTab : "Papildomos savybės",
DlgDivStyle : "Stilius",
DlgDivInlineStyle : "Stilius kode"
DlgDivInlineStyle : "Stilius kode",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Papildus informācija ir pieejama",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Мэдээллээр туслах",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Untuk maklumat lanjut sila pergi ke",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For mer informasjon, se",
DlgDivGeneralTab : "Generelt",
DlgDivAdvancedTab : "Avansert",
DlgDivStyle : "Stil",
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Voor meer informatie ga naar ",
DlgDivGeneralTab : "Algemeen",
DlgDivAdvancedTab : "Geavanceerd",
DlgDivStyle : "Style",
DlgDivInlineStyle : "Inline Style"
DlgDivInlineStyle : "Inline Style",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For mer informasjon, se",
DlgDivGeneralTab : "Generelt",
DlgDivAdvancedTab : "Avansert",
DlgDivStyle : "Stil",
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Więcej informacji uzyskasz pod adresem",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Para maiores informações visite",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Para mais informações por favor dirija-se a",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Pentru informaţii amănunţite, vizitaţi",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Для большей информации, посетите",
DlgDivGeneralTab : "Информация",
DlgDivAdvancedTab : "Расширенные настройки",
DlgDivStyle : "Стиль",
DlgDivInlineStyle : "Встроенные стили"
DlgDivInlineStyle : "Встроенные стили",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Viac informácií získate na",
DlgDivGeneralTab : "Hlavné",
DlgDivAdvancedTab : "Rozšírené",
DlgDivStyle : "Štýl",
DlgDivInlineStyle : "Inline štýl"
DlgDivInlineStyle : "Inline štýl",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -73,9 +73,9 @@ BlockJustify : "Obojestranska poravnava",
DecreaseIndent : "Zmanjšaj zamik",
IncreaseIndent : "Povečaj zamik",
Blockquote : "Citat",
CreateDiv : "Create Div Container", //MISSING
EditDiv : "Edit Div Container", //MISSING
DeleteDiv : "Remove Div Container", //MISSING
CreateDiv : "Ustvari Div element",
EditDiv : "Uredi Div element",
DeleteDiv : "Odstrani Div element",
Undo : "Razveljavi",
Redo : "Ponovi",
NumberedListLbl : "Oštevilčen seznam",
@ -161,7 +161,7 @@ UnknownToolbarSet : "Skupina orodnih vrstic \"%1\" ne obstoja",
NoActiveX : "Varnostne nastavitve vašega brskalnika lahko omejijo delovanje nekaterih zmožnosti urejevalnika. Če ne želite zaznavati napak in sporočil o manjkajočih zmožnostih, omogočite možnost \"Zaženi ActiveX kontrolnike in vtičnike\".",
BrowseServerBlocked : "Brskalnik virov se ne more odpreti. Prepričajte se, da je preprečevanje pojavnih oken onemogočeno.",
DialogBlocked : "Pogovorno okno se ni moglo odpreti. Prepričajte se, da je preprečevanje pojavnih oken onemogočeno.",
VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
VisitLinkBlocked : "Pogovorno okno se ni moglo odpreti. Prepričajte se, da je preprečevanje pojavnih oken onemogočeno.",
// Dialogs
DlgBtnOK : "V redu",
@ -308,11 +308,11 @@ DlgTableCellSpace : "Razmik med celicami",
DlgTableCellPad : "Polnilo med celicami",
DlgTableCaption : "Naslov",
DlgTableSummary : "Povzetek",
DlgTableHeaders : "Headers", //MISSING
DlgTableHeadersNone : "None", //MISSING
DlgTableHeadersColumn : "First column", //MISSING
DlgTableHeadersRow : "First Row", //MISSING
DlgTableHeadersBoth : "Both", //MISSING
DlgTableHeaders : "Glava",
DlgTableHeadersNone : "Brez",
DlgTableHeadersColumn : "Prvi stolpec",
DlgTableHeadersRow : "Prva vrstica",
DlgTableHeadersBoth : "Oboje",
// Table Cell Dialog
DlgCellTitle : "Lastnosti celice",
@ -335,9 +335,9 @@ DlgCellVerAlignTop : "Na vrh",
DlgCellVerAlignMiddle : "V sredino",
DlgCellVerAlignBottom : "Na dno",
DlgCellVerAlignBaseline : "Na osnovno črto",
DlgCellType : "Cell Type", //MISSING
DlgCellTypeData : "Data", //MISSING
DlgCellTypeHeader : "Header", //MISSING
DlgCellType : "Tip celice",
DlgCellTypeData : "Podatek",
DlgCellTypeHeader : "Naslov",
DlgCellRowSpan : "Spojenih vrstic (row-span)",
DlgCellCollSpan : "Spojenih stolpcev (col-span)",
DlgCellBackColor : "Barva ozadja",
@ -527,8 +527,13 @@ DlgAboutVersion : "različica",
DlgAboutInfo : "Za več informacij obiščite",
// Div Dialog
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivGeneralTab : "Splošno",
DlgDivAdvancedTab : "Napredno",
DlgDivStyle : "Oblika",
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Za više informacija posetite",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "За више информација посетите",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "För mer information se",
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "For further information go to", //MISSING
DlgDivGeneralTab : "General", //MISSING
DlgDivAdvancedTab : "Advanced", //MISSING
DlgDivStyle : "Style", //MISSING
DlgDivInlineStyle : "Inline Style" //MISSING
DlgDivInlineStyle : "Inline Style", //MISSING
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Daha fazla bilgi için:",
DlgDivGeneralTab : "Genel",
DlgDivAdvancedTab : "Gelişmiş",
DlgDivStyle : "Sitil",
DlgDivInlineStyle : "Satıriçi Sitil"
DlgDivInlineStyle : "Satıriçi Sitil",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Додаткову інформацію дивіться на "
DlgDivGeneralTab : "Загальна",
DlgDivAdvancedTab : "Розширена",
DlgDivStyle : "Стиль",
DlgDivInlineStyle : "Inline стиль"
DlgDivInlineStyle : "Inline стиль",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "Để biết thêm thông tin, hãy truy cập",
DlgDivGeneralTab : "Chung",
DlgDivAdvancedTab : "Nâng cao",
DlgDivStyle : "Kiểu Style",
DlgDivInlineStyle : "Kiểu Style Trực tiếp"
DlgDivInlineStyle : "Kiểu Style Trực tiếp",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "要获得更多信息请访问 ",
DlgDivGeneralTab : "常规",
DlgDivAdvancedTab : "高级",
DlgDivStyle : "样式",
DlgDivInlineStyle : "CSS 样式"
DlgDivInlineStyle : "CSS 样式",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -530,5 +530,10 @@ DlgAboutInfo : "想獲得更多資訊請至 ",
DlgDivGeneralTab : "一般",
DlgDivAdvancedTab : "進階",
DlgDivStyle : "樣式",
DlgDivInlineStyle : "CSS 樣式"
DlgDivInlineStyle : "CSS 樣式",
ScaytTitle : "SCAYT", //MISSING
ScaytTitleOptions : "Options", //MISSING
ScaytTitleLangs : "Languages", //MISSING
ScaytTitleAbout : "About" //MISSING
};

@ -1071,6 +1071,9 @@ FCKCommands.GetCommand = function( commandName )
// Generic Undefined command (usually used when a command is under development).
case 'Undefined' : oCommand = new FCKUndefinedCommand() ; break ;
case 'Scayt' : oCommand = FCKScayt.CreateCommand() ; break ;
case 'ScaytContext' : oCommand = FCKScayt.CreateContextCommand() ; break ;
// By default we assume that it is a named command.
default:
if ( FCKRegexLib.NamedCommands.test( commandName ) )

@ -160,7 +160,7 @@ FCKConfig.FontSizes = 'smaller;larger;xx-small;x-small;small;medium;large;x-lar
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'fckstyles.xml' ;
FCKConfig.TemplatesXmlPath = FCKConfig.EditorPath + 'fcktemplates.xml' ;
FCKConfig.SpellChecker = 'WSC' ; // 'WSC' | 'SpellerPages' | 'ieSpell'
FCKConfig.SpellChecker = 'WSC' ; // 'WSC' | 'SCAYT' | 'SpellerPages' | 'ieSpell'
FCKConfig.IeSpellDownloadUrl = 'http://www.iespell.com/download.php' ;
FCKConfig.SpellerPagesServerScript = 'server-scripts/spellchecker.php' ; // Available extension: .php .cfm .pl
FCKConfig.FirefoxSpellChecker = false ;

@ -146,6 +146,7 @@
<File path="editor/_source/classes/fcktoolbarfontscombo.js" />
<File path="editor/_source/classes/fcktoolbarfontsizecombo.js" />
<File path="editor/_source/classes/fcktoolbarpanelbutton.js" />
<File path="editor/_source/internals/fckscayt.js" />
<File path="editor/_source/internals/fcktoolbaritems.js" />
<File path="editor/_source/classes/fcktoolbar.js" />
<File path="editor/_source/classes/fcktoolbarbreak_ie.js" />
@ -242,6 +243,7 @@
<File path="editor/_source/classes/fcktoolbarfontscombo.js" />
<File path="editor/_source/classes/fcktoolbarfontsizecombo.js" />
<File path="editor/_source/classes/fcktoolbarpanelbutton.js" />
<File path="editor/_source/internals/fckscayt.js" />
<File path="editor/_source/internals/fcktoolbaritems.js" />
<File path="editor/_source/classes/fcktoolbar.js" />
<File path="editor/_source/classes/fcktoolbarbreak_gecko.js" />

Loading…
Cancel
Save