Version 4.2.8 - January 2009
//**-- Requires database upgrade from the guidedsetup --**\\
+ New feature - Ability to export addressbook contacts by group
+ New feature - New iPhone template shipped by default. The iPhone template should not be added to the list of template drop downs as it's features are not supported by all desktop based web browsers
+ New feature - New settings to automatically detect mobile devices and use that template instead and to allow mobile devices to bypass CAPTCHA
- Code change - Updated copyright year
- Code change - PDA template renamed to Mobile template
- Code change - Enhancements to the installation process
- Code change - Installation and upgrade instructions moved to seperate files
- Bug fix - Deletion of default template from the available templates list in the administration area could break DWmail's settings

Version 4.2.7 - October 2008
+ New feature - Backend database support for Microsoft SQL Server 2005 and higher using the PHP mssql functions (http://www.php.net/mssql)
- Bug fix - Recurring event icon when viewing calendar as a day view was broken
- Bug fix - Links on 'next month' calendar when an appointment is set caused a SQL error

Version 4.2.6 - October 2008
+ New feature - Additional CAPTCHA library available, including audio version without the need for flite support
- Bug fix - Alert text changed when trying to reply or forward a message prior to selecting a message
- Bug fix - Hitting the reply button from the mailbox window wouldn't complete the To: field correctly

Version 4.2.5 - April 2008
//**-- Requires database upgrade from the guidedsetup --**\\
+ New feature - Reply or forward messages directly from the menu bar in the mailbox listing without having to first open the message
+ New feature - Update user's time for Daylight Saving Time
+ New feature - Inbox folder name in the folder tree is now localisable through the language packs. The folder will still be called INBOX in the mail account but the name displayed to the end user can be localised.
- Function change - Addressbook autocomplete when composing now enabled by default
- Function change - Frameset templates when double clicking on a message in the folder listings now loads in the main frame rather than a new window
- Bug fix - Stop SMTP from continuing when HELO or EHLO fails
- Bug fix - Deleting templates from the admin area failed due to a typo
- Bug fix - If multiple multipart/appledouble parts were in an email only the last one was displayed to the screen as an attachment

Version 4.2.4 - March 2008
- Bug fix - When auto login from RSS is enabled, clicking on a link in the RSS feed causes a database password error
- Bug fix - When auto login from RSS is enabled, clicking on a link in the RSS feed gave a CAPTCHA error because the checking routine was not bypassed in this instance
- Bug fix - Sent date is not displayed in Original Message body text when replying or forwarding a message
- Bug fix - Messages replied to or forwarded with an embedded image showed as a broken image in the Rich Text editor even though they sent correctly
- Bug fix - Surpress date conversion error messages if any occur
- Bug fix - Display ReplyTo, BCC or Save Recipients compose options did not reflect the true values of the settings when editing preferences
- Bug fix - If installation suffers from self signed certificate errors, compatibility mode fix is mentioned in the error messages upon login

Language files changed: global.inc.php

Version 4.2.3 - February 2008
//**-- Requires database upgrade from the guidedsetup --**\\
+ New feature - Support for reCAPTCHA library. An API key is required and needs to be entered in the administration area options. You can get an API key from http://recaptcha.net/whyrecaptcha.html. Allows CAPTCHA usage even if your server does not support GD image generation, also allows audio CAPTCHA if your server does not have FLITE installed
- Bug fix - message/rfc822 email attachments already attached to an message/rfc822 email attachment displayed a file size of 0
- Bug fix - message/rfc822 email attachments already attached to an message/rfc822 email attachment linked to attachment.php instead of view.rfc822.php
- Bug fix - message/rfc822 email attachments already attached to an message/rfc822 email attachment can now be decoded, along when any FILE attachments attached to them
- Bug fix - Ability to send read receipts should not have been in RFC822 attached messages
- Bug fix - Detection of BCC or CC addresses in RFC822 attached messages failed
- Bug fix - Removed multibundling of ZIP attachments from RFC822 messages as the zip functionality did not support it
- Bug fix - 'Call to a member function on a non-object' PHP error when downloading an attachment from an RFC822 attached message
- Bug fix - Attachment download file sizes from RFC822 attached messages were not rounded to the nearest Kb
- Bug fix - Attachment downloads from RFC822 attached messages did not work correctly due to a missing 'rfc' hidden form field in attachment.php
- Security fix - Possible SQL injection attack in admin area

Version 4.2.2 - February 2008
- Bug fix - Reply or forward body of an HTML email did not always show the correct HTML version due to array error
- Bug fix - Relative font css sizes in HTML emails might appear too small when viewing

Version 4.2.1 - February 2008
- Bug fix - Add new function to HTMLCleanup class to try to prevent HTML emails with a body css or global anchor css definitions taking over the entire DWmail interface
- Bug fix - When forwarding an email with an attached email compose.php would raise a non existant mimeDecode class error message
- Bug fix - Forwarded email attachments did not show subject in compose.php
- Bug fix - Forwarded email attachments did not get attached due to no file name detection failing
- Bug fix - Forwarded email attachments were attached in base64 format and so failing to be decoded by other mail clients
- Bug fix - HTML email viewing type settings in the administration area did not show a drop down as expected but showed a text entry box
- Bug fix - RSS Reader sync redirect anchor link did not work
- Bug fix - Modified fpdf library to allow support for img tag images of gif, png and jpg file extensions to have query strings and therefore render in the PDF view of an email
- Bug fix - Hide any errors displayed by PHP when calling the quota function
- Bug fix - UTF-8 characters in RSS feeds did not display correctly
- Bug fix - Legacy browser detection code for WYSWIYG editor removed, now makes use of FCKEditor's built in compatible browser connection

Version 4.2 - Feburary 2008
//**-- Requires database upgrade from the guidedsetup --**\\
+ New feature - Support for EHLO SMTP connections. New setting in the administration area.
+ New feature - Quota support and display. If the IMAP server returns a quota usage and a limit, this will be displayed beneath the folder list in the folderpane
+ New feature - Template can be switched from the preferences section without the need to login and logout again
+ New feature - PDA/Lite template now includes preferences, calendar, notes and addressbook
+ New feature - Allow CAPTCHA type 2 background to be set for template integration
+ Feature change - FCKeditor Rich Text Editor synced to version 2.5.1
- Bug fix - Attachment file names encoded as RFC 2047 did not decode properly
- Bug fix - PostgreSQL database connection error might be raised on setup if PHP does not additionally have the MySQL library installed
- Bug fix - Special characters in RSS feeds displayed their HTML entities rather than the character they represent
- Bug fix - Certain links in the administration area with a combination of session.trans_sid disabled could cause a revert to the login page

Version 4.1.5 - October 2007
- Bug fix - If edited in the admin area, drafts would often save to inbox instead of drafts folder
- Bug fix - Under certain conditions read reciepts would not be sent via SMTP mode
- Bug fix - Under certain conditions when using SMTP mode, local mode, bcc addresses would be visible to the end user
- Bug fix - Default domain not validated correctly in sending of an email due to misnamed string

Version 4.1.4 - September 2007
- Bug fix - Logging out when empty trash on exit could cause unexpected email deletion due to a misnamed variable in config changes in 4.1
- Bug fix - Marking a message read or unread in mailbox listings caused an config error in 4.1

Version 4.1.3 - August 2007
+ New feature - If the CAPTCHA is of type 2, clicking on the image will refresh and get a new CAPTCHA code
- Bug fix - Pressing the back button on login sometimes kept the wrong CAPTCHA code in the session preventing the user from logging in unless they refreshed the browser
- Bug fix - Sometimes PHP detects a single part text/html message as text/plain and therefore the HTML code is displayed to screen. Added in a manual check for the content-type header when a plain message

Version 4.1.2 - August 2007
+ New feature - Logout link from the admin area
- Code change - Updated code switch in options selection to make it more robust for adding new configuration variables to the database when language packs have been added
- Bug fix - Default domain not appended properly when no domain given in version 4.1.x on logging in and a syntax error occurs
- Bug fix - Deleting language definitions through the admin area failed
- Bug fix - Some admin menu links broke if session.trans_sid is disabled in php.ini

Version 4.1 - August 2007
+ New feature - New admin area available by calling the admin directory from the web browser. From the admin area you can change the databased settings, edit or install templates, add languages, manage the global address list, global calendar and block list
+ New feature - Inbox caching to prevent imap_sort function from slowing down inbox display every time it's called. Check new mail on nav bar refreshes the cache, inbox in folder pane does not.
+ New feature - Changed WYSWIYG editor from custom to FCKEditor. Much greater handling of styles, tables and images.
+ New feature - Save login details checkbox from the advanced login page saves re-entering details each time
+ New feature - Configuration options are now stored in the database. This can be restored to a config.inc.php file by changing $CONFIG['db']['settings'] to 0. Database configuration still stored in the config.inc.php file
+ New feature - Save a message as a PDF file, it's HTML rendering isn't perfect however
+ New feature - RSS reader optionally available from the folder pane. Sync, manage and read your rss feeds from within your webmail
+ New feature - View the latest news directly from the top of your inbox
- Code change - Session variable handling in IMAP functions overhauled to improve memory handling
- Code change - Configuration for templates changed to remove definiton for a frameset template. Frameset templates are now auto-detected based on the existance on the frameset.tpl file.
- Code change - Minor function changes to make DWmail PHP 6.0.0 compatible
- Code change - Complete re-write of the database installation process. Now only a single part of the process (the file key.inc.php) is ionCube encoded. A non encoded version can be downloaded and replaced from the member's download area
- Code change - Sync'd to latest version of the vCard library
- Code change - Sync'd to latest version of the mimeDecode library
- Code change - Removed ionCube dependency for setup process
- Code change - Config.inc.php moved from includes directory to config directory
- Code change - Add configuration variables moved the a single $CONFIG array. All upgraded config.inc.php files will need editing
- Code change - Removed AllowCookies config option as it is now redundant with removal of non-database mode
- Code change - Removed UseDatabase config option. Ability to run DWmail without a database removed (even though it was previously unsupported anyway)
- Code change - Switched to using WYSIWYG editor for composing by default
- Code change - Moved calendar and addressbook links from hardcoded to the folder list to be a part of the main template. This allows much greater customisation opportunities
- Code change - Frameset templates: moved calendar and addressbook from the folder pane to the navigation pane
- Code change - Frameset templates: changed composing an email from a new pop-up window to the main display. This prevents pop-up blockers from causing issues with frameset templates
- Code change - Reorganised and renamed many of the includes files
- Bug fix - Saved reply to preference not always displayed correctly in compose screen
- Bug fix - Global address list entries could be edited or deleted
- Bug fix - Subject line when replying for forwarding stripped out characters surrounded by [] due to a bug in the autosave system e.g. 'FW: [Ticket 1234] Description' became 'Re: FW: Description'
- Bug fix - Numerous template fixes to the PDA template, including the lack of auto redirect on login
- Bug fix - Possible security risk in compose.inc.php patched
- Bug fix - Download all attachments as zip caused a login redirect

Version 4.0.6 - DWmail 2007 - January 2007
+ New feature - Added a favicon.ico to main files
- Code change - Moved all of empty trash link to the language files to make customisation easier
- Bug fix - Calendar and addressbook links in folderpane did not follow same CSS class as the folder links
- Bug fix - Logging out takes you to default template rather than the selected template's login page as expected
- Bug fix - Attachments displayed in a reply when they don't have a cid
- Bug fix - Attachments from an original message sent in a reply when they don't have a cid

Version 4.0.1 - DWmail 2007 - October 2006
- Code change - Attachment file type graphic added to attachment download page
- Bug fix - include('./includes/files.inc.php') was included more than once
causing function errors if a composed mail had pre-attached files
- Bug fix - Extra received line accidentally removed in imap.inc.php
- Bug fix - Embedded/forwarded attachments were lost when sending email due
to changes in attachment system in version 4.0

Version 4.0 - DWmail 2007 - September 2006
+ New feature - Allow attach remote files from the Internet by entering just
a URL
+ New feature - New more secure CAPTCHA library added (in addition to the version
in 3.8), This uses colours and background images and character rotation to make
it harder for automated login tools and spammers. See http://www.captcha.net/
for more information about CAPTCHA.
+ New feature - If you have the FLITE speech software application installed
on your webserver (http://www.speech.cs.cmu.edu/flite/) and have access to the
shell_exec() function in PHP, you can use an audio version of the CAPTCHA login
verification tool for visually impared users.
+ New feature - Auto save to drafts whilst composing messages every 60 seconds
via AJAX
+ New feature - Message flagging now handled by AJAX when supported by the browser
+ New feature - Flagged messages are now described as such when reading messages
+ New feature - When viewing a message you have already replied to, this is
displayed at the top
+ New feature - Personal HTML signatures can now be set from the Personal preferences
section
+ New feature - IE rich text editor image properties dialog given a live preview
of the image when entering details
+ New feature - IE rich text editor table properties dialog now allows summary
attribute
+ New feature - IE rich text editor now includes an insert symbol dialog
+ New feature - External email account listings are now collapsed to make viewing
and editing easier
+ New feature - External email accounts now have a field for email address.
Although this is not used for checking email accounts it's used as a descriptor
+ New feature - External email accounts can now have a 'from' alias created
automatically when the external account is added
+ New feature - When settings and preferences are saved, a new information bar
is displayed on the preferences menu page
+ New feature - Language on the login page can be set on the fly using the query
string e.g. for en_US use index.php?lid=en_US
+ New feature - Body of email can now be shown in the RSS feed. This is disabled
by default
+ New feature - Email address is now logged in the user table in clear text
for statistics logging
+ New feature - If logging is enabled, every email sent is logged by timestamp
and the number of recipients to track how many emails a users sends. Note: details
of the email itself are not logged
+ New feature - Added an XSL stylesheet to the RSS mailbox listing
+ New feature - Day view for calendar to view all appointments on a particular
day in a linear fashion
+ New feature - Add new appointment url now accepts date via query string
+ New feature - Added addressbook autocomplete to inviting attendees for an
appointment
- Code change - Attachment routine when composing a message re-written
- Code change - IE rich text editor image properties dialog templated and re-written
- Code change - IE rich text editor table properties dialog templated and re-written
- Code change - Attachment icons when viewing a message routine re-written to
display any icon based on mime-type if the file exists in the images/icons directory
- Code change - Changed default mailbox sorting method to SORTARRIVAL instead
of SORTDATE. This can save almost 3 seconds on mailboxes over 800 messages.
- Code change - Save from address to addressbook link changed to an image for
cosmetic reasons
- Code change - Test scripts amended to include tests for freetype support,
flite audio support and a writable ./tmp file (for attachments and audio CAPTCHA
support)
- Code change - DWmail titles changed to reflect new logo
- Code change - Download attachment screen made easier to read
- Code change - Default attachment number increased to 4
- Code change - Replaced read receipt icon
- Bug fix - Ampersands in subject lines were sent as their HTML entities
- Bug fix - Inserting an embedded image into the WYSIWYG editor works once again
- Bug fix - Default option in addressbook autocomplete in the preferences had
incorrect variable defined as default
- Bug fix - Possible folder incorrectly searched in search routine
- Bug fix - Error reporting mode set in guidedsetup to remove E_NOTICE errors
- Bug fix - Error reporting mode set in ./test/phpversion.php
- Bug fix - Dynamically check that the web server can support generating images
for CAPTCHA and if not disable them
- Bug fix - Missing language variables in parseLinks function
- Bug fix - IE rich text editor table properties dialog had incorrect language
variable in title
- Bug fix - IE rich text editor table properties dialog did not remember widths
in percentages when editing an existing table
- Bug fix - IE rich vertical scroll bar clipped on the right hand edge with
IE7
- Bug fix - PostgreSQL setup error on table dwm-pop3 when creating a new table
- Bug fix - Made expanded and collapsed folder graphics transparent background
for easier templating
- Bug fix - Fixed sent mail behaviour where if save to sent mail was disabled
by default but the user clicked on a individual mail to save, it didn't
- Bug fix - JavaScript day of week detection on weekly recurringing calendar
appointments re-written
- Bug fix - Missing end row table tag in calendar month view

Version 3.8 - October 2005
+ New feature - Add your mailbox listings to your news reader and auto check
your emails via RSS syndication. RSS feed meta tag added to mailbox listing.
+ New feature - Allow an option to check new mail via XML Web Services and AJAX.
Prevents the need for hidden iframes to check for new email
+ New feature - If checking for new mail is set to use AJAX and XML Web services
the folder listings and names on both frameset and standard templates will update
dynamically
+ New feature - Autocomplete of to:, cc: and bcc: fields when composing dynamically
searches the address book using AJAX
+ New feature - External email can now be delivered to users choice of folder,
each account can be delivered to seperate folders if desired
+ New feature - Adding domains to the dwm-block table in the database can prevent
users of this mail server from using DWmail. This has to be done directly through
the database at this stage, but we intend to add a web based interface in the
future.
+ New feature - Optional image security checking routine for logging in. Uses
GD2+ library.
+ Code change - CSS descriptors added for folder links in the folder name (by
default folders with new messages will be shown in bold), number of messages
and new messages
+ Code change - WYSIWYG editor now stretches to width of compose screen
+ Code change - Added edit and compose email links to addressbook listings
+ Code change - Removed JavaScript that caused error when selecting a check
box on addressbook listing
- Bug fix - Data descriptor code segment seems to cause problems with certain
systems or zip decompressors
- Bug fix - Possible issue with moving messages between folders loosing current
folder name
- Bug fix - Check new mail had an intermittent issue causing the detection routine
to fail after deleting of moving messages from the INBOX
- Bug fix - Message flags not being kept when moving mail between folders
- Bug fix - Removed hard coded version number from imap.inc.php and addressbook.php
- Bug fix - When deleting a message using a frameset template and a preview
pane, the preview pane now blanks
- Bug fix - Error when creating table dwm-recurring under PostgreSQL
- Bug fix - Calendar sequence error in PostgreSQL when adding a new appointment
- Bug fix - Bug in PostgreSQL 8 causes EXTRACT() and DATE_PART() with fields
as date part causes problems. Change of syntax necessary for PostgreSQL 8
- Bug fix - Invalid PostgreSQL syntax in function DB_GetCalRecurDetails
- Bug fix - Recurring appointments not set in PostgreSQL due to a not null constraint
- Bug fix - Weekday and everyday recurring appointments duplicated under PostgreSQL

Version 3.7 - April 2005
+ New feature - New 'silver-frameset' template. Default template is still 'silver'
+ New feature - New template selector on advanced login
+ New feature - login-header.tpl and login-footer.tpl added to allow seperate
headers and footers for the login page. Introduced primarily to the new frameset
templates to use header.tpl and footer.tpl themselves
+ New feature - Check HTTP_HOST against HTTP_REFERER to check whether POST request
have been made from the same server or not. If this causes problems the function
can be commented out in functions.inc.php in the includes directory
+ New feature - Select your preferred first day of the week from Monday or Sunday
from the config.inc.php file or the user preferences
+ New feature - ionCube loader support for PHP 5 on Windows and thread safe
Linux versions
+ New feature - Recurring appointments added to the calendar
+ New feature - Ondblclick option for addressbook selector to auto add to selected
field. IE doesn't seem to like this but works fine on other browsers
+ New feature - New no sort option bypasses the imap_sort function in PHP which
can cause large mailboxes to return slowly or use large amounts of bandwidth.
Note that you cannot use filters with the no sort option
+ New feature - Detect and set flags from the mailbox listing
+ New feature - Automatically call any template using tid=[templateid] in the
url when logging in (this only applies to the login page). The pda/ directory
auto redirects to the PDA login page
+ New feature - Auto-resize previewed images using the GD library (if installed)
+ New feature - US language pack included in addition to default GB language
pack
+ New feature - Flag display capability through the language select box when
logging in. Note IE does not support the CSS attributes that display this
+ New feature - View attachments when composing emails
- Code change - Optimised source.php for memory usage
- Code change - [CurrentTemplate] can be called from any template file to reference
the template directory that is being used. Useful for calling template specific
images, stylesheets or scripting files.
- Code change - New attachment warning message when viewing a message
- Code change - License updated to version 2.2. Additional installation of a
PDA copy removed as it's no longer necessary to have a seperate installation
purely for a PDA template
- Code change - Bundled OS X ioncube loader files with the installer
- Code change - Minimum system requirements checker in the test directory re-written
and added tests for the GD libraries
- Code change - Split embedded attachments from forwarded attachments in the
compose screen
- Bug fix - Global variable sanitisation for users with register_globals enabled
- Bug fix - Calendar layout was incorrect if you changed the month name away
from English in the language files
- Bug fix - Single quotes added around userid field in mysql.inc.php due to
a compatibility issue between the latest versions of PHP and MySQL 4
- Bug fix - Change instances of strftime to gmstrftime to fix possible timezone
issue
- Bug fix - Posting WYSIWYG editor using Mozilla and returning with an error
or for a spell check cause the Midas editor to loose contents of iframe
- Bug fix - Version 3.5 to 3.6 bug when upgrading database for postgresql
- Bug fix - Sort method and order when changed in preferences did not immediately
reflect in mailbox display due to session bug
- Bug fix - Advanced/Standard login links in PDA template broken
- Bug fix - Couldn't remove forwarded attachments when composing a forwarded
message

Version 3.6 - July 2004
+ New feature - Export entire addressbook as CSV or vCard format
+ New feature - Import an addressbook in CSV format, map fields and toggle the
first row as a header
+ New feature - Spell check available when composing. Requires the pspell libraries
to be configured into PHP. You must enable spell checking in your $AvailLangs
array.
+ New feature - Read message/rfc822 message attachments i.e. an email attached
to another email. This will not work with an RFC822 message attached to an RFC822
message from an original email
+ New feature - Folder tree in the folderpane to indent, auto-scroll longer
folders and collapse/expand the structure
+ New feature - New configuration variable of folder delimiter (although this
can be changed if we automatically detect a different value on your server).
You should bear this value in mind when naming your default folders.
+ New feature - Folder unsubscription and basic folder subscription available
from folder management when IMAPSubscription is enabled either in config or
user preferences
+ New feature - New front page login statistics option for logins today and
logins in the last month. This can be enabled or disabled from the config.inc.php
file. The administrator can optionally log IP addresses against these logins,
however you should make your users aware of this if you enable it.
+ New feature - Advanced custom date formats from the renamed date & time
preferences section
+ New feature - Reset all user preferences to default values from preference
menu
+ New feature - Quick tips feature on the login page
+ New feature - Remap a profile from an older user login if a user has changed
their email password
+ New feature - Character set of HTML and text messages is now outputted using
<div charset="charset"> when viewing a message
+ New feature - Parse Sender: email header and display 'From xx on behalf of
xx' in view.php
+ New feature - Account aliases to allow you to compose messages from other
email addresses in your alias list (the Sender: header is added with your current
email address to prevent misuse of email)
+ New feature - New URL field in calendar entries
+ New feature - New URL field in addressbook entries
+ New feature - Render iCalendar email types (text/calendar) and attachments
although the parser is designed for iCalendar version 2.0 only
+ New feature - Export calendar entries as iCalendar file types (.ics)
+ New feature - Character set now sent in the HTTP header
+ New feature - Hidden addressbook feature. If you manually add an addressbook
entry with a user id of 0 then it becomes a global address for all users
+ New feature - In-Reply-To header added to replied messages
+ New feature - Display mailbox listings in threaded format (oldest messages
are always displayed first)
+ New feature - Mark messages as read/unread for IMAP connections
- Code change - Folder handling functions re-written
- Code change - Sync'd vCard library
- Code change - Cleaned up parameter and dparameter parsing in parseBody() function
- Code change - $FullLogin allowed for all modes
- Code change - Cleaned up start and end time displays in the calendar
- Code change - Editor template .tpl files moved to individual templates directory
- Code change - Mailbox page navigation overhauled to make it a) easier to use
and b) easier to customise
- Code change - Many of the images moved to the individual template folder to
allow greater image customisation for different templates
- Code change - Changed email saving to .eml file type with message/rfc822 mime
type
- Bug fix - Clean up some white space issues in include files that affected
headers in some versions of PHP.
- Bug fix - Save email address check array fails in some instances in the addressbook
- Bug fix - Auto-url didn't work in some instances due to a problem introduced
between 3.4.5 and 3.5
- Bug fix - Embedded images not displaying properly in WYSIWYG when called from
folders other than the INBOX
- Bug fix - Saved messages when using SMTP mode incorrectly added extra To,
Subject and Date headers to the sent-mail version of the message
- Bug fix - Variable conflict in download file type
- Bug fix - Emails where the only part was an attachment didn't render correctly
- Bug fix - Parse multipart/mixed -> multipart/related -> multipart/alternative.
There is a known issue with attachments within the multipart/alternative not
being read (this only applies to this rare structure of message).
- Bug fix - SearchFrom and SearchTo language variables duplicated in mailbox.inc.php
- Bug fix - A number of minor English language grammar and spelling corrections
- Bug fix - Non-database mode options pages not displayed due to a misspelt
string (non-database mode is unsupported)
- Bug fix - Language variable corrected in options.tpl
- Bug fix - PostgreSQL user cleanup removed too many old users
- Bug fix - Sort order didn't change from clicking on title bars
- Bug fix - Font when replying didn't wrap around the original message
- Bug fix - RAW HTML line feeds not removed when converting from HTML to plain
text when composing
- Bug fix - Language file include errors when session timed out
- Bug fix - dologin.tpl only loaded $DefaultLang language files
- Bug fix - Missing template variable in addressbook_popup.tpl caused javascript
error if the parent field was not named 'to'
- Bug fix - Get external did not honour compatibility mode
- Bug fix - Suppressed SMTP connection errors of fsockopen() and increased timeout
to 30 seconds
- Bug fix - Folder name still urlencoded when deleting all
- Bug fix - Possible XSS session problem fixed in delete.php
- Bug fix - Conflicting form variables for current folder/destination folder
when moving messages
- Bug fix - Extra flag headers lost on messages if filters are enabled
- Bug fix - Header flag function using msgid instead uid could cause problems
under IMAP connections
- Bug fix - Filter searched only on personal name in From: address rather than
entire From: field

