, and are returned. If "true", a
- * dedicated block element block element will be created inside those
- * elements to hold the selected content.
- */
- this.EnforceRealBlocks = false ;
-}
-
-FCKDomRangeIterator.CreateFromSelection = function( targetWindow )
-{
- var range = new FCKDomRange( targetWindow ) ;
- range.MoveToSelection() ;
- return new FCKDomRangeIterator( range ) ;
-}
-
-FCKDomRangeIterator.prototype =
-{
- /**
- * Get the next paragraph element. It automatically breaks the document
- * when necessary to generate block elements for the paragraphs.
- */
- GetNextParagraph : function()
- {
- // The block element to be returned.
- var block ;
-
- // The range object used to identify the paragraph contents.
- var range ;
-
- // Indicated that the current element in the loop is the last one.
- var isLast ;
-
- // Instructs to cleanup remaining BRs.
- var removePreviousBr ;
- var removeLastBr ;
-
- var boundarySet = this.ForceBrBreak ? FCKListsLib.ListBoundaries : FCKListsLib.BlockBoundaries ;
-
- // This is the first iteration. Let's initialize it.
- if ( !this._LastNode )
- {
- var range = this.Range.Clone() ;
- range.Expand( this.ForceBrBreak ? 'list_contents' : 'block_contents' ) ;
-
- this._NextNode = range.GetTouchedStartNode() ;
- this._LastNode = range.GetTouchedEndNode() ;
-
- // Let's reuse this variable.
- range = null ;
- }
-
- var currentNode = this._NextNode ;
- var lastNode = this._LastNode ;
-
- this._NextNode = null ;
-
- while ( currentNode )
- {
- // closeRange indicates that a paragraph boundary has been found,
- // so the range can be closed.
- var closeRange = false ;
-
- // includeNode indicates that the current node is good to be part
- // of the range. By default, any non-element node is ok for it.
- var includeNode = ( currentNode.nodeType != 1 ) ;
-
- var continueFromSibling = false ;
-
- // If it is an element node, let's check if it can be part of the
- // range.
- if ( !includeNode )
- {
- var nodeName = currentNode.nodeName.toLowerCase() ;
-
- if ( boundarySet[ nodeName ] && ( !FCKBrowserInfo.IsIE || currentNode.scopeName == 'HTML' ) )
- {
- // boundaries must be part of the range. It will
- // happen only if ForceBrBreak.
- if ( nodeName == 'br' )
- includeNode = true ;
- else if ( !range && currentNode.childNodes.length == 0 && nodeName != 'hr' )
- {
- // If we have found an empty block, and haven't started
- // the range yet, it means we must return this block.
- block = currentNode ;
- isLast = currentNode == lastNode ;
- break ;
- }
-
- // The range must finish right before the boundary,
- // including possibly skipped empty spaces. (#1603)
- if ( range )
- {
- range.SetEnd( currentNode, 3, true ) ;
-
- // The found boundary must be set as the next one at this
- // point. (#1717)
- if ( nodeName != 'br' )
- this._NextNode = FCKDomTools.GetNextSourceNode( currentNode, true, null, lastNode ) || currentNode ;
- }
-
- closeRange = true ;
- }
- else
- {
- // If we have child nodes, let's check them.
- if ( currentNode.firstChild )
- {
- // If we don't have a range yet, let's start it.
- if ( !range )
- {
- range = new FCKDomRange( this.Range.Window ) ;
- range.SetStart( currentNode, 3, true ) ;
- }
-
- currentNode = currentNode.firstChild ;
- continue ;
- }
- includeNode = true ;
- }
- }
- else if ( currentNode.nodeType == 3 )
- {
- // Ignore normal whitespaces (i.e. not including or
- // other unicode whitespaces) before/after a block node.
- if ( /^[\r\n\t ]+$/.test( currentNode.nodeValue ) )
- includeNode = false ;
- }
-
- // The current node is good to be part of the range and we are
- // starting a new range, initialize it first.
- if ( includeNode && !range )
- {
- range = new FCKDomRange( this.Range.Window ) ;
- range.SetStart( currentNode, 3, true ) ;
- }
-
- // The last node has been found.
- isLast = ( ( !closeRange || includeNode ) && currentNode == lastNode ) ;
-// isLast = ( currentNode == lastNode && ( currentNode.nodeType != 1 || currentNode.childNodes.length == 0 ) ) ;
-
- // If we are in an element boundary, let's check if it is time
- // to close the range, otherwise we include the parent within it.
- if ( range && !closeRange )
- {
- while ( !currentNode.nextSibling && !isLast )
- {
- var parentNode = currentNode.parentNode ;
-
- if ( boundarySet[ parentNode.nodeName.toLowerCase() ] )
- {
- closeRange = true ;
- isLast = isLast || ( parentNode == lastNode ) ;
- break ;
- }
-
- currentNode = parentNode ;
- includeNode = true ;
- isLast = ( currentNode == lastNode ) ;
- continueFromSibling = true ;
- }
- }
-
- // Now finally include the node.
- if ( includeNode )
- range.SetEnd( currentNode, 4, true ) ;
-
- // We have found a block boundary. Let's close the range and move out of the
- // loop.
- if ( ( closeRange || isLast ) && range )
- {
- range._UpdateElementInfo() ;
-
- if ( range.StartNode == range.EndNode
- && range.StartNode.parentNode == range.StartBlockLimit
- && range.StartNode.getAttribute && range.StartNode.getAttribute( '_fck_bookmark' ) )
- range = null ;
- else
- break ;
- }
-
- if ( isLast )
- break ;
-
- currentNode = FCKDomTools.GetNextSourceNode( currentNode, continueFromSibling, null, lastNode ) ;
- }
-
- // Now, based on the processed range, look for (or create) the block to be returned.
- if ( !block )
- {
- // If no range has been found, this is the end.
- if ( !range )
- {
- this._NextNode = null ;
- return null ;
- }
-
- block = range.StartBlock ;
-
- if ( !block
- && !this.EnforceRealBlocks
- && range.StartBlockLimit.nodeName.IEquals( 'DIV', 'TH', 'TD' )
- && range.CheckStartOfBlock()
- && range.CheckEndOfBlock() )
- {
- block = range.StartBlockLimit ;
- }
- else if ( !block || ( this.EnforceRealBlocks && block.nodeName.toLowerCase() == 'li' ) )
- {
- // Create the fixed block.
- block = this.Range.Window.document.createElement( FCKConfig.EnterMode == 'p' ? 'p' : 'div' ) ;
-
- // Move the contents of the temporary range to the fixed block.
- range.ExtractContents().AppendTo( block ) ;
- FCKDomTools.TrimNode( block ) ;
-
- // Insert the fixed block into the DOM.
- range.InsertNode( block ) ;
-
- removePreviousBr = true ;
- removeLastBr = true ;
- }
- else if ( block.nodeName.toLowerCase() != 'li' )
- {
- // If the range doesn't includes the entire contents of the
- // block, we must split it, isolating the range in a dedicated
- // block.
- if ( !range.CheckStartOfBlock() || !range.CheckEndOfBlock() )
- {
- // The resulting block will be a clone of the current one.
- block = block.cloneNode( false ) ;
-
- // Extract the range contents, moving it to the new block.
- range.ExtractContents().AppendTo( block ) ;
- FCKDomTools.TrimNode( block ) ;
-
- // Split the block. At this point, the range will be in the
- // right position for our intents.
- var splitInfo = range.SplitBlock() ;
-
- removePreviousBr = !splitInfo.WasStartOfBlock ;
- removeLastBr = !splitInfo.WasEndOfBlock ;
-
- // Insert the new block into the DOM.
- range.InsertNode( block ) ;
- }
- }
- else if ( !isLast )
- {
- // LIs are returned as is, with all their children (due to the
- // nested lists). But, the next node is the node right after
- // the current range, which could be an child (nested
- // lists) or the next sibling .
-
- this._NextNode = block == lastNode ? null : FCKDomTools.GetNextSourceNode( range.EndNode, true, null, lastNode ) ;
- return block ;
- }
- }
-
- if ( removePreviousBr )
- {
- var previousSibling = block.previousSibling ;
- if ( previousSibling && previousSibling.nodeType == 1 )
- {
- if ( previousSibling.nodeName.toLowerCase() == 'br' )
- previousSibling.parentNode.removeChild( previousSibling ) ;
- else if ( previousSibling.lastChild && previousSibling.lastChild.nodeName.IEquals( 'br' ) )
- previousSibling.removeChild( previousSibling.lastChild ) ;
- }
- }
-
- if ( removeLastBr )
- {
- var lastChild = block.lastChild ;
- if ( lastChild && lastChild.nodeType == 1 && lastChild.nodeName.toLowerCase() == 'br' )
- block.removeChild( lastChild ) ;
- }
-
- // Get a reference for the next element. This is important because the
- // above block can be removed or changed, so we can rely on it for the
- // next interation.
- if ( !this._NextNode )
- this._NextNode = ( isLast || block == lastNode ) ? null : FCKDomTools.GetNextSourceNode( block, true, null, lastNode ) ;
-
- return block ;
- }
-} ;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckeditingarea.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckeditingarea.js
deleted file mode 100755
index 4f7044e..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckeditingarea.js
+++ /dev/null
@@ -1,368 +0,0 @@
-/*
- * 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 ==
- *
- * FCKEditingArea Class: renders an editable area.
- */
-
-/**
- * @constructor
- * @param {String} targetElement The element that will hold the editing area. Any child element present in the target will be deleted.
- */
-var FCKEditingArea = function( targetElement )
-{
- this.TargetElement = targetElement ;
- this.Mode = FCK_EDITMODE_WYSIWYG ;
-
- if ( FCK.IECleanup )
- FCK.IECleanup.AddItem( this, FCKEditingArea_Cleanup ) ;
-}
-
-
-/**
- * @param {String} html The complete HTML for the page, including DOCTYPE and the tag.
- */
-FCKEditingArea.prototype.Start = function( html, secondCall )
-{
- var eTargetElement = this.TargetElement ;
- var oTargetDocument = FCKTools.GetElementDocument( eTargetElement ) ;
-
- // Remove all child nodes from the target.
- while( eTargetElement.firstChild )
- eTargetElement.removeChild( eTargetElement.firstChild ) ;
-
- if ( this.Mode == FCK_EDITMODE_WYSIWYG )
- {
- // For FF, document.domain must be set only when different, otherwhise
- // we'll strangely have "Permission denied" issues.
- if ( FCK_IS_CUSTOM_DOMAIN )
- html = '' + html ;
-
- // IE has a bug with the tag... it must have a closer,
- // otherwise the all successive tags will be set as children nodes of the .
- if ( FCKBrowserInfo.IsIE )
- html = html.replace( /( ]*?)\s*\/?>(?!\s*<\/base>)/gi, '$1>' ) ;
- else if ( !secondCall )
- {
- // Gecko moves some tags out of the body to the head, so we must use
- // innerHTML to set the body contents (SF BUG 1526154).
-
- // Extract the BODY contents from the html.
- var oMatchBefore = html.match( FCKRegexLib.BeforeBody ) ;
- var oMatchAfter = html.match( FCKRegexLib.AfterBody ) ;
-
- if ( oMatchBefore && oMatchAfter )
- {
- var sBody = html.substr( oMatchBefore[1].length,
- html.length - oMatchBefore[1].length - oMatchAfter[1].length ) ; // This is the BODY tag contents.
-
- html =
- oMatchBefore[1] + // This is the HTML until the tag, inclusive.
- ' ' +
- oMatchAfter[1] ; // This is the HTML from the tag, inclusive.
-
- // If nothing in the body, place a BOGUS tag so the cursor will appear.
- if ( FCKBrowserInfo.IsGecko && ( sBody.length == 0 || FCKRegexLib.EmptyParagraph.test( sBody ) ) )
- sBody = ' ' ;
-
- this._BodyHTML = sBody ;
-
- }
- else
- this._BodyHTML = html ; // Invalid HTML input.
- }
-
- // Create the editing area IFRAME.
- var oIFrame = this.IFrame = oTargetDocument.createElement( 'iframe' ) ;
-
- // IE: Avoid JavaScript errors thrown by the editing are source (like tags events).
- // See #1055.
- var sOverrideError = '' ;
-
- oIFrame.frameBorder = 0 ;
- oIFrame.style.width = oIFrame.style.height = '100%' ;
-
- if ( FCK_IS_CUSTOM_DOMAIN && FCKBrowserInfo.IsIE )
- {
- window._FCKHtmlToLoad = html.replace( //i, '' + sOverrideError ) ;
- oIFrame.src = 'javascript:void( (function(){' +
- 'document.open() ;' +
- 'document.domain="' + document.domain + '" ;' +
- 'document.write( window.parent._FCKHtmlToLoad );' +
- 'document.close() ;' +
- 'window.parent._FCKHtmlToLoad = null ;' +
- '})() )' ;
- }
- else if ( !FCKBrowserInfo.IsGecko )
- {
- // Firefox will render the tables inside the body in Quirks mode if the
- // source of the iframe is set to javascript. see #515
- oIFrame.src = 'javascript:void(0)' ;
- }
-
- // Append the new IFRAME to the target. For IE, it must be done after
- // setting the "src", to avoid the "secure/unsecure" message under HTTPS.
- eTargetElement.appendChild( oIFrame ) ;
-
- // Get the window and document objects used to interact with the newly created IFRAME.
- this.Window = oIFrame.contentWindow ;
-
- // IE: Avoid JavaScript errors thrown by the editing are source (like tags events).
- // TODO: This error handler is not being fired.
- // this.Window.onerror = function() { alert( 'Error!' ) ; return true ; }
-
- if ( !FCK_IS_CUSTOM_DOMAIN || !FCKBrowserInfo.IsIE )
- {
- var oDoc = this.Window.document ;
-
- oDoc.open() ;
- oDoc.write( html.replace( //i, '' + sOverrideError ) ) ;
- oDoc.close() ;
- }
-
- if ( FCKBrowserInfo.IsAIR )
- FCKAdobeAIR.EditingArea_Start( oDoc, html ) ;
-
- // Firefox 1.0.x is buggy... ohh yes... so let's do it two times and it
- // will magically work.
- if ( FCKBrowserInfo.IsGecko10 && !secondCall )
- {
- this.Start( html, true ) ;
- return ;
- }
-
- if ( oIFrame.readyState && oIFrame.readyState != 'completed' )
- {
- var editArea = this ;
-
- // Using a IE alternative for DOMContentLoaded, similar to the
- // solution proposed at http://javascript.nwbox.com/IEContentLoaded/
- setTimeout( function()
- {
- try
- {
- editArea.Window.document.documentElement.doScroll("left") ;
- }
- catch(e)
- {
- setTimeout( arguments.callee, 0 ) ;
- return ;
- }
- editArea.Window._FCKEditingArea = editArea ;
- FCKEditingArea_CompleteStart.call( editArea.Window ) ;
- }, 0 ) ;
- }
- else
- {
- this.Window._FCKEditingArea = this ;
-
- // FF 1.0.x is buggy... we must wait a lot to enable editing because
- // sometimes the content simply disappears, for example when pasting
- // "bla1! !bla2" in the source and then switching
- // back to design.
- if ( FCKBrowserInfo.IsGecko10 )
- this.Window.setTimeout( FCKEditingArea_CompleteStart, 500 ) ;
- else
- FCKEditingArea_CompleteStart.call( this.Window ) ;
- }
- }
- else
- {
- var eTextarea = this.Textarea = oTargetDocument.createElement( 'textarea' ) ;
- eTextarea.className = 'SourceField' ;
- eTextarea.dir = 'ltr' ;
- FCKDomTools.SetElementStyles( eTextarea,
- {
- width : '100%',
- height : '100%',
- border : 'none',
- resize : 'none',
- outline : 'none'
- } ) ;
- eTargetElement.appendChild( eTextarea ) ;
-
- eTextarea.value = html ;
-
- // Fire the "OnLoad" event.
- FCKTools.RunFunction( this.OnLoad ) ;
- }
-}
-
-// "this" here is FCKEditingArea.Window
-function FCKEditingArea_CompleteStart()
-{
- // On Firefox, the DOM takes a little to become available. So we must wait for it in a loop.
- if ( !this.document.body )
- {
- this.setTimeout( FCKEditingArea_CompleteStart, 50 ) ;
- return ;
- }
-
- var oEditorArea = this._FCKEditingArea ;
-
- // Save this reference to be re-used later.
- oEditorArea.Document = oEditorArea.Window.document ;
-
- oEditorArea.MakeEditable() ;
-
- // Fire the "OnLoad" event.
- FCKTools.RunFunction( oEditorArea.OnLoad ) ;
-}
-
-FCKEditingArea.prototype.MakeEditable = function()
-{
- var oDoc = this.Document ;
-
- if ( FCKBrowserInfo.IsIE )
- {
- // Kludge for #141 and #523
- oDoc.body.disabled = true ;
- oDoc.body.contentEditable = true ;
- oDoc.body.removeAttribute( "disabled" ) ;
-
- /* The following commands don't throw errors, but have no effect.
- oDoc.execCommand( 'AutoDetect', false, false ) ;
- oDoc.execCommand( 'KeepSelection', false, true ) ;
- */
- }
- else
- {
- try
- {
- // Disable Firefox 2 Spell Checker.
- oDoc.body.spellcheck = ( this.FFSpellChecker !== false ) ;
-
- if ( this._BodyHTML )
- {
- oDoc.body.innerHTML = this._BodyHTML ;
- oDoc.body.offsetLeft ; // Don't remove, this is a hack to fix Opera 9.50, see #2264.
- this._BodyHTML = null ;
- }
-
- oDoc.designMode = 'on' ;
-
- // Tell Gecko (Firefox 1.5+) to enable or not live resizing of objects (by Alfonso Martinez)
- oDoc.execCommand( 'enableObjectResizing', false, !FCKConfig.DisableObjectResizing ) ;
-
- // Disable the standard table editing features of Firefox.
- oDoc.execCommand( 'enableInlineTableEditing', false, !FCKConfig.DisableFFTableHandles ) ;
- }
- catch (e)
- {
- // In Firefox if the iframe is initially hidden it can't be set to designMode and it raises an exception
- // So we set up a DOM Mutation event Listener on the HTML, as it will raise several events when the document is visible again
- FCKTools.AddEventListener( this.Window.frameElement, 'DOMAttrModified', FCKEditingArea_Document_AttributeNodeModified ) ;
- }
-
- }
-}
-
-// This function processes the notifications of the DOM Mutation event on the document
-// We use it to know that the document will be ready to be editable again (or we hope so)
-function FCKEditingArea_Document_AttributeNodeModified( evt )
-{
- var editingArea = evt.currentTarget.contentWindow._FCKEditingArea ;
-
- // We want to run our function after the events no longer fire, so we can know that it's a stable situation
- if ( editingArea._timer )
- window.clearTimeout( editingArea._timer ) ;
-
- editingArea._timer = FCKTools.SetTimeout( FCKEditingArea_MakeEditableByMutation, 1000, editingArea ) ;
-}
-
-// This function ideally should be called after the document is visible, it does clean up of the
-// mutation tracking and tries again to make the area editable.
-function FCKEditingArea_MakeEditableByMutation()
-{
- // Clean up
- delete this._timer ;
- // Now we don't want to keep on getting this event
- FCKTools.RemoveEventListener( this.Window.frameElement, 'DOMAttrModified', FCKEditingArea_Document_AttributeNodeModified ) ;
- // Let's try now to set the editing area editable
- // If it fails it will set up the Mutation Listener again automatically
- this.MakeEditable() ;
-}
-
-FCKEditingArea.prototype.Focus = function()
-{
- try
- {
- if ( this.Mode == FCK_EDITMODE_WYSIWYG )
- {
- if ( FCKBrowserInfo.IsIE )
- this._FocusIE() ;
- else
- this.Window.focus() ;
- }
- else
- {
- var oDoc = FCKTools.GetElementDocument( this.Textarea ) ;
- if ( (!oDoc.hasFocus || oDoc.hasFocus() ) && oDoc.activeElement == this.Textarea )
- return ;
-
- this.Textarea.focus() ;
- }
- }
- catch(e) {}
-}
-
-FCKEditingArea.prototype._FocusIE = function()
-{
- // In IE it can happen that the document is in theory focused but the
- // active element is outside of it.
- this.Document.body.setActive() ;
-
- this.Window.focus() ;
-
- // Kludge for #141... yet more code to workaround IE bugs
- var range = this.Document.selection.createRange() ;
-
- var parentNode = range.parentElement() ;
- var parentTag = parentNode.nodeName.toLowerCase() ;
-
- // Only apply the fix when in a block, and the block is empty.
- if ( parentNode.childNodes.length > 0 ||
- !( FCKListsLib.BlockElements[parentTag] ||
- FCKListsLib.NonEmptyBlockElements[parentTag] ) )
- {
- return ;
- }
-
- // Force the selection to happen, in this way we guarantee the focus will
- // be there.
- range = new FCKDomRange( this.Window ) ;
- range.MoveToElementEditStart( parentNode ) ;
- range.Select() ;
-}
-
-function FCKEditingArea_Cleanup()
-{
- if ( this.Document )
- this.Document.body.innerHTML = "" ;
- this.TargetElement = null ;
- this.IFrame = null ;
- this.Document = null ;
- this.Textarea = null ;
-
- if ( this.Window )
- {
- this.Window._FCKEditingArea = null ;
- this.Window = null ;
- }
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckelementpath.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckelementpath.js
deleted file mode 100755
index 488b19f..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckelementpath.js
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * 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 ==
- *
- * Manages the DOM ascensors element list of a specific DOM node
- * (limited to body, inclusive).
- */
-
-var FCKElementPath = function( lastNode )
-{
- var eBlock = null ;
- var eBlockLimit = null ;
-
- var aElements = new Array() ;
-
- var e = lastNode ;
- while ( e )
- {
- if ( e.nodeType == 1 )
- {
- if ( !this.LastElement )
- this.LastElement = e ;
-
- var sElementName = e.nodeName.toLowerCase() ;
- if ( FCKBrowserInfo.IsIE && e.scopeName != 'HTML' )
- sElementName = e.scopeName.toLowerCase() + ':' + sElementName ;
-
- if ( !eBlockLimit )
- {
- if ( !eBlock && FCKListsLib.PathBlockElements[ sElementName ] != null )
- eBlock = e ;
-
- if ( FCKListsLib.PathBlockLimitElements[ sElementName ] != null )
- {
- // DIV is considered the Block, if no block is available (#525)
- // and if it doesn't contain other blocks.
- if ( !eBlock && sElementName == 'div' && !FCKElementPath._CheckHasBlock( e ) )
- eBlock = e ;
- else
- eBlockLimit = e ;
- }
- }
-
- aElements.push( e ) ;
-
- if ( sElementName == 'body' )
- break ;
- }
- e = e.parentNode ;
- }
-
- this.Block = eBlock ;
- this.BlockLimit = eBlockLimit ;
- this.Elements = aElements ;
-}
-
-/**
- * Check if an element contains any block element.
- */
-FCKElementPath._CheckHasBlock = function( element )
-{
- var childNodes = element.childNodes ;
-
- for ( var i = 0, count = childNodes.length ; i < count ; i++ )
- {
- var child = childNodes[i] ;
-
- if ( child.nodeType == 1 && FCKListsLib.BlockElements[ child.nodeName.toLowerCase() ] )
- return true ;
- }
-
- return false ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckenterkey.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckenterkey.js
deleted file mode 100755
index 8819a19..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckenterkey.js
+++ /dev/null
@@ -1,708 +0,0 @@
-/*
- * 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 ==
- *
- * Controls the [Enter] keystroke behavior in a document.
- */
-
-/*
- * Constructor.
- * @targetDocument : the target document.
- * @enterMode : the behavior for the keystroke.
- * May be "p", "div", "br". Default is "p".
- * @shiftEnterMode : the behavior for the + keystroke.
- * May be "p", "div", "br". Defaults to "br".
- */
-var FCKEnterKey = function( targetWindow, enterMode, shiftEnterMode, tabSpaces )
-{
- this.Window = targetWindow ;
- this.EnterMode = enterMode || 'p' ;
- this.ShiftEnterMode = shiftEnterMode || 'br' ;
-
- // Setup the Keystroke Handler.
- var oKeystrokeHandler = new FCKKeystrokeHandler( false ) ;
- oKeystrokeHandler._EnterKey = this ;
- oKeystrokeHandler.OnKeystroke = FCKEnterKey_OnKeystroke ;
-
- oKeystrokeHandler.SetKeystrokes( [
- [ 13 , 'Enter' ],
- [ SHIFT + 13, 'ShiftEnter' ],
- [ 8 , 'Backspace' ],
- [ CTRL + 8 , 'CtrlBackspace' ],
- [ 46 , 'Delete' ]
- ] ) ;
-
- this.TabText = '' ;
-
- // Safari by default inserts 4 spaces on TAB, while others make the editor
- // loose focus. So, we need to handle it here to not include those spaces.
- if ( tabSpaces > 0 || FCKBrowserInfo.IsSafari )
- {
- while ( tabSpaces-- )
- this.TabText += '\xa0' ;
-
- oKeystrokeHandler.SetKeystrokes( [ 9, 'Tab' ] );
- }
-
- oKeystrokeHandler.AttachToElement( targetWindow.document ) ;
-}
-
-
-function FCKEnterKey_OnKeystroke( keyCombination, keystrokeValue )
-{
- var oEnterKey = this._EnterKey ;
-
- try
- {
- switch ( keystrokeValue )
- {
- case 'Enter' :
- return oEnterKey.DoEnter() ;
- break ;
- case 'ShiftEnter' :
- return oEnterKey.DoShiftEnter() ;
- break ;
- case 'Backspace' :
- return oEnterKey.DoBackspace() ;
- break ;
- case 'Delete' :
- return oEnterKey.DoDelete() ;
- break ;
- case 'Tab' :
- return oEnterKey.DoTab() ;
- break ;
- case 'CtrlBackspace' :
- return oEnterKey.DoCtrlBackspace() ;
- break ;
- }
- }
- catch (e)
- {
- // If for any reason we are not able to handle it, go
- // ahead with the browser default behavior.
- }
-
- return false ;
-}
-
-/*
- * Executes the key behavior.
- */
-FCKEnterKey.prototype.DoEnter = function( mode, hasShift )
-{
- // Save an undo snapshot before doing anything
- FCKUndo.SaveUndoStep() ;
-
- this._HasShift = ( hasShift === true ) ;
-
- var parentElement = FCKSelection.GetParentElement() ;
- var parentPath = new FCKElementPath( parentElement ) ;
- var sMode = mode || this.EnterMode ;
-
- if ( sMode == 'br' || parentPath.Block && parentPath.Block.tagName.toLowerCase() == 'pre' )
- return this._ExecuteEnterBr() ;
- else
- return this._ExecuteEnterBlock( sMode ) ;
-}
-
-/*
- * Executes the + key behavior.
- */
-FCKEnterKey.prototype.DoShiftEnter = function()
-{
- return this.DoEnter( this.ShiftEnterMode, true ) ;
-}
-
-/*
- * Executes the key behavior.
- */
-FCKEnterKey.prototype.DoBackspace = function()
-{
- var bCustom = false ;
-
- // Get the current selection.
- var oRange = new FCKDomRange( this.Window ) ;
- oRange.MoveToSelection() ;
-
- // Kludge for #247
- if ( FCKBrowserInfo.IsIE && this._CheckIsAllContentsIncluded( oRange, this.Window.document.body ) )
- {
- this._FixIESelectAllBug( oRange ) ;
- return true ;
- }
-
- var isCollapsed = oRange.CheckIsCollapsed() ;
-
- if ( !isCollapsed )
- {
- // Bug #327, Backspace with an img selection would activate the default action in IE.
- // Let's override that with our logic here.
- if ( FCKBrowserInfo.IsIE && this.Window.document.selection.type.toLowerCase() == "control" )
- {
- var controls = this.Window.document.selection.createRange() ;
- for ( var i = controls.length - 1 ; i >= 0 ; i-- )
- {
- var el = controls.item( i ) ;
- el.parentNode.removeChild( el ) ;
- }
- return true ;
- }
-
- return false ;
- }
-
- // On IE, it is better for us handle the deletion if the caret is preceeded
- // by a (#1383).
- if ( FCKBrowserInfo.IsIE )
- {
- var previousElement = FCKDomTools.GetPreviousSourceElement( oRange.StartNode, true ) ;
-
- if ( previousElement && previousElement.nodeName.toLowerCase() == 'br' )
- {
- // Create a range that starts after the and ends at the
- // current range position.
- var testRange = oRange.Clone() ;
- testRange.SetStart( previousElement, 4 ) ;
-
- // If that range is empty, we can proceed cleaning that manually.
- if ( testRange.CheckIsEmpty() )
- {
- previousElement.parentNode.removeChild( previousElement ) ;
- return true ;
- }
- }
- }
-
- var oStartBlock = oRange.StartBlock ;
- var oEndBlock = oRange.EndBlock ;
-
- // The selection boundaries must be in the same "block limit" element
- if ( oRange.StartBlockLimit == oRange.EndBlockLimit && oStartBlock && oEndBlock )
- {
- if ( !isCollapsed )
- {
- var bEndOfBlock = oRange.CheckEndOfBlock() ;
-
- oRange.DeleteContents() ;
-
- if ( oStartBlock != oEndBlock )
- {
- oRange.SetStart(oEndBlock,1) ;
- oRange.SetEnd(oEndBlock,1) ;
-
-// if ( bEndOfBlock )
-// oEndBlock.parentNode.removeChild( oEndBlock ) ;
- }
-
- oRange.Select() ;
-
- bCustom = ( oStartBlock == oEndBlock ) ;
- }
-
- if ( oRange.CheckStartOfBlock() )
- {
- var oCurrentBlock = oRange.StartBlock ;
-
- var ePrevious = FCKDomTools.GetPreviousSourceElement( oCurrentBlock, true, [ 'BODY', oRange.StartBlockLimit.nodeName ], ['UL','OL'] ) ;
-
- bCustom = this._ExecuteBackspace( oRange, ePrevious, oCurrentBlock ) ;
- }
- else if ( FCKBrowserInfo.IsGeckoLike )
- {
- // Firefox and Opera (#1095) loose the selection when executing
- // CheckStartOfBlock, so we must reselect.
- oRange.Select() ;
- }
- }
-
- oRange.Release() ;
- return bCustom ;
-}
-
-FCKEnterKey.prototype.DoCtrlBackspace = function()
-{
- FCKUndo.SaveUndoStep() ;
- var oRange = new FCKDomRange( this.Window ) ;
- oRange.MoveToSelection() ;
- if ( FCKBrowserInfo.IsIE && this._CheckIsAllContentsIncluded( oRange, this.Window.document.body ) )
- {
- this._FixIESelectAllBug( oRange ) ;
- return true ;
- }
- return false ;
-}
-
-FCKEnterKey.prototype._ExecuteBackspace = function( range, previous, currentBlock )
-{
- var bCustom = false ;
-
- // We could be in a nested LI.
- if ( !previous && currentBlock && currentBlock.nodeName.IEquals( 'LI' ) && currentBlock.parentNode.parentNode.nodeName.IEquals( 'LI' ) )
- {
- this._OutdentWithSelection( currentBlock, range ) ;
- return true ;
- }
-
- if ( previous && previous.nodeName.IEquals( 'LI' ) )
- {
- var oNestedList = FCKDomTools.GetLastChild( previous, ['UL','OL'] ) ;
-
- while ( oNestedList )
- {
- previous = FCKDomTools.GetLastChild( oNestedList, 'LI' ) ;
- oNestedList = FCKDomTools.GetLastChild( previous, ['UL','OL'] ) ;
- }
- }
-
- if ( previous && currentBlock )
- {
- // If we are in a LI, and the previous block is not an LI, we must outdent it.
- if ( currentBlock.nodeName.IEquals( 'LI' ) && !previous.nodeName.IEquals( 'LI' ) )
- {
- this._OutdentWithSelection( currentBlock, range ) ;
- return true ;
- }
-
- // Take a reference to the parent for post processing cleanup.
- var oCurrentParent = currentBlock.parentNode ;
-
- var sPreviousName = previous.nodeName.toLowerCase() ;
- if ( FCKListsLib.EmptyElements[ sPreviousName ] != null || sPreviousName == 'table' )
- {
- FCKDomTools.RemoveNode( previous ) ;
- bCustom = true ;
- }
- else
- {
- // Remove the current block.
- FCKDomTools.RemoveNode( currentBlock ) ;
-
- // Remove any empty tag left by the block removal.
- while ( oCurrentParent.innerHTML.Trim().length == 0 )
- {
- var oParent = oCurrentParent.parentNode ;
- oParent.removeChild( oCurrentParent ) ;
- oCurrentParent = oParent ;
- }
-
- // Cleanup the previous and the current elements.
- FCKDomTools.LTrimNode( currentBlock ) ;
- FCKDomTools.RTrimNode( previous ) ;
-
- // Append a space to the previous.
- // Maybe it is not always desirable...
- // previous.appendChild( this.Window.document.createTextNode( ' ' ) ) ;
-
- // Set the range to the end of the previous element and bookmark it.
- range.SetStart( previous, 2, true ) ;
- range.Collapse( true ) ;
- var oBookmark = range.CreateBookmark( true ) ;
-
- // Move the contents of the block to the previous element and delete it.
- // But for some block types (e.g. table), moving the children to the previous block makes no sense.
- // So a check is needed. (See #1081)
- if ( ! currentBlock.tagName.IEquals( [ 'TABLE' ] ) )
- FCKDomTools.MoveChildren( currentBlock, previous ) ;
-
- // Place the selection at the bookmark.
- range.SelectBookmark( oBookmark ) ;
-
- bCustom = true ;
- }
- }
-
- return bCustom ;
-}
-
-/*
- * Executes the key behavior.
- */
-FCKEnterKey.prototype.DoDelete = function()
-{
- // Save an undo snapshot before doing anything
- // This is to conform with the behavior seen in MS Word
- FCKUndo.SaveUndoStep() ;
-
- // The has the same effect as the , so we have the same
- // results if we just move to the next block and apply the same logic.
-
- var bCustom = false ;
-
- // Get the current selection.
- var oRange = new FCKDomRange( this.Window ) ;
- oRange.MoveToSelection() ;
-
- // Kludge for #247
- if ( FCKBrowserInfo.IsIE && this._CheckIsAllContentsIncluded( oRange, this.Window.document.body ) )
- {
- this._FixIESelectAllBug( oRange ) ;
- return true ;
- }
-
- // There is just one special case for collapsed selections at the end of a block.
- if ( oRange.CheckIsCollapsed() && oRange.CheckEndOfBlock( FCKBrowserInfo.IsGeckoLike ) )
- {
- var oCurrentBlock = oRange.StartBlock ;
- var eCurrentCell = FCKTools.GetElementAscensor( oCurrentBlock, 'td' );
-
- var eNext = FCKDomTools.GetNextSourceElement( oCurrentBlock, true, [ oRange.StartBlockLimit.nodeName ],
- ['UL','OL','TR'], true ) ;
-
- // Bug #1323 : if we're in a table cell, and the next node belongs to a different cell, then don't
- // delete anything.
- if ( eCurrentCell )
- {
- var eNextCell = FCKTools.GetElementAscensor( eNext, 'td' );
- if ( eNextCell != eCurrentCell )
- return true ;
- }
-
- bCustom = this._ExecuteBackspace( oRange, oCurrentBlock, eNext ) ;
- }
-
- oRange.Release() ;
- return bCustom ;
-}
-
-/*
- * Executes the key behavior.
- */
-FCKEnterKey.prototype.DoTab = function()
-{
- var oRange = new FCKDomRange( this.Window );
- oRange.MoveToSelection() ;
-
- // If the user pressed inside a table, we should give him the default behavior ( moving between cells )
- // instead of giving him more non-breaking spaces. (Bug #973)
- var node = oRange._Range.startContainer ;
- while ( node )
- {
- if ( node.nodeType == 1 )
- {
- var tagName = node.tagName.toLowerCase() ;
- if ( tagName == "tr" || tagName == "td" || tagName == "th" || tagName == "tbody" || tagName == "table" )
- return false ;
- else
- break ;
- }
- node = node.parentNode ;
- }
-
- if ( this.TabText )
- {
- oRange.DeleteContents() ;
- oRange.InsertNode( this.Window.document.createTextNode( this.TabText ) ) ;
- oRange.Collapse( false ) ;
- oRange.Select() ;
- }
- return true ;
-}
-
-FCKEnterKey.prototype._ExecuteEnterBlock = function( blockTag, range )
-{
- // Get the current selection.
- var oRange = range || new FCKDomRange( this.Window ) ;
-
- var oSplitInfo = oRange.SplitBlock( blockTag ) ;
-
- if ( oSplitInfo )
- {
- // Get the current blocks.
- var ePreviousBlock = oSplitInfo.PreviousBlock ;
- var eNextBlock = oSplitInfo.NextBlock ;
-
- var bIsStartOfBlock = oSplitInfo.WasStartOfBlock ;
- var bIsEndOfBlock = oSplitInfo.WasEndOfBlock ;
-
- // If there is one block under a list item, modify the split so that the list item gets split as well. (Bug #1647)
- if ( eNextBlock )
- {
- if ( eNextBlock.parentNode.nodeName.IEquals( 'li' ) )
- {
- FCKDomTools.BreakParent( eNextBlock, eNextBlock.parentNode ) ;
- FCKDomTools.MoveNode( eNextBlock, eNextBlock.nextSibling, true ) ;
- }
- }
- else if ( ePreviousBlock && ePreviousBlock.parentNode.nodeName.IEquals( 'li' ) )
- {
- FCKDomTools.BreakParent( ePreviousBlock, ePreviousBlock.parentNode ) ;
- oRange.MoveToElementEditStart( ePreviousBlock.nextSibling );
- FCKDomTools.MoveNode( ePreviousBlock, ePreviousBlock.previousSibling ) ;
- }
-
- // If we have both the previous and next blocks, it means that the
- // boundaries were on separated blocks, or none of them where on the
- // block limits (start/end).
- if ( !bIsStartOfBlock && !bIsEndOfBlock )
- {
- // If the next block is an with another list tree as the first child
- // We'll need to append a placeholder or the list item wouldn't be editable. (Bug #1420)
- if ( eNextBlock.nodeName.IEquals( 'li' ) && eNextBlock.firstChild
- && eNextBlock.firstChild.nodeName.IEquals( ['ul', 'ol'] ) )
- eNextBlock.insertBefore( FCKTools.GetElementDocument( eNextBlock ).createTextNode( '\xa0' ), eNextBlock.firstChild ) ;
- // Move the selection to the end block.
- if ( eNextBlock )
- oRange.MoveToElementEditStart( eNextBlock ) ;
- }
- else
- {
- if ( bIsStartOfBlock && bIsEndOfBlock && ePreviousBlock.tagName.toUpperCase() == 'LI' )
- {
- oRange.MoveToElementStart( ePreviousBlock ) ;
- this._OutdentWithSelection( ePreviousBlock, oRange ) ;
- oRange.Release() ;
- return true ;
- }
-
- var eNewBlock ;
-
- if ( ePreviousBlock )
- {
- var sPreviousBlockTag = ePreviousBlock.tagName.toUpperCase() ;
-
- // If is a header tag, or we are in a Shift+Enter (#77),
- // create a new block element (later in the code).
- if ( !this._HasShift && !(/^H[1-6]$/).test( sPreviousBlockTag ) )
- {
- // Otherwise, duplicate the previous block.
- eNewBlock = FCKDomTools.CloneElement( ePreviousBlock ) ;
- }
- }
- else if ( eNextBlock )
- eNewBlock = FCKDomTools.CloneElement( eNextBlock ) ;
-
- if ( !eNewBlock )
- eNewBlock = this.Window.document.createElement( blockTag ) ;
-
- // Recreate the inline elements tree, which was available
- // before the hitting enter, so the same styles will be
- // available in the new block.
- var elementPath = oSplitInfo.ElementPath ;
- if ( elementPath )
- {
- for ( var i = 0, len = elementPath.Elements.length ; i < len ; i++ )
- {
- var element = elementPath.Elements[i] ;
-
- if ( element == elementPath.Block || element == elementPath.BlockLimit )
- break ;
-
- if ( FCKListsLib.InlineChildReqElements[ element.nodeName.toLowerCase() ] )
- {
- element = FCKDomTools.CloneElement( element ) ;
- FCKDomTools.MoveChildren( eNewBlock, element ) ;
- eNewBlock.appendChild( element ) ;
- }
- }
- }
-
- if ( FCKBrowserInfo.IsGeckoLike )
- FCKTools.AppendBogusBr( eNewBlock ) ;
-
- oRange.InsertNode( eNewBlock ) ;
-
- // This is tricky, but to make the new block visible correctly
- // we must select it.
- if ( FCKBrowserInfo.IsIE )
- {
- // Move the selection to the new block.
- oRange.MoveToElementEditStart( eNewBlock ) ;
- oRange.Select() ;
- }
-
- // Move the selection to the new block.
- oRange.MoveToElementEditStart( bIsStartOfBlock && !bIsEndOfBlock ? eNextBlock : eNewBlock ) ;
- }
-
- if ( FCKBrowserInfo.IsGeckoLike )
- {
- if ( eNextBlock )
- {
- // If we have split the block, adds a temporary span at the
- // range position and scroll relatively to it.
- var tmpNode = this.Window.document.createElement( 'span' ) ;
-
- // We need some content for Safari.
- tmpNode.innerHTML = ' ';
-
- oRange.InsertNode( tmpNode ) ;
- FCKDomTools.ScrollIntoView( tmpNode, false ) ;
- oRange.DeleteContents() ;
- }
- else
- {
- // We may use the above scroll logic for the new block case
- // too, but it gives some weird result with Opera.
- FCKDomTools.ScrollIntoView( eNextBlock || eNewBlock, false ) ;
- }
- }
-
- oRange.Select() ;
- }
-
- // Release the resources used by the range.
- oRange.Release() ;
-
- return true ;
-}
-
-FCKEnterKey.prototype._ExecuteEnterBr = function( blockTag )
-{
- // Get the current selection.
- var oRange = new FCKDomRange( this.Window ) ;
- oRange.MoveToSelection() ;
-
- // The selection boundaries must be in the same "block limit" element.
- if ( oRange.StartBlockLimit == oRange.EndBlockLimit )
- {
- oRange.DeleteContents() ;
-
- // Get the new selection (it is collapsed at this point).
- oRange.MoveToSelection() ;
-
- var bIsStartOfBlock = oRange.CheckStartOfBlock() ;
- var bIsEndOfBlock = oRange.CheckEndOfBlock() ;
-
- var sStartBlockTag = oRange.StartBlock ? oRange.StartBlock.tagName.toUpperCase() : '' ;
-
- var bHasShift = this._HasShift ;
- var bIsPre = false ;
-
- if ( !bHasShift && sStartBlockTag == 'LI' )
- return this._ExecuteEnterBlock( null, oRange ) ;
-
- // If we are at the end of a header block.
- if ( !bHasShift && bIsEndOfBlock && (/^H[1-6]$/).test( sStartBlockTag ) )
- {
- // Insert a BR after the current paragraph.
- FCKDomTools.InsertAfterNode( oRange.StartBlock, this.Window.document.createElement( 'br' ) ) ;
-
- // The space is required by Gecko only to make the cursor blink.
- if ( FCKBrowserInfo.IsGecko )
- FCKDomTools.InsertAfterNode( oRange.StartBlock, this.Window.document.createTextNode( '' ) ) ;
-
- // IE and Gecko have different behaviors regarding the position.
- oRange.SetStart( oRange.StartBlock.nextSibling, FCKBrowserInfo.IsIE ? 3 : 1 ) ;
- }
- else
- {
- var eLineBreak ;
- bIsPre = sStartBlockTag.IEquals( 'pre' ) ;
- if ( bIsPre )
- eLineBreak = this.Window.document.createTextNode( FCKBrowserInfo.IsIE ? '\r' : '\n' ) ;
- else
- eLineBreak = this.Window.document.createElement( 'br' ) ;
-
- oRange.InsertNode( eLineBreak ) ;
-
- // The space is required by Gecko only to make the cursor blink.
- if ( FCKBrowserInfo.IsGecko )
- FCKDomTools.InsertAfterNode( eLineBreak, this.Window.document.createTextNode( '' ) ) ;
-
- // If we are at the end of a block, we must be sure the bogus node is available in that block.
- if ( bIsEndOfBlock && FCKBrowserInfo.IsGeckoLike )
- FCKTools.AppendBogusBr( eLineBreak.parentNode ) ;
-
- if ( FCKBrowserInfo.IsIE )
- oRange.SetStart( eLineBreak, 4 ) ;
- else
- oRange.SetStart( eLineBreak.nextSibling, 1 ) ;
-
- if ( ! FCKBrowserInfo.IsIE )
- {
- var dummy = null ;
- if ( FCKBrowserInfo.IsOpera )
- dummy = this.Window.document.createElement( 'span' ) ;
- else
- dummy = this.Window.document.createElement( 'br' ) ;
-
- eLineBreak.parentNode.insertBefore( dummy, eLineBreak.nextSibling ) ;
-
- FCKDomTools.ScrollIntoView( dummy, false ) ;
-
- dummy.parentNode.removeChild( dummy ) ;
- }
- }
-
- // This collapse guarantees the cursor will be blinking.
- oRange.Collapse( true ) ;
-
- oRange.Select( bIsPre ) ;
- }
-
- // Release the resources used by the range.
- oRange.Release() ;
-
- return true ;
-}
-
-// Outdents a LI, maintaining the selection defined on a range.
-FCKEnterKey.prototype._OutdentWithSelection = function( li, range )
-{
- var oBookmark = range.CreateBookmark() ;
-
- FCKListHandler.OutdentListItem( li ) ;
-
- range.MoveToBookmark( oBookmark ) ;
- range.Select() ;
-}
-
-// Is all the contents under a node included by a range?
-FCKEnterKey.prototype._CheckIsAllContentsIncluded = function( range, node )
-{
- var startOk = false ;
- var endOk = false ;
-
- /*
- FCKDebug.Output( 'sc='+range.StartContainer.nodeName+
- ',so='+range._Range.startOffset+
- ',ec='+range.EndContainer.nodeName+
- ',eo='+range._Range.endOffset ) ;
- */
- if ( range.StartContainer == node || range.StartContainer == node.firstChild )
- startOk = ( range._Range.startOffset == 0 ) ;
-
- if ( range.EndContainer == node || range.EndContainer == node.lastChild )
- {
- var nodeLength = range.EndContainer.nodeType == 3 ? range.EndContainer.length : range.EndContainer.childNodes.length ;
- endOk = ( range._Range.endOffset == nodeLength ) ;
- }
-
- return startOk && endOk ;
-}
-
-// Kludge for #247
-FCKEnterKey.prototype._FixIESelectAllBug = function( range )
-{
- var doc = this.Window.document ;
- doc.body.innerHTML = '' ;
- var editBlock ;
- if ( FCKConfig.EnterMode.IEquals( ['div', 'p'] ) )
- {
- editBlock = doc.createElement( FCKConfig.EnterMode ) ;
- doc.body.appendChild( editBlock ) ;
- }
- else
- editBlock = doc.body ;
-
- range.MoveToNodeContents( editBlock ) ;
- range.Collapse( true ) ;
- range.Select() ;
- range.Release() ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckevents.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckevents.js
deleted file mode 100755
index 0bae94d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckevents.js
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * 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 ==
- *
- * FCKEvents Class: used to handle events is a advanced way.
- */
-
-var FCKEvents = function( eventsOwner )
-{
- this.Owner = eventsOwner ;
- this._RegisteredEvents = new Object() ;
-}
-
-FCKEvents.prototype.AttachEvent = function( eventName, functionPointer )
-{
- var aTargets ;
-
- if ( !( aTargets = this._RegisteredEvents[ eventName ] ) )
- this._RegisteredEvents[ eventName ] = [ functionPointer ] ;
- else
- {
- // Check that the event handler isn't already registered with the same listener
- // It doesn't detect function pointers belonging to an object (at least in Gecko)
- if ( aTargets.IndexOf( functionPointer ) == -1 )
- aTargets.push( functionPointer ) ;
- }
-}
-
-FCKEvents.prototype.FireEvent = function( eventName, params )
-{
- var bReturnValue = true ;
-
- var oCalls = this._RegisteredEvents[ eventName ] ;
-
- if ( oCalls )
- {
- for ( var i = 0 ; i < oCalls.length ; i++ )
- {
- try
- {
- bReturnValue = ( oCalls[ i ]( this.Owner, params ) && bReturnValue ) ;
- }
- catch(e)
- {
- // Ignore the following error. It may happen if pointing to a
- // script not anymore available (#934):
- // -2146823277 = Can't execute code from a freed script
- if ( e.number != -2146823277 )
- throw e ;
- }
- }
- }
-
- return bReturnValue ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckhtmliterator.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckhtmliterator.js
deleted file mode 100755
index 2fb3a90..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckhtmliterator.js
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * 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 ==
- *
- * This class can be used to interate through nodes inside a range.
- *
- * During interation, the provided range can become invalid, due to document
- * mutations, so CreateBookmark() used to restore it after processing, if
- * needed.
- */
-
-var FCKHtmlIterator = function( source )
-{
- this._sourceHtml = source ;
-}
-FCKHtmlIterator.prototype =
-{
- Next : function()
- {
- var sourceHtml = this._sourceHtml ;
- if ( sourceHtml == null )
- return null ;
-
- var match = FCKRegexLib.HtmlTag.exec( sourceHtml ) ;
- var isTag = false ;
- var value = "" ;
- if ( match )
- {
- if ( match.index > 0 )
- {
- value = sourceHtml.substr( 0, match.index ) ;
- this._sourceHtml = sourceHtml.substr( match.index ) ;
- }
- else
- {
- isTag = true ;
- value = match[0] ;
- this._sourceHtml = sourceHtml.substr( match[0].length ) ;
- }
- }
- else
- {
- value = sourceHtml ;
- this._sourceHtml = null ;
- }
- return { 'isTag' : isTag, 'value' : value } ;
- },
-
- Each : function( func )
- {
- var chunk ;
- while ( ( chunk = this.Next() ) )
- func( chunk.isTag, chunk.value ) ;
- }
-} ;
-/*
- * 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 ==
- *
- * This class can be used to interate through nodes inside a range.
- *
- * During interation, the provided range can become invalid, due to document
- * mutations, so CreateBookmark() used to restore it after processing, if
- * needed.
- */
-
-var FCKHtmlIterator = function( source )
-{
- this._sourceHtml = source ;
-}
-FCKHtmlIterator.prototype =
-{
- Next : function()
- {
- var sourceHtml = this._sourceHtml ;
- if ( sourceHtml == null )
- return null ;
-
- var match = FCKRegexLib.HtmlTag.exec( sourceHtml ) ;
- var isTag = false ;
- var value = "" ;
- if ( match )
- {
- if ( match.index > 0 )
- {
- value = sourceHtml.substr( 0, match.index ) ;
- this._sourceHtml = sourceHtml.substr( match.index ) ;
- }
- else
- {
- isTag = true ;
- value = match[0] ;
- this._sourceHtml = sourceHtml.substr( match[0].length ) ;
- }
- }
- else
- {
- value = sourceHtml ;
- this._sourceHtml = null ;
- }
- return { 'isTag' : isTag, 'value' : value } ;
- },
-
- Each : function( func )
- {
- var chunk ;
- while ( ( chunk = this.Next() ) )
- func( chunk.isTag, chunk.value ) ;
- }
-} ;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckicon.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckicon.js
deleted file mode 100755
index be1bde0..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckicon.js
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * 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 ==
- *
- * FCKIcon Class: renders an icon from a single image, a strip or even a
- * spacer.
- */
-
-var FCKIcon = function( iconPathOrStripInfoArray )
-{
- var sTypeOf = iconPathOrStripInfoArray ? typeof( iconPathOrStripInfoArray ) : 'undefined' ;
- switch ( sTypeOf )
- {
- case 'number' :
- this.Path = FCKConfig.SkinPath + 'fck_strip.gif' ;
- this.Size = 16 ;
- this.Position = iconPathOrStripInfoArray ;
- break ;
-
- case 'undefined' :
- this.Path = FCK_SPACER_PATH ;
- break ;
-
- case 'string' :
- this.Path = iconPathOrStripInfoArray ;
- break ;
-
- default :
- // It is an array in the format [ StripFilePath, IconSize, IconPosition ]
- this.Path = iconPathOrStripInfoArray[0] ;
- this.Size = iconPathOrStripInfoArray[1] ;
- this.Position = iconPathOrStripInfoArray[2] ;
- }
-}
-
-FCKIcon.prototype.CreateIconElement = function( document )
-{
- var eIcon, eIconImage ;
-
- if ( this.Position ) // It is using an icons strip image.
- {
- var sPos = '-' + ( ( this.Position - 1 ) * this.Size ) + 'px' ;
-
- if ( FCKBrowserInfo.IsIE )
- {
- //
-
- eIcon = document.createElement( 'DIV' ) ;
-
- eIconImage = eIcon.appendChild( document.createElement( 'IMG' ) ) ;
- eIconImage.src = this.Path ;
- eIconImage.style.top = sPos ;
- }
- else
- {
- //
-
- eIcon = document.createElement( 'IMG' ) ;
- eIcon.src = FCK_SPACER_PATH ;
- eIcon.style.backgroundPosition = '0px ' + sPos ;
- eIcon.style.backgroundImage = 'url("' + this.Path + '")' ;
- }
- }
- else // It is using a single icon image.
- {
- if ( FCKBrowserInfo.IsIE )
- {
- // IE makes the button 1px higher if using the directly, so we
- // are changing to the system to clip the image correctly.
- eIcon = document.createElement( 'DIV' ) ;
-
- eIconImage = eIcon.appendChild( document.createElement( 'IMG' ) ) ;
- eIconImage.src = this.Path ? this.Path : FCK_SPACER_PATH ;
- }
- else
- {
- // This is not working well with IE. See notes above.
- //
- eIcon = document.createElement( 'IMG' ) ;
- eIcon.src = this.Path ? this.Path : FCK_SPACER_PATH ;
- }
- }
-
- eIcon.className = 'TB_Button_Image' ;
-
- return eIcon ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckiecleanup.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckiecleanup.js
deleted file mode 100755
index e25d648..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckiecleanup.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * 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 ==
- *
- * FCKIECleanup Class: a generic class used as a tool to remove IE leaks.
- */
-
-var FCKIECleanup = function( attachWindow )
-{
- // If the attachWindow already have a cleanup object, just use that one.
- if ( attachWindow._FCKCleanupObj )
- this.Items = attachWindow._FCKCleanupObj.Items ;
- else
- {
- this.Items = new Array() ;
-
- attachWindow._FCKCleanupObj = this ;
- FCKTools.AddEventListenerEx( attachWindow, 'unload', FCKIECleanup_Cleanup ) ;
-// attachWindow.attachEvent( 'onunload', FCKIECleanup_Cleanup ) ;
- }
-}
-
-FCKIECleanup.prototype.AddItem = function( dirtyItem, cleanupFunction )
-{
- this.Items.push( [ dirtyItem, cleanupFunction ] ) ;
-}
-
-function FCKIECleanup_Cleanup()
-{
- if ( !this._FCKCleanupObj || ( FCKConfig.MsWebBrowserControlCompat && !window.FCKUnloadFlag ) )
- return ;
-
- var aItems = this._FCKCleanupObj.Items ;
-
- while ( aItems.length > 0 )
- {
-
- // It is important to remove from the end to the beginning (pop()),
- // because of the order things get created in the editor. In the code,
- // elements in deeper position in the DOM are placed at the end of the
- // cleanup function, so we must cleanup then first, otherwise IE could
- // throw some crazy memory errors (IE bug).
- var oItem = aItems.pop() ;
- if ( oItem )
- oItem[1].call( oItem[0] ) ;
- }
-
- this._FCKCleanupObj = null ;
-
- if ( CollectGarbage )
- CollectGarbage() ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckimagepreloader.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckimagepreloader.js
deleted file mode 100755
index b5f0a47..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckimagepreloader.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * 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 ==
- *
- * Preload a list of images, firing an event when complete.
- */
-
-var FCKImagePreloader = function()
-{
- this._Images = new Array() ;
-}
-
-FCKImagePreloader.prototype =
-{
- AddImages : function( images )
- {
- if ( typeof( images ) == 'string' )
- images = images.split( ';' ) ;
-
- this._Images = this._Images.concat( images ) ;
- },
-
- Start : function()
- {
- var aImages = this._Images ;
- this._PreloadCount = aImages.length ;
-
- for ( var i = 0 ; i < aImages.length ; i++ )
- {
- var eImg = document.createElement( 'img' ) ;
- FCKTools.AddEventListenerEx( eImg, 'load', _FCKImagePreloader_OnImage, this ) ;
- FCKTools.AddEventListenerEx( eImg, 'error', _FCKImagePreloader_OnImage, this ) ;
- eImg.src = aImages[i] ;
-
- _FCKImagePreloader_ImageCache.push( eImg ) ;
- }
- }
-};
-
-// All preloaded images must be placed in a global array, otherwise the preload
-// magic will not happen.
-var _FCKImagePreloader_ImageCache = new Array() ;
-
-function _FCKImagePreloader_OnImage( ev, imagePreloader )
-{
- if ( (--imagePreloader._PreloadCount) == 0 && imagePreloader.OnComplete )
- imagePreloader.OnComplete() ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckkeystrokehandler.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckkeystrokehandler.js
deleted file mode 100755
index dadd05a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckkeystrokehandler.js
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * 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 ==
- *
- * Control keyboard keystroke combinations.
- */
-
-var FCKKeystrokeHandler = function( cancelCtrlDefaults )
-{
- this.Keystrokes = new Object() ;
- this.CancelCtrlDefaults = ( cancelCtrlDefaults !== false ) ;
-}
-
-/*
- * Listen to keystroke events in an element or DOM document object.
- * @target: The element or document to listen to keystroke events.
- */
-FCKKeystrokeHandler.prototype.AttachToElement = function( target )
-{
- // For newer browsers, it is enough to listen to the keydown event only.
- // Some browsers instead, don't cancel key events in the keydown, but in the
- // keypress. So we must do a longer trip in those cases.
- FCKTools.AddEventListenerEx( target, 'keydown', _FCKKeystrokeHandler_OnKeyDown, this ) ;
- if ( FCKBrowserInfo.IsGecko10 || FCKBrowserInfo.IsOpera || ( FCKBrowserInfo.IsGecko && FCKBrowserInfo.IsMac ) )
- FCKTools.AddEventListenerEx( target, 'keypress', _FCKKeystrokeHandler_OnKeyPress, this ) ;
-}
-
-/*
- * Sets a list of keystrokes. It can receive either a single array or "n"
- * arguments, each one being an array of 1 or 2 elemenst. The first element
- * is the keystroke combination, and the second is the value to assign to it.
- * If the second element is missing, the keystroke definition is removed.
- */
-FCKKeystrokeHandler.prototype.SetKeystrokes = function()
-{
- // Look through the arguments.
- for ( var i = 0 ; i < arguments.length ; i++ )
- {
- var keyDef = arguments[i] ;
-
- // If the configuration for the keystrokes is missing some element or has any extra comma
- // this item won't be valid, so skip it and keep on processing.
- if ( !keyDef )
- continue ;
-
- if ( typeof( keyDef[0] ) == 'object' ) // It is an array with arrays defining the keystrokes.
- this.SetKeystrokes.apply( this, keyDef ) ;
- else
- {
- if ( keyDef.length == 1 ) // If it has only one element, remove the keystroke.
- delete this.Keystrokes[ keyDef[0] ] ;
- else // Otherwise add it.
- this.Keystrokes[ keyDef[0] ] = keyDef[1] === true ? true : keyDef ;
- }
- }
-}
-
-function _FCKKeystrokeHandler_OnKeyDown( ev, keystrokeHandler )
-{
- // Get the key code.
- var keystroke = ev.keyCode || ev.which ;
-
- // Combine it with the CTRL, SHIFT and ALT states.
- var keyModifiers = 0 ;
-
- if ( ev.ctrlKey || ev.metaKey )
- keyModifiers += CTRL ;
-
- if ( ev.shiftKey )
- keyModifiers += SHIFT ;
-
- if ( ev.altKey )
- keyModifiers += ALT ;
-
- var keyCombination = keystroke + keyModifiers ;
-
- var cancelIt = keystrokeHandler._CancelIt = false ;
-
- // Look for its definition availability.
- var keystrokeValue = keystrokeHandler.Keystrokes[ keyCombination ] ;
-
-// FCKDebug.Output( 'KeyDown: ' + keyCombination + ' - Value: ' + keystrokeValue ) ;
-
- // If the keystroke is defined
- if ( keystrokeValue )
- {
- // If the keystroke has been explicitly set to "true" OR calling the
- // "OnKeystroke" event, it doesn't return "true", the default behavior
- // must be preserved.
- if ( keystrokeValue === true || !( keystrokeHandler.OnKeystroke && keystrokeHandler.OnKeystroke.apply( keystrokeHandler, keystrokeValue ) ) )
- return true ;
-
- cancelIt = true ;
- }
-
- // By default, it will cancel all combinations with the CTRL key only (except positioning keys).
- if ( cancelIt || ( keystrokeHandler.CancelCtrlDefaults && keyModifiers == CTRL && ( keystroke < 33 || keystroke > 40 ) ) )
- {
- keystrokeHandler._CancelIt = true ;
-
- if ( ev.preventDefault )
- return ev.preventDefault() ;
-
- ev.returnValue = false ;
- ev.cancelBubble = true ;
- return false ;
- }
-
- return true ;
-}
-
-function _FCKKeystrokeHandler_OnKeyPress( ev, keystrokeHandler )
-{
- if ( keystrokeHandler._CancelIt )
- {
-// FCKDebug.Output( 'KeyPress Cancel', 'Red') ;
-
- if ( ev.preventDefault )
- return ev.preventDefault() ;
-
- return false ;
- }
-
- return true ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenublock.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenublock.js
deleted file mode 100755
index e26858a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenublock.js
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * 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 ==
- *
- * Renders a list of menu items.
- */
-
-var FCKMenuBlock = function()
-{
- this._Items = new Array() ;
-}
-
-
-FCKMenuBlock.prototype.Count = function()
-{
- return this._Items.length ;
-}
-
-FCKMenuBlock.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, customData )
-{
- var oItem = new FCKMenuItem( this, name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, customData ) ;
-
- oItem.OnClick = FCKTools.CreateEventListener( FCKMenuBlock_Item_OnClick, this ) ;
- oItem.OnActivate = FCKTools.CreateEventListener( FCKMenuBlock_Item_OnActivate, this ) ;
-
- this._Items.push( oItem ) ;
-
- return oItem ;
-}
-
-FCKMenuBlock.prototype.AddSeparator = function()
-{
- this._Items.push( new FCKMenuSeparator() ) ;
-}
-
-FCKMenuBlock.prototype.RemoveAllItems = function()
-{
- this._Items = new Array() ;
-
- var eItemsTable = this._ItemsTable ;
- if ( eItemsTable )
- {
- while ( eItemsTable.rows.length > 0 )
- eItemsTable.deleteRow( 0 ) ;
- }
-}
-
-FCKMenuBlock.prototype.Create = function( parentElement )
-{
- if ( !this._ItemsTable )
- {
- if ( FCK.IECleanup )
- FCK.IECleanup.AddItem( this, FCKMenuBlock_Cleanup ) ;
-
- this._Window = FCKTools.GetElementWindow( parentElement ) ;
-
- var oDoc = FCKTools.GetElementDocument( parentElement ) ;
-
- var eTable = parentElement.appendChild( oDoc.createElement( 'table' ) ) ;
- eTable.cellPadding = 0 ;
- eTable.cellSpacing = 0 ;
-
- FCKTools.DisableSelection( eTable ) ;
-
- var oMainElement = eTable.insertRow(-1).insertCell(-1) ;
- oMainElement.className = 'MN_Menu' ;
-
- var eItemsTable = this._ItemsTable = oMainElement.appendChild( oDoc.createElement( 'table' ) ) ;
- eItemsTable.cellPadding = 0 ;
- eItemsTable.cellSpacing = 0 ;
- }
-
- for ( var i = 0 ; i < this._Items.length ; i++ )
- this._Items[i].Create( this._ItemsTable ) ;
-}
-
-/* Events */
-
-function FCKMenuBlock_Item_OnClick( clickedItem, menuBlock )
-{
- if ( menuBlock.Hide )
- menuBlock.Hide() ;
-
- FCKTools.RunFunction( menuBlock.OnClick, menuBlock, [ clickedItem ] ) ;
-}
-
-function FCKMenuBlock_Item_OnActivate( menuBlock )
-{
- var oActiveItem = menuBlock._ActiveItem ;
-
- if ( oActiveItem && oActiveItem != this )
- {
- // Set the focus to this menu block window (to fire OnBlur on opened panels).
- if ( !FCKBrowserInfo.IsIE && oActiveItem.HasSubMenu && !this.HasSubMenu )
- {
- menuBlock._Window.focus() ;
-
- // Due to the event model provided by Opera, we need to set
- // HasFocus here as the above focus() call will not fire the focus
- // event in the panel immediately (#1200).
- menuBlock.Panel.HasFocus = true ;
- }
-
- oActiveItem.Deactivate() ;
- }
-
- menuBlock._ActiveItem = this ;
-}
-
-function FCKMenuBlock_Cleanup()
-{
- this._Window = null ;
- this._ItemsTable = null ;
-}
-
-// ################# //
-
-var FCKMenuSeparator = function()
-{}
-
-FCKMenuSeparator.prototype.Create = function( parentTable )
-{
- var oDoc = FCKTools.GetElementDocument( parentTable ) ;
-
- var r = parentTable.insertRow(-1) ;
-
- var eCell = r.insertCell(-1) ;
- eCell.className = 'MN_Separator MN_Icon' ;
-
- eCell = r.insertCell(-1) ;
- eCell.className = 'MN_Separator' ;
- eCell.appendChild( oDoc.createElement( 'DIV' ) ).className = 'MN_Separator_Line' ;
-
- eCell = r.insertCell(-1) ;
- eCell.className = 'MN_Separator' ;
- eCell.appendChild( oDoc.createElement( 'DIV' ) ).className = 'MN_Separator_Line' ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenublockpanel.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenublockpanel.js
deleted file mode 100755
index 86e4c58..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenublockpanel.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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 ==
- *
- * This class is a menu block that behaves like a panel. It's a mix of the
- * FCKMenuBlock and FCKPanel classes.
- */
-
-var FCKMenuBlockPanel = function()
-{
- // Call the "base" constructor.
- FCKMenuBlock.call( this ) ;
-}
-
-FCKMenuBlockPanel.prototype = new FCKMenuBlock() ;
-
-
-// Override the create method.
-FCKMenuBlockPanel.prototype.Create = function()
-{
- var oPanel = this.Panel = ( this.Parent && this.Parent.Panel ? this.Parent.Panel.CreateChildPanel() : new FCKPanel() ) ;
- oPanel.AppendStyleSheet( FCKConfig.SkinEditorCSS ) ;
-
- // Call the "base" implementation.
- FCKMenuBlock.prototype.Create.call( this, oPanel.MainNode ) ;
-}
-
-FCKMenuBlockPanel.prototype.Show = function( x, y, relElement )
-{
- if ( !this.Panel.CheckIsOpened() )
- this.Panel.Show( x, y, relElement ) ;
-}
-
-FCKMenuBlockPanel.prototype.Hide = function()
-{
- if ( this.Panel.CheckIsOpened() )
- this.Panel.Hide() ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenuitem.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenuitem.js
deleted file mode 100755
index 3db1291..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckmenuitem.js
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * 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 ==
- *
- * Defines and renders a menu items in a menu block.
- */
-
-var FCKMenuItem = function( parentMenuBlock, name, label, iconPathOrStripInfoArray, isDisabled, customData )
-{
- this.Name = name ;
- this.Label = label || name ;
- this.IsDisabled = isDisabled ;
-
- this.Icon = new FCKIcon( iconPathOrStripInfoArray ) ;
-
- this.SubMenu = new FCKMenuBlockPanel() ;
- this.SubMenu.Parent = parentMenuBlock ;
- this.SubMenu.OnClick = FCKTools.CreateEventListener( FCKMenuItem_SubMenu_OnClick, this ) ;
- this.CustomData = customData ;
-
- if ( FCK.IECleanup )
- FCK.IECleanup.AddItem( this, FCKMenuItem_Cleanup ) ;
-}
-
-
-FCKMenuItem.prototype.AddItem = function( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, customData )
-{
- this.HasSubMenu = true ;
- return this.SubMenu.AddItem( name, label, iconPathOrStripInfoArrayOrIndex, isDisabled, customData ) ;
-}
-
-FCKMenuItem.prototype.AddSeparator = function()
-{
- this.SubMenu.AddSeparator() ;
-}
-
-FCKMenuItem.prototype.Create = function( parentTable )
-{
- var bHasSubMenu = this.HasSubMenu ;
-
- var oDoc = FCKTools.GetElementDocument( parentTable ) ;
-
- // Add a row in the table to hold the menu item.
- var r = this.MainElement = parentTable.insertRow(-1) ;
- r.className = this.IsDisabled ? 'MN_Item_Disabled' : 'MN_Item' ;
-
- // Set the row behavior.
- if ( !this.IsDisabled )
- {
- FCKTools.AddEventListenerEx( r, 'mouseover', FCKMenuItem_OnMouseOver, [ this ] ) ;
- FCKTools.AddEventListenerEx( r, 'click', FCKMenuItem_OnClick, [ this ] ) ;
-
- if ( !bHasSubMenu )
- FCKTools.AddEventListenerEx( r, 'mouseout', FCKMenuItem_OnMouseOut, [ this ] ) ;
- }
-
- // Create the icon cell.
- var eCell = r.insertCell(-1) ;
- eCell.className = 'MN_Icon' ;
- eCell.appendChild( this.Icon.CreateIconElement( oDoc ) ) ;
-
- // Create the label cell.
- eCell = r.insertCell(-1) ;
- eCell.className = 'MN_Label' ;
- eCell.noWrap = true ;
- eCell.appendChild( oDoc.createTextNode( this.Label ) ) ;
-
- // Create the arrow cell and setup the sub menu panel (if needed).
- eCell = r.insertCell(-1) ;
- if ( bHasSubMenu )
- {
- eCell.className = 'MN_Arrow' ;
-
- // The arrow is a fixed size image.
- var eArrowImg = eCell.appendChild( oDoc.createElement( 'IMG' ) ) ;
- eArrowImg.src = FCK_IMAGES_PATH + 'arrow_' + FCKLang.Dir + '.gif' ;
- eArrowImg.width = 4 ;
- eArrowImg.height = 7 ;
-
- this.SubMenu.Create() ;
- this.SubMenu.Panel.OnHide = FCKTools.CreateEventListener( FCKMenuItem_SubMenu_OnHide, this ) ;
- }
-}
-
-FCKMenuItem.prototype.Activate = function()
-{
- this.MainElement.className = 'MN_Item_Over' ;
-
- if ( this.HasSubMenu )
- {
- // Show the child menu block. The ( +2, -2 ) correction is done because
- // of the padding in the skin. It is not a good solution because one
- // could change the skin and so the final result would not be accurate.
- // For now it is ok because we are controlling the skin.
- this.SubMenu.Show( this.MainElement.offsetWidth + 2, -2, this.MainElement ) ;
- }
-
- FCKTools.RunFunction( this.OnActivate, this ) ;
-}
-
-FCKMenuItem.prototype.Deactivate = function()
-{
- this.MainElement.className = 'MN_Item' ;
-
- if ( this.HasSubMenu )
- this.SubMenu.Hide() ;
-}
-
-/* Events */
-
-function FCKMenuItem_SubMenu_OnClick( clickedItem, listeningItem )
-{
- FCKTools.RunFunction( listeningItem.OnClick, listeningItem, [ clickedItem ] ) ;
-}
-
-function FCKMenuItem_SubMenu_OnHide( menuItem )
-{
- menuItem.Deactivate() ;
-}
-
-function FCKMenuItem_OnClick( ev, menuItem )
-{
- if ( menuItem.HasSubMenu )
- menuItem.Activate() ;
- else
- {
- menuItem.Deactivate() ;
- FCKTools.RunFunction( menuItem.OnClick, menuItem, [ menuItem ] ) ;
- }
-}
-
-function FCKMenuItem_OnMouseOver( ev, menuItem )
-{
- menuItem.Activate() ;
-}
-
-function FCKMenuItem_OnMouseOut( ev, menuItem )
-{
- menuItem.Deactivate() ;
-}
-
-function FCKMenuItem_Cleanup()
-{
- this.MainElement = null ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckpanel.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckpanel.js
deleted file mode 100755
index 650a264..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckpanel.js
+++ /dev/null
@@ -1,463 +0,0 @@
-/*
- * 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 ==
- *
- * Component that creates floating panels. It is used by many
- * other components, like the toolbar items, context menu, etc...
- */
-
-var FCKPanel = function( parentWindow )
-{
- this.IsRTL = ( FCKLang.Dir == 'rtl' ) ;
- this.IsContextMenu = false ;
- this._LockCounter = 0 ;
-
- this._Window = parentWindow || window ;
-
- var oDocument ;
-
- if ( FCKBrowserInfo.IsIE )
- {
- // Create the Popup that will hold the panel.
- // The popup has to be created before playing with domain hacks, see #1666.
- this._Popup = this._Window.createPopup() ;
-
- // this._Window cannot be accessed while playing with domain hacks, but local variable is ok.
- // See #1666.
- var pDoc = this._Window.document ;
-
- // This is a trick to IE6 (not IE7). The original domain must be set
- // before creating the popup, so we are able to take a refence to the
- // document inside of it, and the set the proper domain for it. (#123)
- if ( FCK_IS_CUSTOM_DOMAIN && !FCKBrowserInfo.IsIE7 )
- {
- pDoc.domain = FCK_ORIGINAL_DOMAIN ;
- document.domain = FCK_ORIGINAL_DOMAIN ;
- }
-
- oDocument = this.Document = this._Popup.document ;
-
- // Set the proper domain inside the popup.
- if ( FCK_IS_CUSTOM_DOMAIN )
- {
- oDocument.domain = FCK_RUNTIME_DOMAIN ;
- pDoc.domain = FCK_RUNTIME_DOMAIN ;
- document.domain = FCK_RUNTIME_DOMAIN ;
- }
-
- FCK.IECleanup.AddItem( this, FCKPanel_Cleanup ) ;
- }
- else
- {
- var oIFrame = this._IFrame = this._Window.document.createElement('iframe') ;
- FCKTools.ResetStyles( oIFrame );
- oIFrame.src = 'javascript:void(0)' ;
- oIFrame.allowTransparency = true ;
- oIFrame.frameBorder = '0' ;
- oIFrame.scrolling = 'no' ;
- oIFrame.style.width = oIFrame.style.height = '0px' ;
- FCKDomTools.SetElementStyles( oIFrame,
- {
- position : 'absolute',
- zIndex : FCKConfig.FloatingPanelsZIndex
- } ) ;
-
- this._Window.document.body.appendChild( oIFrame ) ;
-
- var oIFrameWindow = oIFrame.contentWindow ;
-
- oDocument = this.Document = oIFrameWindow.document ;
-
- // Workaround for Safari 12256. Ticket #63
- var sBase = '' ;
- if ( FCKBrowserInfo.IsSafari )
- sBase = '
' ;
-
- // Initialize the IFRAME document body.
- oDocument.open() ;
- oDocument.write( '' + sBase + '<\/head><\/body><\/html>' ) ;
- oDocument.close() ;
-
- if( FCKBrowserInfo.IsAIR )
- FCKAdobeAIR.Panel_Contructor( oDocument, window.document.location ) ;
-
- FCKTools.AddEventListenerEx( oIFrameWindow, 'focus', FCKPanel_Window_OnFocus, this ) ;
- FCKTools.AddEventListenerEx( oIFrameWindow, 'blur', FCKPanel_Window_OnBlur, this ) ;
- }
-
- oDocument.dir = FCKLang.Dir ;
-
- FCKTools.AddEventListener( oDocument, 'contextmenu', FCKTools.CancelEvent ) ;
-
-
- // Create the main DIV that is used as the panel base.
- this.MainNode = oDocument.body.appendChild( oDocument.createElement('DIV') ) ;
-
- // The "float" property must be set so Firefox calculates the size correctly.
- this.MainNode.style.cssFloat = this.IsRTL ? 'right' : 'left' ;
-}
-
-
-FCKPanel.prototype.AppendStyleSheet = function( styleSheet )
-{
- FCKTools.AppendStyleSheet( this.Document, styleSheet ) ;
-}
-
-FCKPanel.prototype.Preload = function( x, y, relElement )
-{
- // The offsetWidth and offsetHeight properties are not available if the
- // element is not visible. So we must "show" the popup with no size to
- // be able to use that values in the second call (IE only).
- if ( this._Popup )
- this._Popup.show( x, y, 0, 0, relElement ) ;
-}
-
-// Workaround for IE7 problem. See #1982
-// Submenus are restricted to the size of its parent, so we increase it as needed.
-// Returns true if the panel has been repositioned
-FCKPanel.prototype.ResizeForSubpanel = function( panel, width, height )
-{
- if ( !FCKBrowserInfo.IsIE7 )
- return false ;
-
- if ( !this._Popup.isOpen )
- {
- this.Subpanel = null ;
- return false ;
- }
-
- // If we are resetting the extra space
- if ( width == 0 && height == 0 )
- {
- // Another subpanel is being shown, so we must not shrink back
- if (this.Subpanel !== panel)
- return false ;
-
- // Reset values.
- // We leave the IncreasedY untouched to avoid vertical movement of the
- // menu if the submenu is higher than the main menu.
- this.Subpanel = null ;
- this.IncreasedX = 0 ;
- }
- else
- {
- this.Subpanel = panel ;
- // If the panel has already been increased enough, get out
- if ( ( this.IncreasedX >= width ) && ( this.IncreasedY >= height ) )
- return false ;
-
- this.IncreasedX = Math.max( this.IncreasedX, width ) ;
- this.IncreasedY = Math.max( this.IncreasedY, height ) ;
- }
-
- var x = this.ShowRect.x ;
- var w = this.IncreasedX ;
- if ( this.IsRTL )
- x = x - w ;
-
- // Horizontally increase as needed (sum of widths).
- // Vertically, use only the maximum of this menu or the submenu
- var finalWidth = this.ShowRect.w + w ;
- var finalHeight = Math.max( this.ShowRect.h, this.IncreasedY ) ;
- if ( this.ParentPanel )
- this.ParentPanel.ResizeForSubpanel( this, finalWidth, finalHeight ) ;
- this._Popup.show( x, this.ShowRect.y, finalWidth, finalHeight, this.RelativeElement ) ;
-
- return this.IsRTL ;
-}
-
-FCKPanel.prototype.Show = function( x, y, relElement, width, height )
-{
- var iMainWidth ;
- var eMainNode = this.MainNode ;
-
- if ( this._Popup )
- {
- // The offsetWidth and offsetHeight properties are not available if the
- // element is not visible. So we must "show" the popup with no size to
- // be able to use that values in the second call.
- this._Popup.show( x, y, 0, 0, relElement ) ;
-
- // The following lines must be place after the above "show", otherwise it
- // doesn't has the desired effect.
- FCKDomTools.SetElementStyles( eMainNode,
- {
- width : width ? width + 'px' : '',
- height : height ? height + 'px' : ''
- } ) ;
-
- iMainWidth = eMainNode.offsetWidth ;
-
- if ( FCKBrowserInfo.IsIE7 )
- {
- if (this.ParentPanel && this.ParentPanel.ResizeForSubpanel(this, iMainWidth, eMainNode.offsetHeight) )
- {
- // As the parent has moved, allow the browser to update its internal data, so the new position is correct.
- FCKTools.RunFunction( this.Show, this, [x, y, relElement] ) ;
- return ;
- }
- }
-
- if ( this.IsRTL )
- {
- if ( this.IsContextMenu )
- x = x - iMainWidth + 1 ;
- else if ( relElement )
- x = ( x * -1 ) + relElement.offsetWidth - iMainWidth ;
- }
-
- if ( FCKBrowserInfo.IsIE7 )
- {
- // Store the values that will be used by the ResizeForSubpanel function
- this.ShowRect = {x:x, y:y, w:iMainWidth, h:eMainNode.offsetHeight} ;
- this.IncreasedX = 0 ;
- this.IncreasedY = 0 ;
- this.RelativeElement = relElement ;
- }
-
- // Second call: Show the Popup at the specified location, with the correct size.
- this._Popup.show( x, y, iMainWidth, eMainNode.offsetHeight, relElement ) ;
-
- if ( this.OnHide )
- {
- if ( this._Timer )
- CheckPopupOnHide.call( this, true ) ;
-
- this._Timer = FCKTools.SetInterval( CheckPopupOnHide, 100, this ) ;
- }
- }
- else
- {
- // Do not fire OnBlur while the panel is opened.
- if ( typeof( FCK.ToolbarSet.CurrentInstance.FocusManager ) != 'undefined' )
- FCK.ToolbarSet.CurrentInstance.FocusManager.Lock() ;
-
- if ( this.ParentPanel )
- {
- this.ParentPanel.Lock() ;
-
- // Due to a bug on FF3, we must ensure that the parent panel will
- // blur (#1584).
- FCKPanel_Window_OnBlur( null, this.ParentPanel ) ;
- }
-
- // Toggle the iframe scrolling attribute to prevent the panel
- // scrollbars from disappearing in FF Mac. (#191)
- if ( FCKBrowserInfo.IsGecko && FCKBrowserInfo.IsMac )
- {
- this._IFrame.scrolling = '' ;
- FCKTools.RunFunction( function(){ this._IFrame.scrolling = 'no'; }, this ) ;
- }
-
- // Be sure we'll not have more than one Panel opened at the same time.
- // Do not unlock focus manager here because we're displaying another floating panel
- // instead of returning the editor to a "no panel" state (Bug #1514).
- if ( FCK.ToolbarSet.CurrentInstance.GetInstanceObject( 'FCKPanel' )._OpenedPanel &&
- FCK.ToolbarSet.CurrentInstance.GetInstanceObject( 'FCKPanel' )._OpenedPanel != this )
- FCK.ToolbarSet.CurrentInstance.GetInstanceObject( 'FCKPanel' )._OpenedPanel.Hide( false, true ) ;
-
- FCKDomTools.SetElementStyles( eMainNode,
- {
- width : width ? width + 'px' : '',
- height : height ? height + 'px' : ''
- } ) ;
-
- iMainWidth = eMainNode.offsetWidth ;
-
- if ( !width ) this._IFrame.width = 1 ;
- if ( !height ) this._IFrame.height = 1 ;
-
- // This is weird... but with Firefox, we must get the offsetWidth before
- // setting the _IFrame size (which returns "0"), and then after that,
- // to return the correct width. Remove the first step and it will not
- // work when the editor is in RTL.
- //
- // The "|| eMainNode.firstChild.offsetWidth" part has been added
- // for Opera compatibility (see #570).
- iMainWidth = eMainNode.offsetWidth || eMainNode.firstChild.offsetWidth ;
-
- // Base the popup coordinates upon the coordinates of relElement.
- var oPos = FCKTools.GetDocumentPosition( this._Window,
- relElement.nodeType == 9 ?
- ( FCKTools.IsStrictMode( relElement ) ? relElement.documentElement : relElement.body ) :
- relElement ) ;
-
- // Minus the offsets provided by any positioned parent element of the panel iframe.
- var positionedAncestor = FCKDomTools.GetPositionedAncestor( this._IFrame.parentNode ) ;
- if ( positionedAncestor )
- {
- var nPos = FCKTools.GetDocumentPosition( FCKTools.GetElementWindow( positionedAncestor ), positionedAncestor ) ;
- oPos.x -= nPos.x ;
- oPos.y -= nPos.y ;
- }
-
- if ( this.IsRTL && !this.IsContextMenu )
- x = ( x * -1 ) ;
-
- x += oPos.x ;
- y += oPos.y ;
-
- if ( this.IsRTL )
- {
- if ( this.IsContextMenu )
- x = x - iMainWidth + 1 ;
- else if ( relElement )
- x = x + relElement.offsetWidth - iMainWidth ;
- }
- else
- {
- var oViewPaneSize = FCKTools.GetViewPaneSize( this._Window ) ;
- var oScrollPosition = FCKTools.GetScrollPosition( this._Window ) ;
-
- var iViewPaneHeight = oViewPaneSize.Height + oScrollPosition.Y ;
- var iViewPaneWidth = oViewPaneSize.Width + oScrollPosition.X ;
-
- if ( ( x + iMainWidth ) > iViewPaneWidth )
- x -= x + iMainWidth - iViewPaneWidth ;
-
- if ( ( y + eMainNode.offsetHeight ) > iViewPaneHeight )
- y -= y + eMainNode.offsetHeight - iViewPaneHeight ;
- }
-
- // Set the context menu DIV in the specified location.
- FCKDomTools.SetElementStyles( this._IFrame,
- {
- left : x + 'px',
- top : y + 'px'
- } ) ;
-
- // Move the focus to the IFRAME so we catch the "onblur".
- this._IFrame.contentWindow.focus() ;
- this._IsOpened = true ;
-
- var me = this ;
- this._resizeTimer = setTimeout( function()
- {
- var iWidth = eMainNode.offsetWidth || eMainNode.firstChild.offsetWidth ;
- var iHeight = eMainNode.offsetHeight ;
- me._IFrame.style.width = iWidth + 'px' ;
- me._IFrame.style.height = iHeight + 'px' ;
-
- }, 0 ) ;
-
- FCK.ToolbarSet.CurrentInstance.GetInstanceObject( 'FCKPanel' )._OpenedPanel = this ;
- }
-
- FCKTools.RunFunction( this.OnShow, this ) ;
-}
-
-FCKPanel.prototype.Hide = function( ignoreOnHide, ignoreFocusManagerUnlock )
-{
- if ( this._Popup )
- this._Popup.hide() ;
- else
- {
- if ( !this._IsOpened || this._LockCounter > 0 )
- return ;
-
- // Enable the editor to fire the "OnBlur".
- if ( typeof( FCKFocusManager ) != 'undefined' && !ignoreFocusManagerUnlock )
- FCKFocusManager.Unlock() ;
-
- // It is better to set the sizes to 0, otherwise Firefox would have
- // rendering problems.
- this._IFrame.style.width = this._IFrame.style.height = '0px' ;
-
- this._IsOpened = false ;
-
- if ( this._resizeTimer )
- {
- clearTimeout( this._resizeTimer ) ;
- this._resizeTimer = null ;
- }
-
- if ( this.ParentPanel )
- this.ParentPanel.Unlock() ;
-
- if ( !ignoreOnHide )
- FCKTools.RunFunction( this.OnHide, this ) ;
- }
-}
-
-FCKPanel.prototype.CheckIsOpened = function()
-{
- if ( this._Popup )
- return this._Popup.isOpen ;
- else
- return this._IsOpened ;
-}
-
-FCKPanel.prototype.CreateChildPanel = function()
-{
- var oWindow = this._Popup ? FCKTools.GetDocumentWindow( this.Document ) : this._Window ;
-
- var oChildPanel = new FCKPanel( oWindow ) ;
- oChildPanel.ParentPanel = this ;
-
- return oChildPanel ;
-}
-
-FCKPanel.prototype.Lock = function()
-{
- this._LockCounter++ ;
-}
-
-FCKPanel.prototype.Unlock = function()
-{
- if ( --this._LockCounter == 0 && !this.HasFocus )
- this.Hide() ;
-}
-
-/* Events */
-
-function FCKPanel_Window_OnFocus( e, panel )
-{
- panel.HasFocus = true ;
-}
-
-function FCKPanel_Window_OnBlur( e, panel )
-{
- panel.HasFocus = false ;
-
- if ( panel._LockCounter == 0 )
- FCKTools.RunFunction( panel.Hide, panel ) ;
-}
-
-function CheckPopupOnHide( forceHide )
-{
- if ( forceHide || !this._Popup.isOpen )
- {
- window.clearInterval( this._Timer ) ;
- this._Timer = null ;
-
- if (this._Popup && this.ParentPanel && !forceHide)
- this.ParentPanel.ResizeForSubpanel(this, 0, 0) ;
-
- FCKTools.RunFunction( this.OnHide, this ) ;
- }
-}
-
-function FCKPanel_Cleanup()
-{
- this._Popup = null ;
- this._Window = null ;
- this.Document = null ;
- this.MainNode = null ;
- this.RelativeElement = null ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckplugin.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckplugin.js
deleted file mode 100755
index 28e54b4..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckplugin.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * 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 ==
- *
- * FCKPlugin Class: Represents a single plugin.
- */
-
-var FCKPlugin = function( name, availableLangs, basePath )
-{
- this.Name = name ;
- this.BasePath = basePath ? basePath : FCKConfig.PluginsPath ;
- this.Path = this.BasePath + name + '/' ;
-
- if ( !availableLangs || availableLangs.length == 0 )
- this.AvailableLangs = new Array() ;
- else
- this.AvailableLangs = availableLangs.split(',') ;
-}
-
-FCKPlugin.prototype.Load = function()
-{
- // Load the language file, if defined.
- if ( this.AvailableLangs.length > 0 )
- {
- var sLang ;
-
- // Check if the plugin has the language file for the active language.
- if ( this.AvailableLangs.IndexOf( FCKLanguageManager.ActiveLanguage.Code ) >= 0 )
- sLang = FCKLanguageManager.ActiveLanguage.Code ;
- else
- // Load the default language file (first one) if the current one is not available.
- sLang = this.AvailableLangs[0] ;
-
- // Add the main plugin script.
- LoadScript( this.Path + 'lang/' + sLang + '.js' ) ;
- }
-
- // Add the main plugin script.
- LoadScript( this.Path + 'fckplugin.js' ) ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckspecialcombo.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckspecialcombo.js
deleted file mode 100755
index b31a8f6..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckspecialcombo.js
+++ /dev/null
@@ -1,376 +0,0 @@
-/*
- * 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 ==
- *
- * FCKSpecialCombo Class: represents a special combo.
- */
-
-var FCKSpecialCombo = function( caption, fieldWidth, panelWidth, panelMaxHeight, parentWindow )
-{
- // Default properties values.
- this.FieldWidth = fieldWidth || 100 ;
- this.PanelWidth = panelWidth || 150 ;
- this.PanelMaxHeight = panelMaxHeight || 150 ;
- this.Label = ' ' ;
- this.Caption = caption ;
- this.Tooltip = caption ;
- this.Style = FCK_TOOLBARITEM_ICONTEXT ;
-
- this.Enabled = true ;
-
- this.Items = new Object() ;
-
- this._Panel = new FCKPanel( parentWindow || window ) ;
- this._Panel.AppendStyleSheet( FCKConfig.SkinEditorCSS ) ;
- this._PanelBox = this._Panel.MainNode.appendChild( this._Panel.Document.createElement( 'DIV' ) ) ;
- this._PanelBox.className = 'SC_Panel' ;
- this._PanelBox.style.width = this.PanelWidth + 'px' ;
-
- this._PanelBox.innerHTML = '
' ;
-
- this._ItemsHolderEl = this._PanelBox.getElementsByTagName('TD')[0] ;
-
- if ( FCK.IECleanup )
- FCK.IECleanup.AddItem( this, FCKSpecialCombo_Cleanup ) ;
-
-// this._Panel.StyleSheet = FCKConfig.SkinPath + 'fck_contextmenu.css' ;
-// this._Panel.Create() ;
-// this._Panel.PanelDiv.className += ' SC_Panel' ;
-// this._Panel.PanelDiv.innerHTML = '
' ;
-// this._ItemsHolderEl = this._Panel.PanelDiv.getElementsByTagName('TD')[0] ;
-}
-
-function FCKSpecialCombo_ItemOnMouseOver()
-{
- this.className += ' SC_ItemOver' ;
-}
-
-function FCKSpecialCombo_ItemOnMouseOut()
-{
- this.className = this.originalClass ;
-}
-
-function FCKSpecialCombo_ItemOnClick( ev, specialCombo, itemId )
-{
- this.className = this.originalClass ;
-
- specialCombo._Panel.Hide() ;
-
- specialCombo.SetLabel( this.FCKItemLabel ) ;
-
- if ( typeof( specialCombo.OnSelect ) == 'function' )
- specialCombo.OnSelect( itemId, this ) ;
-}
-
-FCKSpecialCombo.prototype.ClearItems = function ()
-{
- if ( this.Items )
- this.Items = {} ;
-
- var itemsholder = this._ItemsHolderEl ;
- while ( itemsholder.firstChild )
- itemsholder.removeChild( itemsholder.firstChild ) ;
-}
-
-FCKSpecialCombo.prototype.AddItem = function( id, html, label, bgColor )
-{
- //
Bold 1
- var oDiv = this._ItemsHolderEl.appendChild( this._Panel.Document.createElement( 'DIV' ) ) ;
- oDiv.className = oDiv.originalClass = 'SC_Item' ;
- oDiv.innerHTML = html ;
- oDiv.FCKItemLabel = label || id ;
- oDiv.Selected = false ;
-
- // In IE, the width must be set so the borders are shown correctly when the content overflows.
- if ( FCKBrowserInfo.IsIE )
- oDiv.style.width = '100%' ;
-
- if ( bgColor )
- oDiv.style.backgroundColor = bgColor ;
-
- FCKTools.AddEventListenerEx( oDiv, 'mouseover', FCKSpecialCombo_ItemOnMouseOver ) ;
- FCKTools.AddEventListenerEx( oDiv, 'mouseout', FCKSpecialCombo_ItemOnMouseOut ) ;
- FCKTools.AddEventListenerEx( oDiv, 'click', FCKSpecialCombo_ItemOnClick, [ this, id ] ) ;
-
- this.Items[ id.toString().toLowerCase() ] = oDiv ;
-
- return oDiv ;
-}
-
-FCKSpecialCombo.prototype.SelectItem = function( item )
-{
- if ( typeof item == 'string' )
- item = this.Items[ item.toString().toLowerCase() ] ;
-
- if ( item )
- {
- item.className = item.originalClass = 'SC_ItemSelected' ;
- item.Selected = true ;
- }
-}
-
-FCKSpecialCombo.prototype.SelectItemByLabel = function( itemLabel, setLabel )
-{
- for ( var id in this.Items )
- {
- var oDiv = this.Items[id] ;
-
- if ( oDiv.FCKItemLabel == itemLabel )
- {
- oDiv.className = oDiv.originalClass = 'SC_ItemSelected' ;
- oDiv.Selected = true ;
-
- if ( setLabel )
- this.SetLabel( itemLabel ) ;
- }
- }
-}
-
-FCKSpecialCombo.prototype.DeselectAll = function( clearLabel )
-{
- for ( var i in this.Items )
- {
- if ( !this.Items[i] ) continue;
- this.Items[i].className = this.Items[i].originalClass = 'SC_Item' ;
- this.Items[i].Selected = false ;
- }
-
- if ( clearLabel )
- this.SetLabel( '' ) ;
-}
-
-FCKSpecialCombo.prototype.SetLabelById = function( id )
-{
- id = id ? id.toString().toLowerCase() : '' ;
-
- var oDiv = this.Items[ id ] ;
- this.SetLabel( oDiv ? oDiv.FCKItemLabel : '' ) ;
-}
-
-FCKSpecialCombo.prototype.SetLabel = function( text )
-{
- text = ( !text || text.length == 0 ) ? ' ' : text ;
-
- if ( text == this.Label )
- return ;
-
- this.Label = text ;
-
- var labelEl = this._LabelEl ;
- if ( labelEl )
- {
- labelEl.innerHTML = text ;
-
- // It may happen that the label is some HTML, including tags. This
- // would be a problem because when the user click on those tags, the
- // combo will get the selection from the editing area. So we must
- // disable any kind of selection here.
- FCKTools.DisableSelection( labelEl ) ;
- }
-}
-
-FCKSpecialCombo.prototype.SetEnabled = function( isEnabled )
-{
- this.Enabled = isEnabled ;
-
- // In IE it can happen when the page is reloaded that _OuterTable is null, so check its existence
- if ( this._OuterTable )
- this._OuterTable.className = isEnabled ? '' : 'SC_FieldDisabled' ;
-}
-
-FCKSpecialCombo.prototype.Create = function( targetElement )
-{
- var oDoc = FCKTools.GetElementDocument( targetElement ) ;
- var eOuterTable = this._OuterTable = targetElement.appendChild( oDoc.createElement( 'TABLE' ) ) ;
- eOuterTable.cellPadding = 0 ;
- eOuterTable.cellSpacing = 0 ;
-
- eOuterTable.insertRow(-1) ;
-
- var sClass ;
- var bShowLabel ;
-
- switch ( this.Style )
- {
- case FCK_TOOLBARITEM_ONLYICON :
- sClass = 'TB_ButtonType_Icon' ;
- bShowLabel = false;
- break ;
- case FCK_TOOLBARITEM_ONLYTEXT :
- sClass = 'TB_ButtonType_Text' ;
- bShowLabel = false;
- break ;
- case FCK_TOOLBARITEM_ICONTEXT :
- bShowLabel = true;
- break ;
- }
-
- if ( this.Caption && this.Caption.length > 0 && bShowLabel )
- {
- var oCaptionCell = eOuterTable.rows[0].insertCell(-1) ;
- oCaptionCell.innerHTML = this.Caption ;
- oCaptionCell.className = 'SC_FieldCaption' ;
- }
-
- // Create the main DIV element.
- var oField = FCKTools.AppendElement( eOuterTable.rows[0].insertCell(-1), 'div' ) ;
- if ( bShowLabel )
- {
- oField.className = 'SC_Field' ;
- oField.style.width = this.FieldWidth + 'px' ;
- oField.innerHTML = '
' ;
-
- this._LabelEl = oField.getElementsByTagName('label')[0] ; // Memory Leak
- this._LabelEl.innerHTML = this.Label ;
- }
- else
- {
- oField.className = 'TB_Button_Off' ;
- //oField.innerHTML = '
' + this.Caption + '' ;
- //oField.innerHTML = '' ;
-
- // Gets the correct CSS class to use for the specified style (param).
- oField.innerHTML = '' +
- '' +
- //' ' +
- ' ' +
- '' + this.Caption + ' ' +
- ' ' +
- ' ' +
- ' ' +
- ' ' +
- '
' ;
- }
-
-
- // Events Handlers
-
- FCKTools.AddEventListenerEx( oField, 'mouseover', FCKSpecialCombo_OnMouseOver, this ) ;
- FCKTools.AddEventListenerEx( oField, 'mouseout', FCKSpecialCombo_OnMouseOut, this ) ;
- FCKTools.AddEventListenerEx( oField, 'click', FCKSpecialCombo_OnClick, this ) ;
-
- FCKTools.DisableSelection( this._Panel.Document.body ) ;
-}
-
-function FCKSpecialCombo_Cleanup()
-{
- this._LabelEl = null ;
- this._OuterTable = null ;
- this._ItemsHolderEl = null ;
- this._PanelBox = null ;
-
- if ( this.Items )
- {
- for ( var key in this.Items )
- this.Items[key] = null ;
- }
-}
-
-function FCKSpecialCombo_OnMouseOver( ev, specialCombo )
-{
- if ( specialCombo.Enabled )
- {
- switch ( specialCombo.Style )
- {
- case FCK_TOOLBARITEM_ONLYICON :
- this.className = 'TB_Button_On_Over';
- break ;
- case FCK_TOOLBARITEM_ONLYTEXT :
- this.className = 'TB_Button_On_Over';
- break ;
- case FCK_TOOLBARITEM_ICONTEXT :
- this.className = 'SC_Field SC_FieldOver' ;
- break ;
- }
- }
-}
-
-function FCKSpecialCombo_OnMouseOut( ev, specialCombo )
-{
- switch ( specialCombo.Style )
- {
- case FCK_TOOLBARITEM_ONLYICON :
- this.className = 'TB_Button_Off';
- break ;
- case FCK_TOOLBARITEM_ONLYTEXT :
- this.className = 'TB_Button_Off';
- break ;
- case FCK_TOOLBARITEM_ICONTEXT :
- this.className='SC_Field' ;
- break ;
- }
-}
-
-function FCKSpecialCombo_OnClick( e, specialCombo )
-{
- // For Mozilla we must stop the event propagation to avoid it hiding
- // the panel because of a click outside of it.
-// if ( e )
-// {
-// e.stopPropagation() ;
-// FCKPanelEventHandlers.OnDocumentClick( e ) ;
-// }
-
- if ( specialCombo.Enabled )
- {
- var oPanel = specialCombo._Panel ;
- var oPanelBox = specialCombo._PanelBox ;
- var oItemsHolder = specialCombo._ItemsHolderEl ;
- var iMaxHeight = specialCombo.PanelMaxHeight ;
-
- if ( specialCombo.OnBeforeClick )
- specialCombo.OnBeforeClick( specialCombo ) ;
-
- // This is a tricky thing. We must call the "Load" function, otherwise
- // it will not be possible to retrieve "oItemsHolder.offsetHeight" (IE only).
- if ( FCKBrowserInfo.IsIE )
- oPanel.Preload( 0, this.offsetHeight, this ) ;
-
- if ( oItemsHolder.offsetHeight > iMaxHeight )
-// {
- oPanelBox.style.height = iMaxHeight + 'px' ;
-
-// if ( FCKBrowserInfo.IsGecko )
-// oPanelBox.style.overflow = '-moz-scrollbars-vertical' ;
-// }
- else
- oPanelBox.style.height = '' ;
-
-// oPanel.PanelDiv.style.width = specialCombo.PanelWidth + 'px' ;
-
- oPanel.Show( 0, this.offsetHeight, this ) ;
- }
-
-// return false ;
-}
-
-/*
-Sample Combo Field HTML output:
-
-
-*/
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckstyle.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckstyle.js
deleted file mode 100755
index 540f70e..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/classes/fckstyle.js
+++ /dev/null
@@ -1,1500 +0,0 @@
-/*
- * 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 ==
- *
- * FCKStyle Class: contains a style definition, and all methods to work with
- * the style in a document.
- */
-
-/**
- * @param {Object} styleDesc A "style descriptor" object, containing the raw
- * style definition in the following format:
- * '' ;
- FCK._BehaviorsStyle = sStyle ;
- }
-
- return FCK._BehaviorsStyle ;
-}
-
-function Doc_OnMouseUp()
-{
- if ( FCK.EditorWindow.event.srcElement.tagName == 'HTML' )
- {
- FCK.Focus() ;
- FCK.EditorWindow.event.cancelBubble = true ;
- FCK.EditorWindow.event.returnValue = false ;
- }
-}
-
-function Doc_OnPaste()
-{
- var body = FCK.EditorDocument.body ;
-
- body.detachEvent( 'onpaste', Doc_OnPaste ) ;
-
- var ret = FCK.Paste( !FCKConfig.ForcePasteAsPlainText && !FCKConfig.AutoDetectPasteFromWord ) ;
-
- body.attachEvent( 'onpaste', Doc_OnPaste ) ;
-
- return ret ;
-}
-
-function Doc_OnDblClick()
-{
- FCK.OnDoubleClick( FCK.EditorWindow.event.srcElement ) ;
- FCK.EditorWindow.event.cancelBubble = true ;
-}
-
-function Doc_OnSelectionChange()
-{
- // Don't fire the event if no document is loaded.
- if ( !FCK.IsSelectionChangeLocked && FCK.EditorDocument )
- FCK.Events.FireEvent( "OnSelectionChange" ) ;
-}
-
-function Doc_OnDrop()
-{
- if ( FCK.MouseDownFlag )
- {
- FCK.MouseDownFlag = false ;
- return ;
- }
-
- if ( FCKConfig.ForcePasteAsPlainText )
- {
- var evt = FCK.EditorWindow.event ;
-
- if ( FCK._CheckIsPastingEnabled() || FCKConfig.ShowDropDialog )
- FCK.PasteAsPlainText( evt.dataTransfer.getData( 'Text' ) ) ;
-
- evt.returnValue = false ;
- evt.cancelBubble = true ;
- }
-}
-
-FCK.InitializeBehaviors = function( dontReturn )
-{
- // Set the focus to the editable area when clicking in the document area.
- // TODO: The cursor must be positioned at the end.
- this.EditorDocument.attachEvent( 'onmouseup', Doc_OnMouseUp ) ;
-
- // Intercept pasting operations
- this.EditorDocument.body.attachEvent( 'onpaste', Doc_OnPaste ) ;
-
- // Intercept drop operations
- this.EditorDocument.body.attachEvent( 'ondrop', Doc_OnDrop ) ;
-
- // Reset the context menu.
- FCK.ContextMenu._InnerContextMenu.AttachToElement( FCK.EditorDocument.body ) ;
-
- this.EditorDocument.attachEvent("onkeydown", FCK._KeyDownListener ) ;
-
- this.EditorDocument.attachEvent("ondblclick", Doc_OnDblClick ) ;
-
- this.EditorDocument.attachEvent("onbeforedeactivate", function(){ FCKSelection.Save() ; } ) ;
-
- // Catch cursor selection changes.
- this.EditorDocument.attachEvent("onselectionchange", Doc_OnSelectionChange ) ;
-
- FCKTools.AddEventListener( FCK.EditorDocument, 'mousedown', Doc_OnMouseDown ) ;
-}
-
-FCK.InsertHtml = function( html )
-{
- html = FCKConfig.ProtectedSource.Protect( html ) ;
- html = FCK.ProtectEvents( html ) ;
- html = FCK.ProtectUrls( html ) ;
- html = FCK.ProtectTags( html ) ;
-
-// FCK.Focus() ;
- FCKSelection.Restore() ;
- FCK.EditorWindow.focus() ;
-
- FCKUndo.SaveUndoStep() ;
-
- // Gets the actual selection.
- var oSel = FCKSelection.GetSelection() ;
-
- // Deletes the actual selection contents.
- if ( oSel.type.toLowerCase() == 'control' )
- oSel.clear() ;
-
- // Using the following trick, any comment in the beginning of the HTML will
- // be preserved.
- html = 'fakeFCKRemove ' + html ;
-
- // Insert the HTML.
- oSel.createRange().pasteHTML( html ) ;
-
- // Remove the fake node
- FCK.EditorDocument.getElementById('__fakeFCKRemove__').removeNode( true ) ;
-
- FCKDocumentProcessor.Process( FCK.EditorDocument ) ;
-
- // For some strange reason the SaveUndoStep() call doesn't activate the undo button at the first InsertHtml() call.
- this.Events.FireEvent( "OnSelectionChange" ) ;
-}
-
-FCK.SetInnerHtml = function( html ) // IE Only
-{
- var oDoc = FCK.EditorDocument ;
- // Using the following trick, any comment in the beginning of the HTML will
- // be preserved.
- oDoc.body.innerHTML = '
' + html ;
- oDoc.getElementById('__fakeFCKRemove__').removeNode( true ) ;
-}
-
-function FCK_PreloadImages()
-{
- var oPreloader = new FCKImagePreloader() ;
-
- // Add the configured images.
- oPreloader.AddImages( FCKConfig.PreloadImages ) ;
-
- // Add the skin icons strip.
- oPreloader.AddImages( FCKConfig.SkinPath + 'fck_strip.gif' ) ;
-
- oPreloader.OnComplete = LoadToolbarSetup ;
- oPreloader.Start() ;
-}
-
-// Disable the context menu in the editor (outside the editing area).
-function Document_OnContextMenu()
-{
- return ( event.srcElement._FCKShowContextMenu == true ) ;
-}
-document.oncontextmenu = Document_OnContextMenu ;
-
-function FCK_Cleanup()
-{
- this.LinkedField = null ;
- this.EditorWindow = null ;
- this.EditorDocument = null ;
-}
-
-FCK._ExecPaste = function()
-{
- // As we call ExecuteNamedCommand('Paste'), it would enter in a loop. So, let's use a semaphore.
- if ( FCK._PasteIsRunning )
- return true ;
-
- if ( FCKConfig.ForcePasteAsPlainText )
- {
- FCK.PasteAsPlainText() ;
- return false ;
- }
-
- var sHTML = FCK._CheckIsPastingEnabled( true ) ;
-
- if ( sHTML === false )
- FCKTools.RunFunction( FCKDialog.OpenDialog, FCKDialog, ['FCKDialog_Paste', FCKLang.Paste, 'dialog/fck_paste.html', 400, 330, 'Security'] ) ;
- else
- {
- if ( FCKConfig.AutoDetectPasteFromWord && sHTML.length > 0 )
- {
- var re = /<\w[^>]*(( class="?MsoNormal"?)|(="mso-))/gi ;
- if ( re.test( sHTML ) )
- {
- if ( confirm( FCKLang.PasteWordConfirm ) )
- {
- FCK.PasteFromWord() ;
- return false ;
- }
- }
- }
-
- // Instead of inserting the retrieved HTML, let's leave the OS work for us,
- // by calling FCK.ExecuteNamedCommand( 'Paste' ). It could give better results.
-
- // Enable the semaphore to avoid a loop.
- FCK._PasteIsRunning = true ;
-
- FCK.ExecuteNamedCommand( 'Paste' ) ;
-
- // Removes the semaphore.
- delete FCK._PasteIsRunning ;
- }
-
- // Let's always make a custom implementation (return false), otherwise
- // the new Keyboard Handler may conflict with this code, and the CTRL+V code
- // could result in a simple "V" being pasted.
- return false ;
-}
-
-FCK.PasteAsPlainText = function( forceText )
-{
- if ( !FCK._CheckIsPastingEnabled() )
- {
- FCKDialog.OpenDialog( 'FCKDialog_Paste', FCKLang.PasteAsText, 'dialog/fck_paste.html', 400, 330, 'PlainText' ) ;
- return ;
- }
-
- // Get the data available in the clipboard in text format.
- var sText = null ;
- if ( ! forceText )
- sText = clipboardData.getData("Text") ;
- else
- sText = forceText ;
-
- if ( sText && sText.length > 0 )
- {
- // Replace the carriage returns with
- sText = FCKTools.HTMLEncode( sText ) ;
- sText = FCKTools.ProcessLineBreaks( window, FCKConfig, sText ) ;
-
- var closeTagIndex = sText.search( '' ) ;
- var startTagIndex = sText.search( '' ) ;
-
- if ( ( closeTagIndex != -1 && startTagIndex != -1 && closeTagIndex < startTagIndex )
- || ( closeTagIndex != -1 && startTagIndex == -1 ) )
- {
- var prefix = sText.substr( 0, closeTagIndex ) ;
- sText = sText.substr( closeTagIndex + 4 ) ;
- this.InsertHtml( prefix ) ;
- }
-
- // Insert the resulting data in the editor.
- FCKUndo.SaveLocked = true ;
- this.InsertHtml( sText ) ;
- FCKUndo.SaveLocked = false ;
- }
-}
-
-FCK._CheckIsPastingEnabled = function( returnContents )
-{
- // The following seams to be the only reliable way to check is script
- // pasting operations are enabled in the security settings of IE6 and IE7.
- // It adds a little bit of overhead to the check, but so far that's the
- // only way, mainly because of IE7.
-
- FCK._PasteIsEnabled = false ;
-
- document.body.attachEvent( 'onpaste', FCK_CheckPasting_Listener ) ;
-
- // The execCommand in GetClipboardHTML will fire the "onpaste", only if the
- // security settings are enabled.
- var oReturn = FCK.GetClipboardHTML() ;
-
- document.body.detachEvent( 'onpaste', FCK_CheckPasting_Listener ) ;
-
- if ( FCK._PasteIsEnabled )
- {
- if ( !returnContents )
- oReturn = true ;
- }
- else
- oReturn = false ;
-
- delete FCK._PasteIsEnabled ;
-
- return oReturn ;
-}
-
-function FCK_CheckPasting_Listener()
-{
- FCK._PasteIsEnabled = true ;
-}
-
-FCK.GetClipboardHTML = function()
-{
- var oDiv = document.getElementById( '___FCKHiddenDiv' ) ;
-
- if ( !oDiv )
- {
- oDiv = document.createElement( 'DIV' ) ;
- oDiv.id = '___FCKHiddenDiv' ;
-
- var oDivStyle = oDiv.style ;
- oDivStyle.position = 'absolute' ;
- oDivStyle.visibility = oDivStyle.overflow = 'hidden' ;
- oDivStyle.width = oDivStyle.height = 1 ;
-
- document.body.appendChild( oDiv ) ;
- }
-
- oDiv.innerHTML = '' ;
-
- var oTextRange = document.body.createTextRange() ;
- oTextRange.moveToElementText( oDiv ) ;
- oTextRange.execCommand( 'Paste' ) ;
-
- var sData = oDiv.innerHTML ;
- oDiv.innerHTML = '' ;
-
- return sData ;
-}
-
-FCK.CreateLink = function( url, noUndo )
-{
- // Creates the array that will be returned. It contains one or more created links (see #220).
- var aCreatedLinks = new Array() ;
-
- // Remove any existing link in the selection.
- FCK.ExecuteNamedCommand( 'Unlink', null, false, !!noUndo ) ;
-
- if ( url.length > 0 )
- {
- // If there are several images, and you try to link each one, all the images get inside the link:
- // -> -> due to the call to 'CreateLink' (bug in IE)
- if (FCKSelection.GetType() == 'Control')
- {
- // Create a link
- var oLink = this.EditorDocument.createElement( 'A' ) ;
- oLink.href = url ;
-
- // Get the selected object
- var oControl = FCKSelection.GetSelectedElement() ;
- // Put the link just before the object
- oControl.parentNode.insertBefore(oLink, oControl) ;
- // Move the object inside the link
- oControl.parentNode.removeChild( oControl ) ;
- oLink.appendChild( oControl ) ;
-
- return [ oLink ] ;
- }
-
- // Generate a temporary name for the link.
- var sTempUrl = 'javascript:void(0);/*' + ( new Date().getTime() ) + '*/' ;
-
- // Use the internal "CreateLink" command to create the link.
- FCK.ExecuteNamedCommand( 'CreateLink', sTempUrl, false, !!noUndo ) ;
-
- // Look for the just create link.
- var oLinks = this.EditorDocument.links ;
-
- for ( i = 0 ; i < oLinks.length ; i++ )
- {
- var oLink = oLinks[i] ;
-
- // Check it this a newly created link.
- // getAttribute must be used. oLink.url may cause problems with IE7 (#555).
- if ( oLink.getAttribute( 'href', 2 ) == sTempUrl )
- {
- var sInnerHtml = oLink.innerHTML ; // Save the innerHTML (IE changes it if it is like an URL).
- oLink.href = url ;
- oLink.innerHTML = sInnerHtml ; // Restore the innerHTML.
-
- // If the last child is a move it outside the link or it
- // will be too easy to select this link again #388.
- var oLastChild = oLink.lastChild ;
- if ( oLastChild && oLastChild.nodeName == 'BR' )
- {
- // Move the BR after the link.
- FCKDomTools.InsertAfterNode( oLink, oLink.removeChild( oLastChild ) ) ;
- }
-
- aCreatedLinks.push( oLink ) ;
- }
- }
- }
-
- return aCreatedLinks ;
-}
-
-function _FCK_RemoveDisabledAtt()
-{
- this.removeAttribute( 'disabled' ) ;
-}
-
-function Doc_OnMouseDown( evt )
-{
- var e = evt.srcElement ;
-
- // Radio buttons and checkboxes should not be allowed to be triggered in IE
- // in editable mode. Otherwise the whole browser window may be locked by
- // the buttons. (#1782)
- if ( e.nodeName.IEquals( 'input' ) && e.type.IEquals( ['radio', 'checkbox'] ) && !e.disabled )
- {
- e.disabled = true ;
- FCKTools.SetTimeout( _FCK_RemoveDisabledAtt, 1, e ) ;
- }
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckbrowserinfo.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckbrowserinfo.js
deleted file mode 100755
index 5549b5b..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckbrowserinfo.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * 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 ==
- *
- * Contains browser detection information.
- */
-
-var s = navigator.userAgent.toLowerCase() ;
-
-var FCKBrowserInfo =
-{
- IsIE : /*@cc_on!@*/false,
- IsIE7 : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 7 ),
- IsIE6 : /*@cc_on!@*/false && ( parseInt( s.match( /msie (\d+)/ )[1], 10 ) >= 6 ),
- IsSafari : s.Contains(' applewebkit/'), // Read "IsWebKit"
- IsOpera : !!window.opera,
- IsAIR : s.Contains(' adobeair/'),
- IsMac : s.Contains('macintosh')
-} ;
-
-// Completes the browser info with further Gecko information.
-(function( browserInfo )
-{
- browserInfo.IsGecko = ( navigator.product == 'Gecko' ) && !browserInfo.IsSafari && !browserInfo.IsOpera ;
- browserInfo.IsGeckoLike = ( browserInfo.IsGecko || browserInfo.IsSafari || browserInfo.IsOpera ) ;
-
- if ( browserInfo.IsGecko )
- {
- var geckoMatch = s.match( /rv:(\d+\.\d+)/ ) ;
- var geckoVersion = geckoMatch && parseFloat( geckoMatch[1] ) ;
-
- // Actually "10" refers to Gecko versions before Firefox 1.5, when
- // Gecko 1.8 (build 20051111) has been released.
-
- // Some browser (like Mozilla 1.7.13) may have a Gecko build greater
- // than 20051111, so we must also check for the revision number not to
- // be 1.7 (we are assuming that rv < 1.7 will not have build > 20051111).
-
- if ( geckoVersion )
- {
- browserInfo.IsGecko10 = ( geckoVersion < 1.8 ) ;
- browserInfo.IsGecko19 = ( geckoVersion > 1.8 ) ;
- }
- }
-})(FCKBrowserInfo) ;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckcodeformatter.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckcodeformatter.js
deleted file mode 100755
index 3c8831a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckcodeformatter.js
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * 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 ==
- *
- * Format the HTML.
- */
-
-var FCKCodeFormatter = new Object() ;
-
-FCKCodeFormatter.Init = function()
-{
- var oRegex = this.Regex = new Object() ;
-
- // Regex for line breaks.
- oRegex.BlocksOpener = /\<(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|DL|DT|DD|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|TH|AREA|OPTION)[^\>]*\>/gi ;
- oRegex.BlocksCloser = /\<\/(P|DIV|H1|H2|H3|H4|H5|H6|ADDRESS|PRE|OL|UL|LI|DL|DT|DD|TITLE|META|LINK|BASE|SCRIPT|LINK|TD|TH|AREA|OPTION)[^\>]*\>/gi ;
-
- oRegex.NewLineTags = /\<(BR|HR)[^\>]*\>/gi ;
-
- oRegex.MainTags = /\<\/?(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR)[^\>]*\>/gi ;
-
- oRegex.LineSplitter = /\s*\n+\s*/g ;
-
- // Regex for indentation.
- oRegex.IncreaseIndent = /^\<(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL|DL)[ \/\>]/i ;
- oRegex.DecreaseIndent = /^\<\/(HTML|HEAD|BODY|FORM|TABLE|TBODY|THEAD|TR|UL|OL|DL)[ \>]/i ;
- oRegex.FormatIndentatorRemove = new RegExp( '^' + FCKConfig.FormatIndentator ) ;
-
- oRegex.ProtectedTags = /(
]*>)([\s\S]*?)(<\/PRE>)/gi ;
-}
-
-FCKCodeFormatter._ProtectData = function( outer, opener, data, closer )
-{
- return opener + '___FCKpd___' + ( FCKCodeFormatter.ProtectedData.push( data ) - 1 ) + closer ;
-}
-
-FCKCodeFormatter.Format = function( html )
-{
- if ( !this.Regex )
- this.Init() ;
-
- // Protected content that remain untouched during the
- // process go in the following array.
- FCKCodeFormatter.ProtectedData = new Array() ;
-
- var sFormatted = html.replace( this.Regex.ProtectedTags, FCKCodeFormatter._ProtectData ) ;
-
- // Line breaks.
- sFormatted = sFormatted.replace( this.Regex.BlocksOpener, '\n$&' ) ;
- sFormatted = sFormatted.replace( this.Regex.BlocksCloser, '$&\n' ) ;
- sFormatted = sFormatted.replace( this.Regex.NewLineTags, '$&\n' ) ;
- sFormatted = sFormatted.replace( this.Regex.MainTags, '\n$&\n' ) ;
-
- // Indentation.
- var sIndentation = '' ;
-
- var asLines = sFormatted.split( this.Regex.LineSplitter ) ;
- sFormatted = '' ;
-
- for ( var i = 0 ; i < asLines.length ; i++ )
- {
- var sLine = asLines[i] ;
-
- if ( sLine.length == 0 )
- continue ;
-
- if ( this.Regex.DecreaseIndent.test( sLine ) )
- sIndentation = sIndentation.replace( this.Regex.FormatIndentatorRemove, '' ) ;
-
- sFormatted += sIndentation + sLine + '\n' ;
-
- if ( this.Regex.IncreaseIndent.test( sLine ) )
- sIndentation += FCKConfig.FormatIndentator ;
- }
-
- // Now we put back the protected data.
- for ( var j = 0 ; j < FCKCodeFormatter.ProtectedData.length ; j++ )
- {
- var oRegex = new RegExp( '___FCKpd___' + j ) ;
- sFormatted = sFormatted.replace( oRegex, FCKCodeFormatter.ProtectedData[j].replace( /\$/g, '$$$$' ) ) ;
- }
-
- return sFormatted.Trim() ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckcommands.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckcommands.js
deleted file mode 100755
index a6a68a1..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckcommands.js
+++ /dev/null
@@ -1,172 +0,0 @@
-/*
- * 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 ==
- *
- * Define all commands available in the editor.
- */
-
-var FCKCommands = FCK.Commands = new Object() ;
-FCKCommands.LoadedCommands = new Object() ;
-
-FCKCommands.RegisterCommand = function( commandName, command )
-{
- this.LoadedCommands[ commandName ] = command ;
-}
-
-FCKCommands.GetCommand = function( commandName )
-{
- var oCommand = FCKCommands.LoadedCommands[ commandName ] ;
-
- if ( oCommand )
- return oCommand ;
-
- switch ( commandName )
- {
- case 'Bold' :
- case 'Italic' :
- case 'Underline' :
- case 'StrikeThrough':
- case 'Subscript' :
- case 'Superscript' : oCommand = new FCKCoreStyleCommand( commandName ) ; break ;
-
- case 'RemoveFormat' : oCommand = new FCKRemoveFormatCommand() ; break ;
-
- case 'DocProps' : oCommand = new FCKDialogCommand( 'DocProps' , FCKLang.DocProps , 'dialog/fck_docprops.html' , 400, 380, FCKCommands.GetFullPageState ) ; break ;
- case 'Templates' : oCommand = new FCKDialogCommand( 'Templates' , FCKLang.DlgTemplatesTitle , 'dialog/fck_template.html' , 380, 450 ) ; break ;
- case 'Link' : oCommand = new FCKDialogCommand( 'Link' , FCKLang.DlgLnkWindowTitle , 'dialog/fck_link.html' , 400, 300 ) ; break ;
- case 'Unlink' : oCommand = new FCKUnlinkCommand() ; break ;
- case 'VisitLink' : oCommand = new FCKVisitLinkCommand() ; break ;
- case 'Anchor' : oCommand = new FCKDialogCommand( 'Anchor' , FCKLang.DlgAnchorTitle , 'dialog/fck_anchor.html' , 370, 160 ) ; break ;
- case 'AnchorDelete' : oCommand = new FCKAnchorDeleteCommand() ; break ;
- case 'BulletedList' : oCommand = new FCKDialogCommand( 'BulletedList', FCKLang.BulletedListProp , 'dialog/fck_listprop.html?UL' , 370, 160 ) ; break ;
- case 'NumberedList' : oCommand = new FCKDialogCommand( 'NumberedList', FCKLang.NumberedListProp , 'dialog/fck_listprop.html?OL' , 370, 160 ) ; break ;
- case 'About' : oCommand = new FCKDialogCommand( 'About' , FCKLang.About , 'dialog/fck_about.html' , 420, 330, function(){ return FCK_TRISTATE_OFF ; } ) ; break ;
- case 'Find' : oCommand = new FCKDialogCommand( 'Find' , FCKLang.DlgFindAndReplaceTitle, 'dialog/fck_replace.html' , 340, 230, null, null, 'Find' ) ; break ;
- case 'Replace' : oCommand = new FCKDialogCommand( 'Replace' , FCKLang.DlgFindAndReplaceTitle, 'dialog/fck_replace.html' , 340, 230, null, null, 'Replace' ) ; break ;
-
- case 'Image' : oCommand = new FCKDialogCommand( 'Image' , FCKLang.DlgImgTitle , 'dialog/fck_image.html' , 450, 390 ) ; break ;
- case 'Flash' : oCommand = new FCKDialogCommand( 'Flash' , FCKLang.DlgFlashTitle , 'dialog/fck_flash.html' , 450, 390 ) ; break ;
- case 'SpecialChar' : oCommand = new FCKDialogCommand( 'SpecialChar', FCKLang.DlgSpecialCharTitle , 'dialog/fck_specialchar.html' , 400, 290 ) ; break ;
- case 'Smiley' : oCommand = new FCKDialogCommand( 'Smiley' , FCKLang.DlgSmileyTitle , 'dialog/fck_smiley.html' , FCKConfig.SmileyWindowWidth, FCKConfig.SmileyWindowHeight ) ; break ;
- case 'Table' : oCommand = new FCKDialogCommand( 'Table' , FCKLang.DlgTableTitle , 'dialog/fck_table.html' , 480, 250 ) ; break ;
- case 'TableProp' : oCommand = new FCKDialogCommand( 'Table' , FCKLang.DlgTableTitle , 'dialog/fck_table.html?Parent', 480, 250 ) ; break ;
- case 'TableCellProp': oCommand = new FCKDialogCommand( 'TableCell' , FCKLang.DlgCellTitle , 'dialog/fck_tablecell.html' , 550, 240 ) ; break ;
-
- case 'Style' : oCommand = new FCKStyleCommand() ; break ;
-
- case 'FontName' : oCommand = new FCKFontNameCommand() ; break ;
- case 'FontSize' : oCommand = new FCKFontSizeCommand() ; break ;
- case 'FontFormat' : oCommand = new FCKFormatBlockCommand() ; break ;
-
- case 'Source' : oCommand = new FCKSourceCommand() ; break ;
- case 'Preview' : oCommand = new FCKPreviewCommand() ; break ;
- case 'Save' : oCommand = new FCKSaveCommand() ; break ;
- case 'NewPage' : oCommand = new FCKNewPageCommand() ; break ;
- case 'PageBreak' : oCommand = new FCKPageBreakCommand() ; break ;
- case 'Rule' : oCommand = new FCKRuleCommand() ; break ;
- case 'Nbsp' : oCommand = new FCKNbsp() ; break ;
-
- case 'TextColor' : oCommand = new FCKTextColorCommand('ForeColor') ; break ;
- case 'BGColor' : oCommand = new FCKTextColorCommand('BackColor') ; break ;
-
- case 'Paste' : oCommand = new FCKPasteCommand() ; break ;
- case 'PasteText' : oCommand = new FCKPastePlainTextCommand() ; break ;
- case 'PasteWord' : oCommand = new FCKPasteWordCommand() ; break ;
-
- case 'JustifyLeft' : oCommand = new FCKJustifyCommand( 'left' ) ; break ;
- case 'JustifyCenter' : oCommand = new FCKJustifyCommand( 'center' ) ; break ;
- case 'JustifyRight' : oCommand = new FCKJustifyCommand( 'right' ) ; break ;
- case 'JustifyFull' : oCommand = new FCKJustifyCommand( 'justify' ) ; break ;
- case 'Indent' : oCommand = new FCKIndentCommand( 'indent', FCKConfig.IndentLength ) ; break ;
- case 'Outdent' : oCommand = new FCKIndentCommand( 'outdent', FCKConfig.IndentLength * -1 ) ; break ;
- case 'Blockquote' : oCommand = new FCKBlockQuoteCommand() ; break ;
- case 'CreateDiv' : oCommand = new FCKDialogCommand( 'CreateDiv', FCKLang.CreateDiv, 'dialog/fck_div.html', 380, 210, null, null, true ) ; break ;
- case 'EditDiv' : oCommand = new FCKDialogCommand( 'EditDiv', FCKLang.EditDiv, 'dialog/fck_div.html', 380, 210, null, null, false ) ; break ;
- case 'DeleteDiv' : oCommand = new FCKDeleteDivCommand() ; break ;
-
- case 'TableInsertRowAfter' : oCommand = new FCKTableCommand('TableInsertRowAfter') ; break ;
- case 'TableInsertRowBefore' : oCommand = new FCKTableCommand('TableInsertRowBefore') ; break ;
- case 'TableDeleteRows' : oCommand = new FCKTableCommand('TableDeleteRows') ; break ;
- case 'TableInsertColumnAfter' : oCommand = new FCKTableCommand('TableInsertColumnAfter') ; break ;
- case 'TableInsertColumnBefore' : oCommand = new FCKTableCommand('TableInsertColumnBefore') ; break ;
- case 'TableDeleteColumns' : oCommand = new FCKTableCommand('TableDeleteColumns') ; break ;
- case 'TableInsertCellAfter' : oCommand = new FCKTableCommand('TableInsertCellAfter') ; break ;
- case 'TableInsertCellBefore' : oCommand = new FCKTableCommand('TableInsertCellBefore') ; break ;
- case 'TableDeleteCells' : oCommand = new FCKTableCommand('TableDeleteCells') ; break ;
- case 'TableMergeCells' : oCommand = new FCKTableCommand('TableMergeCells') ; break ;
- case 'TableMergeRight' : oCommand = new FCKTableCommand('TableMergeRight') ; break ;
- case 'TableMergeDown' : oCommand = new FCKTableCommand('TableMergeDown') ; break ;
- case 'TableHorizontalSplitCell' : oCommand = new FCKTableCommand('TableHorizontalSplitCell') ; break ;
- case 'TableVerticalSplitCell' : oCommand = new FCKTableCommand('TableVerticalSplitCell') ; break ;
- case 'TableDelete' : oCommand = new FCKTableCommand('TableDelete') ; break ;
-
- case 'Form' : oCommand = new FCKDialogCommand( 'Form' , FCKLang.Form , 'dialog/fck_form.html' , 380, 210 ) ; break ;
- case 'Checkbox' : oCommand = new FCKDialogCommand( 'Checkbox' , FCKLang.Checkbox , 'dialog/fck_checkbox.html' , 380, 200 ) ; break ;
- case 'Radio' : oCommand = new FCKDialogCommand( 'Radio' , FCKLang.RadioButton , 'dialog/fck_radiobutton.html' , 380, 200 ) ; break ;
- case 'TextField' : oCommand = new FCKDialogCommand( 'TextField' , FCKLang.TextField , 'dialog/fck_textfield.html' , 380, 210 ) ; break ;
- case 'Textarea' : oCommand = new FCKDialogCommand( 'Textarea' , FCKLang.Textarea , 'dialog/fck_textarea.html' , 380, 210 ) ; break ;
- case 'HiddenField' : oCommand = new FCKDialogCommand( 'HiddenField', FCKLang.HiddenField , 'dialog/fck_hiddenfield.html' , 380, 190 ) ; break ;
- case 'Button' : oCommand = new FCKDialogCommand( 'Button' , FCKLang.Button , 'dialog/fck_button.html' , 380, 210 ) ; break ;
- case 'Select' : oCommand = new FCKDialogCommand( 'Select' , FCKLang.SelectionField, 'dialog/fck_select.html' , 400, 340 ) ; break ;
- case 'ImageButton' : oCommand = new FCKDialogCommand( 'ImageButton', FCKLang.ImageButton , 'dialog/fck_image.html?ImageButton', 450, 390 ) ; break ;
-
- case 'SpellCheck' : oCommand = new FCKSpellCheckCommand() ; break ;
- case 'FitWindow' : oCommand = new FCKFitWindow() ; break ;
-
- case 'Undo' : oCommand = new FCKUndoCommand() ; break ;
- case 'Redo' : oCommand = new FCKRedoCommand() ; break ;
- case 'Copy' : oCommand = new FCKCutCopyCommand( false ) ; break ;
- case 'Cut' : oCommand = new FCKCutCopyCommand( true ) ; break ;
-
- case 'SelectAll' : oCommand = new FCKSelectAllCommand() ; break ;
- case 'InsertOrderedList' : oCommand = new FCKListCommand( 'insertorderedlist', 'ol' ) ; break ;
- case 'InsertUnorderedList' : oCommand = new FCKListCommand( 'insertunorderedlist', 'ul' ) ; break ;
- case 'ShowBlocks' : oCommand = new FCKShowBlockCommand( 'ShowBlocks', FCKConfig.StartupShowBlocks ? FCK_TRISTATE_ON : FCK_TRISTATE_OFF ) ; break ;
-
- // Generic Undefined command (usually used when a command is under development).
- case 'Undefined' : oCommand = new FCKUndefinedCommand() ; break ;
-
- // By default we assume that it is a named command.
- default:
- if ( FCKRegexLib.NamedCommands.test( commandName ) )
- oCommand = new FCKNamedCommand( commandName ) ;
- else
- {
- alert( FCKLang.UnknownCommand.replace( /%1/g, commandName ) ) ;
- return null ;
- }
- }
-
- FCKCommands.LoadedCommands[ commandName ] = oCommand ;
-
- return oCommand ;
-}
-
-// Gets the state of the "Document Properties" button. It must be enabled only
-// when "Full Page" editing is available.
-FCKCommands.GetFullPageState = function()
-{
- return FCKConfig.FullPage ? FCK_TRISTATE_OFF : FCK_TRISTATE_DISABLED ;
-}
-
-
-FCKCommands.GetBooleanState = function( isDisabled )
-{
- return isDisabled ? FCK_TRISTATE_DISABLED : FCK_TRISTATE_OFF ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckconfig.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckconfig.js
deleted file mode 100755
index bf5f4c2..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fckconfig.js
+++ /dev/null
@@ -1,237 +0,0 @@
-/*
- * 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 ==
- *
- * Creates and initializes the FCKConfig object.
- */
-
-var FCKConfig = FCK.Config = new Object() ;
-
-/*
- For the next major version (probably 3.0) we should move all this stuff to
- another dedicated object and leave FCKConfig as a holder object for settings only).
-*/
-
-// Editor Base Path
-if ( document.location.protocol == 'file:' )
-{
- FCKConfig.BasePath = decodeURIComponent( document.location.pathname.substr(1) ) ;
- FCKConfig.BasePath = FCKConfig.BasePath.replace( /\\/gi, '/' ) ;
-
- // The way to address local files is different according to the OS.
- // In Windows it is file:// but in MacOs it is file:/// so let's get it automatically
- var sFullProtocol = document.location.href.match( /^(file\:\/{2,3})/ )[1] ;
- // #945 Opera does strange things with files loaded from the disk, and it fails in Mac to load xml files
- if ( FCKBrowserInfo.IsOpera )
- sFullProtocol += 'localhost/' ;
-
- FCKConfig.BasePath = sFullProtocol + FCKConfig.BasePath.substring( 0, FCKConfig.BasePath.lastIndexOf( '/' ) + 1) ;
-}
-else
- FCKConfig.BasePath = document.location.protocol + '//' + document.location.host +
- document.location.pathname.substring( 0, document.location.pathname.lastIndexOf( '/' ) + 1) ;
-
-FCKConfig.FullBasePath = FCKConfig.BasePath ;
-
-FCKConfig.EditorPath = FCKConfig.BasePath.replace( /editor\/$/, '' ) ;
-
-// There is a bug in Gecko. If the editor is hidden on startup, an error is
-// thrown when trying to get the screen dimensions.
-try
-{
- FCKConfig.ScreenWidth = screen.width ;
- FCKConfig.ScreenHeight = screen.height ;
-}
-catch (e)
-{
- FCKConfig.ScreenWidth = 800 ;
- FCKConfig.ScreenHeight = 600 ;
-}
-
-// Override the actual configuration values with the values passed throw the
-// hidden field "___Config".
-FCKConfig.ProcessHiddenField = function()
-{
- this.PageConfig = new Object() ;
-
- // Get the hidden field.
- var oConfigField = window.parent.document.getElementById( FCK.Name + '___Config' ) ;
-
- // Do nothing if the config field was not defined.
- if ( ! oConfigField ) return ;
-
- var aCouples = oConfigField.value.split('&') ;
-
- for ( var i = 0 ; i < aCouples.length ; i++ )
- {
- if ( aCouples[i].length == 0 )
- continue ;
-
- var aConfig = aCouples[i].split( '=' ) ;
- var sKey = decodeURIComponent( aConfig[0] ) ;
- var sVal = decodeURIComponent( aConfig[1] ) ;
-
- if ( sKey == 'CustomConfigurationsPath' ) // The Custom Config File path must be loaded immediately.
- FCKConfig[ sKey ] = sVal ;
-
- else if ( sVal.toLowerCase() == "true" ) // If it is a boolean TRUE.
- this.PageConfig[ sKey ] = true ;
-
- else if ( sVal.toLowerCase() == "false" ) // If it is a boolean FALSE.
- this.PageConfig[ sKey ] = false ;
-
- else if ( sVal.length > 0 && !isNaN( sVal ) ) // If it is a number.
- this.PageConfig[ sKey ] = parseInt( sVal, 10 ) ;
-
- else // In any other case it is a string.
- this.PageConfig[ sKey ] = sVal ;
- }
-}
-
-function FCKConfig_LoadPageConfig()
-{
- var oPageConfig = FCKConfig.PageConfig ;
- for ( var sKey in oPageConfig )
- FCKConfig[ sKey ] = oPageConfig[ sKey ] ;
-}
-
-function FCKConfig_PreProcess()
-{
- var oConfig = FCKConfig ;
-
- // Force debug mode if fckdebug=true in the QueryString (main page).
- if ( oConfig.AllowQueryStringDebug )
- {
- try
- {
- if ( (/fckdebug=true/i).test( window.top.location.search ) )
- oConfig.Debug = true ;
- }
- catch (e) { /* Ignore it. Much probably we are inside a FRAME where the "top" is in another domain (security error). */ }
- }
-
- // Certifies that the "PluginsPath" configuration ends with a slash.
- if ( !oConfig.PluginsPath.EndsWith('/') )
- oConfig.PluginsPath += '/' ;
-
- // If no ToolbarComboPreviewCSS, point it to EditorAreaCSS.
- var sComboPreviewCSS = oConfig.ToolbarComboPreviewCSS ;
- if ( !sComboPreviewCSS || sComboPreviewCSS.length == 0 )
- oConfig.ToolbarComboPreviewCSS = oConfig.EditorAreaCSS ;
-
- // Turn the attributes that will be removed in the RemoveFormat from a string to an array
- oConfig.RemoveAttributesArray = (oConfig.RemoveAttributes || '').split( ',' );
-
- if ( !FCKConfig.SkinEditorCSS || FCKConfig.SkinEditorCSS.length == 0 )
- FCKConfig.SkinEditorCSS = FCKConfig.SkinPath + 'fck_editor.css' ;
-
- if ( !FCKConfig.SkinDialogCSS || FCKConfig.SkinDialogCSS.length == 0 )
- FCKConfig.SkinDialogCSS = FCKConfig.SkinPath + 'fck_dialog.css' ;
-}
-
-// Define toolbar sets collection.
-FCKConfig.ToolbarSets = new Object() ;
-
-// Defines the plugins collection.
-FCKConfig.Plugins = new Object() ;
-FCKConfig.Plugins.Items = new Array() ;
-
-FCKConfig.Plugins.Add = function( name, langs, path )
-{
- FCKConfig.Plugins.Items.push( [name, langs, path] ) ;
-}
-
-// FCKConfig.ProtectedSource: object that holds a collection of Regular
-// Expressions that defined parts of the raw HTML that must remain untouched
-// like custom tags, scripts, server side code, etc...
-FCKConfig.ProtectedSource = new Object() ;
-
-// Generates a string used to identify and locate the Protected Tags comments.
-FCKConfig.ProtectedSource._CodeTag = (new Date()).valueOf() ;
-
-// Initialize the regex array with the default ones.
-FCKConfig.ProtectedSource.RegexEntries = [
- // First of any other protection, we must protect all comments to avoid
- // loosing them (of course, IE related).
- //g ,
-
- // Script tags will also be forced to be protected, otherwise IE will execute them.
- /' + document.getElementById( 'xToolbarSpace' ).innerHTML + '' ) ;
- eTargetDocument.close() ;
-
- if( FCKBrowserInfo.IsAIR )
- FCKAdobeAIR.ToolbarSet_InitOutFrame( eTargetDocument ) ;
-
- FCKTools.AddEventListener( eTargetDocument, 'contextmenu', FCKTools.CancelEvent ) ;
-
- // Load external resources (must be done here, otherwise Firefox will not
- // have the document DOM ready to be used right away.
- FCKTools.AppendStyleSheet( eTargetDocument, FCKConfig.SkinEditorCSS ) ;
-
- oToolbarSet = eToolbarTarget.__FCKToolbarSet = new FCKToolbarSet( eTargetDocument ) ;
- oToolbarSet._IFrame = eToolbarIFrame ;
-
- if ( FCK.IECleanup )
- FCK.IECleanup.AddItem( eToolbarTarget, FCKToolbarSet_Target_Cleanup ) ;
- }
-
- oToolbarSet.CurrentInstance = FCK ;
- if ( !oToolbarSet.ToolbarItems )
- oToolbarSet.ToolbarItems = FCKToolbarItems ;
-
- FCK.AttachToOnSelectionChange( oToolbarSet.RefreshItemsState ) ;
-
- return oToolbarSet ;
-}
-
-function FCK_OnBlur( editorInstance )
-{
- var eToolbarSet = editorInstance.ToolbarSet ;
-
- if ( eToolbarSet.CurrentInstance == editorInstance )
- eToolbarSet.Disable() ;
-}
-
-function FCK_OnFocus( editorInstance )
-{
- var oToolbarset = editorInstance.ToolbarSet ;
- var oInstance = editorInstance || FCK ;
-
- // Unregister the toolbar window from the current instance.
- oToolbarset.CurrentInstance.FocusManager.RemoveWindow( oToolbarset._IFrame.contentWindow ) ;
-
- // Set the new current instance.
- oToolbarset.CurrentInstance = oInstance ;
-
- // Register the toolbar window in the current instance.
- oInstance.FocusManager.AddWindow( oToolbarset._IFrame.contentWindow, true ) ;
-
- oToolbarset.Enable() ;
-}
-
-function FCKToolbarSet_Cleanup()
-{
- this._TargetElement = null ;
- this._IFrame = null ;
-}
-
-function FCKToolbarSet_Target_Cleanup()
-{
- this.__FCKToolbarSet = null ;
-}
-
-var FCKToolbarSet = function( targetDocument )
-{
- this._Document = targetDocument ;
-
- // Get the element that will hold the elements structure.
- this._TargetElement = targetDocument.getElementById( 'xToolbar' ) ;
-
- // Setup the expand and collapse handlers.
- var eExpandHandle = targetDocument.getElementById( 'xExpandHandle' ) ;
- var eCollapseHandle = targetDocument.getElementById( 'xCollapseHandle' ) ;
-
- eExpandHandle.title = FCKLang.ToolbarExpand ;
- FCKTools.AddEventListener( eExpandHandle, 'click', FCKToolbarSet_Expand_OnClick ) ;
-
- eCollapseHandle.title = FCKLang.ToolbarCollapse ;
- FCKTools.AddEventListener( eCollapseHandle, 'click', FCKToolbarSet_Collapse_OnClick ) ;
-
- // Set the toolbar state at startup.
- if ( !FCKConfig.ToolbarCanCollapse || FCKConfig.ToolbarStartExpanded )
- this.Expand() ;
- else
- this.Collapse() ;
-
- // Enable/disable the collapse handler
- eCollapseHandle.style.display = FCKConfig.ToolbarCanCollapse ? '' : 'none' ;
-
- if ( FCKConfig.ToolbarCanCollapse )
- eCollapseHandle.style.display = '' ;
- else
- targetDocument.getElementById( 'xTBLeftBorder' ).style.display = '' ;
-
- // Set the default properties.
- this.Toolbars = new Array() ;
- this.IsLoaded = false ;
-
- if ( FCK.IECleanup )
- FCK.IECleanup.AddItem( this, FCKToolbarSet_Cleanup ) ;
-}
-
-function FCKToolbarSet_Expand_OnClick()
-{
- FCK.ToolbarSet.Expand() ;
-}
-
-function FCKToolbarSet_Collapse_OnClick()
-{
- FCK.ToolbarSet.Collapse() ;
-}
-
-FCKToolbarSet.prototype.Expand = function()
-{
- this._ChangeVisibility( false ) ;
-}
-
-FCKToolbarSet.prototype.Collapse = function()
-{
- this._ChangeVisibility( true ) ;
-}
-
-FCKToolbarSet.prototype._ChangeVisibility = function( collapse )
-{
- this._Document.getElementById( 'xCollapsed' ).style.display = collapse ? '' : 'none' ;
- this._Document.getElementById( 'xExpanded' ).style.display = collapse ? 'none' : '' ;
-
- if ( FCKBrowserInfo.IsGecko )
- {
- // I had to use "setTimeout" because Gecko was not responding in a right
- // way when calling window.onresize() directly.
- FCKTools.RunFunction( window.onresize ) ;
- }
-}
-
-FCKToolbarSet.prototype.Load = function( toolbarSetName )
-{
- this.Name = toolbarSetName ;
-
- this.Items = new Array() ;
-
- // Reset the array of toolbar items that are active only on WYSIWYG mode.
- this.ItemsWysiwygOnly = new Array() ;
-
- // Reset the array of toolbar items that are sensitive to the cursor position.
- this.ItemsContextSensitive = new Array() ;
-
- // Cleanup the target element.
- this._TargetElement.innerHTML = '' ;
-
- var ToolbarSet = FCKConfig.ToolbarSets[toolbarSetName] ;
-
- if ( !ToolbarSet )
- {
- alert( FCKLang.UnknownToolbarSet.replace( /%1/g, toolbarSetName ) ) ;
- return ;
- }
-
- this.Toolbars = new Array() ;
-
- for ( var x = 0 ; x < ToolbarSet.length ; x++ )
- {
- var oToolbarItems = ToolbarSet[x] ;
-
- // If the configuration for the toolbar is missing some element or has any extra comma
- // this item won't be valid, so skip it and keep on processing.
- if ( !oToolbarItems )
- continue ;
-
- var oToolbar ;
-
- if ( typeof( oToolbarItems ) == 'string' )
- {
- if ( oToolbarItems == '/' )
- oToolbar = new FCKToolbarBreak() ;
- }
- else
- {
- oToolbar = new FCKToolbar() ;
-
- for ( var j = 0 ; j < oToolbarItems.length ; j++ )
- {
- var sItem = oToolbarItems[j] ;
-
- if ( sItem == '-')
- oToolbar.AddSeparator() ;
- else
- {
- var oItem = FCKToolbarItems.GetItem( sItem ) ;
- if ( oItem )
- {
- oToolbar.AddItem( oItem ) ;
-
- this.Items.push( oItem ) ;
-
- if ( !oItem.SourceView )
- this.ItemsWysiwygOnly.push( oItem ) ;
-
- if ( oItem.ContextSensitive )
- this.ItemsContextSensitive.push( oItem ) ;
- }
- }
- }
-
- // oToolbar.AddTerminator() ;
- }
-
- oToolbar.Create( this._TargetElement ) ;
-
- this.Toolbars[ this.Toolbars.length ] = oToolbar ;
- }
-
- FCKTools.DisableSelection( this._Document.getElementById( 'xCollapseHandle' ).parentNode ) ;
-
- if ( FCK.Status != FCK_STATUS_COMPLETE )
- FCK.Events.AttachEvent( 'OnStatusChange', this.RefreshModeState ) ;
- else
- this.RefreshModeState() ;
-
- this.IsLoaded = true ;
- this.IsEnabled = true ;
-
- FCKTools.RunFunction( this.OnLoad ) ;
-}
-
-FCKToolbarSet.prototype.Enable = function()
-{
- if ( this.IsEnabled )
- return ;
-
- this.IsEnabled = true ;
-
- var aItems = this.Items ;
- for ( var i = 0 ; i < aItems.length ; i++ )
- aItems[i].RefreshState() ;
-}
-
-FCKToolbarSet.prototype.Disable = function()
-{
- if ( !this.IsEnabled )
- return ;
-
- this.IsEnabled = false ;
-
- var aItems = this.Items ;
- for ( var i = 0 ; i < aItems.length ; i++ )
- aItems[i].Disable() ;
-}
-
-FCKToolbarSet.prototype.RefreshModeState = function( editorInstance )
-{
- if ( FCK.Status != FCK_STATUS_COMPLETE )
- return ;
-
- var oToolbarSet = editorInstance ? editorInstance.ToolbarSet : this ;
- var aItems = oToolbarSet.ItemsWysiwygOnly ;
-
- if ( FCK.EditMode == FCK_EDITMODE_WYSIWYG )
- {
- // Enable all buttons that are available on WYSIWYG mode only.
- for ( var i = 0 ; i < aItems.length ; i++ )
- aItems[i].Enable() ;
-
- // Refresh the buttons state.
- oToolbarSet.RefreshItemsState( editorInstance ) ;
- }
- else
- {
- // Refresh the buttons state.
- oToolbarSet.RefreshItemsState( editorInstance ) ;
-
- // Disable all buttons that are available on WYSIWYG mode only.
- for ( var j = 0 ; j < aItems.length ; j++ )
- aItems[j].Disable() ;
- }
-}
-
-FCKToolbarSet.prototype.RefreshItemsState = function( editorInstance )
-{
-
- var aItems = ( editorInstance ? editorInstance.ToolbarSet : this ).ItemsContextSensitive ;
-
- for ( var i = 0 ; i < aItems.length ; i++ )
- aItems[i].RefreshState() ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fcktools.js b/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fcktools.js
deleted file mode 100755
index db64bdd..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/_source/internals/fcktools.js
+++ /dev/null
@@ -1,749 +0,0 @@
-/*
- * 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 ==
- *
- * Utility functions.
- */
-
-var FCKTools = new Object() ;
-
-FCKTools.CreateBogusBR = function( targetDocument )
-{
- var eBR = targetDocument.createElement( 'br' ) ;
-// eBR.setAttribute( '_moz_editor_bogus_node', 'TRUE' ) ;
- eBR.setAttribute( 'type', '_moz' ) ;
- return eBR ;
-}
-
-/**
- * Fixes relative URL entries defined inside CSS styles by appending a prefix
- * to them.
- * @param (String) cssStyles The CSS styles definition possibly containing url()
- * paths.
- * @param (String) urlFixPrefix The prefix to append to relative URLs.
- */
-FCKTools.FixCssUrls = function( urlFixPrefix, cssStyles )
-{
- if ( !urlFixPrefix || urlFixPrefix.length == 0 )
- return cssStyles ;
-
- return cssStyles.replace( /url\s*\(([\s'"]*)(.*?)([\s"']*)\)/g, function( match, opener, path, closer )
- {
- if ( /^\/|^\w?:/.test( path ) )
- return match ;
- else
- return 'url(' + opener + urlFixPrefix + path + closer + ')' ;
- } ) ;
-}
-
-FCKTools._GetUrlFixedCss = function( cssStyles, urlFixPrefix )
-{
- var match = cssStyles.match( /^([^|]+)\|([\s\S]*)/ ) ;
-
- if ( match )
- return FCKTools.FixCssUrls( match[1], match[2] ) ;
- else
- return cssStyles ;
-}
-
-/**
- * Appends a or
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_div.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_div.html
deleted file mode 100755
index c5496e1..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_div.html
+++ /dev/null
@@ -1,396 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_docprops.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_docprops.html
deleted file mode 100755
index e1875d7..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_docprops.html
+++ /dev/null
@@ -1,600 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_docprops/fck_document_preview.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_docprops/fck_document_preview.html
deleted file mode 100755
index 368c839..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_docprops/fck_document_preview.html
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
- Document Properties - Preview
-
-
-
-
-
-
-
-
- Normal Text
-
-
- Link Text
-
-
-
-
- Visited Link
-
-
- Active Link
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash.html
deleted file mode 100755
index 2db4846..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash.html
+++ /dev/null
@@ -1,152 +0,0 @@
-
-
-
-
- Flash Properties
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Scale
-
-
- Show all
- No Border
- Exact Fit
-
-
-
-
-
-
-
-
-
-
-
-
Style
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash/fck_flash.js b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash/fck_flash.js
deleted file mode 100755
index ca62ad0..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash/fck_flash.js
+++ /dev/null
@@ -1,300 +0,0 @@
-/*
- * 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 ==
- *
- * Scripts related to the Flash dialog window (see fck_flash.html).
- */
-
-var dialog = window.parent ;
-var oEditor = dialog.InnerDialogLoaded() ;
-var FCK = oEditor.FCK ;
-var FCKLang = oEditor.FCKLang ;
-var FCKConfig = oEditor.FCKConfig ;
-var FCKTools = oEditor.FCKTools ;
-
-//#### Dialog Tabs
-
-// Set the dialog tabs.
-dialog.AddTab( 'Info', oEditor.FCKLang.DlgInfoTab ) ;
-
-if ( FCKConfig.FlashUpload )
- dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload ) ;
-
-if ( !FCKConfig.FlashDlgHideAdvanced )
- dialog.AddTab( 'Advanced', oEditor.FCKLang.DlgAdvancedTag ) ;
-
-// Function called when a dialog tag is selected.
-function OnDialogTabChange( tabCode )
-{
- ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
- ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
- ShowE('divAdvanced' , ( tabCode == 'Advanced' ) ) ;
-}
-
-// Get the selected flash embed (if available).
-var oFakeImage = dialog.Selection.GetSelectedElement() ;
-var oEmbed ;
-
-if ( oFakeImage )
-{
- if ( oFakeImage.tagName == 'IMG' && oFakeImage.getAttribute('_fckflash') )
- oEmbed = FCK.GetRealElement( oFakeImage ) ;
- else
- oFakeImage = null ;
-}
-
-window.onload = function()
-{
- // Translate the dialog box texts.
- oEditor.FCKLanguageManager.TranslatePage(document) ;
-
- // Load the selected element information (if any).
- LoadSelection() ;
-
- // Show/Hide the "Browse Server" button.
- GetE('tdBrowse').style.display = FCKConfig.FlashBrowser ? '' : 'none' ;
-
- // Set the actual uploader URL.
- if ( FCKConfig.FlashUpload )
- GetE('frmUpload').action = FCKConfig.FlashUploadURL ;
-
- dialog.SetAutoSize( true ) ;
-
- // Activate the "OK" button.
- dialog.SetOkButton( true ) ;
-
- SelectField( 'txtUrl' ) ;
-}
-
-function LoadSelection()
-{
- if ( ! oEmbed ) return ;
-
- GetE('txtUrl').value = GetAttribute( oEmbed, 'src', '' ) ;
- GetE('txtWidth').value = GetAttribute( oEmbed, 'width', '' ) ;
- GetE('txtHeight').value = GetAttribute( oEmbed, 'height', '' ) ;
-
- // Get Advances Attributes
- GetE('txtAttId').value = oEmbed.id ;
- GetE('chkAutoPlay').checked = GetAttribute( oEmbed, 'play', 'true' ) == 'true' ;
- GetE('chkLoop').checked = GetAttribute( oEmbed, 'loop', 'true' ) == 'true' ;
- GetE('chkMenu').checked = GetAttribute( oEmbed, 'menu', 'true' ) == 'true' ;
- GetE('cmbScale').value = GetAttribute( oEmbed, 'scale', '' ).toLowerCase() ;
-
- GetE('txtAttTitle').value = oEmbed.title ;
-
- if ( oEditor.FCKBrowserInfo.IsIE )
- {
- GetE('txtAttClasses').value = oEmbed.getAttribute('className') || '' ;
- GetE('txtAttStyle').value = oEmbed.style.cssText ;
- }
- else
- {
- GetE('txtAttClasses').value = oEmbed.getAttribute('class',2) || '' ;
- GetE('txtAttStyle').value = oEmbed.getAttribute('style',2) || '' ;
- }
-
- UpdatePreview() ;
-}
-
-//#### The OK button was hit.
-function Ok()
-{
- if ( GetE('txtUrl').value.length == 0 )
- {
- dialog.SetSelectedTab( 'Info' ) ;
- GetE('txtUrl').focus() ;
-
- alert( oEditor.FCKLang.DlgAlertUrl ) ;
-
- return false ;
- }
-
- oEditor.FCKUndo.SaveUndoStep() ;
- if ( !oEmbed )
- {
- oEmbed = FCK.EditorDocument.createElement( 'EMBED' ) ;
- oFakeImage = null ;
- }
- UpdateEmbed( oEmbed ) ;
-
- if ( !oFakeImage )
- {
- oFakeImage = oEditor.FCKDocumentProcessor_CreateFakeImage( 'FCK__Flash', oEmbed ) ;
- oFakeImage.setAttribute( '_fckflash', 'true', 0 ) ;
- oFakeImage = FCK.InsertElement( oFakeImage ) ;
- }
-
- oEditor.FCKEmbedAndObjectProcessor.RefreshView( oFakeImage, oEmbed ) ;
-
- return true ;
-}
-
-function UpdateEmbed( e )
-{
- SetAttribute( e, 'type' , 'application/x-shockwave-flash' ) ;
- SetAttribute( e, 'pluginspage' , 'http://www.macromedia.com/go/getflashplayer' ) ;
-
- SetAttribute( e, 'src', GetE('txtUrl').value ) ;
- SetAttribute( e, "width" , GetE('txtWidth').value ) ;
- SetAttribute( e, "height", GetE('txtHeight').value ) ;
-
- // Advances Attributes
-
- SetAttribute( e, 'id' , GetE('txtAttId').value ) ;
- SetAttribute( e, 'scale', GetE('cmbScale').value ) ;
-
- SetAttribute( e, 'play', GetE('chkAutoPlay').checked ? 'true' : 'false' ) ;
- SetAttribute( e, 'loop', GetE('chkLoop').checked ? 'true' : 'false' ) ;
- SetAttribute( e, 'menu', GetE('chkMenu').checked ? 'true' : 'false' ) ;
-
- SetAttribute( e, 'title' , GetE('txtAttTitle').value ) ;
-
- if ( oEditor.FCKBrowserInfo.IsIE )
- {
- SetAttribute( e, 'className', GetE('txtAttClasses').value ) ;
- e.style.cssText = GetE('txtAttStyle').value ;
- }
- else
- {
- SetAttribute( e, 'class', GetE('txtAttClasses').value ) ;
- SetAttribute( e, 'style', GetE('txtAttStyle').value ) ;
- }
-}
-
-var ePreview ;
-
-function SetPreviewElement( previewEl )
-{
- ePreview = previewEl ;
-
- if ( GetE('txtUrl').value.length > 0 )
- UpdatePreview() ;
-}
-
-function UpdatePreview()
-{
- if ( !ePreview )
- return ;
-
- while ( ePreview.firstChild )
- ePreview.removeChild( ePreview.firstChild ) ;
-
- if ( GetE('txtUrl').value.length == 0 )
- ePreview.innerHTML = ' ' ;
- else
- {
- var oDoc = ePreview.ownerDocument || ePreview.document ;
- var e = oDoc.createElement( 'EMBED' ) ;
-
- SetAttribute( e, 'src', GetE('txtUrl').value ) ;
- SetAttribute( e, 'type', 'application/x-shockwave-flash' ) ;
- SetAttribute( e, 'width', '100%' ) ;
- SetAttribute( e, 'height', '100%' ) ;
-
- ePreview.appendChild( e ) ;
- }
-}
-
-//
-
-function BrowseServer()
-{
- OpenFileBrowser( FCKConfig.FlashBrowserURL, FCKConfig.FlashBrowserWindowWidth, FCKConfig.FlashBrowserWindowHeight ) ;
-}
-
-function SetUrl( url, width, height )
-{
- GetE('txtUrl').value = url ;
-
- if ( width )
- GetE('txtWidth').value = width ;
-
- if ( height )
- GetE('txtHeight').value = height ;
-
- UpdatePreview() ;
-
- dialog.SetSelectedTab( 'Info' ) ;
-}
-
-function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
-{
- // Remove animation
- window.parent.Throbber.Hide() ;
- GetE( 'divUpload' ).style.display = '' ;
-
- switch ( errorNumber )
- {
- case 0 : // No errors
- alert( 'Your file has been successfully uploaded' ) ;
- break ;
- case 1 : // Custom error
- alert( customMsg ) ;
- return ;
- case 101 : // Custom warning
- alert( customMsg ) ;
- break ;
- case 201 :
- alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
- break ;
- case 202 :
- alert( 'Invalid file type' ) ;
- return ;
- case 203 :
- alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
- return ;
- case 500 :
- alert( 'The connector is disabled' ) ;
- break ;
- default :
- alert( 'Error on file upload. Error number: ' + errorNumber ) ;
- return ;
- }
-
- SetUrl( fileUrl ) ;
- GetE('frmUpload').reset() ;
-}
-
-var oUploadAllowedExtRegex = new RegExp( FCKConfig.FlashUploadAllowedExtensions, 'i' ) ;
-var oUploadDeniedExtRegex = new RegExp( FCKConfig.FlashUploadDeniedExtensions, 'i' ) ;
-
-function CheckUpload()
-{
- var sFile = GetE('txtUploadFile').value ;
-
- if ( sFile.length == 0 )
- {
- alert( 'Please select a file to upload' ) ;
- return false ;
- }
-
- if ( ( FCKConfig.FlashUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
- ( FCKConfig.FlashUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
- {
- OnUploadCompleted( 202 ) ;
- return false ;
- }
-
- // Show animation
- window.parent.Throbber.Show( 100 ) ;
- GetE( 'divUpload' ).style.display = 'none' ;
-
- return true ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash/fck_flash_preview.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash/fck_flash_preview.html
deleted file mode 100755
index a590521..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_flash/fck_flash_preview.html
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_form.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_form.html
deleted file mode 100755
index c724282..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_form.html
+++ /dev/null
@@ -1,109 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_hiddenfield.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_hiddenfield.html
deleted file mode 100755
index 2d0e0b5..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_hiddenfield.html
+++ /dev/null
@@ -1,115 +0,0 @@
-
-
-
-
- Hidden Field Properties
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image.html
deleted file mode 100755
index 75681bf..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image.html
+++ /dev/null
@@ -1,258 +0,0 @@
-
-
-
-
- Image Properties
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image/fck_image.js b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image/fck_image.js
deleted file mode 100755
index a5cf73b..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image/fck_image.js
+++ /dev/null
@@ -1,512 +0,0 @@
-/*
- * 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 ==
- *
- * Scripts related to the Image dialog window (see fck_image.html).
- */
-
-var dialog = window.parent ;
-var oEditor = dialog.InnerDialogLoaded() ;
-var FCK = oEditor.FCK ;
-var FCKLang = oEditor.FCKLang ;
-var FCKConfig = oEditor.FCKConfig ;
-var FCKDebug = oEditor.FCKDebug ;
-var FCKTools = oEditor.FCKTools ;
-
-var bImageButton = ( document.location.search.length > 0 && document.location.search.substr(1) == 'ImageButton' ) ;
-
-//#### Dialog Tabs
-
-// Set the dialog tabs.
-dialog.AddTab( 'Info', FCKLang.DlgImgInfoTab ) ;
-
-if ( !bImageButton && !FCKConfig.ImageDlgHideLink )
- dialog.AddTab( 'Link', FCKLang.DlgImgLinkTab ) ;
-
-if ( FCKConfig.ImageUpload )
- dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload ) ;
-
-if ( !FCKConfig.ImageDlgHideAdvanced )
- dialog.AddTab( 'Advanced', FCKLang.DlgAdvancedTag ) ;
-
-// Function called when a dialog tag is selected.
-function OnDialogTabChange( tabCode )
-{
- ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
- ShowE('divLink' , ( tabCode == 'Link' ) ) ;
- ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
- ShowE('divAdvanced' , ( tabCode == 'Advanced' ) ) ;
-}
-
-// Get the selected image (if available).
-var oImage = dialog.Selection.GetSelectedElement() ;
-
-if ( oImage && oImage.tagName != 'IMG' && !( oImage.tagName == 'INPUT' && oImage.type == 'image' ) )
- oImage = null ;
-
-// Get the active link.
-var oLink = dialog.Selection.GetSelection().MoveToAncestorNode( 'A' ) ;
-
-var oImageOriginal ;
-
-function UpdateOriginal( resetSize )
-{
- if ( !eImgPreview )
- return ;
-
- if ( GetE('txtUrl').value.length == 0 )
- {
- oImageOriginal = null ;
- return ;
- }
-
- oImageOriginal = document.createElement( 'IMG' ) ; // new Image() ;
-
- if ( resetSize )
- {
- oImageOriginal.onload = function()
- {
- this.onload = null ;
- ResetSizes() ;
- }
- }
-
- oImageOriginal.src = eImgPreview.src ;
-}
-
-var bPreviewInitialized ;
-
-window.onload = function()
-{
- // Translate the dialog box texts.
- oEditor.FCKLanguageManager.TranslatePage(document) ;
-
- GetE('btnLockSizes').title = FCKLang.DlgImgLockRatio ;
- GetE('btnResetSize').title = FCKLang.DlgBtnResetSize ;
-
- // Load the selected element information (if any).
- LoadSelection() ;
-
- // Show/Hide the "Browse Server" button.
- GetE('tdBrowse').style.display = FCKConfig.ImageBrowser ? '' : 'none' ;
- GetE('divLnkBrowseServer').style.display = FCKConfig.LinkBrowser ? '' : 'none' ;
-
- UpdateOriginal() ;
-
- // Set the actual uploader URL.
- if ( FCKConfig.ImageUpload )
- GetE('frmUpload').action = FCKConfig.ImageUploadURL ;
-
- dialog.SetAutoSize( true ) ;
-
- // Activate the "OK" button.
- dialog.SetOkButton( true ) ;
-
- SelectField( 'txtUrl' ) ;
-}
-
-function LoadSelection()
-{
- if ( ! oImage ) return ;
-
- var sUrl = oImage.getAttribute( '_fcksavedurl' ) ;
- if ( sUrl == null )
- sUrl = GetAttribute( oImage, 'src', '' ) ;
-
- GetE('txtUrl').value = sUrl ;
- GetE('txtAlt').value = GetAttribute( oImage, 'alt', '' ) ;
- GetE('txtVSpace').value = GetAttribute( oImage, 'vspace', '' ) ;
- GetE('txtHSpace').value = GetAttribute( oImage, 'hspace', '' ) ;
- GetE('txtBorder').value = GetAttribute( oImage, 'border', '' ) ;
- GetE('cmbAlign').value = GetAttribute( oImage, 'align', '' ) ;
-
- var iWidth, iHeight ;
-
- var regexSize = /^\s*(\d+)px\s*$/i ;
-
- if ( oImage.style.width )
- {
- var aMatchW = oImage.style.width.match( regexSize ) ;
- if ( aMatchW )
- {
- iWidth = aMatchW[1] ;
- oImage.style.width = '' ;
- SetAttribute( oImage, 'width' , iWidth ) ;
- }
- }
-
- if ( oImage.style.height )
- {
- var aMatchH = oImage.style.height.match( regexSize ) ;
- if ( aMatchH )
- {
- iHeight = aMatchH[1] ;
- oImage.style.height = '' ;
- SetAttribute( oImage, 'height', iHeight ) ;
- }
- }
-
- GetE('txtWidth').value = iWidth ? iWidth : GetAttribute( oImage, "width", '' ) ;
- GetE('txtHeight').value = iHeight ? iHeight : GetAttribute( oImage, "height", '' ) ;
-
- // Get Advances Attributes
- GetE('txtAttId').value = oImage.id ;
- GetE('cmbAttLangDir').value = oImage.dir ;
- GetE('txtAttLangCode').value = oImage.lang ;
- GetE('txtAttTitle').value = oImage.title ;
- GetE('txtLongDesc').value = oImage.longDesc ;
-
- if ( oEditor.FCKBrowserInfo.IsIE )
- {
- GetE('txtAttClasses').value = oImage.className || '' ;
- GetE('txtAttStyle').value = oImage.style.cssText ;
- }
- else
- {
- GetE('txtAttClasses').value = oImage.getAttribute('class',2) || '' ;
- GetE('txtAttStyle').value = oImage.getAttribute('style',2) ;
- }
-
- if ( oLink )
- {
- var sLinkUrl = oLink.getAttribute( '_fcksavedurl' ) ;
- if ( sLinkUrl == null )
- sLinkUrl = oLink.getAttribute('href',2) ;
-
- GetE('txtLnkUrl').value = sLinkUrl ;
- GetE('cmbLnkTarget').value = oLink.target ;
- }
-
- UpdatePreview() ;
-}
-
-//#### The OK button was hit.
-function Ok()
-{
- if ( GetE('txtUrl').value.length == 0 )
- {
- dialog.SetSelectedTab( 'Info' ) ;
- GetE('txtUrl').focus() ;
-
- alert( FCKLang.DlgImgAlertUrl ) ;
-
- return false ;
- }
-
- var bHasImage = ( oImage != null ) ;
-
- if ( bHasImage && bImageButton && oImage.tagName == 'IMG' )
- {
- if ( confirm( 'Do you want to transform the selected image on a image button?' ) )
- oImage = null ;
- }
- else if ( bHasImage && !bImageButton && oImage.tagName == 'INPUT' )
- {
- if ( confirm( 'Do you want to transform the selected image button on a simple image?' ) )
- oImage = null ;
- }
-
- oEditor.FCKUndo.SaveUndoStep() ;
- if ( !bHasImage )
- {
- if ( bImageButton )
- {
- oImage = FCK.EditorDocument.createElement( 'input' ) ;
- oImage.type = 'image' ;
- oImage = FCK.InsertElement( oImage ) ;
- }
- else
- oImage = FCK.InsertElement( 'img' ) ;
- }
-
- UpdateImage( oImage ) ;
-
- var sLnkUrl = GetE('txtLnkUrl').value.Trim() ;
-
- if ( sLnkUrl.length == 0 )
- {
- if ( oLink )
- FCK.ExecuteNamedCommand( 'Unlink' ) ;
- }
- else
- {
- if ( oLink ) // Modifying an existent link.
- oLink.href = sLnkUrl ;
- else // Creating a new link.
- {
- if ( !bHasImage )
- oEditor.FCKSelection.SelectNode( oImage ) ;
-
- oLink = oEditor.FCK.CreateLink( sLnkUrl )[0] ;
-
- if ( !bHasImage )
- {
- oEditor.FCKSelection.SelectNode( oLink ) ;
- oEditor.FCKSelection.Collapse( false ) ;
- }
- }
-
- SetAttribute( oLink, '_fcksavedurl', sLnkUrl ) ;
- SetAttribute( oLink, 'target', GetE('cmbLnkTarget').value ) ;
- }
-
- return true ;
-}
-
-function UpdateImage( e, skipId )
-{
- e.src = GetE('txtUrl').value ;
- SetAttribute( e, "_fcksavedurl", GetE('txtUrl').value ) ;
- SetAttribute( e, "alt" , GetE('txtAlt').value ) ;
- SetAttribute( e, "width" , GetE('txtWidth').value ) ;
- SetAttribute( e, "height", GetE('txtHeight').value ) ;
- SetAttribute( e, "vspace", GetE('txtVSpace').value ) ;
- SetAttribute( e, "hspace", GetE('txtHSpace').value ) ;
- SetAttribute( e, "border", GetE('txtBorder').value ) ;
- SetAttribute( e, "align" , GetE('cmbAlign').value ) ;
-
- // Advances Attributes
-
- if ( ! skipId )
- SetAttribute( e, 'id', GetE('txtAttId').value ) ;
-
- SetAttribute( e, 'dir' , GetE('cmbAttLangDir').value ) ;
- SetAttribute( e, 'lang' , GetE('txtAttLangCode').value ) ;
- SetAttribute( e, 'title' , GetE('txtAttTitle').value ) ;
- SetAttribute( e, 'longDesc' , GetE('txtLongDesc').value ) ;
-
- if ( oEditor.FCKBrowserInfo.IsIE )
- {
- e.className = GetE('txtAttClasses').value ;
- e.style.cssText = GetE('txtAttStyle').value ;
- }
- else
- {
- SetAttribute( e, 'class' , GetE('txtAttClasses').value ) ;
- SetAttribute( e, 'style', GetE('txtAttStyle').value ) ;
- }
-}
-
-var eImgPreview ;
-var eImgPreviewLink ;
-
-function SetPreviewElements( imageElement, linkElement )
-{
- eImgPreview = imageElement ;
- eImgPreviewLink = linkElement ;
-
- UpdatePreview() ;
- UpdateOriginal() ;
-
- bPreviewInitialized = true ;
-}
-
-function UpdatePreview()
-{
- if ( !eImgPreview || !eImgPreviewLink )
- return ;
-
- if ( GetE('txtUrl').value.length == 0 )
- eImgPreviewLink.style.display = 'none' ;
- else
- {
- UpdateImage( eImgPreview, true ) ;
-
- if ( GetE('txtLnkUrl').value.Trim().length > 0 )
- eImgPreviewLink.href = 'javascript:void(null);' ;
- else
- SetAttribute( eImgPreviewLink, 'href', '' ) ;
-
- eImgPreviewLink.style.display = '' ;
- }
-}
-
-var bLockRatio = true ;
-
-function SwitchLock( lockButton )
-{
- bLockRatio = !bLockRatio ;
- lockButton.className = bLockRatio ? 'BtnLocked' : 'BtnUnlocked' ;
- lockButton.title = bLockRatio ? 'Lock sizes' : 'Unlock sizes' ;
-
- if ( bLockRatio )
- {
- if ( GetE('txtWidth').value.length > 0 )
- OnSizeChanged( 'Width', GetE('txtWidth').value ) ;
- else
- OnSizeChanged( 'Height', GetE('txtHeight').value ) ;
- }
-}
-
-// Fired when the width or height input texts change
-function OnSizeChanged( dimension, value )
-{
- // Verifies if the aspect ration has to be maintained
- if ( oImageOriginal && bLockRatio )
- {
- var e = dimension == 'Width' ? GetE('txtHeight') : GetE('txtWidth') ;
-
- if ( value.length == 0 || isNaN( value ) )
- {
- e.value = '' ;
- return ;
- }
-
- if ( dimension == 'Width' )
- value = value == 0 ? 0 : Math.round( oImageOriginal.height * ( value / oImageOriginal.width ) ) ;
- else
- value = value == 0 ? 0 : Math.round( oImageOriginal.width * ( value / oImageOriginal.height ) ) ;
-
- if ( !isNaN( value ) )
- e.value = value ;
- }
-
- UpdatePreview() ;
-}
-
-// Fired when the Reset Size button is clicked
-function ResetSizes()
-{
- if ( ! oImageOriginal ) return ;
- if ( oEditor.FCKBrowserInfo.IsGecko && !oImageOriginal.complete )
- {
- setTimeout( ResetSizes, 50 ) ;
- return ;
- }
-
- GetE('txtWidth').value = oImageOriginal.width ;
- GetE('txtHeight').value = oImageOriginal.height ;
-
- UpdatePreview() ;
-}
-
-function BrowseServer()
-{
- OpenServerBrowser(
- 'Image',
- FCKConfig.ImageBrowserURL,
- FCKConfig.ImageBrowserWindowWidth,
- FCKConfig.ImageBrowserWindowHeight ) ;
-}
-
-function LnkBrowseServer()
-{
- OpenServerBrowser(
- 'Link',
- FCKConfig.LinkBrowserURL,
- FCKConfig.LinkBrowserWindowWidth,
- FCKConfig.LinkBrowserWindowHeight ) ;
-}
-
-function OpenServerBrowser( type, url, width, height )
-{
- sActualBrowser = type ;
- OpenFileBrowser( url, width, height ) ;
-}
-
-var sActualBrowser ;
-
-function SetUrl( url, width, height, alt )
-{
- if ( sActualBrowser == 'Link' )
- {
- GetE('txtLnkUrl').value = url ;
- UpdatePreview() ;
- }
- else
- {
- GetE('txtUrl').value = url ;
- GetE('txtWidth').value = width ? width : '' ;
- GetE('txtHeight').value = height ? height : '' ;
-
- if ( alt )
- GetE('txtAlt').value = alt;
-
- UpdatePreview() ;
- UpdateOriginal( true ) ;
- }
-
- dialog.SetSelectedTab( 'Info' ) ;
-}
-
-function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
-{
- // Remove animation
- window.parent.Throbber.Hide() ;
- GetE( 'divUpload' ).style.display = '' ;
-
- switch ( errorNumber )
- {
- case 0 : // No errors
- alert( 'Your file has been successfully uploaded' ) ;
- break ;
- case 1 : // Custom error
- alert( customMsg ) ;
- return ;
- case 101 : // Custom warning
- alert( customMsg ) ;
- break ;
- case 201 :
- alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
- break ;
- case 202 :
- alert( 'Invalid file type' ) ;
- return ;
- case 203 :
- alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
- return ;
- case 500 :
- alert( 'The connector is disabled' ) ;
- break ;
- default :
- alert( 'Error on file upload. Error number: ' + errorNumber ) ;
- return ;
- }
-
- sActualBrowser = '' ;
- SetUrl( fileUrl ) ;
- GetE('frmUpload').reset() ;
-}
-
-var oUploadAllowedExtRegex = new RegExp( FCKConfig.ImageUploadAllowedExtensions, 'i' ) ;
-var oUploadDeniedExtRegex = new RegExp( FCKConfig.ImageUploadDeniedExtensions, 'i' ) ;
-
-function CheckUpload()
-{
- var sFile = GetE('txtUploadFile').value ;
-
- if ( sFile.length == 0 )
- {
- alert( 'Please select a file to upload' ) ;
- return false ;
- }
-
- if ( ( FCKConfig.ImageUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
- ( FCKConfig.ImageUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
- {
- OnUploadCompleted( 202 ) ;
- return false ;
- }
-
- // Show animation
- window.parent.Throbber.Show( 100 ) ;
- GetE( 'divUpload' ).style.display = 'none' ;
-
- return true ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image/fck_image_preview.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image/fck_image_preview.html
deleted file mode 100755
index 1c6fe52..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_image/fck_image_preview.html
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
- Lorem ipsum dolor sit amet, consectetuer adipiscing
- elit. Maecenas feugiat consequat diam. Maecenas metus. Vivamus diam purus, cursus
- a, commodo non, facilisis vitae, nulla. Aenean dictum lacinia tortor. Nunc iaculis,
- nibh non iaculis aliquam, orci felis euismod neque, sed ornare massa mauris sed
- velit. Nulla pretium mi et risus. Fusce mi pede, tempor id, cursus ac, ullamcorper
- nec, enim. Sed tortor. Curabitur molestie. Duis velit augue, condimentum at, ultrices
- a, luctus ut, orci. Donec pellentesque egestas eros. Integer cursus, augue in cursus
- faucibus, eros pede bibendum sem, in tempus tellus justo quis ligula. Etiam eget
- tortor. Vestibulum rutrum, est ut placerat elementum, lectus nisl aliquam velit,
- tempor aliquam eros nunc nonummy metus. In eros metus, gravida a, gravida sed, lobortis
- id, turpis. Ut ultrices, ipsum at venenatis fringilla, sem nulla lacinia tellus,
- eget aliquet turpis mauris non enim. Nam turpis. Suspendisse lacinia. Curabitur
- ac tortor ut ipsum egestas elementum. Nunc imperdiet gravida mauris.
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_link.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_link.html
deleted file mode 100755
index 061c84e..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_link.html
+++ /dev/null
@@ -1,295 +0,0 @@
-
-
-
-
- Link Properties
-
-
-
-
-
-
-
-
Link Type
-
- URL
- Anchor in this page
- E-Mail
-
-
-
-
-
-
-
-
-
- Select an Anchor
-
-
-
-
- By Anchor Name
-
-
-
-
-
-
- By Element Id
-
-
-
-
-
-
-
-
- <No anchors available in the document>
-
-
-
- E-Mail Address
-
- Message Subject
-
- Message Body
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_link/fck_link.js b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_link/fck_link.js
deleted file mode 100755
index 1c661eb..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_link/fck_link.js
+++ /dev/null
@@ -1,893 +0,0 @@
-/*
- * 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 ==
- *
- * Scripts related to the Link dialog window (see fck_link.html).
- */
-
-var dialog = window.parent ;
-var oEditor = dialog.InnerDialogLoaded() ;
-
-var FCK = oEditor.FCK ;
-var FCKLang = oEditor.FCKLang ;
-var FCKConfig = oEditor.FCKConfig ;
-var FCKRegexLib = oEditor.FCKRegexLib ;
-var FCKTools = oEditor.FCKTools ;
-
-//#### Dialog Tabs
-
-// Set the dialog tabs.
-dialog.AddTab( 'Info', FCKLang.DlgLnkInfoTab ) ;
-
-if ( !FCKConfig.LinkDlgHideTarget )
- dialog.AddTab( 'Target', FCKLang.DlgLnkTargetTab, true ) ;
-
-if ( FCKConfig.LinkUpload )
- dialog.AddTab( 'Upload', FCKLang.DlgLnkUpload, true ) ;
-
-if ( !FCKConfig.LinkDlgHideAdvanced )
- dialog.AddTab( 'Advanced', FCKLang.DlgAdvancedTag ) ;
-
-// Function called when a dialog tag is selected.
-function OnDialogTabChange( tabCode )
-{
- ShowE('divInfo' , ( tabCode == 'Info' ) ) ;
- ShowE('divTarget' , ( tabCode == 'Target' ) ) ;
- ShowE('divUpload' , ( tabCode == 'Upload' ) ) ;
- ShowE('divAttribs' , ( tabCode == 'Advanced' ) ) ;
-
- dialog.SetAutoSize( true ) ;
-}
-
-//#### Regular Expressions library.
-var oRegex = new Object() ;
-
-oRegex.UriProtocol = /^(((http|https|ftp|news):\/\/)|mailto:)/gi ;
-
-oRegex.UrlOnChangeProtocol = /^(http|https|ftp|news):\/\/(?=.)/gi ;
-
-oRegex.UrlOnChangeTestOther = /^((javascript:)|[#\/\.])/gi ;
-
-oRegex.ReserveTarget = /^_(blank|self|top|parent)$/i ;
-
-oRegex.PopupUri = /^javascript:void\(\s*window.open\(\s*'([^']+)'\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*\)\s*$/ ;
-
-// Accessible popups
-oRegex.OnClickPopup = /^\s*on[cC]lick="\s*window.open\(\s*this\.href\s*,\s*(?:'([^']*)'|null)\s*,\s*'([^']*)'\s*\)\s*;\s*return\s*false;*\s*"$/ ;
-
-oRegex.PopupFeatures = /(?:^|,)([^=]+)=(\d+|yes|no)/gi ;
-
-//#### Parser Functions
-
-var oParser = new Object() ;
-
-// This method simply returns the two inputs in numerical order. You can even
-// provide strings, as the method would parseInt() the values.
-oParser.SortNumerical = function(a, b)
-{
- return parseInt( a, 10 ) - parseInt( b, 10 ) ;
-}
-
-oParser.ParseEMailParams = function(sParams)
-{
- // Initialize the oEMailParams object.
- var oEMailParams = new Object() ;
- oEMailParams.Subject = '' ;
- oEMailParams.Body = '' ;
-
- var aMatch = sParams.match( /(^|^\?|&)subject=([^&]+)/i ) ;
- if ( aMatch ) oEMailParams.Subject = decodeURIComponent( aMatch[2] ) ;
-
- aMatch = sParams.match( /(^|^\?|&)body=([^&]+)/i ) ;
- if ( aMatch ) oEMailParams.Body = decodeURIComponent( aMatch[2] ) ;
-
- return oEMailParams ;
-}
-
-// This method returns either an object containing the email info, or FALSE
-// if the parameter is not an email link.
-oParser.ParseEMailUri = function( sUrl )
-{
- // Initializes the EMailInfo object.
- var oEMailInfo = new Object() ;
- oEMailInfo.Address = '' ;
- oEMailInfo.Subject = '' ;
- oEMailInfo.Body = '' ;
-
- var aLinkInfo = sUrl.match( /^(\w+):(.*)$/ ) ;
- if ( aLinkInfo && aLinkInfo[1] == 'mailto' )
- {
- // This seems to be an unprotected email link.
- var aParts = aLinkInfo[2].match( /^([^\?]+)\??(.+)?/ ) ;
- if ( aParts )
- {
- // Set the e-mail address.
- oEMailInfo.Address = aParts[1] ;
-
- // Look for the optional e-mail parameters.
- if ( aParts[2] )
- {
- var oEMailParams = oParser.ParseEMailParams( aParts[2] ) ;
- oEMailInfo.Subject = oEMailParams.Subject ;
- oEMailInfo.Body = oEMailParams.Body ;
- }
- }
- return oEMailInfo ;
- }
- else if ( aLinkInfo && aLinkInfo[1] == 'javascript' )
- {
- // This may be a protected email.
-
- // Try to match the url against the EMailProtectionFunction.
- var func = FCKConfig.EMailProtectionFunction ;
- if ( func != null )
- {
- try
- {
- // Escape special chars.
- func = func.replace( /([\/^$*+.?()\[\]])/g, '\\$1' ) ;
-
- // Define the possible keys.
- var keys = new Array('NAME', 'DOMAIN', 'SUBJECT', 'BODY') ;
-
- // Get the order of the keys (hold them in the array ) and
- // the function replaced by regular expression patterns.
- var sFunc = func ;
- var pos = new Array() ;
- for ( var i = 0 ; i < keys.length ; i ++ )
- {
- var rexp = new RegExp( keys[i] ) ;
- var p = func.search( rexp ) ;
- if ( p >= 0 )
- {
- sFunc = sFunc.replace( rexp, '\'([^\']*)\'' ) ;
- pos[pos.length] = p + ':' + keys[i] ;
- }
- }
-
- // Sort the available keys.
- pos.sort( oParser.SortNumerical ) ;
-
- // Replace the excaped single quotes in the url, such they do
- // not affect the regexp afterwards.
- aLinkInfo[2] = aLinkInfo[2].replace( /\\'/g, '###SINGLE_QUOTE###' ) ;
-
- // Create the regexp and execute it.
- var rFunc = new RegExp( '^' + sFunc + '$' ) ;
- var aMatch = rFunc.exec( aLinkInfo[2] ) ;
- if ( aMatch )
- {
- var aInfo = new Array();
- for ( var i = 1 ; i < aMatch.length ; i ++ )
- {
- var k = pos[i-1].match(/^\d+:(.+)$/) ;
- aInfo[k[1]] = aMatch[i].replace(/###SINGLE_QUOTE###/g, '\'') ;
- }
-
- // Fill the EMailInfo object that will be returned
- oEMailInfo.Address = aInfo['NAME'] + '@' + aInfo['DOMAIN'] ;
- oEMailInfo.Subject = decodeURIComponent( aInfo['SUBJECT'] ) ;
- oEMailInfo.Body = decodeURIComponent( aInfo['BODY'] ) ;
-
- return oEMailInfo ;
- }
- }
- catch (e)
- {
- }
- }
-
- // Try to match the email against the encode protection.
- var aMatch = aLinkInfo[2].match( /^(?:void\()?location\.href='mailto:'\+(String\.fromCharCode\([\d,]+\))\+'(.*)'\)?$/ ) ;
- if ( aMatch )
- {
- // The link is encoded
- oEMailInfo.Address = eval( aMatch[1] ) ;
- if ( aMatch[2] )
- {
- var oEMailParams = oParser.ParseEMailParams( aMatch[2] ) ;
- oEMailInfo.Subject = oEMailParams.Subject ;
- oEMailInfo.Body = oEMailParams.Body ;
- }
- return oEMailInfo ;
- }
- }
- return false;
-}
-
-oParser.CreateEMailUri = function( address, subject, body )
-{
- // Switch for the EMailProtection setting.
- switch ( FCKConfig.EMailProtection )
- {
- case 'function' :
- var func = FCKConfig.EMailProtectionFunction ;
- if ( func == null )
- {
- if ( FCKConfig.Debug )
- {
- alert('EMailProtection alert!\nNo function defined. Please set "FCKConfig.EMailProtectionFunction"') ;
- }
- return '';
- }
-
- // Split the email address into name and domain parts.
- var aAddressParts = address.split( '@', 2 ) ;
- if ( aAddressParts[1] == undefined )
- {
- aAddressParts[1] = '' ;
- }
-
- // Replace the keys by their values (embedded in single quotes).
- func = func.replace(/NAME/g, "'" + aAddressParts[0].replace(/'/g, '\\\'') + "'") ;
- func = func.replace(/DOMAIN/g, "'" + aAddressParts[1].replace(/'/g, '\\\'') + "'") ;
- func = func.replace(/SUBJECT/g, "'" + encodeURIComponent( subject ).replace(/'/g, '\\\'') + "'") ;
- func = func.replace(/BODY/g, "'" + encodeURIComponent( body ).replace(/'/g, '\\\'') + "'") ;
-
- return 'javascript:' + func ;
-
- case 'encode' :
- var aParams = [] ;
- var aAddressCode = [] ;
-
- if ( subject.length > 0 )
- aParams.push( 'subject='+ encodeURIComponent( subject ) ) ;
- if ( body.length > 0 )
- aParams.push( 'body=' + encodeURIComponent( body ) ) ;
- for ( var i = 0 ; i < address.length ; i++ )
- aAddressCode.push( address.charCodeAt( i ) ) ;
-
- return 'javascript:void(location.href=\'mailto:\'+String.fromCharCode(' + aAddressCode.join( ',' ) + ')+\'?' + aParams.join( '&' ) + '\')' ;
- }
-
- // EMailProtection 'none'
-
- var sBaseUri = 'mailto:' + address ;
-
- var sParams = '' ;
-
- if ( subject.length > 0 )
- sParams = '?subject=' + encodeURIComponent( subject ) ;
-
- if ( body.length > 0 )
- {
- sParams += ( sParams.length == 0 ? '?' : '&' ) ;
- sParams += 'body=' + encodeURIComponent( body ) ;
- }
-
- return sBaseUri + sParams ;
-}
-
-//#### Initialization Code
-
-// oLink: The actual selected link in the editor.
-var oLink = dialog.Selection.GetSelection().MoveToAncestorNode( 'A' ) ;
-if ( oLink )
- FCK.Selection.SelectNode( oLink ) ;
-
-window.onload = function()
-{
- // Translate the dialog box texts.
- oEditor.FCKLanguageManager.TranslatePage(document) ;
-
- // Fill the Anchor Names and Ids combos.
- LoadAnchorNamesAndIds() ;
-
- // Load the selected link information (if any).
- LoadSelection() ;
-
- // Update the dialog box.
- SetLinkType( GetE('cmbLinkType').value ) ;
-
- // Show/Hide the "Browse Server" button.
- GetE('divBrowseServer').style.display = FCKConfig.LinkBrowser ? '' : 'none' ;
-
- // Show the initial dialog content.
- GetE('divInfo').style.display = '' ;
-
- // Set the actual uploader URL.
- if ( FCKConfig.LinkUpload )
- GetE('frmUpload').action = FCKConfig.LinkUploadURL ;
-
- // Set the default target (from configuration).
- SetDefaultTarget() ;
-
- // Activate the "OK" button.
- dialog.SetOkButton( true ) ;
-
- // Select the first field.
- switch( GetE('cmbLinkType').value )
- {
- case 'url' :
- SelectField( 'txtUrl' ) ;
- break ;
- case 'email' :
- SelectField( 'txtEMailAddress' ) ;
- break ;
- case 'anchor' :
- if ( GetE('divSelAnchor').style.display != 'none' )
- SelectField( 'cmbAnchorName' ) ;
- else
- SelectField( 'cmbLinkType' ) ;
- }
-}
-
-var bHasAnchors ;
-
-function LoadAnchorNamesAndIds()
-{
- // Since version 2.0, the anchors are replaced in the DOM by IMGs so the user see the icon
- // to edit them. So, we must look for that images now.
- var aAnchors = new Array() ;
- var i ;
- var oImages = oEditor.FCK.EditorDocument.getElementsByTagName( 'IMG' ) ;
- for( i = 0 ; i < oImages.length ; i++ )
- {
- if ( oImages[i].getAttribute('_fckanchor') )
- aAnchors[ aAnchors.length ] = oEditor.FCK.GetRealElement( oImages[i] ) ;
- }
-
- // Add also real anchors
- var oLinks = oEditor.FCK.EditorDocument.getElementsByTagName( 'A' ) ;
- for( i = 0 ; i < oLinks.length ; i++ )
- {
- if ( oLinks[i].name && ( oLinks[i].name.length > 0 ) )
- aAnchors[ aAnchors.length ] = oLinks[i] ;
- }
-
- var aIds = FCKTools.GetAllChildrenIds( oEditor.FCK.EditorDocument.body ) ;
-
- bHasAnchors = ( aAnchors.length > 0 || aIds.length > 0 ) ;
-
- for ( i = 0 ; i < aAnchors.length ; i++ )
- {
- var sName = aAnchors[i].name ;
- if ( sName && sName.length > 0 )
- FCKTools.AddSelectOption( GetE('cmbAnchorName'), sName, sName ) ;
- }
-
- for ( i = 0 ; i < aIds.length ; i++ )
- {
- FCKTools.AddSelectOption( GetE('cmbAnchorId'), aIds[i], aIds[i] ) ;
- }
-
- ShowE( 'divSelAnchor' , bHasAnchors ) ;
- ShowE( 'divNoAnchor' , !bHasAnchors ) ;
-}
-
-function LoadSelection()
-{
- if ( !oLink ) return ;
-
- var sType = 'url' ;
-
- // Get the actual Link href.
- var sHRef = oLink.getAttribute( '_fcksavedurl' ) ;
- if ( sHRef == null )
- sHRef = oLink.getAttribute( 'href' , 2 ) || '' ;
-
- // Look for a popup javascript link.
- var oPopupMatch = oRegex.PopupUri.exec( sHRef ) ;
- if( oPopupMatch )
- {
- GetE('cmbTarget').value = 'popup' ;
- sHRef = oPopupMatch[1] ;
- FillPopupFields( oPopupMatch[2], oPopupMatch[3] ) ;
- SetTarget( 'popup' ) ;
- }
-
- // Accessible popups, the popup data is in the onclick attribute
- if ( !oPopupMatch )
- {
- var onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
- if ( onclick )
- {
- // Decode the protected string
- onclick = decodeURIComponent( onclick ) ;
-
- oPopupMatch = oRegex.OnClickPopup.exec( onclick ) ;
- if( oPopupMatch )
- {
- GetE( 'cmbTarget' ).value = 'popup' ;
- FillPopupFields( oPopupMatch[1], oPopupMatch[2] ) ;
- SetTarget( 'popup' ) ;
- }
- }
- }
-
- // Search for the protocol.
- var sProtocol = oRegex.UriProtocol.exec( sHRef ) ;
-
- // Search for a protected email link.
- var oEMailInfo = oParser.ParseEMailUri( sHRef );
-
- if ( oEMailInfo )
- {
- sType = 'email' ;
-
- GetE('txtEMailAddress').value = oEMailInfo.Address ;
- GetE('txtEMailSubject').value = oEMailInfo.Subject ;
- GetE('txtEMailBody').value = oEMailInfo.Body ;
- }
- else if ( sProtocol )
- {
- sProtocol = sProtocol[0].toLowerCase() ;
- GetE('cmbLinkProtocol').value = sProtocol ;
-
- // Remove the protocol and get the remaining URL.
- var sUrl = sHRef.replace( oRegex.UriProtocol, '' ) ;
- sType = 'url' ;
- GetE('txtUrl').value = sUrl ;
- }
- else if ( sHRef.substr(0,1) == '#' && sHRef.length > 1 ) // It is an anchor link.
- {
- sType = 'anchor' ;
- GetE('cmbAnchorName').value = GetE('cmbAnchorId').value = sHRef.substr(1) ;
- }
- else // It is another type of link.
- {
- sType = 'url' ;
-
- GetE('cmbLinkProtocol').value = '' ;
- GetE('txtUrl').value = sHRef ;
- }
-
- if ( !oPopupMatch )
- {
- // Get the target.
- var sTarget = oLink.target ;
-
- if ( sTarget && sTarget.length > 0 )
- {
- if ( oRegex.ReserveTarget.test( sTarget ) )
- {
- sTarget = sTarget.toLowerCase() ;
- GetE('cmbTarget').value = sTarget ;
- }
- else
- GetE('cmbTarget').value = 'frame' ;
- GetE('txtTargetFrame').value = sTarget ;
- }
- }
-
- // Get Advances Attributes
- GetE('txtAttId').value = oLink.id ;
- GetE('txtAttName').value = oLink.name ;
- GetE('cmbAttLangDir').value = oLink.dir ;
- GetE('txtAttLangCode').value = oLink.lang ;
- GetE('txtAttAccessKey').value = oLink.accessKey ;
- GetE('txtAttTabIndex').value = oLink.tabIndex <= 0 ? '' : oLink.tabIndex ;
- GetE('txtAttTitle').value = oLink.title ;
- GetE('txtAttContentType').value = oLink.type ;
- GetE('txtAttCharSet').value = oLink.charset ;
-
- var sClass ;
- if ( oEditor.FCKBrowserInfo.IsIE )
- {
- sClass = oLink.getAttribute('className',2) || '' ;
- // Clean up temporary classes for internal use:
- sClass = sClass.replace( FCKRegexLib.FCK_Class, '' ) ;
-
- GetE('txtAttStyle').value = oLink.style.cssText ;
- }
- else
- {
- sClass = oLink.getAttribute('class',2) || '' ;
- GetE('txtAttStyle').value = oLink.getAttribute('style',2) || '' ;
- }
- GetE('txtAttClasses').value = sClass ;
-
- // Update the Link type combo.
- GetE('cmbLinkType').value = sType ;
-}
-
-//#### Link type selection.
-function SetLinkType( linkType )
-{
- ShowE('divLinkTypeUrl' , (linkType == 'url') ) ;
- ShowE('divLinkTypeAnchor' , (linkType == 'anchor') ) ;
- ShowE('divLinkTypeEMail' , (linkType == 'email') ) ;
-
- if ( !FCKConfig.LinkDlgHideTarget )
- dialog.SetTabVisibility( 'Target' , (linkType == 'url') ) ;
-
- if ( FCKConfig.LinkUpload )
- dialog.SetTabVisibility( 'Upload' , (linkType == 'url') ) ;
-
- if ( !FCKConfig.LinkDlgHideAdvanced )
- dialog.SetTabVisibility( 'Advanced' , (linkType != 'anchor' || bHasAnchors) ) ;
-
- if ( linkType == 'email' )
- dialog.SetAutoSize( true ) ;
-}
-
-//#### Target type selection.
-function SetTarget( targetType )
-{
- GetE('tdTargetFrame').style.display = ( targetType == 'popup' ? 'none' : '' ) ;
- GetE('tdPopupName').style.display =
- GetE('tablePopupFeatures').style.display = ( targetType == 'popup' ? '' : 'none' ) ;
-
- switch ( targetType )
- {
- case "_blank" :
- case "_self" :
- case "_parent" :
- case "_top" :
- GetE('txtTargetFrame').value = targetType ;
- break ;
- case "" :
- GetE('txtTargetFrame').value = '' ;
- break ;
- }
-
- if ( targetType == 'popup' )
- dialog.SetAutoSize( true ) ;
-}
-
-//#### Called while the user types the URL.
-function OnUrlChange()
-{
- var sUrl = GetE('txtUrl').value ;
- var sProtocol = oRegex.UrlOnChangeProtocol.exec( sUrl ) ;
-
- if ( sProtocol )
- {
- sUrl = sUrl.substr( sProtocol[0].length ) ;
- GetE('txtUrl').value = sUrl ;
- GetE('cmbLinkProtocol').value = sProtocol[0].toLowerCase() ;
- }
- else if ( oRegex.UrlOnChangeTestOther.test( sUrl ) )
- {
- GetE('cmbLinkProtocol').value = '' ;
- }
-}
-
-//#### Called while the user types the target name.
-function OnTargetNameChange()
-{
- var sFrame = GetE('txtTargetFrame').value ;
-
- if ( sFrame.length == 0 )
- GetE('cmbTarget').value = '' ;
- else if ( oRegex.ReserveTarget.test( sFrame ) )
- GetE('cmbTarget').value = sFrame.toLowerCase() ;
- else
- GetE('cmbTarget').value = 'frame' ;
-}
-
-// Accessible popups
-function BuildOnClickPopup()
-{
- var sWindowName = "'" + GetE('txtPopupName').value.replace(/\W/gi, "") + "'" ;
-
- var sFeatures = '' ;
- var aChkFeatures = document.getElementsByName( 'chkFeature' ) ;
- for ( var i = 0 ; i < aChkFeatures.length ; i++ )
- {
- if ( i > 0 ) sFeatures += ',' ;
- sFeatures += aChkFeatures[i].value + '=' + ( aChkFeatures[i].checked ? 'yes' : 'no' ) ;
- }
-
- if ( GetE('txtPopupWidth').value.length > 0 ) sFeatures += ',width=' + GetE('txtPopupWidth').value ;
- if ( GetE('txtPopupHeight').value.length > 0 ) sFeatures += ',height=' + GetE('txtPopupHeight').value ;
- if ( GetE('txtPopupLeft').value.length > 0 ) sFeatures += ',left=' + GetE('txtPopupLeft').value ;
- if ( GetE('txtPopupTop').value.length > 0 ) sFeatures += ',top=' + GetE('txtPopupTop').value ;
-
- if ( sFeatures != '' )
- sFeatures = sFeatures + ",status" ;
-
- return ( "window.open(this.href," + sWindowName + ",'" + sFeatures + "'); return false" ) ;
-}
-
-//#### Fills all Popup related fields.
-function FillPopupFields( windowName, features )
-{
- if ( windowName )
- GetE('txtPopupName').value = windowName ;
-
- var oFeatures = new Object() ;
- var oFeaturesMatch ;
- while( ( oFeaturesMatch = oRegex.PopupFeatures.exec( features ) ) != null )
- {
- var sValue = oFeaturesMatch[2] ;
- if ( sValue == ( 'yes' || '1' ) )
- oFeatures[ oFeaturesMatch[1] ] = true ;
- else if ( ! isNaN( sValue ) && sValue != 0 )
- oFeatures[ oFeaturesMatch[1] ] = sValue ;
- }
-
- // Update all features check boxes.
- var aChkFeatures = document.getElementsByName('chkFeature') ;
- for ( var i = 0 ; i < aChkFeatures.length ; i++ )
- {
- if ( oFeatures[ aChkFeatures[i].value ] )
- aChkFeatures[i].checked = true ;
- }
-
- // Update position and size text boxes.
- if ( oFeatures['width'] ) GetE('txtPopupWidth').value = oFeatures['width'] ;
- if ( oFeatures['height'] ) GetE('txtPopupHeight').value = oFeatures['height'] ;
- if ( oFeatures['left'] ) GetE('txtPopupLeft').value = oFeatures['left'] ;
- if ( oFeatures['top'] ) GetE('txtPopupTop').value = oFeatures['top'] ;
-}
-
-//#### The OK button was hit.
-function Ok()
-{
- var sUri, sInnerHtml ;
- oEditor.FCKUndo.SaveUndoStep() ;
-
- switch ( GetE('cmbLinkType').value )
- {
- case 'url' :
- sUri = GetE('txtUrl').value ;
-
- if ( sUri.length == 0 )
- {
- alert( FCKLang.DlnLnkMsgNoUrl ) ;
- return false ;
- }
-
- sUri = GetE('cmbLinkProtocol').value + sUri ;
-
- break ;
-
- case 'email' :
- sUri = GetE('txtEMailAddress').value ;
-
- if ( sUri.length == 0 )
- {
- alert( FCKLang.DlnLnkMsgNoEMail ) ;
- return false ;
- }
-
- sUri = oParser.CreateEMailUri(
- sUri,
- GetE('txtEMailSubject').value,
- GetE('txtEMailBody').value ) ;
- break ;
-
- case 'anchor' :
- var sAnchor = GetE('cmbAnchorName').value ;
- if ( sAnchor.length == 0 ) sAnchor = GetE('cmbAnchorId').value ;
-
- if ( sAnchor.length == 0 )
- {
- alert( FCKLang.DlnLnkMsgNoAnchor ) ;
- return false ;
- }
-
- sUri = '#' + sAnchor ;
- break ;
- }
-
- // If no link is selected, create a new one (it may result in more than one link creation - #220).
- var aLinks = oLink ? [ oLink ] : oEditor.FCK.CreateLink( sUri, true ) ;
-
- // If no selection, no links are created, so use the uri as the link text (by dom, 2006-05-26)
- var aHasSelection = ( aLinks.length > 0 ) ;
- if ( !aHasSelection )
- {
- sInnerHtml = sUri;
-
- // Built a better text for empty links.
- switch ( GetE('cmbLinkType').value )
- {
- // anchor: use old behavior --> return true
- case 'anchor':
- sInnerHtml = sInnerHtml.replace( /^#/, '' ) ;
- break ;
-
- // url: try to get path
- case 'url':
- var oLinkPathRegEx = new RegExp("//?([^?\"']+)([?].*)?$") ;
- var asLinkPath = oLinkPathRegEx.exec( sUri ) ;
- if (asLinkPath != null)
- sInnerHtml = asLinkPath[1]; // use matched path
- break ;
-
- // mailto: try to get email address
- case 'email':
- sInnerHtml = GetE('txtEMailAddress').value ;
- break ;
- }
-
- // Create a new (empty) anchor.
- aLinks = [ oEditor.FCK.InsertElement( 'a' ) ] ;
- }
-
- for ( var i = 0 ; i < aLinks.length ; i++ )
- {
- oLink = aLinks[i] ;
-
- if ( aHasSelection )
- sInnerHtml = oLink.innerHTML ; // Save the innerHTML (IE changes it if it is like an URL).
-
- oLink.href = sUri ;
- SetAttribute( oLink, '_fcksavedurl', sUri ) ;
-
- var onclick;
- // Accessible popups
- if( GetE('cmbTarget').value == 'popup' )
- {
- onclick = BuildOnClickPopup() ;
- // Encode the attribute
- onclick = encodeURIComponent( " onclick=\"" + onclick + "\"" ) ;
- SetAttribute( oLink, 'onclick_fckprotectedatt', onclick ) ;
- }
- else
- {
- // Check if the previous onclick was for a popup:
- // In that case remove the onclick handler.
- onclick = oLink.getAttribute( 'onclick_fckprotectedatt' ) ;
- if ( onclick )
- {
- // Decode the protected string
- onclick = decodeURIComponent( onclick ) ;
-
- if( oRegex.OnClickPopup.test( onclick ) )
- SetAttribute( oLink, 'onclick_fckprotectedatt', '' ) ;
- }
- }
-
- oLink.innerHTML = sInnerHtml ; // Set (or restore) the innerHTML
-
- // Target
- if( GetE('cmbTarget').value != 'popup' )
- SetAttribute( oLink, 'target', GetE('txtTargetFrame').value ) ;
- else
- SetAttribute( oLink, 'target', null ) ;
-
- // Let's set the "id" only for the first link to avoid duplication.
- if ( i == 0 )
- SetAttribute( oLink, 'id', GetE('txtAttId').value ) ;
-
- // Advances Attributes
- SetAttribute( oLink, 'name' , GetE('txtAttName').value ) ;
- SetAttribute( oLink, 'dir' , GetE('cmbAttLangDir').value ) ;
- SetAttribute( oLink, 'lang' , GetE('txtAttLangCode').value ) ;
- SetAttribute( oLink, 'accesskey', GetE('txtAttAccessKey').value ) ;
- SetAttribute( oLink, 'tabindex' , ( GetE('txtAttTabIndex').value > 0 ? GetE('txtAttTabIndex').value : null ) ) ;
- SetAttribute( oLink, 'title' , GetE('txtAttTitle').value ) ;
- SetAttribute( oLink, 'type' , GetE('txtAttContentType').value ) ;
- SetAttribute( oLink, 'charset' , GetE('txtAttCharSet').value ) ;
-
- if ( oEditor.FCKBrowserInfo.IsIE )
- {
- var sClass = GetE('txtAttClasses').value ;
- // If it's also an anchor add an internal class
- if ( GetE('txtAttName').value.length != 0 )
- sClass += ' FCK__AnchorC' ;
- SetAttribute( oLink, 'className', sClass ) ;
-
- oLink.style.cssText = GetE('txtAttStyle').value ;
- }
- else
- {
- SetAttribute( oLink, 'class', GetE('txtAttClasses').value ) ;
- SetAttribute( oLink, 'style', GetE('txtAttStyle').value ) ;
- }
- }
-
- // Select the (first) link.
- oEditor.FCKSelection.SelectNode( aLinks[0] );
-
- return true ;
-}
-
-function BrowseServer()
-{
- OpenFileBrowser( FCKConfig.LinkBrowserURL, FCKConfig.LinkBrowserWindowWidth, FCKConfig.LinkBrowserWindowHeight ) ;
-}
-
-function SetUrl( url )
-{
- GetE('txtUrl').value = url ;
- OnUrlChange() ;
- dialog.SetSelectedTab( 'Info' ) ;
-}
-
-function OnUploadCompleted( errorNumber, fileUrl, fileName, customMsg )
-{
- // Remove animation
- window.parent.Throbber.Hide() ;
- GetE( 'divUpload' ).style.display = '' ;
-
- switch ( errorNumber )
- {
- case 0 : // No errors
- alert( 'Your file has been successfully uploaded' ) ;
- break ;
- case 1 : // Custom error
- alert( customMsg ) ;
- return ;
- case 101 : // Custom warning
- alert( customMsg ) ;
- break ;
- case 201 :
- alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
- break ;
- case 202 :
- alert( 'Invalid file type' ) ;
- return ;
- case 203 :
- alert( "Security error. You probably don't have enough permissions to upload. Please check your server." ) ;
- return ;
- case 500 :
- alert( 'The connector is disabled' ) ;
- break ;
- default :
- alert( 'Error on file upload. Error number: ' + errorNumber ) ;
- return ;
- }
-
- SetUrl( fileUrl ) ;
- GetE('frmUpload').reset() ;
-}
-
-var oUploadAllowedExtRegex = new RegExp( FCKConfig.LinkUploadAllowedExtensions, 'i' ) ;
-var oUploadDeniedExtRegex = new RegExp( FCKConfig.LinkUploadDeniedExtensions, 'i' ) ;
-
-function CheckUpload()
-{
- var sFile = GetE('txtUploadFile').value ;
-
- if ( sFile.length == 0 )
- {
- alert( 'Please select a file to upload' ) ;
- return false ;
- }
-
- if ( ( FCKConfig.LinkUploadAllowedExtensions.length > 0 && !oUploadAllowedExtRegex.test( sFile ) ) ||
- ( FCKConfig.LinkUploadDeniedExtensions.length > 0 && oUploadDeniedExtRegex.test( sFile ) ) )
- {
- OnUploadCompleted( 202 ) ;
- return false ;
- }
-
- // Show animation
- window.parent.Throbber.Show( 100 ) ;
- GetE( 'divUpload' ).style.display = 'none' ;
-
- return true ;
-}
-
-function SetDefaultTarget()
-{
- var target = FCKConfig.DefaultLinkTarget || '' ;
-
- if ( oLink || target.length == 0 )
- return ;
-
- switch ( target )
- {
- case '_blank' :
- case '_self' :
- case '_parent' :
- case '_top' :
- GetE('cmbTarget').value = target ;
- break ;
- default :
- GetE('cmbTarget').value = 'frame' ;
- break ;
- }
-
- GetE('txtTargetFrame').value = target ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_listprop.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_listprop.html
deleted file mode 100755
index 55b337a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_listprop.html
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Start
-
-
-
- List Type
-
-
- Circle
- Disc
- Square
-
-
-
- Numbers (1, 2, 3)
- Lowercase Letters (a, b, c)
- Uppercase Letters (A, B, C)
- Small Roman Numerals (i, ii, iii)
- Large Roman Numerals (I, II, III)
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_paste.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_paste.html
deleted file mode 100755
index e20a738..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_paste.html
+++ /dev/null
@@ -1,347 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_radiobutton.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_radiobutton.html
deleted file mode 100755
index 80516e0..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_radiobutton.html
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
-
- Radio Button Properties
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_replace.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_replace.html
deleted file mode 100755
index bf98335..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_replace.html
+++ /dev/null
@@ -1,650 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_select.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_select.html
deleted file mode 100755
index 633633a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_select.html
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
-
-
- Select Properties
-
-
-
-
-
-
-
-
-
-
-
-
-
- Available
- Options
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_select/fck_select.js b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_select/fck_select.js
deleted file mode 100755
index 3a03475..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_select/fck_select.js
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * 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 ==
- *
- * Scripts for the fck_select.html page.
- */
-
-function Select( combo )
-{
- var iIndex = combo.selectedIndex ;
-
- oListText.selectedIndex = iIndex ;
- oListValue.selectedIndex = iIndex ;
-
- var oTxtText = document.getElementById( "txtText" ) ;
- var oTxtValue = document.getElementById( "txtValue" ) ;
-
- oTxtText.value = oListText.value ;
- oTxtValue.value = oListValue.value ;
-}
-
-function Add()
-{
- var oTxtText = document.getElementById( "txtText" ) ;
- var oTxtValue = document.getElementById( "txtValue" ) ;
-
- AddComboOption( oListText, oTxtText.value, oTxtText.value ) ;
- AddComboOption( oListValue, oTxtValue.value, oTxtValue.value ) ;
-
- oListText.selectedIndex = oListText.options.length - 1 ;
- oListValue.selectedIndex = oListValue.options.length - 1 ;
-
- oTxtText.value = '' ;
- oTxtValue.value = '' ;
-
- oTxtText.focus() ;
-}
-
-function Modify()
-{
- var iIndex = oListText.selectedIndex ;
-
- if ( iIndex < 0 ) return ;
-
- var oTxtText = document.getElementById( "txtText" ) ;
- var oTxtValue = document.getElementById( "txtValue" ) ;
-
- oListText.options[ iIndex ].innerHTML = HTMLEncode( oTxtText.value ) ;
- oListText.options[ iIndex ].value = oTxtText.value ;
-
- oListValue.options[ iIndex ].innerHTML = HTMLEncode( oTxtValue.value ) ;
- oListValue.options[ iIndex ].value = oTxtValue.value ;
-
- oTxtText.value = '' ;
- oTxtValue.value = '' ;
-
- oTxtText.focus() ;
-}
-
-function Move( steps )
-{
- ChangeOptionPosition( oListText, steps ) ;
- ChangeOptionPosition( oListValue, steps ) ;
-}
-
-function Delete()
-{
- RemoveSelectedOptions( oListText ) ;
- RemoveSelectedOptions( oListValue ) ;
-}
-
-function SetSelectedValue()
-{
- var iIndex = oListValue.selectedIndex ;
- if ( iIndex < 0 ) return ;
-
- var oTxtValue = document.getElementById( "txtSelValue" ) ;
-
- oTxtValue.value = oListValue.options[ iIndex ].value ;
-}
-
-// Moves the selected option by a number of steps (also negative)
-function ChangeOptionPosition( combo, steps )
-{
- var iActualIndex = combo.selectedIndex ;
-
- if ( iActualIndex < 0 )
- return ;
-
- var iFinalIndex = iActualIndex + steps ;
-
- if ( iFinalIndex < 0 )
- iFinalIndex = 0 ;
-
- if ( iFinalIndex > ( combo.options.length - 1 ) )
- iFinalIndex = combo.options.length - 1 ;
-
- if ( iActualIndex == iFinalIndex )
- return ;
-
- var oOption = combo.options[ iActualIndex ] ;
- var sText = HTMLDecode( oOption.innerHTML ) ;
- var sValue = oOption.value ;
-
- combo.remove( iActualIndex ) ;
-
- oOption = AddComboOption( combo, sText, sValue, null, iFinalIndex ) ;
-
- oOption.selected = true ;
-}
-
-// Remove all selected options from a SELECT object
-function RemoveSelectedOptions(combo)
-{
- // Save the selected index
- var iSelectedIndex = combo.selectedIndex ;
-
- var oOptions = combo.options ;
-
- // Remove all selected options
- for ( var i = oOptions.length - 1 ; i >= 0 ; i-- )
- {
- if (oOptions[i].selected) combo.remove(i) ;
- }
-
- // Reset the selection based on the original selected index
- if ( combo.options.length > 0 )
- {
- if ( iSelectedIndex >= combo.options.length ) iSelectedIndex = combo.options.length - 1 ;
- combo.selectedIndex = iSelectedIndex ;
- }
-}
-
-// Add a new option to a SELECT object (combo or list)
-function AddComboOption( combo, optionText, optionValue, documentObject, index )
-{
- var oOption ;
-
- if ( documentObject )
- oOption = documentObject.createElement("OPTION") ;
- else
- oOption = document.createElement("OPTION") ;
-
- if ( index != null )
- combo.options.add( oOption, index ) ;
- else
- combo.options.add( oOption ) ;
-
- oOption.innerHTML = optionText.length > 0 ? HTMLEncode( optionText ) : ' ' ;
- oOption.value = optionValue ;
-
- return oOption ;
-}
-
-function HTMLEncode( text )
-{
- if ( !text )
- return '' ;
-
- text = text.replace( /&/g, '&' ) ;
- text = text.replace( //g, '>' ) ;
-
- return text ;
-}
-
-
-function HTMLDecode( text )
-{
- if ( !text )
- return '' ;
-
- text = text.replace( />/g, '>' ) ;
- text = text.replace( /</g, '<' ) ;
- text = text.replace( /&/g, '&' ) ;
-
- return text ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_smiley.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_smiley.html
deleted file mode 100755
index bd2eaea..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_smiley.html
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_source.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_source.html
deleted file mode 100755
index d61e710..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_source.html
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-
- Source
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_specialchar.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_specialchar.html
deleted file mode 100755
index eb0238c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_specialchar.html
+++ /dev/null
@@ -1,121 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages.html
deleted file mode 100755
index cd2355d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages.html
+++ /dev/null
@@ -1,70 +0,0 @@
-
-
-
-
- Spell Check
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/blank.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/blank.html
deleted file mode 100755
index e69de29..0000000
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js
deleted file mode 100755
index 80af849..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/controlWindow.js
+++ /dev/null
@@ -1,87 +0,0 @@
-////////////////////////////////////////////////////
-// controlWindow object
-////////////////////////////////////////////////////
-function controlWindow( controlForm ) {
- // private properties
- this._form = controlForm;
-
- // public properties
- this.windowType = "controlWindow";
-// this.noSuggestionSelection = "- No suggestions -"; // by FredCK
- this.noSuggestionSelection = FCKLang.DlgSpellNoSuggestions ;
- // set up the properties for elements of the given control form
- this.suggestionList = this._form.sugg;
- this.evaluatedText = this._form.misword;
- this.replacementText = this._form.txtsugg;
- this.undoButton = this._form.btnUndo;
-
- // public methods
- this.addSuggestion = addSuggestion;
- this.clearSuggestions = clearSuggestions;
- this.selectDefaultSuggestion = selectDefaultSuggestion;
- this.resetForm = resetForm;
- this.setSuggestedText = setSuggestedText;
- this.enableUndo = enableUndo;
- this.disableUndo = disableUndo;
-}
-
-function resetForm() {
- if( this._form ) {
- this._form.reset();
- }
-}
-
-function setSuggestedText() {
- var slct = this.suggestionList;
- var txt = this.replacementText;
- var str = "";
- if( (slct.options[0].text) && slct.options[0].text != this.noSuggestionSelection ) {
- str = slct.options[slct.selectedIndex].text;
- }
- txt.value = str;
-}
-
-function selectDefaultSuggestion() {
- var slct = this.suggestionList;
- var txt = this.replacementText;
- if( slct.options.length == 0 ) {
- this.addSuggestion( this.noSuggestionSelection );
- } else {
- slct.options[0].selected = true;
- }
- this.setSuggestedText();
-}
-
-function addSuggestion( sugg_text ) {
- var slct = this.suggestionList;
- if( sugg_text ) {
- var i = slct.options.length;
- var newOption = new Option( sugg_text, 'sugg_text'+i );
- slct.options[i] = newOption;
- }
-}
-
-function clearSuggestions() {
- var slct = this.suggestionList;
- for( var j = slct.length - 1; j > -1; j-- ) {
- if( slct.options[j] ) {
- slct.options[j] = null;
- }
- }
-}
-
-function enableUndo() {
- if( this.undoButton ) {
- if( this.undoButton.disabled == true ) {
- this.undoButton.disabled = false;
- }
- }
-}
-
-function disableUndo() {
- if( this.undoButton ) {
- if( this.undoButton.disabled == false ) {
- this.undoButton.disabled = true;
- }
- }
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/controls.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/controls.html
deleted file mode 100755
index d91bcce..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/controls.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm
deleted file mode 100755
index 27e368e..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.cfm
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ]+>", " ", "all")>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php
deleted file mode 100755
index 9c747c9..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.php
+++ /dev/null
@@ -1,199 +0,0 @@
-$val ) {
- # $val = str_replace( "'", "%27", $val );
- echo "textinputs[$key] = decodeURIComponent(\"" . $val . "\");\n";
- }
-}
-
-# make declarations for the text input index
-function print_textindex_decl( $text_input_idx ) {
- echo "words[$text_input_idx] = [];\n";
- echo "suggs[$text_input_idx] = [];\n";
-}
-
-# set an element of the JavaScript 'words' array to a misspelled word
-function print_words_elem( $word, $index, $text_input_idx ) {
- echo "words[$text_input_idx][$index] = '" . escape_quote( $word ) . "';\n";
-}
-
-
-# set an element of the JavaScript 'suggs' array to a list of suggestions
-function print_suggs_elem( $suggs, $index, $text_input_idx ) {
- echo "suggs[$text_input_idx][$index] = [";
- foreach( $suggs as $key=>$val ) {
- if( $val ) {
- echo "'" . escape_quote( $val ) . "'";
- if ( $key+1 < count( $suggs )) {
- echo ", ";
- }
- }
- }
- echo "];\n";
-}
-
-# escape single quote
-function escape_quote( $str ) {
- return preg_replace ( "/'/", "\\'", $str );
-}
-
-
-# handle a server-side error.
-function error_handler( $err ) {
- echo "error = '" . preg_replace( "/['\\\\]/", "\\\\$0", $err ) . "';\n";
-}
-
-## get the list of misspelled words. Put the results in the javascript words array
-## for each misspelled word, get suggestions and put in the javascript suggs array
-function print_checker_results() {
-
- global $aspell_prog;
- global $aspell_opts;
- global $tempfiledir;
- global $textinputs;
- global $input_separator;
- $aspell_err = "";
- # create temp file
- $tempfile = tempnam( $tempfiledir, 'aspell_data_' );
-
- # open temp file, add the submitted text.
- if( $fh = fopen( $tempfile, 'w' )) {
- for( $i = 0; $i < count( $textinputs ); $i++ ) {
- $text = urldecode( $textinputs[$i] );
-
- // Strip all tags for the text. (by FredCK - #339 / #681)
- $text = preg_replace( "/<[^>]+>/", " ", $text ) ;
-
- $lines = explode( "\n", $text );
- fwrite ( $fh, "%\n" ); # exit terse mode
- fwrite ( $fh, "^$input_separator\n" );
- fwrite ( $fh, "!\n" ); # enter terse mode
- foreach( $lines as $key=>$value ) {
- # use carat on each line to escape possible aspell commands
- fwrite( $fh, "^$value\n" );
- }
- }
- fclose( $fh );
-
- # exec aspell command - redirect STDERR to STDOUT
- $cmd = "$aspell_prog $aspell_opts < $tempfile 2>&1";
- if( $aspellret = shell_exec( $cmd )) {
- $linesout = explode( "\n", $aspellret );
- $index = 0;
- $text_input_index = -1;
- # parse each line of aspell return
- foreach( $linesout as $key=>$val ) {
- $chardesc = substr( $val, 0, 1 );
- # if '&', then not in dictionary but has suggestions
- # if '#', then not in dictionary and no suggestions
- # if '*', then it is a delimiter between text inputs
- # if '@' then version info
- if( $chardesc == '&' || $chardesc == '#' ) {
- $line = explode( " ", $val, 5 );
- print_words_elem( $line[1], $index, $text_input_index );
- if( isset( $line[4] )) {
- $suggs = explode( ", ", $line[4] );
- } else {
- $suggs = array();
- }
- print_suggs_elem( $suggs, $index, $text_input_index );
- $index++;
- } elseif( $chardesc == '*' ) {
- $text_input_index++;
- print_textindex_decl( $text_input_index );
- $index = 0;
- } elseif( $chardesc != '@' && $chardesc != "" ) {
- # assume this is error output
- $aspell_err .= $val;
- }
- }
- if( $aspell_err ) {
- $aspell_err = "Error executing `$cmd`\\n$aspell_err";
- error_handler( $aspell_err );
- }
- } else {
- error_handler( "System error: Aspell program execution failed (`$cmd`)" );
- }
- } else {
- error_handler( "System error: Could not open file '$tempfile' for writing" );
- }
-
- # close temp file, delete file
- unlink( $tempfile );
-}
-
-
-?>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl
deleted file mode 100755
index fae010d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/server-scripts/spellchecker.pl
+++ /dev/null
@@ -1,181 +0,0 @@
-#!/usr/bin/perl
-
-use CGI qw/ :standard /;
-use File::Temp qw/ tempfile tempdir /;
-
-# my $spellercss = '/speller/spellerStyle.css'; # by FredCK
-my $spellercss = '../spellerStyle.css'; # by FredCK
-# my $wordWindowSrc = '/speller/wordWindow.js'; # by FredCK
-my $wordWindowSrc = '../wordWindow.js'; # by FredCK
-my @textinputs = param( 'textinputs[]' ); # array
-# my $aspell_cmd = 'aspell'; # by FredCK (for Linux)
-my $aspell_cmd = '"C:\Program Files\Aspell\bin\aspell.exe"'; # by FredCK (for Windows)
-my $lang = 'en_US';
-# my $aspell_opts = "-a --lang=$lang --encoding=utf-8"; # by FredCK
-my $aspell_opts = "-a --lang=$lang --encoding=utf-8 -H --rem-sgml-check=alt"; # by FredCK
-my $input_separator = "A";
-
-# set the 'wordtext' JavaScript variable to the submitted text.
-sub printTextVar {
- for( my $i = 0; $i <= $#textinputs; $i++ ) {
- print "textinputs[$i] = decodeURIComponent('" . escapeQuote( $textinputs[$i] ) . "')\n";
- }
-}
-
-sub printTextIdxDecl {
- my $idx = shift;
- print "words[$idx] = [];\n";
- print "suggs[$idx] = [];\n";
-}
-
-sub printWordsElem {
- my( $textIdx, $wordIdx, $word ) = @_;
- print "words[$textIdx][$wordIdx] = '" . escapeQuote( $word ) . "';\n";
-}
-
-sub printSuggsElem {
- my( $textIdx, $wordIdx, @suggs ) = @_;
- print "suggs[$textIdx][$wordIdx] = [";
- for my $i ( 0..$#suggs ) {
- print "'" . escapeQuote( $suggs[$i] ) . "'";
- if( $i < $#suggs ) {
- print ", ";
- }
- }
- print "];\n";
-}
-
-sub printCheckerResults {
- my $textInputIdx = -1;
- my $wordIdx = 0;
- my $unhandledText;
- # create temp file
- my $dir = tempdir( CLEANUP => 1 );
- my( $fh, $tmpfilename ) = tempfile( DIR => $dir );
-
- # temp file was created properly?
-
- # open temp file, add the submitted text.
- for( my $i = 0; $i <= $#textinputs; $i++ ) {
- $text = url_decode( $textinputs[$i] );
- # Strip all tags for the text. (by FredCK - #339 / #681)
- $text =~ s/<[^>]+>/ /g;
- @lines = split( /\n/, $text );
- print $fh "\%\n"; # exit terse mode
- print $fh "^$input_separator\n";
- print $fh "!\n"; # enter terse mode
- for my $line ( @lines ) {
- # use carat on each line to escape possible aspell commands
- print $fh "^$line\n";
- }
-
- }
- # exec aspell command
- my $cmd = "$aspell_cmd $aspell_opts < $tmpfilename 2>&1";
- open ASPELL, "$cmd |" or handleError( "Could not execute `$cmd`\\n$!" ) and return;
- # parse each line of aspell return
- for my $ret ( ) {
- chomp( $ret );
- # if '&', then not in dictionary but has suggestions
- # if '#', then not in dictionary and no suggestions
- # if '*', then it is a delimiter between text inputs
- if( $ret =~ /^\*/ ) {
- $textInputIdx++;
- printTextIdxDecl( $textInputIdx );
- $wordIdx = 0;
-
- } elsif( $ret =~ /^(&|#)/ ) {
- my @tokens = split( " ", $ret, 5 );
- printWordsElem( $textInputIdx, $wordIdx, $tokens[1] );
- my @suggs = ();
- if( $tokens[4] ) {
- @suggs = split( ", ", $tokens[4] );
- }
- printSuggsElem( $textInputIdx, $wordIdx, @suggs );
- $wordIdx++;
- } else {
- $unhandledText .= $ret;
- }
- }
- close ASPELL or handleError( "Error executing `$cmd`\\n$unhandledText" ) and return;
-}
-
-sub escapeQuote {
- my $str = shift;
- $str =~ s/'/\\'/g;
- return $str;
-}
-
-sub handleError {
- my $err = shift;
- print "error = '" . escapeQuote( $err ) . "';\n";
-}
-
-sub url_decode {
- local $_ = @_ ? shift : $_;
- defined or return;
- # change + signs to spaces
- tr/+/ /;
- # change hex escapes to the proper characters
- s/%([a-fA-F0-9]{2})/pack "H2", $1/eg;
- return $_;
-}
-
-# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
-# Display HTML
-# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
-
-print <
-
-
-
-
-
-
-
-
-
-
-
-
-
-EOF
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js
deleted file mode 100755
index c85be9a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellChecker.js
+++ /dev/null
@@ -1,461 +0,0 @@
-////////////////////////////////////////////////////
-// spellChecker.js
-//
-// spellChecker object
-//
-// This file is sourced on web pages that have a textarea object to evaluate
-// for spelling. It includes the implementation for the spellCheckObject.
-//
-////////////////////////////////////////////////////
-
-
-// constructor
-function spellChecker( textObject ) {
-
- // public properties - configurable
-// this.popUpUrl = '/speller/spellchecker.html'; // by FredCK
- this.popUpUrl = 'fck_spellerpages/spellerpages/spellchecker.html'; // by FredCK
- this.popUpName = 'spellchecker';
-// this.popUpProps = "menu=no,width=440,height=350,top=70,left=120,resizable=yes,status=yes"; // by FredCK
- this.popUpProps = null ; // by FredCK
-// this.spellCheckScript = '/speller/server-scripts/spellchecker.php'; // by FredCK
- //this.spellCheckScript = '/cgi-bin/spellchecker.pl';
-
- // values used to keep track of what happened to a word
- this.replWordFlag = "R"; // single replace
- this.ignrWordFlag = "I"; // single ignore
- this.replAllFlag = "RA"; // replace all occurances
- this.ignrAllFlag = "IA"; // ignore all occurances
- this.fromReplAll = "~RA"; // an occurance of a "replace all" word
- this.fromIgnrAll = "~IA"; // an occurance of a "ignore all" word
- // properties set at run time
- this.wordFlags = new Array();
- this.currentTextIndex = 0;
- this.currentWordIndex = 0;
- this.spellCheckerWin = null;
- this.controlWin = null;
- this.wordWin = null;
- this.textArea = textObject; // deprecated
- this.textInputs = arguments;
-
- // private methods
- this._spellcheck = _spellcheck;
- this._getSuggestions = _getSuggestions;
- this._setAsIgnored = _setAsIgnored;
- this._getTotalReplaced = _getTotalReplaced;
- this._setWordText = _setWordText;
- this._getFormInputs = _getFormInputs;
-
- // public methods
- this.openChecker = openChecker;
- this.startCheck = startCheck;
- this.checkTextBoxes = checkTextBoxes;
- this.checkTextAreas = checkTextAreas;
- this.spellCheckAll = spellCheckAll;
- this.ignoreWord = ignoreWord;
- this.ignoreAll = ignoreAll;
- this.replaceWord = replaceWord;
- this.replaceAll = replaceAll;
- this.terminateSpell = terminateSpell;
- this.undo = undo;
-
- // set the current window's "speller" property to the instance of this class.
- // this object can now be referenced by child windows/frames.
- window.speller = this;
-}
-
-// call this method to check all text boxes (and only text boxes) in the HTML document
-function checkTextBoxes() {
- this.textInputs = this._getFormInputs( "^text$" );
- this.openChecker();
-}
-
-// call this method to check all textareas (and only textareas ) in the HTML document
-function checkTextAreas() {
- this.textInputs = this._getFormInputs( "^textarea$" );
- this.openChecker();
-}
-
-// call this method to check all text boxes and textareas in the HTML document
-function spellCheckAll() {
- this.textInputs = this._getFormInputs( "^text(area)?$" );
- this.openChecker();
-}
-
-// call this method to check text boxe(s) and/or textarea(s) that were passed in to the
-// object's constructor or to the textInputs property
-function openChecker() {
- this.spellCheckerWin = window.open( this.popUpUrl, this.popUpName, this.popUpProps );
- if( !this.spellCheckerWin.opener ) {
- this.spellCheckerWin.opener = window;
- }
-}
-
-function startCheck( wordWindowObj, controlWindowObj ) {
-
- // set properties from args
- this.wordWin = wordWindowObj;
- this.controlWin = controlWindowObj;
-
- // reset properties
- this.wordWin.resetForm();
- this.controlWin.resetForm();
- this.currentTextIndex = 0;
- this.currentWordIndex = 0;
- // initialize the flags to an array - one element for each text input
- this.wordFlags = new Array( this.wordWin.textInputs.length );
- // each element will be an array that keeps track of each word in the text
- for( var i=0; i wi ) || i > ti ) {
- // future word: set as "from ignore all" if
- // 1) do not already have a flag and
- // 2) have the same value as current word
- if(( this.wordWin.getTextVal( i, j ) == s_word_to_repl )
- && ( !this.wordFlags[i][j] )) {
- this._setAsIgnored( i, j, this.fromIgnrAll );
- }
- }
- }
- }
-
- // finally, move on
- this.currentWordIndex++;
- this._spellcheck();
- return true;
-}
-
-function replaceWord() {
- var wi = this.currentWordIndex;
- var ti = this.currentTextIndex;
- if( !this.wordWin ) {
- alert( 'Error: Word frame not available.' );
- return false;
- }
- if( !this.wordWin.getTextVal( ti, wi )) {
- alert( 'Error: "Not in dictionary" text is missing' );
- return false;
- }
- if( !this.controlWin.replacementText ) {
- return false ;
- }
- var txt = this.controlWin.replacementText;
- if( txt.value ) {
- var newspell = new String( txt.value );
- if( this._setWordText( ti, wi, newspell, this.replWordFlag )) {
- this.currentWordIndex++;
- this._spellcheck();
- }
- }
- return true;
-}
-
-function replaceAll() {
- var ti = this.currentTextIndex;
- var wi = this.currentWordIndex;
- if( !this.wordWin ) {
- alert( 'Error: Word frame not available.' );
- return false;
- }
- var s_word_to_repl = this.wordWin.getTextVal( ti, wi );
- if( !s_word_to_repl ) {
- alert( 'Error: "Not in dictionary" text is missing' );
- return false;
- }
- var txt = this.controlWin.replacementText;
- if( !txt.value ) return false;
- var newspell = new String( txt.value );
-
- // set this word as a "replace all" word.
- this._setWordText( ti, wi, newspell, this.replAllFlag );
-
- // loop through all the words after this word
- for( var i = ti; i < this.wordWin.textInputs.length; i++ ) {
- for( var j = 0; j < this.wordWin.totalWords( i ); j++ ) {
- if(( i == ti && j > wi ) || i > ti ) {
- // future word: set word text to s_word_to_repl if
- // 1) do not already have a flag and
- // 2) have the same value as s_word_to_repl
- if(( this.wordWin.getTextVal( i, j ) == s_word_to_repl )
- && ( !this.wordFlags[i][j] )) {
- this._setWordText( i, j, newspell, this.fromReplAll );
- }
- }
- }
- }
-
- // finally, move on
- this.currentWordIndex++;
- this._spellcheck();
- return true;
-}
-
-function terminateSpell() {
- // called when we have reached the end of the spell checking.
- var msg = ""; // by FredCK
- var numrepl = this._getTotalReplaced();
- if( numrepl == 0 ) {
- // see if there were no misspellings to begin with
- if( !this.wordWin ) {
- msg = "";
- } else {
- if( this.wordWin.totalMisspellings() ) {
-// msg += "No words changed."; // by FredCK
- msg += FCKLang.DlgSpellNoChanges ; // by FredCK
- } else {
-// msg += "No misspellings found."; // by FredCK
- msg += FCKLang.DlgSpellNoMispell ; // by FredCK
- }
- }
- } else if( numrepl == 1 ) {
-// msg += "One word changed."; // by FredCK
- msg += FCKLang.DlgSpellOneChange ; // by FredCK
- } else {
-// msg += numrepl + " words changed."; // by FredCK
- msg += FCKLang.DlgSpellManyChanges.replace( /%1/g, numrepl ) ;
- }
- if( msg ) {
-// msg += "\n"; // by FredCK
- alert( msg );
- }
-
- if( numrepl > 0 ) {
- // update the text field(s) on the opener window
- for( var i = 0; i < this.textInputs.length; i++ ) {
- // this.textArea.value = this.wordWin.text;
- if( this.wordWin ) {
- if( this.wordWin.textInputs[i] ) {
- this.textInputs[i].value = this.wordWin.textInputs[i];
- }
- }
- }
- }
-
- // return back to the calling window
-// this.spellCheckerWin.close(); // by FredCK
- if ( typeof( this.OnFinished ) == 'function' ) // by FredCK
- this.OnFinished(numrepl) ; // by FredCK
-
- return true;
-}
-
-function undo() {
- // skip if this is the first word!
- var ti = this.currentTextIndex;
- var wi = this.currentWordIndex;
-
- if( this.wordWin.totalPreviousWords( ti, wi ) > 0 ) {
- this.wordWin.removeFocus( ti, wi );
-
- // go back to the last word index that was acted upon
- do {
- // if the current word index is zero then reset the seed
- if( this.currentWordIndex == 0 && this.currentTextIndex > 0 ) {
- this.currentTextIndex--;
- this.currentWordIndex = this.wordWin.totalWords( this.currentTextIndex )-1;
- if( this.currentWordIndex < 0 ) this.currentWordIndex = 0;
- } else {
- if( this.currentWordIndex > 0 ) {
- this.currentWordIndex--;
- }
- }
- } while (
- this.wordWin.totalWords( this.currentTextIndex ) == 0
- || this.wordFlags[this.currentTextIndex][this.currentWordIndex] == this.fromIgnrAll
- || this.wordFlags[this.currentTextIndex][this.currentWordIndex] == this.fromReplAll
- );
-
- var text_idx = this.currentTextIndex;
- var idx = this.currentWordIndex;
- var preReplSpell = this.wordWin.originalSpellings[text_idx][idx];
-
- // if we got back to the first word then set the Undo button back to disabled
- if( this.wordWin.totalPreviousWords( text_idx, idx ) == 0 ) {
- this.controlWin.disableUndo();
- }
-
- var i, j, origSpell ;
- // examine what happened to this current word.
- switch( this.wordFlags[text_idx][idx] ) {
- // replace all: go through this and all the future occurances of the word
- // and revert them all to the original spelling and clear their flags
- case this.replAllFlag :
- for( i = text_idx; i < this.wordWin.textInputs.length; i++ ) {
- for( j = 0; j < this.wordWin.totalWords( i ); j++ ) {
- if(( i == text_idx && j >= idx ) || i > text_idx ) {
- origSpell = this.wordWin.originalSpellings[i][j];
- if( origSpell == preReplSpell ) {
- this._setWordText ( i, j, origSpell, undefined );
- }
- }
- }
- }
- break;
-
- // ignore all: go through all the future occurances of the word
- // and clear their flags
- case this.ignrAllFlag :
- for( i = text_idx; i < this.wordWin.textInputs.length; i++ ) {
- for( j = 0; j < this.wordWin.totalWords( i ); j++ ) {
- if(( i == text_idx && j >= idx ) || i > text_idx ) {
- origSpell = this.wordWin.originalSpellings[i][j];
- if( origSpell == preReplSpell ) {
- this.wordFlags[i][j] = undefined;
- }
- }
- }
- }
- break;
-
- // replace: revert the word to its original spelling
- case this.replWordFlag :
- this._setWordText ( text_idx, idx, preReplSpell, undefined );
- break;
- }
-
- // For all four cases, clear the wordFlag of this word. re-start the process
- this.wordFlags[text_idx][idx] = undefined;
- this._spellcheck();
- }
-}
-
-function _spellcheck() {
- var ww = this.wordWin;
-
- // check if this is the last word in the current text element
- if( this.currentWordIndex == ww.totalWords( this.currentTextIndex) ) {
- this.currentTextIndex++;
- this.currentWordIndex = 0;
- // keep going if we're not yet past the last text element
- if( this.currentTextIndex < this.wordWin.textInputs.length ) {
- this._spellcheck();
- return;
- } else {
- this.terminateSpell();
- return;
- }
- }
-
- // if this is after the first one make sure the Undo button is enabled
- if( this.currentWordIndex > 0 ) {
- this.controlWin.enableUndo();
- }
-
- // skip the current word if it has already been worked on
- if( this.wordFlags[this.currentTextIndex][this.currentWordIndex] ) {
- // increment the global current word index and move on.
- this.currentWordIndex++;
- this._spellcheck();
- } else {
- var evalText = ww.getTextVal( this.currentTextIndex, this.currentWordIndex );
- if( evalText ) {
- this.controlWin.evaluatedText.value = evalText;
- ww.setFocus( this.currentTextIndex, this.currentWordIndex );
- this._getSuggestions( this.currentTextIndex, this.currentWordIndex );
- }
- }
-}
-
-function _getSuggestions( text_num, word_num ) {
- this.controlWin.clearSuggestions();
- // add suggestion in list for each suggested word.
- // get the array of suggested words out of the
- // three-dimensional array containing all suggestions.
- var a_suggests = this.wordWin.suggestions[text_num][word_num];
- if( a_suggests ) {
- // got an array of suggestions.
- for( var ii = 0; ii < a_suggests.length; ii++ ) {
- this.controlWin.addSuggestion( a_suggests[ii] );
- }
- }
- this.controlWin.selectDefaultSuggestion();
-}
-
-function _setAsIgnored( text_num, word_num, flag ) {
- // set the UI
- this.wordWin.removeFocus( text_num, word_num );
- // do the bookkeeping
- this.wordFlags[text_num][word_num] = flag;
- return true;
-}
-
-function _getTotalReplaced() {
- var i_replaced = 0;
- for( var i = 0; i < this.wordFlags.length; i++ ) {
- for( var j = 0; j < this.wordFlags[i].length; j++ ) {
- if(( this.wordFlags[i][j] == this.replWordFlag )
- || ( this.wordFlags[i][j] == this.replAllFlag )
- || ( this.wordFlags[i][j] == this.fromReplAll )) {
- i_replaced++;
- }
- }
- }
- return i_replaced;
-}
-
-function _setWordText( text_num, word_num, newText, flag ) {
- // set the UI and form inputs
- this.wordWin.setText( text_num, word_num, newText );
- // keep track of what happened to this word:
- this.wordFlags[text_num][word_num] = flag;
- return true;
-}
-
-function _getFormInputs( inputPattern ) {
- var inputs = new Array();
- for( var i = 0; i < document.forms.length; i++ ) {
- for( var j = 0; j < document.forms[i].elements.length; j++ ) {
- if( document.forms[i].elements[j].type.match( inputPattern )) {
- inputs[inputs.length] = document.forms[i].elements[j];
- }
- }
- }
- return inputs;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html
deleted file mode 100755
index cbcd7db..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellchecker.html
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
-
-
-Speller Pages
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css
deleted file mode 100755
index 9928086..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/spellerStyle.css
+++ /dev/null
@@ -1,49 +0,0 @@
-.blend {
- font-family: courier new;
- font-size: 10pt;
- border: 0;
- margin-bottom:-1;
-}
-.normalLabel {
- font-size:8pt;
-}
-.normalText {
- font-family:arial, helvetica, sans-serif;
- font-size:10pt;
- color:000000;
- background-color:FFFFFF;
-}
-.plainText {
- font-family: courier new, courier, monospace;
- font-size: 10pt;
- color:000000;
- background-color:FFFFFF;
-}
-.controlWindowBody {
- font-family:arial, helvetica, sans-serif;
- font-size:8pt;
- padding: 7px ; /* by FredCK */
- margin: 0px ; /* by FredCK */
- /* color:000000; by FredCK */
- /* background-color:DADADA; by FredCK */
-}
-.readonlyInput {
- background-color:DADADA;
- color:000000;
- font-size:8pt;
- width:392px;
-}
-.textDefault {
- font-size:8pt;
- width: 200px;
-}
-.buttonDefault {
- width:90px;
- height:22px;
- font-size:8pt;
-}
-.suggSlct {
- width:200px;
- margin-top:2;
- font-size:8pt;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js
deleted file mode 100755
index 7990296..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_spellerpages/spellerpages/wordWindow.js
+++ /dev/null
@@ -1,272 +0,0 @@
-////////////////////////////////////////////////////
-// wordWindow object
-////////////////////////////////////////////////////
-function wordWindow() {
- // private properties
- this._forms = [];
-
- // private methods
- this._getWordObject = _getWordObject;
- //this._getSpellerObject = _getSpellerObject;
- this._wordInputStr = _wordInputStr;
- this._adjustIndexes = _adjustIndexes;
- this._isWordChar = _isWordChar;
- this._lastPos = _lastPos;
-
- // public properties
- this.wordChar = /[a-zA-Z]/;
- this.windowType = "wordWindow";
- this.originalSpellings = new Array();
- this.suggestions = new Array();
- this.checkWordBgColor = "pink";
- this.normWordBgColor = "white";
- this.text = "";
- this.textInputs = new Array();
- this.indexes = new Array();
- //this.speller = this._getSpellerObject();
-
- // public methods
- this.resetForm = resetForm;
- this.totalMisspellings = totalMisspellings;
- this.totalWords = totalWords;
- this.totalPreviousWords = totalPreviousWords;
- //this.getTextObjectArray = getTextObjectArray;
- this.getTextVal = getTextVal;
- this.setFocus = setFocus;
- this.removeFocus = removeFocus;
- this.setText = setText;
- //this.getTotalWords = getTotalWords;
- this.writeBody = writeBody;
- this.printForHtml = printForHtml;
-}
-
-function resetForm() {
- if( this._forms ) {
- for( var i = 0; i < this._forms.length; i++ ) {
- this._forms[i].reset();
- }
- }
- return true;
-}
-
-function totalMisspellings() {
- var total_words = 0;
- for( var i = 0; i < this.textInputs.length; i++ ) {
- total_words += this.totalWords( i );
- }
- return total_words;
-}
-
-function totalWords( textIndex ) {
- return this.originalSpellings[textIndex].length;
-}
-
-function totalPreviousWords( textIndex, wordIndex ) {
- var total_words = 0;
- for( var i = 0; i <= textIndex; i++ ) {
- for( var j = 0; j < this.totalWords( i ); j++ ) {
- if( i == textIndex && j == wordIndex ) {
- break;
- } else {
- total_words++;
- }
- }
- }
- return total_words;
-}
-
-//function getTextObjectArray() {
-// return this._form.elements;
-//}
-
-function getTextVal( textIndex, wordIndex ) {
- var word = this._getWordObject( textIndex, wordIndex );
- if( word ) {
- return word.value;
- }
-}
-
-function setFocus( textIndex, wordIndex ) {
- var word = this._getWordObject( textIndex, wordIndex );
- if( word ) {
- if( word.type == "text" ) {
- word.focus();
- word.style.backgroundColor = this.checkWordBgColor;
- }
- }
-}
-
-function removeFocus( textIndex, wordIndex ) {
- var word = this._getWordObject( textIndex, wordIndex );
- if( word ) {
- if( word.type == "text" ) {
- word.blur();
- word.style.backgroundColor = this.normWordBgColor;
- }
- }
-}
-
-function setText( textIndex, wordIndex, newText ) {
- var word = this._getWordObject( textIndex, wordIndex );
- var beginStr;
- var endStr;
- if( word ) {
- var pos = this.indexes[textIndex][wordIndex];
- var oldText = word.value;
- // update the text given the index of the string
- beginStr = this.textInputs[textIndex].substring( 0, pos );
- endStr = this.textInputs[textIndex].substring(
- pos + oldText.length,
- this.textInputs[textIndex].length
- );
- this.textInputs[textIndex] = beginStr + newText + endStr;
-
- // adjust the indexes on the stack given the differences in
- // length between the new word and old word.
- var lengthDiff = newText.length - oldText.length;
- this._adjustIndexes( textIndex, wordIndex, lengthDiff );
-
- word.size = newText.length;
- word.value = newText;
- this.removeFocus( textIndex, wordIndex );
- }
-}
-
-
-function writeBody() {
- var d = window.document;
- var is_html = false;
-
- d.open();
-
- // iterate through each text input.
- for( var txtid = 0; txtid < this.textInputs.length; txtid++ ) {
- var end_idx = 0;
- var begin_idx = 0;
- d.writeln( '' );
- }
- //for ( var j = 0; j < d.forms.length; j++ ) {
- // alert( d.forms[j].name );
- // for( var k = 0; k < d.forms[j].elements.length; k++ ) {
- // alert( d.forms[j].elements[k].name + ": " + d.forms[j].elements[k].value );
- // }
- //}
-
- // set the _forms property
- this._forms = d.forms;
- d.close();
-}
-
-// return the character index in the full text after the last word we evaluated
-function _lastPos( txtid, idx ) {
- if( idx > 0 )
- return this.indexes[txtid][idx-1] + this.originalSpellings[txtid][idx-1].length;
- else
- return 0;
-}
-
-function printForHtml( n ) {
- return n ; // by FredCK
-/*
- var htmlstr = n;
- if( htmlstr.length == 1 ) {
- // do simple case statement if it's just one character
- switch ( n ) {
- case "\n":
- htmlstr = ' ';
- break;
- case "<":
- htmlstr = '<';
- break;
- case ">":
- htmlstr = '>';
- break;
- }
- return htmlstr;
- } else {
- htmlstr = htmlstr.replace( //g, '>' );
- htmlstr = htmlstr.replace( /\n/g, ' ' );
- return htmlstr;
- }
-*/
-}
-
-function _isWordChar( letter ) {
- if( letter.search( this.wordChar ) == -1 ) {
- return false;
- } else {
- return true;
- }
-}
-
-function _getWordObject( textIndex, wordIndex ) {
- if( this._forms[textIndex] ) {
- if( this._forms[textIndex].elements[wordIndex] ) {
- return this._forms[textIndex].elements[wordIndex];
- }
- }
- return null;
-}
-
-function _wordInputStr( word ) {
- var str = ' ';
- return str;
-}
-
-function _adjustIndexes( textIndex, wordIndex, lengthDiff ) {
- for( var i = wordIndex + 1; i < this.originalSpellings[textIndex].length; i++ ) {
- this.indexes[textIndex][i] = this.indexes[textIndex][i] + lengthDiff;
- }
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_table.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_table.html
deleted file mode 100755
index 06b91a5..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_table.html
+++ /dev/null
@@ -1,439 +0,0 @@
-
-
-
-
- Table Properties
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_tablecell.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_tablecell.html
deleted file mode 100755
index ce882d3..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_tablecell.html
+++ /dev/null
@@ -1,293 +0,0 @@
-
-
-
-
- Table Cell Properties
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template.html
deleted file mode 100755
index 084dc6d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template.html
+++ /dev/null
@@ -1,242 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Please select the template to open in the editor
- (the actual contents will be lost):
-
-
-
-
-
-
-
- Loading templates list. Please wait...
-
-
-
- (No templates defined)
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template1.gif b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template1.gif
deleted file mode 100755
index efdabbe..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template1.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template2.gif b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template2.gif
deleted file mode 100755
index d1cebb3..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template2.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template3.gif b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template3.gif
deleted file mode 100755
index db41cb4..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_template/images/template3.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_textarea.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_textarea.html
deleted file mode 100755
index e4edae9..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_textarea.html
+++ /dev/null
@@ -1,94 +0,0 @@
-
-
-
-
- Text Area Properties
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_textfield.html b/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_textfield.html
deleted file mode 100755
index efde66d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dialog/fck_textfield.html
+++ /dev/null
@@ -1,136 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_dtd_test.html b/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_dtd_test.html
deleted file mode 100755
index c149d15..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_dtd_test.html
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
- DTD Test Page
-
-
-
-
-
-
- DTD Contents
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_xhtml10strict.js b/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_xhtml10strict.js
deleted file mode 100755
index 81c2670..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_xhtml10strict.js
+++ /dev/null
@@ -1,116 +0,0 @@
-/*
- * 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 ==
- *
- * Contains the DTD mapping for XHTML 1.0 Strict.
- * This file was automatically generated from the file: xhtml10-strict.dtd
- */
-FCK.DTD = (function()
-{
- var X = FCKTools.Merge ;
-
- var H,I,J,K,C,L,M,A,B,D,E,G,N,F ;
- A = {ins:1, del:1, script:1} ;
- B = {hr:1, ul:1, div:1, blockquote:1, noscript:1, table:1, address:1, pre:1, p:1, h5:1, dl:1, h4:1, ol:1, h6:1, h1:1, h3:1, h2:1} ;
- C = X({fieldset:1}, B) ;
- D = X({sub:1, bdo:1, 'var':1, sup:1, br:1, kbd:1, map:1, samp:1, b:1, acronym:1, '#':1, abbr:1, code:1, i:1, cite:1, tt:1, strong:1, q:1, em:1, big:1, small:1, span:1, dfn:1}, A) ;
- E = X({img:1, object:1}, D) ;
- F = {input:1, button:1, textarea:1, select:1, label:1} ;
- G = X({a:1}, F) ;
- H = {img:1, noscript:1, br:1, kbd:1, button:1, h5:1, h4:1, samp:1, h6:1, ol:1, h1:1, h3:1, h2:1, form:1, select:1, '#':1, ins:1, abbr:1, label:1, code:1, table:1, script:1, cite:1, input:1, strong:1, textarea:1, big:1, small:1, span:1, hr:1, sub:1, bdo:1, 'var':1, div:1, object:1, sup:1, map:1, dl:1, del:1, fieldset:1, ul:1, b:1, acronym:1, a:1, blockquote:1, i:1, address:1, tt:1, q:1, pre:1, p:1, em:1, dfn:1} ;
-
- I = X({form:1, fieldset:1}, B, E, G) ;
- J = {tr:1} ;
- K = {'#':1} ;
- L = X(E, G) ;
- M = {li:1} ;
- N = X({form:1}, A, C) ;
-
- return {
- col: {},
- tr: {td:1, th:1},
- img: {},
- colgroup: {col:1},
- noscript: N,
- td: I,
- br: {},
- th: I,
- kbd: L,
- button: X(B, E),
- h5: L,
- h4: L,
- samp: L,
- h6: L,
- ol: M,
- h1: L,
- h3: L,
- option: K,
- h2: L,
- form: X(A, C),
- select: {optgroup:1, option:1},
- ins: I,
- abbr: L,
- label: L,
- code: L,
- table: {thead:1, col:1, tbody:1, tr:1, colgroup:1, caption:1, tfoot:1},
- script: K,
- tfoot: J,
- cite: L,
- li: I,
- input: {},
- strong: L,
- textarea: K,
- big: L,
- small: L,
- span: L,
- dt: L,
- hr: {},
- sub: L,
- optgroup: {option:1},
- bdo: L,
- param: {},
- 'var': L,
- div: I,
- object: X({param:1}, H),
- sup: L,
- dd: I,
- area: {},
- map: X({form:1, area:1}, A, C),
- dl: {dt:1, dd:1},
- del: I,
- fieldset: X({legend:1}, H),
- thead: J,
- ul: M,
- acronym: L,
- b: L,
- a: X({img:1, object:1}, D, F),
- blockquote: N,
- caption: L,
- i: L,
- tbody: J,
- address: L,
- tt: L,
- legend: L,
- q: L,
- pre: X({a:1}, D, F),
- p: L,
- em: L,
- dfn: L
- } ;
-})() ;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_xhtml10transitional.js b/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_xhtml10transitional.js
deleted file mode 100755
index ce056a1..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/dtd/fck_xhtml10transitional.js
+++ /dev/null
@@ -1,140 +0,0 @@
-/*
- * 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 ==
- *
- * Contains the DTD mapping for XHTML 1.0 Transitional.
- * This file was automatically generated from the file: xhtml10-transitional.dtd
- */
-FCK.DTD = (function()
-{
- var X = FCKTools.Merge ;
-
- var A,L,J,M,N,O,D,H,P,K,Q,F,G,C,B,E,I ;
- A = {isindex:1, fieldset:1} ;
- B = {input:1, button:1, select:1, textarea:1, label:1} ;
- C = X({a:1}, B) ;
- D = X({iframe:1}, C) ;
- E = {hr:1, ul:1, menu:1, div:1, blockquote:1, noscript:1, table:1, center:1, address:1, dir:1, pre:1, h5:1, dl:1, h4:1, noframes:1, h6:1, ol:1, h1:1, h3:1, h2:1} ;
- F = {ins:1, del:1, script:1} ;
- G = X({b:1, acronym:1, bdo:1, 'var':1, '#':1, abbr:1, code:1, br:1, i:1, cite:1, kbd:1, u:1, strike:1, s:1, tt:1, strong:1, q:1, samp:1, em:1, dfn:1, span:1}, F) ;
- H = X({sub:1, img:1, object:1, sup:1, basefont:1, map:1, applet:1, font:1, big:1, small:1}, G) ;
- I = X({p:1}, H) ;
- J = X({iframe:1}, H, B) ;
- K = {img:1, noscript:1, br:1, kbd:1, center:1, button:1, basefont:1, h5:1, h4:1, samp:1, h6:1, ol:1, h1:1, h3:1, h2:1, form:1, font:1, '#':1, select:1, menu:1, ins:1, abbr:1, label:1, code:1, table:1, script:1, cite:1, input:1, iframe:1, strong:1, textarea:1, noframes:1, big:1, small:1, span:1, hr:1, sub:1, bdo:1, 'var':1, div:1, object:1, sup:1, strike:1, dir:1, map:1, dl:1, applet:1, del:1, isindex:1, fieldset:1, ul:1, b:1, acronym:1, a:1, blockquote:1, i:1, u:1, s:1, tt:1, address:1, q:1, pre:1, p:1, em:1, dfn:1} ;
-
- L = X({a:1}, J) ;
- M = {tr:1} ;
- N = {'#':1} ;
- O = X({param:1}, K) ;
- P = X({form:1}, A, D, E, I) ;
- Q = {li:1} ;
-
- return {
- col: {},
- tr: {td:1, th:1},
- img: {},
- colgroup: {col:1},
- noscript: P,
- td: P,
- br: {},
- th: P,
- center: P,
- kbd: L,
- button: X(I, E),
- basefont: {},
- h5: L,
- h4: L,
- samp: L,
- h6: L,
- ol: Q,
- h1: L,
- h3: L,
- option: N,
- h2: L,
- form: X(A, D, E, I),
- select: {optgroup:1, option:1},
- font: J, // Changed from L to J (see (1))
- ins: P,
- menu: Q,
- abbr: L,
- label: L,
- table: {thead:1, col:1, tbody:1, tr:1, colgroup:1, caption:1, tfoot:1},
- code: L,
- script: N,
- tfoot: M,
- cite: L,
- li: P,
- input: {},
- iframe: P,
- strong: J, // Changed from L to J (see (1))
- textarea: N,
- noframes: P,
- big: J, // Changed from L to J (see (1))
- small: J, // Changed from L to J (see (1))
- span: J, // Changed from L to J (see (1))
- hr: {},
- dt: L,
- sub: J, // Changed from L to J (see (1))
- optgroup: {option:1},
- param: {},
- bdo: L,
- 'var': J, // Changed from L to J (see (1))
- div: P,
- object: O,
- sup: J, // Changed from L to J (see (1))
- dd: P,
- strike: J, // Changed from L to J (see (1))
- area: {},
- dir: Q,
- map: X({area:1, form:1, p:1}, A, F, E),
- applet: O,
- dl: {dt:1, dd:1},
- del: P,
- isindex: {},
- fieldset: X({legend:1}, K),
- thead: M,
- ul: Q,
- acronym: L,
- b: J, // Changed from L to J (see (1))
- a: J,
- blockquote: P,
- caption: L,
- i: J, // Changed from L to J (see (1))
- u: J, // Changed from L to J (see (1))
- tbody: M,
- s: L,
- address: X(D, I),
- tt: J, // Changed from L to J (see (1))
- legend: L,
- q: L,
- pre: X(G, C),
- p: L,
- em: J, // Changed from L to J (see (1))
- dfn: L
- } ;
-})() ;
-
-/*
- Notes:
- (1) According to the DTD, many elements, like accept elements
- inside of them. But, to produce better output results, we have manually
- changed the map to avoid breaking the links on pieces, having
- "this is a link test ", instead of
- "this is a link test ".
-*/
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/fckdebug.html b/common/static/contrib/fckeditor-2.6.4/editor/fckdebug.html
deleted file mode 100755
index 35dd663..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/fckdebug.html
+++ /dev/null
@@ -1,153 +0,0 @@
-
-
-
-
- FCKeditor Debug Window
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/fckdialog.html b/common/static/contrib/fckeditor-2.6.4/editor/fckdialog.html
deleted file mode 100755
index 706e4b1..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/fckdialog.html
+++ /dev/null
@@ -1,819 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/fckeditor.html b/common/static/contrib/fckeditor-2.6.4/editor/fckeditor.html
deleted file mode 100755
index b6ada3e..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/fckeditor.html
+++ /dev/null
@@ -1,317 +0,0 @@
-
-
-
-
- FCKeditor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/fckeditor.original.html b/common/static/contrib/fckeditor-2.6.4/editor/fckeditor.original.html
deleted file mode 100755
index 1e00431..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/fckeditor.original.html
+++ /dev/null
@@ -1,424 +0,0 @@
-
-
-
-
- FCKeditor
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/browser.css b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/browser.css
deleted file mode 100755
index e123763..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/browser.css
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * 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 ==
- *
- * CSS styles used by all pages that compose the File Browser.
- */
-
-body
-{
- background-color: #f1f1e3;
- margin-top:0;
- margin-bottom:0;
-}
-
-form
-{
- margin: 0;
- padding: 0;
-}
-
-.Frame
-{
- background-color: #f1f1e3;
- border: thin inset #f1f1e3;
-}
-
-body.FileArea
-{
- background-color: #ffffff;
- margin: 10px;
-}
-
-body, td, input, select
-{
- font-size: 11px;
- font-family: 'Microsoft Sans Serif' , Arial, Helvetica, Verdana;
-}
-
-.ActualFolder
-{
- font-weight: bold;
- font-size: 14px;
-}
-
-.PopupButtons
-{
- border-top: #d5d59d 1px solid;
- background-color: #e3e3c7;
- padding: 7px 10px 7px 10px;
-}
-
-.Button, button
-{
- color: #3b3b1f;
- border: #737357 1px solid;
- background-color: #c7c78f;
-}
-
-.FolderListCurrentFolder img
-{
- background-image: url(images/FolderOpened.gif);
-}
-
-.FolderListFolder img
-{
- background-image: url(images/Folder.gif);
-}
-
-.fullHeight {
- height: 100%;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/browser.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/browser.html
deleted file mode 100755
index b95bc4a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/browser.html
+++ /dev/null
@@ -1,200 +0,0 @@
-
-
-
-
- FCKeditor - Resources Browser
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmactualfolder.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmactualfolder.html
deleted file mode 100755
index 1524a07..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmactualfolder.html
+++ /dev/null
@@ -1,95 +0,0 @@
-
-
-
-
- Folder path
-
-
-
-
-
-
-
-
-
-
-
-
-
- /
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmcreatefolder.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmcreatefolder.html
deleted file mode 100755
index 1866b87..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmcreatefolder.html
+++ /dev/null
@@ -1,114 +0,0 @@
-
-
-
-
- Create Folder
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Create New Folder
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmfolders.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmfolders.html
deleted file mode 100755
index 55679e9..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmfolders.html
+++ /dev/null
@@ -1,198 +0,0 @@
-
-
-
-
- Folders
-
-
-
-
-
-
-
-
-
- ..
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmresourceslist.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmresourceslist.html
deleted file mode 100755
index dac883e..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmresourceslist.html
+++ /dev/null
@@ -1,169 +0,0 @@
-
-
-
-
- Resources
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmresourcetype.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmresourcetype.html
deleted file mode 100755
index 60c2e5b..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmresourcetype.html
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
-
- Available types
-
-
-
-
-
-
-
-
-
- Resource Type
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmupload.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmupload.html
deleted file mode 100755
index 302d037..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/frmupload.html
+++ /dev/null
@@ -1,115 +0,0 @@
-
-
-
-
- File Upload
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/ButtonArrow.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/ButtonArrow.gif
deleted file mode 100755
index a355e5a..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/ButtonArrow.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/Folder.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/Folder.gif
deleted file mode 100755
index ab6824d..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/Folder.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/Folder32.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/Folder32.gif
deleted file mode 100755
index b93b752..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/Folder32.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderOpened.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderOpened.gif
deleted file mode 100755
index 0c5dd41..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderOpened.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderOpened32.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderOpened32.gif
deleted file mode 100755
index 3e3fcf5..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderOpened32.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderUp.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderUp.gif
deleted file mode 100755
index ad5bc20..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/FolderUp.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/ai.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/ai.gif
deleted file mode 100755
index 699e6a3..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/ai.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/avi.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/avi.gif
deleted file mode 100755
index 97025bb..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/avi.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/bmp.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/bmp.gif
deleted file mode 100755
index f3c7f82..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/bmp.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/cs.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/cs.gif
deleted file mode 100755
index b62bd02..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/cs.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/default.icon.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/default.icon.gif
deleted file mode 100755
index 976997b..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/default.icon.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/dll.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/dll.gif
deleted file mode 100755
index 9b54964..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/dll.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/doc.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/doc.gif
deleted file mode 100755
index b557568..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/doc.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/exe.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/exe.gif
deleted file mode 100755
index 7584993..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/exe.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/fla.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/fla.gif
deleted file mode 100755
index 923079f..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/fla.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/gif.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/gif.gif
deleted file mode 100755
index df5f579..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/gif.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/htm.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/htm.gif
deleted file mode 100755
index a9bdf00..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/htm.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/html.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/html.gif
deleted file mode 100755
index a9bdf00..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/html.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/jpg.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/jpg.gif
deleted file mode 100755
index de78363..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/jpg.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/js.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/js.gif
deleted file mode 100755
index fe0c98e..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/js.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/mdb.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/mdb.gif
deleted file mode 100755
index d3af9e8..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/mdb.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/mp3.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/mp3.gif
deleted file mode 100755
index 7d6360f..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/mp3.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/pdf.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/pdf.gif
deleted file mode 100755
index 4950ec8..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/pdf.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/png.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/png.gif
deleted file mode 100755
index 0a79ebf..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/png.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/ppt.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/ppt.gif
deleted file mode 100755
index 023431c..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/ppt.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/rdp.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/rdp.gif
deleted file mode 100755
index b9eace7..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/rdp.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/swf.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/swf.gif
deleted file mode 100755
index 5df7de5..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/swf.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/swt.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/swt.gif
deleted file mode 100755
index 7807c07..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/swt.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/txt.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/txt.gif
deleted file mode 100755
index 4e2c2e3..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/txt.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/vsd.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/vsd.gif
deleted file mode 100755
index 7624697..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/vsd.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/xls.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/xls.gif
deleted file mode 100755
index afe724a..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/xls.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/xml.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/xml.gif
deleted file mode 100755
index 4fae356..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/xml.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/zip.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/zip.gif
deleted file mode 100755
index 7157f72..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/32/zip.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/ai.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/ai.gif
deleted file mode 100755
index ba5a913..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/ai.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/avi.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/avi.gif
deleted file mode 100755
index 6f3bac9..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/avi.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/bmp.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/bmp.gif
deleted file mode 100755
index 7708dd8..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/bmp.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/cs.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/cs.gif
deleted file mode 100755
index 4d92723..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/cs.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/default.icon.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/default.icon.gif
deleted file mode 100755
index 6ce26a4..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/default.icon.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/dll.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/dll.gif
deleted file mode 100755
index 48d445a..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/dll.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/doc.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/doc.gif
deleted file mode 100755
index 6535b4c..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/doc.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/exe.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/exe.gif
deleted file mode 100755
index 315817f..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/exe.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/fla.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/fla.gif
deleted file mode 100755
index 8f91a98..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/fla.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/gif.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/gif.gif
deleted file mode 100755
index a5e3e6c..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/gif.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/htm.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/htm.gif
deleted file mode 100755
index 0b5d6ba..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/htm.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/html.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/html.gif
deleted file mode 100755
index 0b5d6ba..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/html.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/jpg.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/jpg.gif
deleted file mode 100755
index 634b386..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/jpg.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/js.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/js.gif
deleted file mode 100755
index 4ea17d4..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/js.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/mdb.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/mdb.gif
deleted file mode 100755
index 0d7c102..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/mdb.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/mp3.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/mp3.gif
deleted file mode 100755
index 6f3bac9..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/mp3.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/pdf.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/pdf.gif
deleted file mode 100755
index ca1f94a..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/pdf.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/png.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/png.gif
deleted file mode 100755
index b6d1b32..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/png.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/ppt.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/ppt.gif
deleted file mode 100755
index 877a8c8..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/ppt.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/rdp.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/rdp.gif
deleted file mode 100755
index 916cd7e..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/rdp.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/swf.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/swf.gif
deleted file mode 100755
index 314469d..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/swf.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/swt.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/swt.gif
deleted file mode 100755
index 314469d..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/swt.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/txt.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/txt.gif
deleted file mode 100755
index 1511ba3..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/txt.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/vsd.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/vsd.gif
deleted file mode 100755
index 9be3daa..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/vsd.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/xls.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/xls.gif
deleted file mode 100755
index f57715d..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/xls.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/xml.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/xml.gif
deleted file mode 100755
index 4559928..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/xml.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/zip.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/zip.gif
deleted file mode 100755
index b1e2492..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/icons/zip.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/spacer.gif b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/spacer.gif
deleted file mode 100755
index 35d42e8..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/images/spacer.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/js/common.js b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/js/common.js
deleted file mode 100755
index 2691f5c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/js/common.js
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * 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 ==
- *
- * Common objects and functions shared by all pages that compose the
- * File Browser dialog window.
- */
-
-// Automatically detect the correct document.domain (#1919).
-(function()
-{
- var d = document.domain ;
-
- while ( true )
- {
- // Test if we can access a parent property.
- try
- {
- var test = window.top.opener.document.domain ;
- break ;
- }
- catch( e )
- {}
-
- // Remove a domain part: www.mytest.example.com => mytest.example.com => example.com ...
- d = d.replace( /.*?(?:\.|$)/, '' ) ;
-
- if ( d.length == 0 )
- break ; // It was not able to detect the domain.
-
- try
- {
- document.domain = d ;
- }
- catch (e)
- {
- break ;
- }
- }
-})() ;
-
-function AddSelectOption( selectElement, optionText, optionValue )
-{
- var oOption = document.createElement("OPTION") ;
-
- oOption.text = optionText ;
- oOption.value = optionValue ;
-
- selectElement.options.add(oOption) ;
-
- return oOption ;
-}
-
-var oConnector = window.parent.oConnector ;
-var oIcons = window.parent.oIcons ;
-
-
-function StringBuilder( value )
-{
- this._Strings = new Array( value || '' ) ;
-}
-
-StringBuilder.prototype.Append = function( value )
-{
- if ( value )
- this._Strings.push( value ) ;
-}
-
-StringBuilder.prototype.ToString = function()
-{
- return this._Strings.join( '' ) ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/js/fckxml.js b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/js/fckxml.js
deleted file mode 100755
index c013205..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/browser/default/js/fckxml.js
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * 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 ==
- *
- * Defines the FCKXml object that is used for XML data calls
- * and XML processing.
- *
- * This script is shared by almost all pages that compose the
- * File Browser frameset.
- */
-
-var FCKXml = function()
-{}
-
-FCKXml.prototype.GetHttpRequest = function()
-{
- // Gecko / IE7
- try { return new XMLHttpRequest(); }
- catch(e) {}
-
- // IE6
- try { return new ActiveXObject( 'Msxml2.XMLHTTP' ) ; }
- catch(e) {}
-
- // IE5
- try { return new ActiveXObject( 'Microsoft.XMLHTTP' ) ; }
- catch(e) {}
-
- return null ;
-}
-
-FCKXml.prototype.LoadUrl = function( urlToCall, asyncFunctionPointer )
-{
- var oFCKXml = this ;
-
- var bAsync = ( typeof(asyncFunctionPointer) == 'function' ) ;
-
- var oXmlHttp = this.GetHttpRequest() ;
-
- oXmlHttp.open( "GET", urlToCall, bAsync ) ;
-
- if ( bAsync )
- {
- oXmlHttp.onreadystatechange = function()
- {
- if ( oXmlHttp.readyState == 4 )
- {
- var oXml ;
- try
- {
- // this is the same test for an FF2 bug as in fckxml_gecko.js
- // but we've moved the responseXML assignment into the try{}
- // so we don't even have to check the return status codes.
- var test = oXmlHttp.responseXML.firstChild ;
- oXml = oXmlHttp.responseXML ;
- }
- catch ( e )
- {
- try
- {
- oXml = (new DOMParser()).parseFromString( oXmlHttp.responseText, 'text/xml' ) ;
- }
- catch ( e ) {}
- }
-
- if ( !oXml || !oXml.firstChild || oXml.firstChild.nodeName == 'parsererror' )
- {
- alert( 'The server didn\'t send back a proper XML response. Please contact your system administrator.\n\n' +
- 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')\n\n' +
- 'Requested URL:\n' + urlToCall + '\n\n' +
- 'Response text:\n' + oXmlHttp.responseText ) ;
- return ;
- }
-
- oFCKXml.DOMDocument = oXml ;
- asyncFunctionPointer( oFCKXml ) ;
- }
- }
- }
-
- oXmlHttp.send( null ) ;
-
- if ( ! bAsync )
- {
- if ( oXmlHttp.status == 200 || oXmlHttp.status == 304 )
- this.DOMDocument = oXmlHttp.responseXML ;
- else
- {
- alert( 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')' ) ;
- }
- }
-}
-
-FCKXml.prototype.SelectNodes = function( xpath )
-{
- if ( navigator.userAgent.indexOf('MSIE') >= 0 ) // IE
- return this.DOMDocument.selectNodes( xpath ) ;
- else // Gecko
- {
- var aNodeArray = new Array();
-
- var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
- this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), XPathResult.ORDERED_NODE_ITERATOR_TYPE, null) ;
- if ( xPathResult )
- {
- var oNode = xPathResult.iterateNext() ;
- while( oNode )
- {
- aNodeArray[aNodeArray.length] = oNode ;
- oNode = xPathResult.iterateNext();
- }
- }
- return aNodeArray ;
- }
-}
-
-FCKXml.prototype.SelectSingleNode = function( xpath )
-{
- if ( navigator.userAgent.indexOf('MSIE') >= 0 ) // IE
- return this.DOMDocument.selectSingleNode( xpath ) ;
- else // Gecko
- {
- var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
- this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), 9, null);
-
- if ( xPathResult && xPathResult.singleNodeValue )
- return xPathResult.singleNodeValue ;
- else
- return null ;
- }
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/basexml.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/basexml.asp
deleted file mode 100755
index 4c35406..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/basexml.asp
+++ /dev/null
@@ -1,63 +0,0 @@
-<%
- ' 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 ==
- '
- ' This file include the functions that create the base XML output.
-%>
-<%
-
-Sub SetXmlHeaders()
- ' Cleans the response buffer.
- Response.Clear()
-
- ' Prevent the browser from caching the result.
- Response.CacheControl = "no-cache"
-
- ' Set the response format.
- Response.CodePage = 65001
- Response.CharSet = "UTF-8"
- Response.ContentType = "text/xml"
-End Sub
-
-Sub CreateXmlHeader( command, resourceType, currentFolder, url )
- ' Create the XML document header.
- Response.Write ""
-
- ' Create the main "Connector" node.
- Response.Write ""
-
- ' Add the current folder node.
- Response.Write " "
-End Sub
-
-Sub CreateXmlFooter()
- Response.Write " "
-End Sub
-
-Sub SendError( number, text )
- SetXmlHeaders
-
- ' Create the XML document header.
- Response.Write ""
-
- Response.Write " "
-
- Response.End
-End Sub
-%>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/class_upload.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/class_upload.asp
deleted file mode 100755
index 74f5df8..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/class_upload.asp
+++ /dev/null
@@ -1,353 +0,0 @@
-<%
- ' 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 ==
- '
- ' These are the classes used to handle ASP upload without using third
- ' part components (OCX/DLL).
-%>
-<%
-'**********************************************
-' File: NetRube_Upload.asp
-' Version: NetRube Upload Class Version 2.3 Build 20070528
-' Author: NetRube
-' Email: NetRube@126.com
-' Date: 05/28/2007
-' Comments: The code for the Upload.
-' This can free usage, but please
-' not to delete this copyright information.
-' If you have a modification version,
-' Please send out a duplicate to me.
-'**********************************************
-' 文件名: NetRube_Upload.asp
-' 版本: NetRube Upload Class Version 2.3 Build 20070528
-' 作者: NetRube(网络乡巴佬)
-' 电子邮件: NetRube@126.com
-' 日期: 2007年05月28日
-' 声明: 文件上传类
-' 本上传类可以自由使用,但请保留此版权声明信息
-' 如果您对本上传类进行修改增强,
-' 请发送一份给俺。
-'**********************************************
-
-Class NetRube_Upload
-
- Public File, Form
- Private oSourceData
- Private nMaxSize, nErr, sAllowed, sDenied, sHtmlExtensions
-
- Private Sub Class_Initialize
- nErr = 0
- nMaxSize = 1048576
-
- Set File = Server.CreateObject("Scripting.Dictionary")
- File.CompareMode = 1
- Set Form = Server.CreateObject("Scripting.Dictionary")
- Form.CompareMode = 1
-
- Set oSourceData = Server.CreateObject("ADODB.Stream")
- oSourceData.Type = 1
- oSourceData.Mode = 3
- oSourceData.Open
- End Sub
-
- Private Sub Class_Terminate
- Form.RemoveAll
- Set Form = Nothing
- File.RemoveAll
- Set File = Nothing
-
- oSourceData.Close
- Set oSourceData = Nothing
- End Sub
-
- Public Property Get Version
- Version = "NetRube Upload Class Version 2.3 Build 20070528"
- End Property
-
- Public Property Get ErrNum
- ErrNum = nErr
- End Property
-
- Public Property Let MaxSize(nSize)
- nMaxSize = nSize
- End Property
-
- Public Property Let Allowed(sExt)
- sAllowed = sExt
- End Property
-
- Public Property Let Denied(sExt)
- sDenied = sExt
- End Property
-
- Public Property Let HtmlExtensions(sExt)
- sHtmlExtensions = sExt
- End Property
-
- Public Sub GetData
- Dim aCType
- aCType = Split(Request.ServerVariables("HTTP_CONTENT_TYPE"), ";")
- if ( uBound(aCType) < 0 ) then
- nErr = 1
- Exit Sub
- end if
- If aCType(0) <> "multipart/form-data" Then
- nErr = 1
- Exit Sub
- End If
-
- Dim nTotalSize
- nTotalSize = Request.TotalBytes
- If nTotalSize < 1 Then
- nErr = 2
- Exit Sub
- End If
- If nMaxSize > 0 And nTotalSize > nMaxSize Then
- nErr = 3
- Exit Sub
- End If
-
- 'Thankful long(yrl031715@163.com)
- 'Fix upload large file.
- '**********************************************
- ' 修正作者:long
- ' 联系邮件: yrl031715@163.com
- ' 修正时间:2007年5月6日
- ' 修正说明:由于iis6的Content-Length 头信息中包含的请求长度超过了 AspMaxRequestEntityAllowed 的值(默认200K), IIS 将返回一个 403 错误信息.
- ' 直接导致在iis6下调试FCKeditor上传功能时,一旦文件超过200K,上传文件时文件管理器失去响应,受此影响,文件的快速上传功能也存在在缺陷。
- ' 在参考 宝玉 的 Asp无组件上传带进度条 演示程序后作出如下修改,以修正在iis6下的错误。
-
- Dim nTotalBytes, nPartBytes, ReadBytes
- ReadBytes = 0
- nTotalBytes = Request.TotalBytes
- '循环分块读取
- Do While ReadBytes < nTotalBytes
- '分块读取
- nPartBytes = 64 * 1024 '分成每块64k
- If nPartBytes + ReadBytes > nTotalBytes Then
- nPartBytes = nTotalBytes - ReadBytes
- End If
- oSourceData.Write Request.BinaryRead(nPartBytes)
- ReadBytes = ReadBytes + nPartBytes
- Loop
- '**********************************************
- oSourceData.Position = 0
-
- Dim oTotalData, oFormStream, sFormHeader, sFormName, bCrLf, nBoundLen, nFormStart, nFormEnd, nPosStart, nPosEnd, sBoundary
-
- oTotalData = oSourceData.Read
- bCrLf = ChrB(13) & ChrB(10)
- sBoundary = MidB(oTotalData, 1, InStrB(1, oTotalData, bCrLf) - 1)
- nBoundLen = LenB(sBoundary) + 2
- nFormStart = nBoundLen
-
- Set oFormStream = Server.CreateObject("ADODB.Stream")
-
- Do While (nFormStart + 2) < nTotalSize
- nFormEnd = InStrB(nFormStart, oTotalData, bCrLf & bCrLf) + 3
-
- With oFormStream
- .Type = 1
- .Mode = 3
- .Open
- oSourceData.Position = nFormStart
- oSourceData.CopyTo oFormStream, nFormEnd - nFormStart
- .Position = 0
- .Type = 2
- .CharSet = "UTF-8"
- sFormHeader = .ReadText
- .Close
- End With
-
- nFormStart = InStrB(nFormEnd, oTotalData, sBoundary) - 1
- nPosStart = InStr(22, sFormHeader, " name=", 1) + 7
- nPosEnd = InStr(nPosStart, sFormHeader, """")
- sFormName = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
-
- If InStr(45, sFormHeader, " filename=", 1) > 0 Then
- Set File(sFormName) = New NetRube_FileInfo
- File(sFormName).FormName = sFormName
- File(sFormName).Start = nFormEnd
- File(sFormName).Size = nFormStart - nFormEnd - 2
- nPosStart = InStr(nPosEnd, sFormHeader, " filename=", 1) + 11
- nPosEnd = InStr(nPosStart, sFormHeader, """")
- File(sFormName).ClientPath = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
- File(sFormName).Name = Mid(File(sFormName).ClientPath, InStrRev(File(sFormName).ClientPath, "\") + 1)
- File(sFormName).Ext = LCase(Mid(File(sFormName).Name, InStrRev(File(sFormName).Name, ".") + 1))
- nPosStart = InStr(nPosEnd, sFormHeader, "Content-Type: ", 1) + 14
- nPosEnd = InStr(nPosStart, sFormHeader, vbCr)
- File(sFormName).MIME = Mid(sFormHeader, nPosStart, nPosEnd - nPosStart)
- Else
- With oFormStream
- .Type = 1
- .Mode = 3
- .Open
- oSourceData.Position = nFormEnd
- oSourceData.CopyTo oFormStream, nFormStart - nFormEnd - 2
- .Position = 0
- .Type = 2
- .CharSet = "UTF-8"
- Form(sFormName) = .ReadText
- .Close
- End With
- End If
-
- nFormStart = nFormStart + nBoundLen
- Loop
-
- oTotalData = ""
- Set oFormStream = Nothing
- End Sub
-
- Public Sub SaveAs(sItem, sFileName)
- If File(sItem).Size < 1 Then
- nErr = 2
- Exit Sub
- End If
-
- If Not IsAllowed(File(sItem).Ext) Then
- nErr = 4
- Exit Sub
- End If
-
- If InStr( LCase( sFileName ), "::$data" ) > 0 Then
- nErr = 4
- Exit Sub
- End If
-
- Dim sFileExt, iFileSize
- sFileExt = File(sItem).Ext
- iFileSize = File(sItem).Size
-
- ' Check XSS.
- If Not IsHtmlExtension( sFileExt ) Then
- ' Calculate the size of data to load (max 1Kb).
- Dim iXSSSize
- iXSSSize = iFileSize
-
- If iXSSSize > 1024 Then
- iXSSSize = 1024
- End If
-
- ' Read the data.
- Dim sData
- oSourceData.Position = File(sItem).Start
- sData = oSourceData.Read( iXSSSize ) ' Byte Array
- sData = ByteArray2Text( sData ) ' String
-
- ' Sniff HTML data.
- If SniffHtml( sData ) Then
- nErr = 4
- Exit Sub
- End If
- End If
-
- Dim oFileStream
- Set oFileStream = Server.CreateObject("ADODB.Stream")
- With oFileStream
- .Type = 1
- .Mode = 3
- .Open
- oSourceData.Position = File(sItem).Start
- oSourceData.CopyTo oFileStream, File(sItem).Size
- .Position = 0
- .SaveToFile sFileName, 2
- .Close
- End With
- Set oFileStream = Nothing
- End Sub
-
- Private Function IsAllowed(sExt)
- Dim oRE
- Set oRE = New RegExp
- oRE.IgnoreCase = True
- oRE.Global = True
-
- If sDenied = "" Then
- oRE.Pattern = sAllowed
- IsAllowed = (sAllowed = "") Or oRE.Test(sExt)
- Else
- oRE.Pattern = sDenied
- IsAllowed = Not oRE.Test(sExt)
- End If
-
- Set oRE = Nothing
- End Function
-
- Private Function IsHtmlExtension( sExt )
- If sHtmlExtensions = "" Then
- Exit Function
- End If
-
- Dim oRE
- Set oRE = New RegExp
- oRE.IgnoreCase = True
- oRE.Global = True
- oRE.Pattern = sHtmlExtensions
-
- IsHtmlExtension = oRE.Test(sExt)
-
- Set oRE = Nothing
- End Function
-
- Private Function SniffHtml( sData )
-
- Dim oRE
- Set oRE = New RegExp
- oRE.IgnoreCase = True
- oRE.Global = True
-
- Dim aPatterns
- aPatterns = Array( "
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/commands.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/commands.asp
deleted file mode 100755
index a992bba..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/commands.asp
+++ /dev/null
@@ -1,198 +0,0 @@
-<%
- ' 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 ==
- '
- ' This file include the functions that handle the Command requests
- ' in the ASP Connector.
-%>
-<%
-Sub GetFolders( resourceType, currentFolder )
- ' Map the virtual path to the local server path.
- Dim sServerDir
- sServerDir = ServerMapFolder( resourceType, currentFolder, "GetFolders" )
-
- ' Open the "Folders" node.
- Response.Write ""
-
- Dim oFSO, oCurrentFolder, oFolders, oFolder
- Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
- if not (oFSO.FolderExists( sServerDir ) ) then
- Set oFSO = Nothing
- SendError 102, currentFolder
- end if
-
- Set oCurrentFolder = oFSO.GetFolder( sServerDir )
- Set oFolders = oCurrentFolder.SubFolders
-
- For Each oFolder in oFolders
- Response.Write " "
- Next
-
- Set oFSO = Nothing
-
- ' Close the "Folders" node.
- Response.Write " "
-End Sub
-
-Sub GetFoldersAndFiles( resourceType, currentFolder )
- ' Map the virtual path to the local server path.
- Dim sServerDir
- sServerDir = ServerMapFolder( resourceType, currentFolder, "GetFoldersAndFiles" )
-
- Dim oFSO, oCurrentFolder, oFolders, oFolder, oFiles, oFile
- Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
- if not (oFSO.FolderExists( sServerDir ) ) then
- Set oFSO = Nothing
- SendError 102, currentFolder
- end if
-
- Set oCurrentFolder = oFSO.GetFolder( sServerDir )
- Set oFolders = oCurrentFolder.SubFolders
- Set oFiles = oCurrentFolder.Files
-
- ' Open the "Folders" node.
- Response.Write ""
-
- For Each oFolder in oFolders
- Response.Write " "
- Next
-
- ' Close the "Folders" node.
- Response.Write " "
-
- ' Open the "Files" node.
- Response.Write ""
-
- For Each oFile in oFiles
- Dim iFileSize
- iFileSize = Round( oFile.size / 1024 )
- If ( iFileSize < 1 AND oFile.size <> 0 ) Then iFileSize = 1
-
- Response.Write " "
- Next
-
- ' Close the "Files" node.
- Response.Write " "
-End Sub
-
-Sub CreateFolder( resourceType, currentFolder )
- Dim sErrorNumber
-
- Dim sNewFolderName
- sNewFolderName = Request.QueryString( "NewFolderName" )
- sNewFolderName = SanitizeFolderName( sNewFolderName )
-
- If ( sNewFolderName = "" OR InStr( 1, sNewFolderName, ".." ) > 0 ) Then
- sErrorNumber = "102"
- Else
- ' Map the virtual path to the local server path of the current folder.
- Dim sServerDir
- sServerDir = ServerMapFolder( resourceType, CombineLocalPaths(currentFolder, sNewFolderName), "CreateFolder" )
-
- On Error Resume Next
-
- CreateServerFolder sServerDir
-
- Dim iErrNumber, sErrDescription
- iErrNumber = err.number
- sErrDescription = err.Description
-
- On Error Goto 0
-
- Select Case iErrNumber
- Case 0
- sErrorNumber = "0"
- Case 52
- sErrorNumber = "102" ' Invalid Folder Name.
- Case 70
- sErrorNumber = "103" ' Security Error.
- Case 76
- sErrorNumber = "102" ' Path too long.
- Case Else
- sErrorNumber = "110"
- End Select
- End If
-
- ' Create the "Error" node.
- Response.Write " "
-End Sub
-
-Sub FileUpload( resourceType, currentFolder, sCommand )
- Dim oUploader
- Set oUploader = New NetRube_Upload
- oUploader.MaxSize = 0
- oUploader.Allowed = ConfigAllowedExtensions.Item( resourceType )
- oUploader.Denied = ConfigDeniedExtensions.Item( resourceType )
- oUploader.HtmlExtensions = ConfigHtmlExtensions
- oUploader.GetData
-
- Dim sErrorNumber
- sErrorNumber = "0"
-
- Dim sFileName, sOriginalFileName, sExtension
- sFileName = ""
-
- If oUploader.ErrNum > 0 Then
- sErrorNumber = "202"
- Else
- ' Map the virtual path to the local server path.
- Dim sServerDir
- sServerDir = ServerMapFolder( resourceType, currentFolder, sCommand )
-
- Dim oFSO
- Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
- if not (oFSO.FolderExists( sServerDir ) ) then
- sErrorNumber = "102"
- else
- ' Get the uploaded file name.
- sFileName = oUploader.File( "NewFile" ).Name
- sExtension = oUploader.File( "NewFile" ).Ext
- sFileName = SanitizeFileName( sFileName )
- sOriginalFileName = sFileName
-
- Dim iCounter
- iCounter = 0
-
- Do While ( True )
- Dim sFilePath
- sFilePath = CombineLocalPaths(sServerDir, sFileName)
-
- If ( oFSO.FileExists( sFilePath ) ) Then
- iCounter = iCounter + 1
- sFileName = RemoveExtension( sOriginalFileName ) & "(" & iCounter & ")." & sExtension
- sErrorNumber = "201"
- Else
- oUploader.SaveAs "NewFile", sFilePath
- If oUploader.ErrNum > 0 Then sErrorNumber = "202"
- Exit Do
- End If
- Loop
- end if
- End If
-
- Set oUploader = Nothing
-
- dim sFileUrl
- sFileUrl = CombinePaths( GetResourceTypePath( resourceType, sCommand ) , currentFolder )
- sFileUrl = CombinePaths( sFileUrl, sFileName )
-
- SendUploadResults sErrorNumber, sFileUrl, sFileName, ""
-End Sub
-
-%>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/config.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/config.asp
deleted file mode 100755
index 0393310..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/config.asp
+++ /dev/null
@@ -1,128 +0,0 @@
-<%
- ' 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 ==
- '
- ' Configuration file for the File Manager Connector for ASP.
-%>
-<%
-
-' SECURITY: You must explicitly enable this "connector" (set it to "True").
-' WARNING: don't just set "ConfigIsEnabled = true", you must be sure that only
-' authenticated users can access this file or use some kind of session checking.
-Dim ConfigIsEnabled
-ConfigIsEnabled = False
-
-' Path to user files relative to the document root.
-' This setting is preserved only for backward compatibility.
-' You should look at the settings for each resource type to get the full potential
-Dim ConfigUserFilesPath
-ConfigUserFilesPath = "/userfiles/"
-
-' Due to security issues with Apache modules, it is recommended to leave the
-' following setting enabled.
-Dim ConfigForceSingleExtension
-ConfigForceSingleExtension = true
-
-' What the user can do with this connector
-Dim ConfigAllowedCommands
-ConfigAllowedCommands = "QuickUpload|FileUpload|GetFolders|GetFoldersAndFiles|CreateFolder"
-
-' Allowed Resource Types
-Dim ConfigAllowedTypes
-ConfigAllowedTypes = "File|Image|Flash|Media"
-
-' For security, HTML is allowed in the first Kb of data for files having the
-' following extensions only.
-Dim ConfigHtmlExtensions
-ConfigHtmlExtensions = "html|htm|xml|xsd|txt|js"
-'
-' Configuration settings for each Resource Type
-'
-' - AllowedExtensions: the possible extensions that can be allowed.
-' If it is empty then any file type can be uploaded.
-'
-' - DeniedExtensions: The extensions that won't be allowed.
-' If it is empty then no restrictions are done here.
-'
-' For a file to be uploaded it has to fulfill both the AllowedExtensions
-' and DeniedExtensions (that's it: not being denied) conditions.
-'
-' - FileTypesPath: the virtual folder relative to the document root where
-' these resources will be located.
-' Attention: It must start and end with a slash: '/'
-'
-' - FileTypesAbsolutePath: the physical path to the above folder. It must be
-' an absolute path.
-' If it's an empty string then it will be autocalculated.
-' Useful if you are using a virtual directory, symbolic link or alias.
-' Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
-' Attention: The above 'FileTypesPath' must point to the same directory.
-' Attention: It must end with a slash: '/'
-'
-' - QuickUploadPath: the virtual folder relative to the document root where
-' these resources will be uploaded using the Upload tab in the resources
-' dialogs.
-' Attention: It must start and end with a slash: '/'
-'
-' - QuickUploadAbsolutePath: the physical path to the above folder. It must be
-' an absolute path.
-' If it's an empty string then it will be autocalculated.
-' Useful if you are using a virtual directory, symbolic link or alias.
-' Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
-' Attention: The above 'QuickUploadPath' must point to the same directory.
-' Attention: It must end with a slash: '/'
-'
-
-Dim ConfigAllowedExtensions, ConfigDeniedExtensions, ConfigFileTypesPath, ConfigFileTypesAbsolutePath, ConfigQuickUploadPath, ConfigQuickUploadAbsolutePath
-Set ConfigAllowedExtensions = CreateObject( "Scripting.Dictionary" )
-Set ConfigDeniedExtensions = CreateObject( "Scripting.Dictionary" )
-Set ConfigFileTypesPath = CreateObject( "Scripting.Dictionary" )
-Set ConfigFileTypesAbsolutePath = CreateObject( "Scripting.Dictionary" )
-Set ConfigQuickUploadPath = CreateObject( "Scripting.Dictionary" )
-Set ConfigQuickUploadAbsolutePath = CreateObject( "Scripting.Dictionary" )
-
-ConfigAllowedExtensions.Add "File", "7z|aiff|asf|avi|bmp|csv|doc|fla|flv|gif|gz|gzip|jpeg|jpg|mid|mov|mp3|mp4|mpc|mpeg|mpg|ods|odt|pdf|png|ppt|pxd|qt|ram|rar|rm|rmi|rmvb|rtf|sdc|sitd|swf|sxc|sxw|tar|tgz|tif|tiff|txt|vsd|wav|wma|wmv|xls|xml|zip"
-ConfigDeniedExtensions.Add "File", ""
-ConfigFileTypesPath.Add "File", ConfigUserFilesPath & "file/"
-ConfigFileTypesAbsolutePath.Add "File", ""
-ConfigQuickUploadPath.Add "File", ConfigUserFilesPath
-ConfigQuickUploadAbsolutePath.Add "File", ""
-
-ConfigAllowedExtensions.Add "Image", "bmp|gif|jpeg|jpg|png"
-ConfigDeniedExtensions.Add "Image", ""
-ConfigFileTypesPath.Add "Image", ConfigUserFilesPath & "image/"
-ConfigFileTypesAbsolutePath.Add "Image", ""
-ConfigQuickUploadPath.Add "Image", ConfigUserFilesPath
-ConfigQuickUploadAbsolutePath.Add "Image", ""
-
-ConfigAllowedExtensions.Add "Flash", "swf|flv"
-ConfigDeniedExtensions.Add "Flash", ""
-ConfigFileTypesPath.Add "Flash", ConfigUserFilesPath & "flash/"
-ConfigFileTypesAbsolutePath.Add "Flash", ""
-ConfigQuickUploadPath.Add "Flash", ConfigUserFilesPath
-ConfigQuickUploadAbsolutePath.Add "Flash", ""
-
-ConfigAllowedExtensions.Add "Media", "aiff|asf|avi|bmp|fla|flv|gif|jpeg|jpg|mid|mov|mp3|mp4|mpc|mpeg|mpg|png|qt|ram|rm|rmi|rmvb|swf|tif|tiff|wav|wma|wmv"
-ConfigDeniedExtensions.Add "Media", ""
-ConfigFileTypesPath.Add "Media", ConfigUserFilesPath & "media/"
-ConfigFileTypesAbsolutePath.Add "Media", ""
-ConfigQuickUploadPath.Add "Media", ConfigUserFilesPath
-ConfigQuickUploadAbsolutePath.Add "Media", ""
-
-%>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/connector.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/connector.asp
deleted file mode 100755
index e056246..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/connector.asp
+++ /dev/null
@@ -1,88 +0,0 @@
-<%@ CodePage=65001 Language="VBScript"%>
-<%
-Option Explicit
-Response.Buffer = True
-%>
-<%
- ' 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 ==
- '
- ' This is the File Manager Connector for ASP.
-%>
-
-
-
-
-
-
-<%
-
-If ( ConfigIsEnabled = False ) Then
- SendError 1, "This connector is disabled. Please check the ""editor/filemanager/connectors/asp/config.asp"" file"
-End If
-
-DoResponse
-
-Sub DoResponse()
- Dim sCommand, sResourceType, sCurrentFolder
-
- ' Get the main request information.
- sCommand = Request.QueryString("Command")
-
- sResourceType = Request.QueryString("Type")
- If ( sResourceType = "" ) Then sResourceType = "File"
-
- sCurrentFolder = GetCurrentFolder()
-
- ' Check if it is an allowed command
- if ( Not IsAllowedCommand( sCommand ) ) then
- SendError 1, "The """ & sCommand & """ command isn't allowed"
- end if
-
- ' Check if it is an allowed resource type.
- if ( Not IsAllowedType( sResourceType ) ) Then
- SendError 1, "The """ & sResourceType & """ resource type isn't allowed"
- end if
-
- ' File Upload doesn't have to Return XML, so it must be intercepted before anything.
- If ( sCommand = "FileUpload" ) Then
- FileUpload sResourceType, sCurrentFolder, sCommand
- Exit Sub
- End If
-
- SetXmlHeaders
-
- CreateXmlHeader sCommand, sResourceType, sCurrentFolder, GetUrlFromPath( sResourceType, sCurrentFolder, sCommand)
-
- ' Execute the required command.
- Select Case sCommand
- Case "GetFolders"
- GetFolders sResourceType, sCurrentFolder
- Case "GetFoldersAndFiles"
- GetFoldersAndFiles sResourceType, sCurrentFolder
- Case "CreateFolder"
- CreateFolder sResourceType, sCurrentFolder
- End Select
-
- CreateXmlFooter
-
- Response.End
-End Sub
-
-%>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/io.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/io.asp
deleted file mode 100755
index e9c02d5..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/io.asp
+++ /dev/null
@@ -1,237 +0,0 @@
-<%
- ' 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 ==
- '
- ' This file include IO specific functions used by the ASP Connector.
-%>
-<%
-function CombinePaths( sBasePath, sFolder)
- sFolder = replace(sFolder, "\", "/")
- CombinePaths = RemoveFromEnd( sBasePath, "/" ) & "/" & RemoveFromStart( sFolder, "/" )
-end function
-
-function CombineLocalPaths( sBasePath, sFolder)
- sFolder = replace(sFolder, "/", "\")
- ' The RemoveFrom* functions use RegExp, so we must escape the \
- CombineLocalPaths = RemoveFromEnd( sBasePath, "\\" ) & "\" & RemoveFromStart( sFolder, "\\" )
-end function
-
-Function GetResourceTypePath( resourceType, sCommand )
- if ( sCommand = "QuickUpload") then
- GetResourceTypePath = ConfigQuickUploadPath.Item( resourceType )
- else
- GetResourceTypePath = ConfigFileTypesPath.Item( resourceType )
- end if
-end Function
-
-Function GetResourceTypeDirectory( resourceType, sCommand )
- if ( sCommand = "QuickUpload") then
-
- if ( ConfigQuickUploadAbsolutePath.Item( resourceType ) <> "" ) then
- GetResourceTypeDirectory = ConfigQuickUploadAbsolutePath.Item( resourceType )
- else
- ' Map the "UserFiles" path to a local directory.
- GetResourceTypeDirectory = Server.MapPath( ConfigQuickUploadPath.Item( resourceType ) )
- end if
- else
- if ( ConfigFileTypesAbsolutePath.Item( resourceType ) <> "" ) then
- GetResourceTypeDirectory = ConfigFileTypesAbsolutePath.Item( resourceType )
- else
- ' Map the "UserFiles" path to a local directory.
- GetResourceTypeDirectory = Server.MapPath( ConfigFileTypesPath.Item( resourceType ) )
- end if
- end if
-end Function
-
-Function GetUrlFromPath( resourceType, folderPath, sCommand )
- GetUrlFromPath = CombinePaths( GetResourceTypePath( resourceType, sCommand ), folderPath )
-End Function
-
-Function RemoveExtension( fileName )
- RemoveExtension = Left( fileName, InStrRev( fileName, "." ) - 1 )
-End Function
-
-Function ServerMapFolder( resourceType, folderPath, sCommand )
- Dim sResourceTypePath
- ' Get the resource type directory.
- sResourceTypePath = GetResourceTypeDirectory( resourceType, sCommand )
-
- ' Ensure that the directory exists.
- CreateServerFolder sResourceTypePath
-
- ' Return the resource type directory combined with the required path.
- ServerMapFolder = CombineLocalPaths( sResourceTypePath, folderPath )
-End Function
-
-Sub CreateServerFolder( folderPath )
- Dim oFSO
- Set oFSO = Server.CreateObject( "Scripting.FileSystemObject" )
-
- Dim sParent
- sParent = oFSO.GetParentFolderName( folderPath )
-
- ' If folderPath is a network path (\\server\folder\) then sParent is an empty string.
- ' Get out.
- if (sParent = "") then exit sub
-
- ' Check if the parent exists, or create it.
- If ( NOT oFSO.FolderExists( sParent ) ) Then CreateServerFolder( sParent )
-
- If ( oFSO.FolderExists( folderPath ) = False ) Then
- On Error resume next
- oFSO.CreateFolder( folderPath )
-
- if err.number<>0 then
- dim sErrorNumber
- Dim iErrNumber, sErrDescription
- iErrNumber = err.number
- sErrDescription = err.Description
-
- On Error Goto 0
-
- Select Case iErrNumber
- Case 52
- sErrorNumber = "102" ' Invalid Folder Name.
- Case 70
- sErrorNumber = "103" ' Security Error.
- Case 76
- sErrorNumber = "102" ' Path too long.
- Case Else
- sErrorNumber = "110"
- End Select
-
- SendError sErrorNumber, "CreateServerFolder(" & folderPath & ") : " & sErrDescription
- end if
-
- End If
-
- Set oFSO = Nothing
-End Sub
-
-Function IsAllowedExt( extension, resourceType )
- Dim oRE
- Set oRE = New RegExp
- oRE.IgnoreCase = True
- oRE.Global = True
-
- Dim sAllowed, sDenied
- sAllowed = ConfigAllowedExtensions.Item( resourceType )
- sDenied = ConfigDeniedExtensions.Item( resourceType )
-
- IsAllowedExt = True
-
- If sDenied <> "" Then
- oRE.Pattern = sDenied
- IsAllowedExt = Not oRE.Test( extension )
- End If
-
- If IsAllowedExt And sAllowed <> "" Then
- oRE.Pattern = sAllowed
- IsAllowedExt = oRE.Test( extension )
- End If
-
- Set oRE = Nothing
-End Function
-
-Function IsAllowedType( resourceType )
- Dim oRE
- Set oRE = New RegExp
- oRE.IgnoreCase = False
- oRE.Global = True
- oRE.Pattern = "^(" & ConfigAllowedTypes & ")$"
-
- IsAllowedType = oRE.Test( resourceType )
-
- Set oRE = Nothing
-End Function
-
-Function IsAllowedCommand( sCommand )
- Dim oRE
- Set oRE = New RegExp
- oRE.IgnoreCase = True
- oRE.Global = True
- oRE.Pattern = "^(" & ConfigAllowedCommands & ")$"
-
- IsAllowedCommand = oRE.Test( sCommand )
-
- Set oRE = Nothing
-End Function
-
-function GetCurrentFolder()
- dim sCurrentFolder
- sCurrentFolder = Request.QueryString("CurrentFolder")
- If ( sCurrentFolder = "" ) Then sCurrentFolder = "/"
-
- ' Check the current folder syntax (must begin and start with a slash).
- If ( Right( sCurrentFolder, 1 ) <> "/" ) Then sCurrentFolder = sCurrentFolder & "/"
- If ( Left( sCurrentFolder, 1 ) <> "/" ) Then sCurrentFolder = "/" & sCurrentFolder
-
- ' Check for invalid folder paths (..)
- If ( InStr( 1, sCurrentFolder, ".." ) <> 0 OR InStr( 1, sCurrentFolder, "\" ) <> 0) Then
- SendError 102, ""
- End If
-
- GetCurrentFolder = sCurrentFolder
-end function
-
-' Do a cleanup of the folder name to avoid possible problems
-function SanitizeFolderName( sNewFolderName )
- Dim oRegex
- Set oRegex = New RegExp
- oRegex.Global = True
-
-' remove . \ / | : ? * " < > and control characters
- oRegex.Pattern = "(\.|\\|\/|\||:|\?|\*|""|\<|\>|[\u0000-\u001F]|\u007F)"
- SanitizeFolderName = oRegex.Replace( sNewFolderName, "_" )
-
- Set oRegex = Nothing
-end function
-
-' Do a cleanup of the file name to avoid possible problems
-function SanitizeFileName( sNewFileName )
- Dim oRegex
- Set oRegex = New RegExp
- oRegex.Global = True
-
- if ( ConfigForceSingleExtension = True ) then
- oRegex.Pattern = "\.(?![^.]*$)"
- sNewFileName = oRegex.Replace( sNewFileName, "_" )
- end if
-
-' remove \ / | : ? * " < > and control characters
- oRegex.Pattern = "(\\|\/|\||:|\?|\*|""|\<|\>|[\u0000-\u001F]|\u007F)"
- SanitizeFileName = oRegex.Replace( sNewFileName, "_" )
-
- Set oRegex = Nothing
-end function
-
-' This is the function that sends the results of the uploading process.
-Sub SendUploadResults( errorNumber, fileUrl, fileName, customMsg )
- Response.Clear
- Response.Write ""
- Response.End
-End Sub
-
-%>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/upload.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/upload.asp
deleted file mode 100755
index a6d49d4..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/upload.asp
+++ /dev/null
@@ -1,65 +0,0 @@
-<%@ CodePage=65001 Language="VBScript"%>
-<%
-Option Explicit
-Response.Buffer = True
-%>
-<%
- ' 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 ==
- '
- ' This is the "File Uploader" for ASP.
-%>
-
-
-
-
-
-<%
-
-Sub SendError( number, text )
- SendUploadResults number, "", "", text
-End Sub
-
-' Check if this uploader has been enabled.
-If ( ConfigIsEnabled = False ) Then
- SendUploadResults "1", "", "", "This file uploader is disabled. Please check the ""editor/filemanager/connectors/asp/config.asp"" file"
-End If
-
- Dim sCommand, sResourceType, sCurrentFolder
-
- sCommand = "QuickUpload"
-
- sResourceType = Request.QueryString("Type")
- If ( sResourceType = "" ) Then sResourceType = "File"
-
- sCurrentFolder = GetCurrentFolder()
-
- ' Is Upload enabled?
- if ( Not IsAllowedCommand( sCommand ) ) then
- SendUploadResults "1", "", "", "The """ & sCommand & """ command isn't allowed"
- end if
-
- ' Check if it is an allowed resource type.
- if ( Not IsAllowedType( sResourceType ) ) Then
- SendUploadResults "1", "", "", "The " & sResourceType & " resource type isn't allowed"
- end if
-
- FileUpload sResourceType, sCurrentFolder, sCommand
-
-%>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/util.asp b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/util.asp
deleted file mode 100755
index f704edb..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/asp/util.asp
+++ /dev/null
@@ -1,55 +0,0 @@
-<%
- ' 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 ==
- '
- ' This file include generic functions used by the ASP Connector.
-%>
-<%
-Function RemoveFromStart( sourceString, charToRemove )
- Dim oRegex
- Set oRegex = New RegExp
- oRegex.Pattern = "^" & charToRemove & "+"
-
- RemoveFromStart = oRegex.Replace( sourceString, "" )
-End Function
-
-Function RemoveFromEnd( sourceString, charToRemove )
- Dim oRegex
- Set oRegex = New RegExp
- oRegex.Pattern = charToRemove & "+$"
-
- RemoveFromEnd = oRegex.Replace( sourceString, "" )
-End Function
-
-Function ConvertToXmlAttribute( value )
- ConvertToXmlAttribute = Replace( value, "&", "&" )
-End Function
-
-Function InArray( value, sourceArray )
- Dim i
- For i = 0 to UBound( sourceArray )
- If sourceArray(i) = value Then
- InArray = True
- Exit Function
- End If
- Next
- InArray = False
-End Function
-
-%>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/config.ascx b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/config.ascx
deleted file mode 100755
index 387a657..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/config.ascx
+++ /dev/null
@@ -1,98 +0,0 @@
-<%@ Control Language="C#" EnableViewState="false" AutoEventWireup="false" Inherits="FredCK.FCKeditorV2.FileBrowser.Config" %>
-<%--
- * 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 ==
- *
- * Configuration file for the File Browser Connector for ASP.NET.
---%>
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/connector.aspx b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/connector.aspx
deleted file mode 100755
index e18d620..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/connector.aspx
+++ /dev/null
@@ -1,32 +0,0 @@
-<%@ Page Language="c#" Trace="false" Inherits="FredCK.FCKeditorV2.FileBrowser.Connector" AutoEventWireup="false" %>
-<%@ Register Src="config.ascx" TagName="Config" TagPrefix="FCKeditor" %>
-<%--
- * 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 ==
- *
- * This is the File Browser Connector for ASP.NET.
- *
- * The code of this page if included in the FCKeditor.Net package,
- * in the FredCK.FCKeditorV2.dll assembly file. So to use it you must
- * include that DLL in your "bin" directory.
- *
- * To download the FCKeditor.Net package, go to our official web site:
- * http://www.fckeditor.net
---%>
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/upload.aspx b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/upload.aspx
deleted file mode 100755
index 7768101..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/aspx/upload.aspx
+++ /dev/null
@@ -1,32 +0,0 @@
-<%@ Page Language="c#" Trace="false" Inherits="FredCK.FCKeditorV2.FileBrowser.Uploader" AutoEventWireup="false" %>
-<%@ Register Src="config.ascx" TagName="Config" TagPrefix="FCKeditor" %>
-<%--
- * 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 ==
- *
- * This is the Uploader for ASP.NET.
- *
- * The code of this page if included in the FCKeditor.Net package,
- * in the FredCK.FCKeditorV2.dll assemblyfile. So to use it you must
- * include that DLL in your "bin" directory.
- *
- * To download the FCKeditor.Net package, go to our official web site:
- * http://www.fckeditor.net
---%>
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/ImageObject.cfc b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/ImageObject.cfc
deleted file mode 100755
index b9b919c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/ImageObject.cfc
+++ /dev/null
@@ -1,273 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf5_connector.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf5_connector.cfm
deleted file mode 100755
index b258eed..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf5_connector.cfm
+++ /dev/null
@@ -1,315 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- userFilesPath = config.userFilesPath;
-
- if ( userFilesPath eq "" )
- {
- userFilesPath = "/userfiles/";
- }
-
- // make sure the user files path is correctly formatted
- userFilesPath = replace(userFilesPath, "\", "/", "ALL");
- userFilesPath = replace(userFilesPath, '//', '/', 'ALL');
- if ( right(userFilesPath,1) NEQ "/" )
- {
- userFilesPath = userFilesPath & "/";
- }
- if ( left(userFilesPath,1) NEQ "/" )
- {
- userFilesPath = "/" & userFilesPath;
- }
-
- // make sure the current folder is correctly formatted
- url.currentFolder = replace(url.currentFolder, "\", "/", "ALL");
- url.currentFolder = replace(url.currentFolder, '//', '/', 'ALL');
- if ( right(url.currentFolder,1) neq "/" )
- {
- url.currentFolder = url.currentFolder & "/";
- }
- if ( left(url.currentFolder,1) neq "/" )
- {
- url.currentFolder = "/" & url.currentFolder;
- }
-
- if ( find("/",getBaseTemplatePath()) neq 0 )
- {
- fs = "/";
- }
- else
- {
- fs = "\";
- }
-
- // Get the base physical path to the web root for this application. The code to determine the path automatically assumes that
- // the "FCKeditor" directory in the http request path is directly off the web root for the application and that it's not a
- // virtual directory or a symbolic link / junction. Use the serverPath config setting to force a physical path if necessary.
- if ( len(config.serverPath) )
- {
- serverPath = config.serverPath;
-
- if ( right(serverPath,1) neq fs )
- {
- serverPath = serverPath & fs;
- }
- }
- else
- {
- serverPath = replaceNoCase(getBaseTemplatePath(),replace(cgi.script_name,"/",fs,"all"),"") & replace(userFilesPath,"/",fs,"all");
- }
-
- rootPath = left( serverPath, Len(serverPath) - Len(userFilesPath) ) ;
- xmlContent = ""; // append to this string to build content
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ">
-
-
-
- ">
-
-
-
- '>
-
-
-
- '>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- i=1;
- folders = "";
- while( i lte qDir.recordCount ) {
- if( not compareNoCase( qDir.type[i], "FILE" ))
- break;
- if( not listFind(".,..", qDir.name[i]) )
- folders = folders & ' ';
- i=i+1;
- }
-
- xmlContent = xmlContent & '' & folders & ' ';
-
-
-
-
-
-
-
-
-
-
-
- i=1;
- folders = "";
- files = "";
- while( i lte qDir.recordCount ) {
- if( not compareNoCase( qDir.type[i], "DIR" ) and not listFind(".,..", qDir.name[i]) ) {
- folders = folders & ' ';
- } else if( not compareNoCase( qDir.type[i], "FILE" ) ) {
- fileSizeKB = round(qDir.size[i] / 1024);
- files = files & ' ';
- }
- i=i+1;
- }
-
- xmlContent = xmlContent & '' & folders & ' ';
- xmlContent = xmlContent & '' & files & ' ';
-
-
-
-
-
-
-
-
-
-
- newFolderName = url.newFolderName;
- if( reFind("[^A-Za-z0-9_\-\.]", newFolderName) ) {
- // Munge folder name same way as we do the filename
- // This means folder names are always US-ASCII so we don't have to worry about CF5 and UTF-8
- newFolderName = reReplace(newFolderName, "[^A-Za-z0-9\-\.]", "_", "all");
- newFolderName = reReplace(newFolderName, "_{2,}", "_", "all");
- newFolderName = reReplace(newFolderName, "([^_]+)_+$", "\1", "all");
- newFolderName = reReplace(newFolderName, "$_([^_]+)$", "\1", "all");
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- '>
-
-
-
-
-
-
-
-
-
-
-
- xmlHeader = '';
- xmlHeader = xmlHeader & ' ';
- xmlFooter = ' ';
-
-
-
-
-
-
-#xmlHeader##xmlContent##xmlFooter#
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf5_upload.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf5_upload.cfm
deleted file mode 100755
index 83eb82c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf5_upload.cfm
+++ /dev/null
@@ -1,299 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- function SendUploadResults(errorNumber, fileUrl, fileName, customMsg)
- {
- WriteOutput('');
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- userFilesPath = config.userFilesPath;
-
- if ( userFilesPath eq "" ) {
- userFilesPath = "/userfiles/";
- }
-
- // make sure the user files path is correctly formatted
- userFilesPath = replace(userFilesPath, "\", "/", "ALL");
- userFilesPath = replace(userFilesPath, '//', '/', 'ALL');
- if ( right(userFilesPath,1) NEQ "/" ) {
- userFilesPath = userFilesPath & "/";
- }
- if ( left(userFilesPath,1) NEQ "/" ) {
- userFilesPath = "/" & userFilesPath;
- }
-
- // make sure the current folder is correctly formatted
- url.currentFolder = replace(url.currentFolder, "\", "/", "ALL");
- url.currentFolder = replace(url.currentFolder, '//', '/', 'ALL');
- if ( right(url.currentFolder,1) neq "/" ) {
- url.currentFolder = url.currentFolder & "/";
- }
- if ( left(url.currentFolder,1) neq "/" ) {
- url.currentFolder = "/" & url.currentFolder;
- }
-
- if (find("/",getBaseTemplatePath())) {
- fs = "/";
- } else {
- fs = "\";
- }
-
- // Get the base physical path to the web root for this application. The code to determine the path automatically assumes that
- // the "FCKeditor" directory in the http request path is directly off the web root for the application and that it's not a
- // virtual directory or a symbolic link / junction. Use the serverPath config setting to force a physical path if necessary.
- if ( len(config.serverPath) ) {
- serverPath = config.serverPath;
-
- if ( right(serverPath,1) neq fs ) {
- serverPath = serverPath & fs;
- }
- } else {
- serverPath = replaceNoCase(getBaseTemplatePath(),replace(cgi.script_name,"/",fs,"all"),"") & replace(userFilesPath,"/",fs,"all");
- }
-
- rootPath = left( serverPath, Len(serverPath) - Len(userFilesPath) ) ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- errorNumber = 0;
- fileName = cffile.ClientFileName ;
- fileExt = cffile.ServerFileExt ;
- fileExisted = false ;
-
- // munge filename for html download. Only a-z, 0-9, _, - and . are allowed
- if( reFind("[^A-Za-z0-9_\-\.]", fileName) ) {
- fileName = reReplace(fileName, "[^A-Za-z0-9\-\.]", "_", "ALL");
- fileName = reReplace(fileName, "_{2,}", "_", "ALL");
- fileName = reReplace(fileName, "([^_]+)_+$", "\1", "ALL");
- fileName = reReplace(fileName, "$_([^_]+)$", "\1", "ALL");
- }
-
- // remove additional dots from file name
- if( isDefined("Config.ForceSingleExtension") and Config.ForceSingleExtension )
- fileName = replace( fileName, '.', "_", "all" ) ;
-
- // When the original filename already exists, add numbers (0), (1), (2), ... at the end of the filename.
- if( compare( cffile.ServerFileName, fileName ) ) {
- counter = 0;
- tmpFileName = fileName;
- while( fileExists("#currentFolderPath##fileName#.#fileExt#") ) {
- fileExisted = true ;
- counter = counter + 1 ;
- fileName = tmpFileName & '(#counter#)' ;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_basexml.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_basexml.cfm
deleted file mode 100755
index c963d80..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_basexml.cfm
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_commands.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_commands.cfm
deleted file mode 100755
index b82a3ec..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_commands.cfm
+++ /dev/null
@@ -1,230 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- sFileExt = GetExtension( sFileName ) ;
- sFilePart = RemoveExtension( sFileName );
- while( fileExists( sServerDir & sFileName ) )
- {
- counter = counter + 1;
- sFileName = sFilePart & '(#counter#).' & CFFILE.ClientFileExt;
- errorNumber = 201;
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- while( i lte qDir.recordCount )
- {
- if( compareNoCase( qDir.type[i], "FILE" ) and not listFind( ".,..", qDir.name[i] ) )
- {
- folders = folders & ' ' ;
- }
- i = i + 1;
- }
-
- #folders#
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- while( i lte qDir.recordCount )
- {
- if( not compareNoCase( qDir.type[i], "DIR" ) and not listFind( ".,..", qDir.name[i] ) )
- {
- folders = folders & ' ' ;
- }
- else if( not compareNoCase( qDir.type[i], "FILE" ) )
- {
- fileSizeKB = round(qDir.size[i] / 1024) ;
- files = files & ' ' ;
- }
- i = i + 1 ;
- }
-
- #folders#
- #files#
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- sNewFolderName = SanitizeFolderName( sNewFolderName ) ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_connector.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_connector.cfm
deleted file mode 100755
index 9c1d23d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_connector.cfm
+++ /dev/null
@@ -1,89 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_io.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_io.cfm
deleted file mode 100755
index 4d5361c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_io.cfm
+++ /dev/null
@@ -1,291 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- +|[[:cntrl:]]+', "_", "all" )>
-
-
-
-
-
-
-
-
-
- var chunk = "";
- var fileReaderClass = "";
- var fileReader = "";
- var file = "";
- var done = false;
- var counter = 0;
- var byteArray = "";
-
- if( not fileExists( ARGUMENTS.fileName ) )
- {
- return "" ;
- }
-
- if (REQUEST.CFVersion gte 8)
- {
- file = FileOpen( ARGUMENTS.fileName, "readbinary" ) ;
- byteArray = FileRead( file, 1024 ) ;
- chunk = toString( toBinary( toBase64( byteArray ) ) ) ;
- FileClose( file ) ;
- }
- else
- {
- fileReaderClass = createObject("java", "java.io.FileInputStream");
- fileReader = fileReaderClass.init(fileName);
-
- while(not done)
- {
- char = fileReader.read();
- counter = counter + 1;
- if ( char eq -1 or counter eq ARGUMENTS.bytes)
- {
- done = true;
- }
- else
- {
- chunk = chunk & chr(char) ;
- }
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- +|[[:cntrl:]]+', "_", "all" )>
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_upload.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_upload.cfm
deleted file mode 100755
index 3a2e2fb..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_upload.cfm
+++ /dev/null
@@ -1,72 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_util.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_util.cfm
deleted file mode 100755
index 80f4bb7..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/cf_util.cfm
+++ /dev/null
@@ -1,131 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- >
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/config.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/config.cfm
deleted file mode 100755
index e1f7d4a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/config.cfm
+++ /dev/null
@@ -1,189 +0,0 @@
-
-
-
-
- Config = StructNew() ;
-
- // SECURITY: You must explicitly enable this "connector". (Set enabled to "true")
- Config.Enabled = false ;
-
-
- // Path to uploaded files relative to the document root.
- Config.UserFilesPath = "/userfiles/" ;
-
- // Use this to force the server path if FCKeditor is not running directly off
- // the root of the application or the FCKeditor directory in the URL is a virtual directory
- // or a symbolic link / junction
- // Example: C:\inetpub\wwwroot\myDocs\
- Config.ServerPath = "" ;
-
- // Due to security issues with Apache modules, it is recommended to leave the
- // following setting enabled.
- Config.ForceSingleExtension = true ;
-
- // Perform additional checks for image files - if set to true, validate image size
- // (This feature works in MX 6.0 and above)
- Config.SecureImageUploads = true;
-
- // What the user can do with this connector
- Config.ConfigAllowedCommands = "QuickUpload,FileUpload,GetFolders,GetFoldersAndFiles,CreateFolder" ;
-
- //Allowed Resource Types
- Config.ConfigAllowedTypes = "File,Image,Flash,Media" ;
-
- // For security, HTML is allowed in the first Kb of data for files having the
- // following extensions only.
- // (This feature works in MX 6.0 and above))
- Config.HtmlExtensions = "html,htm,xml,xsd,txt,js" ;
-
- //Due to known issues with GetTempDirectory function, it is
- //recommended to set this vairiable to a valid directory
- //instead of using the GetTempDirectory function
- //(used by MX 6.0 and above)
- Config.TempDirectory = GetTempDirectory();
-
-// Configuration settings for each Resource Type
-//
-// - AllowedExtensions: the possible extensions that can be allowed.
-// If it is empty then any file type can be uploaded.
-// - DeniedExtensions: The extensions that won't be allowed.
-// If it is empty then no restrictions are done here.
-//
-// For a file to be uploaded it has to fulfill both the AllowedExtensions
-// and DeniedExtensions (that's it: not being denied) conditions.
-//
-// - FileTypesPath: the virtual folder relative to the document root where
-// these resources will be located.
-// Attention: It must start and end with a slash: '/'
-//
-// - FileTypesAbsolutePath: the physical path to the above folder. It must be
-// an absolute path.
-// If it's an empty string then it will be autocalculated.
-// Usefull if you are using a virtual directory, symbolic link or alias.
-// Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
-// Attention: The above 'FileTypesPath' must point to the same directory.
-// Attention: It must end with a slash: '/'
-//
-//
-// - QuickUploadPath: the virtual folder relative to the document root where
-// these resources will be uploaded using the Upload tab in the resources
-// dialogs.
-// Attention: It must start and end with a slash: '/'
-//
-// - QuickUploadAbsolutePath: the physical path to the above folder. It must be
-// an absolute path.
-// If it's an empty string then it will be autocalculated.
-// Usefull if you are using a virtual directory, symbolic link or alias.
-// Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
-// Attention: The above 'QuickUploadPath' must point to the same directory.
-// Attention: It must end with a slash: '/'
-
- Config.AllowedExtensions = StructNew() ;
- Config.DeniedExtensions = StructNew() ;
- Config.FileTypesPath = StructNew() ;
- Config.FileTypesAbsolutePath = StructNew() ;
- Config.QuickUploadPath = StructNew() ;
- Config.QuickUploadAbsolutePath = StructNew() ;
-
- Config.AllowedExtensions["File"] = "7z,aiff,asf,avi,bmp,csv,doc,fla,flv,gif,gz,gzip,jpeg,jpg,mid,mov,mp3,mp4,mpc,mpeg,mpg,ods,odt,pdf,png,ppt,pxd,qt,ram,rar,rm,rmi,rmvb,rtf,sdc,sitd,swf,sxc,sxw,tar,tgz,tif,tiff,txt,vsd,wav,wma,wmv,xls,xml,zip" ;
- Config.DeniedExtensions["File"] = "" ;
- Config.FileTypesPath["File"] = Config.UserFilesPath & 'file/' ;
- Config.FileTypesAbsolutePath["File"] = iif( Config.ServerPath eq "", de(""), de(Config.ServerPath & 'file/') ) ;
- Config.QuickUploadPath["File"] = Config.FileTypesPath["File"] ;
- Config.QuickUploadAbsolutePath["File"] = Config.FileTypesAbsolutePath["File"] ;
-
- Config.AllowedExtensions["Image"] = "bmp,gif,jpeg,jpg,png" ;
- Config.DeniedExtensions["Image"] = "" ;
- Config.FileTypesPath["Image"] = Config.UserFilesPath & 'image/' ;
- Config.FileTypesAbsolutePath["Image"] = iif( Config.ServerPath eq "", de(""), de(Config.ServerPath & 'image/') ) ;
- Config.QuickUploadPath["Image"] = Config.FileTypesPath["Image"] ;
- Config.QuickUploadAbsolutePath["Image"] = Config.FileTypesAbsolutePath["Image"] ;
-
- Config.AllowedExtensions["Flash"] = "swf,flv" ;
- Config.DeniedExtensions["Flash"] = "" ;
- Config.FileTypesPath["Flash"] = Config.UserFilesPath & 'flash/' ;
- Config.FileTypesAbsolutePath["Flash"] = iif( Config.ServerPath eq "", de(""), de(Config.ServerPath & 'flash/') ) ;
- Config.QuickUploadPath["Flash"] = Config.FileTypesPath["Flash"] ;
- Config.QuickUploadAbsolutePath["Flash"] = Config.FileTypesAbsolutePath["Flash"] ;
-
- Config.AllowedExtensions["Media"] = "aiff,asf,avi,bmp,fla,flv,gif,jpeg,jpg,mid,mov,mp3,mp4,mpc,mpeg,mpg,png,qt,ram,rm,rmi,rmvb,swf,tif,tiff,wav,wma,wmv" ;
- Config.DeniedExtensions["Media"] = "" ;
- Config.FileTypesPath["Media"] = Config.UserFilesPath & 'media/' ;
- Config.FileTypesAbsolutePath["Media"] = iif( Config.ServerPath eq "", de(""), de(Config.ServerPath & 'media/') ) ;
- Config.QuickUploadPath["Media"] = Config.FileTypesPath["Media"] ;
- Config.QuickUploadAbsolutePath["Media"] = Config.FileTypesAbsolutePath["Media"] ;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- function structCopyKeys(stFrom, stTo) {
- for ( key in stFrom ) {
- if ( isStruct(stFrom[key]) ) {
- structCopyKeys(stFrom[key],stTo[key]);
- } else {
- stTo[key] = stFrom[key];
- }
- }
- }
- structCopyKeys(FCKeditor, config);
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/connector.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/connector.cfm
deleted file mode 100755
index b6767e4..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/connector.cfm
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/image.cfc b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/image.cfc
deleted file mode 100755
index 378c4b4..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/image.cfc
+++ /dev/null
@@ -1,1324 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- paths = arrayNew(1);
- paths[1] = expandPath("metadata-extractor-2.3.1.jar");
- loader = createObject("component", "javaloader.JavaLoader").init(paths);
-
- //at this stage we only have access to the class, but we don't have an instance
- JpegMetadataReader = loader.create("com.drew.imaging.jpeg.JpegMetadataReader");
-
- myMetaData = JpegMetadataReader.readMetadata(inFile);
- directories = myMetaData.getDirectoryIterator();
- while (directories.hasNext()) {
- currentDirectory = directories.next();
- tags = currentDirectory.getTagIterator();
- while (tags.hasNext()) {
- currentTag = tags.next();
- if (currentTag.getTagName() DOES NOT CONTAIN "Unknown") { //leave out the junk data
- queryAddRow(retQry);
- querySetCell(retQry,"dirName",replace(currentTag.getDirectoryName(),' ','_','ALL'));
- tagName = replace(currentTag.getTagName(),' ','','ALL');
- tagName = replace(tagName,'/','','ALL');
- querySetCell(retQry,"tagName",tagName);
- querySetCell(retQry,"tagValue",currentTag.getDescription());
- }
- }
- }
- return retQry;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- resizedImage = CreateObject("java", "java.awt.image.BufferedImage");
- at = CreateObject("java", "java.awt.geom.AffineTransform");
- op = CreateObject("java", "java.awt.image.AffineTransformOp");
-
- w = img.getWidth();
- h = img.getHeight();
-
- if (preserveAspect and cropToExact and newHeight gt 0 and newWidth gt 0)
- {
- if (w / h gt newWidth / newHeight){
- newWidth = 0;
- } else if (w / h lt newWidth / newHeight){
- newHeight = 0;
- }
- } else if (preserveAspect and newHeight gt 0 and newWidth gt 0) {
- if (w / h gt newWidth / newHeight){
- newHeight = 0;
- } else if (w / h lt newWidth / newHeight){
- newWidth = 0;
- }
- }
- if (newWidth gt 0 and newHeight eq 0) {
- scale = newWidth / w;
- w = newWidth;
- h = round(h*scale);
- } else if (newHeight gt 0 and newWidth eq 0) {
- scale = newHeight / h;
- h = newHeight;
- w = round(w*scale);
- } else if (newHeight gt 0 and newWidth gt 0) {
- w = newWidth;
- h = newHeight;
- } else {
- retVal = throw( retVal.errorMessage);
- return retVal;
- }
- resizedImage.init(javacast("int",w),javacast("int",h),img.getType());
-
- w = w / img.getWidth();
- h = h / img.getHeight();
-
-
-
- op.init(at.getScaleInstance(javacast("double",w),javacast("double",h)), rh);
- // resizedImage = op.createCompatibleDestImage(img, img.getColorModel());
- op.filter(img, resizedImage);
-
- imgInfo = getimageinfo(resizedImage, "");
- if (imgInfo.errorCode gt 0)
- {
- return imgInfo;
- }
-
- cropOffsetX = max( Int( (imgInfo.width/2) - (newWidth/2) ), 0 );
- cropOffsetY = max( Int( (imgInfo.height/2) - (newHeight/2) ), 0 );
- // There is a chance that the image is exactly the correct
- // width and height and don't need to be cropped
- if
- (
- preserveAspect and cropToExact
- and
- (imgInfo.width IS NOT specifiedWidth OR imgInfo.height IS NOT specifiedHeight)
- )
- {
- // Get the correct offset to get the center of the image
- cropOffsetX = max( Int( (imgInfo.width/2) - (specifiedWidth/2) ), 0 );
- cropOffsetY = max( Int( (imgInfo.height/2) - (specifiedHeight/2) ), 0 );
-
- cropImageResult = crop( resizedImage, "", "", cropOffsetX, cropOffsetY, specifiedWidth, specifiedHeight );
- if ( cropImageResult.errorCode GT 0)
- {
- return cropImageResult;
- } else {
- resizedImage = cropImageResult.img;
- }
- }
- if (outputFile eq "")
- {
- retVal.img = resizedImage;
- return retVal;
- } else {
- saveImage = writeImage(outputFile, resizedImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- if (fromX + newWidth gt img.getWidth()
- OR
- fromY + newHeight gt img.getHeight()
- )
- {
- retval = throw( "The cropped image dimensions go beyond the original image dimensions.");
- return retVal;
- }
- croppedImage = img.getSubimage(javaCast("int", fromX), javaCast("int", fromY), javaCast("int", newWidth), javaCast("int", newHeight) );
- if (outputFile eq "")
- {
- retVal.img = croppedImage;
- return retVal;
- } else {
- saveImage = writeImage(outputFile, croppedImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- rotatedImage = CreateObject("java", "java.awt.image.BufferedImage");
- at = CreateObject("java", "java.awt.geom.AffineTransform");
- op = CreateObject("java", "java.awt.image.AffineTransformOp");
-
- iw = img.getWidth(); h = iw;
- ih = img.getHeight(); w = ih;
-
- if(arguments.degrees eq 180) { w = iw; h = ih; }
-
- x = (w/2)-(iw/2);
- y = (h/2)-(ih/2);
-
- rotatedImage.init(javacast("int",w),javacast("int",h),img.getType());
-
- at.rotate(arguments.degrees * 0.0174532925,w/2,h/2);
- at.translate(x,y);
- op.init(at, rh);
-
- op.filter(img, rotatedImage);
-
- if (outputFile eq "")
- {
- retVal.img = rotatedImage;
- return retVal;
- } else {
- saveImage = writeImage(outputFile, rotatedImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- if (outputFile eq "")
- {
- retVal = throw( "The convert method requires a valid output filename.");
- return retVal;
- } else {
- saveImage = writeImage(outputFile, img, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- /*
- JPEG output method handles compression
- */
- out = createObject("java", "java.io.BufferedOutputStream");
- fos = createObject("java", "java.io.FileOutputStream");
- fos.init(tempOutputFile);
- out.init(fos);
- JPEGCodec = createObject("java", "com.sun.image.codec.jpeg.JPEGCodec");
- encoder = JPEGCodec.createJPEGEncoder(out);
- param = encoder.getDefaultJPEGEncodeParam(img);
- param.setQuality(quality, false);
- encoder.setJPEGEncodeParam(param);
- encoder.encode(img);
- out.close();
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- flippedImage = CreateObject("java", "java.awt.image.BufferedImage");
- at = CreateObject("java", "java.awt.geom.AffineTransform");
- op = CreateObject("java", "java.awt.image.AffineTransformOp");
-
- flippedImage.init(img.getWidth(), img.getHeight(), img.getType());
-
- if (direction eq "horizontal") {
- at = at.getScaleInstance(-1, 1);
- at.translate(-img.getWidth(), 0);
- } else {
- at = at.getScaleInstance(1,-1);
- at.translate(0, -img.getHeight());
- }
- op.init(at, rh);
- op.filter(img, flippedImage);
-
- if (outputFile eq "")
- {
- retVal.img = flippedImage;
- return retVal;
- } else {
- saveImage = writeImage(outputFile, flippedImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // initialize the blur filter
- variables.blurFilter.init(arguments.blurAmount);
- // move the source image into the destination image
- // so we can repeatedly blur it.
- destImage = srcImage;
-
- for (i=1; i lte iterations; i=i+1)
- {
- // do the blur i times
- destImage = variables.blurFilter.filter(destImage);
- }
-
-
- if (outputFile eq "")
- {
- // return the image object
- retVal.img = destImage;
- return retVal;
- } else {
- // write the image object to the specified file.
- saveImage = writeImage(outputFile, destImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // initialize the sharpen filter
- variables.sharpenFilter.init();
-
- destImage = variables.sharpenFilter.filter(srcImage);
-
-
- if (outputFile eq "")
- {
- // return the image object
- retVal.img = destImage;
- return retVal;
- } else {
- // write the image object to the specified file.
- saveImage = writeImage(outputFile, destImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // initialize the posterize filter
- variables.posterizeFilter.init(arguments.amount);
-
- destImage = variables.posterizeFilter.filter(srcImage);
-
-
- if (outputFile eq "")
- {
- // return the image object
- retVal.img = destImage;
- return retVal;
- } else {
- // write the image object to the specified file.
- saveImage = writeImage(outputFile, destImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // load objects
- bgImage = CreateObject("java", "java.awt.image.BufferedImage");
- fontImage = CreateObject("java", "java.awt.image.BufferedImage");
- overlayImage = CreateObject("java", "java.awt.image.BufferedImage");
- Color = CreateObject("java","java.awt.Color");
- font = createObject("java","java.awt.Font");
- font_stream = createObject("java","java.io.FileInputStream");
- ac = CreateObject("Java", "java.awt.AlphaComposite");
-
- // set up basic needs
- fontColor = Color.init(javacast("int", rgb.red), javacast("int", rgb.green), javacast("int", rgb.blue));
-
- if (fontDetails.fontFile neq "")
- {
- font_stream.init(arguments.fontDetails.fontFile);
- font = font.createFont(font.TRUETYPE_FONT, font_stream);
- font = font.deriveFont(javacast("float",arguments.fontDetails.size));
- } else {
- font.init(fontDetails.fontName, evaluate(fontDetails.style), fontDetails.size);
- }
- // get font metrics using a 1x1 bufferedImage
- fontImage.init(1,1,img.getType());
- g2 = fontImage.createGraphics();
- g2.setRenderingHints(getRenderingHints());
- fc = g2.getFontRenderContext();
- bounds = font.getStringBounds(content,fc);
-
- g2 = img.createGraphics();
- g2.setRenderingHints(getRenderingHints());
- g2.setFont(font);
- g2.setColor(fontColor);
- // in case you want to change the alpha
- // g2.setComposite(ac.getInstance(ac.SRC_OVER, 0.50));
-
- // the location (arguments.fontDetails.size+y) doesn't really work
- // the way I want it to.
- g2.drawString(content,javacast("int",x),javacast("int",arguments.fontDetails.size+y));
-
- if (outputFile eq "")
- {
- retVal.img = img;
- return retVal;
- } else {
- saveImage = writeImage(outputFile, img, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- at = CreateObject("java", "java.awt.geom.AffineTransform");
- op = CreateObject("java", "java.awt.image.AffineTransformOp");
- ac = CreateObject("Java", "java.awt.AlphaComposite");
- gfx = originalImage.getGraphics();
- gfx.setComposite(ac.getInstance(ac.SRC_OVER, alpha));
-
- at.init();
- // op.init(at,op.TYPE_BILINEAR);
- op.init(at, rh);
-
- gfx.drawImage(wmImage, op, javaCast("int",arguments.placeAtX), javacast("int", arguments.placeAtY));
-
- gfx.dispose();
-
- if (outputFile eq "")
- {
- retVal.img = originalImage;
- return retVal;
- } else {
- saveImage = writeImage(outputFile, originalImage, jpegCompression);
- if (saveImage.errorCode gt 0)
- {
- return saveImage;
- } else {
- return retVal;
- }
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- // convert the image to a specified BufferedImage type and return it
-
- var width = bImage.getWidth();
- var height = bImage.getHeight();
- var newImage = createObject("java","java.awt.image.BufferedImage").init(javacast("int",width), javacast("int",height), javacast("int",type));
- // int[] rgbArray = new int[width*height];
- var rgbArray = variables.arrObj.newInstance(variables.intClass, javacast("int",width*height));
-
- bImage.getRGB(
- javacast("int",0),
- javacast("int",0),
- javacast("int",width),
- javacast("int",height),
- rgbArray,
- javacast("int",0),
- javacast("int",width)
- );
- newImage.setRGB(
- javacast("int",0),
- javacast("int",0),
- javacast("int",width),
- javacast("int",height),
- rgbArray,
- javacast("int",0),
- javacast("int",width)
- );
- return newImage;
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/upload.cfm b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/upload.cfm
deleted file mode 100755
index c44e6fa..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/cfm/upload.cfm
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/config.lasso b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/config.lasso
deleted file mode 100755
index 67c4e39..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/config.lasso
+++ /dev/null
@@ -1,65 +0,0 @@
-[//lasso
-/*
- * 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 ==
- *
- * Configuration file for the File Manager Connector for Lasso.
- */
-
- /*.....................................................................
- The connector uses the file tags, which require authentication. Enter a
- valid username and password from Lasso admin for a group with file tags
- permissions for uploads and the path you define in UserFilesPath below.
- */
-
- var('connection') = array(
- -username='xxxxxxxx',
- -password='xxxxxxxx'
- );
-
-
- /*.....................................................................
- Set the base path for files that users can upload and browse (relative
- to server root).
-
- Set which file extensions are allowed and/or denied for each file type.
- */
- var('config') = map(
- 'Enabled' = false,
- 'UserFilesPath' = '/userfiles/',
- 'Subdirectories' = map(
- 'File' = 'File/',
- 'Image' = 'Image/',
- 'Flash' = 'Flash/',
- 'Media' = 'Media/'
- ),
- 'AllowedExtensions' = map(
- 'File' = array('7z','aiff','asf','avi','bmp','csv','doc','fla','flv','gif','gz','gzip','jpeg','jpg','mid','mov','mp3','mp4','mpc','mpeg','mpg','ods','odt','pdf','png','ppt','pxd','qt','ram','rar','rm','rmi','rmvb','rtf','sdc','sitd','swf','sxc','sxw','tar','tgz','tif','tiff','txt','vsd','wav','wma','wmv','xls','xml','zip'),
- 'Image' = array('bmp','gif','jpeg','jpg','png'),
- 'Flash' = array('swf','flv'),
- 'Media' = array('aiff','asf','avi','bmp','fla','flv','gif','jpeg','jpg','mid','mov','mp3','mp4','mpc','mpeg','mpg','png','qt','ram','rm','rmi','rmvb','swf','tif','tiff','wav','wma','wmv')
- ),
- 'DeniedExtensions' = map(
- 'File' = array(),
- 'Image' = array(),
- 'Flash' = array(),
- 'Media' = array()
- )
- );
-]
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/connector.lasso b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/connector.lasso
deleted file mode 100755
index 881af0d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/connector.lasso
+++ /dev/null
@@ -1,322 +0,0 @@
-[//lasso
-/*
- * 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 ==
- *
- * This is the File Manager Connector for Lasso.
- */
-
- /*.....................................................................
- Include global configuration. See config.lasso for details.
- */
- include('config.lasso');
-
-
- /*.....................................................................
- Translate current date/time to GMT for custom header.
- */
- var('headerDate') = date_localtogmt(date)->format('%a, %d %b %Y %T GMT');
-
-
- /*.....................................................................
- Convert query string parameters to variables and initialize output.
- */
- var(
- 'Command' = action_param('Command'),
- 'Type' = action_param('Type'),
- 'CurrentFolder' = action_param('CurrentFolder'),
- 'ServerPath' = action_param('ServerPath'),
- 'NewFolderName' = action_param('NewFolderName'),
- 'NewFile' = null,
- 'NewFileName' = string,
- 'OrigFilePath' = string,
- 'NewFilePath' = string,
- 'commandData' = string,
- 'folders' = '\t\n',
- 'files' = '\t\n',
- 'errorNumber' = integer,
- 'responseType' = 'xml',
- 'uploadResult' = '0'
- );
-
- /*.....................................................................
- Custom tag sets the HTML response.
- */
-
- define_tag(
- 'htmlreply',
- -namespace='fck_',
- -priority='replace',
- -required='uploadResult',
- -optional='NewFilePath',
- -type='string',
- -description='Sets the HTML response for the FCKEditor File Upload feature.'
- );
- $__html_reply__ = '\
-
- ';
- else;
- $__html_reply__ = $__html_reply__ + '\
- window.parent.OnUploadCompleted(' + $uploadResult + ');
-
- ';
- /if;
- /define_tag;
-
-
- /*.....................................................................
- Calculate the path to the current folder.
- */
- $ServerPath == '' ? $ServerPath = $config->find('UserFilesPath');
-
- var('currentFolderURL' = $ServerPath
- + $config->find('Subdirectories')->find(action_param('Type'))
- + $CurrentFolder
- );
-
- if($CurrentFolder->(Find: '..') || $CurrentFolder->(Find: '\\'));
- if($Command == 'FileUpload');
- $responseType = 'html';
- $uploadResult = '102';
- fck_htmlreply(
- -uploadResult=$uploadResult
- );
- else;
- $errorNumber = 102;
- $commandData += ' \n';
- /if;
- else;
-
- /*.....................................................................
- Build the appropriate response per the 'Command' parameter. Wrap the
- entire process in an inline for file tag permissions.
- */
- inline($connection);
- select($Command);
- /*.............................................................
- List all subdirectories in the 'Current Folder' directory.
- */
- case('GetFolders');
- $commandData += '\t\n';
-
- iterate(file_listdirectory($currentFolderURL), local('this'));
- #this->endswith('/') ? $commandData += '\t\t \n';
- /iterate;
-
- $commandData += '\t \n';
-
-
- /*.............................................................
- List both files and folders in the 'Current Folder' directory.
- Include the file sizes in kilobytes.
- */
- case('GetFoldersAndFiles');
- iterate(file_listdirectory($currentFolderURL), local('this'));
- if(#this->endswith('/'));
- $folders += '\t\t \n';
- else;
- local('size') = file_getsize($currentFolderURL + #this) / 1024;
- $files += '\t\t \n';
- /if;
- /iterate;
-
- $folders += '\t \n';
- $files += '\t\n';
-
- $commandData += $folders + $files;
-
-
- /*.............................................................
- Create a directory 'NewFolderName' within the 'Current Folder.'
- */
- case('CreateFolder');
- $NewFolderName = (String_ReplaceRegExp: $NewFolderName, -find='\\.|\\\\|\\/|\\||\\:|\\?|\\*|"|<|>', -replace='_');
- var('newFolder' = $currentFolderURL + $NewFolderName + '/');
- file_create($newFolder);
-
-
- /*.........................................................
- Map Lasso's file error codes to FCKEditor's error codes.
- */
- select(file_currenterror( -errorcode));
- case(0);
- $errorNumber = 0;
- case( -9983);
- $errorNumber = 101;
- case( -9976);
- $errorNumber = 102;
- case( -9977);
- $errorNumber = 102;
- case( -9961);
- $errorNumber = 103;
- case;
- $errorNumber = 110;
- /select;
-
- $commandData += ' \n';
-
-
- /*.............................................................
- Process an uploaded file.
- */
- case('FileUpload');
- /*.........................................................
- This is the only command that returns an HTML response.
- */
- $responseType = 'html';
-
-
- /*.........................................................
- Was a file actually uploaded?
- */
- if(file_uploads->size);
- $NewFile = file_uploads->get(1);
- else;
- $uploadResult = '202';
- /if;
-
- if($uploadResult == '0');
- /*.....................................................
- Split the file's extension from the filename in order
- to follow the API's naming convention for duplicate
- files. (Test.txt, Test(1).txt, Test(2).txt, etc.)
- */
- $NewFileName = $NewFile->find('OrigName');
- $NewFileName = (String_ReplaceRegExp: $NewFileName, -find='\\\\|\\/|\\||\\:|\\?|\\*|"|<|>', -replace='_');
- $OrigFilePath = $currentFolderURL + $NewFileName;
- $NewFilePath = $OrigFilePath;
- local('fileExtension') = '.' + $NewFile->find('OrigExtension');
- #fileExtension = (String_ReplaceRegExp: #fileExtension, -find='\\\\|\\/|\\||\\:|\\?|\\*|"|<|>', -replace='_');
- local('shortFileName') = $NewFileName->removetrailing(#fileExtension)&;
-
-
- /*.....................................................
- Make sure the file extension is allowed.
- */
- if($config->find('DeniedExtensions')->find($Type) >> $NewFile->find('OrigExtension'));
- $uploadResult = '202';
- else;
- /*.................................................
- Rename the target path until it is unique.
- */
- while(file_exists($NewFilePath));
- $NewFilePath = $currentFolderURL + #shortFileName + '(' + loop_count + ')' + #fileExtension;
- /while;
-
-
- /*.................................................
- Copy the uploaded file to its final location.
- */
- file_copy($NewFile->find('path'), $NewFilePath);
-
-
- /*.................................................
- Set the error code for the response. Note whether
- the file had to be renamed.
- */
- select(file_currenterror( -errorcode));
- case(0);
- $OrigFilePath != $NewFilePath ? $uploadResult = 201;
- case;
- $uploadResult = file_currenterror( -errorcode);
- /select;
- /if;
- /if;
- fck_htmlreply(
- -uploadResult=$uploadResult,
- -NewFilePath=$NewFilePath
- );
- /select;
- /inline;
- /if;
-
- /*.....................................................................
- Send a custom header for xml responses.
- */
- if($responseType == 'xml');
- header;
-]
-HTTP/1.0 200 OK
-Date: [$headerDate]
-Server: Lasso Professional [lasso_version( -lassoversion)]
-Expires: Mon, 26 Jul 1997 05:00:00 GMT
-Last-Modified: [$headerDate]
-Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
-Pragma: no-cache
-Keep-Alive: timeout=15, max=98
-Connection: Keep-Alive
-Content-Type: text/xml; charset=utf-8
-[//lasso
-/header;
-
- /*
- Set the content type encoding for Lasso.
- */
- content_type('text/xml; charset=utf-8');
-
- /*
- Wrap the response as XML and output.
- */
- $__html_reply__ = '\
-
-';
-
- if($errorNumber != '102');
- $__html_reply__ += ' ';
- /if;
-
- $__html_reply__ += $commandData + '
- ';
- /if;
-]
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/upload.lasso b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/upload.lasso
deleted file mode 100755
index 2006181..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/lasso/upload.lasso
+++ /dev/null
@@ -1,168 +0,0 @@
-[//lasso
-/*
- * 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 ==
- *
- * This is the "File Uploader" for Lasso.
- */
-
- /*.....................................................................
- Include global configuration. See config.lasso for details.
- */
- include('config.lasso');
-
-
- /*.....................................................................
- Convert query string parameters to variables and initialize output.
- */
- var(
- 'Type' = action_param('Type'),
- 'CurrentFolder' = action_param('CurrentFolder'),
- 'ServerPath' = action_param('ServerPath'),
- 'NewFile' = null,
- 'NewFileName' = string,
- 'OrigFilePath' = string,
- 'NewFilePath' = string,
- 'errorNumber' = 0,
- 'customMsg' = ''
- );
-
- $Type == '' ? $Type = 'File';
-
-
- /*.....................................................................
- Calculate the path to the current folder.
- */
- $ServerPath == '' ? $ServerPath = $config->find('UserFilesPath');
-
- var('currentFolderURL' = $ServerPath
- + $config->find('Subdirectories')->find(action_param('Type'))
- + action_param('CurrentFolder')
- );
-
- /*.....................................................................
- Custom tag sets the HTML response.
- */
-
- define_tag(
- 'sendresults',
- -namespace='fck_',
- -priority='replace',
- -required='errorNumber',
- -type='integer',
- -optional='fileUrl',
- -type='string',
- -optional='fileName',
- -type='string',
- -optional='customMsg',
- -type='string',
- -description='Sets the HTML response for the FCKEditor Quick Upload feature.'
- );
-
- $__html_reply__ = '
- ';
- /define_tag;
-
- if($CurrentFolder->(Find: '..') || $CurrentFolder->(Find: '\\'));
- $errorNumber = 102;
- /if;
-
- if($config->find('Enabled'));
- /*.................................................................
- Process an uploaded file.
- */
- inline($connection);
- /*.............................................................
- Was a file actually uploaded?
- */
- if($errorNumber != '102');
- file_uploads->size ? $NewFile = file_uploads->get(1) | $errorNumber = 202;
- /if;
-
- if($errorNumber == 0);
- /*.........................................................
- Split the file's extension from the filename in order
- to follow the API's naming convention for duplicate
- files. (Test.txt, Test(1).txt, Test(2).txt, etc.)
- */
- $NewFileName = $NewFile->find('OrigName');
- $OrigFilePath = $currentFolderURL + $NewFileName;
- $NewFilePath = $OrigFilePath;
- local('fileExtension') = '.' + $NewFile->find('OrigExtension');
- local('shortFileName') = $NewFileName->removetrailing(#fileExtension)&;
-
-
- /*.........................................................
- Make sure the file extension is allowed.
- */
-
- if($config->find('DeniedExtensions')->find($Type) >> $NewFile->find('OrigExtension'));
- $errorNumber = 202;
- else;
- /*.....................................................
- Rename the target path until it is unique.
- */
- while(file_exists($NewFilePath));
- $NewFileName = #shortFileName + '(' + loop_count + ')' + #fileExtension;
- $NewFilePath = $currentFolderURL + $NewFileName;
- /while;
-
-
- /*.....................................................
- Copy the uploaded file to its final location.
- */
- file_copy($NewFile->find('path'), $NewFilePath);
-
-
- /*.....................................................
- Set the error code for the response.
- */
- select(file_currenterror( -errorcode));
- case(0);
- $OrigFilePath != $NewFilePath ? $errorNumber = 201;
- case;
- $errorNumber = 202;
- /select;
- /if;
- /if;
- /inline;
- else;
- $errorNumber = 1;
- $customMsg = 'This file uploader is disabled. Please check the "editor/filemanager/upload/lasso/config.lasso" file.';
- /if;
-
- fck_sendresults(
- -errorNumber=$errorNumber,
- -fileUrl=$NewFilePath,
- -fileName=$NewFileName,
- -customMsg=$customMsg
- );
-]
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/basexml.pl b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/basexml.pl
deleted file mode 100755
index 4fad4e7..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/basexml.pl
+++ /dev/null
@@ -1,63 +0,0 @@
-#####
-# 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 ==
-#
-# This is the File Manager Connector for Perl.
-#####
-
-sub CreateXmlHeader
-{
- local($command,$resourceType,$currentFolder) = @_;
-
- # Create the XML document header.
- print '';
-
- # Create the main "Connector" node.
- print '';
-
- # Add the current folder node.
- print ' ';
-}
-
-sub CreateXmlFooter
-{
- print ' ';
-}
-
-sub SendError
-{
- local( $number, $text ) = @_;
-
- print << "_HTML_HEAD_";
-Content-Type:text/xml; charset=utf-8
-Pragma: no-cache
-Cache-Control: no-cache
-Expires: Thu, 01 Dec 1994 16:00:00 GMT
-
-_HTML_HEAD_
-
- # Create the XML document header
- print '' ;
-
- print ' ' ;
-
- exit ;
-}
-
-1;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/commands.pl b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/commands.pl
deleted file mode 100755
index 3dd220a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/commands.pl
+++ /dev/null
@@ -1,187 +0,0 @@
-#####
-# 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 ==
-#
-# This is the File Manager Connector for Perl.
-#####
-
-sub GetFolders
-{
-
- local($resourceType, $currentFolder) = @_;
-
- # Map the virtual path to the local server path.
- $sServerDir = &ServerMapFolder($resourceType, $currentFolder);
- print ""; # Open the "Folders" node.
-
- opendir(DIR,"$sServerDir");
- @files = grep(!/^\.\.?$/,readdir(DIR));
- closedir(DIR);
-
- foreach $sFile (@files) {
- if($sFile != '.' && $sFile != '..' && (-d "$sServerDir$sFile")) {
- $cnv_filename = &ConvertToXmlAttribute($sFile);
- print ' ';
- }
- }
- print " "; # Close the "Folders" node.
-}
-
-sub GetFoldersAndFiles
-{
-
- local($resourceType, $currentFolder) = @_;
- # Map the virtual path to the local server path.
- $sServerDir = &ServerMapFolder($resourceType,$currentFolder);
-
- # Initialize the output buffers for "Folders" and "Files".
- $sFolders = '';
- $sFiles = '';
-
- opendir(DIR,"$sServerDir");
- @files = grep(!/^\.\.?$/,readdir(DIR));
- closedir(DIR);
-
- foreach $sFile (@files) {
- if($sFile ne '.' && $sFile ne '..') {
- if(-d "$sServerDir$sFile") {
- $cnv_filename = &ConvertToXmlAttribute($sFile);
- $sFolders .= ' ' ;
- } else {
- ($iFileSize,$refdate,$filedate,$fileperm) = (stat("$sServerDir$sFile"))[7,8,9,2];
- if($iFileSize > 0) {
- $iFileSize = int($iFileSize / 1024);
- if($iFileSize < 1) {
- $iFileSize = 1;
- }
- }
- $cnv_filename = &ConvertToXmlAttribute($sFile);
- $sFiles .= ' ' ;
- }
- }
- }
- print $sFolders ;
- print ' '; # Close the "Folders" node.
- print $sFiles ;
- print ''; # Close the "Files" node.
-}
-
-sub CreateFolder
-{
-
- local($resourceType, $currentFolder) = @_;
- $sErrorNumber = '0' ;
- $sErrorMsg = '' ;
-
- if($FORM{'NewFolderName'} ne "") {
- $sNewFolderName = $FORM{'NewFolderName'};
- $sNewFolderName =~ s/\.|\\|\/|\||\:|\?|\*|\"|<|>|[[:cntrl:]]/_/g;
- # Map the virtual path to the local server path of the current folder.
- $sServerDir = &ServerMapFolder($resourceType, $currentFolder);
- if(-w $sServerDir) {
- $sServerDir .= $sNewFolderName;
- $sErrorMsg = &CreateServerFolder($sServerDir);
- if($sErrorMsg == 0) {
- $sErrorNumber = '0';
- } elsif($sErrorMsg eq 'Invalid argument' || $sErrorMsg eq 'No such file or directory') {
- $sErrorNumber = '102'; #// Path too long.
- } else {
- $sErrorNumber = '110';
- }
- } else {
- $sErrorNumber = '103';
- }
- } else {
- $sErrorNumber = '102' ;
- }
- # Create the "Error" node.
- $cnv_errmsg = &ConvertToXmlAttribute($sErrorMsg);
- print ' ';
-}
-
-sub FileUpload
-{
-eval("use File::Copy;");
-
- local($resourceType, $currentFolder) = @_;
-
- $sErrorNumber = '0' ;
- $sFileName = '' ;
- if($new_fname) {
- # Map the virtual path to the local server path.
- $sServerDir = &ServerMapFolder($resourceType,$currentFolder);
-
- # Get the uploaded file name.
- $sFileName = $new_fname;
- $sFileName =~ s/\\|\/|\||\:|\?|\*|\"|<|>|[[:cntrl:]]/_/g;
- $sOriginalFileName = $sFileName;
-
- $iCounter = 0;
- while(1) {
- $sFilePath = $sServerDir . $sFileName;
- if(-e $sFilePath) {
- $iCounter++ ;
- ($path,$BaseName,$ext) = &RemoveExtension($sOriginalFileName);
- $sFileName = $BaseName . '(' . $iCounter . ').' . $ext;
- $sErrorNumber = '201';
- } else {
- copy("$img_dir/$new_fname","$sFilePath");
- if (defined $CHMOD_ON_UPLOAD) {
- if ($CHMOD_ON_UPLOAD) {
- umask(000);
- chmod($CHMOD_ON_UPLOAD,$sFilePath);
- }
- }
- else {
- umask(000);
- chmod(0777,$sFilePath);
- }
- unlink("$img_dir/$new_fname");
- last;
- }
- }
- } else {
- $sErrorNumber = '202' ;
- }
- $sFileName =~ s/"/\\"/g;
-
- SendUploadResults($sErrorNumber, $resourceType.$currentFolder.$sFileName, $sFileName, '');
-}
-
-sub SendUploadResults
-{
-
- local($sErrorNumber, $sFileUrl, $sFileName, $customMsg) = @_;
-
- # Minified version of the document.domain automatic fix script (#1919).
- # The original script can be found at _dev/domain_fix_template.js
- # Note: in Perl replace \ with \\ and $ with \$
- print <
-(function(){var d=document.domain;while (true){try{var A=window.parent.document.domain;break;}catch(e) {};d=d.replace(/.*?(?:\\.|\$)/,'');if (d.length==0) break;try{document.domain=d;}catch (e){break;}}})();
-
-EOF
- print 'window.parent.OnUploadCompleted(' . $sErrorNumber . ',"' . JS_cnv($sFileUrl) . '","' . JS_cnv($sFileName) . '","' . JS_cnv($customMsg) . '") ;';
- print '';
- exit ;
-}
-
-1;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/connector.cgi b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/connector.cgi
deleted file mode 100755
index 24edfbc..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/connector.cgi
+++ /dev/null
@@ -1,136 +0,0 @@
-#!/usr/bin/env perl
-
-#####
-# 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 ==
-#
-# This is the File Manager Connector for Perl.
-#####
-
-##
-# ATTENTION: To enable this connector, look for the "SECURITY" comment in this file.
-##
-
-## START: Hack for Windows (Not important to understand the editor code... Perl specific).
-if(Windows_check()) {
- chdir(GetScriptPath($0));
-}
-
-sub Windows_check
-{
- # IIS,PWS(NT/95)
- $www_server_os = $^O;
- # Win98 & NT(SP4)
- if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
- # AnHTTPd/Omni/IIS
- if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
- # Win Apache
- if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
- if($www_server_os=~ /win/i) { return(1); }
- return(0);
-}
-
-sub GetScriptPath {
- local($path) = @_;
- if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
- $path;
-}
-## END: Hack for IIS
-
-require 'util.pl';
-require 'io.pl';
-require 'basexml.pl';
-require 'commands.pl';
-require 'upload_fck.pl';
-
-##
-# SECURITY: REMOVE/COMMENT THE FOLLOWING LINE TO ENABLE THIS CONNECTOR.
-##
- &SendError( 1, 'This connector is disabled. Please check the "editor/filemanager/connectors/perl/connector.cgi" file' ) ;
-
- &read_input();
-
- if($FORM{'ServerPath'} ne "") {
- $GLOBALS{'UserFilesPath'} = $FORM{'ServerPath'};
- if(!($GLOBALS{'UserFilesPath'} =~ /\/$/)) {
- $GLOBALS{'UserFilesPath'} .= '/' ;
- }
- } else {
- $GLOBALS{'UserFilesPath'} = '/userfiles/';
- }
-
- # Map the "UserFiles" path to a local directory.
- $rootpath = &GetRootPath();
- $GLOBALS{'UserFilesDirectory'} = $rootpath . $GLOBALS{'UserFilesPath'};
-
- &DoResponse();
-
-sub DoResponse
-{
-
- if($FORM{'Command'} eq "" || $FORM{'Type'} eq "" || $FORM{'CurrentFolder'} eq "") {
- return ;
- }
- # Get the main request informaiton.
- $sCommand = $FORM{'Command'};
- $sResourceType = $FORM{'Type'};
- $sCurrentFolder = $FORM{'CurrentFolder'};
-
- # Check the current folder syntax (must begin and start with a slash).
- if(!($sCurrentFolder =~ /\/$/)) {
- $sCurrentFolder .= '/';
- }
- if(!($sCurrentFolder =~ /^\//)) {
- $sCurrentFolder = '/' . $sCurrentFolder;
- }
-
- # Check for invalid folder paths (..)
- if ( $sCurrentFolder =~ /(?:\.\.|\\)/ ) {
- SendError( 102, "" ) ;
- }
-
- # File Upload doesn't have to Return XML, so it must be intercepted before anything.
- if($sCommand eq 'FileUpload') {
- FileUpload($sResourceType,$sCurrentFolder);
- return ;
- }
-
- print << "_HTML_HEAD_";
-Content-Type:text/xml; charset=utf-8
-Pragma: no-cache
-Cache-Control: no-cache
-Expires: Thu, 01 Dec 1994 16:00:00 GMT
-
-_HTML_HEAD_
-
- &CreateXmlHeader($sCommand,$sResourceType,$sCurrentFolder);
-
- # Execute the required command.
- if($sCommand eq 'GetFolders') {
- &GetFolders($sResourceType,$sCurrentFolder);
- } elsif($sCommand eq 'GetFoldersAndFiles') {
- &GetFoldersAndFiles($sResourceType,$sCurrentFolder);
- } elsif($sCommand eq 'CreateFolder') {
- &CreateFolder($sResourceType,$sCurrentFolder);
- }
-
- &CreateXmlFooter();
-
- exit ;
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/io.pl b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/io.pl
deleted file mode 100755
index 1757861..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/io.pl
+++ /dev/null
@@ -1,141 +0,0 @@
-#####
-# 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 ==
-#
-# This is the File Manager Connector for Perl.
-#####
-
-sub GetUrlFromPath
-{
- local($resourceType, $folderPath) = @_;
-
- if($resourceType eq '') {
- $rmpath = &RemoveFromEnd($GLOBALS{'UserFilesPath'},'/');
- return("$rmpath$folderPath");
- } else {
- return("$GLOBALS{'UserFilesPath'}$resourceType$folderPath");
- }
-}
-
-sub RemoveExtension
-{
- local($fileName) = @_;
- local($path, $base, $ext);
- if($fileName !~ /\./) {
- $fileName .= '.';
- }
- if($fileName =~ /([^\\\/]*)\.(.*)$/) {
- $base = $1;
- $ext = $2;
- if($fileName =~ /(.*)$base\.$ext$/) {
- $path = $1;
- }
- }
- return($path,$base,$ext);
-
-}
-
-sub ServerMapFolder
-{
- local($resourceType,$folderPath) = @_;
-
- # Get the resource type directory.
- $sResourceTypePath = $GLOBALS{'UserFilesDirectory'} . $resourceType . '/';
-
- # Ensure that the directory exists.
- &CreateServerFolder($sResourceTypePath);
-
- # Return the resource type directory combined with the required path.
- $rmpath = &RemoveFromStart($folderPath,'/');
- return("$sResourceTypePath$rmpath");
-}
-
-sub GetParentFolder
-{
- local($folderPath) = @_;
-
- $folderPath =~ s/[\/][^\/]+[\/]?$//g;
- return $folderPath;
-}
-
-sub CreateServerFolder
-{
- local($folderPath) = @_;
-
- $sParent = &GetParentFolder($folderPath);
- # Check if the parent exists, or create it.
- if(!(-e $sParent)) {
- $sErrorMsg = &CreateServerFolder($sParent);
- if($sErrorMsg == 1) {
- return(1);
- }
- }
- if(!(-e $folderPath)) {
- if (defined $CHMOD_ON_FOLDER_CREATE && !$CHMOD_ON_FOLDER_CREATE) {
- mkdir("$folderPath");
- }
- else {
- umask(000);
- if (defined $CHMOD_ON_FOLDER_CREATE) {
- mkdir("$folderPath",$CHMOD_ON_FOLDER_CREATE);
- }
- else {
- mkdir("$folderPath",0777);
- }
- }
-
- return(0);
- } else {
- return(1);
- }
-}
-
-sub GetRootPath
-{
-#use Cwd;
-
-# my $dir = getcwd;
-# print $dir;
-# $dir =~ s/$ENV{'DOCUMENT_ROOT'}//g;
-# print $dir;
-# return($dir);
-
-# $wk = $0;
-# $wk =~ s/\/connector\.cgi//g;
-# if($wk) {
-# $current_dir = $wk;
-# } else {
-# $current_dir = `pwd`;
-# }
-# return($current_dir);
-use Cwd;
-
- if($ENV{'DOCUMENT_ROOT'}) {
- $dir = $ENV{'DOCUMENT_ROOT'};
- } else {
- my $dir = getcwd;
- $workdir =~ s/\/connector\.cgi//g;
- $dir =~ s/$workdir//g;
- }
- return($dir);
-
-
-
-}
-1;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/upload.cgi b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/upload.cgi
deleted file mode 100755
index 69131b0..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/upload.cgi
+++ /dev/null
@@ -1,117 +0,0 @@
-#!/usr/bin/env perl
-
-#####
-# 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 ==
-#
-# This is the File Manager Connector for Perl.
-#####
-
-##
-# ATTENTION: To enable this connector, look for the "SECURITY" comment in this file.
-##
-
-## START: Hack for Windows (Not important to understand the editor code... Perl specific).
-if(Windows_check()) {
- chdir(GetScriptPath($0));
-}
-
-sub Windows_check
-{
- # IIS,PWS(NT/95)
- $www_server_os = $^O;
- # Win98 & NT(SP4)
- if($www_server_os eq "") { $www_server_os= $ENV{'OS'}; }
- # AnHTTPd/Omni/IIS
- if($ENV{'SERVER_SOFTWARE'} =~ /AnWeb|Omni|IIS\//i) { $www_server_os= 'win'; }
- # Win Apache
- if($ENV{'WINDIR'} ne "") { $www_server_os= 'win'; }
- if($www_server_os=~ /win/i) { return(1); }
- return(0);
-}
-
-sub GetScriptPath {
- local($path) = @_;
- if($path =~ /[\:\/\\]/) { $path =~ s/(.*?)[\/\\][^\/\\]+$/$1/; } else { $path = '.'; }
- $path;
-}
-## END: Hack for IIS
-
-require 'util.pl';
-require 'io.pl';
-require 'basexml.pl';
-require 'commands.pl';
-require 'upload_fck.pl';
-
-##
-# SECURITY: REMOVE/COMMENT THE FOLLOWING LINE TO ENABLE THIS CONNECTOR.
-##
- &SendUploadResults(1, '', '', 'This connector is disabled. Please check the "editor/filemanager/connectors/perl/upload.cgi" file' ) ;
-
- &read_input();
-
- if($FORM{'ServerPath'} ne "") {
- $GLOBALS{'UserFilesPath'} = $FORM{'ServerPath'};
- if(!($GLOBALS{'UserFilesPath'} =~ /\/$/)) {
- $GLOBALS{'UserFilesPath'} .= '/' ;
- }
- } else {
- $GLOBALS{'UserFilesPath'} = '/userfiles/';
- }
-
- # Map the "UserFiles" path to a local directory.
- $rootpath = &GetRootPath();
- $GLOBALS{'UserFilesDirectory'} = $rootpath . $GLOBALS{'UserFilesPath'};
-
- &DoResponse();
-
-sub DoResponse
-{
- # Get the main request information.
- $sCommand = 'FileUpload'; #$FORM{'Command'};
- $sResourceType = $FORM{'Type'};
- $sCurrentFolder = $FORM{'CurrentFolder'};
-
- if ($sResourceType eq '') {
- $sResourceType = 'File' ;
- }
- if ($sCurrentFolder eq '') {
- $sCurrentFolder = '/' ;
- }
-
- # Check the current folder syntax (must begin and start with a slash).
- if(!($sCurrentFolder =~ /\/$/)) {
- $sCurrentFolder .= '/';
- }
- if(!($sCurrentFolder =~ /^\//)) {
- $sCurrentFolder = '/' . $sCurrentFolder;
- }
-
- # Check for invalid folder paths (..)
- if ( $sCurrentFolder =~ /(?:\.\.|\\)/ ) {
- SendError( 102, "" ) ;
- }
-
- # File Upload doesn't have to Return XML, so it must be intercepted before anything.
- if($sCommand eq 'FileUpload') {
- FileUpload($sResourceType,$sCurrentFolder);
- return ;
- }
-
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/upload_fck.pl b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/upload_fck.pl
deleted file mode 100755
index ca256a9..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/upload_fck.pl
+++ /dev/null
@@ -1,686 +0,0 @@
-#####
-# 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 ==
-#
-# This is the File Manager Connector for Perl.
-#####
-
-# image data save dir
-$img_dir = './temp/';
-
-
-# File size max(unit KB)
-$MAX_CONTENT_SIZE = 30000;
-
-# After file is uploaded, sometimes it is required to change its permissions
-# so that it was possible to access it at the later time.
-# If possible, it is recommended to set more restrictive permissions, like 0755.
-# Set to 0 to disable this feature.
-$CHMOD_ON_UPLOAD = 0777;
-
-# See comments above.
-# Used when creating folders that does not exist.
-$CHMOD_ON_FOLDER_CREATE = 0755;
-
-# Filelock (1=use,0=not use)
-$PM{'flock'} = '1';
-
-
-# upload Content-Type list
-my %UPLOAD_CONTENT_TYPE_LIST = (
- 'image/(x-)?png' => 'png', # PNG image
- 'image/p?jpe?g' => 'jpg', # JPEG image
- 'image/gif' => 'gif', # GIF image
- 'image/x-xbitmap' => 'xbm', # XBM image
-
- 'image/(x-(MS-)?)?bmp' => 'bmp', # Windows BMP image
- 'image/pict' => 'pict', # Macintosh PICT image
- 'image/tiff' => 'tif', # TIFF image
- 'application/pdf' => 'pdf', # PDF image
- 'application/x-shockwave-flash' => 'swf', # Shockwave Flash
-
- 'video/(x-)?msvideo' => 'avi', # Microsoft Video
- 'video/quicktime' => 'mov', # QuickTime Video
- 'video/mpeg' => 'mpeg', # MPEG Video
- 'video/x-mpeg2' => 'mpv2', # MPEG2 Video
-
- 'audio/(x-)?midi?' => 'mid', # MIDI Audio
- 'audio/(x-)?wav' => 'wav', # WAV Audio
- 'audio/basic' => 'au', # ULAW Audio
- 'audio/mpeg' => 'mpga', # MPEG Audio
-
- 'application/(x-)?zip(-compressed)?' => 'zip', # ZIP Compress
-
- 'text/html' => 'html', # HTML
- 'text/plain' => 'txt', # TEXT
- '(?:application|text)/(?:rtf|richtext)' => 'rtf', # RichText
-
- 'application/msword' => 'doc', # Microsoft Word
- 'application/vnd.ms-excel' => 'xls', # Microsoft Excel
-
- ''
-);
-
-# Upload is permitted.
-# A regular expression is possible.
-my %UPLOAD_EXT_LIST = (
- 'png' => 'PNG image',
- 'p?jpe?g|jpe|jfif|pjp' => 'JPEG image',
- 'gif' => 'GIF image',
- 'xbm' => 'XBM image',
-
- 'bmp|dib|rle' => 'Windows BMP image',
- 'pi?ct' => 'Macintosh PICT image',
- 'tiff?' => 'TIFF image',
- 'pdf' => 'PDF image',
- 'swf' => 'Shockwave Flash',
-
- 'avi' => 'Microsoft Video',
- 'moo?v|qt' => 'QuickTime Video',
- 'm(p(e?gv?|e|v)|1v)' => 'MPEG Video',
- 'mp(v2|2v)' => 'MPEG2 Video',
-
- 'midi?|kar|smf|rmi|mff' => 'MIDI Audio',
- 'wav' => 'WAVE Audio',
- 'au|snd' => 'ULAW Audio',
- 'mp(e?ga|2|a|3)|abs' => 'MPEG Audio',
-
- 'zip' => 'ZIP Compress',
- 'lzh' => 'LZH Compress',
- 'cab' => 'CAB Compress',
-
- 'd?html?' => 'HTML',
- 'rtf|rtx' => 'RichText',
- 'txt|text' => 'Text',
-
- ''
-);
-
-
-# sjis or euc
-my $CHARCODE = 'sjis';
-
-$TRANS_2BYTE_CODE = 0;
-
-##############################################################################
-# Summary
-#
-# Form Read input
-#
-# Parameters
-# Returns
-# Memo
-##############################################################################
-sub read_input
-{
-eval("use File::Copy;");
-eval("use File::Path;");
-
- my ($FORM) = @_;
-
- if (defined $CHMOD_ON_FOLDER_CREATE && !$CHMOD_ON_FOLDER_CREATE) {
- mkdir("$img_dir");
- }
- else {
- umask(000);
- if (defined $CHMOD_ON_FOLDER_CREATE) {
- mkdir("$img_dir",$CHMOD_ON_FOLDER_CREATE);
- }
- else {
- mkdir("$img_dir",0777);
- }
- }
-
- undef $img_data_exists;
- undef @NEWFNAMES;
- undef @NEWFNAME_DATA;
-
- if($ENV{'CONTENT_LENGTH'} > 10000000 || $ENV{'CONTENT_LENGTH'} > $MAX_CONTENT_SIZE * 1024) {
- &upload_error(
- 'Size Error',
- sprintf(
- "Transmitting size is too large.MAX %d KB Now Size %d KB (%d bytes Over)",
- $MAX_CONTENT_SIZE,
- int($ENV{'CONTENT_LENGTH'} / 1024),
- $ENV{'CONTENT_LENGTH'} - $MAX_CONTENT_SIZE * 1024
- )
- );
- }
-
- my $Buffer;
- if($ENV{'CONTENT_TYPE'} =~ /multipart\/form-data/) {
- # METHOD POST only
- return unless($ENV{'CONTENT_LENGTH'});
-
- binmode(STDIN);
- # STDIN A pause character is detected.'(MacIE3.0 boundary of $ENV{'CONTENT_TYPE'} cannot be trusted.)
- my $Boundary = ;
- $Boundary =~ s/\x0D\x0A//;
- $Boundary = quotemeta($Boundary);
- while() {
- if(/^\s*Content-Disposition:/i) {
- my($name,$ContentType,$FileName);
- # form data get
- if(/\bname="([^"]+)"/i || /\bname=([^\s:;]+)/i) {
- $name = $1;
- $name =~ tr/+/ /;
- $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
- &Encode(\$name);
- }
- if(/\bfilename="([^"]*)"/i || /\bfilename=([^\s:;]*)/i) {
- $FileName = $1 || 'unknown';
- }
- # head read
- while() {
- last if(! /\w/);
- if(/^\s*Content-Type:\s*"([^"]+)"/i || /^\s*Content-Type:\s*([^\s:;]+)/i) {
- $ContentType = $1;
- }
- }
- # body read
- $value = "";
- while() {
- last if(/^$Boundary/o);
- $value .= $_;
- };
- $lastline = $_;
- $value =~s /\x0D\x0A$//;
- if($value ne '') {
- if($FileName || $ContentType) {
- $img_data_exists = 1;
- (
- $FileName, #
- $Ext, #
- $Length, #
- $ImageWidth, #
- $ImageHeight, #
- $ContentName #
- ) = &CheckContentType(\$value,$FileName,$ContentType);
-
- $FORM{$name} = $FileName;
- $new_fname = $FileName;
- push(@NEWFNAME_DATA,"$FileName\t$Ext\t$Length\t$ImageWidth\t$ImageHeight\t$ContentName");
-
- # Multi-upload correspondence
- push(@NEWFNAMES,$new_fname);
- open(OUT,">$img_dir/$new_fname");
- binmode(OUT);
- eval "flock(OUT,2);" if($PM{'flock'} == 1);
- print OUT $value;
- eval "flock(OUT,8);" if($PM{'flock'} == 1);
- close(OUT);
-
- } elsif($name) {
- $value =~ tr/+/ /;
- $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
- &Encode(\$value,'trans');
- $FORM{$name} .= "\0" if(defined($FORM{$name}));
- $FORM{$name} .= $value;
- }
- }
- };
- last if($lastline =~ /^$Boundary\-\-/o);
- }
- } elsif($ENV{'CONTENT_LENGTH'}) {
- read(STDIN,$Buffer,$ENV{'CONTENT_LENGTH'});
- }
- foreach(split(/&/,$Buffer),split(/&/,$ENV{'QUERY_STRING'})) {
- my($name, $value) = split(/=/);
- $name =~ tr/+/ /;
- $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
- $value =~ tr/+/ /;
- $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
-
- &Encode(\$name);
- &Encode(\$value,'trans');
- $FORM{$name} .= "\0" if(defined($FORM{$name}));
- $FORM{$name} .= $value;
-
- }
-
-}
-
-##############################################################################
-# Summary
-#
-# CheckContentType
-#
-# Parameters
-# Returns
-# Memo
-##############################################################################
-sub CheckContentType
-{
-
- my($DATA,$FileName,$ContentType) = @_;
- my($Ext,$ImageWidth,$ImageHeight,$ContentName,$Infomation);
- my $DataLength = length($$DATA);
-
- # An unknown file type
-
- $_ = $ContentType;
- my $UnknownType = (
- !$_
- || /^application\/(x-)?macbinary$/i
- || /^application\/applefile$/i
- || /^application\/octet-stream$/i
- || /^text\/plane$/i
- || /^x-unknown-content-type/i
- );
-
- # MacBinary(Mac Unnecessary data are deleted.)
- if($UnknownType || $ENV{'HTTP_USER_AGENT'} =~ /Macintosh|Mac_/) {
- if($DataLength > 128 && !unpack("C",substr($$DATA,0,1)) && !unpack("C",substr($$DATA,74,1)) && !unpack("C",substr($$DATA,82,1)) ) {
- my $MacBinary_ForkLength = unpack("N", substr($$DATA, 83, 4)); # ForkLength Get
- my $MacBinary_FileName = quotemeta(substr($$DATA, 2, unpack("C",substr($$DATA, 1, 1))));
- if($MacBinary_FileName && $MacBinary_ForkLength && $DataLength >= $MacBinary_ForkLength + 128
- && ($FileName =~ /$MacBinary_FileName/i || substr($$DATA,102,4) eq 'mBIN')) { # DATA TOP 128byte MacBinary!!
- $$DATA = substr($$DATA,128,$MacBinary_ForkLength);
- my $ResourceLength = $DataLength - $MacBinary_ForkLength - 128;
- $DataLength = $MacBinary_ForkLength;
- }
- }
- }
-
- # A file name is changed into EUC.
-# &jcode::convert(\$FileName,'euc',$FormCodeDefault);
-# &jcode::h2z_euc(\$FileName);
- $FileName =~ s/^.*\\//; # Windows, Mac
- $FileName =~ s/^.*\///; # UNIX
- $FileName =~ s/&/&/g;
- $FileName =~ s/"/"/g;
- $FileName =~ s/</g;
- $FileName =~ s/>/>/g;
-#
-# if($CHARCODE ne 'euc') {
-# &jcode::convert(\$FileName,$CHARCODE,'euc');
-# }
-
- # An extension is extracted and it changes into a small letter.
- my $FileExt;
- if($FileName =~ /\.(\w+)$/) {
- $FileExt = $1;
- $FileExt =~ tr/A-Z/a-z/;
- }
-
- # Executable file detection (ban on upload)
- if($$DATA =~ /^MZ/) {
- $Ext = 'exe';
- }
- # text
- if(!$Ext && ($UnknownType || $ContentType =~ /^text\//i || $ContentType =~ /^application\/(?:rtf|richtext)$/i || $ContentType =~ /^image\/x-xbitmap$/i)
- && ! $$DATA =~ /[\000-\006\177\377]/) {
-# $$DATA =~ s/\x0D\x0A/\n/g;
-# $$DATA =~ tr/\x0D\x0A/\n\n/;
-#
-# if(
-# $$DATA =~ /<\s*SCRIPT(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*(?:.|\n)*?\bONLOAD\s*=(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*(?:.|\n)*?\bONCLICK\s*=(?:.|\n)*?>/i
-# ) {
-# $Infomation = '(JavaScript contains)';
-# }
-# if($$DATA =~ /<\s*TABLE(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*BLINK(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*MARQUEE(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*OBJECT(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*EMBED(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*FRAME(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*APPLET(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*FORM(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*(?:.|\n)*?\bSRC\s*=(?:.|\n)*?>/i
-# || $$DATA =~ /<\s*(?:.|\n)*?\bDYNSRC\s*=(?:.|\n)*?>/i
-# ) {
-# $Infomation = '(the HTML tag which is not safe is included)';
-# }
-
- if($FileExt =~ /^txt$/i || $FileExt =~ /^cgi$/i || $FileExt =~ /^pl$/i) { # Text File
- $Ext = 'txt';
- } elsif($ContentType =~ /^text\/html$/i || $FileExt =~ /html?/i || $$DATA =~ /<\s*HTML(?:.|\n)*?>/i) { # HTML File
- $Ext = 'html';
- } elsif($ContentType =~ /^image\/x-xbitmap$/i || $FileExt =~ /^xbm$/i) { # XBM(x-BitMap) Image
- my $XbmName = $1;
- my ($XbmWidth, $XbmHeight);
- if($$DATA =~ /\#define\s*$XbmName\_width\s*(\d+)/i) {
- $XbmWidth = $1;
- }
- if($$DATA =~ /\#define\s*$XbmName\_height\s*(\d+)/i) {
- $XbmHeight = $1;
- }
- if($XbmWidth && $XbmHeight) {
- $Ext = 'xbm';
- $ImageWidth = $XbmWidth;
- $ImageHeight = $XbmHeight;
- }
- } else { #
- $Ext = 'txt';
- }
- }
-
- # image
- if(!$Ext && ($UnknownType || $ContentType =~ /^image\//i)) {
- # PNG
- if($$DATA =~ /^\x89PNG\x0D\x0A\x1A\x0A/) {
- if(substr($$DATA, 12, 4) eq 'IHDR') {
- $Ext = 'png';
- ($ImageWidth, $ImageHeight) = unpack("N2", substr($$DATA, 16, 8));
- }
- } elsif($$DATA =~ /^GIF8(?:9|7)a/) { # GIF89a(modified), GIF89a, GIF87a
- $Ext = 'gif';
- ($ImageWidth, $ImageHeight) = unpack("v2", substr($$DATA, 6, 4));
- } elsif($$DATA =~ /^II\x2a\x00\x08\x00\x00\x00/ || $$DATA =~ /^MM\x00\x2a\x00\x00\x00\x08/) { # TIFF
- $Ext = 'tif';
- } elsif($$DATA =~ /^BM/) { # BMP
- $Ext = 'bmp';
- } elsif($$DATA =~ /^\xFF\xD8\xFF/ || $$DATA =~ /JFIF/) { # JPEG
- my $HeaderPoint = index($$DATA, "\xFF\xD8\xFF", 0);
- my $Point = $HeaderPoint + 2;
- while($Point < $DataLength) {
- my($Maker, $MakerType, $MakerLength) = unpack("C2n",substr($$DATA,$Point,4));
- if($Maker != 0xFF || $MakerType == 0xd9 || $MakerType == 0xda) {
- last;
- } elsif($MakerType >= 0xC0 && $MakerType <= 0xC3) {
- $Ext = 'jpg';
- ($ImageHeight, $ImageWidth) = unpack("n2", substr($$DATA, $Point + 5, 4));
- if($HeaderPoint > 0) {
- $$DATA = substr($$DATA, $HeaderPoint);
- $DataLength = length($$DATA);
- }
- last;
- } else {
- $Point += $MakerLength + 2;
- }
- }
- }
- }
-
- # audio
- if(!$Ext && ($UnknownType || $ContentType =~ /^audio\//i)) {
- # MIDI Audio
- if($$DATA =~ /^MThd/) {
- $Ext = 'mid';
- } elsif($$DATA =~ /^\x2esnd/) { # ULAW Audio
- $Ext = 'au';
- } elsif($$DATA =~ /^RIFF/ || $$DATA =~ /^ID3/ && $$DATA =~ /RIFF/) {
- my $HeaderPoint = index($$DATA, "RIFF", 0);
- $_ = substr($$DATA, $HeaderPoint + 8, 8);
- if(/^WAVEfmt $/) {
- # WAVE
- if(unpack("V",substr($$DATA, $HeaderPoint + 16, 4)) == 16) {
- $Ext = 'wav';
- } else { # RIFF WAVE MP3
- $Ext = 'mp3';
- }
- } elsif(/^RMIDdata$/) { # RIFF MIDI
- $Ext = 'rmi';
- } elsif(/^RMP3data$/) { # RIFF MP3
- $Ext = 'rmp';
- }
- if($ContentType =~ /^audio\//i) {
- $Infomation .= '(RIFF '. substr($$DATA, $HeaderPoint + 8, 4). ')';
- }
- }
- }
-
- # a binary file
- unless ($Ext) {
- # PDF image
- if($$DATA =~ /^\%PDF/) {
- # Picture size is not measured.
- $Ext = 'pdf';
- } elsif($$DATA =~ /^FWS/) { # Shockwave Flash
- $Ext = 'swf';
- } elsif($$DATA =~ /^RIFF/ || $$DATA =~ /^ID3/ && $$DATA =~ /RIFF/) {
- my $HeaderPoint = index($$DATA, "RIFF", 0);
- $_ = substr($$DATA,$HeaderPoint + 8, 8);
- # AVI
- if(/^AVI LIST$/) {
- $Ext = 'avi';
- }
- if($ContentType =~ /^video\//i) {
- $Infomation .= '(RIFF '. substr($$DATA, $HeaderPoint + 8, 4). ')';
- }
- } elsif($$DATA =~ /^PK/) { # ZIP Compress File
- $Ext = 'zip';
- } elsif($$DATA =~ /^MSCF/) { # CAB Compress File
- $Ext = 'cab';
- } elsif($$DATA =~ /^Rar\!/) { # RAR Compress File
- $Ext = 'rar';
- } elsif(substr($$DATA, 2, 5) =~ /^\-lh(\d+|d)\-$/) { # LHA Compress File
- $Infomation .= "(lh$1)";
- $Ext = 'lzh';
- } elsif(substr($$DATA, 325, 25) eq "Apple Video Media Handler" || substr($$DATA, 325, 30) eq "Apple \x83\x72\x83\x66\x83\x49\x81\x45\x83\x81\x83\x66\x83\x42\x83\x41\x83\x6E\x83\x93\x83\x68\x83\x89") {
- # QuickTime
- $Ext = 'mov';
- }
- }
-
- # Header analysis failure
- unless ($Ext) {
- # It will be followed if it applies for the MIME type from the browser.
- foreach (keys %UPLOAD_CONTENT_TYPE_LIST) {
- next unless ($_);
- if($ContentType =~ /^$_$/i) {
- $Ext = $UPLOAD_CONTENT_TYPE_LIST{$_};
- $ContentName = &CheckContentExt($Ext);
- if(
- grep {$_ eq $Ext;} (
- 'png',
- 'gif',
- 'jpg',
- 'xbm',
- 'tif',
- 'bmp',
- 'pdf',
- 'swf',
- 'mov',
- 'zip',
- 'cab',
- 'lzh',
- 'rar',
- 'mid',
- 'rmi',
- 'au',
- 'wav',
- 'avi',
- 'exe'
- )
- ) {
- $Infomation .= ' / Header analysis failure';
- }
- if($Ext ne $FileExt && &CheckContentExt($FileExt) eq $ContentName) {
- $Ext = $FileExt;
- }
- last;
- }
- }
- # a MIME type is unknown--It judges from an extension.
- unless ($Ext) {
- $ContentName = &CheckContentExt($FileExt);
- if($ContentName) {
- $Ext = $FileExt;
- $Infomation .= ' / MIME type is unknown('. $ContentType. ')';
- last;
- }
- }
- }
-
-# $ContentName = &CheckContentExt($Ext) unless($ContentName);
-# if($Ext && $ContentName) {
-# $ContentName .= $Infomation;
-# } else {
-# &upload_error(
-# 'Extension Error',
-# "$FileName A not corresponding extension ($Ext) The extension which can be responded ". join(',', sort values(%UPLOAD_EXT_LIST))
-# );
-# }
-
-# # SSI Tag Deletion
-# if($Ext =~ /.?html?/ && $$DATA =~ /<\!/) {
-# foreach (
-# 'config',
-# 'echo',
-# 'exec',
-# 'flastmod',
-# 'fsize',
-# 'include'
-# ) {
-# $$DATA =~ s/\#\s*$_/\&\#35\;$_/ig
-# }
-# }
-
- return (
- $FileName,
- $Ext,
- int($DataLength / 1024 + 1),
- $ImageWidth,
- $ImageHeight,
- $ContentName
- );
-}
-
-##############################################################################
-# Summary
-#
-# Extension discernment
-#
-# Parameters
-# Returns
-# Memo
-##############################################################################
-
-sub CheckContentExt
-{
-
- my($Ext) = @_;
- my $ContentName;
- foreach (keys %UPLOAD_EXT_LIST) {
- next unless ($_);
- if($_ && $Ext =~ /^$_$/) {
- $ContentName = $UPLOAD_EXT_LIST{$_};
- last;
- }
- }
- return $ContentName;
-
-}
-
-##############################################################################
-# Summary
-#
-# Form decode
-#
-# Parameters
-# Returns
-# Memo
-##############################################################################
-sub Encode
-{
-
- my($value,$Trans) = @_;
-
-# my $FormCode = &jcode::getcode($value) || $FormCodeDefault;
-# $FormCodeDefault ||= $FormCode;
-#
-# if($Trans && $TRANS_2BYTE_CODE) {
-# if($FormCode ne 'euc') {
-# &jcode::convert($value, 'euc', $FormCode);
-# }
-# &jcode::tr(
-# $value,
-# "\xA3\xB0-\xA3\xB9\xA3\xC1-\xA3\xDA\xA3\xE1-\xA3\xFA",
-# '0-9A-Za-z'
-# );
-# if($CHARCODE ne 'euc') {
-# &jcode::convert($value,$CHARCODE,'euc');
-# }
-# } else {
-# if($CHARCODE ne $FormCode) {
-# &jcode::convert($value,$CHARCODE,$FormCode);
-# }
-# }
-# if($CHARCODE eq 'euc') {
-# &jcode::h2z_euc($value);
-# } elsif($CHARCODE eq 'sjis') {
-# &jcode::h2z_sjis($value);
-# }
-
-}
-
-##############################################################################
-# Summary
-#
-# Error Msg
-#
-# Parameters
-# Returns
-# Memo
-##############################################################################
-
-sub upload_error
-{
-
- local($error_message) = $_[0];
- local($error_message2) = $_[1];
-
- print "Content-type: text/html\n\n";
- print<
-
-Error Message
-
-
-
- $error_message
-$error_message2
-
-
-
-EOF
- &rm_tmp_uploaded_files; # Image Temporary deletion
- exit;
-}
-
-##############################################################################
-# Summary
-#
-# Image Temporary deletion
-#
-# Parameters
-# Returns
-# Memo
-##############################################################################
-
-sub rm_tmp_uploaded_files
-{
- if($img_data_exists == 1){
- sleep 1;
- foreach $fname_list(@NEWFNAMES) {
- if(-e "$img_dir/$fname_list") {
- unlink("$img_dir/$fname_list");
- }
- }
- }
-
-}
-1;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/util.pl b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/util.pl
deleted file mode 100755
index 88974b0..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/perl/util.pl
+++ /dev/null
@@ -1,68 +0,0 @@
-#####
-# 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 ==
-#
-# This is the File Manager Connector for Perl.
-#####
-
-sub RemoveFromStart
-{
- local($sourceString, $charToRemove) = @_;
- $sPattern = '^' . $charToRemove . '+' ;
- $sourceString =~ s/^$charToRemove+//g;
- return $sourceString;
-}
-
-sub RemoveFromEnd
-{
- local($sourceString, $charToRemove) = @_;
- $sPattern = $charToRemove . '+$' ;
- $sourceString =~ s/$charToRemove+$//g;
- return $sourceString;
-}
-
-sub ConvertToXmlAttribute
-{
- local($value) = @_;
- return $value;
-# return utf8_encode(htmlspecialchars($value));
-
-}
-
-sub specialchar_cnv
-{
- local($ch) = @_;
-
- $ch =~ s/&/&/g; # &
- $ch =~ s/\"/"/g; #"
- $ch =~ s/\'/'/g; # '
- $ch =~ s/</g; # <
- $ch =~ s/>/>/g; # >
- return($ch);
-}
-
-sub JS_cnv
-{
- local($ch) = @_;
-
- $ch =~ s/\"/\\\"/g; #"
- return($ch);
-}
-
-1;
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/basexml.php b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/basexml.php
deleted file mode 100755
index 94c283a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/basexml.php
+++ /dev/null
@@ -1,93 +0,0 @@
-' ;
-
- // Create the main "Connector" node.
- echo '' ;
-
- // Add the current folder node.
- echo ' ' ;
-
- $GLOBALS['HeaderSent'] = true ;
-}
-
-function CreateXmlFooter()
-{
- echo ' ' ;
-}
-
-function SendError( $number, $text )
-{
- if ( isset( $GLOBALS['HeaderSent'] ) && $GLOBALS['HeaderSent'] )
- {
- SendErrorNode( $number, $text ) ;
- CreateXmlFooter() ;
- }
- else
- {
- SetXmlHeaders() ;
-
- // Create the XML document header
- echo '' ;
-
- echo '' ;
-
- SendErrorNode( $number, $text ) ;
-
- echo ' ' ;
- }
- exit ;
-}
-
-function SendErrorNode( $number, $text )
-{
- echo ' ' ;
-}
-?>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/commands.php b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/commands.php
deleted file mode 100755
index 57b0eda..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/commands.php
+++ /dev/null
@@ -1,273 +0,0 @@
-' ;
- }
-
- closedir( $oCurrentFolder ) ;
-
- // Open the "Folders" node.
- echo "" ;
-
- natcasesort( $aFolders ) ;
- foreach ( $aFolders as $sFolder )
- echo $sFolder ;
-
- // Close the "Folders" node.
- echo " " ;
-}
-
-function GetFoldersAndFiles( $resourceType, $currentFolder )
-{
- // Map the virtual path to the local server path.
- $sServerDir = ServerMapFolder( $resourceType, $currentFolder, 'GetFoldersAndFiles' ) ;
-
- // Arrays that will hold the folders and files names.
- $aFolders = array() ;
- $aFiles = array() ;
-
- $oCurrentFolder = opendir( $sServerDir ) ;
-
- while ( $sFile = readdir( $oCurrentFolder ) )
- {
- if ( $sFile != '.' && $sFile != '..' )
- {
- if ( is_dir( $sServerDir . $sFile ) )
- $aFolders[] = ' ' ;
- else
- {
- $iFileSize = @filesize( $sServerDir . $sFile ) ;
- if ( !$iFileSize ) {
- $iFileSize = 0 ;
- }
- if ( $iFileSize > 0 )
- {
- $iFileSize = round( $iFileSize / 1024 ) ;
- if ( $iFileSize < 1 ) $iFileSize = 1 ;
- }
-
- $aFiles[] = ' ' ;
- }
- }
- }
-
- // Send the folders
- natcasesort( $aFolders ) ;
- echo '' ;
-
- foreach ( $aFolders as $sFolder )
- echo $sFolder ;
-
- echo ' ' ;
-
- // Send the files
- natcasesort( $aFiles ) ;
- echo '' ;
-
- foreach ( $aFiles as $sFiles )
- echo $sFiles ;
-
- echo ' ' ;
-}
-
-function CreateFolder( $resourceType, $currentFolder )
-{
- if (!isset($_GET)) {
- global $_GET;
- }
- $sErrorNumber = '0' ;
- $sErrorMsg = '' ;
-
- if ( isset( $_GET['NewFolderName'] ) )
- {
- $sNewFolderName = $_GET['NewFolderName'] ;
- $sNewFolderName = SanitizeFolderName( $sNewFolderName ) ;
-
- if ( strpos( $sNewFolderName, '..' ) !== FALSE )
- $sErrorNumber = '102' ; // Invalid folder name.
- else
- {
- // Map the virtual path to the local server path of the current folder.
- $sServerDir = ServerMapFolder( $resourceType, $currentFolder, 'CreateFolder' ) ;
-
- if ( is_writable( $sServerDir ) )
- {
- $sServerDir .= $sNewFolderName ;
-
- $sErrorMsg = CreateServerFolder( $sServerDir ) ;
-
- switch ( $sErrorMsg )
- {
- case '' :
- $sErrorNumber = '0' ;
- break ;
- case 'Invalid argument' :
- case 'No such file or directory' :
- $sErrorNumber = '102' ; // Path too long.
- break ;
- default :
- $sErrorNumber = '110' ;
- break ;
- }
- }
- else
- $sErrorNumber = '103' ;
- }
- }
- else
- $sErrorNumber = '102' ;
-
- // Create the "Error" node.
- echo ' ' ;
-}
-
-function FileUpload( $resourceType, $currentFolder, $sCommand )
-{
- if (!isset($_FILES)) {
- global $_FILES;
- }
- $sErrorNumber = '0' ;
- $sFileName = '' ;
-
- if ( isset( $_FILES['NewFile'] ) && !is_null( $_FILES['NewFile']['tmp_name'] ) )
- {
- global $Config ;
-
- $oFile = $_FILES['NewFile'] ;
-
- // Map the virtual path to the local server path.
- $sServerDir = ServerMapFolder( $resourceType, $currentFolder, $sCommand ) ;
-
- // Get the uploaded file name.
- $sFileName = $oFile['name'] ;
- $sFileName = SanitizeFileName( $sFileName ) ;
-
- $sOriginalFileName = $sFileName ;
-
- // Get the extension.
- $sExtension = substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) ;
- $sExtension = strtolower( $sExtension ) ;
-
- if ( isset( $Config['SecureImageUploads'] ) )
- {
- if ( ( $isImageValid = IsImageValid( $oFile['tmp_name'], $sExtension ) ) === false )
- {
- $sErrorNumber = '202' ;
- }
- }
-
- if ( isset( $Config['HtmlExtensions'] ) )
- {
- if ( !IsHtmlExtension( $sExtension, $Config['HtmlExtensions'] ) &&
- ( $detectHtml = DetectHtml( $oFile['tmp_name'] ) ) === true )
- {
- $sErrorNumber = '202' ;
- }
- }
-
- // Check if it is an allowed extension.
- if ( !$sErrorNumber && IsAllowedExt( $sExtension, $resourceType ) )
- {
- $iCounter = 0 ;
-
- while ( true )
- {
- $sFilePath = $sServerDir . $sFileName ;
-
- if ( is_file( $sFilePath ) )
- {
- $iCounter++ ;
- $sFileName = RemoveExtension( $sOriginalFileName ) . '(' . $iCounter . ').' . $sExtension ;
- $sErrorNumber = '201' ;
- }
- else
- {
- move_uploaded_file( $oFile['tmp_name'], $sFilePath ) ;
-
- if ( is_file( $sFilePath ) )
- {
- if ( isset( $Config['ChmodOnUpload'] ) && !$Config['ChmodOnUpload'] )
- {
- break ;
- }
-
- $permissions = 0777;
-
- if ( isset( $Config['ChmodOnUpload'] ) && $Config['ChmodOnUpload'] )
- {
- $permissions = $Config['ChmodOnUpload'] ;
- }
-
- $oldumask = umask(0) ;
- chmod( $sFilePath, $permissions ) ;
- umask( $oldumask ) ;
- }
-
- break ;
- }
- }
-
- if ( file_exists( $sFilePath ) )
- {
- //previous checks failed, try once again
- if ( isset( $isImageValid ) && $isImageValid === -1 && IsImageValid( $sFilePath, $sExtension ) === false )
- {
- @unlink( $sFilePath ) ;
- $sErrorNumber = '202' ;
- }
- else if ( isset( $detectHtml ) && $detectHtml === -1 && DetectHtml( $sFilePath ) === true )
- {
- @unlink( $sFilePath ) ;
- $sErrorNumber = '202' ;
- }
- }
- }
- else
- $sErrorNumber = '202' ;
- }
- else
- $sErrorNumber = '202' ;
-
-
- $sFileUrl = CombinePaths( GetResourceTypePath( $resourceType, $sCommand ) , $currentFolder ) ;
- $sFileUrl = CombinePaths( $sFileUrl, $sFileName ) ;
-
- SendUploadResults( $sErrorNumber, $sFileUrl, $sFileName ) ;
-
- exit ;
-}
-?>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/config.php b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/config.php
deleted file mode 100755
index 216e277..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/config.php
+++ /dev/null
@@ -1,152 +0,0 @@
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/connector.php b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/connector.php
deleted file mode 100755
index 5a2a008..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/connector.php
+++ /dev/null
@@ -1,87 +0,0 @@
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/io.php b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/io.php
deleted file mode 100755
index 2f57d32..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/io.php
+++ /dev/null
@@ -1,295 +0,0 @@
- 0 )
- return $Config['QuickUploadAbsolutePath'][$resourceType] ;
-
- // Map the "UserFiles" path to a local directory.
- return Server_MapPath( $Config['QuickUploadPath'][$resourceType] ) ;
- }
- else
- {
- if ( strlen( $Config['FileTypesAbsolutePath'][$resourceType] ) > 0 )
- return $Config['FileTypesAbsolutePath'][$resourceType] ;
-
- // Map the "UserFiles" path to a local directory.
- return Server_MapPath( $Config['FileTypesPath'][$resourceType] ) ;
- }
-}
-
-function GetUrlFromPath( $resourceType, $folderPath, $sCommand )
-{
- return CombinePaths( GetResourceTypePath( $resourceType, $sCommand ), $folderPath ) ;
-}
-
-function RemoveExtension( $fileName )
-{
- return substr( $fileName, 0, strrpos( $fileName, '.' ) ) ;
-}
-
-function ServerMapFolder( $resourceType, $folderPath, $sCommand )
-{
- // Get the resource type directory.
- $sResourceTypePath = GetResourceTypeDirectory( $resourceType, $sCommand ) ;
-
- // Ensure that the directory exists.
- $sErrorMsg = CreateServerFolder( $sResourceTypePath ) ;
- if ( $sErrorMsg != '' )
- SendError( 1, "Error creating folder \"{$sResourceTypePath}\" ({$sErrorMsg})" ) ;
-
- // Return the resource type directory combined with the required path.
- return CombinePaths( $sResourceTypePath , $folderPath ) ;
-}
-
-function GetParentFolder( $folderPath )
-{
- $sPattern = "-[/\\\\][^/\\\\]+[/\\\\]?$-" ;
- return preg_replace( $sPattern, '', $folderPath ) ;
-}
-
-function CreateServerFolder( $folderPath, $lastFolder = null )
-{
- global $Config ;
- $sParent = GetParentFolder( $folderPath ) ;
-
- // Ensure the folder path has no double-slashes, or mkdir may fail on certain platforms
- while ( strpos($folderPath, '//') !== false )
- {
- $folderPath = str_replace( '//', '/', $folderPath ) ;
- }
-
- // Check if the parent exists, or create it.
- if ( !file_exists( $sParent ) )
- {
- //prevents agains infinite loop when we can't create root folder
- if ( !is_null( $lastFolder ) && $lastFolder === $sParent) {
- return "Can't create $folderPath directory" ;
- }
-
- $sErrorMsg = CreateServerFolder( $sParent, $folderPath ) ;
- if ( $sErrorMsg != '' )
- return $sErrorMsg ;
- }
-
- if ( !file_exists( $folderPath ) )
- {
- // Turn off all error reporting.
- error_reporting( 0 ) ;
-
- $php_errormsg = '' ;
- // Enable error tracking to catch the error.
- ini_set( 'track_errors', '1' ) ;
-
- if ( isset( $Config['ChmodOnFolderCreate'] ) && !$Config['ChmodOnFolderCreate'] )
- {
- mkdir( $folderPath ) ;
- }
- else
- {
- $permissions = 0777 ;
- if ( isset( $Config['ChmodOnFolderCreate'] ) )
- {
- $permissions = $Config['ChmodOnFolderCreate'] ;
- }
- // To create the folder with 0777 permissions, we need to set umask to zero.
- $oldumask = umask(0) ;
- mkdir( $folderPath, $permissions ) ;
- umask( $oldumask ) ;
- }
-
- $sErrorMsg = $php_errormsg ;
-
- // Restore the configurations.
- ini_restore( 'track_errors' ) ;
- ini_restore( 'error_reporting' ) ;
-
- return $sErrorMsg ;
- }
- else
- return '' ;
-}
-
-function GetRootPath()
-{
- if (!isset($_SERVER)) {
- global $_SERVER;
- }
- $sRealPath = realpath( './' ) ;
- // #2124 ensure that no slash is at the end
- $sRealPath = rtrim($sRealPath,"\\/");
-
- $sSelfPath = $_SERVER['PHP_SELF'] ;
- $sSelfPath = substr( $sSelfPath, 0, strrpos( $sSelfPath, '/' ) ) ;
-
- $sSelfPath = str_replace( '/', DIRECTORY_SEPARATOR, $sSelfPath ) ;
-
- $position = strpos( $sRealPath, $sSelfPath ) ;
-
- // This can check only that this script isn't run from a virtual dir
- // But it avoids the problems that arise if it isn't checked
- if ( $position === false || $position <> strlen( $sRealPath ) - strlen( $sSelfPath ) )
- SendError( 1, 'Sorry, can\'t map "UserFilesPath" to a physical path. You must set the "UserFilesAbsolutePath" value in "editor/filemanager/connectors/php/config.php".' ) ;
-
- return substr( $sRealPath, 0, $position ) ;
-}
-
-// Emulate the asp Server.mapPath function.
-// given an url path return the physical directory that it corresponds to
-function Server_MapPath( $path )
-{
- // This function is available only for Apache
- if ( function_exists( 'apache_lookup_uri' ) )
- {
- $info = apache_lookup_uri( $path ) ;
- return $info->filename . $info->path_info ;
- }
-
- // This isn't correct but for the moment there's no other solution
- // If this script is under a virtual directory or symlink it will detect the problem and stop
- return GetRootPath() . $path ;
-}
-
-function IsAllowedExt( $sExtension, $resourceType )
-{
- global $Config ;
- // Get the allowed and denied extensions arrays.
- $arAllowed = $Config['AllowedExtensions'][$resourceType] ;
- $arDenied = $Config['DeniedExtensions'][$resourceType] ;
-
- if ( count($arAllowed) > 0 && !in_array( $sExtension, $arAllowed ) )
- return false ;
-
- if ( count($arDenied) > 0 && in_array( $sExtension, $arDenied ) )
- return false ;
-
- return true ;
-}
-
-function IsAllowedType( $resourceType )
-{
- global $Config ;
- if ( !in_array( $resourceType, $Config['ConfigAllowedTypes'] ) )
- return false ;
-
- return true ;
-}
-
-function IsAllowedCommand( $sCommand )
-{
- global $Config ;
-
- if ( !in_array( $sCommand, $Config['ConfigAllowedCommands'] ) )
- return false ;
-
- return true ;
-}
-
-function GetCurrentFolder()
-{
- if (!isset($_GET)) {
- global $_GET;
- }
- $sCurrentFolder = isset( $_GET['CurrentFolder'] ) ? $_GET['CurrentFolder'] : '/' ;
-
- // Check the current folder syntax (must begin and start with a slash).
- if ( !preg_match( '|/$|', $sCurrentFolder ) )
- $sCurrentFolder .= '/' ;
- if ( strpos( $sCurrentFolder, '/' ) !== 0 )
- $sCurrentFolder = '/' . $sCurrentFolder ;
-
- // Ensure the folder path has no double-slashes
- while ( strpos ($sCurrentFolder, '//') !== false ) {
- $sCurrentFolder = str_replace ('//', '/', $sCurrentFolder) ;
- }
-
- // Check for invalid folder paths (..)
- if ( strpos( $sCurrentFolder, '..' ) || strpos( $sCurrentFolder, "\\" ))
- SendError( 102, '' ) ;
-
- return $sCurrentFolder ;
-}
-
-// Do a cleanup of the folder name to avoid possible problems
-function SanitizeFolderName( $sNewFolderName )
-{
- $sNewFolderName = stripslashes( $sNewFolderName ) ;
-
- // Remove . \ / | : ? * " < >
- $sNewFolderName = preg_replace( '/\\.|\\\\|\\/|\\||\\:|\\?|\\*|"|<|>|[[:cntrl:]]/', '_', $sNewFolderName ) ;
-
- return $sNewFolderName ;
-}
-
-// Do a cleanup of the file name to avoid possible problems
-function SanitizeFileName( $sNewFileName )
-{
- global $Config ;
-
- $sNewFileName = stripslashes( $sNewFileName ) ;
-
- // Replace dots in the name with underscores (only one dot can be there... security issue).
- if ( $Config['ForceSingleExtension'] )
- $sNewFileName = preg_replace( '/\\.(?![^.]*$)/', '_', $sNewFileName ) ;
-
- // Remove \ / | : ? * " < >
- $sNewFileName = preg_replace( '/\\\\|\\/|\\||\\:|\\?|\\*|"|<|>|[[:cntrl:]]/', '_', $sNewFileName ) ;
-
- return $sNewFileName ;
-}
-
-// This is the function that sends the results of the uploading process.
-function SendUploadResults( $errorNumber, $fileUrl = '', $fileName = '', $customMsg = '' )
-{
- // Minified version of the document.domain automatic fix script (#1919).
- // The original script can be found at _dev/domain_fix_template.js
- echo <<
-(function(){var d=document.domain;while (true){try{var A=window.parent.document.domain;break;}catch(e) {};d=d.replace(/.*?(?:\.|$)/,'');if (d.length==0) break;try{document.domain=d;}catch (e){break;}}})();
-EOF;
-
- $rpl = array( '\\' => '\\\\', '"' => '\\"' ) ;
- echo 'window.parent.OnUploadCompleted(' . $errorNumber . ',"' . strtr( $fileUrl, $rpl ) . '","' . strtr( $fileName, $rpl ) . '", "' . strtr( $customMsg, $rpl ) . '") ;' ;
- echo '' ;
- exit ;
-}
-
-?>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/phpcompat.php b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/phpcompat.php
deleted file mode 100755
index 6fc89e5..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/phpcompat.php
+++ /dev/null
@@ -1,17 +0,0 @@
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/util.php b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/util.php
deleted file mode 100755
index c41c765..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/php/util.php
+++ /dev/null
@@ -1,220 +0,0 @@
- $val )
- {
- $lcaseHtmlExtensions[$key] = strtolower( $val ) ;
- }
- return in_array( $ext, $lcaseHtmlExtensions ) ;
-}
-
-/**
- * Detect HTML in the first KB to prevent against potential security issue with
- * IE/Safari/Opera file type auto detection bug.
- * Returns true if file contain insecure HTML code at the beginning.
- *
- * @param string $filePath absolute path to file
- * @return boolean
- */
-function DetectHtml( $filePath )
-{
- $fp = @fopen( $filePath, 'rb' ) ;
-
- //open_basedir restriction, see #1906
- if ( $fp === false || !flock( $fp, LOCK_SH ) )
- {
- return -1 ;
- }
-
- $chunk = fread( $fp, 1024 ) ;
- flock( $fp, LOCK_UN ) ;
- fclose( $fp ) ;
-
- $chunk = strtolower( $chunk ) ;
-
- if (!$chunk)
- {
- return false ;
- }
-
- $chunk = trim( $chunk ) ;
-
- if ( preg_match( "/= 4.0.7
- if ( function_exists( 'version_compare' ) ) {
- $sCurrentVersion = phpversion();
- if ( version_compare( $sCurrentVersion, "4.2.0" ) >= 0 ) {
- $imageCheckExtensions[] = "tiff";
- $imageCheckExtensions[] = "tif";
- }
- if ( version_compare( $sCurrentVersion, "4.3.0" ) >= 0 ) {
- $imageCheckExtensions[] = "swc";
- }
- if ( version_compare( $sCurrentVersion, "4.3.2" ) >= 0 ) {
- $imageCheckExtensions[] = "jpc";
- $imageCheckExtensions[] = "jp2";
- $imageCheckExtensions[] = "jpx";
- $imageCheckExtensions[] = "jb2";
- $imageCheckExtensions[] = "xbm";
- $imageCheckExtensions[] = "wbmp";
- }
- }
-
- if ( !in_array( $extension, $imageCheckExtensions ) ) {
- return true;
- }
-
- if ( @getimagesize( $filePath ) === false ) {
- return false ;
- }
-
- return true;
-}
-
-?>
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/config.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/config.py
deleted file mode 100755
index 636ba4f..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/config.py
+++ /dev/null
@@ -1,146 +0,0 @@
-#!/usr/bin/env python
-"""
- * 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 ==
- *
- * Configuration file for the File Manager Connector for Python
-"""
-
-# INSTALLATION NOTE: You must set up your server environment accordingly to run
-# python scripts. This connector requires Python 2.4 or greater.
-#
-# Supported operation modes:
-# * WSGI (recommended): You'll need apache + mod_python + modpython_gateway
-# or any web server capable of the WSGI python standard
-# * Plain Old CGI: Any server capable of running standard python scripts
-# (although mod_python is recommended for performance)
-# This was the previous connector version operation mode
-#
-# If you're using Apache web server, replace the htaccess.txt to to .htaccess,
-# and set the proper options and paths.
-# For WSGI and mod_python, you may need to download modpython_gateway from:
-# http://projects.amor.org/misc/svn/modpython_gateway.py and copy it in this
-# directory.
-
-
-# SECURITY: You must explicitly enable this "connector". (Set it to "True").
-# WARNING: don't just set "ConfigIsEnabled = True", you must be sure that only
-# authenticated users can access this file or use some kind of session checking.
-Enabled = False
-
-# Path to user files relative to the document root.
-UserFilesPath = '/userfiles/'
-
-# Fill the following value it you prefer to specify the absolute path for the
-# user files directory. Useful if you are using a virtual directory, symbolic
-# link or alias. Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
-# Attention: The above 'UserFilesPath' must point to the same directory.
-# WARNING: GetRootPath may not work in virtual or mod_python configurations, and
-# may not be thread safe. Use this configuration parameter instead.
-UserFilesAbsolutePath = ''
-
-# Due to security issues with Apache modules, it is recommended to leave the
-# following setting enabled.
-ForceSingleExtension = True
-
-# What the user can do with this connector
-ConfigAllowedCommands = [ 'QuickUpload', 'FileUpload', 'GetFolders', 'GetFoldersAndFiles', 'CreateFolder' ]
-
-# Allowed Resource Types
-ConfigAllowedTypes = ['File', 'Image', 'Flash', 'Media']
-
-# After file is uploaded, sometimes it is required to change its permissions
-# so that it was possible to access it at the later time.
-# If possible, it is recommended to set more restrictive permissions, like 0755.
-# Set to 0 to disable this feature.
-# Note: not needed on Windows-based servers.
-ChmodOnUpload = 0755
-
-# See comments above.
-# Used when creating folders that does not exist.
-ChmodOnFolderCreate = 0755
-
-# Do not touch this 3 lines, see "Configuration settings for each Resource Type"
-AllowedExtensions = {}; DeniedExtensions = {};
-FileTypesPath = {}; FileTypesAbsolutePath = {};
-QuickUploadPath = {}; QuickUploadAbsolutePath = {};
-
-# Configuration settings for each Resource Type
-#
-# - AllowedExtensions: the possible extensions that can be allowed.
-# If it is empty then any file type can be uploaded.
-# - DeniedExtensions: The extensions that won't be allowed.
-# If it is empty then no restrictions are done here.
-#
-# For a file to be uploaded it has to fulfill both the AllowedExtensions
-# and DeniedExtensions (that's it: not being denied) conditions.
-#
-# - FileTypesPath: the virtual folder relative to the document root where
-# these resources will be located.
-# Attention: It must start and end with a slash: '/'
-#
-# - FileTypesAbsolutePath: the physical path to the above folder. It must be
-# an absolute path.
-# If it's an empty string then it will be autocalculated.
-# Useful if you are using a virtual directory, symbolic link or alias.
-# Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
-# Attention: The above 'FileTypesPath' must point to the same directory.
-# Attention: It must end with a slash: '/'
-#
-#
-# - QuickUploadPath: the virtual folder relative to the document root where
-# these resources will be uploaded using the Upload tab in the resources
-# dialogs.
-# Attention: It must start and end with a slash: '/'
-#
-# - QuickUploadAbsolutePath: the physical path to the above folder. It must be
-# an absolute path.
-# If it's an empty string then it will be autocalculated.
-# Useful if you are using a virtual directory, symbolic link or alias.
-# Examples: 'C:\\MySite\\userfiles\\' or '/root/mysite/userfiles/'.
-# Attention: The above 'QuickUploadPath' must point to the same directory.
-# Attention: It must end with a slash: '/'
-
-AllowedExtensions['File'] = ['7z','aiff','asf','avi','bmp','csv','doc','fla','flv','gif','gz','gzip','jpeg','jpg','mid','mov','mp3','mp4','mpc','mpeg','mpg','ods','odt','pdf','png','ppt','pxd','qt','ram','rar','rm','rmi','rmvb','rtf','sdc','sitd','swf','sxc','sxw','tar','tgz','tif','tiff','txt','vsd','wav','wma','wmv','xls','xml','zip']
-DeniedExtensions['File'] = []
-FileTypesPath['File'] = UserFilesPath + 'file/'
-FileTypesAbsolutePath['File'] = (not UserFilesAbsolutePath == '') and (UserFilesAbsolutePath + 'file/') or ''
-QuickUploadPath['File'] = FileTypesPath['File']
-QuickUploadAbsolutePath['File'] = FileTypesAbsolutePath['File']
-
-AllowedExtensions['Image'] = ['bmp','gif','jpeg','jpg','png']
-DeniedExtensions['Image'] = []
-FileTypesPath['Image'] = UserFilesPath + 'image/'
-FileTypesAbsolutePath['Image'] = (not UserFilesAbsolutePath == '') and UserFilesAbsolutePath + 'image/' or ''
-QuickUploadPath['Image'] = FileTypesPath['Image']
-QuickUploadAbsolutePath['Image']= FileTypesAbsolutePath['Image']
-
-AllowedExtensions['Flash'] = ['swf','flv']
-DeniedExtensions['Flash'] = []
-FileTypesPath['Flash'] = UserFilesPath + 'flash/'
-FileTypesAbsolutePath['Flash'] = ( not UserFilesAbsolutePath == '') and UserFilesAbsolutePath + 'flash/' or ''
-QuickUploadPath['Flash'] = FileTypesPath['Flash']
-QuickUploadAbsolutePath['Flash']= FileTypesAbsolutePath['Flash']
-
-AllowedExtensions['Media'] = ['aiff','asf','avi','bmp','fla', 'flv','gif','jpeg','jpg','mid','mov','mp3','mp4','mpc','mpeg','mpg','png','qt','ram','rm','rmi','rmvb','swf','tif','tiff','wav','wma','wmv']
-DeniedExtensions['Media'] = []
-FileTypesPath['Media'] = UserFilesPath + 'media/'
-FileTypesAbsolutePath['Media'] = ( not UserFilesAbsolutePath == '') and UserFilesAbsolutePath + 'media/' or ''
-QuickUploadPath['Media'] = FileTypesPath['Media']
-QuickUploadAbsolutePath['Media']= FileTypesAbsolutePath['Media']
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/connector.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/connector.py
deleted file mode 100755
index 4244b5b..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/connector.py
+++ /dev/null
@@ -1,118 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-Connector for Python (CGI and WSGI).
-
-See config.py for configuration settings
-
-"""
-import os
-
-from fckutil import *
-from fckcommands import * # default command's implementation
-from fckoutput import * # base http, xml and html output mixins
-from fckconnector import FCKeditorConnectorBase # import base connector
-import config as Config
-
-class FCKeditorConnector( FCKeditorConnectorBase,
- GetFoldersCommandMixin,
- GetFoldersAndFilesCommandMixin,
- CreateFolderCommandMixin,
- UploadFileCommandMixin,
- BaseHttpMixin, BaseXmlMixin, BaseHtmlMixin ):
- "The Standard connector class."
- def doResponse(self):
- "Main function. Process the request, set headers and return a string as response."
- s = ""
- # Check if this connector is disabled
- if not(Config.Enabled):
- return self.sendError(1, "This connector is disabled. Please check the connector configurations in \"editor/filemanager/connectors/py/config.py\" and try again.")
- # Make sure we have valid inputs
- for key in ("Command","Type","CurrentFolder"):
- if not self.request.has_key (key):
- return
- # Get command, resource type and current folder
- command = self.request.get("Command")
- resourceType = self.request.get("Type")
- currentFolder = getCurrentFolder(self.request.get("CurrentFolder"))
- # Check for invalid paths
- if currentFolder is None:
- return self.sendError(102, "")
-
- # Check if it is an allowed command
- if ( not command in Config.ConfigAllowedCommands ):
- return self.sendError( 1, 'The %s command isn\'t allowed' % command )
-
- if ( not resourceType in Config.ConfigAllowedTypes ):
- return self.sendError( 1, 'Invalid type specified' )
-
- # Setup paths
- if command == "QuickUpload":
- self.userFilesFolder = Config.QuickUploadAbsolutePath[resourceType]
- self.webUserFilesFolder = Config.QuickUploadPath[resourceType]
- else:
- self.userFilesFolder = Config.FileTypesAbsolutePath[resourceType]
- self.webUserFilesFolder = Config.FileTypesPath[resourceType]
-
- if not self.userFilesFolder: # no absolute path given (dangerous...)
- self.userFilesFolder = mapServerPath(self.environ,
- self.webUserFilesFolder)
- # Ensure that the directory exists.
- if not os.path.exists(self.userFilesFolder):
- try:
- self.createServerFoldercreateServerFolder( self.userFilesFolder )
- except:
- return self.sendError(1, "This connector couldn\'t access to local user\'s files directories. Please check the UserFilesAbsolutePath in \"editor/filemanager/connectors/py/config.py\" and try again. ")
-
- # File upload doesn't have to return XML, so intercept here
- if (command == "FileUpload"):
- return self.uploadFile(resourceType, currentFolder)
-
- # Create Url
- url = combinePaths( self.webUserFilesFolder, currentFolder )
-
- # Begin XML
- s += self.createXmlHeader(command, resourceType, currentFolder, url)
- # Execute the command
- selector = {"GetFolders": self.getFolders,
- "GetFoldersAndFiles": self.getFoldersAndFiles,
- "CreateFolder": self.createFolder,
- }
- s += selector[command](resourceType, currentFolder)
- s += self.createXmlFooter()
- return s
-
-# Running from command line (plain old CGI)
-if __name__ == '__main__':
- try:
- # Create a Connector Instance
- conn = FCKeditorConnector()
- data = conn.doResponse()
- for header in conn.headers:
- print '%s: %s' % header
- print
- print data
- except:
- print "Content-Type: text/plain"
- print
- import cgi
- cgi.print_exception()
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckcommands.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckcommands.py
deleted file mode 100755
index 2d24923..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckcommands.py
+++ /dev/null
@@ -1,198 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-Connector for Python (CGI and WSGI).
-
-"""
-
-import os
-try: # Windows needs stdio set for binary mode for file upload to work.
- import msvcrt
- msvcrt.setmode (0, os.O_BINARY) # stdin = 0
- msvcrt.setmode (1, os.O_BINARY) # stdout = 1
-except ImportError:
- pass
-
-from fckutil import *
-from fckoutput import *
-import config as Config
-
-class GetFoldersCommandMixin (object):
- def getFolders(self, resourceType, currentFolder):
- """
- Purpose: command to recieve a list of folders
- """
- # Map the virtual path to our local server
- serverPath = mapServerFolder(self.userFilesFolder,currentFolder)
- s = """""" # Open the folders node
- for someObject in os.listdir(serverPath):
- someObjectPath = mapServerFolder(serverPath, someObject)
- if os.path.isdir(someObjectPath):
- s += """ """ % (
- convertToXmlAttribute(someObject)
- )
- s += """ """ # Close the folders node
- return s
-
-class GetFoldersAndFilesCommandMixin (object):
- def getFoldersAndFiles(self, resourceType, currentFolder):
- """
- Purpose: command to recieve a list of folders and files
- """
- # Map the virtual path to our local server
- serverPath = mapServerFolder(self.userFilesFolder,currentFolder)
- # Open the folders / files node
- folders = """"""
- files = """"""
- for someObject in os.listdir(serverPath):
- someObjectPath = mapServerFolder(serverPath, someObject)
- if os.path.isdir(someObjectPath):
- folders += """ """ % (
- convertToXmlAttribute(someObject)
- )
- elif os.path.isfile(someObjectPath):
- size = os.path.getsize(someObjectPath)
- files += """ """ % (
- convertToXmlAttribute(someObject),
- os.path.getsize(someObjectPath)
- )
- # Close the folders / files node
- folders += """ """
- files += """"""
- return folders + files
-
-class CreateFolderCommandMixin (object):
- def createFolder(self, resourceType, currentFolder):
- """
- Purpose: command to create a new folder
- """
- errorNo = 0; errorMsg ='';
- if self.request.has_key("NewFolderName"):
- newFolder = self.request.get("NewFolderName", None)
- newFolder = sanitizeFolderName (newFolder)
- try:
- newFolderPath = mapServerFolder(self.userFilesFolder, combinePaths(currentFolder, newFolder))
- self.createServerFolder(newFolderPath)
- except Exception, e:
- errorMsg = str(e).decode('iso-8859-1').encode('utf-8') # warning with encodigns!!!
- if hasattr(e,'errno'):
- if e.errno==17: #file already exists
- errorNo=0
- elif e.errno==13: # permission denied
- errorNo = 103
- elif e.errno==36 or e.errno==2 or e.errno==22: # filename too long / no such file / invalid name
- errorNo = 102
- else:
- errorNo = 110
- else:
- errorNo = 102
- return self.sendErrorNode ( errorNo, errorMsg )
-
- def createServerFolder(self, folderPath):
- "Purpose: physically creates a folder on the server"
- # No need to check if the parent exists, just create all hierachy
-
- try:
- permissions = Config.ChmodOnFolderCreate
- if not permissions:
- os.makedirs(folderPath)
- except AttributeError: #ChmodOnFolderCreate undefined
- permissions = 0755
-
- if permissions:
- oldumask = os.umask(0)
- os.makedirs(folderPath,mode=0755)
- os.umask( oldumask )
-
-class UploadFileCommandMixin (object):
- def uploadFile(self, resourceType, currentFolder):
- """
- Purpose: command to upload files to server (same as FileUpload)
- """
- errorNo = 0
- if self.request.has_key("NewFile"):
- # newFile has all the contents we need
- newFile = self.request.get("NewFile", "")
- # Get the file name
- newFileName = newFile.filename
- newFileName = sanitizeFileName( newFileName )
- newFileNameOnly = removeExtension(newFileName)
- newFileExtension = getExtension(newFileName).lower()
- allowedExtensions = Config.AllowedExtensions[resourceType]
- deniedExtensions = Config.DeniedExtensions[resourceType]
-
- if (allowedExtensions):
- # Check for allowed
- isAllowed = False
- if (newFileExtension in allowedExtensions):
- isAllowed = True
- elif (deniedExtensions):
- # Check for denied
- isAllowed = True
- if (newFileExtension in deniedExtensions):
- isAllowed = False
- else:
- # No extension limitations
- isAllowed = True
-
- if (isAllowed):
- # Upload to operating system
- # Map the virtual path to the local server path
- currentFolderPath = mapServerFolder(self.userFilesFolder, currentFolder)
- i = 0
- while (True):
- newFilePath = os.path.join (currentFolderPath,newFileName)
- if os.path.exists(newFilePath):
- i += 1
- newFileName = "%s(%04d).%s" % (
- newFileNameOnly, i, newFileExtension
- )
- errorNo= 201 # file renamed
- else:
- # Read file contents and write to the desired path (similar to php's move_uploaded_file)
- fout = file(newFilePath, 'wb')
- while (True):
- chunk = newFile.file.read(100000)
- if not chunk: break
- fout.write (chunk)
- fout.close()
-
- if os.path.exists ( newFilePath ):
- doChmod = False
- try:
- doChmod = Config.ChmodOnUpload
- permissions = Config.ChmodOnUpload
- except AttributeError: #ChmodOnUpload undefined
- doChmod = True
- permissions = 0755
- if ( doChmod ):
- oldumask = os.umask(0)
- os.chmod( newFilePath, permissions )
- os.umask( oldumask )
-
- newFileUrl = self.webUserFilesFolder + currentFolder + newFileName
-
- return self.sendUploadResults( errorNo , newFileUrl, newFileName )
- else:
- return self.sendUploadResults( errorNo = 203, customMsg = "Extension not allowed" )
- else:
- return self.sendUploadResults( errorNo = 202, customMsg = "No File" )
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckconnector.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckconnector.py
deleted file mode 100755
index edc5319..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckconnector.py
+++ /dev/null
@@ -1,90 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-Base Connector for Python (CGI and WSGI).
-
-See config.py for configuration settings
-
-"""
-import cgi, os
-
-from fckutil import *
-from fckcommands import * # default command's implementation
-from fckoutput import * # base http, xml and html output mixins
-import config as Config
-
-class FCKeditorConnectorBase( object ):
- "The base connector class. Subclass it to extend functionality (see Zope example)"
-
- def __init__(self, environ=None):
- "Constructor: Here you should parse request fields, initialize variables, etc."
- self.request = FCKeditorRequest(environ) # Parse request
- self.headers = [] # Clean Headers
- if environ:
- self.environ = environ
- else:
- self.environ = os.environ
-
- # local functions
-
- def setHeader(self, key, value):
- self.headers.append ((key, value))
- return
-
-class FCKeditorRequest(object):
- "A wrapper around the request object"
- def __init__(self, environ):
- if environ: # WSGI
- self.request = cgi.FieldStorage(fp=environ['wsgi.input'],
- environ=environ,
- keep_blank_values=1)
- self.environ = environ
- else: # plain old cgi
- self.environ = os.environ
- self.request = cgi.FieldStorage()
- if 'REQUEST_METHOD' in self.environ and 'QUERY_STRING' in self.environ:
- if self.environ['REQUEST_METHOD'].upper()=='POST':
- # we are in a POST, but GET query_string exists
- # cgi parses by default POST data, so parse GET QUERY_STRING too
- self.get_request = cgi.FieldStorage(fp=None,
- environ={
- 'REQUEST_METHOD':'GET',
- 'QUERY_STRING':self.environ['QUERY_STRING'],
- },
- )
- else:
- self.get_request={}
-
- def has_key(self, key):
- return self.request.has_key(key) or self.get_request.has_key(key)
-
- def get(self, key, default=None):
- if key in self.request.keys():
- field = self.request[key]
- elif key in self.get_request.keys():
- field = self.get_request[key]
- else:
- return default
- if hasattr(field,"filename") and field.filename: #file upload, do not convert return value
- return field
- else:
- return field.value
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckoutput.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckoutput.py
deleted file mode 100755
index cb7de3f..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckoutput.py
+++ /dev/null
@@ -1,116 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-Connector for Python (CGI and WSGI).
-
-"""
-
-from time import gmtime, strftime
-import string
-
-def escape(text, replace=string.replace):
- """
- Converts the special characters '<', '>', and '&'.
-
- RFC 1866 specifies that these characters be represented
- in HTML as < > and & respectively. In Python
- 1.5 we use the new string.replace() function for speed.
- """
- text = replace(text, '&', '&') # must be done 1st
- text = replace(text, '<', '<')
- text = replace(text, '>', '>')
- text = replace(text, '"', '"')
- return text
-
-def convertToXmlAttribute(value):
- if (value is None):
- value = ""
- return escape(value)
-
-class BaseHttpMixin(object):
- def setHttpHeaders(self, content_type='text/xml'):
- "Purpose: to prepare the headers for the xml to return"
- # Prevent the browser from caching the result.
- # Date in the past
- self.setHeader('Expires','Mon, 26 Jul 1997 05:00:00 GMT')
- # always modified
- self.setHeader('Last-Modified',strftime("%a, %d %b %Y %H:%M:%S GMT", gmtime()))
- # HTTP/1.1
- self.setHeader('Cache-Control','no-store, no-cache, must-revalidate')
- self.setHeader('Cache-Control','post-check=0, pre-check=0')
- # HTTP/1.0
- self.setHeader('Pragma','no-cache')
-
- # Set the response format.
- self.setHeader( 'Content-Type', content_type + '; charset=utf-8' )
- return
-
-class BaseXmlMixin(object):
- def createXmlHeader(self, command, resourceType, currentFolder, url):
- "Purpose: returns the xml header"
- self.setHttpHeaders()
- # Create the XML document header
- s = """"""
- # Create the main connector node
- s += """""" % (
- command,
- resourceType
- )
- # Add the current folder node
- s += """ """ % (
- convertToXmlAttribute(currentFolder),
- convertToXmlAttribute(url),
- )
- return s
-
- def createXmlFooter(self):
- "Purpose: returns the xml footer"
- return """ """
-
- def sendError(self, number, text):
- "Purpose: in the event of an error, return an xml based error"
- self.setHttpHeaders()
- return ("""""" +
- """""" +
- self.sendErrorNode (number, text) +
- """ """ )
-
- def sendErrorNode(self, number, text):
- return """ """ % (number, convertToXmlAttribute(text))
-
-class BaseHtmlMixin(object):
- def sendUploadResults( self, errorNo = 0, fileUrl = '', fileName = '', customMsg = '' ):
- self.setHttpHeaders("text/html")
- "This is the function that sends the results of the uploading process"
-
- "Minified version of the document.domain automatic fix script (#1919)."
- "The original script can be found at _dev/domain_fix_template.js"
- return """""" % {
- 'errorNumber': errorNo,
- 'fileUrl': fileUrl.replace ('"', '\\"'),
- 'fileName': fileName.replace ( '"', '\\"' ) ,
- 'customMsg': customMsg.replace ( '"', '\\"' ),
- }
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckutil.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckutil.py
deleted file mode 100755
index da76199..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/fckutil.py
+++ /dev/null
@@ -1,126 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-Utility functions for the File Manager Connector for Python
-
-"""
-
-import string, re
-import os
-import config as Config
-
-# Generic manipulation functions
-
-def removeExtension(fileName):
- index = fileName.rindex(".")
- newFileName = fileName[0:index]
- return newFileName
-
-def getExtension(fileName):
- index = fileName.rindex(".") + 1
- fileExtension = fileName[index:]
- return fileExtension
-
-def removeFromStart(string, char):
- return string.lstrip(char)
-
-def removeFromEnd(string, char):
- return string.rstrip(char)
-
-# Path functions
-
-def combinePaths( basePath, folder ):
- return removeFromEnd( basePath, '/' ) + '/' + removeFromStart( folder, '/' )
-
-def getFileName(filename):
- " Purpose: helper function to extrapolate the filename "
- for splitChar in ["/", "\\"]:
- array = filename.split(splitChar)
- if (len(array) > 1):
- filename = array[-1]
- return filename
-
-def sanitizeFolderName( newFolderName ):
- "Do a cleanup of the folder name to avoid possible problems"
- # Remove . \ / | : ? * " < > and control characters
- return re.sub( '(?u)\\.|\\\\|\\/|\\||\\:|\\?|\\*|"|<|>|[^\u0000-\u001f\u007f-\u009f]', '_', newFolderName )
-
-def sanitizeFileName( newFileName ):
- "Do a cleanup of the file name to avoid possible problems"
- # Replace dots in the name with underscores (only one dot can be there... security issue).
- if ( Config.ForceSingleExtension ): # remove dots
- newFileName = re.sub ( '/\\.(?![^.]*$)/', '_', newFileName ) ;
- newFileName = newFileName.replace('\\','/') # convert windows to unix path
- newFileName = os.path.basename (newFileName) # strip directories
- # Remove \ / | : ? *
- return re.sub ( '(?u)/\\\\|\\/|\\||\\:|\\?|\\*|"|<|>|[^\u0000-\u001f\u007f-\u009f]/', '_', newFileName )
-
-def getCurrentFolder(currentFolder):
- if not currentFolder:
- currentFolder = '/'
-
- # Check the current folder syntax (must begin and end with a slash).
- if (currentFolder[-1] <> "/"):
- currentFolder += "/"
- if (currentFolder[0] <> "/"):
- currentFolder = "/" + currentFolder
-
- # Ensure the folder path has no double-slashes
- while '//' in currentFolder:
- currentFolder = currentFolder.replace('//','/')
-
- # Check for invalid folder paths (..)
- if '..' in currentFolder or '\\' in currentFolder:
- return None
-
- return currentFolder
-
-def mapServerPath( environ, url):
- " Emulate the asp Server.mapPath function. Given an url path return the physical directory that it corresponds to "
- # This isn't correct but for the moment there's no other solution
- # If this script is under a virtual directory or symlink it will detect the problem and stop
- return combinePaths( getRootPath(environ), url )
-
-def mapServerFolder(resourceTypePath, folderPath):
- return combinePaths ( resourceTypePath , folderPath )
-
-def getRootPath(environ):
- "Purpose: returns the root path on the server"
- # WARNING: this may not be thread safe, and doesn't work w/ VirtualServer/mod_python
- # Use Config.UserFilesAbsolutePath instead
-
- if environ.has_key('DOCUMENT_ROOT'):
- return environ['DOCUMENT_ROOT']
- else:
- realPath = os.path.realpath( './' )
- selfPath = environ['SCRIPT_FILENAME']
- selfPath = selfPath [ : selfPath.rfind( '/' ) ]
- selfPath = selfPath.replace( '/', os.path.sep)
-
- position = realPath.find(selfPath)
-
- # This can check only that this script isn't run from a virtual dir
- # But it avoids the problems that arise if it isn't checked
- raise realPath
- if ( position < 0 or position <> len(realPath) - len(selfPath) or realPath[ : position ]==''):
- raise Exception('Sorry, can\'t map "UserFilesPath" to a physical path. You must set the "UserFilesAbsolutePath" value in "editor/filemanager/connectors/py/config.py".')
- return realPath[ : position ]
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/htaccess.txt b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/htaccess.txt
deleted file mode 100755
index 8237419..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/htaccess.txt
+++ /dev/null
@@ -1,23 +0,0 @@
-# replace the name of this file to .htaccess (if using apache),
-# and set the proper options and paths according your enviroment
-
-Allow from all
-
-# If using mod_python uncomment this:
-PythonPath "[r'C:\Archivos de programa\Apache Software Foundation\Apache2.2\htdocs\fckeditor\editor\filemanager\connectors\py'] + sys.path"
-
-
-# Recomended: WSGI application running with mod_python and modpython_gateway
-SetHandler python-program
-PythonHandler modpython_gateway::handler
-PythonOption wsgi.application wsgi::App
-
-
-# Emulated CGI with mod_python and cgihandler
-#AddHandler mod_python .py
-#PythonHandler mod_python.cgihandler
-
-
-# Plain old CGI
-#Options +ExecCGI
-#AddHandler cgi-script py
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/upload.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/upload.py
deleted file mode 100755
index 3067297..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/upload.py
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-This is the "File Uploader" for Python
-
-"""
-import os
-
-from fckutil import *
-from fckcommands import * # default command's implementation
-from fckconnector import FCKeditorConnectorBase # import base connector
-import config as Config
-
-class FCKeditorQuickUpload( FCKeditorConnectorBase,
- UploadFileCommandMixin,
- BaseHttpMixin, BaseHtmlMixin):
- def doResponse(self):
- "Main function. Process the request, set headers and return a string as response."
- # Check if this connector is disabled
- if not(Config.Enabled):
- return self.sendUploadResults(1, "This file uploader is disabled. Please check the \"editor/filemanager/connectors/py/config.py\"")
- command = 'QuickUpload'
- # The file type (from the QueryString, by default 'File').
- resourceType = self.request.get('Type','File')
- currentFolder = getCurrentFolder(self.request.get("CurrentFolder",""))
- # Check for invalid paths
- if currentFolder is None:
- return self.sendUploadResults(102, '', '', "")
-
- # Check if it is an allowed command
- if ( not command in Config.ConfigAllowedCommands ):
- return self.sendUploadResults( 1, '', '', 'The %s command isn\'t allowed' % command )
-
- if ( not resourceType in Config.ConfigAllowedTypes ):
- return self.sendUploadResults( 1, '', '', 'Invalid type specified' )
-
- # Setup paths
- self.userFilesFolder = Config.QuickUploadAbsolutePath[resourceType]
- self.webUserFilesFolder = Config.QuickUploadPath[resourceType]
- if not self.userFilesFolder: # no absolute path given (dangerous...)
- self.userFilesFolder = mapServerPath(self.environ,
- self.webUserFilesFolder)
-
- # Ensure that the directory exists.
- if not os.path.exists(self.userFilesFolder):
- try:
- self.createServerFoldercreateServerFolder( self.userFilesFolder )
- except:
- return self.sendError(1, "This connector couldn\'t access to local user\'s files directories. Please check the UserFilesAbsolutePath in \"editor/filemanager/connectors/py/config.py\" and try again. ")
-
- # File upload doesn't have to return XML, so intercept here
- return self.uploadFile(resourceType, currentFolder)
-
-# Running from command line (plain old CGI)
-if __name__ == '__main__':
- try:
- # Create a Connector Instance
- conn = FCKeditorQuickUpload()
- data = conn.doResponse()
- for header in conn.headers:
- if not header is None:
- print '%s: %s' % header
- print
- print data
- except:
- print "Content-Type: text/plain"
- print
- import cgi
- cgi.print_exception()
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/wsgi.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/wsgi.py
deleted file mode 100755
index f51101c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/wsgi.py
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-Connector/QuickUpload for Python (WSGI wrapper).
-
-See config.py for configuration settings
-
-"""
-
-from connector import FCKeditorConnector
-from upload import FCKeditorQuickUpload
-
-import cgitb
-from cStringIO import StringIO
-
-# Running from WSGI capable server (recomended)
-def App(environ, start_response):
- "WSGI entry point. Run the connector"
- if environ['SCRIPT_NAME'].endswith("connector.py"):
- conn = FCKeditorConnector(environ)
- elif environ['SCRIPT_NAME'].endswith("upload.py"):
- conn = FCKeditorQuickUpload(environ)
- else:
- start_response ("200 Ok", [('Content-Type','text/html')])
- yield "Unknown page requested: "
- yield environ['SCRIPT_NAME']
- return
- try:
- # run the connector
- data = conn.doResponse()
- # Start WSGI response:
- start_response ("200 Ok", conn.headers)
- # Send response text
- yield data
- except:
- start_response("500 Internal Server Error",[("Content-type","text/html")])
- file = StringIO()
- cgitb.Hook(file = file).handle()
- yield file.getvalue()
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/zope.py b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/zope.py
deleted file mode 100755
index 070f96c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/py/zope.py
+++ /dev/null
@@ -1,188 +0,0 @@
-#!/usr/bin/env python
-
-"""
-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 ==
-
-Connector for Python and Zope.
-
-This code was not tested at all.
-It just was ported from pre 2.5 release, so for further reference see
-\editor\filemanager\browser\default\connectors\py\connector.py in previous
-releases.
-
-"""
-
-from fckutil import *
-from connector import *
-import config as Config
-
-class FCKeditorConnectorZope(FCKeditorConnector):
- """
- Zope versiof FCKeditorConnector
- """
- # Allow access (Zope)
- __allow_access_to_unprotected_subobjects__ = 1
-
- def __init__(self, context=None):
- """
- Constructor
- """
- FCKeditorConnector.__init__(self, environ=None) # call superclass constructor
- # Instance Attributes
- self.context = context
- self.request = FCKeditorRequest(context)
-
- def getZopeRootContext(self):
- if self.zopeRootContext is None:
- self.zopeRootContext = self.context.getPhysicalRoot()
- return self.zopeRootContext
-
- def getZopeUploadContext(self):
- if self.zopeUploadContext is None:
- folderNames = self.userFilesFolder.split("/")
- c = self.getZopeRootContext()
- for folderName in folderNames:
- if (folderName <> ""):
- c = c[folderName]
- self.zopeUploadContext = c
- return self.zopeUploadContext
-
- def setHeader(self, key, value):
- self.context.REQUEST.RESPONSE.setHeader(key, value)
-
- def getFolders(self, resourceType, currentFolder):
- # Open the folders node
- s = ""
- s += """"""
- zopeFolder = self.findZopeFolder(resourceType, currentFolder)
- for (name, o) in zopeFolder.objectItems(["Folder"]):
- s += """ """ % (
- convertToXmlAttribute(name)
- )
- # Close the folders node
- s += """ """
- return s
-
- def getZopeFoldersAndFiles(self, resourceType, currentFolder):
- folders = self.getZopeFolders(resourceType, currentFolder)
- files = self.getZopeFiles(resourceType, currentFolder)
- s = folders + files
- return s
-
- def getZopeFiles(self, resourceType, currentFolder):
- # Open the files node
- s = ""
- s += """"""
- zopeFolder = self.findZopeFolder(resourceType, currentFolder)
- for (name, o) in zopeFolder.objectItems(["File","Image"]):
- s += """ """ % (
- convertToXmlAttribute(name),
- ((o.get_size() / 1024) + 1)
- )
- # Close the files node
- s += """ """
- return s
-
- def findZopeFolder(self, resourceType, folderName):
- # returns the context of the resource / folder
- zopeFolder = self.getZopeUploadContext()
- folderName = self.removeFromStart(folderName, "/")
- folderName = self.removeFromEnd(folderName, "/")
- if (resourceType <> ""):
- try:
- zopeFolder = zopeFolder[resourceType]
- except:
- zopeFolder.manage_addProduct["OFSP"].manage_addFolder(id=resourceType, title=resourceType)
- zopeFolder = zopeFolder[resourceType]
- if (folderName <> ""):
- folderNames = folderName.split("/")
- for folderName in folderNames:
- zopeFolder = zopeFolder[folderName]
- return zopeFolder
-
- def createFolder(self, resourceType, currentFolder):
- # Find out where we are
- zopeFolder = self.findZopeFolder(resourceType, currentFolder)
- errorNo = 0
- errorMsg = ""
- if self.request.has_key("NewFolderName"):
- newFolder = self.request.get("NewFolderName", None)
- zopeFolder.manage_addProduct["OFSP"].manage_addFolder(id=newFolder, title=newFolder)
- else:
- errorNo = 102
- return self.sendErrorNode ( errorNo, errorMsg )
-
- def uploadFile(self, resourceType, currentFolder, count=None):
- zopeFolder = self.findZopeFolder(resourceType, currentFolder)
- file = self.request.get("NewFile", None)
- fileName = self.getFileName(file.filename)
- fileNameOnly = self.removeExtension(fileName)
- fileExtension = self.getExtension(fileName).lower()
- if (count):
- nid = "%s.%s.%s" % (fileNameOnly, count, fileExtension)
- else:
- nid = fileName
- title = nid
- try:
- zopeFolder.manage_addProduct['OFSP'].manage_addFile(
- id=nid,
- title=title,
- file=file.read()
- )
- except:
- if (count):
- count += 1
- else:
- count = 1
- return self.zopeFileUpload(resourceType, currentFolder, count)
- return self.sendUploadResults( 0 )
-
-class FCKeditorRequest(object):
- "A wrapper around the request object"
- def __init__(self, context=None):
- r = context.REQUEST
- self.request = r
-
- def has_key(self, key):
- return self.request.has_key(key)
-
- def get(self, key, default=None):
- return self.request.get(key, default)
-
-"""
-Running from zope, you will need to modify this connector.
-If you have uploaded the FCKeditor into Zope (like me), you need to
-move this connector out of Zope, and replace the "connector" with an
-alias as below. The key to it is to pass the Zope context in, as
-we then have a like to the Zope context.
-
-## Script (Python) "connector.py"
-##bind container=container
-##bind context=context
-##bind namespace=
-##bind script=script
-##bind subpath=traverse_subpath
-##parameters=*args, **kws
-##title=ALIAS
-##
-
-import Products.zope as connector
-return connector.FCKeditorConnectorZope(context=context).doResponse()
-"""
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/test.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/test.html
deleted file mode 100755
index fc16031..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/test.html
+++ /dev/null
@@ -1,210 +0,0 @@
-
-
-
-
- FCKeditor - Connectors Tests
-
-
-
-
-
-
-
-
-
-
-
- URL:
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/uploadtest.html b/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/uploadtest.html
deleted file mode 100755
index c5bc8e2..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/filemanager/connectors/uploadtest.html
+++ /dev/null
@@ -1,192 +0,0 @@
-
-
-
- FCKeditor - Uploaders Tests
-
-
-
-
-
-
-
-
-
-
-
- Post URL:
-
-
-
-
-
-
-
-
-
-
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/anchor.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/anchor.gif
deleted file mode 100755
index 5aa797b..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/anchor.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/arrow_ltr.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/arrow_ltr.gif
deleted file mode 100755
index 9c59bfe..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/arrow_ltr.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/arrow_rtl.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/arrow_rtl.gif
deleted file mode 100755
index 22e8649..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/arrow_rtl.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/angel_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/angel_smile.gif
deleted file mode 100755
index a95e053..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/angel_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/angry_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/angry_smile.gif
deleted file mode 100755
index c667c5d..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/angry_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/broken_heart.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/broken_heart.gif
deleted file mode 100755
index 938cce1..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/broken_heart.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/cake.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/cake.gif
deleted file mode 100755
index f6489d7..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/cake.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/confused_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/confused_smile.gif
deleted file mode 100755
index aeb0539..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/confused_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/cry_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/cry_smile.gif
deleted file mode 100755
index 0758f42..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/cry_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/devil_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/devil_smile.gif
deleted file mode 100755
index 15518d7..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/devil_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/embaressed_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/embaressed_smile.gif
deleted file mode 100755
index c431946..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/embaressed_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/envelope.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/envelope.gif
deleted file mode 100755
index 66d3656..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/envelope.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/heart.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/heart.gif
deleted file mode 100755
index 305714f..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/heart.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/kiss.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/kiss.gif
deleted file mode 100755
index f840ea6..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/kiss.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/lightbulb.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/lightbulb.gif
deleted file mode 100755
index 863be6e..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/lightbulb.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/omg_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/omg_smile.gif
deleted file mode 100755
index aabc7fd..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/omg_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/regular_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/regular_smile.gif
deleted file mode 100755
index 33f297e..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/regular_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/sad_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/sad_smile.gif
deleted file mode 100755
index dfb78ef..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/sad_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/shades_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/shades_smile.gif
deleted file mode 100755
index 157df77..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/shades_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/teeth_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/teeth_smile.gif
deleted file mode 100755
index 26b5a55..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/teeth_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/thumbs_down.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/thumbs_down.gif
deleted file mode 100755
index f53ee72..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/thumbs_down.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/thumbs_up.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/thumbs_up.gif
deleted file mode 100755
index 7e8c746..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/thumbs_up.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/tounge_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/tounge_smile.gif
deleted file mode 100755
index b87ec44..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/tounge_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/whatchutalkingabout_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/whatchutalkingabout_smile.gif
deleted file mode 100755
index c074122..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/whatchutalkingabout_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/wink_smile.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/wink_smile.gif
deleted file mode 100755
index eefe61d..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/smiley/msn/wink_smile.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/images/spacer.gif b/common/static/contrib/fckeditor-2.6.4/editor/images/spacer.gif
deleted file mode 100755
index 5bfd67a..0000000
Binary files a/common/static/contrib/fckeditor-2.6.4/editor/images/spacer.gif and /dev/null differ
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/js/fckadobeair.js b/common/static/contrib/fckeditor-2.6.4/editor/js/fckadobeair.js
deleted file mode 100755
index 468164c..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/js/fckadobeair.js
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * 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 ==
- *
- * Compatibility code for Adobe AIR.
- */
-
-if ( FCKBrowserInfo.IsAIR )
-{
- var FCKAdobeAIR = (function()
- {
- /*
- * ### Private functions.
- */
-
- var getDocumentHead = function( doc )
- {
- var head ;
- var heads = doc.getElementsByTagName( 'head' ) ;
-
- if( heads && heads[0] )
- head = heads[0] ;
- else
- {
- head = doc.createElement( 'head' ) ;
- doc.documentElement.insertBefore( head, doc.documentElement.firstChild ) ;
- }
-
- return head ;
- } ;
-
- /*
- * ### Public interface.
- */
- return {
- FCKeditorAPI_Evaluate : function( parentWindow, script )
- {
- // TODO : This one doesn't work always. The parent window will
- // point to an anonymous function in this window. If this
- // window is destroyied the parent window will be pointing to
- // an invalid reference.
-
- // Evaluate the script in this window.
- eval( script ) ;
-
- // Point the FCKeditorAPI property of the parent window to the
- // local reference.
- parentWindow.FCKeditorAPI = window.FCKeditorAPI ;
- },
-
- EditingArea_Start : function( doc, html )
- {
- // Get the HTML for the .
- var headInnerHtml = html.match( /([\s\S]*)<\/head>/i )[1] ;
-
- if ( headInnerHtml && headInnerHtml.length > 0 )
- {
- // Inject the HTML inside a .
- // Do that before getDocumentHead because WebKit moves
- //
elements to the at this point.
- var div = doc.createElement( 'div' ) ;
- div.innerHTML = headInnerHtml ;
-
- // Move the
nodes to .
- FCKDomTools.MoveChildren( div, getDocumentHead( doc ) ) ;
- }
-
- doc.body.innerHTML = html.match( /([\s\S]*)<\/body>/i )[1] ;
-
- //prevent clicking on hyperlinks and navigating away
- doc.addEventListener('click', function( ev )
- {
- ev.preventDefault() ;
- ev.stopPropagation() ;
- }, true ) ;
- },
-
- Panel_Contructor : function( doc, baseLocation )
- {
- var head = getDocumentHead( doc ) ;
-
- // Set the
href.
- head.appendChild( doc.createElement('base') ).href = baseLocation ;
-
- doc.body.style.margin = '0px' ;
- doc.body.style.padding = '0px' ;
- },
-
- ToolbarSet_GetOutElement : function( win, outMatch )
- {
- var toolbarTarget = win.parent ;
-
- var targetWindowParts = outMatch[1].split( '.' ) ;
- while ( targetWindowParts.length > 0 )
- {
- var part = targetWindowParts.shift() ;
- if ( part.length > 0 )
- toolbarTarget = toolbarTarget[ part ] ;
- }
-
- toolbarTarget = toolbarTarget.document.getElementById( outMatch[2] ) ;
- },
-
- ToolbarSet_InitOutFrame : function( doc )
- {
- var head = getDocumentHead( doc ) ;
-
- head.appendChild( doc.createElement('base') ).href = window.document.location ;
-
- var targetWindow = doc.defaultView;
-
- targetWindow.adjust = function()
- {
- targetWindow.frameElement.height = doc.body.scrollHeight;
- } ;
-
- targetWindow.onresize = targetWindow.adjust ;
- targetWindow.setTimeout( targetWindow.adjust, 0 ) ;
-
- doc.body.style.overflow = 'hidden';
- doc.body.innerHTML = document.getElementById( 'xToolbarSpace' ).innerHTML ;
- }
- } ;
- })();
-
- /*
- * ### Overrides
- */
- ( function()
- {
- // Save references for override reuse.
- var _Original_FCKPanel_Window_OnFocus = FCKPanel_Window_OnFocus ;
- var _Original_FCKPanel_Window_OnBlur = FCKPanel_Window_OnBlur ;
- var _Original_FCK_StartEditor = FCK.StartEditor ;
-
- FCKPanel_Window_OnFocus = function( e, panel )
- {
- // Call the original implementation.
- _Original_FCKPanel_Window_OnFocus.call( this, e, panel ) ;
-
- if ( panel._focusTimer )
- clearTimeout( panel._focusTimer ) ;
- }
-
- FCKPanel_Window_OnBlur = function( e, panel )
- {
- // Delay the execution of the original function.
- panel._focusTimer = FCKTools.SetTimeout( _Original_FCKPanel_Window_OnBlur, 100, this, [ e, panel ] ) ;
- }
-
- FCK.StartEditor = function()
- {
- // Force pointing to the CSS files instead of using the inline CSS cached styles.
- window.FCK_InternalCSS = FCKConfig.BasePath + 'css/fck_internal.css' ;
- window.FCK_ShowTableBordersCSS = FCKConfig.BasePath + 'css/fck_showtableborders_gecko.css' ;
-
- _Original_FCK_StartEditor.apply( this, arguments ) ;
- }
- })();
-}
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/js/fckeditorcode_gecko.js b/common/static/contrib/fckeditor-2.6.4/editor/js/fckeditorcode_gecko.js
deleted file mode 100755
index 7b28c8d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/js/fckeditorcode_gecko.js
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * 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 ==
- *
- * This file has been compressed for better performance. The original source
- * can be found at "editor/_source".
- */
-
-var FCK_STATUS_NOTLOADED=window.parent.FCK_STATUS_NOTLOADED=0;var FCK_STATUS_ACTIVE=window.parent.FCK_STATUS_ACTIVE=1;var FCK_STATUS_COMPLETE=window.parent.FCK_STATUS_COMPLETE=2;var FCK_TRISTATE_OFF=window.parent.FCK_TRISTATE_OFF=0;var FCK_TRISTATE_ON=window.parent.FCK_TRISTATE_ON=1;var FCK_TRISTATE_DISABLED=window.parent.FCK_TRISTATE_DISABLED=-1;var FCK_UNKNOWN=window.parent.FCK_UNKNOWN=-9;var FCK_TOOLBARITEM_ONLYICON=window.parent.FCK_TOOLBARITEM_ONLYICON=0;var FCK_TOOLBARITEM_ONLYTEXT=window.parent.FCK_TOOLBARITEM_ONLYTEXT=1;var FCK_TOOLBARITEM_ICONTEXT=window.parent.FCK_TOOLBARITEM_ICONTEXT=2;var FCK_EDITMODE_WYSIWYG=window.parent.FCK_EDITMODE_WYSIWYG=0;var FCK_EDITMODE_SOURCE=window.parent.FCK_EDITMODE_SOURCE=1;var FCK_IMAGES_PATH='images/';var FCK_SPACER_PATH='images/spacer.gif';var CTRL=1000;var SHIFT=2000;var ALT=4000;var FCK_STYLE_BLOCK=0;var FCK_STYLE_INLINE=1;var FCK_STYLE_OBJECT=2;
-String.prototype.Contains=function(A){return (this.indexOf(A)>-1);};String.prototype.Equals=function(){var A=arguments;if (A.length==1&&A[0].pop) A=A[0];for (var i=0;i
C) return false;if (B){var E=new RegExp(A+'$','i');return E.test(this);}else return (D==0||this.substr(C-D,D)==A);};String.prototype.Remove=function(A,B){var s='';if (A>0) s=this.substring(0,A);if (A+B=7),IsIE6:/*@cc_on!@*/false&&(parseInt(s.match(/msie (\d+)/)[1],10)>=6),IsSafari:s.Contains(' applewebkit/'),IsOpera:!!window.opera,IsAIR:s.Contains(' adobeair/'),IsMac:s.Contains('macintosh')};(function(A){A.IsGecko=(navigator.product=='Gecko')&&!A.IsSafari&&!A.IsOpera;A.IsGeckoLike=(A.IsGecko||A.IsSafari||A.IsOpera);if (A.IsGecko){var B=s.match(/rv:(\d+\.\d+)/);var C=B&&parseFloat(B[1]);if (C){A.IsGecko10=(C<1.8);A.IsGecko19=(C>1.8);}}})(FCKBrowserInfo);
-var FCKURLParams={};(function(){var A=document.location.search.substr(1).split('&');for (var i=0;i';if (!FCKRegexLib.HtmlOpener.test(A)) A=''+A+'';if (!FCKRegexLib.HeadOpener.test(A)) A=A.replace(FCKRegexLib.HtmlOpener,'$& ');return A;}else{var B=FCKConfig.DocType+'0&&!FCKRegexLib.Html4DocType.test(FCKConfig.DocType)) B+=' style="overflow-y: scroll"';B+='> '+A+'';return B;}},ConvertToDataFormat:function(A,B,C,D){var E=FCKXHtml.GetXHTML(A,!B,D);if (C&&FCKRegexLib.EmptyOutParagraph.test(E)) return '';return E;},FixHtml:function(A){return A;}};
-var FCK={Name:FCKURLParams['InstanceName'],Status:0,EditMode:0,Toolbar:null,HasFocus:false,DataProcessor:new FCKDataProcessor(),GetInstanceObject:(function(){var w=window;return function(name){return w[name];}})(),AttachToOnSelectionChange:function(A){this.Events.AttachEvent('OnSelectionChange',A);},GetLinkedFieldValue:function(){return this.LinkedField.value;},GetParentForm:function(){return this.LinkedField.form;},StartupValue:'',IsDirty:function(){if (this.EditMode==1) return (this.StartupValue!=this.EditingArea.Textarea.value);else{if (!this.EditorDocument) return false;return (this.StartupValue!=this.EditorDocument.body.innerHTML);}},ResetIsDirty:function(){if (this.EditMode==1) this.StartupValue=this.EditingArea.Textarea.value;else if (this.EditorDocument.body) this.StartupValue=this.EditorDocument.body.innerHTML;},StartEditor:function(){this.TempBaseTag=FCKConfig.BaseHref.length>0?' ':'';var A=FCK.KeystrokeHandler=new FCKKeystrokeHandler();A.OnKeystroke=_FCK_KeystrokeHandler_OnKeystroke;A.SetKeystrokes(FCKConfig.Keystrokes);if (FCKBrowserInfo.IsIE7){if ((CTRL+86) in A.Keystrokes) A.SetKeystrokes([CTRL+86,true]);if ((SHIFT+45) in A.Keystrokes) A.SetKeystrokes([SHIFT+45,true]);};A.SetKeystrokes([CTRL+8,true]);this.EditingArea=new FCKEditingArea(document.getElementById('xEditingArea'));this.EditingArea.FFSpellChecker=FCKConfig.FirefoxSpellChecker;this.SetData(this.GetLinkedFieldValue(),true);FCKTools.AddEventListener(document,"keydown",this._TabKeyHandler);this.AttachToOnSelectionChange(_FCK_PaddingNodeListener);if (FCKBrowserInfo.IsGecko) this.AttachToOnSelectionChange(this._ExecCheckEmptyBlock);},Focus:function(){FCK.EditingArea.Focus();},SetStatus:function(A){this.Status=A;if (A==1){FCKFocusManager.AddWindow(window,true);if (FCKBrowserInfo.IsIE) FCKFocusManager.AddWindow(window.frameElement,true);if (FCKConfig.StartupFocus) FCK.Focus();};this.Events.FireEvent('OnStatusChange',A);},FixBody:function(){var A=FCKConfig.EnterMode;if (A!='p'&&A!='div') return;var B=this.EditorDocument;if (!B) return;var C=B.body;if (!C) return;FCKDomTools.TrimNode(C);var D=C.firstChild;var E;while (D){var F=false;switch (D.nodeType){case 1:var G=D.nodeName.toLowerCase();if (!FCKListsLib.BlockElements[G]&&G!='li'&&!D.getAttribute('_fckfakelement')&&D.getAttribute('_moz_dirty')==null) F=true;break;case 3:if (E||D.nodeValue.Trim().length>0) F=true;break;case 8:if (E) F=true;break;};if (F){var H=D.parentNode;if (!E) E=H.insertBefore(B.createElement(A),D);E.appendChild(H.removeChild(D));D=E.nextSibling;}else{if (E){FCKDomTools.TrimNode(E);E=null;};D=D.nextSibling;}};if (E) FCKDomTools.TrimNode(E);},GetData:function(A){if (FCK.EditMode==1) return FCK.EditingArea.Textarea.value;this.FixBody();var B=FCK.EditorDocument;if (!B) return null;var C=FCKConfig.FullPage;var D=FCK.DataProcessor.ConvertToDataFormat(C?B.documentElement:B.body,!C,FCKConfig.IgnoreEmptyParagraphValue,A);D=FCK.ProtectEventsRestore(D);if (FCKBrowserInfo.IsIE) D=D.replace(FCKRegexLib.ToReplace,'$1');if (C){if (FCK.DocTypeDeclaration&&FCK.DocTypeDeclaration.length>0) D=FCK.DocTypeDeclaration+'\n'+D;if (FCK.XmlDeclaration&&FCK.XmlDeclaration.length>0) D=FCK.XmlDeclaration+'\n'+D;};return FCKConfig.ProtectedSource.Revert(D);},UpdateLinkedField:function(){var A=FCK.GetXHTML(FCKConfig.FormatOutput);if (FCKConfig.HtmlEncodeOutput) A=FCKTools.HTMLEncode(A);FCK.LinkedField.value=A;FCK.Events.FireEvent('OnAfterLinkedFieldUpdate');},RegisteredDoubleClickHandlers:{},OnDoubleClick:function(A){var B=FCK.RegisteredDoubleClickHandlers[A.tagName.toUpperCase()];if (B){for (var i=0;i0?'|ABBR|XML|EMBED|OBJECT':'ABBR|XML|EMBED|OBJECT';var C;if (B.length>0){C=new RegExp('<('+B+')(?!\w|:)','gi');A=A.replace(C,'','gi');A=A.replace(C,'<\/FCK:$1>');};B='META';if (FCKBrowserInfo.IsIE) B+='|HR';C=new RegExp('<(('+B+')(?=\\s|>|/)[\\s\\S]*?)/?>','gi');A=A.replace(C,' ');return A;},SetData:function(A,B){this.EditingArea.Mode=FCK.EditMode;if (FCKBrowserInfo.IsIE&&FCK.EditorDocument){FCK.EditorDocument.detachEvent("onselectionchange",Doc_OnSelectionChange);};FCKTempBin.Reset();FCK.Selection.Release();if (FCK.EditMode==0){this._ForceResetIsDirty=(B===true);A=FCKConfig.ProtectedSource.Protect(A);A=FCK.DataProcessor.ConvertToHtml(A);A=A.replace(FCKRegexLib.InvalidSelfCloseTags,'$1>$2>');A=FCK.ProtectEvents(A);A=FCK.ProtectUrls(A);A=FCK.ProtectTags(A);if (FCK.TempBaseTag.length>0&&!FCKRegexLib.HasBaseTag.test(A)) A=A.replace(FCKRegexLib.HeadOpener,'$&'+FCK.TempBaseTag);var C='';if (!FCKConfig.FullPage) C+=_FCK_GetEditorAreaStyleTags();if (FCKBrowserInfo.IsIE) C+=FCK._GetBehaviorsStyle();else if (FCKConfig.ShowBorders) C+=FCKTools.GetStyleHtml(FCK_ShowTableBordersCSS,true);C+=FCKTools.GetStyleHtml(FCK_InternalCSS,true);A=A.replace(FCKRegexLib.HeadCloser,C+'$&');this.EditingArea.OnLoad=_FCK_EditingArea_OnLoad;this.EditingArea.Start(A);}else{FCK.EditorWindow=null;FCK.EditorDocument=null;FCKDomTools.PaddingNode=null;this.EditingArea.OnLoad=null;this.EditingArea.Start(A);this.EditingArea.Textarea._FCKShowContextMenu=true;FCK.EnterKeyHandler=null;if (B) this.ResetIsDirty();FCK.KeystrokeHandler.AttachToElement(this.EditingArea.Textarea);this.EditingArea.Textarea.focus();FCK.Events.FireEvent('OnAfterSetHTML');};if (FCKBrowserInfo.IsGecko) window.onresize();},RedirectNamedCommands:{},ExecuteNamedCommand:function(A,B,C,D){if (!D) FCKUndo.SaveUndoStep();if (!C&&FCK.RedirectNamedCommands[A]!=null) FCK.ExecuteRedirectedNamedCommand(A,B);else{FCK.Focus();FCK.EditorDocument.execCommand(A,false,B);FCK.Events.FireEvent('OnSelectionChange');};if (!D) FCKUndo.SaveUndoStep();},GetNamedCommandState:function(A){try{if (FCKBrowserInfo.IsSafari&&FCK.EditorWindow&&A.IEquals('Paste')) return 0;if (!FCK.EditorDocument.queryCommandEnabled(A)) return -1;else{return FCK.EditorDocument.queryCommandState(A)?1:0;}}catch (e){return 0;}},GetNamedCommandValue:function(A){var B='';var C=FCK.GetNamedCommandState(A);if (C==-1) return null;try{B=this.EditorDocument.queryCommandValue(A);}catch(e) {};return B?B:'';},Paste:function(A){if (FCK.Status!=2||!FCK.Events.FireEvent('OnPaste')) return false;return A||FCK._ExecPaste();},PasteFromWord:function(){FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.PasteFromWord,'dialog/fck_paste.html',400,330,'Word');},Preview:function(){var A;if (FCKConfig.FullPage){if (FCK.TempBaseTag.length>0) A=FCK.TempBaseTag+FCK.GetXHTML();else A=FCK.GetXHTML();}else{A=FCKConfig.DocType+''+FCK.TempBaseTag+''+FCKLang.Preview+' '+_FCK_GetEditorAreaStyleTags()+''+FCK.GetXHTML()+'';};var B=FCKConfig.ScreenWidth*0.8;var C=FCKConfig.ScreenHeight*0.7;var D=(FCKConfig.ScreenWidth-B)/2;var E='';if (FCK_IS_CUSTOM_DOMAIN&&FCKBrowserInfo.IsIE){window._FCKHtmlToLoad=A;E='javascript:void( (function(){document.open() ;document.domain="'+document.domain+'" ;document.write( window.opener._FCKHtmlToLoad );document.close() ;window.opener._FCKHtmlToLoad = null ;})() )';};var F=window.open(E,null,'toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width='+B+',height='+C+',left='+D);if (!FCK_IS_CUSTOM_DOMAIN||!FCKBrowserInfo.IsIE){F.document.write(A);F.document.close();}},SwitchEditMode:function(A){var B=(FCK.EditMode==0);var C=FCK.IsDirty();var D;if (B){FCKCommands.GetCommand('ShowBlocks').SaveState();if (!A&&FCKBrowserInfo.IsIE) FCKUndo.SaveUndoStep();D=FCK.GetXHTML(FCKConfig.FormatSource);if (FCKBrowserInfo.IsIE) FCKTempBin.ToHtml();if (D==null) return false;}else D=this.EditingArea.Textarea.value;FCK.EditMode=B?1:0;FCK.SetData(D,!C);FCK.Focus();FCKTools.RunFunction(FCK.ToolbarSet.RefreshModeState,FCK.ToolbarSet);return true;},InsertElement:function(A){if (typeof A=='string') A=this.EditorDocument.createElement(A);var B=A.nodeName.toLowerCase();FCKSelection.Restore();var C=new FCKDomRange(this.EditorWindow);C.MoveToSelection();C.DeleteContents();if (FCKListsLib.BlockElements[B]!=null){if (C.StartBlock){if (C.CheckStartOfBlock()) C.MoveToPosition(C.StartBlock,3);else if (C.CheckEndOfBlock()) C.MoveToPosition(C.StartBlock,4);else C.SplitBlock();};C.InsertNode(A);var D=FCKDomTools.GetNextSourceElement(A,false,null,['hr','br','param','img','area','input'],true);if (!D&&FCKConfig.EnterMode!='br'){D=this.EditorDocument.body.appendChild(this.EditorDocument.createElement(FCKConfig.EnterMode));if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(D);};if (FCKListsLib.EmptyElements[B]==null) C.MoveToElementEditStart(A);else if (D) C.MoveToElementEditStart(D);else C.MoveToPosition(A,4);if (FCKBrowserInfo.IsGeckoLike){if (D) FCKDomTools.ScrollIntoView(D,false);FCKDomTools.ScrollIntoView(A,false);}}else{C.InsertNode(A);C.SetStart(A,4);C.SetEnd(A,4);};C.Select();C.Release();this.Focus();return A;},_InsertBlockElement:function(A){},_IsFunctionKey:function(A){if (A>=16&&A<=20) return true;if (A==27||(A>=33&&A<=40)) return true;if (A==45) return true;return false;},_KeyDownListener:function(A){if (!A) A=FCK.EditorWindow.event;if (FCK.EditorWindow){if (!FCK._IsFunctionKey(A.keyCode)&&!(A.ctrlKey||A.metaKey)&&!(A.keyCode==46)) FCK._KeyDownUndo();};return true;},_KeyDownUndo:function(){if (!FCKUndo.Typing){FCKUndo.SaveUndoStep();FCKUndo.Typing=true;FCK.Events.FireEvent("OnSelectionChange");};FCKUndo.TypesCount++;FCKUndo.Changed=1;if (FCKUndo.TypesCount>FCKUndo.MaxTypes){FCKUndo.TypesCount=0;FCKUndo.SaveUndoStep();}},_TabKeyHandler:function(A){if (!A) A=window.event;var B=A.keyCode;if (B==9&&FCK.EditMode!=0){if (FCKBrowserInfo.IsIE){var C=document.selection.createRange();if (C.parentElement()!=FCK.EditingArea.Textarea) return true;C.text='\t';C.select();}else{var a=[];var D=FCK.EditingArea.Textarea;var E=D.selectionStart;var F=D.selectionEnd;a.push(D.value.substr(0,E));a.push('\t');a.push(D.value.substr(F));D.value=a.join('');D.setSelectionRange(E+1,E+1);};if (A.preventDefault) return A.preventDefault();return A.returnValue=false;};return true;}};FCK.Events=new FCKEvents(FCK);FCK.GetHTML=FCK.GetXHTML=FCK.GetData;FCK.SetHTML=FCK.SetData;FCK.InsertElementAndGetIt=FCK.CreateElement=FCK.InsertElement;function _FCK_ProtectEvents_ReplaceTags(A){return A.replace(FCKRegexLib.EventAttributes,_FCK_ProtectEvents_ReplaceEvents);};function _FCK_ProtectEvents_ReplaceEvents(A,B){return ' '+B+'_fckprotectedatt="'+encodeURIComponent(A)+'"';};function _FCK_ProtectEvents_RestoreEvents(A,B){return decodeURIComponent(B);};function _FCK_MouseEventsListener(A){if (!A) A=window.event;if (A.type=='mousedown') FCK.MouseDownFlag=true;else if (A.type=='mouseup') FCK.MouseDownFlag=false;else if (A.type=='mousemove') FCK.Events.FireEvent('OnMouseMove',A);};function _FCK_PaddingNodeListener(){if (FCKConfig.EnterMode.IEquals('br')) return;FCKDomTools.EnforcePaddingNode(FCK.EditorDocument,FCKConfig.EnterMode);if (!FCKBrowserInfo.IsIE&&FCKDomTools.PaddingNode){var A=FCKSelection.GetSelection();if (A&&A.rangeCount==1){var B=A.getRangeAt(0);if (B.collapsed&&B.startContainer==FCK.EditorDocument.body&&B.startOffset==0){B.selectNodeContents(FCKDomTools.PaddingNode);B.collapse(true);A.removeAllRanges();A.addRange(B);}}}else if (FCKDomTools.PaddingNode){var C=FCKSelection.GetParentElement();var D=FCKDomTools.PaddingNode;if (C&&C.nodeName.IEquals('body')){if (FCK.EditorDocument.body.childNodes.length==1&&FCK.EditorDocument.body.firstChild==D){if (FCKSelection._GetSelectionDocument(FCK.EditorDocument.selection)!=FCK.EditorDocument) return;var B=FCK.EditorDocument.body.createTextRange();var F=false;if (!D.childNodes.firstChild){D.appendChild(FCKTools.GetElementDocument(D).createTextNode('\ufeff'));F=true;};B.moveToElementText(D);B.select();if (F) B.pasteHTML('');}}}};function _FCK_EditingArea_OnLoad(){FCK.EditorWindow=FCK.EditingArea.Window;FCK.EditorDocument=FCK.EditingArea.Document;if (FCKBrowserInfo.IsIE) FCKTempBin.ToElements();FCK.InitializeBehaviors();FCK.MouseDownFlag=false;FCKTools.AddEventListener(FCK.EditorDocument,'mousemove',_FCK_MouseEventsListener);FCKTools.AddEventListener(FCK.EditorDocument,'mousedown',_FCK_MouseEventsListener);FCKTools.AddEventListener(FCK.EditorDocument,'mouseup',_FCK_MouseEventsListener);if (FCKBrowserInfo.IsSafari){var A=function(evt){if (!(evt.ctrlKey||evt.metaKey)) return;if (FCK.EditMode!=0) return;switch (evt.keyCode){case 89:FCKUndo.Redo();break;case 90:FCKUndo.Undo();break;}};FCKTools.AddEventListener(FCK.EditorDocument,'keyup',A);};FCK.EnterKeyHandler=new FCKEnterKey(FCK.EditorWindow,FCKConfig.EnterMode,FCKConfig.ShiftEnterMode,FCKConfig.TabSpaces);FCK.KeystrokeHandler.AttachToElement(FCK.EditorDocument);if (FCK._ForceResetIsDirty) FCK.ResetIsDirty();if (FCKBrowserInfo.IsIE&&FCK.HasFocus) FCK.EditorDocument.body.setActive();FCK.OnAfterSetHTML();FCKCommands.GetCommand('ShowBlocks').RestoreState();if (FCK.Status!=0) return;FCK.SetStatus(1);};function _FCK_GetEditorAreaStyleTags(){return FCKTools.GetStyleHtml(FCKConfig.EditorAreaCSS)+FCKTools.GetStyleHtml(FCKConfig.EditorAreaStyles);};function _FCK_KeystrokeHandler_OnKeystroke(A,B){if (FCK.Status!=2) return false;if (FCK.EditMode==0){switch (B){case 'Paste':return!FCK.Paste();case 'Cut':FCKUndo.SaveUndoStep();return false;}}else{if (B.Equals('Paste','Undo','Redo','SelectAll','Cut')) return false;};var C=FCK.Commands.GetCommand(B);if (C.GetState()==-1) return false;return (C.Execute.apply(C,FCKTools.ArgumentsToArray(arguments,2))!==false);};(function(){var A=window.parent.document;var B=A.getElementById(FCK.Name);var i=0;while (B||i==0){if (B&&B.tagName.toLowerCase().Equals('input','textarea')){FCK.LinkedField=B;break;};B=A.getElementsByName(FCK.Name)[i++];}})();var FCKTempBin={Elements:[],AddElement:function(A){var B=this.Elements.length;this.Elements[B]=A;return B;},RemoveElement:function(A){var e=this.Elements[A];this.Elements[A]=null;return e;},Reset:function(){var i=0;while (i '+this.Elements[i].outerHTML+' ';this.Elements[i].isHtml=true;}},ToElements:function(){var A=FCK.EditorDocument.createElement('div');for (var i=0;i
40) return;};var C=function(H){if (H.nodeType!=1) return false;var D=H.tagName.toLowerCase();return (FCKListsLib.BlockElements[D]||FCKListsLib.EmptyElements[D]);};var E=function(){var F=FCKSelection.GetSelection();var G=F.getRangeAt(0);if (!G||!G.collapsed) return;var H=G.endContainer;if (H.nodeType!=3) return;if (H.nodeValue.length!=G.endOffset) return;var I=H.parentNode.tagName.toLowerCase();if (!(I=='a'||(!FCKBrowserInfo.IsOpera&&String(H.parentNode.contentEditable)=='false')||(!(FCKListsLib.BlockElements[I]||FCKListsLib.NonEmptyBlockElements[I])&&B==35))) return;var J=FCKTools.GetNextTextNode(H,H.parentNode,C);if (J) return;G=FCK.EditorDocument.createRange();J=FCKTools.GetNextTextNode(H,H.parentNode.parentNode,C);if (J){if (FCKBrowserInfo.IsOpera&&B==37) return;G.setStart(J,0);G.setEnd(J,0);}else{while (H.parentNode&&H.parentNode!=FCK.EditorDocument.body&&H.parentNode!=FCK.EditorDocument.documentElement&&H==H.parentNode.lastChild&&(!FCKListsLib.BlockElements[H.parentNode.tagName.toLowerCase()]&&!FCKListsLib.NonEmptyBlockElements[H.parentNode.tagName.toLowerCase()])) H=H.parentNode;if (FCKListsLib.BlockElements[I]||FCKListsLib.EmptyElements[I]||H==FCK.EditorDocument.body){G.setStart(H,H.childNodes.length);G.setEnd(H,H.childNodes.length);}else{var K=H.nextSibling;while (K){if (K.nodeType!=1){K=K.nextSibling;continue;};var L=K.tagName.toLowerCase();if (FCKListsLib.BlockElements[L]||FCKListsLib.EmptyElements[L]||FCKListsLib.NonEmptyBlockElements[L]) break;K=K.nextSibling;};var M=FCK.EditorDocument.createTextNode('');if (K) H.parentNode.insertBefore(M,K);else H.parentNode.appendChild(M);G.setStart(M,0);G.setEnd(M,0);}};F.removeAllRanges();F.addRange(G);FCK.Events.FireEvent("OnSelectionChange");};setTimeout(E,1);};this.ExecOnSelectionChangeTimer=function(){if (FCK.LastOnChangeTimer) window.clearTimeout(FCK.LastOnChangeTimer);FCK.LastOnChangeTimer=window.setTimeout(FCK.ExecOnSelectionChange,100);};this.EditorDocument.addEventListener('mouseup',this.ExecOnSelectionChange,false);this.EditorDocument.addEventListener('keyup',this.ExecOnSelectionChangeTimer,false);this._DblClickListener=function(e){FCK.OnDoubleClick(e.target);e.stopPropagation();};this.EditorDocument.addEventListener('dblclick',this._DblClickListener,true);this.EditorDocument.addEventListener('keydown',this._KeyDownListener,false);if (FCKBrowserInfo.IsGecko){this.EditorWindow.addEventListener('dragdrop',this._ExecDrop,true);}else if (FCKBrowserInfo.IsSafari){this.EditorDocument.addEventListener('dragover',function (evt){ if (!FCK.MouseDownFlag&&FCK.Config.ForcePasteAsPlainText) evt.returnValue=false;},true);this.EditorDocument.addEventListener('drop',this._ExecDrop,true);this.EditorDocument.addEventListener('mousedown',function(ev){var N=ev.srcElement;if (N.nodeName.IEquals('IMG','HR','INPUT','TEXTAREA','SELECT')){FCKSelection.SelectNode(N);}},true);this.EditorDocument.addEventListener('mouseup',function(ev){if (ev.srcElement.nodeName.IEquals('INPUT','TEXTAREA','SELECT')) ev.preventDefault()},true);this.EditorDocument.addEventListener('click',function(ev){if (ev.srcElement.nodeName.IEquals('INPUT','TEXTAREA','SELECT')) ev.preventDefault()},true);};if (FCKBrowserInfo.IsGecko||FCKBrowserInfo.IsOpera){this.EditorDocument.addEventListener('keypress',this._ExecCheckCaret,false);this.EditorDocument.addEventListener('click',this._ExecCheckCaret,false);};FCK.ContextMenu._InnerContextMenu.SetMouseClickWindow(FCK.EditorWindow);FCK.ContextMenu._InnerContextMenu.AttachToElement(FCK.EditorDocument);};FCK.MakeEditable=function(){this.EditingArea.MakeEditable();};function Document_OnContextMenu(e){if (!e.target._FCKShowContextMenu) e.preventDefault();};document.oncontextmenu=Document_OnContextMenu;FCK._BaseGetNamedCommandState=FCK.GetNamedCommandState;FCK.GetNamedCommandState=function(A){switch (A){case 'Unlink':return FCKSelection.HasAncestorNode('A')?0:-1;default:return FCK._BaseGetNamedCommandState(A);}};FCK.RedirectNamedCommands={Print:true,Paste:true};FCK.ExecuteRedirectedNamedCommand=function(A,B){switch (A){case 'Print':FCK.EditorWindow.print();break;case 'Paste':try{if (FCKBrowserInfo.IsSafari) throw '';if (FCK.Paste()) FCK.ExecuteNamedCommand('Paste',null,true);}catch (e) {if (FCKConfig.ForcePasteAsPlainText) FCK.PasteAsPlainText();else FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.Paste,'dialog/fck_paste.html',400,330,'Security');};break;default:FCK.ExecuteNamedCommand(A,B);}};FCK._ExecPaste=function(){FCKUndo.SaveUndoStep();if (FCKConfig.ForcePasteAsPlainText){FCK.PasteAsPlainText();return false;};return true;};FCK.InsertHtml=function(A){var B=FCK.EditorDocument,range;A=FCKConfig.ProtectedSource.Protect(A);A=FCK.ProtectEvents(A);A=FCK.ProtectUrls(A);A=FCK.ProtectTags(A);FCKUndo.SaveUndoStep();if (FCKBrowserInfo.IsGecko){A=A.replace(/ $/,'$& ');var C=new FCKDocumentFragment(this.EditorDocument);C.AppendHtml(A);var D=C.RootNode.lastChild;range=new FCKDomRange(this.EditorWindow);range.MoveToSelection();range.DeleteContents();range.InsertNode(C.RootNode);range.MoveToPosition(D,4);}else B.execCommand('inserthtml',false,A);this.Focus();if (!range){range=new FCKDomRange(this.EditorWindow);range.MoveToSelection();};var E=range.CreateBookmark();FCKDocumentProcessor.Process(B);try{range.MoveToBookmark(E);range.Select();}catch (e) {};this.Events.FireEvent("OnSelectionChange");};FCK.PasteAsPlainText=function(){FCKTools.RunFunction(FCKDialog.OpenDialog,FCKDialog,['FCKDialog_Paste',FCKLang.PasteAsText,'dialog/fck_paste.html',400,330,'PlainText']);};FCK.GetClipboardHTML=function(){return '';};FCK.CreateLink=function(A,B){var C=[];if (FCKSelection.GetSelection().isCollapsed) return C;FCK.ExecuteNamedCommand('Unlink',null,false,!!B);if (A.length>0){var D='javascript:void(0);/*'+(new Date().getTime())+'*/';FCK.ExecuteNamedCommand('CreateLink',D,false,!!B);var E=this.EditorDocument.evaluate("//a[@href='"+D+"']",this.EditorDocument.body,null,XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,null);for (var i=0;i0&&!isNaN(E)) this.PageConfig[D]=parseInt(E,10);else this.PageConfig[D]=E;}};function FCKConfig_LoadPageConfig(){var A=FCKConfig.PageConfig;for (var B in A) FCKConfig[B]=A[B];};function FCKConfig_PreProcess(){var A=FCKConfig;if (A.AllowQueryStringDebug){try{if ((/fckdebug=true/i).test(window.top.location.search)) A.Debug=true;}catch (e) { }};if (!A.PluginsPath.EndsWith('/')) A.PluginsPath+='/';var B=A.ToolbarComboPreviewCSS;if (!B||B.length==0) A.ToolbarComboPreviewCSS=A.EditorAreaCSS;A.RemoveAttributesArray=(A.RemoveAttributes||'').split(',');if (!FCKConfig.SkinEditorCSS||FCKConfig.SkinEditorCSS.length==0) FCKConfig.SkinEditorCSS=FCKConfig.SkinPath+'fck_editor.css';if (!FCKConfig.SkinDialogCSS||FCKConfig.SkinDialogCSS.length==0) FCKConfig.SkinDialogCSS=FCKConfig.SkinPath+'fck_dialog.css';};FCKConfig.ToolbarSets={};FCKConfig.Plugins={};FCKConfig.Plugins.Items=[];FCKConfig.Plugins.Add=function(A,B,C){FCKConfig.Plugins.Items.push([A,B,C]);};FCKConfig.ProtectedSource={};FCKConfig.ProtectedSource._CodeTag=(new Date()).valueOf();FCKConfig.ProtectedSource.RegexEntries=[//g,/'+A;if (FCKBrowserInfo.IsIE) A=A.replace(/( ]*?)\s*\/?>(?!\s*<\/base>)/gi,'$1>');else if (!B){var E=A.match(FCKRegexLib.BeforeBody);var F=A.match(FCKRegexLib.AfterBody);if (E&&F){var G=A.substr(E[1].length,A.length-E[1].length-F[1].length);A=E[1]+' '+F[1];if (FCKBrowserInfo.IsGecko&&(G.length==0||FCKRegexLib.EmptyParagraph.test(G))) G=' ';this._BodyHTML=G;}else this._BodyHTML=A;};var H=this.IFrame=D.createElement('iframe');var I='';H.frameBorder=0;H.style.width=H.style.height='100%';if (FCK_IS_CUSTOM_DOMAIN&&FCKBrowserInfo.IsIE){window._FCKHtmlToLoad=A.replace(//i,''+I);H.src='javascript:void( (function(){document.open() ;document.domain="'+document.domain+'" ;document.write( window.parent._FCKHtmlToLoad );document.close() ;window.parent._FCKHtmlToLoad = null ;})() )';}else if (!FCKBrowserInfo.IsGecko){H.src='javascript:void(0)';};C.appendChild(H);this.Window=H.contentWindow;if (!FCK_IS_CUSTOM_DOMAIN||!FCKBrowserInfo.IsIE){var J=this.Window.document;J.open();J.write(A.replace(//i,''+I));J.close();};if (FCKBrowserInfo.IsAIR) FCKAdobeAIR.EditingArea_Start(J,A);if (FCKBrowserInfo.IsGecko10&&!B){this.Start(A,true);return;};if (H.readyState&&H.readyState!='completed'){var K=this;setTimeout(function(){try{K.Window.document.documentElement.doScroll("left");}catch(e){setTimeout(arguments.callee,0);return;};K.Window._FCKEditingArea=K;FCKEditingArea_CompleteStart.call(K.Window);},0);}else{this.Window._FCKEditingArea=this;if (FCKBrowserInfo.IsGecko10) this.Window.setTimeout(FCKEditingArea_CompleteStart,500);else FCKEditingArea_CompleteStart.call(this.Window);}}else{var L=this.Textarea=D.createElement('textarea');L.className='SourceField';L.dir='ltr';FCKDomTools.SetElementStyles(L,{width:'100%',height:'100%',border:'none',resize:'none',outline:'none'});C.appendChild(L);L.value=A;FCKTools.RunFunction(this.OnLoad);}};function FCKEditingArea_CompleteStart(){if (!this.document.body){this.setTimeout(FCKEditingArea_CompleteStart,50);return;};var A=this._FCKEditingArea;A.Document=A.Window.document;A.MakeEditable();FCKTools.RunFunction(A.OnLoad);};FCKEditingArea.prototype.MakeEditable=function(){var A=this.Document;if (FCKBrowserInfo.IsIE){A.body.disabled=true;A.body.contentEditable=true;A.body.removeAttribute("disabled");}else{try{A.body.spellcheck=(this.FFSpellChecker!==false);if (this._BodyHTML){A.body.innerHTML=this._BodyHTML;A.body.offsetLeft;this._BodyHTML=null;};A.designMode='on';A.execCommand('enableObjectResizing',false,!FCKConfig.DisableObjectResizing);A.execCommand('enableInlineTableEditing',false,!FCKConfig.DisableFFTableHandles);}catch (e){FCKTools.AddEventListener(this.Window.frameElement,'DOMAttrModified',FCKEditingArea_Document_AttributeNodeModified);}}};function FCKEditingArea_Document_AttributeNodeModified(A){var B=A.currentTarget.contentWindow._FCKEditingArea;if (B._timer) window.clearTimeout(B._timer);B._timer=FCKTools.SetTimeout(FCKEditingArea_MakeEditableByMutation,1000,B);};function FCKEditingArea_MakeEditableByMutation(){delete this._timer;FCKTools.RemoveEventListener(this.Window.frameElement,'DOMAttrModified',FCKEditingArea_Document_AttributeNodeModified);this.MakeEditable();};FCKEditingArea.prototype.Focus=function(){try{if (this.Mode==0){if (FCKBrowserInfo.IsIE) this._FocusIE();else this.Window.focus();}else{var A=FCKTools.GetElementDocument(this.Textarea);if ((!A.hasFocus||A.hasFocus())&&A.activeElement==this.Textarea) return;this.Textarea.focus();}}catch(e) {}};FCKEditingArea.prototype._FocusIE=function(){this.Document.body.setActive();this.Window.focus();var A=this.Document.selection.createRange();var B=A.parentElement();var C=B.nodeName.toLowerCase();if (B.childNodes.length>0||!(FCKListsLib.BlockElements[C]||FCKListsLib.NonEmptyBlockElements[C])){return;};A=new FCKDomRange(this.Window);A.MoveToElementEditStart(B);A.Select();};function FCKEditingArea_Cleanup(){if (this.Document) this.Document.body.innerHTML="";this.TargetElement=null;this.IFrame=null;this.Document=null;this.Textarea=null;if (this.Window){this.Window._FCKEditingArea=null;this.Window=null;}};
-var FCKKeystrokeHandler=function(A){this.Keystrokes={};this.CancelCtrlDefaults=(A!==false);};FCKKeystrokeHandler.prototype.AttachToElement=function(A){FCKTools.AddEventListenerEx(A,'keydown',_FCKKeystrokeHandler_OnKeyDown,this);if (FCKBrowserInfo.IsGecko10||FCKBrowserInfo.IsOpera||(FCKBrowserInfo.IsGecko&&FCKBrowserInfo.IsMac)) FCKTools.AddEventListenerEx(A,'keypress',_FCKKeystrokeHandler_OnKeyPress,this);};FCKKeystrokeHandler.prototype.SetKeystrokes=function(){for (var i=0;i40))){B._CancelIt=true;if (A.preventDefault) return A.preventDefault();A.returnValue=false;A.cancelBubble=true;return false;};return true;};function _FCKKeystrokeHandler_OnKeyPress(A,B){if (B._CancelIt){if (A.preventDefault) return A.preventDefault();return false;};return true;};
-FCK.DTD=(function(){var X=FCKTools.Merge;var A,L,J,M,N,O,D,H,P,K,Q,F,G,C,B,E,I;A={isindex:1,fieldset:1};B={input:1,button:1,select:1,textarea:1,label:1};C=X({a:1},B);D=X({iframe:1},C);E={hr:1,ul:1,menu:1,div:1,blockquote:1,noscript:1,table:1,center:1,address:1,dir:1,pre:1,h5:1,dl:1,h4:1,noframes:1,h6:1,ol:1,h1:1,h3:1,h2:1};F={ins:1,del:1,script:1};G=X({b:1,acronym:1,bdo:1,'var':1,'#':1,abbr:1,code:1,br:1,i:1,cite:1,kbd:1,u:1,strike:1,s:1,tt:1,strong:1,q:1,samp:1,em:1,dfn:1,span:1},F);H=X({sub:1,img:1,object:1,sup:1,basefont:1,map:1,applet:1,font:1,big:1,small:1},G);I=X({p:1},H);J=X({iframe:1},H,B);K={img:1,noscript:1,br:1,kbd:1,center:1,button:1,basefont:1,h5:1,h4:1,samp:1,h6:1,ol:1,h1:1,h3:1,h2:1,form:1,font:1,'#':1,select:1,menu:1,ins:1,abbr:1,label:1,code:1,table:1,script:1,cite:1,input:1,iframe:1,strong:1,textarea:1,noframes:1,big:1,small:1,span:1,hr:1,sub:1,bdo:1,'var':1,div:1,object:1,sup:1,strike:1,dir:1,map:1,dl:1,applet:1,del:1,isindex:1,fieldset:1,ul:1,b:1,acronym:1,a:1,blockquote:1,i:1,u:1,s:1,tt:1,address:1,q:1,pre:1,p:1,em:1,dfn:1};L=X({a:1},J);M={tr:1};N={'#':1};O=X({param:1},K);P=X({form:1},A,D,E,I);Q={li:1};return {col:{},tr:{td:1,th:1},img:{},colgroup:{col:1},noscript:P,td:P,br:{},th:P,center:P,kbd:L,button:X(I,E),basefont:{},h5:L,h4:L,samp:L,h6:L,ol:Q,h1:L,h3:L,option:N,h2:L,form:X(A,D,E,I),select:{optgroup:1,option:1},font:J,ins:P,menu:Q,abbr:L,label:L,table:{thead:1,col:1,tbody:1,tr:1,colgroup:1,caption:1,tfoot:1},code:L,script:N,tfoot:M,cite:L,li:P,input:{},iframe:P,strong:J,textarea:N,noframes:P,big:J,small:J,span:J,hr:{},dt:L,sub:J,optgroup:{option:1},param:{},bdo:L,'var':J,div:P,object:O,sup:J,dd:P,strike:J,area:{},dir:Q,map:X({area:1,form:1,p:1},A,F,E),applet:O,dl:{dt:1,dd:1},del:P,isindex:{},fieldset:X({legend:1},K),thead:M,ul:Q,acronym:L,b:J,a:J,blockquote:P,caption:L,i:J,u:J,tbody:M,s:L,address:X(D,I),tt:J,legend:L,q:L,pre:X(G,C),p:L,em:J,dfn:L};})();
-var FCKStyle=function(A){this.Element=(A.Element||'span').toLowerCase();this._StyleDesc=A;};FCKStyle.prototype={GetType:function(){var A=this.GetType_$;if (A!=undefined) return A;var B=this.Element;if (B=='#'||FCKListsLib.StyleBlockElements[B]) A=0;else if (FCKListsLib.StyleObjectElements[B]) A=2;else A=1;return (this.GetType_$=A);},ApplyToSelection:function(A){var B=new FCKDomRange(A);B.MoveToSelection();this.ApplyToRange(B,true);},ApplyToRange:function(A,B,C){switch (this.GetType()){case 0:this.ApplyToRange=this._ApplyBlockStyle;break;case 1:this.ApplyToRange=this._ApplyInlineStyle;break;default:return;};this.ApplyToRange(A,B,C);},ApplyToObject:function(A){if (!A) return;this.BuildElement(null,A);},RemoveFromSelection:function(A){var B=new FCKDomRange(A);B.MoveToSelection();this.RemoveFromRange(B,true);},RemoveFromRange:function(A,B,C){var D;var E=this._GetAttribsForComparison();var F=this._GetOverridesForComparison();if (A.CheckIsCollapsed()){var D=A.CreateBookmark(true);var H=A.GetBookmarkNode(D,true);var I=new FCKElementPath(H.parentNode);var J=[];var K=!FCKDomTools.GetNextSibling(H);var L=K||!FCKDomTools.GetPreviousSibling(H);var M;var N=-1;for (var i=0;i=0;i--){var E=D[i];for (var F in B){if (FCKDomTools.HasAttribute(E,F)){switch (F){case 'style':this._RemoveStylesFromElement(E);break;case 'class':if (FCKDomTools.GetAttributeValue(E,F)!=this.GetFinalAttributeValue(F)) continue;default:FCKDomTools.RemoveAttribute(E,F);}}};this._RemoveOverrides(E,C[this.Element]);this._RemoveNoAttribElement(E);};for (var G in C){if (G!=this.Element){D=A.getElementsByTagName(G);for (var i=D.length-1;i>=0;i--){var E=D[i];this._RemoveOverrides(E,C[G]);this._RemoveNoAttribElement(E);}}}},_RemoveStylesFromElement:function(A){var B=A.style.cssText;var C=this.GetFinalStyleValue();if (B.length>0&&C.length==0) return;C='(^|;)\\s*('+C.replace(/\s*([^ ]+):.*?(;|$)/g,'$1|').replace(/\|$/,'')+'):[^;]+';var D=new RegExp(C,'gi');B=B.replace(D,'').Trim();if (B.length==0||B==';') FCKDomTools.RemoveAttribute(A,'style');else A.style.cssText=B.replace(D,'');},_RemoveOverrides:function(A,B){var C=B&&B.Attributes;if (C){for (var i=0;i0) C.style.cssText=this.GetFinalStyleValue();return C;},_CompareAttributeValues:function(A,B,C){if (A=='style'&&B&&C){B=B.replace(/;$/,'').toLowerCase();C=C.replace(/;$/,'').toLowerCase();};return (B==C||((B===null||B==='')&&(C===null||C==='')))},GetFinalAttributeValue:function(A){var B=this._StyleDesc.Attributes;var B=B?B[A]:null;if (!B&&A=='style') return this.GetFinalStyleValue();if (B&&this._Variables) B=B.Replace(FCKRegexLib.StyleVariableAttName,this._GetVariableReplace,this);return B;},GetFinalStyleValue:function(){var A=this._GetStyleText();if (A.length>0&&this._Variables){A=A.Replace(FCKRegexLib.StyleVariableAttName,this._GetVariableReplace,this);A=FCKTools.NormalizeCssText(A);};return A;},_GetVariableReplace:function(){return this._Variables[arguments[2]]||arguments[0];},SetVariable:function(A,B){var C=this._Variables;if (!C) C=this._Variables={};this._Variables[A]=B;},_FromPre:function(A,B,C){var D=B.innerHTML;D=D.replace(/(\r\n|\r)/g,'\n');D=D.replace(/^[ \t]*\n/,'');D=D.replace(/\n$/,'');D=D.replace(/^[ \t]+|[ \t]+$/g,function(match,offset,s){if (match.length==1) return ' ';else if (offset==0) return new Array(match.length).join(' ')+' ';else return ' '+new Array(match.length).join(' ');});var E=new FCKHtmlIterator(D);var F=[];E.Each(function(isTag,value){if (!isTag){value=value.replace(/\n/g,' ');value=value.replace(/[ \t]{2,}/g,function (match){return new Array(match.length).join(' ')+' ';});};F.push(value);});C.innerHTML=F.join('');return C;},_ToPre:function(A,B,C){var D=B.innerHTML.Trim();D=D.replace(/[ \t\r\n]*( ]*>)[ \t\r\n]*/gi,' ');var E=new FCKHtmlIterator(D);var F=[];E.Each(function(isTag,value){if (!isTag) value=value.replace(/([ \t\n\r]+| )/g,' ');else if (isTag&&value==' ') value='\n';F.push(value);});if (FCKBrowserInfo.IsIE){var G=A.createElement('div');G.appendChild(C);C.outerHTML='\n'+F.join('')+' ';C=G.removeChild(G.firstChild);}else C.innerHTML=F.join('');return C;},_CheckAndMergePre:function(A,B){if (A!=FCKDomTools.GetPreviousSourceElement(B,true)) return;var C=A.innerHTML.replace(/\n$/,'')+'\n\n'+B.innerHTML.replace(/^\n/,'');if (FCKBrowserInfo.IsIE) B.outerHTML=''+C+' ';else B.innerHTML=C;FCKDomTools.RemoveNode(A);},_CheckAndSplitPre:function(A){var B;var C=A.firstChild;C=C&&C.nextSibling;while (C){var D=C.nextSibling;if (D&&D.nextSibling&&C.nodeName.IEquals('br')&&D.nodeName.IEquals('br')){FCKDomTools.RemoveNode(C);C=D.nextSibling;FCKDomTools.RemoveNode(D);B=FCKDomTools.InsertAfterNode(B||A,FCKDomTools.CloneElement(A));continue;};if (B){C=C.previousSibling;FCKDomTools.MoveNode(C.nextSibling,B);};C=C.nextSibling;}},_ApplyBlockStyle:function(A,B,C){var D;if (B) D=A.CreateBookmark();var E=new FCKDomRangeIterator(A);E.EnforceRealBlocks=true;var F;var G=A.Window.document;var H;while((F=E.GetNextParagraph())){var I=this.BuildElement(G);var J=I.nodeName.IEquals('pre');var K=F.nodeName.IEquals('pre');var L=J&&!K;var M=!J&&K;if (L) I=this._ToPre(G,F,I);else if (M) I=this._FromPre(G,F,I);else FCKDomTools.MoveChildren(F,I);F.parentNode.insertBefore(I,F);FCKDomTools.RemoveNode(F);if (J){if (H) this._CheckAndMergePre(H,I);H=I;}else if (M) this._CheckAndSplitPre(I);};if (B) A.SelectBookmark(D);if (C) A.MoveToBookmark(D);},_ApplyInlineStyle:function(A,B,C){var D=A.Window.document;if (A.CheckIsCollapsed()){var E=this.BuildElement(D);A.InsertNode(E);A.MoveToPosition(E,2);A.Select();return;};var F=this.Element;var G=FCK.DTD[F]||FCK.DTD.span;var H=this._GetAttribsForComparison();var I;A.Expand('inline_elements');var J=A.CreateBookmark(true);var K=A.GetBookmarkNode(J,true);var L=A.GetBookmarkNode(J,false);A.Release(true);var M=FCKDomTools.GetNextSourceNode(K,true);while (M){var N=false;var O=M.nodeType;var P=O==1?M.nodeName.toLowerCase():null;if (!P||G[P]){if ((FCK.DTD[M.parentNode.nodeName.toLowerCase()]||FCK.DTD.span)[F]||!FCK.DTD[F]){if (!A.CheckHasRange()) A.SetStart(M,3);if (O!=1||M.childNodes.length==0){var Q=M;var R=Q.parentNode;while (Q==R.lastChild&&G[R.nodeName.toLowerCase()]){Q=R;};A.SetEnd(Q,4);if (Q==Q.parentNode.lastChild&&!G[Q.parentNode.nodeName.toLowerCase()]) N=true;}else{A.SetEnd(M,3);}}else N=true;}else N=true;M=FCKDomTools.GetNextSourceNode(M);if (M==L){M=null;N=true;};if (N&&A.CheckHasRange()&&!A.CheckIsCollapsed()){I=this.BuildElement(D);A.ExtractContents().AppendTo(I);if (I.innerHTML.RTrim().length>0){A.InsertNode(I);this.RemoveFromElement(I);this._MergeSiblings(I,this._GetAttribsForComparison());if (!FCKBrowserInfo.IsIE) I.normalize();};A.Release(true);}};this._FixBookmarkStart(K);if (B) A.SelectBookmark(J);if (C) A.MoveToBookmark(J);},_FixBookmarkStart:function(A){var B;while ((B=A.nextSibling)){if (B.nodeType==1&&FCKListsLib.InlineNonEmptyElements[B.nodeName.toLowerCase()]){if (!B.firstChild) FCKDomTools.RemoveNode(B);else FCKDomTools.MoveNode(A,B,true);continue;};if (B.nodeType==3&&B.length==0){FCKDomTools.RemoveNode(B);continue;};break;}},_MergeSiblings:function(A,B){if (!A||A.nodeType!=1||!FCKListsLib.InlineNonEmptyElements[A.nodeName.toLowerCase()]) return;this._MergeNextSibling(A,B);this._MergePreviousSibling(A,B);},_MergeNextSibling:function(A,B){var C=A.nextSibling;var D=(C&&C.nodeType==1&&C.getAttribute('_fck_bookmark'));if (D) C=C.nextSibling;if (C&&C.nodeType==1&&C.nodeName==A.nodeName){if (!B) B=this._CreateElementAttribsForComparison(A);if (this._CheckAttributesMatch(C,B)){var E=A.lastChild;if (D) FCKDomTools.MoveNode(A.nextSibling,A);FCKDomTools.MoveChildren(C,A);FCKDomTools.RemoveNode(C);if (E) this._MergeNextSibling(E);}}},_MergePreviousSibling:function(A,B){var C=A.previousSibling;var D=(C&&C.nodeType==1&&C.getAttribute('_fck_bookmark'));if (D) C=C.previousSibling;if (C&&C.nodeType==1&&C.nodeName==A.nodeName){if (!B) B=this._CreateElementAttribsForComparison(A);if (this._CheckAttributesMatch(C,B)){var E=A.firstChild;if (D) FCKDomTools.MoveNode(A.previousSibling,A,true);FCKDomTools.MoveChildren(C,A,true);FCKDomTools.RemoveNode(C);if (E) this._MergePreviousSibling(E);}}},_GetStyleText:function(){var A=this._StyleDesc.Styles;var B=(this._StyleDesc.Attributes?this._StyleDesc.Attributes['style']||'':'');if (B.length>0) B+=';';for (var C in A) B+=C+':'+A[C]+';';if (B.length>0&&!(/#\(/.test(B))){B=FCKTools.NormalizeCssText(B);};return (this._GetStyleText=function() { return B;})();},_GetAttribsForComparison:function(){var A=this._GetAttribsForComparison_$;if (A) return A;A={};var B=this._StyleDesc.Attributes;if (B){for (var C in B){A[C.toLowerCase()]=B[C].toLowerCase();}};if (this._GetStyleText().length>0){A['style']=this._GetStyleText().toLowerCase();};FCKTools.AppendLengthProperty(A,'_length');return (this._GetAttribsForComparison_$=A);},_GetOverridesForComparison:function(){var A=this._GetOverridesForComparison_$;if (A) return A;A={};var B=this._StyleDesc.Overrides;if (B){if (!FCKTools.IsArray(B)) B=[B];for (var i=0;i0) return true;};B=B.nextSibling;};return false;}};
-var FCKElementPath=function(A){var B=null;var C=null;var D=[];var e=A;while (e){if (e.nodeType==1){if (!this.LastElement) this.LastElement=e;var E=e.nodeName.toLowerCase();if (FCKBrowserInfo.IsIE&&e.scopeName!='HTML') E=e.scopeName.toLowerCase()+':'+E;if (!C){if (!B&&FCKListsLib.PathBlockElements[E]!=null) B=e;if (FCKListsLib.PathBlockLimitElements[E]!=null){if (!B&&E=='div'&&!FCKElementPath._CheckHasBlock(e)) B=e;else C=e;}};D.push(e);if (E=='body') break;};e=e.parentNode;};this.Block=B;this.BlockLimit=C;this.Elements=D;};FCKElementPath._CheckHasBlock=function(A){var B=A.childNodes;for (var i=0,count=B.length;i0){if (D.nodeType==3){var G=D.nodeValue.substr(0,E).Trim();if (G.length!=0) return A.IsStartOfBlock=false;}else F=D.childNodes[E-1];};if (!F) F=FCKDomTools.GetPreviousSourceNode(D,true,null,C);while (F){switch (F.nodeType){case 1:if (!FCKListsLib.InlineChildReqElements[F.nodeName.toLowerCase()]) return A.IsStartOfBlock=false;break;case 3:if (F.nodeValue.Trim().length>0) return A.IsStartOfBlock=false;};F=FCKDomTools.GetPreviousSourceNode(F,false,null,C);};return A.IsStartOfBlock=true;},CheckEndOfBlock:function(A){var B=this._Cache.IsEndOfBlock;if (B!=undefined) return B;var C=this.EndBlock||this.EndBlockLimit;var D=this._Range.endContainer;var E=this._Range.endOffset;var F;if (D.nodeType==3){var G=D.nodeValue;if (E0) return this._Cache.IsEndOfBlock=false;};F=FCKDomTools.GetNextSourceNode(F,false,null,C);};if (A) this.Select();return this._Cache.IsEndOfBlock=true;},CreateBookmark:function(A){var B={StartId:(new Date()).valueOf()+Math.floor(Math.random()*1000)+'S',EndId:(new Date()).valueOf()+Math.floor(Math.random()*1000)+'E'};var C=this.Window.document;var D;var E;var F;if (!this.CheckIsCollapsed()){E=C.createElement('span');E.style.display='none';E.id=B.EndId;E.setAttribute('_fck_bookmark',true);E.innerHTML=' ';F=this.Clone();F.Collapse(false);F.InsertNode(E);};D=C.createElement('span');D.style.display='none';D.id=B.StartId;D.setAttribute('_fck_bookmark',true);D.innerHTML=' ';F=this.Clone();F.Collapse(true);F.InsertNode(D);if (A){B.StartNode=D;B.EndNode=E;};if (E){this.SetStart(D,4);this.SetEnd(E,3);}else this.MoveToPosition(D,4);return B;},GetBookmarkNode:function(A,B){var C=this.Window.document;if (B) return A.StartNode||C.getElementById(A.StartId);else return A.EndNode||C.getElementById(A.EndId);},MoveToBookmark:function(A,B){var C=this.GetBookmarkNode(A,true);var D=this.GetBookmarkNode(A,false);this.SetStart(C,3);if (!B) FCKDomTools.RemoveNode(C);if (D){this.SetEnd(D,3);if (!B) FCKDomTools.RemoveNode(D);}else this.Collapse(true);this._UpdateElementInfo();},CreateBookmark2:function(){if (!this._Range) return { "Start":0,"End":0 };var A={"Start":[this._Range.startOffset],"End":[this._Range.endOffset]};var B=this._Range.startContainer.previousSibling;var C=this._Range.endContainer.previousSibling;var D=this._Range.startContainer;var E=this._Range.endContainer;while (B&&B.nodeType==3&&D.nodeType==3){A.Start[0]+=B.length;D=B;B=B.previousSibling;}while (C&&C.nodeType==3&&E.nodeType==3){A.End[0]+=C.length;E=C;C=C.previousSibling;};if (D.nodeType==1&&D.childNodes[A.Start[0]]&&D.childNodes[A.Start[0]].nodeType==3){var F=D.childNodes[A.Start[0]];var G=0;while (F.previousSibling&&F.previousSibling.nodeType==3){F=F.previousSibling;G+=F.length;};D=F;A.Start[0]=G;};if (E.nodeType==1&&E.childNodes[A.End[0]]&&E.childNodes[A.End[0]].nodeType==3){var F=E.childNodes[A.End[0]];var G=0;while (F.previousSibling&&F.previousSibling.nodeType==3){F=F.previousSibling;G+=F.length;};E=F;A.End[0]=G;};A.Start=FCKDomTools.GetNodeAddress(D,true).concat(A.Start);A.End=FCKDomTools.GetNodeAddress(E,true).concat(A.End);return A;},MoveToBookmark2:function(A){var B=FCKDomTools.GetNodeFromAddress(this.Window.document,A.Start.slice(0,-1),true);var C=FCKDomTools.GetNodeFromAddress(this.Window.document,A.End.slice(0,-1),true);this.Release(true);this._Range=new FCKW3CRange(this.Window.document);var D=A.Start[A.Start.length-1];var E=A.End[A.End.length-1];while (B.nodeType==3&&D>B.length){if (!B.nextSibling||B.nextSibling.nodeType!=3) break;D-=B.length;B=B.nextSibling;}while (C.nodeType==3&&E>C.length){if (!C.nextSibling||C.nextSibling.nodeType!=3) break;E-=C.length;C=C.nextSibling;};this._Range.setStart(B,D);this._Range.setEnd(C,E);this._UpdateElementInfo();},MoveToPosition:function(A,B){this.SetStart(A,B);this.Collapse(true);},SetStart:function(A,B,C){var D=this._Range;if (!D) D=this._Range=this.CreateRange();switch(B){case 1:D.setStart(A,0);break;case 2:D.setStart(A,A.childNodes.length);break;case 3:D.setStartBefore(A);break;case 4:D.setStartAfter(A);};if (!C) this._UpdateElementInfo();},SetEnd:function(A,B,C){var D=this._Range;if (!D) D=this._Range=this.CreateRange();switch(B){case 1:D.setEnd(A,0);break;case 2:D.setEnd(A,A.childNodes.length);break;case 3:D.setEndBefore(A);break;case 4:D.setEndAfter(A);};if (!C) this._UpdateElementInfo();},Expand:function(A){var B,oSibling;switch (A){case 'inline_elements':if (this._Range.startOffset==0){B=this._Range.startContainer;if (B.nodeType!=1) B=B.previousSibling?null:B.parentNode;if (B){while (FCKListsLib.InlineNonEmptyElements[B.nodeName.toLowerCase()]){this._Range.setStartBefore(B);if (B!=B.parentNode.firstChild) break;B=B.parentNode;}}};B=this._Range.endContainer;var C=this._Range.endOffset;if ((B.nodeType==3&&C>=B.nodeValue.length)||(B.nodeType==1&&C>=B.childNodes.length)||(B.nodeType!=1&&B.nodeType!=3)){if (B.nodeType!=1) B=B.nextSibling?null:B.parentNode;if (B){while (FCKListsLib.InlineNonEmptyElements[B.nodeName.toLowerCase()]){this._Range.setEndAfter(B);if (B!=B.parentNode.lastChild) break;B=B.parentNode;}}};break;case 'block_contents':case 'list_contents':var D=FCKListsLib.BlockBoundaries;if (A=='list_contents'||FCKConfig.EnterMode=='br') D=FCKListsLib.ListBoundaries;if (this.StartBlock&&FCKConfig.EnterMode!='br'&&A=='block_contents') this.SetStart(this.StartBlock,1);else{B=this._Range.startContainer;if (B.nodeType==1){var E=B.childNodes[this._Range.startOffset];if (E) B=FCKDomTools.GetPreviousSourceNode(E,true);else B=B.lastChild||B;}while (B&&(B.nodeType!=1||(B!=this.StartBlockLimit&&!D[B.nodeName.toLowerCase()]))){this._Range.setStartBefore(B);B=B.previousSibling||B.parentNode;}};if (this.EndBlock&&FCKConfig.EnterMode!='br'&&A=='block_contents'&&this.EndBlock.nodeName.toLowerCase()!='li') this.SetEnd(this.EndBlock,2);else{B=this._Range.endContainer;if (B.nodeType==1) B=B.childNodes[this._Range.endOffset]||B.lastChild;while (B&&(B.nodeType!=1||(B!=this.StartBlockLimit&&!D[B.nodeName.toLowerCase()]))){this._Range.setEndAfter(B);B=B.nextSibling||B.parentNode;};if (B&&B.nodeName.toLowerCase()=='br') this._Range.setEndAfter(B);};this._UpdateElementInfo();}},SplitBlock:function(A){var B=A||FCKConfig.EnterMode;if (!this._Range) this.MoveToSelection();if (this.StartBlockLimit==this.EndBlockLimit){var C=this.StartBlock;var D=this.EndBlock;var E=null;if (B!='br'){if (!C){C=this.FixBlock(true,B);D=this.EndBlock;};if (!D) D=this.FixBlock(false,B);};var F=(C!=null&&this.CheckStartOfBlock());var G=(D!=null&&this.CheckEndOfBlock());if (!this.CheckIsEmpty()) this.DeleteContents();if (C&&D&&C==D){if (G){E=new FCKElementPath(this.StartContainer);this.MoveToPosition(D,4);D=null;}else if (F){E=new FCKElementPath(this.StartContainer);this.MoveToPosition(C,3);C=null;}else{this.SetEnd(C,2);var H=this.ExtractContents();D=C.cloneNode(false);D.removeAttribute('id',false);H.AppendTo(D);FCKDomTools.InsertAfterNode(C,D);this.MoveToPosition(C,4);if (FCKBrowserInfo.IsGecko&&!C.nodeName.IEquals(['ul','ol'])) FCKTools.AppendBogusBr(C);}};return {PreviousBlock:C,NextBlock:D,WasStartOfBlock:F,WasEndOfBlock:G,ElementPath:E};};return null;},FixBlock:function(A,B){var C=this.CreateBookmark();this.Collapse(A);this.Expand('block_contents');var D=this.Window.document.createElement(B);this.ExtractContents().AppendTo(D);FCKDomTools.TrimNode(D);if (FCKDomTools.CheckIsEmptyElement(D,function(element) { return element.getAttribute('_fck_bookmark')!='true';})&&FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(D);this.InsertNode(D);this.MoveToBookmark(C);return D;},Release:function(A){if (!A) this.Window=null;this.StartNode=null;this.StartContainer=null;this.StartBlock=null;this.StartBlockLimit=null;this.EndNode=null;this.EndContainer=null;this.EndBlock=null;this.EndBlockLimit=null;this._Range=null;this._Cache=null;},CheckHasRange:function(){return!!this._Range;},GetTouchedStartNode:function(){var A=this._Range;var B=A.startContainer;if (A.collapsed||B.nodeType!=1) return B;return B.childNodes[A.startOffset]||B;},GetTouchedEndNode:function(){var A=this._Range;var B=A.endContainer;if (A.collapsed||B.nodeType!=1) return B;return B.childNodes[A.endOffset-1]||B;}};
-FCKDomRange.prototype.MoveToSelection=function(){this.Release(true);var A=this.Window.getSelection();if (A&&A.rangeCount>0){this._Range=FCKW3CRange.CreateFromRange(this.Window.document,A.getRangeAt(0));this._UpdateElementInfo();}else if (this.Window.document) this.MoveToElementStart(this.Window.document.body);};FCKDomRange.prototype.Select=function(){var A=this._Range;if (A){var B=A.startContainer;if (A.collapsed&&B.nodeType==1&&B.childNodes.length==0) B.appendChild(A._Document.createTextNode(''));var C=this.Window.document.createRange();C.setStart(B,A.startOffset);try{C.setEnd(A.endContainer,A.endOffset);}catch (e){if (e.toString().Contains('NS_ERROR_ILLEGAL_VALUE')){A.collapse(true);C.setEnd(A.endContainer,A.endOffset);}else throw(e);};var D=this.Window.getSelection();D.removeAllRanges();D.addRange(C);}};FCKDomRange.prototype.SelectBookmark=function(A){var B=this.Window.document.createRange();var C=this.GetBookmarkNode(A,true);var D=this.GetBookmarkNode(A,false);B.setStart(C.parentNode,FCKDomTools.GetIndexOf(C));FCKDomTools.RemoveNode(C);if (D){B.setEnd(D.parentNode,FCKDomTools.GetIndexOf(D));FCKDomTools.RemoveNode(D);};var E=this.Window.getSelection();E.removeAllRanges();E.addRange(B);};
-var FCKDomRangeIterator=function(A){this.Range=A;this.ForceBrBreak=false;this.EnforceRealBlocks=false;};FCKDomRangeIterator.CreateFromSelection=function(A){var B=new FCKDomRange(A);B.MoveToSelection();return new FCKDomRangeIterator(B);};FCKDomRangeIterator.prototype={GetNextParagraph:function(){var A;var B;var C;var D;var E;var F=this.ForceBrBreak?FCKListsLib.ListBoundaries:FCKListsLib.BlockBoundaries;if (!this._LastNode){var B=this.Range.Clone();B.Expand(this.ForceBrBreak?'list_contents':'block_contents');this._NextNode=B.GetTouchedStartNode();this._LastNode=B.GetTouchedEndNode();B=null;};var H=this._NextNode;var I=this._LastNode;this._NextNode=null;while (H){var J=false;var K=(H.nodeType!=1);var L=false;if (!K){var M=H.nodeName.toLowerCase();if (F[M]&&(!FCKBrowserInfo.IsIE||H.scopeName=='HTML')){if (M=='br') K=true;else if (!B&&H.childNodes.length==0&&M!='hr'){A=H;C=H==I;break;};if (B){B.SetEnd(H,3,true);if (M!='br') this._NextNode=FCKDomTools.GetNextSourceNode(H,true,null,I)||H;};J=true;}else{if (H.firstChild){if (!B){B=new FCKDomRange(this.Range.Window);B.SetStart(H,3,true);};H=H.firstChild;continue;};K=true;}}else if (H.nodeType==3){if (/^[\r\n\t ]+$/.test(H.nodeValue)) K=false;};if (K&&!B){B=new FCKDomRange(this.Range.Window);B.SetStart(H,3,true);};C=((!J||K)&&H==I);if (B&&!J){while (!H.nextSibling&&!C){var N=H.parentNode;if (F[N.nodeName.toLowerCase()]){J=true;C=C||(N==I);break;};H=N;K=true;C=(H==I);L=true;}};if (K) B.SetEnd(H,4,true);if ((J||C)&&B){B._UpdateElementInfo();if (B.StartNode==B.EndNode&&B.StartNode.parentNode==B.StartBlockLimit&&B.StartNode.getAttribute&&B.StartNode.getAttribute('_fck_bookmark')) B=null;else break;};if (C) break;H=FCKDomTools.GetNextSourceNode(H,L,null,I);};if (!A){if (!B){this._NextNode=null;return null;};A=B.StartBlock;if (!A&&!this.EnforceRealBlocks&&B.StartBlockLimit.nodeName.IEquals('DIV','TH','TD')&&B.CheckStartOfBlock()&&B.CheckEndOfBlock()){A=B.StartBlockLimit;}else if (!A||(this.EnforceRealBlocks&&A.nodeName.toLowerCase()=='li')){A=this.Range.Window.document.createElement(FCKConfig.EnterMode=='p'?'p':'div');B.ExtractContents().AppendTo(A);FCKDomTools.TrimNode(A);B.InsertNode(A);D=true;E=true;}else if (A.nodeName.toLowerCase()!='li'){if (!B.CheckStartOfBlock()||!B.CheckEndOfBlock()){A=A.cloneNode(false);B.ExtractContents().AppendTo(A);FCKDomTools.TrimNode(A);var O=B.SplitBlock();D=!O.WasStartOfBlock;E=!O.WasEndOfBlock;B.InsertNode(A);}}else if (!C){this._NextNode=A==I?null:FCKDomTools.GetNextSourceNode(B.EndNode,true,null,I);return A;}};if (D){var P=A.previousSibling;if (P&&P.nodeType==1){if (P.nodeName.toLowerCase()=='br') P.parentNode.removeChild(P);else if (P.lastChild&&P.lastChild.nodeName.IEquals('br')) P.removeChild(P.lastChild);}};if (E){var Q=A.lastChild;if (Q&&Q.nodeType==1&&Q.nodeName.toLowerCase()=='br') A.removeChild(Q);};if (!this._NextNode) this._NextNode=(C||A==I)?null:FCKDomTools.GetNextSourceNode(A,true,null,I);return A;}};
-var FCKDocumentFragment=function(A,B){this.RootNode=B||A.createDocumentFragment();};FCKDocumentFragment.prototype={AppendTo:function(A){A.appendChild(this.RootNode);},AppendHtml:function(A){var B=this.RootNode.ownerDocument.createElement('div');B.innerHTML=A;FCKDomTools.MoveChildren(B,this.RootNode);},InsertAfterNode:function(A){FCKDomTools.InsertAfterNode(A,this.RootNode);}};
-var FCKW3CRange=function(A){this._Document=A;this.startContainer=null;this.startOffset=null;this.endContainer=null;this.endOffset=null;this.collapsed=true;};FCKW3CRange.CreateRange=function(A){return new FCKW3CRange(A);};FCKW3CRange.CreateFromRange=function(A,B){var C=FCKW3CRange.CreateRange(A);C.setStart(B.startContainer,B.startOffset);C.setEnd(B.endContainer,B.endOffset);return C;};FCKW3CRange.prototype={_UpdateCollapsed:function(){this.collapsed=(this.startContainer==this.endContainer&&this.startOffset==this.endOffset);},setStart:function(A,B){this.startContainer=A;this.startOffset=B;if (!this.endContainer){this.endContainer=A;this.endOffset=B;};this._UpdateCollapsed();},setEnd:function(A,B){this.endContainer=A;this.endOffset=B;if (!this.startContainer){this.startContainer=A;this.startOffset=B;};this._UpdateCollapsed();},setStartAfter:function(A){this.setStart(A.parentNode,FCKDomTools.GetIndexOf(A)+1);},setStartBefore:function(A){this.setStart(A.parentNode,FCKDomTools.GetIndexOf(A));},setEndAfter:function(A){this.setEnd(A.parentNode,FCKDomTools.GetIndexOf(A)+1);},setEndBefore:function(A){this.setEnd(A.parentNode,FCKDomTools.GetIndexOf(A));},collapse:function(A){if (A){this.endContainer=this.startContainer;this.endOffset=this.startOffset;}else{this.startContainer=this.endContainer;this.startOffset=this.endOffset;};this.collapsed=true;},selectNodeContents:function(A){this.setStart(A,0);this.setEnd(A,A.nodeType==3?A.data.length:A.childNodes.length);},insertNode:function(A){var B=this.startContainer;var C=this.startOffset;if (B.nodeType==3){B.splitText(C);if (B==this.endContainer) this.setEnd(B.nextSibling,this.endOffset-this.startOffset);FCKDomTools.InsertAfterNode(B,A);return;}else{B.insertBefore(A,B.childNodes[C]||null);if (B==this.endContainer){this.endOffset++;this.collapsed=false;}}},deleteContents:function(){if (this.collapsed) return;this._ExecContentsAction(0);},extractContents:function(){var A=new FCKDocumentFragment(this._Document);if (!this.collapsed) this._ExecContentsAction(1,A);return A;},cloneContents:function(){var A=new FCKDocumentFragment(this._Document);if (!this.collapsed) this._ExecContentsAction(2,A);return A;},_ExecContentsAction:function(A,B){var C=this.startContainer;var D=this.endContainer;var E=this.startOffset;var F=this.endOffset;var G=false;var H=false;if (D.nodeType==3) D=D.splitText(F);else{if (D.childNodes.length>0){if (F>D.childNodes.length-1){D=FCKDomTools.InsertAfterNode(D.lastChild,this._Document.createTextNode(''));H=true;}else D=D.childNodes[F];}};if (C.nodeType==3){C.splitText(E);if (C==D) D=C.nextSibling;}else{if (E==0){C=C.insertBefore(this._Document.createTextNode(''),C.firstChild);G=true;}else if (E>C.childNodes.length-1){C=C.appendChild(this._Document.createTextNode(''));G=true;}else C=C.childNodes[E].previousSibling;};var I=FCKDomTools.GetParents(C);var J=FCKDomTools.GetParents(D);var i,topStart,topEnd;for (i=0;i0&&levelStartNode!=D) levelClone=K.appendChild(levelStartNode.cloneNode(levelStartNode==D));if (!I[k]||levelStartNode.parentNode!=I[k].parentNode){currentNode=levelStartNode.previousSibling;while(currentNode){if (currentNode==I[k]||currentNode==C) break;currentSibling=currentNode.previousSibling;if (A==2) K.insertBefore(currentNode.cloneNode(true),K.firstChild);else{currentNode.parentNode.removeChild(currentNode);if (A==1) K.insertBefore(currentNode,K.firstChild);};currentNode=currentSibling;}};if (K) K=levelClone;};if (A==2){var L=this.startContainer;if (L.nodeType==3){L.data+=L.nextSibling.data;L.parentNode.removeChild(L.nextSibling);};var M=this.endContainer;if (M.nodeType==3&&M.nextSibling){M.data+=M.nextSibling.data;M.parentNode.removeChild(M.nextSibling);}}else{if (topStart&&topEnd&&(C.parentNode!=topStart.parentNode||D.parentNode!=topEnd.parentNode)){var N=FCKDomTools.GetIndexOf(topEnd);if (G&&topEnd.parentNode==C.parentNode) N--;this.setStart(topEnd.parentNode,N);};this.collapse(true);};if(G) C.parentNode.removeChild(C);if(H&&D.parentNode) D.parentNode.removeChild(D);},cloneRange:function(){return FCKW3CRange.CreateFromRange(this._Document,this);}};
-var FCKEnterKey=function(A,B,C,D){this.Window=A;this.EnterMode=B||'p';this.ShiftEnterMode=C||'br';var E=new FCKKeystrokeHandler(false);E._EnterKey=this;E.OnKeystroke=FCKEnterKey_OnKeystroke;E.SetKeystrokes([[13,'Enter'],[SHIFT+13,'ShiftEnter'],[8,'Backspace'],[CTRL+8,'CtrlBackspace'],[46,'Delete']]);this.TabText='';if (D>0||FCKBrowserInfo.IsSafari){while (D--) this.TabText+='\xa0';E.SetKeystrokes([9,'Tab']);};E.AttachToElement(A.document);};function FCKEnterKey_OnKeystroke(A,B){var C=this._EnterKey;try{switch (B){case 'Enter':return C.DoEnter();break;case 'ShiftEnter':return C.DoShiftEnter();break;case 'Backspace':return C.DoBackspace();break;case 'Delete':return C.DoDelete();break;case 'Tab':return C.DoTab();break;case 'CtrlBackspace':return C.DoCtrlBackspace();break;}}catch (e){};return false;};FCKEnterKey.prototype.DoEnter=function(A,B){FCKUndo.SaveUndoStep();this._HasShift=(B===true);var C=FCKSelection.GetParentElement();var D=new FCKElementPath(C);var E=A||this.EnterMode;if (E=='br'||D.Block&&D.Block.tagName.toLowerCase()=='pre') return this._ExecuteEnterBr();else return this._ExecuteEnterBlock(E);};FCKEnterKey.prototype.DoShiftEnter=function(){return this.DoEnter(this.ShiftEnterMode,true);};FCKEnterKey.prototype.DoBackspace=function(){var A=false;var B=new FCKDomRange(this.Window);B.MoveToSelection();if (FCKBrowserInfo.IsIE&&this._CheckIsAllContentsIncluded(B,this.Window.document.body)){this._FixIESelectAllBug(B);return true;};var C=B.CheckIsCollapsed();if (!C){if (FCKBrowserInfo.IsIE&&this.Window.document.selection.type.toLowerCase()=="control"){var D=this.Window.document.selection.createRange();for (var i=D.length-1;i>=0;i--){var E=D.item(i);E.parentNode.removeChild(E);};return true;};return false;};if (FCKBrowserInfo.IsIE){var F=FCKDomTools.GetPreviousSourceElement(B.StartNode,true);if (F&&F.nodeName.toLowerCase()=='br'){var G=B.Clone();G.SetStart(F,4);if (G.CheckIsEmpty()){F.parentNode.removeChild(F);return true;}}};var H=B.StartBlock;var I=B.EndBlock;if (B.StartBlockLimit==B.EndBlockLimit&&H&&I){if (!C){var J=B.CheckEndOfBlock();B.DeleteContents();if (H!=I){B.SetStart(I,1);B.SetEnd(I,1);};B.Select();A=(H==I);};if (B.CheckStartOfBlock()){var K=B.StartBlock;var L=FCKDomTools.GetPreviousSourceElement(K,true,['BODY',B.StartBlockLimit.nodeName],['UL','OL']);A=this._ExecuteBackspace(B,L,K);}else if (FCKBrowserInfo.IsGeckoLike){B.Select();}};B.Release();return A;};FCKEnterKey.prototype.DoCtrlBackspace=function(){FCKUndo.SaveUndoStep();var A=new FCKDomRange(this.Window);A.MoveToSelection();if (FCKBrowserInfo.IsIE&&this._CheckIsAllContentsIncluded(A,this.Window.document.body)){this._FixIESelectAllBug(A);return true;};return false;};FCKEnterKey.prototype._ExecuteBackspace=function(A,B,C){var D=false;if (!B&&C&&C.nodeName.IEquals('LI')&&C.parentNode.parentNode.nodeName.IEquals('LI')){this._OutdentWithSelection(C,A);return true;};if (B&&B.nodeName.IEquals('LI')){var E=FCKDomTools.GetLastChild(B,['UL','OL']);while (E){B=FCKDomTools.GetLastChild(E,'LI');E=FCKDomTools.GetLastChild(B,['UL','OL']);}};if (B&&C){if (C.nodeName.IEquals('LI')&&!B.nodeName.IEquals('LI')){this._OutdentWithSelection(C,A);return true;};var F=C.parentNode;var G=B.nodeName.toLowerCase();if (FCKListsLib.EmptyElements[G]!=null||G=='table'){FCKDomTools.RemoveNode(B);D=true;}else{FCKDomTools.RemoveNode(C);while (F.innerHTML.Trim().length==0){var H=F.parentNode;H.removeChild(F);F=H;};FCKDomTools.LTrimNode(C);FCKDomTools.RTrimNode(B);A.SetStart(B,2,true);A.Collapse(true);var I=A.CreateBookmark(true);if (!C.tagName.IEquals(['TABLE'])) FCKDomTools.MoveChildren(C,B);A.SelectBookmark(I);D=true;}};return D;};FCKEnterKey.prototype.DoDelete=function(){FCKUndo.SaveUndoStep();var A=false;var B=new FCKDomRange(this.Window);B.MoveToSelection();if (FCKBrowserInfo.IsIE&&this._CheckIsAllContentsIncluded(B,this.Window.document.body)){this._FixIESelectAllBug(B);return true;};if (B.CheckIsCollapsed()&&B.CheckEndOfBlock(FCKBrowserInfo.IsGeckoLike)){var C=B.StartBlock;var D=FCKTools.GetElementAscensor(C,'td');var E=FCKDomTools.GetNextSourceElement(C,true,[B.StartBlockLimit.nodeName],['UL','OL','TR'],true);if (D){var F=FCKTools.GetElementAscensor(E,'td');if (F!=D) return true;};A=this._ExecuteBackspace(B,C,E);};B.Release();return A;};FCKEnterKey.prototype.DoTab=function(){var A=new FCKDomRange(this.Window);A.MoveToSelection();var B=A._Range.startContainer;while (B){if (B.nodeType==1){var C=B.tagName.toLowerCase();if (C=="tr"||C=="td"||C=="th"||C=="tbody"||C=="table") return false;else break;};B=B.parentNode;};if (this.TabText){A.DeleteContents();A.InsertNode(this.Window.document.createTextNode(this.TabText));A.Collapse(false);A.Select();};return true;};FCKEnterKey.prototype._ExecuteEnterBlock=function(A,B){var C=B||new FCKDomRange(this.Window);var D=C.SplitBlock(A);if (D){var E=D.PreviousBlock;var F=D.NextBlock;var G=D.WasStartOfBlock;var H=D.WasEndOfBlock;if (F){if (F.parentNode.nodeName.IEquals('li')){FCKDomTools.BreakParent(F,F.parentNode);FCKDomTools.MoveNode(F,F.nextSibling,true);}}else if (E&&E.parentNode.nodeName.IEquals('li')){FCKDomTools.BreakParent(E,E.parentNode);C.MoveToElementEditStart(E.nextSibling);FCKDomTools.MoveNode(E,E.previousSibling);};if (!G&&!H){if (F.nodeName.IEquals('li')&&F.firstChild&&F.firstChild.nodeName.IEquals(['ul','ol'])) F.insertBefore(FCKTools.GetElementDocument(F).createTextNode('\xa0'),F.firstChild);if (F) C.MoveToElementEditStart(F);}else{if (G&&H&&E.tagName.toUpperCase()=='LI'){C.MoveToElementStart(E);this._OutdentWithSelection(E,C);C.Release();return true;};var I;if (E){var J=E.tagName.toUpperCase();if (!this._HasShift&&!(/^H[1-6]$/).test(J)){I=FCKDomTools.CloneElement(E);}}else if (F) I=FCKDomTools.CloneElement(F);if (!I) I=this.Window.document.createElement(A);var K=D.ElementPath;if (K){for (var i=0,len=K.Elements.length;i=0&&(C=B[i--])){if (C.name.length>0){if (C.innerHTML!==''){if (FCKBrowserInfo.IsIE) C.className+=' FCK__AnchorC';}else{var D=FCKDocumentProcessor_CreateFakeImage('FCK__Anchor',C.cloneNode(true));D.setAttribute('_fckanchor','true',0);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);}}}}};var FCKPageBreaksProcessor=FCKDocumentProcessor.AppendNew();FCKPageBreaksProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('DIV');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.style.pageBreakAfter=='always'&&C.childNodes.length==1&&C.childNodes[0].style&&C.childNodes[0].style.display=='none'){var D=FCKDocumentProcessor_CreateFakeImage('FCK__PageBreak',C.cloneNode(true));C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);}}};var FCKEmbedAndObjectProcessor=(function(){var A=[];var B=function(el){var C=el.cloneNode(true);var D;var E=D=FCKDocumentProcessor_CreateFakeImage('FCK__UnknownObject',C);FCKEmbedAndObjectProcessor.RefreshView(E,el);for (var i=0;i=0;i--) B(G[i]);};var H=function(doc){F('object',doc);F('embed',doc);};return FCKTools.Merge(FCKDocumentProcessor.AppendNew(),{ProcessDocument:function(doc){if (FCKBrowserInfo.IsGecko) FCKTools.RunFunction(H,this,[doc]);else H(doc);},RefreshView:function(placeHolder,original){if (original.getAttribute('width')>0) placeHolder.style.width=FCKTools.ConvertHtmlSizeToStyle(original.getAttribute('width'));if (original.getAttribute('height')>0) placeHolder.style.height=FCKTools.ConvertHtmlSizeToStyle(original.getAttribute('height'));},AddCustomHandler:function(func){A.push(func);}});})();FCK.GetRealElement=function(A){var e=FCKTempBin.Elements[A.getAttribute('_fckrealelement')];if (A.getAttribute('_fckflash')){if (A.style.width.length>0) e.width=FCKTools.ConvertStyleSizeToHtml(A.style.width);if (A.style.height.length>0) e.height=FCKTools.ConvertStyleSizeToHtml(A.style.height);};return e;};if (FCKBrowserInfo.IsIE){FCKDocumentProcessor.AppendNew().ProcessDocument=function(A){var B=A.getElementsByTagName('HR');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){var D=A.createElement('hr');D.mergeAttributes(C,true);FCKDomTools.InsertAfterNode(C,D);C.parentNode.removeChild(C);}}};FCKDocumentProcessor.AppendNew().ProcessDocument=function(A){var B=A.getElementsByTagName('INPUT');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.type=='hidden'){var D=FCKDocumentProcessor_CreateFakeImage('FCK__InputHidden',C.cloneNode(true));D.setAttribute('_fckinputhidden','true',0);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);}}};FCKEmbedAndObjectProcessor.AddCustomHandler(function(A,B){if (!(A.nodeName.IEquals('embed')&&(A.type=='application/x-shockwave-flash'||/\.swf($|#|\?)/i.test(A.src)))) return;B.className='FCK__Flash';B.setAttribute('_fckflash','true',0);});if (FCKBrowserInfo.IsSafari){FCKDocumentProcessor.AppendNew().ProcessDocument=function(A){var B=A.getElementsByClassName?A.getElementsByClassName('Apple-style-span'):Array.prototype.filter.call(A.getElementsByTagName('span'),function(item){ return item.className=='Apple-style-span';});for (var i=B.length-1;i>=0;i--) FCKDomTools.RemoveNode(B[i],true);}};
-var FCKSelection=FCK.Selection={GetParentBlock:function(){var A=this.GetParentElement();while (A){if (FCKListsLib.BlockBoundaries[A.nodeName.toLowerCase()]) break;A=A.parentNode;};return A;},ApplyStyle:function(A){FCKStyles.ApplyStyle(new FCKStyle(A));}};
-FCKSelection.GetType=function(){var A='Text';var B;try { B=this.GetSelection();} catch (e) {};if (B&&B.rangeCount==1){var C=B.getRangeAt(0);if (C.startContainer==C.endContainer&&(C.endOffset-C.startOffset)==1&&C.startContainer.nodeType==1&&FCKListsLib.StyleObjectElements[C.startContainer.childNodes[C.startOffset].nodeName.toLowerCase()]){A='Control';}};return A;};FCKSelection.GetSelectedElement=function(){var A=!!FCK.EditorWindow&&this.GetSelection();if (!A||A.rangeCount<1) return null;var B=A.getRangeAt(0);if (B.startContainer!=B.endContainer||B.startContainer.nodeType!=1||B.startOffset!=B.endOffset-1) return null;var C=B.startContainer.childNodes[B.startOffset];if (C.nodeType!=1) return null;return C;};FCKSelection.GetParentElement=function(){if (this.GetType()=='Control') return FCKSelection.GetSelectedElement().parentNode;else{var A=this.GetSelection();if (A){if (A.anchorNode&&A.anchorNode==A.focusNode){var B=A.getRangeAt(0);if (B.collapsed||B.startContainer.nodeType==3) return A.anchorNode.parentNode;else return A.anchorNode;};var C=new FCKElementPath(A.anchorNode);var D=new FCKElementPath(A.focusNode);var E=null;var F=null;if (C.Elements.length>D.Elements.length){E=C.Elements;F=D.Elements;}else{E=D.Elements;F=C.Elements;};var G=E.length-F.length;for(var i=0;i0){var C=B.getRangeAt(A?0:(B.rangeCount-1));var D=A?C.startContainer:C.endContainer;return (D.nodeType==1?D:D.parentNode);}};return null;};FCKSelection.SelectNode=function(A){var B=FCK.EditorDocument.createRange();B.selectNode(A);var C=this.GetSelection();C.removeAllRanges();C.addRange(B);};FCKSelection.Collapse=function(A){var B=this.GetSelection();if (A==null||A===true) B.collapseToStart();else B.collapseToEnd();};FCKSelection.HasAncestorNode=function(A){var B=this.GetSelectedElement();if (!B&&FCK.EditorWindow){try { B=this.GetSelection().getRangeAt(0).startContainer;}catch(e){}}while (B){if (B.nodeType==1&&B.nodeName.IEquals(A)) return true;B=B.parentNode;};return false;};FCKSelection.MoveToAncestorNode=function(A){var B;var C=this.GetSelectedElement();if (!C) C=this.GetSelection().getRangeAt(0).startContainer;while (C){if (C.nodeName.IEquals(A)) return C;C=C.parentNode;};return null;};FCKSelection.Delete=function(){var A=this.GetSelection();for (var i=0;i=0;i--){if (C[i]) FCKTableHandler.DeleteRows(C[i]);};return;};var E=FCKTools.GetElementAscensor(A,'TABLE');if (E.rows.length==1){FCKTableHandler.DeleteTable(E);return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteTable=function(A){if (!A){A=FCKSelection.GetSelectedElement();if (!A||A.tagName!='TABLE') A=FCKSelection.MoveToAncestorNode('TABLE');};if (!A) return;FCKSelection.SelectNode(A);FCKSelection.Collapse();if (A.parentNode.childNodes.length==1) A.parentNode.parentNode.removeChild(A.parentNode);else A.parentNode.removeChild(A);};FCKTableHandler.InsertColumn=function(A){var B=null;var C=this.GetSelectedCells();if (C&&C.length) B=C[A?0:(C.length-1)];if (!B) return;var D=FCKTools.GetElementAscensor(B,'TABLE');var E=B.cellIndex;for (var i=0;i=0;i--){if (B[i]) FCKTableHandler.DeleteColumns(B[i]);};return;};if (!A) return;var C=FCKTools.GetElementAscensor(A,'TABLE');var D=A.cellIndex;for (var i=C.rows.length-1;i>=0;i--){var E=C.rows[i];if (D==0&&E.cells.length==1){FCKTableHandler.DeleteRows(E);continue;};if (E.cells[D]) E.removeChild(E.cells[D]);}};FCKTableHandler.InsertCell=function(A,B){var C=null;var D=this.GetSelectedCells();if (D&&D.length) C=D[B?0:(D.length-1)];if (!C) return null;var E=FCK.EditorDocument.createElement('TD');if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(E);if (!B&&C.cellIndex==C.parentNode.cells.length-1) C.parentNode.appendChild(E);else C.parentNode.insertBefore(E,B?C:C.nextSibling);return E;};FCKTableHandler.DeleteCell=function(A){if (A.parentNode.cells.length==1){FCKTableHandler.DeleteRows(A.parentNode);return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteCells=function(){var A=FCKTableHandler.GetSelectedCells();for (var i=A.length-1;i>=0;i--){FCKTableHandler.DeleteCell(A[i]);}};FCKTableHandler._MarkCells=function(A,B){for (var i=0;i=E.height){for (D=F;D0){var L=K.removeChild(K.firstChild);if (L.nodeType!=1||(L.getAttribute('type',2)!='_moz'&&L.getAttribute('_moz_dirty')!=null)){I.appendChild(L);J++;}}};if (J>0) I.appendChild(FCK.EditorDocument.createElement('br'));};this._ReplaceCellsByMarker(C,'_SelectedCells',B);this._UnmarkCells(A,'_SelectedCells');this._InstallTableMap(C,B.parentNode.parentNode.parentNode);B.appendChild(I);if (FCKBrowserInfo.IsGeckoLike&&(!B.firstChild)) FCKTools.AppendBogusBr(B);this._MoveCaretToCell(B,false);};FCKTableHandler.MergeRight=function(){var A=this.GetMergeRightTarget();if (A==null) return;var B=A.refCell;var C=A.tableMap;var D=A.nextCell;var E=FCK.EditorDocument.createDocumentFragment();while (D&&D.childNodes&&D.childNodes.length>0) E.appendChild(D.removeChild(D.firstChild));D.parentNode.removeChild(D);B.appendChild(E);this._MarkCells([D],'_Replace');this._ReplaceCellsByMarker(C,'_Replace',B);this._InstallTableMap(C,B.parentNode.parentNode.parentNode);this._MoveCaretToCell(B,false);};FCKTableHandler.MergeDown=function(){var A=this.GetMergeDownTarget();if (A==null) return;var B=A.refCell;var C=A.tableMap;var D=A.nextCell;var E=FCKTools.GetElementDocument(B).createDocumentFragment();while (D&&D.childNodes&&D.childNodes.length>0) E.appendChild(D.removeChild(D.firstChild));if (E.firstChild) E.insertBefore(FCK.EditorDocument.createElement('br'),E.firstChild);B.appendChild(E);this._MarkCells([D],'_Replace');this._ReplaceCellsByMarker(C,'_Replace',B);this._InstallTableMap(C,B.parentNode.parentNode.parentNode);this._MoveCaretToCell(B,false);};FCKTableHandler.HorizontalSplitCell=function(){var A=FCKTableHandler.GetSelectedCells();if (A.length!=1) return;var B=A[0];var C=this._CreateTableMap(B);var D=B.parentNode.rowIndex;var E=FCKTableHandler._GetCellIndexSpan(C,D,B);var F=isNaN(B.colSpan)?1:B.colSpan;if (F>1){var G=Math.ceil(F/2);var H=FCK.EditorDocument.createElement(B.nodeName);if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(H);var I=E+G;var J=E+F;var K=isNaN(B.rowSpan)?1:B.rowSpan;for (var r=D;r1){B.rowSpan=Math.ceil(G/2);var H=D+Math.ceil(G/2);var I=C[H];var J=null;for (var i=E+1;i1) K.colSpan=F;if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(K);B.parentNode.parentNode.parentNode.rows[H].insertBefore(K,J);}else{var L=B.parentNode.sectionRowIndex+1;var M=FCK.EditorDocument.createElement('tr');var N=B.parentNode.parentNode;if (N.rows.length>L) N.insertBefore(M,N.rows[L]);else N.appendChild(M);for (var i=0;i1) K.colSpan=F;if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(K);M.appendChild(K);}};FCKTableHandler._GetCellIndexSpan=function(A,B,C){if (A.lengthE) E=j;if (D._colScanned===true) continue;if (A[i][j-1]==D) D.colSpan++;if (A[i][j+1]!=D) D._colScanned=true;}};for (var i=0;i<=E;i++){for (var j=0;j ';var A=FCKDocumentProcessor_CreateFakeImage('FCK__PageBreak',e);var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=B.SplitBlock();B.InsertNode(A);FCK.Events.FireEvent('OnSelectionChange');};FCKPageBreakCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;return 0;};var FCKUnlinkCommand=function(){this.Name='Unlink';};FCKUnlinkCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();if (FCKBrowserInfo.IsGeckoLike){var A=FCK.Selection.MoveToAncestorNode('A');if (A) FCKTools.RemoveOuterTags(A);return;};FCK.ExecuteNamedCommand(this.Name);};FCKUnlinkCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;var A=FCK.GetNamedCommandState(this.Name);if (A==0&&FCK.EditMode==0){var B=FCKSelection.MoveToAncestorNode('A');var C=(B&&B.name.length>0&&B.href.length==0);if (C) A=-1;};return A;};var FCKVisitLinkCommand=function(){this.Name='VisitLink';};FCKVisitLinkCommand.prototype={GetState:function(){if (FCK.EditMode!=0) return -1;var A=FCK.GetNamedCommandState('Unlink');if (A==0){var B=FCKSelection.MoveToAncestorNode('A');if (!B.href) A=-1;};return A;},Execute:function(){var A=FCKSelection.MoveToAncestorNode('A');var B=A.getAttribute('_fcksavedurl')||A.getAttribute('href',2);if (!/:\/\//.test(B)){var C=FCKConfig.BaseHref;var D=FCK.GetInstanceObject('parent');if (!C){C=D.document.location.href;C=C.substring(0,C.lastIndexOf('/')+1);};if (/^\//.test(B)){try{C=C.match(/^.*:\/\/+[^\/]+/)[0];}catch (e){C=D.document.location.protocol+'://'+D.parent.document.location.host;}};B=C+B;};if (!window.open(B,'_blank')) alert(FCKLang.VisitLinkBlocked);}};var FCKSelectAllCommand=function(){this.Name='SelectAll';};FCKSelectAllCommand.prototype.Execute=function(){if (FCK.EditMode==0){FCK.ExecuteNamedCommand('SelectAll');}else{var A=FCK.EditingArea.Textarea;if (FCKBrowserInfo.IsIE){A.createTextRange().execCommand('SelectAll');}else{A.selectionStart=0;A.selectionEnd=A.value.length;};A.focus();}};FCKSelectAllCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;return 0;};var FCKPasteCommand=function(){this.Name='Paste';};FCKPasteCommand.prototype={Execute:function(){if (FCKBrowserInfo.IsIE) FCK.Paste();else FCK.ExecuteNamedCommand('Paste');},GetState:function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('Paste');}};var FCKRuleCommand=function(){this.Name='Rule';};FCKRuleCommand.prototype={Execute:function(){FCKUndo.SaveUndoStep();FCK.InsertElement('hr');},GetState:function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('InsertHorizontalRule');}};var FCKCutCopyCommand=function(A){this.Name=A?'Cut':'Copy';};FCKCutCopyCommand.prototype={Execute:function(){var A=false;if (FCKBrowserInfo.IsIE){var B=function(){A=true;};var C='on'+this.Name.toLowerCase();FCK.EditorDocument.body.attachEvent(C,B);FCK.ExecuteNamedCommand(this.Name);FCK.EditorDocument.body.detachEvent(C,B);}else{try{FCK.ExecuteNamedCommand(this.Name);A=true;}catch(e){}};if (!A) alert(FCKLang['PasteError'+this.Name]);},GetState:function(){return FCK.EditMode!=0?-1:FCK.GetNamedCommandState('Cut');}};var FCKAnchorDeleteCommand=function(){this.Name='AnchorDelete';};FCKAnchorDeleteCommand.prototype={Execute:function(){if (FCK.Selection.GetType()=='Control'){FCK.Selection.Delete();}else{var A=FCK.Selection.GetSelectedElement();if (A){if (A.tagName=='IMG'&&A.getAttribute('_fckanchor')) oAnchor=FCK.GetRealElement(A);else A=null;};if (!A){oAnchor=FCK.Selection.MoveToAncestorNode('A');if (oAnchor) FCK.Selection.SelectNode(oAnchor);};if (oAnchor.href.length!=0){oAnchor.removeAttribute('name');if (FCKBrowserInfo.IsIE) oAnchor.className=oAnchor.className.replace(FCKRegexLib.FCK_Class,'');return;};if (A){A.parentNode.removeChild(A);return;};if (oAnchor.innerHTML.length==0){oAnchor.parentNode.removeChild(oAnchor);return;};FCKTools.RemoveOuterTags(oAnchor);};if (FCKBrowserInfo.IsGecko) FCK.Selection.Collapse(true);},GetState:function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('Unlink');}};var FCKDeleteDivCommand=function(){};FCKDeleteDivCommand.prototype={GetState:function(){if (FCK.EditMode!=0) return -1;var A=FCKSelection.GetParentElement();var B=new FCKElementPath(A);return B.BlockLimit&&B.BlockLimit.nodeName.IEquals('div')?0:-1;},Execute:function(){FCKUndo.SaveUndoStep();var A=FCKDomTools.GetSelectedDivContainers();var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=B.CreateBookmark();for (var i=0;i\n \n \n '+FCKLang.ColorAutomatic+' \n \n ';FCKTools.AddEventListenerEx(C,'click',FCKTextColorCommand_AutoOnClick,this);if (!FCKBrowserInfo.IsIE) C.style.width='96%';var G=FCKConfig.FontColors.toString().split(',');var H=0;while (H
';if (H>=G.length) C.style.visibility='hidden';else FCKTools.AddEventListenerEx(C,'click',FCKTextColorCommand_OnClick,[this,L]);}};if (FCKConfig.EnableMoreFontColors){E=D.insertRow(-1).insertCell(-1);E.colSpan=8;C=E.appendChild(CreateSelectionDiv());C.innerHTML=''+FCKLang.ColorMoreColors+'
';FCKTools.AddEventListenerEx(C,'click',FCKTextColorCommand_MoreOnClick,this);};if (!FCKBrowserInfo.IsIE) C.style.width='96%';};
-var FCKPastePlainTextCommand=function(){this.Name='PasteText';};FCKPastePlainTextCommand.prototype.Execute=function(){FCK.PasteAsPlainText();};FCKPastePlainTextCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('Paste');};
-var FCKPasteWordCommand=function(){this.Name='PasteWord';};FCKPasteWordCommand.prototype.Execute=function(){FCK.PasteFromWord();};FCKPasteWordCommand.prototype.GetState=function(){if (FCK.EditMode!=0||FCKConfig.ForcePasteAsPlainText) return -1;else return FCK.GetNamedCommandState('Paste');};
-var FCKTableCommand=function(A){this.Name=A;};FCKTableCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();if (!FCKBrowserInfo.IsGecko){switch (this.Name){case 'TableMergeRight':return FCKTableHandler.MergeRight();case 'TableMergeDown':return FCKTableHandler.MergeDown();}};switch (this.Name){case 'TableInsertRowAfter':return FCKTableHandler.InsertRow(false);case 'TableInsertRowBefore':return FCKTableHandler.InsertRow(true);case 'TableDeleteRows':return FCKTableHandler.DeleteRows();case 'TableInsertColumnAfter':return FCKTableHandler.InsertColumn(false);case 'TableInsertColumnBefore':return FCKTableHandler.InsertColumn(true);case 'TableDeleteColumns':return FCKTableHandler.DeleteColumns();case 'TableInsertCellAfter':return FCKTableHandler.InsertCell(null,false);case 'TableInsertCellBefore':return FCKTableHandler.InsertCell(null,true);case 'TableDeleteCells':return FCKTableHandler.DeleteCells();case 'TableMergeCells':return FCKTableHandler.MergeCells();case 'TableHorizontalSplitCell':return FCKTableHandler.HorizontalSplitCell();case 'TableVerticalSplitCell':return FCKTableHandler.VerticalSplitCell();case 'TableDelete':return FCKTableHandler.DeleteTable();default:return alert(FCKLang.UnknownCommand.replace(/%1/g,this.Name));}};FCKTableCommand.prototype.GetState=function(){if (FCK.EditorDocument!=null&&FCKSelection.HasAncestorNode('TABLE')){switch (this.Name){case 'TableHorizontalSplitCell':case 'TableVerticalSplitCell':if (FCKTableHandler.GetSelectedCells().length==1) return 0;else return -1;case 'TableMergeCells':if (FCKTableHandler.CheckIsSelectionRectangular()&&FCKTableHandler.GetSelectedCells().length>1) return 0;else return -1;case 'TableMergeRight':return FCKTableHandler.GetMergeRightTarget()?0:-1;case 'TableMergeDown':return FCKTableHandler.GetMergeDownTarget()?0:-1;default:return 0;}}else return -1;};
-var FCKFitWindow=function(){this.Name='FitWindow';};FCKFitWindow.prototype.Execute=function(){var A=window.frameElement;var B=A.style;var C=parent;var D=C.document.documentElement;var E=C.document.body;var F=E.style;var G;var H,oEditorScrollPos;if (FCK.EditMode==0){H=new FCKDomRange(FCK.EditorWindow);H.MoveToSelection();oEditorScrollPos=FCKTools.GetScrollPosition(FCK.EditorWindow);}else{var I=FCK.EditingArea.Textarea;H=!FCKBrowserInfo.IsIE&&[I.selectionStart,I.selectionEnd];oEditorScrollPos=[I.scrollLeft,I.scrollTop];};if (!this.IsMaximized){if(FCKBrowserInfo.IsIE) C.attachEvent('onresize',FCKFitWindow_Resize);else C.addEventListener('resize',FCKFitWindow_Resize,true);this._ScrollPos=FCKTools.GetScrollPosition(C);G=A;while((G=G.parentNode)){if (G.nodeType==1){G._fckSavedStyles=FCKTools.SaveStyles(G);G.style.zIndex=FCKConfig.FloatingPanelsZIndex-1;}};if (FCKBrowserInfo.IsIE){this.documentElementOverflow=D.style.overflow;D.style.overflow='hidden';F.overflow='hidden';}else{F.overflow='hidden';F.width='0px';F.height='0px';};this._EditorFrameStyles=FCKTools.SaveStyles(A);var J=FCKTools.GetViewPaneSize(C);B.position="absolute";A.offsetLeft;B.zIndex=FCKConfig.FloatingPanelsZIndex-1;B.left="0px";B.top="0px";B.width=J.Width+"px";B.height=J.Height+"px";if (!FCKBrowserInfo.IsIE){B.borderRight=B.borderBottom="9999px solid white";B.backgroundColor="white";};C.scrollTo(0,0);var K=FCKTools.GetWindowPosition(C,A);if (K.x!=0) B.left=(-1*K.x)+"px";if (K.y!=0) B.top=(-1*K.y)+"px";this.IsMaximized=true;}else{if(FCKBrowserInfo.IsIE) C.detachEvent("onresize",FCKFitWindow_Resize);else C.removeEventListener("resize",FCKFitWindow_Resize,true);G=A;while((G=G.parentNode)){if (G._fckSavedStyles){FCKTools.RestoreStyles(G,G._fckSavedStyles);G._fckSavedStyles=null;}};if (FCKBrowserInfo.IsIE) D.style.overflow=this.documentElementOverflow;FCKTools.RestoreStyles(A,this._EditorFrameStyles);C.scrollTo(this._ScrollPos.X,this._ScrollPos.Y);this.IsMaximized=false;};FCKToolbarItems.GetItem('FitWindow').RefreshState();if (FCK.EditMode==0) FCK.EditingArea.MakeEditable();FCK.Focus();if (FCK.EditMode==0){H.Select();FCK.EditorWindow.scrollTo(oEditorScrollPos.X,oEditorScrollPos.Y);}else{if (!FCKBrowserInfo.IsIE){I.selectionStart=H[0];I.selectionEnd=H[1];};I.scrollLeft=oEditorScrollPos[0];I.scrollTop=oEditorScrollPos[1];}};FCKFitWindow.prototype.GetState=function(){if (FCKConfig.ToolbarLocation!='In') return -1;else return (this.IsMaximized?1:0);};function FCKFitWindow_Resize(){var A=FCKTools.GetViewPaneSize(parent);var B=window.frameElement.style;B.width=A.Width+'px';B.height=A.Height+'px';};
-var FCKListCommand=function(A,B){this.Name=A;this.TagName=B;};FCKListCommand.prototype={GetState:function(){if (FCK.EditMode!=0||!FCK.EditorWindow) return -1;var A=FCKSelection.GetBoundaryParentElement(true);var B=A;while (B){if (B.nodeName.IEquals(['ul','ol'])) break;B=B.parentNode;};if (B&&B.nodeName.IEquals(this.TagName)) return 1;else return 0;},Execute:function(){FCKUndo.SaveUndoStep();var A=FCK.EditorDocument;var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=this.GetState();if (C==0){FCKDomTools.TrimNode(A.body);if (!A.body.firstChild){var D=A.createElement('p');A.body.appendChild(D);B.MoveToNodeContents(D);}};var E=B.CreateBookmark();var F=[];var G={};var H=new FCKDomRangeIterator(B);var I;H.ForceBrBreak=(C==0);var J=true;var K=null;while (J){while ((I=H.GetNextParagraph())){var L=new FCKElementPath(I);var M=null;var N=false;var O=L.BlockLimit;for (var i=L.Elements.length-1;i>=0;i--){var P=L.Elements[i];if (P.nodeName.IEquals(['ol','ul'])){if (O._FCK_ListGroupObject) O._FCK_ListGroupObject=null;var Q=P._FCK_ListGroupObject;if (Q) Q.contents.push(I);else{Q={ 'root':P,'contents':[I] };F.push(Q);FCKDomTools.SetElementMarker(G,P,'_FCK_ListGroupObject',Q);};N=true;break;}};if (N) continue;var R=O;if (R._FCK_ListGroupObject) R._FCK_ListGroupObject.contents.push(I);else{var Q={ 'root':R,'contents':[I] };FCKDomTools.SetElementMarker(G,R,'_FCK_ListGroupObject',Q);F.push(Q);}};if (FCKBrowserInfo.IsIE) J=false;else{if (K==null){K=[];var T=FCKSelection.GetSelection();if (T&&F.length==0) K.push(T.getRangeAt(0));for (var i=1;T&&i0){var Q=F.shift();if (C==0){if (Q.root.nodeName.IEquals(['ul','ol'])) this._ChangeListType(Q,G,W);else this._CreateList(Q,W);}else if (C==1&&Q.root.nodeName.IEquals(['ul','ol'])) this._RemoveList(Q,G);};for (var i=0;iC[i-1].indent+1){var H=C[i-1].indent+1-C[i].indent;var I=C[i].indent;while (C[i]&&C[i].indent>=I){C[i].indent+=H;i++;};i--;}};var J=FCKDomTools.ArrayToList(C,B);if (A.root.nextSibling==null||A.root.nextSibling.nodeName.IEquals('br')){if (J.listNode.lastChild.nodeName.IEquals('br')) J.listNode.removeChild(J.listNode.lastChild);};A.root.parentNode.replaceChild(J.listNode,A.root);}};
-var FCKJustifyCommand=function(A){this.AlignValue=A;var B=FCKConfig.ContentLangDirection.toLowerCase();this.IsDefaultAlign=(A=='left'&&B=='ltr')||(A=='right'&&B=='rtl');var C=this._CssClassName=(function(){var D=FCKConfig.JustifyClasses;if (D){switch (A){case 'left':return D[0]||null;case 'center':return D[1]||null;case 'right':return D[2]||null;case 'justify':return D[3]||null;}};return null;})();if (C&&C.length>0) this._CssClassRegex=new RegExp('(?:^|\\s+)'+C+'(?=$|\\s)');};FCKJustifyCommand._GetClassNameRegex=function(){var A=FCKJustifyCommand._ClassRegex;if (A!=undefined) return A;var B=[];var C=FCKConfig.JustifyClasses;if (C){for (var i=0;i<4;i++){var D=C[i];if (D&&D.length>0) B.push(D);}};if (B.length>0) A=new RegExp('(?:^|\\s+)(?:'+B.join('|')+')(?=$|\\s)');else A=null;return FCKJustifyCommand._ClassRegex=A;};FCKJustifyCommand.prototype={Execute:function(){FCKUndo.SaveUndoStep();var A=new FCKDomRange(FCK.EditorWindow);A.MoveToSelection();var B=this.GetState();if (B==-1) return;var C=A.CreateBookmark();var D=this._CssClassName;var E=new FCKDomRangeIterator(A);var F;while ((F=E.GetNextParagraph())){F.removeAttribute('align');if (D){var G=F.className.replace(FCKJustifyCommand._GetClassNameRegex(),'');if (B==0){if (G.length>0) G+=' ';F.className=G+D;}else if (G.length==0) FCKDomTools.RemoveAttribute(F,'class');}else{var H=F.style;if (B==0) H.textAlign=this.AlignValue;else{H.textAlign='';if (H.cssText.length==0) F.removeAttribute('style');}}};A.MoveToBookmark(C);A.Select();FCK.Focus();FCK.Events.FireEvent('OnSelectionChange');},GetState:function(){if (FCK.EditMode!=0||!FCK.EditorWindow) return -1;var A=new FCKElementPath(FCKSelection.GetBoundaryParentElement(true));var B=A.Block||A.BlockLimit;if (!B||B.nodeName.toLowerCase()=='body') return 0;var C;if (FCKBrowserInfo.IsIE) C=B.currentStyle.textAlign;else C=FCK.EditorWindow.getComputedStyle(B,'').getPropertyValue('text-align');C=C.replace(/(-moz-|-webkit-|start|auto)/i,'');if ((!C&&this.IsDefaultAlign)||C==this.AlignValue) return 1;return 0;}};
-var FCKIndentCommand=function(A,B){this.Name=A;this.Offset=B;this.IndentCSSProperty=FCKConfig.ContentLangDirection.IEquals('ltr')?'marginLeft':'marginRight';};FCKIndentCommand._InitIndentModeParameters=function(){if (FCKConfig.IndentClasses&&FCKConfig.IndentClasses.length>0){this._UseIndentClasses=true;this._IndentClassMap={};for (var i=0;i0?H+' ':'')+FCKConfig.IndentClasses[G-1];}else{var I=parseInt(E.style[this.IndentCSSProperty],10);if (isNaN(I)) I=0;I+=this.Offset;I=Math.max(I,0);I=Math.ceil(I/this.Offset)*this.Offset;E.style[this.IndentCSSProperty]=I?I+FCKConfig.IndentUnit:'';if (E.getAttribute('style')=='') E.removeAttribute('style');}}},_IndentList:function(A,B){var C=A.StartContainer;var D=A.EndContainer;while (C&&C.parentNode!=B) C=C.parentNode;while (D&&D.parentNode!=B) D=D.parentNode;if (!C||!D) return;var E=C;var F=[];var G=false;while (G==false){if (E==D) G=true;F.push(E);E=E.nextSibling;};if (F.length<1) return;var H=FCKDomTools.GetParents(B);for (var i=0;iN;i++) M[i].indent+=I;var O=FCKDomTools.ArrayToList(M);if (O) B.parentNode.replaceChild(O.listNode,B);FCKDomTools.ClearAllMarkers(L);}};
-var FCKBlockQuoteCommand=function(){};FCKBlockQuoteCommand.prototype={Execute:function(){FCKUndo.SaveUndoStep();var A=this.GetState();var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=B.CreateBookmark();if (FCKBrowserInfo.IsIE){var D=B.GetBookmarkNode(C,true);var E=B.GetBookmarkNode(C,false);var F;if (D&&D.parentNode.nodeName.IEquals('blockquote')&&!D.previousSibling){F=D;while ((F=F.nextSibling)){if (FCKListsLib.BlockElements[F.nodeName.toLowerCase()]) FCKDomTools.MoveNode(D,F,true);}};if (E&&E.parentNode.nodeName.IEquals('blockquote')&&!E.previousSibling){F=E;while ((F=F.nextSibling)){if (FCKListsLib.BlockElements[F.nodeName.toLowerCase()]){if (F.firstChild==D) FCKDomTools.InsertAfterNode(D,E);else FCKDomTools.MoveNode(E,F,true);}}}};var G=new FCKDomRangeIterator(B);var H;if (A==0){var I=[];while ((H=G.GetNextParagraph())) I.push(H);if (I.length<1){para=B.Window.document.createElement(FCKConfig.EnterMode.IEquals('p')?'p':'div');B.InsertNode(para);para.appendChild(B.Window.document.createTextNode('\ufeff'));B.MoveToBookmark(C);B.MoveToNodeContents(para);B.Collapse(true);C=B.CreateBookmark();I.push(para);};var J=I[0].parentNode;var K=[];for (var i=0;i0){H=I.shift();while (H.parentNode!=J) H=H.parentNode;if (H!=L) K.push(H);L=H;}while (K.length>0){H=K.shift();if (H.nodeName.IEquals('blockquote')){var M=FCKTools.GetElementDocument(H).createDocumentFragment();while (H.firstChild){M.appendChild(H.removeChild(H.firstChild));I.push(M.lastChild);};H.parentNode.replaceChild(M,H);}else I.push(H);};var N=B.Window.document.createElement('blockquote');J.insertBefore(N,I[0]);while (I.length>0){H=I.shift();N.appendChild(H);}}else if (A==1){var O=[];var P={};while ((H=G.GetNextParagraph())){var Q=null;var R=null;while (H.parentNode){if (H.parentNode.nodeName.IEquals('blockquote')){Q=H.parentNode;R=H;break;};H=H.parentNode;};if (Q&&R&&!R._fckblockquotemoveout){O.push(R);FCKDomTools.SetElementMarker(P,R,'_fckblockquotemoveout',true);}};FCKDomTools.ClearAllMarkers(P);var S=[];var T=[],P={};var U=function(N){for (var i=0;i0){var W=O.shift();var N=W.parentNode;if (W==W.parentNode.firstChild) N.parentNode.insertBefore(N.removeChild(W),N);else if (W==W.parentNode.lastChild) N.parentNode.insertBefore(N.removeChild(W),N.nextSibling);else FCKDomTools.BreakParent(W,W.parentNode,B);if (!N._fckbqprocessed){T.push(N);FCKDomTools.SetElementMarker(P,N,'_fckbqprocessed',true);};S.push(W);};for (var i=T.length-1;i>=0;i--){var N=T[i];if (U(N)) FCKDomTools.RemoveNode(N);};FCKDomTools.ClearAllMarkers(P);if (FCKConfig.EnterMode.IEquals('br')){while (S.length){var W=S.shift();var a=true;if (W.nodeName.IEquals('div')){var M=FCKTools.GetElementDocument(W).createDocumentFragment();var c=a&&W.previousSibling&&!FCKListsLib.BlockBoundaries[W.previousSibling.nodeName.toLowerCase()];if (a&&c) M.appendChild(FCKTools.GetElementDocument(W).createElement('br'));var d=W.nextSibling&&!FCKListsLib.BlockBoundaries[W.nextSibling.nodeName.toLowerCase()];while (W.firstChild) M.appendChild(W.removeChild(W.firstChild));if (d) M.appendChild(FCKTools.GetElementDocument(W).createElement('br'));W.parentNode.replaceChild(M,W);a=false;}}}};B.MoveToBookmark(C);B.Select();FCK.Focus();FCK.Events.FireEvent('OnSelectionChange');},GetState:function(){if (FCK.EditMode!=0||!FCK.EditorWindow) return -1;var A=new FCKElementPath(FCKSelection.GetBoundaryParentElement(true));var B=A.Block||A.BlockLimit;if (!B||B.nodeName.toLowerCase()=='body') return 0;for (var i=0;i';B.open();B.write(''+F+'<\/head><\/body><\/html>');B.close();if(FCKBrowserInfo.IsAIR) FCKAdobeAIR.Panel_Contructor(B,window.document.location);FCKTools.AddEventListenerEx(E,'focus',FCKPanel_Window_OnFocus,this);FCKTools.AddEventListenerEx(E,'blur',FCKPanel_Window_OnBlur,this);};B.dir=FCKLang.Dir;FCKTools.AddEventListener(B,'contextmenu',FCKTools.CancelEvent);this.MainNode=B.body.appendChild(B.createElement('DIV'));this.MainNode.style.cssFloat=this.IsRTL?'right':'left';};FCKPanel.prototype.AppendStyleSheet=function(A){FCKTools.AppendStyleSheet(this.Document,A);};FCKPanel.prototype.Preload=function(x,y,A){if (this._Popup) this._Popup.show(x,y,0,0,A);};FCKPanel.prototype.ResizeForSubpanel=function(A,B,C){if (!FCKBrowserInfo.IsIE7) return false;if (!this._Popup.isOpen){this.Subpanel=null;return false;};if (B==0&&C==0){if (this.Subpanel!==A) return false;this.Subpanel=null;this.IncreasedX=0;}else{this.Subpanel=A;if ((this.IncreasedX>=B)&&(this.IncreasedY>=C)) return false;this.IncreasedX=Math.max(this.IncreasedX,B);this.IncreasedY=Math.max(this.IncreasedY,C);};var x=this.ShowRect.x;var w=this.IncreasedX;if (this.IsRTL) x=x-w;var D=this.ShowRect.w+w;var E=Math.max(this.ShowRect.h,this.IncreasedY);if (this.ParentPanel) this.ParentPanel.ResizeForSubpanel(this,D,E);this._Popup.show(x,this.ShowRect.y,D,E,this.RelativeElement);return this.IsRTL;};FCKPanel.prototype.Show=function(x,y,A,B,C){var D;var E=this.MainNode;if (this._Popup){this._Popup.show(x,y,0,0,A);FCKDomTools.SetElementStyles(E,{B:B?B+'px':'',C:C?C+'px':''});D=E.offsetWidth;if (FCKBrowserInfo.IsIE7){if (this.ParentPanel&&this.ParentPanel.ResizeForSubpanel(this,D,E.offsetHeight)){FCKTools.RunFunction(this.Show,this,[x,y,A]);return;}};if (this.IsRTL){if (this.IsContextMenu) x=x-D+1;else if (A) x=(x*-1)+A.offsetWidth-D;};if (FCKBrowserInfo.IsIE7){this.ShowRect={x:x,y:y,w:D,h:E.offsetHeight};this.IncreasedX=0;this.IncreasedY=0;this.RelativeElement=A;};this._Popup.show(x,y,D,E.offsetHeight,A);if (this.OnHide){if (this._Timer) CheckPopupOnHide.call(this,true);this._Timer=FCKTools.SetInterval(CheckPopupOnHide,100,this);}}else{if (typeof(FCK.ToolbarSet.CurrentInstance.FocusManager)!='undefined') FCK.ToolbarSet.CurrentInstance.FocusManager.Lock();if (this.ParentPanel){this.ParentPanel.Lock();FCKPanel_Window_OnBlur(null,this.ParentPanel);};if (FCKBrowserInfo.IsGecko&&FCKBrowserInfo.IsMac){this._IFrame.scrolling='';FCKTools.RunFunction(function(){ this._IFrame.scrolling='no';},this);};if (FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel&&FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel!=this) FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel.Hide(false,true);FCKDomTools.SetElementStyles(E,{B:B?B+'px':'',C:C?C+'px':''});D=E.offsetWidth;if (!B) this._IFrame.width=1;if (!C) this._IFrame.height=1;D=E.offsetWidth||E.firstChild.offsetWidth;var F=FCKTools.GetDocumentPosition(this._Window,A.nodeType==9?(FCKTools.IsStrictMode(A)?A.documentElement:A.body):A);var G=FCKDomTools.GetPositionedAncestor(this._IFrame.parentNode);if (G){var H=FCKTools.GetDocumentPosition(FCKTools.GetElementWindow(G),G);F.x-=H.x;F.y-=H.y;};if (this.IsRTL&&!this.IsContextMenu) x=(x*-1);x+=F.x;y+=F.y;if (this.IsRTL){if (this.IsContextMenu) x=x-D+1;else if (A) x=x+A.offsetWidth-D;}else{var I=FCKTools.GetViewPaneSize(this._Window);var J=FCKTools.GetScrollPosition(this._Window);var K=I.Height+J.Y;var L=I.Width+J.X;if ((x+D)>L) x-=x+D-L;if ((y+E.offsetHeight)>K) y-=y+E.offsetHeight-K;};FCKDomTools.SetElementStyles(this._IFrame,{left:x+'px',top:y+'px'});this._IFrame.contentWindow.focus();this._IsOpened=true;var M=this;this._resizeTimer=setTimeout(function(){var N=E.offsetWidth||E.firstChild.offsetWidth;var O=E.offsetHeight;M._IFrame.style.width=N+'px';M._IFrame.style.height=O+'px';},0);FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel=this;};FCKTools.RunFunction(this.OnShow,this);};FCKPanel.prototype.Hide=function(A,B){if (this._Popup) this._Popup.hide();else{if (!this._IsOpened||this._LockCounter>0) return;if (typeof(FCKFocusManager)!='undefined'&&!B) FCKFocusManager.Unlock();this._IFrame.style.width=this._IFrame.style.height='0px';this._IsOpened=false;if (this._resizeTimer){clearTimeout(this._resizeTimer);this._resizeTimer=null;};if (this.ParentPanel) this.ParentPanel.Unlock();if (!A) FCKTools.RunFunction(this.OnHide,this);}};FCKPanel.prototype.CheckIsOpened=function(){if (this._Popup) return this._Popup.isOpen;else return this._IsOpened;};FCKPanel.prototype.CreateChildPanel=function(){var A=this._Popup?FCKTools.GetDocumentWindow(this.Document):this._Window;var B=new FCKPanel(A);B.ParentPanel=this;return B;};FCKPanel.prototype.Lock=function(){this._LockCounter++;};FCKPanel.prototype.Unlock=function(){if (--this._LockCounter==0&&!this.HasFocus) this.Hide();};function FCKPanel_Window_OnFocus(e,A){A.HasFocus=true;};function FCKPanel_Window_OnBlur(e,A){A.HasFocus=false;if (A._LockCounter==0) FCKTools.RunFunction(A.Hide,A);};function CheckPopupOnHide(A){if (A||!this._Popup.isOpen){window.clearInterval(this._Timer);this._Timer=null;if (this._Popup&&this.ParentPanel&&!A) this.ParentPanel.ResizeForSubpanel(this,0,0);FCKTools.RunFunction(this.OnHide,this);}};function FCKPanel_Cleanup(){this._Popup=null;this._Window=null;this.Document=null;this.MainNode=null;this.RelativeElement=null;};
-var FCKIcon=function(A){var B=A?typeof(A):'undefined';switch (B){case 'number':this.Path=FCKConfig.SkinPath+'fck_strip.gif';this.Size=16;this.Position=A;break;case 'undefined':this.Path=FCK_SPACER_PATH;break;case 'string':this.Path=A;break;default:this.Path=A[0];this.Size=A[1];this.Position=A[2];}};FCKIcon.prototype.CreateIconElement=function(A){var B,eIconImage;if (this.Position){var C='-'+((this.Position-1)*this.Size)+'px';if (FCKBrowserInfo.IsIE){B=A.createElement('DIV');eIconImage=B.appendChild(A.createElement('IMG'));eIconImage.src=this.Path;eIconImage.style.top=C;}else{B=A.createElement('IMG');B.src=FCK_SPACER_PATH;B.style.backgroundPosition='0px '+C;B.style.backgroundImage='url("'+this.Path+'")';}}else{if (FCKBrowserInfo.IsIE){B=A.createElement('DIV');eIconImage=B.appendChild(A.createElement('IMG'));eIconImage.src=this.Path?this.Path:FCK_SPACER_PATH;}else{B=A.createElement('IMG');B.src=this.Path?this.Path:FCK_SPACER_PATH;}};B.className='TB_Button_Image';return B;};
-var FCKToolbarButtonUI=function(A,B,C,D,E,F){this.Name=A;this.Label=B||A;this.Tooltip=C||this.Label;this.Style=E||0;this.State=F||0;this.Icon=new FCKIcon(D);if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKToolbarButtonUI_Cleanup);};FCKToolbarButtonUI.prototype._CreatePaddingElement=function(A){var B=A.createElement('IMG');B.className='TB_Button_Padding';B.src=FCK_SPACER_PATH;return B;};FCKToolbarButtonUI.prototype.Create=function(A){var B=FCKTools.GetElementDocument(A);var C=this.MainElement=B.createElement('DIV');C.title=this.Tooltip;if (FCKBrowserInfo.IsGecko) C.onmousedown=FCKTools.CancelEvent;FCKTools.AddEventListenerEx(C,'mouseover',FCKToolbarButtonUI_OnMouseOver,this);FCKTools.AddEventListenerEx(C,'mouseout',FCKToolbarButtonUI_OnMouseOut,this);FCKTools.AddEventListenerEx(C,'click',FCKToolbarButtonUI_OnClick,this);this.ChangeState(this.State,true);if (this.Style==0&&!this.ShowArrow){C.appendChild(this.Icon.CreateIconElement(B));}else{var D=C.appendChild(B.createElement('TABLE'));D.cellPadding=0;D.cellSpacing=0;var E=D.insertRow(-1);var F=E.insertCell(-1);if (this.Style==0||this.Style==2) F.appendChild(this.Icon.CreateIconElement(B));else F.appendChild(this._CreatePaddingElement(B));if (this.Style==1||this.Style==2){F=E.insertCell(-1);F.className='TB_Button_Text';F.noWrap=true;F.appendChild(B.createTextNode(this.Label));};if (this.ShowArrow){if (this.Style!=0){E.insertCell(-1).appendChild(this._CreatePaddingElement(B));};F=E.insertCell(-1);var G=F.appendChild(B.createElement('IMG'));G.src=FCKConfig.SkinPath+'images/toolbar.buttonarrow.gif';G.width=5;G.height=3;};F=E.insertCell(-1);F.appendChild(this._CreatePaddingElement(B));};A.appendChild(C);};FCKToolbarButtonUI.prototype.ChangeState=function(A,B){if (!B&&this.State==A) return;var e=this.MainElement;if (!e) return;switch (parseInt(A,10)){case 0:e.className='TB_Button_Off';break;case 1:e.className='TB_Button_On';break;case -1:e.className='TB_Button_Disabled';break;};this.State=A;};function FCKToolbarButtonUI_OnMouseOver(A,B){if (B.State==0) this.className='TB_Button_Off_Over';else if (B.State==1) this.className='TB_Button_On_Over';};function FCKToolbarButtonUI_OnMouseOut(A,B){if (B.State==0) this.className='TB_Button_Off';else if (B.State==1) this.className='TB_Button_On';};function FCKToolbarButtonUI_OnClick(A,B){if (B.OnClick&&B.State!=-1) B.OnClick(B);};function FCKToolbarButtonUI_Cleanup(){this.MainElement=null;};
-var FCKToolbarButton=function(A,B,C,D,E,F,G){this.CommandName=A;this.Label=B;this.Tooltip=C;this.Style=D;this.SourceView=E?true:false;this.ContextSensitive=F?true:false;if (G==null) this.IconPath=FCKConfig.SkinPath+'toolbar/'+A.toLowerCase()+'.gif';else if (typeof(G)=='number') this.IconPath=[FCKConfig.SkinPath+'fck_strip.gif',16,G];else this.IconPath=G;};FCKToolbarButton.prototype.Create=function(A){this._UIButton=new FCKToolbarButtonUI(this.CommandName,this.Label,this.Tooltip,this.IconPath,this.Style);this._UIButton.OnClick=this.Click;this._UIButton._ToolbarButton=this;this._UIButton.Create(A);};FCKToolbarButton.prototype.RefreshState=function(){var A=this._UIButton;if (!A) return;var B=FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(this.CommandName).GetState();if (B==A.State) return;A.ChangeState(B);};FCKToolbarButton.prototype.Click=function(){var A=this._ToolbarButton||this;FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(A.CommandName).Execute();};FCKToolbarButton.prototype.Enable=function(){this.RefreshState();};FCKToolbarButton.prototype.Disable=function(){this._UIButton.ChangeState(-1);};
-var FCKSpecialCombo=function(A,B,C,D,E){this.FieldWidth=B||100;this.PanelWidth=C||150;this.PanelMaxHeight=D||150;this.Label=' ';this.Caption=A;this.Tooltip=A;this.Style=2;this.Enabled=true;this.Items={};this._Panel=new FCKPanel(E||window);this._Panel.AppendStyleSheet(FCKConfig.SkinEditorCSS);this._PanelBox=this._Panel.MainNode.appendChild(this._Panel.Document.createElement('DIV'));this._PanelBox.className='SC_Panel';this._PanelBox.style.width=this.PanelWidth+'px';this._PanelBox.innerHTML='';this._ItemsHolderEl=this._PanelBox.getElementsByTagName('TD')[0];if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKSpecialCombo_Cleanup);};function FCKSpecialCombo_ItemOnMouseOver(){this.className+=' SC_ItemOver';};function FCKSpecialCombo_ItemOnMouseOut(){this.className=this.originalClass;};function FCKSpecialCombo_ItemOnClick(A,B,C){this.className=this.originalClass;B._Panel.Hide();B.SetLabel(this.FCKItemLabel);if (typeof(B.OnSelect)=='function') B.OnSelect(C,this);};FCKSpecialCombo.prototype.ClearItems=function (){if (this.Items) this.Items={};var A=this._ItemsHolderEl;while (A.firstChild) A.removeChild(A.firstChild);};FCKSpecialCombo.prototype.AddItem=function(A,B,C,D){var E=this._ItemsHolderEl.appendChild(this._Panel.Document.createElement('DIV'));E.className=E.originalClass='SC_Item';E.innerHTML=B;E.FCKItemLabel=C||A;E.Selected=false;if (FCKBrowserInfo.IsIE) E.style.width='100%';if (D) E.style.backgroundColor=D;FCKTools.AddEventListenerEx(E,'mouseover',FCKSpecialCombo_ItemOnMouseOver);FCKTools.AddEventListenerEx(E,'mouseout',FCKSpecialCombo_ItemOnMouseOut);FCKTools.AddEventListenerEx(E,'click',FCKSpecialCombo_ItemOnClick,[this,A]);this.Items[A.toString().toLowerCase()]=E;return E;};FCKSpecialCombo.prototype.SelectItem=function(A){if (typeof A=='string') A=this.Items[A.toString().toLowerCase()];if (A){A.className=A.originalClass='SC_ItemSelected';A.Selected=true;}};FCKSpecialCombo.prototype.SelectItemByLabel=function(A,B){for (var C in this.Items){var D=this.Items[C];if (D.FCKItemLabel==A){D.className=D.originalClass='SC_ItemSelected';D.Selected=true;if (B) this.SetLabel(A);}}};FCKSpecialCombo.prototype.DeselectAll=function(A){for (var i in this.Items){if (!this.Items[i]) continue;this.Items[i].className=this.Items[i].originalClass='SC_Item';this.Items[i].Selected=false;};if (A) this.SetLabel('');};FCKSpecialCombo.prototype.SetLabelById=function(A){A=A?A.toString().toLowerCase():'';var B=this.Items[A];this.SetLabel(B?B.FCKItemLabel:'');};FCKSpecialCombo.prototype.SetLabel=function(A){A=(!A||A.length==0)?' ':A;if (A==this.Label) return;this.Label=A;var B=this._LabelEl;if (B){B.innerHTML=A;FCKTools.DisableSelection(B);}};FCKSpecialCombo.prototype.SetEnabled=function(A){this.Enabled=A;if (this._OuterTable) this._OuterTable.className=A?'':'SC_FieldDisabled';};FCKSpecialCombo.prototype.Create=function(A){var B=FCKTools.GetElementDocument(A);var C=this._OuterTable=A.appendChild(B.createElement('TABLE'));C.cellPadding=0;C.cellSpacing=0;C.insertRow(-1);var D;var E;switch (this.Style){case 0:D='TB_ButtonType_Icon';E=false;break;case 1:D='TB_ButtonType_Text';E=false;break;case 2:E=true;break;};if (this.Caption&&this.Caption.length>0&&E){var F=C.rows[0].insertCell(-1);F.innerHTML=this.Caption;F.className='SC_FieldCaption';};var G=FCKTools.AppendElement(C.rows[0].insertCell(-1),'div');if (E){G.className='SC_Field';G.style.width=this.FieldWidth+'px';G.innerHTML='';this._LabelEl=G.getElementsByTagName('label')[0];this._LabelEl.innerHTML=this.Label;}else{G.className='TB_Button_Off';G.innerHTML='';};FCKTools.AddEventListenerEx(G,'mouseover',FCKSpecialCombo_OnMouseOver,this);FCKTools.AddEventListenerEx(G,'mouseout',FCKSpecialCombo_OnMouseOut,this);FCKTools.AddEventListenerEx(G,'click',FCKSpecialCombo_OnClick,this);FCKTools.DisableSelection(this._Panel.Document.body);};function FCKSpecialCombo_Cleanup(){this._LabelEl=null;this._OuterTable=null;this._ItemsHolderEl=null;this._PanelBox=null;if (this.Items){for (var A in this.Items) this.Items[A]=null;}};function FCKSpecialCombo_OnMouseOver(A,B){if (B.Enabled){switch (B.Style){case 0:this.className='TB_Button_On_Over';break;case 1:this.className='TB_Button_On_Over';break;case 2:this.className='SC_Field SC_FieldOver';break;}}};function FCKSpecialCombo_OnMouseOut(A,B){switch (B.Style){case 0:this.className='TB_Button_Off';break;case 1:this.className='TB_Button_Off';break;case 2:this.className='SC_Field';break;}};function FCKSpecialCombo_OnClick(e,A){if (A.Enabled){var B=A._Panel;var C=A._PanelBox;var D=A._ItemsHolderEl;var E=A.PanelMaxHeight;if (A.OnBeforeClick) A.OnBeforeClick(A);if (FCKBrowserInfo.IsIE) B.Preload(0,this.offsetHeight,this);if (D.offsetHeight>E) C.style.height=E+'px';else C.style.height='';B.Show(0,this.offsetHeight,this);}};
-var FCKToolbarSpecialCombo=function(){this.SourceView=false;this.ContextSensitive=true;this.FieldWidth=null;this.PanelWidth=null;this.PanelMaxHeight=null;};FCKToolbarSpecialCombo.prototype.DefaultLabel='';function FCKToolbarSpecialCombo_OnSelect(A,B){FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(this.CommandName).Execute(A,B);};FCKToolbarSpecialCombo.prototype.Create=function(A){this._Combo=new FCKSpecialCombo(this.GetLabel(),this.FieldWidth,this.PanelWidth,this.PanelMaxHeight,FCKBrowserInfo.IsIE?window:FCKTools.GetElementWindow(A).parent);this._Combo.Tooltip=this.Tooltip;this._Combo.Style=this.Style;this.CreateItems(this._Combo);this._Combo.Create(A);this._Combo.CommandName=this.CommandName;this._Combo.OnSelect=FCKToolbarSpecialCombo_OnSelect;};function FCKToolbarSpecialCombo_RefreshActiveItems(A,B){A.DeselectAll();A.SelectItem(B);A.SetLabelById(B);};FCKToolbarSpecialCombo.prototype.RefreshState=function(){var A;var B=FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(this.CommandName).GetState();if (B!=-1){A=1;if (this.RefreshActiveItems) this.RefreshActiveItems(this._Combo,B);else{if (this._LastValue!==B){this._LastValue=B;if (!B||B.length==0){this._Combo.DeselectAll();this._Combo.SetLabel(this.DefaultLabel);}else FCKToolbarSpecialCombo_RefreshActiveItems(this._Combo,B);}}}else A=-1;if (A==this.State) return;if (A==-1){this._Combo.DeselectAll();this._Combo.SetLabel('');};this.State=A;this._Combo.SetEnabled(A!=-1);};FCKToolbarSpecialCombo.prototype.Enable=function(){this.RefreshState();};FCKToolbarSpecialCombo.prototype.Disable=function(){this.State=-1;this._Combo.DeselectAll();this._Combo.SetLabel('');this._Combo.SetEnabled(false);};
-var FCKToolbarStyleCombo=function(A,B){if (A===false) return;this.CommandName='Style';this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:2;this.DefaultLabel=FCKConfig.DefaultStyleLabel||'';};FCKToolbarStyleCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarStyleCombo.prototype.GetLabel=function(){return FCKLang.Style;};FCKToolbarStyleCombo.prototype.GetStyles=function(){var A={};var B=FCK.ToolbarSet.CurrentInstance.Styles.GetStyles();for (var C in B){var D=B[C];if (!D.IsCore) A[C]=D;};return A;};FCKToolbarStyleCombo.prototype.CreateItems=function(A){var B=A._Panel.Document;FCKTools.AppendStyleSheet(B,FCKConfig.ToolbarComboPreviewCSS);FCKTools.AppendStyleString(B,FCKConfig.EditorAreaStyles);B.body.className+=' ForceBaseFont';FCKConfig.ApplyBodyAttributes(B.body);var C=this.GetStyles();for (var D in C){var E=C[D];var F=E.GetType()==2?D:FCKToolbarStyleCombo_BuildPreview(E,E.Label||D);var G=A.AddItem(D,F);G.Style=E;};A.OnBeforeClick=this.StyleCombo_OnBeforeClick;};FCKToolbarStyleCombo.prototype.RefreshActiveItems=function(A){var B=FCK.ToolbarSet.CurrentInstance.Selection.GetBoundaryParentElement(true);if (B){var C=new FCKElementPath(B);var D=C.Elements;for (var e=0;e');var E=A.Element;if (E=='bdo') E='span';D=['<',E];var F=A._StyleDesc.Attributes;if (F){for (var G in F){D.push(' ',G,'="',A.GetFinalAttributeValue(G),'"');}};if (A._GetStyleText().length>0) D.push(' style="',A.GetFinalStyleValue(),'"');D.push('>',B,'',E,'>');if (C==0) D.push(' ');return D.join('');};
-var FCKToolbarFontFormatCombo=function(A,B){if (A===false) return;this.CommandName='FontFormat';this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:2;this.NormalLabel='Normal';this.PanelWidth=190;this.DefaultLabel=FCKConfig.DefaultFontFormatLabel||'';};FCKToolbarFontFormatCombo.prototype=new FCKToolbarStyleCombo(false);FCKToolbarFontFormatCombo.prototype.GetLabel=function(){return FCKLang.FontFormat;};FCKToolbarFontFormatCombo.prototype.GetStyles=function(){var A={};var B=FCKLang['FontFormats'].split(';');var C={p:B[0],pre:B[1],address:B[2],h1:B[3],h2:B[4],h3:B[5],h4:B[6],h5:B[7],h6:B[8],div:B[9]||(B[0]+' (DIV)')};var D=FCKConfig.FontFormats.split(';');for (var i=0;i';G.open();G.write(''+H+''+document.getElementById('xToolbarSpace').innerHTML+'');G.close();if(FCKBrowserInfo.IsAIR) FCKAdobeAIR.ToolbarSet_InitOutFrame(G);FCKTools.AddEventListener(G,'contextmenu',FCKTools.CancelEvent);FCKTools.AppendStyleSheet(G,FCKConfig.SkinEditorCSS);B=D.__FCKToolbarSet=new FCKToolbarSet(G);B._IFrame=F;if (FCK.IECleanup) FCK.IECleanup.AddItem(D,FCKToolbarSet_Target_Cleanup);};B.CurrentInstance=FCK;if (!B.ToolbarItems) B.ToolbarItems=FCKToolbarItems;FCK.AttachToOnSelectionChange(B.RefreshItemsState);return B;};function FCK_OnBlur(A){var B=A.ToolbarSet;if (B.CurrentInstance==A) B.Disable();};function FCK_OnFocus(A){var B=A.ToolbarSet;var C=A||FCK;B.CurrentInstance.FocusManager.RemoveWindow(B._IFrame.contentWindow);B.CurrentInstance=C;C.FocusManager.AddWindow(B._IFrame.contentWindow,true);B.Enable();};function FCKToolbarSet_Cleanup(){this._TargetElement=null;this._IFrame=null;};function FCKToolbarSet_Target_Cleanup(){this.__FCKToolbarSet=null;};var FCKToolbarSet=function(A){this._Document=A;this._TargetElement=A.getElementById('xToolbar');var B=A.getElementById('xExpandHandle');var C=A.getElementById('xCollapseHandle');B.title=FCKLang.ToolbarExpand;FCKTools.AddEventListener(B,'click',FCKToolbarSet_Expand_OnClick);C.title=FCKLang.ToolbarCollapse;FCKTools.AddEventListener(C,'click',FCKToolbarSet_Collapse_OnClick);if (!FCKConfig.ToolbarCanCollapse||FCKConfig.ToolbarStartExpanded) this.Expand();else this.Collapse();C.style.display=FCKConfig.ToolbarCanCollapse?'':'none';if (FCKConfig.ToolbarCanCollapse) C.style.display='';else A.getElementById('xTBLeftBorder').style.display='';this.Toolbars=[];this.IsLoaded=false;if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKToolbarSet_Cleanup);};function FCKToolbarSet_Expand_OnClick(){FCK.ToolbarSet.Expand();};function FCKToolbarSet_Collapse_OnClick(){FCK.ToolbarSet.Collapse();};FCKToolbarSet.prototype.Expand=function(){this._ChangeVisibility(false);};FCKToolbarSet.prototype.Collapse=function(){this._ChangeVisibility(true);};FCKToolbarSet.prototype._ChangeVisibility=function(A){this._Document.getElementById('xCollapsed').style.display=A?'':'none';this._Document.getElementById('xExpanded').style.display=A?'none':'';if (FCKBrowserInfo.IsGecko){FCKTools.RunFunction(window.onresize);}};FCKToolbarSet.prototype.Load=function(A){this.Name=A;this.Items=[];this.ItemsWysiwygOnly=[];this.ItemsContextSensitive=[];this._TargetElement.innerHTML='';var B=FCKConfig.ToolbarSets[A];if (!B){alert(FCKLang.UnknownToolbarSet.replace(/%1/g,A));return;};this.Toolbars=[];for (var x=0;x0) break;}catch (e){break;};D=D.parent;};var E=D.document;var F=function(){if (!B) B=FCKConfig.FloatingPanelsZIndex+999;return++B;};var G=function(){if (!C) return;var H=FCKTools.IsStrictMode(E)?E.documentElement:E.body;FCKDomTools.SetElementStyles(C,{'width':Math.max(H.scrollWidth,H.clientWidth,E.scrollWidth||0)-1+'px','height':Math.max(H.scrollHeight,H.clientHeight,E.scrollHeight||0)-1+'px'});};return {OpenDialog:function(dialogName,dialogTitle,dialogPage,width,height,customValue,parentWindow,resizable){if (!A) this.DisplayMainCover();var I={Title:dialogTitle,Page:dialogPage,Editor:window,CustomValue:customValue,TopWindow:D};FCK.ToolbarSet.CurrentInstance.Selection.Save(true);var J=FCKTools.GetViewPaneSize(D);var K={ 'X':0,'Y':0 };var L=FCKBrowserInfo.IsIE&&(!FCKBrowserInfo.IsIE7||!FCKTools.IsStrictMode(D.document));if (L) K=FCKTools.GetScrollPosition(D);var M=Math.max(K.Y+(J.Height-height-20)/2,0);var N=Math.max(K.X+(J.Width-width-20)/2,0);var O=E.createElement('iframe');FCKTools.ResetStyles(O);O.src=FCKConfig.BasePath+'fckdialog.html';O.frameBorder=0;O.allowTransparency=true;FCKDomTools.SetElementStyles(O,{'position':(L)?'absolute':'fixed','top':M+'px','left':N+'px','width':width+'px','height':height+'px','zIndex':F()});O._DialogArguments=I;E.body.appendChild(O);O._ParentDialog=A;A=O;},OnDialogClose:function(dialogWindow){var O=dialogWindow.frameElement;FCKDomTools.RemoveNode(O);if (O._ParentDialog){A=O._ParentDialog;O._ParentDialog.contentWindow.SetEnabled(true);}else{if (!FCKBrowserInfo.IsIE) FCK.Focus();this.HideMainCover();setTimeout(function(){ A=null;},0);FCK.ToolbarSet.CurrentInstance.Selection.Release();}},DisplayMainCover:function(){C=E.createElement('div');FCKTools.ResetStyles(C);FCKDomTools.SetElementStyles(C,{'position':'absolute','zIndex':F(),'top':'0px','left':'0px','backgroundColor':FCKConfig.BackgroundBlockerColor});FCKDomTools.SetOpacity(C,FCKConfig.BackgroundBlockerOpacity);if (FCKBrowserInfo.IsIE&&!FCKBrowserInfo.IsIE7){var Q=E.createElement('iframe');FCKTools.ResetStyles(Q);Q.hideFocus=true;Q.frameBorder=0;Q.src=FCKTools.GetVoidUrl();FCKDomTools.SetElementStyles(Q,{'width':'100%','height':'100%','position':'absolute','left':'0px','top':'0px','filter':'progid:DXImageTransform.Microsoft.Alpha(opacity=0)'});C.appendChild(Q);};FCKTools.AddEventListener(D,'resize',G);G();E.body.appendChild(C);FCKFocusManager.Lock();var R=FCK.ToolbarSet.CurrentInstance.GetInstanceObject('frameElement');R._fck_originalTabIndex=R.tabIndex;R.tabIndex=-1;},HideMainCover:function(){FCKDomTools.RemoveNode(C);FCKFocusManager.Unlock();var R=FCK.ToolbarSet.CurrentInstance.GetInstanceObject('frameElement');R.tabIndex=R._fck_originalTabIndex;FCKDomTools.ClearElementJSProperty(R,'_fck_originalTabIndex');},GetCover:function(){return C;}};})();
-var FCKMenuItem=function(A,B,C,D,E,F){this.Name=B;this.Label=C||B;this.IsDisabled=E;this.Icon=new FCKIcon(D);this.SubMenu=new FCKMenuBlockPanel();this.SubMenu.Parent=A;this.SubMenu.OnClick=FCKTools.CreateEventListener(FCKMenuItem_SubMenu_OnClick,this);this.CustomData=F;if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKMenuItem_Cleanup);};FCKMenuItem.prototype.AddItem=function(A,B,C,D,E){this.HasSubMenu=true;return this.SubMenu.AddItem(A,B,C,D,E);};FCKMenuItem.prototype.AddSeparator=function(){this.SubMenu.AddSeparator();};FCKMenuItem.prototype.Create=function(A){var B=this.HasSubMenu;var C=FCKTools.GetElementDocument(A);var r=this.MainElement=A.insertRow(-1);r.className=this.IsDisabled?'MN_Item_Disabled':'MN_Item';if (!this.IsDisabled){FCKTools.AddEventListenerEx(r,'mouseover',FCKMenuItem_OnMouseOver,[this]);FCKTools.AddEventListenerEx(r,'click',FCKMenuItem_OnClick,[this]);if (!B) FCKTools.AddEventListenerEx(r,'mouseout',FCKMenuItem_OnMouseOut,[this]);};var D=r.insertCell(-1);D.className='MN_Icon';D.appendChild(this.Icon.CreateIconElement(C));D=r.insertCell(-1);D.className='MN_Label';D.noWrap=true;D.appendChild(C.createTextNode(this.Label));D=r.insertCell(-1);if (B){D.className='MN_Arrow';var E=D.appendChild(C.createElement('IMG'));E.src=FCK_IMAGES_PATH+'arrow_'+FCKLang.Dir+'.gif';E.width=4;E.height=7;this.SubMenu.Create();this.SubMenu.Panel.OnHide=FCKTools.CreateEventListener(FCKMenuItem_SubMenu_OnHide,this);}};FCKMenuItem.prototype.Activate=function(){this.MainElement.className='MN_Item_Over';if (this.HasSubMenu){this.SubMenu.Show(this.MainElement.offsetWidth+2,-2,this.MainElement);};FCKTools.RunFunction(this.OnActivate,this);};FCKMenuItem.prototype.Deactivate=function(){this.MainElement.className='MN_Item';if (this.HasSubMenu) this.SubMenu.Hide();};function FCKMenuItem_SubMenu_OnClick(A,B){FCKTools.RunFunction(B.OnClick,B,[A]);};function FCKMenuItem_SubMenu_OnHide(A){A.Deactivate();};function FCKMenuItem_OnClick(A,B){if (B.HasSubMenu) B.Activate();else{B.Deactivate();FCKTools.RunFunction(B.OnClick,B,[B]);}};function FCKMenuItem_OnMouseOver(A,B){B.Activate();};function FCKMenuItem_OnMouseOut(A,B){B.Deactivate();};function FCKMenuItem_Cleanup(){this.MainElement=null;};
-var FCKMenuBlock=function(){this._Items=[];};FCKMenuBlock.prototype.Count=function(){return this._Items.length;};FCKMenuBlock.prototype.AddItem=function(A,B,C,D,E){var F=new FCKMenuItem(this,A,B,C,D,E);F.OnClick=FCKTools.CreateEventListener(FCKMenuBlock_Item_OnClick,this);F.OnActivate=FCKTools.CreateEventListener(FCKMenuBlock_Item_OnActivate,this);this._Items.push(F);return F;};FCKMenuBlock.prototype.AddSeparator=function(){this._Items.push(new FCKMenuSeparator());};FCKMenuBlock.prototype.RemoveAllItems=function(){this._Items=[];var A=this._ItemsTable;if (A){while (A.rows.length>0) A.deleteRow(0);}};FCKMenuBlock.prototype.Create=function(A){if (!this._ItemsTable){if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKMenuBlock_Cleanup);this._Window=FCKTools.GetElementWindow(A);var B=FCKTools.GetElementDocument(A);var C=A.appendChild(B.createElement('table'));C.cellPadding=0;C.cellSpacing=0;FCKTools.DisableSelection(C);var D=C.insertRow(-1).insertCell(-1);D.className='MN_Menu';var E=this._ItemsTable=D.appendChild(B.createElement('table'));E.cellPadding=0;E.cellSpacing=0;};for (var i=0;i0&&F.href.length==0);if (G) return;menu.AddSeparator();menu.AddItem('VisitLink',FCKLang.VisitLink);menu.AddSeparator();if (E) menu.AddItem('Link',FCKLang.EditLink,34);menu.AddItem('Unlink',FCKLang.RemoveLink,35);}}};case 'Image':return {AddItems:function(menu,tag,tagName){if (tagName=='IMG'&&!tag.getAttribute('_fckfakelement')){menu.AddSeparator();menu.AddItem('Image',FCKLang.ImageProperties,37);}}};case 'Anchor':return {AddItems:function(menu,tag,tagName){var F=FCKSelection.MoveToAncestorNode('A');var G=(F&&F.name.length>0);if (G||(tagName=='IMG'&&tag.getAttribute('_fckanchor'))){menu.AddSeparator();menu.AddItem('Anchor',FCKLang.AnchorProp,36);menu.AddItem('AnchorDelete',FCKLang.AnchorDelete);}}};case 'Flash':return {AddItems:function(menu,tag,tagName){if (tagName=='IMG'&&tag.getAttribute('_fckflash')){menu.AddSeparator();menu.AddItem('Flash',FCKLang.FlashProperties,38);}}};case 'Form':return {AddItems:function(menu,tag,tagName){if (FCKSelection.HasAncestorNode('FORM')){menu.AddSeparator();menu.AddItem('Form',FCKLang.FormProp,48);}}};case 'Checkbox':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&tag.type=='checkbox'){menu.AddSeparator();menu.AddItem('Checkbox',FCKLang.CheckboxProp,49);}}};case 'Radio':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&tag.type=='radio'){menu.AddSeparator();menu.AddItem('Radio',FCKLang.RadioButtonProp,50);}}};case 'TextField':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&(tag.type=='text'||tag.type=='password')){menu.AddSeparator();menu.AddItem('TextField',FCKLang.TextFieldProp,51);}}};case 'HiddenField':return {AddItems:function(menu,tag,tagName){if (tagName=='IMG'&&tag.getAttribute('_fckinputhidden')){menu.AddSeparator();menu.AddItem('HiddenField',FCKLang.HiddenFieldProp,56);}}};case 'ImageButton':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&tag.type=='image'){menu.AddSeparator();menu.AddItem('ImageButton',FCKLang.ImageButtonProp,55);}}};case 'Button':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&(tag.type=='button'||tag.type=='submit'||tag.type=='reset')){menu.AddSeparator();menu.AddItem('Button',FCKLang.ButtonProp,54);}}};case 'Select':return {AddItems:function(menu,tag,tagName){if (tagName=='SELECT'){menu.AddSeparator();menu.AddItem('Select',FCKLang.SelectionFieldProp,53);}}};case 'Textarea':return {AddItems:function(menu,tag,tagName){if (tagName=='TEXTAREA'){menu.AddSeparator();menu.AddItem('Textarea',FCKLang.TextareaProp,52);}}};case 'BulletedList':return {AddItems:function(menu,tag,tagName){if (FCKSelection.HasAncestorNode('UL')){menu.AddSeparator();menu.AddItem('BulletedList',FCKLang.BulletedListProp,27);}}};case 'NumberedList':return {AddItems:function(menu,tag,tagName){if (FCKSelection.HasAncestorNode('OL')){menu.AddSeparator();menu.AddItem('NumberedList',FCKLang.NumberedListProp,26);}}};case 'DivContainer':return {AddItems:function(menu,tag,tagName){var J=FCKDomTools.GetSelectedDivContainers();if (J.length>0){menu.AddSeparator();menu.AddItem('EditDiv',FCKLang.EditDiv,75);menu.AddItem('DeleteDiv',FCKLang.DeleteDiv,76);}}};};return null;};function FCK_ContextMenu_OnBeforeOpen(){FCK.Events.FireEvent('OnSelectionChange');var A,sTagName;if ((A=FCKSelection.GetSelectedElement())) sTagName=A.tagName;var B=FCK.ContextMenu._InnerContextMenu;B.RemoveAllItems();var C=FCK.ContextMenu.Listeners;for (var i=0;i0){D=A.substr(0,B.index);this._sourceHtml=A.substr(B.index);}else{C=true;D=B[0];this._sourceHtml=A.substr(B[0].length);}}else{D=A;this._sourceHtml=null;};return { 'isTag':C,'value':D };},Each:function(A){var B;while ((B=this.Next())) A(B.isTag,B.value);}};var FCKHtmlIterator=function(A){this._sourceHtml=A;};FCKHtmlIterator.prototype={Next:function(){var A=this._sourceHtml;if (A==null) return null;var B=FCKRegexLib.HtmlTag.exec(A);var C=false;var D="";if (B){if (B.index>0){D=A.substr(0,B.index);this._sourceHtml=A.substr(B.index);}else{C=true;D=B[0];this._sourceHtml=A.substr(B[0].length);}}else{D=A;this._sourceHtml=null;};return { 'isTag':C,'value':D };},Each:function(A){var B;while ((B=this.Next())) A(B.isTag,B.value);}};
-var FCKPlugin=function(A,B,C){this.Name=A;this.BasePath=C?C:FCKConfig.PluginsPath;this.Path=this.BasePath+A+'/';if (!B||B.length==0) this.AvailableLangs=[];else this.AvailableLangs=B.split(',');};FCKPlugin.prototype.Load=function(){if (this.AvailableLangs.length>0){var A;if (this.AvailableLangs.IndexOf(FCKLanguageManager.ActiveLanguage.Code)>=0) A=FCKLanguageManager.ActiveLanguage.Code;else A=this.AvailableLangs[0];LoadScript(this.Path+'lang/'+A+'.js');};LoadScript(this.Path+'fckplugin.js');};
-var FCKPlugins=FCK.Plugins={};FCKPlugins.ItemsCount=0;FCKPlugins.Items={};FCKPlugins.Load=function(){var A=FCKPlugins.Items;for (var i=0;i-1);};String.prototype.Equals=function(){var A=arguments;if (A.length==1&&A[0].pop) A=A[0];for (var i=0;iC) return false;if (B){var E=new RegExp(A+'$','i');return E.test(this);}else return (D==0||this.substr(C-D,D)==A);};String.prototype.Remove=function(A,B){var s='';if (A>0) s=this.substring(0,A);if (A+B0){var B=A.pop();if (B) B[1].call(B[0]);};this._FCKCleanupObj=null;if (CollectGarbage) CollectGarbage();};
-var s=navigator.userAgent.toLowerCase();var FCKBrowserInfo={IsIE:/*@cc_on!@*/false,IsIE7:/*@cc_on!@*/false&&(parseInt(s.match(/msie (\d+)/)[1],10)>=7),IsIE6:/*@cc_on!@*/false&&(parseInt(s.match(/msie (\d+)/)[1],10)>=6),IsSafari:s.Contains(' applewebkit/'),IsOpera:!!window.opera,IsAIR:s.Contains(' adobeair/'),IsMac:s.Contains('macintosh')};(function(A){A.IsGecko=(navigator.product=='Gecko')&&!A.IsSafari&&!A.IsOpera;A.IsGeckoLike=(A.IsGecko||A.IsSafari||A.IsOpera);if (A.IsGecko){var B=s.match(/rv:(\d+\.\d+)/);var C=B&&parseFloat(B[1]);if (C){A.IsGecko10=(C<1.8);A.IsGecko19=(C>1.8);}}})(FCKBrowserInfo);
-var FCKURLParams={};(function(){var A=document.location.search.substr(1).split('&');for (var i=0;i';if (!FCKRegexLib.HtmlOpener.test(A)) A=''+A+'';if (!FCKRegexLib.HeadOpener.test(A)) A=A.replace(FCKRegexLib.HtmlOpener,'$& ');return A;}else{var B=FCKConfig.DocType+'0&&!FCKRegexLib.Html4DocType.test(FCKConfig.DocType)) B+=' style="overflow-y: scroll"';B+='> '+A+'';return B;}},ConvertToDataFormat:function(A,B,C,D){var E=FCKXHtml.GetXHTML(A,!B,D);if (C&&FCKRegexLib.EmptyOutParagraph.test(E)) return '';return E;},FixHtml:function(A){return A;}};
-var FCK={Name:FCKURLParams['InstanceName'],Status:0,EditMode:0,Toolbar:null,HasFocus:false,DataProcessor:new FCKDataProcessor(),GetInstanceObject:(function(){var w=window;return function(name){return w[name];}})(),AttachToOnSelectionChange:function(A){this.Events.AttachEvent('OnSelectionChange',A);},GetLinkedFieldValue:function(){return this.LinkedField.value;},GetParentForm:function(){return this.LinkedField.form;},StartupValue:'',IsDirty:function(){if (this.EditMode==1) return (this.StartupValue!=this.EditingArea.Textarea.value);else{if (!this.EditorDocument) return false;return (this.StartupValue!=this.EditorDocument.body.innerHTML);}},ResetIsDirty:function(){if (this.EditMode==1) this.StartupValue=this.EditingArea.Textarea.value;else if (this.EditorDocument.body) this.StartupValue=this.EditorDocument.body.innerHTML;},StartEditor:function(){this.TempBaseTag=FCKConfig.BaseHref.length>0?' ':'';var A=FCK.KeystrokeHandler=new FCKKeystrokeHandler();A.OnKeystroke=_FCK_KeystrokeHandler_OnKeystroke;A.SetKeystrokes(FCKConfig.Keystrokes);if (FCKBrowserInfo.IsIE7){if ((CTRL+86) in A.Keystrokes) A.SetKeystrokes([CTRL+86,true]);if ((SHIFT+45) in A.Keystrokes) A.SetKeystrokes([SHIFT+45,true]);};A.SetKeystrokes([CTRL+8,true]);this.EditingArea=new FCKEditingArea(document.getElementById('xEditingArea'));this.EditingArea.FFSpellChecker=FCKConfig.FirefoxSpellChecker;this.SetData(this.GetLinkedFieldValue(),true);FCKTools.AddEventListener(document,"keydown",this._TabKeyHandler);this.AttachToOnSelectionChange(_FCK_PaddingNodeListener);if (FCKBrowserInfo.IsGecko) this.AttachToOnSelectionChange(this._ExecCheckEmptyBlock);},Focus:function(){FCK.EditingArea.Focus();},SetStatus:function(A){this.Status=A;if (A==1){FCKFocusManager.AddWindow(window,true);if (FCKBrowserInfo.IsIE) FCKFocusManager.AddWindow(window.frameElement,true);if (FCKConfig.StartupFocus) FCK.Focus();};this.Events.FireEvent('OnStatusChange',A);},FixBody:function(){var A=FCKConfig.EnterMode;if (A!='p'&&A!='div') return;var B=this.EditorDocument;if (!B) return;var C=B.body;if (!C) return;FCKDomTools.TrimNode(C);var D=C.firstChild;var E;while (D){var F=false;switch (D.nodeType){case 1:var G=D.nodeName.toLowerCase();if (!FCKListsLib.BlockElements[G]&&G!='li'&&!D.getAttribute('_fckfakelement')&&D.getAttribute('_moz_dirty')==null) F=true;break;case 3:if (E||D.nodeValue.Trim().length>0) F=true;break;case 8:if (E) F=true;break;};if (F){var H=D.parentNode;if (!E) E=H.insertBefore(B.createElement(A),D);E.appendChild(H.removeChild(D));D=E.nextSibling;}else{if (E){FCKDomTools.TrimNode(E);E=null;};D=D.nextSibling;}};if (E) FCKDomTools.TrimNode(E);},GetData:function(A){if (FCK.EditMode==1) return FCK.EditingArea.Textarea.value;this.FixBody();var B=FCK.EditorDocument;if (!B) return null;var C=FCKConfig.FullPage;var D=FCK.DataProcessor.ConvertToDataFormat(C?B.documentElement:B.body,!C,FCKConfig.IgnoreEmptyParagraphValue,A);D=FCK.ProtectEventsRestore(D);if (FCKBrowserInfo.IsIE) D=D.replace(FCKRegexLib.ToReplace,'$1');if (C){if (FCK.DocTypeDeclaration&&FCK.DocTypeDeclaration.length>0) D=FCK.DocTypeDeclaration+'\n'+D;if (FCK.XmlDeclaration&&FCK.XmlDeclaration.length>0) D=FCK.XmlDeclaration+'\n'+D;};return FCKConfig.ProtectedSource.Revert(D);},UpdateLinkedField:function(){var A=FCK.GetXHTML(FCKConfig.FormatOutput);if (FCKConfig.HtmlEncodeOutput) A=FCKTools.HTMLEncode(A);FCK.LinkedField.value=A;FCK.Events.FireEvent('OnAfterLinkedFieldUpdate');},RegisteredDoubleClickHandlers:{},OnDoubleClick:function(A){var B=FCK.RegisteredDoubleClickHandlers[A.tagName.toUpperCase()];if (B){for (var i=0;i0?'|ABBR|XML|EMBED|OBJECT':'ABBR|XML|EMBED|OBJECT';var C;if (B.length>0){C=new RegExp('<('+B+')(?!\w|:)','gi');A=A.replace(C,'','gi');A=A.replace(C,'<\/FCK:$1>');};B='META';if (FCKBrowserInfo.IsIE) B+='|HR';C=new RegExp('<(('+B+')(?=\\s|>|/)[\\s\\S]*?)/?>','gi');A=A.replace(C,' ');return A;},SetData:function(A,B){this.EditingArea.Mode=FCK.EditMode;if (FCKBrowserInfo.IsIE&&FCK.EditorDocument){FCK.EditorDocument.detachEvent("onselectionchange",Doc_OnSelectionChange);};FCKTempBin.Reset();FCK.Selection.Release();if (FCK.EditMode==0){this._ForceResetIsDirty=(B===true);A=FCKConfig.ProtectedSource.Protect(A);A=FCK.DataProcessor.ConvertToHtml(A);A=A.replace(FCKRegexLib.InvalidSelfCloseTags,'$1>$2>');A=FCK.ProtectEvents(A);A=FCK.ProtectUrls(A);A=FCK.ProtectTags(A);if (FCK.TempBaseTag.length>0&&!FCKRegexLib.HasBaseTag.test(A)) A=A.replace(FCKRegexLib.HeadOpener,'$&'+FCK.TempBaseTag);var C='';if (!FCKConfig.FullPage) C+=_FCK_GetEditorAreaStyleTags();if (FCKBrowserInfo.IsIE) C+=FCK._GetBehaviorsStyle();else if (FCKConfig.ShowBorders) C+=FCKTools.GetStyleHtml(FCK_ShowTableBordersCSS,true);C+=FCKTools.GetStyleHtml(FCK_InternalCSS,true);A=A.replace(FCKRegexLib.HeadCloser,C+'$&');this.EditingArea.OnLoad=_FCK_EditingArea_OnLoad;this.EditingArea.Start(A);}else{FCK.EditorWindow=null;FCK.EditorDocument=null;FCKDomTools.PaddingNode=null;this.EditingArea.OnLoad=null;this.EditingArea.Start(A);this.EditingArea.Textarea._FCKShowContextMenu=true;FCK.EnterKeyHandler=null;if (B) this.ResetIsDirty();FCK.KeystrokeHandler.AttachToElement(this.EditingArea.Textarea);this.EditingArea.Textarea.focus();FCK.Events.FireEvent('OnAfterSetHTML');};if (FCKBrowserInfo.IsGecko) window.onresize();},RedirectNamedCommands:{},ExecuteNamedCommand:function(A,B,C,D){if (!D) FCKUndo.SaveUndoStep();if (!C&&FCK.RedirectNamedCommands[A]!=null) FCK.ExecuteRedirectedNamedCommand(A,B);else{FCK.Focus();FCK.EditorDocument.execCommand(A,false,B);FCK.Events.FireEvent('OnSelectionChange');};if (!D) FCKUndo.SaveUndoStep();},GetNamedCommandState:function(A){try{if (FCKBrowserInfo.IsSafari&&FCK.EditorWindow&&A.IEquals('Paste')) return 0;if (!FCK.EditorDocument.queryCommandEnabled(A)) return -1;else{return FCK.EditorDocument.queryCommandState(A)?1:0;}}catch (e){return 0;}},GetNamedCommandValue:function(A){var B='';var C=FCK.GetNamedCommandState(A);if (C==-1) return null;try{B=this.EditorDocument.queryCommandValue(A);}catch(e) {};return B?B:'';},Paste:function(A){if (FCK.Status!=2||!FCK.Events.FireEvent('OnPaste')) return false;return A||FCK._ExecPaste();},PasteFromWord:function(){FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.PasteFromWord,'dialog/fck_paste.html',400,330,'Word');},Preview:function(){var A;if (FCKConfig.FullPage){if (FCK.TempBaseTag.length>0) A=FCK.TempBaseTag+FCK.GetXHTML();else A=FCK.GetXHTML();}else{A=FCKConfig.DocType+''+FCK.TempBaseTag+''+FCKLang.Preview+' '+_FCK_GetEditorAreaStyleTags()+''+FCK.GetXHTML()+'';};var B=FCKConfig.ScreenWidth*0.8;var C=FCKConfig.ScreenHeight*0.7;var D=(FCKConfig.ScreenWidth-B)/2;var E='';if (FCK_IS_CUSTOM_DOMAIN&&FCKBrowserInfo.IsIE){window._FCKHtmlToLoad=A;E='javascript:void( (function(){document.open() ;document.domain="'+document.domain+'" ;document.write( window.opener._FCKHtmlToLoad );document.close() ;window.opener._FCKHtmlToLoad = null ;})() )';};var F=window.open(E,null,'toolbar=yes,location=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width='+B+',height='+C+',left='+D);if (!FCK_IS_CUSTOM_DOMAIN||!FCKBrowserInfo.IsIE){F.document.write(A);F.document.close();}},SwitchEditMode:function(A){var B=(FCK.EditMode==0);var C=FCK.IsDirty();var D;if (B){FCKCommands.GetCommand('ShowBlocks').SaveState();if (!A&&FCKBrowserInfo.IsIE) FCKUndo.SaveUndoStep();D=FCK.GetXHTML(FCKConfig.FormatSource);if (FCKBrowserInfo.IsIE) FCKTempBin.ToHtml();if (D==null) return false;}else D=this.EditingArea.Textarea.value;FCK.EditMode=B?1:0;FCK.SetData(D,!C);FCK.Focus();FCKTools.RunFunction(FCK.ToolbarSet.RefreshModeState,FCK.ToolbarSet);return true;},InsertElement:function(A){if (typeof A=='string') A=this.EditorDocument.createElement(A);var B=A.nodeName.toLowerCase();FCKSelection.Restore();var C=new FCKDomRange(this.EditorWindow);C.MoveToSelection();C.DeleteContents();if (FCKListsLib.BlockElements[B]!=null){if (C.StartBlock){if (C.CheckStartOfBlock()) C.MoveToPosition(C.StartBlock,3);else if (C.CheckEndOfBlock()) C.MoveToPosition(C.StartBlock,4);else C.SplitBlock();};C.InsertNode(A);var D=FCKDomTools.GetNextSourceElement(A,false,null,['hr','br','param','img','area','input'],true);if (!D&&FCKConfig.EnterMode!='br'){D=this.EditorDocument.body.appendChild(this.EditorDocument.createElement(FCKConfig.EnterMode));if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(D);};if (FCKListsLib.EmptyElements[B]==null) C.MoveToElementEditStart(A);else if (D) C.MoveToElementEditStart(D);else C.MoveToPosition(A,4);if (FCKBrowserInfo.IsGeckoLike){if (D) FCKDomTools.ScrollIntoView(D,false);FCKDomTools.ScrollIntoView(A,false);}}else{C.InsertNode(A);C.SetStart(A,4);C.SetEnd(A,4);};C.Select();C.Release();this.Focus();return A;},_InsertBlockElement:function(A){},_IsFunctionKey:function(A){if (A>=16&&A<=20) return true;if (A==27||(A>=33&&A<=40)) return true;if (A==45) return true;return false;},_KeyDownListener:function(A){if (!A) A=FCK.EditorWindow.event;if (FCK.EditorWindow){if (!FCK._IsFunctionKey(A.keyCode)&&!(A.ctrlKey||A.metaKey)&&!(A.keyCode==46)) FCK._KeyDownUndo();};return true;},_KeyDownUndo:function(){if (!FCKUndo.Typing){FCKUndo.SaveUndoStep();FCKUndo.Typing=true;FCK.Events.FireEvent("OnSelectionChange");};FCKUndo.TypesCount++;FCKUndo.Changed=1;if (FCKUndo.TypesCount>FCKUndo.MaxTypes){FCKUndo.TypesCount=0;FCKUndo.SaveUndoStep();}},_TabKeyHandler:function(A){if (!A) A=window.event;var B=A.keyCode;if (B==9&&FCK.EditMode!=0){if (FCKBrowserInfo.IsIE){var C=document.selection.createRange();if (C.parentElement()!=FCK.EditingArea.Textarea) return true;C.text='\t';C.select();}else{var a=[];var D=FCK.EditingArea.Textarea;var E=D.selectionStart;var F=D.selectionEnd;a.push(D.value.substr(0,E));a.push('\t');a.push(D.value.substr(F));D.value=a.join('');D.setSelectionRange(E+1,E+1);};if (A.preventDefault) return A.preventDefault();return A.returnValue=false;};return true;}};FCK.Events=new FCKEvents(FCK);FCK.GetHTML=FCK.GetXHTML=FCK.GetData;FCK.SetHTML=FCK.SetData;FCK.InsertElementAndGetIt=FCK.CreateElement=FCK.InsertElement;function _FCK_ProtectEvents_ReplaceTags(A){return A.replace(FCKRegexLib.EventAttributes,_FCK_ProtectEvents_ReplaceEvents);};function _FCK_ProtectEvents_ReplaceEvents(A,B){return ' '+B+'_fckprotectedatt="'+encodeURIComponent(A)+'"';};function _FCK_ProtectEvents_RestoreEvents(A,B){return decodeURIComponent(B);};function _FCK_MouseEventsListener(A){if (!A) A=window.event;if (A.type=='mousedown') FCK.MouseDownFlag=true;else if (A.type=='mouseup') FCK.MouseDownFlag=false;else if (A.type=='mousemove') FCK.Events.FireEvent('OnMouseMove',A);};function _FCK_PaddingNodeListener(){if (FCKConfig.EnterMode.IEquals('br')) return;FCKDomTools.EnforcePaddingNode(FCK.EditorDocument,FCKConfig.EnterMode);if (!FCKBrowserInfo.IsIE&&FCKDomTools.PaddingNode){var A=FCKSelection.GetSelection();if (A&&A.rangeCount==1){var B=A.getRangeAt(0);if (B.collapsed&&B.startContainer==FCK.EditorDocument.body&&B.startOffset==0){B.selectNodeContents(FCKDomTools.PaddingNode);B.collapse(true);A.removeAllRanges();A.addRange(B);}}}else if (FCKDomTools.PaddingNode){var C=FCKSelection.GetParentElement();var D=FCKDomTools.PaddingNode;if (C&&C.nodeName.IEquals('body')){if (FCK.EditorDocument.body.childNodes.length==1&&FCK.EditorDocument.body.firstChild==D){if (FCKSelection._GetSelectionDocument(FCK.EditorDocument.selection)!=FCK.EditorDocument) return;var B=FCK.EditorDocument.body.createTextRange();var F=false;if (!D.childNodes.firstChild){D.appendChild(FCKTools.GetElementDocument(D).createTextNode('\ufeff'));F=true;};B.moveToElementText(D);B.select();if (F) B.pasteHTML('');}}}};function _FCK_EditingArea_OnLoad(){FCK.EditorWindow=FCK.EditingArea.Window;FCK.EditorDocument=FCK.EditingArea.Document;if (FCKBrowserInfo.IsIE) FCKTempBin.ToElements();FCK.InitializeBehaviors();FCK.MouseDownFlag=false;FCKTools.AddEventListener(FCK.EditorDocument,'mousemove',_FCK_MouseEventsListener);FCKTools.AddEventListener(FCK.EditorDocument,'mousedown',_FCK_MouseEventsListener);FCKTools.AddEventListener(FCK.EditorDocument,'mouseup',_FCK_MouseEventsListener);if (FCKBrowserInfo.IsSafari){var A=function(evt){if (!(evt.ctrlKey||evt.metaKey)) return;if (FCK.EditMode!=0) return;switch (evt.keyCode){case 89:FCKUndo.Redo();break;case 90:FCKUndo.Undo();break;}};FCKTools.AddEventListener(FCK.EditorDocument,'keyup',A);};FCK.EnterKeyHandler=new FCKEnterKey(FCK.EditorWindow,FCKConfig.EnterMode,FCKConfig.ShiftEnterMode,FCKConfig.TabSpaces);FCK.KeystrokeHandler.AttachToElement(FCK.EditorDocument);if (FCK._ForceResetIsDirty) FCK.ResetIsDirty();if (FCKBrowserInfo.IsIE&&FCK.HasFocus) FCK.EditorDocument.body.setActive();FCK.OnAfterSetHTML();FCKCommands.GetCommand('ShowBlocks').RestoreState();if (FCK.Status!=0) return;FCK.SetStatus(1);};function _FCK_GetEditorAreaStyleTags(){return FCKTools.GetStyleHtml(FCKConfig.EditorAreaCSS)+FCKTools.GetStyleHtml(FCKConfig.EditorAreaStyles);};function _FCK_KeystrokeHandler_OnKeystroke(A,B){if (FCK.Status!=2) return false;if (FCK.EditMode==0){switch (B){case 'Paste':return!FCK.Paste();case 'Cut':FCKUndo.SaveUndoStep();return false;}}else{if (B.Equals('Paste','Undo','Redo','SelectAll','Cut')) return false;};var C=FCK.Commands.GetCommand(B);if (C.GetState()==-1) return false;return (C.Execute.apply(C,FCKTools.ArgumentsToArray(arguments,2))!==false);};(function(){var A=window.parent.document;var B=A.getElementById(FCK.Name);var i=0;while (B||i==0){if (B&&B.tagName.toLowerCase().Equals('input','textarea')){FCK.LinkedField=B;break;};B=A.getElementsByName(FCK.Name)[i++];}})();var FCKTempBin={Elements:[],AddElement:function(A){var B=this.Elements.length;this.Elements[B]=A;return B;},RemoveElement:function(A){var e=this.Elements[A];this.Elements[A]=null;return e;},Reset:function(){var i=0;while (i '+this.Elements[i].outerHTML+'';this.Elements[i].isHtml=true;}},ToElements:function(){var A=FCK.EditorDocument.createElement('div');for (var i=0;i';if (FCKConfig.ShowBorders) B='url('+A+'css/behaviors/showtableborders.htc)';C+='INPUT,TEXTAREA,SELECT,.FCK__Anchor,.FCK__PageBreak,.FCK__InputHidden';if (FCKConfig.DisableObjectResizing){C+=',IMG';B+=' url('+A+'css/behaviors/disablehandles.htc)';};C+=' { behavior: url('+A+'css/behaviors/disablehandles.htc) ; }';if (B.length>0) C+='TABLE { behavior: '+B+' ; }';C+='';FCK._BehaviorsStyle=C;};return FCK._BehaviorsStyle;};function Doc_OnMouseUp(){if (FCK.EditorWindow.event.srcElement.tagName=='HTML'){FCK.Focus();FCK.EditorWindow.event.cancelBubble=true;FCK.EditorWindow.event.returnValue=false;}};function Doc_OnPaste(){var A=FCK.EditorDocument.body;A.detachEvent('onpaste',Doc_OnPaste);var B=FCK.Paste(!FCKConfig.ForcePasteAsPlainText&&!FCKConfig.AutoDetectPasteFromWord);A.attachEvent('onpaste',Doc_OnPaste);return B;};function Doc_OnDblClick(){FCK.OnDoubleClick(FCK.EditorWindow.event.srcElement);FCK.EditorWindow.event.cancelBubble=true;};function Doc_OnSelectionChange(){if (!FCK.IsSelectionChangeLocked&&FCK.EditorDocument) FCK.Events.FireEvent("OnSelectionChange");};function Doc_OnDrop(){if (FCK.MouseDownFlag){FCK.MouseDownFlag=false;return;};if (FCKConfig.ForcePasteAsPlainText){var A=FCK.EditorWindow.event;if (FCK._CheckIsPastingEnabled()||FCKConfig.ShowDropDialog) FCK.PasteAsPlainText(A.dataTransfer.getData('Text'));A.returnValue=false;A.cancelBubble=true;}};FCK.InitializeBehaviors=function(A){this.EditorDocument.attachEvent('onmouseup',Doc_OnMouseUp);this.EditorDocument.body.attachEvent('onpaste',Doc_OnPaste);this.EditorDocument.body.attachEvent('ondrop',Doc_OnDrop);FCK.ContextMenu._InnerContextMenu.AttachToElement(FCK.EditorDocument.body);this.EditorDocument.attachEvent("onkeydown",FCK._KeyDownListener);this.EditorDocument.attachEvent("ondblclick",Doc_OnDblClick);this.EditorDocument.attachEvent("onbeforedeactivate",function(){ FCKSelection.Save();});this.EditorDocument.attachEvent("onselectionchange",Doc_OnSelectionChange);FCKTools.AddEventListener(FCK.EditorDocument,'mousedown',Doc_OnMouseDown);};FCK.InsertHtml=function(A){A=FCKConfig.ProtectedSource.Protect(A);A=FCK.ProtectEvents(A);A=FCK.ProtectUrls(A);A=FCK.ProtectTags(A);FCKSelection.Restore();FCK.EditorWindow.focus();FCKUndo.SaveUndoStep();var B=FCKSelection.GetSelection();if (B.type.toLowerCase()=='control') B.clear();A='fakeFCKRemove '+A;B.createRange().pasteHTML(A);FCK.EditorDocument.getElementById('__fakeFCKRemove__').removeNode(true);FCKDocumentProcessor.Process(FCK.EditorDocument);this.Events.FireEvent("OnSelectionChange");};FCK.SetInnerHtml=function(A){var B=FCK.EditorDocument;B.body.innerHTML='
'+A;B.getElementById('__fakeFCKRemove__').removeNode(true);};function FCK_PreloadImages(){var A=new FCKImagePreloader();A.AddImages(FCKConfig.PreloadImages);A.AddImages(FCKConfig.SkinPath+'fck_strip.gif');A.OnComplete=LoadToolbarSetup;A.Start();};function Document_OnContextMenu(){return (event.srcElement._FCKShowContextMenu==true);};document.oncontextmenu=Document_OnContextMenu;function FCK_Cleanup(){this.LinkedField=null;this.EditorWindow=null;this.EditorDocument=null;};FCK._ExecPaste=function(){if (FCK._PasteIsRunning) return true;if (FCKConfig.ForcePasteAsPlainText){FCK.PasteAsPlainText();return false;};var A=FCK._CheckIsPastingEnabled(true);if (A===false) FCKTools.RunFunction(FCKDialog.OpenDialog,FCKDialog,['FCKDialog_Paste',FCKLang.Paste,'dialog/fck_paste.html',400,330,'Security']);else{if (FCKConfig.AutoDetectPasteFromWord&&A.length>0){var B=/<\w[^>]*(( class="?MsoNormal"?)|(="mso-))/gi;if (B.test(A)){if (confirm(FCKLang.PasteWordConfirm)){FCK.PasteFromWord();return false;}}};FCK._PasteIsRunning=true;FCK.ExecuteNamedCommand('Paste');delete FCK._PasteIsRunning;};return false;};FCK.PasteAsPlainText=function(A){if (!FCK._CheckIsPastingEnabled()){FCKDialog.OpenDialog('FCKDialog_Paste',FCKLang.PasteAsText,'dialog/fck_paste.html',400,330,'PlainText');return;};var B=null;if (!A) B=clipboardData.getData("Text");else B=A;if (B&&B.length>0){B=FCKTools.HTMLEncode(B);B=FCKTools.ProcessLineBreaks(window,FCKConfig,B);var C=B.search('');var D=B.search('');if ((C!=-1&&D!=-1&&C0){if (FCKSelection.GetType()=='Control'){var D=this.EditorDocument.createElement('A');D.href=A;var E=FCKSelection.GetSelectedElement();E.parentNode.insertBefore(D,E);E.parentNode.removeChild(E);D.appendChild(E);return [D];};var F='javascript:void(0);/*'+(new Date().getTime())+'*/';FCK.ExecuteNamedCommand('CreateLink',F,false,!!B);var G=this.EditorDocument.links;for (i=0;i0&&!isNaN(E)) this.PageConfig[D]=parseInt(E,10);else this.PageConfig[D]=E;}};function FCKConfig_LoadPageConfig(){var A=FCKConfig.PageConfig;for (var B in A) FCKConfig[B]=A[B];};function FCKConfig_PreProcess(){var A=FCKConfig;if (A.AllowQueryStringDebug){try{if ((/fckdebug=true/i).test(window.top.location.search)) A.Debug=true;}catch (e) { }};if (!A.PluginsPath.EndsWith('/')) A.PluginsPath+='/';var B=A.ToolbarComboPreviewCSS;if (!B||B.length==0) A.ToolbarComboPreviewCSS=A.EditorAreaCSS;A.RemoveAttributesArray=(A.RemoveAttributes||'').split(',');if (!FCKConfig.SkinEditorCSS||FCKConfig.SkinEditorCSS.length==0) FCKConfig.SkinEditorCSS=FCKConfig.SkinPath+'fck_editor.css';if (!FCKConfig.SkinDialogCSS||FCKConfig.SkinDialogCSS.length==0) FCKConfig.SkinDialogCSS=FCKConfig.SkinPath+'fck_dialog.css';};FCKConfig.ToolbarSets={};FCKConfig.Plugins={};FCKConfig.Plugins.Items=[];FCKConfig.Plugins.Add=function(A,B,C){FCKConfig.Plugins.Items.push([A,B,C]);};FCKConfig.ProtectedSource={};FCKConfig.ProtectedSource._CodeTag=(new Date()).valueOf();FCKConfig.ProtectedSource.RegexEntries=[//g,/'+A;if (FCKBrowserInfo.IsIE) A=A.replace(/( ]*?)\s*\/?>(?!\s*<\/base>)/gi,'$1>');else if (!B){var E=A.match(FCKRegexLib.BeforeBody);var F=A.match(FCKRegexLib.AfterBody);if (E&&F){var G=A.substr(E[1].length,A.length-E[1].length-F[1].length);A=E[1]+' '+F[1];if (FCKBrowserInfo.IsGecko&&(G.length==0||FCKRegexLib.EmptyParagraph.test(G))) G=' ';this._BodyHTML=G;}else this._BodyHTML=A;};var H=this.IFrame=D.createElement('iframe');var I='';H.frameBorder=0;H.style.width=H.style.height='100%';if (FCK_IS_CUSTOM_DOMAIN&&FCKBrowserInfo.IsIE){window._FCKHtmlToLoad=A.replace(//i,''+I);H.src='javascript:void( (function(){document.open() ;document.domain="'+document.domain+'" ;document.write( window.parent._FCKHtmlToLoad );document.close() ;window.parent._FCKHtmlToLoad = null ;})() )';}else if (!FCKBrowserInfo.IsGecko){H.src='javascript:void(0)';};C.appendChild(H);this.Window=H.contentWindow;if (!FCK_IS_CUSTOM_DOMAIN||!FCKBrowserInfo.IsIE){var J=this.Window.document;J.open();J.write(A.replace(//i,''+I));J.close();};if (FCKBrowserInfo.IsAIR) FCKAdobeAIR.EditingArea_Start(J,A);if (FCKBrowserInfo.IsGecko10&&!B){this.Start(A,true);return;};if (H.readyState&&H.readyState!='completed'){var K=this;setTimeout(function(){try{K.Window.document.documentElement.doScroll("left");}catch(e){setTimeout(arguments.callee,0);return;};K.Window._FCKEditingArea=K;FCKEditingArea_CompleteStart.call(K.Window);},0);}else{this.Window._FCKEditingArea=this;if (FCKBrowserInfo.IsGecko10) this.Window.setTimeout(FCKEditingArea_CompleteStart,500);else FCKEditingArea_CompleteStart.call(this.Window);}}else{var L=this.Textarea=D.createElement('textarea');L.className='SourceField';L.dir='ltr';FCKDomTools.SetElementStyles(L,{width:'100%',height:'100%',border:'none',resize:'none',outline:'none'});C.appendChild(L);L.value=A;FCKTools.RunFunction(this.OnLoad);}};function FCKEditingArea_CompleteStart(){if (!this.document.body){this.setTimeout(FCKEditingArea_CompleteStart,50);return;};var A=this._FCKEditingArea;A.Document=A.Window.document;A.MakeEditable();FCKTools.RunFunction(A.OnLoad);};FCKEditingArea.prototype.MakeEditable=function(){var A=this.Document;if (FCKBrowserInfo.IsIE){A.body.disabled=true;A.body.contentEditable=true;A.body.removeAttribute("disabled");}else{try{A.body.spellcheck=(this.FFSpellChecker!==false);if (this._BodyHTML){A.body.innerHTML=this._BodyHTML;A.body.offsetLeft;this._BodyHTML=null;};A.designMode='on';A.execCommand('enableObjectResizing',false,!FCKConfig.DisableObjectResizing);A.execCommand('enableInlineTableEditing',false,!FCKConfig.DisableFFTableHandles);}catch (e){FCKTools.AddEventListener(this.Window.frameElement,'DOMAttrModified',FCKEditingArea_Document_AttributeNodeModified);}}};function FCKEditingArea_Document_AttributeNodeModified(A){var B=A.currentTarget.contentWindow._FCKEditingArea;if (B._timer) window.clearTimeout(B._timer);B._timer=FCKTools.SetTimeout(FCKEditingArea_MakeEditableByMutation,1000,B);};function FCKEditingArea_MakeEditableByMutation(){delete this._timer;FCKTools.RemoveEventListener(this.Window.frameElement,'DOMAttrModified',FCKEditingArea_Document_AttributeNodeModified);this.MakeEditable();};FCKEditingArea.prototype.Focus=function(){try{if (this.Mode==0){if (FCKBrowserInfo.IsIE) this._FocusIE();else this.Window.focus();}else{var A=FCKTools.GetElementDocument(this.Textarea);if ((!A.hasFocus||A.hasFocus())&&A.activeElement==this.Textarea) return;this.Textarea.focus();}}catch(e) {}};FCKEditingArea.prototype._FocusIE=function(){this.Document.body.setActive();this.Window.focus();var A=this.Document.selection.createRange();var B=A.parentElement();var C=B.nodeName.toLowerCase();if (B.childNodes.length>0||!(FCKListsLib.BlockElements[C]||FCKListsLib.NonEmptyBlockElements[C])){return;};A=new FCKDomRange(this.Window);A.MoveToElementEditStart(B);A.Select();};function FCKEditingArea_Cleanup(){if (this.Document) this.Document.body.innerHTML="";this.TargetElement=null;this.IFrame=null;this.Document=null;this.Textarea=null;if (this.Window){this.Window._FCKEditingArea=null;this.Window=null;}};
-var FCKKeystrokeHandler=function(A){this.Keystrokes={};this.CancelCtrlDefaults=(A!==false);};FCKKeystrokeHandler.prototype.AttachToElement=function(A){FCKTools.AddEventListenerEx(A,'keydown',_FCKKeystrokeHandler_OnKeyDown,this);if (FCKBrowserInfo.IsGecko10||FCKBrowserInfo.IsOpera||(FCKBrowserInfo.IsGecko&&FCKBrowserInfo.IsMac)) FCKTools.AddEventListenerEx(A,'keypress',_FCKKeystrokeHandler_OnKeyPress,this);};FCKKeystrokeHandler.prototype.SetKeystrokes=function(){for (var i=0;i40))){B._CancelIt=true;if (A.preventDefault) return A.preventDefault();A.returnValue=false;A.cancelBubble=true;return false;};return true;};function _FCKKeystrokeHandler_OnKeyPress(A,B){if (B._CancelIt){if (A.preventDefault) return A.preventDefault();return false;};return true;};
-FCK.DTD=(function(){var X=FCKTools.Merge;var A,L,J,M,N,O,D,H,P,K,Q,F,G,C,B,E,I;A={isindex:1,fieldset:1};B={input:1,button:1,select:1,textarea:1,label:1};C=X({a:1},B);D=X({iframe:1},C);E={hr:1,ul:1,menu:1,div:1,blockquote:1,noscript:1,table:1,center:1,address:1,dir:1,pre:1,h5:1,dl:1,h4:1,noframes:1,h6:1,ol:1,h1:1,h3:1,h2:1};F={ins:1,del:1,script:1};G=X({b:1,acronym:1,bdo:1,'var':1,'#':1,abbr:1,code:1,br:1,i:1,cite:1,kbd:1,u:1,strike:1,s:1,tt:1,strong:1,q:1,samp:1,em:1,dfn:1,span:1},F);H=X({sub:1,img:1,object:1,sup:1,basefont:1,map:1,applet:1,font:1,big:1,small:1},G);I=X({p:1},H);J=X({iframe:1},H,B);K={img:1,noscript:1,br:1,kbd:1,center:1,button:1,basefont:1,h5:1,h4:1,samp:1,h6:1,ol:1,h1:1,h3:1,h2:1,form:1,font:1,'#':1,select:1,menu:1,ins:1,abbr:1,label:1,code:1,table:1,script:1,cite:1,input:1,iframe:1,strong:1,textarea:1,noframes:1,big:1,small:1,span:1,hr:1,sub:1,bdo:1,'var':1,div:1,object:1,sup:1,strike:1,dir:1,map:1,dl:1,applet:1,del:1,isindex:1,fieldset:1,ul:1,b:1,acronym:1,a:1,blockquote:1,i:1,u:1,s:1,tt:1,address:1,q:1,pre:1,p:1,em:1,dfn:1};L=X({a:1},J);M={tr:1};N={'#':1};O=X({param:1},K);P=X({form:1},A,D,E,I);Q={li:1};return {col:{},tr:{td:1,th:1},img:{},colgroup:{col:1},noscript:P,td:P,br:{},th:P,center:P,kbd:L,button:X(I,E),basefont:{},h5:L,h4:L,samp:L,h6:L,ol:Q,h1:L,h3:L,option:N,h2:L,form:X(A,D,E,I),select:{optgroup:1,option:1},font:J,ins:P,menu:Q,abbr:L,label:L,table:{thead:1,col:1,tbody:1,tr:1,colgroup:1,caption:1,tfoot:1},code:L,script:N,tfoot:M,cite:L,li:P,input:{},iframe:P,strong:J,textarea:N,noframes:P,big:J,small:J,span:J,hr:{},dt:L,sub:J,optgroup:{option:1},param:{},bdo:L,'var':J,div:P,object:O,sup:J,dd:P,strike:J,area:{},dir:Q,map:X({area:1,form:1,p:1},A,F,E),applet:O,dl:{dt:1,dd:1},del:P,isindex:{},fieldset:X({legend:1},K),thead:M,ul:Q,acronym:L,b:J,a:J,blockquote:P,caption:L,i:J,u:J,tbody:M,s:L,address:X(D,I),tt:J,legend:L,q:L,pre:X(G,C),p:L,em:J,dfn:L};})();
-var FCKStyle=function(A){this.Element=(A.Element||'span').toLowerCase();this._StyleDesc=A;};FCKStyle.prototype={GetType:function(){var A=this.GetType_$;if (A!=undefined) return A;var B=this.Element;if (B=='#'||FCKListsLib.StyleBlockElements[B]) A=0;else if (FCKListsLib.StyleObjectElements[B]) A=2;else A=1;return (this.GetType_$=A);},ApplyToSelection:function(A){var B=new FCKDomRange(A);B.MoveToSelection();this.ApplyToRange(B,true);},ApplyToRange:function(A,B,C){switch (this.GetType()){case 0:this.ApplyToRange=this._ApplyBlockStyle;break;case 1:this.ApplyToRange=this._ApplyInlineStyle;break;default:return;};this.ApplyToRange(A,B,C);},ApplyToObject:function(A){if (!A) return;this.BuildElement(null,A);},RemoveFromSelection:function(A){var B=new FCKDomRange(A);B.MoveToSelection();this.RemoveFromRange(B,true);},RemoveFromRange:function(A,B,C){var D;var E=this._GetAttribsForComparison();var F=this._GetOverridesForComparison();if (A.CheckIsCollapsed()){var D=A.CreateBookmark(true);var H=A.GetBookmarkNode(D,true);var I=new FCKElementPath(H.parentNode);var J=[];var K=!FCKDomTools.GetNextSibling(H);var L=K||!FCKDomTools.GetPreviousSibling(H);var M;var N=-1;for (var i=0;i=0;i--){var E=D[i];for (var F in B){if (FCKDomTools.HasAttribute(E,F)){switch (F){case 'style':this._RemoveStylesFromElement(E);break;case 'class':if (FCKDomTools.GetAttributeValue(E,F)!=this.GetFinalAttributeValue(F)) continue;default:FCKDomTools.RemoveAttribute(E,F);}}};this._RemoveOverrides(E,C[this.Element]);this._RemoveNoAttribElement(E);};for (var G in C){if (G!=this.Element){D=A.getElementsByTagName(G);for (var i=D.length-1;i>=0;i--){var E=D[i];this._RemoveOverrides(E,C[G]);this._RemoveNoAttribElement(E);}}}},_RemoveStylesFromElement:function(A){var B=A.style.cssText;var C=this.GetFinalStyleValue();if (B.length>0&&C.length==0) return;C='(^|;)\\s*('+C.replace(/\s*([^ ]+):.*?(;|$)/g,'$1|').replace(/\|$/,'')+'):[^;]+';var D=new RegExp(C,'gi');B=B.replace(D,'').Trim();if (B.length==0||B==';') FCKDomTools.RemoveAttribute(A,'style');else A.style.cssText=B.replace(D,'');},_RemoveOverrides:function(A,B){var C=B&&B.Attributes;if (C){for (var i=0;i0) C.style.cssText=this.GetFinalStyleValue();return C;},_CompareAttributeValues:function(A,B,C){if (A=='style'&&B&&C){B=B.replace(/;$/,'').toLowerCase();C=C.replace(/;$/,'').toLowerCase();};return (B==C||((B===null||B==='')&&(C===null||C==='')))},GetFinalAttributeValue:function(A){var B=this._StyleDesc.Attributes;var B=B?B[A]:null;if (!B&&A=='style') return this.GetFinalStyleValue();if (B&&this._Variables) B=B.Replace(FCKRegexLib.StyleVariableAttName,this._GetVariableReplace,this);return B;},GetFinalStyleValue:function(){var A=this._GetStyleText();if (A.length>0&&this._Variables){A=A.Replace(FCKRegexLib.StyleVariableAttName,this._GetVariableReplace,this);A=FCKTools.NormalizeCssText(A);};return A;},_GetVariableReplace:function(){return this._Variables[arguments[2]]||arguments[0];},SetVariable:function(A,B){var C=this._Variables;if (!C) C=this._Variables={};this._Variables[A]=B;},_FromPre:function(A,B,C){var D=B.innerHTML;D=D.replace(/(\r\n|\r)/g,'\n');D=D.replace(/^[ \t]*\n/,'');D=D.replace(/\n$/,'');D=D.replace(/^[ \t]+|[ \t]+$/g,function(match,offset,s){if (match.length==1) return ' ';else if (offset==0) return new Array(match.length).join(' ')+' ';else return ' '+new Array(match.length).join(' ');});var E=new FCKHtmlIterator(D);var F=[];E.Each(function(isTag,value){if (!isTag){value=value.replace(/\n/g,' ');value=value.replace(/[ \t]{2,}/g,function (match){return new Array(match.length).join(' ')+' ';});};F.push(value);});C.innerHTML=F.join('');return C;},_ToPre:function(A,B,C){var D=B.innerHTML.Trim();D=D.replace(/[ \t\r\n]*( ]*>)[ \t\r\n]*/gi,' ');var E=new FCKHtmlIterator(D);var F=[];E.Each(function(isTag,value){if (!isTag) value=value.replace(/([ \t\n\r]+| )/g,' ');else if (isTag&&value==' ') value='\n';F.push(value);});if (FCKBrowserInfo.IsIE){var G=A.createElement('div');G.appendChild(C);C.outerHTML='\n'+F.join('')+' ';C=G.removeChild(G.firstChild);}else C.innerHTML=F.join('');return C;},_CheckAndMergePre:function(A,B){if (A!=FCKDomTools.GetPreviousSourceElement(B,true)) return;var C=A.innerHTML.replace(/\n$/,'')+'\n\n'+B.innerHTML.replace(/^\n/,'');if (FCKBrowserInfo.IsIE) B.outerHTML=''+C+' ';else B.innerHTML=C;FCKDomTools.RemoveNode(A);},_CheckAndSplitPre:function(A){var B;var C=A.firstChild;C=C&&C.nextSibling;while (C){var D=C.nextSibling;if (D&&D.nextSibling&&C.nodeName.IEquals('br')&&D.nodeName.IEquals('br')){FCKDomTools.RemoveNode(C);C=D.nextSibling;FCKDomTools.RemoveNode(D);B=FCKDomTools.InsertAfterNode(B||A,FCKDomTools.CloneElement(A));continue;};if (B){C=C.previousSibling;FCKDomTools.MoveNode(C.nextSibling,B);};C=C.nextSibling;}},_ApplyBlockStyle:function(A,B,C){var D;if (B) D=A.CreateBookmark();var E=new FCKDomRangeIterator(A);E.EnforceRealBlocks=true;var F;var G=A.Window.document;var H;while((F=E.GetNextParagraph())){var I=this.BuildElement(G);var J=I.nodeName.IEquals('pre');var K=F.nodeName.IEquals('pre');var L=J&&!K;var M=!J&&K;if (L) I=this._ToPre(G,F,I);else if (M) I=this._FromPre(G,F,I);else FCKDomTools.MoveChildren(F,I);F.parentNode.insertBefore(I,F);FCKDomTools.RemoveNode(F);if (J){if (H) this._CheckAndMergePre(H,I);H=I;}else if (M) this._CheckAndSplitPre(I);};if (B) A.SelectBookmark(D);if (C) A.MoveToBookmark(D);},_ApplyInlineStyle:function(A,B,C){var D=A.Window.document;if (A.CheckIsCollapsed()){var E=this.BuildElement(D);A.InsertNode(E);A.MoveToPosition(E,2);A.Select();return;};var F=this.Element;var G=FCK.DTD[F]||FCK.DTD.span;var H=this._GetAttribsForComparison();var I;A.Expand('inline_elements');var J=A.CreateBookmark(true);var K=A.GetBookmarkNode(J,true);var L=A.GetBookmarkNode(J,false);A.Release(true);var M=FCKDomTools.GetNextSourceNode(K,true);while (M){var N=false;var O=M.nodeType;var P=O==1?M.nodeName.toLowerCase():null;if (!P||G[P]){if ((FCK.DTD[M.parentNode.nodeName.toLowerCase()]||FCK.DTD.span)[F]||!FCK.DTD[F]){if (!A.CheckHasRange()) A.SetStart(M,3);if (O!=1||M.childNodes.length==0){var Q=M;var R=Q.parentNode;while (Q==R.lastChild&&G[R.nodeName.toLowerCase()]){Q=R;};A.SetEnd(Q,4);if (Q==Q.parentNode.lastChild&&!G[Q.parentNode.nodeName.toLowerCase()]) N=true;}else{A.SetEnd(M,3);}}else N=true;}else N=true;M=FCKDomTools.GetNextSourceNode(M);if (M==L){M=null;N=true;};if (N&&A.CheckHasRange()&&!A.CheckIsCollapsed()){I=this.BuildElement(D);A.ExtractContents().AppendTo(I);if (I.innerHTML.RTrim().length>0){A.InsertNode(I);this.RemoveFromElement(I);this._MergeSiblings(I,this._GetAttribsForComparison());if (!FCKBrowserInfo.IsIE) I.normalize();};A.Release(true);}};this._FixBookmarkStart(K);if (B) A.SelectBookmark(J);if (C) A.MoveToBookmark(J);},_FixBookmarkStart:function(A){var B;while ((B=A.nextSibling)){if (B.nodeType==1&&FCKListsLib.InlineNonEmptyElements[B.nodeName.toLowerCase()]){if (!B.firstChild) FCKDomTools.RemoveNode(B);else FCKDomTools.MoveNode(A,B,true);continue;};if (B.nodeType==3&&B.length==0){FCKDomTools.RemoveNode(B);continue;};break;}},_MergeSiblings:function(A,B){if (!A||A.nodeType!=1||!FCKListsLib.InlineNonEmptyElements[A.nodeName.toLowerCase()]) return;this._MergeNextSibling(A,B);this._MergePreviousSibling(A,B);},_MergeNextSibling:function(A,B){var C=A.nextSibling;var D=(C&&C.nodeType==1&&C.getAttribute('_fck_bookmark'));if (D) C=C.nextSibling;if (C&&C.nodeType==1&&C.nodeName==A.nodeName){if (!B) B=this._CreateElementAttribsForComparison(A);if (this._CheckAttributesMatch(C,B)){var E=A.lastChild;if (D) FCKDomTools.MoveNode(A.nextSibling,A);FCKDomTools.MoveChildren(C,A);FCKDomTools.RemoveNode(C);if (E) this._MergeNextSibling(E);}}},_MergePreviousSibling:function(A,B){var C=A.previousSibling;var D=(C&&C.nodeType==1&&C.getAttribute('_fck_bookmark'));if (D) C=C.previousSibling;if (C&&C.nodeType==1&&C.nodeName==A.nodeName){if (!B) B=this._CreateElementAttribsForComparison(A);if (this._CheckAttributesMatch(C,B)){var E=A.firstChild;if (D) FCKDomTools.MoveNode(A.previousSibling,A,true);FCKDomTools.MoveChildren(C,A,true);FCKDomTools.RemoveNode(C);if (E) this._MergePreviousSibling(E);}}},_GetStyleText:function(){var A=this._StyleDesc.Styles;var B=(this._StyleDesc.Attributes?this._StyleDesc.Attributes['style']||'':'');if (B.length>0) B+=';';for (var C in A) B+=C+':'+A[C]+';';if (B.length>0&&!(/#\(/.test(B))){B=FCKTools.NormalizeCssText(B);};return (this._GetStyleText=function() { return B;})();},_GetAttribsForComparison:function(){var A=this._GetAttribsForComparison_$;if (A) return A;A={};var B=this._StyleDesc.Attributes;if (B){for (var C in B){A[C.toLowerCase()]=B[C].toLowerCase();}};if (this._GetStyleText().length>0){A['style']=this._GetStyleText().toLowerCase();};FCKTools.AppendLengthProperty(A,'_length');return (this._GetAttribsForComparison_$=A);},_GetOverridesForComparison:function(){var A=this._GetOverridesForComparison_$;if (A) return A;A={};var B=this._StyleDesc.Overrides;if (B){if (!FCKTools.IsArray(B)) B=[B];for (var i=0;i0) return true;};B=B.nextSibling;};return false;}};
-var FCKElementPath=function(A){var B=null;var C=null;var D=[];var e=A;while (e){if (e.nodeType==1){if (!this.LastElement) this.LastElement=e;var E=e.nodeName.toLowerCase();if (FCKBrowserInfo.IsIE&&e.scopeName!='HTML') E=e.scopeName.toLowerCase()+':'+E;if (!C){if (!B&&FCKListsLib.PathBlockElements[E]!=null) B=e;if (FCKListsLib.PathBlockLimitElements[E]!=null){if (!B&&E=='div'&&!FCKElementPath._CheckHasBlock(e)) B=e;else C=e;}};D.push(e);if (E=='body') break;};e=e.parentNode;};this.Block=B;this.BlockLimit=C;this.Elements=D;};FCKElementPath._CheckHasBlock=function(A){var B=A.childNodes;for (var i=0,count=B.length;i0){if (D.nodeType==3){var G=D.nodeValue.substr(0,E).Trim();if (G.length!=0) return A.IsStartOfBlock=false;}else F=D.childNodes[E-1];};if (!F) F=FCKDomTools.GetPreviousSourceNode(D,true,null,C);while (F){switch (F.nodeType){case 1:if (!FCKListsLib.InlineChildReqElements[F.nodeName.toLowerCase()]) return A.IsStartOfBlock=false;break;case 3:if (F.nodeValue.Trim().length>0) return A.IsStartOfBlock=false;};F=FCKDomTools.GetPreviousSourceNode(F,false,null,C);};return A.IsStartOfBlock=true;},CheckEndOfBlock:function(A){var B=this._Cache.IsEndOfBlock;if (B!=undefined) return B;var C=this.EndBlock||this.EndBlockLimit;var D=this._Range.endContainer;var E=this._Range.endOffset;var F;if (D.nodeType==3){var G=D.nodeValue;if (E0) return this._Cache.IsEndOfBlock=false;};F=FCKDomTools.GetNextSourceNode(F,false,null,C);};if (A) this.Select();return this._Cache.IsEndOfBlock=true;},CreateBookmark:function(A){var B={StartId:(new Date()).valueOf()+Math.floor(Math.random()*1000)+'S',EndId:(new Date()).valueOf()+Math.floor(Math.random()*1000)+'E'};var C=this.Window.document;var D;var E;var F;if (!this.CheckIsCollapsed()){E=C.createElement('span');E.style.display='none';E.id=B.EndId;E.setAttribute('_fck_bookmark',true);E.innerHTML=' ';F=this.Clone();F.Collapse(false);F.InsertNode(E);};D=C.createElement('span');D.style.display='none';D.id=B.StartId;D.setAttribute('_fck_bookmark',true);D.innerHTML=' ';F=this.Clone();F.Collapse(true);F.InsertNode(D);if (A){B.StartNode=D;B.EndNode=E;};if (E){this.SetStart(D,4);this.SetEnd(E,3);}else this.MoveToPosition(D,4);return B;},GetBookmarkNode:function(A,B){var C=this.Window.document;if (B) return A.StartNode||C.getElementById(A.StartId);else return A.EndNode||C.getElementById(A.EndId);},MoveToBookmark:function(A,B){var C=this.GetBookmarkNode(A,true);var D=this.GetBookmarkNode(A,false);this.SetStart(C,3);if (!B) FCKDomTools.RemoveNode(C);if (D){this.SetEnd(D,3);if (!B) FCKDomTools.RemoveNode(D);}else this.Collapse(true);this._UpdateElementInfo();},CreateBookmark2:function(){if (!this._Range) return { "Start":0,"End":0 };var A={"Start":[this._Range.startOffset],"End":[this._Range.endOffset]};var B=this._Range.startContainer.previousSibling;var C=this._Range.endContainer.previousSibling;var D=this._Range.startContainer;var E=this._Range.endContainer;while (B&&B.nodeType==3&&D.nodeType==3){A.Start[0]+=B.length;D=B;B=B.previousSibling;}while (C&&C.nodeType==3&&E.nodeType==3){A.End[0]+=C.length;E=C;C=C.previousSibling;};if (D.nodeType==1&&D.childNodes[A.Start[0]]&&D.childNodes[A.Start[0]].nodeType==3){var F=D.childNodes[A.Start[0]];var G=0;while (F.previousSibling&&F.previousSibling.nodeType==3){F=F.previousSibling;G+=F.length;};D=F;A.Start[0]=G;};if (E.nodeType==1&&E.childNodes[A.End[0]]&&E.childNodes[A.End[0]].nodeType==3){var F=E.childNodes[A.End[0]];var G=0;while (F.previousSibling&&F.previousSibling.nodeType==3){F=F.previousSibling;G+=F.length;};E=F;A.End[0]=G;};A.Start=FCKDomTools.GetNodeAddress(D,true).concat(A.Start);A.End=FCKDomTools.GetNodeAddress(E,true).concat(A.End);return A;},MoveToBookmark2:function(A){var B=FCKDomTools.GetNodeFromAddress(this.Window.document,A.Start.slice(0,-1),true);var C=FCKDomTools.GetNodeFromAddress(this.Window.document,A.End.slice(0,-1),true);this.Release(true);this._Range=new FCKW3CRange(this.Window.document);var D=A.Start[A.Start.length-1];var E=A.End[A.End.length-1];while (B.nodeType==3&&D>B.length){if (!B.nextSibling||B.nextSibling.nodeType!=3) break;D-=B.length;B=B.nextSibling;}while (C.nodeType==3&&E>C.length){if (!C.nextSibling||C.nextSibling.nodeType!=3) break;E-=C.length;C=C.nextSibling;};this._Range.setStart(B,D);this._Range.setEnd(C,E);this._UpdateElementInfo();},MoveToPosition:function(A,B){this.SetStart(A,B);this.Collapse(true);},SetStart:function(A,B,C){var D=this._Range;if (!D) D=this._Range=this.CreateRange();switch(B){case 1:D.setStart(A,0);break;case 2:D.setStart(A,A.childNodes.length);break;case 3:D.setStartBefore(A);break;case 4:D.setStartAfter(A);};if (!C) this._UpdateElementInfo();},SetEnd:function(A,B,C){var D=this._Range;if (!D) D=this._Range=this.CreateRange();switch(B){case 1:D.setEnd(A,0);break;case 2:D.setEnd(A,A.childNodes.length);break;case 3:D.setEndBefore(A);break;case 4:D.setEndAfter(A);};if (!C) this._UpdateElementInfo();},Expand:function(A){var B,oSibling;switch (A){case 'inline_elements':if (this._Range.startOffset==0){B=this._Range.startContainer;if (B.nodeType!=1) B=B.previousSibling?null:B.parentNode;if (B){while (FCKListsLib.InlineNonEmptyElements[B.nodeName.toLowerCase()]){this._Range.setStartBefore(B);if (B!=B.parentNode.firstChild) break;B=B.parentNode;}}};B=this._Range.endContainer;var C=this._Range.endOffset;if ((B.nodeType==3&&C>=B.nodeValue.length)||(B.nodeType==1&&C>=B.childNodes.length)||(B.nodeType!=1&&B.nodeType!=3)){if (B.nodeType!=1) B=B.nextSibling?null:B.parentNode;if (B){while (FCKListsLib.InlineNonEmptyElements[B.nodeName.toLowerCase()]){this._Range.setEndAfter(B);if (B!=B.parentNode.lastChild) break;B=B.parentNode;}}};break;case 'block_contents':case 'list_contents':var D=FCKListsLib.BlockBoundaries;if (A=='list_contents'||FCKConfig.EnterMode=='br') D=FCKListsLib.ListBoundaries;if (this.StartBlock&&FCKConfig.EnterMode!='br'&&A=='block_contents') this.SetStart(this.StartBlock,1);else{B=this._Range.startContainer;if (B.nodeType==1){var E=B.childNodes[this._Range.startOffset];if (E) B=FCKDomTools.GetPreviousSourceNode(E,true);else B=B.lastChild||B;}while (B&&(B.nodeType!=1||(B!=this.StartBlockLimit&&!D[B.nodeName.toLowerCase()]))){this._Range.setStartBefore(B);B=B.previousSibling||B.parentNode;}};if (this.EndBlock&&FCKConfig.EnterMode!='br'&&A=='block_contents'&&this.EndBlock.nodeName.toLowerCase()!='li') this.SetEnd(this.EndBlock,2);else{B=this._Range.endContainer;if (B.nodeType==1) B=B.childNodes[this._Range.endOffset]||B.lastChild;while (B&&(B.nodeType!=1||(B!=this.StartBlockLimit&&!D[B.nodeName.toLowerCase()]))){this._Range.setEndAfter(B);B=B.nextSibling||B.parentNode;};if (B&&B.nodeName.toLowerCase()=='br') this._Range.setEndAfter(B);};this._UpdateElementInfo();}},SplitBlock:function(A){var B=A||FCKConfig.EnterMode;if (!this._Range) this.MoveToSelection();if (this.StartBlockLimit==this.EndBlockLimit){var C=this.StartBlock;var D=this.EndBlock;var E=null;if (B!='br'){if (!C){C=this.FixBlock(true,B);D=this.EndBlock;};if (!D) D=this.FixBlock(false,B);};var F=(C!=null&&this.CheckStartOfBlock());var G=(D!=null&&this.CheckEndOfBlock());if (!this.CheckIsEmpty()) this.DeleteContents();if (C&&D&&C==D){if (G){E=new FCKElementPath(this.StartContainer);this.MoveToPosition(D,4);D=null;}else if (F){E=new FCKElementPath(this.StartContainer);this.MoveToPosition(C,3);C=null;}else{this.SetEnd(C,2);var H=this.ExtractContents();D=C.cloneNode(false);D.removeAttribute('id',false);H.AppendTo(D);FCKDomTools.InsertAfterNode(C,D);this.MoveToPosition(C,4);if (FCKBrowserInfo.IsGecko&&!C.nodeName.IEquals(['ul','ol'])) FCKTools.AppendBogusBr(C);}};return {PreviousBlock:C,NextBlock:D,WasStartOfBlock:F,WasEndOfBlock:G,ElementPath:E};};return null;},FixBlock:function(A,B){var C=this.CreateBookmark();this.Collapse(A);this.Expand('block_contents');var D=this.Window.document.createElement(B);this.ExtractContents().AppendTo(D);FCKDomTools.TrimNode(D);if (FCKDomTools.CheckIsEmptyElement(D,function(element) { return element.getAttribute('_fck_bookmark')!='true';})&&FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(D);this.InsertNode(D);this.MoveToBookmark(C);return D;},Release:function(A){if (!A) this.Window=null;this.StartNode=null;this.StartContainer=null;this.StartBlock=null;this.StartBlockLimit=null;this.EndNode=null;this.EndContainer=null;this.EndBlock=null;this.EndBlockLimit=null;this._Range=null;this._Cache=null;},CheckHasRange:function(){return!!this._Range;},GetTouchedStartNode:function(){var A=this._Range;var B=A.startContainer;if (A.collapsed||B.nodeType!=1) return B;return B.childNodes[A.startOffset]||B;},GetTouchedEndNode:function(){var A=this._Range;var B=A.endContainer;if (A.collapsed||B.nodeType!=1) return B;return B.childNodes[A.endOffset-1]||B;}};
-FCKDomRange.prototype.MoveToSelection=function(){this.Release(true);this._Range=new FCKW3CRange(this.Window.document);var A=this.Window.document.selection;if (A.type!='Control'){var B=this._GetSelectionMarkerTag(true);var C=this._GetSelectionMarkerTag(false);if (!B&&!C){this._Range.setStart(this.Window.document.body,0);this._UpdateElementInfo();return;};this._Range.setStart(B.parentNode,FCKDomTools.GetIndexOf(B));B.parentNode.removeChild(B);this._Range.setEnd(C.parentNode,FCKDomTools.GetIndexOf(C));C.parentNode.removeChild(C);this._UpdateElementInfo();}else{var D=A.createRange().item(0);if (D){this._Range.setStartBefore(D);this._Range.setEndAfter(D);this._UpdateElementInfo();}}};FCKDomRange.prototype.Select=function(A){if (this._Range) this.SelectBookmark(this.CreateBookmark(true),A);};FCKDomRange.prototype.SelectBookmark=function(A,B){var C=this.CheckIsCollapsed();var D;var E;var F=this.GetBookmarkNode(A,true);if (!F) return;var G;if (!C) G=this.GetBookmarkNode(A,false);var H=this.Window.document.body.createTextRange();H.moveToElementText(F);H.moveStart('character',1);if (G){var I=this.Window.document.body.createTextRange();I.moveToElementText(G);H.setEndPoint('EndToEnd',I);H.moveEnd('character',-1);}else{D=(B||!F.previousSibling||F.previousSibling.nodeName.toLowerCase()=='br')&&!F.nextSibing;E=this.Window.document.createElement('span');E.innerHTML='';F.parentNode.insertBefore(E,F);if (D){F.parentNode.insertBefore(this.Window.document.createTextNode('\ufeff'),F);}};if (!this._Range) this._Range=this.CreateRange();this._Range.setStartBefore(F);F.parentNode.removeChild(F);if (C){if (D){H.moveStart('character',-1);H.select();this.Window.document.selection.clear();}else H.select();FCKDomTools.RemoveNode(E);}else{this._Range.setEndBefore(G);G.parentNode.removeChild(G);H.select();}};FCKDomRange.prototype._GetSelectionMarkerTag=function(A){var B=this.Window.document;var C=B.selection;var D;try{D=C.createRange();}catch (e){return null;};if (D.parentElement().document!=B) return null;D.collapse(A===true);var E='fck_dom_range_temp_'+(new Date()).valueOf()+'_'+Math.floor(Math.random()*1000);D.pasteHTML(' ');return B.getElementById(E);};
-var FCKDomRangeIterator=function(A){this.Range=A;this.ForceBrBreak=false;this.EnforceRealBlocks=false;};FCKDomRangeIterator.CreateFromSelection=function(A){var B=new FCKDomRange(A);B.MoveToSelection();return new FCKDomRangeIterator(B);};FCKDomRangeIterator.prototype={GetNextParagraph:function(){var A;var B;var C;var D;var E;var F=this.ForceBrBreak?FCKListsLib.ListBoundaries:FCKListsLib.BlockBoundaries;if (!this._LastNode){var B=this.Range.Clone();B.Expand(this.ForceBrBreak?'list_contents':'block_contents');this._NextNode=B.GetTouchedStartNode();this._LastNode=B.GetTouchedEndNode();B=null;};var H=this._NextNode;var I=this._LastNode;this._NextNode=null;while (H){var J=false;var K=(H.nodeType!=1);var L=false;if (!K){var M=H.nodeName.toLowerCase();if (F[M]&&(!FCKBrowserInfo.IsIE||H.scopeName=='HTML')){if (M=='br') K=true;else if (!B&&H.childNodes.length==0&&M!='hr'){A=H;C=H==I;break;};if (B){B.SetEnd(H,3,true);if (M!='br') this._NextNode=FCKDomTools.GetNextSourceNode(H,true,null,I)||H;};J=true;}else{if (H.firstChild){if (!B){B=new FCKDomRange(this.Range.Window);B.SetStart(H,3,true);};H=H.firstChild;continue;};K=true;}}else if (H.nodeType==3){if (/^[\r\n\t ]+$/.test(H.nodeValue)) K=false;};if (K&&!B){B=new FCKDomRange(this.Range.Window);B.SetStart(H,3,true);};C=((!J||K)&&H==I);if (B&&!J){while (!H.nextSibling&&!C){var N=H.parentNode;if (F[N.nodeName.toLowerCase()]){J=true;C=C||(N==I);break;};H=N;K=true;C=(H==I);L=true;}};if (K) B.SetEnd(H,4,true);if ((J||C)&&B){B._UpdateElementInfo();if (B.StartNode==B.EndNode&&B.StartNode.parentNode==B.StartBlockLimit&&B.StartNode.getAttribute&&B.StartNode.getAttribute('_fck_bookmark')) B=null;else break;};if (C) break;H=FCKDomTools.GetNextSourceNode(H,L,null,I);};if (!A){if (!B){this._NextNode=null;return null;};A=B.StartBlock;if (!A&&!this.EnforceRealBlocks&&B.StartBlockLimit.nodeName.IEquals('DIV','TH','TD')&&B.CheckStartOfBlock()&&B.CheckEndOfBlock()){A=B.StartBlockLimit;}else if (!A||(this.EnforceRealBlocks&&A.nodeName.toLowerCase()=='li')){A=this.Range.Window.document.createElement(FCKConfig.EnterMode=='p'?'p':'div');B.ExtractContents().AppendTo(A);FCKDomTools.TrimNode(A);B.InsertNode(A);D=true;E=true;}else if (A.nodeName.toLowerCase()!='li'){if (!B.CheckStartOfBlock()||!B.CheckEndOfBlock()){A=A.cloneNode(false);B.ExtractContents().AppendTo(A);FCKDomTools.TrimNode(A);var O=B.SplitBlock();D=!O.WasStartOfBlock;E=!O.WasEndOfBlock;B.InsertNode(A);}}else if (!C){this._NextNode=A==I?null:FCKDomTools.GetNextSourceNode(B.EndNode,true,null,I);return A;}};if (D){var P=A.previousSibling;if (P&&P.nodeType==1){if (P.nodeName.toLowerCase()=='br') P.parentNode.removeChild(P);else if (P.lastChild&&P.lastChild.nodeName.IEquals('br')) P.removeChild(P.lastChild);}};if (E){var Q=A.lastChild;if (Q&&Q.nodeType==1&&Q.nodeName.toLowerCase()=='br') A.removeChild(Q);};if (!this._NextNode) this._NextNode=(C||A==I)?null:FCKDomTools.GetNextSourceNode(A,true,null,I);return A;}};
-var FCKDocumentFragment=function(A){this._Document=A;this.RootNode=A.createElement('div');};FCKDocumentFragment.prototype={AppendTo:function(A){FCKDomTools.MoveChildren(this.RootNode,A);},AppendHtml:function(A){var B=this._Document.createElement('div');B.innerHTML=A;FCKDomTools.MoveChildren(B,this.RootNode);},InsertAfterNode:function(A){var B=this.RootNode;var C;while((C=B.lastChild)) FCKDomTools.InsertAfterNode(A,B.removeChild(C));}};
-var FCKW3CRange=function(A){this._Document=A;this.startContainer=null;this.startOffset=null;this.endContainer=null;this.endOffset=null;this.collapsed=true;};FCKW3CRange.CreateRange=function(A){return new FCKW3CRange(A);};FCKW3CRange.CreateFromRange=function(A,B){var C=FCKW3CRange.CreateRange(A);C.setStart(B.startContainer,B.startOffset);C.setEnd(B.endContainer,B.endOffset);return C;};FCKW3CRange.prototype={_UpdateCollapsed:function(){this.collapsed=(this.startContainer==this.endContainer&&this.startOffset==this.endOffset);},setStart:function(A,B){this.startContainer=A;this.startOffset=B;if (!this.endContainer){this.endContainer=A;this.endOffset=B;};this._UpdateCollapsed();},setEnd:function(A,B){this.endContainer=A;this.endOffset=B;if (!this.startContainer){this.startContainer=A;this.startOffset=B;};this._UpdateCollapsed();},setStartAfter:function(A){this.setStart(A.parentNode,FCKDomTools.GetIndexOf(A)+1);},setStartBefore:function(A){this.setStart(A.parentNode,FCKDomTools.GetIndexOf(A));},setEndAfter:function(A){this.setEnd(A.parentNode,FCKDomTools.GetIndexOf(A)+1);},setEndBefore:function(A){this.setEnd(A.parentNode,FCKDomTools.GetIndexOf(A));},collapse:function(A){if (A){this.endContainer=this.startContainer;this.endOffset=this.startOffset;}else{this.startContainer=this.endContainer;this.startOffset=this.endOffset;};this.collapsed=true;},selectNodeContents:function(A){this.setStart(A,0);this.setEnd(A,A.nodeType==3?A.data.length:A.childNodes.length);},insertNode:function(A){var B=this.startContainer;var C=this.startOffset;if (B.nodeType==3){B.splitText(C);if (B==this.endContainer) this.setEnd(B.nextSibling,this.endOffset-this.startOffset);FCKDomTools.InsertAfterNode(B,A);return;}else{B.insertBefore(A,B.childNodes[C]||null);if (B==this.endContainer){this.endOffset++;this.collapsed=false;}}},deleteContents:function(){if (this.collapsed) return;this._ExecContentsAction(0);},extractContents:function(){var A=new FCKDocumentFragment(this._Document);if (!this.collapsed) this._ExecContentsAction(1,A);return A;},cloneContents:function(){var A=new FCKDocumentFragment(this._Document);if (!this.collapsed) this._ExecContentsAction(2,A);return A;},_ExecContentsAction:function(A,B){var C=this.startContainer;var D=this.endContainer;var E=this.startOffset;var F=this.endOffset;var G=false;var H=false;if (D.nodeType==3) D=D.splitText(F);else{if (D.childNodes.length>0){if (F>D.childNodes.length-1){D=FCKDomTools.InsertAfterNode(D.lastChild,this._Document.createTextNode(''));H=true;}else D=D.childNodes[F];}};if (C.nodeType==3){C.splitText(E);if (C==D) D=C.nextSibling;}else{if (E==0){C=C.insertBefore(this._Document.createTextNode(''),C.firstChild);G=true;}else if (E>C.childNodes.length-1){C=C.appendChild(this._Document.createTextNode(''));G=true;}else C=C.childNodes[E].previousSibling;};var I=FCKDomTools.GetParents(C);var J=FCKDomTools.GetParents(D);var i,topStart,topEnd;for (i=0;i0&&levelStartNode!=D) levelClone=K.appendChild(levelStartNode.cloneNode(levelStartNode==D));if (!I[k]||levelStartNode.parentNode!=I[k].parentNode){currentNode=levelStartNode.previousSibling;while(currentNode){if (currentNode==I[k]||currentNode==C) break;currentSibling=currentNode.previousSibling;if (A==2) K.insertBefore(currentNode.cloneNode(true),K.firstChild);else{currentNode.parentNode.removeChild(currentNode);if (A==1) K.insertBefore(currentNode,K.firstChild);};currentNode=currentSibling;}};if (K) K=levelClone;};if (A==2){var L=this.startContainer;if (L.nodeType==3){L.data+=L.nextSibling.data;L.parentNode.removeChild(L.nextSibling);};var M=this.endContainer;if (M.nodeType==3&&M.nextSibling){M.data+=M.nextSibling.data;M.parentNode.removeChild(M.nextSibling);}}else{if (topStart&&topEnd&&(C.parentNode!=topStart.parentNode||D.parentNode!=topEnd.parentNode)){var N=FCKDomTools.GetIndexOf(topEnd);if (G&&topEnd.parentNode==C.parentNode) N--;this.setStart(topEnd.parentNode,N);};this.collapse(true);};if(G) C.parentNode.removeChild(C);if(H&&D.parentNode) D.parentNode.removeChild(D);},cloneRange:function(){return FCKW3CRange.CreateFromRange(this._Document,this);}};
-var FCKEnterKey=function(A,B,C,D){this.Window=A;this.EnterMode=B||'p';this.ShiftEnterMode=C||'br';var E=new FCKKeystrokeHandler(false);E._EnterKey=this;E.OnKeystroke=FCKEnterKey_OnKeystroke;E.SetKeystrokes([[13,'Enter'],[SHIFT+13,'ShiftEnter'],[8,'Backspace'],[CTRL+8,'CtrlBackspace'],[46,'Delete']]);this.TabText='';if (D>0||FCKBrowserInfo.IsSafari){while (D--) this.TabText+='\xa0';E.SetKeystrokes([9,'Tab']);};E.AttachToElement(A.document);};function FCKEnterKey_OnKeystroke(A,B){var C=this._EnterKey;try{switch (B){case 'Enter':return C.DoEnter();break;case 'ShiftEnter':return C.DoShiftEnter();break;case 'Backspace':return C.DoBackspace();break;case 'Delete':return C.DoDelete();break;case 'Tab':return C.DoTab();break;case 'CtrlBackspace':return C.DoCtrlBackspace();break;}}catch (e){};return false;};FCKEnterKey.prototype.DoEnter=function(A,B){FCKUndo.SaveUndoStep();this._HasShift=(B===true);var C=FCKSelection.GetParentElement();var D=new FCKElementPath(C);var E=A||this.EnterMode;if (E=='br'||D.Block&&D.Block.tagName.toLowerCase()=='pre') return this._ExecuteEnterBr();else return this._ExecuteEnterBlock(E);};FCKEnterKey.prototype.DoShiftEnter=function(){return this.DoEnter(this.ShiftEnterMode,true);};FCKEnterKey.prototype.DoBackspace=function(){var A=false;var B=new FCKDomRange(this.Window);B.MoveToSelection();if (FCKBrowserInfo.IsIE&&this._CheckIsAllContentsIncluded(B,this.Window.document.body)){this._FixIESelectAllBug(B);return true;};var C=B.CheckIsCollapsed();if (!C){if (FCKBrowserInfo.IsIE&&this.Window.document.selection.type.toLowerCase()=="control"){var D=this.Window.document.selection.createRange();for (var i=D.length-1;i>=0;i--){var E=D.item(i);E.parentNode.removeChild(E);};return true;};return false;};if (FCKBrowserInfo.IsIE){var F=FCKDomTools.GetPreviousSourceElement(B.StartNode,true);if (F&&F.nodeName.toLowerCase()=='br'){var G=B.Clone();G.SetStart(F,4);if (G.CheckIsEmpty()){F.parentNode.removeChild(F);return true;}}};var H=B.StartBlock;var I=B.EndBlock;if (B.StartBlockLimit==B.EndBlockLimit&&H&&I){if (!C){var J=B.CheckEndOfBlock();B.DeleteContents();if (H!=I){B.SetStart(I,1);B.SetEnd(I,1);};B.Select();A=(H==I);};if (B.CheckStartOfBlock()){var K=B.StartBlock;var L=FCKDomTools.GetPreviousSourceElement(K,true,['BODY',B.StartBlockLimit.nodeName],['UL','OL']);A=this._ExecuteBackspace(B,L,K);}else if (FCKBrowserInfo.IsGeckoLike){B.Select();}};B.Release();return A;};FCKEnterKey.prototype.DoCtrlBackspace=function(){FCKUndo.SaveUndoStep();var A=new FCKDomRange(this.Window);A.MoveToSelection();if (FCKBrowserInfo.IsIE&&this._CheckIsAllContentsIncluded(A,this.Window.document.body)){this._FixIESelectAllBug(A);return true;};return false;};FCKEnterKey.prototype._ExecuteBackspace=function(A,B,C){var D=false;if (!B&&C&&C.nodeName.IEquals('LI')&&C.parentNode.parentNode.nodeName.IEquals('LI')){this._OutdentWithSelection(C,A);return true;};if (B&&B.nodeName.IEquals('LI')){var E=FCKDomTools.GetLastChild(B,['UL','OL']);while (E){B=FCKDomTools.GetLastChild(E,'LI');E=FCKDomTools.GetLastChild(B,['UL','OL']);}};if (B&&C){if (C.nodeName.IEquals('LI')&&!B.nodeName.IEquals('LI')){this._OutdentWithSelection(C,A);return true;};var F=C.parentNode;var G=B.nodeName.toLowerCase();if (FCKListsLib.EmptyElements[G]!=null||G=='table'){FCKDomTools.RemoveNode(B);D=true;}else{FCKDomTools.RemoveNode(C);while (F.innerHTML.Trim().length==0){var H=F.parentNode;H.removeChild(F);F=H;};FCKDomTools.LTrimNode(C);FCKDomTools.RTrimNode(B);A.SetStart(B,2,true);A.Collapse(true);var I=A.CreateBookmark(true);if (!C.tagName.IEquals(['TABLE'])) FCKDomTools.MoveChildren(C,B);A.SelectBookmark(I);D=true;}};return D;};FCKEnterKey.prototype.DoDelete=function(){FCKUndo.SaveUndoStep();var A=false;var B=new FCKDomRange(this.Window);B.MoveToSelection();if (FCKBrowserInfo.IsIE&&this._CheckIsAllContentsIncluded(B,this.Window.document.body)){this._FixIESelectAllBug(B);return true;};if (B.CheckIsCollapsed()&&B.CheckEndOfBlock(FCKBrowserInfo.IsGeckoLike)){var C=B.StartBlock;var D=FCKTools.GetElementAscensor(C,'td');var E=FCKDomTools.GetNextSourceElement(C,true,[B.StartBlockLimit.nodeName],['UL','OL','TR'],true);if (D){var F=FCKTools.GetElementAscensor(E,'td');if (F!=D) return true;};A=this._ExecuteBackspace(B,C,E);};B.Release();return A;};FCKEnterKey.prototype.DoTab=function(){var A=new FCKDomRange(this.Window);A.MoveToSelection();var B=A._Range.startContainer;while (B){if (B.nodeType==1){var C=B.tagName.toLowerCase();if (C=="tr"||C=="td"||C=="th"||C=="tbody"||C=="table") return false;else break;};B=B.parentNode;};if (this.TabText){A.DeleteContents();A.InsertNode(this.Window.document.createTextNode(this.TabText));A.Collapse(false);A.Select();};return true;};FCKEnterKey.prototype._ExecuteEnterBlock=function(A,B){var C=B||new FCKDomRange(this.Window);var D=C.SplitBlock(A);if (D){var E=D.PreviousBlock;var F=D.NextBlock;var G=D.WasStartOfBlock;var H=D.WasEndOfBlock;if (F){if (F.parentNode.nodeName.IEquals('li')){FCKDomTools.BreakParent(F,F.parentNode);FCKDomTools.MoveNode(F,F.nextSibling,true);}}else if (E&&E.parentNode.nodeName.IEquals('li')){FCKDomTools.BreakParent(E,E.parentNode);C.MoveToElementEditStart(E.nextSibling);FCKDomTools.MoveNode(E,E.previousSibling);};if (!G&&!H){if (F.nodeName.IEquals('li')&&F.firstChild&&F.firstChild.nodeName.IEquals(['ul','ol'])) F.insertBefore(FCKTools.GetElementDocument(F).createTextNode('\xa0'),F.firstChild);if (F) C.MoveToElementEditStart(F);}else{if (G&&H&&E.tagName.toUpperCase()=='LI'){C.MoveToElementStart(E);this._OutdentWithSelection(E,C);C.Release();return true;};var I;if (E){var J=E.tagName.toUpperCase();if (!this._HasShift&&!(/^H[1-6]$/).test(J)){I=FCKDomTools.CloneElement(E);}}else if (F) I=FCKDomTools.CloneElement(F);if (!I) I=this.Window.document.createElement(A);var K=D.ElementPath;if (K){for (var i=0,len=K.Elements.length;i=0&&(C=B[i--])){if (C.name.length>0){if (C.innerHTML!==''){if (FCKBrowserInfo.IsIE) C.className+=' FCK__AnchorC';}else{var D=FCKDocumentProcessor_CreateFakeImage('FCK__Anchor',C.cloneNode(true));D.setAttribute('_fckanchor','true',0);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);}}}}};var FCKPageBreaksProcessor=FCKDocumentProcessor.AppendNew();FCKPageBreaksProcessor.ProcessDocument=function(A){var B=A.getElementsByTagName('DIV');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.style.pageBreakAfter=='always'&&C.childNodes.length==1&&C.childNodes[0].style&&C.childNodes[0].style.display=='none'){var D=FCKDocumentProcessor_CreateFakeImage('FCK__PageBreak',C.cloneNode(true));C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);}}};var FCKEmbedAndObjectProcessor=(function(){var A=[];var B=function(el){var C=el.cloneNode(true);var D;var E=D=FCKDocumentProcessor_CreateFakeImage('FCK__UnknownObject',C);FCKEmbedAndObjectProcessor.RefreshView(E,el);for (var i=0;i=0;i--) B(G[i]);};var H=function(doc){F('object',doc);F('embed',doc);};return FCKTools.Merge(FCKDocumentProcessor.AppendNew(),{ProcessDocument:function(doc){if (FCKBrowserInfo.IsGecko) FCKTools.RunFunction(H,this,[doc]);else H(doc);},RefreshView:function(placeHolder,original){if (original.getAttribute('width')>0) placeHolder.style.width=FCKTools.ConvertHtmlSizeToStyle(original.getAttribute('width'));if (original.getAttribute('height')>0) placeHolder.style.height=FCKTools.ConvertHtmlSizeToStyle(original.getAttribute('height'));},AddCustomHandler:function(func){A.push(func);}});})();FCK.GetRealElement=function(A){var e=FCKTempBin.Elements[A.getAttribute('_fckrealelement')];if (A.getAttribute('_fckflash')){if (A.style.width.length>0) e.width=FCKTools.ConvertStyleSizeToHtml(A.style.width);if (A.style.height.length>0) e.height=FCKTools.ConvertStyleSizeToHtml(A.style.height);};return e;};if (FCKBrowserInfo.IsIE){FCKDocumentProcessor.AppendNew().ProcessDocument=function(A){var B=A.getElementsByTagName('HR');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){var D=A.createElement('hr');D.mergeAttributes(C,true);FCKDomTools.InsertAfterNode(C,D);C.parentNode.removeChild(C);}}};FCKDocumentProcessor.AppendNew().ProcessDocument=function(A){var B=A.getElementsByTagName('INPUT');var C;var i=B.length-1;while (i>=0&&(C=B[i--])){if (C.type=='hidden'){var D=FCKDocumentProcessor_CreateFakeImage('FCK__InputHidden',C.cloneNode(true));D.setAttribute('_fckinputhidden','true',0);C.parentNode.insertBefore(D,C);C.parentNode.removeChild(C);}}};FCKEmbedAndObjectProcessor.AddCustomHandler(function(A,B){if (!(A.nodeName.IEquals('embed')&&(A.type=='application/x-shockwave-flash'||/\.swf($|#|\?)/i.test(A.src)))) return;B.className='FCK__Flash';B.setAttribute('_fckflash','true',0);});if (FCKBrowserInfo.IsSafari){FCKDocumentProcessor.AppendNew().ProcessDocument=function(A){var B=A.getElementsByClassName?A.getElementsByClassName('Apple-style-span'):Array.prototype.filter.call(A.getElementsByTagName('span'),function(item){ return item.className=='Apple-style-span';});for (var i=B.length-1;i>=0;i--) FCKDomTools.RemoveNode(B[i],true);}};
-var FCKSelection=FCK.Selection={GetParentBlock:function(){var A=this.GetParentElement();while (A){if (FCKListsLib.BlockBoundaries[A.nodeName.toLowerCase()]) break;A=A.parentNode;};return A;},ApplyStyle:function(A){FCKStyles.ApplyStyle(new FCKStyle(A));}};
-FCKSelection.GetType=function(){try{var A=FCKSelection.GetSelection().type;if (A=='Control'||A=='Text') return A;if (this.GetSelection().createRange().parentElement) return 'Text';}catch(e){};return 'None';};FCKSelection.GetSelectedElement=function(){if (this.GetType()=='Control'){var A=this.GetSelection().createRange();if (A&&A.item) return this.GetSelection().createRange().item(0);};return null;};FCKSelection.GetParentElement=function(){switch (this.GetType()){case 'Control':var A=FCKSelection.GetSelectedElement();return A?A.parentElement:null;case 'None':return null;default:return this.GetSelection().createRange().parentElement();}};FCKSelection.GetBoundaryParentElement=function(A){switch (this.GetType()){case 'Control':var B=FCKSelection.GetSelectedElement();return B?B.parentElement:null;case 'None':return null;default:var C=FCK.EditorDocument;var D=C.selection.createRange();D.collapse(A!==false);var B=D.parentElement();return FCKTools.GetElementDocument(B)==C?B:null;}};FCKSelection.SelectNode=function(A){FCK.Focus();this.GetSelection().empty();var B;try{B=FCK.EditorDocument.body.createControlRange();B.addElement(A);}catch(e){B=FCK.EditorDocument.body.createTextRange();B.moveToElementText(A);};B.select();};FCKSelection.Collapse=function(A){FCK.Focus();if (this.GetType()=='Text'){var B=this.GetSelection().createRange();B.collapse(A==null||A===true);B.select();}};FCKSelection.HasAncestorNode=function(A){var B;if (this.GetSelection().type=="Control"){B=this.GetSelectedElement();}else{var C=this.GetSelection().createRange();B=C.parentElement();}while (B){if (B.nodeName.IEquals(A)) return true;B=B.parentNode;};return false;};FCKSelection.MoveToAncestorNode=function(A){var B,oRange;if (!FCK.EditorDocument) return null;if (this.GetSelection().type=="Control"){oRange=this.GetSelection().createRange();for (i=0;i=0;i--){if (C[i]) FCKTableHandler.DeleteRows(C[i]);};return;};var E=FCKTools.GetElementAscensor(A,'TABLE');if (E.rows.length==1){FCKTableHandler.DeleteTable(E);return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteTable=function(A){if (!A){A=FCKSelection.GetSelectedElement();if (!A||A.tagName!='TABLE') A=FCKSelection.MoveToAncestorNode('TABLE');};if (!A) return;FCKSelection.SelectNode(A);FCKSelection.Collapse();if (A.parentNode.childNodes.length==1) A.parentNode.parentNode.removeChild(A.parentNode);else A.parentNode.removeChild(A);};FCKTableHandler.InsertColumn=function(A){var B=null;var C=this.GetSelectedCells();if (C&&C.length) B=C[A?0:(C.length-1)];if (!B) return;var D=FCKTools.GetElementAscensor(B,'TABLE');var E=B.cellIndex;for (var i=0;i=0;i--){if (B[i]) FCKTableHandler.DeleteColumns(B[i]);};return;};if (!A) return;var C=FCKTools.GetElementAscensor(A,'TABLE');var D=A.cellIndex;for (var i=C.rows.length-1;i>=0;i--){var E=C.rows[i];if (D==0&&E.cells.length==1){FCKTableHandler.DeleteRows(E);continue;};if (E.cells[D]) E.removeChild(E.cells[D]);}};FCKTableHandler.InsertCell=function(A,B){var C=null;var D=this.GetSelectedCells();if (D&&D.length) C=D[B?0:(D.length-1)];if (!C) return null;var E=FCK.EditorDocument.createElement('TD');if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(E);if (!B&&C.cellIndex==C.parentNode.cells.length-1) C.parentNode.appendChild(E);else C.parentNode.insertBefore(E,B?C:C.nextSibling);return E;};FCKTableHandler.DeleteCell=function(A){if (A.parentNode.cells.length==1){FCKTableHandler.DeleteRows(A.parentNode);return;};A.parentNode.removeChild(A);};FCKTableHandler.DeleteCells=function(){var A=FCKTableHandler.GetSelectedCells();for (var i=A.length-1;i>=0;i--){FCKTableHandler.DeleteCell(A[i]);}};FCKTableHandler._MarkCells=function(A,B){for (var i=0;i=E.height){for (D=F;D0){var L=K.removeChild(K.firstChild);if (L.nodeType!=1||(L.getAttribute('type',2)!='_moz'&&L.getAttribute('_moz_dirty')!=null)){I.appendChild(L);J++;}}};if (J>0) I.appendChild(FCK.EditorDocument.createElement('br'));};this._ReplaceCellsByMarker(C,'_SelectedCells',B);this._UnmarkCells(A,'_SelectedCells');this._InstallTableMap(C,B.parentNode.parentNode.parentNode);B.appendChild(I);if (FCKBrowserInfo.IsGeckoLike&&(!B.firstChild)) FCKTools.AppendBogusBr(B);this._MoveCaretToCell(B,false);};FCKTableHandler.MergeRight=function(){var A=this.GetMergeRightTarget();if (A==null) return;var B=A.refCell;var C=A.tableMap;var D=A.nextCell;var E=FCK.EditorDocument.createDocumentFragment();while (D&&D.childNodes&&D.childNodes.length>0) E.appendChild(D.removeChild(D.firstChild));D.parentNode.removeChild(D);B.appendChild(E);this._MarkCells([D],'_Replace');this._ReplaceCellsByMarker(C,'_Replace',B);this._InstallTableMap(C,B.parentNode.parentNode.parentNode);this._MoveCaretToCell(B,false);};FCKTableHandler.MergeDown=function(){var A=this.GetMergeDownTarget();if (A==null) return;var B=A.refCell;var C=A.tableMap;var D=A.nextCell;var E=FCKTools.GetElementDocument(B).createDocumentFragment();while (D&&D.childNodes&&D.childNodes.length>0) E.appendChild(D.removeChild(D.firstChild));if (E.firstChild) E.insertBefore(FCK.EditorDocument.createElement('br'),E.firstChild);B.appendChild(E);this._MarkCells([D],'_Replace');this._ReplaceCellsByMarker(C,'_Replace',B);this._InstallTableMap(C,B.parentNode.parentNode.parentNode);this._MoveCaretToCell(B,false);};FCKTableHandler.HorizontalSplitCell=function(){var A=FCKTableHandler.GetSelectedCells();if (A.length!=1) return;var B=A[0];var C=this._CreateTableMap(B);var D=B.parentNode.rowIndex;var E=FCKTableHandler._GetCellIndexSpan(C,D,B);var F=isNaN(B.colSpan)?1:B.colSpan;if (F>1){var G=Math.ceil(F/2);var H=FCK.EditorDocument.createElement(B.nodeName);if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(H);var I=E+G;var J=E+F;var K=isNaN(B.rowSpan)?1:B.rowSpan;for (var r=D;r1){B.rowSpan=Math.ceil(G/2);var H=D+Math.ceil(G/2);var I=C[H];var J=null;for (var i=E+1;i1) K.colSpan=F;if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(K);B.parentNode.parentNode.parentNode.rows[H].insertBefore(K,J);}else{var L=B.parentNode.sectionRowIndex+1;var M=FCK.EditorDocument.createElement('tr');var N=B.parentNode.parentNode;if (N.rows.length>L) N.insertBefore(M,N.rows[L]);else N.appendChild(M);for (var i=0;i1) K.colSpan=F;if (FCKBrowserInfo.IsGeckoLike) FCKTools.AppendBogusBr(K);M.appendChild(K);}};FCKTableHandler._GetCellIndexSpan=function(A,B,C){if (A.lengthE) E=j;if (D._colScanned===true) continue;if (A[i][j-1]==D) D.colSpan++;if (A[i][j+1]!=D) D._colScanned=true;}};for (var i=0;i<=E;i++){for (var j=0;j=0&&C.compareEndPoints('StartToEnd',E)<=0)||(C.compareEndPoints('EndToStart',E)>=0&&C.compareEndPoints('EndToEnd',E)<=0)){B[B.length]=D.cells[i];}}}};return B;};
-var FCKXml=function(){this.Error=false;};FCKXml.GetAttribute=function(A,B,C){var D=A.attributes.getNamedItem(B);return D?D.value:C;};FCKXml.TransformToObject=function(A){if (!A) return null;var B={};var C=A.attributes;for (var i=0;i ';var A=FCKDocumentProcessor_CreateFakeImage('FCK__PageBreak',e);var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=B.SplitBlock();B.InsertNode(A);FCK.Events.FireEvent('OnSelectionChange');};FCKPageBreakCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;return 0;};var FCKUnlinkCommand=function(){this.Name='Unlink';};FCKUnlinkCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();if (FCKBrowserInfo.IsGeckoLike){var A=FCK.Selection.MoveToAncestorNode('A');if (A) FCKTools.RemoveOuterTags(A);return;};FCK.ExecuteNamedCommand(this.Name);};FCKUnlinkCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;var A=FCK.GetNamedCommandState(this.Name);if (A==0&&FCK.EditMode==0){var B=FCKSelection.MoveToAncestorNode('A');var C=(B&&B.name.length>0&&B.href.length==0);if (C) A=-1;};return A;};var FCKVisitLinkCommand=function(){this.Name='VisitLink';};FCKVisitLinkCommand.prototype={GetState:function(){if (FCK.EditMode!=0) return -1;var A=FCK.GetNamedCommandState('Unlink');if (A==0){var B=FCKSelection.MoveToAncestorNode('A');if (!B.href) A=-1;};return A;},Execute:function(){var A=FCKSelection.MoveToAncestorNode('A');var B=A.getAttribute('_fcksavedurl')||A.getAttribute('href',2);if (!/:\/\//.test(B)){var C=FCKConfig.BaseHref;var D=FCK.GetInstanceObject('parent');if (!C){C=D.document.location.href;C=C.substring(0,C.lastIndexOf('/')+1);};if (/^\//.test(B)){try{C=C.match(/^.*:\/\/+[^\/]+/)[0];}catch (e){C=D.document.location.protocol+'://'+D.parent.document.location.host;}};B=C+B;};if (!window.open(B,'_blank')) alert(FCKLang.VisitLinkBlocked);}};var FCKSelectAllCommand=function(){this.Name='SelectAll';};FCKSelectAllCommand.prototype.Execute=function(){if (FCK.EditMode==0){FCK.ExecuteNamedCommand('SelectAll');}else{var A=FCK.EditingArea.Textarea;if (FCKBrowserInfo.IsIE){A.createTextRange().execCommand('SelectAll');}else{A.selectionStart=0;A.selectionEnd=A.value.length;};A.focus();}};FCKSelectAllCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;return 0;};var FCKPasteCommand=function(){this.Name='Paste';};FCKPasteCommand.prototype={Execute:function(){if (FCKBrowserInfo.IsIE) FCK.Paste();else FCK.ExecuteNamedCommand('Paste');},GetState:function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('Paste');}};var FCKRuleCommand=function(){this.Name='Rule';};FCKRuleCommand.prototype={Execute:function(){FCKUndo.SaveUndoStep();FCK.InsertElement('hr');},GetState:function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('InsertHorizontalRule');}};var FCKCutCopyCommand=function(A){this.Name=A?'Cut':'Copy';};FCKCutCopyCommand.prototype={Execute:function(){var A=false;if (FCKBrowserInfo.IsIE){var B=function(){A=true;};var C='on'+this.Name.toLowerCase();FCK.EditorDocument.body.attachEvent(C,B);FCK.ExecuteNamedCommand(this.Name);FCK.EditorDocument.body.detachEvent(C,B);}else{try{FCK.ExecuteNamedCommand(this.Name);A=true;}catch(e){}};if (!A) alert(FCKLang['PasteError'+this.Name]);},GetState:function(){return FCK.EditMode!=0?-1:FCK.GetNamedCommandState('Cut');}};var FCKAnchorDeleteCommand=function(){this.Name='AnchorDelete';};FCKAnchorDeleteCommand.prototype={Execute:function(){if (FCK.Selection.GetType()=='Control'){FCK.Selection.Delete();}else{var A=FCK.Selection.GetSelectedElement();if (A){if (A.tagName=='IMG'&&A.getAttribute('_fckanchor')) oAnchor=FCK.GetRealElement(A);else A=null;};if (!A){oAnchor=FCK.Selection.MoveToAncestorNode('A');if (oAnchor) FCK.Selection.SelectNode(oAnchor);};if (oAnchor.href.length!=0){oAnchor.removeAttribute('name');if (FCKBrowserInfo.IsIE) oAnchor.className=oAnchor.className.replace(FCKRegexLib.FCK_Class,'');return;};if (A){A.parentNode.removeChild(A);return;};if (oAnchor.innerHTML.length==0){oAnchor.parentNode.removeChild(oAnchor);return;};FCKTools.RemoveOuterTags(oAnchor);};if (FCKBrowserInfo.IsGecko) FCK.Selection.Collapse(true);},GetState:function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('Unlink');}};var FCKDeleteDivCommand=function(){};FCKDeleteDivCommand.prototype={GetState:function(){if (FCK.EditMode!=0) return -1;var A=FCKSelection.GetParentElement();var B=new FCKElementPath(A);return B.BlockLimit&&B.BlockLimit.nodeName.IEquals('div')?0:-1;},Execute:function(){FCKUndo.SaveUndoStep();var A=FCKDomTools.GetSelectedDivContainers();var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=B.CreateBookmark();for (var i=0;i\n \n \n '+FCKLang.ColorAutomatic+' \n \n ';FCKTools.AddEventListenerEx(C,'click',FCKTextColorCommand_AutoOnClick,this);if (!FCKBrowserInfo.IsIE) C.style.width='96%';var G=FCKConfig.FontColors.toString().split(',');var H=0;while (H
';if (H>=G.length) C.style.visibility='hidden';else FCKTools.AddEventListenerEx(C,'click',FCKTextColorCommand_OnClick,[this,L]);}};if (FCKConfig.EnableMoreFontColors){E=D.insertRow(-1).insertCell(-1);E.colSpan=8;C=E.appendChild(CreateSelectionDiv());C.innerHTML=''+FCKLang.ColorMoreColors+'
';FCKTools.AddEventListenerEx(C,'click',FCKTextColorCommand_MoreOnClick,this);};if (!FCKBrowserInfo.IsIE) C.style.width='96%';};
-var FCKPastePlainTextCommand=function(){this.Name='PasteText';};FCKPastePlainTextCommand.prototype.Execute=function(){FCK.PasteAsPlainText();};FCKPastePlainTextCommand.prototype.GetState=function(){if (FCK.EditMode!=0) return -1;return FCK.GetNamedCommandState('Paste');};
-var FCKPasteWordCommand=function(){this.Name='PasteWord';};FCKPasteWordCommand.prototype.Execute=function(){FCK.PasteFromWord();};FCKPasteWordCommand.prototype.GetState=function(){if (FCK.EditMode!=0||FCKConfig.ForcePasteAsPlainText) return -1;else return FCK.GetNamedCommandState('Paste');};
-var FCKTableCommand=function(A){this.Name=A;};FCKTableCommand.prototype.Execute=function(){FCKUndo.SaveUndoStep();if (!FCKBrowserInfo.IsGecko){switch (this.Name){case 'TableMergeRight':return FCKTableHandler.MergeRight();case 'TableMergeDown':return FCKTableHandler.MergeDown();}};switch (this.Name){case 'TableInsertRowAfter':return FCKTableHandler.InsertRow(false);case 'TableInsertRowBefore':return FCKTableHandler.InsertRow(true);case 'TableDeleteRows':return FCKTableHandler.DeleteRows();case 'TableInsertColumnAfter':return FCKTableHandler.InsertColumn(false);case 'TableInsertColumnBefore':return FCKTableHandler.InsertColumn(true);case 'TableDeleteColumns':return FCKTableHandler.DeleteColumns();case 'TableInsertCellAfter':return FCKTableHandler.InsertCell(null,false);case 'TableInsertCellBefore':return FCKTableHandler.InsertCell(null,true);case 'TableDeleteCells':return FCKTableHandler.DeleteCells();case 'TableMergeCells':return FCKTableHandler.MergeCells();case 'TableHorizontalSplitCell':return FCKTableHandler.HorizontalSplitCell();case 'TableVerticalSplitCell':return FCKTableHandler.VerticalSplitCell();case 'TableDelete':return FCKTableHandler.DeleteTable();default:return alert(FCKLang.UnknownCommand.replace(/%1/g,this.Name));}};FCKTableCommand.prototype.GetState=function(){if (FCK.EditorDocument!=null&&FCKSelection.HasAncestorNode('TABLE')){switch (this.Name){case 'TableHorizontalSplitCell':case 'TableVerticalSplitCell':if (FCKTableHandler.GetSelectedCells().length==1) return 0;else return -1;case 'TableMergeCells':if (FCKTableHandler.CheckIsSelectionRectangular()&&FCKTableHandler.GetSelectedCells().length>1) return 0;else return -1;case 'TableMergeRight':return FCKTableHandler.GetMergeRightTarget()?0:-1;case 'TableMergeDown':return FCKTableHandler.GetMergeDownTarget()?0:-1;default:return 0;}}else return -1;};
-var FCKFitWindow=function(){this.Name='FitWindow';};FCKFitWindow.prototype.Execute=function(){var A=window.frameElement;var B=A.style;var C=parent;var D=C.document.documentElement;var E=C.document.body;var F=E.style;var G;var H,oEditorScrollPos;if (FCK.EditMode==0){H=new FCKDomRange(FCK.EditorWindow);H.MoveToSelection();oEditorScrollPos=FCKTools.GetScrollPosition(FCK.EditorWindow);}else{var I=FCK.EditingArea.Textarea;H=!FCKBrowserInfo.IsIE&&[I.selectionStart,I.selectionEnd];oEditorScrollPos=[I.scrollLeft,I.scrollTop];};if (!this.IsMaximized){if(FCKBrowserInfo.IsIE) C.attachEvent('onresize',FCKFitWindow_Resize);else C.addEventListener('resize',FCKFitWindow_Resize,true);this._ScrollPos=FCKTools.GetScrollPosition(C);G=A;while((G=G.parentNode)){if (G.nodeType==1){G._fckSavedStyles=FCKTools.SaveStyles(G);G.style.zIndex=FCKConfig.FloatingPanelsZIndex-1;}};if (FCKBrowserInfo.IsIE){this.documentElementOverflow=D.style.overflow;D.style.overflow='hidden';F.overflow='hidden';}else{F.overflow='hidden';F.width='0px';F.height='0px';};this._EditorFrameStyles=FCKTools.SaveStyles(A);var J=FCKTools.GetViewPaneSize(C);B.position="absolute";A.offsetLeft;B.zIndex=FCKConfig.FloatingPanelsZIndex-1;B.left="0px";B.top="0px";B.width=J.Width+"px";B.height=J.Height+"px";if (!FCKBrowserInfo.IsIE){B.borderRight=B.borderBottom="9999px solid white";B.backgroundColor="white";};C.scrollTo(0,0);var K=FCKTools.GetWindowPosition(C,A);if (K.x!=0) B.left=(-1*K.x)+"px";if (K.y!=0) B.top=(-1*K.y)+"px";this.IsMaximized=true;}else{if(FCKBrowserInfo.IsIE) C.detachEvent("onresize",FCKFitWindow_Resize);else C.removeEventListener("resize",FCKFitWindow_Resize,true);G=A;while((G=G.parentNode)){if (G._fckSavedStyles){FCKTools.RestoreStyles(G,G._fckSavedStyles);G._fckSavedStyles=null;}};if (FCKBrowserInfo.IsIE) D.style.overflow=this.documentElementOverflow;FCKTools.RestoreStyles(A,this._EditorFrameStyles);C.scrollTo(this._ScrollPos.X,this._ScrollPos.Y);this.IsMaximized=false;};FCKToolbarItems.GetItem('FitWindow').RefreshState();if (FCK.EditMode==0) FCK.EditingArea.MakeEditable();FCK.Focus();if (FCK.EditMode==0){H.Select();FCK.EditorWindow.scrollTo(oEditorScrollPos.X,oEditorScrollPos.Y);}else{if (!FCKBrowserInfo.IsIE){I.selectionStart=H[0];I.selectionEnd=H[1];};I.scrollLeft=oEditorScrollPos[0];I.scrollTop=oEditorScrollPos[1];}};FCKFitWindow.prototype.GetState=function(){if (FCKConfig.ToolbarLocation!='In') return -1;else return (this.IsMaximized?1:0);};function FCKFitWindow_Resize(){var A=FCKTools.GetViewPaneSize(parent);var B=window.frameElement.style;B.width=A.Width+'px';B.height=A.Height+'px';};
-var FCKListCommand=function(A,B){this.Name=A;this.TagName=B;};FCKListCommand.prototype={GetState:function(){if (FCK.EditMode!=0||!FCK.EditorWindow) return -1;var A=FCKSelection.GetBoundaryParentElement(true);var B=A;while (B){if (B.nodeName.IEquals(['ul','ol'])) break;B=B.parentNode;};if (B&&B.nodeName.IEquals(this.TagName)) return 1;else return 0;},Execute:function(){FCKUndo.SaveUndoStep();var A=FCK.EditorDocument;var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=this.GetState();if (C==0){FCKDomTools.TrimNode(A.body);if (!A.body.firstChild){var D=A.createElement('p');A.body.appendChild(D);B.MoveToNodeContents(D);}};var E=B.CreateBookmark();var F=[];var G={};var H=new FCKDomRangeIterator(B);var I;H.ForceBrBreak=(C==0);var J=true;var K=null;while (J){while ((I=H.GetNextParagraph())){var L=new FCKElementPath(I);var M=null;var N=false;var O=L.BlockLimit;for (var i=L.Elements.length-1;i>=0;i--){var P=L.Elements[i];if (P.nodeName.IEquals(['ol','ul'])){if (O._FCK_ListGroupObject) O._FCK_ListGroupObject=null;var Q=P._FCK_ListGroupObject;if (Q) Q.contents.push(I);else{Q={ 'root':P,'contents':[I] };F.push(Q);FCKDomTools.SetElementMarker(G,P,'_FCK_ListGroupObject',Q);};N=true;break;}};if (N) continue;var R=O;if (R._FCK_ListGroupObject) R._FCK_ListGroupObject.contents.push(I);else{var Q={ 'root':R,'contents':[I] };FCKDomTools.SetElementMarker(G,R,'_FCK_ListGroupObject',Q);F.push(Q);}};if (FCKBrowserInfo.IsIE) J=false;else{if (K==null){K=[];var T=FCKSelection.GetSelection();if (T&&F.length==0) K.push(T.getRangeAt(0));for (var i=1;T&&i0){var Q=F.shift();if (C==0){if (Q.root.nodeName.IEquals(['ul','ol'])) this._ChangeListType(Q,G,W);else this._CreateList(Q,W);}else if (C==1&&Q.root.nodeName.IEquals(['ul','ol'])) this._RemoveList(Q,G);};for (var i=0;iC[i-1].indent+1){var H=C[i-1].indent+1-C[i].indent;var I=C[i].indent;while (C[i]&&C[i].indent>=I){C[i].indent+=H;i++;};i--;}};var J=FCKDomTools.ArrayToList(C,B);if (A.root.nextSibling==null||A.root.nextSibling.nodeName.IEquals('br')){if (J.listNode.lastChild.nodeName.IEquals('br')) J.listNode.removeChild(J.listNode.lastChild);};A.root.parentNode.replaceChild(J.listNode,A.root);}};
-var FCKJustifyCommand=function(A){this.AlignValue=A;var B=FCKConfig.ContentLangDirection.toLowerCase();this.IsDefaultAlign=(A=='left'&&B=='ltr')||(A=='right'&&B=='rtl');var C=this._CssClassName=(function(){var D=FCKConfig.JustifyClasses;if (D){switch (A){case 'left':return D[0]||null;case 'center':return D[1]||null;case 'right':return D[2]||null;case 'justify':return D[3]||null;}};return null;})();if (C&&C.length>0) this._CssClassRegex=new RegExp('(?:^|\\s+)'+C+'(?=$|\\s)');};FCKJustifyCommand._GetClassNameRegex=function(){var A=FCKJustifyCommand._ClassRegex;if (A!=undefined) return A;var B=[];var C=FCKConfig.JustifyClasses;if (C){for (var i=0;i<4;i++){var D=C[i];if (D&&D.length>0) B.push(D);}};if (B.length>0) A=new RegExp('(?:^|\\s+)(?:'+B.join('|')+')(?=$|\\s)');else A=null;return FCKJustifyCommand._ClassRegex=A;};FCKJustifyCommand.prototype={Execute:function(){FCKUndo.SaveUndoStep();var A=new FCKDomRange(FCK.EditorWindow);A.MoveToSelection();var B=this.GetState();if (B==-1) return;var C=A.CreateBookmark();var D=this._CssClassName;var E=new FCKDomRangeIterator(A);var F;while ((F=E.GetNextParagraph())){F.removeAttribute('align');if (D){var G=F.className.replace(FCKJustifyCommand._GetClassNameRegex(),'');if (B==0){if (G.length>0) G+=' ';F.className=G+D;}else if (G.length==0) FCKDomTools.RemoveAttribute(F,'class');}else{var H=F.style;if (B==0) H.textAlign=this.AlignValue;else{H.textAlign='';if (H.cssText.length==0) F.removeAttribute('style');}}};A.MoveToBookmark(C);A.Select();FCK.Focus();FCK.Events.FireEvent('OnSelectionChange');},GetState:function(){if (FCK.EditMode!=0||!FCK.EditorWindow) return -1;var A=new FCKElementPath(FCKSelection.GetBoundaryParentElement(true));var B=A.Block||A.BlockLimit;if (!B||B.nodeName.toLowerCase()=='body') return 0;var C;if (FCKBrowserInfo.IsIE) C=B.currentStyle.textAlign;else C=FCK.EditorWindow.getComputedStyle(B,'').getPropertyValue('text-align');C=C.replace(/(-moz-|-webkit-|start|auto)/i,'');if ((!C&&this.IsDefaultAlign)||C==this.AlignValue) return 1;return 0;}};
-var FCKIndentCommand=function(A,B){this.Name=A;this.Offset=B;this.IndentCSSProperty=FCKConfig.ContentLangDirection.IEquals('ltr')?'marginLeft':'marginRight';};FCKIndentCommand._InitIndentModeParameters=function(){if (FCKConfig.IndentClasses&&FCKConfig.IndentClasses.length>0){this._UseIndentClasses=true;this._IndentClassMap={};for (var i=0;i0?H+' ':'')+FCKConfig.IndentClasses[G-1];}else{var I=parseInt(E.style[this.IndentCSSProperty],10);if (isNaN(I)) I=0;I+=this.Offset;I=Math.max(I,0);I=Math.ceil(I/this.Offset)*this.Offset;E.style[this.IndentCSSProperty]=I?I+FCKConfig.IndentUnit:'';if (E.getAttribute('style')=='') E.removeAttribute('style');}}},_IndentList:function(A,B){var C=A.StartContainer;var D=A.EndContainer;while (C&&C.parentNode!=B) C=C.parentNode;while (D&&D.parentNode!=B) D=D.parentNode;if (!C||!D) return;var E=C;var F=[];var G=false;while (G==false){if (E==D) G=true;F.push(E);E=E.nextSibling;};if (F.length<1) return;var H=FCKDomTools.GetParents(B);for (var i=0;iN;i++) M[i].indent+=I;var O=FCKDomTools.ArrayToList(M);if (O) B.parentNode.replaceChild(O.listNode,B);FCKDomTools.ClearAllMarkers(L);}};
-var FCKBlockQuoteCommand=function(){};FCKBlockQuoteCommand.prototype={Execute:function(){FCKUndo.SaveUndoStep();var A=this.GetState();var B=new FCKDomRange(FCK.EditorWindow);B.MoveToSelection();var C=B.CreateBookmark();if (FCKBrowserInfo.IsIE){var D=B.GetBookmarkNode(C,true);var E=B.GetBookmarkNode(C,false);var F;if (D&&D.parentNode.nodeName.IEquals('blockquote')&&!D.previousSibling){F=D;while ((F=F.nextSibling)){if (FCKListsLib.BlockElements[F.nodeName.toLowerCase()]) FCKDomTools.MoveNode(D,F,true);}};if (E&&E.parentNode.nodeName.IEquals('blockquote')&&!E.previousSibling){F=E;while ((F=F.nextSibling)){if (FCKListsLib.BlockElements[F.nodeName.toLowerCase()]){if (F.firstChild==D) FCKDomTools.InsertAfterNode(D,E);else FCKDomTools.MoveNode(E,F,true);}}}};var G=new FCKDomRangeIterator(B);var H;if (A==0){var I=[];while ((H=G.GetNextParagraph())) I.push(H);if (I.length<1){para=B.Window.document.createElement(FCKConfig.EnterMode.IEquals('p')?'p':'div');B.InsertNode(para);para.appendChild(B.Window.document.createTextNode('\ufeff'));B.MoveToBookmark(C);B.MoveToNodeContents(para);B.Collapse(true);C=B.CreateBookmark();I.push(para);};var J=I[0].parentNode;var K=[];for (var i=0;i0){H=I.shift();while (H.parentNode!=J) H=H.parentNode;if (H!=L) K.push(H);L=H;}while (K.length>0){H=K.shift();if (H.nodeName.IEquals('blockquote')){var M=FCKTools.GetElementDocument(H).createDocumentFragment();while (H.firstChild){M.appendChild(H.removeChild(H.firstChild));I.push(M.lastChild);};H.parentNode.replaceChild(M,H);}else I.push(H);};var N=B.Window.document.createElement('blockquote');J.insertBefore(N,I[0]);while (I.length>0){H=I.shift();N.appendChild(H);}}else if (A==1){var O=[];var P={};while ((H=G.GetNextParagraph())){var Q=null;var R=null;while (H.parentNode){if (H.parentNode.nodeName.IEquals('blockquote')){Q=H.parentNode;R=H;break;};H=H.parentNode;};if (Q&&R&&!R._fckblockquotemoveout){O.push(R);FCKDomTools.SetElementMarker(P,R,'_fckblockquotemoveout',true);}};FCKDomTools.ClearAllMarkers(P);var S=[];var T=[],P={};var U=function(N){for (var i=0;i0){var W=O.shift();var N=W.parentNode;if (W==W.parentNode.firstChild) N.parentNode.insertBefore(N.removeChild(W),N);else if (W==W.parentNode.lastChild) N.parentNode.insertBefore(N.removeChild(W),N.nextSibling);else FCKDomTools.BreakParent(W,W.parentNode,B);if (!N._fckbqprocessed){T.push(N);FCKDomTools.SetElementMarker(P,N,'_fckbqprocessed',true);};S.push(W);};for (var i=T.length-1;i>=0;i--){var N=T[i];if (U(N)) FCKDomTools.RemoveNode(N);};FCKDomTools.ClearAllMarkers(P);if (FCKConfig.EnterMode.IEquals('br')){while (S.length){var W=S.shift();var a=true;if (W.nodeName.IEquals('div')){var M=FCKTools.GetElementDocument(W).createDocumentFragment();var c=a&&W.previousSibling&&!FCKListsLib.BlockBoundaries[W.previousSibling.nodeName.toLowerCase()];if (a&&c) M.appendChild(FCKTools.GetElementDocument(W).createElement('br'));var d=W.nextSibling&&!FCKListsLib.BlockBoundaries[W.nextSibling.nodeName.toLowerCase()];while (W.firstChild) M.appendChild(W.removeChild(W.firstChild));if (d) M.appendChild(FCKTools.GetElementDocument(W).createElement('br'));W.parentNode.replaceChild(M,W);a=false;}}}};B.MoveToBookmark(C);B.Select();FCK.Focus();FCK.Events.FireEvent('OnSelectionChange');},GetState:function(){if (FCK.EditMode!=0||!FCK.EditorWindow) return -1;var A=new FCKElementPath(FCKSelection.GetBoundaryParentElement(true));var B=A.Block||A.BlockLimit;if (!B||B.nodeName.toLowerCase()=='body') return 0;for (var i=0;i';B.open();B.write(''+F+'<\/head><\/body><\/html>');B.close();if(FCKBrowserInfo.IsAIR) FCKAdobeAIR.Panel_Contructor(B,window.document.location);FCKTools.AddEventListenerEx(E,'focus',FCKPanel_Window_OnFocus,this);FCKTools.AddEventListenerEx(E,'blur',FCKPanel_Window_OnBlur,this);};B.dir=FCKLang.Dir;FCKTools.AddEventListener(B,'contextmenu',FCKTools.CancelEvent);this.MainNode=B.body.appendChild(B.createElement('DIV'));this.MainNode.style.cssFloat=this.IsRTL?'right':'left';};FCKPanel.prototype.AppendStyleSheet=function(A){FCKTools.AppendStyleSheet(this.Document,A);};FCKPanel.prototype.Preload=function(x,y,A){if (this._Popup) this._Popup.show(x,y,0,0,A);};FCKPanel.prototype.ResizeForSubpanel=function(A,B,C){if (!FCKBrowserInfo.IsIE7) return false;if (!this._Popup.isOpen){this.Subpanel=null;return false;};if (B==0&&C==0){if (this.Subpanel!==A) return false;this.Subpanel=null;this.IncreasedX=0;}else{this.Subpanel=A;if ((this.IncreasedX>=B)&&(this.IncreasedY>=C)) return false;this.IncreasedX=Math.max(this.IncreasedX,B);this.IncreasedY=Math.max(this.IncreasedY,C);};var x=this.ShowRect.x;var w=this.IncreasedX;if (this.IsRTL) x=x-w;var D=this.ShowRect.w+w;var E=Math.max(this.ShowRect.h,this.IncreasedY);if (this.ParentPanel) this.ParentPanel.ResizeForSubpanel(this,D,E);this._Popup.show(x,this.ShowRect.y,D,E,this.RelativeElement);return this.IsRTL;};FCKPanel.prototype.Show=function(x,y,A,B,C){var D;var E=this.MainNode;if (this._Popup){this._Popup.show(x,y,0,0,A);FCKDomTools.SetElementStyles(E,{B:B?B+'px':'',C:C?C+'px':''});D=E.offsetWidth;if (FCKBrowserInfo.IsIE7){if (this.ParentPanel&&this.ParentPanel.ResizeForSubpanel(this,D,E.offsetHeight)){FCKTools.RunFunction(this.Show,this,[x,y,A]);return;}};if (this.IsRTL){if (this.IsContextMenu) x=x-D+1;else if (A) x=(x*-1)+A.offsetWidth-D;};if (FCKBrowserInfo.IsIE7){this.ShowRect={x:x,y:y,w:D,h:E.offsetHeight};this.IncreasedX=0;this.IncreasedY=0;this.RelativeElement=A;};this._Popup.show(x,y,D,E.offsetHeight,A);if (this.OnHide){if (this._Timer) CheckPopupOnHide.call(this,true);this._Timer=FCKTools.SetInterval(CheckPopupOnHide,100,this);}}else{if (typeof(FCK.ToolbarSet.CurrentInstance.FocusManager)!='undefined') FCK.ToolbarSet.CurrentInstance.FocusManager.Lock();if (this.ParentPanel){this.ParentPanel.Lock();FCKPanel_Window_OnBlur(null,this.ParentPanel);};if (FCKBrowserInfo.IsGecko&&FCKBrowserInfo.IsMac){this._IFrame.scrolling='';FCKTools.RunFunction(function(){ this._IFrame.scrolling='no';},this);};if (FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel&&FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel!=this) FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel.Hide(false,true);FCKDomTools.SetElementStyles(E,{B:B?B+'px':'',C:C?C+'px':''});D=E.offsetWidth;if (!B) this._IFrame.width=1;if (!C) this._IFrame.height=1;D=E.offsetWidth||E.firstChild.offsetWidth;var F=FCKTools.GetDocumentPosition(this._Window,A.nodeType==9?(FCKTools.IsStrictMode(A)?A.documentElement:A.body):A);var G=FCKDomTools.GetPositionedAncestor(this._IFrame.parentNode);if (G){var H=FCKTools.GetDocumentPosition(FCKTools.GetElementWindow(G),G);F.x-=H.x;F.y-=H.y;};if (this.IsRTL&&!this.IsContextMenu) x=(x*-1);x+=F.x;y+=F.y;if (this.IsRTL){if (this.IsContextMenu) x=x-D+1;else if (A) x=x+A.offsetWidth-D;}else{var I=FCKTools.GetViewPaneSize(this._Window);var J=FCKTools.GetScrollPosition(this._Window);var K=I.Height+J.Y;var L=I.Width+J.X;if ((x+D)>L) x-=x+D-L;if ((y+E.offsetHeight)>K) y-=y+E.offsetHeight-K;};FCKDomTools.SetElementStyles(this._IFrame,{left:x+'px',top:y+'px'});this._IFrame.contentWindow.focus();this._IsOpened=true;var M=this;this._resizeTimer=setTimeout(function(){var N=E.offsetWidth||E.firstChild.offsetWidth;var O=E.offsetHeight;M._IFrame.style.width=N+'px';M._IFrame.style.height=O+'px';},0);FCK.ToolbarSet.CurrentInstance.GetInstanceObject('FCKPanel')._OpenedPanel=this;};FCKTools.RunFunction(this.OnShow,this);};FCKPanel.prototype.Hide=function(A,B){if (this._Popup) this._Popup.hide();else{if (!this._IsOpened||this._LockCounter>0) return;if (typeof(FCKFocusManager)!='undefined'&&!B) FCKFocusManager.Unlock();this._IFrame.style.width=this._IFrame.style.height='0px';this._IsOpened=false;if (this._resizeTimer){clearTimeout(this._resizeTimer);this._resizeTimer=null;};if (this.ParentPanel) this.ParentPanel.Unlock();if (!A) FCKTools.RunFunction(this.OnHide,this);}};FCKPanel.prototype.CheckIsOpened=function(){if (this._Popup) return this._Popup.isOpen;else return this._IsOpened;};FCKPanel.prototype.CreateChildPanel=function(){var A=this._Popup?FCKTools.GetDocumentWindow(this.Document):this._Window;var B=new FCKPanel(A);B.ParentPanel=this;return B;};FCKPanel.prototype.Lock=function(){this._LockCounter++;};FCKPanel.prototype.Unlock=function(){if (--this._LockCounter==0&&!this.HasFocus) this.Hide();};function FCKPanel_Window_OnFocus(e,A){A.HasFocus=true;};function FCKPanel_Window_OnBlur(e,A){A.HasFocus=false;if (A._LockCounter==0) FCKTools.RunFunction(A.Hide,A);};function CheckPopupOnHide(A){if (A||!this._Popup.isOpen){window.clearInterval(this._Timer);this._Timer=null;if (this._Popup&&this.ParentPanel&&!A) this.ParentPanel.ResizeForSubpanel(this,0,0);FCKTools.RunFunction(this.OnHide,this);}};function FCKPanel_Cleanup(){this._Popup=null;this._Window=null;this.Document=null;this.MainNode=null;this.RelativeElement=null;};
-var FCKIcon=function(A){var B=A?typeof(A):'undefined';switch (B){case 'number':this.Path=FCKConfig.SkinPath+'fck_strip.gif';this.Size=16;this.Position=A;break;case 'undefined':this.Path=FCK_SPACER_PATH;break;case 'string':this.Path=A;break;default:this.Path=A[0];this.Size=A[1];this.Position=A[2];}};FCKIcon.prototype.CreateIconElement=function(A){var B,eIconImage;if (this.Position){var C='-'+((this.Position-1)*this.Size)+'px';if (FCKBrowserInfo.IsIE){B=A.createElement('DIV');eIconImage=B.appendChild(A.createElement('IMG'));eIconImage.src=this.Path;eIconImage.style.top=C;}else{B=A.createElement('IMG');B.src=FCK_SPACER_PATH;B.style.backgroundPosition='0px '+C;B.style.backgroundImage='url("'+this.Path+'")';}}else{if (FCKBrowserInfo.IsIE){B=A.createElement('DIV');eIconImage=B.appendChild(A.createElement('IMG'));eIconImage.src=this.Path?this.Path:FCK_SPACER_PATH;}else{B=A.createElement('IMG');B.src=this.Path?this.Path:FCK_SPACER_PATH;}};B.className='TB_Button_Image';return B;};
-var FCKToolbarButtonUI=function(A,B,C,D,E,F){this.Name=A;this.Label=B||A;this.Tooltip=C||this.Label;this.Style=E||0;this.State=F||0;this.Icon=new FCKIcon(D);if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKToolbarButtonUI_Cleanup);};FCKToolbarButtonUI.prototype._CreatePaddingElement=function(A){var B=A.createElement('IMG');B.className='TB_Button_Padding';B.src=FCK_SPACER_PATH;return B;};FCKToolbarButtonUI.prototype.Create=function(A){var B=FCKTools.GetElementDocument(A);var C=this.MainElement=B.createElement('DIV');C.title=this.Tooltip;if (FCKBrowserInfo.IsGecko) C.onmousedown=FCKTools.CancelEvent;FCKTools.AddEventListenerEx(C,'mouseover',FCKToolbarButtonUI_OnMouseOver,this);FCKTools.AddEventListenerEx(C,'mouseout',FCKToolbarButtonUI_OnMouseOut,this);FCKTools.AddEventListenerEx(C,'click',FCKToolbarButtonUI_OnClick,this);this.ChangeState(this.State,true);if (this.Style==0&&!this.ShowArrow){C.appendChild(this.Icon.CreateIconElement(B));}else{var D=C.appendChild(B.createElement('TABLE'));D.cellPadding=0;D.cellSpacing=0;var E=D.insertRow(-1);var F=E.insertCell(-1);if (this.Style==0||this.Style==2) F.appendChild(this.Icon.CreateIconElement(B));else F.appendChild(this._CreatePaddingElement(B));if (this.Style==1||this.Style==2){F=E.insertCell(-1);F.className='TB_Button_Text';F.noWrap=true;F.appendChild(B.createTextNode(this.Label));};if (this.ShowArrow){if (this.Style!=0){E.insertCell(-1).appendChild(this._CreatePaddingElement(B));};F=E.insertCell(-1);var G=F.appendChild(B.createElement('IMG'));G.src=FCKConfig.SkinPath+'images/toolbar.buttonarrow.gif';G.width=5;G.height=3;};F=E.insertCell(-1);F.appendChild(this._CreatePaddingElement(B));};A.appendChild(C);};FCKToolbarButtonUI.prototype.ChangeState=function(A,B){if (!B&&this.State==A) return;var e=this.MainElement;if (!e) return;switch (parseInt(A,10)){case 0:e.className='TB_Button_Off';break;case 1:e.className='TB_Button_On';break;case -1:e.className='TB_Button_Disabled';break;};this.State=A;};function FCKToolbarButtonUI_OnMouseOver(A,B){if (B.State==0) this.className='TB_Button_Off_Over';else if (B.State==1) this.className='TB_Button_On_Over';};function FCKToolbarButtonUI_OnMouseOut(A,B){if (B.State==0) this.className='TB_Button_Off';else if (B.State==1) this.className='TB_Button_On';};function FCKToolbarButtonUI_OnClick(A,B){if (B.OnClick&&B.State!=-1) B.OnClick(B);};function FCKToolbarButtonUI_Cleanup(){this.MainElement=null;};
-var FCKToolbarButton=function(A,B,C,D,E,F,G){this.CommandName=A;this.Label=B;this.Tooltip=C;this.Style=D;this.SourceView=E?true:false;this.ContextSensitive=F?true:false;if (G==null) this.IconPath=FCKConfig.SkinPath+'toolbar/'+A.toLowerCase()+'.gif';else if (typeof(G)=='number') this.IconPath=[FCKConfig.SkinPath+'fck_strip.gif',16,G];else this.IconPath=G;};FCKToolbarButton.prototype.Create=function(A){this._UIButton=new FCKToolbarButtonUI(this.CommandName,this.Label,this.Tooltip,this.IconPath,this.Style);this._UIButton.OnClick=this.Click;this._UIButton._ToolbarButton=this;this._UIButton.Create(A);};FCKToolbarButton.prototype.RefreshState=function(){var A=this._UIButton;if (!A) return;var B=FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(this.CommandName).GetState();if (B==A.State) return;A.ChangeState(B);};FCKToolbarButton.prototype.Click=function(){var A=this._ToolbarButton||this;FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(A.CommandName).Execute();};FCKToolbarButton.prototype.Enable=function(){this.RefreshState();};FCKToolbarButton.prototype.Disable=function(){this._UIButton.ChangeState(-1);};
-var FCKSpecialCombo=function(A,B,C,D,E){this.FieldWidth=B||100;this.PanelWidth=C||150;this.PanelMaxHeight=D||150;this.Label=' ';this.Caption=A;this.Tooltip=A;this.Style=2;this.Enabled=true;this.Items={};this._Panel=new FCKPanel(E||window);this._Panel.AppendStyleSheet(FCKConfig.SkinEditorCSS);this._PanelBox=this._Panel.MainNode.appendChild(this._Panel.Document.createElement('DIV'));this._PanelBox.className='SC_Panel';this._PanelBox.style.width=this.PanelWidth+'px';this._PanelBox.innerHTML='';this._ItemsHolderEl=this._PanelBox.getElementsByTagName('TD')[0];if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKSpecialCombo_Cleanup);};function FCKSpecialCombo_ItemOnMouseOver(){this.className+=' SC_ItemOver';};function FCKSpecialCombo_ItemOnMouseOut(){this.className=this.originalClass;};function FCKSpecialCombo_ItemOnClick(A,B,C){this.className=this.originalClass;B._Panel.Hide();B.SetLabel(this.FCKItemLabel);if (typeof(B.OnSelect)=='function') B.OnSelect(C,this);};FCKSpecialCombo.prototype.ClearItems=function (){if (this.Items) this.Items={};var A=this._ItemsHolderEl;while (A.firstChild) A.removeChild(A.firstChild);};FCKSpecialCombo.prototype.AddItem=function(A,B,C,D){var E=this._ItemsHolderEl.appendChild(this._Panel.Document.createElement('DIV'));E.className=E.originalClass='SC_Item';E.innerHTML=B;E.FCKItemLabel=C||A;E.Selected=false;if (FCKBrowserInfo.IsIE) E.style.width='100%';if (D) E.style.backgroundColor=D;FCKTools.AddEventListenerEx(E,'mouseover',FCKSpecialCombo_ItemOnMouseOver);FCKTools.AddEventListenerEx(E,'mouseout',FCKSpecialCombo_ItemOnMouseOut);FCKTools.AddEventListenerEx(E,'click',FCKSpecialCombo_ItemOnClick,[this,A]);this.Items[A.toString().toLowerCase()]=E;return E;};FCKSpecialCombo.prototype.SelectItem=function(A){if (typeof A=='string') A=this.Items[A.toString().toLowerCase()];if (A){A.className=A.originalClass='SC_ItemSelected';A.Selected=true;}};FCKSpecialCombo.prototype.SelectItemByLabel=function(A,B){for (var C in this.Items){var D=this.Items[C];if (D.FCKItemLabel==A){D.className=D.originalClass='SC_ItemSelected';D.Selected=true;if (B) this.SetLabel(A);}}};FCKSpecialCombo.prototype.DeselectAll=function(A){for (var i in this.Items){if (!this.Items[i]) continue;this.Items[i].className=this.Items[i].originalClass='SC_Item';this.Items[i].Selected=false;};if (A) this.SetLabel('');};FCKSpecialCombo.prototype.SetLabelById=function(A){A=A?A.toString().toLowerCase():'';var B=this.Items[A];this.SetLabel(B?B.FCKItemLabel:'');};FCKSpecialCombo.prototype.SetLabel=function(A){A=(!A||A.length==0)?' ':A;if (A==this.Label) return;this.Label=A;var B=this._LabelEl;if (B){B.innerHTML=A;FCKTools.DisableSelection(B);}};FCKSpecialCombo.prototype.SetEnabled=function(A){this.Enabled=A;if (this._OuterTable) this._OuterTable.className=A?'':'SC_FieldDisabled';};FCKSpecialCombo.prototype.Create=function(A){var B=FCKTools.GetElementDocument(A);var C=this._OuterTable=A.appendChild(B.createElement('TABLE'));C.cellPadding=0;C.cellSpacing=0;C.insertRow(-1);var D;var E;switch (this.Style){case 0:D='TB_ButtonType_Icon';E=false;break;case 1:D='TB_ButtonType_Text';E=false;break;case 2:E=true;break;};if (this.Caption&&this.Caption.length>0&&E){var F=C.rows[0].insertCell(-1);F.innerHTML=this.Caption;F.className='SC_FieldCaption';};var G=FCKTools.AppendElement(C.rows[0].insertCell(-1),'div');if (E){G.className='SC_Field';G.style.width=this.FieldWidth+'px';G.innerHTML='';this._LabelEl=G.getElementsByTagName('label')[0];this._LabelEl.innerHTML=this.Label;}else{G.className='TB_Button_Off';G.innerHTML='';};FCKTools.AddEventListenerEx(G,'mouseover',FCKSpecialCombo_OnMouseOver,this);FCKTools.AddEventListenerEx(G,'mouseout',FCKSpecialCombo_OnMouseOut,this);FCKTools.AddEventListenerEx(G,'click',FCKSpecialCombo_OnClick,this);FCKTools.DisableSelection(this._Panel.Document.body);};function FCKSpecialCombo_Cleanup(){this._LabelEl=null;this._OuterTable=null;this._ItemsHolderEl=null;this._PanelBox=null;if (this.Items){for (var A in this.Items) this.Items[A]=null;}};function FCKSpecialCombo_OnMouseOver(A,B){if (B.Enabled){switch (B.Style){case 0:this.className='TB_Button_On_Over';break;case 1:this.className='TB_Button_On_Over';break;case 2:this.className='SC_Field SC_FieldOver';break;}}};function FCKSpecialCombo_OnMouseOut(A,B){switch (B.Style){case 0:this.className='TB_Button_Off';break;case 1:this.className='TB_Button_Off';break;case 2:this.className='SC_Field';break;}};function FCKSpecialCombo_OnClick(e,A){if (A.Enabled){var B=A._Panel;var C=A._PanelBox;var D=A._ItemsHolderEl;var E=A.PanelMaxHeight;if (A.OnBeforeClick) A.OnBeforeClick(A);if (FCKBrowserInfo.IsIE) B.Preload(0,this.offsetHeight,this);if (D.offsetHeight>E) C.style.height=E+'px';else C.style.height='';B.Show(0,this.offsetHeight,this);}};
-var FCKToolbarSpecialCombo=function(){this.SourceView=false;this.ContextSensitive=true;this.FieldWidth=null;this.PanelWidth=null;this.PanelMaxHeight=null;};FCKToolbarSpecialCombo.prototype.DefaultLabel='';function FCKToolbarSpecialCombo_OnSelect(A,B){FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(this.CommandName).Execute(A,B);};FCKToolbarSpecialCombo.prototype.Create=function(A){this._Combo=new FCKSpecialCombo(this.GetLabel(),this.FieldWidth,this.PanelWidth,this.PanelMaxHeight,FCKBrowserInfo.IsIE?window:FCKTools.GetElementWindow(A).parent);this._Combo.Tooltip=this.Tooltip;this._Combo.Style=this.Style;this.CreateItems(this._Combo);this._Combo.Create(A);this._Combo.CommandName=this.CommandName;this._Combo.OnSelect=FCKToolbarSpecialCombo_OnSelect;};function FCKToolbarSpecialCombo_RefreshActiveItems(A,B){A.DeselectAll();A.SelectItem(B);A.SetLabelById(B);};FCKToolbarSpecialCombo.prototype.RefreshState=function(){var A;var B=FCK.ToolbarSet.CurrentInstance.Commands.GetCommand(this.CommandName).GetState();if (B!=-1){A=1;if (this.RefreshActiveItems) this.RefreshActiveItems(this._Combo,B);else{if (this._LastValue!==B){this._LastValue=B;if (!B||B.length==0){this._Combo.DeselectAll();this._Combo.SetLabel(this.DefaultLabel);}else FCKToolbarSpecialCombo_RefreshActiveItems(this._Combo,B);}}}else A=-1;if (A==this.State) return;if (A==-1){this._Combo.DeselectAll();this._Combo.SetLabel('');};this.State=A;this._Combo.SetEnabled(A!=-1);};FCKToolbarSpecialCombo.prototype.Enable=function(){this.RefreshState();};FCKToolbarSpecialCombo.prototype.Disable=function(){this.State=-1;this._Combo.DeselectAll();this._Combo.SetLabel('');this._Combo.SetEnabled(false);};
-var FCKToolbarStyleCombo=function(A,B){if (A===false) return;this.CommandName='Style';this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:2;this.DefaultLabel=FCKConfig.DefaultStyleLabel||'';};FCKToolbarStyleCombo.prototype=new FCKToolbarSpecialCombo;FCKToolbarStyleCombo.prototype.GetLabel=function(){return FCKLang.Style;};FCKToolbarStyleCombo.prototype.GetStyles=function(){var A={};var B=FCK.ToolbarSet.CurrentInstance.Styles.GetStyles();for (var C in B){var D=B[C];if (!D.IsCore) A[C]=D;};return A;};FCKToolbarStyleCombo.prototype.CreateItems=function(A){var B=A._Panel.Document;FCKTools.AppendStyleSheet(B,FCKConfig.ToolbarComboPreviewCSS);FCKTools.AppendStyleString(B,FCKConfig.EditorAreaStyles);B.body.className+=' ForceBaseFont';FCKConfig.ApplyBodyAttributes(B.body);var C=this.GetStyles();for (var D in C){var E=C[D];var F=E.GetType()==2?D:FCKToolbarStyleCombo_BuildPreview(E,E.Label||D);var G=A.AddItem(D,F);G.Style=E;};A.OnBeforeClick=this.StyleCombo_OnBeforeClick;};FCKToolbarStyleCombo.prototype.RefreshActiveItems=function(A){var B=FCK.ToolbarSet.CurrentInstance.Selection.GetBoundaryParentElement(true);if (B){var C=new FCKElementPath(B);var D=C.Elements;for (var e=0;e');var E=A.Element;if (E=='bdo') E='span';D=['<',E];var F=A._StyleDesc.Attributes;if (F){for (var G in F){D.push(' ',G,'="',A.GetFinalAttributeValue(G),'"');}};if (A._GetStyleText().length>0) D.push(' style="',A.GetFinalStyleValue(),'"');D.push('>',B,'',E,'>');if (C==0) D.push('');return D.join('');};
-var FCKToolbarFontFormatCombo=function(A,B){if (A===false) return;this.CommandName='FontFormat';this.Label=this.GetLabel();this.Tooltip=A?A:this.Label;this.Style=B?B:2;this.NormalLabel='Normal';this.PanelWidth=190;this.DefaultLabel=FCKConfig.DefaultFontFormatLabel||'';};FCKToolbarFontFormatCombo.prototype=new FCKToolbarStyleCombo(false);FCKToolbarFontFormatCombo.prototype.GetLabel=function(){return FCKLang.FontFormat;};FCKToolbarFontFormatCombo.prototype.GetStyles=function(){var A={};var B=FCKLang['FontFormats'].split(';');var C={p:B[0],pre:B[1],address:B[2],h1:B[3],h2:B[4],h3:B[5],h4:B[6],h5:B[7],h6:B[8],div:B[9]||(B[0]+' (DIV)')};var D=FCKConfig.FontFormats.split(';');for (var i=0;i';G.open();G.write(''+H+''+document.getElementById('xToolbarSpace').innerHTML+'');G.close();if(FCKBrowserInfo.IsAIR) FCKAdobeAIR.ToolbarSet_InitOutFrame(G);FCKTools.AddEventListener(G,'contextmenu',FCKTools.CancelEvent);FCKTools.AppendStyleSheet(G,FCKConfig.SkinEditorCSS);B=D.__FCKToolbarSet=new FCKToolbarSet(G);B._IFrame=F;if (FCK.IECleanup) FCK.IECleanup.AddItem(D,FCKToolbarSet_Target_Cleanup);};B.CurrentInstance=FCK;if (!B.ToolbarItems) B.ToolbarItems=FCKToolbarItems;FCK.AttachToOnSelectionChange(B.RefreshItemsState);return B;};function FCK_OnBlur(A){var B=A.ToolbarSet;if (B.CurrentInstance==A) B.Disable();};function FCK_OnFocus(A){var B=A.ToolbarSet;var C=A||FCK;B.CurrentInstance.FocusManager.RemoveWindow(B._IFrame.contentWindow);B.CurrentInstance=C;C.FocusManager.AddWindow(B._IFrame.contentWindow,true);B.Enable();};function FCKToolbarSet_Cleanup(){this._TargetElement=null;this._IFrame=null;};function FCKToolbarSet_Target_Cleanup(){this.__FCKToolbarSet=null;};var FCKToolbarSet=function(A){this._Document=A;this._TargetElement=A.getElementById('xToolbar');var B=A.getElementById('xExpandHandle');var C=A.getElementById('xCollapseHandle');B.title=FCKLang.ToolbarExpand;FCKTools.AddEventListener(B,'click',FCKToolbarSet_Expand_OnClick);C.title=FCKLang.ToolbarCollapse;FCKTools.AddEventListener(C,'click',FCKToolbarSet_Collapse_OnClick);if (!FCKConfig.ToolbarCanCollapse||FCKConfig.ToolbarStartExpanded) this.Expand();else this.Collapse();C.style.display=FCKConfig.ToolbarCanCollapse?'':'none';if (FCKConfig.ToolbarCanCollapse) C.style.display='';else A.getElementById('xTBLeftBorder').style.display='';this.Toolbars=[];this.IsLoaded=false;if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKToolbarSet_Cleanup);};function FCKToolbarSet_Expand_OnClick(){FCK.ToolbarSet.Expand();};function FCKToolbarSet_Collapse_OnClick(){FCK.ToolbarSet.Collapse();};FCKToolbarSet.prototype.Expand=function(){this._ChangeVisibility(false);};FCKToolbarSet.prototype.Collapse=function(){this._ChangeVisibility(true);};FCKToolbarSet.prototype._ChangeVisibility=function(A){this._Document.getElementById('xCollapsed').style.display=A?'':'none';this._Document.getElementById('xExpanded').style.display=A?'none':'';if (FCKBrowserInfo.IsGecko){FCKTools.RunFunction(window.onresize);}};FCKToolbarSet.prototype.Load=function(A){this.Name=A;this.Items=[];this.ItemsWysiwygOnly=[];this.ItemsContextSensitive=[];this._TargetElement.innerHTML='';var B=FCKConfig.ToolbarSets[A];if (!B){alert(FCKLang.UnknownToolbarSet.replace(/%1/g,A));return;};this.Toolbars=[];for (var x=0;x0) break;}catch (e){break;};D=D.parent;};var E=D.document;var F=function(){if (!B) B=FCKConfig.FloatingPanelsZIndex+999;return++B;};var G=function(){if (!C) return;var H=FCKTools.IsStrictMode(E)?E.documentElement:E.body;FCKDomTools.SetElementStyles(C,{'width':Math.max(H.scrollWidth,H.clientWidth,E.scrollWidth||0)-1+'px','height':Math.max(H.scrollHeight,H.clientHeight,E.scrollHeight||0)-1+'px'});};return {OpenDialog:function(dialogName,dialogTitle,dialogPage,width,height,customValue,parentWindow,resizable){if (!A) this.DisplayMainCover();var I={Title:dialogTitle,Page:dialogPage,Editor:window,CustomValue:customValue,TopWindow:D};FCK.ToolbarSet.CurrentInstance.Selection.Save(true);var J=FCKTools.GetViewPaneSize(D);var K={ 'X':0,'Y':0 };var L=FCKBrowserInfo.IsIE&&(!FCKBrowserInfo.IsIE7||!FCKTools.IsStrictMode(D.document));if (L) K=FCKTools.GetScrollPosition(D);var M=Math.max(K.Y+(J.Height-height-20)/2,0);var N=Math.max(K.X+(J.Width-width-20)/2,0);var O=E.createElement('iframe');FCKTools.ResetStyles(O);O.src=FCKConfig.BasePath+'fckdialog.html';O.frameBorder=0;O.allowTransparency=true;FCKDomTools.SetElementStyles(O,{'position':(L)?'absolute':'fixed','top':M+'px','left':N+'px','width':width+'px','height':height+'px','zIndex':F()});O._DialogArguments=I;E.body.appendChild(O);O._ParentDialog=A;A=O;},OnDialogClose:function(dialogWindow){var O=dialogWindow.frameElement;FCKDomTools.RemoveNode(O);if (O._ParentDialog){A=O._ParentDialog;O._ParentDialog.contentWindow.SetEnabled(true);}else{if (!FCKBrowserInfo.IsIE) FCK.Focus();this.HideMainCover();setTimeout(function(){ A=null;},0);FCK.ToolbarSet.CurrentInstance.Selection.Release();}},DisplayMainCover:function(){C=E.createElement('div');FCKTools.ResetStyles(C);FCKDomTools.SetElementStyles(C,{'position':'absolute','zIndex':F(),'top':'0px','left':'0px','backgroundColor':FCKConfig.BackgroundBlockerColor});FCKDomTools.SetOpacity(C,FCKConfig.BackgroundBlockerOpacity);if (FCKBrowserInfo.IsIE&&!FCKBrowserInfo.IsIE7){var Q=E.createElement('iframe');FCKTools.ResetStyles(Q);Q.hideFocus=true;Q.frameBorder=0;Q.src=FCKTools.GetVoidUrl();FCKDomTools.SetElementStyles(Q,{'width':'100%','height':'100%','position':'absolute','left':'0px','top':'0px','filter':'progid:DXImageTransform.Microsoft.Alpha(opacity=0)'});C.appendChild(Q);};FCKTools.AddEventListener(D,'resize',G);G();E.body.appendChild(C);FCKFocusManager.Lock();var R=FCK.ToolbarSet.CurrentInstance.GetInstanceObject('frameElement');R._fck_originalTabIndex=R.tabIndex;R.tabIndex=-1;},HideMainCover:function(){FCKDomTools.RemoveNode(C);FCKFocusManager.Unlock();var R=FCK.ToolbarSet.CurrentInstance.GetInstanceObject('frameElement');R.tabIndex=R._fck_originalTabIndex;FCKDomTools.ClearElementJSProperty(R,'_fck_originalTabIndex');},GetCover:function(){return C;}};})();
-var FCKMenuItem=function(A,B,C,D,E,F){this.Name=B;this.Label=C||B;this.IsDisabled=E;this.Icon=new FCKIcon(D);this.SubMenu=new FCKMenuBlockPanel();this.SubMenu.Parent=A;this.SubMenu.OnClick=FCKTools.CreateEventListener(FCKMenuItem_SubMenu_OnClick,this);this.CustomData=F;if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKMenuItem_Cleanup);};FCKMenuItem.prototype.AddItem=function(A,B,C,D,E){this.HasSubMenu=true;return this.SubMenu.AddItem(A,B,C,D,E);};FCKMenuItem.prototype.AddSeparator=function(){this.SubMenu.AddSeparator();};FCKMenuItem.prototype.Create=function(A){var B=this.HasSubMenu;var C=FCKTools.GetElementDocument(A);var r=this.MainElement=A.insertRow(-1);r.className=this.IsDisabled?'MN_Item_Disabled':'MN_Item';if (!this.IsDisabled){FCKTools.AddEventListenerEx(r,'mouseover',FCKMenuItem_OnMouseOver,[this]);FCKTools.AddEventListenerEx(r,'click',FCKMenuItem_OnClick,[this]);if (!B) FCKTools.AddEventListenerEx(r,'mouseout',FCKMenuItem_OnMouseOut,[this]);};var D=r.insertCell(-1);D.className='MN_Icon';D.appendChild(this.Icon.CreateIconElement(C));D=r.insertCell(-1);D.className='MN_Label';D.noWrap=true;D.appendChild(C.createTextNode(this.Label));D=r.insertCell(-1);if (B){D.className='MN_Arrow';var E=D.appendChild(C.createElement('IMG'));E.src=FCK_IMAGES_PATH+'arrow_'+FCKLang.Dir+'.gif';E.width=4;E.height=7;this.SubMenu.Create();this.SubMenu.Panel.OnHide=FCKTools.CreateEventListener(FCKMenuItem_SubMenu_OnHide,this);}};FCKMenuItem.prototype.Activate=function(){this.MainElement.className='MN_Item_Over';if (this.HasSubMenu){this.SubMenu.Show(this.MainElement.offsetWidth+2,-2,this.MainElement);};FCKTools.RunFunction(this.OnActivate,this);};FCKMenuItem.prototype.Deactivate=function(){this.MainElement.className='MN_Item';if (this.HasSubMenu) this.SubMenu.Hide();};function FCKMenuItem_SubMenu_OnClick(A,B){FCKTools.RunFunction(B.OnClick,B,[A]);};function FCKMenuItem_SubMenu_OnHide(A){A.Deactivate();};function FCKMenuItem_OnClick(A,B){if (B.HasSubMenu) B.Activate();else{B.Deactivate();FCKTools.RunFunction(B.OnClick,B,[B]);}};function FCKMenuItem_OnMouseOver(A,B){B.Activate();};function FCKMenuItem_OnMouseOut(A,B){B.Deactivate();};function FCKMenuItem_Cleanup(){this.MainElement=null;};
-var FCKMenuBlock=function(){this._Items=[];};FCKMenuBlock.prototype.Count=function(){return this._Items.length;};FCKMenuBlock.prototype.AddItem=function(A,B,C,D,E){var F=new FCKMenuItem(this,A,B,C,D,E);F.OnClick=FCKTools.CreateEventListener(FCKMenuBlock_Item_OnClick,this);F.OnActivate=FCKTools.CreateEventListener(FCKMenuBlock_Item_OnActivate,this);this._Items.push(F);return F;};FCKMenuBlock.prototype.AddSeparator=function(){this._Items.push(new FCKMenuSeparator());};FCKMenuBlock.prototype.RemoveAllItems=function(){this._Items=[];var A=this._ItemsTable;if (A){while (A.rows.length>0) A.deleteRow(0);}};FCKMenuBlock.prototype.Create=function(A){if (!this._ItemsTable){if (FCK.IECleanup) FCK.IECleanup.AddItem(this,FCKMenuBlock_Cleanup);this._Window=FCKTools.GetElementWindow(A);var B=FCKTools.GetElementDocument(A);var C=A.appendChild(B.createElement('table'));C.cellPadding=0;C.cellSpacing=0;FCKTools.DisableSelection(C);var D=C.insertRow(-1).insertCell(-1);D.className='MN_Menu';var E=this._ItemsTable=D.appendChild(B.createElement('table'));E.cellPadding=0;E.cellSpacing=0;};for (var i=0;i0&&F.href.length==0);if (G) return;menu.AddSeparator();menu.AddItem('VisitLink',FCKLang.VisitLink);menu.AddSeparator();if (E) menu.AddItem('Link',FCKLang.EditLink,34);menu.AddItem('Unlink',FCKLang.RemoveLink,35);}}};case 'Image':return {AddItems:function(menu,tag,tagName){if (tagName=='IMG'&&!tag.getAttribute('_fckfakelement')){menu.AddSeparator();menu.AddItem('Image',FCKLang.ImageProperties,37);}}};case 'Anchor':return {AddItems:function(menu,tag,tagName){var F=FCKSelection.MoveToAncestorNode('A');var G=(F&&F.name.length>0);if (G||(tagName=='IMG'&&tag.getAttribute('_fckanchor'))){menu.AddSeparator();menu.AddItem('Anchor',FCKLang.AnchorProp,36);menu.AddItem('AnchorDelete',FCKLang.AnchorDelete);}}};case 'Flash':return {AddItems:function(menu,tag,tagName){if (tagName=='IMG'&&tag.getAttribute('_fckflash')){menu.AddSeparator();menu.AddItem('Flash',FCKLang.FlashProperties,38);}}};case 'Form':return {AddItems:function(menu,tag,tagName){if (FCKSelection.HasAncestorNode('FORM')){menu.AddSeparator();menu.AddItem('Form',FCKLang.FormProp,48);}}};case 'Checkbox':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&tag.type=='checkbox'){menu.AddSeparator();menu.AddItem('Checkbox',FCKLang.CheckboxProp,49);}}};case 'Radio':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&tag.type=='radio'){menu.AddSeparator();menu.AddItem('Radio',FCKLang.RadioButtonProp,50);}}};case 'TextField':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&(tag.type=='text'||tag.type=='password')){menu.AddSeparator();menu.AddItem('TextField',FCKLang.TextFieldProp,51);}}};case 'HiddenField':return {AddItems:function(menu,tag,tagName){if (tagName=='IMG'&&tag.getAttribute('_fckinputhidden')){menu.AddSeparator();menu.AddItem('HiddenField',FCKLang.HiddenFieldProp,56);}}};case 'ImageButton':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&tag.type=='image'){menu.AddSeparator();menu.AddItem('ImageButton',FCKLang.ImageButtonProp,55);}}};case 'Button':return {AddItems:function(menu,tag,tagName){if (tagName=='INPUT'&&(tag.type=='button'||tag.type=='submit'||tag.type=='reset')){menu.AddSeparator();menu.AddItem('Button',FCKLang.ButtonProp,54);}}};case 'Select':return {AddItems:function(menu,tag,tagName){if (tagName=='SELECT'){menu.AddSeparator();menu.AddItem('Select',FCKLang.SelectionFieldProp,53);}}};case 'Textarea':return {AddItems:function(menu,tag,tagName){if (tagName=='TEXTAREA'){menu.AddSeparator();menu.AddItem('Textarea',FCKLang.TextareaProp,52);}}};case 'BulletedList':return {AddItems:function(menu,tag,tagName){if (FCKSelection.HasAncestorNode('UL')){menu.AddSeparator();menu.AddItem('BulletedList',FCKLang.BulletedListProp,27);}}};case 'NumberedList':return {AddItems:function(menu,tag,tagName){if (FCKSelection.HasAncestorNode('OL')){menu.AddSeparator();menu.AddItem('NumberedList',FCKLang.NumberedListProp,26);}}};case 'DivContainer':return {AddItems:function(menu,tag,tagName){var J=FCKDomTools.GetSelectedDivContainers();if (J.length>0){menu.AddSeparator();menu.AddItem('EditDiv',FCKLang.EditDiv,75);menu.AddItem('DeleteDiv',FCKLang.DeleteDiv,76);}}};};return null;};function FCK_ContextMenu_OnBeforeOpen(){FCK.Events.FireEvent('OnSelectionChange');var A,sTagName;if ((A=FCKSelection.GetSelectedElement())) sTagName=A.tagName;var B=FCK.ContextMenu._InnerContextMenu;B.RemoveAllItems();var C=FCK.ContextMenu.Listeners;for (var i=0;i0){D=A.substr(0,B.index);this._sourceHtml=A.substr(B.index);}else{C=true;D=B[0];this._sourceHtml=A.substr(B[0].length);}}else{D=A;this._sourceHtml=null;};return { 'isTag':C,'value':D };},Each:function(A){var B;while ((B=this.Next())) A(B.isTag,B.value);}};var FCKHtmlIterator=function(A){this._sourceHtml=A;};FCKHtmlIterator.prototype={Next:function(){var A=this._sourceHtml;if (A==null) return null;var B=FCKRegexLib.HtmlTag.exec(A);var C=false;var D="";if (B){if (B.index>0){D=A.substr(0,B.index);this._sourceHtml=A.substr(B.index);}else{C=true;D=B[0];this._sourceHtml=A.substr(B[0].length);}}else{D=A;this._sourceHtml=null;};return { 'isTag':C,'value':D };},Each:function(A){var B;while ((B=this.Next())) A(B.isTag,B.value);}};
-var FCKPlugin=function(A,B,C){this.Name=A;this.BasePath=C?C:FCKConfig.PluginsPath;this.Path=this.BasePath+A+'/';if (!B||B.length==0) this.AvailableLangs=[];else this.AvailableLangs=B.split(',');};FCKPlugin.prototype.Load=function(){if (this.AvailableLangs.length>0){var A;if (this.AvailableLangs.IndexOf(FCKLanguageManager.ActiveLanguage.Code)>=0) A=FCKLanguageManager.ActiveLanguage.Code;else A=this.AvailableLangs[0];LoadScript(this.Path+'lang/'+A+'.js');};LoadScript(this.Path+'fckplugin.js');};
-var FCKPlugins=FCK.Plugins={};FCKPlugins.ItemsCount=0;FCKPlugins.Items={};FCKPlugins.Load=function(){var A=FCKPlugins.Items;for (var i=0;i",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Voeg asseblief die URL in",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Taal rigting",
-DlgGenLangDirLtr : "Links na regs (LTR)",
-DlgGenLangDirRtl : "Regs na links (RTL)",
-DlgGenLangCode : "Taal kode",
-DlgGenAccessKey : "Toegang sleutel",
-DlgGenName : "Naam",
-DlgGenTabIndex : "Tab Index",
-DlgGenLongDescr : "Lang beskreiwing URL",
-DlgGenClass : "Skakel Tiepe",
-DlgGenTitle : "Voorbeveelings Titel",
-DlgGenContType : "Voorbeveelings inhoud soort",
-DlgGenLinkCharset : "Geskakelde voorbeeld karakterstel",
-DlgGenStyle : "Styl",
-
-// Image Dialog
-DlgImgTitle : "Beeld eienskappe",
-DlgImgInfoTab : "Beeld informasie",
-DlgImgBtnUpload : "Stuur dit na die Server",
-DlgImgURL : "URL",
-DlgImgUpload : "Uplaai",
-DlgImgAlt : "Alternatiewe beskrywing",
-DlgImgWidth : "Weidte",
-DlgImgHeight : "Hoogde",
-DlgImgLockRatio : "Behou preporsie",
-DlgBtnResetSize : "Herstel groote",
-DlgImgBorder : "Kant",
-DlgImgHSpace : "HSpasie",
-DlgImgVSpace : "VSpasie",
-DlgImgAlign : "Paradeer",
-DlgImgAlignLeft : "Links",
-DlgImgAlignAbsBottom: "Abs Onder",
-DlgImgAlignAbsMiddle: "Abs Middel",
-DlgImgAlignBaseline : "Baseline",
-DlgImgAlignBottom : "Onder",
-DlgImgAlignMiddle : "Middel",
-DlgImgAlignRight : "Regs",
-DlgImgAlignTextTop : "Text Bo",
-DlgImgAlignTop : "Bo",
-DlgImgPreview : "Voorskou",
-DlgImgAlertUrl : "Voeg asseblief Beeld URL in.",
-DlgImgLinkTab : "Skakel",
-
-// Flash Dialog
-DlgFlashTitle : "Flash eienskappe",
-DlgFlashChkPlay : "Automaties Speel",
-DlgFlashChkLoop : "Herhaling",
-DlgFlashChkMenu : "Laat Flash Menu toe",
-DlgFlashScale : "Scale",
-DlgFlashScaleAll : "Wys alles",
-DlgFlashScaleNoBorder : "Geen kante",
-DlgFlashScaleFit : "Presiese pas",
-
-// Link Dialog
-DlgLnkWindowTitle : "Skakel",
-DlgLnkInfoTab : "Skakel informasie",
-DlgLnkTargetTab : "Mikpunt",
-
-DlgLnkType : "Skakel soort",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Skakel na plekhouers in text",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protokol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Kies 'n plekhouer",
-DlgLnkAnchorByName : "Volgens plekhouer naam",
-DlgLnkAnchorById : "Volgens element Id",
-DlgLnkNoAnchors : "(Geen plekhouers beskikbaar in dokument}",
-DlgLnkEMail : "E-Mail Adres",
-DlgLnkEMailSubject : "Boodskap Opskrif",
-DlgLnkEMailBody : "Boodskap Inhoud",
-DlgLnkUpload : "Oplaai",
-DlgLnkBtnUpload : "Stuur na Server",
-
-DlgLnkTarget : "Mikpunt",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nuwe Venster (_blank)",
-DlgLnkTargetParent : "Vorige Venster (_parent)",
-DlgLnkTargetSelf : "Selfde Venster (_self)",
-DlgLnkTargetTop : "Boonste Venster (_top)",
-DlgLnkTargetFrameName : "Mikpunt Venster Naam",
-DlgLnkPopWinName : "Popup Venster Naam",
-DlgLnkPopWinFeat : "Popup Venster Geaartheid",
-DlgLnkPopResize : "Verstelbare Groote",
-DlgLnkPopLocation : "Adres Balk",
-DlgLnkPopMenu : "Menu Balk",
-DlgLnkPopScroll : "Gleibalkstuk",
-DlgLnkPopStatus : "Status Balk",
-DlgLnkPopToolbar : "Gereedskap Balk",
-DlgLnkPopFullScrn : "Voll Skerm (IE)",
-DlgLnkPopDependent : "Afhanklik (Netscape)",
-DlgLnkPopWidth : "Weite",
-DlgLnkPopHeight : "Hoogde",
-DlgLnkPopLeft : "Links Posisie",
-DlgLnkPopTop : "Bo Posisie",
-
-DlnLnkMsgNoUrl : "Voeg asseblief die URL in",
-DlnLnkMsgNoEMail : "Voeg asseblief die e-mail adres in",
-DlnLnkMsgNoAnchor : "Kies asseblief 'n plekhouer",
-DlnLnkMsgInvPopName : "Die popup naam moet begin met alphabetiese karakters sonder spasies.",
-
-// Color Dialog
-DlgColorTitle : "Kies Kleur",
-DlgColorBtnClear : "Maak skoon",
-DlgColorHighlight : "Highlight",
-DlgColorSelected : "Geselekteer",
-
-// Smiley Dialog
-DlgSmileyTitle : "Voeg Smiley by",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Kies spesiale karakter",
-
-// Table Dialog
-DlgTableTitle : "Tabel eienskappe",
-DlgTableRows : "Reie",
-DlgTableColumns : "Kolome",
-DlgTableBorder : "Kant groote",
-DlgTableAlign : "Parideering",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Links",
-DlgTableAlignCenter : "Middel",
-DlgTableAlignRight : "Regs",
-DlgTableWidth : "Weite",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "percent",
-DlgTableHeight : "Hoogde",
-DlgTableCellSpace : "Cell spasieering",
-DlgTableCellPad : "Cell buffer",
-DlgTableCaption : "Beskreiwing",
-DlgTableSummary : "Opsomming",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Cell eienskappe",
-DlgCellWidth : "Weite",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "percent",
-DlgCellHeight : "Hoogde",
-DlgCellWordWrap : "Woord Wrap",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Ja",
-DlgCellWordWrapNo : "Nee",
-DlgCellHorAlign : "Horisontale rigting",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Links",
-DlgCellHorAlignCenter : "Middel",
-DlgCellHorAlignRight: "Regs",
-DlgCellVerAlign : "Vertikale rigting",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Bo",
-DlgCellVerAlignMiddle : "Middel",
-DlgCellVerAlignBottom : "Onder",
-DlgCellVerAlignBaseline : "Baseline",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Rei strekking",
-DlgCellCollSpan : "Kolom strekking",
-DlgCellBackColor : "Agtergrond Kleur",
-DlgCellBorderColor : "Kant Kleur",
-DlgCellBtnSelect : "Keuse...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace", //MISSING
-
-// Find Dialog
-DlgFindTitle : "Vind",
-DlgFindFindBtn : "Vind",
-DlgFindNotFoundMsg : "Die gespesifiseerde karakters word nie gevind nie.",
-
-// Replace Dialog
-DlgReplaceTitle : "Vervang",
-DlgReplaceFindLbl : "Soek wat:",
-DlgReplaceReplaceLbl : "Vervang met:",
-DlgReplaceCaseChk : "Vergelyk karakter skryfweise",
-DlgReplaceReplaceBtn : "Vervang",
-DlgReplaceReplAllBtn : "Vervang alles",
-DlgReplaceWordChk : "Vergelyk komplete woord",
-
-// Paste Operations / Dialog
-PasteErrorCut : "U browser se sekuriteit instelling behinder die uitsny aksie. Gebruik asseblief die sleutel kombenasie(Ctrl+X).",
-PasteErrorCopy : "U browser se sekuriteit instelling behinder die kopieerings aksie. Gebruik asseblief die sleutel kombenasie(Ctrl+C).",
-
-PasteAsText : "Voeg slegs karakters by",
-PasteFromWord : "Byvoeging uit Word",
-
-DlgPasteMsg2 : "Voeg asseblief die inhoud in die gegewe box by met sleutel kombenasie(Ctrl+V ) en druk OK .",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.", //MISSING
-DlgPasteIgnoreFont : "Ignoreer karakter soort defenisies",
-DlgPasteRemoveStyles : "Verweider Styl defenisies",
-
-// Color Picker
-ColorAutomatic : "Automaties",
-ColorMoreColors : "Meer Kleure...",
-
-// Document Properties
-DocProps : "Dokument Eienskappe",
-
-// Anchor Dialog
-DlgAnchorTitle : "Plekhouer Eienskappe",
-DlgAnchorName : "Plekhouer Naam",
-DlgAnchorErrorName : "Voltooi die plekhouer naam asseblief",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Nie in woordeboek nie",
-DlgSpellChangeTo : "Verander na",
-DlgSpellBtnIgnore : "Ignoreer",
-DlgSpellBtnIgnoreAll : "Ignoreer na-volgende",
-DlgSpellBtnReplace : "Vervang",
-DlgSpellBtnReplaceAll : "vervang na-volgende",
-DlgSpellBtnUndo : "Ont-skep",
-DlgSpellNoSuggestions : "- Geen voorstel -",
-DlgSpellProgress : "Spelling word beproef...",
-DlgSpellNoMispell : "Spellproef kompleet: Geen foute",
-DlgSpellNoChanges : "Spellproef kompleet: Geen woord veranderings",
-DlgSpellOneChange : "Spellproef kompleet: Een woord verander",
-DlgSpellManyChanges : "Spellproef kompleet: %1 woorde verander",
-
-IeSpellDownload : "Geen Spellproefer geinstaleer nie. Wil U dit aflaai?",
-
-// Button Dialog
-DlgButtonText : "Karakters (Waarde)",
-DlgButtonType : "Soort",
-DlgButtonTypeBtn : "Knop",
-DlgButtonTypeSbm : "Indien",
-DlgButtonTypeRst : "Reset",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Naam",
-DlgCheckboxValue : "Waarde",
-DlgCheckboxSelected : "Uitgekies",
-
-// Form Dialog
-DlgFormName : "Naam",
-DlgFormAction : "Aksie",
-DlgFormMethod : "Metode",
-
-// Select Field Dialog
-DlgSelectName : "Naam",
-DlgSelectValue : "Waarde",
-DlgSelectSize : "Grote",
-DlgSelectLines : "lyne",
-DlgSelectChkMulti : "Laat meerere keuses toe",
-DlgSelectOpAvail : "Beskikbare Opsies",
-DlgSelectOpText : "Karakters",
-DlgSelectOpValue : "Waarde",
-DlgSelectBtnAdd : "Byvoeg",
-DlgSelectBtnModify : "Verander",
-DlgSelectBtnUp : "Op",
-DlgSelectBtnDown : "Af",
-DlgSelectBtnSetValue : "Stel as uitgekiesde waarde",
-DlgSelectBtnDelete : "Verweider",
-
-// Textarea Dialog
-DlgTextareaName : "Naam",
-DlgTextareaCols : "Kolom",
-DlgTextareaRows : "Reie",
-
-// Text Field Dialog
-DlgTextName : "Naam",
-DlgTextValue : "Waarde",
-DlgTextCharWidth : "Karakter weite",
-DlgTextMaxChars : "Maximale karakters",
-DlgTextType : "Soort",
-DlgTextTypeText : "Karakters",
-DlgTextTypePass : "Wagwoord",
-
-// Hidden Field Dialog
-DlgHiddenName : "Naam",
-DlgHiddenValue : "Waarde",
-
-// Bulleted List Dialog
-BulletedListProp : "Gepunkte lys eienskappe",
-NumberedListProp : "Genommerde lys eienskappe",
-DlgLstStart : "Begin",
-DlgLstType : "Soort",
-DlgLstTypeCircle : "Sirkel",
-DlgLstTypeDisc : "Skyf",
-DlgLstTypeSquare : "Vierkant",
-DlgLstTypeNumbers : "Nommer (1, 2, 3)",
-DlgLstTypeLCase : "Klein Letters (a, b, c)",
-DlgLstTypeUCase : "Hoof Letters (A, B, C)",
-DlgLstTypeSRoman : "Klein Romeinse nommers (i, ii, iii)",
-DlgLstTypeLRoman : "Groot Romeinse nommers (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Algemeen",
-DlgDocBackTab : "Agtergrond",
-DlgDocColorsTab : "Kleure en Rante",
-DlgDocMetaTab : "Meta Data",
-
-DlgDocPageTitle : "Bladsy Opskrif",
-DlgDocLangDir : "Taal rigting",
-DlgDocLangDirLTR : "Link na Regs (LTR)",
-DlgDocLangDirRTL : "Regs na Links (RTL)",
-DlgDocLangCode : "Taal Kode",
-DlgDocCharSet : "Karakterstel Kodeering",
-DlgDocCharSetCE : "Sentraal Europa",
-DlgDocCharSetCT : "Chinees Traditioneel (Big5)",
-DlgDocCharSetCR : "Cyrillic",
-DlgDocCharSetGR : "Grieks",
-DlgDocCharSetJP : "Japanees",
-DlgDocCharSetKR : "Koreans",
-DlgDocCharSetTR : "Turks",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Western European",
-DlgDocCharSetOther : "Ander Karakterstel Kodeering",
-
-DlgDocDocType : "Dokument Opskrif Soort",
-DlgDocDocTypeOther : "Ander Dokument Opskrif Soort",
-DlgDocIncXHTML : "Voeg XHTML verklaring by",
-DlgDocBgColor : "Agtergrond kleur",
-DlgDocBgImage : "Agtergrond Beeld URL",
-DlgDocBgNoScroll : "Vasgeklemde Agtergrond",
-DlgDocCText : "Karakters",
-DlgDocCLink : "Skakel",
-DlgDocCVisited : "Besoekte Skakel",
-DlgDocCActive : "Aktiewe Skakel",
-DlgDocMargins : "Bladsy Rante",
-DlgDocMaTop : "Bo",
-DlgDocMaLeft : "Links",
-DlgDocMaRight : "Regs",
-DlgDocMaBottom : "Onder",
-DlgDocMeIndex : "Dokument Index Sleutelwoorde(comma verdeelt)",
-DlgDocMeDescr : "Dokument Beskrywing",
-DlgDocMeAuthor : "Skrywer",
-DlgDocMeCopy : "Kopiereg",
-DlgDocPreview : "Voorskou",
-
-// Templates Dialog
-Templates : "Templates",
-DlgTemplatesTitle : "Inhoud Templates",
-DlgTemplatesSelMsg : "Kies die template om te gebruik in die editor (Inhoud word vervang!):",
-DlgTemplatesLoading : "Templates word gelaai. U geduld asseblief...",
-DlgTemplatesNoTpl : "(Geen templates gedefinieerd)",
-DlgTemplatesReplace : "Vervang bestaande inhoud",
-
-// About Dialog
-DlgAboutAboutTab : "Meer oor",
-DlgAboutBrowserInfoTab : "Blaai Informasie deur",
-DlgAboutLicenseTab : "Lesensie",
-DlgAboutVersion : "weergawe",
-DlgAboutInfo : "Vir meer informasie gaan na ",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/ar.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/ar.js
deleted file mode 100755
index 5efa4ee..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/ar.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Arabic language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "rtl",
-
-ToolbarCollapse : "ضم شريط الأدوات",
-ToolbarExpand : "تمدد شريط الأدوات",
-
-// Toolbar Items and Context Menu
-Save : "حفظ",
-NewPage : "صفحة جديدة",
-Preview : "معاينة الصفحة",
-Cut : "قص",
-Copy : "نسخ",
-Paste : "لصق",
-PasteText : "لصق كنص بسيط",
-PasteWord : "لصق من وورد",
-Print : "طباعة",
-SelectAll : "تحديد الكل",
-RemoveFormat : "إزالة التنسيقات",
-InsertLinkLbl : "رابط",
-InsertLink : "إدراج/تحرير رابط",
-RemoveLink : "إزالة رابط",
-VisitLink : "افتح الرابط",
-Anchor : "إدراج/تحرير إشارة مرجعية",
-AnchorDelete : "إزالة إشارة مرجعية",
-InsertImageLbl : "صورة",
-InsertImage : "إدراج/تحرير صورة",
-InsertFlashLbl : "فلاش",
-InsertFlash : "إدراج/تحرير فيلم فلاش",
-InsertTableLbl : "جدول",
-InsertTable : "إدراج/تحرير جدول",
-InsertLineLbl : "خط فاصل",
-InsertLine : "إدراج خط فاصل",
-InsertSpecialCharLbl: "رموز",
-InsertSpecialChar : "إدراج رموز..ِ",
-InsertSmileyLbl : "ابتسامات",
-InsertSmiley : "إدراج ابتسامات",
-About : "حول FCKeditor",
-Bold : "غامق",
-Italic : "مائل",
-Underline : "تسطير",
-StrikeThrough : "يتوسطه خط",
-Subscript : "منخفض",
-Superscript : "مرتفع",
-LeftJustify : "محاذاة إلى اليسار",
-CenterJustify : "توسيط",
-RightJustify : "محاذاة إلى اليمين",
-BlockJustify : "ضبط",
-DecreaseIndent : "إنقاص المسافة البادئة",
-IncreaseIndent : "زيادة المسافة البادئة",
-Blockquote : "اقتباس",
-CreateDiv : "إنشاء حاوية Div",
-EditDiv : "تعديل حاوية Div",
-DeleteDiv : "إزالة حاوية Div",
-Undo : "تراجع",
-Redo : "إعادة",
-NumberedListLbl : "تعداد رقمي",
-NumberedList : "إدراج/إلغاء تعداد رقمي",
-BulletedListLbl : "تعداد نقطي",
-BulletedList : "إدراج/إلغاء تعداد نقطي",
-ShowTableBorders : "معاينة حدود الجداول",
-ShowDetails : "معاينة التفاصيل",
-Style : "نمط",
-FontFormat : "تنسيق",
-Font : "خط",
-FontSize : "حجم الخط",
-TextColor : "لون النص",
-BGColor : "لون الخلفية",
-Source : "شفرة المصدر",
-Find : "بحث",
-Replace : "إستبدال",
-SpellCheck : "تدقيق إملائي",
-UniversalKeyboard : "لوحة المفاتيح العالمية",
-PageBreakLbl : "فصل الصفحة",
-PageBreak : "إدخال صفحة جديدة",
-
-Form : "نموذج",
-Checkbox : "خانة إختيار",
-RadioButton : "زر خيار",
-TextField : "مربع نص",
-Textarea : "ناحية نص",
-HiddenField : "إدراج حقل خفي",
-Button : "زر ضغط",
-SelectionField : "قائمة منسدلة",
-ImageButton : "زر صورة",
-
-FitWindow : "تكبير حجم المحرر",
-ShowBlocks : "مخطط تفصيلي",
-
-// Context Menu
-EditLink : "تحرير رابط",
-CellCM : "خلية",
-RowCM : "صف",
-ColumnCM : "عمود",
-InsertRowAfter : "إدراج صف بعد",
-InsertRowBefore : "إدراج صف قبل",
-DeleteRows : "حذف صفوف",
-InsertColumnAfter : "إدراج عمود بعد",
-InsertColumnBefore : "إدراج عمود قبل",
-DeleteColumns : "حذف أعمدة",
-InsertCellAfter : "إدراج خلية بعد",
-InsertCellBefore : "إدراج خلية قبل",
-DeleteCells : "حذف خلايا",
-MergeCells : "دمج خلايا",
-MergeRight : "دمج لليمين",
-MergeDown : "دمج للأسفل",
-HorizontalSplitCell : "تقسيم الخلية أفقياً",
-VerticalSplitCell : "تقسيم الخلية عمودياً",
-TableDelete : "حذف الجدول",
-CellProperties : "خصائص الخلية",
-TableProperties : "خصائص الجدول",
-ImageProperties : "خصائص الصورة",
-FlashProperties : "خصائص فيلم الفلاش",
-
-AnchorProp : "خصائص الإشارة المرجعية",
-ButtonProp : "خصائص زر الضغط",
-CheckboxProp : "خصائص خانة الإختيار",
-HiddenFieldProp : "خصائص الحقل الخفي",
-RadioButtonProp : "خصائص زر الخيار",
-ImageButtonProp : "خصائص زر الصورة",
-TextFieldProp : "خصائص مربع النص",
-SelectionFieldProp : "خصائص القائمة المنسدلة",
-TextareaProp : "خصائص ناحية النص",
-FormProp : "خصائص النموذج",
-
-FontFormats : "عادي;منسّق;دوس;العنوان 1;العنوان 2;العنوان 3;العنوان 4;العنوان 5;العنوان 6",
-
-// Alerts and Messages
-ProcessingXHTML : "إنتظر قليلاً ريثما تتم معالَجة XHTML. لن يستغرق طويلاً...",
-Done : "تم",
-PasteWordConfirm : "يبدو أن النص المراد لصقه منسوخ من برنامج وورد. هل تود تنظيفه قبل الشروع في عملية اللصق؟",
-NotCompatiblePaste : "هذه الميزة تحتاج لمتصفح من النوعInternet Explorer إصدار 5.5 فما فوق. هل تود اللصق دون تنظيف الكود؟",
-UnknownToolbarItem : "عنصر شريط أدوات غير معروف \"%1\"",
-UnknownCommand : "أمر غير معروف \"%1\"",
-NotImplemented : "لم يتم دعم هذا الأمر",
-UnknownToolbarSet : "لم أتمكن من العثور على طقم الأدوات \"%1\" ",
-NoActiveX : "لتأمين متصفحك يجب أن تحدد بعض مميزات المحرر. يتوجب عليك تمكين الخيار \"Run ActiveX controls and plug-ins\". قد تواجة أخطاء وتلاحظ مميزات مفقودة",
-BrowseServerBlocked : "لايمكن فتح مصدر المتصفح. فضلا يجب التأكد بأن جميع موانع النوافذ المنبثقة معطلة",
-DialogBlocked : "لايمكن فتح نافذة الحوار . فضلا تأكد من أن مانع النوافذ المنبثة معطل .",
-VisitLinkBlocked : "لا يمكن فتح نافذة جديدة. تأكد من إيقاف كل مانعي فتح النوافذ من العمل.",
-
-// Dialogs
-DlgBtnOK : "موافق",
-DlgBtnCancel : "إلغاء الأمر",
-DlgBtnClose : "إغلاق",
-DlgBtnBrowseServer : "تصفح الخادم",
-DlgAdvancedTag : "متقدم",
-DlgOpOther : "<أخرى>",
-DlgInfoTab : "معلومات",
-DlgAlertUrl : "الرجاء كتابة عنوان الإنترنت",
-
-// General Dialogs Labels
-DlgGenNotSet : "<بدون تحديد>",
-DlgGenId : "الرقم",
-DlgGenLangDir : "إتجاه النص",
-DlgGenLangDirLtr : "اليسار لليمين (LTR)",
-DlgGenLangDirRtl : "اليمين لليسار (RTL)",
-DlgGenLangCode : "رمز اللغة",
-DlgGenAccessKey : "مفاتيح الإختصار",
-DlgGenName : "الاسم",
-DlgGenTabIndex : "الترتيب",
-DlgGenLongDescr : "عنوان الوصف المفصّل",
-DlgGenClass : "فئات التنسيق",
-DlgGenTitle : "تلميح الشاشة",
-DlgGenContType : "نوع التلميح",
-DlgGenLinkCharset : "ترميز المادة المطلوبة",
-DlgGenStyle : "نمط",
-
-// Image Dialog
-DlgImgTitle : "خصائص الصورة",
-DlgImgInfoTab : "معلومات الصورة",
-DlgImgBtnUpload : "أرسلها للخادم",
-DlgImgURL : "موقع الصورة",
-DlgImgUpload : "رفع",
-DlgImgAlt : "الوصف",
-DlgImgWidth : "العرض",
-DlgImgHeight : "الإرتفاع",
-DlgImgLockRatio : "تناسق الحجم",
-DlgBtnResetSize : "إستعادة الحجم الأصلي",
-DlgImgBorder : "سمك الحدود",
-DlgImgHSpace : "تباعد أفقي",
-DlgImgVSpace : "تباعد عمودي",
-DlgImgAlign : "محاذاة",
-DlgImgAlignLeft : "يسار",
-DlgImgAlignAbsBottom: "أسفل النص",
-DlgImgAlignAbsMiddle: "وسط السطر",
-DlgImgAlignBaseline : "على السطر",
-DlgImgAlignBottom : "أسفل",
-DlgImgAlignMiddle : "وسط",
-DlgImgAlignRight : "يمين",
-DlgImgAlignTextTop : "أعلى النص",
-DlgImgAlignTop : "أعلى",
-DlgImgPreview : "معاينة",
-DlgImgAlertUrl : "فضلاً أكتب الموقع الذي توجد عليه هذه الصورة.",
-DlgImgLinkTab : "الرابط",
-
-// Flash Dialog
-DlgFlashTitle : "خصائص فيلم الفلاش",
-DlgFlashChkPlay : "تشغيل تلقائي",
-DlgFlashChkLoop : "تكرار",
-DlgFlashChkMenu : "تمكين قائمة فيلم الفلاش",
-DlgFlashScale : "الحجم",
-DlgFlashScaleAll : "إظهار الكل",
-DlgFlashScaleNoBorder : "بلا حدود",
-DlgFlashScaleFit : "ضبط تام",
-
-// Link Dialog
-DlgLnkWindowTitle : "إرتباط تشعبي",
-DlgLnkInfoTab : "معلومات الرابط",
-DlgLnkTargetTab : "الهدف",
-
-DlgLnkType : "نوع الربط",
-DlgLnkTypeURL : "العنوان",
-DlgLnkTypeAnchor : "مكان في هذا المستند",
-DlgLnkTypeEMail : "بريد إلكتروني",
-DlgLnkProto : "البروتوكول",
-DlgLnkProtoOther : "<أخرى>",
-DlgLnkURL : "الموقع",
-DlgLnkAnchorSel : "اختر علامة مرجعية",
-DlgLnkAnchorByName : "حسب اسم العلامة",
-DlgLnkAnchorById : "حسب تعريف العنصر",
-DlgLnkNoAnchors : "(لا يوجد علامات مرجعية في هذا المستند)",
-DlgLnkEMail : "عنوان بريد إلكتروني",
-DlgLnkEMailSubject : "موضوع الرسالة",
-DlgLnkEMailBody : "محتوى الرسالة",
-DlgLnkUpload : "رفع",
-DlgLnkBtnUpload : "أرسلها للخادم",
-
-DlgLnkTarget : "الهدف",
-DlgLnkTargetFrame : "<إطار>",
-DlgLnkTargetPopup : "<نافذة منبثقة>",
-DlgLnkTargetBlank : "إطار جديد (_blank)",
-DlgLnkTargetParent : "الإطار الأصل (_parent)",
-DlgLnkTargetSelf : "نفس الإطار (_self)",
-DlgLnkTargetTop : "صفحة كاملة (_top)",
-DlgLnkTargetFrameName : "اسم الإطار الهدف",
-DlgLnkPopWinName : "تسمية النافذة المنبثقة",
-DlgLnkPopWinFeat : "خصائص النافذة المنبثقة",
-DlgLnkPopResize : "قابلة للتحجيم",
-DlgLnkPopLocation : "شريط العنوان",
-DlgLnkPopMenu : "القوائم الرئيسية",
-DlgLnkPopScroll : "أشرطة التمرير",
-DlgLnkPopStatus : "شريط الحالة السفلي",
-DlgLnkPopToolbar : "شريط الأدوات",
-DlgLnkPopFullScrn : "ملئ الشاشة (IE)",
-DlgLnkPopDependent : "تابع (Netscape)",
-DlgLnkPopWidth : "العرض",
-DlgLnkPopHeight : "الإرتفاع",
-DlgLnkPopLeft : "التمركز لليسار",
-DlgLnkPopTop : "التمركز للأعلى",
-
-DlnLnkMsgNoUrl : "فضلاً أدخل عنوان الموقع الذي يشير إليه الرابط",
-DlnLnkMsgNoEMail : "فضلاً أدخل عنوان البريد الإلكتروني",
-DlnLnkMsgNoAnchor : "فضلاً حدد العلامة المرجعية المرغوبة",
-DlnLnkMsgInvPopName : "اسم النافذة المنبثقة يجب أن يبدأ بحرف أبجدي دون مسافات",
-
-// Color Dialog
-DlgColorTitle : "اختر لوناً",
-DlgColorBtnClear : "مسح",
-DlgColorHighlight : "تحديد",
-DlgColorSelected : "إختيار",
-
-// Smiley Dialog
-DlgSmileyTitle : "إدراج إبتسامات ",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "إدراج رمز",
-
-// Table Dialog
-DlgTableTitle : "إدراج جدول",
-DlgTableRows : "صفوف",
-DlgTableColumns : "أعمدة",
-DlgTableBorder : "سمك الحدود",
-DlgTableAlign : "المحاذاة",
-DlgTableAlignNotSet : "<بدون تحديد>",
-DlgTableAlignLeft : "يسار",
-DlgTableAlignCenter : "وسط",
-DlgTableAlignRight : "يمين",
-DlgTableWidth : "العرض",
-DlgTableWidthPx : "بكسل",
-DlgTableWidthPc : "بالمئة",
-DlgTableHeight : "الإرتفاع",
-DlgTableCellSpace : "تباعد الخلايا",
-DlgTableCellPad : "المسافة البادئة",
-DlgTableCaption : "الوصف",
-DlgTableSummary : "الخلاصة",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "خصائص الخلية",
-DlgCellWidth : "العرض",
-DlgCellWidthPx : "بكسل",
-DlgCellWidthPc : "بالمئة",
-DlgCellHeight : "الإرتفاع",
-DlgCellWordWrap : "التفاف النص",
-DlgCellWordWrapNotSet : "<بدون تحديد>",
-DlgCellWordWrapYes : "نعم",
-DlgCellWordWrapNo : "لا",
-DlgCellHorAlign : "المحاذاة الأفقية",
-DlgCellHorAlignNotSet : "<بدون تحديد>",
-DlgCellHorAlignLeft : "يسار",
-DlgCellHorAlignCenter : "وسط",
-DlgCellHorAlignRight: "يمين",
-DlgCellVerAlign : "المحاذاة العمودية",
-DlgCellVerAlignNotSet : "<بدون تحديد>",
-DlgCellVerAlignTop : "أعلى",
-DlgCellVerAlignMiddle : "وسط",
-DlgCellVerAlignBottom : "أسفل",
-DlgCellVerAlignBaseline : "على السطر",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "إمتداد الصفوف",
-DlgCellCollSpan : "إمتداد الأعمدة",
-DlgCellBackColor : "لون الخلفية",
-DlgCellBorderColor : "لون الحدود",
-DlgCellBtnSelect : "حدّد...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "بحث واستبدال",
-
-// Find Dialog
-DlgFindTitle : "بحث",
-DlgFindFindBtn : "ابحث",
-DlgFindNotFoundMsg : "لم يتم العثور على النص المحدد.",
-
-// Replace Dialog
-DlgReplaceTitle : "إستبدال",
-DlgReplaceFindLbl : "البحث عن:",
-DlgReplaceReplaceLbl : "إستبدال بـ:",
-DlgReplaceCaseChk : "مطابقة حالة الأحرف",
-DlgReplaceReplaceBtn : "إستبدال",
-DlgReplaceReplAllBtn : "إستبدال الكل",
-DlgReplaceWordChk : "الكلمة بالكامل فقط",
-
-// Paste Operations / Dialog
-PasteErrorCut : "الإعدادات الأمنية للمتصفح الذي تستخدمه تمنع القص التلقائي. فضلاً إستخدم لوحة المفاتيح لفعل ذلك (Ctrl+X).",
-PasteErrorCopy : "الإعدادات الأمنية للمتصفح الذي تستخدمه تمنع النسخ التلقائي. فضلاً إستخدم لوحة المفاتيح لفعل ذلك (Ctrl+C).",
-
-PasteAsText : "لصق كنص بسيط",
-PasteFromWord : "لصق من وورد",
-
-DlgPasteMsg2 : "الصق داخل الصندوق بإستخدام زرّي (Ctrl+V ) في لوحة المفاتيح، ثم اضغط زر موافق .",
-DlgPasteSec : "نظراً لإعدادات الأمان الخاصة بمتصفحك، لن يتمكن هذا المحرر من الوصول لمحتوى حافظتك، لذا وجب عليك لصق المحتوى مرة أخرى في هذه النافذة.",
-DlgPasteIgnoreFont : "تجاهل تعريفات أسماء الخطوط",
-DlgPasteRemoveStyles : "إزالة تعريفات الأنماط",
-
-// Color Picker
-ColorAutomatic : "تلقائي",
-ColorMoreColors : "ألوان إضافية...",
-
-// Document Properties
-DocProps : "خصائص الصفحة",
-
-// Anchor Dialog
-DlgAnchorTitle : "خصائص إشارة مرجعية",
-DlgAnchorName : "اسم الإشارة المرجعية",
-DlgAnchorErrorName : "الرجاء كتابة اسم الإشارة المرجعية",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "ليست في القاموس",
-DlgSpellChangeTo : "التغيير إلى",
-DlgSpellBtnIgnore : "تجاهل",
-DlgSpellBtnIgnoreAll : "تجاهل الكل",
-DlgSpellBtnReplace : "تغيير",
-DlgSpellBtnReplaceAll : "تغيير الكل",
-DlgSpellBtnUndo : "تراجع",
-DlgSpellNoSuggestions : "- لا توجد إقتراحات -",
-DlgSpellProgress : "جاري التدقيق إملائياً",
-DlgSpellNoMispell : "تم إكمال التدقيق الإملائي: لم يتم العثور على أي أخطاء إملائية",
-DlgSpellNoChanges : "تم إكمال التدقيق الإملائي: لم يتم تغيير أي كلمة",
-DlgSpellOneChange : "تم إكمال التدقيق الإملائي: تم تغيير كلمة واحدة فقط",
-DlgSpellManyChanges : "تم إكمال التدقيق الإملائي: تم تغيير %1 كلمات\كلمة",
-
-IeSpellDownload : "المدقق الإملائي (الإنجليزي) غير مثبّت. هل تود تحميله الآن؟",
-
-// Button Dialog
-DlgButtonText : "القيمة/التسمية",
-DlgButtonType : "نوع الزر",
-DlgButtonTypeBtn : "زر",
-DlgButtonTypeSbm : "إرسال",
-DlgButtonTypeRst : "إعادة تعيين",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "الاسم",
-DlgCheckboxValue : "القيمة",
-DlgCheckboxSelected : "محدد",
-
-// Form Dialog
-DlgFormName : "الاسم",
-DlgFormAction : "اسم الملف",
-DlgFormMethod : "الأسلوب",
-
-// Select Field Dialog
-DlgSelectName : "الاسم",
-DlgSelectValue : "القيمة",
-DlgSelectSize : "الحجم",
-DlgSelectLines : "الأسطر",
-DlgSelectChkMulti : "السماح بتحديدات متعددة",
-DlgSelectOpAvail : "الخيارات المتاحة",
-DlgSelectOpText : "النص",
-DlgSelectOpValue : "القيمة",
-DlgSelectBtnAdd : "إضافة",
-DlgSelectBtnModify : "تعديل",
-DlgSelectBtnUp : "تحريك لأعلى",
-DlgSelectBtnDown : "تحريك لأسفل",
-DlgSelectBtnSetValue : "إجعلها محددة",
-DlgSelectBtnDelete : "إزالة",
-
-// Textarea Dialog
-DlgTextareaName : "الاسم",
-DlgTextareaCols : "الأعمدة",
-DlgTextareaRows : "الصفوف",
-
-// Text Field Dialog
-DlgTextName : "الاسم",
-DlgTextValue : "القيمة",
-DlgTextCharWidth : "العرض بالأحرف",
-DlgTextMaxChars : "عدد الحروف الأقصى",
-DlgTextType : "نوع المحتوى",
-DlgTextTypeText : "نص",
-DlgTextTypePass : "كلمة مرور",
-
-// Hidden Field Dialog
-DlgHiddenName : "الاسم",
-DlgHiddenValue : "القيمة",
-
-// Bulleted List Dialog
-BulletedListProp : "خصائص التعداد النقطي",
-NumberedListProp : "خصائص التعداد الرقمي",
-DlgLstStart : "البدء عند",
-DlgLstType : "النوع",
-DlgLstTypeCircle : "دائرة",
-DlgLstTypeDisc : "قرص",
-DlgLstTypeSquare : "مربع",
-DlgLstTypeNumbers : "أرقام (1، 2، 3)َ",
-DlgLstTypeLCase : "حروف صغيرة (a, b, c)َ",
-DlgLstTypeUCase : "حروف كبيرة (A, B, C)َ",
-DlgLstTypeSRoman : "ترقيم روماني صغير (i, ii, iii)َ",
-DlgLstTypeLRoman : "ترقيم روماني كبير (I, II, III)َ",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "عام",
-DlgDocBackTab : "الخلفية",
-DlgDocColorsTab : "الألوان والهوامش",
-DlgDocMetaTab : "المعرّفات الرأسية",
-
-DlgDocPageTitle : "عنوان الصفحة",
-DlgDocLangDir : "إتجاه اللغة",
-DlgDocLangDirLTR : "اليسار لليمين (LTR)",
-DlgDocLangDirRTL : "اليمين لليسار (RTL)",
-DlgDocLangCode : "رمز اللغة",
-DlgDocCharSet : "ترميز الحروف",
-DlgDocCharSetCE : "أوروبا الوسطى",
-DlgDocCharSetCT : "الصينية التقليدية (Big5)",
-DlgDocCharSetCR : "السيريلية",
-DlgDocCharSetGR : "اليونانية",
-DlgDocCharSetJP : "اليابانية",
-DlgDocCharSetKR : "الكورية",
-DlgDocCharSetTR : "التركية",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "أوروبا الغربية",
-DlgDocCharSetOther : "ترميز آخر",
-
-DlgDocDocType : "ترويسة نوع الصفحة",
-DlgDocDocTypeOther : "ترويسة نوع صفحة أخرى",
-DlgDocIncXHTML : "تضمين إعلانات لغة XHTMLَ",
-DlgDocBgColor : "لون الخلفية",
-DlgDocBgImage : "رابط الصورة الخلفية",
-DlgDocBgNoScroll : "جعلها علامة مائية",
-DlgDocCText : "النص",
-DlgDocCLink : "الروابط",
-DlgDocCVisited : "المزارة",
-DlgDocCActive : "النشطة",
-DlgDocMargins : "هوامش الصفحة",
-DlgDocMaTop : "علوي",
-DlgDocMaLeft : "أيسر",
-DlgDocMaRight : "أيمن",
-DlgDocMaBottom : "سفلي",
-DlgDocMeIndex : "الكلمات الأساسية (مفصولة بفواصل)َ",
-DlgDocMeDescr : "وصف الصفحة",
-DlgDocMeAuthor : "الكاتب",
-DlgDocMeCopy : "المالك",
-DlgDocPreview : "معاينة",
-
-// Templates Dialog
-Templates : "القوالب",
-DlgTemplatesTitle : "قوالب المحتوى",
-DlgTemplatesSelMsg : "اختر القالب الذي تود وضعه في المحرر (سيتم فقدان المحتوى الحالي):",
-DlgTemplatesLoading : "جاري تحميل قائمة القوالب، الرجاء الإنتظار...",
-DlgTemplatesNoTpl : "(لم يتم تعريف أي قالب)",
-DlgTemplatesReplace : "استبدال المحتوى",
-
-// About Dialog
-DlgAboutAboutTab : "نبذة",
-DlgAboutBrowserInfoTab : "معلومات متصفحك",
-DlgAboutLicenseTab : "الترخيص",
-DlgAboutVersion : "الإصدار",
-DlgAboutInfo : "لمزيد من المعلومات تفضل بزيارة",
-
-// Div Dialog
-DlgDivGeneralTab : "عام",
-DlgDivAdvancedTab : "متقدم",
-DlgDivStyle : "المظهر",
-DlgDivInlineStyle : "المظهر المضمن"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/bg.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/bg.js
deleted file mode 100755
index 923e31f..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/bg.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Bulgarian language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Скрий панела с инструментите",
-ToolbarExpand : "Покажи панела с инструментите",
-
-// Toolbar Items and Context Menu
-Save : "Запази",
-NewPage : "Нова страница",
-Preview : "Предварителен изглед",
-Cut : "Изрежи",
-Copy : "Запамети",
-Paste : "Вмъкни",
-PasteText : "Вмъкни само текст",
-PasteWord : "Вмъкни от MS Word",
-Print : "Печат",
-SelectAll : "Селектирай всичко",
-RemoveFormat : "Изтрий форматирането",
-InsertLinkLbl : "Връзка",
-InsertLink : "Добави/Редактирай връзка",
-RemoveLink : "Изтрий връзка",
-VisitLink : "Open Link", //MISSING
-Anchor : "Добави/Редактирай котва",
-AnchorDelete : "Remove Anchor", //MISSING
-InsertImageLbl : "Изображение",
-InsertImage : "Добави/Редактирай изображение",
-InsertFlashLbl : "Flash",
-InsertFlash : "Добави/Редактиай Flash обект",
-InsertTableLbl : "Таблица",
-InsertTable : "Добави/Редактирай таблица",
-InsertLineLbl : "Линия",
-InsertLine : "Вмъкни хоризонтална линия",
-InsertSpecialCharLbl: "Специален символ",
-InsertSpecialChar : "Вмъкни специален символ",
-InsertSmileyLbl : "Усмивка",
-InsertSmiley : "Добави усмивка",
-About : "За FCKeditor",
-Bold : "Удебелен",
-Italic : "Курсив",
-Underline : "Подчертан",
-StrikeThrough : "Зачертан",
-Subscript : "Индекс за база",
-Superscript : "Индекс за степен",
-LeftJustify : "Подравняване в ляво",
-CenterJustify : "Подравнявне в средата",
-RightJustify : "Подравняване в дясно",
-BlockJustify : "Двустранно подравняване",
-DecreaseIndent : "Намали отстъпа",
-IncreaseIndent : "Увеличи отстъпа",
-Blockquote : "Blockquote", //MISSING
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "Отмени",
-Redo : "Повтори",
-NumberedListLbl : "Нумериран списък",
-NumberedList : "Добави/Изтрий нумериран списък",
-BulletedListLbl : "Ненумериран списък",
-BulletedList : "Добави/Изтрий ненумериран списък",
-ShowTableBorders : "Покажи рамките на таблицата",
-ShowDetails : "Покажи подробности",
-Style : "Стил",
-FontFormat : "Формат",
-Font : "Шрифт",
-FontSize : "Размер",
-TextColor : "Цвят на текста",
-BGColor : "Цвят на фона",
-Source : "Код",
-Find : "Търси",
-Replace : "Замести",
-SpellCheck : "Провери правописа",
-UniversalKeyboard : "Универсална клавиатура",
-PageBreakLbl : "Нов ред",
-PageBreak : "Вмъкни нов ред",
-
-Form : "Формуляр",
-Checkbox : "Поле за отметка",
-RadioButton : "Поле за опция",
-TextField : "Текстово поле",
-Textarea : "Текстова област",
-HiddenField : "Скрито поле",
-Button : "Бутон",
-SelectionField : "Падащо меню с опции",
-ImageButton : "Бутон-изображение",
-
-FitWindow : "Maximize the editor size", //MISSING
-ShowBlocks : "Show Blocks", //MISSING
-
-// Context Menu
-EditLink : "Редактирай връзка",
-CellCM : "Cell", //MISSING
-RowCM : "Row", //MISSING
-ColumnCM : "Column", //MISSING
-InsertRowAfter : "Insert Row After", //MISSING
-InsertRowBefore : "Insert Row Before", //MISSING
-DeleteRows : "Изтрий редовете",
-InsertColumnAfter : "Insert Column After", //MISSING
-InsertColumnBefore : "Insert Column Before", //MISSING
-DeleteColumns : "Изтрий колоните",
-InsertCellAfter : "Insert Cell After", //MISSING
-InsertCellBefore : "Insert Cell Before", //MISSING
-DeleteCells : "Изтрий клетките",
-MergeCells : "Обедини клетките",
-MergeRight : "Merge Right", //MISSING
-MergeDown : "Merge Down", //MISSING
-HorizontalSplitCell : "Split Cell Horizontally", //MISSING
-VerticalSplitCell : "Split Cell Vertically", //MISSING
-TableDelete : "Изтрий таблицата",
-CellProperties : "Параметри на клетката",
-TableProperties : "Параметри на таблицата",
-ImageProperties : "Параметри на изображението",
-FlashProperties : "Параметри на Flash обекта",
-
-AnchorProp : "Параметри на котвата",
-ButtonProp : "Параметри на бутона",
-CheckboxProp : "Параметри на полето за отметка",
-HiddenFieldProp : "Параметри на скритото поле",
-RadioButtonProp : "Параметри на полето за опция",
-ImageButtonProp : "Параметри на бутона-изображение",
-TextFieldProp : "Параметри на текстовото-поле",
-SelectionFieldProp : "Параметри на падащото меню с опции",
-TextareaProp : "Параметри на текстовата област",
-FormProp : "Параметри на формуляра",
-
-FontFormats : "Нормален;Форматиран;Адрес;Заглавие 1;Заглавие 2;Заглавие 3;Заглавие 4;Заглавие 5;Заглавие 6;Параграф (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Обработка на XHTML. Моля изчакайте...",
-Done : "Готово",
-PasteWordConfirm : "Текстът, който искате да вмъкнете е копиран от MS Word. Желаете ли да бъде изчистен преди вмъкването?",
-NotCompatiblePaste : "Тази операция изисква MS Internet Explorer версия 5.5 или по-висока. Желаете ли да вмъкнете запаметеното без изчистване?",
-UnknownToolbarItem : "Непознат инструмент \"%1\"",
-UnknownCommand : "Непозната команда \"%1\"",
-NotImplemented : "Командата не е имплементирана",
-UnknownToolbarSet : "Панелът \"%1\" не съществува",
-NoActiveX : "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.", //MISSING
-DialogBlocked : "It was not possible to open the dialog window. Make sure all popup blockers are disabled.", //MISSING
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "ОК",
-DlgBtnCancel : "Отказ",
-DlgBtnClose : "Затвори",
-DlgBtnBrowseServer : "Разгледай сървъра",
-DlgAdvancedTag : "Подробности...",
-DlgOpOther : "<Друго>",
-DlgInfoTab : "Информация",
-DlgAlertUrl : "Моля, въведете пълния път (URL)",
-
-// General Dialogs Labels
-DlgGenNotSet : "<не е настроен>",
-DlgGenId : "Идентификатор",
-DlgGenLangDir : "посока на речта",
-DlgGenLangDirLtr : "От ляво на дясно",
-DlgGenLangDirRtl : "От дясно на ляво",
-DlgGenLangCode : "Код на езика",
-DlgGenAccessKey : "Бърз клавиш",
-DlgGenName : "Име",
-DlgGenTabIndex : "Ред на достъп",
-DlgGenLongDescr : "Описание на връзката",
-DlgGenClass : "Клас от стиловите таблици",
-DlgGenTitle : "Препоръчително заглавие",
-DlgGenContType : "Препоръчителен тип на съдържанието",
-DlgGenLinkCharset : "Тип на свързания ресурс",
-DlgGenStyle : "Стил",
-
-// Image Dialog
-DlgImgTitle : "Параметри на изображението",
-DlgImgInfoTab : "Информация за изображението",
-DlgImgBtnUpload : "Прати към сървъра",
-DlgImgURL : "Пълен път (URL)",
-DlgImgUpload : "Качи",
-DlgImgAlt : "Алтернативен текст",
-DlgImgWidth : "Ширина",
-DlgImgHeight : "Височина",
-DlgImgLockRatio : "Запази пропорцията",
-DlgBtnResetSize : "Възстанови размера",
-DlgImgBorder : "Рамка",
-DlgImgHSpace : "Хоризонтален отстъп",
-DlgImgVSpace : "Вертикален отстъп",
-DlgImgAlign : "Подравняване",
-DlgImgAlignLeft : "Ляво",
-DlgImgAlignAbsBottom: "Най-долу",
-DlgImgAlignAbsMiddle: "Точно по средата",
-DlgImgAlignBaseline : "По базовата линия",
-DlgImgAlignBottom : "Долу",
-DlgImgAlignMiddle : "По средата",
-DlgImgAlignRight : "Дясно",
-DlgImgAlignTextTop : "Върху текста",
-DlgImgAlignTop : "Отгоре",
-DlgImgPreview : "Изглед",
-DlgImgAlertUrl : "Моля, въведете пълния път до изображението",
-DlgImgLinkTab : "Връзка",
-
-// Flash Dialog
-DlgFlashTitle : "Параметри на Flash обекта",
-DlgFlashChkPlay : "Автоматично стартиране",
-DlgFlashChkLoop : "Ново стартиране след завършването",
-DlgFlashChkMenu : "Разрешено Flash меню",
-DlgFlashScale : "Оразмеряване",
-DlgFlashScaleAll : "Покажи целия обект",
-DlgFlashScaleNoBorder : "Без рамка",
-DlgFlashScaleFit : "Според мястото",
-
-// Link Dialog
-DlgLnkWindowTitle : "Връзка",
-DlgLnkInfoTab : "Информация за връзката",
-DlgLnkTargetTab : "Цел",
-
-DlgLnkType : "Вид на връзката",
-DlgLnkTypeURL : "Пълен път (URL)",
-DlgLnkTypeAnchor : "Котва в текущата страница",
-DlgLnkTypeEMail : "Е-поща",
-DlgLnkProto : "Протокол",
-DlgLnkProtoOther : "<друго>",
-DlgLnkURL : "Пълен път (URL)",
-DlgLnkAnchorSel : "Изберете котва",
-DlgLnkAnchorByName : "По име на котвата",
-DlgLnkAnchorById : "По идентификатор на елемент",
-DlgLnkNoAnchors : "(Няма котви в текущия документ)",
-DlgLnkEMail : "Адрес за е-поща",
-DlgLnkEMailSubject : "Тема на писмото",
-DlgLnkEMailBody : "Текст на писмото",
-DlgLnkUpload : "Качи",
-DlgLnkBtnUpload : "Прати на сървъра",
-
-DlgLnkTarget : "Цел",
-DlgLnkTargetFrame : "<рамка>",
-DlgLnkTargetPopup : "<дъщерен прозорец>",
-DlgLnkTargetBlank : "Нов прозорец (_blank)",
-DlgLnkTargetParent : "Родителски прозорец (_parent)",
-DlgLnkTargetSelf : "Активния прозорец (_self)",
-DlgLnkTargetTop : "Целия прозорец (_top)",
-DlgLnkTargetFrameName : "Име на целевия прозорец",
-DlgLnkPopWinName : "Име на дъщерния прозорец",
-DlgLnkPopWinFeat : "Параметри на дъщерния прозорец",
-DlgLnkPopResize : "С променливи размери",
-DlgLnkPopLocation : "Поле за адрес",
-DlgLnkPopMenu : "Меню",
-DlgLnkPopScroll : "Плъзгач",
-DlgLnkPopStatus : "Поле за статус",
-DlgLnkPopToolbar : "Панел с бутони",
-DlgLnkPopFullScrn : "Голям екран (MS IE)",
-DlgLnkPopDependent : "Зависим (Netscape)",
-DlgLnkPopWidth : "Ширина",
-DlgLnkPopHeight : "Височина",
-DlgLnkPopLeft : "Координати - X",
-DlgLnkPopTop : "Координати - Y",
-
-DlnLnkMsgNoUrl : "Моля, напишете пълния път (URL)",
-DlnLnkMsgNoEMail : "Моля, напишете адреса за е-поща",
-DlnLnkMsgNoAnchor : "Моля, изберете котва",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces", //MISSING
-
-// Color Dialog
-DlgColorTitle : "Изберете цвят",
-DlgColorBtnClear : "Изчисти",
-DlgColorHighlight : "Текущ",
-DlgColorSelected : "Избран",
-
-// Smiley Dialog
-DlgSmileyTitle : "Добави усмивка",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Изберете специален символ",
-
-// Table Dialog
-DlgTableTitle : "Параметри на таблицата",
-DlgTableRows : "Редове",
-DlgTableColumns : "Колони",
-DlgTableBorder : "Размер на рамката",
-DlgTableAlign : "Подравняване",
-DlgTableAlignNotSet : "<Не е избрано>",
-DlgTableAlignLeft : "Ляво",
-DlgTableAlignCenter : "Център",
-DlgTableAlignRight : "Дясно",
-DlgTableWidth : "Ширина",
-DlgTableWidthPx : "пиксели",
-DlgTableWidthPc : "проценти",
-DlgTableHeight : "Височина",
-DlgTableCellSpace : "Разстояние между клетките",
-DlgTableCellPad : "Отстъп на съдържанието в клетките",
-DlgTableCaption : "Заглавие",
-DlgTableSummary : "Резюме",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Параметри на клетката",
-DlgCellWidth : "Ширина",
-DlgCellWidthPx : "пиксели",
-DlgCellWidthPc : "проценти",
-DlgCellHeight : "Височина",
-DlgCellWordWrap : "пренасяне на нов ред",
-DlgCellWordWrapNotSet : "<Не е настроено>",
-DlgCellWordWrapYes : "Да",
-DlgCellWordWrapNo : "не",
-DlgCellHorAlign : "Хоризонтално подравняване",
-DlgCellHorAlignNotSet : "<Не е настроено>",
-DlgCellHorAlignLeft : "Ляво",
-DlgCellHorAlignCenter : "Център",
-DlgCellHorAlignRight: "Дясно",
-DlgCellVerAlign : "Вертикално подравняване",
-DlgCellVerAlignNotSet : "<Не е настроено>",
-DlgCellVerAlignTop : "Горе",
-DlgCellVerAlignMiddle : "По средата",
-DlgCellVerAlignBottom : "Долу",
-DlgCellVerAlignBaseline : "По базовата линия",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "повече от един ред",
-DlgCellCollSpan : "повече от една колона",
-DlgCellBackColor : "фонов цвят",
-DlgCellBorderColor : "цвят на рамката",
-DlgCellBtnSelect : "Изберете...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace", //MISSING
-
-// Find Dialog
-DlgFindTitle : "Търси",
-DlgFindFindBtn : "Търси",
-DlgFindNotFoundMsg : "Указания текст не беше намерен.",
-
-// Replace Dialog
-DlgReplaceTitle : "Замести",
-DlgReplaceFindLbl : "Търси:",
-DlgReplaceReplaceLbl : "Замести с:",
-DlgReplaceCaseChk : "Със същия регистър",
-DlgReplaceReplaceBtn : "Замести",
-DlgReplaceReplAllBtn : "Замести всички",
-DlgReplaceWordChk : "Търси същата дума",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Настройките за сигурност на вашия бразуър не разрешават на редактора да изпълни изрязването. За целта използвайте клавиатурата (Ctrl+X).",
-PasteErrorCopy : "Настройките за сигурност на вашия бразуър не разрешават на редактора да изпълни запаметяването. За целта използвайте клавиатурата (Ctrl+C).",
-
-PasteAsText : "Вмъкни като чист текст",
-PasteFromWord : "Вмъкни от MS Word",
-
-DlgPasteMsg2 : "Вмъкнете тук съдъжанието с клавиатуарата (Ctrl+V ) и натиснете OK .",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.", //MISSING
-DlgPasteIgnoreFont : "Игнорирай шрифтовите дефиниции",
-DlgPasteRemoveStyles : "Изтрий стиловите дефиниции",
-
-// Color Picker
-ColorAutomatic : "По подразбиране",
-ColorMoreColors : "Други цветове...",
-
-// Document Properties
-DocProps : "Параметри на документа",
-
-// Anchor Dialog
-DlgAnchorTitle : "Параметри на котвата",
-DlgAnchorName : "Име на котвата",
-DlgAnchorErrorName : "Моля, въведете име на котвата",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Липсва в речника",
-DlgSpellChangeTo : "Промени на",
-DlgSpellBtnIgnore : "Игнорирай",
-DlgSpellBtnIgnoreAll : "Игнорирай всички",
-DlgSpellBtnReplace : "Замести",
-DlgSpellBtnReplaceAll : "Замести всички",
-DlgSpellBtnUndo : "Отмени",
-DlgSpellNoSuggestions : "- Няма предложения -",
-DlgSpellProgress : "Извършване на проверката за правопис...",
-DlgSpellNoMispell : "Проверката за правопис завършена: не са открити правописни грешки",
-DlgSpellNoChanges : "Проверката за правопис завършена: няма променени думи",
-DlgSpellOneChange : "Проверката за правопис завършена: една дума е променена",
-DlgSpellManyChanges : "Проверката за правопис завършена: %1 думи са променени",
-
-IeSpellDownload : "Инструментът за проверка на правопис не е инсталиран. Желаете ли да го инсталирате ?",
-
-// Button Dialog
-DlgButtonText : "Текст (Стойност)",
-DlgButtonType : "Тип",
-DlgButtonTypeBtn : "Button", //MISSING
-DlgButtonTypeSbm : "Submit", //MISSING
-DlgButtonTypeRst : "Reset", //MISSING
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Име",
-DlgCheckboxValue : "Стойност",
-DlgCheckboxSelected : "Отметнато",
-
-// Form Dialog
-DlgFormName : "Име",
-DlgFormAction : "Действие",
-DlgFormMethod : "Метод",
-
-// Select Field Dialog
-DlgSelectName : "Име",
-DlgSelectValue : "Стойност",
-DlgSelectSize : "Размер",
-DlgSelectLines : "линии",
-DlgSelectChkMulti : "Разрешено множествено селектиране",
-DlgSelectOpAvail : "Възможни опции",
-DlgSelectOpText : "Текст",
-DlgSelectOpValue : "Стойност",
-DlgSelectBtnAdd : "Добави",
-DlgSelectBtnModify : "Промени",
-DlgSelectBtnUp : "Нагоре",
-DlgSelectBtnDown : "Надолу",
-DlgSelectBtnSetValue : "Настрой като избрана стойност",
-DlgSelectBtnDelete : "Изтрий",
-
-// Textarea Dialog
-DlgTextareaName : "Име",
-DlgTextareaCols : "Колони",
-DlgTextareaRows : "Редове",
-
-// Text Field Dialog
-DlgTextName : "Име",
-DlgTextValue : "Стойност",
-DlgTextCharWidth : "Ширина на символите",
-DlgTextMaxChars : "Максимум символи",
-DlgTextType : "Тип",
-DlgTextTypeText : "Текст",
-DlgTextTypePass : "Парола",
-
-// Hidden Field Dialog
-DlgHiddenName : "Име",
-DlgHiddenValue : "Стойност",
-
-// Bulleted List Dialog
-BulletedListProp : "Параметри на ненумерирания списък",
-NumberedListProp : "Параметри на нумерирания списък",
-DlgLstStart : "Start", //MISSING
-DlgLstType : "Тип",
-DlgLstTypeCircle : "Окръжност",
-DlgLstTypeDisc : "Кръг",
-DlgLstTypeSquare : "Квадрат",
-DlgLstTypeNumbers : "Числа (1, 2, 3)",
-DlgLstTypeLCase : "Малки букви (a, b, c)",
-DlgLstTypeUCase : "Големи букви (A, B, C)",
-DlgLstTypeSRoman : "Малки римски числа (i, ii, iii)",
-DlgLstTypeLRoman : "Големи римски числа (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Общи",
-DlgDocBackTab : "Фон",
-DlgDocColorsTab : "Цветове и отстъпи",
-DlgDocMetaTab : "Мета данни",
-
-DlgDocPageTitle : "Заглавие на страницата",
-DlgDocLangDir : "Посока на речта",
-DlgDocLangDirLTR : "От ляво на дясно",
-DlgDocLangDirRTL : "От дясно на ляво",
-DlgDocLangCode : "Код на езика",
-DlgDocCharSet : "Кодиране на символите",
-DlgDocCharSetCE : "Central European", //MISSING
-DlgDocCharSetCT : "Chinese Traditional (Big5)", //MISSING
-DlgDocCharSetCR : "Cyrillic", //MISSING
-DlgDocCharSetGR : "Greek", //MISSING
-DlgDocCharSetJP : "Japanese", //MISSING
-DlgDocCharSetKR : "Korean", //MISSING
-DlgDocCharSetTR : "Turkish", //MISSING
-DlgDocCharSetUN : "Unicode (UTF-8)", //MISSING
-DlgDocCharSetWE : "Western European", //MISSING
-DlgDocCharSetOther : "Друго кодиране на символите",
-
-DlgDocDocType : "Тип на документа",
-DlgDocDocTypeOther : "Друг тип на документа",
-DlgDocIncXHTML : "Включи XHTML декларация",
-DlgDocBgColor : "Цвят на фона",
-DlgDocBgImage : "Пълен път до фоновото изображение",
-DlgDocBgNoScroll : "Не-повтарящо се фоново изображение",
-DlgDocCText : "Текст",
-DlgDocCLink : "Връзка",
-DlgDocCVisited : "Посетена връзка",
-DlgDocCActive : "Активна връзка",
-DlgDocMargins : "Отстъпи на страницата",
-DlgDocMaTop : "Горе",
-DlgDocMaLeft : "Ляво",
-DlgDocMaRight : "Дясно",
-DlgDocMaBottom : "Долу",
-DlgDocMeIndex : "Ключови думи за документа (разделени със запетаи)",
-DlgDocMeDescr : "Описание на документа",
-DlgDocMeAuthor : "Автор",
-DlgDocMeCopy : "Авторски права",
-DlgDocPreview : "Изглед",
-
-// Templates Dialog
-Templates : "Шаблони",
-DlgTemplatesTitle : "Шаблони",
-DlgTemplatesSelMsg : "Изберете шаблон (текущото съдържание на редактора ще бъде загубено):",
-DlgTemplatesLoading : "Зареждане на списъка с шаблоните. Моля изчакайте...",
-DlgTemplatesNoTpl : "(Няма дефинирани шаблони)",
-DlgTemplatesReplace : "Replace actual contents", //MISSING
-
-// About Dialog
-DlgAboutAboutTab : "За",
-DlgAboutBrowserInfoTab : "Информация за браузъра",
-DlgAboutLicenseTab : "License", //MISSING
-DlgAboutVersion : "версия",
-DlgAboutInfo : "За повече информация посетете",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/bn.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/bn.js
deleted file mode 100755
index 6382546..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/bn.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Bengali/Bangla language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "টূলবার গুটিয়ে দাও",
-ToolbarExpand : "টূলবার ছড়িয়ে দাও",
-
-// Toolbar Items and Context Menu
-Save : "সংরক্ষন কর",
-NewPage : "নতুন পেজ",
-Preview : "প্রিভিউ",
-Cut : "কাট",
-Copy : "কপি",
-Paste : "পেস্ট",
-PasteText : "পেস্ট (সাদা টেক্সট)",
-PasteWord : "পেস্ট (শব্দ)",
-Print : "প্রিন্ট",
-SelectAll : "সব সিলেক্ট কর",
-RemoveFormat : "ফরমেট সরাও",
-InsertLinkLbl : "লিংকের যুক্ত করার লেবেল",
-InsertLink : "লিংক যুক্ত কর",
-RemoveLink : "লিংক সরাও",
-VisitLink : "Open Link", //MISSING
-Anchor : "নোঙ্গর",
-AnchorDelete : "Remove Anchor", //MISSING
-InsertImageLbl : "ছবির লেবেল যুক্ত কর",
-InsertImage : "ছবি যুক্ত কর",
-InsertFlashLbl : "ফ্লাশ লেবেল যুক্ত কর",
-InsertFlash : "ফ্লাশ যুক্ত কর",
-InsertTableLbl : "টেবিলের লেবেল যুক্ত কর",
-InsertTable : "টেবিল যুক্ত কর",
-InsertLineLbl : "রেখা যুক্ত কর",
-InsertLine : "রেখা যুক্ত কর",
-InsertSpecialCharLbl: "বিশেষ অক্ষরের লেবেল যুক্ত কর",
-InsertSpecialChar : "বিশেষ অক্ষর যুক্ত কর",
-InsertSmileyLbl : "স্মাইলী",
-InsertSmiley : "স্মাইলী যুক্ত কর",
-About : "FCKeditor কে বানিয়েছে",
-Bold : "বোল্ড",
-Italic : "ইটালিক",
-Underline : "আন্ডারলাইন",
-StrikeThrough : "স্ট্রাইক থ্রু",
-Subscript : "অধোলেখ",
-Superscript : "অভিলেখ",
-LeftJustify : "বা দিকে ঘেঁষা",
-CenterJustify : "মাঝ বরাবর ঘেষা",
-RightJustify : "ডান দিকে ঘেঁষা",
-BlockJustify : "ব্লক জাস্টিফাই",
-DecreaseIndent : "ইনডেন্ট কমাও",
-IncreaseIndent : "ইনডেন্ট বাড়াও",
-Blockquote : "Blockquote", //MISSING
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "আনডু",
-Redo : "রি-ডু",
-NumberedListLbl : "সাংখ্যিক লিস্টের লেবেল",
-NumberedList : "সাংখ্যিক লিস্ট",
-BulletedListLbl : "বুলেট লিস্ট লেবেল",
-BulletedList : "বুলেটেড লিস্ট",
-ShowTableBorders : "টেবিল বর্ডার",
-ShowDetails : "সবটুকু দেখাও",
-Style : "স্টাইল",
-FontFormat : "ফন্ট ফরমেট",
-Font : "ফন্ট",
-FontSize : "সাইজ",
-TextColor : "টেক্স্ট রং",
-BGColor : "বেকগ্রাউন্ড রং",
-Source : "সোর্স",
-Find : "খোজো",
-Replace : "রিপ্লেস",
-SpellCheck : "বানান চেক",
-UniversalKeyboard : "সার্বজনীন কিবোর্ড",
-PageBreakLbl : "পেজ ব্রেক লেবেল",
-PageBreak : "পেজ ব্রেক",
-
-Form : "ফর্ম",
-Checkbox : "চেক বাক্স",
-RadioButton : "রেডিও বাটন",
-TextField : "টেক্সট ফীল্ড",
-Textarea : "টেক্সট এরিয়া",
-HiddenField : "গুপ্ত ফীল্ড",
-Button : "বাটন",
-SelectionField : "বাছাই ফীল্ড",
-ImageButton : "ছবির বাটন",
-
-FitWindow : "উইন্ডো ফিট কর",
-ShowBlocks : "Show Blocks", //MISSING
-
-// Context Menu
-EditLink : "লিংক সম্পাদন",
-CellCM : "সেল",
-RowCM : "রো",
-ColumnCM : "কলাম",
-InsertRowAfter : "Insert Row After", //MISSING
-InsertRowBefore : "Insert Row Before", //MISSING
-DeleteRows : "রো মুছে দাও",
-InsertColumnAfter : "Insert Column After", //MISSING
-InsertColumnBefore : "Insert Column Before", //MISSING
-DeleteColumns : "কলাম মুছে দাও",
-InsertCellAfter : "Insert Cell After", //MISSING
-InsertCellBefore : "Insert Cell Before", //MISSING
-DeleteCells : "সেল মুছে দাও",
-MergeCells : "সেল জোড়া দাও",
-MergeRight : "Merge Right", //MISSING
-MergeDown : "Merge Down", //MISSING
-HorizontalSplitCell : "Split Cell Horizontally", //MISSING
-VerticalSplitCell : "Split Cell Vertically", //MISSING
-TableDelete : "টেবিল ডিলীট কর",
-CellProperties : "সেলের প্রোপার্টিজ",
-TableProperties : "টেবিল প্রোপার্টি",
-ImageProperties : "ছবি প্রোপার্টি",
-FlashProperties : "ফ্লাশ প্রোপার্টি",
-
-AnchorProp : "নোঙর প্রোপার্টি",
-ButtonProp : "বাটন প্রোপার্টি",
-CheckboxProp : "চেক বক্স প্রোপার্টি",
-HiddenFieldProp : "গুপ্ত ফীল্ড প্রোপার্টি",
-RadioButtonProp : "রেডিও বাটন প্রোপার্টি",
-ImageButtonProp : "ছবি বাটন প্রোপার্টি",
-TextFieldProp : "টেক্সট ফীল্ড প্রোপার্টি",
-SelectionFieldProp : "বাছাই ফীল্ড প্রোপার্টি",
-TextareaProp : "টেক্সট এরিয়া প্রোপার্টি",
-FormProp : "ফর্ম প্রোপার্টি",
-
-FontFormats : "সাধারণ;ফর্মেটেড;ঠিকানা;শীর্ষক ১;শীর্ষক ২;শীর্ষক ৩;শীর্ষক ৪;শীর্ষক ৫;শীর্ষক ৬;শীর্ষক (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "XHTML প্রসেস করা হচ্ছে",
-Done : "শেষ হয়েছে",
-PasteWordConfirm : "যে টেকস্টটি আপনি পেস্ট করতে চাচ্ছেন মনে হচ্ছে সেটি ওয়ার্ড থেকে কপি করা। আপনি কি পেস্ট করার আগে একে পরিষ্কার করতে চান?",
-NotCompatiblePaste : "এই কমান্ডটি শুধুমাত্র ইন্টারনেট এক্সপ্লোরার ৫.০ বা তার পরের ভার্সনে পাওয়া সম্ভব। আপনি কি পরিষ্কার না করেই পেস্ট করতে চান?",
-UnknownToolbarItem : "অজানা টুলবার আইটেম \"%1\"",
-UnknownCommand : "অজানা কমান্ড \"%1\"",
-NotImplemented : "কমান্ড ইমপ্লিমেন্ট করা হয়নি",
-UnknownToolbarSet : "টুলবার সেট \"%1\" এর অস্তিত্ব নেই",
-NoActiveX : "আপনার ব্রাউজারের সুরক্ষা সেটিংস কারনে এডিটরের কিছু ফিচার পাওয়া নাও যেতে পারে। আপনাকে অবশ্যই \"Run ActiveX controls and plug-ins\" এনাবেল করে নিতে হবে। আপনি ভুলভ্রান্তি কিছু কিছু ফিচারের অনুপস্থিতি উপলব্ধি করতে পারেন।",
-BrowseServerBlocked : "রিসোর্স ব্রাউজার খোলা গেল না। নিশ্চিত করুন যে সব পপআপ ব্লকার বন্ধ করা আছে।",
-DialogBlocked : "ডায়ালগ ইউন্ডো খোলা গেল না। নিশ্চিত করুন যে সব পপআপ ব্লকার বন্ধ করা আছে।",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "ওকে",
-DlgBtnCancel : "বাতিল",
-DlgBtnClose : "বন্ধ কর",
-DlgBtnBrowseServer : "ব্রাউজ সার্ভার",
-DlgAdvancedTag : "এডভান্সড",
-DlgOpOther : "<অন্য>",
-DlgInfoTab : "তথ্য",
-DlgAlertUrl : "দয়া করে URL যুক্ত করুন",
-
-// General Dialogs Labels
-DlgGenNotSet : "<সেট নেই>",
-DlgGenId : "আইডি",
-DlgGenLangDir : "ভাষা লেখার দিক",
-DlgGenLangDirLtr : "বাম থেকে ডান (LTR)",
-DlgGenLangDirRtl : "ডান থেকে বাম (RTL)",
-DlgGenLangCode : "ভাষা কোড",
-DlgGenAccessKey : "এক্সেস কী",
-DlgGenName : "নাম",
-DlgGenTabIndex : "ট্যাব ইন্ডেক্স",
-DlgGenLongDescr : "URL এর লম্বা বর্ণনা",
-DlgGenClass : "স্টাইল-শীট ক্লাস",
-DlgGenTitle : "পরামর্শ শীর্ষক",
-DlgGenContType : "পরামর্শ কন্টেন্টের প্রকার",
-DlgGenLinkCharset : "লিংক রিসোর্স ক্যারেক্টর সেট",
-DlgGenStyle : "স্টাইল",
-
-// Image Dialog
-DlgImgTitle : "ছবির প্রোপার্টি",
-DlgImgInfoTab : "ছবির তথ্য",
-DlgImgBtnUpload : "ইহাকে সার্ভারে প্রেরন কর",
-DlgImgURL : "URL",
-DlgImgUpload : "আপলোড",
-DlgImgAlt : "বিকল্প টেক্সট",
-DlgImgWidth : "প্রস্থ",
-DlgImgHeight : "দৈর্ঘ্য",
-DlgImgLockRatio : "অনুপাত লক কর",
-DlgBtnResetSize : "সাইজ পূর্বাবস্থায় ফিরিয়ে দাও",
-DlgImgBorder : "বর্ডার",
-DlgImgHSpace : "হরাইজন্টাল স্পেস",
-DlgImgVSpace : "ভার্টিকেল স্পেস",
-DlgImgAlign : "এলাইন",
-DlgImgAlignLeft : "বামে",
-DlgImgAlignAbsBottom: "Abs নীচে",
-DlgImgAlignAbsMiddle: "Abs উপর",
-DlgImgAlignBaseline : "মূল রেখা",
-DlgImgAlignBottom : "নীচে",
-DlgImgAlignMiddle : "মধ্য",
-DlgImgAlignRight : "ডানে",
-DlgImgAlignTextTop : "টেক্সট উপর",
-DlgImgAlignTop : "উপর",
-DlgImgPreview : "প্রীভিউ",
-DlgImgAlertUrl : "অনুগ্রহক করে ছবির URL টাইপ করুন",
-DlgImgLinkTab : "লিংক",
-
-// Flash Dialog
-DlgFlashTitle : "ফ্ল্যাশ প্রোপার্টি",
-DlgFlashChkPlay : "অটো প্লে",
-DlgFlashChkLoop : "লূপ",
-DlgFlashChkMenu : "ফ্ল্যাশ মেনু এনাবল কর",
-DlgFlashScale : "স্কেল",
-DlgFlashScaleAll : "সব দেখাও",
-DlgFlashScaleNoBorder : "কোনো বর্ডার নেই",
-DlgFlashScaleFit : "নিখুঁত ফিট",
-
-// Link Dialog
-DlgLnkWindowTitle : "লিংক",
-DlgLnkInfoTab : "লিংক তথ্য",
-DlgLnkTargetTab : "টার্গেট",
-
-DlgLnkType : "লিংক প্রকার",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "এই পেজে নোঙর কর",
-DlgLnkTypeEMail : "ইমেইল",
-DlgLnkProto : "প্রোটোকল",
-DlgLnkProtoOther : "<অন্য>",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "নোঙর বাছাই",
-DlgLnkAnchorByName : "নোঙরের নাম দিয়ে",
-DlgLnkAnchorById : "নোঙরের আইডি দিয়ে",
-DlgLnkNoAnchors : "(No anchors available in the document)", //MISSING
-DlgLnkEMail : "ইমেইল ঠিকানা",
-DlgLnkEMailSubject : "মেসেজের বিষয়",
-DlgLnkEMailBody : "মেসেজের দেহ",
-DlgLnkUpload : "আপলোড",
-DlgLnkBtnUpload : "একে সার্ভারে পাঠাও",
-
-DlgLnkTarget : "টার্গেট",
-DlgLnkTargetFrame : "<ফ্রেম>",
-DlgLnkTargetPopup : "<পপআপ উইন্ডো>",
-DlgLnkTargetBlank : "নতুন উইন্ডো (_blank)",
-DlgLnkTargetParent : "মূল উইন্ডো (_parent)",
-DlgLnkTargetSelf : "এই উইন্ডো (_self)",
-DlgLnkTargetTop : "শীর্ষ উইন্ডো (_top)",
-DlgLnkTargetFrameName : "টার্গেট ফ্রেমের নাম",
-DlgLnkPopWinName : "পপআপ উইন্ডোর নাম",
-DlgLnkPopWinFeat : "পপআপ উইন্ডো ফীচার সমূহ",
-DlgLnkPopResize : "রিসাইজ করা সম্ভব",
-DlgLnkPopLocation : "লোকেশন বার",
-DlgLnkPopMenu : "মেন্যু বার",
-DlgLnkPopScroll : "স্ক্রল বার",
-DlgLnkPopStatus : "স্ট্যাটাস বার",
-DlgLnkPopToolbar : "টুল বার",
-DlgLnkPopFullScrn : "পূর্ণ পর্দা জুড়ে (IE)",
-DlgLnkPopDependent : "ডিপেন্ডেন্ট (Netscape)",
-DlgLnkPopWidth : "প্রস্থ",
-DlgLnkPopHeight : "দৈর্ঘ্য",
-DlgLnkPopLeft : "বামের পজিশন",
-DlgLnkPopTop : "ডানের পজিশন",
-
-DlnLnkMsgNoUrl : "অনুগ্রহ করে URL লিংক টাইপ করুন",
-DlnLnkMsgNoEMail : "অনুগ্রহ করে ইমেইল এড্রেস টাইপ করুন",
-DlnLnkMsgNoAnchor : "অনুগ্রহ করে নোঙর বাছাই করুন",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces", //MISSING
-
-// Color Dialog
-DlgColorTitle : "রং বাছাই কর",
-DlgColorBtnClear : "পরিষ্কার কর",
-DlgColorHighlight : "হাইলাইট",
-DlgColorSelected : "সিলেক্টেড",
-
-// Smiley Dialog
-DlgSmileyTitle : "স্মাইলী যুক্ত কর",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "বিশেষ ক্যারেক্টার বাছাই কর",
-
-// Table Dialog
-DlgTableTitle : "টেবিল প্রোপার্টি",
-DlgTableRows : "রো",
-DlgTableColumns : "কলাম",
-DlgTableBorder : "বর্ডার সাইজ",
-DlgTableAlign : "এলাইনমেন্ট",
-DlgTableAlignNotSet : "<সেট নেই>",
-DlgTableAlignLeft : "বামে",
-DlgTableAlignCenter : "মাঝখানে",
-DlgTableAlignRight : "ডানে",
-DlgTableWidth : "প্রস্থ",
-DlgTableWidthPx : "পিক্সেল",
-DlgTableWidthPc : "শতকরা",
-DlgTableHeight : "দৈর্ঘ্য",
-DlgTableCellSpace : "সেল স্পেস",
-DlgTableCellPad : "সেল প্যাডিং",
-DlgTableCaption : "শীর্ষক",
-DlgTableSummary : "সারাংশ",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "সেল প্রোপার্টি",
-DlgCellWidth : "প্রস্থ",
-DlgCellWidthPx : "পিক্সেল",
-DlgCellWidthPc : "শতকরা",
-DlgCellHeight : "দৈর্ঘ্য",
-DlgCellWordWrap : "ওয়ার্ড রেপ",
-DlgCellWordWrapNotSet : "<সেট নেই>",
-DlgCellWordWrapYes : "হাঁ",
-DlgCellWordWrapNo : "না",
-DlgCellHorAlign : "হরাইজন্টাল এলাইনমেন্ট",
-DlgCellHorAlignNotSet : "<সেট নেই>",
-DlgCellHorAlignLeft : "বামে",
-DlgCellHorAlignCenter : "মাঝখানে",
-DlgCellHorAlignRight: "ডানে",
-DlgCellVerAlign : "ভার্টিক্যাল এলাইনমেন্ট",
-DlgCellVerAlignNotSet : "<সেট নেই>",
-DlgCellVerAlignTop : "উপর",
-DlgCellVerAlignMiddle : "মধ্য",
-DlgCellVerAlignBottom : "নীচে",
-DlgCellVerAlignBaseline : "মূলরেখা",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "রো স্প্যান",
-DlgCellCollSpan : "কলাম স্প্যান",
-DlgCellBackColor : "ব্যাকগ্রাউন্ড রং",
-DlgCellBorderColor : "বর্ডারের রং",
-DlgCellBtnSelect : "বাছাই কর",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace", //MISSING
-
-// Find Dialog
-DlgFindTitle : "খোঁজো",
-DlgFindFindBtn : "খোঁজো",
-DlgFindNotFoundMsg : "আপনার উল্লেখিত টেকস্ট পাওয়া যায়নি",
-
-// Replace Dialog
-DlgReplaceTitle : "বদলে দাও",
-DlgReplaceFindLbl : "যা খুঁজতে হবে:",
-DlgReplaceReplaceLbl : "যার সাথে বদলাতে হবে:",
-DlgReplaceCaseChk : "কেস মিলাও",
-DlgReplaceReplaceBtn : "বদলে দাও",
-DlgReplaceReplAllBtn : "সব বদলে দাও",
-DlgReplaceWordChk : "পুরা শব্দ মেলাও",
-
-// Paste Operations / Dialog
-PasteErrorCut : "আপনার ব্রাউজারের সুরক্ষা সেটিংস এডিটরকে অটোমেটিক কাট করার অনুমতি দেয়নি। দয়া করে এই কাজের জন্য কিবোর্ড ব্যবহার করুন (Ctrl+X)।",
-PasteErrorCopy : "আপনার ব্রাউজারের সুরক্ষা সেটিংস এডিটরকে অটোমেটিক কপি করার অনুমতি দেয়নি। দয়া করে এই কাজের জন্য কিবোর্ড ব্যবহার করুন (Ctrl+C)।",
-
-PasteAsText : "সাদা টেক্সট হিসেবে পেস্ট কর",
-PasteFromWord : "ওয়ার্ড থেকে পেস্ট কর",
-
-DlgPasteMsg2 : "অনুগ্রহ করে নীচের বাক্সে কিবোর্ড ব্যবহার করে (Ctrl+V ) পেস্ট করুন এবং OK চাপ দিন",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.", //MISSING
-DlgPasteIgnoreFont : "ফন্ট ফেস ডেফিনেশন ইগনোর করুন",
-DlgPasteRemoveStyles : "স্টাইল ডেফিনেশন সরিয়ে দিন",
-
-// Color Picker
-ColorAutomatic : "অটোমেটিক",
-ColorMoreColors : "আরও রং...",
-
-// Document Properties
-DocProps : "ডক্যুমেন্ট প্রোপার্টি",
-
-// Anchor Dialog
-DlgAnchorTitle : "নোঙরের প্রোপার্টি",
-DlgAnchorName : "নোঙরের নাম",
-DlgAnchorErrorName : "নোঙরের নাম টাইপ করুন",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "শব্দকোষে নেই",
-DlgSpellChangeTo : "এতে বদলাও",
-DlgSpellBtnIgnore : "ইগনোর কর",
-DlgSpellBtnIgnoreAll : "সব ইগনোর কর",
-DlgSpellBtnReplace : "বদলে দাও",
-DlgSpellBtnReplaceAll : "সব বদলে দাও",
-DlgSpellBtnUndo : "আন্ডু",
-DlgSpellNoSuggestions : "- কোন সাজেশন নেই -",
-DlgSpellProgress : "বানান পরীক্ষা চলছে...",
-DlgSpellNoMispell : "বানান পরীক্ষা শেষ: কোন ভুল বানান পাওয়া যায়নি",
-DlgSpellNoChanges : "বানান পরীক্ষা শেষ: কোন শব্দ পরিবর্তন করা হয়নি",
-DlgSpellOneChange : "বানান পরীক্ষা শেষ: একটি মাত্র শব্দ পরিবর্তন করা হয়েছে",
-DlgSpellManyChanges : "বানান পরীক্ষা শেষ: %1 গুলো শব্দ বদলে গ্যাছে",
-
-IeSpellDownload : "বানান পরীক্ষক ইনস্টল করা নেই। আপনি কি এখনই এটা ডাউনলোড করতে চান?",
-
-// Button Dialog
-DlgButtonText : "টেক্সট (ভ্যালু)",
-DlgButtonType : "প্রকার",
-DlgButtonTypeBtn : "Button", //MISSING
-DlgButtonTypeSbm : "Submit", //MISSING
-DlgButtonTypeRst : "Reset", //MISSING
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "নাম",
-DlgCheckboxValue : "ভ্যালু",
-DlgCheckboxSelected : "সিলেক্টেড",
-
-// Form Dialog
-DlgFormName : "নাম",
-DlgFormAction : "একশ্যন",
-DlgFormMethod : "পদ্ধতি",
-
-// Select Field Dialog
-DlgSelectName : "নাম",
-DlgSelectValue : "ভ্যালু",
-DlgSelectSize : "সাইজ",
-DlgSelectLines : "লাইন সমূহ",
-DlgSelectChkMulti : "একাধিক সিলেকশন এলাউ কর",
-DlgSelectOpAvail : "অন্যান্য বিকল্প",
-DlgSelectOpText : "টেক্সট",
-DlgSelectOpValue : "ভ্যালু",
-DlgSelectBtnAdd : "যুক্ত",
-DlgSelectBtnModify : "বদলে দাও",
-DlgSelectBtnUp : "উপর",
-DlgSelectBtnDown : "নীচে",
-DlgSelectBtnSetValue : "বাছাই করা ভ্যালু হিসেবে সেট কর",
-DlgSelectBtnDelete : "ডিলীট",
-
-// Textarea Dialog
-DlgTextareaName : "নাম",
-DlgTextareaCols : "কলাম",
-DlgTextareaRows : "রো",
-
-// Text Field Dialog
-DlgTextName : "নাম",
-DlgTextValue : "ভ্যালু",
-DlgTextCharWidth : "ক্যারেক্টার প্রশস্ততা",
-DlgTextMaxChars : "সর্বাধিক ক্যারেক্টার",
-DlgTextType : "টাইপ",
-DlgTextTypeText : "টেক্সট",
-DlgTextTypePass : "পাসওয়ার্ড",
-
-// Hidden Field Dialog
-DlgHiddenName : "নাম",
-DlgHiddenValue : "ভ্যালু",
-
-// Bulleted List Dialog
-BulletedListProp : "বুলেটেড সূচী প্রোপার্টি",
-NumberedListProp : "সাংখ্যিক সূচী প্রোপার্টি",
-DlgLstStart : "Start", //MISSING
-DlgLstType : "প্রকার",
-DlgLstTypeCircle : "গোল",
-DlgLstTypeDisc : "ডিস্ক",
-DlgLstTypeSquare : "চৌকোণা",
-DlgLstTypeNumbers : "সংখ্যা (1, 2, 3)",
-DlgLstTypeLCase : "ছোট অক্ষর (a, b, c)",
-DlgLstTypeUCase : "বড় অক্ষর (A, B, C)",
-DlgLstTypeSRoman : "ছোট রোমান সংখ্যা (i, ii, iii)",
-DlgLstTypeLRoman : "বড় রোমান সংখ্যা (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "সাধারন",
-DlgDocBackTab : "ব্যাকগ্রাউন্ড",
-DlgDocColorsTab : "রং এবং মার্জিন",
-DlgDocMetaTab : "মেটাডেটা",
-
-DlgDocPageTitle : "পেজ শীর্ষক",
-DlgDocLangDir : "ভাষা লিখার দিক",
-DlgDocLangDirLTR : "বাম থেকে ডানে (LTR)",
-DlgDocLangDirRTL : "ডান থেকে বামে (RTL)",
-DlgDocLangCode : "ভাষা কোড",
-DlgDocCharSet : "ক্যারেক্টার সেট এনকোডিং",
-DlgDocCharSetCE : "Central European", //MISSING
-DlgDocCharSetCT : "Chinese Traditional (Big5)", //MISSING
-DlgDocCharSetCR : "Cyrillic", //MISSING
-DlgDocCharSetGR : "Greek", //MISSING
-DlgDocCharSetJP : "Japanese", //MISSING
-DlgDocCharSetKR : "Korean", //MISSING
-DlgDocCharSetTR : "Turkish", //MISSING
-DlgDocCharSetUN : "Unicode (UTF-8)", //MISSING
-DlgDocCharSetWE : "Western European", //MISSING
-DlgDocCharSetOther : "অন্য ক্যারেক্টার সেট এনকোডিং",
-
-DlgDocDocType : "ডক্যুমেন্ট টাইপ হেডিং",
-DlgDocDocTypeOther : "অন্য ডক্যুমেন্ট টাইপ হেডিং",
-DlgDocIncXHTML : "XHTML ডেক্লারেশন যুক্ত কর",
-DlgDocBgColor : "ব্যাকগ্রাউন্ড রং",
-DlgDocBgImage : "ব্যাকগ্রাউন্ড ছবির URL",
-DlgDocBgNoScroll : "স্ক্রলহীন ব্যাকগ্রাউন্ড",
-DlgDocCText : "টেক্সট",
-DlgDocCLink : "লিংক",
-DlgDocCVisited : "ভিজিট করা লিংক",
-DlgDocCActive : "সক্রিয় লিংক",
-DlgDocMargins : "পেজ মার্জিন",
-DlgDocMaTop : "উপর",
-DlgDocMaLeft : "বামে",
-DlgDocMaRight : "ডানে",
-DlgDocMaBottom : "নীচে",
-DlgDocMeIndex : "ডক্যুমেন্ট ইন্ডেক্স কিওয়ার্ড (কমা দ্বারা বিচ্ছিন্ন)",
-DlgDocMeDescr : "ডক্যূমেন্ট বর্ণনা",
-DlgDocMeAuthor : "লেখক",
-DlgDocMeCopy : "কপীরাইট",
-DlgDocPreview : "প্রীভিউ",
-
-// Templates Dialog
-Templates : "টেমপ্লেট",
-DlgTemplatesTitle : "কনটেন্ট টেমপ্লেট",
-DlgTemplatesSelMsg : "অনুগ্রহ করে এডিটরে ওপেন করার জন্য টেমপ্লেট বাছাই করুন (আসল কনটেন্ট হারিয়ে যাবে):",
-DlgTemplatesLoading : "টেমপ্লেট লিস্ট হারিয়ে যাবে। অনুগ্রহ করে অপেক্ষা করুন...",
-DlgTemplatesNoTpl : "(কোন টেমপ্লেট ডিফাইন করা নেই)",
-DlgTemplatesReplace : "Replace actual contents", //MISSING
-
-// About Dialog
-DlgAboutAboutTab : "কে বানিয়েছে",
-DlgAboutBrowserInfoTab : "ব্রাউজারের ব্যাপারে তথ্য",
-DlgAboutLicenseTab : "লাইসেন্স",
-DlgAboutVersion : "ভার্সন",
-DlgAboutInfo : "আরও তথ্যের জন্য যান",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/bs.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/bs.js
deleted file mode 100755
index 1040901..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/bs.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Bosnian language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Skupi trake sa alatima",
-ToolbarExpand : "Otvori trake sa alatima",
-
-// Toolbar Items and Context Menu
-Save : "Snimi",
-NewPage : "Novi dokument",
-Preview : "Prikaži",
-Cut : "Izreži",
-Copy : "Kopiraj",
-Paste : "Zalijepi",
-PasteText : "Zalijepi kao obièan tekst",
-PasteWord : "Zalijepi iz Word-a",
-Print : "Štampaj",
-SelectAll : "Selektuj sve",
-RemoveFormat : "Poništi format",
-InsertLinkLbl : "Link",
-InsertLink : "Ubaci/Izmjeni link",
-RemoveLink : "Izbriši link",
-VisitLink : "Open Link", //MISSING
-Anchor : "Insert/Edit Anchor", //MISSING
-AnchorDelete : "Remove Anchor", //MISSING
-InsertImageLbl : "Slika",
-InsertImage : "Ubaci/Izmjeni sliku",
-InsertFlashLbl : "Flash", //MISSING
-InsertFlash : "Insert/Edit Flash", //MISSING
-InsertTableLbl : "Tabela",
-InsertTable : "Ubaci/Izmjeni tabelu",
-InsertLineLbl : "Linija",
-InsertLine : "Ubaci horizontalnu liniju",
-InsertSpecialCharLbl: "Specijalni karakter",
-InsertSpecialChar : "Ubaci specijalni karater",
-InsertSmileyLbl : "Smješko",
-InsertSmiley : "Ubaci smješka",
-About : "O FCKeditor-u",
-Bold : "Boldiraj",
-Italic : "Ukosi",
-Underline : "Podvuci",
-StrikeThrough : "Precrtaj",
-Subscript : "Subscript",
-Superscript : "Superscript",
-LeftJustify : "Lijevo poravnanje",
-CenterJustify : "Centralno poravnanje",
-RightJustify : "Desno poravnanje",
-BlockJustify : "Puno poravnanje",
-DecreaseIndent : "Smanji uvod",
-IncreaseIndent : "Poveæaj uvod",
-Blockquote : "Blockquote", //MISSING
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "Vrati",
-Redo : "Ponovi",
-NumberedListLbl : "Numerisana lista",
-NumberedList : "Ubaci/Izmjeni numerisanu listu",
-BulletedListLbl : "Lista",
-BulletedList : "Ubaci/Izmjeni listu",
-ShowTableBorders : "Pokaži okvire tabela",
-ShowDetails : "Pokaži detalje",
-Style : "Stil",
-FontFormat : "Format",
-Font : "Font",
-FontSize : "Velièina",
-TextColor : "Boja teksta",
-BGColor : "Boja pozadine",
-Source : "HTML kôd",
-Find : "Naði",
-Replace : "Zamjeni",
-SpellCheck : "Check Spelling", //MISSING
-UniversalKeyboard : "Universal Keyboard", //MISSING
-PageBreakLbl : "Page Break", //MISSING
-PageBreak : "Insert Page Break", //MISSING
-
-Form : "Form", //MISSING
-Checkbox : "Checkbox", //MISSING
-RadioButton : "Radio Button", //MISSING
-TextField : "Text Field", //MISSING
-Textarea : "Textarea", //MISSING
-HiddenField : "Hidden Field", //MISSING
-Button : "Button", //MISSING
-SelectionField : "Selection Field", //MISSING
-ImageButton : "Image Button", //MISSING
-
-FitWindow : "Maximize the editor size", //MISSING
-ShowBlocks : "Show Blocks", //MISSING
-
-// Context Menu
-EditLink : "Izmjeni link",
-CellCM : "Cell", //MISSING
-RowCM : "Row", //MISSING
-ColumnCM : "Column", //MISSING
-InsertRowAfter : "Insert Row After", //MISSING
-InsertRowBefore : "Insert Row Before", //MISSING
-DeleteRows : "Briši redove",
-InsertColumnAfter : "Insert Column After", //MISSING
-InsertColumnBefore : "Insert Column Before", //MISSING
-DeleteColumns : "Briši kolone",
-InsertCellAfter : "Insert Cell After", //MISSING
-InsertCellBefore : "Insert Cell Before", //MISSING
-DeleteCells : "Briši æelije",
-MergeCells : "Spoji æelije",
-MergeRight : "Merge Right", //MISSING
-MergeDown : "Merge Down", //MISSING
-HorizontalSplitCell : "Split Cell Horizontally", //MISSING
-VerticalSplitCell : "Split Cell Vertically", //MISSING
-TableDelete : "Delete Table", //MISSING
-CellProperties : "Svojstva æelije",
-TableProperties : "Svojstva tabele",
-ImageProperties : "Svojstva slike",
-FlashProperties : "Flash Properties", //MISSING
-
-AnchorProp : "Anchor Properties", //MISSING
-ButtonProp : "Button Properties", //MISSING
-CheckboxProp : "Checkbox Properties", //MISSING
-HiddenFieldProp : "Hidden Field Properties", //MISSING
-RadioButtonProp : "Radio Button Properties", //MISSING
-ImageButtonProp : "Image Button Properties", //MISSING
-TextFieldProp : "Text Field Properties", //MISSING
-SelectionFieldProp : "Selection Field Properties", //MISSING
-TextareaProp : "Textarea Properties", //MISSING
-FormProp : "Form Properties", //MISSING
-
-FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6",
-
-// Alerts and Messages
-ProcessingXHTML : "Procesiram XHTML. Molim saèekajte...",
-Done : "Gotovo",
-PasteWordConfirm : "Tekst koji želite zalijepiti èini se da je kopiran iz Worda. Da li želite da se prvo oèisti?",
-NotCompatiblePaste : "Ova komanda je podržana u Internet Explorer-u verzijama 5.5 ili novijim. Da li želite da izvršite lijepljenje teksta bez èišæenja?",
-UnknownToolbarItem : "Nepoznata stavka sa trake sa alatima \"%1\"",
-UnknownCommand : "Nepoznata komanda \"%1\"",
-NotImplemented : "Komanda nije implementirana",
-UnknownToolbarSet : "Traka sa alatima \"%1\" ne postoji",
-NoActiveX : "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.", //MISSING
-DialogBlocked : "It was not possible to open the dialog window. Make sure all popup blockers are disabled.", //MISSING
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Odustani",
-DlgBtnClose : "Zatvori",
-DlgBtnBrowseServer : "Browse Server", //MISSING
-DlgAdvancedTag : "Naprednije",
-DlgOpOther : "", //MISSING
-DlgInfoTab : "Info", //MISSING
-DlgAlertUrl : "Please insert the URL", //MISSING
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Smjer pisanja",
-DlgGenLangDirLtr : "S lijeva na desno (LTR)",
-DlgGenLangDirRtl : "S desna na lijevo (RTL)",
-DlgGenLangCode : "Jezièni kôd",
-DlgGenAccessKey : "Pristupna tipka",
-DlgGenName : "Naziv",
-DlgGenTabIndex : "Tab indeks",
-DlgGenLongDescr : "Dugaèki opis URL-a",
-DlgGenClass : "Klase CSS stilova",
-DlgGenTitle : "Advisory title",
-DlgGenContType : "Advisory vrsta sadržaja",
-DlgGenLinkCharset : "Linked Resource Charset",
-DlgGenStyle : "Stil",
-
-// Image Dialog
-DlgImgTitle : "Svojstva slike",
-DlgImgInfoTab : "Info slike",
-DlgImgBtnUpload : "Šalji na server",
-DlgImgURL : "URL",
-DlgImgUpload : "Šalji",
-DlgImgAlt : "Tekst na slici",
-DlgImgWidth : "Širina",
-DlgImgHeight : "Visina",
-DlgImgLockRatio : "Zakljuèaj odnos",
-DlgBtnResetSize : "Resetuj dimenzije",
-DlgImgBorder : "Okvir",
-DlgImgHSpace : "HSpace",
-DlgImgVSpace : "VSpace",
-DlgImgAlign : "Poravnanje",
-DlgImgAlignLeft : "Lijevo",
-DlgImgAlignAbsBottom: "Abs dole",
-DlgImgAlignAbsMiddle: "Abs sredina",
-DlgImgAlignBaseline : "Bazno",
-DlgImgAlignBottom : "Dno",
-DlgImgAlignMiddle : "Sredina",
-DlgImgAlignRight : "Desno",
-DlgImgAlignTextTop : "Vrh teksta",
-DlgImgAlignTop : "Vrh",
-DlgImgPreview : "Prikaz",
-DlgImgAlertUrl : "Molimo ukucajte URL od slike.",
-DlgImgLinkTab : "Link", //MISSING
-
-// Flash Dialog
-DlgFlashTitle : "Flash Properties", //MISSING
-DlgFlashChkPlay : "Auto Play", //MISSING
-DlgFlashChkLoop : "Loop", //MISSING
-DlgFlashChkMenu : "Enable Flash Menu", //MISSING
-DlgFlashScale : "Scale", //MISSING
-DlgFlashScaleAll : "Show all", //MISSING
-DlgFlashScaleNoBorder : "No Border", //MISSING
-DlgFlashScaleFit : "Exact Fit", //MISSING
-
-// Link Dialog
-DlgLnkWindowTitle : "Link",
-DlgLnkInfoTab : "Link info",
-DlgLnkTargetTab : "Prozor",
-
-DlgLnkType : "Tip linka",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Sidro na ovoj stranici",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protokol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Izaberi sidro",
-DlgLnkAnchorByName : "Po nazivu sidra",
-DlgLnkAnchorById : "Po Id-u elementa",
-DlgLnkNoAnchors : "(Nema dostupnih sidra na stranici)",
-DlgLnkEMail : "E-Mail Adresa",
-DlgLnkEMailSubject : "Subjekt poruke",
-DlgLnkEMailBody : "Poruka",
-DlgLnkUpload : "Šalji",
-DlgLnkBtnUpload : "Šalji na server",
-
-DlgLnkTarget : "Prozor",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Novi prozor (_blank)",
-DlgLnkTargetParent : "Glavni prozor (_parent)",
-DlgLnkTargetSelf : "Isti prozor (_self)",
-DlgLnkTargetTop : "Najgornji prozor (_top)",
-DlgLnkTargetFrameName : "Target Frame Name", //MISSING
-DlgLnkPopWinName : "Naziv popup prozora",
-DlgLnkPopWinFeat : "Moguænosti popup prozora",
-DlgLnkPopResize : "Promjenljive velièine",
-DlgLnkPopLocation : "Traka za lokaciju",
-DlgLnkPopMenu : "Izborna traka",
-DlgLnkPopScroll : "Scroll traka",
-DlgLnkPopStatus : "Statusna traka",
-DlgLnkPopToolbar : "Traka sa alatima",
-DlgLnkPopFullScrn : "Cijeli ekran (IE)",
-DlgLnkPopDependent : "Ovisno (Netscape)",
-DlgLnkPopWidth : "Širina",
-DlgLnkPopHeight : "Visina",
-DlgLnkPopLeft : "Lijeva pozicija",
-DlgLnkPopTop : "Gornja pozicija",
-
-DlnLnkMsgNoUrl : "Molimo ukucajte URL link",
-DlnLnkMsgNoEMail : "Molimo ukucajte e-mail adresu",
-DlnLnkMsgNoAnchor : "Molimo izaberite sidro",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces", //MISSING
-
-// Color Dialog
-DlgColorTitle : "Izaberi boju",
-DlgColorBtnClear : "Oèisti",
-DlgColorHighlight : "Igled",
-DlgColorSelected : "Selektovana",
-
-// Smiley Dialog
-DlgSmileyTitle : "Ubaci smješka",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Izaberi specijalni karakter",
-
-// Table Dialog
-DlgTableTitle : "Svojstva tabele",
-DlgTableRows : "Redova",
-DlgTableColumns : "Kolona",
-DlgTableBorder : "Okvir",
-DlgTableAlign : "Poravnanje",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Lijevo",
-DlgTableAlignCenter : "Centar",
-DlgTableAlignRight : "Desno",
-DlgTableWidth : "Širina",
-DlgTableWidthPx : "piksela",
-DlgTableWidthPc : "posto",
-DlgTableHeight : "Visina",
-DlgTableCellSpace : "Razmak æelija",
-DlgTableCellPad : "Uvod æelija",
-DlgTableCaption : "Naslov",
-DlgTableSummary : "Summary", //MISSING
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Svojstva æelije",
-DlgCellWidth : "Širina",
-DlgCellWidthPx : "piksela",
-DlgCellWidthPc : "posto",
-DlgCellHeight : "Visina",
-DlgCellWordWrap : "Vrapuj tekst",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Da",
-DlgCellWordWrapNo : "Ne",
-DlgCellHorAlign : "Horizontalno poravnanje",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Lijevo",
-DlgCellHorAlignCenter : "Centar",
-DlgCellHorAlignRight: "Desno",
-DlgCellVerAlign : "Vertikalno poravnanje",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Gore",
-DlgCellVerAlignMiddle : "Sredina",
-DlgCellVerAlignBottom : "Dno",
-DlgCellVerAlignBaseline : "Bazno",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Spajanje æelija",
-DlgCellCollSpan : "Spajanje kolona",
-DlgCellBackColor : "Boja pozadine",
-DlgCellBorderColor : "Boja okvira",
-DlgCellBtnSelect : "Selektuj...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace", //MISSING
-
-// Find Dialog
-DlgFindTitle : "Naði",
-DlgFindFindBtn : "Naði",
-DlgFindNotFoundMsg : "Traženi tekst nije pronaðen.",
-
-// Replace Dialog
-DlgReplaceTitle : "Zamjeni",
-DlgReplaceFindLbl : "Naði šta:",
-DlgReplaceReplaceLbl : "Zamjeni sa:",
-DlgReplaceCaseChk : "Uporeðuj velika/mala slova",
-DlgReplaceReplaceBtn : "Zamjeni",
-DlgReplaceReplAllBtn : "Zamjeni sve",
-DlgReplaceWordChk : "Uporeðuj samo cijelu rijeè",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Sigurnosne postavke vašeg pretraživaèa ne dozvoljavaju operacije automatskog rezanja. Molimo koristite kraticu na tastaturi (Ctrl+X).",
-PasteErrorCopy : "Sigurnosne postavke Vašeg pretraživaèa ne dozvoljavaju operacije automatskog kopiranja. Molimo koristite kraticu na tastaturi (Ctrl+C).",
-
-PasteAsText : "Zalijepi kao obièan tekst",
-PasteFromWord : "Zalijepi iz Word-a",
-
-DlgPasteMsg2 : "Please paste inside the following box using the keyboard (Ctrl+V ) and hit OK .", //MISSING
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.", //MISSING
-DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
-DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
-
-// Color Picker
-ColorAutomatic : "Automatska",
-ColorMoreColors : "Više boja...",
-
-// Document Properties
-DocProps : "Document Properties", //MISSING
-
-// Anchor Dialog
-DlgAnchorTitle : "Anchor Properties", //MISSING
-DlgAnchorName : "Anchor Name", //MISSING
-DlgAnchorErrorName : "Please type the anchor name", //MISSING
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Not in dictionary", //MISSING
-DlgSpellChangeTo : "Change to", //MISSING
-DlgSpellBtnIgnore : "Ignore", //MISSING
-DlgSpellBtnIgnoreAll : "Ignore All", //MISSING
-DlgSpellBtnReplace : "Replace", //MISSING
-DlgSpellBtnReplaceAll : "Replace All", //MISSING
-DlgSpellBtnUndo : "Undo", //MISSING
-DlgSpellNoSuggestions : "- No suggestions -", //MISSING
-DlgSpellProgress : "Spell check in progress...", //MISSING
-DlgSpellNoMispell : "Spell check complete: No misspellings found", //MISSING
-DlgSpellNoChanges : "Spell check complete: No words changed", //MISSING
-DlgSpellOneChange : "Spell check complete: One word changed", //MISSING
-DlgSpellManyChanges : "Spell check complete: %1 words changed", //MISSING
-
-IeSpellDownload : "Spell checker not installed. Do you want to download it now?", //MISSING
-
-// Button Dialog
-DlgButtonText : "Text (Value)", //MISSING
-DlgButtonType : "Type", //MISSING
-DlgButtonTypeBtn : "Button", //MISSING
-DlgButtonTypeSbm : "Submit", //MISSING
-DlgButtonTypeRst : "Reset", //MISSING
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Name", //MISSING
-DlgCheckboxValue : "Value", //MISSING
-DlgCheckboxSelected : "Selected", //MISSING
-
-// Form Dialog
-DlgFormName : "Name", //MISSING
-DlgFormAction : "Action", //MISSING
-DlgFormMethod : "Method", //MISSING
-
-// Select Field Dialog
-DlgSelectName : "Name", //MISSING
-DlgSelectValue : "Value", //MISSING
-DlgSelectSize : "Size", //MISSING
-DlgSelectLines : "lines", //MISSING
-DlgSelectChkMulti : "Allow multiple selections", //MISSING
-DlgSelectOpAvail : "Available Options", //MISSING
-DlgSelectOpText : "Text", //MISSING
-DlgSelectOpValue : "Value", //MISSING
-DlgSelectBtnAdd : "Add", //MISSING
-DlgSelectBtnModify : "Modify", //MISSING
-DlgSelectBtnUp : "Up", //MISSING
-DlgSelectBtnDown : "Down", //MISSING
-DlgSelectBtnSetValue : "Set as selected value", //MISSING
-DlgSelectBtnDelete : "Delete", //MISSING
-
-// Textarea Dialog
-DlgTextareaName : "Name", //MISSING
-DlgTextareaCols : "Columns", //MISSING
-DlgTextareaRows : "Rows", //MISSING
-
-// Text Field Dialog
-DlgTextName : "Name", //MISSING
-DlgTextValue : "Value", //MISSING
-DlgTextCharWidth : "Character Width", //MISSING
-DlgTextMaxChars : "Maximum Characters", //MISSING
-DlgTextType : "Type", //MISSING
-DlgTextTypeText : "Text", //MISSING
-DlgTextTypePass : "Password", //MISSING
-
-// Hidden Field Dialog
-DlgHiddenName : "Name", //MISSING
-DlgHiddenValue : "Value", //MISSING
-
-// Bulleted List Dialog
-BulletedListProp : "Bulleted List Properties", //MISSING
-NumberedListProp : "Numbered List Properties", //MISSING
-DlgLstStart : "Start", //MISSING
-DlgLstType : "Type", //MISSING
-DlgLstTypeCircle : "Circle", //MISSING
-DlgLstTypeDisc : "Disc", //MISSING
-DlgLstTypeSquare : "Square", //MISSING
-DlgLstTypeNumbers : "Numbers (1, 2, 3)", //MISSING
-DlgLstTypeLCase : "Lowercase Letters (a, b, c)", //MISSING
-DlgLstTypeUCase : "Uppercase Letters (A, B, C)", //MISSING
-DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)", //MISSING
-DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)", //MISSING
-
-// Document Properties Dialog
-DlgDocGeneralTab : "General", //MISSING
-DlgDocBackTab : "Background", //MISSING
-DlgDocColorsTab : "Colors and Margins", //MISSING
-DlgDocMetaTab : "Meta Data", //MISSING
-
-DlgDocPageTitle : "Page Title", //MISSING
-DlgDocLangDir : "Language Direction", //MISSING
-DlgDocLangDirLTR : "Left to Right (LTR)", //MISSING
-DlgDocLangDirRTL : "Right to Left (RTL)", //MISSING
-DlgDocLangCode : "Language Code", //MISSING
-DlgDocCharSet : "Character Set Encoding", //MISSING
-DlgDocCharSetCE : "Central European", //MISSING
-DlgDocCharSetCT : "Chinese Traditional (Big5)", //MISSING
-DlgDocCharSetCR : "Cyrillic", //MISSING
-DlgDocCharSetGR : "Greek", //MISSING
-DlgDocCharSetJP : "Japanese", //MISSING
-DlgDocCharSetKR : "Korean", //MISSING
-DlgDocCharSetTR : "Turkish", //MISSING
-DlgDocCharSetUN : "Unicode (UTF-8)", //MISSING
-DlgDocCharSetWE : "Western European", //MISSING
-DlgDocCharSetOther : "Other Character Set Encoding", //MISSING
-
-DlgDocDocType : "Document Type Heading", //MISSING
-DlgDocDocTypeOther : "Other Document Type Heading", //MISSING
-DlgDocIncXHTML : "Include XHTML Declarations", //MISSING
-DlgDocBgColor : "Background Color", //MISSING
-DlgDocBgImage : "Background Image URL", //MISSING
-DlgDocBgNoScroll : "Nonscrolling Background", //MISSING
-DlgDocCText : "Text", //MISSING
-DlgDocCLink : "Link", //MISSING
-DlgDocCVisited : "Visited Link", //MISSING
-DlgDocCActive : "Active Link", //MISSING
-DlgDocMargins : "Page Margins", //MISSING
-DlgDocMaTop : "Top", //MISSING
-DlgDocMaLeft : "Left", //MISSING
-DlgDocMaRight : "Right", //MISSING
-DlgDocMaBottom : "Bottom", //MISSING
-DlgDocMeIndex : "Document Indexing Keywords (comma separated)", //MISSING
-DlgDocMeDescr : "Document Description", //MISSING
-DlgDocMeAuthor : "Author", //MISSING
-DlgDocMeCopy : "Copyright", //MISSING
-DlgDocPreview : "Preview", //MISSING
-
-// Templates Dialog
-Templates : "Templates", //MISSING
-DlgTemplatesTitle : "Content Templates", //MISSING
-DlgTemplatesSelMsg : "Please select the template to open in the editor (the actual contents will be lost):", //MISSING
-DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
-DlgTemplatesNoTpl : "(No templates defined)", //MISSING
-DlgTemplatesReplace : "Replace actual contents", //MISSING
-
-// About Dialog
-DlgAboutAboutTab : "About", //MISSING
-DlgAboutBrowserInfoTab : "Browser Info", //MISSING
-DlgAboutLicenseTab : "License", //MISSING
-DlgAboutVersion : "verzija",
-DlgAboutInfo : "Za više informacija posjetite",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/ca.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/ca.js
deleted file mode 100755
index 7cce7fc..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/ca.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Catalan language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Redueix la barra d'eines",
-ToolbarExpand : "Amplia la barra d'eines",
-
-// Toolbar Items and Context Menu
-Save : "Desa",
-NewPage : "Nova Pàgina",
-Preview : "Visualització prèvia",
-Cut : "Retalla",
-Copy : "Copia",
-Paste : "Enganxa",
-PasteText : "Enganxa com a text no formatat",
-PasteWord : "Enganxa des del Word",
-Print : "Imprimeix",
-SelectAll : "Selecciona-ho tot",
-RemoveFormat : "Elimina Format",
-InsertLinkLbl : "Enllaç",
-InsertLink : "Insereix/Edita enllaç",
-RemoveLink : "Elimina l'enllaç",
-VisitLink : "Obre l'enllaç",
-Anchor : "Insereix/Edita àncora",
-AnchorDelete : "Elimina àncora",
-InsertImageLbl : "Imatge",
-InsertImage : "Insereix/Edita imatge",
-InsertFlashLbl : "Flash",
-InsertFlash : "Insereix/Edita Flash",
-InsertTableLbl : "Taula",
-InsertTable : "Insereix/Edita taula",
-InsertLineLbl : "Línia",
-InsertLine : "Insereix línia horitzontal",
-InsertSpecialCharLbl: "Caràcter Especial",
-InsertSpecialChar : "Insereix caràcter especial",
-InsertSmileyLbl : "Icona",
-InsertSmiley : "Insereix icona",
-About : "Quant a l'FCKeditor",
-Bold : "Negreta",
-Italic : "Cursiva",
-Underline : "Subratllat",
-StrikeThrough : "Barrat",
-Subscript : "Subíndex",
-Superscript : "Superíndex",
-LeftJustify : "Alinia a l'esquerra",
-CenterJustify : "Centrat",
-RightJustify : "Alinia a la dreta",
-BlockJustify : "Justificat",
-DecreaseIndent : "Redueix el sagnat",
-IncreaseIndent : "Augmenta el sagnat",
-Blockquote : "Bloc de cita",
-CreateDiv : "Crea un contenidor Div",
-EditDiv : "Edita el contenidor Div",
-DeleteDiv : "Elimina el contenidor Div",
-Undo : "Desfés",
-Redo : "Refés",
-NumberedListLbl : "Llista numerada",
-NumberedList : "Numeració activada/desactivada",
-BulletedListLbl : "Llista de pics",
-BulletedList : "Pics activats/descativats",
-ShowTableBorders : "Mostra les vores de les taules",
-ShowDetails : "Mostra detalls",
-Style : "Estil",
-FontFormat : "Format",
-Font : "Tipus de lletra",
-FontSize : "Mida",
-TextColor : "Color de Text",
-BGColor : "Color de Fons",
-Source : "Codi font",
-Find : "Cerca",
-Replace : "Reemplaça",
-SpellCheck : "Revisa l'ortografia",
-UniversalKeyboard : "Teclat universal",
-PageBreakLbl : "Salt de pàgina",
-PageBreak : "Insereix salt de pàgina",
-
-Form : "Formulari",
-Checkbox : "Casella de verificació",
-RadioButton : "Botó d'opció",
-TextField : "Camp de text",
-Textarea : "Àrea de text",
-HiddenField : "Camp ocult",
-Button : "Botó",
-SelectionField : "Camp de selecció",
-ImageButton : "Botó d'imatge",
-
-FitWindow : "Maximiza la mida de l'editor",
-ShowBlocks : "Mostra els blocs",
-
-// Context Menu
-EditLink : "Edita l'enllaç",
-CellCM : "Cel·la",
-RowCM : "Fila",
-ColumnCM : "Columna",
-InsertRowAfter : "Insereix fila darrera",
-InsertRowBefore : "Insereix fila abans de",
-DeleteRows : "Suprimeix una fila",
-InsertColumnAfter : "Insereix columna darrera",
-InsertColumnBefore : "Insereix columna abans de",
-DeleteColumns : "Suprimeix una columna",
-InsertCellAfter : "Insereix cel·la darrera",
-InsertCellBefore : "Insereix cel·la abans de",
-DeleteCells : "Suprimeix les cel·les",
-MergeCells : "Fusiona les cel·les",
-MergeRight : "Fusiona cap a la dreta",
-MergeDown : "Fusiona cap avall",
-HorizontalSplitCell : "Divideix la cel·la horitzontalment",
-VerticalSplitCell : "Divideix la cel·la verticalment",
-TableDelete : "Suprimeix la taula",
-CellProperties : "Propietats de la cel·la",
-TableProperties : "Propietats de la taula",
-ImageProperties : "Propietats de la imatge",
-FlashProperties : "Propietats del Flash",
-
-AnchorProp : "Propietats de l'àncora",
-ButtonProp : "Propietats del botó",
-CheckboxProp : "Propietats de la casella de verificació",
-HiddenFieldProp : "Propietats del camp ocult",
-RadioButtonProp : "Propietats del botó d'opció",
-ImageButtonProp : "Propietats del botó d'imatge",
-TextFieldProp : "Propietats del camp de text",
-SelectionFieldProp : "Propietats del camp de selecció",
-TextareaProp : "Propietats de l'àrea de text",
-FormProp : "Propietats del formulari",
-
-FontFormats : "Normal;Formatejat;Adreça;Encapçalament 1;Encapçalament 2;Encapçalament 3;Encapçalament 4;Encapçalament 5;Encapçalament 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Processant XHTML. Si us plau esperi...",
-Done : "Fet",
-PasteWordConfirm : "El text que voleu enganxar sembla provenir de Word. Voleu netejar aquest text abans que sigui enganxat?",
-NotCompatiblePaste : "Aquesta funció és disponible per a Internet Explorer versió 5.5 o superior. Voleu enganxar sense netejar?",
-UnknownToolbarItem : "Element de la barra d'eines desconegut \"%1\"",
-UnknownCommand : "Nom de comanda desconegut \"%1\"",
-NotImplemented : "Mètode no implementat",
-UnknownToolbarSet : "Conjunt de barra d'eines \"%1\" inexistent",
-NoActiveX : "Les preferències del navegador poden limitar algunes funcions d'aquest editor. Cal habilitar l'opció \"Executa controls ActiveX i plug-ins\". Poden sorgir errors i poden faltar algunes funcions.",
-BrowseServerBlocked : "El visualitzador de recursos no s'ha pogut obrir. Assegura't de que els bloquejos de finestres emergents estan desactivats.",
-DialogBlocked : "No ha estat possible obrir una finestra de diàleg. Assegureu-vos que els bloquejos de finestres emergents estan desactivats.",
-VisitLinkBlocked : "No ha estat possible obrir una nova finestra. Assegureu-vos que els bloquejos de finestres emergents estan desactivats.",
-
-// Dialogs
-DlgBtnOK : "D'acord",
-DlgBtnCancel : "Cancel·la",
-DlgBtnClose : "Tanca",
-DlgBtnBrowseServer : "Veure servidor",
-DlgAdvancedTag : "Avançat",
-DlgOpOther : "Altres",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Si us plau, afegiu la URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Direcció de l'idioma",
-DlgGenLangDirLtr : "D'esquerra a dreta (LTR)",
-DlgGenLangDirRtl : "De dreta a esquerra (RTL)",
-DlgGenLangCode : "Codi d'idioma",
-DlgGenAccessKey : "Clau d'accés",
-DlgGenName : "Nom",
-DlgGenTabIndex : "Index de Tab",
-DlgGenLongDescr : "Descripció llarga de la URL",
-DlgGenClass : "Classes del full d'estil",
-DlgGenTitle : "Títol consultiu",
-DlgGenContType : "Tipus de contingut consultiu",
-DlgGenLinkCharset : "Conjunt de caràcters font enllaçat",
-DlgGenStyle : "Estil",
-
-// Image Dialog
-DlgImgTitle : "Propietats de la imatge",
-DlgImgInfoTab : "Informació de la imatge",
-DlgImgBtnUpload : "Envia-la al servidor",
-DlgImgURL : "URL",
-DlgImgUpload : "Puja",
-DlgImgAlt : "Text alternatiu",
-DlgImgWidth : "Amplada",
-DlgImgHeight : "Alçada",
-DlgImgLockRatio : "Bloqueja les proporcions",
-DlgBtnResetSize : "Restaura la mida",
-DlgImgBorder : "Vora",
-DlgImgHSpace : "Espaiat horit.",
-DlgImgVSpace : "Espaiat vert.",
-DlgImgAlign : "Alineació",
-DlgImgAlignLeft : "Ajusta a l'esquerra",
-DlgImgAlignAbsBottom: "Abs Bottom",
-DlgImgAlignAbsMiddle: "Abs Middle",
-DlgImgAlignBaseline : "Baseline",
-DlgImgAlignBottom : "Bottom",
-DlgImgAlignMiddle : "Middle",
-DlgImgAlignRight : "Ajusta a la dreta",
-DlgImgAlignTextTop : "Text Top",
-DlgImgAlignTop : "Top",
-DlgImgPreview : "Vista prèvia",
-DlgImgAlertUrl : "Si us plau, escriviu la URL de la imatge",
-DlgImgLinkTab : "Enllaç",
-
-// Flash Dialog
-DlgFlashTitle : "Propietats del Flash",
-DlgFlashChkPlay : "Reprodució automàtica",
-DlgFlashChkLoop : "Bucle",
-DlgFlashChkMenu : "Habilita menú Flash",
-DlgFlashScale : "Escala",
-DlgFlashScaleAll : "Mostra-ho tot",
-DlgFlashScaleNoBorder : "Sense vores",
-DlgFlashScaleFit : "Mida exacta",
-
-// Link Dialog
-DlgLnkWindowTitle : "Enllaç",
-DlgLnkInfoTab : "Informació de l'enllaç",
-DlgLnkTargetTab : "Destí",
-
-DlgLnkType : "Tipus d'enllaç",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Àncora en aquesta pàgina",
-DlgLnkTypeEMail : "Correu electrònic",
-DlgLnkProto : "Protocol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Selecciona una àncora",
-DlgLnkAnchorByName : "Per nom d'àncora",
-DlgLnkAnchorById : "Per Id d'element",
-DlgLnkNoAnchors : "(No hi ha àncores disponibles en aquest document)",
-DlgLnkEMail : "Adreça de correu electrònic",
-DlgLnkEMailSubject : "Assumpte del missatge",
-DlgLnkEMailBody : "Cos del missatge",
-DlgLnkUpload : "Puja",
-DlgLnkBtnUpload : "Envia al servidor",
-
-DlgLnkTarget : "Destí",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nova finestra (_blank)",
-DlgLnkTargetParent : "Finestra pare (_parent)",
-DlgLnkTargetSelf : "Mateixa finestra (_self)",
-DlgLnkTargetTop : "Finestra Major (_top)",
-DlgLnkTargetFrameName : "Nom del marc de destí",
-DlgLnkPopWinName : "Nom finestra popup",
-DlgLnkPopWinFeat : "Característiques finestra popup",
-DlgLnkPopResize : "Redimensionable",
-DlgLnkPopLocation : "Barra d'adreça",
-DlgLnkPopMenu : "Barra de menú",
-DlgLnkPopScroll : "Barres d'scroll",
-DlgLnkPopStatus : "Barra d'estat",
-DlgLnkPopToolbar : "Barra d'eines",
-DlgLnkPopFullScrn : "Pantalla completa (IE)",
-DlgLnkPopDependent : "Depenent (Netscape)",
-DlgLnkPopWidth : "Amplada",
-DlgLnkPopHeight : "Alçada",
-DlgLnkPopLeft : "Posició esquerra",
-DlgLnkPopTop : "Posició dalt",
-
-DlnLnkMsgNoUrl : "Si us plau, escrigui l'enllaç URL",
-DlnLnkMsgNoEMail : "Si us plau, escrigui l'adreça correu electrònic",
-DlnLnkMsgNoAnchor : "Si us plau, escrigui l'àncora",
-DlnLnkMsgInvPopName : "El nom de la finestra emergent ha de començar amb una lletra i no pot tenir espais",
-
-// Color Dialog
-DlgColorTitle : "Selecciona el color",
-DlgColorBtnClear : "Neteja",
-DlgColorHighlight : "Realça",
-DlgColorSelected : "Selecciona",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insereix una icona",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Selecciona el caràcter especial",
-
-// Table Dialog
-DlgTableTitle : "Propietats de la taula",
-DlgTableRows : "Files",
-DlgTableColumns : "Columnes",
-DlgTableBorder : "Mida vora",
-DlgTableAlign : "Alineació",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Esquerra",
-DlgTableAlignCenter : "Centre",
-DlgTableAlignRight : "Dreta",
-DlgTableWidth : "Amplada",
-DlgTableWidthPx : "píxels",
-DlgTableWidthPc : "percentatge",
-DlgTableHeight : "Alçada",
-DlgTableCellSpace : "Espaiat de cel·les",
-DlgTableCellPad : "Encoixinament de cel·les",
-DlgTableCaption : "Títol",
-DlgTableSummary : "Resum",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Propietats de la cel·la",
-DlgCellWidth : "Amplada",
-DlgCellWidthPx : "píxels",
-DlgCellWidthPc : "percentatge",
-DlgCellHeight : "Alçada",
-DlgCellWordWrap : "Ajust de paraula",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Si",
-DlgCellWordWrapNo : "No",
-DlgCellHorAlign : "Alineació horitzontal",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Esquerra",
-DlgCellHorAlignCenter : "Centre",
-DlgCellHorAlignRight: "Dreta",
-DlgCellVerAlign : "Alineació vertical",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Top",
-DlgCellVerAlignMiddle : "Middle",
-DlgCellVerAlignBottom : "Bottom",
-DlgCellVerAlignBaseline : "Baseline",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Rows Span",
-DlgCellCollSpan : "Columns Span",
-DlgCellBackColor : "Color de fons",
-DlgCellBorderColor : "Color de la vora",
-DlgCellBtnSelect : "Seleccioneu...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Cerca i reemplaça",
-
-// Find Dialog
-DlgFindTitle : "Cerca",
-DlgFindFindBtn : "Cerca",
-DlgFindNotFoundMsg : "El text especificat no s'ha trobat.",
-
-// Replace Dialog
-DlgReplaceTitle : "Reemplaça",
-DlgReplaceFindLbl : "Cerca:",
-DlgReplaceReplaceLbl : "Remplaça amb:",
-DlgReplaceCaseChk : "Distingeix majúscules/minúscules",
-DlgReplaceReplaceBtn : "Reemplaça",
-DlgReplaceReplAllBtn : "Reemplaça-ho tot",
-DlgReplaceWordChk : "Només paraules completes",
-
-// Paste Operations / Dialog
-PasteErrorCut : "La seguretat del vostre navegador no permet executar automàticament les operacions de retallar. Si us plau, utilitzeu el teclat (Ctrl+X).",
-PasteErrorCopy : "La seguretat del vostre navegador no permet executar automàticament les operacions de copiar. Si us plau, utilitzeu el teclat (Ctrl+C).",
-
-PasteAsText : "Enganxa com a text no formatat",
-PasteFromWord : "Enganxa com a Word",
-
-DlgPasteMsg2 : "Si us plau, enganxeu dins del següent camp utilitzant el teclat (Ctrl+V ) i premeu OK .",
-DlgPasteSec : "A causa de la configuració de seguretat del vostre navegador, l'editor no pot accedir al porta-retalls directament. Enganxeu-ho un altre cop en aquesta finestra.",
-DlgPasteIgnoreFont : "Ignora definicions de font",
-DlgPasteRemoveStyles : "Elimina definicions d'estil",
-
-// Color Picker
-ColorAutomatic : "Automàtic",
-ColorMoreColors : "Més colors...",
-
-// Document Properties
-DocProps : "Propietats del document",
-
-// Anchor Dialog
-DlgAnchorTitle : "Propietats de l'àncora",
-DlgAnchorName : "Nom de l'àncora",
-DlgAnchorErrorName : "Si us plau, escriviu el nom de l'ancora",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "No és al diccionari",
-DlgSpellChangeTo : "Reemplaça amb",
-DlgSpellBtnIgnore : "Ignora",
-DlgSpellBtnIgnoreAll : "Ignora-les totes",
-DlgSpellBtnReplace : "Canvia",
-DlgSpellBtnReplaceAll : "Canvia-les totes",
-DlgSpellBtnUndo : "Desfés",
-DlgSpellNoSuggestions : "Cap suggeriment",
-DlgSpellProgress : "Verificació ortogràfica en curs...",
-DlgSpellNoMispell : "Verificació ortogràfica acabada: no hi ha cap paraula mal escrita",
-DlgSpellNoChanges : "Verificació ortogràfica: no s'ha canviat cap paraula",
-DlgSpellOneChange : "Verificació ortogràfica: s'ha canviat una paraula",
-DlgSpellManyChanges : "Verificació ortogràfica: s'han canviat %1 paraules",
-
-IeSpellDownload : "Verificació ortogràfica no instal·lada. Voleu descarregar-ho ara?",
-
-// Button Dialog
-DlgButtonText : "Text (Valor)",
-DlgButtonType : "Tipus",
-DlgButtonTypeBtn : "Botó",
-DlgButtonTypeSbm : "Transmet formulari",
-DlgButtonTypeRst : "Reinicia formulari",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Nom",
-DlgCheckboxValue : "Valor",
-DlgCheckboxSelected : "Seleccionat",
-
-// Form Dialog
-DlgFormName : "Nom",
-DlgFormAction : "Acció",
-DlgFormMethod : "Mètode",
-
-// Select Field Dialog
-DlgSelectName : "Nom",
-DlgSelectValue : "Valor",
-DlgSelectSize : "Mida",
-DlgSelectLines : "Línies",
-DlgSelectChkMulti : "Permet múltiples seleccions",
-DlgSelectOpAvail : "Opcions disponibles",
-DlgSelectOpText : "Text",
-DlgSelectOpValue : "Valor",
-DlgSelectBtnAdd : "Afegeix",
-DlgSelectBtnModify : "Modifica",
-DlgSelectBtnUp : "Amunt",
-DlgSelectBtnDown : "Avall",
-DlgSelectBtnSetValue : "Selecciona per defecte",
-DlgSelectBtnDelete : "Elimina",
-
-// Textarea Dialog
-DlgTextareaName : "Nom",
-DlgTextareaCols : "Columnes",
-DlgTextareaRows : "Files",
-
-// Text Field Dialog
-DlgTextName : "Nom",
-DlgTextValue : "Valor",
-DlgTextCharWidth : "Amplada",
-DlgTextMaxChars : "Nombre màxim de caràcters",
-DlgTextType : "Tipus",
-DlgTextTypeText : "Text",
-DlgTextTypePass : "Contrasenya",
-
-// Hidden Field Dialog
-DlgHiddenName : "Nom",
-DlgHiddenValue : "Valor",
-
-// Bulleted List Dialog
-BulletedListProp : "Propietats de la llista de pics",
-NumberedListProp : "Propietats de llista numerada",
-DlgLstStart : "Inici",
-DlgLstType : "Tipus",
-DlgLstTypeCircle : "Cercle",
-DlgLstTypeDisc : "Disc",
-DlgLstTypeSquare : "Quadrat",
-DlgLstTypeNumbers : "Números (1, 2, 3)",
-DlgLstTypeLCase : "Lletres minúscules (a, b, c)",
-DlgLstTypeUCase : "Lletres majúscules (A, B, C)",
-DlgLstTypeSRoman : "Números romans en minúscules (i, ii, iii)",
-DlgLstTypeLRoman : "Números romans en majúscules (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "General",
-DlgDocBackTab : "Fons",
-DlgDocColorsTab : "Colors i marges",
-DlgDocMetaTab : "Metadades",
-
-DlgDocPageTitle : "Títol de la pàgina",
-DlgDocLangDir : "Direcció idioma",
-DlgDocLangDirLTR : "Esquerra a dreta (LTR)",
-DlgDocLangDirRTL : "Dreta a esquerra (RTL)",
-DlgDocLangCode : "Codi d'idioma",
-DlgDocCharSet : "Codificació de conjunt de caràcters",
-DlgDocCharSetCE : "Centreeuropeu",
-DlgDocCharSetCT : "Xinès tradicional (Big5)",
-DlgDocCharSetCR : "Ciríl·lic",
-DlgDocCharSetGR : "Grec",
-DlgDocCharSetJP : "Japonès",
-DlgDocCharSetKR : "Coreà",
-DlgDocCharSetTR : "Turc",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Europeu occidental",
-DlgDocCharSetOther : "Una altra codificació de caràcters",
-
-DlgDocDocType : "Capçalera de tipus de document",
-DlgDocDocTypeOther : "Un altra capçalera de tipus de document",
-DlgDocIncXHTML : "Incloure declaracions XHTML",
-DlgDocBgColor : "Color de fons",
-DlgDocBgImage : "URL de la imatge de fons",
-DlgDocBgNoScroll : "Fons fixe",
-DlgDocCText : "Text",
-DlgDocCLink : "Enllaç",
-DlgDocCVisited : "Enllaç visitat",
-DlgDocCActive : "Enllaç actiu",
-DlgDocMargins : "Marges de pàgina",
-DlgDocMaTop : "Cap",
-DlgDocMaLeft : "Esquerra",
-DlgDocMaRight : "Dreta",
-DlgDocMaBottom : "Peu",
-DlgDocMeIndex : "Mots clau per a indexació (separats per coma)",
-DlgDocMeDescr : "Descripció del document",
-DlgDocMeAuthor : "Autor",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Vista prèvia",
-
-// Templates Dialog
-Templates : "Plantilles",
-DlgTemplatesTitle : "Contingut plantilles",
-DlgTemplatesSelMsg : "Si us plau, seleccioneu la plantilla per obrir a l'editor (el contingut actual no serà enregistrat):",
-DlgTemplatesLoading : "Carregant la llista de plantilles. Si us plau, espereu...",
-DlgTemplatesNoTpl : "(No hi ha plantilles definides)",
-DlgTemplatesReplace : "Reemplaça el contingut actual",
-
-// About Dialog
-DlgAboutAboutTab : "Quant a",
-DlgAboutBrowserInfoTab : "Informació del navegador",
-DlgAboutLicenseTab : "Llicència",
-DlgAboutVersion : "versió",
-DlgAboutInfo : "Per a més informació aneu a",
-
-// Div Dialog
-DlgDivGeneralTab : "General",
-DlgDivAdvancedTab : "Avançat",
-DlgDivStyle : "Estil",
-DlgDivInlineStyle : "Estil en línia"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/cs.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/cs.js
deleted file mode 100755
index 1f3181a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/cs.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Czech language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Skrýt panel nástrojů",
-ToolbarExpand : "Zobrazit panel nástrojů",
-
-// Toolbar Items and Context Menu
-Save : "Uložit",
-NewPage : "Nová stránka",
-Preview : "Náhled",
-Cut : "Vyjmout",
-Copy : "Kopírovat",
-Paste : "Vložit",
-PasteText : "Vložit jako čistý text",
-PasteWord : "Vložit z Wordu",
-Print : "Tisk",
-SelectAll : "Vybrat vše",
-RemoveFormat : "Odstranit formátování",
-InsertLinkLbl : "Odkaz",
-InsertLink : "Vložit/změnit odkaz",
-RemoveLink : "Odstranit odkaz",
-VisitLink : "Otevřít odkaz",
-Anchor : "Vložít/změnit záložku",
-AnchorDelete : "Odstranit kotvu",
-InsertImageLbl : "Obrázek",
-InsertImage : "Vložit/změnit obrázek",
-InsertFlashLbl : "Flash",
-InsertFlash : "Vložit/Upravit Flash",
-InsertTableLbl : "Tabulka",
-InsertTable : "Vložit/změnit tabulku",
-InsertLineLbl : "Linka",
-InsertLine : "Vložit vodorovnou linku",
-InsertSpecialCharLbl: "Speciální znaky",
-InsertSpecialChar : "Vložit speciální znaky",
-InsertSmileyLbl : "Smajlíky",
-InsertSmiley : "Vložit smajlík",
-About : "O aplikaci FCKeditor",
-Bold : "Tučné",
-Italic : "Kurzíva",
-Underline : "Podtržené",
-StrikeThrough : "Přeškrtnuté",
-Subscript : "Dolní index",
-Superscript : "Horní index",
-LeftJustify : "Zarovnat vlevo",
-CenterJustify : "Zarovnat na střed",
-RightJustify : "Zarovnat vpravo",
-BlockJustify : "Zarovnat do bloku",
-DecreaseIndent : "Zmenšit odsazení",
-IncreaseIndent : "Zvětšit odsazení",
-Blockquote : "Citace",
-CreateDiv : "Vytvořit Div kontejner",
-EditDiv : "Upravit Div kontejner",
-DeleteDiv : "Odstranit Div kontejner",
-Undo : "Zpět",
-Redo : "Znovu",
-NumberedListLbl : "Číslování",
-NumberedList : "Vložit/odstranit číslovaný seznam",
-BulletedListLbl : "Odrážky",
-BulletedList : "Vložit/odstranit odrážky",
-ShowTableBorders : "Zobrazit okraje tabulek",
-ShowDetails : "Zobrazit podrobnosti",
-Style : "Styl",
-FontFormat : "Formát",
-Font : "Písmo",
-FontSize : "Velikost",
-TextColor : "Barva textu",
-BGColor : "Barva pozadí",
-Source : "Zdroj",
-Find : "Hledat",
-Replace : "Nahradit",
-SpellCheck : "Zkontrolovat pravopis",
-UniversalKeyboard : "Univerzální klávesnice",
-PageBreakLbl : "Konec stránky",
-PageBreak : "Vložit konec stránky",
-
-Form : "Formulář",
-Checkbox : "Zaškrtávací políčko",
-RadioButton : "Přepínač",
-TextField : "Textové pole",
-Textarea : "Textová oblast",
-HiddenField : "Skryté pole",
-Button : "Tlačítko",
-SelectionField : "Seznam",
-ImageButton : "Obrázkové tlačítko",
-
-FitWindow : "Maximalizovat velikost editoru",
-ShowBlocks : "Ukázat bloky",
-
-// Context Menu
-EditLink : "Změnit odkaz",
-CellCM : "Buňka",
-RowCM : "Řádek",
-ColumnCM : "Sloupec",
-InsertRowAfter : "Vložit řádek za",
-InsertRowBefore : "Vložit řádek před",
-DeleteRows : "Smazat řádky",
-InsertColumnAfter : "Vložit sloupec za",
-InsertColumnBefore : "Vložit sloupec před",
-DeleteColumns : "Smazat sloupec",
-InsertCellAfter : "Vložit buňku za",
-InsertCellBefore : "Vložit buňku před",
-DeleteCells : "Smazat buňky",
-MergeCells : "Sloučit buňky",
-MergeRight : "Sloučit doprava",
-MergeDown : "Sloučit dolů",
-HorizontalSplitCell : "Rozdělit buňky vodorovně",
-VerticalSplitCell : "Rozdělit buňky svisle",
-TableDelete : "Smazat tabulku",
-CellProperties : "Vlastnosti buňky",
-TableProperties : "Vlastnosti tabulky",
-ImageProperties : "Vlastnosti obrázku",
-FlashProperties : "Vlastnosti Flashe",
-
-AnchorProp : "Vlastnosti záložky",
-ButtonProp : "Vlastnosti tlačítka",
-CheckboxProp : "Vlastnosti zaškrtávacího políčka",
-HiddenFieldProp : "Vlastnosti skrytého pole",
-RadioButtonProp : "Vlastnosti přepínače",
-ImageButtonProp : "Vlastností obrázkového tlačítka",
-TextFieldProp : "Vlastnosti textového pole",
-SelectionFieldProp : "Vlastnosti seznamu",
-TextareaProp : "Vlastnosti textové oblasti",
-FormProp : "Vlastnosti formuláře",
-
-FontFormats : "Normální;Naformátováno;Adresa;Nadpis 1;Nadpis 2;Nadpis 3;Nadpis 4;Nadpis 5;Nadpis 6;Normální (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Probíhá zpracování XHTML. Prosím čekejte...",
-Done : "Hotovo",
-PasteWordConfirm : "Jak je vidět, vkládaný text je kopírován z Wordu. Chcete jej před vložením vyčistit?",
-NotCompatiblePaste : "Tento příkaz je dostupný pouze v Internet Exploreru verze 5.5 nebo vyšší. Chcete vložit text bez vyčištění?",
-UnknownToolbarItem : "Neznámá položka panelu nástrojů \"%1\"",
-UnknownCommand : "Neznámý příkaz \"%1\"",
-NotImplemented : "Příkaz není implementován",
-UnknownToolbarSet : "Panel nástrojů \"%1\" neexistuje",
-NoActiveX : "Nastavení bezpečnosti Vašeho prohlížeče omezuje funkčnost některých jeho možností. Je třeba zapnout volbu \"Spouštět ovládáací prvky ActiveX a moduly plug-in\", jinak nebude možné využívat všechny dosputné schopnosti editoru.",
-BrowseServerBlocked : "Průzkumník zdrojů nelze otevřít. Prověřte, zda nemáte aktivováno blokování popup oken.",
-DialogBlocked : "Nelze otevřít dialogové okno. Prověřte, zda nemáte aktivováno blokování popup oken.",
-VisitLinkBlocked : "Není možné otevřít nové okno. Prověřte, zda všechny nástroje pro blokování vyskakovacích oken jsou vypnuty.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Storno",
-DlgBtnClose : "Zavřít",
-DlgBtnBrowseServer : "Vybrat na serveru",
-DlgAdvancedTag : "Rozšířené",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Prosím vložte URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Orientace jazyka",
-DlgGenLangDirLtr : "Zleva do prava (LTR)",
-DlgGenLangDirRtl : "Zprava do leva (RTL)",
-DlgGenLangCode : "Kód jazyka",
-DlgGenAccessKey : "Přístupový klíč",
-DlgGenName : "Jméno",
-DlgGenTabIndex : "Pořadí prvku",
-DlgGenLongDescr : "Dlouhý popis URL",
-DlgGenClass : "Třída stylu",
-DlgGenTitle : "Pomocný titulek",
-DlgGenContType : "Pomocný typ obsahu",
-DlgGenLinkCharset : "Přiřazená znaková sada",
-DlgGenStyle : "Styl",
-
-// Image Dialog
-DlgImgTitle : "Vlastnosti obrázku",
-DlgImgInfoTab : "Informace o obrázku",
-DlgImgBtnUpload : "Odeslat na server",
-DlgImgURL : "URL",
-DlgImgUpload : "Odeslat",
-DlgImgAlt : "Alternativní text",
-DlgImgWidth : "Šířka",
-DlgImgHeight : "Výška",
-DlgImgLockRatio : "Zámek",
-DlgBtnResetSize : "Původní velikost",
-DlgImgBorder : "Okraje",
-DlgImgHSpace : "H-mezera",
-DlgImgVSpace : "V-mezera",
-DlgImgAlign : "Zarovnání",
-DlgImgAlignLeft : "Vlevo",
-DlgImgAlignAbsBottom: "Zcela dolů",
-DlgImgAlignAbsMiddle: "Doprostřed",
-DlgImgAlignBaseline : "Na účaří",
-DlgImgAlignBottom : "Dolů",
-DlgImgAlignMiddle : "Na střed",
-DlgImgAlignRight : "Vpravo",
-DlgImgAlignTextTop : "Na horní okraj textu",
-DlgImgAlignTop : "Nahoru",
-DlgImgPreview : "Náhled",
-DlgImgAlertUrl : "Zadejte prosím URL obrázku",
-DlgImgLinkTab : "Odkaz",
-
-// Flash Dialog
-DlgFlashTitle : "Vlastnosti Flashe",
-DlgFlashChkPlay : "Automatické spuštění",
-DlgFlashChkLoop : "Opakování",
-DlgFlashChkMenu : "Nabídka Flash",
-DlgFlashScale : "Zobrazit",
-DlgFlashScaleAll : "Zobrazit vše",
-DlgFlashScaleNoBorder : "Bez okraje",
-DlgFlashScaleFit : "Přizpůsobit",
-
-// Link Dialog
-DlgLnkWindowTitle : "Odkaz",
-DlgLnkInfoTab : "Informace o odkazu",
-DlgLnkTargetTab : "Cíl",
-
-DlgLnkType : "Typ odkazu",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Kotva v této stránce",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protokol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Vybrat kotvu",
-DlgLnkAnchorByName : "Podle jména kotvy",
-DlgLnkAnchorById : "Podle Id objektu",
-DlgLnkNoAnchors : "(Ve stránce není definována žádná kotva!)",
-DlgLnkEMail : "E-Mailová adresa",
-DlgLnkEMailSubject : "Předmět zprávy",
-DlgLnkEMailBody : "Tělo zprávy",
-DlgLnkUpload : "Odeslat",
-DlgLnkBtnUpload : "Odeslat na Server",
-
-DlgLnkTarget : "Cíl",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nové okno (_blank)",
-DlgLnkTargetParent : "Rodičovské okno (_parent)",
-DlgLnkTargetSelf : "Stejné okno (_self)",
-DlgLnkTargetTop : "Hlavní okno (_top)",
-DlgLnkTargetFrameName : "Název cílového rámu",
-DlgLnkPopWinName : "Název vyskakovacího okna",
-DlgLnkPopWinFeat : "Vlastnosti vyskakovacího okna",
-DlgLnkPopResize : "Měnitelná velikost",
-DlgLnkPopLocation : "Panel umístění",
-DlgLnkPopMenu : "Panel nabídky",
-DlgLnkPopScroll : "Posuvníky",
-DlgLnkPopStatus : "Stavový řádek",
-DlgLnkPopToolbar : "Panel nástrojů",
-DlgLnkPopFullScrn : "Celá obrazovka (IE)",
-DlgLnkPopDependent : "Závislost (Netscape)",
-DlgLnkPopWidth : "Šířka",
-DlgLnkPopHeight : "Výška",
-DlgLnkPopLeft : "Levý okraj",
-DlgLnkPopTop : "Horní okraj",
-
-DlnLnkMsgNoUrl : "Zadejte prosím URL odkazu",
-DlnLnkMsgNoEMail : "Zadejte prosím e-mailovou adresu",
-DlnLnkMsgNoAnchor : "Vyberte prosím kotvu",
-DlnLnkMsgInvPopName : "Název vyskakovacího okna musí začínat písmenem a nesmí obsahovat mezery",
-
-// Color Dialog
-DlgColorTitle : "Výběr barvy",
-DlgColorBtnClear : "Vymazat",
-DlgColorHighlight : "Zvýrazněná",
-DlgColorSelected : "Vybraná",
-
-// Smiley Dialog
-DlgSmileyTitle : "Vkládání smajlíků",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Výběr speciálního znaku",
-
-// Table Dialog
-DlgTableTitle : "Vlastnosti tabulky",
-DlgTableRows : "Řádky",
-DlgTableColumns : "Sloupce",
-DlgTableBorder : "Ohraničení",
-DlgTableAlign : "Zarovnání",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Vlevo",
-DlgTableAlignCenter : "Na střed",
-DlgTableAlignRight : "Vpravo",
-DlgTableWidth : "Šířka",
-DlgTableWidthPx : "bodů",
-DlgTableWidthPc : "procent",
-DlgTableHeight : "Výška",
-DlgTableCellSpace : "Vzdálenost buněk",
-DlgTableCellPad : "Odsazení obsahu",
-DlgTableCaption : "Popis",
-DlgTableSummary : "Souhrn",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Vlastnosti buňky",
-DlgCellWidth : "Šířka",
-DlgCellWidthPx : "bodů",
-DlgCellWidthPc : "procent",
-DlgCellHeight : "Výška",
-DlgCellWordWrap : "Zalamování",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Ano",
-DlgCellWordWrapNo : "Ne",
-DlgCellHorAlign : "Vodorovné zarovnání",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Vlevo",
-DlgCellHorAlignCenter : "Na střed",
-DlgCellHorAlignRight: "Vpravo",
-DlgCellVerAlign : "Svislé zarovnání",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Nahoru",
-DlgCellVerAlignMiddle : "Doprostřed",
-DlgCellVerAlignBottom : "Dolů",
-DlgCellVerAlignBaseline : "Na účaří",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Sloučené řádky",
-DlgCellCollSpan : "Sloučené sloupce",
-DlgCellBackColor : "Barva pozadí",
-DlgCellBorderColor : "Barva ohraničení",
-DlgCellBtnSelect : "Výběr...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Najít a nahradit",
-
-// Find Dialog
-DlgFindTitle : "Hledat",
-DlgFindFindBtn : "Hledat",
-DlgFindNotFoundMsg : "Hledaný text nebyl nalezen.",
-
-// Replace Dialog
-DlgReplaceTitle : "Nahradit",
-DlgReplaceFindLbl : "Co hledat:",
-DlgReplaceReplaceLbl : "Čím nahradit:",
-DlgReplaceCaseChk : "Rozlišovat velikost písma",
-DlgReplaceReplaceBtn : "Nahradit",
-DlgReplaceReplAllBtn : "Nahradit vše",
-DlgReplaceWordChk : "Pouze celá slova",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Bezpečnostní nastavení Vašeho prohlížeče nedovolují editoru spustit funkci pro vyjmutí zvoleného textu do schránky. Prosím vyjměte zvolený text do schránky pomocí klávesnice (Ctrl+X).",
-PasteErrorCopy : "Bezpečnostní nastavení Vašeho prohlížeče nedovolují editoru spustit funkci pro kopírování zvoleného textu do schránky. Prosím zkopírujte zvolený text do schránky pomocí klávesnice (Ctrl+C).",
-
-PasteAsText : "Vložit jako čistý text",
-PasteFromWord : "Vložit text z Wordu",
-
-DlgPasteMsg2 : "Do následujícího pole vložte požadovaný obsah pomocí klávesnice (Ctrl+V ) a stiskněte OK .",
-DlgPasteSec : "Z důvodů nastavení bezpečnosti Vašeho prohlížeče nemůže editor přistupovat přímo do schránky. Obsah schránky prosím vložte znovu do tohoto okna.",
-DlgPasteIgnoreFont : "Ignorovat písmo",
-DlgPasteRemoveStyles : "Odstranit styly",
-
-// Color Picker
-ColorAutomatic : "Automaticky",
-ColorMoreColors : "Více barev...",
-
-// Document Properties
-DocProps : "Vlastnosti dokumentu",
-
-// Anchor Dialog
-DlgAnchorTitle : "Vlastnosti záložky",
-DlgAnchorName : "Název záložky",
-DlgAnchorErrorName : "Zadejte prosím název záložky",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Není ve slovníku",
-DlgSpellChangeTo : "Změnit na",
-DlgSpellBtnIgnore : "Přeskočit",
-DlgSpellBtnIgnoreAll : "Přeskakovat vše",
-DlgSpellBtnReplace : "Zaměnit",
-DlgSpellBtnReplaceAll : "Zaměňovat vše",
-DlgSpellBtnUndo : "Zpět",
-DlgSpellNoSuggestions : "- žádné návrhy -",
-DlgSpellProgress : "Probíhá kontrola pravopisu...",
-DlgSpellNoMispell : "Kontrola pravopisu dokončena: Žádné pravopisné chyby nenalezeny",
-DlgSpellNoChanges : "Kontrola pravopisu dokončena: Beze změn",
-DlgSpellOneChange : "Kontrola pravopisu dokončena: Jedno slovo změněno",
-DlgSpellManyChanges : "Kontrola pravopisu dokončena: %1 slov změněno",
-
-IeSpellDownload : "Kontrola pravopisu není nainstalována. Chcete ji nyní stáhnout?",
-
-// Button Dialog
-DlgButtonText : "Popisek",
-DlgButtonType : "Typ",
-DlgButtonTypeBtn : "Tlačítko",
-DlgButtonTypeSbm : "Odeslat",
-DlgButtonTypeRst : "Obnovit",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Název",
-DlgCheckboxValue : "Hodnota",
-DlgCheckboxSelected : "Zaškrtnuto",
-
-// Form Dialog
-DlgFormName : "Název",
-DlgFormAction : "Akce",
-DlgFormMethod : "Metoda",
-
-// Select Field Dialog
-DlgSelectName : "Název",
-DlgSelectValue : "Hodnota",
-DlgSelectSize : "Velikost",
-DlgSelectLines : "Řádků",
-DlgSelectChkMulti : "Povolit mnohonásobné výběry",
-DlgSelectOpAvail : "Dostupná nastavení",
-DlgSelectOpText : "Text",
-DlgSelectOpValue : "Hodnota",
-DlgSelectBtnAdd : "Přidat",
-DlgSelectBtnModify : "Změnit",
-DlgSelectBtnUp : "Nahoru",
-DlgSelectBtnDown : "Dolů",
-DlgSelectBtnSetValue : "Nastavit jako vybranou hodnotu",
-DlgSelectBtnDelete : "Smazat",
-
-// Textarea Dialog
-DlgTextareaName : "Název",
-DlgTextareaCols : "Sloupců",
-DlgTextareaRows : "Řádků",
-
-// Text Field Dialog
-DlgTextName : "Název",
-DlgTextValue : "Hodnota",
-DlgTextCharWidth : "Šířka ve znacích",
-DlgTextMaxChars : "Maximální počet znaků",
-DlgTextType : "Typ",
-DlgTextTypeText : "Text",
-DlgTextTypePass : "Heslo",
-
-// Hidden Field Dialog
-DlgHiddenName : "Název",
-DlgHiddenValue : "Hodnota",
-
-// Bulleted List Dialog
-BulletedListProp : "Vlastnosti odrážek",
-NumberedListProp : "Vlastnosti číslovaného seznamu",
-DlgLstStart : "Začátek",
-DlgLstType : "Typ",
-DlgLstTypeCircle : "Kružnice",
-DlgLstTypeDisc : "Kruh",
-DlgLstTypeSquare : "Čtverec",
-DlgLstTypeNumbers : "Čísla (1, 2, 3)",
-DlgLstTypeLCase : "Malá písmena (a, b, c)",
-DlgLstTypeUCase : "Velká písmena (A, B, C)",
-DlgLstTypeSRoman : "Malé římská číslice (i, ii, iii)",
-DlgLstTypeLRoman : "Velké římské číslice (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Obecné",
-DlgDocBackTab : "Pozadí",
-DlgDocColorsTab : "Barvy a okraje",
-DlgDocMetaTab : "Metadata",
-
-DlgDocPageTitle : "Titulek stránky",
-DlgDocLangDir : "Směr jazyku",
-DlgDocLangDirLTR : "Zleva do prava ",
-DlgDocLangDirRTL : "Zprava doleva",
-DlgDocLangCode : "Kód jazyku",
-DlgDocCharSet : "Znaková sada",
-DlgDocCharSetCE : "Středoevropské jazyky",
-DlgDocCharSetCT : "Tradiční čínština (Big5)",
-DlgDocCharSetCR : "Cyrilice",
-DlgDocCharSetGR : "Řečtina",
-DlgDocCharSetJP : "Japonština",
-DlgDocCharSetKR : "Korejština",
-DlgDocCharSetTR : "Turečtina",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Západoevropské jazyky",
-DlgDocCharSetOther : "Další znaková sada",
-
-DlgDocDocType : "Typ dokumentu",
-DlgDocDocTypeOther : "Jiný typ dokumetu",
-DlgDocIncXHTML : "Zahrnou deklarace XHTML",
-DlgDocBgColor : "Barva pozadí",
-DlgDocBgImage : "URL obrázku na pozadí",
-DlgDocBgNoScroll : "Nerolovatelné pozadí",
-DlgDocCText : "Text",
-DlgDocCLink : "Odkaz",
-DlgDocCVisited : "Navštívený odkaz",
-DlgDocCActive : "Vybraný odkaz",
-DlgDocMargins : "Okraje stránky",
-DlgDocMaTop : "Horní",
-DlgDocMaLeft : "Levý",
-DlgDocMaRight : "Pravý",
-DlgDocMaBottom : "Dolní",
-DlgDocMeIndex : "Klíčová slova (oddělená čárkou)",
-DlgDocMeDescr : "Popis dokumentu",
-DlgDocMeAuthor : "Autor",
-DlgDocMeCopy : "Autorská práva",
-DlgDocPreview : "Náhled",
-
-// Templates Dialog
-Templates : "Šablony",
-DlgTemplatesTitle : "Šablony obsahu",
-DlgTemplatesSelMsg : "Prosím zvolte šablonu pro otevření v editoru (aktuální obsah editoru bude ztracen):",
-DlgTemplatesLoading : "Nahrávám přeheld šablon. Prosím čekejte...",
-DlgTemplatesNoTpl : "(Není definována žádná šablona)",
-DlgTemplatesReplace : "Nahradit aktuální obsah",
-
-// About Dialog
-DlgAboutAboutTab : "O aplikaci",
-DlgAboutBrowserInfoTab : "Informace o prohlížeči",
-DlgAboutLicenseTab : "Licence",
-DlgAboutVersion : "verze",
-DlgAboutInfo : "Více informací získáte na",
-
-// Div Dialog
-DlgDivGeneralTab : "Obecné",
-DlgDivAdvancedTab : "Rozšířené",
-DlgDivStyle : "Styl",
-DlgDivInlineStyle : "Vložený styl"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/da.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/da.js
deleted file mode 100755
index 9f33e5e..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/da.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Danish language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Skjul værktøjslinier",
-ToolbarExpand : "Vis værktøjslinier",
-
-// Toolbar Items and Context Menu
-Save : "Gem",
-NewPage : "Ny side",
-Preview : "Vis eksempel",
-Cut : "Klip",
-Copy : "Kopier",
-Paste : "Indsæt",
-PasteText : "Indsæt som ikke-formateret tekst",
-PasteWord : "Indsæt fra Word",
-Print : "Udskriv",
-SelectAll : "Vælg alt",
-RemoveFormat : "Fjern formatering",
-InsertLinkLbl : "Hyperlink",
-InsertLink : "Indsæt/rediger hyperlink",
-RemoveLink : "Fjern hyperlink",
-VisitLink : "Åbn hyperlink",
-Anchor : "Indsæt/rediger bogmærke",
-AnchorDelete : "Fjern bogmærke",
-InsertImageLbl : "Indsæt billede",
-InsertImage : "Indsæt/rediger billede",
-InsertFlashLbl : "Flash",
-InsertFlash : "Indsæt/rediger Flash",
-InsertTableLbl : "Table",
-InsertTable : "Indsæt/rediger tabel",
-InsertLineLbl : "Linie",
-InsertLine : "Indsæt vandret linie",
-InsertSpecialCharLbl: "Symbol",
-InsertSpecialChar : "Indsæt symbol",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Indsæt smiley",
-About : "Om FCKeditor",
-Bold : "Fed",
-Italic : "Kursiv",
-Underline : "Understreget",
-StrikeThrough : "Overstreget",
-Subscript : "Sænket skrift",
-Superscript : "Hævet skrift",
-LeftJustify : "Venstrestillet",
-CenterJustify : "Centreret",
-RightJustify : "Højrestillet",
-BlockJustify : "Lige margener",
-DecreaseIndent : "Formindsk indrykning",
-IncreaseIndent : "Forøg indrykning",
-Blockquote : "Blokcitat",
-CreateDiv : "Opret div container",
-EditDiv : "Rediger div container",
-DeleteDiv : "Fjern div container",
-Undo : "Fortryd",
-Redo : "Annuller fortryd",
-NumberedListLbl : "Talopstilling",
-NumberedList : "Indsæt/fjern talopstilling",
-BulletedListLbl : "Punktopstilling",
-BulletedList : "Indsæt/fjern punktopstilling",
-ShowTableBorders : "Vis tabelkanter",
-ShowDetails : "Vis detaljer",
-Style : "Typografi",
-FontFormat : "Formatering",
-Font : "Skrifttype",
-FontSize : "Skriftstørrelse",
-TextColor : "Tekstfarve",
-BGColor : "Baggrundsfarve",
-Source : "Kilde",
-Find : "Søg",
-Replace : "Erstat",
-SpellCheck : "Stavekontrol",
-UniversalKeyboard : "Universaltastatur",
-PageBreakLbl : "Sidskift",
-PageBreak : "Indsæt sideskift",
-
-Form : "Indsæt formular",
-Checkbox : "Indsæt afkrydsningsfelt",
-RadioButton : "Indsæt alternativknap",
-TextField : "Indsæt tekstfelt",
-Textarea : "Indsæt tekstboks",
-HiddenField : "Indsæt skjult felt",
-Button : "Indsæt knap",
-SelectionField : "Indsæt liste",
-ImageButton : "Indsæt billedknap",
-
-FitWindow : "Maksimer editor vinduet",
-ShowBlocks : "Show Blocks", //MISSING
-
-// Context Menu
-EditLink : "Rediger hyperlink",
-CellCM : "Celle",
-RowCM : "Række",
-ColumnCM : "Kolonne",
-InsertRowAfter : "Indsæt række efter",
-InsertRowBefore : "Indsæt række før",
-DeleteRows : "Slet række",
-InsertColumnAfter : "Indsæt kolonne efter",
-InsertColumnBefore : "Indsæt kolonne før",
-DeleteColumns : "Slet kolonne",
-InsertCellAfter : "Indsæt celle efter",
-InsertCellBefore : "Indsæt celle før",
-DeleteCells : "Slet celle",
-MergeCells : "Flet celler",
-MergeRight : "Flet til højre",
-MergeDown : "Flet nedad",
-HorizontalSplitCell : "Del celle vandret",
-VerticalSplitCell : "Del celle lodret",
-TableDelete : "Slet tabel",
-CellProperties : "Egenskaber for celle",
-TableProperties : "Egenskaber for tabel",
-ImageProperties : "Egenskaber for billede",
-FlashProperties : "Egenskaber for Flash",
-
-AnchorProp : "Egenskaber for bogmærke",
-ButtonProp : "Egenskaber for knap",
-CheckboxProp : "Egenskaber for afkrydsningsfelt",
-HiddenFieldProp : "Egenskaber for skjult felt",
-RadioButtonProp : "Egenskaber for alternativknap",
-ImageButtonProp : "Egenskaber for billedknap",
-TextFieldProp : "Egenskaber for tekstfelt",
-SelectionFieldProp : "Egenskaber for liste",
-TextareaProp : "Egenskaber for tekstboks",
-FormProp : "Egenskaber for formular",
-
-FontFormats : "Normal;Formateret;Adresse;Overskrift 1;Overskrift 2;Overskrift 3;Overskrift 4;Overskrift 5;Overskrift 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Behandler XHTML...",
-Done : "Færdig",
-PasteWordConfirm : "Den tekst du forsøger at indsætte ser ud til at komme fra Word. Vil du rense teksten før den indsættes?",
-NotCompatiblePaste : "Denne kommando er tilgændelig i Internet Explorer 5.5 eller senere. Vil du indsætte teksten uden at rense den ?",
-UnknownToolbarItem : "Ukendt værktøjslinjeobjekt \"%1\"!",
-UnknownCommand : "Ukendt kommandonavn \"%1\"!",
-NotImplemented : "Kommandoen er ikke implementeret!",
-UnknownToolbarSet : "Værktøjslinjen \"%1\" eksisterer ikke!",
-NoActiveX : "Din browsers sikkerhedsindstillinger begrænser nogle af editorens muligheder. Slå \"Kør ActiveX-objekter og plug-ins\" til, ellers vil du opleve fejl og manglende muligheder.",
-BrowseServerBlocked : "Browseren kunne ikke åbne de nødvendige ressourcer! Slå pop-up blokering fra.",
-DialogBlocked : "Dialogvinduet kunne ikke åbnes! Slå pop-up blokering fra.",
-VisitLinkBlocked : "Det var ikke muligt at åbne et nyt vindue. Tjek, at ingen popup-blokkere er aktive.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Annuller",
-DlgBtnClose : "Luk",
-DlgBtnBrowseServer : "Gennemse...",
-DlgAdvancedTag : "Avanceret",
-DlgOpOther : "",
-DlgInfoTab : "Generelt",
-DlgAlertUrl : "Indtast URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Tekstretning",
-DlgGenLangDirLtr : "Fra venstre mod højre (LTR)",
-DlgGenLangDirRtl : "Fra højre mod venstre (RTL)",
-DlgGenLangCode : "Sprogkode",
-DlgGenAccessKey : "Genvejstast",
-DlgGenName : "Navn",
-DlgGenTabIndex : "Tabulator indeks",
-DlgGenLongDescr : "Udvidet beskrivelse",
-DlgGenClass : "Typografiark",
-DlgGenTitle : "Titel",
-DlgGenContType : "Indholdstype",
-DlgGenLinkCharset : "Tegnsæt",
-DlgGenStyle : "Typografi",
-
-// Image Dialog
-DlgImgTitle : "Egenskaber for billede",
-DlgImgInfoTab : "Generelt",
-DlgImgBtnUpload : "Upload",
-DlgImgURL : "URL",
-DlgImgUpload : "Upload",
-DlgImgAlt : "Alternativ tekst",
-DlgImgWidth : "Bredde",
-DlgImgHeight : "Højde",
-DlgImgLockRatio : "Lås størrelsesforhold",
-DlgBtnResetSize : "Nulstil størrelse",
-DlgImgBorder : "Ramme",
-DlgImgHSpace : "HMargen",
-DlgImgVSpace : "VMargen",
-DlgImgAlign : "Justering",
-DlgImgAlignLeft : "Venstre",
-DlgImgAlignAbsBottom: "Absolut nederst",
-DlgImgAlignAbsMiddle: "Absolut centreret",
-DlgImgAlignBaseline : "Grundlinje",
-DlgImgAlignBottom : "Nederst",
-DlgImgAlignMiddle : "Centreret",
-DlgImgAlignRight : "Højre",
-DlgImgAlignTextTop : "Toppen af teksten",
-DlgImgAlignTop : "Øverst",
-DlgImgPreview : "Vis eksempel",
-DlgImgAlertUrl : "Indtast stien til billedet",
-DlgImgLinkTab : "Hyperlink",
-
-// Flash Dialog
-DlgFlashTitle : "Egenskaber for Flash",
-DlgFlashChkPlay : "Automatisk afspilning",
-DlgFlashChkLoop : "Gentagelse",
-DlgFlashChkMenu : "Vis Flash menu",
-DlgFlashScale : "Skalér",
-DlgFlashScaleAll : "Vis alt",
-DlgFlashScaleNoBorder : "Ingen ramme",
-DlgFlashScaleFit : "Tilpas størrelse",
-
-// Link Dialog
-DlgLnkWindowTitle : "Egenskaber for hyperlink",
-DlgLnkInfoTab : "Generelt",
-DlgLnkTargetTab : "Mål",
-
-DlgLnkType : "Hyperlink type",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Bogmærke på denne side",
-DlgLnkTypeEMail : "E-mail",
-DlgLnkProto : "Protokol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Vælg et anker",
-DlgLnkAnchorByName : "Efter anker navn",
-DlgLnkAnchorById : "Efter element Id",
-DlgLnkNoAnchors : "(Ingen bogmærker dokumentet)",
-DlgLnkEMail : "E-mailadresse",
-DlgLnkEMailSubject : "Emne",
-DlgLnkEMailBody : "Brødtekst",
-DlgLnkUpload : "Upload",
-DlgLnkBtnUpload : "Upload",
-
-DlgLnkTarget : "Mål",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nyt vindue (_blank)",
-DlgLnkTargetParent : "Overordnet ramme (_parent)",
-DlgLnkTargetSelf : "Samme vindue (_self)",
-DlgLnkTargetTop : "Hele vinduet (_top)",
-DlgLnkTargetFrameName : "Destinationsvinduets navn",
-DlgLnkPopWinName : "Pop-up vinduets navn",
-DlgLnkPopWinFeat : "Egenskaber for pop-up",
-DlgLnkPopResize : "Skalering",
-DlgLnkPopLocation : "Adresselinje",
-DlgLnkPopMenu : "Menulinje",
-DlgLnkPopScroll : "Scrollbars",
-DlgLnkPopStatus : "Statuslinje",
-DlgLnkPopToolbar : "Værktøjslinje",
-DlgLnkPopFullScrn : "Fuld skærm (IE)",
-DlgLnkPopDependent : "Koblet/dependent (Netscape)",
-DlgLnkPopWidth : "Bredde",
-DlgLnkPopHeight : "Højde",
-DlgLnkPopLeft : "Position fra venstre",
-DlgLnkPopTop : "Position fra toppen",
-
-DlnLnkMsgNoUrl : "Indtast hyperlink URL!",
-DlnLnkMsgNoEMail : "Indtast e-mailaddresse!",
-DlnLnkMsgNoAnchor : "Vælg bogmærke!",
-DlnLnkMsgInvPopName : "Navnet på popup'en skal starte med et bogstav og må ikke indeholde mellemrum",
-
-// Color Dialog
-DlgColorTitle : "Vælg farve",
-DlgColorBtnClear : "Nulstil",
-DlgColorHighlight : "Markeret",
-DlgColorSelected : "Valgt",
-
-// Smiley Dialog
-DlgSmileyTitle : "Vælg smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Vælg symbol",
-
-// Table Dialog
-DlgTableTitle : "Egenskaber for tabel",
-DlgTableRows : "Rækker",
-DlgTableColumns : "Kolonner",
-DlgTableBorder : "Rammebredde",
-DlgTableAlign : "Justering",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Venstrestillet",
-DlgTableAlignCenter : "Centreret",
-DlgTableAlignRight : "Højrestillet",
-DlgTableWidth : "Bredde",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "procent",
-DlgTableHeight : "Højde",
-DlgTableCellSpace : "Celleafstand",
-DlgTableCellPad : "Cellemargen",
-DlgTableCaption : "Titel",
-DlgTableSummary : "Resume",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Egenskaber for celle",
-DlgCellWidth : "Bredde",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "procent",
-DlgCellHeight : "Højde",
-DlgCellWordWrap : "Orddeling",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Ja",
-DlgCellWordWrapNo : "Nej",
-DlgCellHorAlign : "Vandret justering",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Venstrestillet",
-DlgCellHorAlignCenter : "Centreret",
-DlgCellHorAlignRight: "Højrestillet",
-DlgCellVerAlign : "Lodret justering",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Øverst",
-DlgCellVerAlignMiddle : "Centreret",
-DlgCellVerAlignBottom : "Nederst",
-DlgCellVerAlignBaseline : "Grundlinje",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Højde i antal rækker",
-DlgCellCollSpan : "Bredde i antal kolonner",
-DlgCellBackColor : "Baggrundsfarve",
-DlgCellBorderColor : "Rammefarve",
-DlgCellBtnSelect : "Vælg...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Søg og erstat",
-
-// Find Dialog
-DlgFindTitle : "Find",
-DlgFindFindBtn : "Find",
-DlgFindNotFoundMsg : "Søgeteksten blev ikke fundet!",
-
-// Replace Dialog
-DlgReplaceTitle : "Erstat",
-DlgReplaceFindLbl : "Søg efter:",
-DlgReplaceReplaceLbl : "Erstat med:",
-DlgReplaceCaseChk : "Forskel på store og små bogstaver",
-DlgReplaceReplaceBtn : "Erstat",
-DlgReplaceReplAllBtn : "Erstat alle",
-DlgReplaceWordChk : "Kun hele ord",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Din browsers sikkerhedsindstillinger tillader ikke editoren at klippe tekst automatisk! Brug i stedet tastaturet til at klippe teksten (Ctrl+X).",
-PasteErrorCopy : "Din browsers sikkerhedsindstillinger tillader ikke editoren at kopiere tekst automatisk! Brug i stedet tastaturet til at kopiere teksten (Ctrl+C).",
-
-PasteAsText : "Indsæt som ikke-formateret tekst",
-PasteFromWord : "Indsæt fra Word",
-
-DlgPasteMsg2 : "Indsæt i feltet herunder (Ctrl+V ) og klik OK .",
-DlgPasteSec : "På grund af browserens sikkerhedsindstillinger kan editoren ikke tilgå udklipsholderen direkte. Du skal indsætte udklipsholderens indhold i dette vindue igen.",
-DlgPasteIgnoreFont : "Ignorer font definitioner",
-DlgPasteRemoveStyles : "Ignorer typografi",
-
-// Color Picker
-ColorAutomatic : "Automatisk",
-ColorMoreColors : "Flere farver...",
-
-// Document Properties
-DocProps : "Egenskaber for dokument",
-
-// Anchor Dialog
-DlgAnchorTitle : "Egenskaber for bogmærke",
-DlgAnchorName : "Bogmærke navn",
-DlgAnchorErrorName : "Indtast bogmærke navn!",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Ikke i ordbogen",
-DlgSpellChangeTo : "Forslag",
-DlgSpellBtnIgnore : "Ignorer",
-DlgSpellBtnIgnoreAll : "Ignorer alle",
-DlgSpellBtnReplace : "Erstat",
-DlgSpellBtnReplaceAll : "Erstat alle",
-DlgSpellBtnUndo : "Tilbage",
-DlgSpellNoSuggestions : "- ingen forslag -",
-DlgSpellProgress : "Stavekontrolen arbejder...",
-DlgSpellNoMispell : "Stavekontrol færdig: Ingen fejl fundet",
-DlgSpellNoChanges : "Stavekontrol færdig: Ingen ord ændret",
-DlgSpellOneChange : "Stavekontrol færdig: Et ord ændret",
-DlgSpellManyChanges : "Stavekontrol færdig: %1 ord ændret",
-
-IeSpellDownload : "Stavekontrol ikke installeret. Vil du hente den nu?",
-
-// Button Dialog
-DlgButtonText : "Tekst",
-DlgButtonType : "Type",
-DlgButtonTypeBtn : "Knap",
-DlgButtonTypeSbm : "Send",
-DlgButtonTypeRst : "Nulstil",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Navn",
-DlgCheckboxValue : "Værdi",
-DlgCheckboxSelected : "Valgt",
-
-// Form Dialog
-DlgFormName : "Navn",
-DlgFormAction : "Handling",
-DlgFormMethod : "Metod",
-
-// Select Field Dialog
-DlgSelectName : "Navn",
-DlgSelectValue : "Værdi",
-DlgSelectSize : "Størrelse",
-DlgSelectLines : "linier",
-DlgSelectChkMulti : "Tillad flere valg",
-DlgSelectOpAvail : "Valgmuligheder",
-DlgSelectOpText : "Tekst",
-DlgSelectOpValue : "Værdi",
-DlgSelectBtnAdd : "Tilføj",
-DlgSelectBtnModify : "Rediger",
-DlgSelectBtnUp : "Op",
-DlgSelectBtnDown : "Ned",
-DlgSelectBtnSetValue : "Sæt som valgt",
-DlgSelectBtnDelete : "Slet",
-
-// Textarea Dialog
-DlgTextareaName : "Navn",
-DlgTextareaCols : "Kolonner",
-DlgTextareaRows : "Rækker",
-
-// Text Field Dialog
-DlgTextName : "Navn",
-DlgTextValue : "Værdi",
-DlgTextCharWidth : "Bredde (tegn)",
-DlgTextMaxChars : "Max antal tegn",
-DlgTextType : "Type",
-DlgTextTypeText : "Tekst",
-DlgTextTypePass : "Adgangskode",
-
-// Hidden Field Dialog
-DlgHiddenName : "Navn",
-DlgHiddenValue : "Værdi",
-
-// Bulleted List Dialog
-BulletedListProp : "Egenskaber for punktopstilling",
-NumberedListProp : "Egenskaber for talopstilling",
-DlgLstStart : "Start",
-DlgLstType : "Type",
-DlgLstTypeCircle : "Cirkel",
-DlgLstTypeDisc : "Udfyldt cirkel",
-DlgLstTypeSquare : "Firkant",
-DlgLstTypeNumbers : "Nummereret (1, 2, 3)",
-DlgLstTypeLCase : "Små bogstaver (a, b, c)",
-DlgLstTypeUCase : "Store bogstaver (A, B, C)",
-DlgLstTypeSRoman : "Små romertal (i, ii, iii)",
-DlgLstTypeLRoman : "Store romertal (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Generelt",
-DlgDocBackTab : "Baggrund",
-DlgDocColorsTab : "Farver og margen",
-DlgDocMetaTab : "Metadata",
-
-DlgDocPageTitle : "Sidetitel",
-DlgDocLangDir : "Sprog",
-DlgDocLangDirLTR : "Fra venstre mod højre (LTR)",
-DlgDocLangDirRTL : "Fra højre mod venstre (RTL)",
-DlgDocLangCode : "Landekode",
-DlgDocCharSet : "Tegnsæt kode",
-DlgDocCharSetCE : "Centraleuropæisk",
-DlgDocCharSetCT : "Traditionel kinesisk (Big5)",
-DlgDocCharSetCR : "Kyrillisk",
-DlgDocCharSetGR : "Græsk",
-DlgDocCharSetJP : "Japansk",
-DlgDocCharSetKR : "Koreansk",
-DlgDocCharSetTR : "Tyrkisk",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Vesteuropæisk",
-DlgDocCharSetOther : "Anden tegnsæt kode",
-
-DlgDocDocType : "Dokumenttype kategori",
-DlgDocDocTypeOther : "Anden dokumenttype kategori",
-DlgDocIncXHTML : "Inkludere XHTML deklartion",
-DlgDocBgColor : "Baggrundsfarve",
-DlgDocBgImage : "Baggrundsbillede URL",
-DlgDocBgNoScroll : "Fastlåst baggrund",
-DlgDocCText : "Tekst",
-DlgDocCLink : "Hyperlink",
-DlgDocCVisited : "Besøgt hyperlink",
-DlgDocCActive : "Aktivt hyperlink",
-DlgDocMargins : "Sidemargen",
-DlgDocMaTop : "Øverst",
-DlgDocMaLeft : "Venstre",
-DlgDocMaRight : "Højre",
-DlgDocMaBottom : "Nederst",
-DlgDocMeIndex : "Dokument index nøgleord (kommasepareret)",
-DlgDocMeDescr : "Dokument beskrivelse",
-DlgDocMeAuthor : "Forfatter",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Vis",
-
-// Templates Dialog
-Templates : "Skabeloner",
-DlgTemplatesTitle : "Indholdsskabeloner",
-DlgTemplatesSelMsg : "Vælg den skabelon, som skal åbnes i editoren. (Nuværende indhold vil blive overskrevet!):",
-DlgTemplatesLoading : "Henter liste over skabeloner...",
-DlgTemplatesNoTpl : "(Der er ikke defineret nogen skabelon!)",
-DlgTemplatesReplace : "Erstat det faktiske indhold",
-
-// About Dialog
-DlgAboutAboutTab : "Om",
-DlgAboutBrowserInfoTab : "Generelt",
-DlgAboutLicenseTab : "Licens",
-DlgAboutVersion : "version",
-DlgAboutInfo : "For yderlig information gå til",
-
-// Div Dialog
-DlgDivGeneralTab : "Generelt",
-DlgDivAdvancedTab : "Avanceret",
-DlgDivStyle : "Style",
-DlgDivInlineStyle : "Inline style"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/de.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/de.js
deleted file mode 100755
index b2724e3..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/de.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * German language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Symbolleiste einklappen",
-ToolbarExpand : "Symbolleiste ausklappen",
-
-// Toolbar Items and Context Menu
-Save : "Speichern",
-NewPage : "Neue Seite",
-Preview : "Vorschau",
-Cut : "Ausschneiden",
-Copy : "Kopieren",
-Paste : "Einfügen",
-PasteText : "aus Textdatei einfügen",
-PasteWord : "aus MS-Word einfügen",
-Print : "Drucken",
-SelectAll : "Alles auswählen",
-RemoveFormat : "Formatierungen entfernen",
-InsertLinkLbl : "Link",
-InsertLink : "Link einfügen/editieren",
-RemoveLink : "Link entfernen",
-VisitLink : "Link aufrufen",
-Anchor : "Anker einfügen/editieren",
-AnchorDelete : "Anker entfernen",
-InsertImageLbl : "Bild",
-InsertImage : "Bild einfügen/editieren",
-InsertFlashLbl : "Flash",
-InsertFlash : "Flash einfügen/editieren",
-InsertTableLbl : "Tabelle",
-InsertTable : "Tabelle einfügen/editieren",
-InsertLineLbl : "Linie",
-InsertLine : "Horizontale Linie einfügen",
-InsertSpecialCharLbl: "Sonderzeichen",
-InsertSpecialChar : "Sonderzeichen einfügen/editieren",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Smiley einfügen",
-About : "Über FCKeditor",
-Bold : "Fett",
-Italic : "Kursiv",
-Underline : "Unterstrichen",
-StrikeThrough : "Durchgestrichen",
-Subscript : "Tiefgestellt",
-Superscript : "Hochgestellt",
-LeftJustify : "Linksbündig",
-CenterJustify : "Zentriert",
-RightJustify : "Rechtsbündig",
-BlockJustify : "Blocksatz",
-DecreaseIndent : "Einzug verringern",
-IncreaseIndent : "Einzug erhöhen",
-Blockquote : "Zitatblock",
-CreateDiv : "Erzeuge Div Block",
-EditDiv : "Bearbeite Div Block",
-DeleteDiv : "Entferne Div Block",
-Undo : "Rückgängig",
-Redo : "Wiederherstellen",
-NumberedListLbl : "Nummerierte Liste",
-NumberedList : "Nummerierte Liste einfügen/entfernen",
-BulletedListLbl : "Liste",
-BulletedList : "Liste einfügen/entfernen",
-ShowTableBorders : "Zeige Tabellenrahmen",
-ShowDetails : "Zeige Details",
-Style : "Stil",
-FontFormat : "Format",
-Font : "Schriftart",
-FontSize : "Größe",
-TextColor : "Textfarbe",
-BGColor : "Hintergrundfarbe",
-Source : "Quellcode",
-Find : "Suchen",
-Replace : "Ersetzen",
-SpellCheck : "Rechtschreibprüfung",
-UniversalKeyboard : "Universal-Tastatur",
-PageBreakLbl : "Seitenumbruch",
-PageBreak : "Seitenumbruch einfügen",
-
-Form : "Formular",
-Checkbox : "Checkbox",
-RadioButton : "Radiobutton",
-TextField : "Textfeld einzeilig",
-Textarea : "Textfeld mehrzeilig",
-HiddenField : "verstecktes Feld",
-Button : "Klickbutton",
-SelectionField : "Auswahlfeld",
-ImageButton : "Bildbutton",
-
-FitWindow : "Editor maximieren",
-ShowBlocks : "Blöcke anzeigen",
-
-// Context Menu
-EditLink : "Link editieren",
-CellCM : "Zelle",
-RowCM : "Zeile",
-ColumnCM : "Spalte",
-InsertRowAfter : "Zeile unterhalb einfügen",
-InsertRowBefore : "Zeile oberhalb einfügen",
-DeleteRows : "Zeile entfernen",
-InsertColumnAfter : "Spalte rechts danach einfügen",
-InsertColumnBefore : "Spalte links davor einfügen",
-DeleteColumns : "Spalte löschen",
-InsertCellAfter : "Zelle danach einfügen",
-InsertCellBefore : "Zelle davor einfügen",
-DeleteCells : "Zelle löschen",
-MergeCells : "Zellen verbinden",
-MergeRight : "nach rechts verbinden",
-MergeDown : "nach unten verbinden",
-HorizontalSplitCell : "Zelle horizontal teilen",
-VerticalSplitCell : "Zelle vertikal teilen",
-TableDelete : "Tabelle löschen",
-CellProperties : "Zellen-Eigenschaften",
-TableProperties : "Tabellen-Eigenschaften",
-ImageProperties : "Bild-Eigenschaften",
-FlashProperties : "Flash-Eigenschaften",
-
-AnchorProp : "Anker-Eigenschaften",
-ButtonProp : "Button-Eigenschaften",
-CheckboxProp : "Checkbox-Eigenschaften",
-HiddenFieldProp : "Verstecktes Feld-Eigenschaften",
-RadioButtonProp : "Optionsfeld-Eigenschaften",
-ImageButtonProp : "Bildbutton-Eigenschaften",
-TextFieldProp : "Textfeld (einzeilig) Eigenschaften",
-SelectionFieldProp : "Auswahlfeld-Eigenschaften",
-TextareaProp : "Textfeld (mehrzeilig) Eigenschaften",
-FormProp : "Formular-Eigenschaften",
-
-FontFormats : "Normal;Formatiert;Addresse;Überschrift 1;Überschrift 2;Überschrift 3;Überschrift 4;Überschrift 5;Überschrift 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Bearbeite XHTML. Bitte warten...",
-Done : "Fertig",
-PasteWordConfirm : "Der Text, den Sie einfügen möchten, scheint aus MS-Word kopiert zu sein. Möchten Sie ihn zuvor bereinigen lassen?",
-NotCompatiblePaste : "Diese Funktion steht nur im Internet Explorer ab Version 5.5 zur Verfügung. Möchten Sie den Text unbereinigt einfügen?",
-UnknownToolbarItem : "Unbekanntes Menüleisten-Objekt \"%1\"",
-UnknownCommand : "Unbekannter Befehl \"%1\"",
-NotImplemented : "Befehl nicht implementiert",
-UnknownToolbarSet : "Menüleiste \"%1\" existiert nicht",
-NoActiveX : "Die Sicherheitseinstellungen Ihres Browsers beschränken evtl. einige Funktionen des Editors. Aktivieren Sie die Option \"ActiveX-Steuerelemente und Plugins ausführen\" in den Sicherheitseinstellungen, um diese Funktionen nutzen zu können",
-BrowseServerBlocked : "Ein Auswahlfenster konnte nicht geöffnet werden. Stellen Sie sicher, das alle Popup-Blocker ausgeschaltet sind.",
-DialogBlocked : "Das Dialog-Fenster konnte nicht geöffnet werden. Stellen Sie sicher, das alle Popup-Blocker ausgeschaltet sind.",
-VisitLinkBlocked : "Es war leider nicht möglich ein neues Fenster zu öffnen. Bitte versichern Sie sich das der Popup-Blocker ausgeschaltet ist.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Abbrechen",
-DlgBtnClose : "Schließen",
-DlgBtnBrowseServer : "Server durchsuchen",
-DlgAdvancedTag : "Erweitert",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Bitte tragen Sie die URL ein",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "ID",
-DlgGenLangDir : "Schreibrichtung",
-DlgGenLangDirLtr : "Links nach Rechts (LTR)",
-DlgGenLangDirRtl : "Rechts nach Links (RTL)",
-DlgGenLangCode : "Sprachenkürzel",
-DlgGenAccessKey : "Zugriffstaste",
-DlgGenName : "Name",
-DlgGenTabIndex : "Tab-Index",
-DlgGenLongDescr : "Langform URL",
-DlgGenClass : "Stylesheet Klasse",
-DlgGenTitle : "Titel Beschreibung",
-DlgGenContType : "Inhaltstyp",
-DlgGenLinkCharset : "Ziel-Zeichensatz",
-DlgGenStyle : "Style",
-
-// Image Dialog
-DlgImgTitle : "Bild-Eigenschaften",
-DlgImgInfoTab : "Bild-Info",
-DlgImgBtnUpload : "Zum Server senden",
-DlgImgURL : "Bildauswahl",
-DlgImgUpload : "Upload",
-DlgImgAlt : "Alternativer Text",
-DlgImgWidth : "Breite",
-DlgImgHeight : "Höhe",
-DlgImgLockRatio : "Größenverhältniss beibehalten",
-DlgBtnResetSize : "Größe zurücksetzen",
-DlgImgBorder : "Rahmen",
-DlgImgHSpace : "Horizontal-Abstand",
-DlgImgVSpace : "Vertikal-Abstand",
-DlgImgAlign : "Ausrichtung",
-DlgImgAlignLeft : "Links",
-DlgImgAlignAbsBottom: "Abs Unten",
-DlgImgAlignAbsMiddle: "Abs Mitte",
-DlgImgAlignBaseline : "Baseline",
-DlgImgAlignBottom : "Unten",
-DlgImgAlignMiddle : "Mitte",
-DlgImgAlignRight : "Rechts",
-DlgImgAlignTextTop : "Text Oben",
-DlgImgAlignTop : "Oben",
-DlgImgPreview : "Vorschau",
-DlgImgAlertUrl : "Bitte geben Sie die Bild-URL an",
-DlgImgLinkTab : "Link",
-
-// Flash Dialog
-DlgFlashTitle : "Flash-Eigenschaften",
-DlgFlashChkPlay : "autom. Abspielen",
-DlgFlashChkLoop : "Endlosschleife",
-DlgFlashChkMenu : "Flash-Menü aktivieren",
-DlgFlashScale : "Skalierung",
-DlgFlashScaleAll : "Alles anzeigen",
-DlgFlashScaleNoBorder : "ohne Rand",
-DlgFlashScaleFit : "Passgenau",
-
-// Link Dialog
-DlgLnkWindowTitle : "Link",
-DlgLnkInfoTab : "Link-Info",
-DlgLnkTargetTab : "Zielseite",
-
-DlgLnkType : "Link-Typ",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Anker in dieser Seite",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protokoll",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Anker auswählen",
-DlgLnkAnchorByName : "nach Anker Name",
-DlgLnkAnchorById : "nach Element Id",
-DlgLnkNoAnchors : "(keine Anker im Dokument vorhanden)",
-DlgLnkEMail : "E-Mail Addresse",
-DlgLnkEMailSubject : "Betreffzeile",
-DlgLnkEMailBody : "Nachrichtentext",
-DlgLnkUpload : "Upload",
-DlgLnkBtnUpload : "Zum Server senden",
-
-DlgLnkTarget : "Zielseite",
-DlgLnkTargetFrame : " ",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Neues Fenster (_blank)",
-DlgLnkTargetParent : "Oberes Fenster (_parent)",
-DlgLnkTargetSelf : "Gleiches Fenster (_self)",
-DlgLnkTargetTop : "Oberstes Fenster (_top)",
-DlgLnkTargetFrameName : "Ziel-Fenster-Name",
-DlgLnkPopWinName : "Pop-up Fenster-Name",
-DlgLnkPopWinFeat : "Pop-up Fenster-Eigenschaften",
-DlgLnkPopResize : "Vergrößerbar",
-DlgLnkPopLocation : "Adress-Leiste",
-DlgLnkPopMenu : "Menü-Leiste",
-DlgLnkPopScroll : "Rollbalken",
-DlgLnkPopStatus : "Statusleiste",
-DlgLnkPopToolbar : "Werkzeugleiste",
-DlgLnkPopFullScrn : "Vollbild (IE)",
-DlgLnkPopDependent : "Abhängig (Netscape)",
-DlgLnkPopWidth : "Breite",
-DlgLnkPopHeight : "Höhe",
-DlgLnkPopLeft : "Linke Position",
-DlgLnkPopTop : "Obere Position",
-
-DlnLnkMsgNoUrl : "Bitte geben Sie die Link-URL an",
-DlnLnkMsgNoEMail : "Bitte geben Sie e-Mail Adresse an",
-DlnLnkMsgNoAnchor : "Bitte wählen Sie einen Anker aus",
-DlnLnkMsgInvPopName : "Der Name des Popups muss mit einem Buchstaben beginnen und darf keine Leerzeichen enthalten",
-
-// Color Dialog
-DlgColorTitle : "Farbauswahl",
-DlgColorBtnClear : "Keine Farbe",
-DlgColorHighlight : "Vorschau",
-DlgColorSelected : "Ausgewählt",
-
-// Smiley Dialog
-DlgSmileyTitle : "Smiley auswählen",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Sonderzeichen auswählen",
-
-// Table Dialog
-DlgTableTitle : "Tabellen-Eigenschaften",
-DlgTableRows : "Zeile",
-DlgTableColumns : "Spalte",
-DlgTableBorder : "Rahmen",
-DlgTableAlign : "Ausrichtung",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Links",
-DlgTableAlignCenter : "Zentriert",
-DlgTableAlignRight : "Rechts",
-DlgTableWidth : "Breite",
-DlgTableWidthPx : "Pixel",
-DlgTableWidthPc : "%",
-DlgTableHeight : "Höhe",
-DlgTableCellSpace : "Zellenabstand außen",
-DlgTableCellPad : "Zellenabstand innen",
-DlgTableCaption : "Überschrift",
-DlgTableSummary : "Inhaltsübersicht",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Zellen-Eigenschaften",
-DlgCellWidth : "Breite",
-DlgCellWidthPx : "Pixel",
-DlgCellWidthPc : "%",
-DlgCellHeight : "Höhe",
-DlgCellWordWrap : "Umbruch",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Ja",
-DlgCellWordWrapNo : "Nein",
-DlgCellHorAlign : "Horizontale Ausrichtung",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Links",
-DlgCellHorAlignCenter : "Zentriert",
-DlgCellHorAlignRight: "Rechts",
-DlgCellVerAlign : "Vertikale Ausrichtung",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Oben",
-DlgCellVerAlignMiddle : "Mitte",
-DlgCellVerAlignBottom : "Unten",
-DlgCellVerAlignBaseline : "Grundlinie",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Zeilen zusammenfassen",
-DlgCellCollSpan : "Spalten zusammenfassen",
-DlgCellBackColor : "Hintergrundfarbe",
-DlgCellBorderColor : "Rahmenfarbe",
-DlgCellBtnSelect : "Auswahl...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Suchen und Ersetzen",
-
-// Find Dialog
-DlgFindTitle : "Finden",
-DlgFindFindBtn : "Finden",
-DlgFindNotFoundMsg : "Der gesuchte Text wurde nicht gefunden.",
-
-// Replace Dialog
-DlgReplaceTitle : "Ersetzen",
-DlgReplaceFindLbl : "Suche nach:",
-DlgReplaceReplaceLbl : "Ersetze mit:",
-DlgReplaceCaseChk : "Groß-Kleinschreibung beachten",
-DlgReplaceReplaceBtn : "Ersetzen",
-DlgReplaceReplAllBtn : "Alle Ersetzen",
-DlgReplaceWordChk : "Nur ganze Worte suchen",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch auszuschneiden. Bitte benutzen Sie die System-Zwischenablage über STRG-X (ausschneiden) und STRG-V (einfügen).",
-PasteErrorCopy : "Die Sicherheitseinstellungen Ihres Browsers lassen es nicht zu, den Text automatisch kopieren. Bitte benutzen Sie die System-Zwischenablage über STRG-C (kopieren).",
-
-PasteAsText : "Als Text einfügen",
-PasteFromWord : "Aus Word einfügen",
-
-DlgPasteMsg2 : "Bitte fügen Sie den Text in der folgenden Box über die Tastatur (mit Strg+V ) ein und bestätigen Sie mit OK .",
-DlgPasteSec : "Aufgrund von Sicherheitsbeschränkungen Ihres Browsers kann der Editor nicht direkt auf die Zwischenablage zugreifen. Bitte fügen Sie den Inhalt erneut in diesem Fenster ein.",
-DlgPasteIgnoreFont : "Ignoriere Schriftart-Definitionen",
-DlgPasteRemoveStyles : "Entferne Style-Definitionen",
-
-// Color Picker
-ColorAutomatic : "Automatisch",
-ColorMoreColors : "Weitere Farben...",
-
-// Document Properties
-DocProps : "Dokument-Eigenschaften",
-
-// Anchor Dialog
-DlgAnchorTitle : "Anker-Eigenschaften",
-DlgAnchorName : "Anker Name",
-DlgAnchorErrorName : "Bitte geben Sie den Namen des Ankers ein",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Nicht im Wörterbuch",
-DlgSpellChangeTo : "Ändern in",
-DlgSpellBtnIgnore : "Ignorieren",
-DlgSpellBtnIgnoreAll : "Alle Ignorieren",
-DlgSpellBtnReplace : "Ersetzen",
-DlgSpellBtnReplaceAll : "Alle Ersetzen",
-DlgSpellBtnUndo : "Rückgängig",
-DlgSpellNoSuggestions : " - keine Vorschläge - ",
-DlgSpellProgress : "Rechtschreibprüfung läuft...",
-DlgSpellNoMispell : "Rechtschreibprüfung abgeschlossen - keine Fehler gefunden",
-DlgSpellNoChanges : "Rechtschreibprüfung abgeschlossen - keine Worte geändert",
-DlgSpellOneChange : "Rechtschreibprüfung abgeschlossen - ein Wort geändert",
-DlgSpellManyChanges : "Rechtschreibprüfung abgeschlossen - %1 Wörter geändert",
-
-IeSpellDownload : "Rechtschreibprüfung nicht installiert. Möchten Sie sie jetzt herunterladen?",
-
-// Button Dialog
-DlgButtonText : "Text (Wert)",
-DlgButtonType : "Typ",
-DlgButtonTypeBtn : "Button",
-DlgButtonTypeSbm : "Absenden",
-DlgButtonTypeRst : "Zurücksetzen",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Name",
-DlgCheckboxValue : "Wert",
-DlgCheckboxSelected : "ausgewählt",
-
-// Form Dialog
-DlgFormName : "Name",
-DlgFormAction : "Action",
-DlgFormMethod : "Method",
-
-// Select Field Dialog
-DlgSelectName : "Name",
-DlgSelectValue : "Wert",
-DlgSelectSize : "Größe",
-DlgSelectLines : "Linien",
-DlgSelectChkMulti : "Erlaube Mehrfachauswahl",
-DlgSelectOpAvail : "Mögliche Optionen",
-DlgSelectOpText : "Text",
-DlgSelectOpValue : "Wert",
-DlgSelectBtnAdd : "Hinzufügen",
-DlgSelectBtnModify : "Ändern",
-DlgSelectBtnUp : "Hoch",
-DlgSelectBtnDown : "Runter",
-DlgSelectBtnSetValue : "Setze als Standardwert",
-DlgSelectBtnDelete : "Entfernen",
-
-// Textarea Dialog
-DlgTextareaName : "Name",
-DlgTextareaCols : "Spalten",
-DlgTextareaRows : "Reihen",
-
-// Text Field Dialog
-DlgTextName : "Name",
-DlgTextValue : "Wert",
-DlgTextCharWidth : "Zeichenbreite",
-DlgTextMaxChars : "Max. Zeichen",
-DlgTextType : "Typ",
-DlgTextTypeText : "Text",
-DlgTextTypePass : "Passwort",
-
-// Hidden Field Dialog
-DlgHiddenName : "Name",
-DlgHiddenValue : "Wert",
-
-// Bulleted List Dialog
-BulletedListProp : "Listen-Eigenschaften",
-NumberedListProp : "Nummerierte Listen-Eigenschaften",
-DlgLstStart : "Start",
-DlgLstType : "Typ",
-DlgLstTypeCircle : "Ring",
-DlgLstTypeDisc : "Kreis",
-DlgLstTypeSquare : "Quadrat",
-DlgLstTypeNumbers : "Nummern (1, 2, 3)",
-DlgLstTypeLCase : "Kleinbuchstaben (a, b, c)",
-DlgLstTypeUCase : "Großbuchstaben (A, B, C)",
-DlgLstTypeSRoman : "Kleine römische Zahlen (i, ii, iii)",
-DlgLstTypeLRoman : "Große römische Zahlen (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Allgemein",
-DlgDocBackTab : "Hintergrund",
-DlgDocColorsTab : "Farben und Abstände",
-DlgDocMetaTab : "Metadaten",
-
-DlgDocPageTitle : "Seitentitel",
-DlgDocLangDir : "Schriftrichtung",
-DlgDocLangDirLTR : "Links nach Rechts",
-DlgDocLangDirRTL : "Rechts nach Links",
-DlgDocLangCode : "Sprachkürzel",
-DlgDocCharSet : "Zeichenkodierung",
-DlgDocCharSetCE : "Zentraleuropäisch",
-DlgDocCharSetCT : "traditionell Chinesisch (Big5)",
-DlgDocCharSetCR : "Kyrillisch",
-DlgDocCharSetGR : "Griechisch",
-DlgDocCharSetJP : "Japanisch",
-DlgDocCharSetKR : "Koreanisch",
-DlgDocCharSetTR : "Türkisch",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Westeuropäisch",
-DlgDocCharSetOther : "Andere Zeichenkodierung",
-
-DlgDocDocType : "Dokumententyp",
-DlgDocDocTypeOther : "Anderer Dokumententyp",
-DlgDocIncXHTML : "Beziehe XHTML Deklarationen ein",
-DlgDocBgColor : "Hintergrundfarbe",
-DlgDocBgImage : "Hintergrundbild URL",
-DlgDocBgNoScroll : "feststehender Hintergrund",
-DlgDocCText : "Text",
-DlgDocCLink : "Link",
-DlgDocCVisited : "Besuchter Link",
-DlgDocCActive : "Aktiver Link",
-DlgDocMargins : "Seitenränder",
-DlgDocMaTop : "Oben",
-DlgDocMaLeft : "Links",
-DlgDocMaRight : "Rechts",
-DlgDocMaBottom : "Unten",
-DlgDocMeIndex : "Schlüsselwörter (durch Komma getrennt)",
-DlgDocMeDescr : "Dokument-Beschreibung",
-DlgDocMeAuthor : "Autor",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Vorschau",
-
-// Templates Dialog
-Templates : "Vorlagen",
-DlgTemplatesTitle : "Vorlagen",
-DlgTemplatesSelMsg : "Klicken Sie auf eine Vorlage, um sie im Editor zu öffnen (der aktuelle Inhalt wird dabei gelöscht!):",
-DlgTemplatesLoading : "Liste der Vorlagen wird geladen. Bitte warten...",
-DlgTemplatesNoTpl : "(keine Vorlagen definiert)",
-DlgTemplatesReplace : "Aktuellen Inhalt ersetzen",
-
-// About Dialog
-DlgAboutAboutTab : "Über",
-DlgAboutBrowserInfoTab : "Browser-Info",
-DlgAboutLicenseTab : "Lizenz",
-DlgAboutVersion : "Version",
-DlgAboutInfo : "Für weitere Informationen siehe",
-
-// Div Dialog
-DlgDivGeneralTab : "Allgemein",
-DlgDivAdvancedTab : "Erweitert",
-DlgDivStyle : "Style",
-DlgDivInlineStyle : "Inline Style"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/el.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/el.js
deleted file mode 100755
index fe4bc46..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/el.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Greek language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Απόκρυψη Μπάρας Εργαλείων",
-ToolbarExpand : "Εμφάνιση Μπάρας Εργαλείων",
-
-// Toolbar Items and Context Menu
-Save : "Αποθήκευση",
-NewPage : "Νέα Σελίδα",
-Preview : "Προεπισκόπιση",
-Cut : "Αποκοπή",
-Copy : "Αντιγραφή",
-Paste : "Επικόλληση",
-PasteText : "Επικόλληση (απλό κείμενο)",
-PasteWord : "Επικόλληση από το Word",
-Print : "Εκτύπωση",
-SelectAll : "Επιλογή όλων",
-RemoveFormat : "Αφαίρεση Μορφοποίησης",
-InsertLinkLbl : "Σύνδεσμος (Link)",
-InsertLink : "Εισαγωγή/Μεταβολή Συνδέσμου (Link)",
-RemoveLink : "Αφαίρεση Συνδέσμου (Link)",
-VisitLink : "Open Link", //MISSING
-Anchor : "Εισαγωγή/επεξεργασία Anchor",
-AnchorDelete : "Remove Anchor", //MISSING
-InsertImageLbl : "Εικόνα",
-InsertImage : "Εισαγωγή/Μεταβολή Εικόνας",
-InsertFlashLbl : "Εισαγωγή Flash",
-InsertFlash : "Εισαγωγή/επεξεργασία Flash",
-InsertTableLbl : "Πίνακας",
-InsertTable : "Εισαγωγή/Μεταβολή Πίνακα",
-InsertLineLbl : "Γραμμή",
-InsertLine : "Εισαγωγή Οριζόντιας Γραμμής",
-InsertSpecialCharLbl: "Ειδικό Σύμβολο",
-InsertSpecialChar : "Εισαγωγή Ειδικού Συμβόλου",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Εισαγωγή Smiley",
-About : "Περί του FCKeditor",
-Bold : "Έντονα",
-Italic : "Πλάγια",
-Underline : "Υπογράμμιση",
-StrikeThrough : "Διαγράμμιση",
-Subscript : "Δείκτης",
-Superscript : "Εκθέτης",
-LeftJustify : "Στοίχιση Αριστερά",
-CenterJustify : "Στοίχιση στο Κέντρο",
-RightJustify : "Στοίχιση Δεξιά",
-BlockJustify : "Πλήρης Στοίχιση (Block)",
-DecreaseIndent : "Μείωση Εσοχής",
-IncreaseIndent : "Αύξηση Εσοχής",
-Blockquote : "Blockquote", //MISSING
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "Αναίρεση",
-Redo : "Επαναφορά",
-NumberedListLbl : "Λίστα με Αριθμούς",
-NumberedList : "Εισαγωγή/Διαγραφή Λίστας με Αριθμούς",
-BulletedListLbl : "Λίστα με Bullets",
-BulletedList : "Εισαγωγή/Διαγραφή Λίστας με Bullets",
-ShowTableBorders : "Προβολή Ορίων Πίνακα",
-ShowDetails : "Προβολή Λεπτομερειών",
-Style : "Στυλ",
-FontFormat : "Μορφή Γραμματοσειράς",
-Font : "Γραμματοσειρά",
-FontSize : "Μέγεθος",
-TextColor : "Χρώμα Γραμμάτων",
-BGColor : "Χρώμα Υποβάθρου",
-Source : "HTML κώδικας",
-Find : "Αναζήτηση",
-Replace : "Αντικατάσταση",
-SpellCheck : "Ορθογραφικός έλεγχος",
-UniversalKeyboard : "Διεθνής πληκτρολόγιο",
-PageBreakLbl : "Τέλος σελίδας",
-PageBreak : "Εισαγωγή τέλους σελίδας",
-
-Form : "Φόρμα",
-Checkbox : "Κουτί επιλογής",
-RadioButton : "Κουμπί Radio",
-TextField : "Πεδίο κειμένου",
-Textarea : "Περιοχή κειμένου",
-HiddenField : "Κρυφό πεδίο",
-Button : "Κουμπί",
-SelectionField : "Πεδίο επιλογής",
-ImageButton : "Κουμπί εικόνας",
-
-FitWindow : "Μεγιστοποίηση προγράμματος",
-ShowBlocks : "Show Blocks", //MISSING
-
-// Context Menu
-EditLink : "Μεταβολή Συνδέσμου (Link)",
-CellCM : "Κελί",
-RowCM : "Σειρά",
-ColumnCM : "Στήλη",
-InsertRowAfter : "Insert Row After", //MISSING
-InsertRowBefore : "Insert Row Before", //MISSING
-DeleteRows : "Διαγραφή Γραμμών",
-InsertColumnAfter : "Insert Column After", //MISSING
-InsertColumnBefore : "Insert Column Before", //MISSING
-DeleteColumns : "Διαγραφή Κολωνών",
-InsertCellAfter : "Insert Cell After", //MISSING
-InsertCellBefore : "Insert Cell Before", //MISSING
-DeleteCells : "Διαγραφή Κελιών",
-MergeCells : "Ενοποίηση Κελιών",
-MergeRight : "Merge Right", //MISSING
-MergeDown : "Merge Down", //MISSING
-HorizontalSplitCell : "Split Cell Horizontally", //MISSING
-VerticalSplitCell : "Split Cell Vertically", //MISSING
-TableDelete : "Διαγραφή πίνακα",
-CellProperties : "Ιδιότητες Κελιού",
-TableProperties : "Ιδιότητες Πίνακα",
-ImageProperties : "Ιδιότητες Εικόνας",
-FlashProperties : "Ιδιότητες Flash",
-
-AnchorProp : "Ιδιότητες άγκυρας",
-ButtonProp : "Ιδιότητες κουμπιού",
-CheckboxProp : "Ιδιότητες κουμπιού επιλογής",
-HiddenFieldProp : "Ιδιότητες κρυφού πεδίου",
-RadioButtonProp : "Ιδιότητες κουμπιού radio",
-ImageButtonProp : "Ιδιότητες κουμπιού εικόνας",
-TextFieldProp : "Ιδιότητες πεδίου κειμένου",
-SelectionFieldProp : "Ιδιότητες πεδίου επιλογής",
-TextareaProp : "Ιδιότητες περιοχής κειμένου",
-FormProp : "Ιδιότητες φόρμας",
-
-FontFormats : "Κανονικό;Μορφοποιημένο;Διεύθυνση;Επικεφαλίδα 1;Επικεφαλίδα 2;Επικεφαλίδα 3;Επικεφαλίδα 4;Επικεφαλίδα 5;Επικεφαλίδα 6",
-
-// Alerts and Messages
-ProcessingXHTML : "Επεξεργασία XHTML. Παρακαλώ περιμένετε...",
-Done : "Έτοιμο",
-PasteWordConfirm : "Το κείμενο που θέλετε να επικολήσετε, φαίνεται πως προέρχεται από το Word. Θέλετε να καθαριστεί πριν επικοληθεί;",
-NotCompatiblePaste : "Αυτή η επιλογή είναι διαθέσιμη στον Internet Explorer έκδοση 5.5+. Θέλετε να γίνει η επικόλληση χωρίς καθαρισμό;",
-UnknownToolbarItem : "Άγνωστο αντικείμενο της μπάρας εργαλείων \"%1\"",
-UnknownCommand : "Άγνωστή εντολή \"%1\"",
-NotImplemented : "Η εντολή δεν έχει ενεργοποιηθεί",
-UnknownToolbarSet : "Η μπάρα εργαλείων \"%1\" δεν υπάρχει",
-NoActiveX : "Οι ρυθμίσεις ασφαλείας του browser σας μπορεί να περιορίσουν κάποιες ρυθμίσεις του προγράμματος. Χρειάζεται να ενεργοποιήσετε την επιλογή \"Run ActiveX controls and plug-ins\". Ίσως παρουσιαστούν λάθη και παρατηρήσετε ελειπείς λειτουργίες.",
-BrowseServerBlocked : "Οι πόροι του browser σας δεν είναι προσπελάσιμοι. Σιγουρευτείτε ότι δεν υπάρχουν ενεργοί popup blockers.",
-DialogBlocked : "Δεν ήταν δυνατό να ανοίξει το παράθυρο διαλόγου. Σιγουρευτείτε ότι δεν υπάρχουν ενεργοί popup blockers.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Ακύρωση",
-DlgBtnClose : "Κλείσιμο",
-DlgBtnBrowseServer : "Εξερεύνηση διακομιστή",
-DlgAdvancedTag : "Για προχωρημένους",
-DlgOpOther : "<Άλλα>",
-DlgInfoTab : "Πληροφορίες",
-DlgAlertUrl : "Παρακαλώ εισάγετε URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "<χωρίς>",
-DlgGenId : "Id",
-DlgGenLangDir : "Κατεύθυνση κειμένου",
-DlgGenLangDirLtr : "Αριστερά προς Δεξιά (LTR)",
-DlgGenLangDirRtl : "Δεξιά προς Αριστερά (RTL)",
-DlgGenLangCode : "Κωδικός Γλώσσας",
-DlgGenAccessKey : "Συντόμευση (Access Key)",
-DlgGenName : "Όνομα",
-DlgGenTabIndex : "Tab Index",
-DlgGenLongDescr : "Αναλυτική περιγραφή URL",
-DlgGenClass : "Stylesheet Classes",
-DlgGenTitle : "Συμβουλευτικός τίτλος",
-DlgGenContType : "Συμβουλευτικός τίτλος περιεχομένου",
-DlgGenLinkCharset : "Linked Resource Charset",
-DlgGenStyle : "Στύλ",
-
-// Image Dialog
-DlgImgTitle : "Ιδιότητες Εικόνας",
-DlgImgInfoTab : "Πληροφορίες Εικόνας",
-DlgImgBtnUpload : "Αποστολή στον Διακομιστή",
-DlgImgURL : "URL",
-DlgImgUpload : "Αποστολή",
-DlgImgAlt : "Εναλλακτικό Κείμενο (ALT)",
-DlgImgWidth : "Πλάτος",
-DlgImgHeight : "Ύψος",
-DlgImgLockRatio : "Κλείδωμα Αναλογίας",
-DlgBtnResetSize : "Επαναφορά Αρχικού Μεγέθους",
-DlgImgBorder : "Περιθώριο",
-DlgImgHSpace : "Οριζόντιος Χώρος (HSpace)",
-DlgImgVSpace : "Κάθετος Χώρος (VSpace)",
-DlgImgAlign : "Ευθυγράμμιση (Align)",
-DlgImgAlignLeft : "Αριστερά",
-DlgImgAlignAbsBottom: "Απόλυτα Κάτω (Abs Bottom)",
-DlgImgAlignAbsMiddle: "Απόλυτα στη Μέση (Abs Middle)",
-DlgImgAlignBaseline : "Γραμμή Βάσης (Baseline)",
-DlgImgAlignBottom : "Κάτω (Bottom)",
-DlgImgAlignMiddle : "Μέση (Middle)",
-DlgImgAlignRight : "Δεξιά (Right)",
-DlgImgAlignTextTop : "Κορυφή Κειμένου (Text Top)",
-DlgImgAlignTop : "Πάνω (Top)",
-DlgImgPreview : "Προεπισκόπιση",
-DlgImgAlertUrl : "Εισάγετε την τοποθεσία (URL) της εικόνας",
-DlgImgLinkTab : "Σύνδεσμος",
-
-// Flash Dialog
-DlgFlashTitle : "Ιδιότητες flash",
-DlgFlashChkPlay : "Αυτόματη έναρξη",
-DlgFlashChkLoop : "Επανάληψη",
-DlgFlashChkMenu : "Ενεργοποίηση Flash Menu",
-DlgFlashScale : "Κλίμακα",
-DlgFlashScaleAll : "Εμφάνιση όλων",
-DlgFlashScaleNoBorder : "Χωρίς όρια",
-DlgFlashScaleFit : "Ακριβής εφαρμογή",
-
-// Link Dialog
-DlgLnkWindowTitle : "Σύνδεσμος (Link)",
-DlgLnkInfoTab : "Link",
-DlgLnkTargetTab : "Παράθυρο Στόχος (Target)",
-
-DlgLnkType : "Τύπος συνδέσμου (Link)",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Άγκυρα σε αυτή τη σελίδα",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Προτόκολο",
-DlgLnkProtoOther : "<άλλο>",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Επιλέξτε μια άγκυρα",
-DlgLnkAnchorByName : "Βάσει του Ονόματος (Name) της άγκυρας",
-DlgLnkAnchorById : "Βάσει του Element Id",
-DlgLnkNoAnchors : "(Δεν υπάρχουν άγκυρες στο κείμενο)",
-DlgLnkEMail : "Διεύθυνση Ηλεκτρονικού Ταχυδρομείου",
-DlgLnkEMailSubject : "Θέμα Μηνύματος",
-DlgLnkEMailBody : "Κείμενο Μηνύματος",
-DlgLnkUpload : "Αποστολή",
-DlgLnkBtnUpload : "Αποστολή στον Διακομιστή",
-
-DlgLnkTarget : "Παράθυρο Στόχος (Target)",
-DlgLnkTargetFrame : "<πλαίσιο>",
-DlgLnkTargetPopup : "<παράθυρο popup>",
-DlgLnkTargetBlank : "Νέο Παράθυρο (_blank)",
-DlgLnkTargetParent : "Γονικό Παράθυρο (_parent)",
-DlgLnkTargetSelf : "Ίδιο Παράθυρο (_self)",
-DlgLnkTargetTop : "Ανώτατο Παράθυρο (_top)",
-DlgLnkTargetFrameName : "Όνομα πλαισίου στόχου",
-DlgLnkPopWinName : "Όνομα Popup Window",
-DlgLnkPopWinFeat : "Επιλογές Popup Window",
-DlgLnkPopResize : "Με αλλαγή Μεγέθους",
-DlgLnkPopLocation : "Μπάρα Τοποθεσίας",
-DlgLnkPopMenu : "Μπάρα Menu",
-DlgLnkPopScroll : "Μπάρες Κύλισης",
-DlgLnkPopStatus : "Μπάρα Status",
-DlgLnkPopToolbar : "Μπάρα Εργαλείων",
-DlgLnkPopFullScrn : "Ολόκληρη η Οθόνη (IE)",
-DlgLnkPopDependent : "Dependent (Netscape)",
-DlgLnkPopWidth : "Πλάτος",
-DlgLnkPopHeight : "Ύψος",
-DlgLnkPopLeft : "Τοποθεσία Αριστερής Άκρης",
-DlgLnkPopTop : "Τοποθεσία Πάνω Άκρης",
-
-DlnLnkMsgNoUrl : "Εισάγετε την τοποθεσία (URL) του υπερσυνδέσμου (Link)",
-DlnLnkMsgNoEMail : "Εισάγετε την διεύθυνση ηλεκτρονικού ταχυδρομείου",
-DlnLnkMsgNoAnchor : "Επιλέξτε ένα Anchor",
-DlnLnkMsgInvPopName : "Το όνομα του popup πρέπει να αρχίζει με χαρακτήρα της αλφαβήτου και να μην περιέχει κενά",
-
-// Color Dialog
-DlgColorTitle : "Επιλογή χρώματος",
-DlgColorBtnClear : "Καθαρισμός",
-DlgColorHighlight : "Προεπισκόπιση",
-DlgColorSelected : "Επιλεγμένο",
-
-// Smiley Dialog
-DlgSmileyTitle : "Επιλέξτε ένα Smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Επιλέξτε ένα Ειδικό Σύμβολο",
-
-// Table Dialog
-DlgTableTitle : "Ιδιότητες Πίνακα",
-DlgTableRows : "Γραμμές",
-DlgTableColumns : "Κολώνες",
-DlgTableBorder : "Μέγεθος Περιθωρίου",
-DlgTableAlign : "Στοίχιση",
-DlgTableAlignNotSet : "<χωρίς>",
-DlgTableAlignLeft : "Αριστερά",
-DlgTableAlignCenter : "Κέντρο",
-DlgTableAlignRight : "Δεξιά",
-DlgTableWidth : "Πλάτος",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "\%",
-DlgTableHeight : "Ύψος",
-DlgTableCellSpace : "Απόσταση κελιών",
-DlgTableCellPad : "Γέμισμα κελιών",
-DlgTableCaption : "Υπέρτιτλος",
-DlgTableSummary : "Περίληψη",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Ιδιότητες Κελιού",
-DlgCellWidth : "Πλάτος",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "\%",
-DlgCellHeight : "Ύψος",
-DlgCellWordWrap : "Με αλλαγή γραμμής",
-DlgCellWordWrapNotSet : "<χωρίς>",
-DlgCellWordWrapYes : "Ναι",
-DlgCellWordWrapNo : "Όχι",
-DlgCellHorAlign : "Οριζόντια Στοίχιση",
-DlgCellHorAlignNotSet : "<χωρίς>",
-DlgCellHorAlignLeft : "Αριστερά",
-DlgCellHorAlignCenter : "Κέντρο",
-DlgCellHorAlignRight: "Δεξιά",
-DlgCellVerAlign : "Κάθετη Στοίχιση",
-DlgCellVerAlignNotSet : "<χωρίς>",
-DlgCellVerAlignTop : "Πάνω (Top)",
-DlgCellVerAlignMiddle : "Μέση (Middle)",
-DlgCellVerAlignBottom : "Κάτω (Bottom)",
-DlgCellVerAlignBaseline : "Γραμμή Βάσης (Baseline)",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Αριθμός Γραμμών (Rows Span)",
-DlgCellCollSpan : "Αριθμός Κολωνών (Columns Span)",
-DlgCellBackColor : "Χρώμα Υποβάθρου",
-DlgCellBorderColor : "Χρώμα Περιθωρίου",
-DlgCellBtnSelect : "Επιλογή...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace", //MISSING
-
-// Find Dialog
-DlgFindTitle : "Αναζήτηση",
-DlgFindFindBtn : "Αναζήτηση",
-DlgFindNotFoundMsg : "Το κείμενο δεν βρέθηκε.",
-
-// Replace Dialog
-DlgReplaceTitle : "Αντικατάσταση",
-DlgReplaceFindLbl : "Αναζήτηση:",
-DlgReplaceReplaceLbl : "Αντικατάσταση με:",
-DlgReplaceCaseChk : "Έλεγχος πεζών/κεφαλαίων",
-DlgReplaceReplaceBtn : "Αντικατάσταση",
-DlgReplaceReplAllBtn : "Αντικατάσταση Όλων",
-DlgReplaceWordChk : "Εύρεση πλήρους λέξης",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Οι ρυθμίσεις ασφαλείας του φυλλομετρητή σας δεν επιτρέπουν την επιλεγμένη εργασία αποκοπής. Χρησιμοποιείστε το πληκτρολόγιο (Ctrl+X).",
-PasteErrorCopy : "Οι ρυθμίσεις ασφαλείας του φυλλομετρητή σας δεν επιτρέπουν την επιλεγμένη εργασία αντιγραφής. Χρησιμοποιείστε το πληκτρολόγιο (Ctrl+C).",
-
-PasteAsText : "Επικόλληση ως Απλό Κείμενο",
-PasteFromWord : "Επικόλληση από το Word",
-
-DlgPasteMsg2 : "Παρακαλώ επικολήστε στο ακόλουθο κουτί χρησιμοποιόντας το πληκτρολόγιο (Ctrl+V ) και πατήστε OK .",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.", //MISSING
-DlgPasteIgnoreFont : "Αγνόηση προδιαγραφών γραμματοσειράς",
-DlgPasteRemoveStyles : "Αφαίρεση προδιαγραφών στύλ",
-
-// Color Picker
-ColorAutomatic : "Αυτόματο",
-ColorMoreColors : "Περισσότερα χρώματα...",
-
-// Document Properties
-DocProps : "Ιδιότητες εγγράφου",
-
-// Anchor Dialog
-DlgAnchorTitle : "Ιδιότητες άγκυρας",
-DlgAnchorName : "Όνομα άγκυρας",
-DlgAnchorErrorName : "Παρακαλούμε εισάγετε όνομα άγκυρας",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Δεν υπάρχει στο λεξικό",
-DlgSpellChangeTo : "Αλλαγή σε",
-DlgSpellBtnIgnore : "Αγνόηση",
-DlgSpellBtnIgnoreAll : "Αγνόηση όλων",
-DlgSpellBtnReplace : "Αντικατάσταση",
-DlgSpellBtnReplaceAll : "Αντικατάσταση όλων",
-DlgSpellBtnUndo : "Αναίρεση",
-DlgSpellNoSuggestions : "- Δεν υπάρχουν προτάσεις -",
-DlgSpellProgress : "Ορθογραφικός έλεγχος σε εξέλιξη...",
-DlgSpellNoMispell : "Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Δεν βρέθηκαν λάθη",
-DlgSpellNoChanges : "Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Δεν άλλαξαν λέξεις",
-DlgSpellOneChange : "Ο ορθογραφικός έλεγχος ολοκληρώθηκε: Μια λέξη άλλαξε",
-DlgSpellManyChanges : "Ο ορθογραφικός έλεγχος ολοκληρώθηκε: %1 λέξεις άλλαξαν",
-
-IeSpellDownload : "Δεν υπάρχει εγκατεστημένος ορθογράφος. Θέλετε να τον κατεβάσετε τώρα;",
-
-// Button Dialog
-DlgButtonText : "Κείμενο (Τιμή)",
-DlgButtonType : "Τύπος",
-DlgButtonTypeBtn : "Κουμπί",
-DlgButtonTypeSbm : "Καταχώρηση",
-DlgButtonTypeRst : "Επαναφορά",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Όνομα",
-DlgCheckboxValue : "Τιμή",
-DlgCheckboxSelected : "Επιλεγμένο",
-
-// Form Dialog
-DlgFormName : "Όνομα",
-DlgFormAction : "Δράση",
-DlgFormMethod : "Μάθοδος",
-
-// Select Field Dialog
-DlgSelectName : "Όνομα",
-DlgSelectValue : "Τιμή",
-DlgSelectSize : "Μέγεθος",
-DlgSelectLines : "γραμμές",
-DlgSelectChkMulti : "Πολλαπλές επιλογές",
-DlgSelectOpAvail : "Διαθέσιμες επιλογές",
-DlgSelectOpText : "Κείμενο",
-DlgSelectOpValue : "Τιμή",
-DlgSelectBtnAdd : "Προσθήκη",
-DlgSelectBtnModify : "Αλλαγή",
-DlgSelectBtnUp : "Πάνω",
-DlgSelectBtnDown : "Κάτω",
-DlgSelectBtnSetValue : "Προεπιλεγμένη επιλογή",
-DlgSelectBtnDelete : "Διαγραφή",
-
-// Textarea Dialog
-DlgTextareaName : "Όνομα",
-DlgTextareaCols : "Στήλες",
-DlgTextareaRows : "Σειρές",
-
-// Text Field Dialog
-DlgTextName : "Όνομα",
-DlgTextValue : "Τιμή",
-DlgTextCharWidth : "Μήκος χαρακτήρων",
-DlgTextMaxChars : "Μέγιστοι χαρακτήρες",
-DlgTextType : "Τύπος",
-DlgTextTypeText : "Κείμενο",
-DlgTextTypePass : "Κωδικός",
-
-// Hidden Field Dialog
-DlgHiddenName : "Όνομα",
-DlgHiddenValue : "Τιμή",
-
-// Bulleted List Dialog
-BulletedListProp : "Ιδιότητες λίστας Bulleted",
-NumberedListProp : "Ιδιότητες αριθμημένης λίστας ",
-DlgLstStart : "Αρχή",
-DlgLstType : "Τύπος",
-DlgLstTypeCircle : "Κύκλος",
-DlgLstTypeDisc : "Δίσκος",
-DlgLstTypeSquare : "Τετράγωνο",
-DlgLstTypeNumbers : "Αριθμοί (1, 2, 3)",
-DlgLstTypeLCase : "Πεζά γράμματα (a, b, c)",
-DlgLstTypeUCase : "Κεφαλαία γράμματα (A, B, C)",
-DlgLstTypeSRoman : "Μικρά λατινικά αριθμητικά (i, ii, iii)",
-DlgLstTypeLRoman : "Μεγάλα λατινικά αριθμητικά (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Γενικά",
-DlgDocBackTab : "Φόντο",
-DlgDocColorsTab : "Χρώματα και περιθώρια",
-DlgDocMetaTab : "Δεδομένα Meta",
-
-DlgDocPageTitle : "Τίτλος σελίδας",
-DlgDocLangDir : "Κατεύθυνση γραφής",
-DlgDocLangDirLTR : "αριστερά προς δεξιά (LTR)",
-DlgDocLangDirRTL : "δεξιά προς αριστερά (RTL)",
-DlgDocLangCode : "Κωδικός γλώσσας",
-DlgDocCharSet : "Κωδικοποίηση χαρακτήρων",
-DlgDocCharSetCE : "Κεντρικής Ευρώπης",
-DlgDocCharSetCT : "Παραδοσιακά κινέζικα (Big5)",
-DlgDocCharSetCR : "Κυριλλική",
-DlgDocCharSetGR : "Ελληνική",
-DlgDocCharSetJP : "Ιαπωνική",
-DlgDocCharSetKR : "Κορεάτικη",
-DlgDocCharSetTR : "Τουρκική",
-DlgDocCharSetUN : "Διεθνής (UTF-8)",
-DlgDocCharSetWE : "Δυτικής Ευρώπης",
-DlgDocCharSetOther : "Άλλη κωδικοποίηση χαρακτήρων",
-
-DlgDocDocType : "Επικεφαλίδα τύπου εγγράφου",
-DlgDocDocTypeOther : "Άλλη επικεφαλίδα τύπου εγγράφου",
-DlgDocIncXHTML : "Να συμπεριληφθούν οι δηλώσεις XHTML",
-DlgDocBgColor : "Χρώμα φόντου",
-DlgDocBgImage : "Διεύθυνση εικόνας φόντου",
-DlgDocBgNoScroll : "Φόντο χωρίς κύλιση",
-DlgDocCText : "Κείμενο",
-DlgDocCLink : "Σύνδεσμος",
-DlgDocCVisited : "Σύνδεσμος που έχει επισκευθεί",
-DlgDocCActive : "Ενεργός σύνδεσμος",
-DlgDocMargins : "Περιθώρια σελίδας",
-DlgDocMaTop : "Κορυφή",
-DlgDocMaLeft : "Αριστερά",
-DlgDocMaRight : "Δεξιά",
-DlgDocMaBottom : "Κάτω",
-DlgDocMeIndex : "Λέξεις κλειδιά δείκτες εγγράφου (διαχωρισμός με κόμμα)",
-DlgDocMeDescr : "Περιγραφή εγγράφου",
-DlgDocMeAuthor : "Συγγραφέας",
-DlgDocMeCopy : "Πνευματικά δικαιώματα",
-DlgDocPreview : "Προεπισκόπηση",
-
-// Templates Dialog
-Templates : "Πρότυπα",
-DlgTemplatesTitle : "Πρότυπα περιεχομένου",
-DlgTemplatesSelMsg : "Παρακαλώ επιλέξτε πρότυπο για εισαγωγή στο πρόγραμμα (τα υπάρχοντα περιεχόμενα θα χαθούν):",
-DlgTemplatesLoading : "Φόρτωση καταλόγου προτύπων. Παρακαλώ περιμένετε...",
-DlgTemplatesNoTpl : "(Δεν έχουν καθοριστεί πρότυπα)",
-DlgTemplatesReplace : "Αντικατάσταση υπάρχοντων περιεχομένων",
-
-// About Dialog
-DlgAboutAboutTab : "Σχετικά",
-DlgAboutBrowserInfoTab : "Πληροφορίες Browser",
-DlgAboutLicenseTab : "Άδεια",
-DlgAboutVersion : "έκδοση",
-DlgAboutInfo : "Για περισσότερες πληροφορίες",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/en-au.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/en-au.js
deleted file mode 100755
index 9d68d70..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/en-au.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * English (Australia) language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Collapse Toolbar",
-ToolbarExpand : "Expand Toolbar",
-
-// Toolbar Items and Context Menu
-Save : "Save",
-NewPage : "New Page",
-Preview : "Preview",
-Cut : "Cut",
-Copy : "Copy",
-Paste : "Paste",
-PasteText : "Paste as plain text",
-PasteWord : "Paste from Word",
-Print : "Print",
-SelectAll : "Select All",
-RemoveFormat : "Remove Format",
-InsertLinkLbl : "Link",
-InsertLink : "Insert/Edit Link",
-RemoveLink : "Remove Link",
-VisitLink : "Open Link",
-Anchor : "Insert/Edit Anchor",
-AnchorDelete : "Remove Anchor",
-InsertImageLbl : "Image",
-InsertImage : "Insert/Edit Image",
-InsertFlashLbl : "Flash",
-InsertFlash : "Insert/Edit Flash",
-InsertTableLbl : "Table",
-InsertTable : "Insert/Edit Table",
-InsertLineLbl : "Line",
-InsertLine : "Insert Horizontal Line",
-InsertSpecialCharLbl: "Special Character",
-InsertSpecialChar : "Insert Special Character",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Insert Smiley",
-About : "About FCKeditor",
-Bold : "Bold",
-Italic : "Italic",
-Underline : "Underline",
-StrikeThrough : "Strike Through",
-Subscript : "Subscript",
-Superscript : "Superscript",
-LeftJustify : "Left Justify",
-CenterJustify : "Centre Justify",
-RightJustify : "Right Justify",
-BlockJustify : "Block Justify",
-DecreaseIndent : "Decrease Indent",
-IncreaseIndent : "Increase Indent",
-Blockquote : "Blockquote",
-CreateDiv : "Create Div Container",
-EditDiv : "Edit Div Container",
-DeleteDiv : "Remove Div Container",
-Undo : "Undo",
-Redo : "Redo",
-NumberedListLbl : "Numbered List",
-NumberedList : "Insert/Remove Numbered List",
-BulletedListLbl : "Bulleted List",
-BulletedList : "Insert/Remove Bulleted List",
-ShowTableBorders : "Show Table Borders",
-ShowDetails : "Show Details",
-Style : "Style",
-FontFormat : "Format",
-Font : "Font",
-FontSize : "Size",
-TextColor : "Text Colour",
-BGColor : "Background Colour",
-Source : "Source",
-Find : "Find",
-Replace : "Replace",
-SpellCheck : "Check Spelling",
-UniversalKeyboard : "Universal Keyboard",
-PageBreakLbl : "Page Break",
-PageBreak : "Insert Page Break",
-
-Form : "Form",
-Checkbox : "Checkbox",
-RadioButton : "Radio Button",
-TextField : "Text Field",
-Textarea : "Textarea",
-HiddenField : "Hidden Field",
-Button : "Button",
-SelectionField : "Selection Field",
-ImageButton : "Image Button",
-
-FitWindow : "Maximize the editor size",
-ShowBlocks : "Show Blocks",
-
-// Context Menu
-EditLink : "Edit Link",
-CellCM : "Cell",
-RowCM : "Row",
-ColumnCM : "Column",
-InsertRowAfter : "Insert Row After",
-InsertRowBefore : "Insert Row Before",
-DeleteRows : "Delete Rows",
-InsertColumnAfter : "Insert Column After",
-InsertColumnBefore : "Insert Column Before",
-DeleteColumns : "Delete Columns",
-InsertCellAfter : "Insert Cell After",
-InsertCellBefore : "Insert Cell Before",
-DeleteCells : "Delete Cells",
-MergeCells : "Merge Cells",
-MergeRight : "Merge Right",
-MergeDown : "Merge Down",
-HorizontalSplitCell : "Split Cell Horizontally",
-VerticalSplitCell : "Split Cell Vertically",
-TableDelete : "Delete Table",
-CellProperties : "Cell Properties",
-TableProperties : "Table Properties",
-ImageProperties : "Image Properties",
-FlashProperties : "Flash Properties",
-
-AnchorProp : "Anchor Properties",
-ButtonProp : "Button Properties",
-CheckboxProp : "Checkbox Properties",
-HiddenFieldProp : "Hidden Field Properties",
-RadioButtonProp : "Radio Button Properties",
-ImageButtonProp : "Image Button Properties",
-TextFieldProp : "Text Field Properties",
-SelectionFieldProp : "Selection Field Properties",
-TextareaProp : "Textarea Properties",
-FormProp : "Form Properties",
-
-FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Processing XHTML. Please wait...",
-Done : "Done",
-PasteWordConfirm : "The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?",
-NotCompatiblePaste : "This command is available for Internet Explorer version 5.5 or more. Do you want to paste without cleaning?",
-UnknownToolbarItem : "Unknown toolbar item \"%1\"",
-UnknownCommand : "Unknown command name \"%1\"",
-NotImplemented : "Command not implemented",
-UnknownToolbarSet : "Toolbar set \"%1\" doesn't exist",
-NoActiveX : "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.",
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.",
-DialogBlocked : "It was not possible to open the dialog window. Make sure all popup blockers are disabled.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Cancel",
-DlgBtnClose : "Close",
-DlgBtnBrowseServer : "Browse Server",
-DlgAdvancedTag : "Advanced",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Please insert the URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Language Direction",
-DlgGenLangDirLtr : "Left to Right (LTR)",
-DlgGenLangDirRtl : "Right to Left (RTL)",
-DlgGenLangCode : "Language Code",
-DlgGenAccessKey : "Access Key",
-DlgGenName : "Name",
-DlgGenTabIndex : "Tab Index",
-DlgGenLongDescr : "Long Description URL",
-DlgGenClass : "Stylesheet Classes",
-DlgGenTitle : "Advisory Title",
-DlgGenContType : "Advisory Content Type",
-DlgGenLinkCharset : "Linked Resource Charset",
-DlgGenStyle : "Style",
-
-// Image Dialog
-DlgImgTitle : "Image Properties",
-DlgImgInfoTab : "Image Info",
-DlgImgBtnUpload : "Send it to the Server",
-DlgImgURL : "URL",
-DlgImgUpload : "Upload",
-DlgImgAlt : "Alternative Text",
-DlgImgWidth : "Width",
-DlgImgHeight : "Height",
-DlgImgLockRatio : "Lock Ratio",
-DlgBtnResetSize : "Reset Size",
-DlgImgBorder : "Border",
-DlgImgHSpace : "HSpace",
-DlgImgVSpace : "VSpace",
-DlgImgAlign : "Align",
-DlgImgAlignLeft : "Left",
-DlgImgAlignAbsBottom: "Abs Bottom",
-DlgImgAlignAbsMiddle: "Abs Middle",
-DlgImgAlignBaseline : "Baseline",
-DlgImgAlignBottom : "Bottom",
-DlgImgAlignMiddle : "Middle",
-DlgImgAlignRight : "Right",
-DlgImgAlignTextTop : "Text Top",
-DlgImgAlignTop : "Top",
-DlgImgPreview : "Preview",
-DlgImgAlertUrl : "Please type the image URL",
-DlgImgLinkTab : "Link",
-
-// Flash Dialog
-DlgFlashTitle : "Flash Properties",
-DlgFlashChkPlay : "Auto Play",
-DlgFlashChkLoop : "Loop",
-DlgFlashChkMenu : "Enable Flash Menu",
-DlgFlashScale : "Scale",
-DlgFlashScaleAll : "Show all",
-DlgFlashScaleNoBorder : "No Border",
-DlgFlashScaleFit : "Exact Fit",
-
-// Link Dialog
-DlgLnkWindowTitle : "Link",
-DlgLnkInfoTab : "Link Info",
-DlgLnkTargetTab : "Target",
-
-DlgLnkType : "Link Type",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Link to anchor in the text",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protocol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Select an Anchor",
-DlgLnkAnchorByName : "By Anchor Name",
-DlgLnkAnchorById : "By Element Id",
-DlgLnkNoAnchors : "(No anchors available in the document)",
-DlgLnkEMail : "E-Mail Address",
-DlgLnkEMailSubject : "Message Subject",
-DlgLnkEMailBody : "Message Body",
-DlgLnkUpload : "Upload",
-DlgLnkBtnUpload : "Send it to the Server",
-
-DlgLnkTarget : "Target",
-DlgLnkTargetFrame : " ",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "New Window (_blank)",
-DlgLnkTargetParent : "Parent Window (_parent)",
-DlgLnkTargetSelf : "Same Window (_self)",
-DlgLnkTargetTop : "Topmost Window (_top)",
-DlgLnkTargetFrameName : "Target Frame Name",
-DlgLnkPopWinName : "Popup Window Name",
-DlgLnkPopWinFeat : "Popup Window Features",
-DlgLnkPopResize : "Resizable",
-DlgLnkPopLocation : "Location Bar",
-DlgLnkPopMenu : "Menu Bar",
-DlgLnkPopScroll : "Scroll Bars",
-DlgLnkPopStatus : "Status Bar",
-DlgLnkPopToolbar : "Toolbar",
-DlgLnkPopFullScrn : "Full Screen (IE)",
-DlgLnkPopDependent : "Dependent (Netscape)",
-DlgLnkPopWidth : "Width",
-DlgLnkPopHeight : "Height",
-DlgLnkPopLeft : "Left Position",
-DlgLnkPopTop : "Top Position",
-
-DlnLnkMsgNoUrl : "Please type the link URL",
-DlnLnkMsgNoEMail : "Please type the e-mail address",
-DlnLnkMsgNoAnchor : "Please select an anchor",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces",
-
-// Color Dialog
-DlgColorTitle : "Select Colour",
-DlgColorBtnClear : "Clear",
-DlgColorHighlight : "Highlight",
-DlgColorSelected : "Selected",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insert a Smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Select Special Character",
-
-// Table Dialog
-DlgTableTitle : "Table Properties",
-DlgTableRows : "Rows",
-DlgTableColumns : "Columns",
-DlgTableBorder : "Border size",
-DlgTableAlign : "Alignment",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Left",
-DlgTableAlignCenter : "Centre",
-DlgTableAlignRight : "Right",
-DlgTableWidth : "Width",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "percent",
-DlgTableHeight : "Height",
-DlgTableCellSpace : "Cell spacing",
-DlgTableCellPad : "Cell padding",
-DlgTableCaption : "Caption",
-DlgTableSummary : "Summary",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Cell Properties",
-DlgCellWidth : "Width",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "percent",
-DlgCellHeight : "Height",
-DlgCellWordWrap : "Word Wrap",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Yes",
-DlgCellWordWrapNo : "No",
-DlgCellHorAlign : "Horizontal Alignment",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Left",
-DlgCellHorAlignCenter : "Centre",
-DlgCellHorAlignRight: "Right",
-DlgCellVerAlign : "Vertical Alignment",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Top",
-DlgCellVerAlignMiddle : "Middle",
-DlgCellVerAlignBottom : "Bottom",
-DlgCellVerAlignBaseline : "Baseline",
-DlgCellType : "Cell Type",
-DlgCellTypeData : "Data",
-DlgCellTypeHeader : "Header",
-DlgCellRowSpan : "Rows Span",
-DlgCellCollSpan : "Columns Span",
-DlgCellBackColor : "Background Colour",
-DlgCellBorderColor : "Border Colour",
-DlgCellBtnSelect : "Select...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace",
-
-// Find Dialog
-DlgFindTitle : "Find",
-DlgFindFindBtn : "Find",
-DlgFindNotFoundMsg : "The specified text was not found.",
-
-// Replace Dialog
-DlgReplaceTitle : "Replace",
-DlgReplaceFindLbl : "Find what:",
-DlgReplaceReplaceLbl : "Replace with:",
-DlgReplaceCaseChk : "Match case",
-DlgReplaceReplaceBtn : "Replace",
-DlgReplaceReplAllBtn : "Replace All",
-DlgReplaceWordChk : "Match whole word",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl+X).",
-PasteErrorCopy : "Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl+C).",
-
-PasteAsText : "Paste as Plain Text",
-PasteFromWord : "Paste from Word",
-
-DlgPasteMsg2 : "Please paste inside the following box using the keyboard (Ctrl+V ) and hit OK .",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",
-DlgPasteIgnoreFont : "Ignore Font Face definitions",
-DlgPasteRemoveStyles : "Remove Styles definitions",
-
-// Color Picker
-ColorAutomatic : "Automatic",
-ColorMoreColors : "More Colours...",
-
-// Document Properties
-DocProps : "Document Properties",
-
-// Anchor Dialog
-DlgAnchorTitle : "Anchor Properties",
-DlgAnchorName : "Anchor Name",
-DlgAnchorErrorName : "Please type the anchor name",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Not in dictionary",
-DlgSpellChangeTo : "Change to",
-DlgSpellBtnIgnore : "Ignore",
-DlgSpellBtnIgnoreAll : "Ignore All",
-DlgSpellBtnReplace : "Replace",
-DlgSpellBtnReplaceAll : "Replace All",
-DlgSpellBtnUndo : "Undo",
-DlgSpellNoSuggestions : "- No suggestions -",
-DlgSpellProgress : "Spell check in progress...",
-DlgSpellNoMispell : "Spell check complete: No misspellings found",
-DlgSpellNoChanges : "Spell check complete: No words changed",
-DlgSpellOneChange : "Spell check complete: One word changed",
-DlgSpellManyChanges : "Spell check complete: %1 words changed",
-
-IeSpellDownload : "Spell checker not installed. Do you want to download it now?",
-
-// Button Dialog
-DlgButtonText : "Text (Value)",
-DlgButtonType : "Type",
-DlgButtonTypeBtn : "Button",
-DlgButtonTypeSbm : "Submit",
-DlgButtonTypeRst : "Reset",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Name",
-DlgCheckboxValue : "Value",
-DlgCheckboxSelected : "Selected",
-
-// Form Dialog
-DlgFormName : "Name",
-DlgFormAction : "Action",
-DlgFormMethod : "Method",
-
-// Select Field Dialog
-DlgSelectName : "Name",
-DlgSelectValue : "Value",
-DlgSelectSize : "Size",
-DlgSelectLines : "lines",
-DlgSelectChkMulti : "Allow multiple selections",
-DlgSelectOpAvail : "Available Options",
-DlgSelectOpText : "Text",
-DlgSelectOpValue : "Value",
-DlgSelectBtnAdd : "Add",
-DlgSelectBtnModify : "Modify",
-DlgSelectBtnUp : "Up",
-DlgSelectBtnDown : "Down",
-DlgSelectBtnSetValue : "Set as selected value",
-DlgSelectBtnDelete : "Delete",
-
-// Textarea Dialog
-DlgTextareaName : "Name",
-DlgTextareaCols : "Columns",
-DlgTextareaRows : "Rows",
-
-// Text Field Dialog
-DlgTextName : "Name",
-DlgTextValue : "Value",
-DlgTextCharWidth : "Character Width",
-DlgTextMaxChars : "Maximum Characters",
-DlgTextType : "Type",
-DlgTextTypeText : "Text",
-DlgTextTypePass : "Password",
-
-// Hidden Field Dialog
-DlgHiddenName : "Name",
-DlgHiddenValue : "Value",
-
-// Bulleted List Dialog
-BulletedListProp : "Bulleted List Properties",
-NumberedListProp : "Numbered List Properties",
-DlgLstStart : "Start",
-DlgLstType : "Type",
-DlgLstTypeCircle : "Circle",
-DlgLstTypeDisc : "Disc",
-DlgLstTypeSquare : "Square",
-DlgLstTypeNumbers : "Numbers (1, 2, 3)",
-DlgLstTypeLCase : "Lowercase Letters (a, b, c)",
-DlgLstTypeUCase : "Uppercase Letters (A, B, C)",
-DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)",
-DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "General",
-DlgDocBackTab : "Background",
-DlgDocColorsTab : "Colours and Margins",
-DlgDocMetaTab : "Meta Data",
-
-DlgDocPageTitle : "Page Title",
-DlgDocLangDir : "Language Direction",
-DlgDocLangDirLTR : "Left to Right (LTR)",
-DlgDocLangDirRTL : "Right to Left (RTL)",
-DlgDocLangCode : "Language Code",
-DlgDocCharSet : "Character Set Encoding",
-DlgDocCharSetCE : "Central European",
-DlgDocCharSetCT : "Chinese Traditional (Big5)",
-DlgDocCharSetCR : "Cyrillic",
-DlgDocCharSetGR : "Greek",
-DlgDocCharSetJP : "Japanese",
-DlgDocCharSetKR : "Korean",
-DlgDocCharSetTR : "Turkish",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Western European",
-DlgDocCharSetOther : "Other Character Set Encoding",
-
-DlgDocDocType : "Document Type Heading",
-DlgDocDocTypeOther : "Other Document Type Heading",
-DlgDocIncXHTML : "Include XHTML Declarations",
-DlgDocBgColor : "Background Colour",
-DlgDocBgImage : "Background Image URL",
-DlgDocBgNoScroll : "Nonscrolling Background",
-DlgDocCText : "Text",
-DlgDocCLink : "Link",
-DlgDocCVisited : "Visited Link",
-DlgDocCActive : "Active Link",
-DlgDocMargins : "Page Margins",
-DlgDocMaTop : "Top",
-DlgDocMaLeft : "Left",
-DlgDocMaRight : "Right",
-DlgDocMaBottom : "Bottom",
-DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
-DlgDocMeDescr : "Document Description",
-DlgDocMeAuthor : "Author",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Preview",
-
-// Templates Dialog
-Templates : "Templates",
-DlgTemplatesTitle : "Content Templates",
-DlgTemplatesSelMsg : "Please select the template to open in the editor (the actual contents will be lost):",
-DlgTemplatesLoading : "Loading templates list. Please wait...",
-DlgTemplatesNoTpl : "(No templates defined)",
-DlgTemplatesReplace : "Replace actual contents",
-
-// About Dialog
-DlgAboutAboutTab : "About",
-DlgAboutBrowserInfoTab : "Browser Info",
-DlgAboutLicenseTab : "License",
-DlgAboutVersion : "version",
-DlgAboutInfo : "For further information go to",
-
-// Div Dialog
-DlgDivGeneralTab : "General",
-DlgDivAdvancedTab : "Advanced",
-DlgDivStyle : "Style",
-DlgDivInlineStyle : "Inline Style"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/en-ca.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/en-ca.js
deleted file mode 100755
index f34d87a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/en-ca.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * English (Canadian) language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Collapse Toolbar",
-ToolbarExpand : "Expand Toolbar",
-
-// Toolbar Items and Context Menu
-Save : "Save",
-NewPage : "New Page",
-Preview : "Preview",
-Cut : "Cut",
-Copy : "Copy",
-Paste : "Paste",
-PasteText : "Paste as plain text",
-PasteWord : "Paste from Word",
-Print : "Print",
-SelectAll : "Select All",
-RemoveFormat : "Remove Format",
-InsertLinkLbl : "Link",
-InsertLink : "Insert/Edit Link",
-RemoveLink : "Remove Link",
-VisitLink : "Open Link",
-Anchor : "Insert/Edit Anchor",
-AnchorDelete : "Remove Anchor",
-InsertImageLbl : "Image",
-InsertImage : "Insert/Edit Image",
-InsertFlashLbl : "Flash",
-InsertFlash : "Insert/Edit Flash",
-InsertTableLbl : "Table",
-InsertTable : "Insert/Edit Table",
-InsertLineLbl : "Line",
-InsertLine : "Insert Horizontal Line",
-InsertSpecialCharLbl: "Special Character",
-InsertSpecialChar : "Insert Special Character",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Insert Smiley",
-About : "About FCKeditor",
-Bold : "Bold",
-Italic : "Italic",
-Underline : "Underline",
-StrikeThrough : "Strike Through",
-Subscript : "Subscript",
-Superscript : "Superscript",
-LeftJustify : "Left Justify",
-CenterJustify : "Centre Justify",
-RightJustify : "Right Justify",
-BlockJustify : "Block Justify",
-DecreaseIndent : "Decrease Indent",
-IncreaseIndent : "Increase Indent",
-Blockquote : "Blockquote",
-CreateDiv : "Create Div Container",
-EditDiv : "Edit Div Container",
-DeleteDiv : "Remove Div Container",
-Undo : "Undo",
-Redo : "Redo",
-NumberedListLbl : "Numbered List",
-NumberedList : "Insert/Remove Numbered List",
-BulletedListLbl : "Bulleted List",
-BulletedList : "Insert/Remove Bulleted List",
-ShowTableBorders : "Show Table Borders",
-ShowDetails : "Show Details",
-Style : "Style",
-FontFormat : "Format",
-Font : "Font",
-FontSize : "Size",
-TextColor : "Text Colour",
-BGColor : "Background Colour",
-Source : "Source",
-Find : "Find",
-Replace : "Replace",
-SpellCheck : "Check Spelling",
-UniversalKeyboard : "Universal Keyboard",
-PageBreakLbl : "Page Break",
-PageBreak : "Insert Page Break",
-
-Form : "Form",
-Checkbox : "Checkbox",
-RadioButton : "Radio Button",
-TextField : "Text Field",
-Textarea : "Textarea",
-HiddenField : "Hidden Field",
-Button : "Button",
-SelectionField : "Selection Field",
-ImageButton : "Image Button",
-
-FitWindow : "Maximize the editor size",
-ShowBlocks : "Show Blocks",
-
-// Context Menu
-EditLink : "Edit Link",
-CellCM : "Cell",
-RowCM : "Row",
-ColumnCM : "Column",
-InsertRowAfter : "Insert Row After",
-InsertRowBefore : "Insert Row Before",
-DeleteRows : "Delete Rows",
-InsertColumnAfter : "Insert Column After",
-InsertColumnBefore : "Insert Column Before",
-DeleteColumns : "Delete Columns",
-InsertCellAfter : "Insert Cell After",
-InsertCellBefore : "Insert Cell Before",
-DeleteCells : "Delete Cells",
-MergeCells : "Merge Cells",
-MergeRight : "Merge Right",
-MergeDown : "Merge Down",
-HorizontalSplitCell : "Split Cell Horizontally",
-VerticalSplitCell : "Split Cell Vertically",
-TableDelete : "Delete Table",
-CellProperties : "Cell Properties",
-TableProperties : "Table Properties",
-ImageProperties : "Image Properties",
-FlashProperties : "Flash Properties",
-
-AnchorProp : "Anchor Properties",
-ButtonProp : "Button Properties",
-CheckboxProp : "Checkbox Properties",
-HiddenFieldProp : "Hidden Field Properties",
-RadioButtonProp : "Radio Button Properties",
-ImageButtonProp : "Image Button Properties",
-TextFieldProp : "Text Field Properties",
-SelectionFieldProp : "Selection Field Properties",
-TextareaProp : "Textarea Properties",
-FormProp : "Form Properties",
-
-FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Processing XHTML. Please wait...",
-Done : "Done",
-PasteWordConfirm : "The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?",
-NotCompatiblePaste : "This command is available for Internet Explorer version 5.5 or more. Do you want to paste without cleaning?",
-UnknownToolbarItem : "Unknown toolbar item \"%1\"",
-UnknownCommand : "Unknown command name \"%1\"",
-NotImplemented : "Command not implemented",
-UnknownToolbarSet : "Toolbar set \"%1\" doesn't exist",
-NoActiveX : "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.",
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.",
-DialogBlocked : "It was not possible to open the dialog window. Make sure all popup blockers are disabled.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Cancel",
-DlgBtnClose : "Close",
-DlgBtnBrowseServer : "Browse Server",
-DlgAdvancedTag : "Advanced",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Please insert the URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Language Direction",
-DlgGenLangDirLtr : "Left to Right (LTR)",
-DlgGenLangDirRtl : "Right to Left (RTL)",
-DlgGenLangCode : "Language Code",
-DlgGenAccessKey : "Access Key",
-DlgGenName : "Name",
-DlgGenTabIndex : "Tab Index",
-DlgGenLongDescr : "Long Description URL",
-DlgGenClass : "Stylesheet Classes",
-DlgGenTitle : "Advisory Title",
-DlgGenContType : "Advisory Content Type",
-DlgGenLinkCharset : "Linked Resource Charset",
-DlgGenStyle : "Style",
-
-// Image Dialog
-DlgImgTitle : "Image Properties",
-DlgImgInfoTab : "Image Info",
-DlgImgBtnUpload : "Send it to the Server",
-DlgImgURL : "URL",
-DlgImgUpload : "Upload",
-DlgImgAlt : "Alternative Text",
-DlgImgWidth : "Width",
-DlgImgHeight : "Height",
-DlgImgLockRatio : "Lock Ratio",
-DlgBtnResetSize : "Reset Size",
-DlgImgBorder : "Border",
-DlgImgHSpace : "HSpace",
-DlgImgVSpace : "VSpace",
-DlgImgAlign : "Align",
-DlgImgAlignLeft : "Left",
-DlgImgAlignAbsBottom: "Abs Bottom",
-DlgImgAlignAbsMiddle: "Abs Middle",
-DlgImgAlignBaseline : "Baseline",
-DlgImgAlignBottom : "Bottom",
-DlgImgAlignMiddle : "Middle",
-DlgImgAlignRight : "Right",
-DlgImgAlignTextTop : "Text Top",
-DlgImgAlignTop : "Top",
-DlgImgPreview : "Preview",
-DlgImgAlertUrl : "Please type the image URL",
-DlgImgLinkTab : "Link",
-
-// Flash Dialog
-DlgFlashTitle : "Flash Properties",
-DlgFlashChkPlay : "Auto Play",
-DlgFlashChkLoop : "Loop",
-DlgFlashChkMenu : "Enable Flash Menu",
-DlgFlashScale : "Scale",
-DlgFlashScaleAll : "Show all",
-DlgFlashScaleNoBorder : "No Border",
-DlgFlashScaleFit : "Exact Fit",
-
-// Link Dialog
-DlgLnkWindowTitle : "Link",
-DlgLnkInfoTab : "Link Info",
-DlgLnkTargetTab : "Target",
-
-DlgLnkType : "Link Type",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Link to anchor in the text",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protocol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Select an Anchor",
-DlgLnkAnchorByName : "By Anchor Name",
-DlgLnkAnchorById : "By Element Id",
-DlgLnkNoAnchors : "(No anchors available in the document)",
-DlgLnkEMail : "E-Mail Address",
-DlgLnkEMailSubject : "Message Subject",
-DlgLnkEMailBody : "Message Body",
-DlgLnkUpload : "Upload",
-DlgLnkBtnUpload : "Send it to the Server",
-
-DlgLnkTarget : "Target",
-DlgLnkTargetFrame : " ",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "New Window (_blank)",
-DlgLnkTargetParent : "Parent Window (_parent)",
-DlgLnkTargetSelf : "Same Window (_self)",
-DlgLnkTargetTop : "Topmost Window (_top)",
-DlgLnkTargetFrameName : "Target Frame Name",
-DlgLnkPopWinName : "Popup Window Name",
-DlgLnkPopWinFeat : "Popup Window Features",
-DlgLnkPopResize : "Resizable",
-DlgLnkPopLocation : "Location Bar",
-DlgLnkPopMenu : "Menu Bar",
-DlgLnkPopScroll : "Scroll Bars",
-DlgLnkPopStatus : "Status Bar",
-DlgLnkPopToolbar : "Toolbar",
-DlgLnkPopFullScrn : "Full Screen (IE)",
-DlgLnkPopDependent : "Dependent (Netscape)",
-DlgLnkPopWidth : "Width",
-DlgLnkPopHeight : "Height",
-DlgLnkPopLeft : "Left Position",
-DlgLnkPopTop : "Top Position",
-
-DlnLnkMsgNoUrl : "Please type the link URL",
-DlnLnkMsgNoEMail : "Please type the e-mail address",
-DlnLnkMsgNoAnchor : "Please select an anchor",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces",
-
-// Color Dialog
-DlgColorTitle : "Select Colour",
-DlgColorBtnClear : "Clear",
-DlgColorHighlight : "Highlight",
-DlgColorSelected : "Selected",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insert a Smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Select Special Character",
-
-// Table Dialog
-DlgTableTitle : "Table Properties",
-DlgTableRows : "Rows",
-DlgTableColumns : "Columns",
-DlgTableBorder : "Border size",
-DlgTableAlign : "Alignment",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Left",
-DlgTableAlignCenter : "Centre",
-DlgTableAlignRight : "Right",
-DlgTableWidth : "Width",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "percent",
-DlgTableHeight : "Height",
-DlgTableCellSpace : "Cell spacing",
-DlgTableCellPad : "Cell padding",
-DlgTableCaption : "Caption",
-DlgTableSummary : "Summary",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Cell Properties",
-DlgCellWidth : "Width",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "percent",
-DlgCellHeight : "Height",
-DlgCellWordWrap : "Word Wrap",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Yes",
-DlgCellWordWrapNo : "No",
-DlgCellHorAlign : "Horizontal Alignment",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Left",
-DlgCellHorAlignCenter : "Centre",
-DlgCellHorAlignRight: "Right",
-DlgCellVerAlign : "Vertical Alignment",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Top",
-DlgCellVerAlignMiddle : "Middle",
-DlgCellVerAlignBottom : "Bottom",
-DlgCellVerAlignBaseline : "Baseline",
-DlgCellType : "Cell Type",
-DlgCellTypeData : "Data",
-DlgCellTypeHeader : "Header",
-DlgCellRowSpan : "Rows Span",
-DlgCellCollSpan : "Columns Span",
-DlgCellBackColor : "Background Colour",
-DlgCellBorderColor : "Border Colour",
-DlgCellBtnSelect : "Select...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace",
-
-// Find Dialog
-DlgFindTitle : "Find",
-DlgFindFindBtn : "Find",
-DlgFindNotFoundMsg : "The specified text was not found.",
-
-// Replace Dialog
-DlgReplaceTitle : "Replace",
-DlgReplaceFindLbl : "Find what:",
-DlgReplaceReplaceLbl : "Replace with:",
-DlgReplaceCaseChk : "Match case",
-DlgReplaceReplaceBtn : "Replace",
-DlgReplaceReplAllBtn : "Replace All",
-DlgReplaceWordChk : "Match whole word",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl+X).",
-PasteErrorCopy : "Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl+C).",
-
-PasteAsText : "Paste as Plain Text",
-PasteFromWord : "Paste from Word",
-
-DlgPasteMsg2 : "Please paste inside the following box using the keyboard (Ctrl+V ) and hit OK .",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",
-DlgPasteIgnoreFont : "Ignore Font Face definitions",
-DlgPasteRemoveStyles : "Remove Styles definitions",
-
-// Color Picker
-ColorAutomatic : "Automatic",
-ColorMoreColors : "More Colours...",
-
-// Document Properties
-DocProps : "Document Properties",
-
-// Anchor Dialog
-DlgAnchorTitle : "Anchor Properties",
-DlgAnchorName : "Anchor Name",
-DlgAnchorErrorName : "Please type the anchor name",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Not in dictionary",
-DlgSpellChangeTo : "Change to",
-DlgSpellBtnIgnore : "Ignore",
-DlgSpellBtnIgnoreAll : "Ignore All",
-DlgSpellBtnReplace : "Replace",
-DlgSpellBtnReplaceAll : "Replace All",
-DlgSpellBtnUndo : "Undo",
-DlgSpellNoSuggestions : "- No suggestions -",
-DlgSpellProgress : "Spell check in progress...",
-DlgSpellNoMispell : "Spell check complete: No misspellings found",
-DlgSpellNoChanges : "Spell check complete: No words changed",
-DlgSpellOneChange : "Spell check complete: One word changed",
-DlgSpellManyChanges : "Spell check complete: %1 words changed",
-
-IeSpellDownload : "Spell checker not installed. Do you want to download it now?",
-
-// Button Dialog
-DlgButtonText : "Text (Value)",
-DlgButtonType : "Type",
-DlgButtonTypeBtn : "Button",
-DlgButtonTypeSbm : "Submit",
-DlgButtonTypeRst : "Reset",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Name",
-DlgCheckboxValue : "Value",
-DlgCheckboxSelected : "Selected",
-
-// Form Dialog
-DlgFormName : "Name",
-DlgFormAction : "Action",
-DlgFormMethod : "Method",
-
-// Select Field Dialog
-DlgSelectName : "Name",
-DlgSelectValue : "Value",
-DlgSelectSize : "Size",
-DlgSelectLines : "lines",
-DlgSelectChkMulti : "Allow multiple selections",
-DlgSelectOpAvail : "Available Options",
-DlgSelectOpText : "Text",
-DlgSelectOpValue : "Value",
-DlgSelectBtnAdd : "Add",
-DlgSelectBtnModify : "Modify",
-DlgSelectBtnUp : "Up",
-DlgSelectBtnDown : "Down",
-DlgSelectBtnSetValue : "Set as selected value",
-DlgSelectBtnDelete : "Delete",
-
-// Textarea Dialog
-DlgTextareaName : "Name",
-DlgTextareaCols : "Columns",
-DlgTextareaRows : "Rows",
-
-// Text Field Dialog
-DlgTextName : "Name",
-DlgTextValue : "Value",
-DlgTextCharWidth : "Character Width",
-DlgTextMaxChars : "Maximum Characters",
-DlgTextType : "Type",
-DlgTextTypeText : "Text",
-DlgTextTypePass : "Password",
-
-// Hidden Field Dialog
-DlgHiddenName : "Name",
-DlgHiddenValue : "Value",
-
-// Bulleted List Dialog
-BulletedListProp : "Bulleted List Properties",
-NumberedListProp : "Numbered List Properties",
-DlgLstStart : "Start",
-DlgLstType : "Type",
-DlgLstTypeCircle : "Circle",
-DlgLstTypeDisc : "Disc",
-DlgLstTypeSquare : "Square",
-DlgLstTypeNumbers : "Numbers (1, 2, 3)",
-DlgLstTypeLCase : "Lowercase Letters (a, b, c)",
-DlgLstTypeUCase : "Uppercase Letters (A, B, C)",
-DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)",
-DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "General",
-DlgDocBackTab : "Background",
-DlgDocColorsTab : "Colours and Margins",
-DlgDocMetaTab : "Meta Data",
-
-DlgDocPageTitle : "Page Title",
-DlgDocLangDir : "Language Direction",
-DlgDocLangDirLTR : "Left to Right (LTR)",
-DlgDocLangDirRTL : "Right to Left (RTL)",
-DlgDocLangCode : "Language Code",
-DlgDocCharSet : "Character Set Encoding",
-DlgDocCharSetCE : "Central European",
-DlgDocCharSetCT : "Chinese Traditional (Big5)",
-DlgDocCharSetCR : "Cyrillic",
-DlgDocCharSetGR : "Greek",
-DlgDocCharSetJP : "Japanese",
-DlgDocCharSetKR : "Korean",
-DlgDocCharSetTR : "Turkish",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Western European",
-DlgDocCharSetOther : "Other Character Set Encoding",
-
-DlgDocDocType : "Document Type Heading",
-DlgDocDocTypeOther : "Other Document Type Heading",
-DlgDocIncXHTML : "Include XHTML Declarations",
-DlgDocBgColor : "Background Colour",
-DlgDocBgImage : "Background Image URL",
-DlgDocBgNoScroll : "Nonscrolling Background",
-DlgDocCText : "Text",
-DlgDocCLink : "Link",
-DlgDocCVisited : "Visited Link",
-DlgDocCActive : "Active Link",
-DlgDocMargins : "Page Margins",
-DlgDocMaTop : "Top",
-DlgDocMaLeft : "Left",
-DlgDocMaRight : "Right",
-DlgDocMaBottom : "Bottom",
-DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
-DlgDocMeDescr : "Document Description",
-DlgDocMeAuthor : "Author",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Preview",
-
-// Templates Dialog
-Templates : "Templates",
-DlgTemplatesTitle : "Content Templates",
-DlgTemplatesSelMsg : "Please select the template to open in the editor (the actual contents will be lost):",
-DlgTemplatesLoading : "Loading templates list. Please wait...",
-DlgTemplatesNoTpl : "(No templates defined)",
-DlgTemplatesReplace : "Replace actual contents",
-
-// About Dialog
-DlgAboutAboutTab : "About",
-DlgAboutBrowserInfoTab : "Browser Info",
-DlgAboutLicenseTab : "License",
-DlgAboutVersion : "version",
-DlgAboutInfo : "For further information go to",
-
-// Div Dialog
-DlgDivGeneralTab : "General",
-DlgDivAdvancedTab : "Advanced",
-DlgDivStyle : "Style",
-DlgDivInlineStyle : "Inline Style"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/en-uk.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/en-uk.js
deleted file mode 100755
index 0093c75..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/en-uk.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * English (United Kingdom) language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Collapse Toolbar",
-ToolbarExpand : "Expand Toolbar",
-
-// Toolbar Items and Context Menu
-Save : "Save",
-NewPage : "New Page",
-Preview : "Preview",
-Cut : "Cut",
-Copy : "Copy",
-Paste : "Paste",
-PasteText : "Paste as plain text",
-PasteWord : "Paste from Word",
-Print : "Print",
-SelectAll : "Select All",
-RemoveFormat : "Remove Format",
-InsertLinkLbl : "Link",
-InsertLink : "Insert/Edit Link",
-RemoveLink : "Remove Link",
-VisitLink : "Open Link",
-Anchor : "Insert/Edit Anchor",
-AnchorDelete : "Remove Anchor",
-InsertImageLbl : "Image",
-InsertImage : "Insert/Edit Image",
-InsertFlashLbl : "Flash",
-InsertFlash : "Insert/Edit Flash",
-InsertTableLbl : "Table",
-InsertTable : "Insert/Edit Table",
-InsertLineLbl : "Line",
-InsertLine : "Insert Horizontal Line",
-InsertSpecialCharLbl: "Special Character",
-InsertSpecialChar : "Insert Special Character",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Insert Smiley",
-About : "About FCKeditor",
-Bold : "Bold",
-Italic : "Italic",
-Underline : "Underline",
-StrikeThrough : "Strike Through",
-Subscript : "Subscript",
-Superscript : "Superscript",
-LeftJustify : "Left Justify",
-CenterJustify : "Centre Justify",
-RightJustify : "Right Justify",
-BlockJustify : "Block Justify",
-DecreaseIndent : "Decrease Indent",
-IncreaseIndent : "Increase Indent",
-Blockquote : "Blockquote",
-CreateDiv : "Create Div Container",
-EditDiv : "Edit Div Container",
-DeleteDiv : "Remove Div Container",
-Undo : "Undo",
-Redo : "Redo",
-NumberedListLbl : "Numbered List",
-NumberedList : "Insert/Remove Numbered List",
-BulletedListLbl : "Bulleted List",
-BulletedList : "Insert/Remove Bulleted List",
-ShowTableBorders : "Show Table Borders",
-ShowDetails : "Show Details",
-Style : "Style",
-FontFormat : "Format",
-Font : "Font",
-FontSize : "Size",
-TextColor : "Text Colour",
-BGColor : "Background Colour",
-Source : "Source",
-Find : "Find",
-Replace : "Replace",
-SpellCheck : "Check Spelling",
-UniversalKeyboard : "Universal Keyboard",
-PageBreakLbl : "Page Break",
-PageBreak : "Insert Page Break",
-
-Form : "Form",
-Checkbox : "Checkbox",
-RadioButton : "Radio Button",
-TextField : "Text Field",
-Textarea : "Textarea",
-HiddenField : "Hidden Field",
-Button : "Button",
-SelectionField : "Selection Field",
-ImageButton : "Image Button",
-
-FitWindow : "Maximize the editor size",
-ShowBlocks : "Show Blocks",
-
-// Context Menu
-EditLink : "Edit Link",
-CellCM : "Cell",
-RowCM : "Row",
-ColumnCM : "Column",
-InsertRowAfter : "Insert Row After",
-InsertRowBefore : "Insert Row Before",
-DeleteRows : "Delete Rows",
-InsertColumnAfter : "Insert Column After",
-InsertColumnBefore : "Insert Column Before",
-DeleteColumns : "Delete Columns",
-InsertCellAfter : "Insert Cell After",
-InsertCellBefore : "Insert Cell Before",
-DeleteCells : "Delete Cells",
-MergeCells : "Merge Cells",
-MergeRight : "Merge Right",
-MergeDown : "Merge Down",
-HorizontalSplitCell : "Split Cell Horizontally",
-VerticalSplitCell : "Split Cell Vertically",
-TableDelete : "Delete Table",
-CellProperties : "Cell Properties",
-TableProperties : "Table Properties",
-ImageProperties : "Image Properties",
-FlashProperties : "Flash Properties",
-
-AnchorProp : "Anchor Properties",
-ButtonProp : "Button Properties",
-CheckboxProp : "Checkbox Properties",
-HiddenFieldProp : "Hidden Field Properties",
-RadioButtonProp : "Radio Button Properties",
-ImageButtonProp : "Image Button Properties",
-TextFieldProp : "Text Field Properties",
-SelectionFieldProp : "Selection Field Properties",
-TextareaProp : "Textarea Properties",
-FormProp : "Form Properties",
-
-FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Processing XHTML. Please wait...",
-Done : "Done",
-PasteWordConfirm : "The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?",
-NotCompatiblePaste : "This command is available for Internet Explorer version 5.5 or more. Do you want to paste without cleaning?",
-UnknownToolbarItem : "Unknown toolbar item \"%1\"",
-UnknownCommand : "Unknown command name \"%1\"",
-NotImplemented : "Command not implemented",
-UnknownToolbarSet : "Toolbar set \"%1\" doesn't exist",
-NoActiveX : "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.",
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.",
-DialogBlocked : "It was not possible to open the dialog window. Make sure all popup blockers are disabled.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Cancel",
-DlgBtnClose : "Close",
-DlgBtnBrowseServer : "Browse Server",
-DlgAdvancedTag : "Advanced",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Please insert the URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Language Direction",
-DlgGenLangDirLtr : "Left to Right (LTR)",
-DlgGenLangDirRtl : "Right to Left (RTL)",
-DlgGenLangCode : "Language Code",
-DlgGenAccessKey : "Access Key",
-DlgGenName : "Name",
-DlgGenTabIndex : "Tab Index",
-DlgGenLongDescr : "Long Description URL",
-DlgGenClass : "Stylesheet Classes",
-DlgGenTitle : "Advisory Title",
-DlgGenContType : "Advisory Content Type",
-DlgGenLinkCharset : "Linked Resource Charset",
-DlgGenStyle : "Style",
-
-// Image Dialog
-DlgImgTitle : "Image Properties",
-DlgImgInfoTab : "Image Info",
-DlgImgBtnUpload : "Send it to the Server",
-DlgImgURL : "URL",
-DlgImgUpload : "Upload",
-DlgImgAlt : "Alternative Text",
-DlgImgWidth : "Width",
-DlgImgHeight : "Height",
-DlgImgLockRatio : "Lock Ratio",
-DlgBtnResetSize : "Reset Size",
-DlgImgBorder : "Border",
-DlgImgHSpace : "HSpace",
-DlgImgVSpace : "VSpace",
-DlgImgAlign : "Align",
-DlgImgAlignLeft : "Left",
-DlgImgAlignAbsBottom: "Abs Bottom",
-DlgImgAlignAbsMiddle: "Abs Middle",
-DlgImgAlignBaseline : "Baseline",
-DlgImgAlignBottom : "Bottom",
-DlgImgAlignMiddle : "Middle",
-DlgImgAlignRight : "Right",
-DlgImgAlignTextTop : "Text Top",
-DlgImgAlignTop : "Top",
-DlgImgPreview : "Preview",
-DlgImgAlertUrl : "Please type the image URL",
-DlgImgLinkTab : "Link",
-
-// Flash Dialog
-DlgFlashTitle : "Flash Properties",
-DlgFlashChkPlay : "Auto Play",
-DlgFlashChkLoop : "Loop",
-DlgFlashChkMenu : "Enable Flash Menu",
-DlgFlashScale : "Scale",
-DlgFlashScaleAll : "Show all",
-DlgFlashScaleNoBorder : "No Border",
-DlgFlashScaleFit : "Exact Fit",
-
-// Link Dialog
-DlgLnkWindowTitle : "Link",
-DlgLnkInfoTab : "Link Info",
-DlgLnkTargetTab : "Target",
-
-DlgLnkType : "Link Type",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Link to anchor in the text",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protocol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Select an Anchor",
-DlgLnkAnchorByName : "By Anchor Name",
-DlgLnkAnchorById : "By Element Id",
-DlgLnkNoAnchors : "(No anchors available in the document)",
-DlgLnkEMail : "E-Mail Address",
-DlgLnkEMailSubject : "Message Subject",
-DlgLnkEMailBody : "Message Body",
-DlgLnkUpload : "Upload",
-DlgLnkBtnUpload : "Send it to the Server",
-
-DlgLnkTarget : "Target",
-DlgLnkTargetFrame : " ",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "New Window (_blank)",
-DlgLnkTargetParent : "Parent Window (_parent)",
-DlgLnkTargetSelf : "Same Window (_self)",
-DlgLnkTargetTop : "Topmost Window (_top)",
-DlgLnkTargetFrameName : "Target Frame Name",
-DlgLnkPopWinName : "Popup Window Name",
-DlgLnkPopWinFeat : "Popup Window Features",
-DlgLnkPopResize : "Resizable",
-DlgLnkPopLocation : "Location Bar",
-DlgLnkPopMenu : "Menu Bar",
-DlgLnkPopScroll : "Scroll Bars",
-DlgLnkPopStatus : "Status Bar",
-DlgLnkPopToolbar : "Toolbar",
-DlgLnkPopFullScrn : "Full Screen (IE)",
-DlgLnkPopDependent : "Dependent (Netscape)",
-DlgLnkPopWidth : "Width",
-DlgLnkPopHeight : "Height",
-DlgLnkPopLeft : "Left Position",
-DlgLnkPopTop : "Top Position",
-
-DlnLnkMsgNoUrl : "Please type the link URL",
-DlnLnkMsgNoEMail : "Please type the e-mail address",
-DlnLnkMsgNoAnchor : "Please select an anchor",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces",
-
-// Color Dialog
-DlgColorTitle : "Select Colour",
-DlgColorBtnClear : "Clear",
-DlgColorHighlight : "Highlight",
-DlgColorSelected : "Selected",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insert a Smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Select Special Character",
-
-// Table Dialog
-DlgTableTitle : "Table Properties",
-DlgTableRows : "Rows",
-DlgTableColumns : "Columns",
-DlgTableBorder : "Border size",
-DlgTableAlign : "Alignment",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Left",
-DlgTableAlignCenter : "Centre",
-DlgTableAlignRight : "Right",
-DlgTableWidth : "Width",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "percent",
-DlgTableHeight : "Height",
-DlgTableCellSpace : "Cell spacing",
-DlgTableCellPad : "Cell padding",
-DlgTableCaption : "Caption",
-DlgTableSummary : "Summary",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Cell Properties",
-DlgCellWidth : "Width",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "percent",
-DlgCellHeight : "Height",
-DlgCellWordWrap : "Word Wrap",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Yes",
-DlgCellWordWrapNo : "No",
-DlgCellHorAlign : "Horizontal Alignment",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Left",
-DlgCellHorAlignCenter : "Centre",
-DlgCellHorAlignRight: "Right",
-DlgCellVerAlign : "Vertical Alignment",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Top",
-DlgCellVerAlignMiddle : "Middle",
-DlgCellVerAlignBottom : "Bottom",
-DlgCellVerAlignBaseline : "Baseline",
-DlgCellType : "Cell Type",
-DlgCellTypeData : "Data",
-DlgCellTypeHeader : "Header",
-DlgCellRowSpan : "Rows Span",
-DlgCellCollSpan : "Columns Span",
-DlgCellBackColor : "Background Colour",
-DlgCellBorderColor : "Border Colour",
-DlgCellBtnSelect : "Select...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace",
-
-// Find Dialog
-DlgFindTitle : "Find",
-DlgFindFindBtn : "Find",
-DlgFindNotFoundMsg : "The specified text was not found.",
-
-// Replace Dialog
-DlgReplaceTitle : "Replace",
-DlgReplaceFindLbl : "Find what:",
-DlgReplaceReplaceLbl : "Replace with:",
-DlgReplaceCaseChk : "Match case",
-DlgReplaceReplaceBtn : "Replace",
-DlgReplaceReplAllBtn : "Replace All",
-DlgReplaceWordChk : "Match whole word",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl+X).",
-PasteErrorCopy : "Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl+C).",
-
-PasteAsText : "Paste as Plain Text",
-PasteFromWord : "Paste from Word",
-
-DlgPasteMsg2 : "Please paste inside the following box using the keyboard (Ctrl+V ) and hit OK .",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",
-DlgPasteIgnoreFont : "Ignore Font Face definitions",
-DlgPasteRemoveStyles : "Remove Styles definitions",
-
-// Color Picker
-ColorAutomatic : "Automatic",
-ColorMoreColors : "More Colours...",
-
-// Document Properties
-DocProps : "Document Properties",
-
-// Anchor Dialog
-DlgAnchorTitle : "Anchor Properties",
-DlgAnchorName : "Anchor Name",
-DlgAnchorErrorName : "Please type the anchor name",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Not in dictionary",
-DlgSpellChangeTo : "Change to",
-DlgSpellBtnIgnore : "Ignore",
-DlgSpellBtnIgnoreAll : "Ignore All",
-DlgSpellBtnReplace : "Replace",
-DlgSpellBtnReplaceAll : "Replace All",
-DlgSpellBtnUndo : "Undo",
-DlgSpellNoSuggestions : "- No suggestions -",
-DlgSpellProgress : "Spell check in progress...",
-DlgSpellNoMispell : "Spell check complete: No misspellings found",
-DlgSpellNoChanges : "Spell check complete: No words changed",
-DlgSpellOneChange : "Spell check complete: One word changed",
-DlgSpellManyChanges : "Spell check complete: %1 words changed",
-
-IeSpellDownload : "Spell checker not installed. Do you want to download it now?",
-
-// Button Dialog
-DlgButtonText : "Text (Value)",
-DlgButtonType : "Type",
-DlgButtonTypeBtn : "Button",
-DlgButtonTypeSbm : "Submit",
-DlgButtonTypeRst : "Reset",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Name",
-DlgCheckboxValue : "Value",
-DlgCheckboxSelected : "Selected",
-
-// Form Dialog
-DlgFormName : "Name",
-DlgFormAction : "Action",
-DlgFormMethod : "Method",
-
-// Select Field Dialog
-DlgSelectName : "Name",
-DlgSelectValue : "Value",
-DlgSelectSize : "Size",
-DlgSelectLines : "lines",
-DlgSelectChkMulti : "Allow multiple selections",
-DlgSelectOpAvail : "Available Options",
-DlgSelectOpText : "Text",
-DlgSelectOpValue : "Value",
-DlgSelectBtnAdd : "Add",
-DlgSelectBtnModify : "Modify",
-DlgSelectBtnUp : "Up",
-DlgSelectBtnDown : "Down",
-DlgSelectBtnSetValue : "Set as selected value",
-DlgSelectBtnDelete : "Delete",
-
-// Textarea Dialog
-DlgTextareaName : "Name",
-DlgTextareaCols : "Columns",
-DlgTextareaRows : "Rows",
-
-// Text Field Dialog
-DlgTextName : "Name",
-DlgTextValue : "Value",
-DlgTextCharWidth : "Character Width",
-DlgTextMaxChars : "Maximum Characters",
-DlgTextType : "Type",
-DlgTextTypeText : "Text",
-DlgTextTypePass : "Password",
-
-// Hidden Field Dialog
-DlgHiddenName : "Name",
-DlgHiddenValue : "Value",
-
-// Bulleted List Dialog
-BulletedListProp : "Bulleted List Properties",
-NumberedListProp : "Numbered List Properties",
-DlgLstStart : "Start",
-DlgLstType : "Type",
-DlgLstTypeCircle : "Circle",
-DlgLstTypeDisc : "Disc",
-DlgLstTypeSquare : "Square",
-DlgLstTypeNumbers : "Numbers (1, 2, 3)",
-DlgLstTypeLCase : "Lowercase Letters (a, b, c)",
-DlgLstTypeUCase : "Uppercase Letters (A, B, C)",
-DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)",
-DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "General",
-DlgDocBackTab : "Background",
-DlgDocColorsTab : "Colours and Margins",
-DlgDocMetaTab : "Meta Data",
-
-DlgDocPageTitle : "Page Title",
-DlgDocLangDir : "Language Direction",
-DlgDocLangDirLTR : "Left to Right (LTR)",
-DlgDocLangDirRTL : "Right to Left (RTL)",
-DlgDocLangCode : "Language Code",
-DlgDocCharSet : "Character Set Encoding",
-DlgDocCharSetCE : "Central European",
-DlgDocCharSetCT : "Chinese Traditional (Big5)",
-DlgDocCharSetCR : "Cyrillic",
-DlgDocCharSetGR : "Greek",
-DlgDocCharSetJP : "Japanese",
-DlgDocCharSetKR : "Korean",
-DlgDocCharSetTR : "Turkish",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Western European",
-DlgDocCharSetOther : "Other Character Set Encoding",
-
-DlgDocDocType : "Document Type Heading",
-DlgDocDocTypeOther : "Other Document Type Heading",
-DlgDocIncXHTML : "Include XHTML Declarations",
-DlgDocBgColor : "Background Colour",
-DlgDocBgImage : "Background Image URL",
-DlgDocBgNoScroll : "Nonscrolling Background",
-DlgDocCText : "Text",
-DlgDocCLink : "Link",
-DlgDocCVisited : "Visited Link",
-DlgDocCActive : "Active Link",
-DlgDocMargins : "Page Margins",
-DlgDocMaTop : "Top",
-DlgDocMaLeft : "Left",
-DlgDocMaRight : "Right",
-DlgDocMaBottom : "Bottom",
-DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
-DlgDocMeDescr : "Document Description",
-DlgDocMeAuthor : "Author",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Preview",
-
-// Templates Dialog
-Templates : "Templates",
-DlgTemplatesTitle : "Content Templates",
-DlgTemplatesSelMsg : "Please select the template to open in the editor (the actual contents will be lost):",
-DlgTemplatesLoading : "Loading templates list. Please wait...",
-DlgTemplatesNoTpl : "(No templates defined)",
-DlgTemplatesReplace : "Replace actual contents",
-
-// About Dialog
-DlgAboutAboutTab : "About",
-DlgAboutBrowserInfoTab : "Browser Info",
-DlgAboutLicenseTab : "License",
-DlgAboutVersion : "version",
-DlgAboutInfo : "For further information go to",
-
-// Div Dialog
-DlgDivGeneralTab : "General",
-DlgDivAdvancedTab : "Advanced",
-DlgDivStyle : "Style",
-DlgDivInlineStyle : "Inline Style"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/en.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/en.js
deleted file mode 100755
index 5e26de2..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/en.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * English language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Collapse Toolbar",
-ToolbarExpand : "Expand Toolbar",
-
-// Toolbar Items and Context Menu
-Save : "Save",
-NewPage : "New Page",
-Preview : "Preview",
-Cut : "Cut",
-Copy : "Copy",
-Paste : "Paste",
-PasteText : "Paste as plain text",
-PasteWord : "Paste from Word",
-Print : "Print",
-SelectAll : "Select All",
-RemoveFormat : "Remove Format",
-InsertLinkLbl : "Link",
-InsertLink : "Insert/Edit Link",
-RemoveLink : "Remove Link",
-VisitLink : "Open Link",
-Anchor : "Insert/Edit Anchor",
-AnchorDelete : "Remove Anchor",
-InsertImageLbl : "Image",
-InsertImage : "Insert/Edit Image",
-InsertFlashLbl : "Flash",
-InsertFlash : "Insert/Edit Flash",
-InsertTableLbl : "Table",
-InsertTable : "Insert/Edit Table",
-InsertLineLbl : "Line",
-InsertLine : "Insert Horizontal Line",
-InsertSpecialCharLbl: "Special Character",
-InsertSpecialChar : "Insert Special Character",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Insert Smiley",
-About : "About FCKeditor",
-Bold : "Bold",
-Italic : "Italic",
-Underline : "Underline",
-StrikeThrough : "Strike Through",
-Subscript : "Subscript",
-Superscript : "Superscript",
-LeftJustify : "Left Justify",
-CenterJustify : "Center Justify",
-RightJustify : "Right Justify",
-BlockJustify : "Block Justify",
-DecreaseIndent : "Decrease Indent",
-IncreaseIndent : "Increase Indent",
-Blockquote : "Blockquote",
-CreateDiv : "Create Div Container",
-EditDiv : "Edit Div Container",
-DeleteDiv : "Remove Div Container",
-Undo : "Undo",
-Redo : "Redo",
-NumberedListLbl : "Numbered List",
-NumberedList : "Insert/Remove Numbered List",
-BulletedListLbl : "Bulleted List",
-BulletedList : "Insert/Remove Bulleted List",
-ShowTableBorders : "Show Table Borders",
-ShowDetails : "Show Details",
-Style : "Style",
-FontFormat : "Format",
-Font : "Font",
-FontSize : "Size",
-TextColor : "Text Color",
-BGColor : "Background Color",
-Source : "Source",
-Find : "Find",
-Replace : "Replace",
-SpellCheck : "Check Spelling",
-UniversalKeyboard : "Universal Keyboard",
-PageBreakLbl : "Page Break",
-PageBreak : "Insert Page Break",
-
-Form : "Form",
-Checkbox : "Checkbox",
-RadioButton : "Radio Button",
-TextField : "Text Field",
-Textarea : "Textarea",
-HiddenField : "Hidden Field",
-Button : "Button",
-SelectionField : "Selection Field",
-ImageButton : "Image Button",
-
-FitWindow : "Maximize the editor size",
-ShowBlocks : "Show Blocks",
-
-// Context Menu
-EditLink : "Edit Link",
-CellCM : "Cell",
-RowCM : "Row",
-ColumnCM : "Column",
-InsertRowAfter : "Insert Row After",
-InsertRowBefore : "Insert Row Before",
-DeleteRows : "Delete Rows",
-InsertColumnAfter : "Insert Column After",
-InsertColumnBefore : "Insert Column Before",
-DeleteColumns : "Delete Columns",
-InsertCellAfter : "Insert Cell After",
-InsertCellBefore : "Insert Cell Before",
-DeleteCells : "Delete Cells",
-MergeCells : "Merge Cells",
-MergeRight : "Merge Right",
-MergeDown : "Merge Down",
-HorizontalSplitCell : "Split Cell Horizontally",
-VerticalSplitCell : "Split Cell Vertically",
-TableDelete : "Delete Table",
-CellProperties : "Cell Properties",
-TableProperties : "Table Properties",
-ImageProperties : "Image Properties",
-FlashProperties : "Flash Properties",
-
-AnchorProp : "Anchor Properties",
-ButtonProp : "Button Properties",
-CheckboxProp : "Checkbox Properties",
-HiddenFieldProp : "Hidden Field Properties",
-RadioButtonProp : "Radio Button Properties",
-ImageButtonProp : "Image Button Properties",
-TextFieldProp : "Text Field Properties",
-SelectionFieldProp : "Selection Field Properties",
-TextareaProp : "Textarea Properties",
-FormProp : "Form Properties",
-
-FontFormats : "Normal;Formatted;Address;Heading 1;Heading 2;Heading 3;Heading 4;Heading 5;Heading 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Processing XHTML. Please wait...",
-Done : "Done",
-PasteWordConfirm : "The text you want to paste seems to be copied from Word. Do you want to clean it before pasting?",
-NotCompatiblePaste : "This command is available for Internet Explorer version 5.5 or more. Do you want to paste without cleaning?",
-UnknownToolbarItem : "Unknown toolbar item \"%1\"",
-UnknownCommand : "Unknown command name \"%1\"",
-NotImplemented : "Command not implemented",
-UnknownToolbarSet : "Toolbar set \"%1\" doesn't exist",
-NoActiveX : "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.",
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.",
-DialogBlocked : "It was not possible to open the dialog window. Make sure all popup blockers are disabled.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Cancel",
-DlgBtnClose : "Close",
-DlgBtnBrowseServer : "Browse Server",
-DlgAdvancedTag : "Advanced",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Please insert the URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Language Direction",
-DlgGenLangDirLtr : "Left to Right (LTR)",
-DlgGenLangDirRtl : "Right to Left (RTL)",
-DlgGenLangCode : "Language Code",
-DlgGenAccessKey : "Access Key",
-DlgGenName : "Name",
-DlgGenTabIndex : "Tab Index",
-DlgGenLongDescr : "Long Description URL",
-DlgGenClass : "Stylesheet Classes",
-DlgGenTitle : "Advisory Title",
-DlgGenContType : "Advisory Content Type",
-DlgGenLinkCharset : "Linked Resource Charset",
-DlgGenStyle : "Style",
-
-// Image Dialog
-DlgImgTitle : "Image Properties",
-DlgImgInfoTab : "Image Info",
-DlgImgBtnUpload : "Send it to the Server",
-DlgImgURL : "URL",
-DlgImgUpload : "Upload",
-DlgImgAlt : "Alternative Text",
-DlgImgWidth : "Width",
-DlgImgHeight : "Height",
-DlgImgLockRatio : "Lock Ratio",
-DlgBtnResetSize : "Reset Size",
-DlgImgBorder : "Border",
-DlgImgHSpace : "HSpace",
-DlgImgVSpace : "VSpace",
-DlgImgAlign : "Align",
-DlgImgAlignLeft : "Left",
-DlgImgAlignAbsBottom: "Abs Bottom",
-DlgImgAlignAbsMiddle: "Abs Middle",
-DlgImgAlignBaseline : "Baseline",
-DlgImgAlignBottom : "Bottom",
-DlgImgAlignMiddle : "Middle",
-DlgImgAlignRight : "Right",
-DlgImgAlignTextTop : "Text Top",
-DlgImgAlignTop : "Top",
-DlgImgPreview : "Preview",
-DlgImgAlertUrl : "Please type the image URL",
-DlgImgLinkTab : "Link",
-
-// Flash Dialog
-DlgFlashTitle : "Flash Properties",
-DlgFlashChkPlay : "Auto Play",
-DlgFlashChkLoop : "Loop",
-DlgFlashChkMenu : "Enable Flash Menu",
-DlgFlashScale : "Scale",
-DlgFlashScaleAll : "Show all",
-DlgFlashScaleNoBorder : "No Border",
-DlgFlashScaleFit : "Exact Fit",
-
-// Link Dialog
-DlgLnkWindowTitle : "Link",
-DlgLnkInfoTab : "Link Info",
-DlgLnkTargetTab : "Target",
-
-DlgLnkType : "Link Type",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Link to anchor in the text",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protocol",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Select an Anchor",
-DlgLnkAnchorByName : "By Anchor Name",
-DlgLnkAnchorById : "By Element Id",
-DlgLnkNoAnchors : "(No anchors available in the document)",
-DlgLnkEMail : "E-Mail Address",
-DlgLnkEMailSubject : "Message Subject",
-DlgLnkEMailBody : "Message Body",
-DlgLnkUpload : "Upload",
-DlgLnkBtnUpload : "Send it to the Server",
-
-DlgLnkTarget : "Target",
-DlgLnkTargetFrame : " ",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "New Window (_blank)",
-DlgLnkTargetParent : "Parent Window (_parent)",
-DlgLnkTargetSelf : "Same Window (_self)",
-DlgLnkTargetTop : "Topmost Window (_top)",
-DlgLnkTargetFrameName : "Target Frame Name",
-DlgLnkPopWinName : "Popup Window Name",
-DlgLnkPopWinFeat : "Popup Window Features",
-DlgLnkPopResize : "Resizable",
-DlgLnkPopLocation : "Location Bar",
-DlgLnkPopMenu : "Menu Bar",
-DlgLnkPopScroll : "Scroll Bars",
-DlgLnkPopStatus : "Status Bar",
-DlgLnkPopToolbar : "Toolbar",
-DlgLnkPopFullScrn : "Full Screen (IE)",
-DlgLnkPopDependent : "Dependent (Netscape)",
-DlgLnkPopWidth : "Width",
-DlgLnkPopHeight : "Height",
-DlgLnkPopLeft : "Left Position",
-DlgLnkPopTop : "Top Position",
-
-DlnLnkMsgNoUrl : "Please type the link URL",
-DlnLnkMsgNoEMail : "Please type the e-mail address",
-DlnLnkMsgNoAnchor : "Please select an anchor",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces",
-
-// Color Dialog
-DlgColorTitle : "Select Color",
-DlgColorBtnClear : "Clear",
-DlgColorHighlight : "Highlight",
-DlgColorSelected : "Selected",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insert a Smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Select Special Character",
-
-// Table Dialog
-DlgTableTitle : "Table Properties",
-DlgTableRows : "Rows",
-DlgTableColumns : "Columns",
-DlgTableBorder : "Border size",
-DlgTableAlign : "Alignment",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Left",
-DlgTableAlignCenter : "Center",
-DlgTableAlignRight : "Right",
-DlgTableWidth : "Width",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "percent",
-DlgTableHeight : "Height",
-DlgTableCellSpace : "Cell spacing",
-DlgTableCellPad : "Cell padding",
-DlgTableCaption : "Caption",
-DlgTableSummary : "Summary",
-DlgTableHeaders : "Headers",
-DlgTableHeadersNone : "None",
-DlgTableHeadersColumn : "First column",
-DlgTableHeadersRow : "First Row",
-DlgTableHeadersBoth : "Both",
-
-// Table Cell Dialog
-DlgCellTitle : "Cell Properties",
-DlgCellWidth : "Width",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "percent",
-DlgCellHeight : "Height",
-DlgCellWordWrap : "Word Wrap",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Yes",
-DlgCellWordWrapNo : "No",
-DlgCellHorAlign : "Horizontal Alignment",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Left",
-DlgCellHorAlignCenter : "Center",
-DlgCellHorAlignRight: "Right",
-DlgCellVerAlign : "Vertical Alignment",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Top",
-DlgCellVerAlignMiddle : "Middle",
-DlgCellVerAlignBottom : "Bottom",
-DlgCellVerAlignBaseline : "Baseline",
-DlgCellType : "Cell Type",
-DlgCellTypeData : "Data",
-DlgCellTypeHeader : "Header",
-DlgCellRowSpan : "Rows Span",
-DlgCellCollSpan : "Columns Span",
-DlgCellBackColor : "Background Color",
-DlgCellBorderColor : "Border Color",
-DlgCellBtnSelect : "Select...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace",
-
-// Find Dialog
-DlgFindTitle : "Find",
-DlgFindFindBtn : "Find",
-DlgFindNotFoundMsg : "The specified text was not found.",
-
-// Replace Dialog
-DlgReplaceTitle : "Replace",
-DlgReplaceFindLbl : "Find what:",
-DlgReplaceReplaceLbl : "Replace with:",
-DlgReplaceCaseChk : "Match case",
-DlgReplaceReplaceBtn : "Replace",
-DlgReplaceReplAllBtn : "Replace All",
-DlgReplaceWordChk : "Match whole word",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Your browser security settings don't permit the editor to automatically execute cutting operations. Please use the keyboard for that (Ctrl+X).",
-PasteErrorCopy : "Your browser security settings don't permit the editor to automatically execute copying operations. Please use the keyboard for that (Ctrl+C).",
-
-PasteAsText : "Paste as Plain Text",
-PasteFromWord : "Paste from Word",
-
-DlgPasteMsg2 : "Please paste inside the following box using the keyboard (Ctrl+V ) and hit OK .",
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.",
-DlgPasteIgnoreFont : "Ignore Font Face definitions",
-DlgPasteRemoveStyles : "Remove Styles definitions",
-
-// Color Picker
-ColorAutomatic : "Automatic",
-ColorMoreColors : "More Colors...",
-
-// Document Properties
-DocProps : "Document Properties",
-
-// Anchor Dialog
-DlgAnchorTitle : "Anchor Properties",
-DlgAnchorName : "Anchor Name",
-DlgAnchorErrorName : "Please type the anchor name",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Not in dictionary",
-DlgSpellChangeTo : "Change to",
-DlgSpellBtnIgnore : "Ignore",
-DlgSpellBtnIgnoreAll : "Ignore All",
-DlgSpellBtnReplace : "Replace",
-DlgSpellBtnReplaceAll : "Replace All",
-DlgSpellBtnUndo : "Undo",
-DlgSpellNoSuggestions : "- No suggestions -",
-DlgSpellProgress : "Spell check in progress...",
-DlgSpellNoMispell : "Spell check complete: No misspellings found",
-DlgSpellNoChanges : "Spell check complete: No words changed",
-DlgSpellOneChange : "Spell check complete: One word changed",
-DlgSpellManyChanges : "Spell check complete: %1 words changed",
-
-IeSpellDownload : "Spell checker not installed. Do you want to download it now?",
-
-// Button Dialog
-DlgButtonText : "Text (Value)",
-DlgButtonType : "Type",
-DlgButtonTypeBtn : "Button",
-DlgButtonTypeSbm : "Submit",
-DlgButtonTypeRst : "Reset",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Name",
-DlgCheckboxValue : "Value",
-DlgCheckboxSelected : "Selected",
-
-// Form Dialog
-DlgFormName : "Name",
-DlgFormAction : "Action",
-DlgFormMethod : "Method",
-
-// Select Field Dialog
-DlgSelectName : "Name",
-DlgSelectValue : "Value",
-DlgSelectSize : "Size",
-DlgSelectLines : "lines",
-DlgSelectChkMulti : "Allow multiple selections",
-DlgSelectOpAvail : "Available Options",
-DlgSelectOpText : "Text",
-DlgSelectOpValue : "Value",
-DlgSelectBtnAdd : "Add",
-DlgSelectBtnModify : "Modify",
-DlgSelectBtnUp : "Up",
-DlgSelectBtnDown : "Down",
-DlgSelectBtnSetValue : "Set as selected value",
-DlgSelectBtnDelete : "Delete",
-
-// Textarea Dialog
-DlgTextareaName : "Name",
-DlgTextareaCols : "Columns",
-DlgTextareaRows : "Rows",
-
-// Text Field Dialog
-DlgTextName : "Name",
-DlgTextValue : "Value",
-DlgTextCharWidth : "Character Width",
-DlgTextMaxChars : "Maximum Characters",
-DlgTextType : "Type",
-DlgTextTypeText : "Text",
-DlgTextTypePass : "Password",
-
-// Hidden Field Dialog
-DlgHiddenName : "Name",
-DlgHiddenValue : "Value",
-
-// Bulleted List Dialog
-BulletedListProp : "Bulleted List Properties",
-NumberedListProp : "Numbered List Properties",
-DlgLstStart : "Start",
-DlgLstType : "Type",
-DlgLstTypeCircle : "Circle",
-DlgLstTypeDisc : "Disc",
-DlgLstTypeSquare : "Square",
-DlgLstTypeNumbers : "Numbers (1, 2, 3)",
-DlgLstTypeLCase : "Lowercase Letters (a, b, c)",
-DlgLstTypeUCase : "Uppercase Letters (A, B, C)",
-DlgLstTypeSRoman : "Small Roman Numerals (i, ii, iii)",
-DlgLstTypeLRoman : "Large Roman Numerals (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "General",
-DlgDocBackTab : "Background",
-DlgDocColorsTab : "Colors and Margins",
-DlgDocMetaTab : "Meta Data",
-
-DlgDocPageTitle : "Page Title",
-DlgDocLangDir : "Language Direction",
-DlgDocLangDirLTR : "Left to Right (LTR)",
-DlgDocLangDirRTL : "Right to Left (RTL)",
-DlgDocLangCode : "Language Code",
-DlgDocCharSet : "Character Set Encoding",
-DlgDocCharSetCE : "Central European",
-DlgDocCharSetCT : "Chinese Traditional (Big5)",
-DlgDocCharSetCR : "Cyrillic",
-DlgDocCharSetGR : "Greek",
-DlgDocCharSetJP : "Japanese",
-DlgDocCharSetKR : "Korean",
-DlgDocCharSetTR : "Turkish",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Western European",
-DlgDocCharSetOther : "Other Character Set Encoding",
-
-DlgDocDocType : "Document Type Heading",
-DlgDocDocTypeOther : "Other Document Type Heading",
-DlgDocIncXHTML : "Include XHTML Declarations",
-DlgDocBgColor : "Background Color",
-DlgDocBgImage : "Background Image URL",
-DlgDocBgNoScroll : "Nonscrolling Background",
-DlgDocCText : "Text",
-DlgDocCLink : "Link",
-DlgDocCVisited : "Visited Link",
-DlgDocCActive : "Active Link",
-DlgDocMargins : "Page Margins",
-DlgDocMaTop : "Top",
-DlgDocMaLeft : "Left",
-DlgDocMaRight : "Right",
-DlgDocMaBottom : "Bottom",
-DlgDocMeIndex : "Document Indexing Keywords (comma separated)",
-DlgDocMeDescr : "Document Description",
-DlgDocMeAuthor : "Author",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Preview",
-
-// Templates Dialog
-Templates : "Templates",
-DlgTemplatesTitle : "Content Templates",
-DlgTemplatesSelMsg : "Please select the template to open in the editor (the actual contents will be lost):",
-DlgTemplatesLoading : "Loading templates list. Please wait...",
-DlgTemplatesNoTpl : "(No templates defined)",
-DlgTemplatesReplace : "Replace actual contents",
-
-// About Dialog
-DlgAboutAboutTab : "About",
-DlgAboutBrowserInfoTab : "Browser Info",
-DlgAboutLicenseTab : "License",
-DlgAboutVersion : "version",
-DlgAboutInfo : "For further information go to",
-
-// Div Dialog
-DlgDivGeneralTab : "General",
-DlgDivAdvancedTab : "Advanced",
-DlgDivStyle : "Style",
-DlgDivInlineStyle : "Inline Style"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/eo.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/eo.js
deleted file mode 100755
index f2e6c67..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/eo.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Esperanto language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Kaŝi Ilobreton",
-ToolbarExpand : "Vidigi Ilojn",
-
-// Toolbar Items and Context Menu
-Save : "Sekurigi",
-NewPage : "Nova Paĝo",
-Preview : "Vidigi Aspekton",
-Cut : "Eltondi",
-Copy : "Kopii",
-Paste : "Interglui",
-PasteText : "Interglui kiel Tekston",
-PasteWord : "Interglui el Word",
-Print : "Presi",
-SelectAll : "Elekti ĉion",
-RemoveFormat : "Forigi Formaton",
-InsertLinkLbl : "Ligilo",
-InsertLink : "Enmeti/Ŝanĝi Ligilon",
-RemoveLink : "Forigi Ligilon",
-VisitLink : "Open Link", //MISSING
-Anchor : "Enmeti/Ŝanĝi Ankron",
-AnchorDelete : "Remove Anchor", //MISSING
-InsertImageLbl : "Bildo",
-InsertImage : "Enmeti/Ŝanĝi Bildon",
-InsertFlashLbl : "Flash", //MISSING
-InsertFlash : "Insert/Edit Flash", //MISSING
-InsertTableLbl : "Tabelo",
-InsertTable : "Enmeti/Ŝanĝi Tabelon",
-InsertLineLbl : "Horizonta Linio",
-InsertLine : "Enmeti Horizonta Linio",
-InsertSpecialCharLbl: "Speciala Signo",
-InsertSpecialChar : "Enmeti Specialan Signon",
-InsertSmileyLbl : "Mienvinjeto",
-InsertSmiley : "Enmeti Mienvinjeton",
-About : "Pri FCKeditor",
-Bold : "Grasa",
-Italic : "Kursiva",
-Underline : "Substreko",
-StrikeThrough : "Trastreko",
-Subscript : "Subskribo",
-Superscript : "Superskribo",
-LeftJustify : "Maldekstrigi",
-CenterJustify : "Centrigi",
-RightJustify : "Dekstrigi",
-BlockJustify : "Ĝisrandigi Ambaŭflanke",
-DecreaseIndent : "Malpligrandigi Krommarĝenon",
-IncreaseIndent : "Pligrandigi Krommarĝenon",
-Blockquote : "Blockquote", //MISSING
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "Malfari",
-Redo : "Refari",
-NumberedListLbl : "Numera Listo",
-NumberedList : "Enmeti/Forigi Numeran Liston",
-BulletedListLbl : "Bula Listo",
-BulletedList : "Enmeti/Forigi Bulan Liston",
-ShowTableBorders : "Vidigi Borderojn de Tabelo",
-ShowDetails : "Vidigi Detalojn",
-Style : "Stilo",
-FontFormat : "Formato",
-Font : "Tiparo",
-FontSize : "Grando",
-TextColor : "Teksta Koloro",
-BGColor : "Fona Koloro",
-Source : "Fonto",
-Find : "Serĉi",
-Replace : "Anstataŭigi",
-SpellCheck : "Literumada Kontrolilo",
-UniversalKeyboard : "Universala Klavaro",
-PageBreakLbl : "Page Break", //MISSING
-PageBreak : "Insert Page Break", //MISSING
-
-Form : "Formularo",
-Checkbox : "Markobutono",
-RadioButton : "Radiobutono",
-TextField : "Teksta kampo",
-Textarea : "Teksta Areo",
-HiddenField : "Kaŝita Kampo",
-Button : "Butono",
-SelectionField : "Elekta Kampo",
-ImageButton : "Bildbutono",
-
-FitWindow : "Maximize the editor size", //MISSING
-ShowBlocks : "Show Blocks", //MISSING
-
-// Context Menu
-EditLink : "Modifier Ligilon",
-CellCM : "Cell", //MISSING
-RowCM : "Row", //MISSING
-ColumnCM : "Column", //MISSING
-InsertRowAfter : "Insert Row After", //MISSING
-InsertRowBefore : "Insert Row Before", //MISSING
-DeleteRows : "Forigi Liniojn",
-InsertColumnAfter : "Insert Column After", //MISSING
-InsertColumnBefore : "Insert Column Before", //MISSING
-DeleteColumns : "Forigi Kolumnojn",
-InsertCellAfter : "Insert Cell After", //MISSING
-InsertCellBefore : "Insert Cell Before", //MISSING
-DeleteCells : "Forigi Ĉelojn",
-MergeCells : "Kunfandi Ĉelojn",
-MergeRight : "Merge Right", //MISSING
-MergeDown : "Merge Down", //MISSING
-HorizontalSplitCell : "Split Cell Horizontally", //MISSING
-VerticalSplitCell : "Split Cell Vertically", //MISSING
-TableDelete : "Delete Table", //MISSING
-CellProperties : "Atributoj de Ĉelo",
-TableProperties : "Atributoj de Tabelo",
-ImageProperties : "Atributoj de Bildo",
-FlashProperties : "Flash Properties", //MISSING
-
-AnchorProp : "Ankraj Atributoj",
-ButtonProp : "Butonaj Atributoj",
-CheckboxProp : "Markobutonaj Atributoj",
-HiddenFieldProp : "Atributoj de Kaŝita Kampo",
-RadioButtonProp : "Radiobutonaj Atributoj",
-ImageButtonProp : "Bildbutonaj Atributoj",
-TextFieldProp : "Atributoj de Teksta Kampo",
-SelectionFieldProp : "Atributoj de Elekta Kampo",
-TextareaProp : "Atributoj de Teksta Areo",
-FormProp : "Formularaj Atributoj",
-
-FontFormats : "Normala;Formatita;Adreso;Titolo 1;Titolo 2;Titolo 3;Titolo 4;Titolo 5;Titolo 6;Paragrafo (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Traktado de XHTML. Bonvolu pacienci...",
-Done : "Finita",
-PasteWordConfirm : "La algluota teksto ŝajnas esti Word-devena. Ĉu vi volas purigi ĝin antaŭ ol interglui?",
-NotCompatiblePaste : "Tiu ĉi komando bezonas almenaŭ Internet Explorer 5.5. Ĉu vi volas daŭrigi sen purigado?",
-UnknownToolbarItem : "Ilobretero nekonata \"%1\"",
-UnknownCommand : "Komandonomo nekonata \"%1\"",
-NotImplemented : "Komando ne ankoraŭ realigita",
-UnknownToolbarSet : "La ilobreto \"%1\" ne ekzistas",
-NoActiveX : "Your browser's security settings could limit some features of the editor. You must enable the option \"Run ActiveX controls and plug-ins\". You may experience errors and notice missing features.", //MISSING
-BrowseServerBlocked : "The resources browser could not be opened. Make sure that all popup blockers are disabled.", //MISSING
-DialogBlocked : "It was not possible to open the dialog window. Make sure all popup blockers are disabled.", //MISSING
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "Akcepti",
-DlgBtnCancel : "Rezigni",
-DlgBtnClose : "Fermi",
-DlgBtnBrowseServer : "Foliumi en la Servilo",
-DlgAdvancedTag : "Speciala",
-DlgOpOther : "",
-DlgInfoTab : "Info", //MISSING
-DlgAlertUrl : "Please insert the URL", //MISSING
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Skribdirekto",
-DlgGenLangDirLtr : "De maldekstro dekstren (LTR)",
-DlgGenLangDirRtl : "De dekstro maldekstren (RTL)",
-DlgGenLangCode : "Lingva Kodo",
-DlgGenAccessKey : "Fulmoklavo",
-DlgGenName : "Nomo",
-DlgGenTabIndex : "Taba Ordo",
-DlgGenLongDescr : "URL de Longa Priskribo",
-DlgGenClass : "Klasoj de Stilfolioj",
-DlgGenTitle : "Indika Titolo",
-DlgGenContType : "Indika Enhavotipo",
-DlgGenLinkCharset : "Signaro de la Ligita Rimedo",
-DlgGenStyle : "Stilo",
-
-// Image Dialog
-DlgImgTitle : "Atributoj de Bildo",
-DlgImgInfoTab : "Informoj pri Bildo",
-DlgImgBtnUpload : "Sendu al Servilo",
-DlgImgURL : "URL",
-DlgImgUpload : "Alŝuti",
-DlgImgAlt : "Anstataŭiga Teksto",
-DlgImgWidth : "Larĝo",
-DlgImgHeight : "Alto",
-DlgImgLockRatio : "Konservi Proporcion",
-DlgBtnResetSize : "Origina Grando",
-DlgImgBorder : "Bordero",
-DlgImgHSpace : "HSpaco",
-DlgImgVSpace : "VSpaco",
-DlgImgAlign : "Ĝisrandigo",
-DlgImgAlignLeft : "Maldekstre",
-DlgImgAlignAbsBottom: "Abs Malsupre",
-DlgImgAlignAbsMiddle: "Abs Centre",
-DlgImgAlignBaseline : "Je Malsupro de Teksto",
-DlgImgAlignBottom : "Malsupre",
-DlgImgAlignMiddle : "Centre",
-DlgImgAlignRight : "Dekstre",
-DlgImgAlignTextTop : "Je Supro de Teksto",
-DlgImgAlignTop : "Supre",
-DlgImgPreview : "Vidigi Aspekton",
-DlgImgAlertUrl : "Bonvolu tajpi la URL de la bildo",
-DlgImgLinkTab : "Link", //MISSING
-
-// Flash Dialog
-DlgFlashTitle : "Flash Properties", //MISSING
-DlgFlashChkPlay : "Auto Play", //MISSING
-DlgFlashChkLoop : "Loop", //MISSING
-DlgFlashChkMenu : "Enable Flash Menu", //MISSING
-DlgFlashScale : "Scale", //MISSING
-DlgFlashScaleAll : "Show all", //MISSING
-DlgFlashScaleNoBorder : "No Border", //MISSING
-DlgFlashScaleFit : "Exact Fit", //MISSING
-
-// Link Dialog
-DlgLnkWindowTitle : "Ligilo",
-DlgLnkInfoTab : "Informoj pri la Ligilo",
-DlgLnkTargetTab : "Celo",
-
-DlgLnkType : "Tipo de Ligilo",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Ankri en tiu ĉi paĝo",
-DlgLnkTypeEMail : "Retpoŝto",
-DlgLnkProto : "Protokolo",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Elekti Ankron",
-DlgLnkAnchorByName : "Per Ankronomo",
-DlgLnkAnchorById : "Per Elementidentigilo",
-DlgLnkNoAnchors : "",
-DlgLnkEMail : "Retadreso",
-DlgLnkEMailSubject : "Temlinio",
-DlgLnkEMailBody : "Mesaĝa korpo",
-DlgLnkUpload : "Alŝuti",
-DlgLnkBtnUpload : "Sendi al Servilo",
-
-DlgLnkTarget : "Celo",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "<ŝprucfenestro>",
-DlgLnkTargetBlank : "Nova Fenestro (_blank)",
-DlgLnkTargetParent : "Gepatra Fenestro (_parent)",
-DlgLnkTargetSelf : "Sama Fenestro (_self)",
-DlgLnkTargetTop : "Plej Supra Fenestro (_top)",
-DlgLnkTargetFrameName : "Nomo de Kadro",
-DlgLnkPopWinName : "Nomo de Ŝprucfenestro",
-DlgLnkPopWinFeat : "Atributoj de la Ŝprucfenestro",
-DlgLnkPopResize : "Grando Ŝanĝebla",
-DlgLnkPopLocation : "Adresobreto",
-DlgLnkPopMenu : "Menubreto",
-DlgLnkPopScroll : "Rulumlisteloj",
-DlgLnkPopStatus : "Statobreto",
-DlgLnkPopToolbar : "Ilobreto",
-DlgLnkPopFullScrn : "Tutekrane (IE)",
-DlgLnkPopDependent : "Dependa (Netscape)",
-DlgLnkPopWidth : "Larĝo",
-DlgLnkPopHeight : "Alto",
-DlgLnkPopLeft : "Pozicio de Maldekstro",
-DlgLnkPopTop : "Pozicio de Supro",
-
-DlnLnkMsgNoUrl : "Bonvolu entajpi la URL-on",
-DlnLnkMsgNoEMail : "Bonvolu entajpi la retadreson",
-DlnLnkMsgNoAnchor : "Bonvolu elekti ankron",
-DlnLnkMsgInvPopName : "The popup name must begin with an alphabetic character and must not contain spaces", //MISSING
-
-// Color Dialog
-DlgColorTitle : "Elekti",
-DlgColorBtnClear : "Forigi",
-DlgColorHighlight : "Emfazi",
-DlgColorSelected : "Elektita",
-
-// Smiley Dialog
-DlgSmileyTitle : "Enmeti Mienvinjeton",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Enmeti Specialan Signon",
-
-// Table Dialog
-DlgTableTitle : "Atributoj de Tabelo",
-DlgTableRows : "Linioj",
-DlgTableColumns : "Kolumnoj",
-DlgTableBorder : "Bordero",
-DlgTableAlign : "Ĝisrandigo",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Maldekstre",
-DlgTableAlignCenter : "Centre",
-DlgTableAlignRight : "Dekstre",
-DlgTableWidth : "Larĝo",
-DlgTableWidthPx : "Bitbilderoj",
-DlgTableWidthPc : "elcentoj",
-DlgTableHeight : "Alto",
-DlgTableCellSpace : "Interspacigo de Ĉeloj",
-DlgTableCellPad : "Ĉirkaŭenhava Plenigado",
-DlgTableCaption : "Titolo",
-DlgTableSummary : "Summary", //MISSING
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Atributoj de Celo",
-DlgCellWidth : "Larĝo",
-DlgCellWidthPx : "bitbilderoj",
-DlgCellWidthPc : "elcentoj",
-DlgCellHeight : "Alto",
-DlgCellWordWrap : "Linifaldo",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Jes",
-DlgCellWordWrapNo : "Ne",
-DlgCellHorAlign : "Horizonta Ĝisrandigo",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Maldekstre",
-DlgCellHorAlignCenter : "Centre",
-DlgCellHorAlignRight: "Dekstre",
-DlgCellVerAlign : "Vertikala Ĝisrandigo",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Supre",
-DlgCellVerAlignMiddle : "Centre",
-DlgCellVerAlignBottom : "Malsupre",
-DlgCellVerAlignBaseline : "Je Malsupro de Teksto",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Linioj Kunfanditaj",
-DlgCellCollSpan : "Kolumnoj Kunfanditaj",
-DlgCellBackColor : "Fono",
-DlgCellBorderColor : "Bordero",
-DlgCellBtnSelect : "Elekti...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Find and Replace", //MISSING
-
-// Find Dialog
-DlgFindTitle : "Serĉi",
-DlgFindFindBtn : "Serĉi",
-DlgFindNotFoundMsg : "La celteksto ne estas trovita.",
-
-// Replace Dialog
-DlgReplaceTitle : "Anstataŭigi",
-DlgReplaceFindLbl : "Serĉi:",
-DlgReplaceReplaceLbl : "Anstataŭigi per:",
-DlgReplaceCaseChk : "Kongruigi Usklecon",
-DlgReplaceReplaceBtn : "Anstataŭigi",
-DlgReplaceReplAllBtn : "Anstataŭigi Ĉiun",
-DlgReplaceWordChk : "Tuta Vorto",
-
-// Paste Operations / Dialog
-PasteErrorCut : "La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras eltondajn operaciojn. Bonvolu uzi la klavaron por tio (ctrl-X).",
-PasteErrorCopy : "La sekurecagordo de via TTT-legilo ne permesas, ke la redaktilo faras kopiajn operaciojn. Bonvolu uzi la klavaron por tio (ctrl-C).",
-
-PasteAsText : "Interglui kiel Tekston",
-PasteFromWord : "Interglui el Word",
-
-DlgPasteMsg2 : "Please paste inside the following box using the keyboard (Ctrl+V ) and hit OK .", //MISSING
-DlgPasteSec : "Because of your browser security settings, the editor is not able to access your clipboard data directly. You are required to paste it again in this window.", //MISSING
-DlgPasteIgnoreFont : "Ignore Font Face definitions", //MISSING
-DlgPasteRemoveStyles : "Remove Styles definitions", //MISSING
-
-// Color Picker
-ColorAutomatic : "Aŭtomata",
-ColorMoreColors : "Pli da Koloroj...",
-
-// Document Properties
-DocProps : "Dokumentaj Atributoj",
-
-// Anchor Dialog
-DlgAnchorTitle : "Ankraj Atributoj",
-DlgAnchorName : "Ankra Nomo",
-DlgAnchorErrorName : "Bv tajpi la ankran nomon",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Ne trovita en la vortaro",
-DlgSpellChangeTo : "Ŝanĝi al",
-DlgSpellBtnIgnore : "Malatenti",
-DlgSpellBtnIgnoreAll : "Malatenti Ĉiun",
-DlgSpellBtnReplace : "Anstataŭigi",
-DlgSpellBtnReplaceAll : "Anstataŭigi Ĉiun",
-DlgSpellBtnUndo : "Malfari",
-DlgSpellNoSuggestions : "- Neniu propono -",
-DlgSpellProgress : "Literumkontrolado daŭras...",
-DlgSpellNoMispell : "Literumkontrolado finita: neniu fuŝo trovita",
-DlgSpellNoChanges : "Literumkontrolado finita: neniu vorto ŝanĝita",
-DlgSpellOneChange : "Literumkontrolado finita: unu vorto ŝanĝita",
-DlgSpellManyChanges : "Literumkontrolado finita: %1 vortoj ŝanĝitaj",
-
-IeSpellDownload : "Literumada Kontrolilo ne instalita. Ĉu vi volas elŝuti ĝin nun?",
-
-// Button Dialog
-DlgButtonText : "Teksto (Valoro)",
-DlgButtonType : "Tipo",
-DlgButtonTypeBtn : "Button", //MISSING
-DlgButtonTypeSbm : "Submit", //MISSING
-DlgButtonTypeRst : "Reset", //MISSING
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Nomo",
-DlgCheckboxValue : "Valoro",
-DlgCheckboxSelected : "Elektita",
-
-// Form Dialog
-DlgFormName : "Nomo",
-DlgFormAction : "Ago",
-DlgFormMethod : "Metodo",
-
-// Select Field Dialog
-DlgSelectName : "Nomo",
-DlgSelectValue : "Valoro",
-DlgSelectSize : "Grando",
-DlgSelectLines : "Linioj",
-DlgSelectChkMulti : "Permesi Plurajn Elektojn",
-DlgSelectOpAvail : "Elektoj Disponeblaj",
-DlgSelectOpText : "Teksto",
-DlgSelectOpValue : "Valoro",
-DlgSelectBtnAdd : "Aldoni",
-DlgSelectBtnModify : "Modifi",
-DlgSelectBtnUp : "Supren",
-DlgSelectBtnDown : "Malsupren",
-DlgSelectBtnSetValue : "Agordi kiel Elektitan Valoron",
-DlgSelectBtnDelete : "Forigi",
-
-// Textarea Dialog
-DlgTextareaName : "Nomo",
-DlgTextareaCols : "Kolumnoj",
-DlgTextareaRows : "Vicoj",
-
-// Text Field Dialog
-DlgTextName : "Nomo",
-DlgTextValue : "Valoro",
-DlgTextCharWidth : "Signolarĝo",
-DlgTextMaxChars : "Maksimuma Nombro da Signoj",
-DlgTextType : "Tipo",
-DlgTextTypeText : "Teksto",
-DlgTextTypePass : "Pasvorto",
-
-// Hidden Field Dialog
-DlgHiddenName : "Nomo",
-DlgHiddenValue : "Valoro",
-
-// Bulleted List Dialog
-BulletedListProp : "Atributoj de Bula Listo",
-NumberedListProp : "Atributoj de Numera Listo",
-DlgLstStart : "Start", //MISSING
-DlgLstType : "Tipo",
-DlgLstTypeCircle : "Cirklo",
-DlgLstTypeDisc : "Disc", //MISSING
-DlgLstTypeSquare : "Kvadrato",
-DlgLstTypeNumbers : "Ciferoj (1, 2, 3)",
-DlgLstTypeLCase : "Minusklaj Literoj (a, b, c)",
-DlgLstTypeUCase : "Majusklaj Literoj (A, B, C)",
-DlgLstTypeSRoman : "Malgrandaj Romanaj Ciferoj (i, ii, iii)",
-DlgLstTypeLRoman : "Grandaj Romanaj Ciferoj (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Ĝeneralaĵoj",
-DlgDocBackTab : "Fono",
-DlgDocColorsTab : "Koloroj kaj Marĝenoj",
-DlgDocMetaTab : "Metadatumoj",
-
-DlgDocPageTitle : "Paĝotitolo",
-DlgDocLangDir : "Skribdirekto de la Lingvo",
-DlgDocLangDirLTR : "De maldekstro dekstren (LTR)",
-DlgDocLangDirRTL : "De dekstro maldekstren (LTR)",
-DlgDocLangCode : "Lingvokodo",
-DlgDocCharSet : "Signara Kodo",
-DlgDocCharSetCE : "Central European", //MISSING
-DlgDocCharSetCT : "Chinese Traditional (Big5)", //MISSING
-DlgDocCharSetCR : "Cyrillic", //MISSING
-DlgDocCharSetGR : "Greek", //MISSING
-DlgDocCharSetJP : "Japanese", //MISSING
-DlgDocCharSetKR : "Korean", //MISSING
-DlgDocCharSetTR : "Turkish", //MISSING
-DlgDocCharSetUN : "Unicode (UTF-8)", //MISSING
-DlgDocCharSetWE : "Western European", //MISSING
-DlgDocCharSetOther : "Alia Signara Kodo",
-
-DlgDocDocType : "Dokumenta Tipo",
-DlgDocDocTypeOther : "Alia Dokumenta Tipo",
-DlgDocIncXHTML : "Inkluzivi XHTML Deklaroj",
-DlgDocBgColor : "Fona Koloro",
-DlgDocBgImage : "URL de Fona Bildo",
-DlgDocBgNoScroll : "Neruluma Fono",
-DlgDocCText : "Teksto",
-DlgDocCLink : "Ligilo",
-DlgDocCVisited : "Vizitita Ligilo",
-DlgDocCActive : "Aktiva Ligilo",
-DlgDocMargins : "Paĝaj Marĝenoj",
-DlgDocMaTop : "Supra",
-DlgDocMaLeft : "Maldekstra",
-DlgDocMaRight : "Dekstra",
-DlgDocMaBottom : "Malsupra",
-DlgDocMeIndex : "Ŝlosilvortoj de la Dokumento (apartigita de komoj)",
-DlgDocMeDescr : "Dokumenta Priskribo",
-DlgDocMeAuthor : "Verkinto",
-DlgDocMeCopy : "Kopirajto",
-DlgDocPreview : "Aspekto",
-
-// Templates Dialog
-Templates : "Templates", //MISSING
-DlgTemplatesTitle : "Content Templates", //MISSING
-DlgTemplatesSelMsg : "Please select the template to open in the editor (the actual contents will be lost):", //MISSING
-DlgTemplatesLoading : "Loading templates list. Please wait...", //MISSING
-DlgTemplatesNoTpl : "(No templates defined)", //MISSING
-DlgTemplatesReplace : "Replace actual contents", //MISSING
-
-// About Dialog
-DlgAboutAboutTab : "Pri",
-DlgAboutBrowserInfoTab : "Informoj pri TTT-legilo",
-DlgAboutLicenseTab : "License", //MISSING
-DlgAboutVersion : "versio",
-DlgAboutInfo : "Por pli da informoj, vizitu",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/es.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/es.js
deleted file mode 100755
index 4b2043d..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/es.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Spanish language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Contraer Barra",
-ToolbarExpand : "Expandir Barra",
-
-// Toolbar Items and Context Menu
-Save : "Guardar",
-NewPage : "Nueva Página",
-Preview : "Vista Previa",
-Cut : "Cortar",
-Copy : "Copiar",
-Paste : "Pegar",
-PasteText : "Pegar como texto plano",
-PasteWord : "Pegar desde Word",
-Print : "Imprimir",
-SelectAll : "Seleccionar Todo",
-RemoveFormat : "Eliminar Formato",
-InsertLinkLbl : "Vínculo",
-InsertLink : "Insertar/Editar Vínculo",
-RemoveLink : "Eliminar Vínculo",
-VisitLink : "Abrir enlace",
-Anchor : "Referencia",
-AnchorDelete : "Eliminar Referencia",
-InsertImageLbl : "Imagen",
-InsertImage : "Insertar/Editar Imagen",
-InsertFlashLbl : "Flash",
-InsertFlash : "Insertar/Editar Flash",
-InsertTableLbl : "Tabla",
-InsertTable : "Insertar/Editar Tabla",
-InsertLineLbl : "Línea",
-InsertLine : "Insertar Línea Horizontal",
-InsertSpecialCharLbl: "Caracter Especial",
-InsertSpecialChar : "Insertar Caracter Especial",
-InsertSmileyLbl : "Emoticons",
-InsertSmiley : "Insertar Emoticons",
-About : "Acerca de FCKeditor",
-Bold : "Negrita",
-Italic : "Cursiva",
-Underline : "Subrayado",
-StrikeThrough : "Tachado",
-Subscript : "Subíndice",
-Superscript : "Superíndice",
-LeftJustify : "Alinear a Izquierda",
-CenterJustify : "Centrar",
-RightJustify : "Alinear a Derecha",
-BlockJustify : "Justificado",
-DecreaseIndent : "Disminuir Sangría",
-IncreaseIndent : "Aumentar Sangría",
-Blockquote : "Cita",
-CreateDiv : "Crear contenedor (div)",
-EditDiv : "Editar contenedor (div)",
-DeleteDiv : "Eliminar contenedor (div)",
-Undo : "Deshacer",
-Redo : "Rehacer",
-NumberedListLbl : "Numeración",
-NumberedList : "Insertar/Eliminar Numeración",
-BulletedListLbl : "Viñetas",
-BulletedList : "Insertar/Eliminar Viñetas",
-ShowTableBorders : "Mostrar Bordes de Tablas",
-ShowDetails : "Mostrar saltos de Párrafo",
-Style : "Estilo",
-FontFormat : "Formato",
-Font : "Fuente",
-FontSize : "Tamaño",
-TextColor : "Color de Texto",
-BGColor : "Color de Fondo",
-Source : "Fuente HTML",
-Find : "Buscar",
-Replace : "Reemplazar",
-SpellCheck : "Ortografía",
-UniversalKeyboard : "Teclado Universal",
-PageBreakLbl : "Salto de Página",
-PageBreak : "Insertar Salto de Página",
-
-Form : "Formulario",
-Checkbox : "Casilla de Verificación",
-RadioButton : "Botones de Radio",
-TextField : "Campo de Texto",
-Textarea : "Area de Texto",
-HiddenField : "Campo Oculto",
-Button : "Botón",
-SelectionField : "Campo de Selección",
-ImageButton : "Botón Imagen",
-
-FitWindow : "Maximizar el tamaño del editor",
-ShowBlocks : "Mostrar bloques",
-
-// Context Menu
-EditLink : "Editar Vínculo",
-CellCM : "Celda",
-RowCM : "Fila",
-ColumnCM : "Columna",
-InsertRowAfter : "Insertar fila en la parte inferior",
-InsertRowBefore : "Insertar fila en la parte superior",
-DeleteRows : "Eliminar Filas",
-InsertColumnAfter : "Insertar columna a la derecha",
-InsertColumnBefore : "Insertar columna a la izquierda",
-DeleteColumns : "Eliminar Columnas",
-InsertCellAfter : "Insertar celda a la derecha",
-InsertCellBefore : "Insertar celda a la izquierda",
-DeleteCells : "Eliminar Celdas",
-MergeCells : "Combinar Celdas",
-MergeRight : "Combinar a la derecha",
-MergeDown : "Combinar hacia abajo",
-HorizontalSplitCell : "Dividir la celda horizontalmente",
-VerticalSplitCell : "Dividir la celda verticalmente",
-TableDelete : "Eliminar Tabla",
-CellProperties : "Propiedades de Celda",
-TableProperties : "Propiedades de Tabla",
-ImageProperties : "Propiedades de Imagen",
-FlashProperties : "Propiedades de Flash",
-
-AnchorProp : "Propiedades de Referencia",
-ButtonProp : "Propiedades de Botón",
-CheckboxProp : "Propiedades de Casilla",
-HiddenFieldProp : "Propiedades de Campo Oculto",
-RadioButtonProp : "Propiedades de Botón de Radio",
-ImageButtonProp : "Propiedades de Botón de Imagen",
-TextFieldProp : "Propiedades de Campo de Texto",
-SelectionFieldProp : "Propiedades de Campo de Selección",
-TextareaProp : "Propiedades de Area de Texto",
-FormProp : "Propiedades de Formulario",
-
-FontFormats : "Normal;Con formato;Dirección;Encabezado 1;Encabezado 2;Encabezado 3;Encabezado 4;Encabezado 5;Encabezado 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Procesando XHTML. Por favor, espere...",
-Done : "Hecho",
-PasteWordConfirm : "El texto que desea parece provenir de Word. Desea depurarlo antes de pegarlo?",
-NotCompatiblePaste : "Este comando está disponible sólo para Internet Explorer version 5.5 or superior. Desea pegar sin depurar?",
-UnknownToolbarItem : "Item de barra desconocido \"%1\"",
-UnknownCommand : "Nombre de comando desconocido \"%1\"",
-NotImplemented : "Comando no implementado",
-UnknownToolbarSet : "Nombre de barra \"%1\" no definido",
-NoActiveX : "La configuración de las opciones de seguridad de su navegador puede estar limitando algunas características del editor. Por favor active la opción \"Ejecutar controles y complementos de ActiveX \", de lo contrario puede experimentar errores o ausencia de funcionalidades.",
-BrowseServerBlocked : "La ventana de visualización del servidor no pudo ser abierta. Verifique que su navegador no esté bloqueando las ventanas emergentes (pop up).",
-DialogBlocked : "No se ha podido abrir la ventana de diálogo. Verifique que su navegador no esté bloqueando las ventanas emergentes (pop up).",
-VisitLinkBlocked : "Nose ha podido abrir la ventana. Asegurese de que todos los bloqueadores de popups están deshabilitados.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Cancelar",
-DlgBtnClose : "Cerrar",
-DlgBtnBrowseServer : "Ver Servidor",
-DlgAdvancedTag : "Avanzado",
-DlgOpOther : "",
-DlgInfoTab : "Información",
-DlgAlertUrl : "Inserte el URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Orientación",
-DlgGenLangDirLtr : "Izquierda a Derecha (LTR)",
-DlgGenLangDirRtl : "Derecha a Izquierda (RTL)",
-DlgGenLangCode : "Cód. de idioma",
-DlgGenAccessKey : "Clave de Acceso",
-DlgGenName : "Nombre",
-DlgGenTabIndex : "Indice de tabulación",
-DlgGenLongDescr : "Descripción larga URL",
-DlgGenClass : "Clases de hojas de estilo",
-DlgGenTitle : "Título",
-DlgGenContType : "Tipo de Contenido",
-DlgGenLinkCharset : "Fuente de caracteres vinculado",
-DlgGenStyle : "Estilo",
-
-// Image Dialog
-DlgImgTitle : "Propiedades de Imagen",
-DlgImgInfoTab : "Información de Imagen",
-DlgImgBtnUpload : "Enviar al Servidor",
-DlgImgURL : "URL",
-DlgImgUpload : "Cargar",
-DlgImgAlt : "Texto Alternativo",
-DlgImgWidth : "Anchura",
-DlgImgHeight : "Altura",
-DlgImgLockRatio : "Proporcional",
-DlgBtnResetSize : "Tamaño Original",
-DlgImgBorder : "Borde",
-DlgImgHSpace : "Esp.Horiz",
-DlgImgVSpace : "Esp.Vert",
-DlgImgAlign : "Alineación",
-DlgImgAlignLeft : "Izquierda",
-DlgImgAlignAbsBottom: "Abs inferior",
-DlgImgAlignAbsMiddle: "Abs centro",
-DlgImgAlignBaseline : "Línea de base",
-DlgImgAlignBottom : "Pie",
-DlgImgAlignMiddle : "Centro",
-DlgImgAlignRight : "Derecha",
-DlgImgAlignTextTop : "Tope del texto",
-DlgImgAlignTop : "Tope",
-DlgImgPreview : "Vista Previa",
-DlgImgAlertUrl : "Por favor escriba la URL de la imagen",
-DlgImgLinkTab : "Vínculo",
-
-// Flash Dialog
-DlgFlashTitle : "Propiedades de Flash",
-DlgFlashChkPlay : "Autoejecución",
-DlgFlashChkLoop : "Repetir",
-DlgFlashChkMenu : "Activar Menú Flash",
-DlgFlashScale : "Escala",
-DlgFlashScaleAll : "Mostrar todo",
-DlgFlashScaleNoBorder : "Sin Borde",
-DlgFlashScaleFit : "Ajustado",
-
-// Link Dialog
-DlgLnkWindowTitle : "Vínculo",
-DlgLnkInfoTab : "Información de Vínculo",
-DlgLnkTargetTab : "Destino",
-
-DlgLnkType : "Tipo de vínculo",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Referencia en esta página",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protocolo",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Seleccionar una referencia",
-DlgLnkAnchorByName : "Por Nombre de Referencia",
-DlgLnkAnchorById : "Por ID de elemento",
-DlgLnkNoAnchors : "(No hay referencias disponibles en el documento)",
-DlgLnkEMail : "Dirección de E-Mail",
-DlgLnkEMailSubject : "Título del Mensaje",
-DlgLnkEMailBody : "Cuerpo del Mensaje",
-DlgLnkUpload : "Cargar",
-DlgLnkBtnUpload : "Enviar al Servidor",
-
-DlgLnkTarget : "Destino",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nueva Ventana(_blank)",
-DlgLnkTargetParent : "Ventana Padre (_parent)",
-DlgLnkTargetSelf : "Misma Ventana (_self)",
-DlgLnkTargetTop : "Ventana primaria (_top)",
-DlgLnkTargetFrameName : "Nombre del Marco Destino",
-DlgLnkPopWinName : "Nombre de Ventana Emergente",
-DlgLnkPopWinFeat : "Características de Ventana Emergente",
-DlgLnkPopResize : "Ajustable",
-DlgLnkPopLocation : "Barra de ubicación",
-DlgLnkPopMenu : "Barra de Menú",
-DlgLnkPopScroll : "Barras de desplazamiento",
-DlgLnkPopStatus : "Barra de Estado",
-DlgLnkPopToolbar : "Barra de Herramientas",
-DlgLnkPopFullScrn : "Pantalla Completa (IE)",
-DlgLnkPopDependent : "Dependiente (Netscape)",
-DlgLnkPopWidth : "Anchura",
-DlgLnkPopHeight : "Altura",
-DlgLnkPopLeft : "Posición Izquierda",
-DlgLnkPopTop : "Posición Derecha",
-
-DlnLnkMsgNoUrl : "Por favor tipee el vínculo URL",
-DlnLnkMsgNoEMail : "Por favor tipee la dirección de e-mail",
-DlnLnkMsgNoAnchor : "Por favor seleccione una referencia",
-DlnLnkMsgInvPopName : "El nombre debe empezar con un caracter alfanumérico y no debe contener espacios",
-
-// Color Dialog
-DlgColorTitle : "Seleccionar Color",
-DlgColorBtnClear : "Ninguno",
-DlgColorHighlight : "Resaltado",
-DlgColorSelected : "Seleccionado",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insertar un Emoticon",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Seleccione un caracter especial",
-
-// Table Dialog
-DlgTableTitle : "Propiedades de Tabla",
-DlgTableRows : "Filas",
-DlgTableColumns : "Columnas",
-DlgTableBorder : "Tamaño de Borde",
-DlgTableAlign : "Alineación",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Izquierda",
-DlgTableAlignCenter : "Centrado",
-DlgTableAlignRight : "Derecha",
-DlgTableWidth : "Anchura",
-DlgTableWidthPx : "pixeles",
-DlgTableWidthPc : "porcentaje",
-DlgTableHeight : "Altura",
-DlgTableCellSpace : "Esp. e/celdas",
-DlgTableCellPad : "Esp. interior",
-DlgTableCaption : "Título",
-DlgTableSummary : "Síntesis",
-DlgTableHeaders : "Encabezados",
-DlgTableHeadersNone : "Ninguno",
-DlgTableHeadersColumn : "Primera columna",
-DlgTableHeadersRow : "Primera fila",
-DlgTableHeadersBoth : "Ambas",
-
-// Table Cell Dialog
-DlgCellTitle : "Propiedades de Celda",
-DlgCellWidth : "Anchura",
-DlgCellWidthPx : "pixeles",
-DlgCellWidthPc : "porcentaje",
-DlgCellHeight : "Altura",
-DlgCellWordWrap : "Cortar Línea",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Si",
-DlgCellWordWrapNo : "No",
-DlgCellHorAlign : "Alineación Horizontal",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Izquierda",
-DlgCellHorAlignCenter : "Centrado",
-DlgCellHorAlignRight: "Derecha",
-DlgCellVerAlign : "Alineación Vertical",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Tope",
-DlgCellVerAlignMiddle : "Medio",
-DlgCellVerAlignBottom : "ie",
-DlgCellVerAlignBaseline : "Línea de Base",
-DlgCellType : "Tipo de celda",
-DlgCellTypeData : "Datos",
-DlgCellTypeHeader : "Encabezado",
-DlgCellRowSpan : "Abarcar Filas",
-DlgCellCollSpan : "Abarcar Columnas",
-DlgCellBackColor : "Color de Fondo",
-DlgCellBorderColor : "Color de Borde",
-DlgCellBtnSelect : "Seleccione...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Buscar y Reemplazar",
-
-// Find Dialog
-DlgFindTitle : "Buscar",
-DlgFindFindBtn : "Buscar",
-DlgFindNotFoundMsg : "El texto especificado no ha sido encontrado.",
-
-// Replace Dialog
-DlgReplaceTitle : "Reemplazar",
-DlgReplaceFindLbl : "Texto a buscar:",
-DlgReplaceReplaceLbl : "Reemplazar con:",
-DlgReplaceCaseChk : "Coincidir may/min",
-DlgReplaceReplaceBtn : "Reemplazar",
-DlgReplaceReplAllBtn : "Reemplazar Todo",
-DlgReplaceWordChk : "Coincidir toda la palabra",
-
-// Paste Operations / Dialog
-PasteErrorCut : "La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de cortado. Por favor use el teclado (Ctrl+X).",
-PasteErrorCopy : "La configuración de seguridad de este navegador no permite la ejecución automática de operaciones de copiado. Por favor use el teclado (Ctrl+C).",
-
-PasteAsText : "Pegar como Texto Plano",
-PasteFromWord : "Pegar desde Word",
-
-DlgPasteMsg2 : "Por favor pegue dentro del cuadro utilizando el teclado (Ctrl+V ); luego presione OK .",
-DlgPasteSec : "Debido a la configuración de seguridad de su navegador, el editor no tiene acceso al portapapeles. Es necesario que lo pegue de nuevo en esta ventana.",
-DlgPasteIgnoreFont : "Ignorar definiciones de fuentes",
-DlgPasteRemoveStyles : "Remover definiciones de estilo",
-
-// Color Picker
-ColorAutomatic : "Automático",
-ColorMoreColors : "Más Colores...",
-
-// Document Properties
-DocProps : "Propiedades del Documento",
-
-// Anchor Dialog
-DlgAnchorTitle : "Propiedades de la Referencia",
-DlgAnchorName : "Nombre de la Referencia",
-DlgAnchorErrorName : "Por favor, complete el nombre de la Referencia",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "No se encuentra en el Diccionario",
-DlgSpellChangeTo : "Cambiar a",
-DlgSpellBtnIgnore : "Ignorar",
-DlgSpellBtnIgnoreAll : "Ignorar Todo",
-DlgSpellBtnReplace : "Reemplazar",
-DlgSpellBtnReplaceAll : "Reemplazar Todo",
-DlgSpellBtnUndo : "Deshacer",
-DlgSpellNoSuggestions : "- No hay sugerencias -",
-DlgSpellProgress : "Control de Ortografía en progreso...",
-DlgSpellNoMispell : "Control finalizado: no se encontraron errores",
-DlgSpellNoChanges : "Control finalizado: no se ha cambiado ninguna palabra",
-DlgSpellOneChange : "Control finalizado: se ha cambiado una palabra",
-DlgSpellManyChanges : "Control finalizado: se ha cambiado %1 palabras",
-
-IeSpellDownload : "Módulo de Control de Ortografía no instalado. ¿Desea descargarlo ahora?",
-
-// Button Dialog
-DlgButtonText : "Texto (Valor)",
-DlgButtonType : "Tipo",
-DlgButtonTypeBtn : "Boton",
-DlgButtonTypeSbm : "Enviar",
-DlgButtonTypeRst : "Reestablecer",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Nombre",
-DlgCheckboxValue : "Valor",
-DlgCheckboxSelected : "Seleccionado",
-
-// Form Dialog
-DlgFormName : "Nombre",
-DlgFormAction : "Acción",
-DlgFormMethod : "Método",
-
-// Select Field Dialog
-DlgSelectName : "Nombre",
-DlgSelectValue : "Valor",
-DlgSelectSize : "Tamaño",
-DlgSelectLines : "Lineas",
-DlgSelectChkMulti : "Permitir múltiple selección",
-DlgSelectOpAvail : "Opciones disponibles",
-DlgSelectOpText : "Texto",
-DlgSelectOpValue : "Valor",
-DlgSelectBtnAdd : "Agregar",
-DlgSelectBtnModify : "Modificar",
-DlgSelectBtnUp : "Subir",
-DlgSelectBtnDown : "Bajar",
-DlgSelectBtnSetValue : "Establecer como predeterminado",
-DlgSelectBtnDelete : "Eliminar",
-
-// Textarea Dialog
-DlgTextareaName : "Nombre",
-DlgTextareaCols : "Columnas",
-DlgTextareaRows : "Filas",
-
-// Text Field Dialog
-DlgTextName : "Nombre",
-DlgTextValue : "Valor",
-DlgTextCharWidth : "Caracteres de ancho",
-DlgTextMaxChars : "Máximo caracteres",
-DlgTextType : "Tipo",
-DlgTextTypeText : "Texto",
-DlgTextTypePass : "Contraseña",
-
-// Hidden Field Dialog
-DlgHiddenName : "Nombre",
-DlgHiddenValue : "Valor",
-
-// Bulleted List Dialog
-BulletedListProp : "Propiedades de Viñetas",
-NumberedListProp : "Propiedades de Numeraciones",
-DlgLstStart : "Inicio",
-DlgLstType : "Tipo",
-DlgLstTypeCircle : "Círculo",
-DlgLstTypeDisc : "Disco",
-DlgLstTypeSquare : "Cuadrado",
-DlgLstTypeNumbers : "Números (1, 2, 3)",
-DlgLstTypeLCase : "letras en minúsculas (a, b, c)",
-DlgLstTypeUCase : "letras en mayúsculas (A, B, C)",
-DlgLstTypeSRoman : "Números Romanos (i, ii, iii)",
-DlgLstTypeLRoman : "Números Romanos (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "General",
-DlgDocBackTab : "Fondo",
-DlgDocColorsTab : "Colores y Márgenes",
-DlgDocMetaTab : "Meta Información",
-
-DlgDocPageTitle : "Título de Página",
-DlgDocLangDir : "Orientación de idioma",
-DlgDocLangDirLTR : "Izq. a Derecha (LTR)",
-DlgDocLangDirRTL : "Der. a Izquierda (RTL)",
-DlgDocLangCode : "Código de Idioma",
-DlgDocCharSet : "Codif. de Conjunto de Caracteres",
-DlgDocCharSetCE : "Centro Europeo",
-DlgDocCharSetCT : "Chino Tradicional (Big5)",
-DlgDocCharSetCR : "Cirílico",
-DlgDocCharSetGR : "Griego",
-DlgDocCharSetJP : "Japonés",
-DlgDocCharSetKR : "Coreano",
-DlgDocCharSetTR : "Turco",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Europeo occidental",
-DlgDocCharSetOther : "Otra Codificación",
-
-DlgDocDocType : "Encabezado de Tipo de Documento",
-DlgDocDocTypeOther : "Otro Encabezado",
-DlgDocIncXHTML : "Incluir Declaraciones XHTML",
-DlgDocBgColor : "Color de Fondo",
-DlgDocBgImage : "URL de Imagen de Fondo",
-DlgDocBgNoScroll : "Fondo sin rolido",
-DlgDocCText : "Texto",
-DlgDocCLink : "Vínculo",
-DlgDocCVisited : "Vínculo Visitado",
-DlgDocCActive : "Vínculo Activo",
-DlgDocMargins : "Márgenes de Página",
-DlgDocMaTop : "Tope",
-DlgDocMaLeft : "Izquierda",
-DlgDocMaRight : "Derecha",
-DlgDocMaBottom : "Pie",
-DlgDocMeIndex : "Claves de indexación del Documento (separados por comas)",
-DlgDocMeDescr : "Descripción del Documento",
-DlgDocMeAuthor : "Autor",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Vista Previa",
-
-// Templates Dialog
-Templates : "Plantillas",
-DlgTemplatesTitle : "Contenido de Plantillas",
-DlgTemplatesSelMsg : "Por favor selecciona la plantilla a abrir en el editor (el contenido actual se perderá):",
-DlgTemplatesLoading : "Cargando lista de Plantillas. Por favor, aguarde...",
-DlgTemplatesNoTpl : "(No hay plantillas definidas)",
-DlgTemplatesReplace : "Reemplazar el contenido actual",
-
-// About Dialog
-DlgAboutAboutTab : "Acerca de",
-DlgAboutBrowserInfoTab : "Información de Navegador",
-DlgAboutLicenseTab : "Licencia",
-DlgAboutVersion : "versión",
-DlgAboutInfo : "Para mayor información por favor dirigirse a",
-
-// Div Dialog
-DlgDivGeneralTab : "General",
-DlgDivAdvancedTab : "Avanzado",
-DlgDivStyle : "Estilo",
-DlgDivInlineStyle : "Estilos CSS"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/et.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/et.js
deleted file mode 100755
index 290957a..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/et.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Estonian language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Voldi tööriistariba",
-ToolbarExpand : "Laienda tööriistariba",
-
-// Toolbar Items and Context Menu
-Save : "Salvesta",
-NewPage : "Uus leht",
-Preview : "Eelvaade",
-Cut : "Lõika",
-Copy : "Kopeeri",
-Paste : "Kleebi",
-PasteText : "Kleebi tavalise tekstina",
-PasteWord : "Kleebi Wordist",
-Print : "Prindi",
-SelectAll : "Vali kõik",
-RemoveFormat : "Eemalda vorming",
-InsertLinkLbl : "Link",
-InsertLink : "Sisesta link / Muuda linki",
-RemoveLink : "Eemalda link",
-VisitLink : "Open Link", //MISSING
-Anchor : "Sisesta ankur / Muuda ankrut",
-AnchorDelete : "Eemalda ankur",
-InsertImageLbl : "Pilt",
-InsertImage : "Sisesta pilt / Muuda pilti",
-InsertFlashLbl : "Flash",
-InsertFlash : "Sisesta flash / Muuda flashi",
-InsertTableLbl : "Tabel",
-InsertTable : "Sisesta tabel / Muuda tabelit",
-InsertLineLbl : "Joon",
-InsertLine : "Sisesta horisontaaljoon",
-InsertSpecialCharLbl: "Erimärgid",
-InsertSpecialChar : "Sisesta erimärk",
-InsertSmileyLbl : "Emotikon",
-InsertSmiley : "Sisesta emotikon",
-About : "FCKeditor teave",
-Bold : "Paks",
-Italic : "Kursiiv",
-Underline : "Allajoonitud",
-StrikeThrough : "Läbijoonitud",
-Subscript : "Allindeks",
-Superscript : "Ülaindeks",
-LeftJustify : "Vasakjoondus",
-CenterJustify : "Keskjoondus",
-RightJustify : "Paremjoondus",
-BlockJustify : "Rööpjoondus",
-DecreaseIndent : "Vähenda taanet",
-IncreaseIndent : "Suurenda taanet",
-Blockquote : "Blokktsitaat",
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "Võta tagasi",
-Redo : "Korda toimingut",
-NumberedListLbl : "Nummerdatud loetelu",
-NumberedList : "Sisesta/Eemalda nummerdatud loetelu",
-BulletedListLbl : "Punktiseeritud loetelu",
-BulletedList : "Sisesta/Eemalda punktiseeritud loetelu",
-ShowTableBorders : "Näita tabeli jooni",
-ShowDetails : "Näita üksikasju",
-Style : "Laad",
-FontFormat : "Vorming",
-Font : "Kiri",
-FontSize : "Suurus",
-TextColor : "Teksti värv",
-BGColor : "Tausta värv",
-Source : "Lähtekood",
-Find : "Otsi",
-Replace : "Asenda",
-SpellCheck : "Kontrolli õigekirja",
-UniversalKeyboard : "Universaalne klaviatuur",
-PageBreakLbl : "Lehepiir",
-PageBreak : "Sisesta lehevahetuskoht",
-
-Form : "Vorm",
-Checkbox : "Märkeruut",
-RadioButton : "Raadionupp",
-TextField : "Tekstilahter",
-Textarea : "Tekstiala",
-HiddenField : "Varjatud lahter",
-Button : "Nupp",
-SelectionField : "Valiklahter",
-ImageButton : "Piltnupp",
-
-FitWindow : "Maksimeeri redaktori mõõtmed",
-ShowBlocks : "Näita blokke",
-
-// Context Menu
-EditLink : "Muuda linki",
-CellCM : "Lahter",
-RowCM : "Rida",
-ColumnCM : "Veerg",
-InsertRowAfter : "Sisesta rida peale",
-InsertRowBefore : "Sisesta rida enne",
-DeleteRows : "Eemalda read",
-InsertColumnAfter : "Sisesta veerg peale",
-InsertColumnBefore : "Sisesta veerg enne",
-DeleteColumns : "Eemalda veerud",
-InsertCellAfter : "Sisesta lahter peale",
-InsertCellBefore : "Sisesta lahter enne",
-DeleteCells : "Eemalda lahtrid",
-MergeCells : "Ühenda lahtrid",
-MergeRight : "Ühenda paremale",
-MergeDown : "Ühenda alla",
-HorizontalSplitCell : "Poolita lahter horisontaalselt",
-VerticalSplitCell : "Poolita lahter vertikaalselt",
-TableDelete : "Kustuta tabel",
-CellProperties : "Lahtri atribuudid",
-TableProperties : "Tabeli atribuudid",
-ImageProperties : "Pildi atribuudid",
-FlashProperties : "Flash omadused",
-
-AnchorProp : "Ankru omadused",
-ButtonProp : "Nupu omadused",
-CheckboxProp : "Märkeruudu omadused",
-HiddenFieldProp : "Varjatud lahtri omadused",
-RadioButtonProp : "Raadionupu omadused",
-ImageButtonProp : "Piltnupu omadused",
-TextFieldProp : "Tekstilahtri omadused",
-SelectionFieldProp : "Valiklahtri omadused",
-TextareaProp : "Tekstiala omadused",
-FormProp : "Vormi omadused",
-
-FontFormats : "Tavaline;Vormindatud;Aadress;Pealkiri 1;Pealkiri 2;Pealkiri 3;Pealkiri 4;Pealkiri 5;Pealkiri 6;Tavaline (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Töötlen XHTML'i. Palun oota...",
-Done : "Tehtud",
-PasteWordConfirm : "Tekst, mida soovid lisada paistab pärinevat Word'ist. Kas soovid seda enne kleepimist puhastada?",
-NotCompatiblePaste : "See käsk on saadaval ainult Internet Explorer versioon 5.5 või uuema puhul. Kas soovid kleepida ilma puhastamata?",
-UnknownToolbarItem : "Tundmatu tööriistarea üksus \"%1\"",
-UnknownCommand : "Tundmatu käsunimi \"%1\"",
-NotImplemented : "Käsku ei täidetud",
-UnknownToolbarSet : "Tööriistariba \"%1\" ei eksisteeri",
-NoActiveX : "Sinu veebisirvija turvalisuse seaded võivad limiteerida mõningaid tekstirdaktori kasutusvõimalusi. Sa peaksid võimaldama valiku \"Run ActiveX controls and plug-ins\" oma veebisirvija seadetes. Muidu võid sa täheldada vigu tekstiredaktori töös ja märgata puuduvaid funktsioone.",
-BrowseServerBlocked : "Ressursside sirvija avamine ebaõnnestus. Võimalda pop-up akende avanemine.",
-DialogBlocked : "Ei olenud võimalik avada dialoogi akent. Võimalda pop-up akende avanemine.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Loobu",
-DlgBtnClose : "Sulge",
-DlgBtnBrowseServer : "Sirvi serverit",
-DlgAdvancedTag : "Täpsemalt",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Palun sisesta URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Keele suund",
-DlgGenLangDirLtr : "Vasakult paremale (LTR)",
-DlgGenLangDirRtl : "Paremalt vasakule (RTL)",
-DlgGenLangCode : "Keele kood",
-DlgGenAccessKey : "Juurdepääsu võti",
-DlgGenName : "Nimi",
-DlgGenTabIndex : "Tab indeks",
-DlgGenLongDescr : "Pikk kirjeldus URL",
-DlgGenClass : "Stiilistiku klassid",
-DlgGenTitle : "Juhendav tiitel",
-DlgGenContType : "Juhendava sisu tüüp",
-DlgGenLinkCharset : "Lingitud ressurssi märgistik",
-DlgGenStyle : "Laad",
-
-// Image Dialog
-DlgImgTitle : "Pildi atribuudid",
-DlgImgInfoTab : "Pildi info",
-DlgImgBtnUpload : "Saada serverissee",
-DlgImgURL : "URL",
-DlgImgUpload : "Lae üles",
-DlgImgAlt : "Alternatiivne tekst",
-DlgImgWidth : "Laius",
-DlgImgHeight : "Kõrgus",
-DlgImgLockRatio : "Lukusta kuvasuhe",
-DlgBtnResetSize : "Lähtesta suurus",
-DlgImgBorder : "Joon",
-DlgImgHSpace : "H. vaheruum",
-DlgImgVSpace : "V. vaheruum",
-DlgImgAlign : "Joondus",
-DlgImgAlignLeft : "Vasak",
-DlgImgAlignAbsBottom: "Abs alla",
-DlgImgAlignAbsMiddle: "Abs keskele",
-DlgImgAlignBaseline : "Baasjoonele",
-DlgImgAlignBottom : "Alla",
-DlgImgAlignMiddle : "Keskele",
-DlgImgAlignRight : "Paremale",
-DlgImgAlignTextTop : "Tekstit üles",
-DlgImgAlignTop : "Üles",
-DlgImgPreview : "Eelvaade",
-DlgImgAlertUrl : "Palun kirjuta pildi URL",
-DlgImgLinkTab : "Link",
-
-// Flash Dialog
-DlgFlashTitle : "Flash omadused",
-DlgFlashChkPlay : "Automaatne start ",
-DlgFlashChkLoop : "Korduv",
-DlgFlashChkMenu : "Võimalda flash menüü",
-DlgFlashScale : "Mastaap",
-DlgFlashScaleAll : "Näita kõike",
-DlgFlashScaleNoBorder : "Äärist ei ole",
-DlgFlashScaleFit : "Täpne sobivus",
-
-// Link Dialog
-DlgLnkWindowTitle : "Link",
-DlgLnkInfoTab : "Lingi info",
-DlgLnkTargetTab : "Sihtkoht",
-
-DlgLnkType : "Lingi tüüp",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Ankur sellel lehel",
-DlgLnkTypeEMail : "E-post",
-DlgLnkProto : "Protokoll",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Vali ankur",
-DlgLnkAnchorByName : "Ankru nime järgi",
-DlgLnkAnchorById : "Elemendi id järgi",
-DlgLnkNoAnchors : "(Selles dokumendis ei ole ankruid)",
-DlgLnkEMail : "E-posti aadress",
-DlgLnkEMailSubject : "Sõnumi teema",
-DlgLnkEMailBody : "Sõnumi tekst",
-DlgLnkUpload : "Lae üles",
-DlgLnkBtnUpload : "Saada serverisse",
-
-DlgLnkTarget : "Sihtkoht",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Uus aken (_blank)",
-DlgLnkTargetParent : "Esivanem aken (_parent)",
-DlgLnkTargetSelf : "Sama aken (_self)",
-DlgLnkTargetTop : "Pealmine aken (_top)",
-DlgLnkTargetFrameName : "Sihtmärk raami nimi",
-DlgLnkPopWinName : "Hüpikakna nimi",
-DlgLnkPopWinFeat : "Hüpikakna omadused",
-DlgLnkPopResize : "Suurendatav",
-DlgLnkPopLocation : "Aadressiriba",
-DlgLnkPopMenu : "Menüüriba",
-DlgLnkPopScroll : "Kerimisribad",
-DlgLnkPopStatus : "Olekuriba",
-DlgLnkPopToolbar : "Tööriistariba",
-DlgLnkPopFullScrn : "Täisekraan (IE)",
-DlgLnkPopDependent : "Sõltuv (Netscape)",
-DlgLnkPopWidth : "Laius",
-DlgLnkPopHeight : "Kõrgus",
-DlgLnkPopLeft : "Vasak asukoht",
-DlgLnkPopTop : "Ülemine asukoht",
-
-DlnLnkMsgNoUrl : "Palun kirjuta lingi URL",
-DlnLnkMsgNoEMail : "Palun kirjuta E-Posti aadress",
-DlnLnkMsgNoAnchor : "Palun vali ankur",
-DlnLnkMsgInvPopName : "Hüpikakna nimi peab algama alfabeetilise tähega ja ei tohi sisaldada tühikuid",
-
-// Color Dialog
-DlgColorTitle : "Vali värv",
-DlgColorBtnClear : "Tühjenda",
-DlgColorHighlight : "Märgi",
-DlgColorSelected : "Valitud",
-
-// Smiley Dialog
-DlgSmileyTitle : "Sisesta emotikon",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Vali erimärk",
-
-// Table Dialog
-DlgTableTitle : "Tabeli atribuudid",
-DlgTableRows : "Read",
-DlgTableColumns : "Veerud",
-DlgTableBorder : "Joone suurus",
-DlgTableAlign : "Joondus",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Vasak",
-DlgTableAlignCenter : "Kesk",
-DlgTableAlignRight : "Parem",
-DlgTableWidth : "Laius",
-DlgTableWidthPx : "pikslit",
-DlgTableWidthPc : "protsenti",
-DlgTableHeight : "Kõrgus",
-DlgTableCellSpace : "Lahtri vahe",
-DlgTableCellPad : "Lahtri täidis",
-DlgTableCaption : "Tabeli tiitel",
-DlgTableSummary : "Kokkuvõte",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Lahtri atribuudid",
-DlgCellWidth : "Laius",
-DlgCellWidthPx : "pikslit",
-DlgCellWidthPc : "protsenti",
-DlgCellHeight : "Kõrgus",
-DlgCellWordWrap : "Sõna ülekanne",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Jah",
-DlgCellWordWrapNo : "Ei",
-DlgCellHorAlign : "Horisontaaljoondus",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Vasak",
-DlgCellHorAlignCenter : "Kesk",
-DlgCellHorAlignRight: "Parem",
-DlgCellVerAlign : "Vertikaaljoondus",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Üles",
-DlgCellVerAlignMiddle : "Keskele",
-DlgCellVerAlignBottom : "Alla",
-DlgCellVerAlignBaseline : "Baasjoonele",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Reaulatus",
-DlgCellCollSpan : "Veeruulatus",
-DlgCellBackColor : "Tausta värv",
-DlgCellBorderColor : "Joone värv",
-DlgCellBtnSelect : "Vali...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Otsi ja asenda",
-
-// Find Dialog
-DlgFindTitle : "Otsi",
-DlgFindFindBtn : "Otsi",
-DlgFindNotFoundMsg : "Valitud teksti ei leitud.",
-
-// Replace Dialog
-DlgReplaceTitle : "Asenda",
-DlgReplaceFindLbl : "Leia mida:",
-DlgReplaceReplaceLbl : "Asenda millega:",
-DlgReplaceCaseChk : "Erista suur- ja väiketähti",
-DlgReplaceReplaceBtn : "Asenda",
-DlgReplaceReplAllBtn : "Asenda kõik",
-DlgReplaceWordChk : "Otsi terviklike sõnu",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Sinu veebisirvija turvaseaded ei luba redaktoril automaatselt lõigata. Palun kasutage selleks klaviatuuri klahvikombinatsiooni (Ctrl+X).",
-PasteErrorCopy : "Sinu veebisirvija turvaseaded ei luba redaktoril automaatselt kopeerida. Palun kasutage selleks klaviatuuri klahvikombinatsiooni (Ctrl+C).",
-
-PasteAsText : "Kleebi tavalise tekstina",
-PasteFromWord : "Kleebi Wordist",
-
-DlgPasteMsg2 : "Palun kleebi järgnevasse kasti kasutades klaviatuuri klahvikombinatsiooni (Ctrl+V ) ja vajuta seejärel OK .",
-DlgPasteSec : "Sinu veebisirvija turvaseadete tõttu, ei oma redaktor otsest ligipääsu lõikelaua andmetele. Sa pead kleepima need uuesti siia aknasse.",
-DlgPasteIgnoreFont : "Ignoreeri kirja definitsioone",
-DlgPasteRemoveStyles : "Eemalda stiilide definitsioonid",
-
-// Color Picker
-ColorAutomatic : "Automaatne",
-ColorMoreColors : "Rohkem värve...",
-
-// Document Properties
-DocProps : "Dokumendi omadused",
-
-// Anchor Dialog
-DlgAnchorTitle : "Ankru omadused",
-DlgAnchorName : "Ankru nimi",
-DlgAnchorErrorName : "Palun sisest ankru nimi",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Puudub sõnastikust",
-DlgSpellChangeTo : "Muuda",
-DlgSpellBtnIgnore : "Ignoreeri",
-DlgSpellBtnIgnoreAll : "Ignoreeri kõiki",
-DlgSpellBtnReplace : "Asenda",
-DlgSpellBtnReplaceAll : "Asenda kõik",
-DlgSpellBtnUndo : "Võta tagasi",
-DlgSpellNoSuggestions : "- Soovitused puuduvad -",
-DlgSpellProgress : "Toimub õigekirja kontroll...",
-DlgSpellNoMispell : "Õigekirja kontroll sooritatud: õigekirjuvigu ei leitud",
-DlgSpellNoChanges : "Õigekirja kontroll sooritatud: ühtegi sõna ei muudetud",
-DlgSpellOneChange : "Õigekirja kontroll sooritatud: üks sõna muudeti",
-DlgSpellManyChanges : "Õigekirja kontroll sooritatud: %1 sõna muudetud",
-
-IeSpellDownload : "Õigekirja kontrollija ei ole installeeritud. Soovid sa selle alla laadida?",
-
-// Button Dialog
-DlgButtonText : "Tekst (väärtus)",
-DlgButtonType : "Tüüp",
-DlgButtonTypeBtn : "Nupp",
-DlgButtonTypeSbm : "Saada",
-DlgButtonTypeRst : "Lähtesta",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Nimi",
-DlgCheckboxValue : "Väärtus",
-DlgCheckboxSelected : "Valitud",
-
-// Form Dialog
-DlgFormName : "Nimi",
-DlgFormAction : "Toiming",
-DlgFormMethod : "Meetod",
-
-// Select Field Dialog
-DlgSelectName : "Nimi",
-DlgSelectValue : "Väärtus",
-DlgSelectSize : "Suurus",
-DlgSelectLines : "ridu",
-DlgSelectChkMulti : "Võimalda mitu valikut",
-DlgSelectOpAvail : "Võimalikud valikud",
-DlgSelectOpText : "Tekst",
-DlgSelectOpValue : "Väärtus",
-DlgSelectBtnAdd : "Lisa",
-DlgSelectBtnModify : "Muuda",
-DlgSelectBtnUp : "Üles",
-DlgSelectBtnDown : "Alla",
-DlgSelectBtnSetValue : "Sea valitud olekuna",
-DlgSelectBtnDelete : "Kustuta",
-
-// Textarea Dialog
-DlgTextareaName : "Nimi",
-DlgTextareaCols : "Veerge",
-DlgTextareaRows : "Ridu",
-
-// Text Field Dialog
-DlgTextName : "Nimi",
-DlgTextValue : "Väärtus",
-DlgTextCharWidth : "Laius (tähemärkides)",
-DlgTextMaxChars : "Maksimaalselt tähemärke",
-DlgTextType : "Tüüp",
-DlgTextTypeText : "Tekst",
-DlgTextTypePass : "Parool",
-
-// Hidden Field Dialog
-DlgHiddenName : "Nimi",
-DlgHiddenValue : "Väärtus",
-
-// Bulleted List Dialog
-BulletedListProp : "Täpitud loetelu omadused",
-NumberedListProp : "Nummerdatud loetelu omadused",
-DlgLstStart : "Alusta",
-DlgLstType : "Tüüp",
-DlgLstTypeCircle : "Ring",
-DlgLstTypeDisc : "Ketas",
-DlgLstTypeSquare : "Ruut",
-DlgLstTypeNumbers : "Numbrid (1, 2, 3)",
-DlgLstTypeLCase : "Väiketähed (a, b, c)",
-DlgLstTypeUCase : "Suurtähed (A, B, C)",
-DlgLstTypeSRoman : "Väiksed Rooma numbrid (i, ii, iii)",
-DlgLstTypeLRoman : "Suured Rooma numbrid (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Üldine",
-DlgDocBackTab : "Taust",
-DlgDocColorsTab : "Värvid ja veerised",
-DlgDocMetaTab : "Meta andmed",
-
-DlgDocPageTitle : "Lehekülje tiitel",
-DlgDocLangDir : "Kirja suund",
-DlgDocLangDirLTR : "Vasakult paremale (LTR)",
-DlgDocLangDirRTL : "Paremalt vasakule (RTL)",
-DlgDocLangCode : "Keele kood",
-DlgDocCharSet : "Märgistiku kodeering",
-DlgDocCharSetCE : "Kesk-Euroopa",
-DlgDocCharSetCT : "Hiina traditsiooniline (Big5)",
-DlgDocCharSetCR : "Kirillisa",
-DlgDocCharSetGR : "Kreeka",
-DlgDocCharSetJP : "Jaapani",
-DlgDocCharSetKR : "Korea",
-DlgDocCharSetTR : "Türgi",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Lääne-Euroopa",
-DlgDocCharSetOther : "Ülejäänud märgistike kodeeringud",
-
-DlgDocDocType : "Dokumendi tüüppäis",
-DlgDocDocTypeOther : "Teised dokumendi tüüppäised",
-DlgDocIncXHTML : "Arva kaasa XHTML deklaratsioonid",
-DlgDocBgColor : "Taustavärv",
-DlgDocBgImage : "Taustapildi URL",
-DlgDocBgNoScroll : "Mittekeritav tagataust",
-DlgDocCText : "Tekst",
-DlgDocCLink : "Link",
-DlgDocCVisited : "Külastatud link",
-DlgDocCActive : "Aktiivne link",
-DlgDocMargins : "Lehekülje äärised",
-DlgDocMaTop : "Ülaserv",
-DlgDocMaLeft : "Vasakserv",
-DlgDocMaRight : "Paremserv",
-DlgDocMaBottom : "Alaserv",
-DlgDocMeIndex : "Dokumendi võtmesõnad (eraldatud komadega)",
-DlgDocMeDescr : "Dokumendi kirjeldus",
-DlgDocMeAuthor : "Autor",
-DlgDocMeCopy : "Autoriõigus",
-DlgDocPreview : "Eelvaade",
-
-// Templates Dialog
-Templates : "Šabloon",
-DlgTemplatesTitle : "Sisu šabloonid",
-DlgTemplatesSelMsg : "Palun vali šabloon, et avada see redaktoris (praegune sisu läheb kaotsi):",
-DlgTemplatesLoading : "Laen šabloonide nimekirja. Palun oota...",
-DlgTemplatesNoTpl : "(Ühtegi šablooni ei ole defineeritud)",
-DlgTemplatesReplace : "Asenda tegelik sisu",
-
-// About Dialog
-DlgAboutAboutTab : "Teave",
-DlgAboutBrowserInfoTab : "Veebisirvija info",
-DlgAboutLicenseTab : "Litsents",
-DlgAboutVersion : "versioon",
-DlgAboutInfo : "Täpsema info saamiseks mine",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/eu.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/eu.js
deleted file mode 100755
index e335a20..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/eu.js
+++ /dev/null
@@ -1,535 +0,0 @@
-/*
- * 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 ==
- *
- * Basque language file.
- * Euskara hizkuntza fitxategia.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Estutu Tresna Barra",
-ToolbarExpand : "Hedatu Tresna Barra",
-
-// Toolbar Items and Context Menu
-Save : "Gorde",
-NewPage : "Orrialde Berria",
-Preview : "Aurrebista",
-Cut : "Ebaki",
-Copy : "Kopiatu",
-Paste : "Itsatsi",
-PasteText : "Itsatsi testu bezala",
-PasteWord : "Itsatsi Word-etik",
-Print : "Inprimatu",
-SelectAll : "Hautatu dena",
-RemoveFormat : "Kendu Formatua",
-InsertLinkLbl : "Esteka",
-InsertLink : "Txertatu/Editatu Esteka",
-RemoveLink : "Kendu Esteka",
-VisitLink : "Ireki Esteka",
-Anchor : "Aingura",
-AnchorDelete : "Ezabatu Aingura",
-InsertImageLbl : "Irudia",
-InsertImage : "Txertatu/Editatu Irudia",
-InsertFlashLbl : "Flasha",
-InsertFlash : "Txertatu/Editatu Flasha",
-InsertTableLbl : "Taula",
-InsertTable : "Txertatu/Editatu Taula",
-InsertLineLbl : "Lerroa",
-InsertLine : "Txertatu Marra Horizontala",
-InsertSpecialCharLbl: "Karaktere Berezia",
-InsertSpecialChar : "Txertatu Karaktere Berezia",
-InsertSmileyLbl : "Aurpegierak",
-InsertSmiley : "Txertatu Aurpegierak",
-About : "FCKeditor-ri buruz",
-Bold : "Lodia",
-Italic : "Etzana",
-Underline : "Azpimarratu",
-StrikeThrough : "Marratua",
-Subscript : "Azpi-indize",
-Superscript : "Goi-indize",
-LeftJustify : "Lerrokatu Ezkerrean",
-CenterJustify : "Lerrokatu Erdian",
-RightJustify : "Lerrokatu Eskuman",
-BlockJustify : "Justifikatu",
-DecreaseIndent : "Txikitu Koska",
-IncreaseIndent : "Handitu Koska",
-Blockquote : "Aipamen blokea",
-CreateDiv : "Sortu Div Edukitzailea",
-EditDiv : "Editatu Div Edukitzailea",
-DeleteDiv : "Ezabatu Div Edukitzailea",
-Undo : "Desegin",
-Redo : "Berregin",
-NumberedListLbl : "Zenbakidun Zerrenda",
-NumberedList : "Txertatu/Kendu Zenbakidun zerrenda",
-BulletedListLbl : "Buletdun Zerrenda",
-BulletedList : "Txertatu/Kendu Buletdun zerrenda",
-ShowTableBorders : "Erakutsi Taularen Ertzak",
-ShowDetails : "Erakutsi Xehetasunak",
-Style : "Estiloa",
-FontFormat : "Formatua",
-Font : "Letra-tipoa",
-FontSize : "Tamaina",
-TextColor : "Testu Kolorea",
-BGColor : "Atzeko kolorea",
-Source : "HTML Iturburua",
-Find : "Bilatu",
-Replace : "Ordezkatu",
-SpellCheck : "Ortografia",
-UniversalKeyboard : "Teklatu Unibertsala",
-PageBreakLbl : "Orrialde-jauzia",
-PageBreak : "Txertatu Orrialde-jauzia",
-
-Form : "Formularioa",
-Checkbox : "Kontrol-laukia",
-RadioButton : "Aukera-botoia",
-TextField : "Testu Eremua",
-Textarea : "Testu-area",
-HiddenField : "Ezkutuko Eremua",
-Button : "Botoia",
-SelectionField : "Hautespen Eremua",
-ImageButton : "Irudi Botoia",
-
-FitWindow : "Maximizatu editorearen tamaina",
-ShowBlocks : "Blokeak erakutsi",
-
-// Context Menu
-EditLink : "Aldatu Esteka",
-CellCM : "Gelaxka",
-RowCM : "Errenkada",
-ColumnCM : "Zutabea",
-InsertRowAfter : "Txertatu Lerroa Ostean",
-InsertRowBefore : "Txertatu Lerroa Aurretik",
-DeleteRows : "Ezabatu Errenkadak",
-InsertColumnAfter : "Txertatu Zutabea Ostean",
-InsertColumnBefore : "Txertatu Zutabea Aurretik",
-DeleteColumns : "Ezabatu Zutabeak",
-InsertCellAfter : "Txertatu Gelaxka Ostean",
-InsertCellBefore : "Txertatu Gelaxka Aurretik",
-DeleteCells : "Kendu Gelaxkak",
-MergeCells : "Batu Gelaxkak",
-MergeRight : "Elkartu Eskumara",
-MergeDown : "Elkartu Behera",
-HorizontalSplitCell : "Banatu Gelaxkak Horizontalki",
-VerticalSplitCell : "Banatu Gelaxkak Bertikalki",
-TableDelete : "Ezabatu Taula",
-CellProperties : "Gelaxkaren Ezaugarriak",
-TableProperties : "Taularen Ezaugarriak",
-ImageProperties : "Irudiaren Ezaugarriak",
-FlashProperties : "Flasharen Ezaugarriak",
-
-AnchorProp : "Ainguraren Ezaugarriak",
-ButtonProp : "Botoiaren Ezaugarriak",
-CheckboxProp : "Kontrol-laukiko Ezaugarriak",
-HiddenFieldProp : "Ezkutuko Eremuaren Ezaugarriak",
-RadioButtonProp : "Aukera-botoiaren Ezaugarriak",
-ImageButtonProp : "Irudi Botoiaren Ezaugarriak",
-TextFieldProp : "Testu Eremuaren Ezaugarriak",
-SelectionFieldProp : "Hautespen Eremuaren Ezaugarriak",
-TextareaProp : "Testu-arearen Ezaugarriak",
-FormProp : "Formularioaren Ezaugarriak",
-
-FontFormats : "Arrunta;Formateatua;Helbidea;Izenburua 1;Izenburua 2;Izenburua 3;Izenburua 4;Izenburua 5;Izenburua 6;Paragrafoa (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "XHTML Prozesatzen. Itxaron mesedez...",
-Done : "Eginda",
-PasteWordConfirm : "Itsatsi nahi duzun testua Wordetik hartua dela dirudi. Itsatsi baino lehen garbitu nahi duzu?",
-NotCompatiblePaste : "Komando hau Internet Explorer 5.5 bertsiorako edo ondorengoentzako erabilgarria dago. Garbitu gabe itsatsi nahi duzu?",
-UnknownToolbarItem : "Ataza barrako elementu ezezaguna \"%1\"",
-UnknownCommand : "Komando izen ezezaguna \"%1\"",
-NotImplemented : "Komando ez inplementatua",
-UnknownToolbarSet : "Ataza barra \"%1\" taldea ez da existitzen",
-NoActiveX : "Zure nabigatzailearen segurtasun hobespenak editore honen zenbait ezaugarri mugatu ditzake. \"ActiveX kontrolak eta pluginak\" aktibatu beharko zenituzke, bestela erroreak eta ezaugarrietan mugak egon daitezke.",
-BrowseServerBlocked : "Baliabideen arakatzailea ezin da ireki. Ziurtatu popup blokeatzaileak desgaituta dituzula.",
-DialogBlocked : "Ezin da elkarrizketa-leihoa ireki. Ziurtatu popup blokeatzaileak desgaituta dituzula.",
-VisitLinkBlocked : "Ezin da leiho berri bat ireki. Ziurtatu popup blokeatzaileak desgaituta dituzula.",
-
-// Dialogs
-DlgBtnOK : "Ados",
-DlgBtnCancel : "Utzi",
-DlgBtnClose : "Itxi",
-DlgBtnBrowseServer : "Zerbitzaria arakatu",
-DlgAdvancedTag : "Aurreratua",
-DlgOpOther : "",
-DlgInfoTab : "Informazioa",
-DlgAlertUrl : "Mesedez URLa idatzi ezazu",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Hizkuntzaren Norabidea",
-DlgGenLangDirLtr : "Ezkerretik Eskumara(LTR)",
-DlgGenLangDirRtl : "Eskumatik Ezkerrera (RTL)",
-DlgGenLangCode : "Hizkuntza Kodea",
-DlgGenAccessKey : "Sarbide-gakoa",
-DlgGenName : "Izena",
-DlgGenTabIndex : "Tabulazio Indizea",
-DlgGenLongDescr : "URL Deskribapen Luzea",
-DlgGenClass : "Estilo-orriko Klaseak",
-DlgGenTitle : "Izenburua",
-DlgGenContType : "Eduki Mota (Content Type)",
-DlgGenLinkCharset : "Estekatutako Karaktere Multzoa",
-DlgGenStyle : "Estiloa",
-
-// Image Dialog
-DlgImgTitle : "Irudi Ezaugarriak",
-DlgImgInfoTab : "Irudi informazioa",
-DlgImgBtnUpload : "Zerbitzarira bidalia",
-DlgImgURL : "URL",
-DlgImgUpload : "Gora Kargatu",
-DlgImgAlt : "Ordezko Testua",
-DlgImgWidth : "Zabalera",
-DlgImgHeight : "Altuera",
-DlgImgLockRatio : "Erlazioa Blokeatu",
-DlgBtnResetSize : "Tamaina Berrezarri",
-DlgImgBorder : "Ertza",
-DlgImgHSpace : "HSpace",
-DlgImgVSpace : "VSpace",
-DlgImgAlign : "Lerrokatu",
-DlgImgAlignLeft : "Ezkerrera",
-DlgImgAlignAbsBottom: "Abs Behean",
-DlgImgAlignAbsMiddle: "Abs Erdian",
-DlgImgAlignBaseline : "Oinan",
-DlgImgAlignBottom : "Behean",
-DlgImgAlignMiddle : "Erdian",
-DlgImgAlignRight : "Eskuman",
-DlgImgAlignTextTop : "Testua Goian",
-DlgImgAlignTop : "Goian",
-DlgImgPreview : "Aurrebista",
-DlgImgAlertUrl : "Mesedez Irudiaren URLa idatzi",
-DlgImgLinkTab : "Esteka",
-
-// Flash Dialog
-DlgFlashTitle : "Flasharen Ezaugarriak",
-DlgFlashChkPlay : "Automatikoki Erreproduzitu",
-DlgFlashChkLoop : "Begizta",
-DlgFlashChkMenu : "Flasharen Menua Gaitu",
-DlgFlashScale : "Eskalatu",
-DlgFlashScaleAll : "Dena erakutsi",
-DlgFlashScaleNoBorder : "Ertzik gabe",
-DlgFlashScaleFit : "Doitu",
-
-// Link Dialog
-DlgLnkWindowTitle : "Esteka",
-DlgLnkInfoTab : "Estekaren Informazioa",
-DlgLnkTargetTab : "Helburua",
-
-DlgLnkType : "Esteka Mota",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Aingura orrialde honetan",
-DlgLnkTypeEMail : "ePosta",
-DlgLnkProto : "Protokoloa",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Aingura bat hautatu",
-DlgLnkAnchorByName : "Aingura izenagatik",
-DlgLnkAnchorById : "Elementuaren ID-gatik",
-DlgLnkNoAnchors : "(Ez daude aingurak eskuragarri dokumentuan)",
-DlgLnkEMail : "ePosta Helbidea",
-DlgLnkEMailSubject : "Mezuaren Gaia",
-DlgLnkEMailBody : "Mezuaren Gorputza",
-DlgLnkUpload : "Gora kargatu",
-DlgLnkBtnUpload : "Zerbitzarira bidali",
-
-DlgLnkTarget : "Target (Helburua)",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Leiho Berria (_blank)",
-DlgLnkTargetParent : "Leiho Gurasoa (_parent)",
-DlgLnkTargetSelf : "Leiho Berdina (_self)",
-DlgLnkTargetTop : "Goiko Leihoa (_top)",
-DlgLnkTargetFrameName : "Marko Helburuaren Izena",
-DlgLnkPopWinName : "Popup Leihoaren Izena",
-DlgLnkPopWinFeat : "Popup Leihoaren Ezaugarriak",
-DlgLnkPopResize : "Tamaina Aldakorra",
-DlgLnkPopLocation : "Kokaleku Barra",
-DlgLnkPopMenu : "Menu Barra",
-DlgLnkPopScroll : "Korritze Barrak",
-DlgLnkPopStatus : "Egoera Barra",
-DlgLnkPopToolbar : "Tresna Barra",
-DlgLnkPopFullScrn : "Pantaila Osoa (IE)",
-DlgLnkPopDependent : "Menpekoa (Netscape)",
-DlgLnkPopWidth : "Zabalera",
-DlgLnkPopHeight : "Altuera",
-DlgLnkPopLeft : "Ezkerreko Posizioa",
-DlgLnkPopTop : "Goiko Posizioa",
-
-DlnLnkMsgNoUrl : "Mesedez URL esteka idatzi",
-DlnLnkMsgNoEMail : "Mesedez ePosta helbidea idatzi",
-DlnLnkMsgNoAnchor : "Mesedez aingura bat aukeratu",
-DlnLnkMsgInvPopName : "Popup leihoaren izenak karaktere alfabetiko batekin hasi behar du eta eta ezin du zuriunerik izan",
-
-// Color Dialog
-DlgColorTitle : "Kolore Aukeraketa",
-DlgColorBtnClear : "Garbitu",
-DlgColorHighlight : "Nabarmendu",
-DlgColorSelected : "Aukeratuta",
-
-// Smiley Dialog
-DlgSmileyTitle : "Aurpegiera Sartu",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Karaktere Berezia Aukeratu",
-
-// Table Dialog
-DlgTableTitle : "Taularen Ezaugarriak",
-DlgTableRows : "Lerroak",
-DlgTableColumns : "Zutabeak",
-DlgTableBorder : "Ertzaren Zabalera",
-DlgTableAlign : "Lerrokatu",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Ezkerrean",
-DlgTableAlignCenter : "Erdian",
-DlgTableAlignRight : "Eskuman",
-DlgTableWidth : "Zabalera",
-DlgTableWidthPx : "pixel",
-DlgTableWidthPc : "ehuneko",
-DlgTableHeight : "Altuera",
-DlgTableCellSpace : "Gelaxka arteko tartea",
-DlgTableCellPad : "Gelaxken betegarria",
-DlgTableCaption : "Epigrafea",
-DlgTableSummary : "Laburpena",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Gelaxken Ezaugarriak",
-DlgCellWidth : "Zabalera",
-DlgCellWidthPx : "pixel",
-DlgCellWidthPc : "ehuneko",
-DlgCellHeight : "Altuera",
-DlgCellWordWrap : "Itzulbira",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Bai",
-DlgCellWordWrapNo : "Ez",
-DlgCellHorAlign : "Lerrokatu Horizontalki",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Ezkerrean",
-DlgCellHorAlignCenter : "Erdian",
-DlgCellHorAlignRight: "Eskuman",
-DlgCellVerAlign : "Lerrokatu Bertikalki",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Goian",
-DlgCellVerAlignMiddle : "Erdian",
-DlgCellVerAlignBottom : "Behean",
-DlgCellVerAlignBaseline : "Oinean",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Lerroak Hedatu",
-DlgCellCollSpan : "Zutabeak Hedatu",
-DlgCellBackColor : "Atzeko Kolorea",
-DlgCellBorderColor : "Ertzako Kolorea",
-DlgCellBtnSelect : "Aukeratu...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Bilatu eta Ordeztu",
-
-// Find Dialog
-DlgFindTitle : "Bilaketa",
-DlgFindFindBtn : "Bilatu",
-DlgFindNotFoundMsg : "Idatzitako testua ez da topatu.",
-
-// Replace Dialog
-DlgReplaceTitle : "Ordeztu",
-DlgReplaceFindLbl : "Zer bilatu:",
-DlgReplaceReplaceLbl : "Zerekin ordeztu:",
-DlgReplaceCaseChk : "Maiuskula/minuskula",
-DlgReplaceReplaceBtn : "Ordeztu",
-DlgReplaceReplAllBtn : "Ordeztu Guztiak",
-DlgReplaceWordChk : "Esaldi osoa bilatu",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Zure web nabigatzailearen segurtasun ezarpenak testuak automatikoki moztea ez dute baimentzen. Mesedez teklatua erabili ezazu (Ctrl+X).",
-PasteErrorCopy : "Zure web nabigatzailearen segurtasun ezarpenak testuak automatikoki kopiatzea ez dute baimentzen. Mesedez teklatua erabili ezazu (Ctrl+C).",
-
-PasteAsText : "Testu Arrunta bezala Itsatsi",
-PasteFromWord : "Word-etik itsatsi",
-
-DlgPasteMsg2 : "Mesedez teklatua erabilita (Ctrl+V ) ondorego eremuan testua itsatsi eta OK sakatu.",
-DlgPasteSec : "Nabigatzailearen segurtasun ezarpenak direla eta, editoreak ezin du arbela zuzenean erabili. Leiho honetan berriro itsatsi behar duzu.",
-DlgPasteIgnoreFont : "Letra Motaren definizioa ezikusi",
-DlgPasteRemoveStyles : "Estilo definizioak kendu",
-
-// Color Picker
-ColorAutomatic : "Automatikoa",
-ColorMoreColors : "Kolore gehiago...",
-
-// Document Properties
-DocProps : "Dokumentuaren Ezarpenak",
-
-// Anchor Dialog
-DlgAnchorTitle : "Ainguraren Ezaugarriak",
-DlgAnchorName : "Ainguraren Izena",
-DlgAnchorErrorName : "Idatzi ainguraren izena",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Ez dago hiztegian",
-DlgSpellChangeTo : "Honekin ordezkatu",
-DlgSpellBtnIgnore : "Ezikusi",
-DlgSpellBtnIgnoreAll : "Denak Ezikusi",
-DlgSpellBtnReplace : "Ordezkatu",
-DlgSpellBtnReplaceAll : "Denak Ordezkatu",
-DlgSpellBtnUndo : "Desegin",
-DlgSpellNoSuggestions : "- Iradokizunik ez -",
-DlgSpellProgress : "Zuzenketa ortografikoa martxan...",
-DlgSpellNoMispell : "Zuzenketa ortografikoa bukatuta: Akatsik ez",
-DlgSpellNoChanges : "Zuzenketa ortografikoa bukatuta: Ez da ezer aldatu",
-DlgSpellOneChange : "Zuzenketa ortografikoa bukatuta: Hitz bat aldatu da",
-DlgSpellManyChanges : "Zuzenketa ortografikoa bukatuta: %1 hitz aldatu dira",
-
-IeSpellDownload : "Zuzentzaile ortografikoa ez dago instalatuta. Deskargatu nahi duzu?",
-
-// Button Dialog
-DlgButtonText : "Testua (Balorea)",
-DlgButtonType : "Mota",
-DlgButtonTypeBtn : "Botoia",
-DlgButtonTypeSbm : "Bidali",
-DlgButtonTypeRst : "Garbitu",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Izena",
-DlgCheckboxValue : "Balorea",
-DlgCheckboxSelected : "Hautatuta",
-
-// Form Dialog
-DlgFormName : "Izena",
-DlgFormAction : "Ekintza",
-DlgFormMethod : "Metodoa",
-
-// Select Field Dialog
-DlgSelectName : "Izena",
-DlgSelectValue : "Balorea",
-DlgSelectSize : "Tamaina",
-DlgSelectLines : "lerro kopurura",
-DlgSelectChkMulti : "Hautaketa anitzak baimendu",
-DlgSelectOpAvail : "Aukera Eskuragarriak",
-DlgSelectOpText : "Testua",
-DlgSelectOpValue : "Balorea",
-DlgSelectBtnAdd : "Gehitu",
-DlgSelectBtnModify : "Aldatu",
-DlgSelectBtnUp : "Gora",
-DlgSelectBtnDown : "Behera",
-DlgSelectBtnSetValue : "Aukeratutako balorea ezarri",
-DlgSelectBtnDelete : "Ezabatu",
-
-// Textarea Dialog
-DlgTextareaName : "Izena",
-DlgTextareaCols : "Zutabeak",
-DlgTextareaRows : "Lerroak",
-
-// Text Field Dialog
-DlgTextName : "Izena",
-DlgTextValue : "Balorea",
-DlgTextCharWidth : "Zabalera",
-DlgTextMaxChars : "Zenbat karaktere gehienez",
-DlgTextType : "Mota",
-DlgTextTypeText : "Testua",
-DlgTextTypePass : "Pasahitza",
-
-// Hidden Field Dialog
-DlgHiddenName : "Izena",
-DlgHiddenValue : "Balorea",
-
-// Bulleted List Dialog
-BulletedListProp : "Buletdun Zerrendaren Ezarpenak",
-NumberedListProp : "Zenbakidun Zerrendaren Ezarpenak",
-DlgLstStart : "Hasiera",
-DlgLstType : "Mota",
-DlgLstTypeCircle : "Zirkulua",
-DlgLstTypeDisc : "Diskoa",
-DlgLstTypeSquare : "Karratua",
-DlgLstTypeNumbers : "Zenbakiak (1, 2, 3)",
-DlgLstTypeLCase : "Letra xeheak (a, b, c)",
-DlgLstTypeUCase : "Letra larriak (A, B, C)",
-DlgLstTypeSRoman : "Erromatar zenbaki zeheak (i, ii, iii)",
-DlgLstTypeLRoman : "Erromatar zenbaki larriak (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Orokorra",
-DlgDocBackTab : "Atzealdea",
-DlgDocColorsTab : "Koloreak eta Marjinak",
-DlgDocMetaTab : "Meta Informazioa",
-
-DlgDocPageTitle : "Orriaren Izenburua",
-DlgDocLangDir : "Hizkuntzaren Norabidea",
-DlgDocLangDirLTR : "Ezkerretik eskumara (LTR)",
-DlgDocLangDirRTL : "Eskumatik ezkerrera (RTL)",
-DlgDocLangCode : "Hizkuntzaren Kodea",
-DlgDocCharSet : "Karaktere Multzoaren Kodeketa",
-DlgDocCharSetCE : "Erdialdeko Europakoa",
-DlgDocCharSetCT : "Txinatar Tradizionala (Big5)",
-DlgDocCharSetCR : "Zirilikoa",
-DlgDocCharSetGR : "Grekoa",
-DlgDocCharSetJP : "Japoniarra",
-DlgDocCharSetKR : "Korearra",
-DlgDocCharSetTR : "Turkiarra",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Mendebaldeko Europakoa",
-DlgDocCharSetOther : "Beste Karaktere Multzoko Kodeketa",
-
-DlgDocDocType : "Document Type Goiburua",
-DlgDocDocTypeOther : "Beste Document Type Goiburua",
-DlgDocIncXHTML : "XHTML Ezarpenak",
-DlgDocBgColor : "Atzeko Kolorea",
-DlgDocBgImage : "Atzeko Irudiaren URL-a",
-DlgDocBgNoScroll : "Korritze gabeko Atzealdea",
-DlgDocCText : "Testua",
-DlgDocCLink : "Estekak",
-DlgDocCVisited : "Bisitatutako Estekak",
-DlgDocCActive : "Esteka Aktiboa",
-DlgDocMargins : "Orrialdearen marjinak",
-DlgDocMaTop : "Goian",
-DlgDocMaLeft : "Ezkerrean",
-DlgDocMaRight : "Eskuman",
-DlgDocMaBottom : "Behean",
-DlgDocMeIndex : "Dokumentuaren Gako-hitzak (komarekin bananduta)",
-DlgDocMeDescr : "Dokumentuaren Deskribapena",
-DlgDocMeAuthor : "Egilea",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Aurrebista",
-
-// Templates Dialog
-Templates : "Txantiloiak",
-DlgTemplatesTitle : "Eduki Txantiloiak",
-DlgTemplatesSelMsg : "Mesedez txantiloia aukeratu editorean kargatzeko (orain dauden edukiak galduko dira):",
-DlgTemplatesLoading : "Txantiloiak kargatzen. Itxaron mesedez...",
-DlgTemplatesNoTpl : "(Ez dago definitutako txantiloirik)",
-DlgTemplatesReplace : "Ordeztu oraingo edukiak",
-
-// About Dialog
-DlgAboutAboutTab : "Honi buruz",
-DlgAboutBrowserInfoTab : "Nabigatzailearen Informazioa",
-DlgAboutLicenseTab : "Lizentzia",
-DlgAboutVersion : "bertsioa",
-DlgAboutInfo : "Informazio gehiago eskuratzeko hona joan",
-
-// Div Dialog
-DlgDivGeneralTab : "Orokorra",
-DlgDivAdvancedTab : "Aurreratua",
-DlgDivStyle : "Estiloa",
-DlgDivInlineStyle : "Inline Estiloa"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/fa.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/fa.js
deleted file mode 100755
index d529f25..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/fa.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Persian language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "rtl",
-
-ToolbarCollapse : "برچیدن نوارابزار",
-ToolbarExpand : "گستردن نوارابزار",
-
-// Toolbar Items and Context Menu
-Save : "ذخیره",
-NewPage : "برگهٴ تازه",
-Preview : "پیشنمایش",
-Cut : "برش",
-Copy : "کپی",
-Paste : "چسباندن",
-PasteText : "چسباندن به عنوان متن ِساده",
-PasteWord : "چسباندن از Word",
-Print : "چاپ",
-SelectAll : "گزینش همه",
-RemoveFormat : "برداشتن فرمت",
-InsertLinkLbl : "پیوند",
-InsertLink : "گنجاندن/ویرایش ِپیوند",
-RemoveLink : "برداشتن پیوند",
-VisitLink : "باز کردن پیوند",
-Anchor : "گنجاندن/ویرایش ِلنگر",
-AnchorDelete : "برداشتن لنگر",
-InsertImageLbl : "تصویر",
-InsertImage : "گنجاندن/ویرایش ِتصویر",
-InsertFlashLbl : "Flash",
-InsertFlash : "گنجاندن/ویرایش ِFlash",
-InsertTableLbl : "جدول",
-InsertTable : "گنجاندن/ویرایش ِجدول",
-InsertLineLbl : "خط",
-InsertLine : "گنجاندن خط ِافقی",
-InsertSpecialCharLbl: "نویسهٴ ویژه",
-InsertSpecialChar : "گنجاندن نویسهٴ ویژه",
-InsertSmileyLbl : "خندانک",
-InsertSmiley : "گنجاندن خندانک",
-About : "دربارهٴ FCKeditor",
-Bold : "درشت",
-Italic : "خمیده",
-Underline : "خطزیردار",
-StrikeThrough : "میانخط",
-Subscript : "زیرنویس",
-Superscript : "بالانویس",
-LeftJustify : "چپچین",
-CenterJustify : "میانچین",
-RightJustify : "راستچین",
-BlockJustify : "بلوکچین",
-DecreaseIndent : "کاهش تورفتگی",
-IncreaseIndent : "افزایش تورفتگی",
-Blockquote : "بلوک نقل قول",
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "واچیدن",
-Redo : "بازچیدن",
-NumberedListLbl : "فهرست شمارهدار",
-NumberedList : "گنجاندن/برداشتن فهرست شمارهدار",
-BulletedListLbl : "فهرست نقطهای",
-BulletedList : "گنجاندن/برداشتن فهرست نقطهای",
-ShowTableBorders : "نمایش لبهٴ جدول",
-ShowDetails : "نمایش جزئیات",
-Style : "سبک",
-FontFormat : "فرمت",
-Font : "قلم",
-FontSize : "اندازه",
-TextColor : "رنگ متن",
-BGColor : "رنگ پسزمینه",
-Source : "منبع",
-Find : "جستجو",
-Replace : "جایگزینی",
-SpellCheck : "بررسی املا",
-UniversalKeyboard : "صفحهکلید جهانی",
-PageBreakLbl : "شکستگی ِپایان ِبرگه",
-PageBreak : "گنجاندن شکستگی ِپایان ِبرگه",
-
-Form : "فرم",
-Checkbox : "خانهٴ گزینهای",
-RadioButton : "دکمهٴ رادیویی",
-TextField : "فیلد متنی",
-Textarea : "ناحیهٴ متنی",
-HiddenField : "فیلد پنهان",
-Button : "دکمه",
-SelectionField : "فیلد چندگزینهای",
-ImageButton : "دکمهٴ تصویری",
-
-FitWindow : "بیشینهسازی ِاندازهٴ ویرایشگر",
-ShowBlocks : "نمایش بلوکها",
-
-// Context Menu
-EditLink : "ویرایش پیوند",
-CellCM : "سلول",
-RowCM : "سطر",
-ColumnCM : "ستون",
-InsertRowAfter : "افزودن سطر بعد از",
-InsertRowBefore : "افزودن سطر قبل از",
-DeleteRows : "حذف سطرها",
-InsertColumnAfter : "افزودن ستون بعد از",
-InsertColumnBefore : "افزودن ستون قبل از",
-DeleteColumns : "حذف ستونها",
-InsertCellAfter : "افزودن سلول بعد از",
-InsertCellBefore : "افزودن سلول قبل از",
-DeleteCells : "حذف سلولها",
-MergeCells : "ادغام سلولها",
-MergeRight : "ادغام به راست",
-MergeDown : "ادغام به پایین",
-HorizontalSplitCell : "جدا کردن افقی سلول",
-VerticalSplitCell : "جدا کردن عمودی سلول",
-TableDelete : "پاککردن جدول",
-CellProperties : "ویژگیهای سلول",
-TableProperties : "ویژگیهای جدول",
-ImageProperties : "ویژگیهای تصویر",
-FlashProperties : "ویژگیهای Flash",
-
-AnchorProp : "ویژگیهای لنگر",
-ButtonProp : "ویژگیهای دکمه",
-CheckboxProp : "ویژگیهای خانهٴ گزینهای",
-HiddenFieldProp : "ویژگیهای فیلد پنهان",
-RadioButtonProp : "ویژگیهای دکمهٴ رادیویی",
-ImageButtonProp : "ویژگیهای دکمهٴ تصویری",
-TextFieldProp : "ویژگیهای فیلد متنی",
-SelectionFieldProp : "ویژگیهای فیلد چندگزینهای",
-TextareaProp : "ویژگیهای ناحیهٴ متنی",
-FormProp : "ویژگیهای فرم",
-
-FontFormats : "نرمال;فرمتشده;آدرس;سرنویس 1;سرنویس 2;سرنویس 3;سرنویس 4;سرنویس 5;سرنویس 6;بند;(DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "پردازش XHTML. لطفا صبر کنید...",
-Done : "انجام شد",
-PasteWordConfirm : "متنی که میخواهید بچسبانید به نظر میرسد از Word کپی شده است. آیا میخواهید قبل از چسباندن آن را پاکسازی کنید؟",
-NotCompatiblePaste : "این فرمان برای مرورگر Internet Explorer از نگارش 5.5 یا بالاتر در دسترس است. آیا میخواهید بدون پاکسازی، متن را بچسبانید؟",
-UnknownToolbarItem : "فقرهٴ نوارابزار ناشناخته \"%1\"",
-UnknownCommand : "نام دستور ناشناخته \"%1\"",
-NotImplemented : "دستور پیادهسازینشده",
-UnknownToolbarSet : "مجموعهٴ نوارابزار \"%1\" وجود ندارد",
-NoActiveX : "تنظیمات امنیتی مرورگر شما ممکن است در بعضی از ویژگیهای مرورگر محدودیت ایجاد کند. شما باید گزینهٴ \"Run ActiveX controls and plug-ins\" را فعال کنید. ممکن است شما با خطاهایی روبرو باشید و متوجه کمبود ویژگیهایی شوید.",
-BrowseServerBlocked : "توانایی بازگشایی مرورگر منابع فراهم نیست. اطمینان حاصل کنید که تمامی برنامههای پیشگیری از نمایش popup را از کار بازداشتهاید.",
-DialogBlocked : "توانایی بازگشایی پنجرهٴ کوچک ِگفتگو فراهم نیست. اطمینان حاصل کنید که تمامی برنامههای پیشگیری از نمایش popup را از کار بازداشتهاید.",
-VisitLinkBlocked : "امکان بازکردن یک پنجره جدید نیست. اطمینان حاصل کنید که تمامی برنامههای پیشگیری از نمایش popup را از کار بازداشتهاید.",
-
-// Dialogs
-DlgBtnOK : "پذیرش",
-DlgBtnCancel : "انصراف",
-DlgBtnClose : "بستن",
-DlgBtnBrowseServer : "فهرستنمایی سرور",
-DlgAdvancedTag : "پیشرفته",
-DlgOpOther : "<غیره>",
-DlgInfoTab : "اطلاعات",
-DlgAlertUrl : "لطفاً URL را بنویسید",
-
-// General Dialogs Labels
-DlgGenNotSet : "<تعیننشده>",
-DlgGenId : "شناسه",
-DlgGenLangDir : "جهتنمای زبان",
-DlgGenLangDirLtr : "چپ به راست (LTR)",
-DlgGenLangDirRtl : "راست به چپ (RTL)",
-DlgGenLangCode : "کد زبان",
-DlgGenAccessKey : "کلید دستیابی",
-DlgGenName : "نام",
-DlgGenTabIndex : "نمایهٴ دسترسی با Tab",
-DlgGenLongDescr : "URL توصیف طولانی",
-DlgGenClass : "کلاسهای شیوهنامه(Stylesheet)",
-DlgGenTitle : "عنوان کمکی",
-DlgGenContType : "نوع محتوای کمکی",
-DlgGenLinkCharset : "نویسهگان منبع ِپیوندشده",
-DlgGenStyle : "شیوه(style)",
-
-// Image Dialog
-DlgImgTitle : "ویژگیهای تصویر",
-DlgImgInfoTab : "اطلاعات تصویر",
-DlgImgBtnUpload : "به سرور بفرست",
-DlgImgURL : "URL",
-DlgImgUpload : "انتقال به سرور",
-DlgImgAlt : "متن جایگزین",
-DlgImgWidth : "پهنا",
-DlgImgHeight : "درازا",
-DlgImgLockRatio : "قفلکردن ِنسبت",
-DlgBtnResetSize : "بازنشانی اندازه",
-DlgImgBorder : "لبه",
-DlgImgHSpace : "فاصلهٴ افقی",
-DlgImgVSpace : "فاصلهٴ عمودی",
-DlgImgAlign : "چینش",
-DlgImgAlignLeft : "چپ",
-DlgImgAlignAbsBottom: "پائین مطلق",
-DlgImgAlignAbsMiddle: "وسط مطلق",
-DlgImgAlignBaseline : "خطپایه",
-DlgImgAlignBottom : "پائین",
-DlgImgAlignMiddle : "وسط",
-DlgImgAlignRight : "راست",
-DlgImgAlignTextTop : "متن بالا",
-DlgImgAlignTop : "بالا",
-DlgImgPreview : "پیشنمایش",
-DlgImgAlertUrl : "لطفا URL تصویر را بنویسید",
-DlgImgLinkTab : "پیوند",
-
-// Flash Dialog
-DlgFlashTitle : "ویژگیهای Flash",
-DlgFlashChkPlay : "آغاز ِخودکار",
-DlgFlashChkLoop : "اجرای پیاپی",
-DlgFlashChkMenu : "دردسترسبودن منوی Flash",
-DlgFlashScale : "مقیاس",
-DlgFlashScaleAll : "نمایش همه",
-DlgFlashScaleNoBorder : "بدون کران",
-DlgFlashScaleFit : "جایگیری کامل",
-
-// Link Dialog
-DlgLnkWindowTitle : "پیوند",
-DlgLnkInfoTab : "اطلاعات پیوند",
-DlgLnkTargetTab : "مقصد",
-
-DlgLnkType : "نوع پیوند",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "لنگر در همین صفحه",
-DlgLnkTypeEMail : "پست الکترونیکی",
-DlgLnkProto : "پروتکل",
-DlgLnkProtoOther : "<دیگر>",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "یک لنگر برگزینید",
-DlgLnkAnchorByName : "با نام لنگر",
-DlgLnkAnchorById : "با شناسهٴ المان",
-DlgLnkNoAnchors : "(در این سند لنگری دردسترس نیست)",
-DlgLnkEMail : "نشانی پست الکترونیکی",
-DlgLnkEMailSubject : "موضوع پیام",
-DlgLnkEMailBody : "متن پیام",
-DlgLnkUpload : "انتقال به سرور",
-DlgLnkBtnUpload : "به سرور بفرست",
-
-DlgLnkTarget : "مقصد",
-DlgLnkTargetFrame : "<فریم>",
-DlgLnkTargetPopup : "<پنجرهٴ پاپاپ>",
-DlgLnkTargetBlank : "پنجرهٴ دیگر (_blank)",
-DlgLnkTargetParent : "پنجرهٴ والد (_parent)",
-DlgLnkTargetSelf : "همان پنجره (_self)",
-DlgLnkTargetTop : "بالاترین پنجره (_top)",
-DlgLnkTargetFrameName : "نام فریم مقصد",
-DlgLnkPopWinName : "نام پنجرهٴ پاپاپ",
-DlgLnkPopWinFeat : "ویژگیهای پنجرهٴ پاپاپ",
-DlgLnkPopResize : "قابل تغییر اندازه",
-DlgLnkPopLocation : "نوار موقعیت",
-DlgLnkPopMenu : "نوار منو",
-DlgLnkPopScroll : "میلههای پیمایش",
-DlgLnkPopStatus : "نوار وضعیت",
-DlgLnkPopToolbar : "نوارابزار",
-DlgLnkPopFullScrn : "تمامصفحه (IE)",
-DlgLnkPopDependent : "وابسته (Netscape)",
-DlgLnkPopWidth : "پهنا",
-DlgLnkPopHeight : "درازا",
-DlgLnkPopLeft : "موقعیت ِچپ",
-DlgLnkPopTop : "موقعیت ِبالا",
-
-DlnLnkMsgNoUrl : "لطفا URL پیوند را بنویسید",
-DlnLnkMsgNoEMail : "لطفا نشانی پست الکترونیکی را بنویسید",
-DlnLnkMsgNoAnchor : "لطفا لنگری را برگزینید",
-DlnLnkMsgInvPopName : "نام پنجرهٴ پاپاپ باید با یک نویسهٴ الفبایی آغاز گردد و نباید فاصلههای خالی در آن باشند",
-
-// Color Dialog
-DlgColorTitle : "گزینش رنگ",
-DlgColorBtnClear : "پاککردن",
-DlgColorHighlight : "نمونه",
-DlgColorSelected : "برگزیده",
-
-// Smiley Dialog
-DlgSmileyTitle : "گنجاندن خندانک",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "گزینش نویسهٴویژه",
-
-// Table Dialog
-DlgTableTitle : "ویژگیهای جدول",
-DlgTableRows : "سطرها",
-DlgTableColumns : "ستونها",
-DlgTableBorder : "اندازهٴ لبه",
-DlgTableAlign : "چینش",
-DlgTableAlignNotSet : "<تعیننشده>",
-DlgTableAlignLeft : "چپ",
-DlgTableAlignCenter : "وسط",
-DlgTableAlignRight : "راست",
-DlgTableWidth : "پهنا",
-DlgTableWidthPx : "پیکسل",
-DlgTableWidthPc : "درصد",
-DlgTableHeight : "درازا",
-DlgTableCellSpace : "فاصلهٴ میان سلولها",
-DlgTableCellPad : "فاصلهٴ پرشده در سلول",
-DlgTableCaption : "عنوان",
-DlgTableSummary : "خلاصه",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "ویژگیهای سلول",
-DlgCellWidth : "پهنا",
-DlgCellWidthPx : "پیکسل",
-DlgCellWidthPc : "درصد",
-DlgCellHeight : "درازا",
-DlgCellWordWrap : "شکستن واژهها",
-DlgCellWordWrapNotSet : "<تعیننشده>",
-DlgCellWordWrapYes : "بله",
-DlgCellWordWrapNo : "خیر",
-DlgCellHorAlign : "چینش ِافقی",
-DlgCellHorAlignNotSet : "<تعیننشده>",
-DlgCellHorAlignLeft : "چپ",
-DlgCellHorAlignCenter : "وسط",
-DlgCellHorAlignRight: "راست",
-DlgCellVerAlign : "چینش ِعمودی",
-DlgCellVerAlignNotSet : "<تعیننشده>",
-DlgCellVerAlignTop : "بالا",
-DlgCellVerAlignMiddle : "میان",
-DlgCellVerAlignBottom : "پائین",
-DlgCellVerAlignBaseline : "خطپایه",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "گستردگی سطرها",
-DlgCellCollSpan : "گستردگی ستونها",
-DlgCellBackColor : "رنگ پسزمینه",
-DlgCellBorderColor : "رنگ لبه",
-DlgCellBtnSelect : "برگزینید...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "جستجو و جایگزینی",
-
-// Find Dialog
-DlgFindTitle : "یافتن",
-DlgFindFindBtn : "یافتن",
-DlgFindNotFoundMsg : "متن موردنظر یافت نشد.",
-
-// Replace Dialog
-DlgReplaceTitle : "جایگزینی",
-DlgReplaceFindLbl : "چهچیز را مییابید:",
-DlgReplaceReplaceLbl : "جایگزینی با:",
-DlgReplaceCaseChk : "همسانی در بزرگی و کوچکی نویسهها",
-DlgReplaceReplaceBtn : "جایگزینی",
-DlgReplaceReplAllBtn : "جایگزینی همهٴ یافتهها",
-DlgReplaceWordChk : "همسانی با واژهٴ کامل",
-
-// Paste Operations / Dialog
-PasteErrorCut : "تنظیمات امنیتی مرورگر شما اجازه نمیدهد که ویرایشگر به طور خودکار عملکردهای برش را انجام دهد. لطفا با دکمههای صفحهکلید این کار را انجام دهید (Ctrl+X).",
-PasteErrorCopy : "تنظیمات امنیتی مرورگر شما اجازه نمیدهد که ویرایشگر به طور خودکار عملکردهای کپیکردن را انجام دهد. لطفا با دکمههای صفحهکلید این کار را انجام دهید (Ctrl+C).",
-
-PasteAsText : "چسباندن به عنوان متن ِساده",
-PasteFromWord : "چسباندن از Word",
-
-DlgPasteMsg2 : "لطفا متن را با کلیدهای (Ctrl+V ) در این جعبهٴ متنی بچسبانید و پذیرش را بزنید.",
-DlgPasteSec : "به خاطر تنظیمات امنیتی مرورگر شما، ویرایشگر نمیتواند دسترسی مستقیم به دادههای clipboard داشته باشد. شما باید دوباره آنرا در این پنجره بچسبانید.",
-DlgPasteIgnoreFont : "چشمپوشی از تعاریف نوع قلم",
-DlgPasteRemoveStyles : "چشمپوشی از تعاریف سبک (style)",
-
-// Color Picker
-ColorAutomatic : "خودکار",
-ColorMoreColors : "رنگهای بیشتر...",
-
-// Document Properties
-DocProps : "ویژگیهای سند",
-
-// Anchor Dialog
-DlgAnchorTitle : "ویژگیهای لنگر",
-DlgAnchorName : "نام لنگر",
-DlgAnchorErrorName : "لطفا نام لنگر را بنویسید",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "در واژهنامه یافت نشد",
-DlgSpellChangeTo : "تغییر به",
-DlgSpellBtnIgnore : "چشمپوشی",
-DlgSpellBtnIgnoreAll : "چشمپوشی همه",
-DlgSpellBtnReplace : "جایگزینی",
-DlgSpellBtnReplaceAll : "جایگزینی همه",
-DlgSpellBtnUndo : "واچینش",
-DlgSpellNoSuggestions : "- پیشنهادی نیست -",
-DlgSpellProgress : "بررسی املا در حال انجام...",
-DlgSpellNoMispell : "بررسی املا انجام شد. هیچ غلطاملائی یافت نشد",
-DlgSpellNoChanges : "بررسی املا انجام شد. هیچ واژهای تغییر نیافت",
-DlgSpellOneChange : "بررسی املا انجام شد. یک واژه تغییر یافت",
-DlgSpellManyChanges : "بررسی املا انجام شد. %1 واژه تغییر یافت",
-
-IeSpellDownload : "بررسیکنندهٴ املا نصب نشده است. آیا میخواهید آن را هماکنون دریافت کنید؟",
-
-// Button Dialog
-DlgButtonText : "متن (مقدار)",
-DlgButtonType : "نوع",
-DlgButtonTypeBtn : "دکمه",
-DlgButtonTypeSbm : "Submit",
-DlgButtonTypeRst : "بازنشانی (Reset)",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "نام",
-DlgCheckboxValue : "مقدار",
-DlgCheckboxSelected : "برگزیده",
-
-// Form Dialog
-DlgFormName : "نام",
-DlgFormAction : "رویداد",
-DlgFormMethod : "متد",
-
-// Select Field Dialog
-DlgSelectName : "نام",
-DlgSelectValue : "مقدار",
-DlgSelectSize : "اندازه",
-DlgSelectLines : "خطوط",
-DlgSelectChkMulti : "گزینش چندگانه فراهم باشد",
-DlgSelectOpAvail : "گزینههای دردسترس",
-DlgSelectOpText : "متن",
-DlgSelectOpValue : "مقدار",
-DlgSelectBtnAdd : "افزودن",
-DlgSelectBtnModify : "ویرایش",
-DlgSelectBtnUp : "بالا",
-DlgSelectBtnDown : "پائین",
-DlgSelectBtnSetValue : "تنظیم به عنوان مقدار ِبرگزیده",
-DlgSelectBtnDelete : "پاککردن",
-
-// Textarea Dialog
-DlgTextareaName : "نام",
-DlgTextareaCols : "ستونها",
-DlgTextareaRows : "سطرها",
-
-// Text Field Dialog
-DlgTextName : "نام",
-DlgTextValue : "مقدار",
-DlgTextCharWidth : "پهنای نویسه",
-DlgTextMaxChars : "بیشینهٴ نویسهها",
-DlgTextType : "نوع",
-DlgTextTypeText : "متن",
-DlgTextTypePass : "گذرواژه",
-
-// Hidden Field Dialog
-DlgHiddenName : "نام",
-DlgHiddenValue : "مقدار",
-
-// Bulleted List Dialog
-BulletedListProp : "ویژگیهای فهرست نقطهای",
-NumberedListProp : "ویژگیهای فهرست شمارهدار",
-DlgLstStart : "آغاز",
-DlgLstType : "نوع",
-DlgLstTypeCircle : "دایره",
-DlgLstTypeDisc : "قرص",
-DlgLstTypeSquare : "چهارگوش",
-DlgLstTypeNumbers : "شمارهها (1، 2، 3)",
-DlgLstTypeLCase : "نویسههای کوچک (a، b، c)",
-DlgLstTypeUCase : "نویسههای بزرگ (A، B، C)",
-DlgLstTypeSRoman : "شمارگان رومی کوچک (i، ii، iii)",
-DlgLstTypeLRoman : "شمارگان رومی بزرگ (I، II، III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "عمومی",
-DlgDocBackTab : "پسزمینه",
-DlgDocColorsTab : "رنگها و حاشیهها",
-DlgDocMetaTab : "فراداده",
-
-DlgDocPageTitle : "عنوان صفحه",
-DlgDocLangDir : "جهت زبان",
-DlgDocLangDirLTR : "چپ به راست (LTR(",
-DlgDocLangDirRTL : "راست به چپ (RTL(",
-DlgDocLangCode : "کد زبان",
-DlgDocCharSet : "رمزگذاری نویسهگان",
-DlgDocCharSetCE : "اروپای مرکزی",
-DlgDocCharSetCT : "چینی رسمی (Big5)",
-DlgDocCharSetCR : "سیریلیک",
-DlgDocCharSetGR : "یونانی",
-DlgDocCharSetJP : "ژاپنی",
-DlgDocCharSetKR : "کرهای",
-DlgDocCharSetTR : "ترکی",
-DlgDocCharSetUN : "یونیکُد (UTF-8)",
-DlgDocCharSetWE : "اروپای غربی",
-DlgDocCharSetOther : "رمزگذاری نویسهگان دیگر",
-
-DlgDocDocType : "عنوان نوع سند",
-DlgDocDocTypeOther : "عنوان نوع سند دیگر",
-DlgDocIncXHTML : "شامل تعاریف XHTML",
-DlgDocBgColor : "رنگ پسزمینه",
-DlgDocBgImage : "URL تصویر پسزمینه",
-DlgDocBgNoScroll : "پسزمینهٴ پیمایشناپذیر",
-DlgDocCText : "متن",
-DlgDocCLink : "پیوند",
-DlgDocCVisited : "پیوند مشاهدهشده",
-DlgDocCActive : "پیوند فعال",
-DlgDocMargins : "حاشیههای صفحه",
-DlgDocMaTop : "بالا",
-DlgDocMaLeft : "چپ",
-DlgDocMaRight : "راست",
-DlgDocMaBottom : "پایین",
-DlgDocMeIndex : "کلیدواژگان نمایهگذاری سند (با کاما جدا شوند)",
-DlgDocMeDescr : "توصیف سند",
-DlgDocMeAuthor : "نویسنده",
-DlgDocMeCopy : "کپیرایت",
-DlgDocPreview : "پیشنمایش",
-
-// Templates Dialog
-Templates : "الگوها",
-DlgTemplatesTitle : "الگوهای محتویات",
-DlgTemplatesSelMsg : "لطفا الگوی موردنظر را برای بازکردن در ویرایشگر برگزینید (محتویات کنونی از دست خواهند رفت):",
-DlgTemplatesLoading : "بارگذاری فهرست الگوها. لطفا صبر کنید...",
-DlgTemplatesNoTpl : "(الگوئی تعریف نشده است)",
-DlgTemplatesReplace : "محتویات کنونی جایگزین شوند",
-
-// About Dialog
-DlgAboutAboutTab : "درباره",
-DlgAboutBrowserInfoTab : "اطلاعات مرورگر",
-DlgAboutLicenseTab : "گواهینامه",
-DlgAboutVersion : "نگارش",
-DlgAboutInfo : "برای آگاهی بیشتر به این نشانی بروید",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/fi.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/fi.js
deleted file mode 100755
index f59fda2..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/fi.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Finnish language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Piilota työkalurivi",
-ToolbarExpand : "Näytä työkalurivi",
-
-// Toolbar Items and Context Menu
-Save : "Tallenna",
-NewPage : "Tyhjennä",
-Preview : "Esikatsele",
-Cut : "Leikkaa",
-Copy : "Kopioi",
-Paste : "Liitä",
-PasteText : "Liitä tekstinä",
-PasteWord : "Liitä Wordista",
-Print : "Tulosta",
-SelectAll : "Valitse kaikki",
-RemoveFormat : "Poista muotoilu",
-InsertLinkLbl : "Linkki",
-InsertLink : "Lisää linkki/muokkaa linkkiä",
-RemoveLink : "Poista linkki",
-VisitLink : "Open Link", //MISSING
-Anchor : "Lisää ankkuri/muokkaa ankkuria",
-AnchorDelete : "Poista ankkuri",
-InsertImageLbl : "Kuva",
-InsertImage : "Lisää kuva/muokkaa kuvaa",
-InsertFlashLbl : "Flash",
-InsertFlash : "Lisää/muokkaa Flashia",
-InsertTableLbl : "Taulu",
-InsertTable : "Lisää taulu/muokkaa taulua",
-InsertLineLbl : "Murtoviiva",
-InsertLine : "Lisää murtoviiva",
-InsertSpecialCharLbl: "Erikoismerkki",
-InsertSpecialChar : "Lisää erikoismerkki",
-InsertSmileyLbl : "Hymiö",
-InsertSmiley : "Lisää hymiö",
-About : "FCKeditorista",
-Bold : "Lihavoitu",
-Italic : "Kursivoitu",
-Underline : "Alleviivattu",
-StrikeThrough : "Yliviivattu",
-Subscript : "Alaindeksi",
-Superscript : "Yläindeksi",
-LeftJustify : "Tasaa vasemmat reunat",
-CenterJustify : "Keskitä",
-RightJustify : "Tasaa oikeat reunat",
-BlockJustify : "Tasaa molemmat reunat",
-DecreaseIndent : "Pienennä sisennystä",
-IncreaseIndent : "Suurenna sisennystä",
-Blockquote : "Lainaus",
-CreateDiv : "Create Div Container", //MISSING
-EditDiv : "Edit Div Container", //MISSING
-DeleteDiv : "Remove Div Container", //MISSING
-Undo : "Kumoa",
-Redo : "Toista",
-NumberedListLbl : "Numerointi",
-NumberedList : "Lisää/poista numerointi",
-BulletedListLbl : "Luottelomerkit",
-BulletedList : "Lisää/poista luottelomerkit",
-ShowTableBorders : "Näytä taulun rajat",
-ShowDetails : "Näytä muotoilu",
-Style : "Tyyli",
-FontFormat : "Muotoilu",
-Font : "Fontti",
-FontSize : "Koko",
-TextColor : "Tekstiväri",
-BGColor : "Taustaväri",
-Source : "Koodi",
-Find : "Etsi",
-Replace : "Korvaa",
-SpellCheck : "Tarkista oikeinkirjoitus",
-UniversalKeyboard : "Universaali näppäimistö",
-PageBreakLbl : "Sivun vaihto",
-PageBreak : "Lisää sivun vaihto",
-
-Form : "Lomake",
-Checkbox : "Valintaruutu",
-RadioButton : "Radiopainike",
-TextField : "Tekstikenttä",
-Textarea : "Tekstilaatikko",
-HiddenField : "Piilokenttä",
-Button : "Painike",
-SelectionField : "Valintakenttä",
-ImageButton : "Kuvapainike",
-
-FitWindow : "Suurenna editori koko ikkunaan",
-ShowBlocks : "Näytä elementit",
-
-// Context Menu
-EditLink : "Muokkaa linkkiä",
-CellCM : "Solu",
-RowCM : "Rivi",
-ColumnCM : "Sarake",
-InsertRowAfter : "Lisää rivi alapuolelle",
-InsertRowBefore : "Lisää rivi yläpuolelle",
-DeleteRows : "Poista rivit",
-InsertColumnAfter : "Lisää sarake oikealle",
-InsertColumnBefore : "Lisää sarake vasemmalle",
-DeleteColumns : "Poista sarakkeet",
-InsertCellAfter : "Lisää solu perään",
-InsertCellBefore : "Lisää solu eteen",
-DeleteCells : "Poista solut",
-MergeCells : "Yhdistä solut",
-MergeRight : "Yhdistä oikealla olevan kanssa",
-MergeDown : "Yhdistä alla olevan kanssa",
-HorizontalSplitCell : "Jaa solu vaakasuunnassa",
-VerticalSplitCell : "Jaa solu pystysuunnassa",
-TableDelete : "Poista taulu",
-CellProperties : "Solun ominaisuudet",
-TableProperties : "Taulun ominaisuudet",
-ImageProperties : "Kuvan ominaisuudet",
-FlashProperties : "Flash ominaisuudet",
-
-AnchorProp : "Ankkurin ominaisuudet",
-ButtonProp : "Painikkeen ominaisuudet",
-CheckboxProp : "Valintaruudun ominaisuudet",
-HiddenFieldProp : "Piilokentän ominaisuudet",
-RadioButtonProp : "Radiopainikkeen ominaisuudet",
-ImageButtonProp : "Kuvapainikkeen ominaisuudet",
-TextFieldProp : "Tekstikentän ominaisuudet",
-SelectionFieldProp : "Valintakentän ominaisuudet",
-TextareaProp : "Tekstilaatikon ominaisuudet",
-FormProp : "Lomakkeen ominaisuudet",
-
-FontFormats : "Normaali;Muotoiltu;Osoite;Otsikko 1;Otsikko 2;Otsikko 3;Otsikko 4;Otsikko 5;Otsikko 6",
-
-// Alerts and Messages
-ProcessingXHTML : "Prosessoidaan XHTML:ää. Odota hetki...",
-Done : "Valmis",
-PasteWordConfirm : "Teksti, jonka haluat liittää, näyttää olevan kopioitu Wordista. Haluatko puhdistaa sen ennen liittämistä?",
-NotCompatiblePaste : "Tämä komento toimii vain Internet Explorer 5.5:ssa tai uudemmassa. Haluatko liittää ilman puhdistusta?",
-UnknownToolbarItem : "Tuntemanton työkalu \"%1\"",
-UnknownCommand : "Tuntematon komento \"%1\"",
-NotImplemented : "Komentoa ei ole liitetty sovellukseen",
-UnknownToolbarSet : "Työkalukokonaisuus \"%1\" ei ole olemassa",
-NoActiveX : "Selaimesi turvallisuusasetukset voivat rajoittaa joitain editorin ominaisuuksia. Sinun pitää ottaa käyttöön asetuksista \"Suorita ActiveX komponentit ja -plugin-laajennukset\". Saatat kohdata virheitä ja huomata puuttuvia ominaisuuksia.",
-BrowseServerBlocked : "Resurssiselainta ei voitu avata. Varmista, että ponnahdusikkunoiden estäjät eivät ole päällä.",
-DialogBlocked : "Apuikkunaa ei voitu avaata. Varmista, että ponnahdusikkunoiden estäjät eivät ole päällä.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Peruuta",
-DlgBtnClose : "Sulje",
-DlgBtnBrowseServer : "Selaa palvelinta",
-DlgAdvancedTag : "Lisäominaisuudet",
-DlgOpOther : "Muut",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Lisää URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Tunniste",
-DlgGenLangDir : "Kielen suunta",
-DlgGenLangDirLtr : "Vasemmalta oikealle (LTR)",
-DlgGenLangDirRtl : "Oikealta vasemmalle (RTL)",
-DlgGenLangCode : "Kielikoodi",
-DlgGenAccessKey : "Pikanäppäin",
-DlgGenName : "Nimi",
-DlgGenTabIndex : "Tabulaattori indeksi",
-DlgGenLongDescr : "Pitkän kuvauksen URL",
-DlgGenClass : "Tyyliluokat",
-DlgGenTitle : "Avustava otsikko",
-DlgGenContType : "Avustava sisällön tyyppi",
-DlgGenLinkCharset : "Linkitetty kirjaimisto",
-DlgGenStyle : "Tyyli",
-
-// Image Dialog
-DlgImgTitle : "Kuvan ominaisuudet",
-DlgImgInfoTab : "Kuvan tiedot",
-DlgImgBtnUpload : "Lähetä palvelimelle",
-DlgImgURL : "Osoite",
-DlgImgUpload : "Lisää kuva",
-DlgImgAlt : "Vaihtoehtoinen teksti",
-DlgImgWidth : "Leveys",
-DlgImgHeight : "Korkeus",
-DlgImgLockRatio : "Lukitse suhteet",
-DlgBtnResetSize : "Alkuperäinen koko",
-DlgImgBorder : "Raja",
-DlgImgHSpace : "Vaakatila",
-DlgImgVSpace : "Pystytila",
-DlgImgAlign : "Kohdistus",
-DlgImgAlignLeft : "Vasemmalle",
-DlgImgAlignAbsBottom: "Aivan alas",
-DlgImgAlignAbsMiddle: "Aivan keskelle",
-DlgImgAlignBaseline : "Alas (teksti)",
-DlgImgAlignBottom : "Alas",
-DlgImgAlignMiddle : "Keskelle",
-DlgImgAlignRight : "Oikealle",
-DlgImgAlignTextTop : "Ylös (teksti)",
-DlgImgAlignTop : "Ylös",
-DlgImgPreview : "Esikatselu",
-DlgImgAlertUrl : "Kirjoita kuvan osoite (URL)",
-DlgImgLinkTab : "Linkki",
-
-// Flash Dialog
-DlgFlashTitle : "Flash ominaisuudet",
-DlgFlashChkPlay : "Automaattinen käynnistys",
-DlgFlashChkLoop : "Toisto",
-DlgFlashChkMenu : "Näytä Flash-valikko",
-DlgFlashScale : "Levitä",
-DlgFlashScaleAll : "Näytä kaikki",
-DlgFlashScaleNoBorder : "Ei rajaa",
-DlgFlashScaleFit : "Tarkka koko",
-
-// Link Dialog
-DlgLnkWindowTitle : "Linkki",
-DlgLnkInfoTab : "Linkin tiedot",
-DlgLnkTargetTab : "Kohde",
-
-DlgLnkType : "Linkkityyppi",
-DlgLnkTypeURL : "Osoite",
-DlgLnkTypeAnchor : "Ankkuri tässä sivussa",
-DlgLnkTypeEMail : "Sähköposti",
-DlgLnkProto : "Protokolla",
-DlgLnkProtoOther : "",
-DlgLnkURL : "Osoite",
-DlgLnkAnchorSel : "Valitse ankkuri",
-DlgLnkAnchorByName : "Ankkurin nimen mukaan",
-DlgLnkAnchorById : "Ankkurin ID:n mukaan",
-DlgLnkNoAnchors : "(Ei ankkureita tässä dokumentissa)",
-DlgLnkEMail : "Sähköpostiosoite",
-DlgLnkEMailSubject : "Aihe",
-DlgLnkEMailBody : "Viesti",
-DlgLnkUpload : "Lisää tiedosto",
-DlgLnkBtnUpload : "Lähetä palvelimelle",
-
-DlgLnkTarget : "Kohde",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Uusi ikkuna (_blank)",
-DlgLnkTargetParent : "Emoikkuna (_parent)",
-DlgLnkTargetSelf : "Sama ikkuna (_self)",
-DlgLnkTargetTop : "Päällimmäisin ikkuna (_top)",
-DlgLnkTargetFrameName : "Kohdekehyksen nimi",
-DlgLnkPopWinName : "Popup ikkunan nimi",
-DlgLnkPopWinFeat : "Popup ikkunan ominaisuudet",
-DlgLnkPopResize : "Venytettävä",
-DlgLnkPopLocation : "Osoiterivi",
-DlgLnkPopMenu : "Valikkorivi",
-DlgLnkPopScroll : "Vierityspalkit",
-DlgLnkPopStatus : "Tilarivi",
-DlgLnkPopToolbar : "Vakiopainikkeet",
-DlgLnkPopFullScrn : "Täysi ikkuna (IE)",
-DlgLnkPopDependent : "Riippuva (Netscape)",
-DlgLnkPopWidth : "Leveys",
-DlgLnkPopHeight : "Korkeus",
-DlgLnkPopLeft : "Vasemmalta (px)",
-DlgLnkPopTop : "Ylhäältä (px)",
-
-DlnLnkMsgNoUrl : "Linkille on kirjoitettava URL",
-DlnLnkMsgNoEMail : "Kirjoita sähköpostiosoite",
-DlnLnkMsgNoAnchor : "Valitse ankkuri",
-DlnLnkMsgInvPopName : "Popup-ikkunan nimi pitää alkaa aakkosella ja ei saa sisältää välejä",
-
-// Color Dialog
-DlgColorTitle : "Valitse väri",
-DlgColorBtnClear : "Tyhjennä",
-DlgColorHighlight : "Kohdalla",
-DlgColorSelected : "Valittu",
-
-// Smiley Dialog
-DlgSmileyTitle : "Lisää hymiö",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Valitse erikoismerkki",
-
-// Table Dialog
-DlgTableTitle : "Taulun ominaisuudet",
-DlgTableRows : "Rivit",
-DlgTableColumns : "Sarakkeet",
-DlgTableBorder : "Rajan paksuus",
-DlgTableAlign : "Kohdistus",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Vasemmalle",
-DlgTableAlignCenter : "Keskelle",
-DlgTableAlignRight : "Oikealle",
-DlgTableWidth : "Leveys",
-DlgTableWidthPx : "pikseliä",
-DlgTableWidthPc : "prosenttia",
-DlgTableHeight : "Korkeus",
-DlgTableCellSpace : "Solujen väli",
-DlgTableCellPad : "Solujen sisennys",
-DlgTableCaption : "Otsikko",
-DlgTableSummary : "Yhteenveto",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Solun ominaisuudet",
-DlgCellWidth : "Leveys",
-DlgCellWidthPx : "pikseliä",
-DlgCellWidthPc : "prosenttia",
-DlgCellHeight : "Korkeus",
-DlgCellWordWrap : "Tekstikierrätys",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Kyllä",
-DlgCellWordWrapNo : "Ei",
-DlgCellHorAlign : "Vaakakohdistus",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Vasemmalle",
-DlgCellHorAlignCenter : "Keskelle",
-DlgCellHorAlignRight: "Oikealle",
-DlgCellVerAlign : "Pystykohdistus",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Ylös",
-DlgCellVerAlignMiddle : "Keskelle",
-DlgCellVerAlignBottom : "Alas",
-DlgCellVerAlignBaseline : "Tekstin alas",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Rivin jatkuvuus",
-DlgCellCollSpan : "Sarakkeen jatkuvuus",
-DlgCellBackColor : "Taustaväri",
-DlgCellBorderColor : "Rajan väri",
-DlgCellBtnSelect : "Valitse...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Etsi ja korvaa",
-
-// Find Dialog
-DlgFindTitle : "Etsi",
-DlgFindFindBtn : "Etsi",
-DlgFindNotFoundMsg : "Etsittyä tekstiä ei löytynyt.",
-
-// Replace Dialog
-DlgReplaceTitle : "Korvaa",
-DlgReplaceFindLbl : "Etsi mitä:",
-DlgReplaceReplaceLbl : "Korvaa tällä:",
-DlgReplaceCaseChk : "Sama kirjainkoko",
-DlgReplaceReplaceBtn : "Korvaa",
-DlgReplaceReplAllBtn : "Korvaa kaikki",
-DlgReplaceWordChk : "Koko sana",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Selaimesi turva-asetukset eivät salli editorin toteuttaa leikkaamista. Käytä näppäimistöä leikkaamiseen (Ctrl+X).",
-PasteErrorCopy : "Selaimesi turva-asetukset eivät salli editorin toteuttaa kopioimista. Käytä näppäimistöä kopioimiseen (Ctrl+C).",
-
-PasteAsText : "Liitä tekstinä",
-PasteFromWord : "Liitä Wordista",
-
-DlgPasteMsg2 : "Liitä painamalla (Ctrl+V ) ja painamalla OK .",
-DlgPasteSec : "Selaimesi turva-asetukset eivät salli editorin käyttää leikepöytää suoraan. Sinun pitää suorittaa liittäminen tässä ikkunassa.",
-DlgPasteIgnoreFont : "Jätä huomioimatta fonttimääritykset",
-DlgPasteRemoveStyles : "Poista tyylimääritykset",
-
-// Color Picker
-ColorAutomatic : "Automaattinen",
-ColorMoreColors : "Lisää värejä...",
-
-// Document Properties
-DocProps : "Dokumentin ominaisuudet",
-
-// Anchor Dialog
-DlgAnchorTitle : "Ankkurin ominaisuudet",
-DlgAnchorName : "Nimi",
-DlgAnchorErrorName : "Ankkurille on kirjoitettava nimi",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Ei sanakirjassa",
-DlgSpellChangeTo : "Vaihda",
-DlgSpellBtnIgnore : "Jätä huomioimatta",
-DlgSpellBtnIgnoreAll : "Jätä kaikki huomioimatta",
-DlgSpellBtnReplace : "Korvaa",
-DlgSpellBtnReplaceAll : "Korvaa kaikki",
-DlgSpellBtnUndo : "Kumoa",
-DlgSpellNoSuggestions : "Ei ehdotuksia",
-DlgSpellProgress : "Tarkistus käynnissä...",
-DlgSpellNoMispell : "Tarkistus valmis: Ei virheitä",
-DlgSpellNoChanges : "Tarkistus valmis: Yhtään sanaa ei muutettu",
-DlgSpellOneChange : "Tarkistus valmis: Yksi sana muutettiin",
-DlgSpellManyChanges : "Tarkistus valmis: %1 sanaa muutettiin",
-
-IeSpellDownload : "Oikeinkirjoituksen tarkistusta ei ole asennettu. Haluatko ladata sen nyt?",
-
-// Button Dialog
-DlgButtonText : "Teksti (arvo)",
-DlgButtonType : "Tyyppi",
-DlgButtonTypeBtn : "Painike",
-DlgButtonTypeSbm : "Lähetä",
-DlgButtonTypeRst : "Tyhjennä",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Nimi",
-DlgCheckboxValue : "Arvo",
-DlgCheckboxSelected : "Valittu",
-
-// Form Dialog
-DlgFormName : "Nimi",
-DlgFormAction : "Toiminto",
-DlgFormMethod : "Tapa",
-
-// Select Field Dialog
-DlgSelectName : "Nimi",
-DlgSelectValue : "Arvo",
-DlgSelectSize : "Koko",
-DlgSelectLines : "Rivit",
-DlgSelectChkMulti : "Salli usea valinta",
-DlgSelectOpAvail : "Ominaisuudet",
-DlgSelectOpText : "Teksti",
-DlgSelectOpValue : "Arvo",
-DlgSelectBtnAdd : "Lisää",
-DlgSelectBtnModify : "Muuta",
-DlgSelectBtnUp : "Ylös",
-DlgSelectBtnDown : "Alas",
-DlgSelectBtnSetValue : "Aseta valituksi",
-DlgSelectBtnDelete : "Poista",
-
-// Textarea Dialog
-DlgTextareaName : "Nimi",
-DlgTextareaCols : "Sarakkeita",
-DlgTextareaRows : "Rivejä",
-
-// Text Field Dialog
-DlgTextName : "Nimi",
-DlgTextValue : "Arvo",
-DlgTextCharWidth : "Leveys",
-DlgTextMaxChars : "Maksimi merkkimäärä",
-DlgTextType : "Tyyppi",
-DlgTextTypeText : "Teksti",
-DlgTextTypePass : "Salasana",
-
-// Hidden Field Dialog
-DlgHiddenName : "Nimi",
-DlgHiddenValue : "Arvo",
-
-// Bulleted List Dialog
-BulletedListProp : "Luettelon ominaisuudet",
-NumberedListProp : "Numeroinnin ominaisuudet",
-DlgLstStart : "Alku",
-DlgLstType : "Tyyppi",
-DlgLstTypeCircle : "Kehä",
-DlgLstTypeDisc : "Ympyrä",
-DlgLstTypeSquare : "Neliö",
-DlgLstTypeNumbers : "Numerot (1, 2, 3)",
-DlgLstTypeLCase : "Pienet kirjaimet (a, b, c)",
-DlgLstTypeUCase : "Isot kirjaimet (A, B, C)",
-DlgLstTypeSRoman : "Pienet roomalaiset numerot (i, ii, iii)",
-DlgLstTypeLRoman : "Isot roomalaiset numerot (Ii, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Yleiset",
-DlgDocBackTab : "Tausta",
-DlgDocColorsTab : "Värit ja marginaalit",
-DlgDocMetaTab : "Meta-tieto",
-
-DlgDocPageTitle : "Sivun nimi",
-DlgDocLangDir : "Kielen suunta",
-DlgDocLangDirLTR : "Vasemmalta oikealle (LTR)",
-DlgDocLangDirRTL : "Oikealta vasemmalle (RTL)",
-DlgDocLangCode : "Kielikoodi",
-DlgDocCharSet : "Merkistökoodaus",
-DlgDocCharSetCE : "Keskieurooppalainen",
-DlgDocCharSetCT : "Kiina, perinteinen (Big5)",
-DlgDocCharSetCR : "Kyrillinen",
-DlgDocCharSetGR : "Kreikka",
-DlgDocCharSetJP : "Japani",
-DlgDocCharSetKR : "Korealainen",
-DlgDocCharSetTR : "Turkkilainen",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Länsieurooppalainen",
-DlgDocCharSetOther : "Muu merkistökoodaus",
-
-DlgDocDocType : "Dokumentin tyyppi",
-DlgDocDocTypeOther : "Muu dokumentin tyyppi",
-DlgDocIncXHTML : "Lisää XHTML julistukset",
-DlgDocBgColor : "Taustaväri",
-DlgDocBgImage : "Taustakuva",
-DlgDocBgNoScroll : "Paikallaanpysyvä tausta",
-DlgDocCText : "Teksti",
-DlgDocCLink : "Linkki",
-DlgDocCVisited : "Vierailtu linkki",
-DlgDocCActive : "Aktiivinen linkki",
-DlgDocMargins : "Sivun marginaalit",
-DlgDocMaTop : "Ylä",
-DlgDocMaLeft : "Vasen",
-DlgDocMaRight : "Oikea",
-DlgDocMaBottom : "Ala",
-DlgDocMeIndex : "Hakusanat (pilkulla erotettuna)",
-DlgDocMeDescr : "Kuvaus",
-DlgDocMeAuthor : "Tekijä",
-DlgDocMeCopy : "Tekijänoikeudet",
-DlgDocPreview : "Esikatselu",
-
-// Templates Dialog
-Templates : "Pohjat",
-DlgTemplatesTitle : "Sisältöpohjat",
-DlgTemplatesSelMsg : "Valitse pohja editoriin (aiempi sisältö menetetään):",
-DlgTemplatesLoading : "Ladataan listaa pohjista. Hetkinen...",
-DlgTemplatesNoTpl : "(Ei määriteltyjä pohjia)",
-DlgTemplatesReplace : "Korvaa editorin koko sisältö",
-
-// About Dialog
-DlgAboutAboutTab : "Editorista",
-DlgAboutBrowserInfoTab : "Selaimen tiedot",
-DlgAboutLicenseTab : "Lisenssi",
-DlgAboutVersion : "versio",
-DlgAboutInfo : "Lisää tietoa osoitteesta",
-
-// Div Dialog
-DlgDivGeneralTab : "General", //MISSING
-DlgDivAdvancedTab : "Advanced", //MISSING
-DlgDivStyle : "Style", //MISSING
-DlgDivInlineStyle : "Inline Style" //MISSING
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/fo.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/fo.js
deleted file mode 100755
index 24e4c6f..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/fo.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Faroese language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Fjal amboðsbjálkan",
-ToolbarExpand : "Vís amboðsbjálkan",
-
-// Toolbar Items and Context Menu
-Save : "Goym",
-NewPage : "Nýggj síða",
-Preview : "Frumsýning",
-Cut : "Kvett",
-Copy : "Avrita",
-Paste : "Innrita",
-PasteText : "Innrita reinan tekst",
-PasteWord : "Innrita frá Word",
-Print : "Prenta",
-SelectAll : "Markera alt",
-RemoveFormat : "Strika sniðgeving",
-InsertLinkLbl : "Tilknýti",
-InsertLink : "Ger/broyt tilknýti",
-RemoveLink : "Strika tilknýti",
-VisitLink : "Opna tilknýti",
-Anchor : "Ger/broyt marknastein",
-AnchorDelete : "Strika marknastein",
-InsertImageLbl : "Myndir",
-InsertImage : "Set inn/broyt mynd",
-InsertFlashLbl : "Flash",
-InsertFlash : "Set inn/broyt Flash",
-InsertTableLbl : "Tabell",
-InsertTable : "Set inn/broyt tabell",
-InsertLineLbl : "Linja",
-InsertLine : "Ger vatnrætta linju",
-InsertSpecialCharLbl: "Sertekn",
-InsertSpecialChar : "Set inn sertekn",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Set inn Smiley",
-About : "Um FCKeditor",
-Bold : "Feit skrift",
-Italic : "Skráskrift",
-Underline : "Undirstrikað",
-StrikeThrough : "Yvirstrikað",
-Subscript : "Lækkað skrift",
-Superscript : "Hækkað skrift",
-LeftJustify : "Vinstrasett",
-CenterJustify : "Miðsett",
-RightJustify : "Høgrasett",
-BlockJustify : "Javnir tekstkantar",
-DecreaseIndent : "Minka reglubrotarinntriv",
-IncreaseIndent : "Økja reglubrotarinntriv",
-Blockquote : "Blockquote",
-CreateDiv : "Ger DIV øki",
-EditDiv : "Broyt DIV øki",
-DeleteDiv : "Strika DIV øki",
-Undo : "Angra",
-Redo : "Vend aftur",
-NumberedListLbl : "Talmerktur listi",
-NumberedList : "Ger/strika talmerktan lista",
-BulletedListLbl : "Punktmerktur listi",
-BulletedList : "Ger/strika punktmerktan lista",
-ShowTableBorders : "Vís tabellbordar",
-ShowDetails : "Vís í smálutum",
-Style : "Typografi",
-FontFormat : "Skriftsnið",
-Font : "Skrift",
-FontSize : "Skriftstødd",
-TextColor : "Tekstlitur",
-BGColor : "Bakgrundslitur",
-Source : "Kelda",
-Find : "Leita",
-Replace : "Yvirskriva",
-SpellCheck : "Kanna stavseting",
-UniversalKeyboard : "Knappaborð",
-PageBreakLbl : "Síðuskift",
-PageBreak : "Ger síðuskift",
-
-Form : "Formur",
-Checkbox : "Flugubein",
-RadioButton : "Radioknøttur",
-TextField : "Tekstteigur",
-Textarea : "Tekstumráði",
-HiddenField : "Fjaldur teigur",
-Button : "Knøttur",
-SelectionField : "Valskrá",
-ImageButton : "Myndaknøttur",
-
-FitWindow : "Set tekstviðgera til fulla stødd",
-ShowBlocks : "Vís blokkar",
-
-// Context Menu
-EditLink : "Broyt tilknýti",
-CellCM : "Meski",
-RowCM : "Rað",
-ColumnCM : "Kolonna",
-InsertRowAfter : "Set rað inn aftaná",
-InsertRowBefore : "Set rað inn áðrenn",
-DeleteRows : "Strika røðir",
-InsertColumnAfter : "Set kolonnu inn aftaná",
-InsertColumnBefore : "Set kolonnu inn áðrenn",
-DeleteColumns : "Strika kolonnur",
-InsertCellAfter : "Set meska inn aftaná",
-InsertCellBefore : "Set meska inn áðrenn",
-DeleteCells : "Strika meskar",
-MergeCells : "Flætta meskar",
-MergeRight : "Flætta meskar til høgru",
-MergeDown : "Flætta saman",
-HorizontalSplitCell : "Kloyv meska vatnrætt",
-VerticalSplitCell : "Kloyv meska loddrætt",
-TableDelete : "Strika tabell",
-CellProperties : "Meskueginleikar",
-TableProperties : "Tabelleginleikar",
-ImageProperties : "Myndaeginleikar",
-FlashProperties : "Flash eginleikar",
-
-AnchorProp : "Eginleikar fyri marknastein",
-ButtonProp : "Eginleikar fyri knøtt",
-CheckboxProp : "Eginleikar fyri flugubein",
-HiddenFieldProp : "Eginleikar fyri fjaldan teig",
-RadioButtonProp : "Eginleikar fyri radioknøtt",
-ImageButtonProp : "Eginleikar fyri myndaknøtt",
-TextFieldProp : "Eginleikar fyri tekstteig",
-SelectionFieldProp : "Eginleikar fyri valskrá",
-TextareaProp : "Eginleikar fyri tekstumráði",
-FormProp : "Eginleikar fyri Form",
-
-FontFormats : "Vanligt;Sniðgivið;Adressa;Yvirskrift 1;Yvirskrift 2;Yvirskrift 3;Yvirskrift 4;Yvirskrift 5;Yvirskrift 6",
-
-// Alerts and Messages
-ProcessingXHTML : "XHTML verður viðgjørt. Bíða við...",
-Done : "Liðugt",
-PasteWordConfirm : "Teksturin, royndur verður at seta inn, tykist at stava frá Word. Vilt tú reinsa tekstin, áðrenn hann verður settur inn?",
-NotCompatiblePaste : "Hetta er bert tøkt í Internet Explorer 5.5 og nýggjari. Vilt tú seta tekstin inn kortini - óreinsaðan?",
-UnknownToolbarItem : "Ókendur lutur í amboðsbjálkanum \"%1\"",
-UnknownCommand : "Ókend kommando \"%1\"",
-NotImplemented : "Hetta er ikki tøkt í hesi útgávuni",
-UnknownToolbarSet : "Amboðsbjálkin \"%1\" finst ikki",
-NoActiveX : "Trygdaruppsetingin í alnótskaganum kann sum er avmarka onkrar hentleikar í tekstviðgeranum. Tú mást loyva møguleikanum \"Run/Kør ActiveX controls and plug-ins\". Tú kanst uppliva feilir og ávaringar um tvørrandi hentleikar.",
-BrowseServerBlocked : "Ambætarakagin kundi ikki opnast. Tryggja tær, at allar pop-up forðingar eru óvirknar.",
-DialogBlocked : "Tað eyðnaðist ikki at opna samskiftisrútin. Tryggja tær, at allar pop-up forðingar eru óvirknar.",
-VisitLinkBlocked : "Tað eyðnaðist ikki at opna nýggjan rút. Tryggja tær, at allar pop-up forðingar eru óvirknar.",
-
-// Dialogs
-DlgBtnOK : "Góðkent",
-DlgBtnCancel : "Avlýst",
-DlgBtnClose : "Lat aftur",
-DlgBtnBrowseServer : "Ambætarakagi",
-DlgAdvancedTag : "Fjølbroytt",
-DlgOpOther : "",
-DlgInfoTab : "Upplýsingar",
-DlgAlertUrl : "Vinarliga veit ein URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Tekstkós",
-DlgGenLangDirLtr : "Frá vinstru til høgru (LTR)",
-DlgGenLangDirRtl : "Frá høgru til vinstru (RTL)",
-DlgGenLangCode : "Málkoda",
-DlgGenAccessKey : "Snarvegisknappur",
-DlgGenName : "Navn",
-DlgGenTabIndex : "Inntriv indeks",
-DlgGenLongDescr : "Víðkað URL frágreiðing",
-DlgGenClass : "Typografi klassar",
-DlgGenTitle : "Vegleiðandi heiti",
-DlgGenContType : "Vegleiðandi innihaldsslag",
-DlgGenLinkCharset : "Atknýtt teknsett",
-DlgGenStyle : "Typografi",
-
-// Image Dialog
-DlgImgTitle : "Myndaeginleikar",
-DlgImgInfoTab : "Myndaupplýsingar",
-DlgImgBtnUpload : "Send til ambætaran",
-DlgImgURL : "URL",
-DlgImgUpload : "Send",
-DlgImgAlt : "Alternativur tekstur",
-DlgImgWidth : "Breidd",
-DlgImgHeight : "Hædd",
-DlgImgLockRatio : "Læs lutfallið",
-DlgBtnResetSize : "Upprunastødd",
-DlgImgBorder : "Bordi",
-DlgImgHSpace : "Høgri breddi",
-DlgImgVSpace : "Vinstri breddi",
-DlgImgAlign : "Justering",
-DlgImgAlignLeft : "Vinstra",
-DlgImgAlignAbsBottom: "Abs botnur",
-DlgImgAlignAbsMiddle: "Abs miðja",
-DlgImgAlignBaseline : "Basislinja",
-DlgImgAlignBottom : "Botnur",
-DlgImgAlignMiddle : "Miðja",
-DlgImgAlignRight : "Høgra",
-DlgImgAlignTextTop : "Tekst toppur",
-DlgImgAlignTop : "Ovast",
-DlgImgPreview : "Frumsýning",
-DlgImgAlertUrl : "Rita slóðina til myndina",
-DlgImgLinkTab : "Tilknýti",
-
-// Flash Dialog
-DlgFlashTitle : "Flash eginleikar",
-DlgFlashChkPlay : "Avspælingin byrjar sjálv",
-DlgFlashChkLoop : "Endurspæl",
-DlgFlashChkMenu : "Ger Flash skrá virkna",
-DlgFlashScale : "Skalering",
-DlgFlashScaleAll : "Vís alt",
-DlgFlashScaleNoBorder : "Eingin bordi",
-DlgFlashScaleFit : "Neyv skalering",
-
-// Link Dialog
-DlgLnkWindowTitle : "Tilknýti",
-DlgLnkInfoTab : "Tilknýtis upplýsingar",
-DlgLnkTargetTab : "Mál",
-
-DlgLnkType : "Tilknýtisslag",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Tilknýti til marknastein í tekstinum",
-DlgLnkTypeEMail : "Teldupostur",
-DlgLnkProto : "Protokoll",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Vel ein marknastein",
-DlgLnkAnchorByName : "Eftir navni á marknasteini",
-DlgLnkAnchorById : "Eftir element Id",
-DlgLnkNoAnchors : "(Eingir marknasteinar eru í hesum dokumentið)",
-DlgLnkEMail : "Teldupost-adressa",
-DlgLnkEMailSubject : "Evni",
-DlgLnkEMailBody : "Breyðtekstur",
-DlgLnkUpload : "Send til ambætaran",
-DlgLnkBtnUpload : "Send til ambætaran",
-
-DlgLnkTarget : "Mál",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nýtt vindeyga (_blank)",
-DlgLnkTargetParent : "Upphavliga vindeygað (_parent)",
-DlgLnkTargetSelf : "Sama vindeygað (_self)",
-DlgLnkTargetTop : "Alt vindeygað (_top)",
-DlgLnkTargetFrameName : "Vís navn vindeygans",
-DlgLnkPopWinName : "Popup vindeygans navn",
-DlgLnkPopWinFeat : "Popup vindeygans víðkaðu eginleikar",
-DlgLnkPopResize : "Kann broyta stødd",
-DlgLnkPopLocation : "Adressulinja",
-DlgLnkPopMenu : "Skrábjálki",
-DlgLnkPopScroll : "Rullibjálki",
-DlgLnkPopStatus : "Støðufrágreiðingarbjálki",
-DlgLnkPopToolbar : "Amboðsbjálki",
-DlgLnkPopFullScrn : "Fullur skermur (IE)",
-DlgLnkPopDependent : "Bundið (Netscape)",
-DlgLnkPopWidth : "Breidd",
-DlgLnkPopHeight : "Hædd",
-DlgLnkPopLeft : "Frástøða frá vinstru",
-DlgLnkPopTop : "Frástøða frá íerva",
-
-DlnLnkMsgNoUrl : "Vinarliga skriva tilknýti (URL)",
-DlnLnkMsgNoEMail : "Vinarliga skriva teldupost-adressu",
-DlnLnkMsgNoAnchor : "Vinarliga vel marknastein",
-DlnLnkMsgInvPopName : "Popup navnið má byrja við bókstavi og má ikki hava millumrúm",
-
-// Color Dialog
-DlgColorTitle : "Vel lit",
-DlgColorBtnClear : "Strika alt",
-DlgColorHighlight : "Framhevja",
-DlgColorSelected : "Valt",
-
-// Smiley Dialog
-DlgSmileyTitle : "Vel Smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Vel sertekn",
-
-// Table Dialog
-DlgTableTitle : "Eginleikar fyri tabell",
-DlgTableRows : "Røðir",
-DlgTableColumns : "Kolonnur",
-DlgTableBorder : "Bordabreidd",
-DlgTableAlign : "Justering",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Vinstrasett",
-DlgTableAlignCenter : "Miðsett",
-DlgTableAlignRight : "Høgrasett",
-DlgTableWidth : "Breidd",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "prosent",
-DlgTableHeight : "Hædd",
-DlgTableCellSpace : "Fjarstøða millum meskar",
-DlgTableCellPad : "Meskubreddi",
-DlgTableCaption : "Tabellfrágreiðing",
-DlgTableSummary : "Samandráttur",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Mesku eginleikar",
-DlgCellWidth : "Breidd",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "prosent",
-DlgCellHeight : "Hædd",
-DlgCellWordWrap : "Orðkloyving",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Ja",
-DlgCellWordWrapNo : "Nei",
-DlgCellHorAlign : "Vatnrøtt justering",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Vinstrasett",
-DlgCellHorAlignCenter : "Miðsett",
-DlgCellHorAlignRight: "Høgrasett",
-DlgCellVerAlign : "Lodrøtt justering",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Ovast",
-DlgCellVerAlignMiddle : "Miðjan",
-DlgCellVerAlignBottom : "Niðast",
-DlgCellVerAlignBaseline : "Basislinja",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Røðir, meskin fevnir um",
-DlgCellCollSpan : "Kolonnur, meskin fevnir um",
-DlgCellBackColor : "Bakgrundslitur",
-DlgCellBorderColor : "Litur á borda",
-DlgCellBtnSelect : "Vel...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Finn og broyt",
-
-// Find Dialog
-DlgFindTitle : "Finn",
-DlgFindFindBtn : "Finn",
-DlgFindNotFoundMsg : "Leititeksturin varð ikki funnin",
-
-// Replace Dialog
-DlgReplaceTitle : "Yvirskriva",
-DlgReplaceFindLbl : "Finn:",
-DlgReplaceReplaceLbl : "Yvirskriva við:",
-DlgReplaceCaseChk : "Munur á stórum og smáðum bókstavum",
-DlgReplaceReplaceBtn : "Yvirskriva",
-DlgReplaceReplAllBtn : "Yvirskriva alt",
-DlgReplaceWordChk : "Bert heil orð",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Trygdaruppseting alnótskagans forðar tekstviðgeranum í at kvetta tekstin. Vinarliga nýt knappaborðið til at kvetta tekstin (CTRL+X).",
-PasteErrorCopy : "Trygdaruppseting alnótskagans forðar tekstviðgeranum í at avrita tekstin. Vinarliga nýt knappaborðið til at avrita tekstin (CTRL+C).",
-
-PasteAsText : "Innrita som reinan tekst",
-PasteFromWord : "Innrita fra Word",
-
-DlgPasteMsg2 : "Vinarliga koyr tekstin í hendan rútin við knappaborðinum (CTRL+V ) og klikk á Góðtak .",
-DlgPasteSec : "Trygdaruppseting alnótskagans forðar tekstviðgeranum í beinleiðis atgongd til avritingarminnið. Tygum mugu royna aftur í hesum rútinum.",
-DlgPasteIgnoreFont : "Forfjóna Font definitiónirnar",
-DlgPasteRemoveStyles : "Strika typografi definitiónir",
-
-// Color Picker
-ColorAutomatic : "Automatiskt",
-ColorMoreColors : "Fleiri litir...",
-
-// Document Properties
-DocProps : "Eginleikar fyri dokument",
-
-// Anchor Dialog
-DlgAnchorTitle : "Eginleikar fyri marknastein",
-DlgAnchorName : "Heiti marknasteinsins",
-DlgAnchorErrorName : "Vinarliga rita marknasteinsins heiti",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Finst ikki í orðabókini",
-DlgSpellChangeTo : "Broyt til",
-DlgSpellBtnIgnore : "Forfjóna",
-DlgSpellBtnIgnoreAll : "Forfjóna alt",
-DlgSpellBtnReplace : "Yvirskriva",
-DlgSpellBtnReplaceAll : "Yvirskriva alt",
-DlgSpellBtnUndo : "Angra",
-DlgSpellNoSuggestions : "- Einki uppskot -",
-DlgSpellProgress : "Rættstavarin arbeiðir...",
-DlgSpellNoMispell : "Rættstavarain liðugur: Eingin feilur funnin",
-DlgSpellNoChanges : "Rættstavarain liðugur: Einki orð varð broytt",
-DlgSpellOneChange : "Rættstavarain liðugur: Eitt orð er broytt",
-DlgSpellManyChanges : "Rættstavarain liðugur: %1 orð broytt",
-
-IeSpellDownload : "Rættstavarin er ikki tøkur í tekstviðgeranum. Vilt tú heinta hann nú?",
-
-// Button Dialog
-DlgButtonText : "Tekstur",
-DlgButtonType : "Slag",
-DlgButtonTypeBtn : "Knøttur",
-DlgButtonTypeSbm : "Send",
-DlgButtonTypeRst : "Nullstilla",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Navn",
-DlgCheckboxValue : "Virði",
-DlgCheckboxSelected : "Valt",
-
-// Form Dialog
-DlgFormName : "Navn",
-DlgFormAction : "Hending",
-DlgFormMethod : "Háttur",
-
-// Select Field Dialog
-DlgSelectName : "Navn",
-DlgSelectValue : "Virði",
-DlgSelectSize : "Stødd",
-DlgSelectLines : "Linjur",
-DlgSelectChkMulti : "Loyv fleiri valmøguleikum samstundis",
-DlgSelectOpAvail : "Tøkir møguleikar",
-DlgSelectOpText : "Tekstur",
-DlgSelectOpValue : "Virði",
-DlgSelectBtnAdd : "Legg afturat",
-DlgSelectBtnModify : "Broyt",
-DlgSelectBtnUp : "Upp",
-DlgSelectBtnDown : "Niður",
-DlgSelectBtnSetValue : "Set sum valt virði",
-DlgSelectBtnDelete : "Strika",
-
-// Textarea Dialog
-DlgTextareaName : "Navn",
-DlgTextareaCols : "kolonnur",
-DlgTextareaRows : "røðir",
-
-// Text Field Dialog
-DlgTextName : "Navn",
-DlgTextValue : "Virði",
-DlgTextCharWidth : "Breidd (sjónlig tekn)",
-DlgTextMaxChars : "Mest loyvdu tekn",
-DlgTextType : "Slag",
-DlgTextTypeText : "Tekstur",
-DlgTextTypePass : "Loyniorð",
-
-// Hidden Field Dialog
-DlgHiddenName : "Navn",
-DlgHiddenValue : "Virði",
-
-// Bulleted List Dialog
-BulletedListProp : "Eginleikar fyri punktmerktan lista",
-NumberedListProp : "Eginleikar fyri talmerktan lista",
-DlgLstStart : "Byrjan",
-DlgLstType : "Slag",
-DlgLstTypeCircle : "Sirkul",
-DlgLstTypeDisc : "Fyltur sirkul",
-DlgLstTypeSquare : "Fjórhyrningur",
-DlgLstTypeNumbers : "Talmerkt (1, 2, 3)",
-DlgLstTypeLCase : "Smáir bókstavir (a, b, c)",
-DlgLstTypeUCase : "Stórir bókstavir (A, B, C)",
-DlgLstTypeSRoman : "Smá rómaratøl (i, ii, iii)",
-DlgLstTypeLRoman : "Stór rómaratøl (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Generelt",
-DlgDocBackTab : "Bakgrund",
-DlgDocColorsTab : "Litir og breddar",
-DlgDocMetaTab : "META-upplýsingar",
-
-DlgDocPageTitle : "Síðuheiti",
-DlgDocLangDir : "Tekstkós",
-DlgDocLangDirLTR : "Frá vinstru móti høgru (LTR)",
-DlgDocLangDirRTL : "Frá høgru móti vinstru (RTL)",
-DlgDocLangCode : "Málkoda",
-DlgDocCharSet : "Teknsett koda",
-DlgDocCharSetCE : "Miðeuropa",
-DlgDocCharSetCT : "Kinesiskt traditionelt (Big5)",
-DlgDocCharSetCR : "Cyrilliskt",
-DlgDocCharSetGR : "Grikst",
-DlgDocCharSetJP : "Japanskt",
-DlgDocCharSetKR : "Koreanskt",
-DlgDocCharSetTR : "Turkiskt",
-DlgDocCharSetUN : "UNICODE (UTF-8)",
-DlgDocCharSetWE : "Vestureuropa",
-DlgDocCharSetOther : "Onnur teknsett koda",
-
-DlgDocDocType : "Dokumentslag yvirskrift",
-DlgDocDocTypeOther : "Annað dokumentslag yvirskrift",
-DlgDocIncXHTML : "Viðfest XHTML deklaratiónir",
-DlgDocBgColor : "Bakgrundslitur",
-DlgDocBgImage : "Leið til bakgrundsmynd (URL)",
-DlgDocBgNoScroll : "Læst bakgrund (rullar ikki)",
-DlgDocCText : "Tekstur",
-DlgDocCLink : "Tilknýti",
-DlgDocCVisited : "Vitjaði tilknýti",
-DlgDocCActive : "Virkin tilknýti",
-DlgDocMargins : "Síðubreddar",
-DlgDocMaTop : "Ovast",
-DlgDocMaLeft : "Vinstra",
-DlgDocMaRight : "Høgra",
-DlgDocMaBottom : "Niðast",
-DlgDocMeIndex : "Dokument index lyklaorð (sundurbýtt við komma)",
-DlgDocMeDescr : "Dokumentlýsing",
-DlgDocMeAuthor : "Høvundur",
-DlgDocMeCopy : "Upphavsrættindi",
-DlgDocPreview : "Frumsýning",
-
-// Templates Dialog
-Templates : "Skabelónir",
-DlgTemplatesTitle : "Innihaldsskabelónir",
-DlgTemplatesSelMsg : "Vinarliga vel ta skabelón, ið skal opnast í tekstviðgeranum (Hetta yvirskrivar núverandi innihald):",
-DlgTemplatesLoading : "Heinti yvirlit yvir skabelónir. Vinarliga bíða við...",
-DlgTemplatesNoTpl : "(Ongar skabelónir tøkar)",
-DlgTemplatesReplace : "Yvirskriva núverandi innihald",
-
-// About Dialog
-DlgAboutAboutTab : "Um",
-DlgAboutBrowserInfoTab : "Upplýsingar um alnótskagan",
-DlgAboutLicenseTab : "License",
-DlgAboutVersion : "version",
-DlgAboutInfo : "Fyri fleiri upplýsingar, far til",
-
-// Div Dialog
-DlgDivGeneralTab : "Generelt",
-DlgDivAdvancedTab : "Fjølbroytt",
-DlgDivStyle : "Typografi",
-DlgDivInlineStyle : "Inline typografi"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/fr-ca.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/fr-ca.js
deleted file mode 100755
index 9521c67..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/fr-ca.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * Canadian French language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Masquer Outils",
-ToolbarExpand : "Afficher Outils",
-
-// Toolbar Items and Context Menu
-Save : "Sauvegarder",
-NewPage : "Nouvelle page",
-Preview : "Previsualiser",
-Cut : "Couper",
-Copy : "Copier",
-Paste : "Coller",
-PasteText : "Coller en tant que texte",
-PasteWord : "Coller en tant que Word (formaté)",
-Print : "Imprimer",
-SelectAll : "Tout sélectionner",
-RemoveFormat : "Supprimer le formatage",
-InsertLinkLbl : "Lien",
-InsertLink : "Insérer/modifier le lien",
-RemoveLink : "Supprimer le lien",
-VisitLink : "Suivre le lien",
-Anchor : "Insérer/modifier l'ancre",
-AnchorDelete : "Supprimer l'ancre",
-InsertImageLbl : "Image",
-InsertImage : "Insérer/modifier l'image",
-InsertFlashLbl : "Animation Flash",
-InsertFlash : "Insérer/modifier l'animation Flash",
-InsertTableLbl : "Tableau",
-InsertTable : "Insérer/modifier le tableau",
-InsertLineLbl : "Séparateur",
-InsertLine : "Insérer un séparateur",
-InsertSpecialCharLbl: "Caractères spéciaux",
-InsertSpecialChar : "Insérer un caractère spécial",
-InsertSmileyLbl : "Emoticon",
-InsertSmiley : "Insérer un Emoticon",
-About : "A propos de FCKeditor",
-Bold : "Gras",
-Italic : "Italique",
-Underline : "Souligné",
-StrikeThrough : "Barrer",
-Subscript : "Indice",
-Superscript : "Exposant",
-LeftJustify : "Aligner à gauche",
-CenterJustify : "Centrer",
-RightJustify : "Aligner à Droite",
-BlockJustify : "Texte justifié",
-DecreaseIndent : "Diminuer le retrait",
-IncreaseIndent : "Augmenter le retrait",
-Blockquote : "Citation",
-CreateDiv : "Créer Balise Div",
-EditDiv : "Modifier Balise Div",
-DeleteDiv : "Supprimer Balise Div",
-Undo : "Annuler",
-Redo : "Refaire",
-NumberedListLbl : "Liste numérotée",
-NumberedList : "Insérer/supprimer la liste numérotée",
-BulletedListLbl : "Liste à puces",
-BulletedList : "Insérer/supprimer la liste à puces",
-ShowTableBorders : "Afficher les bordures du tableau",
-ShowDetails : "Afficher les caractères invisibles",
-Style : "Style",
-FontFormat : "Format",
-Font : "Police",
-FontSize : "Taille",
-TextColor : "Couleur de caractère",
-BGColor : "Couleur de fond",
-Source : "Source",
-Find : "Chercher",
-Replace : "Remplacer",
-SpellCheck : "Orthographe",
-UniversalKeyboard : "Clavier universel",
-PageBreakLbl : "Saut de page",
-PageBreak : "Insérer un saut de page",
-
-Form : "Formulaire",
-Checkbox : "Case à cocher",
-RadioButton : "Bouton radio",
-TextField : "Champ texte",
-Textarea : "Zone de texte",
-HiddenField : "Champ caché",
-Button : "Bouton",
-SelectionField : "Champ de sélection",
-ImageButton : "Bouton image",
-
-FitWindow : "Edition pleine page",
-ShowBlocks : "Afficher les blocs",
-
-// Context Menu
-EditLink : "Modifier le lien",
-CellCM : "Cellule",
-RowCM : "Ligne",
-ColumnCM : "Colonne",
-InsertRowAfter : "Insérer une ligne après",
-InsertRowBefore : "Insérer une ligne avant",
-DeleteRows : "Supprimer des lignes",
-InsertColumnAfter : "Insérer une colonne après",
-InsertColumnBefore : "Insérer une colonne avant",
-DeleteColumns : "Supprimer des colonnes",
-InsertCellAfter : "Insérer une cellule après",
-InsertCellBefore : "Insérer une cellule avant",
-DeleteCells : "Supprimer des cellules",
-MergeCells : "Fusionner les cellules",
-MergeRight : "Fusionner à droite",
-MergeDown : "Fusionner en bas",
-HorizontalSplitCell : "Scinder la cellule horizontalement",
-VerticalSplitCell : "Scinder la cellule verticalement",
-TableDelete : "Supprimer le tableau",
-CellProperties : "Propriétés de cellule",
-TableProperties : "Propriétés du tableau",
-ImageProperties : "Propriétés de l'image",
-FlashProperties : "Propriétés de l'animation Flash",
-
-AnchorProp : "Propriétés de l'ancre",
-ButtonProp : "Propriétés du bouton",
-CheckboxProp : "Propriétés de la case à cocher",
-HiddenFieldProp : "Propriétés du champ caché",
-RadioButtonProp : "Propriétés du bouton radio",
-ImageButtonProp : "Propriétés du bouton image",
-TextFieldProp : "Propriétés du champ texte",
-SelectionFieldProp : "Propriétés de la liste/du menu",
-TextareaProp : "Propriétés de la zone de texte",
-FormProp : "Propriétés du formulaire",
-
-FontFormats : "Normal;Formaté;Adresse;En-tête 1;En-tête 2;En-tête 3;En-tête 4;En-tête 5;En-tête 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Calcul XHTML. Veuillez patienter...",
-Done : "Terminé",
-PasteWordConfirm : "Le texte à coller semble provenir de Word. Désirez-vous le nettoyer avant de coller?",
-NotCompatiblePaste : "Cette commande nécessite Internet Explorer version 5.5 et plus. Souhaitez-vous coller sans nettoyage?",
-UnknownToolbarItem : "Élément de barre d'outil inconnu \"%1\"",
-UnknownCommand : "Nom de commande inconnu \"%1\"",
-NotImplemented : "Commande indisponible",
-UnknownToolbarSet : "La barre d'outils \"%1\" n'existe pas",
-NoActiveX : "Les paramètres de sécurité de votre navigateur peuvent limiter quelques fonctionnalités de l'éditeur. Veuillez activer l'option \"Exécuter les contrôles ActiveX et les plug-ins\". Il se peut que vous rencontriez des erreurs et remarquiez quelques limitations.",
-BrowseServerBlocked : "Le navigateur n'a pas pu être ouvert. Assurez-vous que les bloqueurs de popups soient désactivés.",
-DialogBlocked : "La fenêtre de dialogue n'a pas pu s'ouvrir. Assurez-vous que les bloqueurs de popups soient désactivés.",
-VisitLinkBlocked : "It was not possible to open a new window. Make sure all popup blockers are disabled.", //MISSING
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Annuler",
-DlgBtnClose : "Fermer",
-DlgBtnBrowseServer : "Parcourir le serveur",
-DlgAdvancedTag : "Avancée",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Veuillez saisir l'URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Sens d'écriture",
-DlgGenLangDirLtr : "De gauche à droite (LTR)",
-DlgGenLangDirRtl : "De droite à gauche (RTL)",
-DlgGenLangCode : "Code langue",
-DlgGenAccessKey : "Équivalent clavier",
-DlgGenName : "Nom",
-DlgGenTabIndex : "Ordre de tabulation",
-DlgGenLongDescr : "URL de description longue",
-DlgGenClass : "Classes de feuilles de style",
-DlgGenTitle : "Titre",
-DlgGenContType : "Type de contenu",
-DlgGenLinkCharset : "Encodage de caractère",
-DlgGenStyle : "Style",
-
-// Image Dialog
-DlgImgTitle : "Propriétés de l'image",
-DlgImgInfoTab : "Informations sur l'image",
-DlgImgBtnUpload : "Envoyer sur le serveur",
-DlgImgURL : "URL",
-DlgImgUpload : "Télécharger",
-DlgImgAlt : "Texte de remplacement",
-DlgImgWidth : "Largeur",
-DlgImgHeight : "Hauteur",
-DlgImgLockRatio : "Garder les proportions",
-DlgBtnResetSize : "Taille originale",
-DlgImgBorder : "Bordure",
-DlgImgHSpace : "Espacement horizontal",
-DlgImgVSpace : "Espacement vertical",
-DlgImgAlign : "Alignement",
-DlgImgAlignLeft : "Gauche",
-DlgImgAlignAbsBottom: "Abs Bas",
-DlgImgAlignAbsMiddle: "Abs Milieu",
-DlgImgAlignBaseline : "Bas du texte",
-DlgImgAlignBottom : "Bas",
-DlgImgAlignMiddle : "Milieu",
-DlgImgAlignRight : "Droite",
-DlgImgAlignTextTop : "Haut du texte",
-DlgImgAlignTop : "Haut",
-DlgImgPreview : "Prévisualisation",
-DlgImgAlertUrl : "Veuillez saisir l'URL de l'image",
-DlgImgLinkTab : "Lien",
-
-// Flash Dialog
-DlgFlashTitle : "Propriétés de l'animation Flash",
-DlgFlashChkPlay : "Lecture automatique",
-DlgFlashChkLoop : "Boucle",
-DlgFlashChkMenu : "Activer le menu Flash",
-DlgFlashScale : "Affichage",
-DlgFlashScaleAll : "Par défaut (tout montrer)",
-DlgFlashScaleNoBorder : "Sans bordure",
-DlgFlashScaleFit : "Ajuster aux dimensions",
-
-// Link Dialog
-DlgLnkWindowTitle : "Propriétés du lien",
-DlgLnkInfoTab : "Informations sur le lien",
-DlgLnkTargetTab : "Destination",
-
-DlgLnkType : "Type de lien",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Ancre dans cette page",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protocole",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Sélectionner une ancre",
-DlgLnkAnchorByName : "Par nom",
-DlgLnkAnchorById : "Par id",
-DlgLnkNoAnchors : "(Pas d'ancre disponible dans le document)",
-DlgLnkEMail : "Adresse E-Mail",
-DlgLnkEMailSubject : "Sujet du message",
-DlgLnkEMailBody : "Corps du message",
-DlgLnkUpload : "Télécharger",
-DlgLnkBtnUpload : "Envoyer sur le serveur",
-
-DlgLnkTarget : "Destination",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nouvelle fenêtre (_blank)",
-DlgLnkTargetParent : "Fenêtre mère (_parent)",
-DlgLnkTargetSelf : "Même fenêtre (_self)",
-DlgLnkTargetTop : "Fenêtre supérieure (_top)",
-DlgLnkTargetFrameName : "Nom du cadre de destination",
-DlgLnkPopWinName : "Nom de la fenêtre popup",
-DlgLnkPopWinFeat : "Caractéristiques de la fenêtre popup",
-DlgLnkPopResize : "Taille modifiable",
-DlgLnkPopLocation : "Barre d'adresses",
-DlgLnkPopMenu : "Barre de menu",
-DlgLnkPopScroll : "Barres de défilement",
-DlgLnkPopStatus : "Barre d'état",
-DlgLnkPopToolbar : "Barre d'outils",
-DlgLnkPopFullScrn : "Plein écran (IE)",
-DlgLnkPopDependent : "Dépendante (Netscape)",
-DlgLnkPopWidth : "Largeur",
-DlgLnkPopHeight : "Hauteur",
-DlgLnkPopLeft : "Position à partir de la gauche",
-DlgLnkPopTop : "Position à partir du haut",
-
-DlnLnkMsgNoUrl : "Veuillez saisir l'URL",
-DlnLnkMsgNoEMail : "Veuillez saisir l'adresse e-mail",
-DlnLnkMsgNoAnchor : "Veuillez sélectionner une ancre",
-DlnLnkMsgInvPopName : "Le nom de la fenêtre popup doit commencer par une lettre et ne doit pas contenir d'espace",
-
-// Color Dialog
-DlgColorTitle : "Sélectionner",
-DlgColorBtnClear : "Effacer",
-DlgColorHighlight : "Prévisualisation",
-DlgColorSelected : "Sélectionné",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insérer un Emoticon",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Insérer un caractère spécial",
-
-// Table Dialog
-DlgTableTitle : "Propriétés du tableau",
-DlgTableRows : "Lignes",
-DlgTableColumns : "Colonnes",
-DlgTableBorder : "Taille de la bordure",
-DlgTableAlign : "Alignement",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Gauche",
-DlgTableAlignCenter : "Centré",
-DlgTableAlignRight : "Droite",
-DlgTableWidth : "Largeur",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "pourcentage",
-DlgTableHeight : "Hauteur",
-DlgTableCellSpace : "Espacement",
-DlgTableCellPad : "Contour",
-DlgTableCaption : "Titre",
-DlgTableSummary : "Résumé",
-DlgTableHeaders : "Headers", //MISSING
-DlgTableHeadersNone : "None", //MISSING
-DlgTableHeadersColumn : "First column", //MISSING
-DlgTableHeadersRow : "First Row", //MISSING
-DlgTableHeadersBoth : "Both", //MISSING
-
-// Table Cell Dialog
-DlgCellTitle : "Propriétés de la cellule",
-DlgCellWidth : "Largeur",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "pourcentage",
-DlgCellHeight : "Hauteur",
-DlgCellWordWrap : "Retour à la ligne",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Oui",
-DlgCellWordWrapNo : "Non",
-DlgCellHorAlign : "Alignement horizontal",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Gauche",
-DlgCellHorAlignCenter : "Centré",
-DlgCellHorAlignRight: "Droite",
-DlgCellVerAlign : "Alignement vertical",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Haut",
-DlgCellVerAlignMiddle : "Milieu",
-DlgCellVerAlignBottom : "Bas",
-DlgCellVerAlignBaseline : "Bas du texte",
-DlgCellType : "Cell Type", //MISSING
-DlgCellTypeData : "Data", //MISSING
-DlgCellTypeHeader : "Header", //MISSING
-DlgCellRowSpan : "Lignes fusionnées",
-DlgCellCollSpan : "Colonnes fusionnées",
-DlgCellBackColor : "Couleur de fond",
-DlgCellBorderColor : "Couleur de bordure",
-DlgCellBtnSelect : "Sélectionner...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Chercher et Remplacer",
-
-// Find Dialog
-DlgFindTitle : "Chercher",
-DlgFindFindBtn : "Chercher",
-DlgFindNotFoundMsg : "Le texte indiqué est introuvable.",
-
-// Replace Dialog
-DlgReplaceTitle : "Remplacer",
-DlgReplaceFindLbl : "Rechercher:",
-DlgReplaceReplaceLbl : "Remplacer par:",
-DlgReplaceCaseChk : "Respecter la casse",
-DlgReplaceReplaceBtn : "Remplacer",
-DlgReplaceReplAllBtn : "Tout remplacer",
-DlgReplaceWordChk : "Mot entier",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Les paramètres de sécurité de votre navigateur empêchent l'éditeur de couper automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl+X).",
-PasteErrorCopy : "Les paramètres de sécurité de votre navigateur empêchent l'éditeur de copier automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl+C).",
-
-PasteAsText : "Coller comme texte",
-PasteFromWord : "Coller à partir de Word",
-
-DlgPasteMsg2 : "Veuillez coller dans la zone ci-dessous en utilisant le clavier (Ctrl+V ) et appuyer sur OK .",
-DlgPasteSec : "A cause des paramètres de sécurité de votre navigateur, l'éditeur ne peut accéder au presse-papier directement. Vous devez coller à nouveau le contenu dans cette fenêtre.",
-DlgPasteIgnoreFont : "Ignorer les polices de caractères",
-DlgPasteRemoveStyles : "Supprimer les styles",
-
-// Color Picker
-ColorAutomatic : "Automatique",
-ColorMoreColors : "Plus de couleurs...",
-
-// Document Properties
-DocProps : "Propriétés du document",
-
-// Anchor Dialog
-DlgAnchorTitle : "Propriétés de l'ancre",
-DlgAnchorName : "Nom de l'ancre",
-DlgAnchorErrorName : "Veuillez saisir le nom de l'ancre",
-
-// Speller Pages Dialog
-DlgSpellNotInDic : "Pas dans le dictionnaire",
-DlgSpellChangeTo : "Changer en",
-DlgSpellBtnIgnore : "Ignorer",
-DlgSpellBtnIgnoreAll : "Ignorer tout",
-DlgSpellBtnReplace : "Remplacer",
-DlgSpellBtnReplaceAll : "Remplacer tout",
-DlgSpellBtnUndo : "Annuler",
-DlgSpellNoSuggestions : "- Pas de suggestion -",
-DlgSpellProgress : "Vérification d'orthographe en cours...",
-DlgSpellNoMispell : "Vérification d'orthographe terminée: pas d'erreur trouvée",
-DlgSpellNoChanges : "Vérification d'orthographe terminée: Pas de modifications",
-DlgSpellOneChange : "Vérification d'orthographe terminée: Un mot modifié",
-DlgSpellManyChanges : "Vérification d'orthographe terminée: %1 mots modifiés",
-
-IeSpellDownload : "Le Correcteur d'orthographe n'est pas installé. Souhaitez-vous le télécharger maintenant?",
-
-// Button Dialog
-DlgButtonText : "Texte (Valeur)",
-DlgButtonType : "Type",
-DlgButtonTypeBtn : "Bouton",
-DlgButtonTypeSbm : "Soumettre",
-DlgButtonTypeRst : "Réinitialiser",
-
-// Checkbox and Radio Button Dialogs
-DlgCheckboxName : "Nom",
-DlgCheckboxValue : "Valeur",
-DlgCheckboxSelected : "Sélectionné",
-
-// Form Dialog
-DlgFormName : "Nom",
-DlgFormAction : "Action",
-DlgFormMethod : "Méthode",
-
-// Select Field Dialog
-DlgSelectName : "Nom",
-DlgSelectValue : "Valeur",
-DlgSelectSize : "Taille",
-DlgSelectLines : "lignes",
-DlgSelectChkMulti : "Sélection multiple",
-DlgSelectOpAvail : "Options disponibles",
-DlgSelectOpText : "Texte",
-DlgSelectOpValue : "Valeur",
-DlgSelectBtnAdd : "Ajouter",
-DlgSelectBtnModify : "Modifier",
-DlgSelectBtnUp : "Monter",
-DlgSelectBtnDown : "Descendre",
-DlgSelectBtnSetValue : "Valeur sélectionnée",
-DlgSelectBtnDelete : "Supprimer",
-
-// Textarea Dialog
-DlgTextareaName : "Nom",
-DlgTextareaCols : "Colonnes",
-DlgTextareaRows : "Lignes",
-
-// Text Field Dialog
-DlgTextName : "Nom",
-DlgTextValue : "Valeur",
-DlgTextCharWidth : "Largeur en caractères",
-DlgTextMaxChars : "Nombre maximum de caractères",
-DlgTextType : "Type",
-DlgTextTypeText : "Texte",
-DlgTextTypePass : "Mot de passe",
-
-// Hidden Field Dialog
-DlgHiddenName : "Nom",
-DlgHiddenValue : "Valeur",
-
-// Bulleted List Dialog
-BulletedListProp : "Propriétés de liste à puces",
-NumberedListProp : "Propriétés de liste numérotée",
-DlgLstStart : "Début",
-DlgLstType : "Type",
-DlgLstTypeCircle : "Cercle",
-DlgLstTypeDisc : "Disque",
-DlgLstTypeSquare : "Carré",
-DlgLstTypeNumbers : "Nombres (1, 2, 3)",
-DlgLstTypeLCase : "Lettres minuscules (a, b, c)",
-DlgLstTypeUCase : "Lettres majuscules (A, B, C)",
-DlgLstTypeSRoman : "Chiffres romains minuscules (i, ii, iii)",
-DlgLstTypeLRoman : "Chiffres romains majuscules (I, II, III)",
-
-// Document Properties Dialog
-DlgDocGeneralTab : "Général",
-DlgDocBackTab : "Fond",
-DlgDocColorsTab : "Couleurs et Marges",
-DlgDocMetaTab : "Méta-Données",
-
-DlgDocPageTitle : "Titre de la page",
-DlgDocLangDir : "Sens d'écriture",
-DlgDocLangDirLTR : "De la gauche vers la droite (LTR)",
-DlgDocLangDirRTL : "De la droite vers la gauche (RTL)",
-DlgDocLangCode : "Code langue",
-DlgDocCharSet : "Encodage de caractère",
-DlgDocCharSetCE : "Europe Centrale",
-DlgDocCharSetCT : "Chinois Traditionnel (Big5)",
-DlgDocCharSetCR : "Cyrillique",
-DlgDocCharSetGR : "Grecque",
-DlgDocCharSetJP : "Japonais",
-DlgDocCharSetKR : "Coréen",
-DlgDocCharSetTR : "Turcque",
-DlgDocCharSetUN : "Unicode (UTF-8)",
-DlgDocCharSetWE : "Occidental",
-DlgDocCharSetOther : "Autre encodage de caractère",
-
-DlgDocDocType : "Type de document",
-DlgDocDocTypeOther : "Autre type de document",
-DlgDocIncXHTML : "Inclure les déclarations XHTML",
-DlgDocBgColor : "Couleur de fond",
-DlgDocBgImage : "Image de fond",
-DlgDocBgNoScroll : "Image fixe sans défilement",
-DlgDocCText : "Texte",
-DlgDocCLink : "Lien",
-DlgDocCVisited : "Lien visité",
-DlgDocCActive : "Lien activé",
-DlgDocMargins : "Marges",
-DlgDocMaTop : "Haut",
-DlgDocMaLeft : "Gauche",
-DlgDocMaRight : "Droite",
-DlgDocMaBottom : "Bas",
-DlgDocMeIndex : "Mots-clés (séparés par des virgules)",
-DlgDocMeDescr : "Description",
-DlgDocMeAuthor : "Auteur",
-DlgDocMeCopy : "Copyright",
-DlgDocPreview : "Prévisualisation",
-
-// Templates Dialog
-Templates : "Modèles",
-DlgTemplatesTitle : "Modèles de contenu",
-DlgTemplatesSelMsg : "Sélectionner le modèle à ouvrir dans l'éditeur (le contenu actuel sera remplacé):",
-DlgTemplatesLoading : "Chargement de la liste des modèles. Veuillez patienter...",
-DlgTemplatesNoTpl : "(Aucun modèle disponible)",
-DlgTemplatesReplace : "Remplacer tout le contenu actuel",
-
-// About Dialog
-DlgAboutAboutTab : "Á propos de",
-DlgAboutBrowserInfoTab : "Navigateur",
-DlgAboutLicenseTab : "License",
-DlgAboutVersion : "Version",
-DlgAboutInfo : "Pour plus d'informations, visiter",
-
-// Div Dialog
-DlgDivGeneralTab : "Général",
-DlgDivAdvancedTab : "Avancé",
-DlgDivStyle : "Style",
-DlgDivInlineStyle : "Attribut Style"
-};
diff --git a/common/static/contrib/fckeditor-2.6.4/editor/lang/fr.js b/common/static/contrib/fckeditor-2.6.4/editor/lang/fr.js
deleted file mode 100755
index 935f8f7..0000000
--- a/common/static/contrib/fckeditor-2.6.4/editor/lang/fr.js
+++ /dev/null
@@ -1,534 +0,0 @@
-/*
- * 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 ==
- *
- * French language file.
- */
-
-var FCKLang =
-{
-// Language direction : "ltr" (left to right) or "rtl" (right to left).
-Dir : "ltr",
-
-ToolbarCollapse : "Masquer Outils",
-ToolbarExpand : "Afficher Outils",
-
-// Toolbar Items and Context Menu
-Save : "Enregistrer",
-NewPage : "Nouvelle page",
-Preview : "Prévisualisation",
-Cut : "Couper",
-Copy : "Copier",
-Paste : "Coller",
-PasteText : "Coller comme texte",
-PasteWord : "Coller de Word",
-Print : "Imprimer",
-SelectAll : "Tout sélectionner",
-RemoveFormat : "Supprimer le format",
-InsertLinkLbl : "Lien",
-InsertLink : "Insérer/modifier le lien",
-RemoveLink : "Supprimer le lien",
-VisitLink : "Suivre le lien",
-Anchor : "Insérer/modifier l'ancre",
-AnchorDelete : "Supprimer l'ancre",
-InsertImageLbl : "Image",
-InsertImage : "Insérer/modifier l'image",
-InsertFlashLbl : "Animation Flash",
-InsertFlash : "Insérer/modifier l'animation Flash",
-InsertTableLbl : "Tableau",
-InsertTable : "Insérer/modifier le tableau",
-InsertLineLbl : "Séparateur",
-InsertLine : "Insérer un séparateur",
-InsertSpecialCharLbl: "Caractères spéciaux",
-InsertSpecialChar : "Insérer un caractère spécial",
-InsertSmileyLbl : "Smiley",
-InsertSmiley : "Insérer un Smiley",
-About : "A propos de FCKeditor",
-Bold : "Gras",
-Italic : "Italique",
-Underline : "Souligné",
-StrikeThrough : "Barré",
-Subscript : "Indice",
-Superscript : "Exposant",
-LeftJustify : "Aligné à gauche",
-CenterJustify : "Centré",
-RightJustify : "Aligné à Droite",
-BlockJustify : "Texte justifié",
-DecreaseIndent : "Diminuer le retrait",
-IncreaseIndent : "Augmenter le retrait",
-Blockquote : "Citation",
-CreateDiv : "Créer Balise Div",
-EditDiv : "Modifier Balise Div",
-DeleteDiv : "Supprimer Balise Div",
-Undo : "Annuler",
-Redo : "Refaire",
-NumberedListLbl : "Liste numérotée",
-NumberedList : "Insérer/supprimer la liste numérotée",
-BulletedListLbl : "Liste à puces",
-BulletedList : "Insérer/supprimer la liste à puces",
-ShowTableBorders : "Afficher les bordures du tableau",
-ShowDetails : "Afficher les caractères invisibles",
-Style : "Style",
-FontFormat : "Format",
-Font : "Police",
-FontSize : "Taille",
-TextColor : "Couleur de caractère",
-BGColor : "Couleur de fond",
-Source : "Source",
-Find : "Chercher",
-Replace : "Remplacer",
-SpellCheck : "Orthographe",
-UniversalKeyboard : "Clavier universel",
-PageBreakLbl : "Saut de page",
-PageBreak : "Insérer un saut de page",
-
-Form : "Formulaire",
-Checkbox : "Case à cocher",
-RadioButton : "Bouton radio",
-TextField : "Champ texte",
-Textarea : "Zone de texte",
-HiddenField : "Champ caché",
-Button : "Bouton",
-SelectionField : "Liste/menu",
-ImageButton : "Bouton image",
-
-FitWindow : "Edition pleine page",
-ShowBlocks : "Afficher les blocs",
-
-// Context Menu
-EditLink : "Modifier le lien",
-CellCM : "Cellule",
-RowCM : "Ligne",
-ColumnCM : "Colonne",
-InsertRowAfter : "Insérer une ligne après",
-InsertRowBefore : "Insérer une ligne avant",
-DeleteRows : "Supprimer des lignes",
-InsertColumnAfter : "Insérer une colonne après",
-InsertColumnBefore : "Insérer une colonne avant",
-DeleteColumns : "Supprimer des colonnes",
-InsertCellAfter : "Insérer une cellule après",
-InsertCellBefore : "Insérer une cellule avant",
-DeleteCells : "Supprimer des cellules",
-MergeCells : "Fusionner les cellules",
-MergeRight : "Fusionner à droite",
-MergeDown : "Fusionner en bas",
-HorizontalSplitCell : "Scinder la cellule horizontalement",
-VerticalSplitCell : "Scinder la cellule verticalement",
-TableDelete : "Supprimer le tableau",
-CellProperties : "Propriétés de cellule",
-TableProperties : "Propriétés du tableau",
-ImageProperties : "Propriétés de l'image",
-FlashProperties : "Propriétés de l'animation Flash",
-
-AnchorProp : "Propriétés de l'ancre",
-ButtonProp : "Propriétés du bouton",
-CheckboxProp : "Propriétés de la case à cocher",
-HiddenFieldProp : "Propriétés du champ caché",
-RadioButtonProp : "Propriétés du bouton radio",
-ImageButtonProp : "Propriétés du bouton image",
-TextFieldProp : "Propriétés du champ texte",
-SelectionFieldProp : "Propriétés de la liste/du menu",
-TextareaProp : "Propriétés de la zone de texte",
-FormProp : "Propriétés du formulaire",
-
-FontFormats : "Normal;Formaté;Adresse;En-tête 1;En-tête 2;En-tête 3;En-tête 4;En-tête 5;En-tête 6;Normal (DIV)",
-
-// Alerts and Messages
-ProcessingXHTML : "Calcul XHTML. Veuillez patienter...",
-Done : "Terminé",
-PasteWordConfirm : "Le texte à coller semble provenir de Word. Désirez-vous le nettoyer avant de coller?",
-NotCompatiblePaste : "Cette commande nécessite Internet Explorer version 5.5 minimum. Souhaitez-vous coller sans nettoyage?",
-UnknownToolbarItem : "Elément de barre d'outil inconnu \"%1\"",
-UnknownCommand : "Nom de commande inconnu \"%1\"",
-NotImplemented : "Commande non encore écrite",
-UnknownToolbarSet : "La barre d'outils \"%1\" n'existe pas",
-NoActiveX : "Les paramètres de sécurité de votre navigateur peuvent limiter quelques fonctionnalités de l'éditeur. Veuillez activer l'option \"Exécuter les contrôles ActiveX et les plug-ins\". Il se peut que vous rencontriez des erreurs et remarquiez quelques limitations.",
-BrowseServerBlocked : "Le navigateur n'a pas pu être ouvert. Assurez-vous que les bloqueurs de popups soient désactivés.",
-DialogBlocked : "La fenêtre de dialogue n'a pas pu s'ouvrir. Assurez-vous que les bloqueurs de popups soient désactivés.",
-VisitLinkBlocked : "Impossible d'ouvrir une nouvelle fenêtre. Assurez-vous que les bloqueurs de popups soient désactivés.",
-
-// Dialogs
-DlgBtnOK : "OK",
-DlgBtnCancel : "Annuler",
-DlgBtnClose : "Fermer",
-DlgBtnBrowseServer : "Parcourir le serveur",
-DlgAdvancedTag : "Avancé",
-DlgOpOther : "",
-DlgInfoTab : "Info",
-DlgAlertUrl : "Veuillez saisir l'URL",
-
-// General Dialogs Labels
-DlgGenNotSet : "",
-DlgGenId : "Id",
-DlgGenLangDir : "Sens d'écriture",
-DlgGenLangDirLtr : "De gauche à droite (LTR)",
-DlgGenLangDirRtl : "De droite à gauche (RTL)",
-DlgGenLangCode : "Code langue",
-DlgGenAccessKey : "Equivalent clavier",
-DlgGenName : "Nom",
-DlgGenTabIndex : "Ordre de tabulation",
-DlgGenLongDescr : "URL de description longue",
-DlgGenClass : "Classes de feuilles de style",
-DlgGenTitle : "Titre",
-DlgGenContType : "Type de contenu",
-DlgGenLinkCharset : "Encodage de caractère",
-DlgGenStyle : "Style",
-
-// Image Dialog
-DlgImgTitle : "Propriétés de l'image",
-DlgImgInfoTab : "Informations sur l'image",
-DlgImgBtnUpload : "Envoyer sur le serveur",
-DlgImgURL : "URL",
-DlgImgUpload : "Télécharger",
-DlgImgAlt : "Texte de remplacement",
-DlgImgWidth : "Largeur",
-DlgImgHeight : "Hauteur",
-DlgImgLockRatio : "Garder les proportions",
-DlgBtnResetSize : "Taille originale",
-DlgImgBorder : "Bordure",
-DlgImgHSpace : "Espacement horizontal",
-DlgImgVSpace : "Espacement vertical",
-DlgImgAlign : "Alignement",
-DlgImgAlignLeft : "Gauche",
-DlgImgAlignAbsBottom: "Abs Bas",
-DlgImgAlignAbsMiddle: "Abs Milieu",
-DlgImgAlignBaseline : "Bas du texte",
-DlgImgAlignBottom : "Bas",
-DlgImgAlignMiddle : "Milieu",
-DlgImgAlignRight : "Droite",
-DlgImgAlignTextTop : "Haut du texte",
-DlgImgAlignTop : "Haut",
-DlgImgPreview : "Prévisualisation",
-DlgImgAlertUrl : "Veuillez saisir l'URL de l'image",
-DlgImgLinkTab : "Lien",
-
-// Flash Dialog
-DlgFlashTitle : "Propriétés de l'animation Flash",
-DlgFlashChkPlay : "Lecture automatique",
-DlgFlashChkLoop : "Boucle",
-DlgFlashChkMenu : "Activer le menu Flash",
-DlgFlashScale : "Affichage",
-DlgFlashScaleAll : "Par défaut (tout montrer)",
-DlgFlashScaleNoBorder : "Sans bordure",
-DlgFlashScaleFit : "Ajuster aux dimensions",
-
-// Link Dialog
-DlgLnkWindowTitle : "Propriétés du lien",
-DlgLnkInfoTab : "Informations sur le lien",
-DlgLnkTargetTab : "Destination",
-
-DlgLnkType : "Type de lien",
-DlgLnkTypeURL : "URL",
-DlgLnkTypeAnchor : "Ancre dans cette page",
-DlgLnkTypeEMail : "E-Mail",
-DlgLnkProto : "Protocole",
-DlgLnkProtoOther : "",
-DlgLnkURL : "URL",
-DlgLnkAnchorSel : "Sélectionner une ancre",
-DlgLnkAnchorByName : "Par nom",
-DlgLnkAnchorById : "Par id",
-DlgLnkNoAnchors : "(Pas d'ancre disponible dans le document)",
-DlgLnkEMail : "Adresse E-Mail",
-DlgLnkEMailSubject : "Sujet du message",
-DlgLnkEMailBody : "Corps du message",
-DlgLnkUpload : "Télécharger",
-DlgLnkBtnUpload : "Envoyer sur le serveur",
-
-DlgLnkTarget : "Destination",
-DlgLnkTargetFrame : "",
-DlgLnkTargetPopup : "",
-DlgLnkTargetBlank : "Nouvelle fenêtre (_blank)",
-DlgLnkTargetParent : "Fenêtre mère (_parent)",
-DlgLnkTargetSelf : "Même fenêtre (_self)",
-DlgLnkTargetTop : "Fenêtre supérieure (_top)",
-DlgLnkTargetFrameName : "Nom du cadre de destination",
-DlgLnkPopWinName : "Nom de la fenêtre popup",
-DlgLnkPopWinFeat : "Caractéristiques de la fenêtre popup",
-DlgLnkPopResize : "Taille modifiable",
-DlgLnkPopLocation : "Barre d'adresses",
-DlgLnkPopMenu : "Barre de menu",
-DlgLnkPopScroll : "Barres de défilement",
-DlgLnkPopStatus : "Barre d'état",
-DlgLnkPopToolbar : "Barre d'outils",
-DlgLnkPopFullScrn : "Plein écran (IE)",
-DlgLnkPopDependent : "Dépendante (Netscape)",
-DlgLnkPopWidth : "Largeur",
-DlgLnkPopHeight : "Hauteur",
-DlgLnkPopLeft : "Position à partir de la gauche",
-DlgLnkPopTop : "Position à partir du haut",
-
-DlnLnkMsgNoUrl : "Veuillez saisir l'URL",
-DlnLnkMsgNoEMail : "Veuillez saisir l'adresse e-mail",
-DlnLnkMsgNoAnchor : "Veuillez sélectionner une ancre",
-DlnLnkMsgInvPopName : "Le nom de la fenêtre popup doit commencer par une lettre et ne doit pas contenir d'espace",
-
-// Color Dialog
-DlgColorTitle : "Sélectionner",
-DlgColorBtnClear : "Effacer",
-DlgColorHighlight : "Prévisualisation",
-DlgColorSelected : "Sélectionné",
-
-// Smiley Dialog
-DlgSmileyTitle : "Insérer un Smiley",
-
-// Special Character Dialog
-DlgSpecialCharTitle : "Insérer un caractère spécial",
-
-// Table Dialog
-DlgTableTitle : "Propriétés du tableau",
-DlgTableRows : "Lignes",
-DlgTableColumns : "Colonnes",
-DlgTableBorder : "Bordure",
-DlgTableAlign : "Alignement",
-DlgTableAlignNotSet : "",
-DlgTableAlignLeft : "Gauche",
-DlgTableAlignCenter : "Centré",
-DlgTableAlignRight : "Droite",
-DlgTableWidth : "Largeur",
-DlgTableWidthPx : "pixels",
-DlgTableWidthPc : "pourcentage",
-DlgTableHeight : "Hauteur",
-DlgTableCellSpace : "Espacement",
-DlgTableCellPad : "Contour",
-DlgTableCaption : "Titre",
-DlgTableSummary : "Résumé",
-DlgTableHeaders : "Entêtes",
-DlgTableHeadersNone : "Sans",
-DlgTableHeadersColumn : "Première colonne",
-DlgTableHeadersRow : "Première Ligne",
-DlgTableHeadersBoth : "Les 2",
-
-// Table Cell Dialog
-DlgCellTitle : "Propriétés de la cellule",
-DlgCellWidth : "Largeur",
-DlgCellWidthPx : "pixels",
-DlgCellWidthPc : "pourcentage",
-DlgCellHeight : "Hauteur",
-DlgCellWordWrap : "Retour à la ligne",
-DlgCellWordWrapNotSet : "",
-DlgCellWordWrapYes : "Oui",
-DlgCellWordWrapNo : "Non",
-DlgCellHorAlign : "Alignement horizontal",
-DlgCellHorAlignNotSet : "",
-DlgCellHorAlignLeft : "Gauche",
-DlgCellHorAlignCenter : "Centré",
-DlgCellHorAlignRight: "Droite",
-DlgCellVerAlign : "Alignement vertical",
-DlgCellVerAlignNotSet : "",
-DlgCellVerAlignTop : "Haut",
-DlgCellVerAlignMiddle : "Milieu",
-DlgCellVerAlignBottom : "Bas",
-DlgCellVerAlignBaseline : "Bas du texte",
-DlgCellType : "Type de Cellule",
-DlgCellTypeData : "Données",
-DlgCellTypeHeader : "Entête",
-DlgCellRowSpan : "Lignes fusionnées",
-DlgCellCollSpan : "Colonnes fusionnées",
-DlgCellBackColor : "Fond",
-DlgCellBorderColor : "Bordure",
-DlgCellBtnSelect : "Choisir...",
-
-// Find and Replace Dialog
-DlgFindAndReplaceTitle : "Chercher et Remplacer",
-
-// Find Dialog
-DlgFindTitle : "Chercher",
-DlgFindFindBtn : "Chercher",
-DlgFindNotFoundMsg : "Le texte indiqué est introuvable.",
-
-// Replace Dialog
-DlgReplaceTitle : "Remplacer",
-DlgReplaceFindLbl : "Rechercher:",
-DlgReplaceReplaceLbl : "Remplacer par:",
-DlgReplaceCaseChk : "Respecter la casse",
-DlgReplaceReplaceBtn : "Remplacer",
-DlgReplaceReplAllBtn : "Tout remplacer",
-DlgReplaceWordChk : "Mot entier",
-
-// Paste Operations / Dialog
-PasteErrorCut : "Les paramètres de sécurité de votre navigateur empêchent l'éditeur de couper automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl+X).",
-PasteErrorCopy : "Les paramètres de sécurité de votre navigateur empêchent l'éditeur de copier automatiquement vos données. Veuillez utiliser les équivalents claviers (Ctrl+C).",
-
-PasteAsText : "Coller comme texte",
-PasteFromWord : "Coller à partir de Word",
-
-DlgPasteMsg2 : "Veuillez coller dans la zone ci-dessous en utilisant le clavier (