NEW! Features

- New Features
- 2.10.7
- 2.10.6
- 2.10.5
- 2.10.4
- 2.10
- Version 2.9

- Syndication
- Send an archived message to a friend feature - rewritten
- mail.cgi - rewritten (basically)
- Browser-based HTML Message Editor
- List Screens
- Archive Screens
- Email Formatting
- Path Infos
- VERP support
- Fast List Switching
- Batch Notification Enhancements
- Internal Templates
- Subscriber Help Screen
- HTML Screens - XHTML Compatible
- Log In Security
- Developer Stuff

- Version 2.8.12

- Version 2.8
- Version 2.7.1
- Version 2.7
- Version 2.6
- Version 2.6
- Version 2.5.1 8/22/01
- Version 2.5 4/22/01
- Version 2.4.6 2/13/01
- Version 2.41 1/24/01
- Version 2.4 1/18/01
- Version 2.32 12/6/00
- Version 2.31
- Version 2.3 11/20/00
- Version 2.2 10/24/00
- Version 2.1.1 9/24/00
- Version 2.1 9/1/00
- Version 2.01 8/9/00
- Version 2 8/7/00

# New Features

# 2.10.7

- List Settings SQL Backend -

  Available for MySQL and Postgres

  Pretty easy to set up, create the table located in dada/extras/SQL/dada_settings.sql - which is:

       CREATE TABLE dada_settings (
       list                             text,
       setting                          text,
       value                            text
       );

  and set the, $SETTINGS_DB_TYPE to MySQL, or Postgres

  DB FIle to *SQL migration isn't too hard, see the script, dada_settings_dbtosql.pl in the dada/extras/scripts directory,

  Whose instructions are:

  Name dada_settings_dbtosql.pl Description Cute name, huh?

          Basically, this small script takes the information of a Dada Mail list
          settings in the DB File and ports it to the MySQL format.

          Fairly simple and straightforward.

  How to use this script * Backup Everything SQL tables, list files (all of them)

          * Create the List Settings SQL table
              The SQL statement to run should be saved in a file called
              *dada_settings.sql* which is located in the *dada/extras/SQL*
              directory of the distribution

          * Set $SETTINGS_DB_TYPE to the correct SQL type (MySQL, Postgres)
              Directions are located in the Config.pm about this, search for,
              *$SETTINGS_DB_TYPE*

          * Fill in %SQL_PARAMS in the Config.pm file
              Again, directions should be supplied in the Config.pm file.

          After the above (do not skip a step) are done, make sure Dada Mail is
          still running by visiting it in your webbrowser. The program should run
          as if no lists existed - not to worry! We shall fix that soon enough.

          Upload this script into the same directory that you have the *mail.cgi*
          script in, and run it, either from your web browser, or via the command
          line.

          That should be it.

          ps. backup everything.

- Archive Editor plugin has been removed

  Archive editor functionality added to the main mail.cgi script - meaning, you don't have to install this plugin separately.