Version 3.5 - May 2004+ New feature - $DatabaseType config variable added to support MySQLi
libraries for PHP5 and MySQL 4.1+. The MySQLi extension is experimental in DWmail
and if it causes a problem then use the MySQL extension and setup your username
with the OLD_PASSWORD() command in MySQL 4.1+
+ New feature - PostgreSQL support as an alternative to MySQL
+ New feature - All language specific text moved from the templates to the 'lang'
directory. Templates use [lang=VARIABLE] structure, each template has specific
replacement variables associated to it. As a consequence of this and template
files which can be best served using genericmessage.tpl and a language variable
have now been removed
+ New feature - Language selection available from login, added to advanced login
but can be added to standard login if desired
+ New feature - Ability to save a composed message as a draft (known issue,
re-saving an existing draft message saves as a new draft rather than saving
as the same draft message)
+ New feature - Support for 'email groups'. Create a group in the addressbook
and add existing contacts to that group. To email that group simply enter "group:group
name" (including the quotes) to the to, cc or bcc field when composing.
Group names will be converted back to email addresses upon sending
+ New feature - New mail notification for IE5.5+ users includes sound notification
+ New feature - Import pre-4.1.0 PHP environment variables
+ New feature - Calendar code optimised and largely re-written to allow next
and previous month displays and selection boxes for a 'go to' feature. Included
in the 'silver' template by default
+ New feature - Supports mime-torture test by UW, all unknown mime types now
displayed as attachments
+ New feature - Message importance displayed in mailbox listing and when viewing
a message
+ New feature - Cc and attachment headers now conditional variables in message
view so that they aren't displayed if they aren't set
+ New feature - Bcc can now be displayed in the message header in the message
view. This is useful for the sent mail folder
+ New feature - Calendar and addressbook can now be enabled or disabled seperately
to each other
+ New feature - Mozilla WYSIWYG editor now allows insertion of http images and
tables using a simplified method than that used for IE.
+ New feature - WYSIWYG editor now contains a remove text formatting option
+ New feature - Get external IMAP email in addition to POP3
+ New feature - Folder management overhauled. Checkboxes used to delete folders,
special folders will not display checkboxes. Renaming folders moved to the bottom
of the page
+ New feature - Download attachments in a ZIP format (requires Zlib extensions
to PHP which are dynamically searched for)
+ New feature - Download all attachments in a single ZIP format (requires Zlib
extensions to PHP which are dynamically searched for). You can disable this
by commenting out the line $allowzip = 1; in view.php
+ New feature - Optionally empty trash automatically on logging out
+ New feature - Read receipt icon displayed instead of an envelope icon if message/disposition-notification
is present in the message structure
- Code change - 'original' template removed
- Code change - Login process moved to dologin.php to tidy and speed up mailbox.php.
This also allows for specific login error messages.
- Code change - lang attribute added to header.tpl
- Code change - Language configuration variables changed to allow multi-language
user selection and to tie a character set to a language
- Code change - View mode moved to conditional template variables rather than
defined in PHP
- Code change - guidedsetup.php now encoded in ASCII format rather than BINARY
to help prevent upload errors
- Code change - New style sheet classes for new mail and selectors
- Code change - Overauled main addressbook display and deletion routines
- Code change - Session variables for options cleaned up
- Code change - WYSIWYG editor colour, size and face selection handling re-written
an improved
- Code change - Compose error message display enhanced
- Code change - Cleaned up guided setup upgrade code
- Code change - Attachments template code moved to composemessage.tpl inside
a conditional tag
- Code change - Read receipt content layout changed to RFC2298
- Code change - Changed error_reporting mode
- Code change - ionCube PHP 4.0.x .so file removed as PHP 4.0.x isn't supported
by DWmail
- Bug fix - IE WYSIWYG editor carriage returns fixed to new lines rather than
paragraphs
- Bug fix - Mozilla WYSIWYG editor default font colours, faces and sizes fixed
to user preferences
- Bug fix - Mozilla WYSIWYG editor default alignment of cursor fixed
- Bug fix - Improved intialisation of WYSIWYG editor
- Bug fix - Cut, copy and paste options added to Mozilla WYSIWYG (a Mozilla
preference must be changed to allow this, however the user will be warned if
this function is disabled)
- Bug fix - Email address entry (rather than username entry) previously not
allowed in standardlogin.tpl
- Bug fix - Specifying manual email address via local login caused username
to be used as part of the email address
- Bug fix - PHP short tag in midas.php fixed
- Bug fix - Possible session bugs fixed in calendar and addressbook Location
headers
- Bug fix - Possible session bugs fixed in external.php
- Bug fix - Read receipt not always sent due to read header set prematurely
- Bug fix - Internet Explorer WYSIWYG editor occasionally lost default font
face settings in a new paragraph when sending but displayed correctly whilst
editing
- Bug fix - Clicking select box function in mailbox listing has original class
missing
- Bug fix - Attachments without a content-disposition weren't displayed as an
attachment
- Bug fix - Display and send existing inline image attachments in WYSIWYG editor
in place
- Bug fix - Page navigation on page 2 displayed a page 0 which doesn't exist
- Bug fix - Session missing from read receipt redirect
- Bug fix - Force local error in compose.php when using SMTP
- Bug fix - Validate email addresses in addressbook against RFC standards when
saving so we don't have to check when building an email group list
- Bug fix - Validate and cope with multipart/appledouble MIME sub parts
- Bug fix - Deletion and renaming of folders with spaces fixed
- Bug fix - Creating a folder withing a folder with a space in the name fixed
- Bug fix - Folder pane message count fixed for folders with a space in the
name
- Bug fix - HTML title added to outgoing messages based on the subject line
of the email
- Bug fix - Week number was incorrectly calculated from a Sunday rather than
a Monday
- Bug fix - URL parsing regular expressions re-written to solve minor problems
when parsing a username and password into a url through username:pass@url method
- Bug fix - Folder missing from attachment.php link in view.php
- Bug fix - Malicious HTML clean up routine added a backslash infront of HTML
bookmark links
- Bug fix - Read receipt was checked for when reading a message in the Sent
Mail folder
- Bug fix - Special Folders with spaces in the name didn't display the corresponding
folder icon
- Bug fix - Tabs in plain text messages converted to two HTML spaces so that
they are represented on screen
- Bug fix - [ifexternal] now run on header and footer in addition to folder
pane
- Bug fix - If $folders isn't an array in mailbox.php a sort error is displayed
- Bug fix - PHP version checker updated in test scripts to take into account
PHP version 5
- Bug fix - ParseBody function incompatibility problems with PHP5RC3 fixed
- Bug fix - array_merge() doesn't work in PHP5 is one of the arrays is empty.
Fixed attachments problem in view.php and zipdownload.php
- Bug fix - Embedded image attachments don't work if a base domain is set so
we now code in the protocol://domain/scriptlocation/scriptname.php to attachment.php
- Bug fix - Read attached HTML and TXT files when sent as standard attachments
in text/plain or text/html format and have a content-id defined and NOT a content-disposition
header. Only replicated when using Microsoft Word as an email editor so far.
- Bug fix - Allow inline HTML documents. Only seen so far in Word HTML CSS headers
where a header and footer is sent as an HTML file attachment
- Bug fix - Allow a custom HELO domain message in SMTP to help connections to
remote SMTP servers

