Description
===========
This plugin allows users with IE 5.5 and Mozilla 1.4 and
above to compose and send their email in HTML format.
Integrated items include spell checking, emoticons, and
advanced style and formatting controls.
Currently, two engines are included with this plugin:
FCKeditor http://www.fckeditor.net/
HTMLArea http://www.dynarch.com/projects/htmlarea/
(Soon changing to Xinha http://xinha.gogo.co.nz/)
Configuration and behavior depends on which of those
engines you choose to use, however, if you are using this
plugin with any version of SquirrelMail prior to version
1.4.2, you will need to patch the SquirrelMail source code
no matter which engine you choose.
FCKeditor
=========
Generally the best choice, this engine is less quirky
and is much easier to configure. For example, it does
not require any Perl configuration for its spell checker,
no patching for emoticons functionality, etc.
You can customize the look and feel of the editor to
suit your needs by further editing the configuration file
found at plugins/html_mail/fckeditor/fckconfig.js
HTMLArea
========
To use emoticons with HTMLArea, you must make an additional
patch to the SquirrelMail source. See the INSTALL file for
details. A selection of emoticons then becomes available
on the compose screen (if the user turns them on in their
Display Preferences). Note that these emoticon images will
be served from your web server when message recipients read
their mail. Also note that when adding emoticons, the user
should be sure to click in the textarea for correct focus.
To use the spall checker with HTMLArea, you must
turn it on in the configuration file, and make sure that
your server is ready to support this functionality (see
below).
HTMLArea Spell Check Configuration
==================================
You must have a Perl interpreter available with these modules
installed:
- CGI
- Encode
- HTML::Parser
- HTML::Entities
- Text::Aspell
If you aren't sure if you have these modules, try the following
commands. If any of them produce errors, you'll need to install
that module.
perl -MCGI -e 1
perl -MEncode -e 1
perl -MHTML::Parser -e 1
perl -MHTML::Entities -e 1
perl -MText::Aspell -e 1
If you have a recent version of Perl (such as 5.8), Text::Aspell
might be the only one of these you don't already have. Of course,
CPAN.org is helpful in obtaining and installing Perl modules. An
example of how to get Text::Aspell is as such:
perl -MCPAN -e'CPAN::Shell->install("Text::Aspell")'
You must also make sure your web server is configured to allow
the execution of CGI scripts at least in the spell checker
directory. For apache, an appropriate directive might look
like:
Options +ExecCGI
AddHandler cgi-script cgi
Note that if you symlink multiple virtual domains to one SquirrelMail
installation, you may need to repeat this directive for each domain,
or alternatively, you can place these directives in a .htaccess file
in the spell checker directory (given in the above example). If you
choose the latter, note that your AllowOverride directive would need
to include the Options directive type.
And, of course, you have to turn on the spell checker in the
html_mail configuration file!
Anecdotes
=========
One person on the plugins mailing list (running Apache 2.0.48, mod_perl-1.99_11,
Perl 5.8.2, PHP-4.3.4, SquirrelMail 1.4.2) found that this worked for them:
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options +ExecCGI
Someone else writes:
"In addition to the above, I found HTML Mail and the Spell Checker work much
more reliably if the CGI script that invokes the spell checker lives in a
separate directory from the other files as Apache tries to execute those and
fails. At least it did on my box. So, I created a "cgi" directory in the
"htmlarea/plugins/SpellChecker" directory, moved the spell-check-logic.cgi
script there, and changed my "Directory" directive to use this new directory
and all seems to be well with my use of HTML_Mail w/ spell checking."
Help Requests
=============
Help requests are welcome at my personal email address, but I
request that you first post to the SquirrelMail Plugins mailing
list, where you'll get faster help from more people and other
people with the same problem will be able to see how your issue
was resolved. If you don't get good answers that way, you may
try emailing me directly.
Info about the SquirrelMail Plugins mailing list can be found
on the SquirrelMail web site. It is currently located at:
http://lists.sourceforge.net/mailman/listinfo/squirrelmail-plugins
squirrelmail-plugins@lists.sourceforge.net
Future Work
===========
* updates to renderers as they become available (HTMLArea -> Xinha)
* try other renderer(s)
* Fix: add sig or attachment, etc. and extra blank lines added between each line
(which seems related to linefeeds being wrapped in tag sets... I'll
let the editor makers deal with this)
* It might be nice to include images that come with an HTML mail
and are sent along in a reply (links that include src/download.php....
but that's a pretty big hassle. currently we just remove those
tags
* Might want to use these in the default FCKeditor config: New configuration options are available to hide tabs from the Image Dialog and Link Dialog windows: LinkDlgHideTarget, LinkDlgHideAdvanced, ImageDlgHideLink and ImageDlgHideAdvanced.
Change Log
==========
2.3 - 2005/10/15 - Paul Lesneiwski
* Added default editor_height for older SquirrelMail versions
without that setting in the user preferences.
* Fixed additional newlines being added to message body when
signature added, attachment added, etc.
* PHP 5 fix (Thanks to Tomas)
* Updated FCKeditor editor to version 2.1
* Default to sample config file if not otherwise configured
2.2 - 2005/05/12 - Paul Lesneiwski
* Configuration file has changed again, please take note!
* Turn off all functionality if JavaScript is not available
* User can now change to HTML format reply directly from
compose screen even when Display Preference composition
type is set to Plain Text
* Fixed FCKeditor height and width to obey SquirrelMail editor settings
* Moved prefs item into the compose preferences page in
SM 1.5.1+
* Implemented reconstruction of HTML of the original mail
when replying
* Emoticons and other links are now sent out in emails with
absolute (not relative) URIs
* User may now choose editor type (if admin allows)
* Fixed problems on some systems where editor wasn't showing up
* Replaced *nix/Windows configuration item with ASpell path
configuration instead
* FCKeditor is version 2.0FC
* HTMLArea is cvs from 2005/03/15 (still 3.0beta)
* Compatibility plugin no longer required
2.1 - 2005/03/16 - Paul Lesneiwski
* Configuration file has changed, please take note!
* Added FCKeditor as a (better) alternative to HTMLArea
* Fixed help URL
* On-the-fly email format conversion is available
via radio buttons on the compose page (when the
default type is HTML as specified in the Display
Preferences).
* Messages are now sent as correctly formatted
multipart mime (text/html)
* Fix: when replying/forwarding, original messages
with special characters were getting interpreted
incorrectly.
* Fix: poor performance (including lockups) when
replying or forwarding messages due to slow JavaScript
* Works with newest release (v1.1) of Templates plugin
* Check that this plugin comes after other plugins that
change message content such as email_footer and taglines
* Internationalization fixes
* Added emoticons patches for SM 1.4.3 and 1.4.4
* Synched with HTMLArea CVS repository 2005/03/15
2.0 - Paul Lesneiwski
* Newer Gecko browsers (e.g., Mozilla 1.4) now supported
(htmlArea v3.0 beta)
* When replying, adding signatures, etc., lines don't
get concatenated all into one
* Added emoticons functionality (optional) added (credit
to Pablo Macouzet Jr.
for writing the original Emoticons plugin)
* Disable SquirrelSpell plugin when user is composing
emails in HTML format, since the two plugins are
not compatible
* Integrated spell checking mechanism is now available
* Custom style configuration is available (you can turn
down the initial font size, etc)
* Updated for compatibility with email_footer plugin
* Updated for compatibility with quicksave plugin (quirky)
* When sending attachments, HTML format is retained
* Updated HTML renderer
* Added configuration file
1.0 - Paul Lesneiwski
* Improvements over "Enhanced Text Area Plugin":
- updated text area renderer
- fixed all those darn bugs
- as of SM 1.4.2, no source patch is required
- sends HTML email in correct format
- no longer clashes with File Manager plugin