The
CKEditor is the open source editor that provides the rich text editor experience in Lotus Quickr for Domino. However, it is possible to leverage alternative web based rich text editors.
The details below will describe the process of switching the CKEditor
with
dijit.Editor, which is the rich text editor provided by the
Dojo JavaScript toolkit. These steps may be modified to enable integrating additional alternative editors.
Perform the following steps to swap the Dojo rich text editor for the default CKEditor:
1. Shutdown the Quickr Domino server by typing “exit” in the Quickr Domino console window.
2. Create a Dojo JavaScript widget class that extends
quickr.widgets.page.field.defaultFields . An example is provided in the dojoRichText.js file that is provided with this article.
(See attached file: dojoRichText.js) The new class must define the following public methods: startEditor, setEditorValue, renderEdit, renderRead, and getFieldValue.
|
|
|
|
|
Create an instance of the editor. Note: remember to ensure that the setEditorValue is called whenever a blur event is recognized on your editor instance.
|
|
|
Provides a way to set the text value(including formatting) associated with the editor
|
|
|
Logic used to render the editor and corresponding data in edit mode
|
|
|
Logic used to render the data in a read-only format
|
|
|
Returns the field data value associated with the editor. This is usually called to determine what value should be saved to the server.
|
3. Copy the dojoRichText.js or the widget file that may be used to interact with the alternative editor into the following directory:
Domino\data\domino\html\extensions\widgets\page\field
Note: Create the folders in the path if they do not exist. It is possible that the
extensions\widgets\page\field portion of the path may not initially exist.
4. Create the widgetRegistryConfig_ext.js file if it does not already exist in the following directory:
Domino\data\domino\html\qphtml\widgets\resources
5. Edit the widgetRegistryConfig_ext.js file that is referenced in the previous step by defining an extensions path for widgets and adding a reference to your editor widget with the following data:
{
registerWidgets:
[
{
type: 'registermodulepath',
name: 'quickrext',
path: '/extensions/widgets'
},
{
type: 'globalreplace',
source: 'quickr.widgets.page.field.richText',
use: 'quickrext.page.field.dojoRichText'
}
]
}
Note: The use attribute value should be the name of your alternative editor widget, which is quickrext.page.field.dojoRichText in this example. In addition, an example of the widgetRegistryConfig_ext.js file with the dojoRichText reference is provided with this article.(See attached file: widgetRegistryConfig_ext.js)
6. Start the Quickr Domino server.
7. Now go edit or create a page or comment in a Quickr Domino team place.
8. You will now notice that the alternative editor is used instead of the CKEditor that is normally used in Lotus Quickr Domino.