Breaking: #68010 - T3Editor - Plugin registration for codecompletion has changed 

See forge#68010

Description 

Due to the rewrite of T3Editor to jQuery, the plugin registration for codecompletion has changed.

Impact 

Plugins for codecompletion written in Prototype will not work anymore.

Affected Installations 

Every third-party extension providing a T3Editor plugin extending the codecompletion.

Migration 

Port the plugin to an AMD module. The plugin must have an init method with a configuration object as only parameter. Every parameter that was passed to the old Prototype function must be in that configuration object. Please see the example code below or consult EXT:t3editor/Resources/Public/JavaScript/Plugins/CodeCompletion/DescriptionPlugin.js.

Example code:

define('Awesome/Extension/Plugins/CodeCompletion/CoolPlugin', [
	'jquery',
	'TYPO3/CMS/T3editor/Plugins/CodeCompletion/TsRef',
	'TYPO3/CMS/T3editor/Plugins/CodeCompletion/TsParser'
], function ($, TsRef, TsParser) {
	var CoolPlugin = {
		codeCompleteBox: null,
		codemirror: null
	};

	CoolPlugin.init = function(configuration) {
		DescriptionPlugin.codeCompleteBox = configuration.codeCompleteBox;
		DescriptionPlugin.codemirror = configuration.codemirror;

		DescriptionPlugin.codeCompleteBox.parent().append($('<div />', {class: 'foomatic'}));
	};

	return CoolPlugin;
});
Copied!