Version 3.4.3 - February 2004- Bug fix - Addressbook popup and selector didn't dynamically change
character set
- Bug fix - Sending emails in 8bit character sets in plain text format are now
quoted-printable to be RFC 1521 compliant
- Bug fix - Debugging code left in move message function
- Bug fix - 8bit subject lines now sent according to RFC2047
- Bug fix - To: and Cc: 8bit entries now sent according to RFC2047
- Bug fix - When there are no emails in a folder, Page 1 to 0 is displayed in
the page navigation
- Bug fix - Read receipt option in non-database mode displays 2 yes options
instead of yes/no. The function worked, the wording was just wrong
- Bug fix - If reply-to field was hidden and no reply-to has been set in the
preferences, no value was given in the hidden field. Whilst this did not affect
the running and sending of an email it has been cleaned up
- Bug fix - Some SMTP servers rejected FROM and RCPT TO fields if the email
address was not enclosed in angled brackets
- Bug fix - [ifexternal] template variable contents displayed if $AllowExternal
was enabled but $UseDatabase was disabled
- Bug fix - $DefaultSMTP lost through guidedsetup configuration file generator

Version 3.4.2 - February 2004+ New feature - <title> now contains description of the current
page
- Code change - Setup process re-written, upgrade and initial setup files merged.
guidedsetup.php is now binary encoded, please see README.txt for more information
- Code change - Page navigation function enhanced
- Code change - Duplicated menu and folder pane navigation removed. All navigation
moved to folder pane in 'silver' template
- Code change - Warning added to attachment.php if trying to download a file
with .exe, .pif, .bat or .com file extensions
- Bug fix - Moving a message from the mailbox listing to a folder with a space
in the name caused a failure
- Bug fix - Mailbox display and retrieval re-written to fix a bug that causes
sequence numbers in INBOX change when in IMAP mode and running filters. imap_sort
switched to using UIDs and dynamic lookups of sequence numbers added. This may
put an additional overhead on large mailboxes as we have to retrieve the entire
mailbox to run filters on it, especially if a filter is run on the body of a
message.
- Bug fix - Typo caused invalid template to be returned if database mode is
disabled and user accesses external.php
- Bug fix - HTMLCleanup function error when forwarding or replying using MIDAS
for Mozilla
- Bug fix - Sort by date order occassionally switched around the wrong way
- Bug fix - Extra commas in the to, cc and bcc fields causes INVALID_ADDRESS@.SYNTAX-ERROR
from php function and tries to send to (and save to addressbook) this invalid
address
- Bug fix - To: and Subject: fields missing in saved messages when using SMTP
mode
- Bug fix - Trash and Sent-Mail folders are now created (or subscribed to) upon
login to fix a bug when creating on first use
- Bug fix - Some 'inline' attachments get lost in plain text emails
- Bug fix - Allow Mozilla Firefox access to WYSIWYG editor (Mozilla Firebird
0.8 now known as Firefox)
- Bug fix - Misnamed variable may have caused an SMTP email to report as successfully
sent instead of displaying SMTP error

