Index: typo3/sysext/rtehtmlarea/htmlarea/htmlarea.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/htmlarea.js (révision 7299) +++ typo3/sysext/rtehtmlarea/htmlarea/htmlarea.js (copie de travail) @@ -2502,6 +2502,46 @@ } }, /* + * Instantiate the specified plugin and register it with the editor + * + * @param string plugin: the name of the plugin + * + * @return boolean true if the plugin was successfully registered + */ + registerPlugin: function (pluginName) { + var plugin = null; + if (Ext.isString(pluginName)) { + /******************************************************************************* + * USE OF PLUGIN NAME OUTSIDE HTMLArea NAMESPACE IS DEPRECATED AS OF TYPO3 4.4 * + *******************************************************************************/ + try { + plugin = eval(pluginName); + } catch (e) { + try { + plugin = eval('HTMLArea.' + pluginName); + } catch (error) { + HTMLArea._appendToLog('ERROR [HTMLArea.Editor::registerPlugin]: Cannot register invalid plugin: ' + error); + return false; + } + } + } + if (!Ext.isFunction(plugin)) { + HTMLArea._appendToLog('ERROR [HTMLArea.Editor::registerPlugin]: Cannot register undefined plugin.'); + return false; + } + var pluginInstance = new plugin(this, pluginName); + if (pluginInstance) { + var pluginInformation = pluginInstance.getPluginInformation(); + pluginInformation.instance = pluginInstance; + this.plugins[pluginName] = pluginInformation; + HTMLArea._appendToLog('[HTMLArea.Editor::registerPlugin]: Plugin ' + pluginName + ' was successfully registered.'); + return true; + } else { + HTMLArea._appendToLog("ERROR [HTMLArea.Editor::registerPlugin]: Can't register plugin " + pluginName + '.'); + return false; + } + }, + /* * Generate registered plugins */ generatePlugins: function () { @@ -2674,46 +2714,7 @@ } } }(); -/*************************************************** - * PLUGINS, STYLESHEETS, AND IMAGE AND POPUP URL'S - ***************************************************/ /* - * Instantiate the specified plugin and register it with the editor - * - * @param string plugin: the name of the plugin - * - * @return boolean true if the plugin was successfully registered - */ -HTMLArea.Editor.prototype.registerPlugin = function(plugin) { - var pluginName = plugin; - if (typeof(plugin) === "string") { - try { - var plugin = eval(plugin); - } catch(e) { - HTMLArea._appendToLog("ERROR [HTMLArea::registerPlugin]: Cannot register invalid plugin: " + e); - return false; - } - } - if (typeof(plugin) !== "function") { - HTMLArea._appendToLog("ERROR [HTMLArea::registerPlugin]: Cannot register undefined plugin."); - return false; - } - var pluginInstance = new plugin(this, pluginName); - if (pluginInstance) { - var pluginInformation = plugin._pluginInfo; - if(!pluginInformation) { - pluginInformation = pluginInstance.getPluginInformation(); - } - pluginInformation.instance = pluginInstance; - this.plugins[pluginName] = pluginInformation; - HTMLArea._appendToLog("[HTMLArea::registerPlugin]: Plugin " + pluginName + " was successfully registered."); - return true; - } else { - HTMLArea._appendToLog("ERROR [HTMLArea::registerPlugin]: Can't register plugin " + pluginName + "."); - return false; - } -}; -/* * Load a stylesheet file *********************************************** * THIS FUNCTION IS DEPRECATED AS OF TYPO3 4.4 * Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/AboutEditor/about-editor.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/AboutEditor/about-editor.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/AboutEditor/about-editor.js (copie de travail) @@ -31,7 +31,7 @@ * * TYPO3 SVN ID: $Id$ */ -AboutEditor = HTMLArea.Plugin.extend({ +HTMLArea.AboutEditor = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/Acronym/acronym.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/Acronym/acronym.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/Acronym/acronym.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -Acronym = HTMLArea.Plugin.extend({ +HTMLArea.Acronym = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/BlockElements/block-elements.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/BlockElements/block-elements.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/BlockElements/block-elements.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -BlockElements = HTMLArea.Plugin.extend({ +HTMLArea.BlockElements = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/BlockStyle/block-style.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/BlockStyle/block-style.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/BlockStyle/block-style.js (copie de travail) @@ -31,7 +31,7 @@ * * TYPO3 SVN ID: $Id$ */ -BlockStyle = HTMLArea.Plugin.extend({ +HTMLArea.BlockStyle = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/CharacterMap/character-map.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/CharacterMap/character-map.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/CharacterMap/character-map.js (copie de travail) @@ -33,7 +33,7 @@ * * TYPO3 SVN ID: $Id$ */ -CharacterMap = HTMLArea.Plugin.extend({ +HTMLArea.CharacterMap = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/ContextMenu/context-menu.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/ContextMenu/context-menu.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/ContextMenu/context-menu.js (copie de travail) @@ -32,7 +32,7 @@ * * TYPO3 SVN ID: $Id$ */ -ContextMenu = HTMLArea.Plugin.extend({ +HTMLArea.ContextMenu = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/CopyPaste/copy-paste.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/CopyPaste/copy-paste.js (révision 7299) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/CopyPaste/copy-paste.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -CopyPaste = HTMLArea.Plugin.extend({ +HTMLArea.CopyPaste = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultClean/default-clean.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultClean/default-clean.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultClean/default-clean.js (copie de travail) @@ -28,7 +28,7 @@ * * TYPO3 SVN ID: $Id$ */ -DefaultClean = HTMLArea.Plugin.extend({ +HTMLArea.DefaultClean = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultImage/default-image.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultImage/default-image.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultImage/default-image.js (copie de travail) @@ -31,7 +31,7 @@ * * TYPO3 SVN ID: $Id$ */ -DefaultImage = HTMLArea.Plugin.extend({ +HTMLArea.DefaultImage = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultInline/default-inline.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultInline/default-inline.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultInline/default-inline.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -DefaultInline = HTMLArea.Plugin.extend({ +HTMLArea.DefaultInline = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultLink/default-link.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultLink/default-link.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/DefaultLink/default-link.js (copie de travail) @@ -31,7 +31,7 @@ * * TYPO3 SVN ID: $Id$ */ -DefaultLink = HTMLArea.Plugin.extend({ +HTMLArea.DefaultLink = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/DefinitionList/definition-list.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/DefinitionList/definition-list.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/DefinitionList/definition-list.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -DefinitionList = BlockElements.extend({ +HTMLArea.DefinitionList = HTMLArea.BlockElements.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/EditorMode/editor-mode.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/EditorMode/editor-mode.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/EditorMode/editor-mode.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -EditorMode = HTMLArea.Plugin.extend({ +HTMLArea.EditorMode = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/FindReplace/find-replace.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/FindReplace/find-replace.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/FindReplace/find-replace.js (copie de travail) @@ -32,7 +32,7 @@ * * TYPO3 SVN ID: $Id$ */ -FindReplace = HTMLArea.Plugin.extend({ +HTMLArea.FindReplace = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/InlineElements/inline-elements.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/InlineElements/inline-elements.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/InlineElements/inline-elements.js (copie de travail) @@ -32,7 +32,7 @@ /* * Creation of the class of InlineElements plugins */ -InlineElements = HTMLArea.Plugin.extend({ +HTMLArea.InlineElements = HTMLArea.Plugin.extend({ /* * Let the base class do some initialization work */ Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/InsertSmiley/insert-smiley.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/InsertSmiley/insert-smiley.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/InsertSmiley/insert-smiley.js (copie de travail) @@ -33,7 +33,7 @@ * TYPO3 SVN ID: $Id$ */ -InsertSmiley = HTMLArea.Plugin.extend({ +HTMLArea.InsertSmiley = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/Language/language.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/Language/language.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/Language/language.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -Language = HTMLArea.Plugin.extend({ +HTMLArea.Language = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/QuickTag/quick-tag.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/QuickTag/quick-tag.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/QuickTag/quick-tag.js (copie de travail) @@ -32,7 +32,7 @@ * * TYPO3 SVN ID: $Id$ */ -QuickTag = HTMLArea.Plugin.extend({ +HTMLArea.QuickTag = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/RemoveFormat/remove-format.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/RemoveFormat/remove-format.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/RemoveFormat/remove-format.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -RemoveFormat = HTMLArea.Plugin.extend({ +HTMLArea.RemoveFormat = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/SelectFont/select-font.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/SelectFont/select-font.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/SelectFont/select-font.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -SelectFont = HTMLArea.Plugin.extend({ +HTMLArea.SelectFont = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/SpellChecker/spell-checker.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/SpellChecker/spell-checker.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/SpellChecker/spell-checker.js (copie de travail) @@ -32,7 +32,7 @@ * * TYPO3 SVN ID: $Id$ */ -SpellChecker = HTMLArea.Plugin.extend({ +HTMLArea.SpellChecker = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/TableOperations/table-operations.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/TableOperations/table-operations.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/TableOperations/table-operations.js (copie de travail) @@ -33,7 +33,7 @@ * * TYPO3 SVN ID: $Id$ */ -TableOperations = HTMLArea.Plugin.extend({ +HTMLArea.TableOperations = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/TextIndicator/text-indicator.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/TextIndicator/text-indicator.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/TextIndicator/text-indicator.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id: text-indicator.js 6539 2009-11-25 14:49:14Z stucki $ */ -TextIndicator = HTMLArea.Plugin.extend({ +HTMLArea.TextIndicator = HTMLArea.Plugin.extend({ constructor : function(editor, pluginName) { this.base(editor, pluginName); Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/TextStyle/text-style.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/TextStyle/text-style.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/TextStyle/text-style.js (copie de travail) @@ -32,7 +32,7 @@ /* * Creation of the class of TextStyle plugins */ -TextStyle = HTMLArea.Plugin.extend({ +HTMLArea.TextStyle = HTMLArea.Plugin.extend({ /* * Let the base class do some initialization work */ Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Color/typo3color.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Color/typo3color.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Color/typo3color.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -TYPO3Color = HTMLArea.Plugin.extend({ +HTMLArea.TYPO3Color = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3HtmlParser/typo3html-parser.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3HtmlParser/typo3html-parser.js (révision 7299) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3HtmlParser/typo3html-parser.js (copie de travail) @@ -28,7 +28,7 @@ * * TYPO3 SVN ID: $Id$ */ -TYPO3HtmlParser = HTMLArea.Plugin.extend({ +HTMLArea.TYPO3HtmlParser = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Image/typo3image.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Image/typo3image.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Image/typo3image.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -TYPO3Image = HTMLArea.Plugin.extend({ +HTMLArea.TYPO3Image = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/TYPO3Link/typo3link.js (copie de travail) @@ -29,7 +29,7 @@ * * TYPO3 SVN ID: $Id$ */ -TYPO3Link = HTMLArea.Plugin.extend({ +HTMLArea.TYPO3Link = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/UndoRedo/undo-redo.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/UndoRedo/undo-redo.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/UndoRedo/undo-redo.js (copie de travail) @@ -31,7 +31,7 @@ * * TYPO3 SVN ID: $Id$ */ -UndoRedo = HTMLArea.Plugin.extend({ +HTMLArea.UndoRedo = HTMLArea.Plugin.extend({ constructor: function (editor, pluginName) { this.base(editor, pluginName); }, Index: typo3/sysext/rtehtmlarea/htmlarea/plugins/UserElements/user-elements.js =================================================================== --- typo3/sysext/rtehtmlarea/htmlarea/plugins/UserElements/user-elements.js (révision 7298) +++ typo3/sysext/rtehtmlarea/htmlarea/plugins/UserElements/user-elements.js (copie de travail) @@ -28,7 +28,7 @@ * * TYPO3 SVN ID: $Id$ */ -UserElements = HTMLArea.Plugin.extend({ +HTMLArea.UserElements = HTMLArea.Plugin.extend({ constructor: function(editor, pluginName) { this.base(editor, pluginName); },