aceUICKEditor
The rich-text editor based on CKEditor 4 (version 4.5.7).

Configuration
| Attribute | Description | Default |
|---|---|---|
"placeholder" |
stringA placeholder text shown if no text has been entered. |
"" |
"ckConfig" |
objectSee the documentation for CKEditor configuration for valid values. |
{} |
"externalPlugins" |
ArrayA list of external plugins that should be registered in the CKEditor. See below. |
[] |
Localization
This widget has localization support.
Localizable configuration properties: placeholder.
The language / locale used by the third-party CKEditor will be the same as that used by other parts of the ACE UI application.
Expected domain objects
This widget expects a single domain object of type string.
Example template json
{
"label": "Body",
"widget": "aceUICKEditor",
"config": {
"ckConfig": {
"height": 400,
"extraPlugins": "autogrow",
"placeholder": "Write your body text here"
},
"externalPlugins": [
{
"names": "autogrow",
"path": "http://cdn-source.ckeditor.com/4.4.7/full-all/plugins/autogrow/",
"fileName" : "plugin.js"
}
]
},
"domainObject": "article/body"
}
About externalPlugins
Each item in the externalPlugins list is an object with the properties ("names", "path", ["fileName"]), for example:
{
"names": "beatles",
"path": "the/long/and/winding/road/",
"fileName": "plugin.js"
}
These properties match the parameters of the CKEDITOR.resourceManager.addExternal function. The plugin is activated
through the ckConfig.extraPlugins configuration option.
There are a couple of things you need to consider when using external plugins for the CKEditor. In most cases these won't cause any problems, but you need to be aware of them.
Do not import a different version of a bundled plugin
The CKEditor loads internal (bundled) and external plugins into the same plugin dictionary, with the plugin name being used as identifier. Different versions of a plugin will still have the same name, and attempting to use a different version of a plugin bundled with the CKEditor will not work. The bundled plugin will have been registered before the newer one, and the new version will just be ignored.
Be aware of plugin name collisions
If the external plugin you are trying to load is using a name already used by another plugin, it will not get loaded. When working with external plugins, make sure that they are supplied by CKEditor.com or have their names prefixed in order to avoid name collisions. Note that it's not enough to use a different plugin name in the template widget configuration when loading the plugin as CKEditor plugin code usually registers it using its operating name.
Plugins are registered globally
Plugins in the CKEditor are registered in a global plugin dictionary available to all CKEditor instances. This does not mean that all instances will load all plugins, but any registered plugins can be loaded by any editor instance.