Mise à jour de fckeditor à la version 2.5beta - réinstallation complète car la structure des répertoires à changée

This commit is contained in:
Regis Houssin 2007-11-12 13:49:05 +00:00
parent 92a3ddb251
commit 3253e3057a
37 changed files with 4138 additions and 3166 deletions

View File

@ -3,7 +3,7 @@
* FCKeditor - The text editor for Internet - http://www.fckeditor.net * FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 Frederico Caldeira Knabben * Copyright (C) 2003-2007 Frederico Caldeira Knabben
* *
* --- BEGIN LICENSE --- * == BEGIN LICENSE ==
* *
* Licensed under the terms of any of the following licenses at your * Licensed under the terms of any of the following licenses at your
* choice: * choice:
@ -17,7 +17,7 @@
* - Mozilla Public License Version 1.1 or later (the "MPL") * - Mozilla Public License Version 1.1 or later (the "MPL")
* http://www.mozilla.org/MPL/MPL-1.1.html * http://www.mozilla.org/MPL/MPL-1.1.html
* *
* --- END LICENSE --- * == END LICENSE ==
--> -->
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>

View File

@ -3,7 +3,7 @@
* FCKeditor - The text editor for Internet - http://www.fckeditor.net * FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 Frederico Caldeira Knabben * Copyright (C) 2003-2007 Frederico Caldeira Knabben
* *
* --- BEGIN LICENSE --- * == BEGIN LICENSE ==
* *
* Licensed under the terms of any of the following licenses at your * Licensed under the terms of any of the following licenses at your
* choice: * choice:
@ -17,7 +17,7 @@
* - Mozilla Public License Version 1.1 or later (the "MPL") * - Mozilla Public License Version 1.1 or later (the "MPL")
* http://www.mozilla.org/MPL/MPL-1.1.html * http://www.mozilla.org/MPL/MPL-1.1.html
* *
* --- END LICENSE --- * == END LICENSE ==
--> -->
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,7 @@ FCKConfig.ImageUpload = false ;
FCKConfig.FlashUpload = false ; FCKConfig.FlashUpload = false ;
* Edit htdocs\includes\fckeditor\editor\filemanager\browser\default\connectors\php\config.php to set: * Edit htdocs\includes\fckeditor\editor\filemanager\connectors\php\config.php to set:
***************************************************************************************************** *****************************************************************************************************
//require_once("../../../../../../../../master.inc.php"); //require_once("../../../../../../../../master.inc.php");

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 219 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 236 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 205 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 223 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 B

View File

@ -19,12 +19,8 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckdebug.html * This is the Debug window.
* This is the Debug window. * It automatically popups if the Debug = true in the configuration file.
* It automatically popups if the Debug = true in the configuration file.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>

View File

