upgrade fckeditor to ckeditor, for IE10 compatibility, RT#22014
[freeside.git] / httemplate / elements / fckeditor / editor / dialog / fck_div.html
diff --git a/httemplate/elements/fckeditor/editor/dialog/fck_div.html b/httemplate/elements/fckeditor/editor/dialog/fck_div.html
deleted file mode 100644 (file)
index 524c66a..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >\r
-<!--\r
- * FCKeditor - The text editor for Internet - http://www.fckeditor.net\r
- * Copyright (C) 2003-2010 Frederico Caldeira Knabben\r
- *\r
- * == BEGIN LICENSE ==\r
- *\r
- * Licensed under the terms of any of the following licenses at your\r
- * choice:\r
- *\r
- *  - GNU General Public License Version 2 or later (the "GPL")\r
- *    http://www.gnu.org/licenses/gpl.html\r
- *\r
- *  - GNU Lesser General Public License Version 2.1 or later (the "LGPL")\r
- *    http://www.gnu.org/licenses/lgpl.html\r
- *\r
- *  - Mozilla Public License Version 1.1 or later (the "MPL")\r
- *    http://www.mozilla.org/MPL/MPL-1.1.html\r
- *\r
- * == END LICENSE ==\r
- *\r
- * Form dialog window.\r
--->\r
-<html xmlns="http://www.w3.org/1999/xhtml">\r
-<head>\r
-       <title></title>\r
-       <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />\r
-       <meta content="noindex, nofollow" name="robots" />\r
-       <script src="common/fck_dialog_common.js" type="text/javascript"></script>\r
-       <script type="text/javascript">\r
-var dialog     = window.parent ;\r
-var oEditor = dialog.InnerDialogLoaded() ;\r
-var FCK = oEditor.FCK ;\r
-var FCKLang = oEditor.FCKLang ;\r
-var FCKBrowserInfo = oEditor.FCKBrowserInfo ;\r
-var FCKStyles = oEditor.FCKStyles ;\r
-var FCKElementPath = oEditor.FCKElementPath ;\r
-var FCKDomRange = oEditor.FCKDomRange ;\r
-var FCKDomTools = oEditor.FCKDomTools ;\r
-var FCKDomRangeIterator = oEditor.FCKDomRangeIterator ;\r
-var FCKListsLib = oEditor.FCKListsLib ;\r
-var AlwaysCreate = dialog.Args().CustomValue ;\r
-\r
-String.prototype.IEquals = function()\r
-{\r
-       var thisUpper = this.toUpperCase() ;\r
-\r
-       var aArgs = arguments ;\r
-\r
-       // The arguments could also be a single array.\r
-       if ( aArgs.length == 1 && aArgs[0].pop )\r
-               aArgs = aArgs[0] ;\r
-\r
-       for ( var i = 0 ; i < aArgs.length ; i++ )\r
-       {\r
-               if ( thisUpper == aArgs[i].toUpperCase() )\r
-                       return true ;\r
-       }\r
-       return false ;\r
-}\r
-\r
-var CurrentContainers = [] ;\r
-if ( !AlwaysCreate )\r
-{\r
-       dialog.Selection.EnsureSelection() ;\r
-       CurrentContainers = FCKDomTools.GetSelectedDivContainers() ;\r
-}\r
-\r
-// Add some tabs\r
-dialog.AddTab( 'General', FCKLang.DlgDivGeneralTab );\r
-dialog.AddTab( 'Advanced', FCKLang.DlgDivAdvancedTab ) ;\r
-\r
-function AddStyleOption( styleName )\r
-{\r
-       var el = GetE( 'selStyle' ) ;\r
-       var opt = document.createElement( 'option' ) ;\r
-       opt.text = opt.value = styleName ;\r
-\r
-       if ( FCKBrowserInfo.IsIE )\r
-               el.add( opt ) ;\r
-       else\r
-               el.add( opt, null ) ;\r
-}\r
-\r
-function OnDialogTabChange( tabCode )\r
-{\r
-       ShowE( 'divGeneral', tabCode == 'General' ) ;\r
-       ShowE( 'divAdvanced', tabCode == 'Advanced' ) ;\r
-       dialog.SetAutoSize( true ) ;\r
-}\r
-\r
-function GetNearestAncestorDirection( node )\r
-{\r
-       var dir = 'ltr' ;       // HTML default.\r
-       while ( ( node = node.parentNode ) )\r
-       {\r
-               if ( node.dir )\r
-                       dir = node.dir ;\r
-       }\r
-       return dir ;\r
-}\r
-\r
-window.onload = function()\r
-{\r
-       // First of all, translate the dialog box texts\r
-       oEditor.FCKLanguageManager.TranslatePage(document) ;\r
-\r
-       dialog.SetOkButton( true ) ;\r
-       dialog.SetAutoSize( true ) ;\r
-\r
-       // Popuplate the style menu\r
-       var styles = FCKStyles.GetStyles() ;\r
-       var selectableStyles = {} ;\r
-       for ( var i in styles )\r
-       {\r
-               if ( ! /^_FCK_/.test( i ) && styles[i].Element == 'div' )\r
-                       selectableStyles[i] = styles[i] ;\r
-       }\r
-       if ( CurrentContainers.length <= 1 )\r
-       {\r
-               var target = CurrentContainers[0] ;\r
-               var match = null ;\r
-               for ( var i in selectableStyles )\r
-               {\r
-                       if ( target && styles[i].CheckElementRemovable( target, true ) )\r
-                               match = i ;\r
-               }\r
-               if ( !match )\r
-                       AddStyleOption( "" ) ;\r
-               for ( var i in selectableStyles )\r
-                       AddStyleOption( i ) ;\r
-               if ( match )\r
-                       GetE( 'selStyle' ).value = match ;\r
-\r
-               // Set the value for other inputs\r
-               if ( target )\r
-               {\r
-                       GetE( 'txtClass' ).value = target.className ;\r
-                       GetE( 'txtId' ).value = target.id ;\r
-                       GetE( 'txtLang' ).value = target.lang ;\r
-                       GetE( 'txtInlineStyle').value = target.style.cssText ;\r
-                       GetE( 'txtTitle' ).value = target.title ;\r
-                       GetE( 'selLangDir').value = target.dir || GetNearestAncestorDirection( target ) ;\r
-               }\r
-       }\r
-       else\r
-       {\r
-               GetE( 'txtId' ).disabled = true ;\r
-               AddStyleOption( "" ) ;\r
-               for ( var i in selectableStyles )\r
-                       AddStyleOption( i ) ;\r
-       }\r
-}\r
-\r
-function CreateDiv()\r
-{\r
-       var newBlocks = [] ;\r
-       var range = new FCKDomRange( FCK.EditorWindow ) ;\r
-       range.MoveToSelection() ;\r
-\r
-       var bookmark = range.CreateBookmark() ;\r
-\r
-       // Kludge for #1592: if the bookmark nodes are in the beginning of\r
-       // $tagName, then move them to the nearest block element in the\r
-       // $tagName.\r
-       if ( FCKBrowserInfo.IsIE )\r
-       {\r
-               var bStart      = range.GetBookmarkNode( bookmark, true ) ;\r
-               var bEnd        = range.GetBookmarkNode( bookmark, false ) ;\r
-\r
-               var cursor ;\r
-\r
-               if ( bStart\r
-                               && bStart.parentNode.nodeName.IEquals( 'div' )\r
-                               && !bStart.previousSibling )\r
-               {\r
-                       cursor = bStart ;\r
-                       while ( ( cursor = cursor.nextSibling ) )\r
-                       {\r
-                               if ( FCKListsLib.BlockElements[ cursor.nodeName.toLowerCase() ] )\r
-                                       FCKDomTools.MoveNode( bStart, cursor, true ) ;\r
-                       }\r
-               }\r
-\r
-               if ( bEnd\r
-                               && bEnd.parentNode.nodeName.IEquals( 'div' )\r
-                               && !bEnd.previousSibling )\r
-               {\r
-                       cursor = bEnd ;\r
-                       while ( ( cursor = cursor.nextSibling ) )\r
-                       {\r
-                               if ( FCKListsLib.BlockElements[ cursor.nodeName.toLowerCase() ] )\r
-                               {\r
-                                       if ( cursor.firstChild == bStart )\r
-                                               FCKDomTools.InsertAfterNode( bStart, bEnd ) ;\r
-                                       else\r
-                                               FCKDomTools.MoveNode( bEnd, cursor, true ) ;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-\r
-       var iterator = new FCKDomRangeIterator( range ) ;\r
-       var block ;\r
-\r
-       var paragraphs = [] ;\r
-       while ( ( block = iterator.GetNextParagraph() ) )\r
-               paragraphs.push( block ) ;\r
-\r
-       // Make sure all paragraphs have the same parent.\r
-       var commonParent = paragraphs[0].parentNode ;\r
-       var tmp = [] ;\r
-       for ( var i = 0 ; i < paragraphs.length ; i++ )\r
-       {\r
-               block = paragraphs[i] ;\r
-               commonParent = FCKDomTools.GetCommonParents( block.parentNode, commonParent ).pop() ;\r
-       }\r
-\r
-       // The common parent must not be the following tags: table, tbody, tr, ol, ul.\r
-       while ( commonParent.nodeName.IEquals( 'table', 'tbody', 'tr', 'ol', 'ul' ) )\r
-               commonParent = commonParent.parentNode ;\r
-\r
-       // Reconstruct the block list to be processed such that all resulting blocks\r
-       // satisfy parentNode == commonParent.\r
-       var lastBlock = null ;\r
-       while ( paragraphs.length > 0 )\r
-       {\r
-               block = paragraphs.shift() ;\r
-               while ( block.parentNode != commonParent )\r
-                       block = block.parentNode ;\r
-               if ( block != lastBlock )\r
-                       tmp.push( block ) ;\r
-               lastBlock = block ;\r
-       }\r
-       paragraphs = tmp ;\r
-\r
-       // Split the paragraphs into groups depending on their BlockLimit element.\r
-       var groups = [] ;\r
-       var lastBlockLimit = null ;\r
-       for ( var i = 0 ; i < paragraphs.length ; i++ )\r
-       {\r
-               block = paragraphs[i] ;\r
-               var elementPath = new FCKElementPath( block ) ;\r
-               if ( elementPath.BlockLimit != lastBlockLimit )\r
-               {\r
-                       groups.push( [] ) ;\r
-                       lastBlockLimit = elementPath.BlockLimit ;\r
-               }\r
-               groups[groups.length - 1].push( block ) ;\r
-       }\r
-\r
-       // Create a DIV container for each group.\r
-       for ( var i = 0 ; i < groups.length ; i++ )\r
-       {\r
-               var divNode = FCK.EditorDocument.createElement( 'div' ) ;\r
-               groups[i][0].parentNode.insertBefore( divNode, groups[i][0] ) ;\r
-               for ( var j = 0 ; j < groups[i].length ; j++ )\r
-                       FCKDomTools.MoveNode( groups[i][j], divNode ) ;\r
-               newBlocks.push( divNode ) ;\r
-       }\r
-\r
-       range.MoveToBookmark( bookmark ) ;\r
-       range.Select() ;\r
-\r
-       FCK.Focus() ;\r
-       FCK.Events.FireEvent( 'OnSelectionChange' ) ;\r
-\r
-       return newBlocks ;\r
-}\r
-\r
-function Ok()\r
-{\r
-       oEditor.FCKUndo.SaveUndoStep() ;\r
-\r
-       if ( CurrentContainers.length < 1 )\r
-               CurrentContainers = CreateDiv();\r
-\r
-       var setValue = function( attrName, inputName )\r
-       {\r
-               var val = GetE( inputName ).value ;\r
-               for ( var i = 0 ; i < CurrentContainers.length ; i++ )\r
-               {\r
-                       if ( val == '' )\r
-                               CurrentContainers[i].removeAttribute( attrName ) ;\r
-                       else\r
-                               CurrentContainers[i].setAttribute( attrName, val ) ;\r
-               }\r
-       }\r
-\r
-       // Apply modifications to the DIV container according to dialog inputs.\r
-       if ( CurrentContainers.length == 1 )\r
-       {\r
-               setValue( 'class', 'txtClass' ) ;\r
-               setValue( 'id', 'txtId' ) ;\r
-       }\r
-       setValue( 'lang', 'txtLang' ) ;\r
-       if ( FCKBrowserInfo.IsIE )\r
-       {\r
-               for ( var i = 0 ; i < CurrentContainers.length ; i++ )\r
-                       CurrentContainers[i].style.cssText = GetE( 'txtInlineStyle' ).value ;\r
-       }\r
-       else\r
-               setValue( 'style', 'txtInlineStyle' ) ;\r
-       setValue( 'title', 'txtTitle' ) ;\r
-       for ( var i = 0 ; i < CurrentContainers.length ; i++ )\r
-       {\r
-               var dir = GetE( 'selLangDir' ).value ;\r
-               var styleName = GetE( 'selStyle' ).value ;\r
-               if ( GetNearestAncestorDirection( CurrentContainers[i] ) != dir )\r
-                       CurrentContainers[i].dir = dir ;\r
-               else\r
-                       CurrentContainers[i].removeAttribute( 'dir' ) ;\r
-\r
-               if ( styleName )\r
-                       FCKStyles.GetStyle( styleName ).ApplyToObject( CurrentContainers[i] ) ;\r
-       }\r
-\r
-       return true ;\r
-}\r
-\r
-       </script>\r
-</head>\r
-<body style="overflow: hidden">\r
-       <div id="divGeneral">\r
-               <table cellspacing="0" cellpadding="0" width="100%" border="0">\r
-                       <colgroup span="2">\r
-                               <col width="49%" />\r
-                               <col width="2%" />\r
-                               <col width="49%" />\r
-                       </colgroup>\r
-                       <tr>\r
-                               <td>\r
-                                       <span fcklang="DlgDivStyle">Style</span><br />\r
-                                       <select id="selStyle" style="width: 100%;">\r
-                                       </select>\r
-                               </td>\r
-                               <td>&nbsp;</td>\r
-                               <td>\r
-                                       <span fcklang="DlgGenClass">Stylesheet Classes</span><br />\r
-                                       <input id="txtClass" style="width: 100%" type="text" />\r
-                               </td>\r
-                       </tr>\r
-               </table>\r
-       </div>\r
-       <div id="divAdvanced" style="display: none">\r
-               <table cellspacing="0" cellpadding="0" width="100%" border="0">\r
-                       <colgroup span="2">\r
-                               <col width="49%" />\r
-                               <col width="2%" />\r
-                               <col width="49%" />\r
-                       </colgroup>\r
-                       <tr>\r
-                               <td>\r
-                                       <span fcklang="DlgGenId">Id</span><br />\r
-                                       <input style="width: 100%" type="text" id="txtId" />\r
-                               </td>\r
-                               <td>&nbsp;</td>\r
-                               <td>\r
-                                       <span fcklang="DlgGenLangCode">Language Code</span><br />\r
-                                       <input style="width: 100%" type="text" id="txtLang" />\r
-                               </td>\r
-                       </tr>\r
-                       <tr>\r
-                               <td colspan="3">&nbsp;</td>\r
-                       </tr>\r
-                       <tr>\r
-                               <td colspan="3">\r
-                                       <span fcklang="DlgDivInlineStyle">Inline Style</span><br />\r
-                                       <input style="width: 100%" type="text" id="txtInlineStyle" />\r
-                               </td>\r
-                       </tr>\r
-                       <tr>\r
-                               <td colspan="3">&nbsp;</td>\r
-                       </tr>\r
-                       <tr>\r
-                               <td colspan="3">\r
-                                       <span fcklang="DlgGenTitle">Advisory Title</span><br />\r
-                                       <input style="width: 100%" type="text" id="txtTitle" />\r
-                               </td>\r
-                       </tr>\r
-                       <tr>\r
-                               <td>&nbsp;</td>\r
-                       </tr>\r
-                       <tr>\r
-                               <td>\r
-                                       <span fcklang="DlgGenLangDir">Language Direction</span><br />\r
-                                       <select id="selLangDir">\r
-                                               <option fcklang="DlgGenLangDirLtr" value="ltr">Left to Right (LTR)\r
-                                               <option fcklang="DlgGenLangDirRtl" value="rtl">Right to Left (RTL)\r
-                                       </select>\r
-                               </td>\r
-                       </tr>\r
-               </table>\r
-       </div>\r
-</body>\r
-</html>\r