Version 3.4 - January 2004+ New feature - New Contact list selector available when composing
messages. Old method is still available by changing ?mode=selector to ?mode=popup
in compose_message.tpl
+ New feature - Addressbook (main view and popup view) now contains an alpha
bar selector
+ New feature - Users can now configure the default font size, face and colour
for composing and replying to messages using the WYSIWYG HTML editor (Database
mode only)
+ New feature - IMAP4 connections can now import email from external POP3 accounts
(IMAP connections only, Database mode only)
+ New feature - Focus username field in standard login page
+ New feature - New compose options to set default reply-to, display reply-to
and bcc fields when composing. New [if] tags in templates for this feature
+ New feature - Option to automatically save recipients to address book
+ New feature - silver and original templates now allow clicking on row to select
a message
+ New feature - From, to and cc email addresses now link to compose form when
viewing a message
+ New feature - Mailbox listings enhanced for sorting and selecting
+ New feature - Calendar now displays the week number
+ New feature - Embed images in an email when composing. To do this first attach
the image to an email and then using the WYSIWYG editor go to 'insert picture'.
One of the options on the dialog box is to select an attached image. (Internet
Explorer 5.5+ only)
+ New feature - [domainlist] in standardlogin.tpl displays a drop down list
of domain names from the 'allowed domains' list. The selected domain is determined
by the value of $DefaultDomain
+ New feature - Auto check new email after a certain time whilst on any page
whilst logged in
+ New feature - Text that is not suited to be handled by a template is now included
in the 'lang' directory. Language packs can now be created by using a new template
directory and file in the lang folder
+ New feature - Default character set can be set from the config file. This
is a global setting and not one users can configure
- Code change - Addressbook selectors in compose moved to templates inside [ifdatabase]
tags for greater customisation
- Code change - Seperated forwarded attachments from new attachments in the
compose template
- Code change - Cleaned up WM_IMAPBuildEmail() and WM_IMAPSendReceipt() in class
WM_IMAPConnection()
- Code change - Message context menu enhanced to include printing and opening
in a new window
- Code change - WYSIWYG HTML editor font listing expanded to include, Geneva
and Georgia. Font attributes extended to font family rather than just a single
font
- Code change - WYSIWYG HTML editor (IE & Mozilla) padding and bottom border
added to editor window
- Code change - User options section overhauled (database mode only)
- Code change - Session security previously matched client IP address to session
IP address, however this could cause problems with proxies (e.g. AOL) so now
we partially check IP address to allow close ranges to validate
- Code change - Set magic_quotes_runtime to off for compatibility
- Code change - PHP version checker re-written
- Code change - Template rendering functions re-written
- Code change - Message subject added to <title> of printable email
- Code change - 'Save to addresbook' when viewing a message now included directly
in templates with an [ifdatabase] tag
- Code change - Test scripts changed to make them easier to understand
- Code change - Combined IMAPList() and IMAPListNext() functions into one in
imap.inc.php
- Code change - Message save file extension changed from .msg to .txt
- Bug fix - parselinks() error caused by a missing include file when trying
to view a printable version of an email
- Bug fix - Filter cleanup SQL statement in DB_CleanUp() function in mysql.inc.php
incorrect (Database mode only)
- Bug fix - Mozilla WYSIWYG HTML editor defaulted font list to Arial and font
had to be changed before you could reselect Arial
- Bug fix - Internet Explorer WYSIWYG HTML editor insert picture had an option
to align a picture to the center. Center attribute for an <img> does not
exist so attribute removed
- Bug fix - Internet Explorer WYSIWYG HTML editor insert table added extra \n
to editor
- Bug fix - If compose mode changed or compose error and magic_quotes_gpc is
enabled then slashes were added to form fields. stripslashes to input fields.
- Bug fix - Enabling full login in 'local' mode and logging in via the 'standard'
login screen caused an incompatibility in the username settings and thus login
failed
- Bug fix - Folder subscriptions were ignored on create folder function
- Bug fix - Prevent subscribing to INBOX (if not subscribed to already) from
displaying INBOX.INBOX in the folder list (Folder Subscriptions only)
- Bug fix - Number of days per month always displayed 31 due to an error in
number of days per month function
- Bug fix - HTML emails with no attachments or plain text versions caused extra
break lines to be added automatically
- Bug fix - Incorrect 'action' attribute in database upgrade scripts. Database
setup and upgrade files renamed
- Bug fix - Javascript error when composing in plain text or HTML mode fixed
- Bug fix - Timezone miscalculation in mailbox.php could throw some times out
- Bug fix - Use intval() on $_GET['id'] for view.php to force it from a string
to an integer
- Bug fix - Next/Prev links in view.php could be incorrect when logged in via
IMAP4 due to variable conflict in the folderpane