@ -19,11 +19,7 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckdialog.html * This page is used by all dialog box as the container.
* This page is used by all dialog box as the container.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<html xmlns="http://www.w3.org/1999/xhtml"> <html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
@ -111,6 +107,18 @@ function RefreshSize()
} }
} }
// Kludge for #1316: Safari seems to have a bug with the time when RefreshSize() is executed - it thinks frmMain's innerHeight
// is 0 if we query the value too soon after the page is loaded in some circumstances.
if ( window.dialogArguments.Editor.FCKBrowserInfo.IsSafari )
{
window.OriginalRefreshSize = RefreshSize ;
RefreshSize = function()
{
window.setTimeout( window.OriginalRefreshSize, 1 );
}
}
function Ok() function Ok()
{ {
if ( window.frames["frmMain"].Ok && window.frames["frmMain"].Ok() ) if ( window.frames["frmMain"].Ok && window.frames["frmMain"].Ok() )
@ -119,7 +127,7 @@ function Ok()
function Cancel( dontFireChange ) function Cancel( dontFireChange )
{ {
if ( !dontFireChange ) if ( !dontFireChange && !window.dialogArguments.Editor.FCK.EditMode )
{ {
// All dialog windows, by default, will fire the "OnSelectionChange" // All dialog windows, by default, will fire the "OnSelectionChange"
// event, no matter the Ok or Cancel button has been pressed. // event, no matter the Ok or Cancel button has been pressed.
@ -315,8 +323,9 @@ document.write( sTitle ) ;
<tr> <tr>
<td width="100%">&nbsp;</td> <td width="100%">&nbsp;</td>
<td nowrap="nowrap"> <td nowrap="nowrap">
<input id="btnOk" style="VISIBILITY: hidden; WIDTH: 100px" type="button" value="Ok" class="Button" <input id="btnOk" style="VISIBILITY: hidden;" type="button" value="Ok" class="Button" onclick="Ok();" fckLang="DlgBtnOK" />
onclick="Ok();" fckLang="DlgBtnOK" />&nbsp; <input type="button" value="Cancel" class="Button" onclick="Cancel();" fckLang="DlgBtnCancel" /> &nbsp;
<input id="btnCancel" type="button" value="Cancel" class="Button" onclick="Cancel();" fckLang="DlgBtnCancel" />
</td> </td>
</tr> </tr>
</table> </table>

View File

@ -19,17 +19,13 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.html * Main page that holds the editor.
* Main page that holds the editor.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<html xmlns="http://www.w3.org/1999/xhtml"> <html>
<head> <head>
<title>FCKeditor</title> <title>FCKeditor</title>
<meta name="robots" content="noindex, nofollow" /> <meta name="robots" content="noindex, nofollow">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Cache-Control" content="public" /> <meta http-equiv="Cache-Control" content="public" />
<script type="text/javascript"> <script type="text/javascript">
@ -40,16 +36,16 @@
function LoadScript( url ) function LoadScript( url )
{ {
document.write( '<script type="text/javascript" src="' + url + '" onerror="alert(\'Error loading \' + this.src);"><\/script>' ) ; document.write( '<scr' + 'ipt type="text/javascript" src="' + url + '"><\/scr' + 'ipt>' ) ;
} }
function LoadCss( url ) function LoadCss( url )
{ {
document.write( '<link href="' + url + '" type="text/css" rel="stylesheet" onerror="alert(\'Error loading \' + this.src);" />' ) ; document.write( '<link href="' + url + '" type="text/css" rel="stylesheet" />' ) ;
} }
// Main editor scripts. // Main editor scripts.
var sSuffix = /msie/.test( navigator.userAgent.toLowerCase() ) ? 'ie' : 'gecko' ; var sSuffix = ( /*@cc_on!@*/false ) ? 'ie' : 'gecko' ;
LoadScript( 'js/fckeditorcode_' + sSuffix + '.js' ) ; LoadScript( 'js/fckeditorcode_' + sSuffix + '.js' ) ;
@ -78,6 +74,11 @@ if ( FCKBrowserInfo.IsIE )
FCK.IECleanup.AddItem( FCK, FCK_Cleanup ) ; FCK.IECleanup.AddItem( FCK, FCK_Cleanup ) ;
} }
// The first function to be called on selection change must the the styles
// change checker, because the result of its processing may be used by another
// functions listening to the same event.
FCK.Events.AttachEvent( 'OnSelectionChange', function() { FCKStyles.CheckSelectionChanges() ; } ) ;
// The config hidden field is processed immediately, because // The config hidden field is processed immediately, because
// CustomConfigurationsPath may be set in the page. // CustomConfigurationsPath may be set in the page.
FCKConfig.ProcessHiddenField() ; FCKConfig.ProcessHiddenField() ;
@ -115,10 +116,6 @@ FCKPlugins.Load() ;
// Set the editor interface direction. // Set the editor interface direction.
window.document.dir = FCKLang.Dir ; window.document.dir = FCKLang.Dir ;
// Activate pasting operations.
if ( FCKConfig.ForcePasteAsPlainText || FCKConfig.AutoDetectPasteFromWord )
FCK.Events.AttachEvent( 'OnPaste', FCK.Paste ) ;
</script> </script>
<script type="text/javascript"> <script type="text/javascript">

View File

@ -1,4 +1,4 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- <!--
* FCKeditor - The text editor for Internet - http://www.fckeditor.net * FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 Frederico Caldeira Knabben * Copyright (C) 2003-2007 Frederico Caldeira Knabben
@ -19,17 +19,13 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.original.html * Main page that holds the editor.
* Main page that holds the editor.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<html xmlns="http://www.w3.org/1999/xhtml"> <html>
<head> <head>
<title>FCKeditor</title> <title>FCKeditor</title>
<meta name="robots" content="noindex, nofollow" /> <meta name="robots" content="noindex, nofollow">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!-- @Packager.RemoveLine <!-- @Packager.RemoveLine
<meta http-equiv="Cache-Control" content="public" /> <meta http-equiv="Cache-Control" content="public" />
@Packager.RemoveLine --> @Packager.RemoveLine -->
@ -42,16 +38,16 @@
function LoadScript( url ) function LoadScript( url )
{ {
document.write( '<script type="text/javascript" src="' + url + '" onerror="alert(\'Error loading \' + this.src);"><\/script>' ) ; document.write( '<scr' + 'ipt type="text/javascript" src="' + url + '"><\/scr' + 'ipt>' ) ;
} }
function LoadCss( url ) function LoadCss( url )
{ {
document.write( '<link href="' + url + '" type="text/css" rel="stylesheet" onerror="alert(\'Error loading \' + this.src);" />' ) ; document.write( '<link href="' + url + '" type="text/css" rel="stylesheet" />' ) ;
} }
// Main editor scripts. // Main editor scripts.
var sSuffix = /msie/.test( navigator.userAgent.toLowerCase() ) ? 'ie' : 'gecko' ; var sSuffix = ( /*@cc_on!@*/false ) ? 'ie' : 'gecko' ;
/* @Packager.RemoveLine /* @Packager.RemoveLine
LoadScript( 'js/fckeditorcode_' + sSuffix + '.js' ) ; LoadScript( 'js/fckeditorcode_' + sSuffix + '.js' ) ;
@ -67,6 +63,7 @@ if ( sSuffix == 'ie' )
LoadScript( '_source/internals/fckbrowserinfo.js' ) ; LoadScript( '_source/internals/fckbrowserinfo.js' ) ;
LoadScript( '_source/internals/fckurlparams.js' ) ; LoadScript( '_source/internals/fckurlparams.js' ) ;
LoadScript( '_source/classes/fckevents.js' ) ; LoadScript( '_source/classes/fckevents.js' ) ;
LoadScript( '_source/classes/fckdataprocessor.js' ) ;
LoadScript( '_source/internals/fck.js' ) ; LoadScript( '_source/internals/fck.js' ) ;
LoadScript( '_source/internals/fck_' + sSuffix + '.js' ) ; LoadScript( '_source/internals/fck_' + sSuffix + '.js' ) ;
LoadScript( '_source/internals/fckconfig.js' ) ; LoadScript( '_source/internals/fckconfig.js' ) ;
@ -78,21 +75,27 @@ LoadScript( '_source/internals/fcktools_' + sSuffix + '.js' ) ;
LoadScript( '_source/fckeditorapi.js' ) ; LoadScript( '_source/fckeditorapi.js' ) ;
LoadScript( '_source/classes/fckimagepreloader.js' ) ; LoadScript( '_source/classes/fckimagepreloader.js' ) ;
LoadScript( '_source/internals/fckregexlib.js' ) ; LoadScript( '_source/internals/fckregexlib.js' ) ;
LoadScript( '_source/internals/fcklistslib.js' ) ;
LoadScript( '_source/internals/fcklanguagemanager.js' ) ; LoadScript( '_source/internals/fcklanguagemanager.js' ) ;
LoadScript( '_source/internals/fckxhtmlentities.js' ) ; LoadScript( '_source/internals/fckxhtmlentities.js' ) ;
LoadScript( '_source/internals/fckxhtml.js' ) ; LoadScript( '_source/internals/fckxhtml.js' ) ;
LoadScript( '_source/internals/fckxhtml_' + sSuffix + '.js' ) ; LoadScript( '_source/internals/fckxhtml_' + sSuffix + '.js' ) ;
LoadScript( '_source/internals/fckcodeformatter.js' ) ; LoadScript( '_source/internals/fckcodeformatter.js' ) ;
LoadScript( '_source/internals/fckundo_' + sSuffix + '.js' ) ; LoadScript( '_source/internals/fckundo.js' ) ;
LoadScript( '_source/classes/fckeditingarea.js' ) ; LoadScript( '_source/classes/fckeditingarea.js' ) ;
LoadScript( '_source/classes/fckkeystrokehandler.js' ) ; LoadScript( '_source/classes/fckkeystrokehandler.js' ) ;
LoadScript( 'dtd/fck_xhtml10transitional.js' ) ;
LoadScript( '_source/classes/fckstyle.js' ) ;
LoadScript( '_source/internals/fckstyles.js' ) ;
LoadScript( '_source/internals/fcklisthandler.js' ) ; LoadScript( '_source/internals/fcklisthandler.js' ) ;
LoadScript( '_source/classes/fckelementpath.js' ) ; LoadScript( '_source/classes/fckelementpath.js' ) ;
LoadScript( '_source/classes/fckdomrange.js' ) ; LoadScript( '_source/classes/fckdomrange.js' ) ;
LoadScript( '_source/classes/fckdocumentfragment_' + sSuffix + '.js' ) ; LoadScript( '_source/classes/fckdocumentfragment_' + sSuffix + '.js' ) ;
LoadScript( '_source/classes/fckw3crange.js' ) ; LoadScript( '_source/classes/fckw3crange.js' ) ;
LoadScript( '_source/classes/fckdomrange_' + sSuffix + '.js' ) ; LoadScript( '_source/classes/fckdomrange_' + sSuffix + '.js' ) ;
LoadScript( '_source/classes/fckdomrangeiterator.js' ) ;
LoadScript( '_source/classes/fckenterkey.js' ) ; LoadScript( '_source/classes/fckenterkey.js' ) ;
LoadScript( '_source/internals/fckdocumentprocessor.js' ) ; LoadScript( '_source/internals/fckdocumentprocessor.js' ) ;
@ -101,20 +104,25 @@ LoadScript( '_source/internals/fckselection_' + sSuffix + '.js' ) ;
LoadScript( '_source/internals/fcktablehandler.js' ) ; LoadScript( '_source/internals/fcktablehandler.js' ) ;
LoadScript( '_source/internals/fcktablehandler_' + sSuffix + '.js' ) ; LoadScript( '_source/internals/fcktablehandler_' + sSuffix + '.js' ) ;
LoadScript( '_source/classes/fckxml.js' ) ;
LoadScript( '_source/classes/fckxml_' + sSuffix + '.js' ) ; LoadScript( '_source/classes/fckxml_' + sSuffix + '.js' ) ;
LoadScript( '_source/classes/fckstyledef.js' ) ;
LoadScript( '_source/classes/fckstyledef_' + sSuffix + '.js' ) ;
LoadScript( '_source/classes/fckstylesloader.js' ) ;
LoadScript( '_source/commandclasses/fcknamedcommand.js' ) ; LoadScript( '_source/commandclasses/fcknamedcommand.js' ) ;
LoadScript( '_source/commandclasses/fckstylecommand.js' ) ;
LoadScript( '_source/commandclasses/fck_othercommands.js' ) ; LoadScript( '_source/commandclasses/fck_othercommands.js' ) ;
LoadScript( '_source/commandclasses/fckshowblocks.js' ) ;
LoadScript( '_source/commandclasses/fckspellcheckcommand_' + sSuffix + '.js' ) ; LoadScript( '_source/commandclasses/fckspellcheckcommand_' + sSuffix + '.js' ) ;
LoadScript( '_source/commandclasses/fcktextcolorcommand.js' ) ; LoadScript( '_source/commandclasses/fcktextcolorcommand.js' ) ;
LoadScript( '_source/commandclasses/fckpasteplaintextcommand.js' ) ; LoadScript( '_source/commandclasses/fckpasteplaintextcommand.js' ) ;
LoadScript( '_source/commandclasses/fckpastewordcommand.js' ) ; LoadScript( '_source/commandclasses/fckpastewordcommand.js' ) ;
LoadScript( '_source/commandclasses/fcktablecommand.js' ) ; LoadScript( '_source/commandclasses/fcktablecommand.js' ) ;
LoadScript( '_source/commandclasses/fckstylecommand.js' ) ;
LoadScript( '_source/commandclasses/fckfitwindow.js' ) ; LoadScript( '_source/commandclasses/fckfitwindow.js' ) ;
LoadScript( '_source/commandclasses/fcklistcommands.js' ) ;
LoadScript( '_source/commandclasses/fckjustifycommands.js' ) ;
LoadScript( '_source/commandclasses/fckindentcommands.js' ) ;
LoadScript( '_source/commandclasses/fckblockquotecommand.js' ) ;
LoadScript( '_source/commandclasses/fckcorestylecommand.js' ) ;
LoadScript( '_source/commandclasses/fckremoveformatcommand.js' ) ;
LoadScript( '_source/internals/fckcommands.js' ) ; LoadScript( '_source/internals/fckcommands.js' ) ;
LoadScript( '_source/classes/fckpanel.js' ) ; LoadScript( '_source/classes/fckpanel.js' ) ;
@ -123,10 +131,10 @@ LoadScript( '_source/classes/fcktoolbarbuttonui.js' ) ;
LoadScript( '_source/classes/fcktoolbarbutton.js' ) ; LoadScript( '_source/classes/fcktoolbarbutton.js' ) ;
LoadScript( '_source/classes/fckspecialcombo.js' ) ; LoadScript( '_source/classes/fckspecialcombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarspecialcombo.js' ) ; LoadScript( '_source/classes/fcktoolbarspecialcombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarstylecombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarfontformatcombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarfontscombo.js' ) ; LoadScript( '_source/classes/fcktoolbarfontscombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarfontsizecombo.js' ) ; LoadScript( '_source/classes/fcktoolbarfontsizecombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarfontformatcombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarstylecombo.js' ) ;
LoadScript( '_source/classes/fcktoolbarpanelbutton.js' ) ; LoadScript( '_source/classes/fcktoolbarpanelbutton.js' ) ;
LoadScript( '_source/internals/fcktoolbaritems.js' ) ; LoadScript( '_source/internals/fcktoolbaritems.js' ) ;
LoadScript( '_source/classes/fcktoolbar.js' ) ; LoadScript( '_source/classes/fcktoolbar.js' ) ;
@ -169,6 +177,11 @@ if ( FCKBrowserInfo.IsIE )
FCK.IECleanup.AddItem( FCK, FCK_Cleanup ) ; FCK.IECleanup.AddItem( FCK, FCK_Cleanup ) ;
} }
// The first function to be called on selection change must the the styles
// change checker, because the result of its processing may be used by another
// functions listening to the same event.
FCK.Events.AttachEvent( 'OnSelectionChange', function() { FCKStyles.CheckSelectionChanges() ; } ) ;
// The config hidden field is processed immediately, because // The config hidden field is processed immediately, because
// CustomConfigurationsPath may be set in the page. // CustomConfigurationsPath may be set in the page.
FCKConfig.ProcessHiddenField() ; FCKConfig.ProcessHiddenField() ;
@ -206,10 +219,6 @@ FCKPlugins.Load() ;
// Set the editor interface direction. // Set the editor interface direction.
window.document.dir = FCKLang.Dir ; window.document.dir = FCKLang.Dir ;
// Activate pasting operations.
if ( FCKConfig.ForcePasteAsPlainText || FCKConfig.AutoDetectPasteFromWord )
FCK.Events.AttachEvent( 'OnPaste', FCK.Paste ) ;
</script> </script>
<script type="text/javascript"> <script type="text/javascript">

View File

@ -18,23 +18,16 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckconfig.js * Editor configuration settings.
* Editor configuration settings.
* *
* Follow this link for more information: * Follow this link for more information:
* http://wiki.fckeditor.net/Developer%27s_Guide/Configuration/Configurations_Settings * http://wiki.fckeditor.net/Developer%27s_Guide/Configuration/Configurations_Settings
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
*/ */
// Disable the custom Enter Key Handler (this configuration will be removed in
// version 2.5).
FCKConfig.DisableEnterKeyHandler = false ;
FCKConfig.CustomConfigurationsPath = '' ; FCKConfig.CustomConfigurationsPath = '' ;
FCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css' ; FCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css' ;
FCKConfig.EditorAreaStyles = '' ;
FCKConfig.ToolbarComboPreviewCSS = '' ; FCKConfig.ToolbarComboPreviewCSS = '' ;
FCKConfig.DocType = '' ; FCKConfig.DocType = '' ;
@ -43,6 +36,9 @@ FCKConfig.BaseHref = '' ;
FCKConfig.FullPage = false ; FCKConfig.FullPage = false ;
// The following option determines whether the "Show Blocks" feature is enabled or not at startup.
FCKConfig.StartupShowBlocks = false ;
FCKConfig.Debug = false ; FCKConfig.Debug = false ;
FCKConfig.AllowQueryStringDebug = true ; FCKConfig.AllowQueryStringDebug = true ;
@ -52,9 +48,9 @@ FCKConfig.PreloadImages = [ FCKConfig.SkinPath + 'images/toolbar.start.gif', FCK
FCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ; FCKConfig.PluginsPath = FCKConfig.BasePath + 'plugins/' ;
// FCKConfig.Plugins.Add( 'autogrow' ) ; // FCKConfig.Plugins.Add( 'autogrow' ) ;
// FCKConfig.Plugins.Add( 'dragresizetable' );
FCKConfig.AutoGrowMax = 400 ; FCKConfig.AutoGrowMax = 400 ;
FCKConfig.ProtectedSource.Add( /<script[\s\S]*?\/script>/gi ) ; // <SCRIPT> tags.
// FCKConfig.ProtectedSource.Add( /<%[\s\S]*?%>/g ) ; // ASP style server side code <%...%> // FCKConfig.ProtectedSource.Add( /<%[\s\S]*?%>/g ) ; // ASP style server side code <%...%>
FCKConfig.ProtectedSource.Add( /<\?[\s\S]*?\?>/g ) ; // PHP style server side code FCKConfig.ProtectedSource.Add( /<\?[\s\S]*?\?>/g ) ; // PHP style server side code
// FCKConfig.ProtectedSource.Add( /(<asp:[^\>]+>[\s|\S]*?<\/asp:[^\>]+>)|(<asp:[^\>]+\/>)/gi ) ; // ASP.Net style tags <asp:control> // FCKConfig.ProtectedSource.Add( /(<asp:[^\>]+>[\s|\S]*?<\/asp:[^\>]+>)|(<asp:[^\>]+\/>)/gi ) ; // ASP.Net style tags <asp:control>
@ -77,11 +73,11 @@ FCKConfig.FormatSource = false ;
FCKConfig.FormatOutput = false ; FCKConfig.FormatOutput = false ;
FCKConfig.FormatIndentator = ' ' ; FCKConfig.FormatIndentator = ' ' ;
FCKConfig.ForceStrongEm = true ;
FCKConfig.GeckoUseSPAN = false ; FCKConfig.GeckoUseSPAN = false ;
FCKConfig.StartupFocus = false ; FCKConfig.StartupFocus = false ;
FCKConfig.ForcePasteAsPlainText = false ; FCKConfig.ForcePasteAsPlainText = false ;
FCKConfig.AutoDetectPasteFromWord = true ; // IE only. FCKConfig.AutoDetectPasteFromWord = true ; // IE only.
FCKConfig.ShowDropDialog = true ;
FCKConfig.ForceSimpleAmpersand = false ; FCKConfig.ForceSimpleAmpersand = false ;
FCKConfig.TabSpaces = 0 ; FCKConfig.TabSpaces = 0 ;
FCKConfig.ShowBorders = true ; FCKConfig.ShowBorders = true ;
@ -91,12 +87,14 @@ FCKConfig.ToolbarCanCollapse = true ;
FCKConfig.IgnoreEmptyParagraphValue = true ; FCKConfig.IgnoreEmptyParagraphValue = true ;
FCKConfig.PreserveSessionOnFileBrowser = false ; FCKConfig.PreserveSessionOnFileBrowser = false ;
FCKConfig.FloatingPanelsZIndex = 10000 ; FCKConfig.FloatingPanelsZIndex = 10000 ;
FCKConfig.HtmlEncodeOutput = false ;
FCKConfig.TemplateReplaceAll = true ; FCKConfig.TemplateReplaceAll = true ;
FCKConfig.TemplateReplaceCheckbox = true ; FCKConfig.TemplateReplaceCheckbox = true ;
FCKConfig.ToolbarLocation = 'In' ; FCKConfig.ToolbarLocation = 'In' ;
/* Ne pas mettre le lien sur objets internes (Image,Smiley) sur le type mailing */
FCKConfig.ToolbarSets["dolibarr_mailings"] = [ FCKConfig.ToolbarSets["dolibarr_mailings"] = [
['FitWindow','Source'], ['FitWindow','Source'],
['Cut','Copy','Paste','PasteText','PasteWord','-','SpellCheck','-','Preview','Print'], ['Cut','Copy','Paste','PasteText','PasteWord','-','SpellCheck','-','Preview','Print'],
@ -104,7 +102,7 @@ FCKConfig.ToolbarSets["dolibarr_mailings"] = [
['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript','-','TextColor','BGColor','-','RemoveFormat'], ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript','-','TextColor','BGColor','-','RemoveFormat'],
['OrderedList','UnorderedList','-','Outdent','Indent'], ['OrderedList','UnorderedList','-','Outdent','Indent'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'], ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
['Link','Unlink','Anchor','Image','Table','Rule','Smiley','SpecialChar'], ['Link','Unlink','Anchor','Image','Table','Rule','SpecialChar'],
['FontName','FontSize'] ['FontName','FontSize']
] ; ] ;
@ -137,14 +135,14 @@ FCKConfig.ToolbarSets["Default"] = [
['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'], ['Form','Checkbox','Radio','TextField','Textarea','Select','Button','ImageButton','HiddenField'],
'/', '/',
['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'], ['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
['OrderedList','UnorderedList','-','Outdent','Indent'], ['OrderedList','UnorderedList','-','Outdent','Indent','Blockquote'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'], ['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
['Link','Unlink','Anchor'], ['Link','Unlink','Anchor'],
['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak'], ['Image','Flash','Table','Rule','Smiley','SpecialChar','PageBreak'],
'/', '/',
['Style','FontFormat','FontName','FontSize'], ['Style','FontFormat','FontName','FontSize'],
['TextColor','BGColor'], ['TextColor','BGColor'],
['FitWindow','-','About'] ['FitWindow','ShowBlocks','-','About'] // No comma for the last row.
] ; ] ;
FCKConfig.ToolbarSets["Basic"] = [ FCKConfig.ToolbarSets["Basic"] = [
@ -157,9 +155,13 @@ FCKConfig.ShiftEnterMode = 'p' ; // p | div | br
FCKConfig.Keystrokes = [ FCKConfig.Keystrokes = [
[ CTRL + 65 /*A*/, true ], [ CTRL + 65 /*A*/, true ],
[ CTRL + 67 /*C*/, true ], [ CTRL + 67 /*C*/, true ],
[ CTRL + 70 /*F*/, true ],
[ CTRL + 83 /*S*/, true ],
[ CTRL + 88 /*X*/, true ], [ CTRL + 88 /*X*/, true ],
[ CTRL + 86 /*V*/, 'Paste' ], [ CTRL + 86 /*V*/, 'Paste' ],
[ SHIFT + 45 /*INS*/, 'Paste' ], [ SHIFT + 45 /*INS*/, 'Paste' ],
[ CTRL + 88 /*X*/, 'Cut' ],
[ SHIFT + 46 /*DEL*/, 'Cut' ],
[ CTRL + 90 /*Z*/, 'Undo' ], [ CTRL + 90 /*Z*/, 'Undo' ],
[ CTRL + 89 /*Y*/, 'Redo' ], [ CTRL + 89 /*Y*/, 'Redo' ],
[ CTRL + SHIFT + 90 /*Z*/, 'Redo' ], [ CTRL + SHIFT + 90 /*Z*/, 'Redo' ],
@ -167,25 +169,28 @@ FCKConfig.Keystrokes = [
[ CTRL + 66 /*B*/, 'Bold' ], [ CTRL + 66 /*B*/, 'Bold' ],
[ CTRL + 73 /*I*/, 'Italic' ], [ CTRL + 73 /*I*/, 'Italic' ],
[ CTRL + 85 /*U*/, 'Underline' ], [ CTRL + 85 /*U*/, 'Underline' ],
[ CTRL + ALT + 83 /*S*/, 'Save' ], [ CTRL + SHIFT + 83 /*S*/, 'Save' ],
[ CTRL + ALT + 13 /*ENTER*/, 'FitWindow' ], [ CTRL + ALT + 13 /*ENTER*/, 'FitWindow' ],
[ CTRL + 9 /*TAB*/, 'Source' ] [ CTRL + 9 /*TAB*/, 'Source' ]
] ; ] ;
FCKConfig.ContextMenu = ['Generic','Link','Anchor','Image','Flash','Select','Textarea','Checkbox','Radio','TextField','HiddenField','ImageButton','Button','BulletedList','NumberedList','Table','Form'] ; FCKConfig.ContextMenu = ['Generic','Link','Anchor','Image','Flash','Select','Textarea','Checkbox','Radio','TextField','HiddenField','ImageButton','Button','BulletedList','NumberedList','Table','Form'] ;
FCKConfig.BrowserContextMenuOnCtrl = false ;
FCKConfig.EnableMoreFontColors = true ;
FCKConfig.FontColors = '000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,808080,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF' ; FCKConfig.FontColors = '000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,808080,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF' ;
FCKConfig.FontNames = 'Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;
FCKConfig.FontSizes = '1/xx-small;2/x-small;3/small;4/medium;5/large;6/x-large;7/xx-large' ;
FCKConfig.FontFormats = 'p;div;pre;address;h1;h2;h3;h4;h5;h6' ; FCKConfig.FontFormats = 'p;div;pre;address;h1;h2;h3;h4;h5;h6' ;
FCKConfig.FontNames = 'Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;
FCKConfig.FontSizes = 'smaller;larger;xx-small;x-small;small;medium;large;x-large;xx-large' ;
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'fckstyles.xml' ; FCKConfig.StylesXmlPath = FCKConfig.EditorPath + 'fckstyles.xml' ;
FCKConfig.TemplatesXmlPath = FCKConfig.EditorPath + 'fcktemplates.xml' ; FCKConfig.TemplatesXmlPath = FCKConfig.EditorPath + 'fcktemplates.xml' ;
FCKConfig.SpellChecker = 'ieSpell' ; // 'ieSpell' | 'SpellerPages' FCKConfig.SpellChecker = 'ieSpell' ; // 'ieSpell' | 'SpellerPages'
FCKConfig.IeSpellDownloadUrl = 'http://wcarchive.cdrom.com/pub/simtelnet/handheld/webbrow1/ieSpellSetup240428.exe' ; FCKConfig.IeSpellDownloadUrl = 'http://www.iespell.com/download.php' ;
FCKConfig.SpellerPagesServerScript = 'server-scripts/spellchecker.php' ; // Available extension: .php .cfm .pl FCKConfig.SpellerPagesServerScript = 'server-scripts/spellchecker.php' ; // Available extension: .php .cfm .pl
FCKConfig.FirefoxSpellChecker = false ;
FCKConfig.MaxUndoLevels = 15 ; FCKConfig.MaxUndoLevels = 15 ;
@ -206,9 +211,83 @@ FCKConfig.ProtectedTags = '' ;
FCKConfig.BodyId = '' ; FCKConfig.BodyId = '' ;
FCKConfig.BodyClass = '' ; FCKConfig.BodyClass = '' ;
FCKConfig.DefaultStyleLabel = '' ;
FCKConfig.DefaultFontFormatLabel = '' ;
FCKConfig.DefaultFontLabel = '' ;
FCKConfig.DefaultFontSizeLabel = '' ;
FCKConfig.DefaultLinkTarget = '' ;
// The option switches between trying to keep the html structure or do the changes so the content looks like it was in Word // The option switches between trying to keep the html structure or do the changes so the content looks like it was in Word
FCKConfig.CleanWordKeepsStructure = false ; FCKConfig.CleanWordKeepsStructure = false ;
// Only inline elements are valid.
FCKConfig.RemoveFormatTags = 'b,big,code,del,dfn,em,font,i,ins,kbd,q,samp,small,span,strike,strong,sub,sup,tt,u,var' ;
FCKConfig.CustomStyles =
{
'Red Title' : { Element : 'h3', Styles : { 'color' : 'Red' } }
};
// Do not add, rename or remove styles here. Only apply definition changes.
FCKConfig.CoreStyles =
{
// Basic Inline Styles.
'Bold' : { Element : 'b', Overrides : 'strong' },
'Italic' : { Element : 'i', Overrides : 'em' },
'Underline' : { Element : 'u' },
'StrikeThrough' : { Element : 'strike' },
'Subscript' : { Element : 'sub' },
'Superscript' : { Element : 'sup' },
// Basic Block Styles (Font Format Combo).
'p' : { Element : 'p' },
'div' : { Element : 'div' },
'pre' : { Element : 'pre' },
'address' : { Element : 'address' },
'h1' : { Element : 'h1' },
'h2' : { Element : 'h2' },
'h3' : { Element : 'h3' },
'h4' : { Element : 'h4' },
'h5' : { Element : 'h5' },
'h6' : { Element : 'h6' },
// Other formatting features.
'FontFace' :
{
Element : 'span',
Styles : { 'font-family' : '#("Font")' },
Overrides : [ { Element : 'font', Attributes : { 'face' : null } } ]
},
'Size' :
{
Element : 'span',
Styles : { 'font-size' : '#("Size","fontSize")' },
Overrides : [ { Element : 'font', Attributes : { 'size' : null } } ]
},
'Color' :
{
Element : 'span',
Styles : { 'color' : '#("Color","color")' },
Overrides : [ { Element : 'font', Attributes : { 'color' : null } } ]
},
'BackColor' : { Element : 'span', Styles : { 'background-color' : '#("Color","color")' } }
};
// The distance of an indentation step.
FCKConfig.IndentLength = 40 ;
FCKConfig.IndentUnit = 'px' ;
// Alternatively, FCKeditor allows the use of CSS classes for block indentation.
// This overrides the IndentLength/IndentUnit settings.
FCKConfig.IndentClasses = [] ;
// [ Left, Center, Right, Justified ]
FCKConfig.JustifyClasses = [] ;
// The following value defines which File Browser connector and Quick Upload // The following value defines which File Browser connector and Quick Upload
// "uploader" to use. It is valid for the default implementaion and it is here // "uploader" to use. It is valid for the default implementaion and it is here
// just to make this configuration file cleaner. // just to make this configuration file cleaner.
@ -217,39 +296,39 @@ FCKConfig.CleanWordKeepsStructure = false ;
// values of LinkBrowserURL, ImageBrowserURL and so on. // values of LinkBrowserURL, ImageBrowserURL and so on.
// Custom implementations should just ignore it. // Custom implementations should just ignore it.
var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py
var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | php var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py
// Don't care about the following line. It just calculates the correct connector // Don't care about the following line. It just calculates the correct connector
// extension to use for the default File Browser (Perl uses "cgi"). // extension to use for the default File Browser (Perl uses "cgi").
var _FileBrowserExtension = _FileBrowserLanguage == 'perl' ? 'cgi' : _FileBrowserLanguage ; var _FileBrowserExtension = _FileBrowserLanguage == 'perl' ? 'cgi' : _FileBrowserLanguage ;
FCKConfig.LinkBrowser = true ; FCKConfig.LinkBrowser = true ;
FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ; FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=../../connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ;
FCKConfig.LinkBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70% FCKConfig.LinkBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70%
FCKConfig.LinkBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; // 70% FCKConfig.LinkBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; // 70%
FCKConfig.ImageBrowser = true ; FCKConfig.ImageBrowser = true ;
FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ; FCKConfig.ImageBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Image&Connector=../../connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ;
FCKConfig.ImageBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70% ; FCKConfig.ImageBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; // 70% ;
FCKConfig.ImageBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; // 70% ; FCKConfig.ImageBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; // 70% ;
FCKConfig.FlashBrowser = true ; FCKConfig.FlashBrowser = true ;
FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ; FCKConfig.FlashBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=Flash&Connector=../../connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ;
FCKConfig.FlashBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; //70% ; FCKConfig.FlashBrowserWindowWidth = FCKConfig.ScreenWidth * 0.7 ; //70% ;
FCKConfig.FlashBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; //70% ; FCKConfig.FlashBrowserWindowHeight = FCKConfig.ScreenHeight * 0.7 ; //70% ;
FCKConfig.LinkUpload = false ; FCKConfig.LinkUpload = false ;
FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/upload/' + _QuickUploadLanguage + '/upload.' + _QuickUploadLanguage ; FCKConfig.LinkUploadURL = FCKConfig.BasePath + 'filemanager/connectors/' + _QuickUploadLanguage + '/upload.' + _QuickUploadLanguage ;
FCKConfig.LinkUploadAllowedExtensions = "" ; // empty for all FCKConfig.LinkUploadAllowedExtensions = "" ; // empty for all
FCKConfig.LinkUploadDeniedExtensions = ".(html|htm|php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|com|dll|vbs|js|reg|cgi|htaccess|asis)$" ; // empty for no one FCKConfig.LinkUploadDeniedExtensions = ".(html|htm|php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|com|dll|vbs|js|reg|cgi|htaccess|asis|sh|shtml|shtm|phtm)$" ; // empty for no one
FCKConfig.ImageUpload = false ; FCKConfig.ImageUpload = false ;
FCKConfig.ImageUploadURL = FCKConfig.BasePath + 'filemanager/upload/' + _QuickUploadLanguage + '/upload.' + _QuickUploadLanguage + '?Type=Image' ; FCKConfig.ImageUploadURL = FCKConfig.BasePath + 'filemanager/connectors/' + _QuickUploadLanguage + '/upload.' + _QuickUploadLanguage + '?Type=Image' ;
FCKConfig.ImageUploadAllowedExtensions = ".(jpg|gif|jpeg|png|bmp)$" ; // empty for all FCKConfig.ImageUploadAllowedExtensions = ".(jpg|gif|jpeg|png|bmp)$" ; // empty for all
FCKConfig.ImageUploadDeniedExtensions = "" ; // empty for no one FCKConfig.ImageUploadDeniedExtensions = "" ; // empty for no one
FCKConfig.FlashUpload = false ; FCKConfig.FlashUpload = false ;
FCKConfig.FlashUploadURL = FCKConfig.BasePath + 'filemanager/upload/' + _QuickUploadLanguage + '/upload.' + _QuickUploadLanguage + '?Type=Flash' ; FCKConfig.FlashUploadURL = FCKConfig.BasePath + 'filemanager/connectors/' + _QuickUploadLanguage + '/upload.' + _QuickUploadLanguage + '?Type=Flash' ;
FCKConfig.FlashUploadAllowedExtensions = ".(swf|fla)$" ; // empty for all FCKConfig.FlashUploadAllowedExtensions = ".(swf|fla)$" ; // empty for all
FCKConfig.FlashUploadDeniedExtensions = "" ; // empty for no one FCKConfig.FlashUploadDeniedExtensions = "" ; // empty for no one
@ -258,3 +337,4 @@ FCKConfig.SmileyImages = ['regular_smile.gif','sad_smile.gif','wink_smile.gif','
FCKConfig.SmileyColumns = 8 ; FCKConfig.SmileyColumns = 8 ;
FCKConfig.SmileyWindowWidth = 320 ; FCKConfig.SmileyWindowWidth = 320 ;
FCKConfig.SmileyWindowHeight = 240 ; FCKConfig.SmileyWindowHeight = 240 ;

View File

@ -18,13 +18,7 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.afp * This is the integration file for Active FoxPro Pages.
* This is the integration file for Active FoxPro Pages.
*
* Version: 1.01
* Modified: 2006-11-13
*
* File Authors: Soenke Freitag (www.afp-hosting.de)
* *
DEFINE CLASS goFckeditor AS CONTAINER OLEPUBLIC DEFINE CLASS goFckeditor AS CONTAINER OLEPUBLIC
@ -113,6 +107,7 @@ DEFINE CLASS goFckeditor AS CONTAINER OLEPUBLIC
llRetval=.F. llRetval=.F.
SET POINT TO "."
sAgent = LOWER(ALLTRIM(request.servervariables("HTTP_USER_AGENT"))) sAgent = LOWER(ALLTRIM(request.servervariables("HTTP_USER_AGENT")))
@ -120,11 +115,24 @@ DEFINE CLASS goFckeditor AS CONTAINER OLEPUBLIC
iVersion=VAL(SUBSTR(sAgent,AT("msie",sAgent)+5,3)) iVersion=VAL(SUBSTR(sAgent,AT("msie",sAgent)+5,3))
llRetval= iVersion > 5.5 llRetval= iVersion > 5.5
ELSE ELSE
IF AT("gecko",sAgent)>0 IF AT("gecko/",sAgent)>0
iVersion=VAL(SUBSTR(sAgent,AT("gecko/",sAgent)+6,8)) iVersion=VAL(SUBSTR(sAgent,AT("gecko/",sAgent)+6,8))
llRetval =iVersion > 20030210 llRetval =iVersion > 20030210
ENDIF ENDIF
ELSE
IF AT("opera/",sAgent)>0
iVersion=VAL(SUBSTR(sAgent,AT("opera/",sAgent)+6,4))
llRetval =iVersion >= 9.5
ENDIF
ELSE
IF AT("applewebkit/",sAgent)>0
iVersion=VAL(SUBSTR(sAgent,AT("applewebkit/",sAgent)+12,3))
llRetval =iVersion >= 522
ENDIF
ENDIF ENDIF
SET POINT TO
RETURN (llRetval) RETURN (llRetval)
ENDFUNC ENDFUNC

View File

@ -18,14 +18,10 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.asp * This is the integration file for ASP.
* This is the integration file for ASP.
* *
* It defines the FCKeditor class that can be used to create editor * It defines the FCKeditor class that can be used to create editor
* instances in ASP pages on server side. * instances in ASP pages on server side.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<% <%
Class FCKeditor Class FCKeditor
@ -81,34 +77,39 @@ Class FCKeditor
oConfig.Add configKey, configValue oConfig.Add configKey, configValue
End Property End Property
Public Function Create( instanceName ) ' Generates the instace of the editor in the HTML output of the page.
Public Sub Create( instanceName )
response.write CreateHtml( instanceName )
end Sub
Response.Write "<div>" ' Returns the html code that must be used to generate an instance of FCKeditor.
Public Function CreateHtml( instanceName )
dim html
If IsCompatible() Then If IsCompatible() Then
Dim sFile Dim sFile, sLink
If Request.QueryString( "fcksource" ) = "true" Then If Request.QueryString( "fcksource" ) = "true" Then
sFile = "fckeditor.original.html" sFile = "fckeditor.original.html"
Else Else
sFile = "fckeditor.html" sFile = "fckeditor.html"
End If End If
Dim sLink
sLink = sBasePath & "editor/" & sFile & "?InstanceName=" + instanceName sLink = sBasePath & "editor/" & sFile & "?InstanceName=" + instanceName
If (sToolbarSet & "") <> "" Then If (sToolbarSet & "") <> "" Then
sLink = sLink + "&amp;Toolbar=" & sToolbarSet sLink = sLink + "&amp;Toolbar=" & sToolbarSet
End If End If
html = ""
' Render the linked hidden field. ' Render the linked hidden field.
Response.Write "<input type=""hidden"" id=""" & instanceName & """ name=""" & instanceName & """ value=""" & Server.HTMLEncode( sValue ) & """ style=""display:none"" />" html = html & "<input type=""hidden"" id=""" & instanceName & """ name=""" & instanceName & """ value=""" & Server.HTMLEncode( sValue ) & """ style=""display:none"" />"
' Render the configurations hidden field. ' Render the configurations hidden field.
Response.Write "<input type=""hidden"" id=""" & instanceName & "___Config"" value=""" & GetConfigFieldString() & """ style=""display:none"" />" html = html & "<input type=""hidden"" id=""" & instanceName & "___Config"" value=""" & GetConfigFieldString() & """ style=""display:none"" />"
' Render the editor IFRAME. ' Render the editor IFRAME.
Response.Write "<iframe id=""" & instanceName & "___Frame"" src=""" & sLink & """ width=""" & sWidth & """ height=""" & sHeight & """ frameborder=""0"" scrolling=""no""></iframe>" html = html & "<iframe id=""" & instanceName & "___Frame"" src=""" & sLink & """ width=""" & sWidth & """ height=""" & sHeight & """ frameborder=""0"" scrolling=""no""></iframe>"
Else Else
@ -126,43 +127,17 @@ Class FCKeditor
sHeightCSS = sHeight & "px" sHeightCSS = sHeight & "px"
End If End If
Response.Write "<textarea name=""" & instanceName & """ rows=""4"" cols=""40"" style=""width: " & sWidthCSS & "; height: " & sHeightCSS & """>" & Server.HTMLEncode( sValue ) & "</textarea>" html = "<textarea name=""" & instanceName & """ rows=""4"" cols=""40"" style=""width: " & sWidthCSS & "; height: " & sHeightCSS & """>" & Server.HTMLEncode( sValue ) & "</textarea>"
End If End If
Response.Write "</div>" CreateHtml = "<div>" & html & "</div>"
End Function End Function
Private Function IsCompatible() Private Function IsCompatible()
Dim sAgent IsCompatible = FCKeditor_IsCompatibleBrowser()
sAgent = Request.ServerVariables("HTTP_USER_AGENT")
Dim iVersion
If InStr(sAgent, "MSIE") > 0 AND InStr(sAgent, "mac") <= 0 AND InStr(sAgent, "Opera") <= 0 Then
iVersion = CInt( ToNumericFormat( Mid(sAgent, InStr(sAgent, "MSIE") + 5, 3) ) )
IsCompatible = ( iVersion >= 5.5 )
ElseIf InStr(sAgent, "Gecko/") > 0 Then
iVersion = CLng( Mid( sAgent, InStr( sAgent, "Gecko/" ) + 6, 8 ) )
IsCompatible = ( iVersion >= 20030210 )
Else
IsCompatible = False
End If
End Function
' By Agrotic
' On ASP, when converting string to numbers, the number decimal separator is localized
' so 5.5 will not work on systems were the separator is "," and vice versa.
Private Function ToNumericFormat( numberStr )
If IsNumeric( "5.5" ) Then
ToNumericFormat = Replace( numberStr, ",", ".")
Else
ToNumericFormat = Replace( numberStr, ".", ",")
End If
End Function End Function
@ -191,10 +166,70 @@ Class FCKeditor
End Function End Function
Private Function EncodeConfig( valueToEncode ) Private Function EncodeConfig( valueToEncode )
EncodeConfig = Replace( valueToEncode, "&", "%26" ) ' The locale of the asp server makes the conversion of a boolean to string different to "true" or "false"
EncodeConfig = Replace( EncodeConfig , "=", "%3D" ) ' so we must do it manually
EncodeConfig = Replace( EncodeConfig , """", "%22" ) If vartype(valueToEncode) = vbBoolean then
If valueToEncode=True Then
EncodeConfig="True"
Else
EncodeConfig="False"
End If
Else
EncodeConfig = Replace( valueToEncode, "&", "%26" )
EncodeConfig = Replace( EncodeConfig , "=", "%3D" )
EncodeConfig = Replace( EncodeConfig , """", "%22" )
End if
End Function End Function
End Class End Class
' A function that can be used to check if the current browser is compatible with FCKeditor
' without the need to create an instance of the class.
Function FCKeditor_IsCompatibleBrowser()
Dim sAgent
sAgent = Request.ServerVariables("HTTP_USER_AGENT")
Dim iVersion
Dim re, Matches
If InStr(sAgent, "MSIE") > 0 AND InStr(sAgent, "mac") <= 0 AND InStr(sAgent, "Opera") <= 0 Then
iVersion = CInt( FCKeditor_ToNumericFormat( Mid(sAgent, InStr(sAgent, "MSIE") + 5, 3) ) )
FCKeditor_IsCompatibleBrowser = ( iVersion >= 5.5 )
ElseIf InStr(sAgent, "Gecko/") > 0 Then
iVersion = CLng( Mid( sAgent, InStr( sAgent, "Gecko/" ) + 6, 8 ) )
FCKeditor_IsCompatibleBrowser = ( iVersion >= 20030210 )
ElseIf InStr(sAgent, "Opera/") > 0 Then
iVersion = CSng( FCKeditor_ToNumericFormat( Mid( sAgent, InStr( sAgent, "Opera/" ) + 6, 4 ) ) )
FCKeditor_IsCompatibleBrowser = ( iVersion >= 9.5 )
ElseIf InStr(sAgent, "AppleWebKit/") > 0 Then
Set re = new RegExp
re.IgnoreCase = true
re.global = false
re.Pattern = "AppleWebKit/(\d+)"
Set Matches = re.Execute(sAgent)
FCKeditor_IsCompatibleBrowser = ( re.Replace(Matches.Item(0).Value, "$1") >= 522 )
Else
FCKeditor_IsCompatibleBrowser = False
End If
End Function
' By Agrotic
' On ASP, when converting string to numbers, the number decimal separator is localized
' so 5.5 will not work on systems were the separator is "," and vice versa.
Private Function FCKeditor_ToNumericFormat( numberStr )
If IsNumeric( "5.5" ) Then
FCKeditor_ToNumericFormat = Replace( numberStr, ",", ".")
Else
FCKeditor_ToNumericFormat = Replace( numberStr, ".", ",")
End If
End Function
%> %>

View File

@ -1,4 +1,5 @@
<cfcomponent output="false" displayname="FCKeditor" hint="Create an instance of the FCKeditor."> <cfcomponent output="false" displayname="FCKeditor" hint="Create an instance of the FCKeditor.">
<!--- <!---
* FCKeditor - The text editor for Internet - http://www.fckeditor.net * FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 Frederico Caldeira Knabben * Copyright (C) 2003-2007 Frederico Caldeira Knabben
@ -19,39 +20,46 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.cfc * ColdFusion MX integration.
* ColdFusion MX integration. * Note this CFC is created for use only with Coldfusion MX and above.
* Note this CFC is created for use only with Coldfusion MX and above. * For older version, check the fckeditor.cfm.
* For older version, check the fckeditor.cfm.
* *
* Syntax: * Syntax:
* *
* <cfscript> * <cfscript>
* fckEditor = createObject("component", "fckEditorV2/fckeditor"); * fckEditor = createObject("component", "fckeditor.fckeditor");
* fckEditor.instanceName="myEditor"; * fckEditor.instanceName="myEditor";
* fckEditor.basePath="/fckEditorV2/"; * fckEditor.basePath="/fckeditor/";
* fckEditor.value="This is my <strong>initial</strong> html text."; * fckEditor.value="<p>This is my <strong>initial</strong> html text.</p>";
* fckEditor.width="100%"; * fckEditor.width="100%";
* fckEditor.height="200"; * fckEditor.height="200";
* // ... additional parameters ... * // ... additional parameters ...
* fckEditor.create(); // create instance now. * fckEditor.create(); // create instance now.
* </cfscript> * </cfscript>
* *
* See your macromedia coldfusion mx documentation for more info. * See your macromedia coldfusion mx documentation for more info.
* *
* *** Note: * *** Note:
* Do not use path names with a "." (dot) in the name. This is a coldfusion * Do not use path names with a "." (dot) in the name. This is a coldfusion
* limitation with the cfc invocation. * limitation with the cfc invocation.
*
* File Authors:
* Hendrik Kramer (hk@lwd.de)
---> --->
<cffunction <cffunction
name="create" name="Create"
access="public" access="public"
output="true" output="true"
returntype="void" returntype="void"
hint="Initialize the FCKeditor instance." hint="Outputs the editor HTML in the place where the function is called"
>
<cfoutput>#CreateHtml()#</cfoutput>
</cffunction>
<cffunction
name="CreateHtml"
access="public"
output="false"
returntype="string"
hint="Retrieves the editor HTML"
> >
<cfparam name="this.instanceName" type="string" /> <cfparam name="this.instanceName" type="string" />
@ -66,9 +74,9 @@
<cfscript> <cfscript>
// display the html editor or a plain textarea? // display the html editor or a plain textarea?
if( isCompatible() ) if( isCompatible() )
showHTMLEditor(); return getHtmlEditor();
else else
showTextArea(); return getTextArea();
</cfscript> </cfscript>
</cffunction> </cffunction>
@ -114,18 +122,37 @@
return ( sBrowserVersion GTE 20030210 ); return ( sBrowserVersion GTE 20030210 );
} }
} }
else if( find( "opera/", sAgent ) )
{
// try to extract Opera version
stResult = reFind( "opera/([0-9]+\.[0-9]+)", sAgent, 1, true );
if( arrayLen( stResult.pos ) eq 2 )
{
return ( mid( sAgent, stResult.pos[2], stResult.len[2] ) gte 9.5);
}
}
else if( find( "applewebkit", sAgent ) )
{
// try to extract Gecko version date
stResult = reFind( "applewebkit/([0-9]+)", sAgent, 1, true );
if( arrayLen( stResult.pos ) eq 2 )
{
return ( mid( sAgent, stResult.pos[2], stResult.len[2] ) gte 522 );
}
}
return false; return false;
</cfscript> </cfscript>
</cffunction> </cffunction>
<cffunction <cffunction
name="showTextArea" name="getTextArea"
access="private" access="private"
output="true" output="false"
returnType="void" returnType="string"
hint="Create a textarea field for non-compatible browsers." hint="Create a textarea field for non-compatible browsers."
> >
<cfset var result = "" />
<cfscript> <cfscript>
// append unit "px" for numeric width and/or height values // append unit "px" for numeric width and/or height values
@ -135,25 +162,25 @@
this.height = this.height & "px"; this.height = this.height & "px";
</cfscript> </cfscript>
<cfoutput> <cfscript>
<div> result = result & "<div>" & chr(13) & chr(10);
<textarea name="#this.instanceName#" rows="4" cols="40" style="WIDTH: #this.width#; HEIGHT: #this.height#">#HTMLEditFormat(this.value)#</textarea> result = result & "<textarea name=""#this.instanceName#"" rows=""4"" cols=""40"" style=""WIDTH: #this.width#; HEIGHT: #this.height#"">#HTMLEditFormat(this.value)#</textarea>" & chr(13) & chr(10);
</div> result = result & "</div>" & chr(13) & chr(10);
</cfoutput> </cfscript>
<cfreturn result />
</cffunction> </cffunction>
<cffunction <cffunction
name="showHTMLEditor" name="getHtmlEditor"
access="private" access="private"
output="true" output="false"
returnType="void" returnType="string"
hint="Create the html editor instance for compatible browsers." hint="Create the html editor instance for compatible browsers."
> >
<cfset var sURL = "" />
<cfset var result = "" />
<cfscript> <cfscript>
var sURL = "";
// try to fix the basePath, if ending slash is missing // try to fix the basePath, if ending slash is missing
if( len( this.basePath) and right( this.basePath, 1 ) is not "/" ) if( len( this.basePath) and right( this.basePath, 1 ) is not "/" )
this.basePath = this.basePath & "/"; this.basePath = this.basePath & "/";
@ -166,14 +193,14 @@
sURL = sURL & "&amp;Toolbar=" & this.toolbarSet; sURL = sURL & "&amp;Toolbar=" & this.toolbarSet;
</cfscript> </cfscript>
<cfoutput> <cfscript>
<div> result = result & "<div>" & chr(13) & chr(10);
<input type="hidden" id="#this.instanceName#" name="#this.instanceName#" value="#HTMLEditFormat(this.value)#" style="display:none" /> result = result & "<input type=""hidden"" id=""#this.instanceName#"" name=""#this.instanceName#"" value=""#HTMLEditFormat(this.value)#"" style=""display:none"" />" & chr(13) & chr(10);
<input type="hidden" id="#this.instanceName#___Config" value="#GetConfigFieldString()#" style="display:none" /> result = result & "<input type=""hidden"" id=""#this.instanceName#___Config"" value=""#GetConfigFieldString()#"" style=""display:none"" />" & chr(13) & chr(10);
<iframe id="#this.instanceName#___Frame" src="#sURL#" width="#this.width#" height="#this.height#" frameborder="0" scrolling="no"></iframe> result = result & "<iframe id=""#this.instanceName#___Frame"" src=""#sURL#"" width=""#this.width#"" height=""#this.height#"" frameborder=""0"" scrolling=""no""></iframe>" & chr(13) & chr(10);
</div> result = result & "</div>" & chr(13) & chr(10);
</cfoutput> </cfscript>
<cfreturn result />
</cffunction> </cffunction>
<cffunction <cffunction
@ -183,27 +210,40 @@
returnType="string" returnType="string"
hint="Create configuration string: Key1=Value1&Key2=Value2&... (Key/Value:HTML encoded)" hint="Create configuration string: Key1=Value1&Key2=Value2&... (Key/Value:HTML encoded)"
> >
<cfset var sParams = "" />
<cfset var key = "" />
<cfset var fieldValue = "" />
<cfset var fieldLabel = "" />
<cfset var lConfigKeys = "" />
<cfset var iPos = "" />
<cfscript> <cfscript>
var sParams = "";
var key = "";
var fieldValue = "";
var fieldLabel = "";
var lConfigKeys = "";
var iPos = "";
/** /**
* CFML doesn't store casesensitive names for structure keys, but the configuration names must be casesensitive for js. * CFML doesn't store casesensitive names for structure keys, but the configuration names must be casesensitive for js.
* So we need to find out the correct case for the configuration keys. * So we need to find out the correct case for the configuration keys.
* We "fix" this by comparing the caseless configuration keys to a list of all available configuration options in the correct case. * We "fix" this by comparing the caseless configuration keys to a list of all available configuration options in the correct case.
* changed 20041206 hk@lwd.de (improvements are welcome!) * changed 20041206 hk@lwd.de (improvements are welcome!)
*/ */
lConfigKeys = lConfigKeys & "CustomConfigurationsPath,EditorAreaCSS,DocType,BaseHref,FullPage,Debug,SkinPath,PluginsPath,AutoDetectLanguage,DefaultLanguage,ContentLangDirection,EnableXHTML,EnableSourceXHTML,ProcessHTMLEntities,IncludeLatinEntities,IncludeGreekEntities"; lConfigKeys = lConfigKeys & "CustomConfigurationsPath,EditorAreaCSS,ToolbarComboPreviewCSS,DocType";
lConfigKeys = lConfigKeys & ",FillEmptyBlocks,FormatSource,FormatOutput,FormatIndentator,GeckoUseSPAN,StartupFocus,ForcePasteAsPlainText,ForceSimpleAmpersand,TabSpaces,ShowBorders,UseBROnCarriageReturn"; lConfigKeys = lConfigKeys & ",BaseHref,FullPage,Debug,AllowQueryStringDebug,SkinPath";
lConfigKeys = lConfigKeys & ",ToolbarStartExpanded,ToolbarCanCollapse,ToolbarSets,ContextMenu,FontColors,FontNames,FontSizes,FontFormats,StylesXmlPath,SpellChecker,IeSpellDownloadUrl,MaxUndoLevels"; lConfigKeys = lConfigKeys & ",PreloadImages,PluginsPath,AutoDetectLanguage,DefaultLanguage,ContentLangDirection";
lConfigKeys = lConfigKeys & ",LinkBrowser,LinkBrowserURL,LinkBrowserWindowWidth,LinkBrowserWindowHeight"; lConfigKeys = lConfigKeys & ",ProcessHTMLEntities,IncludeLatinEntities,IncludeGreekEntities,ProcessNumericEntities,AdditionalNumericEntities";
lConfigKeys = lConfigKeys & ",LinkUpload,LinkUploadURL,LinkUploadWindowWidth,LinkUploadWindowHeight,LinkUploadAllowedExtensions,LinkUploadDeniedExtensions"; lConfigKeys = lConfigKeys & ",FillEmptyBlocks,FormatSource,FormatOutput,FormatIndentator";
lConfigKeys = lConfigKeys & ",ImageBrowser,ImageBrowserURL,ImageBrowserWindowWidth,ImageBrowserWindowHeight,SmileyPath,SmileyImages,SmileyColumns,SmileyWindowWidth,SmileyWindowHeight"; lConfigKeys = lConfigKeys & ",GeckoUseSPAN,StartupFocus,ForcePasteAsPlainText,AutoDetectPasteFromWord,ForceSimpleAmpersand";
lConfigKeys = lConfigKeys & ",TabSpaces,ShowBorders,SourcePopup,ToolbarStartExpanded,ToolbarCanCollapse";
lConfigKeys = lConfigKeys & ",IgnoreEmptyParagraphValue,PreserveSessionOnFileBrowser,FloatingPanelsZIndex,TemplateReplaceAll,TemplateReplaceCheckbox";
lConfigKeys = lConfigKeys & ",ToolbarLocation,ToolbarSets,EnterMode,ShiftEnterMode,Keystrokes";
lConfigKeys = lConfigKeys & ",ContextMenu,BrowserContextMenuOnCtrl,FontColors,FontNames,FontSizes";
lConfigKeys = lConfigKeys & ",FontFormats,StylesXmlPath,TemplatesXmlPath,SpellChecker,IeSpellDownloadUrl";
lConfigKeys = lConfigKeys & ",SpellerPagesServerScript,FirefoxSpellChecker,MaxUndoLevels,DisableObjectResizing,DisableFFTableHandles";
lConfigKeys = lConfigKeys & ",LinkDlgHideTarget,LinkDlgHideAdvanced,ImageDlgHideLink,ImageDlgHideAdvanced,FlashDlgHideAdvanced";
lConfigKeys = lConfigKeys & ",ProtectedTags,BodyId,BodyClass,DefaultLinkTarget,CleanWordKeepsStructure";
lConfigKeys = lConfigKeys & ",LinkBrowser,LinkBrowserURL,LinkBrowserWindowWidth,LinkBrowserWindowHeight,ImageBrowser";
lConfigKeys = lConfigKeys & ",ImageBrowserURL,ImageBrowserWindowWidth,ImageBrowserWindowHeight,FlashBrowser,FlashBrowserURL";
lConfigKeys = lConfigKeys & ",FlashBrowserWindowWidth,FlashBrowserWindowHeight,LinkUpload,LinkUploadURL,LinkUploadWindowWidth";
lConfigKeys = lConfigKeys & ",LinkUploadWindowHeight,LinkUploadAllowedExtensions,LinkUploadDeniedExtensions,ImageUpload,ImageUploadURL";
lConfigKeys = lConfigKeys & ",ImageUploadAllowedExtensions,ImageUploadDeniedExtensions,FlashUpload,FlashUploadURL,FlashUploadAllowedExtensions";
lConfigKeys = lConfigKeys & ",FlashUploadDeniedExtensions,SmileyPath,SmileyImages,SmileyColumns,SmileyWindowWidth,SmileyWindowHeight";
for( key in this.config ) for( key in this.config )
{ {

View File

@ -19,25 +19,20 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.cfm * ColdFusion integration.
* ColdFusion integration. * Note this module is created for use with Coldfusion 4.52 and above.
* Note this module is created for use with Coldfusion 4.52 and above. * For a cfc version for coldfusion mx check the fckeditor.cfc.
* For a cfc version for coldfusion mx check the fckeditor.cfc.
* *
* Syntax: * Syntax:
* *
* <cfmodule name="path/to/cfc/fckeditor" * <cfmodule name="path/to/cfc/fckeditor"
* instanceName="myEditor" * instanceName="myEditor"
* toolbarSet="..." * toolbarSet="..."
* width="..." * width="..."
* height="..:" * height="..:"
* value="..." * value="..."
* config="..." * config="..."
* > * >
*
* File Authors:
* Hendrik Kramer (hk@lwd.de)
* Mark Woods (mark@thickpaddy.com)
---> --->
<!--- :: <!--- ::
* Attribute validation * Attribute validation
@ -87,6 +82,26 @@ if( attributes.checkBrowser )
isCompatibleBrowser = true; isCompatibleBrowser = true;
} }
} }
else if( find( "opera/", sAgent ) )
{
// try to extract Opera version
stResult = reFind( "opera/([0-9]+\.[0-9]+)", sAgent, 1, true );
if( arrayLen( stResult.pos ) eq 2 )
{
if ( mid( sAgent, stResult.pos[2], stResult.len[2] ) gte 9.5)
isCompatibleBrowser = true;
}
}
else if( find( "applewebkit", sAgent ) )
{
// try to extract Gecko version date
stResult = reFind( "applewebkit/([0-9]+)", sAgent, 1, true );
if( arrayLen( stResult.pos ) eq 2 )
{
if( mid( sAgent, stResult.pos[2], stResult.len[2] ) gte 522 )
isCompatibleBrowser = true;
}
}
} }
else else
{ {
@ -122,12 +137,26 @@ else
* changed 20041206 hk@lwd.de (improvements are welcome!) * changed 20041206 hk@lwd.de (improvements are welcome!)
*/ */
lConfigKeys = ""; lConfigKeys = "";
lConfigKeys = lConfigKeys & "CustomConfigurationsPath,EditorAreaCSS,DocType,BaseHref,FullPage,Debug,SkinPath,PluginsPath,AutoDetectLanguage,DefaultLanguage,ContentLangDirection,EnableXHTML,EnableSourceXHTML,ProcessHTMLEntities,IncludeLatinEntities,IncludeGreekEntities"; lConfigKeys = lConfigKeys & "CustomConfigurationsPath,EditorAreaCSS,ToolbarComboPreviewCSS,DocType";
lConfigKeys = lConfigKeys & ",FillEmptyBlocks,FormatSource,FormatOutput,FormatIndentator,GeckoUseSPAN,StartupFocus,ForcePasteAsPlainText,ForceSimpleAmpersand,TabSpaces,ShowBorders,UseBROnCarriageReturn"; lConfigKeys = lConfigKeys & ",BaseHref,FullPage,Debug,AllowQueryStringDebug,SkinPath";
lConfigKeys = lConfigKeys & ",ToolbarStartExpanded,ToolbarCanCollapse,ToolbarSets,ContextMenu,FontColors,FontNames,FontSizes,FontFormats,StylesXmlPath,SpellChecker,IeSpellDownloadUrl,MaxUndoLevels"; lConfigKeys = lConfigKeys & ",PreloadImages,PluginsPath,AutoDetectLanguage,DefaultLanguage,ContentLangDirection";
lConfigKeys = lConfigKeys & ",LinkBrowser,LinkBrowserURL,LinkBrowserWindowWidth,LinkBrowserWindowHeight"; lConfigKeys = lConfigKeys & ",ProcessHTMLEntities,IncludeLatinEntities,IncludeGreekEntities,ProcessNumericEntities,AdditionalNumericEntities";
lConfigKeys = lConfigKeys & ",LinkUpload,LinkUploadURL,LinkUploadWindowWidth,LinkUploadWindowHeight,LinkUploadAllowedExtensions,LinkUploadDeniedExtensions"; lConfigKeys = lConfigKeys & ",FillEmptyBlocks,FormatSource,FormatOutput,FormatIndentator";
lConfigKeys = lConfigKeys & ",ImageBrowser,ImageBrowserURL,ImageBrowserWindowWidth,ImageBrowserWindowHeight,SmileyPath,SmileyImages,SmileyColumns,SmileyWindowWidth,SmileyWindowHeight"; lConfigKeys = lConfigKeys & ",GeckoUseSPAN,StartupFocus,ForcePasteAsPlainText,AutoDetectPasteFromWord,ForceSimpleAmpersand";
lConfigKeys = lConfigKeys & ",TabSpaces,ShowBorders,SourcePopup,ToolbarStartExpanded,ToolbarCanCollapse";
lConfigKeys = lConfigKeys & ",IgnoreEmptyParagraphValue,PreserveSessionOnFileBrowser,FloatingPanelsZIndex,TemplateReplaceAll,TemplateReplaceCheckbox";
lConfigKeys = lConfigKeys & ",ToolbarLocation,ToolbarSets,EnterMode,ShiftEnterMode,Keystrokes";
lConfigKeys = lConfigKeys & ",ContextMenu,BrowserContextMenuOnCtrl,FontColors,FontNames,FontSizes";
lConfigKeys = lConfigKeys & ",FontFormats,StylesXmlPath,TemplatesXmlPath,SpellChecker,IeSpellDownloadUrl";
lConfigKeys = lConfigKeys & ",SpellerPagesServerScript,FirefoxSpellChecker,MaxUndoLevels,DisableObjectResizing,DisableFFTableHandles";
lConfigKeys = lConfigKeys & ",LinkDlgHideTarget ,LinkDlgHideAdvanced,ImageDlgHideLink ,ImageDlgHideAdvanced,FlashDlgHideAdvanced";
lConfigKeys = lConfigKeys & ",ProtectedTags,BodyId,BodyClass,DefaultLinkTarget,CleanWordKeepsStructure";
lConfigKeys = lConfigKeys & ",LinkBrowser,LinkBrowserURL,LinkBrowserWindowWidth,LinkBrowserWindowHeight,ImageBrowser";
lConfigKeys = lConfigKeys & ",ImageBrowserURL,ImageBrowserWindowWidth,ImageBrowserWindowHeight,FlashBrowser,FlashBrowserURL";
lConfigKeys = lConfigKeys & ",FlashBrowserWindowWidth ,FlashBrowserWindowHeight,LinkUpload,LinkUploadURL,LinkUploadWindowWidth";
lConfigKeys = lConfigKeys & ",LinkUploadWindowHeight,LinkUploadAllowedExtensions,LinkUploadDeniedExtensions,ImageUpload,ImageUploadURL";
lConfigKeys = lConfigKeys & ",ImageUploadAllowedExtensions,ImageUploadDeniedExtensions,FlashUpload,FlashUploadURL,FlashUploadAllowedExtensions";
lConfigKeys = lConfigKeys & ",FlashUploadDeniedExtensions,SmileyPath,SmileyImages,SmileyColumns,SmileyWindowWidth,SmileyWindowHeight";
sConfig = ""; sConfig = "";

View File

@ -1,4 +1,4 @@
/* /*
* FCKeditor - The text editor for Internet - http://www.fckeditor.net * FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 Frederico Caldeira Knabben * Copyright (C) 2003-2007 Frederico Caldeira Knabben
* *
@ -18,15 +18,11 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.js * This is the integration file for JavaScript.
* This is the integration file for JavaScript.
* *
* It defines the FCKeditor class that can be used to create editor * It defines the FCKeditor class that can be used to create editor
* instances in a HTML page in the client side. For server side * instances in a HTML page in the client side. For server side
* operations, use the specific integration system. * operations, use the specific integration system.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
*/ */
// FCKeditor Class // FCKeditor Class
@ -41,8 +37,6 @@ var FCKeditor = function( instanceName, width, height, toolbarSet, value )
this.BasePath = '/fckeditor/' ; this.BasePath = '/fckeditor/' ;
this.CheckBrowser = true ; this.CheckBrowser = true ;
this.DisplayErrors = true ; this.DisplayErrors = true ;
this.EnableSafari = false ; // This is a temporary property, while Safari support is under development.
this.EnableOpera = false ; // This is a temporary property, while Opera support is under development.
this.Config = new Object() ; this.Config = new Object() ;
@ -50,8 +44,8 @@ var FCKeditor = function( instanceName, width, height, toolbarSet, value )
this.OnError = null ; // function( source, errorNumber, errorDescription ) this.OnError = null ; // function( source, errorNumber, errorDescription )
} }
FCKeditor.prototype.Version = '2.4' ; FCKeditor.prototype.Version = '2.5 Beta' ;
FCKeditor.prototype.VersionBuild = '1148' ; FCKeditor.prototype.VersionBuild = '16848' ;
FCKeditor.prototype.Create = function() FCKeditor.prototype.Create = function()
{ {
@ -158,7 +152,7 @@ FCKeditor.prototype._GetIFrameHtml = function()
FCKeditor.prototype._IsCompatibleBrowser = function() FCKeditor.prototype._IsCompatibleBrowser = function()
{ {
return FCKeditor_IsCompatibleBrowser( this.EnableSafari, this.EnableOpera ) ; return FCKeditor_IsCompatibleBrowser() ;
} }
FCKeditor.prototype._ThrowError = function( errorNumber, errorDescription ) FCKeditor.prototype._ThrowError = function( errorNumber, errorDescription )
@ -191,12 +185,12 @@ FCKeditor.prototype._HTMLEncode = function( text )
return text ; return text ;
} }
function FCKeditor_IsCompatibleBrowser( enableSafari, enableOpera ) function FCKeditor_IsCompatibleBrowser()
{ {
var sAgent = navigator.userAgent.toLowerCase() ; var sAgent = navigator.userAgent.toLowerCase() ;
// Internet Explorer // Internet Explorer 5.5+
if ( sAgent.indexOf("msie") != -1 && sAgent.indexOf("mac") == -1 && sAgent.indexOf("opera") == -1 ) if ( /*@cc_on!@*/false && sAgent.indexOf("mac") == -1 )
{ {
var sBrowserVersion = navigator.appVersion.match(/MSIE (.\..)/)[1] ; var sBrowserVersion = navigator.appVersion.match(/MSIE (.\..)/)[1] ;
return ( sBrowserVersion >= 5.5 ) ; return ( sBrowserVersion >= 5.5 ) ;
@ -206,13 +200,13 @@ function FCKeditor_IsCompatibleBrowser( enableSafari, enableOpera )
if ( navigator.product == "Gecko" && navigator.productSub >= 20030210 && !( typeof(opera) == 'object' && opera.postError ) ) if ( navigator.product == "Gecko" && navigator.productSub >= 20030210 && !( typeof(opera) == 'object' && opera.postError ) )
return true ; return true ;
// Opera // Opera 9.50+
if ( enableOpera && navigator.appName == 'Opera' && parseInt( navigator.appVersion, 10 ) >= 9 ) if ( window.opera && window.opera.version && parseFloat( window.opera.version() ) >= 9.5 )
return true ; return true ;
// Safari // Safari 3+
if ( enableSafari && sAgent.indexOf( 'safari' ) != -1 ) if ( sAgent.indexOf( ' applewebkit/' ) != -1 )
return ( sAgent.match( /safari\/(\d+)/ )[1] >= 312 ) ; // Build must be at least 312 (1.3) return ( sAgent.match( / applewebkit\/(\d+)/ )[1] >= 522 ) ; // Build must be at least 522 (v3)
return false ; return false ;
} }

View File

@ -19,14 +19,10 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.lasso * This is the integration file for Lasso.
* This is the integration file for Lasso.
* *
* It defines the FCKeditor class ("custom type" in Lasso terms) that can * It defines the FCKeditor class ("custom type" in Lasso terms) that can
* be used to create editor instances in Lasso pages on server side. * be used to create editor instances in Lasso pages on server side.
*
* File Authors:
* Jason Huck (jason.huck@corefive.com)
*/ */
define_type( define_type(
@ -85,8 +81,19 @@
/define_tag; /define_tag;
define_tag('isCompatibleBrowser'); define_tag('isCompatibleBrowser');
local('result' = true); local('result' = false);
(client_browser >> 'Apple' || client_browser >> 'Opera' || client_browser >> 'KHTML') ? #result = false; if (client_browser->Find("MSIE") && !client_browser->Find("mac") && !client_browser->Find("Opera"));
#result = client_browser->Substring(client_browser->Find("MSIE")+5,3)>=5.5;
/if;
if (client_browser->Find("Gecko/"));
#result = client_browser->Substring(client_browser->Find("Gecko/")+6,8)>=20030210;
/if;
if (client_browser->Find("Opera/"));
#result = client_browser->Substring(client_browser->Find("Opera/")+6,4)>=9.5;
/if;
if (client_browser->Find("AppleWebKit/"));
#result = client_browser->Substring(client_browser->Find("AppleWebKit/")+12,3)>=522;
/if;
return(#result); return(#result);
/define_tag; /define_tag;

View File

@ -19,17 +19,13 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor.php * This is the integration file for PHP (All versions).
* This is the integration file for PHP (All versions).
* *
* It loads the correct integration file based on the PHP version (avoinding * It loads the correct integration file based on the PHP version (avoiding
* strict error messages with PHP 5). * strict error messages with PHP 5).
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
*/ */
if ( version_compare( phpversion(), '5', '<' ) ) if ( !function_exists('version_compare') || version_compare( phpversion(), '5', '<' ) )
include_once( 'fckeditor_php4.php' ) ; include_once( 'fckeditor_php4.php' ) ;
else else
include_once( 'fckeditor_php5.php' ) ; include_once( 'fckeditor_php5.php' ) ;

View File

@ -18,11 +18,7 @@
# #
# == END LICENSE == # == END LICENSE ==
# #
# File Name: fckeditor.pl # This is the integration file for Perl.
# This is the integration file for Perl.
#
# File Authors:
# Takashi Yamaguchi (jack@omakase.net)
##### #####
#my $InstanceName; #my $InstanceName;
@ -111,6 +107,11 @@ sub IsCompatible
} elsif($sAgent =~ /Gecko\//i) { } elsif($sAgent =~ /Gecko\//i) {
$iVersion = substr($sAgent,index($sAgent,'Gecko/') + 6,8); $iVersion = substr($sAgent,index($sAgent,'Gecko/') + 6,8);
return($iVersion >= 20030210) ; return($iVersion >= 20030210) ;
} elsif($sAgent =~ /Opera\//i) {
$iVersion = substr($sAgent,index($sAgent,'Opera/') + 6,4);
return($iVersion >= 9.5) ;
} elsif($sAgent =~ /AppleWebKit\/(\d+)/i) {
return($1 >= 522) ;
} else { } else {
return(0); # 2.0 PR fix return(0); # 2.0 PR fix
} }

View File

@ -18,15 +18,12 @@ choice:
== END LICENSE == == END LICENSE ==
File Name: fckeditor.py This is the integration file for Python.
This is the integration file for Python.
File Authors:
Andrew Liu (andrew@liuholdings.com)
""" """
import cgi import cgi
import os import os
import re
import string import string
def escape(text, replace=string.replace): def escape(text, replace=string.replace):
@ -128,6 +125,18 @@ class FCKeditor(object):
if (iVersion >= 20030210): if (iVersion >= 20030210):
return True return True
return False return False
elif (sAgent.find("Opera/") >= 0):
i = sAgent.find("Opera/")
iVersion = float(sAgent[i+6:i+6+4])
if (iVersion >= 9.5):
return True
return False
elif (sAgent.find("AppleWebKit/") >= 0):
p = re.compile('AppleWebKit\/(\d+)', re.IGNORECASE)
m = p.search(sAgent)
if (m.group(1) >= 522):
return True
return False
else: else:
return False return False

View File

@ -19,14 +19,10 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor_php4.php * This is the integration file for PHP 4.
* This is the integration file for PHP 4.
* *
* It defines the FCKeditor class that can be used to create editor * It defines the FCKeditor class that can be used to create editor
* instances in PHP pages on server side. * instances in PHP pages on server side.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
*/ */
class FCKeditor class FCKeditor
@ -39,7 +35,7 @@ class FCKeditor
var $Value ; var $Value ;
var $Config ; var $Config ;
// PHP 4 Contructor // PHP 4 Constructor
function FCKeditor( $instanceName ) function FCKeditor( $instanceName )
{ {
$this->InstanceName = $instanceName ; $this->InstanceName = $instanceName ;
@ -63,6 +59,11 @@ class FCKeditor
$Html = '<div>' ; $Html = '<div>' ;
if ( !isset( $_GET ) ) {
global $HTTP_GET_VARS ;
$_GET = $HTTP_GET_VARS ;
}
if ( $this->IsCompatible() ) if ( $this->IsCompatible() )
{ {
if ( isset( $_GET['fcksource'] ) && $_GET['fcksource'] == "true" ) if ( isset( $_GET['fcksource'] ) && $_GET['fcksource'] == "true" )
@ -108,6 +109,11 @@ class FCKeditor
{ {
global $HTTP_USER_AGENT ; global $HTTP_USER_AGENT ;
if ( !isset( $_SERVER ) ) {
global $HTTP_SERVER_VARS ;
$_SERVER = $HTTP_SERVER_VARS ;
}
if ( isset( $HTTP_USER_AGENT ) ) if ( isset( $HTTP_USER_AGENT ) )
$sAgent = $HTTP_USER_AGENT ; $sAgent = $HTTP_USER_AGENT ;
else else
@ -123,6 +129,16 @@ class FCKeditor
$iVersion = (int)substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ; $iVersion = (int)substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ;
return ($iVersion >= 20030210) ; return ($iVersion >= 20030210) ;
} }
else if ( strpos($sAgent, 'Opera/') !== false )
{
$fVersion = (float)substr($sAgent, strpos($sAgent, 'Opera/') + 6, 4) ;
return ($fVersion >= 9.5) ;
}
else if ( preg_match( "|AppleWebKit/(\d+)|i", $sAgent, $matches ) )
{
$iVersion = $matches[1] ;
return ( $matches[1] >= 522 ) ;
}
else else
return false ; return false ;
} }

View File

@ -19,14 +19,10 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckeditor_php5.php * This is the integration file for PHP 5.
* This is the integration file for PHP 5.
* *
* It defines the FCKeditor class that can be used to create editor * It defines the FCKeditor class that can be used to create editor
* instances in PHP pages on server side. * instances in PHP pages on server side.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
*/ */
class FCKeditor class FCKeditor
@ -123,6 +119,16 @@ class FCKeditor
$iVersion = (int)substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ; $iVersion = (int)substr($sAgent, strpos($sAgent, 'Gecko/') + 6, 8) ;
return ($iVersion >= 20030210) ; return ($iVersion >= 20030210) ;
} }
else if ( strpos($sAgent, 'Opera/') !== false )
{
$fVersion = (float)substr($sAgent, strpos($sAgent, 'Opera/') + 6, 4) ;
return ($fVersion >= 9.5) ;
}
else if ( preg_match( "|AppleWebKit/(\d+)|i", $sAgent, $matches ) )
{
$iVersion = $matches[1] ;
return ( $matches[1] >= 522 ) ;
}
else else
return false ; return false ;
} }

View File

@ -19,19 +19,36 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: _packager.xml * This is the configuration file to be used with FCKpackager to generate the
* This is the configuration file used by the FCKeditor.Packager to create the * compressed code files in the "js" folder.
* compressed code files in the "js" folder.
* *
* The FCKeditor.Packager software can be used to create the compressed files * Please check http://www.fckeditor.net for more info.
* for the FCKeditor project only. Any other use of this software is illegal.
*
* Please check http://www.fckeditor.net/ckpackager for more info.
*
* File Authors:
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<Package> <Package>
<Header><![CDATA[/*
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 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 ==
*
* This file has been compressed for better performance. The original source
* can be found at "editor/_source".
*/
]]></Header>
<Constants removeDeclaration="false"> <Constants removeDeclaration="false">
<Constant name="FCK_STATUS_NOTLOADED" value="0" /> <Constant name="FCK_STATUS_NOTLOADED" value="0" />
<Constant name="FCK_STATUS_ACTIVE" value="1" /> <Constant name="FCK_STATUS_ACTIVE" value="1" />
@ -45,14 +62,18 @@
<Constant name="FCK_TOOLBARITEM_ICONTEXT" value="2" /> <Constant name="FCK_TOOLBARITEM_ICONTEXT" value="2" />
<Constant name="FCK_EDITMODE_WYSIWYG" value="0" /> <Constant name="FCK_EDITMODE_WYSIWYG" value="0" />
<Constant name="FCK_EDITMODE_SOURCE" value="1" /> <Constant name="FCK_EDITMODE_SOURCE" value="1" />
<Constant name="FCK_STYLE_BLOCK" value="0" />
<Constant name="FCK_STYLE_INLINE" value="1" />
<Constant name="FCK_STYLE_OBJECT" value="2" />
</Constants> </Constants>
<PackageFile name="fckeditorcode_ie.js"> <PackageFile path="editor/js/fckeditorcode_ie.js">
<File path="editor/_source/fckconstants.js" /> <File path="editor/_source/fckconstants.js" />
<File path="editor/_source/fckjscoreextensions.js" /> <File path="editor/_source/fckjscoreextensions.js" />
<File path="editor/_source/classes/fckiecleanup.js" /> <File path="editor/_source/classes/fckiecleanup.js" />
<File path="editor/_source/internals/fckbrowserinfo.js" /> <File path="editor/_source/internals/fckbrowserinfo.js" />
<File path="editor/_source/internals/fckurlparams.js" /> <File path="editor/_source/internals/fckurlparams.js" />
<File path="editor/_source/classes/fckevents.js" /> <File path="editor/_source/classes/fckevents.js" />
<File path="editor/_source/classes/fckdataprocessor.js" />
<File path="editor/_source/internals/fck.js" /> <File path="editor/_source/internals/fck.js" />
<File path="editor/_source/internals/fck_ie.js" /> <File path="editor/_source/internals/fck_ie.js" />
<File path="editor/_source/internals/fckconfig.js" /> <File path="editor/_source/internals/fckconfig.js" />
@ -64,19 +85,25 @@
<File path="editor/_source/classes/fckimagepreloader.js" /> <File path="editor/_source/classes/fckimagepreloader.js" />
<File path="editor/_source/internals/fckregexlib.js" /> <File path="editor/_source/internals/fckregexlib.js" />
<File path="editor/_source/internals/fcklistslib.js" />
<File path="editor/_source/internals/fcklanguagemanager.js" /> <File path="editor/_source/internals/fcklanguagemanager.js" />
<File path="editor/_source/internals/fckxhtmlentities.js" /> <File path="editor/_source/internals/fckxhtmlentities.js" />
<File path="editor/_source/internals/fckxhtml.js" /> <File path="editor/_source/internals/fckxhtml.js" />
<File path="editor/_source/internals/fckxhtml_ie.js" /> <File path="editor/_source/internals/fckxhtml_ie.js" />
<File path="editor/_source/internals/fckcodeformatter.js" /> <File path="editor/_source/internals/fckcodeformatter.js" />
<File path="editor/_source/internals/fckundo_ie.js" /> <File path="editor/_source/internals/fckundo.js" />
<File path="editor/_source/classes/fckeditingarea.js" /> <File path="editor/_source/classes/fckeditingarea.js" />
<File path="editor/_source/classes/fckkeystrokehandler.js" /> <File path="editor/_source/classes/fckkeystrokehandler.js" />
<File path="editor/dtd/fck_xhtml10transitional.js" />
<File path="editor/_source/classes/fckstyle.js" />
<File path="editor/_source/internals/fckstyles.js" />
<File path="editor/_source/internals/fcklisthandler.js" /> <File path="editor/_source/internals/fcklisthandler.js" />
<File path="editor/_source/classes/fckelementpath.js" /> <File path="editor/_source/classes/fckelementpath.js" />
<File path="editor/_source/classes/fckdomrange.js" /> <File path="editor/_source/classes/fckdomrange.js" />
<File path="editor/_source/classes/fckdomrange_ie.js" /> <File path="editor/_source/classes/fckdomrange_ie.js" />
<File path="editor/_source/classes/fckdomrangeiterator.js" />
<File path="editor/_source/classes/fckdocumentfragment_ie.js" /> <File path="editor/_source/classes/fckdocumentfragment_ie.js" />
<File path="editor/_source/classes/fckw3crange.js" /> <File path="editor/_source/classes/fckw3crange.js" />
<File path="editor/_source/classes/fckenterkey.js" /> <File path="editor/_source/classes/fckenterkey.js" />
@ -87,20 +114,25 @@
<File path="editor/_source/internals/fcktablehandler.js" /> <File path="editor/_source/internals/fcktablehandler.js" />
<File path="editor/_source/internals/fcktablehandler_ie.js" /> <File path="editor/_source/internals/fcktablehandler_ie.js" />
<File path="editor/_source/classes/fckxml.js" />
<File path="editor/_source/classes/fckxml_ie.js" /> <File path="editor/_source/classes/fckxml_ie.js" />
<File path="editor/_source/classes/fckstyledef.js" />
<File path="editor/_source/classes/fckstyledef_ie.js" />
<File path="editor/_source/classes/fckstylesloader.js" />
<File path="editor/_source/commandclasses/fcknamedcommand.js" /> <File path="editor/_source/commandclasses/fcknamedcommand.js" />
<File path="editor/_source/commandclasses/fckstylecommand.js" />
<File path="editor/_source/commandclasses/fck_othercommands.js" /> <File path="editor/_source/commandclasses/fck_othercommands.js" />
<File path="editor/_source/commandclasses/fckshowblocks.js" />
<File path="editor/_source/commandclasses/fckspellcheckcommand_ie.js" /> <File path="editor/_source/commandclasses/fckspellcheckcommand_ie.js" />
<File path="editor/_source/commandclasses/fcktextcolorcommand.js" /> <File path="editor/_source/commandclasses/fcktextcolorcommand.js" />
<File path="editor/_source/commandclasses/fckpasteplaintextcommand.js" /> <File path="editor/_source/commandclasses/fckpasteplaintextcommand.js" />
<File path="editor/_source/commandclasses/fckpastewordcommand.js" /> <File path="editor/_source/commandclasses/fckpastewordcommand.js" />
<File path="editor/_source/commandclasses/fcktablecommand.js" /> <File path="editor/_source/commandclasses/fcktablecommand.js" />
<File path="editor/_source/commandclasses/fckstylecommand.js" />
<File path="editor/_source/commandclasses/fckfitwindow.js" /> <File path="editor/_source/commandclasses/fckfitwindow.js" />
<File path="editor/_source/commandclasses/fcklistcommands.js" />
<File path="editor/_source/commandclasses/fckjustifycommands.js" />
<File path="editor/_source/commandclasses/fckindentcommands.js" />
<File path="editor/_source/commandclasses/fckblockquotecommand.js" />
<File path="editor/_source/commandclasses/fckcorestylecommand.js" />
<File path="editor/_source/commandclasses/fckremoveformatcommand.js" />
<File path="editor/_source/internals/fckcommands.js" /> <File path="editor/_source/internals/fckcommands.js" />
<File path="editor/_source/classes/fckpanel.js" /> <File path="editor/_source/classes/fckpanel.js" />
@ -109,10 +141,10 @@
<File path="editor/_source/classes/fcktoolbarbutton.js" /> <File path="editor/_source/classes/fcktoolbarbutton.js" />
<File path="editor/_source/classes/fckspecialcombo.js" /> <File path="editor/_source/classes/fckspecialcombo.js" />
<File path="editor/_source/classes/fcktoolbarspecialcombo.js" /> <File path="editor/_source/classes/fcktoolbarspecialcombo.js" />
<File path="editor/_source/classes/fcktoolbarstylecombo.js" />
<File path="editor/_source/classes/fcktoolbarfontformatcombo.js" />
<File path="editor/_source/classes/fcktoolbarfontscombo.js" /> <File path="editor/_source/classes/fcktoolbarfontscombo.js" />
<File path="editor/_source/classes/fcktoolbarfontsizecombo.js" /> <File path="editor/_source/classes/fcktoolbarfontsizecombo.js" />
<File path="editor/_source/classes/fcktoolbarfontformatcombo.js" />
<File path="editor/_source/classes/fcktoolbarstylecombo.js" />
<File path="editor/_source/classes/fcktoolbarpanelbutton.js" /> <File path="editor/_source/classes/fcktoolbarpanelbutton.js" />
<File path="editor/_source/internals/fcktoolbaritems.js" /> <File path="editor/_source/internals/fcktoolbaritems.js" />
<File path="editor/_source/classes/fcktoolbar.js" /> <File path="editor/_source/classes/fcktoolbar.js" />
@ -131,12 +163,13 @@
<File path="editor/_source/internals/fckplugins.js" /> <File path="editor/_source/internals/fckplugins.js" />
</PackageFile> </PackageFile>
<PackageFile name="fckeditorcode_gecko.js"> <PackageFile path="editor/js/fckeditorcode_gecko.js">
<File path="editor/_source/fckconstants.js" /> <File path="editor/_source/fckconstants.js" />
<File path="editor/_source/fckjscoreextensions.js" /> <File path="editor/_source/fckjscoreextensions.js" />
<File path="editor/_source/internals/fckbrowserinfo.js" /> <File path="editor/_source/internals/fckbrowserinfo.js" />
<File path="editor/_source/internals/fckurlparams.js" /> <File path="editor/_source/internals/fckurlparams.js" />
<File path="editor/_source/classes/fckevents.js" /> <File path="editor/_source/classes/fckevents.js" />
<File path="editor/_source/classes/fckdataprocessor.js" />
<File path="editor/_source/internals/fck.js" /> <File path="editor/_source/internals/fck.js" />
<File path="editor/_source/internals/fck_gecko.js" /> <File path="editor/_source/internals/fck_gecko.js" />
<File path="editor/_source/internals/fckconfig.js" /> <File path="editor/_source/internals/fckconfig.js" />
@ -148,19 +181,25 @@
<File path="editor/_source/classes/fckimagepreloader.js" /> <File path="editor/_source/classes/fckimagepreloader.js" />
<File path="editor/_source/internals/fckregexlib.js" /> <File path="editor/_source/internals/fckregexlib.js" />
<File path="editor/_source/internals/fcklistslib.js" />
<File path="editor/_source/internals/fcklanguagemanager.js" /> <File path="editor/_source/internals/fcklanguagemanager.js" />
<File path="editor/_source/internals/fckxhtmlentities.js" /> <File path="editor/_source/internals/fckxhtmlentities.js" />
<File path="editor/_source/internals/fckxhtml.js" /> <File path="editor/_source/internals/fckxhtml.js" />
<File path="editor/_source/internals/fckxhtml_gecko.js" /> <File path="editor/_source/internals/fckxhtml_gecko.js" />
<File path="editor/_source/internals/fckcodeformatter.js" /> <File path="editor/_source/internals/fckcodeformatter.js" />
<File path="editor/_source/internals/fckundo_gecko.js" /> <File path="editor/_source/internals/fckundo.js" />
<File path="editor/_source/classes/fckeditingarea.js" /> <File path="editor/_source/classes/fckeditingarea.js" />
<File path="editor/_source/classes/fckkeystrokehandler.js" /> <File path="editor/_source/classes/fckkeystrokehandler.js" />
<File path="editor/dtd/fck_xhtml10transitional.js" />
<File path="editor/_source/classes/fckstyle.js" />
<File path="editor/_source/internals/fckstyles.js" />
<File path="editor/_source/internals/fcklisthandler.js" /> <File path="editor/_source/internals/fcklisthandler.js" />
<File path="editor/_source/classes/fckelementpath.js" /> <File path="editor/_source/classes/fckelementpath.js" />
<File path="editor/_source/classes/fckdomrange.js" /> <File path="editor/_source/classes/fckdomrange.js" />
<File path="editor/_source/classes/fckdomrange_gecko.js" /> <File path="editor/_source/classes/fckdomrange_gecko.js" />
<File path="editor/_source/classes/fckdomrangeiterator.js" />
<File path="editor/_source/classes/fckdocumentfragment_gecko.js" /> <File path="editor/_source/classes/fckdocumentfragment_gecko.js" />
<File path="editor/_source/classes/fckw3crange.js" /> <File path="editor/_source/classes/fckw3crange.js" />
<File path="editor/_source/classes/fckenterkey.js" /> <File path="editor/_source/classes/fckenterkey.js" />
@ -171,20 +210,25 @@
<File path="editor/_source/internals/fcktablehandler.js" /> <File path="editor/_source/internals/fcktablehandler.js" />
<File path="editor/_source/internals/fcktablehandler_gecko.js" /> <File path="editor/_source/internals/fcktablehandler_gecko.js" />
<File path="editor/_source/classes/fckxml.js" />
<File path="editor/_source/classes/fckxml_gecko.js" /> <File path="editor/_source/classes/fckxml_gecko.js" />
<File path="editor/_source/classes/fckstyledef.js" />
<File path="editor/_source/classes/fckstyledef_gecko.js" />
<File path="editor/_source/classes/fckstylesloader.js" />
<File path="editor/_source/commandclasses/fcknamedcommand.js" /> <File path="editor/_source/commandclasses/fcknamedcommand.js" />
<File path="editor/_source/commandclasses/fckstylecommand.js" />
<File path="editor/_source/commandclasses/fck_othercommands.js" /> <File path="editor/_source/commandclasses/fck_othercommands.js" />
<File path="editor/_source/commandclasses/fckshowblocks.js" />
<File path="editor/_source/commandclasses/fckspellcheckcommand_gecko.js" /> <File path="editor/_source/commandclasses/fckspellcheckcommand_gecko.js" />
<File path="editor/_source/commandclasses/fcktextcolorcommand.js" /> <File path="editor/_source/commandclasses/fcktextcolorcommand.js" />
<File path="editor/_source/commandclasses/fckpasteplaintextcommand.js" /> <File path="editor/_source/commandclasses/fckpasteplaintextcommand.js" />
<File path="editor/_source/commandclasses/fckpastewordcommand.js" /> <File path="editor/_source/commandclasses/fckpastewordcommand.js" />
<File path="editor/_source/commandclasses/fcktablecommand.js" /> <File path="editor/_source/commandclasses/fcktablecommand.js" />
<File path="editor/_source/commandclasses/fckstylecommand.js" />
<File path="editor/_source/commandclasses/fckfitwindow.js" /> <File path="editor/_source/commandclasses/fckfitwindow.js" />
<File path="editor/_source/commandclasses/fcklistcommands.js" />
<File path="editor/_source/commandclasses/fckjustifycommands.js" />
<File path="editor/_source/commandclasses/fckindentcommands.js" />
<File path="editor/_source/commandclasses/fckblockquotecommand.js" />
<File path="editor/_source/commandclasses/fckcorestylecommand.js" />
<File path="editor/_source/commandclasses/fckremoveformatcommand.js" />
<File path="editor/_source/internals/fckcommands.js" /> <File path="editor/_source/internals/fckcommands.js" />
<File path="editor/_source/classes/fckpanel.js" /> <File path="editor/_source/classes/fckpanel.js" />
@ -193,10 +237,10 @@
<File path="editor/_source/classes/fcktoolbarbutton.js" /> <File path="editor/_source/classes/fcktoolbarbutton.js" />
<File path="editor/_source/classes/fckspecialcombo.js" /> <File path="editor/_source/classes/fckspecialcombo.js" />
<File path="editor/_source/classes/fcktoolbarspecialcombo.js" /> <File path="editor/_source/classes/fcktoolbarspecialcombo.js" />
<File path="editor/_source/classes/fcktoolbarstylecombo.js" />
<File path="editor/_source/classes/fcktoolbarfontformatcombo.js" />
<File path="editor/_source/classes/fcktoolbarfontscombo.js" /> <File path="editor/_source/classes/fcktoolbarfontscombo.js" />
<File path="editor/_source/classes/fcktoolbarfontsizecombo.js" /> <File path="editor/_source/classes/fcktoolbarfontsizecombo.js" />
<File path="editor/_source/classes/fcktoolbarfontformatcombo.js" />
<File path="editor/_source/classes/fcktoolbarstylecombo.js" />
<File path="editor/_source/classes/fcktoolbarpanelbutton.js" /> <File path="editor/_source/classes/fcktoolbarpanelbutton.js" />
<File path="editor/_source/internals/fcktoolbaritems.js" /> <File path="editor/_source/internals/fcktoolbaritems.js" />
<File path="editor/_source/classes/fcktoolbar.js" /> <File path="editor/_source/classes/fcktoolbar.js" />

View File

@ -19,15 +19,88 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fckstyles.xml * This is the sample style definitions file. It makes the styles combo
* This is the sample style definitions file. It makes the styles combo * completely customizable.
* completely customizable.
* See FCKConfig.StylesXmlPath in the configuration file.
* *
* File Authors: * See FCKConfig.StylesXmlPath in the configuration file.
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<Styles> <Styles>
<!-- Block Styles -->
<!--
# These styles are already available in the "Format" combo, so they are not
# needed here by default.
<Style name="Heading 1" element="h1" />
<Style name="Heading 2" element="h2" />
<Style name="Heading 3" element="h3" />
<Style name="Heading 4" element="h4" />
<Style name="Heading 5" element="h5" />
<Style name="Heading 6" element="h6" />
<Style name="Paragraph" element="p" />
<Style name="Document Block" element="div" />
<Style name="Preformatted Text" element="pre" />
<Style name="Address" element="address" />
-->
<!-- Inline Styles -->
<!--
# These are core styles available as toolbar buttons.
<Style name="Bold" element="b">
<Override element="strong" />
</Style>
<Style name="Italic" element="i">
<Override element="em" />
</Style>
<Style name="Underline" element="u" />
<Style name="Strikethrough" element="strike" />
<Style name="Subscript" element="sub" />
<Style name="Superscript" element="sup" />
-->
<Style name="Marker: Yellow" element="span">
<Style name="background-color" value="Yellow" />
</Style>
<Style name="Marker: Green" element="span">
<Style name="background-color" value="Lime" />
</Style>
<Style name="Strong Emphasis" element="strong" />
<Style name="Emphasis" element="em" />
<Style name="Big" element="big" />
<Style name="Small" element="small" />
<Style name="Typewriter" element="tt" />
<Style name="Computer Code" element="code" />
<Style name="Keyboard Phrase" element="kbd" />
<Style name="Sample Text" element="samp" />
<Style name="Variable" element="var" />
<Style name="Deleted Text" element="del" />
<Style name="Inserted Text" element="ins" />
<Style name="Cited Work" element="cite" />
<Style name="Inline Quotation" element="q" />
<Style name="Language: RTL" element="span">
<Attribute name="dir" value="rtl" />
</Style>
<Style name="Language: LTR" element="span">
<Attribute name="dir" value="ltr" />
</Style>
<Style name="Language: RTL Strong" element="bdo">
<Attribute name="dir" value="rtl" />
</Style>
<Style name="Language: LTR Strong" element="bdo">
<Attribute name="dir" value="ltr" />
</Style>
<!-- Object Styles -->
<Style name="Image on Left" element="img"> <Style name="Image on Left" element="img">
<Attribute name="style" value="padding: 5px; margin-right: 5px" /> <Attribute name="style" value="padding: 5px; margin-right: 5px" />
<Attribute name="border" value="2" /> <Attribute name="border" value="2" />
@ -38,19 +111,4 @@
<Attribute name="border" value="2" /> <Attribute name="border" value="2" />
<Attribute name="align" value="right" /> <Attribute name="align" value="right" />
</Style> </Style>
<Style name="Custom Bold" element="span">
<Attribute name="style" value="font-weight: bold;" />
</Style>
<Style name="Custom Italic" element="em" />
<Style name="Title" element="span">
<Attribute name="class" value="Title" />
</Style>
<Style name="Code" element="span">
<Attribute name="class" value="Code" />
</Style>
<Style name="Title H3" element="h3" />
<Style name="Custom Ruler" element="hr">
<Attribute name="size" value="1" />
<Attribute name="color" value="#ff0000" />
</Style>
</Styles> </Styles>

View File

@ -19,13 +19,10 @@
* *
* == END LICENSE == * == END LICENSE ==
* *
* File Name: fcktemplates.xml * This is the sample templates definitions file. It makes the "templates"
* This is the sample templates definitions file. It makes the "templates" * command completely customizable.
* command completely customizable.
* See FCKConfig.TemplatesXmlPath in the configuration file.
* *
* File Authors: * See FCKConfig.TemplatesXmlPath in the configuration file.
* Frederico Caldeira Knabben (www.fckeditor.net)
--> -->
<Templates imagesBasePath="fck_template/images/"> <Templates imagesBasePath="fck_template/images/">
<Template title="Image and Title" image="template1.gif"> <Template title="Image and Title" image="template1.gif">

View File

@ -1,44 +0,0 @@
#
# FCKeditor - The text editor for Internet - http://www.fckeditor.net
# Copyright (C) 2003-2007 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 ==
#
# -----------------------------------------------------------------------------
#
# On some specific Linux installations you could face problems with Firefox.
# It could give you errors when loading the editor saying that some illegal
# characters were found (three strange chars in the beginning of the file).
# This could happen if you map the .js or .css files to PHP, for example.
#
# Those characters are the Byte Order Mask (BOM) of the Unicode encoded files.
# All FCKeditor files are Unicode encoded.
#
# Just rename this file to ".htaccess" and leave it in the editor directory.
# There are no security issues on doing it. It just sets the ".js" and ".css"
# files to their correct content types.
#
AddType application/x-javascript .js
AddType text/css .css
#
# If PHP is mapped to handle XML files, you could have some issues. The
# following will disable it.
#
AddType text/xml .xml