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.
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 two standard toolbars - authoring and learner
- Sets the stylesheet to our standard stylesheets
- Turns on the spellchecker in Firefox
- Allows the browser context menu
- Defaults any link targets to be a new window.
- Points to templates in lams_www.
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:
Important Licensing Information
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.
- flvPLayer Plugin: it allows you to embed video and audio files in any LAMS activity.
Issues with the FCKeditor
Strange link behaviour with Safari
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.
- If you want to create a link using the link button, you must type in the link's name, highlight the text and then click the link button. If you just click the link button and enter a URL, it will not create the link. (FCKeditor Bug Report)
Previously Upload Image doesn't appear in FCKEditor
Fiona has encountered this problem occasionally in both Firefox and Safari but it can't be reproduced on other PCs. It was encountered with different servers, months apart.
When you want to insert an image into some text in the FCKEditor, you click on the image button and upload the image. That image is then available during the whole sequence. If you try to insert the image into another FCKEditor (in the same sequence), instead of uploading it again you click on the image button and select "Browse" to search on the server. Fiona found that sometimes when she selected an existing file, the height and width are calculated as zero, resulting in the image not being displayed on the page. The link to the image is in the html but with a height and width of 0, you can't actually see the picture!
Clicking on the circular arrow next to the lock resets the width and height to the correct values.
If you encounter this problem please email it to Fiona Malikoff or make an entry in JIRA so that we can track the issue.