Version 3.3 - December 2003+ New feature - Image attachments can now be auto-previewed when viewing
messages. This can be enabled/disabled from the options screen when using database
connection (default set from config file)
+ New feature - Inline attachments now show as the message having attachment
in the mailbox listing
+ New feature - Inline attachments are now also displayed in the attachment
list with standard attachments
+ New feature - DWmail can now be run in three modes: remote (default), local
(as per < version 3.2) and domain (new). Domain mode allows you to specify
an array of domain names you wish to allow users to check their email with.
These can be remote OR local
+ New feature - Import vCards to your addressbook. Multiple vCards can be included
in the same file for speed
+ New feature - delete.php - If logged in as IMAP and UseTrash is set to 1 then
auto move to Trash folder without confirmation
+ New feature - New HTML cleansing routine when viewing messages. All scripting
removed (inline and script tags) as it could pose a XSS problem), all links
open in new window and tags that can be used maliciously removed (embed, object
and iframe for example)
+ Experimental feature - list only subscribed imap folders. This feature is
experimental only and is disabled by default. Ability to manually subscribe
and unsubscribe folders is not included yet
- License change - DWmail License version 2.1 now includes mention of any 3rd
party license included with the source code. 3rd party code falls under the
supplied licenses. All other code is governed by the DWmail license version
2.1
- Code change - Read receipts no longer use pop-up windows but work within view.php.
readreceipt.php can now be deleted
- Code change - Read receipts options moved to 'message viewing' option section
as it was misplaced
- Code change - Mailbox display options and message display options split into
two options screens for database connections.
- Code change - Logout now redirects to ./ instead of ./index.php
- Bug fix - Minor HTML <label> error in index.php for the advanced login
- Bug fix - Error causing 'to' field in mailbox listings to append the email
address of the last message to the to field of the current message
- Bug fix - Header refresh still executed if an error was displayed on login
and an interstitial page was enabled

