The Rich Text Editor used within LAMS is the FCKEditor.

LAMS 2.1 will be using FCKEditor 2.5.1. Next time the FCKEditor is upgraded within LAMS, please check these notes to see what changes need to be made.

File Locations

The FCKEditor directory structure is places in lams_central/web/fckeditor. We do not need to keep the _source directories as these are not needed at runtime, and removing them . You can also remove the other _blah files that are documentation about the FCKEditor. Leave the licence file in the package.


The bulk of the customisations are specified in lams_central/web/includes/javascript/fckconfig_custom.js. This defines:

The code templates (available via the Template button on the toolbar) are stored in lams_www/web. The images for the templates are in lams_www/web.images. So when an upgrade is done any new templates should be added there and you need to add a note to the Database and Configuration Changes so that we can warn the users that the templates are changing. Why? The templates are in lams_www so that LAMS sites can add their own custom templates to the template file, which we will be overwriting in an upgrade.

There is a major customisation relating to where uploaded files are put. All uploaded files go into a directory in lams_www.war/secure. Each new learning design is assigned a new directory name, which is a very long number that should be unique across all systems. To support this, we have done our own versions of two servlets that manage the uploaded files - org.lamsfoundation.lams.web.LAMSConnectorServlet and org.lamsfoundation.lams.web.LAMSUploadServlet.

To make this work, you also have to modify lams_central/web/fckeditor/editor/filemanager/browser/default/browser.html. Change all references to oConnector.CurrentFolder from "/" to GetUrlParam( 'CurrentFolder' ). (See FishEye for a diff on how this was done in the past).

We have also written a number of tags to make using the FCKEditor (with all our customisations) easier. See:

Extensions and Plugins

The FCKEditor has a large number of plugins and extensions that can potentially work with LAMS. Some of them require a bit of tweaking to make them work with LAMS in a proper way.

As part of these plugins and given that we had interest in embedding sound and video in LAMS activity tools, we have added modified these plugins to work with LAMS:

Due to licensing reasons, we cannot include these plugins directly in LAMS. Therefore we provide information on how to install them and use the within LAMS, but it is up to you to fulfill and follow the limitations of the licenses.

Issues with the FCKeditor


FCKeditor now has Safari support, which allows us to make Safari a supported browser for LAMS. However there are still a number of bugs with Safari support.