httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Maxime Petazzoni <maxime.petazz...@bulix.org>
Subject mod_mbox user interface
Date Sun, 10 Jul 2005 14:19:24 GMT
Hi,

As promised, here comes a description of my plans on mod_mbox new user
interface.

First of all, it is very important that mod_mbox works with all
browsers (in the idea of "Best viewed with all browsers"). This is why
I will distinguish two modes :

- the classic, Javascript-less interface
- the JS-powered AJAX browser.

The homepage of a mailing list archive will display the list of
available mailboxes (as it does now), and for each mailbox, it will
propose something like this :

July 2005    Browse (242 messages)
             (or browse by date, author or thread)

Each of the three bottom links (date, author, thread) are links to the
simple interface. This line may be displayed smaller than the "main"
link.

There is not much to say about the classic interface. It's a kind of
compatibility mode, and it will works exactly as the current version
of mod_mbox : browse by date, author and thread, viewing individual
message once at a time, etc.

URIs for this mode are (base: /YYYYMM.mbox/) :

/date
/thread
/author
/<message_id>

All these URIs reply with XHTML contents (or whatever output format we
choose).

The browser will be very different. After you've choosed the mailbox
you want to browse, it will load a very simple XHTML page with an
onLoad Javascript function, located at /YYYYMM.mbox/browser.

This function will make a first request to grab the mailboxes list and
display it in a sidebar on the left. Each mailbox has is linked to its
corresponding browsing interface, and the current one is highlighted.
Then, it will make another request to grab the message list, and
display it in the main part of the page, in the default sort format :
threads.

+---------------+  +------------------------------------------------+
| Box list      |  | Message list          Threads | Authors | Date |
+---------------+  +------------------+------------------+----------+
| Jul 2005  242 |  | Maxime Petazzoni | mod_mbox         | Jun 26th |
|*Jun 2005**561*|  | Paul Querna      |   Re: mod_mbox   | Jun 27th |
| May 2005  478 |  |

In the message list box header, links for changing message list sort
order. These links do not make any request to the server, the
Javascript will do the job.

When the user clicks on a message, the message list collapse to a ten
lines message context, and a new box appears under the message list to
display the mail. Mail contents are fetched by a Javascript
request. The current message is highlighted in the message list.

In the message view box header, links for next and previous message
(in current sort order), and a 'X' to "close" the message, and
re-expand the message list.

This features requires some "backend" URIs that mod_mbox must
handle. These URIs will be answered with XML contents. They will be
(still based on: /YYYYMM.mbox/) :

- Box list : /ajax/boxlist
  Reply    :

<mailboxes>
 <mbox year="2005" month="07" msgs="242" />
 <mbox year="2005" month="06" msgs="561" />
 <!-- the rest ... -->
</mailboxes>

The year split I added recently will be deleted since it's not a good
XML structuration.

- Message list : /ajax/msglist
  Reply        :

<messages>
 <thread>
  <mail id="..." linked="0">
   <from>maxime.petazz...@bulix.org</from>
   <strfrom>
    Maxime Petazzoni &lt;maxime.petazz...@bulix.org&gt;
   </strfrom>
   <subject>mod_mbox</subject>
   <date>Sun, 26 Jun 2005 17:42:42</date>
  </mail>
  <thread>
   <mail id="..." linked="1">
     ...
   </mail>
  </thread>
 </thread>
</messages>

The linked parameter is set to 0 if the message comes from another
mailbox, but the replies are in the current one. In this example, the
current mailbox could be July 2005, and the second mail replies to a
mail from June 2005.

- Message : /ajax/<message_id>

<mail>
 <from>maxime.petazz...@bulix.org</from>
 <strfrom>
  Maxime Petazzoni &lt;maxime.petazz...@bulix.org&gt;
 </strfrom>
 <subject>mod_mbox</subject>
 <date>Sun, 26 Jun 2005 17:42:42</date>
 <smime>
  <smime id="1">
   <attach id="1" type="text/plain" name="Message" />
   <attach id="2" type="text/plain" name="mod_mbox.patch" />
  </smine>
  <attach id="2" type="application/pgp-signature"
          name="OpenPGP Signature" />
 </attachments>
 <contents>
Hi,

This is a signed S/MIME mail with an attached patch !

- Sam
 </contents>
</mail>


Well, I think that's all I need to say on the browser. I know this may
not be perfect, so feel free to comment and criticize, especially the
XML replies.

- Sam

-- 
Maxime Petazzoni (http://www.bulix.org)
 -- gone crazy, back soon. leave message.

Mime
View raw message