Version 3.2 - October 2003+ New feature - Optional interstitial login page. Useful if users are
connecting to remote servers to indicate that the login is taking place but
it's taking some time
+ New feature - New Received: header in outgoing emails with user's IP address
contained within
+ New feature - Internet Explorer V-editor enhanced - Insert/Edit pictures and
tables
+ New feature - Message deletion or moving messages between folders no longer
displays a status page if successful but redirects immedately back to the current
folder. This can be overridden by uncommenting a line in delete.php and/or movemessage.php
+ New feature - New options include opening messages and composing in new windows,
users can define which folder to use for trash and sent mail and users can also
opt to not include the original message when replying of forwarding a message
- Code change - Vastly improved search routine. Now includes result sorting
and date searches
- Code change - Enhanced message composing. Error messages are now displayed
on the compose screen so you can try again without using the back button
- Code change - Attachment handling re-written when composing. Attachments are
no longer lost when changing modes
- Code change - Database options templates added to 'original' template. Calendar
and addressbook templates included but will need to be linked to by the administrator
through the menu.
- Bug fix - Typo in addressbook_entry.tpl in the 'silver' template
- Bug fix - MIME encoded from addresses and names are now decoded properly
- Bug fix - Reached maximum table extents for VARCHAR(255) in dwm-prefs table
which corrupted the stored database preferences. Table column altered to TEXT
type
- Bug fix - Last login is now only updated on initial logins rather than every
time you access a folder listing
- Bug fix - Re: and Fw: subject lines are detected before adding new ones when
forwarding and replying
- Bug fix - Header refresh missing from 'original' template

Version 3.1 - September 2003+ New feature - Sent items folder now uses templates sentitems.tpl
and sentitemslist.tpl. Inbox and sent-items templates now allow variables for
sorting by to: address. This is enabled by default in the sent-items template.
+ New feature - Apply filter rules to new messages in the INBOX (IMAP Only)
+ New feature - Extended Preferences (Database mode only) - Users can now auto-refresh
the mailbox every 30, 60 or 120 seconds. Alternatively they can disable auto-refresh
completely.
+ New feature - options.php, includes/options.inc.php - Extended Preferences
(Database mode only) - Users can now define their own signature (administrator
signatures will still get added if configured).
+ New feature - view.php, viewmessages.tpl, addressbook.php - You can now save
the from address of any email directly to the addressbook (Database mode only)
+ New feature - view.php, compose.php, options.php, includes/options.inc.php,
includes/imap.inc.php - If DWmail is in database mode, user preferences are
now stored in the database for each email address. This has the advantage of
allowing seperate preferences for each email address. The preferences page is
now much more extensible if in database mode. Database mode preferences now
includes a personal name option.
+ New feature - options.inc.php, includes/imap.inc.php - Added ability to sort
mailbox by message date as well as mailbox arrival date. Default is now message
date.
+ New feature - mailbox.php, compose.php, includes/config.inc.php - Ability
to set a default domain for an email address. If a user only enters a username
(i.e. without @domain.com) then the default domain will automatically be appended.
This is useful for installations where all users will be of the same domain
name e.g. ISPs
- Code change - includes/folderpane.inc.php, includes/imap.inc.php - Folder
pane re-written to use a half_open connection to get folder totals. Much less
server and time intensive.
- Bug fix - Folder pane message totals didn't update until page refresh if a
messages was saved, deleted or moved

Version 3.0.2 - September 2003+ New feature - Administrator can define the default inbox, sent mail
and trash folders via the configuration. If you aren't familiar with IMAP folders
we suggest you don't change the default settings, however.
- Bug fix - includes/imap.inc.php - Subject and to fields repeated for saved
messages using local mode (SMTP)
- Bug fix - includes/imap.inc.php - Forwarded attachments sometimes corrupted
- Bug fix - includes/folderpane.inc.php - Number of messages failed if there
was a space in the folder name
- Bug fix - mailbox.php - Folder session not updated due to conflict with register_globals
'on'
- Bug fix - compose.php, attachment.php - Link back to the original message
or folder defaults to INBOX

Version 3.0.1 - September 2003+ Code change - mailbox.php - If the intelligent lookup fails for the
mail server we now default to the domain name rather than mail.domain (Unix/Linux
systems only)
- Bug fix - mailbox.php - When changing folders with register_globals set to
'on' may fail to set new folder
- Bug fix - mailbox.php, view.php - Folder not carried through to next/previous
links if register_globals is set to 'on'
- Bug fix - view.php - HTML messages without a plain text part when forced to
plain text caused a function error in ParseLinks()
- Bug fix - attachment.php - Attachment download page displayed filesize in
bytes without extension
- Bug fix - attachment.php - If you are using DWmail over HTTPS:// as opposed
to HTTP://, internet explorer has a strange bug which corrupts a file download
with the 'attachment' disposition. In attachment.php you can uncomment some
code to forward to an http:// version of DWmail instead.
- Bug fix - compose.php - Re-write of the to, cc and bcc reformatting routine
to make it more reliable
- Bug fix - compose.php - SMTP sometimes failed with a RCPT first error
- Bug fix - compose.php - Extra CRLF didn't work between header and message
when sending via SMTP so message ended up in the header
- Bug fix - source.php - htmlspecialchars() added to displaying the mail header