- Archived Messages Search speed vastly improved for SQL backend.
- Archived Messages Search results can now be cached (set $SCREEN_CACHE to, ``1''
- Added option in dada_bridge.pl not NOT have the [list] or, [list name] viewable in archived messages
- The admin crontrol panel HTML screens to search email addresses has been templated out.
- Added the remote host/ip address to the screen when you want a new password for a list emailed to you - this may help scare the little script

      =item * Option to add Subscription form in rss/atom feed entries. (enabled by default)

- Dada Mail Root Password template templated out.
- Send newest archived message to a new subscriber

  Located in Manage Archives -> Archive Options

- dada_bridge.pl - Preliminary work on stripping specific file ending/mime-type attachments from incoming messages

# 2.10.6

- Added the, ``From'' field and message blurb to the admin archive index.
- [website_name] and [website_url] are now valid pseudo-tags for email messages (sort of a hidden feature - but requested)
- Screen Caching!

  Screen caching saves many of the HTML screens Dada Mail displays, so they don't have to be rendered twice! This could mean a serious speed up to the Dada Mail UI. More information:

  faq.pod.html#is_there_a_way_to_speed_up_screen_rendering__how_to_use_the_screen_cache_

- Redirect w/Query String!

  You can now use the URL Redirects for the confirmation process while also passing a query string to the URL you're redirecting to! This query string holds things like, if the action was successful, the email address used and any errors encountered. Handy!

- Limit Subscription Confirmation Sending

  When enabled, only one confirmation message can be sent out at one time per subscriber, without the subscriber manually requesting (basically, clicking a button) a new subsciption confirmation to be sent. This helps cut down on unneeded message sending and abuse of the subscription confirmation system.

# 2.10.5

HTMLArea support has been replaced with FCKeditor.

# 2.10.4

RSS feeds are now 2.0, up from .91; Atom feeds are now 1.0, up from .03.

# 2.10

Whiz-bang version:

http://mojo.skazat.com/features/2_10/

Sending Options

Time between batches can now be less than a second. Archiving

Viewing Attachments supported.

Inline Images support.

Security - Archived messages are pruned of javascript exploits before being viewed.

Discussion messages will show a link to the message being replied to.

The Iframe that holds the HTML version of the archived message can now be turned on/off by a per-list setting.

Previous/Next Links corrected.

Styled quoted text (for plaintext messages)

Email addresses in archives are encoded to stop email harvestors. dada_bridge.pl

CC, Bcc Infinite Loop Bug Solved.

Initial moderation supported -

Moderators in Dada Mail: a sublist of email addresses that can also send to an announce-only or discussion list without having to be on the subscription list itself. dada_bounce_handler.pl

unsubscribed message sent to list owner and former subscriber Message Sending

``I'm sure'' and ``Open in a New Window'' checkbox options now available in the, ``Send a Webpage'' and ``Send a List Invitation'' screens. List Messages

[list_confirm* tags are, ``Correct'' HTML Templates

Furious combed through for syntactic correctness and neatness. Should be almost 100% XHTML compliant. Deprecated Items Removed

The %STYLE hash in Config.pm has been completely removed.

`checklist()` javascript function removed.

# Version 2.9

## Syndication

Of all the features of Dada Mail, I'm actually excited about this feature the most.

Why? Because this feature turns a mailing list manager with archiving abilities into something truly amazing. Think about it:

You send a message out, the message gets archived. It now exists as two things:

An email message, destined to your subscribers inbox, and content on your website.

With the addition of RSS Syndication, it also exists as part of an RSS feed, anyone can pick up.

2.9 adds the following to this mix:

- Atom Syndication Support

  Atom Described:

  http://www.atomenabled.org/

  RSS ver .91 already comes with Dada Mail, but Atom support is pure icing. It's a bit better and supposively easier to work with development-wise. It also says, ``yes, we're really serious about this whole syndication thing''

- Pinging Update Services

  Dada Mail 2.9 doesn't just syndicate its content, it'll reach out and let the major update services know about the updates.

So, to get back to our, ``what happens to your mailing list message'' train of thought -

Message gets delivered, message gets archived, message is syndicated, update services are notified.

Some of these update services, like http://technorati.com have a search engine, of just syndicated information for you to search through - Dada Mail let's Technorati know a new message has been sent, the message gets placed in Technorati's search results - in almost real time - truly incredible.

If you haven't noticed - this is almost exactly what a weblog does - sans perhaps the trackback URL and comments on the individual entries. The advantage of using Dada Mail is obviously the whole, ``it's first and foremost a mailing list manager'' - I still believe that there's greate value in using a Mailing List Manager. Used correctly, mailing list messages are really really useful.

## Send an archived message to a friend feature - rewritten

Most of mail.cgi was rewritten, but I wanted to spotlight the Send an Archived Message to a Friend feature, which has been entirely rewritten; to sort of go with the above, your message is also resendable from visitors of your site, to their friends.

## mail.cgi - rewritten (basically)

We didn't mean to, but the mail.cgi is rewritten. It weighs in almost 100k less than the previous version. Wow!

## Browser-based HTML Message Editor

HTMLArea, a browser-based WYSIWYG editor can now be integrated easily into Dada Mail. This means you can write richly formatted HTML, right in your web browser. The program has limited support for copying/pasting formatted text from products like `Microsoft(tm)` Word.

Instructions are here:

Config.pm.html#html_area_integration___htmlarea_url

## List Screens

- Breadcrumbs

  I noticed that navigating the list screens - meaning the screens created by Dada Mail that have to deal with a certain list, isn't very easy.

  I put in place breadcrumb links to help you navigate the different areas. It's nice.

## Archive Screens

- Displaying Complex HTML Messages

  A problem with being able to send very complex email messages, is that you have to support viewing the email messages that you send, if you have your archives available. In the past, Dada Mail's support for viewing multipart/alternative messages, with or without attachments was dismal.

  Dada Mail now has great support to parse and display its archived messages. Messages authored using the, ``Send a Webpage'' technique show up absolutely perfectly.

  (attachments are still not supported, although the encoded content does not spill out as a garbled mess in the archive screens)

- Archive ``Blurbs''

  Archive ``blurbs'' have been developed, to show a snippet of an archived message, viewable befiore you click and see the entire archived message. In a glance, you can get an idea on what kind of messages are sent out in a given list.

## Email Formatting

Dada Mail now has an honest to goodness Email Message formatter that is completely MIME aware.

What's this mean? It means that your list templates will be applied correctly. It means that attachments work. It means your messages won't be flagged by email filters for poor formatting. It means you don't have to be an expert (really) on how to format email messages. You just need to write them.

More on this subject -

Using SpamAssassin as my test ( http://spamassassin.org ), I've been working on making Dada Mail's messages score better on the various torture tests it puts email messages, destined for your mailbox through. I used Spamassassin because it's well documented and is the basis of many commerical products, as well as it's own Open Source implementation.

To be direct and honest, my work on Dada Mail was not to apply tricks to get through SpamAssassin and other filters, but to use best practices when it comes to formatting email messages. Again. No tricks. None. Best practices - yes!

Some tests were surprising to me; for instance, a message formatted in HTML, but not having a proper format - ie: no start/end <head> tag, no start/end <body> tag, no start/end <html> tag get a significant penalty. Because of this, Dada Mail will now make sure that all HTML messages sent using the program will comply to this standard.

Another test that was surprising to me was finding out that HTML messages sent out without a PlainText version (known as a multipart/alternative message) get a similar rather significant penalty. Because of this, all HTML messages, sent using Dada Mail will include a PlainText version of the message automatically - meaning, you don't have to worry about it.

## Path Infos

Many, many many of the Query Strings in Dada Mail - and not only in email messages, use a path info, instead of a query string. Here's a real example:

Query String Version:

http://justinsimoni.com/cgi-bin/dada/mail.cgi?flavor=archive;list=announce;id=20040604025003

Path Info Version:

http://justinsimoni.com/cgi-bin/dada/mail.cgi/archive/announce/20040604025003/

Both of these URLs go to the same screen.

- The Path Info version is more compact
- The Path Info version is more clear
- The Path Info version is way more search-engine-friendly
- The Path Info masquerades like it's a directory structure

Another example:

Query String Version:

http://example.com/cgi-bin/dada/mail.cgi?f=n&l=announce&e=justin%40example.com&p=8911234

http://example.com/cgi-bin/dada/mail.cgi/n/announce/justin/example.com/8911234/

Slightly shorter. Nicely shorter.

The email address is also now embedded within the URL, instead of being blatantly encoded in - notice the, %40 in the query string version. %'s in URL's are a big no-no for some services, like AOL. Hopefully, that problem is fixed now

## VERP support

A nerdy feature, here's a nerdy description:

http://cr.yp.to/proto/verp.txt

In summary, VERP support means that we embed the recipient of a mailing list message into the Return-Path header of the message itself.

This is neat because:

- Helps parse bounces

  It'll be easy to find out the true bouncing email address of a message

- AOL!

  if you get a complaint from AOL, you'll be able to pick out what the email address is, and, for example, unsubscribe them from your list;

## Fast List Switching

If you have more than one list, log into one of them using your Dada Root Password. You'll see on the right hand side a little widget to switch to the other lists available with a simple click. Handy.

## Batch Notification Enhancements

You can now be notified after every x batches are completed, instead of every batch. Seems like a silly feature, unless you have a large lists and small batches.

Batch notices should also now include:

- How long the mailing has taken
- A guess on how long is left in the mailing

## Internal Templates

A very large and very justified complaint about Dada Mail was that most of the HTML of the program was embedded in the Perl code itself. This makes customizing, editing and translating the display text next to impossible.

We are very happy to announce that most (~ 95%) of the display text used in Dada Mail has been templated out!

This has several advantages:

- mail.cgi is much smaller

  Less embedded HTML in the mail.cgi file means that Dada Mail will start up faster and take less resources to run.

- mail.cgi is easier to maintain

  mail.cgi was rewritten - mostly by taking out the embedded HTML; the resulting mail.cgi file is much more easier to develop with - especially if you're not completely familiar with everything;

- Customizable? Oh yes. Customizable.

  There are currently about 70 templates in the template directory of Dada Mail located at:

  dada/DADA/Templates/template

  All these internal templates are created using the freely available HTML::Template CPAN module. Learn its templating language here:

  http://search.cpan.org/~samtregar/HTML-Template-2.7/Template.pm

  It's made to be very simple.

Some of the more notable templated out HTML are:

- The Default List Template

  dada/DADA/Template/templates/default_list_template.tmpl

- The Default Admin Template

  dada/DADA/Template/templates/default_admin_template.tmpl

- The Default CSS file:

  dada/DADA/Template/templates/default_css.css

## Subscriber Help Screen

There's a new screen in Dada Mail to help would-be subscribers make sure they actually receive the email confirmation message. Basically, it points out how to add the list owner's email into the address book/white list/safe list/whatever-it's-called of their email reader. I don't have even the beginning of all the mail readers available, but it's better than nothing. Here's a real world example:

http://justinsimoni.com/cgi-bin/dada/mail.cgi/subscriber_help/announce/

The whole idea, again, is not to trick or hack about the problem, but to face the problem, and come up with a solution. Mail readers filter/flag email messages coming through, sometimes they suck at it - here's a way, using the mail reader to work around such suckage.

## HTML Screens - XHTML Compatible

The original look and feel of Dada Mail was basically finalized in version ONE of the program. Since then, minor tweaks have been done to the design, but it's basically been the brown header, and content in a small, hairline bordered table.

The design itself was pretty good for 1999, whipped up by some 18-year-old punk, but times have changed and web browsers have caught up to web standards and there's better ways to format things than tables within tables within tables.

Saying that, The default Administration Template and List Template are completely xHTML Transitional compatible. Much work has been done to make sure every screen validates.

The design itself has been refreshed slightly, fonts are somewhat larger and screen real estate is being taken more advantage of. You won't be too lost using Dada Mail 2.9 if you're upgrading from an earlier verison, but it's a welcome surprise.

Some of the smaller enhancements are as follows:

- button styles - out of the Config.pm file

  For reasons that elude me, the Button styles for Dada Mail were kept in the Config.pm file, under the %STYLE hash. These are now deprecated, and the styles themselves have been moved to the default css file.

## Log In Security

If the needed parts are available (you'll need Perl 5.6), Dada Mail now saves the log in information NOT in the cookie, but rather in what's called a session file. What's this mean? It means you're not passing the list name and (encrypted) list password back and forth from the server to your web browser every time you access the list admin control panel. Depending on how you look at this, this is either a secuirty enhancement or a security hole blocked. I'll leave that up to you;

## Developer Stuff

- Dada Mail Bundle

  If you ever wonder what the needed CPAN Perl modules are for Dada Mail, they're now listed in the DadaMail.pm Perl Bundle at:

  dada/extras/developers/DadaMail.pm

  More on Bundles:

  http://www.perl.com/doc/manual/html/lib/CPAN.html#Bundles

  Again, these modules are installed in the dada/DADA/perllib directory, and DO NOT have to be manually installed by yourself.

- My personal TO-DO list

  I added my personal TO-Do list to the distro at:

       /dada/extras/developers/TODOlist.txt

  Mostly intersting for dev versions, you can get a fresh copy at:

  http://cvs.sourceforge.net/viewcvs.py/mojomail/dada_mail_stable/dada/extras/developers/TODOlist.txt?rev=1.32&view=log

# Version 2.8.12

- Auto backups of list settings and archives.

  A ``history'' of any change you make of your list settings and list archives are automatically saved. No more losing your list data after a unexpected server move or system ``update''.

- Easy restore of list settings are archives

  Web-based restoration of lost list settings and/or archives is just a few clicks away. Your valuable information is now more fault tolerant than ever.

## Version 2.8

Features Added:

- Rewritten SMTP sending engine

  Dada Mail has been upgraded from Version 2.05 of Mail::Bulkmail to version 3.05 provided even better support for SMTP sending.

- Security Enhancements
  - Referer

    Access to a list's control panel can now be restricted by referer, meaning, you can't visit any screen of the list control panel by any page except another list control panel screen.

  - Secure URL

    You can now set a seperate, 'secure', URL to access the list control panel by.

  - Internationalization
  - $HTML_CHARSET

    HTML screens will be printed out with the charset setin $HTML_CHARSET.

  - Code restructuring

    Dada Mail is working towards being easily translated to any language you need. The first steps toward this have been taken

- Redesigned ``View List'' screen

  It's now easier than ever to admin your list.

- ``Send a Webpage'' control panel rewritten

  Sending a webpage to your list is much more robust, taking to account outside stylesheets and giving you the option to embed the images into the message itself in various ways.

  You may also pass a username and password to access password protected webpages.

- ``Send Archive to a Friend'' Rewritten
- List Invitation Messages can now be saved, for future mailings
- Archived messages can now be easily resent

Bugs Fixed

- You no longer have to check ``Send all e-mails with only the address in the 'To' and 'From' message headers'' when using SMTP

  This was fixed by the upgrade to Mail::Bulkmail 3.

- The SQL backends correctly remove subscribers from the table (hard remove) instead of a soft remove
- $LIST_IN_ORDER works correctly for the SQL backends
- Temporary sending lists are removed when using a SQL backend
- Invitation subscriptions are correctly removed when using a SQL backend
- When using SMTP sending, Mojo will send the list password to the list owner, when you forget, using the SMTP settings, instead of sendmail (whatever $MAILPROG is set to))

## Version 2.7.1

- Archives can be added to a list without sending an actual mailing.
- Mac iCal URLS

  (webcal://...) are now supported and will be converted to a live link in archives and in HTML from plaintext list messages, the same way http and ftp links are.

## Version 2.7

- list-specific headers can now be removed
- List templates can be applied to HTLM list messages
- POP-before-SMTP authentication tester
- SMTP settings easier to set up.
- Charsets should work again. (sorry 'bout that)
- Subscribe/unsubscribe on the default page (fancy that!)
- Each list has its own screen, where can subscribe/unsusbscribe, view the lists information and privacy policy and alos browse through the list's archives.
- email validation sees whether a mail host exists for the address's domain.

  This can seriously cut down on the amount of bounces you receive when people put invalid addresses in a subscription form.

- send a test message using dada_send.pl

## Version 2.6

- Broader email support

  support for emails with new, 4 character top level domains (ie .info)

- SQL database support

  Postgres, MySQL subscription list support, as well as framework for any other kind of subscription backend.

- Admin Control Panel Customizaton

  Administration look and feel now skinnable

- POP-before-SMTP Authentication support
- Change the name of your list
- Included Bounce Handler
- Alphabetically sorted lists
- Rewritten dada_send.pl script
- Root Login Enhancements

  Lists logins by root allow you to turn on and off certain features of the list control panel

- Better WinNT support

  Bulk sendings do not have to be `forked()` for greater WinNT compatibility

## Version 2.6

- Broader email support

  support for emails with new, 4 character top level domains (ie .info)

- SQL database support

  Postgres, MySQL subscription list support, as well as framework for any other kind of subscription backend.

- Admin Control Panel Customizaton

  Administration look and feel now skinnable

- POP-before-SMTP Authentication support
- Change the name of your list
- Included Bounce Handler
- Alphabetically sorted lists
- Rewritten dada_send.pl script
- Root Login Enhancements

  Lists logins by root allow you to turn on and off certain features of the list control panel

- Better WinNT support

  Bulk sendings do not have to be `forked()` for greater WinNT compatibility

## Version 2.5.1 8/22/01

- Security Enhancements

  Mojo is more secure than ever.

- Logging

  Almost all ofthe activites of Dada Mail can be logged.

- Send a webpage from your list Control Panel

  All you need to send out any webpage on the internet to all your subscribers is a URL. Very handy, very cool.\

- Restart Dropped Mailings where they stopped

## Version 2.5 4/22/01

- Major Bug Fixes

  'nuff said

- Invitation Feature

  Send out a mailing inviting people to join your list. This is a much more polite way of subscribing people to your list

- List Backup Script

  This version comes with a utitlity that allows you to backup your subscription lists.

- List Statistics Script

  This version comes with a utility that allows you to create daily statistics about your subscription lists.

- Scripting Examples

  Included with the Dada Mail distribution are sample scripts that give you an idea on how Dada Mail does it's mojo and how you can hook into the Dada Mail system yourself.

## Version 2.4.6 2/13/01

- Bug Fixies

  many peculiar bugs that cropped up after the release of Dada Mail 2.4 and after that weren't found when in development have been delt with. Anyone who has been using Dada Mail 2.4 and above and been having trouble, please upgrade.

- Completely New Message Sending Control Panel

  We've totally re-wrote the control panel for sending list messages, using the comments and ideas from users of Dada Mail. There are now two ways to send list messages in Dada Mail, Basic and Advanced.

- Basic Mode is what you're probably used to, you have a form where you can write ina subject, write your message and select how to treat the message as, either HTML, Plain Text, or both
- Advanced Mode gives you more control over the list message being mailed. You can change the From: Reply-To: and Errors-To: headers, as well as being able to set the Precedence and Priority of the message. Attachments are also now supported throughout Dada Mail. You can attach as many files as you would like to your list message. Finally, you can now write two different versions of your list message, a plain text version and an HTML version. People who receive your mailing will automatically see the correct version of the message, depending on what their mail reader supports.

## Version 2.41 1/24/01

- Archive Search Enhancements

  Archive search results are now shown onscreen with a summary of every place your search term was found in the archived message.

- Bug Fixies

  Several small bugs were found in Dada Mail 2.4, that are fixed in this version.

## Version 2.4 1/18/01

- Full SMTP Support

  All mailings done by Dada Mail can be done using a SMTP connection, yielding incredibly fast deliveries. Dada Mail uses the Mail::Bulkmail package - a fast, if not the fastest Bulk Mailer module in existence. SMTP mailings will work transparently to the end user, everything you've grown accustomed to while using a mail program will be available for you using smtp.

- Advanced Archive Features

  Archiving and displaying have been totally rewritten and overhauled, many new and useful features have been added to your message archives.

- Edit any archived message
- Search any archived message
- Send archived messages to other people
- Browse through archives with previoius and next links
- Customize how archives are presented to your visitors
- Set Limits on how many archive links are shown at once in the archive index
- Show the sent date for archived messages in a variety of formats.
- Optimized for Large Lists and Speed

  Many internal functions of Dada Mail have been completely rewritten to be optimized for large/busy lists. Have your list of 50,000 respond as if there were only 50 people on the list.

- More Group List Options

  Have a finer grain of control on how your group lists are run.

- Send Unsubscription Confirmations

  Double opt out unsubscribers, for greater security.

- Advanced Sending Options

  Support for Non-English character sets, different Content-Types, and Precedence Settings.

- Support for Attachments in dada_send.pl
- Refined UI

  Dada Mail's control panel is more like any other program on your computer that you are familiar with

## Version 2.32 12/6/00

- Black List Rules

  You can now specify what e-mail addresses are not allowed to subscribe to your lists (like you @yours.com), or match a part of an email address, (like .com or Homer). E-mail addresses are check to see if they are black listed when somone tries to subscribe to a list, when they confirm to a subscription e-mail and in the administration control panel, when e-mail addresses are added.

- Mojo Root Password allowed to log into any list

  You now have the ability to use the mojo root password to log into any list on your site, instead of trying to keep track of many password lists.

- UI Redesigns

  The ``Remove Subscribers'' screen has been clarified, as has the ``Administration Login'' screen, the sign in screen, and the ``new list created'' screen.

- Search Your List Subscribers.

  Searching your list subscribers is accessable from the control panel menu (it is disabled by default)

## Version 2.31

- Greater Support for Weird List Names - Including list names with non - English characters, dots, dashes and apostrophes
- small bug fixes, and better subscription handling

## Version 2.3 11/20/00

- Batch Sending - Send lists messages in batches in specified intervals.

  Very large lists can sent without bowser timeouts, mail program restrictions, or server overload.

- Receive Notice When Batches Are Completed - can be turned on and off
- Receive Notice When Entire List Mailing is Completed - can be turned on and off
- Mailing List Options - Hide your list, close your list, stop receiving subscription/unsubscription notices, stop requirng confirmation e-mails.
- Subscription Routines Rewritten - In with the new, out with the old.

  Routines are now faster, more sophisticated and less error prone.

- Unsubscription Routines Rewritten - Ditto.
- Auto Generated Form Code Now Includes Unsubscription Option - Subscribe and Unsubscribe from any page on your site.
- View List Control Panel Customizable - Turn off and on features of the View List control panel, add domains and services to watch. This control panel has also been optimized to handle larger lists better.
- Tutorial and Help Links Right in the Program - Articles written to help you with template making, batch sending and the subscription process
- List Messages Include Full Subscription/Unsubscription Links and Real e-mail Address in the ``To:'' Header
- HTML Text Customization - Customize Confirmation, Subscription Successful and Unsubscription Successful HTML messages right in your list's control panel.
- New E-mail Validation Routines - Work better, '@' is now not found to be a valid e-mail address.
- Bug Fixes - Lists can now handle dots, '.' in their name, 'headers too big' sendmail error resolved, 'View List' control panel not loading resolved for very large lists, small bug fixes around the table.

## Version 2.2 10/24/00

- Send E-mails with your Email Program - with dada_send.pl, you can now send list messages using your favorite e-mail program, such as Eudora or Outlook.
- Group Lists Now Supported - Dada Mail can now be used for group discussion lists.
- E-mail Customization - Most e-mail messages sent by Dada Mail can be customized to look exactly like you want! You are no longer stuck using the default messages or try to go through the script and change the messages yourself.
- Back Links Created per List

  you can now specify a link back to your site on a List by List basis

- Perl List Archive Options

  you now have the ability to start and stop message archivings, as well as hiding archives to visitors on a list by list basis.

- Interface Changes

  The Dada Mail web-based interface has been cleaned up and is now taking advantage of recent CCS style abilities.

- Internal Structure

  Dada Mail can still be set up by changing just 4 variables, but can also be customized and tweaked using the CONFIG.pm file. Having the variables set in a Configuration file means other programs can be built to take advantage of Dada Mail's abilities (like dada_send.pl, included in the distribution) and you can now make utilities that work with Dada Mail.

- Modularization

  Most shared subroutines are now kept in one Module, all HTML template subroutines are kept in another, all password subroutines are kept in still another and configuration settings are kept in one more. This means writting new abilities in Mojo will become far easier and Dada Mail utilities will be faster than ever!

- Default List

  You can now set a default list that will set the overall look and design of Dada Mail screens, making Dada Mail blend transparently into your website like never before.

- Administration Customization

  You can now specify which sections you want available to a user, if you want to set up this script for a client, you can simplify the interface so as not to confuse the person or keep them from playing around with something you don't want them to.

- Bug Fixies

  Subscribing to a list when browsing list archives now works (again).

## Version 2.1.1 9/24/00

- HTML List E-mails Now Supported.

  You can now send List E-mails in HTML, messages are saved in HTML when archived, and Mojo knows the difference between plain text messages archived and HTML messages archived and will show them correctly. When sending the List E-mail, you have the choice to send messages in plain text, HTML , HTML converted to Plain text and both HTML and Plain Text at the same time, garunteeing that the person reading your e-mail will be able to view it, even if their e-mail client doesn't understand HTML.

- Small Unsubscription Bug Fixed.

  There was a small problem when trying to unsubscribe to a list, this has been resolved, List E-mails do not include the email and pin number in the unsubscription link, this is becaue Mojo does not send List E-mails one at a time, but all at once and cannot make each message different.

## Version 2.1 9/1/00

- Enhanced Admin E-mail Deleting.

  The Delete E-mail Interface is similar to the ``Add E-mail'' interface now, with a clearer way to delete e-mails, e-mails can be chosen from the entire list into a seperate delete list instead of checking off exactly what e-mails should be deleted from a list of every single e-mail address.

- Enhanced E-mail Searching

  all e-mails can be searched in your list, searches can be made in several ways; general searches, searches by Top Level Domains, and searches by popular ISP and e-mail searcices.

- Enhanced ``View List'' Control Panel

  Several tables are now available under ``view list'' in each list's control panel that lets you see your subscribers sorted by Third Level Domain Names (.com, .edu, .net) and popular ISP's and e-mail services (Yahoo! Mail, Hotmail, Prodigy) The Administator can now also send the entire list to himself, or open the list in a new window.

- More List Information

  When setting up a new list, you can now specify a list administrator, who will receive the list's e-mail error messages and also write a private policy statement. Both of these new fields are optional.

- Beginning of Modularization

  Dada Mail is starting to Modularize itself, breaking up into smaller files for better performance and easier customization. Dada Mail now has seperate Modules for sending e-mail, its templates and misc. subroutines. These modules can be incorporated into your own Mojo-like program.

- Archives The index of each lists archives now show the date they were sent.
- Bug fixes, spelling corrections and improved clarity.

## Version 2.01 8/9/00

- Dada Mail now has the ability to save its list information in a directory other than the one the mojo.cgi script is in. This allows for greater security, as list information can be stored below the public html directory, and totally invisible to a web browser

## Version 2 8/7/00

- The entire program has been totally rewritten.

  Many new features have been added on the admin side, as well as the visitor side All features in place before have been enhanced in some way.

- Database Use

  Dada Mail now uses the AnyDBM_File module instead of just the DB_File module, making it much more exportable to different server configurations.

- Archiving

  Dada Mail has now been given the ability to archive its messages, and show these archives to your visitors and from the administration side. This ability can be turned off and on and archives can only be available to the administration if need be.

- Templates

  The look of the script can be changed using templates that Dada Mail will recognize and use. This can be managed easilly on the administration side using your web browser.

- Password Protection

  Dada Mail now uses encrypted passwords for all its lists, protected the information and the list itself

- List Mailings

  Dada Mail delivers the messages to the mail program in a more streamlined manner, making delivery seem to take less time.

- Error Handling

  Errors when using the script (not server side errors) are handled in a much more pleasant way.

- Internal Structure

  The code of Dada Mail has been rearranged and clarified. Better coding methods have been taken advantage of and the script as a whole is more efficient. There were also a few speling mistakes fixed :)