Mail Fetch -- Version 1.3.0

Downloads mail from a pop3 server to your SquirrelMail account.

Features
========

* Copies messages from remote server
* Saves server, alias, username, and password in prefs file...
* Remembers where to resume downloading messages if 
  your pop server supports UIDL.
* Optionally deletes mail from the remote server.
* Allow an infinite amount of remote servers
* Optional to not save password - prompt on check
* Save messages into a local IMAP folder instead of INBOX
* Check mail during login (Needs SM 1.1.3 or older). 
* Check mail during folder refreshes.
* Allows gettext translations.


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

Feel like grabbing your messages from a different mail server into
SquirrelMail?  This might be able to help.


Configuration
=============

Under the options you can add, delete or modify server list where
fetching mail.  For each server you can set also username and password;
if you leave password blank, the password whore required when you fetch
mail.  Make sure "Leave Mail On Server" is checked if you do not want 
Mail_Fetch to delete it from the remote server.  Once configured,
click 'Fetch' in the SquirrelMail menu to get your mail; you can fetch
mail from all server instead or from only one by selecting the options
dispayed.

If you want to check mail periodicaly choose "Check mail during login"
or "Check mail during folder refresh". Of course passwords have to be
entered in order for this to work.

In order to secure a little bit the system, pop3 passwords can be encrypted.
The encryption key may be defined in to places. The first, and more secure,
is in the httpd configuration as an enviromental variable called MF_TIT 
only accesible from the squirrelmail directory.
 
the way you can do this from apache is adding the following directives to 
httpd.conf (supposing that squirrelmail is located at /usr/local) or an
included configuration file:

<Directory "/usr/local/squirrelmail">
    SetEnv MF_TIT "MailFetch Secure for SquirrelMail 1.x"
</Directory>

Of course, you should replace the text inside double quotes with the key
you want to (some kind of secret text). A please remember that the file 
where you decided to place this must be root only readable.

The second way is to edit functions.php and look for:

    if( !isset( $MF_TIT ) ) {
        $MF_TIT = "MailFetch Secure for SquirrelMail 1.x";
    }

Once again change the text "MailFetch 0.8 Secure for SquirrelMail 1.x"
with a secret text.

Please note that you must redefine passwords each time you change the key.

To maintain compatibilty with older systems, mail_fetch can work with old
pref files, with no encrypted passwords. If this occurs, you'll see that
the "Encrypt Password" checkbox in the option page is not checked. If you
reenter account's passwords the system will switch to encrypted mode.


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

* Add IMAP server stealing
 
* Limit number of pop accounts


Installation
============

As with other plugins, just uncompress the archive in the plugins
directory, go back to the main directory, run configure and add the plugin.

Questions/comments/flames/etc can be sent to the SquirrelMail plugins list.

Old versionn (0.7) has been updated from 0.6 by Philippe Mingo <mingo@rotedic.com>
    IMPORTANT!!! This is a "secured" version, it makes a little encryption
    of the pop3 passwords. In order to use this facility, systems that
    have been using older versions (0.6 and lessers) should reenter
    passwords using the modify button at the options page in order to
    encrypt the password. The Encrypt passwords checkbox is only informative,
    and it lets you know if passwords are secure or not.

Old version (0.4) has been updated from Joshua's version 0.3 by
    Tomaso Minelli <minni@minnata.net>
    and Tyler (but only VERY minor stuff -- not worth really mentioning)

Old version (0.3) has been updated from Tyler's original version 0.1 by
    Joshua Pollak <pardsbane@offthehill.org>


Translations
============
Translation is made in the same manner than Squirrelmail's core does.
You need to take <plugin_name>.po file, fill the template, store it
in the appropriate locale folder under the plugin and compile the po
file. Better than this fill the po file and send it back to the author.
The translation will be included in the next release of the plugin.


Note for mod_gzip users
=======================

As fetching module shows information while fetching is taking place, it
is a good idea to disable compression for that operation. The way to do
this with mod_gzip is:

mod_gzip_item_exclude       file fetch.php


Note for Newmail Plugin users
=============================

In order to Newmail plugin detect new mails during folder refreshes
make sure that Mail_Fetch is listed first that Newmail in the
SM configuration. To do so you only have to remove Newmail plugin
and then add it again.


ChangeLog
=========

1.3.1 

Bugfix 
------
1 Delete mail server routine update record not as expected.
The logic is still correct to completed the wanted action, but the order
is not preserved. The last record was to replace the deleted record.
2. Connection to IMAP server is not terminated at some condition during
appending email and block the program.

Added features
--------------
1. The UIDL now updated to reflect last successfully fetched mail when
fetching mail from server is stopped in the middle.
2. POP3 connection will be re-established for non-persistent server failure.

"Chiu Wai Pun" <pun@alumni.ust.hk> 

---------------------------------------------------------------------------
                   Philippe Mingo <mingo@rotedic.com>
---------------------------------------------------------------------------
1.3.0 Official SM Version - Moved into the SM package.
1.2.6 BugFix
1.2.5 Bugfix
1.2.4 Optimized class.POP3. Fixed problem with spaces in folders name.
1.2.3 non-gettext systems now works
1.2.2 Fixed login problems.
1.2.1 Added polish translation.
1.2.0 Added spanish translation.
1.1.2 Bugfix: Missing include at login check.
1.1.1 Bugfix: Now works with SM 1.1.1 and 1.1.2. To do this check during
      login is disabled with these versions.
1.1   Bugfix: Now messages deletes correctly from pop servers.
1.0   Added check during folder refresh and check during login code.
0.9   Added an alias for each server. Changed default encryption key, please
      reenter passwords if you're not using environment system.
0.8   Better encryption security through env variables.
0.7   Added password encryption and strings internationalization. 
----------------------------------------------------------------------------
0.6   Bugfix for folder list and typo
      set_time_limit of 20 seconds per message (to avoid timeout errors)
0.5   Works properly for servers that have 0 messages to fetch
----------------------------------------------------------------------------
                    Tomaso Minelli <minni@minnata.net>
----------------------------------------------------------------------------
0.4   Allow an infinite amount of remote servers
      If password is empty, prompt on check
      Save messages into a local IMAP folder instead of INBOX
      (Tyler) Uses new 1.1.1 validate.php format
----------------------------------------------------------------------------
                 Joshua Pollak <pardsbane@offthehill.org>
----------------------------------------------------------------------------
0.3   Converted fetch routine to use the POP3 object from thewebmasters.net
      Added Leave Mail on Server option
      Now only downloads new messages if the pop server supports UIDL.
----------------------------------------------------------------------------      
0.2   Now saves account information
0.1   Initial release by Tyler Akins
----------------------------------------------------------------------------