Version 3.0 - September 2003 + New feature - Optional MySQL mode. If you wish to let your users
use the new calendar and/or address book enable MySQL mode in the config. Note
personal details will be stored in the database (email address and password
will be MD5 encrypted to protect privacy although email addresses in the addressbook
are plain text)
+ New feature - Addressbook added to folderpane listings. Users can now store
and view contacts (MySQL mode only). Note: Original and PDA templates are not
configured for MySQL mode but can be amended by yourself.
+ New feature - JavaScript popup can allow dynamic insertion of email addresses
from the addressbook when composing an email (MySQL mode only). Note: Original
and PDA templates are not configured for MySQL mode but can be amended by yourself.
+ New feature - Calendar feature. Add meetings, events and reminders to your
DWmail account. Note: Original and PDA templates are not configured for MySQL
mode but can be amended by yourself.
+ New feature - V-editor, visual editor for composing HTML messages, now supports
Mozilla 1.3+ and Mozilla Firebird 0.6.1+ using Midas
+ New feature - Users can now define their own timezone. Time/date listed on
the mailbox listing is displayed in the user defined timezone. Default is GMT/UTC
+ New feature - Error handling added to reading template files.
+ Code change - folderpane now exists for both imap and pop3 (but ONLY displays
after login) as you may wish to have main body content which doesn't display
when not logged in. An example of this in use is the silver2 template
+ Code change - Mailbox date now displays day of week unless today in which
case it displays the time of the message. Date is forced to locale time.
+ Code change - Full email address moved to a session variable.
+ Code change - Large scale session replacement variable changes to make a common
format across all templates.
+ Code change - Large scale changes to 'silver' template to include a folder
pane for imap connections. To hide the folder pane for POP3 connections as was
default in version 2.x simply make folderpane_pop3.tpl a blank file.
- Bug fix - search.php - Search summary total did not display correctly.
- Bug fix - delete.php - Delete summary total did not display correctly if delete
was executed from view.php
- Bug fix - ./includes/global.inc.php - Windows systems did not always detect
properly
- Bug fix - ./mailbox.php - Bug causing advanced login to fail with different
mail server defined
- Bug fix - ./includes/folderpane.inc.php - Session id malformed if trans_sid
is disabled in the folder pane
- Bug fix - ./search.php - Check for post variable 'keywords' instead of 'search'
so a search performs by hitting the enter key
- Bug fix - ./compose.php - Check that there is at least one recipient
- Bug fix - ./view.php - Switching view modes with trans_sid disabled may not
have worked properly
- Bug fix - ./view.php - Switching view modes to plain text from a single part
HTML message may not have worked properly
- Bug fix - ./includes/imap.inc.php - Search failed in certain circumstances
- Bug fix - Mailbox sorting failed for sub-folders and defaulted back to INBOX

Version 2.3.2 - August 2003+ New feature - New template for PDA access. License agreement now
allows an additional installation of DWmail solely for PDA usage.
+ New feature - Disable Internet images when viewing HTML emails (as some SPAM
emails send your email address back to their servers using images)
+ New feature - Dynamically switch between text only, html and html without
images when viewing an email
+ New feature - Additional sample configuration files included (one for PDA
and one for 'local' mode). See included readme.txt file for more information
+ Code change - Compose message templates re-organised to make them more intuative
- Bug fix - view.php - Encoded messages which weren't multipart messages may
not have decoded properly
- Bug fix - If login has failed all pages now report an error rather than attempting
to display content (but failing)

Version 2.3.1 - August 2003+ New feature - You can now forward the original attachments from a
message when you use forward mode
+ New feature - You can now define the maximum number of recipients can be included
in a single email. This helps to prevent someone using your server and copying
thousands of email addresses into the Bcc field to use it for spam. Default
limit is set to 50 but can be changed from the configuration file
+ Code change - New method of extracting the username and the host from the
inputted email address when loggin in. Now uses a built in PHP function.
+ Code change - New CSS style for the compose <textarea> to use a monospace
font
+ Code change - Set default font style to arial, 2, black for compose
+ Code change - Set default font style to arial, 2, blue for reply or forward
- Bug fix - Switching from text to html and/or V-editor mode and vice versa
now adds or removes HTML tags properly (and preserves carriage returns)
- Bug fix - Better handling of content type to compose type when replying and
forwarding e.g. plain text email replied to in HTML mode adds in HTML break
lines and vice versa
- Bug fix - Changed intelligent server detection routine to make it more reliable
- Bug fix - Plain text version of HTML emails stripped out carriage returns
from the HTML version
- Bug fix - Plain text version of HTML emails now removes HTML character entities
- Bug fix - Email address does not render properly if DWmail is in local mode
with full login mode enabled
- Bug fix - Recipient fields when composing are now reformatted to RFC822 standards.
"Personal Name" <mailbox@host>, "Personal Name2" <mailbox2@host2>.
Please note that if your personal name contains an @ it MUST be enclosed in
quotes, otherwise we will add the quotes for you.

Version 2.3 - July 2003+ New feature - Allow DWmail to only connect to local servers (by default
DWmail is set to allow connection to any server)
+ New feature - If you use local mode you can let DWmail directly use SMTP to
send emails. DWmail SMTP also supports SMTP authentication. However to use SMTP
directly you can only connect to local accounts.
+ New feature - If you are using a Unix/Linux installation of PHP, DWmail now
checks for the existance of mail. pop3. or pop. sub domains so as to give more
flexibility to the 'standard login'. For windows users DWmail defaults to mail.yourdomain
as a mailserver.
+ Code Change - If a server name is missing in advanced login it now uses mail.domainname
as a default rather than $DefaultServer
+ Code Change - Re-written search to make it easier to use
+ Code change - Config.inc.php cleaned up and seperated into categories as it's
growning quite large.
- Bug fix - Decoded attachment size displayed on attachment download page.
- Bug fix - File size added to the HTTP header for saving a message.
- Bug fix - Search form failed for POP3 connections.
- Bug fix - From address might be incorrect with advanced login if part infront
of @ in email address is different to username.

Version 2.2.3 - July 2003+ New feature - Embedded image attachments (i.e. those that are displayed
in HTML and also attached at the same time) are now displayed when viewing a
message.
+ Code change - New decoding routine for downloading attachments.
+ Code change - Cleaned up the code for displaying existing message in the reply
and forward options.
+ Code change - Added a new X-header to include the mail server to outgoing
messages. As we allow a custom email field in advanced login, an email address
could essentially be spoofed, so we include the users mail server details in
all outgoing emails as well as their IP address.
- Bug fix - IMPORTANT - Corrupt MIME header made some email clients fail to
download attachments sent from DWmail.
- Bug fix - If a filename is not sent with the attachment a foreach() error
is displayed.
- Bug fix - Standard attachments appear to use dparameter for filenames and
inline use parameter. Detection added to functions.inc.php
- Bug fix - File size in Content-Length header was set the the attachment encoded
size, rather than the decoded size causing IE to stall for a time.

