Fixed issue #9429: htmlArea RTE: Cleanup unused files
authorStanislas Rolland <typo3@sjbr.ca>
Fri, 26 Sep 2008 01:17:57 +0000 (01:17 +0000)
committerStanislas Rolland <typo3@sjbr.ca>
Fri, 26 Sep 2008 01:17:57 +0000 (01:17 +0000)
git-svn-id: https://svn.typo3.org/TYPO3v4/Core/trunk@4249 709f56b5-9817-0410-a4d7-c38de5d9e867

24 files changed:
ChangeLog
typo3/sysext/rtehtmlarea/ChangeLog
typo3/sysext/rtehtmlarea/ext_localconf.php
typo3/sysext/rtehtmlarea/extensions/DynamicCSS/class.tx_rtehtmlarea_dynamiccss.php [deleted file]
typo3/sysext/rtehtmlarea/extensions/DynamicCSS/locallang.xml [deleted file]
typo3/sysext/rtehtmlarea/extensions/InlineCSS/class.tx_rtehtmlarea_inlinecss.php [deleted file]
typo3/sysext/rtehtmlarea/extensions/InlineCSS/locallang.xml [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/plugins/DynamicCSS/dynamiccss.js [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/plugins/InlineCSS/inlinecss.js [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/plugins/SelectColor/select-color.js [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/typo3browsers.js [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/plugins/TableOperations/popups/insert_table.html [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/skins/default/htmlarea.css
typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-forecolor.gif [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-hilitecolor.gif [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_image.gif [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_link.gif [deleted file]
typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_unlink.gif [deleted file]
typo3/sysext/t3skin/rtehtmlarea/htmlarea.css
typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-forecolor.gif [deleted file]
typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-hilitecolor.gif [deleted file]
typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_image.gif [deleted file]
typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_link.gif [deleted file]
typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_unlink.gif [deleted file]

index 5e24f34..d2daecf 100755 (executable)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2008-09-25  Stanislas Rolland  <typo3@sjbr.ca>
+
+       * Fixed issue #9429: htmlArea RTE: Cleanup unused files
+
 2008-09-24  Stanislas Rolland  <typo3@sjbr.ca>
 
        * Fixed issue #9424: htmlArea RTE: Cleanup dialogue windows
index 900d231..3acc963 100644 (file)
@@ -1,3 +1,7 @@
+2008-09-25  Stanislas Rolland  <typo3@sjbr.ca>
+
+       * Fixed issue #9429: htmlArea RTE: Cleanup unused files
+
 2008-09-24  Stanislas Rolland  <typo3@sjbr.ca>
 
        * Fixed issue #9424: htmlArea RTE: Cleanup dialogue windows
index 43c2f62..e5f47cd 100644 (file)
@@ -60,16 +60,12 @@ $TYPO3_CONF_VARS['EXTCONF'][$_EXTKEY]['plugins'] = array();
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DefaultInline'] = array();
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DefaultInline']['objectReference'] = 'EXT:'.$_EXTKEY.'/extensions/DefaultInline/class.tx_rtehtmlarea_defaultinline.php:&tx_rtehtmlarea_defaultinline';
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DefaultInline']['addIconsToSkin'] = 1;
-$TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['InlineCSS'] = array();
-$TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['InlineCSS']['objectReference'] = 'EXT:'.$_EXTKEY.'/extensions/InlineCSS/class.tx_rtehtmlarea_inlinecss.php:&tx_rtehtmlarea_inlinecss';
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['BlockElements'] = array();
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['BlockElements']['objectReference'] = 'EXT:'.$_EXTKEY.'/extensions/BlockElements/class.tx_rtehtmlarea_blockelements.php:&tx_rtehtmlarea_blockelements';
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['BlockElements']['addIconsToSkin'] = 0;
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DefinitionList'] = array();
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DefinitionList']['objectReference'] = 'EXT:'.$_EXTKEY.'/extensions/DefinitionList/class.tx_rtehtmlarea_definitionlist.php:&tx_rtehtmlarea_definitionlist';
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DefinitionList']['addIconsToSkin'] = 0;
-$TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DynamicCSS'] = array();
-$TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['DynamicCSS']['objectReference'] = 'EXT:'.$_EXTKEY.'/extensions/DynamicCSS/class.tx_rtehtmlarea_dynamiccss.php:&tx_rtehtmlarea_dynamiccss';
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['BlockStyle'] = array();
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['BlockStyle']['objectReference'] = 'EXT:'.$_EXTKEY.'/extensions/BlockStyle/class.tx_rtehtmlarea_blockstyle.php:&tx_rtehtmlarea_blockstyle';
 $TYPO3_CONF_VARS['EXTCONF']['rtehtmlarea']['plugins']['CharacterMap'] = array();
diff --git a/typo3/sysext/rtehtmlarea/extensions/DynamicCSS/class.tx_rtehtmlarea_dynamiccss.php b/typo3/sysext/rtehtmlarea/extensions/DynamicCSS/class.tx_rtehtmlarea_dynamiccss.php
deleted file mode 100644 (file)
index 8e92bc6..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-/***************************************************************
-*  Copyright notice
-*
-*  (c) 2007 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
-*  All rights reserved
-*
-*  This script is part of the Typo3 project. The Typo3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-/**
- * DynamicCSS extension for htmlArea RTE
- *
- * @author Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
- *
- * TYPO3 SVN ID: $Id$
- *
- */
-
-require_once(t3lib_extMgm::extPath('rtehtmlarea').'class.tx_rtehtmlareaapi.php');
-
-class tx_rtehtmlarea_dynamiccss extends tx_rtehtmlareaapi {
-
-       protected $extensionKey = 'rtehtmlarea';                // The key of the extension that is extending htmlArea RTE
-       protected $pluginName = 'DynamicCSS';                   // The name of the plugin registered by the extension
-       protected $relativePathToLocallangFile = 'extensions/DynamicCSS/locallang.xml'; // Path to this main locallang file of the extension relative to the extension dir.
-       protected $relativePathToSkin = '';                     // Path to the skin (css) file relative to the extension dir.
-       protected $htmlAreaRTE;                                 // Reference to the invoking object
-       protected $thisConfig;                                  // Reference to RTE PageTSConfig
-       protected $toolbar;                                     // Reference to RTE toolbar array
-       protected $LOCAL_LANG;                                  // Frontend language array
-       
-       protected $pluginButtons = 'blockstyle';                // The comma-seperated list of button names that the extension id adding to the htmlArea RTE tollbar
-       protected $pluginLabels = 'blockstylelabel';            // The comma-seperated list of label names that the extension id adding to the htmlArea RTE tollbar
-                                                               // The name-converting array, converting the button names used in the RTE PageTSConfing to the button id's used by the JS scripts
-       protected $convertToolbarForHtmlAreaArray = array (
-               'blockstylelabel'       => 'I[style]',
-               'blockstyle'            => 'DynamicCSS-class',
-               );
-       protected $requiresClassesConfiguration = true;         // True if the extension requires the PageTSConfig Classes configuration
-
-} // end of class
-
-if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/rtehtmlarea/extensions/DynamicCSS/class.tx_rtehtmlarea_dynamiccss.php']) {
-       include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/rtehtmlarea/extensions/DynamicCSS/class.tx_rtehtmlarea_dynamiccss.php']);
-}
-
-?>
\ No newline at end of file
diff --git a/typo3/sysext/rtehtmlarea/extensions/DynamicCSS/locallang.xml b/typo3/sysext/rtehtmlarea/extensions/DynamicCSS/locallang.xml
deleted file mode 100644 (file)
index 4c8c60f..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
-<!-- TYPO3 SVN ID: $Id$ -->
-<T3locallang>
-       <meta type="array">
-               <description>Labels for the DynamicCSS extension of htmlArea RTE</description>
-               <type>module</type>
-       </meta>
-       <data type="array">
-               <languageKey index="default" type="array">
-               </languageKey>
-       </data>
-       <orig_hash type="array">
-               <languageKey index="default" type="array">
-               </languageKey>
-       </orig_hash>
-       <orig_text type="array">
-               <languageKey index="default" type="array">
-               </languageKey>
-       </orig_text>
-</T3locallang>
\ No newline at end of file
diff --git a/typo3/sysext/rtehtmlarea/extensions/InlineCSS/class.tx_rtehtmlarea_inlinecss.php b/typo3/sysext/rtehtmlarea/extensions/InlineCSS/class.tx_rtehtmlarea_inlinecss.php
deleted file mode 100644 (file)
index 7d8a2b9..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<?php
-/***************************************************************
-*  Copyright notice
-*
-*  (c) 2007 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
-*  All rights reserved
-*
-*  This script is part of the Typo3 project. The Typo3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-/**
- * InlineCSS extension of htmlArea RTE
- *
- * @author Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
- *
- * TYPO3 SVN ID: $Id$
- *
- */
-
-require_once(t3lib_extMgm::extPath('rtehtmlarea').'class.tx_rtehtmlareaapi.php');
-
-class tx_rtehtmlarea_inlinecss extends tx_rtehtmlareaapi {
-
-       protected $extensionKey = 'rtehtmlarea';                // The key of the extension that is extending htmlArea RTE
-       protected $pluginName = 'InlineCSS';                    // The name of the plugin registered by the extension
-       protected $relativePathToLocallangFile = 'extensions/InlineCSS/locallang.xml';  // Path to this main locallang file of the extension relative to the extension dir.
-       protected $relativePathToSkin = '';                     // Path to the skin (css) file relative to the extension dir.
-       protected $htmlAreaRTE;                                 // Reference to the invoking object
-       protected $thisConfig;                                  // Reference to RTE PageTSConfig
-       protected $toolbar;                                     // Reference to RTE toolbar array
-       protected $LOCAL_LANG;                                  // Frontend language array
-       
-       protected $pluginButtons = 'textstyle';                 // The comma-seperated list of button names that the extension id adding to the htmlArea RTE tollbar
-       protected $pluginLabels = 'textstylelabel';             // The comma-seperated list of label names that the extension id adding to the htmlArea RTE tollbar
-                                                               // The name-converting array, converting the button names used in the RTE PageTSConfing to the button id's used by the JS scripts
-       protected $convertToolbarForHtmlAreaArray = array (
-               'textstylelabel'        => 'I[text_style]',
-               'textstyle'             => 'InlineCSS-class',
-               );
-       protected $requiresClassesConfiguration = true;         // True if the extension requires the PageTSConfig Classes configuration
-
-} // end of class
-
-if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/rtehtmlarea/extensions/InlineCSS/class.tx_rtehtmlarea_inlinecss.php']) {
-       include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/rtehtmlarea/extensions/InlineCSS/class.tx_rtehtmlarea_inlinecss.php']);
-}
-
-?>
\ No newline at end of file
diff --git a/typo3/sysext/rtehtmlarea/extensions/InlineCSS/locallang.xml b/typo3/sysext/rtehtmlarea/extensions/InlineCSS/locallang.xml
deleted file mode 100644 (file)
index dbe7d99..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
-<!-- TYPO3 SVN ID: $Id$ -->
-<T3locallang>
-       <meta type="array">
-               <description>Labels for the Inline CSS plugin of htmlArea RTE</description>
-               <type>module</type>
-       </meta>
-       <data type="array">
-               <languageKey index="default" type="array">
-               </languageKey>
-       </data>
-       <orig_hash type="array">
-               <languageKey index="default" type="array">
-               </languageKey>
-       </orig_hash>
-       <orig_text type="array">
-               <languageKey index="default" type="array">
-               </languageKey>
-       </orig_text>
-</T3locallang>
\ No newline at end of file
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/plugins/DynamicCSS/dynamiccss.js b/typo3/sysext/rtehtmlarea/htmlarea/plugins/DynamicCSS/dynamiccss.js
deleted file mode 100644 (file)
index 5d4c1b4..0000000
+++ /dev/null
@@ -1,366 +0,0 @@
-/***************************************************************
-*  Copyright notice
-*
-* (c) 2004 systemconcept.de. Authored by Holger Hees, sponsored by http://www.systemconcept.de.
-* (c) 2004-2008 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
-*  All rights reserved
-*
-*  This script is part of the TYPO3 project. The TYPO3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license
-*  from the author is found in LICENSE.txt distributed with these scripts.
-*
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  This script is a modified version of a script published under the htmlArea License.
-*  A copy of the htmlArea License may be found in the textfile HTMLAREA_LICENSE.txt.
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-/*
- * Dynamic CSS Plugin for TYPO3 htmlArea RTE
- *
- * TYPO3 SVN ID: $Id$
- */
-DynamicCSS = HTMLArea.Plugin.extend({
-
-       constructor : function(editor, pluginName) {
-               this.base(editor, pluginName);
-       },
-
-               /*
-        * This function gets called by the class constructor
-        */
-       configurePlugin : function(editor) {
-               var editorNumber = editor._editorNumber;
-
-                       /* Registering plugin "About" information */
-               var pluginInformation = {
-                       version         : "1.9",
-                       developer       : "Holger Hees & Stanislas Rolland",
-                       developerUrl    : "http://www.fructifor.ca/",
-                       copyrightOwner  : "Holger Hees & Stanislas Rolland",
-                       sponsor         : "Fructifor Inc.",
-                       sponsorUrl      : "System Concept GmbH & Fructifor Inc.",
-                       license         : "GPL"
-               };
-               this.registerPluginInformation(pluginInformation);
-
-                       /* Registering the dropdown list */
-               var buttonId = "DynamicCSS-class";
-               var dropDownConfiguration = {
-                       id                      : buttonId,
-                       tooltip                 : this.localize("DynamicCSSStyleTooltip"),
-                       options                 : {"":""},
-                       action                  : "onSelect",
-                       refresh                 : "generate",
-                       context                 : "*",
-                       cssArray                : new Object(),
-                       parseCount              : 1,
-                       loaded                  : false,
-                       timeout                 : null,
-                       lastTag                 : "",
-                       lastClass               : "",
-                       showTagFreeClasses      : RTEarea[editorNumber]["showTagFreeClasses"],
-                       classesUrl              : RTEarea[editorNumber]["classesUrl"],
-                       classesTag              : RTEarea[editorNumber]["classesTag"]
-               };
-               this.registerDropDown(dropDownConfiguration);
-
-               return true;
-       },
-
-       onSelect : function(editor, buttonId) {
-               var obj = this.editorConfiguration.customSelects[buttonId];
-               var tbobj = editor._toolbarObjects[buttonId];
-               var index = document.getElementById(tbobj.elementId).selectedIndex;
-               var className = document.getElementById(tbobj.elementId).value;
-
-               editor.focusEditor();
-               var blocks = this.getSelectedBlocks(editor);
-               for (var k = 0; k < blocks.length; ++k) {
-                       var parent = blocks[k];
-                       while (typeof(parent) != "undefined" && !HTMLArea.isBlockElement(parent) && parent.nodeName.toLowerCase() != "img") parent = parent.parentNode;
-                       if (!k) var tagName = parent.tagName.toLowerCase();
-                       if (parent.tagName.toLowerCase() == tagName) {
-                               var cls = parent.className.trim().split(" ");
-                               for (var i = cls.length; i > 0;) if(!HTMLArea.reservedClassNames.test(cls[--i])) HTMLArea._removeClass(parent,cls[i]);
-                               if(className != 'none'){
-                                       HTMLArea._addClass(parent,className);
-                                       obj.lastClass = className;
-                               }
-                       }
-               }
-       },
-
-       getSelectedBlocks : function(editor) {
-               var block, range, i = 0, blocks = [];
-               if (HTMLArea.is_gecko && !HTMLArea.is_safari && !HTMLArea.is_opera) {
-                       var sel = editor._getSelection();
-                       try {
-                               while (range = sel.getRangeAt(i++)) {
-                                       block = editor.getParentElement(sel, range);
-                                       blocks.push(block);
-                               }
-                       } catch(e) {
-                               /* finished walking through selection */
-                       }
-               } else {
-                       blocks.push(editor.getParentElement());
-               }
-               return blocks;
-       },
-
-       onGenerate : function() {
-               var editor = this.editor;
-               var obj = editor.config.customSelects["DynamicCSS-class"];
-               if(HTMLArea.is_gecko) this.generate(editor);
-       },
-
-       onUpdateToolbar : function() {
-               var editor = this.editor;
-               var obj = editor.config.customSelects["DynamicCSS-class"];
-               if (HTMLArea.is_gecko && editor.getMode() === "wysiwyg" && editor.isEditable()) {
-                       if(obj.loaded) {
-                               this.updateValue(editor,obj);
-                       } else {
-                               if(obj.timeout) {
-                                       if(editor._iframe.contentWindow) { editor._iframe.contentWindow.clearTimeout(obj.timeout); } else { window.clearTimeout(obj.timeout); }
-                                       obj.timeout = null;
-                               }
-                               this.generate(editor);
-                       }
-               } else if (editor.getMode() === "textmode") {
-                       var select = document.getElementById(editor._toolbarObjects[obj.id].elementId);
-                       select.disabled = true;
-                       select.className = "buttonDisabled";
-               }
-       },
-
-       generate : function(editor) {
-               var obj = editor.config.customSelects["DynamicCSS-class"];
-               var classesUrl = obj["classesUrl"];
-               if (classesUrl && typeof(HTMLArea.classesLabels) == "undefined") {
-                       var classesData = HTMLArea._getScript(0, false, classesUrl);
-                       if (classesData) eval(classesData);
-               }
-                       // Let us load the style sheets
-               if(obj.loaded) this.updateValue(editor,obj);
-                       else this.getCSSArray(editor);
-       },
-
-       getCSSArray : function(editor) {
-               var obj = editor.config.customSelects["DynamicCSS-class"];
-               obj.cssArray = this.parseStyleSheet(editor);
-               if( !obj.loaded && obj.parseCount<17 ) {
-                       var getCSSArrayLaterFunctRef = DynamicCSS.getCSSArrayLater(editor, this);
-                       obj.timeout = editor._iframe.contentWindow ? editor._iframe.contentWindow.setTimeout(getCSSArrayLaterFunctRef, 200) : window.setTimeout(getCSSArrayLaterFunctRef, 200);
-                       obj.parseCount++ ;
-               } else {
-                       obj.timeout = null;
-                       obj.loaded = true;
-                       this.updateValue(editor,obj);
-               }
-       },
-
-       onMode : function(mode) {
-               var editor = this.editor;
-               if (mode == 'wysiwyg' && editor.isEditable()) {
-                       var obj = editor.config.customSelects["DynamicCSS-class"];
-                       if (obj.loaded) {
-                               this.updateValue(editor,obj);
-                       } else {
-                               if(obj.timeout) {
-                                       if (editor._iframe.contentWindow) editor._iframe.contentWindow.clearTimeout(obj.timeout);
-                                               else window.clearTimeout(obj.timeout);
-                                       obj.timeout = null;
-                               }
-                       this.generate(editor);
-                       }
-               }
-       },
-
-       updateValue : function(editor,obj) {
-               var cssClass, i;
-               if(!obj.loaded) {
-                       if(obj.timeout) {
-                               if(editor._iframe.contentWindow) editor._iframe.contentWindow.clearTimeout(obj.timeout);
-                                       else window.clearTimeout(obj.timeout);
-                               obj.timeout = null;
-                       }
-                       this.generate(editor);
-               }
-               var cssArray = obj.cssArray;
-               var tagName = "body";
-               var className = "";
-               var parent = editor.getParentElement();
-               while(parent && typeof(parent) != "undefined" && !HTMLArea.isBlockElement(parent) && parent.nodeName.toLowerCase() != "img") parent = parent.parentNode;
-               if(parent) {
-                       tagName = parent.nodeName.toLowerCase();
-                       className = parent.className;
-                       if(HTMLArea.reservedClassNames.test(className)) {
-                               var cls = className.split(" ");
-                               for (var i = cls.length; i > 0;) if(!HTMLArea.reservedClassNames.test(cls[--i])) className = cls[i];
-                       }
-               }
-               if(obj.lastTag != tagName || obj.lastClass != className){
-                       obj.lastTag = tagName;
-                       obj.lastClass = className;
-                       var select = document.getElementById(editor._toolbarObjects[obj.id].elementId);
-                       while(select.options.length>0) select.options[select.length-1] = null;
-                       select.options[0]=new Option(this.localize("Default"),'none');
-                       if(cssArray){
-                                       // style class only allowed if parent tag is not body or editor is in fullpage mode
-                               if(tagName != 'body' || editor.config.fullPage){
-                                       if(cssArray[tagName]){
-                                               for (cssClass in cssArray[tagName]){
-                                                       if (cssArray[tagName].hasOwnProperty(cssClass)) {
-                                                               if (cssClass == 'none') {
-                                                                       select.options[0] = new Option(cssArray[tagName][cssClass],cssClass);
-                                                               } else {
-                                                                       select.options[select.options.length] = new Option(cssArray[tagName][cssClass],cssClass);
-                                                                       if (!editor.config.disablePCexamples && HTMLArea.classesValues && HTMLArea.classesValues[cssClass] && !HTMLArea.classesNoShow[cssClass]) select.options[select.options.length-1].setAttribute("style", HTMLArea.classesValues[cssClass]);
-                                                               }
-                                                       }
-                                               }
-                                       }
-                                       if (cssArray['all']){
-                                               for (cssClass in cssArray['all']){
-                                                       if (cssArray['all'].hasOwnProperty(cssClass)) {
-                                                               select.options[select.options.length] = new Option(cssArray['all'][cssClass],cssClass);
-                                                               if (!editor.config.disablePCexamples && HTMLArea.classesValues && HTMLArea.classesValues[cssClass] && !HTMLArea.classesNoShow[cssClass]) select.options[select.options.length-1].setAttribute("style", HTMLArea.classesValues[cssClass]);
-                                                       }
-                                               }
-                                       }
-                               } else {
-                                       if(cssArray[tagName] && cssArray[tagName]['none']) select.options[0] = new Option(cssArray[tagName]['none'],'none');
-                               }
-                       }
-                       select.selectedIndex = 0;
-                       if (typeof(className) != "undefined" && /\S/.test(className) && !HTMLArea.reservedClassNames.test(className) ) {
-                               for (i = select.options.length; --i >= 0;) {
-                                       var option = select.options[i];
-                                       if (className == option.value) {
-                                               select.selectedIndex = i;
-                                               break;
-                                       }
-                               }
-                               if (select.selectedIndex == 0) {
-                                       select.options[select.options.length] = new Option(this.localize("Undefined"),className);
-                                       select.selectedIndex = select.options.length-1;
-                               }
-                       }
-                       if (select.options.length > 1) {
-                               select.disabled = false;
-                       } else select.disabled = true;
-                       if(HTMLArea.is_gecko) select.removeAttribute('class');
-                               else select.removeAttribute('className');
-                       if (select.disabled) HTMLArea._addClass(select, "buttonDisabled");
-               }
-       },
-
-       parseStyleSheet : function(editor) {
-               var obj = editor.config.customSelects["DynamicCSS-class"];
-               var iframe = editor._iframe.contentWindow ? editor._iframe.contentWindow.document : editor._iframe.contentDocument;
-               var newCssArray = new Object();
-               obj.loaded = true;
-               for (var i = 0; i < iframe.styleSheets.length; i++) {
-                               // Mozilla
-                       if(HTMLArea.is_gecko){
-                               try { newCssArray = this.applyCSSRule(editor,iframe.styleSheets[i].cssRules,newCssArray); }
-                               catch (e) { obj.loaded = false; }
-                       } else {
-                               try{
-                                               // @import StyleSheets (IE)
-                                       if (iframe.styleSheets[i].imports) newCssArray = this.applyCSSIEImport(editor,iframe.styleSheets[i].imports,newCssArray);
-                                       if (iframe.styleSheets[i].rules) newCssArray = this.applyCSSRule(editor,iframe.styleSheets[i].rules,newCssArray);
-                               } catch (e) { obj.loaded = false; }
-                       }
-               }
-               return newCssArray;
-       },
-
-       applyCSSRule : function(editor, cssRules, cssArray){
-               var cssElements = new Array(),
-                       cssElement = new Array(),
-                       newCssArray = new Object(),
-                       classParts = new Array(),
-                       tagName, className, rule, k,
-                       obj = editor.config.customSelects["DynamicCSS-class"];
-               newCssArray = cssArray;
-
-               for (rule = 0; rule < cssRules.length; rule++) {
-                               // StyleRule
-                       if (cssRules[rule].selectorText) {
-                               if (cssRules[rule].selectorText.search(/:+/) == -1) {
-                                               // split equal Styles e.g. head, body {border:0px}
-                                       cssElements = cssRules[rule].selectorText.split(",");
-                                       for (k = 0; k < cssElements.length; k++) {
-                                               cssElement = cssElements[k].split(".");
-                                               tagName = cssElement[0].toLowerCase().trim();
-                                               if (!tagName) tagName = "all";
-                                               className = cssElement[1];
-                                               if (className) {
-                                                       classParts = className.trim().split(" ");
-                                                       className = classParts[0];
-                                               }
-                                               if (!HTMLArea.reservedClassNames.test(className) && ((tagName == "all" && obj["showTagFreeClasses"] == true) || (tagName != "all" && (!obj["classesTag"] || !obj["classesTag"][tagName])) || (tagName != "all" && obj["classesTag"][tagName].indexOf(className) != -1)) ) {
-                                                       if (!newCssArray[tagName]) newCssArray[tagName] = new Object();
-                                                       if (className) {
-                                                               cssName = className;
-                                                               if (HTMLArea.classesLabels) cssName = HTMLArea.classesLabels[className] ? HTMLArea.classesLabels[className] : cssName ;
-                                                               if (tagName != 'all') cssName = '<'+cssName+'>';
-                                                       } else {
-                                                               className='none';
-                                                               if (tagName=='all') cssName=this.localize("Default");
-                                                                       else cssName='<'+this.localize("Default")+'>';
-                                                       }
-                                                       newCssArray[tagName][className]=cssName;
-                                               }
-                                       }
-                               }
-                       } else {
-                                       // ImportRule (Mozilla)
-                               if (cssRules[rule].styleSheet) {
-                                       newCssArray = this.applyCSSRule(editor, cssRules[rule].styleSheet.cssRules, newCssArray);
-                               }
-                                       // MediaRule (Mozilla)
-                               if (cssRules[rule].cssRules) {
-                                       newCssArray = this.applyCSSRule(editor, cssRules[rule].cssRules, newCssArray);
-                               }
-                       }
-               }
-               return newCssArray;
-       },
-
-       applyCSSIEImport : function(editor,cssIEImport,cssArray){
-               var newCssArray = new Object();
-               newCssArray = cssArray;
-               for (var i=0;i<cssIEImport.length;i++){
-                       if(cssIEImport[i].imports){
-                               newCssArray = this.applyCSSIEImport(editor,cssIEImport[i].imports,newCssArray);
-                       }
-                       if(cssIEImport[i].rules){
-                               newCssArray = this.applyCSSRule(editor,cssIEImport[i].rules,newCssArray);
-                       }
-               }
-               return newCssArray;
-       }
-});
-
-DynamicCSS.getCSSArrayLater = function(editor,instance) {
-       return (function() {
-               instance.getCSSArray(editor);
-       });
-};
-
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/plugins/InlineCSS/inlinecss.js b/typo3/sysext/rtehtmlarea/htmlarea/plugins/InlineCSS/inlinecss.js
deleted file mode 100644 (file)
index 2a64f6b..0000000
+++ /dev/null
@@ -1,438 +0,0 @@
-/***************************************************************
-*  Copyright notice
-*
-*  (c) 2004-2008 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
-*  All rights reserved
-*
-*  This script is part of the TYPO3 project. The TYPO3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license
-*  from the author is found in LICENSE.txt distributed with these scripts.
-*
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-/*
- * Inline CSS Plugin for TYPO3 htmlArea RTE
- *
- * TYPO3 SVN ID: $Id$
- */
-InlineCSS = HTMLArea.Plugin.extend({
-
-       constructor : function(editor, pluginName) {
-               this.base(editor, pluginName);
-       },
-
-       /*
-        * This function gets called by the class constructor
-        */
-       configurePlugin : function (editor) {
-               var editorNumber = editor._editorNumber;
-
-                       /* Registering plugin "About" information */
-               var pluginInformation = {
-                       version         : "1.5",
-                       developer       : "Stanislas Rolland",
-                       developerUrl    : "http://www.fructifor.ca/",
-                       copyrightOwner  : "Stanislas Rolland",
-                       sponsor         : "Fructifor Inc.",
-                       sponsorUrl      : "http://www.fructifor.ca/",
-                       license         : "GPL"
-               };
-               this.registerPluginInformation(pluginInformation);
-
-                       /* Registering the dropdown list */
-               var buttonId = "InlineCSS-class";
-               var dropDownConfiguration = {
-                       id                      : buttonId,
-                       tooltip                 : this.localize(buttonId + "-Tooltip"),
-                       options                 : {"":""},
-                       action                  : "onSelect",
-                       refresh                 : "generate",
-                       context                 : "*",
-                       cssArray                : new Object(),
-                       parseCount              : 1,
-                       loaded                  : false,
-                       timeout                 : null,
-                       lastTag                 : "",
-                       lastClass               : "",
-                       showTagFreeClasses      : RTEarea[editorNumber]["showTagFreeClasses"],
-                       classesUrl              : RTEarea[editorNumber]["classesUrl"],
-                       classesCharacter        : RTEarea[editorNumber]["classesTag"]["span"]
-               };
-               this.registerDropDown(dropDownConfiguration);
-
-               return true;
-       },
-
-       onSelect : function(editor, buttonId) {
-               var obj = this.editorConfiguration.customSelects[buttonId];
-               var tbobj = editor._toolbarObjects[buttonId];
-               var index = document.getElementById(tbobj.elementId).selectedIndex;
-               var className = document.getElementById(tbobj.elementId).value;
-               var selTrimmed;
-
-               editor.focusEditor();
-               var selectedHTML = editor.getSelectedHTMLContents();
-               if (selectedHTML) {
-                       selTrimmed = selectedHTML.replace(/(<[^>]*>|&nbsp;|\n|\r)/g,"");
-               }
-               var parent = editor.getParentElement();
-               if( (HTMLArea.is_gecko && /\w/.test(selTrimmed) == true) || (HTMLArea.is_ie && /\S/.test(selTrimmed) == true) ) {
-                       var sel = editor._getSelection();
-                       var range = editor._createRange(sel);
-                       if( className != 'none' ) {
-                               obj.lastClass = className;
-                               if(parent && !HTMLArea.isBlockElement(parent) && selectedHTML.replace(/^\s*|\s*$/g,"") == parent.innerHTML.replace(/^\s*|\s*$/g,"") ) {
-                                       parent.className = className;
-                               } else {
-                                       if(HTMLArea.is_gecko) {
-                                               var rangeClone = range.cloneRange();
-                                               var span = editor._doc.createElement("span");
-                                               span.className = className;
-                                               span.appendChild(range.extractContents());
-                                               range.insertNode(span);
-                                               if(HTMLArea.is_safari) {
-                                                       sel.empty();
-                                                       sel.setBaseAndExtent(rangeClone.startContainer,rangeClone.startOffset,rangeClone.endContainer,rangeClone.endOffset);
-                                               } else {
-                                                       sel.removeRange(range);
-                                                       sel.addRange(rangeClone);
-                                               }
-                                               range.detach();
-                                       } else {
-                                               var tagopen = '<span class="' + className + '">';
-                                               var tagclose = "</span>";
-                                               editor.surroundHTML(tagopen,tagclose);
-                                       }
-                               }
-                       } else {
-                               if (parent && !HTMLArea.isBlockElement(parent)) {
-                                       if (HTMLArea.is_gecko) {
-                                               parent.removeAttribute('class');
-                                       } else {
-                                               parent.removeAttribute('className');
-                                       }
-                                       if (parent.tagName.toLowerCase() == "span") {
-                                               p = parent.parentNode;
-                                               while (parent.firstChild) {
-                                                       p.insertBefore(parent.firstChild, parent);
-                                               }
-                                               p.removeChild(parent);
-                                       }
-                               }
-                       }
-               } else {
-                       alert(HTMLArea.I18N.InlineCSS['You have to select some text']);
-               }
-       },
-
-       onGenerate : function() {
-               var editor = this.editor;
-               var obj = editor.config.customSelects["InlineCSS-class"];
-               if (HTMLArea.is_gecko) {
-                       this.generate(editor);
-               }
-       },
-
-       onUpdateToolbar : function() {
-               var editor = this.editor;
-               var obj = editor.config.customSelects["InlineCSS-class"];
-               if (HTMLArea.is_gecko && editor.getMode() === "wysiwyg" && editor.isEditable()) {
-                       if (obj.loaded) {
-                               this.updateValue(editor,obj);
-                       } else {
-                               if (obj.timeout) {
-                                       if (editor._iframe.contentWindow) {
-                                               editor._iframe.contentWindow.clearTimeout(obj.timeout);
-                                       } else {
-                                               window.clearTimeout(obj.timeout);
-                                       }
-                                       obj.timeout = null;
-                               }
-                               this.generate(editor);
-                       }
-               }
-       },
-
-       generate : function(editor) {
-               var obj = editor.config.customSelects["InlineCSS-class"];
-               var classesUrl = obj["classesUrl"];
-               if (classesUrl && typeof(HTMLArea.classesLabels) === "undefined") {
-                       this.getJavascriptFile(classesUrl);
-               }
-                       // Let us load the style sheets
-               if (obj.loaded) {
-                       this.updateValue(editor,obj);
-               } else {
-                       this.getCSSArray(editor);
-               }
-       },
-
-       getCSSArray : function(editor) {
-               var obj = editor.config.customSelects["InlineCSS-class"];
-               obj.cssArray = InlineCSS.parseStyleSheet(editor);
-               if ( !obj.loaded && obj.parseCount<17 ) {
-                       var getCSSArrayLaterFunctRef = InlineCSS.getCSSArrayLater(editor, this);
-                       obj.timeout = editor._iframe.contentWindow ? editor._iframe.contentWindow.setTimeout(getCSSArrayLaterFunctRef, 200) : window.setTimeout(getCSSArrayLaterFunctRef, 200);
-                       obj.parseCount++ ;
-               } else {
-                       obj.timeout = null;
-                       obj.loaded = true;
-                       this.updateValue(editor, obj);
-               }
-       },
-
-       onMode : function(mode) {
-               var editor = this.editor;
-               if (mode === "wysiwyg" && editor.isEditable()) {
-                       var obj = editor.config.customSelects["InlineCSS-class"];
-                       if (obj.loaded) {
-                               this.updateValue(editor,obj);
-                       } else {
-                               if (obj.timeout) {
-                                       if (editor._iframe.contentWindow) {
-                                               editor._iframe.contentWindow.clearTimeout(obj.timeout);
-                                       } else {
-                                               window.clearTimeout(obj.timeout);
-                                       }
-                                       obj.timeout = null;
-                               }
-                               this.generate(editor);
-                       }
-               }
-       },
-
-       updateValue : function(editor,obj) {
-               var cssClass, i;
-
-               if (!obj.loaded) {
-                       if (obj.timeout) {
-                               if (editor._iframe.contentWindow) {
-                                       editor._iframe.contentWindow.clearTimeout(obj.timeout);
-                               } else {
-                                       window.clearTimeout(obj.timeout);
-                               }
-                               obj.timeout = null;
-                       }
-                       this.generate(editor);
-               }
-
-               var cssArray = obj.cssArray;
-               var tagName = "body";
-               var className = "";
-               var parent = editor.getParentElement();
-               if (parent) {
-                       tagName = parent.nodeName.toLowerCase();
-                       className = parent.className;
-               }
-
-               var selTrimmed = editor.getSelectedHTMLContents();
-               if(selTrimmed) {
-                       selTrimmed = selTrimmed.replace(/(<[^>]*>|&nbsp;|\n|\r)/g,"");
-               }
-
-               var endPointsInSameBlock = false;
-               if ( (HTMLArea.is_gecko && /\w/.test(selTrimmed) == true) || (HTMLArea.is_ie && /\S/.test(selTrimmed) == true) ) {
-                       var sel = editor._getSelection();
-                       var range = editor._createRange(sel);
-                       if (HTMLArea.is_gecko) {
-                               if (sel.rangeCount == 1 || HTMLArea.is_safari) {
-                                       var parentStart = range.startContainer;
-                                       var parentEnd = range.endContainer;
-                                       if ( !(parentStart.nodeType == 1 && parentStart.tagName.toLowerCase() == "tr") ) {
-                                               while (parentStart && !HTMLArea.isBlockElement(parentStart)) {
-                                                       parentStart = parentStart.parentNode;
-                                               }
-                                               while (parentEnd && !HTMLArea.isBlockElement(parentEnd)) {
-                                                       parentEnd = parentEnd.parentNode;
-                                               }
-                                               endPointsInSameBlock = (parentStart == parentEnd) && (parent.tagName.toLowerCase() != "body") && (parent.tagName.toLowerCase() != "table") && (parent.tagName.toLowerCase() != "tbody") && (parent.tagName.toLowerCase() != "tr");
-                                       }
-                               }
-                       } else {
-                               if (sel.type != "Control" ) {
-                                       var rangeStart = range.duplicate();
-                                       rangeStart.collapse(true);
-                                       var rangeEnd = range.duplicate();
-                                       rangeEnd.collapse(false);
-                                       var parentStart = rangeStart.parentElement();
-                                       var parentEnd = rangeEnd.parentElement();
-                                       while (parentStart && !HTMLArea.isBlockElement(parentStart)) {
-                                               parentStart = parentStart.parentNode;
-                                       }
-                                       while (parentEnd && !HTMLArea.isBlockElement(parentEnd)) {
-                                               parentEnd = parentEnd.parentNode;
-                                       }
-                                       endPointsInSameBlock = (parentStart == parentEnd) && (parent.tagName.toLowerCase() != "body")  ;
-                               }
-                       }
-               }
-
-               var select = document.getElementById(editor._toolbarObjects[obj.id].elementId);
-               select.disabled = !(/\w/.test(selTrimmed)) || !(endPointsInSameBlock);
-
-               obj.lastTag = tagName;
-               obj.lastClass = className;
-               while(select.options.length>0) {
-                       select.options[select.length-1] = null;
-               }
-               select.options[0]=new Option(HTMLArea.I18N.InlineCSS["Default"],'none');
-               if (cssArray){
-                               // we are in span and 'all' tags only
-                       if (cssArray['span']) {
-                               for (cssClass in cssArray['span']) {
-                                       if (cssClass == 'none') {
-                                               select.options[0] = new Option(cssArray['span'][cssClass],cssClass);
-                                       } else {
-                                               select.options[select.options.length] = new Option(cssArray['span'][cssClass],cssClass);
-                                               if (!editor.config.disablePCexamples && HTMLArea.classesValues && HTMLArea.classesValues[cssClass] && !HTMLArea.classesNoShow[cssClass]) {
-                                                       select.options[select.options.length-1].setAttribute("style", HTMLArea.classesValues[cssClass]);
-                                               }
-                                       }
-                               }
-                       }
-                       if (cssArray['all']){
-                               for (cssClass in cssArray['all']) {
-                                       select.options[select.options.length] = new Option(cssArray['all'][cssClass],cssClass);
-                                       if (!editor.config.disablePCexamples && HTMLArea.classesValues && HTMLArea.classesValues[cssClass] && !HTMLArea.classesNoShow[cssClass]) {
-                                               select.options[select.options.length-1].setAttribute("style", HTMLArea.classesValues[cssClass]);
-                                       }
-                               }
-                       }
-               }
-               select.selectedIndex = 0;
-               //var selected = false;
-               //select.multiple = true;
-               //select.size = 2;
-               if (typeof className != "undefined" && /\S/.test(className) && !HTMLArea.reservedClassNames.test(className)) {
-                       for (i = select.options.length; --i >= 0;) {
-                               var option = select.options[i];
-                               if (className == option.value) {
-                                       option.selected = true;
-                                       //selected = true;
-                                       select.selectedIndex = i;
-                                       break;
-                               }
-                       }
-                       if (select.selectedIndex == 0) {
-                               //if(!selected){
-                               select.options[select.options.length] = new Option(HTMLArea.I18N.InlineCSS["Undefined"],className);
-                               select.selectedIndex = select.options.length-1;
-                               //select.options[select.options.length-1].selected = true;
-                       }
-               }
-               select.disabled = !(select.options.length>1) || !endPointsInSameBlock || !((HTMLArea.is_gecko && /\w/.test(selTrimmed) == true) || (HTMLArea.is_ie && /\S/.test(selTrimmed) == true)) ;
-               select.className = "";
-               if (select.disabled) {
-                       select.className = "buttonDisabled";
-               }
-       }
-});
-
-InlineCSS.parseStyleSheet = function(editor) {
-       var obj = editor.config.customSelects["InlineCSS-class"];
-       var iframe = editor._iframe.contentWindow ? editor._iframe.contentWindow.document : editor._iframe.contentDocument;
-       var newCssArray = new Object();
-       obj.loaded = true;
-       for(var i=0;i<iframe.styleSheets.length;i++){
-                       // Mozilla
-            if(HTMLArea.is_gecko){
-                       try{ newCssArray = InlineCSS.applyCSSRule(editor,HTMLArea.I18N.InlineCSS,iframe.styleSheets[i].cssRules,newCssArray); }
-                       catch(e){ obj.loaded = false; }
-               } else {
-                       try{
-                                       // @import StyleSheets (IE)
-                               if(iframe.styleSheets[i].imports){
-                                       newCssArray = InlineCSS.applyCSSIEImport(editor,HTMLArea.I18N.InlineCSS,iframe.styleSheets[i].imports,newCssArray);
-                               }
-                               if(iframe.styleSheets[i].rules){
-                                       newCssArray = InlineCSS.applyCSSRule(editor,HTMLArea.I18N.InlineCSS,iframe.styleSheets[i].rules,newCssArray);
-                               }
-                       } catch(e) { obj.loaded = false; }
-               }
-       }
-       return newCssArray;
-};
-
-InlineCSS.applyCSSRule = function(editor,i18n,cssRules,cssArray){
-       var cssElements = new Array();
-       var cssElement = new Array();
-       var newCssArray = new Object();
-       var tagName, className, rule, k;
-       var obj = editor.config.customSelects["InlineCSS-class"];
-       newCssArray = cssArray;
-       for(rule=0;rule<cssRules.length;rule++){
-                       // StyleRule
-               if(cssRules[rule].selectorText){
-                       if(cssRules[rule].selectorText.search(/:+/)==-1){
-                                       // split equal Styles (Mozilla-specific) e.q. head, body {border:0px}
-                                       // for ie not relevant. returns allways one element
-                               cssElements = cssRules[rule].selectorText.split(",");
-                               for(k=0;k<cssElements.length;k++){
-                                       cssElement = cssElements[k].split(".");
-                                       tagName = cssElement[0].toLowerCase().trim();
-                                       if(!tagName) tagName = 'all';
-                                       className = cssElement[1];
-                                       if( (!obj["classesCharacter"] && (tagName == 'span')) || ((tagName != "all" || obj["showTagFreeClasses"] == true) && obj["classesCharacter"] && obj["classesCharacter"].indexOf(className) != -1)) {
-                                               if(!newCssArray[tagName]) newCssArray[tagName] = new Object();
-                                               if(className){
-                                                       cssName = className;
-                                                       if (HTMLArea.classesLabels) cssName = HTMLArea.classesLabels[className] ? HTMLArea.classesLabels[className] : cssName ;
-                                                       if (tagName != 'all') cssName = '<'+cssName+'>';
-                                               } else {
-                                                       className = 'none';
-                                                       if(tagName == 'all') cssName = i18n["Default"];
-                                                               else cssName = '<'+i18n["Default"]+'>';
-                                               }
-                                               newCssArray[tagName][className] = cssName;
-                                       }
-                               }
-                       }
-               } else {
-                               // ImportRule (Mozilla)
-                       if (cssRules[rule].styleSheet) {
-                               newCssArray = InlineCSS.applyCSSRule(editor, i18n, cssRules[rule].styleSheet.cssRules, newCssArray);
-                       }
-                               // MediaRule (Mozilla)
-                       if (cssRules[rule].cssRules) {
-                               newCssArray = InlineCSS.applyCSSRule(editor, i18n, cssRules[rule].cssRules, newCssArray);
-                       }
-               }
-       }
-       return newCssArray;
-};
-
-InlineCSS.applyCSSIEImport=function(editor,i18n,cssIEImport,cssArray){
-       var newCssArray = new Object();
-       newCssArray = cssArray;
-
-       for(var i=0;i<cssIEImport.length;i++){
-               if(cssIEImport[i].imports){
-                       newCssArray = InlineCSS.applyCSSIEImport(editor,i18n,cssIEImport[i].imports,newCssArray);
-               }
-               if(cssIEImport[i].rules){
-                       newCssArray = InlineCSS.applyCSSRule(editor,i18n,cssIEImport[i].rules,newCssArray);
-               }
-       }
-       return newCssArray;
-};
-
-InlineCSS.getCSSArrayLater = function(editor,instance) {
-       return (function() {
-               instance.getCSSArray(editor);
-       });
-};
-
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/plugins/SelectColor/select-color.js b/typo3/sysext/rtehtmlarea/htmlarea/plugins/SelectColor/select-color.js
deleted file mode 100644 (file)
index 46032bc..0000000
+++ /dev/null
@@ -1,351 +0,0 @@
-/***************************************************************
-*  Copyright notice
-*
-*  (c) 2004, 2005, 2006 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
-*  All rights reserved
-*
-*  This script is part of the TYPO3 project. The TYPO3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license
-*  from the author is found in LICENSE.txt distributed with these scripts.
-*
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-/*
- * Color Select Plugin for TYPO3 htmlArea RTE
- *
- * TYPO3 SVN ID: $Id$
- */
-
-SelectColor = function(editor) {
-       this.editor = editor;
-       var cfg = editor.config;
-       var bl = SelectColor.btnList;
-
-               // register the toolbar buttons provided by this plugin
-       for (var i = 0; i < bl.length; ++i) {
-               var btn = bl[i];
-               var id = "CO-" + btn[0];
-               this.editor.eventHandlers[id] = SelectColor.actionHandler(this);
-               cfg.registerButton(
-                       id,
-                       SelectColor_langArray[id],
-                       editor.imgURL(id + ".gif", "SelectColor"),
-                       false,
-                       this.editor.eventHandlers[id],
-                       btn[1]
-               );
-       }
-};
-
-SelectColor.I18N = SelectColor_langArray;
-
-SelectColor._pluginInfo = {
-       name          : "SelectColor",
-       version       : "1.6",
-       developer     : "Stanislas Rolland",
-       developer_url : "http://www.fructifor.ca/",
-       c_owner       : "Stanislas Rolland",
-       sponsor       : "Fructifor Inc.",
-       sponsor_url   : "http://www.fructifor.ca/",
-       license       : "GPL"
-};
-
-SelectColor.actionHandler = function(instance) {
-       return (function(editor,id) {
-               instance.buttonPress(editor, id);
-       });
-};
-
-// the list of buttons added by this plugin
-SelectColor.btnList = [
-       ["forecolor", null],
-       ["hilitecolor", null]
-];
-
-// This function gets called when some button from the SelectColor was pressed
-SelectColor.prototype.buttonPress = function(editor,button_id) {
-       this.editor = editor;
-       switch (button_id) {
-               case "CO-forecolor":
-                       this.dialogSelectColor(button_id,"","");
-                       break;
-               case "CO-hilitecolor":
-                       this.dialogSelectColor(button_id,"","");
-                       break;
-               default:
-                       alert("Button [" + button_id + "] not yet implemented");
-       }
-};
-
-// this function requires the file PopupWin
-SelectColor.prototype.dialogSelectColor = function(button_id,element,field,opener) {
-       var editor = this.editor;
-       var windowWidth = 470;
-       var windowHeight = 245;
-
-               // button_id's  "color" and "tag" are not registered but used to interface with the Table Operations and QuickTag plugins
-       switch (button_id) {
-          case "CO-forecolor":
-          case "CO-hilitecolor":
-               var selectColorInitFunctRef = SelectColor.selectColorCOInit(this, button_id);
-               var setColorFunctRef = SelectColor.setColorCO(this);
-               var dialog = new PopupWin(this.editor, SelectColor.I18N[button_id + "_title"], setColorFunctRef, selectColorInitFunctRef, windowWidth, windowHeight, editor._iframe.contentWindow);
-               break;
-          case "color":
-               var selectColorInitFunctRef = SelectColor.selectColorColorInit(this, button_id, field);
-               var setColorFunctRef = SelectColor.setColorColor(this, element, field);
-               var dialog = new PopupWin(this.editor, SelectColor.I18N[button_id + "_title"], setColorFunctRef, selectColorInitFunctRef, windowWidth, windowHeight, opener);
-               break;
-          case "tag":
-               var selectColorInitFunctRef = SelectColor.selectColorTagInit(this, button_id);
-               var setColorFunctRef = SelectColor.setColorTag(this, field);
-               var dialog = new PopupWin(this.editor, SelectColor.I18N["color_title"], setColorFunctRef, selectColorInitFunctRef, windowWidth, windowHeight, opener);
-       }
-};
-
-/*
- * Initialize the CO-forecolor and the CO-hilitecolor select color dialogs
- */
-SelectColor.selectColorCOInit = function(instance,button_id) {
-       return (function(dialog) {
-               var editor = dialog.editor;
-               var doc = editor._doc;
-               dialog.content.innerHTML = instance.renderPopupSelectColor(button_id, dialog, SelectColor.I18N[button_id + "_title"]);
-               var colorTable = dialog.doc.getElementById("colorTable");
-               colorTable.onclick = function(e) {
-                       if(!e) var e = dialog.dialogWindow.event;
-                       var targ = e.target ? e.target : e.srcElement;
-                       if (targ.nodeType == 3) targ = targ.parentNode;
-                       dialog.doc.getElementById(button_id).value = targ.bgColor ? targ.bgColor : "";
-                       dialog.callHandler();
-                       return false;
-               };
-               var colorUnset = dialog.doc.getElementById("colorUnset");
-               colorUnset.onclick = function(e) {
-                       dialog.doc.getElementById(button_id).value="";
-                       dialog.callHandler();
-                       return false;
-               };
-               try {
-                       with (dialog.doc.getElementById(button_id+"Current").style) {
-                               switch (button_id) {
-                                       case "CO-forecolor":
-                                               backgroundColor = HTMLArea._makeColor(doc.queryCommandValue("ForeColor"));
-                                               break;
-                                       case "CO-hilitecolor":
-                                               backgroundColor = HTMLArea._makeColor(doc.queryCommandValue(((HTMLArea.is_ie || HTMLArea.is_safari) ? "BackColor" : "HiliteColor")));
-                                               if (/transparent/i.test(backgroundColor)) {
-                                                               // Mozilla
-                                                       backgroundColor = HTMLArea._makeColor(doc.queryCommandValue("BackColor"));
-                                               }
-                                               break;
-                               }
-                       }
-               } catch (e) { }
-               dialog.showAtElement();
-       });
-};
-
-/*
- * Set the color and close the CO-forecolor and the CO-hilitecolor select color dialogs
- */
-SelectColor.setColorCO = function(instance) {
-       return (function(dialog,params) {
-               var editor = dialog.editor;
-               instance.processStyle(dialog, params, "", "");
-               dialog.releaseEvents();
-               editor.focusEditor();
-               editor.updateToolbar();
-               dialog.close();
-       });
-};
-
-/*
- * Initialize the case=color select color dialog
- * This case is used by the Table Operations plugin
- */
-SelectColor.selectColorColorInit = function(instance,button_id,field) {
-       return (function(dialog) {
-               dialog.content.innerHTML = instance.renderPopupSelectColor(button_id, dialog, SelectColor.I18N[button_id + "_title"]);
-               var colorTable = dialog.doc.getElementById("colorTable");
-               colorTable.onclick = function(e) {
-                       if(!e) var e = dialog.dialogWindow.event;
-                       var targ = e.target ? e.target : e.srcElement;
-                       if (targ.nodeType == 3) targ = targ.parentNode;
-                       dialog.doc.getElementById(button_id).value = targ.bgColor;
-                       dialog.callHandler();
-                       return false;
-               };
-               var colorUnset = dialog.doc.getElementById("colorUnset");
-               colorUnset.onclick = function(e) {
-                       dialog.doc.getElementById(button_id).value = "";
-                       dialog.callHandler();
-                       return false;
-               };
-               dialog.doc.getElementById(button_id+"Current").style.backgroundColor = field.value;
-               dialog.showAtElement();
-
-       });
-};
-
-/*
- * Set the color and close the case=color select color dialog
- */
-SelectColor.setColorColor = function(instance,element,field) {
-       return (function(dialog,params) {
-               instance.processStyle(dialog, params, element, field);
-               dialog.releaseEvents();
-               dialog.close();
-       });
-};
-
-/*
- * Initialize the case=tag select color dialog
- * This is used by the QuickTag plugin
- */
-SelectColor.selectColorTagInit = function(instance, button_id) {
-       return (function(dialog) {
-               instance.dialog = dialog;
-               dialog.content.innerHTML = instance.renderPopupSelectColor(button_id, dialog, SelectColor.I18N["color_title"]);
-               var colorTable = dialog.doc.getElementById("colorTable");
-               colorTable.onclick = function(e) {
-                       if(!e) var e = dialog.dialogWindow.event;
-                       var targ = e.target ? e.target : e.srcElement;
-                       if (targ.nodeType == 3) targ = targ.parentNode;
-                       dialog.doc.getElementById(button_id).value = targ.bgColor;
-                       dialog.callHandler();
-                       return false;
-               };
-               var colorUnset = dialog.doc.getElementById("colorUnset");
-               colorUnset.onclick = function(e) {
-                       dialog.doc.getElementById(button_id).value = "";
-                       dialog.callHandler();
-                       return false;
-               };
-               dialog.doc.getElementById(button_id+"Current").style.backgroundColor = "";
-               dialog.showAtElement();
-       });
-};
-
-/*
- * Set the color and close the case=color select color dialog
- */
-SelectColor.setColorTag = function(instance,field) {
-       return (function(dialog,params) {
-               dialog.releaseEvents();
-               field._return(params["tag"]);
-               dialog.close();
-               field.dialog = null;
-       });
-};
-
-// Applies the style found in "params" to the given element.
-SelectColor.prototype.processStyle = function(dialog, params, element, field) {
-       var editor = this.editor;
-       for (var i in params) {
-               var val = params[i];
-               switch (i) {
-                       case "CO-forecolor":
-                               if(val) {
-                                       editor._doc.execCommand("ForeColor", false, val);
-                               } else {
-                                       var parentElement = editor.getParentElement();
-                                       parentElement.style.color = "";
-                               }
-                               break;
-                       case "CO-hilitecolor":
-                               if(val) {
-                                       if(HTMLArea.is_ie || HTMLArea.is_safari) editor._doc.execCommand("BackColor", false, val);
-                                               else editor._doc.execCommand("HiliteColor", false, val);
-                               } else {
-                                       var parentElement = editor.getParentElement();
-                                       parentElement.style.backgroundColor = "";
-                               }
-                               break;
-                       case "color":
-                               element.style.backgroundColor = val;
-                               field.value = val;
-                               break;
-               }
-       }
-};
-
-/**
- * Making color selector table
- */
-SelectColor.prototype.renderPopupSelectColor = function(sID,dialog,title) {
-       var editor = this.editor;
-       var cfg = editor.config;
-       var cfgColors = cfg.colors;
-       var colorDef;
-       var szID = sID + "Current";
-       var sz;
-       var cPick = new Array("00","33","66","99","CC","FF");
-       var iColors = cPick.length;
-       var szColor = "";
-       var szColorId = "";
-
-       sz = '<div class="title">' + title + '</div>';
-       sz += '<table style="width:100%"><tr><td id="HA-layout"><fieldset>';
-       sz += '<input type="hidden" name="' + sID + '" id="' + sID + '" value="" />';
-       sz += '<table style="width:100%;"><tr><td style="vertical-align: middle;"><span style="margin-left: 5px; height: 1em;" class="dialog buttonColor" ';
-       sz += '         onMouseover="className += \' buttonColor-hilite\';" ';
-       sz += '         onMouseout="className = \'buttonColor\';"> ';
-       sz += ' <span id="' + szID + '" class="chooser"></span> ';
-       sz += ' <span id="colorUnset" class="nocolor" title="' + SelectColor.I18N["no_color"] + '" ';
-       sz += '         onMouseover="className += \' nocolor-hilite\';" ';
-       sz += '         onMouseout="className = \'nocolor\';"';
-       sz += ' >&#x00d7;</span></span></td><td>';
-       sz += '<table ';
-       sz += ' onMouseout="document.getElementById(\'' + szID + '\').style.backgroundColor=\'\';" ';
-       sz += ' onMouseover="if(' + HTMLArea.is_ie + '){ if(event.srcElement.bgColor) document.getElementById(\'' + szID + '\').style.backgroundColor=event.srcElement.bgColor; } else { if (event.target.bgColor) document.getElementById(\'' + szID + '\').style.backgroundColor=event.target.bgColor; }" ';
-       sz += ' class="colorTable" cellspacing="0" cellpadding="0" id="colorTable">';
-               // Making colorPicker
-       if (!cfg.disableColorPicker) {
-               for ( var r = 0; r < iColors; r++) {
-                       sz+='<tr>';
-                       for (var g = iColors-1; g >= 0; g--) {
-                               for (var b=iColors-1;b>=0;b--) {
-                                       szColor = cPick[r]+cPick[g]+cPick[b];
-                                       sz+='<td bgcolor="#'+szColor+'" title="#'+szColor+'">&nbsp;</td>';
-                               }
-                       }
-                       sz+='</tr>';
-               }
-       }
-
-               // Making specific color selector:
-       if (cfgColors) {
-               var iCfgColors = cfgColors.length;
-               if (iCfgColors && !cfg.disableColorPicker) {
-                       sz += '<tr><td colspan="36"></td></tr>';
-               }
-               for ( var theColor = 0; theColor < iCfgColors; theColor++) {
-                       colorDef = cfgColors[theColor];
-                       szColor = colorDef[1];
-                       sz += '<tr>';
-                       sz += '<td style="width:36px;" colspan="6" bgcolor="'+szColor+'" title="'+szColor+'">&nbsp;</td>';
-                       sz += '<td colspan=2></td>';
-                       sz += '<td colspan=28><nobr>'+colorDef[0]+'</nobr></td>';
-                       sz += '</tr>';
-               }
-       }
-
-       sz += '</table></td></tr></table>';
-       sz += '</fieldset></td></tr><tr><td id="HA-style"></td></tr></table>';
-       return sz;
-};
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/typo3browsers.js b/typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Browsers/typo3browsers.js
deleted file mode 100644 (file)
index 7b4d30f..0000000
+++ /dev/null
@@ -1,277 +0,0 @@
-/***************************************************************
-*  Copyright notice
-*
-*  (c) 2005, 2006 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
-*  All rights reserved
-*
-*  This script is part of the TYPO3 project. The TYPO3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license
-*  from the author is found in LICENSE.txt distributed with these scripts.
-*
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-/**
- * TYPO3 Image & Link Browsers Plugin for TYPO3 htmlArea RTE
- *
- * TYPO3 SVN ID: $Id$
- */
-
-TYPO3Browsers = function(editor,args) {
-       this.editor = editor;
-       var cfg = this.editor.config;
-       cfg.btnList.CreateLink[1] = this.editor.imgURL("ed_link.gif", "TYPO3Browsers");
-};
-
-TYPO3Browsers.I18N = TYPO3Browsers_langArray;
-
-TYPO3Browsers._pluginInfo = {
-       name            : "TYPO3Browsers",
-       version         : "1.7",
-       developer       : "Stanislas Rolland",
-       developer_url   : "http://www.fructifor.ca/",
-       c_owner         : "Stanislas Rolland",
-       sponsor         : "Fructifor Inc.",
-       sponsor_url     : "http://www.fructifor.ca/",
-       license         : "GPL"
-};
-
-/*
- *  CreateLink: Typo3-RTE function, use this instead of the original.
- */
-HTMLArea.prototype.renderPopup_link = function() {
-       var editorNumber = this._editorNumber,
-               addUrlParams = "?" + RTEarea[editorNumber]["RTEtsConfigParams"],
-               backreturn,
-               sel = this.getParentElement();
-
-               // Download the definition of special anchor classes if not yet done
-       if(RTEarea[editorNumber]["classesAnchorUrl"] && !this.classesAnchorSetup) {
-               var classesAnchorData = HTMLArea._getScript(0, false, RTEarea[editorNumber]["classesAnchorUrl"]);
-               var editor = this;
-               if(classesAnchorData) eval(classesAnchorData);
-               editor = null;
-       }
-
-       var el = HTMLArea.getElementObject(sel,"a");
-       if (el != null && el.tagName && el.tagName.toLowerCase() == "a") sel = el;
-       if (sel != null && sel.tagName && sel.tagName.toLowerCase() == "a") {
-               addUrlParams = "?curUrl[href]=" + encodeURIComponent(sel.getAttribute("href"));
-               addUrlParams += "&curUrl[typo3ContentLanguage]=" + RTEarea[editorNumber]["typo3ContentLanguage"];
-               addUrlParams += "&curUrl[typo3ContentCharset]=" + RTEarea[editorNumber]["typo3ContentCharset"];
-               if (sel.target) addUrlParams += "&curUrl[target]=" + encodeURIComponent(sel.target);
-               if (sel.className) addUrlParams += "&curUrl[class]=" + encodeURIComponent(sel.className);
-               if (sel.title) addUrlParams += "&curUrl[title]=" + encodeURIComponent(sel.title);
-               addUrlParams += RTEarea[editorNumber]["RTEtsConfigParams"];
-       } else if (this.hasSelectedText()) {
-               var text = this.getSelectedHTML();
-               if (text && text != null) {
-                       var offset = text.toLowerCase().indexOf("<a");
-                       if (offset!=-1) {
-                               var ATagContent = text.substring(offset+2);
-                               offset = ATagContent.toUpperCase().indexOf(">");
-                               ATagContent = ATagContent.substring(0,offset);
-                               addUrlParams = "?curUrl[all]=" + encodeURIComponent(ATagContent);
-                               addUrlParams += RTEarea[editorNumber]["RTEtsConfigParams"];
-                       }
-               }
-       }
-       this._popupDialog(RTEarea[0]["pathLinkModule"] + addUrlParams + "&editorNo=" + editorNumber + "&typo3ContentLanguage=" + RTEarea[editorNumber]["typo3ContentLanguage"] + "&typo3ContentCharset=" + encodeURIComponent(RTEarea[editorNumber]["typo3ContentCharset"]), null, backreturn, 550, 350, null, "yes");
-       return false;
-};
-
-/*
- * Add a link to the selection.
- * This function is called from the TYPO3 link popup.
- */
-HTMLArea.prototype.renderPopup_addLink = function(theLink,cur_target,cur_class,cur_title) {
-       var a, sel = null, range = null, node = null, imageNode = null;
-       this.focusEditor();
-       node = this.getParentElement();
-       var el = HTMLArea.getElementObject(node,"a");
-       if (el != null && el.tagName && el.tagName.toLowerCase() == "a") node = el;
-       if (node != null && node.tagName && node.tagName.toLowerCase() == "a") this.selectNode(node);
-               // Clean images from existing anchors otherwise Mozilla may create nested anchors
-       if (this.classesAnchorSetup) {
-               sel = this._getSelection();
-               range = this._createRange(sel);
-               this.cleanAllLinks(node, range, true);
-       }
-
-       this._doc.execCommand("CreateLink", false, theLink);
-
-       sel = this._getSelection();
-       range = this._createRange(sel);
-       node = this.getParentElement();
-       var el = HTMLArea.getElementObject(node,"a");
-       if (el != null && el.tagName && el.tagName.toLowerCase() == "a") node = el;
-       if (node) {
-               if (this.classesAnchorSetup && cur_class) {
-                       for (var i = this.classesAnchorSetup.length; --i >= 0;) {
-                               var anchorClass = this.classesAnchorSetup[i];
-                               if(anchorClass['name'] == cur_class && anchorClass["image"]) {
-                                       imageNode = this._doc.createElement("img");
-                                       imageNode.src = anchorClass["image"];
-                                       imageNode.alt = anchorClass["altText"];
-                                       break;
-                               }
-                       }
-               }
-                       // We may have created multiple links in as many blocks
-               this.setLinkAttributes(node, range, cur_target, cur_class, cur_title, imageNode);
-       }
-
-       Dialog._modal.close();
-       this.updateToolbar();
-};
-
-/*
- * Set attributes of anchors intersecting a range in the given node
- */
-HTMLArea.prototype.setLinkAttributes = function(node,range,cur_target,cur_class,cur_title,imageNode) {
-       if (node.tagName && node.tagName.toLowerCase() == "a") {
-               var nodeInRange = false;
-               if (HTMLArea.is_gecko) {
-                       nodeInRange = this.rangeIntersectsNode(range, node);
-               } else {
-                       if (this._getSelection().type.toLowerCase() == "control") {
-                                       // we assume an image is selected
-                               nodeInRange = true;
-                       } else {
-                               var nodeRange = this._doc.body.createTextRange();
-                               nodeRange.moveToElementText(node);
-                               nodeInRange = range.inRange(nodeRange) || (range.compareEndPoints("StartToStart", nodeRange) == 0) || (range.compareEndPoints("EndToEnd", nodeRange) == 0);
-                       }
-               }
-               if (nodeInRange) {
-                       if (imageNode != null) node.insertBefore(imageNode.cloneNode(false), node.firstChild);
-                       if (cur_target.trim()) node.target = cur_target.trim();
-                               else node.removeAttribute("target");
-                       if (cur_class.trim()) {
-                               node.className = cur_class.trim();
-                       } else {
-                               if (HTMLArea.is_gecko) node.removeAttribute('class');
-                                       else node.removeAttribute('className');
-                       }
-                       if (cur_title.trim()) {
-                               node.title = cur_title.trim();
-                       } else {
-                               node.removeAttribute("title");
-                               node.removeAttribute("rtekeep");
-                       }
-               }
-       } else {
-               for (var i = node.firstChild;i;i = i.nextSibling) {
-                       if (i.nodeType == 1 || i.nodeType == 11) this.setLinkAttributes(i, range, cur_target, cur_class, cur_title, imageNode);
-               }
-       }
-};
-
-/*
- * Clean up images in special anchor classes
- */
-HTMLArea.prototype.cleanClassesAnchorImages = function(node) {
-       var nodeArray = [], splitArray1 = [], splitArray2 = [];
-       for (var childNode = node.firstChild; childNode; childNode = childNode.nextSibling) {
-               if (childNode.tagName && childNode.tagName.toLowerCase() == "img") {
-                       splitArray1 = childNode.src.split("/");
-                       for (var i = this.classesAnchorSetup.length; --i >= 0;) {
-                               if (this.classesAnchorSetup[i]["image"]) {
-                                       splitArray2 = this.classesAnchorSetup[i]["image"].split("/");
-                                       if (splitArray1[splitArray1.length-1] == splitArray2[splitArray2.length-1]) {
-                                               nodeArray.push(childNode);
-                                               break;
-                                       }
-                               }
-                       }
-               }
-       }
-       for (i = nodeArray.length; --i >= 0;) {
-               node.removeChild(nodeArray[i]);
-       }
-};
-
-/*
- * Clean up all anchors intesecting with the range in the given node
- */
- HTMLArea.prototype.cleanAllLinks = function(node,range,keepLinks) {
-       if (node.tagName && node.tagName.toLowerCase() == "a") {
-               var intersection = false;
-               if (HTMLArea.is_gecko) {
-                       intersection = this.rangeIntersectsNode(range, node);
-               } else {
-                       if (this._getSelection().type.toLowerCase() == "control") {
-                                       // we assume an image is selected
-                               intersection = true;
-                       } else {
-                               var nodeRange = this._doc.body.createTextRange();
-                               nodeRange.moveToElementText(node);
-                               intersection = range.inRange(nodeRange) || ((range.compareEndPoints("StartToStart", nodeRange) > 0) && (range.compareEndPoints("StartToEnd", nodeRange) < 0)) || ((range.compareEndPoints("EndToStart", nodeRange) > 0) && (range.compareEndPoints("EndToEnd", nodeRange) < 0));
-                       }
-               }
-               if (intersection) {
-                       this.cleanClassesAnchorImages(node);
-                       if (!keepLinks) {
-                               while(node.firstChild) node.parentNode.insertBefore(node.firstChild, node);
-                               node.parentNode.removeChild(node);
-                       }
-               }
-       } else {
-               for (var i = node.firstChild;i;i = i.nextSibling) {
-                       if (i.nodeType == 1 || i.nodeType == 11) this.cleanAllLinks(i, range, keepLinks);
-               }
-       }
-};
-
-/*
- * Unlink the selection.
- * This function is called from the TYPO3 link popup and from the context menu.
- */
-HTMLArea.prototype.renderPopup_unLink = function() {
-       this.focusEditor();
-       var node = this.getParentElement();
-       var el = HTMLArea.getElementObject(node,"a");
-       if (el != null && el.tagName && el.tagName.toLowerCase() == "a") node = el;
-       if (node != null && node.tagName && node.tagName.toLowerCase() == "a") this.selectNode(node);
-       if (this.classesAnchorSetup) {
-               var sel = this._getSelection();
-               var range = this._createRange(sel);
-               if (HTMLArea.is_gecko) {
-                       this.cleanAllLinks(node, range, false);
-               } else {
-                       this.cleanAllLinks(node, range, true);
-                       this._doc.execCommand("Unlink", false, "");
-               }
-
-       } else {
-               this._doc.execCommand("Unlink", false, "");
-       }
-       if(Dialog._modal) Dialog._modal.close();
-};
-
-/*
- * IE-Browsers strip URL's to relative URL's. But for the TYPO3 backend we need absolute URL's.
- * This function overloads the normal stripBaseURL-function (which generate relative URLs).
- */
-HTMLArea.prototype.nonStripBaseURL = function(url) {
-       return url;
-};
-
-TYPO3Browsers.prototype.onGenerate = function() {
-       var editor = this.editor;
-       //editor._insertImage = editor.renderPopup_image;
-       editor._createLink = editor.renderPopup_link;
-       editor.stripBaseURL = editor.nonStripBaseURL;
-};
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/plugins/TableOperations/popups/insert_table.html b/typo3/sysext/rtehtmlarea/htmlarea/plugins/TableOperations/popups/insert_table.html
deleted file mode 100644 (file)
index d4fbe86..0000000
+++ /dev/null
@@ -1,218 +0,0 @@
-<html class="popupwin">
-<!--
-/***************************************************************
-*  Copyright notice
-*
-*  (c) 2002-2004, interactivetools.com, inc.
-*  (c) 2003-2004 dynarch.com
-*  (c) 2004-2008 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
-*  All rights reserved
-*
-*  This script is part of the TYPO3 project. The TYPO3 project is
-*  free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 2 of the License, or
-*  (at your option) any later version.
-*
-*  The GNU General Public License can be found at
-*  http://www.gnu.org/copyleft/gpl.html.
-*  A copy is found in the textfile GPL.txt and important notices to the license
-*  from the author is found in LICENSE.txt distributed with these scripts.
-*
-*
-*  This script is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  This script is a modified version of a script published under the htmlArea License.
-*  A copy of the htmlArea License may be found in the textfile HTMLAREA_LICENSE.txt.
-*
-*  This copyright notice MUST APPEAR in all copies of the script!
-***************************************************************/
-/*
- * Insert Table window for TYPO3 htmlArea RTE
- *
- * TYPO3 SVN ID: $Id$
- */
--->
-<head>
-       <title>Insert Table</title>
-       <meta http-equiv="Content-Style-Type" content="text/css" />
-       <script type="text/javascript">
-               /*<![CDATA[*/
-               <!--
-               var dialog = window.opener.HTMLArea.Dialog.TableOperations;
-               var plugin;
-               
-               function Init() {
-                       dialog.initialize("noLocalize", "noResize");
-                       plugin = dialog.plugin;
-                       var content = document.getElementById("content");
-                       buildTitle(content, "Insert Table");
-                       var form = document.createElement("form");
-                       form.action = "";
-                       form.method = "get";
-                       buildDimensionFieldset(form);
-                       if (!plugin.editorConfiguration.disableBordersFieldsetInTableOperations) buildBordersFieldset(form);
-                       if (!plugin.editorConfiguration.disableSpacingFieldsetInTableOperations) buildSpacingFieldset(form);
-                       addButtons(form, ["ok","cancel"], ["OK","Cancel"]);
-                       content.appendChild(form);
-                       dialog.localize();
-                       dialog.resize();
-                       document.getElementById("f_rows").focus();
-               };
-               function onOK() {
-                       var required = { "f_rows": "", "f_cols": "" };
-                       required["f_rows"] = plugin.localize("You must enter a number of rows");
-                       required["f_cols"] =  plugin.localize("You must enter a number of columns");
-                       for (var i in required) {
-                               var el = document.getElementById(i);
-                               if (!el.value) {
-                                       alert(required[i]);
-                                       el.focus();
-                                       return false;
-                               }
-                       }
-                       var fields = ["f_rows", "f_cols", "f_width", "f_unit", "f_border", "f_spacing", "f_padding", "f_float"];
-                       var param = new Object();
-                       for (var i in fields) {
-                               var id = fields[i];
-                               var el = document.getElementById(id);
-                               if(el) param[id] = el.value;
-                       }
-                       dialog.performAction(param);
-                       dialog.close();
-                       return false;
-               };
-               function onCancel() {
-                       dialog.close();
-                       return false;
-               };
-               function buildTitle(content,title) {
-                       var div = document.createElement("div");
-                       div.className = "title";
-                       div.innerHTML = dialog.plugin.localize(title);
-                       content.appendChild(div);
-               };
-               function buildDimensionFieldset(content) {
-                       var fieldset = document.createElement("fieldset");
-                       insertLegend(fieldset, "Dimension");
-                       buildInput(fieldset, "f_rows", ["Rows:"], ["Number of rows"], "5", "2");
-                       buildInput(fieldset, "f_cols", ["Cols:"], ["Number of columns"], "5", "4");
-                       if (!plugin.editorConfiguration.disableLayoutFieldsetInTableOperations) {
-                               buildInput(fieldset, "f_width", ["Width:"], ["Width of the table"], "5", "100");
-                               buildUnitField(fieldset);
-                       }
-                       content.appendChild(fieldset);
-               };
-               function buildBordersFieldset(content) {
-                       var fieldset = document.createElement("fieldset");
-                       fieldset.className = "floating";
-                       insertLegend(fieldset, "Border");
-                       var ul = document.createElement("ul");
-                       fieldset.appendChild(ul);
-                       var li = document.createElement("li");
-                       ul.appendChild(li);
-                       buildInput(li, "f_border", ["Border thickness:"], ["Leave empty for no border"], "5", "1", "fl", "");
-                       content.appendChild(fieldset);
-               };
-               function buildSpacingFieldset(content) {
-                       var fieldset = document.createElement("fieldset");
-                       insertLegend(fieldset, "Spacing and padding");
-                       var ul = document.createElement("ul");
-                       fieldset.appendChild(ul);
-                       var li = document.createElement("li");
-                       ul.appendChild(li);
-                       buildInput(li, "f_spacing", ["Cell spacing:"], ["Space between adjacent cells"], "5", "1", "fr", "");
-                       var li = document.createElement("li");
-                       ul.appendChild(li);
-                       buildInput(li, "f_padding", ["Cell padding:"], ["Space between content and border in cell"], "5", "1", "fr", "");
-                       content.appendChild(fieldset);
-               };
-               function buildUnitField(fieldset) {
-                               // Unit Select Box
-                       var select = document.createElement("select");
-                       select.id = "f_unit";
-                       select.name =  "f_unit";
-                       select.title= "Width unit";
-                       buildSelect(select, ["Percent", "Pixels", "Em"], ["%", "px", "em"], new RegExp("%", "i"));
-                       fieldset.appendChild(select);
-               };
-               function buildTableFloatField(fieldset) {
-                               // Table Float Label
-                       var label = document.createElement("label");
-                       label.className = "fl";
-                       label.innerHTML = "Float:";
-                       label.htmlFor = "f_float";
-                       fieldset.appendChild(label);
-                               // Table Float Select Box
-                       var select = document.createElement("select");
-                       select.id = "f_float";
-                       select.name =  "f_float";
-                       select.title= "Where the table should float";
-                       buildSelect(select, ["Not set", "Non-floating", "Left", "Right"], ["not set", "none", "left", "right"], new RegExp("not set", "i"));
-                       fieldset.appendChild(select);
-               };
-               function insertLegend(fieldset,legend) {
-                       var legendNode = document.createElement("legend");
-                       legendNode.innerHTML = legend;
-                       fieldset.appendChild(legendNode);
-               };
-               function buildInput(fieldset,fieldName,fieldLabel,fieldTitle, fieldSize, fieldValue, labelClass, inputClass) {
-                               // Field label
-                       var label = document.createElement("label");
-                       if(labelClass) label.className = labelClass;
-                       label.innerHTML = fieldLabel;
-                       label.htmlFor = fieldName;
-                       fieldset.appendChild(label);
-                               // Input field
-                       var input = document.createElement("input");
-                       input.type = "text";
-                       input.id = fieldName;
-                       input.name =  fieldName;
-                       if(inputClass) input.className = inputClass;
-                       input.title = fieldTitle;
-                       input.size = fieldSize;
-                       input.value = fieldValue;
-                       fieldset.appendChild(input);
-               };
-               function buildSelect(select,options,values,selected) {
-                       var option;
-                       for (var i = 0; i < options.length; ++i) {
-                               option = document.createElement("option");
-                               option.value = values[i];
-                               option.innerHTML = options[i];
-                               option.selected = selected.test(option.value);
-                               select.appendChild(option);
-                       }
-               };
-               function addButtons(content,buttons,labels) {
-                       var space = document.createElement("div");
-                       space.className = "space";
-                       content.appendChild(space);
-                       var div = document.createElement("div");
-                       content.appendChild(div);
-                       div.className = "buttons";
-                       for (var i = 0; i < buttons.length; ++i) {
-                               var button = document.createElement("button");
-                               button.innerHTML = labels[i];
-                               switch (buttons[i]) {
-                                       case "ok":
-                                               button.onclick = onOK;
-                                               break;
-                                       case "cancel":
-                                               button.onclick = onCancel;
-                                               break;
-                               }
-                               div.appendChild(button);
-                       }
-               };
-               // -->
-               /*]]>*/
-       </script>
-</head>
-<body class="popupwin" onload="Init();">
-<div id="content"></div>
-</body>
-</html>
index 329dee9..ecc76bc 100644 (file)
@@ -98,8 +98,6 @@
 .htmlarea .toolbar .InsertUnorderedList {background-image:url("images/ed_list_bullet.gif");}
 .htmlarea .toolbar .ForeColor {background-image:url("images/ed_color_fg.gif");}
 .htmlarea .toolbar .HiliteColor {background-image:url("images/ed_color_bg.gif");}
-.htmlarea .toolbar .CO-forecolor {background-image:url("images/SelectColor/CO-forecolor.gif");}
-.htmlarea .toolbar .CO-hilitecolor {background-image:url("images/SelectColor/CO-hilitecolor.gif");}
 .htmlarea .toolbar .InsertSmiley {background-image:url("images/InsertSmiley/ed_smiley.gif");}
 .htmlarea .toolbar .InsertCharacter {background-image:url("images/CharacterMap/ed_charmap.gif");}
 .htmlarea .toolbar .InsertHorizontalRule {background-image:url("images/ed_hr.gif");}
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-forecolor.gif b/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-forecolor.gif
deleted file mode 100644 (file)
index b563549..0000000
Binary files a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-forecolor.gif and /dev/null differ
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-hilitecolor.gif b/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-hilitecolor.gif
deleted file mode 100644 (file)
index f47f992..0000000
Binary files a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/SelectColor/CO-hilitecolor.gif and /dev/null differ
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_image.gif b/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_image.gif
deleted file mode 100644 (file)
index f32a4a7..0000000
Binary files a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_image.gif and /dev/null differ
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_link.gif b/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_link.gif
deleted file mode 100644 (file)
index a1ae562..0000000
Binary files a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_link.gif and /dev/null differ
diff --git a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_unlink.gif b/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_unlink.gif
deleted file mode 100644 (file)
index 26f7f4f..0000000
Binary files a/typo3/sysext/rtehtmlarea/htmlarea/skins/default/images/TYPO3Browsers/ed_unlink.gif and /dev/null differ
index b39e9ba..91e756a 100644 (file)
 .htmlarea .toolbar .InsertUnorderedList {background-image:url("images/ed_list_bullet.gif");}
 .htmlarea .toolbar .ForeColor {background-image:url("images/ed_color_fg.gif");}
 .htmlarea .toolbar .HiliteColor {background-image:url("images/ed_color_bg.gif");}
-.htmlarea .toolbar .CO-forecolor {background-image:url("images/SelectColor/CO-forecolor.gif");}
-.htmlarea .toolbar .CO-hilitecolor {background-image:url("images/SelectColor/CO-hilitecolor.gif");}
 .htmlarea .toolbar .InsertSmiley {background-image:url("images/InsertSmiley/ed_smiley.gif");}
 .htmlarea .toolbar .InsertCharacter {background-image:url("images/CharacterMap/ed_charmap.gif");}
 .htmlarea .toolbar .InsertHorizontalRule {background-image:url("images/ed_hr.gif");}
diff --git a/typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-forecolor.gif b/typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-forecolor.gif
deleted file mode 100644 (file)
index b563549..0000000
Binary files a/typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-forecolor.gif and /dev/null differ
diff --git a/typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-hilitecolor.gif b/typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-hilitecolor.gif
deleted file mode 100644 (file)
index f47f992..0000000
Binary files a/typo3/sysext/t3skin/rtehtmlarea/images/SelectColor/CO-hilitecolor.gif and /dev/null differ
diff --git a/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_image.gif b/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_image.gif
deleted file mode 100644 (file)
index f32a4a7..0000000
Binary files a/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_image.gif and /dev/null differ
diff --git a/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_link.gif b/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_link.gif
deleted file mode 100644 (file)
index a1ae562..0000000
Binary files a/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_link.gif and /dev/null differ
diff --git a/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_unlink.gif b/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_unlink.gif
deleted file mode 100644 (file)
index 26f7f4f..0000000
Binary files a/typo3/sysext/t3skin/rtehtmlarea/images/TYPO3Browsers/ed_unlink.gif and /dev/null differ