Multilogin plugin for SquirrelMail
==================================
Ver 2.3.2, 2005/10/19

Original authors: Benoit Bourdin <bennyben@fleming.u-psud.fr>
                  Paul Lesneiwski <paul@openguild.net>


Description
===========

This plugin displays a pull-down select box with IMAP
server choices on the login page.  The user will be
logged in using the IMAP server that is chosen.



Configuration - (set by editing config.php)
===========================================

  * $rememberServer, if set to 1, will place a checkbox on 
    the login page that allows the user to tell SquirrelMail
    to remember her last login server.

  * $IMAPSelections is a listing of IMAP servers you offer 
    and their corresponding server settings to be used when 
    a user logs in using the IMAP pull-down selection menu.  
    Each server is identified by any (user-friendly) label 
    that you deem appropriate (it need not have any technical
    information in it since it is just for display).  The
    servers each have any number of settings associated with
    them; most any setting available in SquirrelMail's 
    config/config.php is allowable such as "org_name", 
    "smtpServerAddress", etc., however, the two you will
    want to make sure are included are "imapServerAddress"
    and "imapPort".

    Note that there are three special settings: 

       'settingsWithEmbeddedPHP'  
           is an array contianing the names of all settings that 
           contain embedded PHP code.  It is possible to embed PHP 
           code in many of the settings in the $IMAPSelections array, 
           but you must specify which ones you have done so with here.
           Note that in order to embed the PHP code, you need to wrap 
           the entire value in single quotes.  See the example for 
           "org_title" in the sample configuration file.  

       'enable_plugins'  
           allows you to turn on specific plugins for a single IMAP 
           server.  The corresponding value must be an array of plugin 
           names (the name of the plugin directory) that you want to
           turn on.  See the sample config.php file for an example.

       'disable_plugins' 
           allows you to turn off specific plugins for a single IMAP 
           server.  The corresponding value must be an array of plugin 
           names (the name of the plugin directory) that you want to 
           turn off.  See the sample config.php file for an example.

    Note: If your usernames do NOT include domain name or some other
          characters that differentiate user logins between the servers
          in your configuration, you should define separate data 
          directories ('data_dir') for each one, otherwise user 
          preference files will be shared across all servers for the 
          same usernames.



Use with the Vlogin Plugin
==========================

This plugin can be used to facilitate faster session-based
functionality for the Vlogin plugin.  If you are using Multilogin
in tandem with Vlogin, you only need to put Multilogin in the
plugins directory, patch the SquirrelMail source code, but you
do not need to edit the Multilogin configuration file nor enable
it in config/conf.pl.



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



Change Log
==========

  2.3.2  2005/10/19  Paul Lesneiwski <paul@openguild.net>
   * Code cleanup
   * Added patch for SquirrelMail 1.4.4.
   * Removed $IMAPServerSelectionText and $rememberServerText
     configuration settings in favor of standardized 
     internationalization.  If you need to change these strings,
     hard code them in functions.php or (better) create a correct
     translation locale file (even English is OK) with your changes.
   * Added "settingsWithEmbeddedPHP" setting for $IMAPSelections
     array that allows any configuration setting's value to
     contain embedded PHP code.  If your configuration file
     previously contained the org_title setting overrides, you
     MUST add this as described in the docs!
   * Added error message when invalid server is specified (Thanks
     to April Lorenzen <outboundindex@gmail.com>)

  2.3.1 - Paul Lesneiwski <paul@openguild.net>
   * Fix for php errors introduced in v2.3

  2.3 -  Paul Lesneiwski <paul@openguild.net>
   * Fix for enabling plugins that use the same hook as
     Multilogin or Vlogin
   * Updated patch file for recent SquirrelMail releases
   * New background color for server selection portion 
     of screen.

  2.2 -  Paul Lesneiwski <paul@openguild.net>
   * New approach to the "session_recall" functionality; 
     hopefully all config overrides will be loaded more 
     reliably.  The source patch is now limited to one 
     line in one file, instead of a line in almost every 
     source file.  This is a substantial change; upgrade 
     is highly recommended.
   * Added ability to change org_title in browser title bar
   * Added ability to enable and disable individual plugins
     on a per IMAP server basis

  2.1 -  Paul Lesneiwski <paul@openguild.net>
   * Added ability to offer to remember which IMAP 
     server the user last logged into
   * Fix (hopefully?) for usage with PHP v4.3
   * Updated session_recall patches for SquirrelMail 
     versions 1.2.11 and v1.4
   * Minor HTML fix

  2.0 -  Paul Lesneiwski <paul@openguild.net>
   * Now works with SquirrelMail version 1.4.0 (cvs)
   * New setup.php format for better overall SquirralMail
     performance

  1.0 -  Benoit Bourdin <bennyben@fleming.u-psud.fr> and 
         Paul Lesneiwski <paul@openguild.net>
   * Initial release



Future Work
===========

   *  Ideas?