Version 2.2.2 - July 2003+ Code change - mail() functions replaced with imap_mail() functions
because of the proper handling of the to, cc and bcc fields
+ Code change - New error handling for sending emails: IMAP errors are now reported
back to the screen when sending email.
+ Code change - Attachment download form changed to GET instead of POST.
- Bug fix - Compatibility mode implemented for alternate login modes. If your
login fails to create a mailbox (i.e. you don't get a rejection just a failure)
try changing the CompatibilityMode setting in config and trying again.
- Bug fix - Quoted-printable encoded messages (i.e. HTML messages) were rejected
by some mail gateways for having lines that were too long.
- Bug fix - When logging in and you receive an error messages, check that errors
are in an array first because if your server does not report an IMAP error you
will receive an implode() php error message.
- Bug fix - When sending attachments in plain text, two emails are send instead
of one.
- Bug fix - When downloading attachments and pressing the OPEN button rather
than SAVE it corrupts the download (Internet Explorer on Windows only). This
has been fixed adding a "Content-Length: " header ABOVE the "Content-disposition:
" header and changing the content-type to application/octet-stream.

Version 2.2.1 - July 2003+ New feature - Cookie support can be disabled or enabled for preferences
from the configuration file. If cookies are disabled it means that preferences
will only be saved for that session.
- Bug Fix - The RedHat 8+ compatibilty broke more systems than it fixed and
so has been removed. If you wish to add it back in you can do so manually. Ask
us for more details if your login fails.
- Bug Fix - Session error caused with trans_sid disabled with automatic parsing
of email addresses in plain text email viewing

Version 2.2 - July 2003+ New feature - User options available to set their own preferences
for things such as sent-mail
+ New feature - Next and previous page are now displayed as part of the inbox.tpl
template and can thus be placed anywhere on that template
+ New feature - When deleting an email in IMAP mode, deleted items are moved
to Trash (can be disabled in config) - IMAP ONLY
+ New feature - New purge option for 'Trash' folder in the folder pane - IMAP
ONLY
+ New feature - Number of messages in each folder shown in the folder pane -
IMAP ONLY
+ New feature - Save option for messages from the view menu (this will save
the raw message including encoded information)
+ New feature - Print message from the view menu.
+ New feature - Support for SSL connections under IMAP4 and POP3. This does
require --with-imap-ssl to be configured with PHP and so by default this setting
is disabled in config.inc.php
+ New feature - Detect signatures and give them a different style. PLAIN TEXT
ONLY.
+ New feature - Session caching default set to 'nocache' but this causes problems
with the back button. This can now be overridden in the config settings to any
valid setting: http://www.php.net/manual/en/ref.session.php#ini.session.cache-limiter
+ Feature change - 'silver' template overhauled
+ Feature change - $AllowSentMail configuration variable function changed to
either be set or unset (rather than disabled or enabled)
+ Feature change - View message stylesheet and template aesthetically changed
in 'silver' templates
+ Feature change - Folder link removed from main menu under 'silver' template
as there is a 'manage templates' option in the folder pane.
+ Feature change - Switched default template to 'silver'. Old default template
renamed to 'original
- Bug fix - Added a notls option to the connection string by default as it caused
issues with RedHat 8.0+
- Bug fix - MIME encoded subject lines are now decoded properly
- Security fix - Session id generation removed from login form to prevent session
fixation (new logout routine implemented to destroy sessions on logout)
- Security fix - XSS (cross side scripting) possible exploit fixed for session
ids when used with javascript or when trans-sid is disabled
+ Code change - Split classes.inc.php into three seperate files to make them
more manageable
+ Code change - Removed common folder pane code from scripts and added to a
folderpage.inc.php include

Version 2.1 - June 2003+ New feature - You can now create sub-folders from any folder. You
can even create folders from the root (although some IMAP servers do not support
this). IMAP ONLY
+ New feature - Rename a mailbox. IMAP ONLY
+ New feature - Sort mailbox by subject, from address, date and message size.
+ New feature - Mailbox icons for messages. For POP3 always reports as new but
in IMAP4 reports as new, read or replied.
+ New feature - Added file type to attachment display in view.php.
+ New feature - Added file type, name and size to attachment.php.
+ Functionality change - Large scale rewrite to search to support multiple fields
and folders all in the same search.
- Bug fix - added sending date to messages saved to the sent-mail folder
- Bug fix - setting replied to header didn't function correctly
- Bug fix - silver template fix to prevent horizontal scrollbar caused by CSS
border on a 100% table.
- Bug fix - imap_close error when login details are incorrect.
- Bug fix - [folders] displaying if login details are incorrect.
- Bug fix - fix to allow you to delete last folder in the list. IMAP ONLY
- Bug fix - message size not displaying in folder. POP3 ONLY

Version 2.0 - June 2003+ New feature - ability to save sent messages (if folder sent-mail
doesn't exist then DWmail will create it). IMAP ONLY.
+ New feature - move messages directly from viewing a mailbox or message to
another folder. IMAP ONLY.
+ New feature - ability to create, delete or view other folders. IMAP ONLY.
+ New feature - folder pane available for displaying in templates (note this
is not included in the default template but is in the template 'silver'). IMAP
ONLY.
+ New feature - Set read flags and answered flags on reading and replying to
emails. IMAP ONLY.
+ Functionality change - All files - Templates now seperated into directories
and can be set from config.inc.php. Two templates will be available from 2.0
onwards. A number of new templates added. Large scale changes to all existing
templates.
- Bug fix - ./includes/config.inc.php, ./mailbox.php - new setting variable
for default port for both POP3 and IMAP4 protocols. Please make sure you have
both these ports accessable through your server firewall (if you have one)
- Bug fix - 'No' button on message delete page returned an invalid session message
- Bug fix - Message size was reporting incorrectly for some messages
- Bug fix - Attachment name didn't appear in some versions of PHP

Version 1.4.1 - May 2003- Bug fix - All files - Large scale bug fix for sessions where session.trans_id
is disabled by default in the PHP configurations causing 'invalid session' messages
to be displayed.

Version 1.4 - May 2003+ New feature - ./compose.php, ./includes/classes.inc.php, ./templates/composemessage.tpl
- Options added to allow a priority and request for a read receipt (Microsoft
Exchange versions of Outlook, i.e. not POP3 or IMAP, may not request sending
a read receipt).
+ New feature - ./view.php, ./readreceipt.php, ./includes/classes.inc.php, ./includes/config.inc.php
- Sending read receipts possible. Can be enabled or disabled from the config
file (Microsoft Exchange versions of Outlook, i.e. not POP3 or IMAP, may not
register the read receipt headers correctly and ignore it). This function makes
use of pop-up windows which may be affected by any pop-up blocking software.
+ New feature - ./view.php, ./includes/classes.inc.php - If a message is in
plain text format, hyperlinks and email addresses are auto linked. Email address
links to DWmail compose form. HTML emails are not scanned for links.
+ New feature - ./compose.php - If a message is sent in HTML format hyperlinks
and email addresses in the signature are auto linked.
+ Extended function - ./includes/classes.inc.php - Return-path header added
to outgoing emails as current email address rather than server admin address.
- Bug fix - ./view.php - Some of the links were not coded to detect if transid
was disabled and thus would fail to transfer the session if it was.
- Bug fix - ./compose.php - ComposeMenu.tpl now not read if new compose (as
opposed to reply or forward).
- Code change - ./view.php, ./templates/viewmessage.tpl, ./dwmail.css - If a
message is in plain text format style 'view_text' is used, for HTML style 'view_html'
is used.
- Code change - ./includes/classes.inc.php - Tidied the code for adding mail
headers for MIME messages. Note: all attachments are sent using MIME 1.0 and
base64 encoding, HTML messages are sent in quoted-printable format and MIME
1.0.
- Code change - ./view.php - Cosmetic change to attachment link display.
- Code change - ./dwmail.css - Removed borders to <body> to allow better
displaying in an 800x600 resolution in the default template.

Version 1.3.3 - April 2003- Bugfix - ./compose.php, added checking to see if magic_quotes_gpc
is enabled and thus stripslashes
- Bugfix - carriage return / line feed problem fixed with viewing and sending
email using Win32
+ New feature - ./compose.php, compose, reply and forward now remembers (by
cookie) the last compose mode you used (e.g. text, html or v-editor)
- Code change - main menu now included as a replaced variable in the header
and/or footer to allow greater template customisation

Version 1.3.2 - April 2003- Bugfix - ./includes/classes.inc.php, fix to plain email composing
with no attachments. Headers may not have included cc or bcc correctly.
- Bugfix - ./includes/classes.inc.php, added chunk_split every 76 characters
for base64 encoded attachments to comply with RFC 2045 sematics. This may have
previously caused a gateway to reject an incoming base_64 encoded email.

Version 1.3.1 - April 2003- Bugfix - view.php changed, if someone sends views multipart/alternative
with only one part e.g. text/html it isn't detected as a multipart/alternative
message but text/plain (so far we've only seen this with SPAM).

Version 1.3 - April 2003- Bugfix - error downloading attachments fixed
- Bugfix - if register globals is disabled then replying or forwarding wouldn't
get message details to reply to.
+ New functionality - search body, subject and sender details across mailbox
+ New functionality - send html emails in addition to plain text
+ New functionality - if you have IE5.5+ on Windows you can use a cut down version
of V-editor
+ New feature - mailbox size total on inbox list page

Version 1.1 - April 2003- Bug fix - ./mailbox.php - Login variables may have caused a mix up
with $_POST and $_SESSION if register_globals is enabled in the PHP settings.
This only affected advanced login
- Code change - Advanced login improved to allow a different username from that
infront of the @ in an email address. Consquently the email address is requested
for login
- Code change - Cosmetic changes to menu.tpl, inbox.tpl to allow email address
display
- Code change - Cosmetic changes to advancedlogin.tpl and standardlogin.tpl
to allow the advanced login link to be part of the template
+ New functionality - Signature support for signatures to be appended to the
bottom of all outgoing emails

Version 1.0 - April 2003+ First public release

Known Issues

- Microsoft Exchange versions of Outlook, i.e. not POP3 or IMAP versions,
may not detect the request to send a read receipt
- Microsoft Exchange versions of Outlook, i.e. not POP3 or IMAP versions, may
not register the read receipt headers correctly and display the disposition-notification
as an attachment