diff --git a/main/inc/lib/fckeditor/editor/_source/fckeditorapi.js b/main/inc/lib/fckeditor/editor/_source/fckeditorapi.js
index c0937f71e2..95b7ee34ab 100644
--- a/main/inc/lib/fckeditor/editor/_source/fckeditorapi.js
+++ b/main/inc/lib/fckeditor/editor/_source/fckeditorapi.js
@@ -1,179 +1,179 @@
-/*
- * FCKeditor - The text editor for Internet - http://www.fckeditor.net
- * Copyright (C) 2003-2009 Frederico Caldeira Knabben
- *
- * == BEGIN LICENSE ==
- *
- * Licensed under the terms of any of the following licenses at your
- * choice:
- *
- * - GNU General Public License Version 2 or later (the "GPL")
- * http://www.gnu.org/licenses/gpl.html
- *
- * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
- * http://www.gnu.org/licenses/lgpl.html
- *
- * - Mozilla Public License Version 1.1 or later (the "MPL")
- * http://www.mozilla.org/MPL/MPL-1.1.html
- *
- * == END LICENSE ==
- *
- * Create the FCKeditorAPI object that is available as a global object in
- * the page where the editor is placed in.
- */
-
-var FCKeditorAPI ;
-
-function InitializeAPI()
-{
- var oParentWindow = window.parent ;
-
- if ( !( FCKeditorAPI = oParentWindow.FCKeditorAPI ) )
- {
- // Make the FCKeditorAPI object available in the parent window. Use
- // eval so this core runs in the parent's scope and so it will still be
- // available if the editor instance is removed ("Can't execute code
- // from a freed script" error).
-
- // Note: we check the existence of oEditor.GetParentForm because some external
- // code (like JSON) can extend the Object prototype and we get then extra oEditor
- // objects that aren't really FCKeditor instances.
- var sScript =
+/*
+ * FCKeditor - The text editor for Internet - http://www.fckeditor.net
+ * Copyright (C) 2003-2009 Frederico Caldeira Knabben
+ *
+ * == BEGIN LICENSE ==
+ *
+ * Licensed under the terms of any of the following licenses at your
+ * choice:
+ *
+ * - GNU General Public License Version 2 or later (the "GPL")
+ * http://www.gnu.org/licenses/gpl.html
+ *
+ * - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
+ * http://www.gnu.org/licenses/lgpl.html
+ *
+ * - Mozilla Public License Version 1.1 or later (the "MPL")
+ * http://www.mozilla.org/MPL/MPL-1.1.html
+ *
+ * == END LICENSE ==
+ *
+ * Create the FCKeditorAPI object that is available as a global object in
+ * the page where the editor is placed in.
+ */
+
+var FCKeditorAPI ;
+
+function InitializeAPI()
+{
+ var oParentWindow = window.parent ;
+
+ if ( !( FCKeditorAPI = oParentWindow.FCKeditorAPI ) )
+ {
+ // Make the FCKeditorAPI object available in the parent window. Use
+ // eval so this core runs in the parent's scope and so it will still be
+ // available if the editor instance is removed ("Can't execute code
+ // from a freed script" error).
+
+ // Note: we check the existence of oEditor.GetParentForm because some external
+ // code (like JSON) can extend the Object prototype and we get then extra oEditor
+ // objects that aren't really FCKeditor instances.
+ var sScript =
'window.FCKeditorAPI = {' +
- 'Version : "2.6.4.1",' +
- 'VersionBuild : "23195",' +
- 'Instances : window.FCKeditorAPI && window.FCKeditorAPI.Instances || {},' +
-
- 'GetInstance : function( name )' +
- '{' +
- 'return this.Instances[ name ];' +
- '},' +
-
- '_FormSubmit : function()' +
- '{' +
- 'for ( var name in FCKeditorAPI.Instances )' +
- '{' +
- 'var oEditor = FCKeditorAPI.Instances[ name ] ;' +
- 'if ( oEditor.GetParentForm && oEditor.GetParentForm() == this )' +
- 'oEditor.UpdateLinkedField() ;' +
- '}' +
- 'this._FCKOriginalSubmit() ;' +
- '},' +
-
- '_FunctionQueue : window.FCKeditorAPI && window.FCKeditorAPI._FunctionQueue || {' +
- 'Functions : new Array(),' +
- 'IsRunning : false,' +
-
- 'Add : function( f )' +
- '{' +
- 'this.Functions.push( f );' +
- 'if ( !this.IsRunning )' +
- 'this.StartNext();' +
- '},' +
-
- 'StartNext : function()' +
- '{' +
- 'var aQueue = this.Functions ;' +
- 'if ( aQueue.length > 0 )' +
- '{' +
- 'this.IsRunning = true;' +
- 'aQueue[0].call();' +
- '}' +
- 'else ' +
- 'this.IsRunning = false;' +
- '},' +
-
- 'Remove : function( f )' +
- '{' +
- 'var aQueue = this.Functions;' +
- 'var i = 0, fFunc;' +
- 'while( (fFunc = aQueue[ i ]) )' +
- '{' +
- 'if ( fFunc == f )' +
- 'aQueue.splice( i,1 );' +
- 'i++ ;' +
- '}' +
- 'this.StartNext();' +
- '}' +
- '}' +
- '}' ;
-
- // In IE, the "eval" function is not always available (it works with
- // the JavaScript samples, but not with the ASP ones, for example).
- // So, let's use the execScript instead.
- if ( oParentWindow.execScript )
- oParentWindow.execScript( sScript, 'JavaScript' ) ;
- else
- {
- if ( FCKBrowserInfo.IsGecko10 )
- {
- // FF 1.0.4 gives an error with the request bellow. The
- // following seams to work well.
- eval.call( oParentWindow, sScript ) ;
- }
- else if( FCKBrowserInfo.IsAIR )
- {
- FCKAdobeAIR.FCKeditorAPI_Evaluate( oParentWindow, sScript ) ;
- }
- else if ( FCKBrowserInfo.IsSafari )
- {
- // oParentWindow.eval in Safari executes in the calling window
- // environment, instead of the parent one. The following should
- // make it work.
- var oParentDocument = oParentWindow.document ;
- var eScript = oParentDocument.createElement('script') ;
- eScript.appendChild( oParentDocument.createTextNode( sScript ) ) ;
- oParentDocument.documentElement.appendChild( eScript ) ;
- }
- else
- oParentWindow.eval( sScript ) ;
- }
-
- FCKeditorAPI = oParentWindow.FCKeditorAPI ;
-
- // The __Instances properly has been changed to the public Instances,
- // but we should still have the "deprecated" version of it.
- FCKeditorAPI.__Instances = FCKeditorAPI.Instances ;
- }
-
- // Add the current instance to the FCKeditorAPI's instances collection.
- FCKeditorAPI.Instances[ FCK.Name ] = FCK ;
-}
-
-// Attach to the form onsubmit event and to the form.submit().
-function _AttachFormSubmitToAPI()
-{
- // Get the linked field form.
- var oForm = FCK.GetParentForm() ;
-
- if ( oForm )
- {
- // Attach to the onsubmit event.
- FCKTools.AddEventListener( oForm, 'submit', FCK.UpdateLinkedField ) ;
-
- // IE sees oForm.submit function as an 'object'.
- if ( !oForm._FCKOriginalSubmit && ( typeof( oForm.submit ) == 'function' || ( !oForm.submit.tagName && !oForm.submit.length ) ) )
- {
- // Save the original submit.
- oForm._FCKOriginalSubmit = oForm.submit ;
-
- // Create our replacement for the submit.
- oForm.submit = FCKeditorAPI._FormSubmit ;
- }
- }
-}
-
-function FCKeditorAPI_Cleanup()
-{
- if ( window.FCKConfig && FCKConfig.MsWebBrowserControlCompat
- && !window.FCKUnloadFlag )
- return ;
- delete FCKeditorAPI.Instances[ FCK.Name ] ;
-}
-function FCKeditorAPI_ConfirmCleanup()
-{
- if ( window.FCKConfig && FCKConfig.MsWebBrowserControlCompat )
- window.FCKUnloadFlag = true ;
-}
-FCKTools.AddEventListener( window, 'unload', FCKeditorAPI_Cleanup ) ;
-FCKTools.AddEventListener( window, 'beforeunload', FCKeditorAPI_ConfirmCleanup) ;
+ 'Version : "2.6.4.1",' +
+ 'VersionBuild : "23405",' +
+ 'Instances : window.FCKeditorAPI && window.FCKeditorAPI.Instances || {},' +
+
+ 'GetInstance : function( name )' +
+ '{' +
+ 'return this.Instances[ name ];' +
+ '},' +
+
+ '_FormSubmit : function()' +
+ '{' +
+ 'for ( var name in FCKeditorAPI.Instances )' +
+ '{' +
+ 'var oEditor = FCKeditorAPI.Instances[ name ] ;' +
+ 'if ( oEditor.GetParentForm && oEditor.GetParentForm() == this )' +
+ 'oEditor.UpdateLinkedField() ;' +
+ '}' +
+ 'this._FCKOriginalSubmit() ;' +
+ '},' +
+
+ '_FunctionQueue : window.FCKeditorAPI && window.FCKeditorAPI._FunctionQueue || {' +
+ 'Functions : new Array(),' +
+ 'IsRunning : false,' +
+
+ 'Add : function( f )' +
+ '{' +
+ 'this.Functions.push( f );' +
+ 'if ( !this.IsRunning )' +
+ 'this.StartNext();' +
+ '},' +
+
+ 'StartNext : function()' +
+ '{' +
+ 'var aQueue = this.Functions ;' +
+ 'if ( aQueue.length > 0 )' +
+ '{' +
+ 'this.IsRunning = true;' +
+ 'aQueue[0].call();' +
+ '}' +
+ 'else ' +
+ 'this.IsRunning = false;' +
+ '},' +
+
+ 'Remove : function( f )' +
+ '{' +
+ 'var aQueue = this.Functions;' +
+ 'var i = 0, fFunc;' +
+ 'while( (fFunc = aQueue[ i ]) )' +
+ '{' +
+ 'if ( fFunc == f )' +
+ 'aQueue.splice( i,1 );' +
+ 'i++ ;' +
+ '}' +
+ 'this.StartNext();' +
+ '}' +
+ '}' +
+ '}' ;
+
+ // In IE, the "eval" function is not always available (it works with
+ // the JavaScript samples, but not with the ASP ones, for example).
+ // So, let's use the execScript instead.
+ if ( oParentWindow.execScript )
+ oParentWindow.execScript( sScript, 'JavaScript' ) ;
+ else
+ {
+ if ( FCKBrowserInfo.IsGecko10 )
+ {
+ // FF 1.0.4 gives an error with the request bellow. The
+ // following seams to work well.
+ eval.call( oParentWindow, sScript ) ;
+ }
+ else if( FCKBrowserInfo.IsAIR )
+ {
+ FCKAdobeAIR.FCKeditorAPI_Evaluate( oParentWindow, sScript ) ;
+ }
+ else if ( FCKBrowserInfo.IsSafari )
+ {
+ // oParentWindow.eval in Safari executes in the calling window
+ // environment, instead of the parent one. The following should
+ // make it work.
+ var oParentDocument = oParentWindow.document ;
+ var eScript = oParentDocument.createElement('script') ;
+ eScript.appendChild( oParentDocument.createTextNode( sScript ) ) ;
+ oParentDocument.documentElement.appendChild( eScript ) ;
+ }
+ else
+ oParentWindow.eval( sScript ) ;
+ }
+
+ FCKeditorAPI = oParentWindow.FCKeditorAPI ;
+
+ // The __Instances properly has been changed to the public Instances,
+ // but we should still have the "deprecated" version of it.
+ FCKeditorAPI.__Instances = FCKeditorAPI.Instances ;
+ }
+
+ // Add the current instance to the FCKeditorAPI's instances collection.
+ FCKeditorAPI.Instances[ FCK.Name ] = FCK ;
+}
+
+// Attach to the form onsubmit event and to the form.submit().
+function _AttachFormSubmitToAPI()
+{
+ // Get the linked field form.
+ var oForm = FCK.GetParentForm() ;
+
+ if ( oForm )
+ {
+ // Attach to the onsubmit event.
+ FCKTools.AddEventListener( oForm, 'submit', FCK.UpdateLinkedField ) ;
+
+ // IE sees oForm.submit function as an 'object'.
+ if ( !oForm._FCKOriginalSubmit && ( typeof( oForm.submit ) == 'function' || ( !oForm.submit.tagName && !oForm.submit.length ) ) )
+ {
+ // Save the original submit.
+ oForm._FCKOriginalSubmit = oForm.submit ;
+
+ // Create our replacement for the submit.
+ oForm.submit = FCKeditorAPI._FormSubmit ;
+ }
+ }
+}
+
+function FCKeditorAPI_Cleanup()
+{
+ if ( window.FCKConfig && FCKConfig.MsWebBrowserControlCompat
+ && !window.FCKUnloadFlag )
+ return ;
+ delete FCKeditorAPI.Instances[ FCK.Name ] ;
+}
+function FCKeditorAPI_ConfirmCleanup()
+{
+ if ( window.FCKConfig && FCKConfig.MsWebBrowserControlCompat )
+ window.FCKUnloadFlag = true ;
+}
+FCKTools.AddEventListener( window, 'unload', FCKeditorAPI_Cleanup ) ;
+FCKTools.AddEventListener( window, 'beforeunload', FCKeditorAPI_ConfirmCleanup) ;
diff --git a/main/inc/lib/fckeditor/editor/dialog/fck_about.html b/main/inc/lib/fckeditor/editor/dialog/fck_about.html
index 66b2fc9aa6..392a79cae3 100644
--- a/main/inc/lib/fckeditor/editor/dialog/fck_about.html
+++ b/main/inc/lib/fckeditor/editor/dialog/fck_about.html
@@ -79,7 +79,7 @@ window.onload = function()
version
2.6.4.1
- Build 23195
+ Build 23405
diff --git a/main/inc/lib/fckeditor/editor/js/fckeditorcode_gecko.js b/main/inc/lib/fckeditor/editor/js/fckeditorcode_gecko.js
index 5868208a3e..0c79129f33 100644
--- a/main/inc/lib/fckeditor/editor/js/fckeditorcode_gecko.js
+++ b/main/inc/lib/fckeditor/editor/js/fckeditorcode_gecko.js
@@ -35,7 +35,7 @@ var FCKDebug={Output:function(){},OutputObject:function(){}};
var FCKDomTools={MoveChildren:function(A,B,C){if (A==B) return;var D;if (C){while ((D=A.lastChild)) B.insertBefore(A.removeChild(D),B.firstChild);}else{while ((D=A.firstChild)) B.appendChild(A.removeChild(D));}},MoveNode:function(A,B,C){if (C) B.insertBefore(FCKDomTools.RemoveNode(A),B.firstChild);else B.appendChild(FCKDomTools.RemoveNode(A));},TrimNode:function(A){this.LTrimNode(A);this.RTrimNode(A);},LTrimNode:function(A){var B;while ((B=A.firstChild)){if (B.nodeType==3){var C=B.nodeValue.LTrim();var D=B.nodeValue.length;if (C.length==0){A.removeChild(B);continue;}else if (C.length0) break;if (A.lastChild) A=A.lastChild;else return this.GetPreviousSourceElement(A,B,C,D);};return null;},GetNextSourceElement:function(A,B,C,D,E){while((A=this.GetNextSourceNode(A,E))){if (A.nodeType==1){if (C&&A.nodeName.IEquals(C)) break;if (D&&A.nodeName.IEquals(D)) return this.GetNextSourceElement(A,B,C,D);return A;}else if (B&&A.nodeType==3&&A.nodeValue.RTrim().length>0) break;};return null;},GetNextSourceNode:function(A,B,C,D){if (!A) return null;var E;if (!B&&A.firstChild) E=A.firstChild;else{if (D&&A==D) return null;E=A.nextSibling;if (!E&&(!D||D!=A.parentNode)) return this.GetNextSourceNode(A.parentNode,true,C,D);};if (C&&E&&E.nodeType!=C) return this.GetNextSourceNode(E,false,C,D);return E;},GetPreviousSourceNode:function(A,B,C,D){if (!A) return null;var E;if (!B&&A.lastChild) E=A.lastChild;else{if (D&&A==D) return null;E=A.previousSibling;if (!E&&(!D||D!=A.parentNode)) return this.GetPreviousSourceNode(A.parentNode,true,C,D);};if (C&&E&&E.nodeType!=C) return this.GetPreviousSourceNode(E,false,C,D);return E;},InsertAfterNode:function(A,B){return A.parentNode.insertBefore(B,A.nextSibling);},GetParents:function(A){var B=[];while (A){B.unshift(A);A=A.parentNode;};return B;},GetCommonParents:function(A,B){var C=this.GetParents(A);var D=this.GetParents(B);var E=[];for (var i=0;i0) D[C.pop().toLowerCase()]=1;var E=this.GetCommonParents(A,B);var F=null;while ((F=E.pop())){if (D[F.nodeName.toLowerCase()]) return F;};return null;},GetIndexOf:function(A){var B=A.parentNode?A.parentNode.firstChild:null;var C=-1;while (B){C++;if (B==A) return C;B=B.nextSibling;};return-1;},PaddingNode:null,EnforcePaddingNode:function(A,B){try{if (!A||!A.body) return;}catch (e){return;};this.CheckAndRemovePaddingNode(A,B,true);try{if (A.body.lastChild&&(A.body.lastChild.nodeType!=1||A.body.lastChild.tagName.toLowerCase()==B.toLowerCase())) return;}catch (e){return;};var C=A.createElement(B);if (FCKBrowserInfo.IsGecko&&FCKListsLib.NonEmptyBlockElements[B]) FCKTools.AppendBogusBr(C);this.PaddingNode=C;if (A.body.childNodes.length==1&&A.body.firstChild.nodeType==1&&A.body.firstChild.tagName.toLowerCase()=='br'&&(A.body.firstChild.getAttribute('_moz_dirty')!=null||A.body.firstChild.getAttribute('type')=='_moz')) A.body.replaceChild(C,A.body.firstChild);else A.body.appendChild(C);},CheckAndRemovePaddingNode:function(A,B,C){var D=this.PaddingNode;if (!D) return;try{if (D.parentNode!=A.body||D.tagName.toLowerCase()!=B||(D.childNodes.length>1)||(D.firstChild&&D.firstChild.nodeValue!='\xa0'&&String(D.firstChild.tagName).toLowerCase()!='br')){this.PaddingNode=null;return;}}catch (e){this.PaddingNode=null;return;};if (!C){if (D.parentNode.childNodes.length>1) D.parentNode.removeChild(D);this.PaddingNode=null;}},HasAttribute:function(A,B){if (A.hasAttribute) return A.hasAttribute(B);else{var C=A.attributes[B];return (C!=undefined&&C.specified);}},HasAttributes:function(A){var B=A.attributes;for (var i=0;i0) return true;continue;}};if (B[i].specified) return true;};return false;},RemoveAttribute:function(A,B){if (FCKBrowserInfo.IsIE&&B.toLowerCase()=='class') B='className';return A.removeAttribute(B,0);},RemoveAttributes:function (A,B){for (var i=0;i0) return false;C=C.nextSibling;};return D?this.CheckIsEmptyElement(D,B):true;},SetElementStyles:function(A,B){var C=A.style;for (var D in B) C[D]=B[D];},SetOpacity:function(A,B){if (FCKBrowserInfo.IsIE){B=Math.round(B*100);A.style.filter=(B>100?'':'progid:DXImageTransform.Microsoft.Alpha(opacity='+B+')');}else A.style.opacity=B;},GetCurrentElementStyle:function(A,B){if (FCKBrowserInfo.IsIE) return A.currentStyle[B];else return A.ownerDocument.defaultView.getComputedStyle(A,'').getPropertyValue(B);},GetPositionedAncestor:function(A){var B=A;while (B!=FCKTools.GetElementDocument(B).documentElement){if (this.GetCurrentElementStyle(B,'position')!='static') return B;if (B==FCKTools.GetElementDocument(B).documentElement&¤tWindow!=w) B=currentWindow.frameElement;else B=B.parentNode;};return null;},ScrollIntoView:function(A,B){var C=FCKTools.GetElementWindow(A);var D=FCKTools.GetViewPaneSize(C).Height;var E=D*-1;if (B===false){E+=A.offsetHeight||0;E+=parseInt(this.GetCurrentElementStyle(A,'marginBottom')||0,10)||0;};var F=FCKTools.GetDocumentPosition(C,A);E+=F.y;var G=FCKTools.GetScrollPosition(C).Y;if (E>0&&(E>G||E'+styleDef+'';};var C=function(cssFileUrl,markTemp){if (cssFileUrl.length==0) return '';var B=markTemp?' _fcktemp="true"':'';return '';};return function(cssFileOrArrayOrDef,markTemp){if (!cssFileOrArrayOrDef) return '';if (typeof(cssFileOrArrayOrDef)=='string'){if (/[\\\/\.][^{}]*$/.test(cssFileOrArrayOrDef)){return this.GetStyleHtml(cssFileOrArrayOrDef.split(','),markTemp);}else return A(this._GetUrlFixedCss(cssFileOrArrayOrDef),markTemp);}else{var E='';for (var i=0;i/g,'>');return A;};FCKTools.HTMLDecode=function(A){if (!A) return '';A=A.replace(/>/g,'>');A=A.replace(/</g,'<');A=A.replace(/&/g,'&');return A;};FCKTools._ProcessLineBreaksForPMode=function(A,B,C,D,E){var F=0;var G="";var H="
";var I="
";if (C){G="";H="";F=1;}while (D&&D!=A.FCK.EditorDocument.body){if (D.tagName.toLowerCase()=='p'){F=1;break;};D=D.parentNode;};for (var i=0;i";H="";F=1;}while (D&&D!=A.FCK.EditorDocument.body){if (D.tagName.toLowerCase()=='div'){F=1;break;};D=D.parentNode;};for (var i=0;i";H="";F=1;};for (var i=0;i0) return A[A.length-1];return null;};FCKTools.GetDocumentPosition=function(w,A){var x=0;var y=0;var B=A;var C=null;var D=FCKTools.GetElementWindow(B);while (B&&!(D==w&&(B==w.document.body||B==w.document.documentElement))){x+=B.offsetLeft-B.scrollLeft;y+=B.offsetTop-B.scrollTop;if (!FCKBrowserInfo.IsOpera){var E=C;while (E&&E!=B){x-=E.scrollLeft;y-=E.scrollTop;E=E.parentNode;}};C=B;if (B.offsetParent) B=B.offsetParent;else{if (D!=w){B=D.frameElement;C=null;if (B) D=B.contentWindow.parent;}else B=null;}};if (FCKDomTools.GetCurrentElementStyle(w.document.body,'position')!='static'||(FCKBrowserInfo.IsIE&&FCKDomTools.GetPositionedAncestor(A)==null)){x+=w.document.body.offsetLeft;y+=w.document.body.offsetTop;};return { "x":x,"y":y };};FCKTools.GetWindowPosition=function(w,A){var B=this.GetDocumentPosition(w,A);var C=FCKTools.GetScrollPosition(w);B.x-=C.X;B.y-=C.Y;return B;};FCKTools.ProtectFormStyles=function(A){if (!A||A.nodeType!=1||A.tagName.toLowerCase()!='form') return [];var B=[];var C=['style','className'];for (var i=0;i0){for (var i=B.length-1;i>=0;i--){var C=B[i][0];var D=B[i][1];if (D) A.insertBefore(C,D);else A.appendChild(C);}}};FCKTools.GetNextNode=function(A,B){if (A.firstChild) return A.firstChild;else if (A.nextSibling) return A.nextSibling;else{var C=A.parentNode;while (C){if (C==B) return null;if (C.nextSibling) return C.nextSibling;else C=C.parentNode;}};return null;};FCKTools.GetNextTextNode=function(A,B,C){node=this.GetNextNode(A,B);if (C&&node&&C(node)) return null;while (node&&node.nodeType!=3){node=this.GetNextNode(node,B);if (C&&node&&C(node)) return null;};return node;};FCKTools.Merge=function(){var A=arguments;var o=A[0];for (var i=1;i