Further cleanup of mailbox template output
authorMichael M Slusarz <slusarz@curecanti.org>
Fri, 23 Apr 2010 16:55:27 +0000 (10:55 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Fri, 23 Apr 2010 20:43:53 +0000 (14:43 -0600)
Makes things a bit more templateable - move CSS-related stuff out of PHP
script. Also, try to remove some complexity/wordiness/excessive layout.

imp/mailbox.php
imp/templates/imp/mailbox/actions.html
imp/templates/imp/mailbox/actions_deleted.html
imp/templates/imp/mailbox/empty_mailbox.html
imp/templates/imp/mailbox/form_start.html [new file with mode: 0644]
imp/templates/imp/mailbox/header.html
imp/templates/imp/mailbox/mailbox.html
imp/templates/imp/mailbox/message_footers.html [deleted file]
imp/templates/imp/mailbox/message_headers.html
imp/themes/screen.css

index 85324a1..8bad753 100644 (file)
@@ -24,13 +24,6 @@ function _outputSummaries($msgs)
     if (!isset($template)) {
         $template = $GLOBALS['injector']->createInstance('Horde_Template');
         $template->setOption('gettext', true);
-
-        // Some browsers have trouble with hidden overflow in table cells
-        // but not in divs.
-        if ($GLOBALS['browser']->hasQuirk('no_hidden_overflow_tables')) {
-            $template->set('overflow_begin', '<div class="ohide">');
-            $template->set('overflow_end', '</div>');
-        }
     }
 
     $template->set('messages', $msgs, true);
@@ -250,13 +243,6 @@ if ($readonly) {
     $showdelete['purge'] = false;
 }
 
-/* Generate mailbox summary string. */
-if (!empty($pageOb['end'])) {
-    $msg_count = sprintf(_("%d to %d of %d Messages"), $pageOb['begin'], $pageOb['end'], $pageOb['msgcount']);
-} else {
-    $msg_count = sprintf(_("No Messages"));
-}
-
 /* Generate paging links. */
 if ($pageOb['pagecount']) {
     $rtl = !empty(Horde_Nls::$config['rtl'][$language]);
@@ -345,7 +331,7 @@ if ($prefs->getValue('nav_popup') || $prefs->getValue('nav_audio')) {
     $newmsgs = $imp_mailbox->newMessages(Horde_Imap_Client::SORT_RESULTS_COUNT);
 }
 
-$pagetitle = $rawtitle = $title = IMP::getLabel($imp_mbox['mailbox']);
+$pagetitle = $title = IMP::getLabel($imp_mbox['mailbox']);
 $refresh_title = sprintf(_("_Refresh %s"), $title);
 $refresh_ak = Horde::getAccessKey($refresh_title);
 $refresh_title = Horde::stripAccessKey($refresh_title);
@@ -412,39 +398,48 @@ if ($readonly) {
 }
 $hdr_template->set('refresh', Horde::link($refresh_url, $refresh_title, '', '', '', '', $refresh_ak));
 if (isset($filter_url)) {
-    $hdr_template->set('filter', Horde::link($filter_url, sprintf(_("Apply Filters to %s"), $rawtitle)) . Horde::img('filters.png', _("Apply Filters")) . '</a>');
+    $hdr_template->set('filter_url', $filter_url);
+    $hdr_template->set('filter_img', Horde::img('filters.png', _("Apply Filters")));
 }
 $hdr_template->set('search', false);
 if ($_SESSION['imp']['protocol'] != 'pop') {
+    $hdr_template->set('search_img', Horde::img('search.png', _("Search")));
+
     if (!$search_mbox) {
-        $hdr_template->set('search', Horde::link(Horde::applicationUrl('search-basic.php')->add('search_mailbox', $imp_mbox['mailbox']), sprintf(_("Search %s"), $rawtitle)) . Horde::img('search.png', _("Search")) . '</a>');
+        $hdr_template->set('search_url', Horde::applicationUrl('search-basic.php')->add('search_mailbox', $imp_mbox['mailbox']));
         if (!$readonly) {
             $hdr_template->set('empty', $mailbox_imp_url->copy()->add(array('actionID' => 'empty_mailbox', 'mailbox' => $imp_mbox['mailbox'], 'mailbox_token' => $mailbox_token)));
             $hdr_template->set('empty_img', Horde::img('empty_spam.png', _("Empty folder")));
         }
     } else {
         if ($imp_search->isEditableVFolder()) {
-            $edit_search = sprintf(_("Edit Virtual Folder Definition for %s"), htmlspecialchars($rawtitle));
+            $edit_search = _("Edit Virtual Folder");
             $hdr_template->set('delete_vfolder_url', $imp_search->deleteUrl());
-            $hdr_template->set('delete_vfolder_label', sprintf(_("Delete Virtual Folder Definition for %s"), htmlspecialchars($rawtitle)));
-            $hdr_template->set('delete_vfolder_img', Horde::img('delete.png', sprintf(_("Delete Virtual Folder Definition for %s"), $rawtitle)));
+            $hdr_template->set('delete_vfolder_img', Horde::img('delete.png', _("Delete Virtual Folder")));
         } elseif ($search_mbox && !isset($query_text)) {
             /* Mini search results. */
             $search_mailbox = reset($imp_search->getSearchFolders());
-            $hdr_template->set('search', Horde::link(Horde::applicationUrl('search-basic.php')->add(array('search_mailbox' => $search_mailbox)), sprintf(_("Search %s"), IMP::getLabel($search_mailbox))) . Horde::img('search.png', _("Search")) . '</a>');
-            $hdr_template->set('searchclose', Horde::link(IMP::generateIMPUrl('mailbox.php', $search_mailbox), _("Exit Search")));
+            $hdr_template->set('search_url', Horde::applicationUrl('search-basic.php')->add('search_mailbox', $search_mailbox));
+            $hdr_template->set('searchclose', IMP::generateIMPUrl('mailbox.php', $search_mailbox));
         } elseif (!$vfolder) {
             $edit_search = _("Edit Search Query");
         }
 
         if (isset($edit_search)) {
-            $hdr_template->set('search', Horde::link($imp_search->editUrl(), $edit_search) . Horde::img('edit.png', $edit_search) . '</a>');
+            $hdr_template->set('edit_search_url', $imp_search->editUrl());
+            $hdr_template->set('edit_search_title', $edit_search);
+            $hdr_template->set('edit_search_img', Horde::img('edit.png', $edit_search));
         }
     }
 }
-$hdr_template->set('msgcount', $msg_count);
-if ($pageOb['pagecount'] > 1) {
+/* Generate mailbox summary string. */
+if (empty($pageOb['end'])) {
+    $hdr_template->set('msgcount', _("No Messages"));
+} elseif ($pageOb['pagecount'] > 1) {
+    $hdr_template->set('msgcount', sprintf(_("%d - %d of %d Messages"), $pageOb['begin'], $pageOb['end'], $pageOb['msgcount']));
     $hdr_template->set('page', sprintf(_("Page %d of %d"), $pageOb['page'], $pageOb['pagecount']));
+} else {
+    $hdr_template->set('msgcount', sprintf(_("%d Messages"), $pageOb['msgcount']));
 }
 
 echo $hdr_template->fetch(IMP_TEMPLATES . '/imp/mailbox/header.html');
@@ -587,100 +582,94 @@ if ($sortpref['by'] == Horde_Imap_Client::SORT_THREAD) {
     $threadtree = $imp_thread->getThreadImageTree(reset($mbox_info['uids']), $sortpref['dir']);
 }
 
-/* Don't show header row if this is a search mailbox or if no messages in the
-   current mailbox. */
 $mh_count = 0;
-if ($pageOb['msgcount']) {
-    $sortImg = ($sortpref['dir']) ? 'za.png' : 'az.png';
-    $sortText = ($sortpref['dir']) ? '\/' : '/\\';
-    $headers = array(
-        IMP::IMAP_SORT_DATE => array(
-            'stext' => _("Sort by Date"),
-            'text' => _("Dat_e"),
-            'width' => '14%'
-        ),
-        Horde_Imap_Client::SORT_TO => array(
-            'stext' => _("Sort by To Address"),
-            'text' => _("To"),
-            'width' => '20%'
-        ),
-        Horde_Imap_Client::SORT_FROM => array(
-            'stext' => _("Sort by From Address"),
-            'text' => _("Fro_m"),
-            'width' => '20%'
-        ),
-        Horde_Imap_Client::SORT_THREAD => array(
-            'stext' => _("Sort by Thread"),
-            'text' => _("_Thread"),
-            'width' => '52%'
-        ),
-        Horde_Imap_Client::SORT_SUBJECT => array(
-            'stext' => _("Sort by Subject"),
-            'text' => _("Sub_ject"),
-            'width' => '52%'
-        ),
-        Horde_Imap_Client::SORT_SIZE => array(
-            'stext' => _("Sort by Message Size"),
-            'text' => _("Si_ze"),
-            'width' => '6%'
-        )
-    );
+$sortImg = ($sortpref['dir']) ? 'za.png' : 'az.png';
+$sortText = ($sortpref['dir']) ? '\/' : '/\\';
+$headers = array(
+    IMP::IMAP_SORT_DATE => array(
+        'id' => 'mboxdate',
+        'stext' => _("Sort by Date"),
+        'text' => _("Dat_e")
+    ),
+    Horde_Imap_Client::SORT_TO => array(
+        'id' => 'mboxto',
+        'stext' => _("Sort by To Address"),
+        'text' => _("To")
+    ),
+    Horde_Imap_Client::SORT_FROM => array(
+        'id' => 'mboxfrom',
+        'stext' => _("Sort by From Address"),
+        'text' => _("Fro_m")
+    ),
+    Horde_Imap_Client::SORT_THREAD => array(
+        'id' => 'mboxthread',
+        'stext' => _("Sort by Thread"),
+        'text' => _("_Thread")
+    ),
+    Horde_Imap_Client::SORT_SUBJECT => array(
+        'id' => 'mboxsubject',
+        'stext' => _("Sort by Subject"),
+        'text' => _("Sub_ject")
+    ),
+    Horde_Imap_Client::SORT_SIZE => array(
+        'id' => 'mboxsize',
+        'stext' => _("Sort by Message Size"),
+        'text' => _("Si_ze")
+    )
+);
+
+/* If this is the Drafts or Sent-Mail Folder, sort by To instead of From. */
+if (IMP::isSpecialFolder($imp_mbox['mailbox'])) {
+    unset($headers[Horde_Imap_Client::SORT_FROM]);
+} else {
+    unset($headers[Horde_Imap_Client::SORT_TO]);
+}
 
-    /* If this is the Drafts or Sent-Mail Folder, sort by To instead of
-     * From. */
-    if (IMP::isSpecialFolder($imp_mbox['mailbox'])) {
-        unset($headers[Horde_Imap_Client::SORT_FROM]);
+/* Determine which of Subject/Thread to emphasize. */
+if (!IMP::threadSortAvailable($imp_mbox['mailbox'])) {
+    unset($headers[Horde_Imap_Client::SORT_THREAD]);
+} else {
+    if ($sortpref['by'] == Horde_Imap_Client::SORT_THREAD) {
+        $extra = Horde_Imap_Client::SORT_SUBJECT;
+        $standard = Horde_Imap_Client::SORT_THREAD;
     } else {
-        unset($headers[Horde_Imap_Client::SORT_TO]);
+        $extra = Horde_Imap_Client::SORT_THREAD;
+        $standard = Horde_Imap_Client::SORT_SUBJECT;
     }
+    $headers[$standard]['altsort'] = Horde::widget($mailbox_imp_url->copy()->add(array('sortby' => $extra, 'actionID' => 'change_sort', 'mailbox_token' => $mailbox_token)), $headers[$extra]['stext'], 'widget', null, null, $headers[$extra]['text']);
+    unset($headers[$extra]);
+}
 
-    /* Determine which of Subject/Thread to emphasize. */
-    if (!IMP::threadSortAvailable($imp_mbox['mailbox'])) {
-        unset($headers[Horde_Imap_Client::SORT_THREAD]);
-    } else {
-        if ($sortpref['by'] == Horde_Imap_Client::SORT_THREAD) {
-            $extra = Horde_Imap_Client::SORT_SUBJECT;
-            $standard = Horde_Imap_Client::SORT_THREAD;
-        } else {
-            $extra = Horde_Imap_Client::SORT_THREAD;
-            $standard = Horde_Imap_Client::SORT_SUBJECT;
-        }
-        $headers[$standard]['extra'] = '<span class="toggleSort">[' . Horde::widget($mailbox_imp_url->copy()->add(array('sortby' => $extra, 'actionID' => 'change_sort', 'mailbox_token' => $mailbox_token)), $headers[$extra]['stext'], 'widget', null, null, $headers[$extra]['text']) . ']</span>';
-        unset($headers[$extra]);
-    }
+foreach ($headers as $key => $val) {
+    $ptr = &$headers[$key];
+    $ptr['class'] = ($sortpref['by'] == $key) ? 'selected' : 'item';
 
-    foreach ($headers as $key => $val) {
-        $ptr = &$headers[$key];
-        $ptr['class'] = ($sortpref['by'] == $key) ? 'selected' : 'item';
-        if ($sortpref['by'] == $key) {
-            $ptr['change_sort_link'] = Horde::link($sort_url->copy()->add(array('sortby' => $key, 'actionID' => 'change_sort', 'mailbox_token' => $mailbox_token)), $val['stext'], null, null, null, $val['stext']) . Horde::img($sortImg, $sortText) . '</a>';
-        } else {
-            $ptr['change_sort_link'] = null;
-        }
+    $ptr['change_sort_link'] = ($sortpref['by'] == $key)
+        ? Horde::link($sort_url->copy()->add(array('sortby' => $key, 'actionID' => 'change_sort', 'mailbox_token' => $mailbox_token)), $val['stext'], null, null, null, $val['stext']) . Horde::img($sortImg, $sortText) . '</a>'
+        : null;
 
-        $tmp = ($sortpref['by'] == $key) ? $sort_url : $mailbox_imp_url;
-        $ptr['change_sort'] = addslashes($tmp->copy()->add(array('sortby' => $key, 'actionID' => 'change_sort', 'mailbox_token' => $mailbox_token)));
-        $ptr['change_sort_widget'] = Horde::widget($tmp->copy()->add(array('sortby' => $key, 'actionID' => 'change_sort', 'mailbox_token' => $mailbox_token)), $val['stext'], 'widget', null, null, $val['text']);
-        if (!isset($val['extra'])) {
-            $ptr['extra'] = null;
-        }
-    }
+    $tmp = ($sortpref['by'] == $key) ? $sort_url : $mailbox_imp_url;
+    $ptr['change_sort_widget'] = Horde::widget($tmp->copy()->add(array('sortby' => $key, 'actionID' => 'change_sort', 'mailbox_token' => $mailbox_token)), $val['stext'], 'widget', null, null, $val['text']);
+}
 
-    /* Prepare the message headers template. */
-    $mh_template = $injector->createInstance('Horde_Template');
-    $mh_template->setOption('gettext', true);
-    $mh_template->set('check_all', Horde::getAccessKeyAndTitle(_("Check _All/None")));
-    $mh_template->set('form_tag', true);
-    $mh_template->set('mailbox_url', $mailbox_url);
-    $mh_template->set('mailbox', htmlspecialchars($imp_mbox['mailbox']));
-    $mh_template->set('mailbox_token', $mailbox_token);
-    $mh_template->set('sessiontag', Horde_Util::formInput());
-    $mh_template->set('headers', $headers);
+/* Output the form start. */
+$f_template = $injector->createInstance('Horde_Template');
+$f_template->set('mailbox', htmlspecialchars($imp_mbox['mailbox']));
+$f_template->set('mailbox_token', $mailbox_token);
+$f_template->set('mailbox_url', $mailbox_url);
+$f_template->set('sessiontag', Horde_Util::formInput());
+$f_template->set('page', $pageOb['page']);
+echo $f_template->fetch(IMP_TEMPLATES . '/imp/mailbox/form_start.html');
 
-    if (!$search_mbox) {
-        $mh_template->set('mh_count', $mh_count++);
-        echo $mh_template->fetch(IMP_TEMPLATES . '/imp/mailbox/message_headers.html');
-    }
+/* Prepare the message headers template. */
+$mh_template = $injector->createInstance('Horde_Template');
+$mh_template->setOption('gettext', true);
+$mh_template->set('check_all', Horde::getAccessKeyAndTitle(_("Check _All/None")));
+$mh_template->set('headers', $headers);
+
+if (!$search_mbox) {
+    $mh_template->set('show_checkbox', !$mh_count++);
+    echo $mh_template->fetch(IMP_TEMPLATES . '/imp/mailbox/message_headers.html');
 }
 
 /* Initialize repetitively used variables. */
@@ -706,10 +695,7 @@ while (list(,$ob) = each($mbox_info['overview'])) {
             $search_template->set('folder_link', $folder_link);
             echo $search_template->fetch(IMP_TEMPLATES . '/imp/mailbox/searchfolder.html');
 
-            if ($mh_count) {
-                $mh_template->set('form_tag', false);
-            }
-            $mh_template->set('mh_count', $mh_count++);
+            $mh_template->set('show_checkbox', !$mh_count++);
             echo $mh_template->fetch(IMP_TEMPLATES . '/imp/mailbox/message_headers.html');
         }
     }
@@ -834,10 +820,7 @@ while (list(,$ob) = each($mbox_info['overview'])) {
 
 _outputSummaries($msgs);
 
-/* Prepare the message footers template. */
-$mf_template = $injector->createInstance('Horde_Template');
-$mf_template->set('page', $pageOb['page']);
-echo $mf_template->fetch(IMP_TEMPLATES . '/imp/mailbox/message_footers.html');
+echo '</form>';
 
 /* If there are 20 messages or less, don't show the actions/navbar again. */
 if (($pageOb['end'] - $pageOb['begin']) >= 20) {
index bc4b9a8..0552443 100644 (file)
@@ -1,6 +1,6 @@
-<table width="100%" cellspacing="0">
+<table class="mboxactions">
  <tr>
-  <td class="mboxcontrol <if:isbottom>topborder</if:isbottom>">
+  <td class="mboxcontrol<if:isbottom> topborder</if:isbottom>">
    <span class="rightFloat">
     <ul class="msgactions">
 <loop:mboxactions>
    </span>
    <span class="leftFloat">
     <ul class="msgactions">
-<if:readonly><else:readonly>
-     <if:delete><li><tag:delete /></li></if:delete>
-     <if:undelete><li><tag:undelete /></li></if:undelete>
-     <if:blacklist><li><tag:blacklist /></li></if:blacklist>
-     <if:whitelist><li><tag:whitelist /></li></if:whitelist>
-</else:readonly></if:readonly>
-     <if:forward><li><tag:forward /></li></if:forward>
-<if:readonly><else:readonly>
-     <if:spam><li><tag:spam /></li></if:spam>
-     <if:notspam><li><tag:notspam /></li></if:notspam>
-</else:readonly></if:readonly>
+<if:delete>
+     <li><tag:delete /></li>
+</if:delete>
+<if:undelete>
+     <li><tag:undelete /></li>
+</if:undelete>
+<if:blacklist>
+     <li><tag:blacklist /></li>
+</if:blacklist>
+<if:whitelist>
+     <li><tag:whitelist /></li>
+</if:whitelist>
+<if:forward>
+     <li><tag:forward /></li>
+</if:forward>
+<if:spam>
+     <li><tag:spam /></li>
+</if:spam>
+<if:notspam>
+     <li><tag:notspam /></li>
+</if:notspam>
      <li class="lastnavbar"><tag:view_messages /></li>
     </ul>
    </span>
index 76072dd..81eb760 100644 (file)
@@ -1,6 +1,8 @@
 <div class="control">
  <ul class="rightFloat msgactions">
   <li><tag:hide /></li>
-  <if:purge><li class="lastnavbar"><tag:purge /></li></if:purge>
+<if:purge>
+  <li class="lastnavbar"><tag:purge /></li>
+</if:purge>
  </ul>
 </div>
index 2dfa252..44de2d7 100644 (file)
@@ -1,3 +1,9 @@
 <div class="text">
- <em><if:search_mbox><gettext>No messages matched your search criteria.</gettext><else:search_mbox><gettext>There are no messages in this mailbox.</gettext></else:search_mbox></if:search_mbox></em>
+ <em>
+<if:search_mbox>
+  <gettext>No messages matched your search criteria.</gettext>
+<else:search_mbox>
+  <gettext>There are no messages in this mailbox.</gettext>
+</else:search_mbox></if:search_mbox>
+ </em>
 </div>
diff --git a/imp/templates/imp/mailbox/form_start.html b/imp/templates/imp/mailbox/form_start.html
new file mode 100644 (file)
index 0000000..903a32a
--- /dev/null
@@ -0,0 +1,9 @@
+<form method="post" id="messages" name="messages" action="<tag:mailbox_url />">
+ <tag:sessiontag />
+ <input type="hidden" name="mailbox" value="<tag:mailbox />" />
+ <input type="hidden" name="mailbox_token" value="<tag:mailbox_token />" />
+ <input type="hidden" name="page" value="<tag:page />" />
+ <input type="hidden" id="actionID" name="actionID" value="" />
+ <input type="hidden" id="targetMbox" name="targetMbox" value="" />
+ <input type="hidden" id="newMbox" name="newMbox" value="0" />
+ <input type="hidden" id="flag" name="flag" value="" />
index f3bc4e2..2b75095 100644 (file)
@@ -1,27 +1,36 @@
 <div class="header mboxheader">
- <div <if:page>style="width:40%" </if:page>class="leftFloat">
-  <span dir="ltr"><tag:pagetitle /></span>
-  <if:readonly><tag:readonly /></if:readonly>
-  <tag:refresh /><span class="reloadImg"></span></a>
-  <if:filter><tag:filter /></if:filter>
-  <if:search><tag:search /></if:search>
-  <if:searchclose><tag:searchclose /><span class="closeImg"></span></a></if:searchclose>
-  <if:empty>
-   <a href="<tag:empty />" id="empty_mailbox" title="<gettext>Empty Mailbox</gettext>"><tag:empty_img /></a>
-  </if:empty>
-  <if:delete_vfolder_url>
-   <a href="<tag:delete_vfolder_url />" id="delete_vfolder" title="<tag:delete_vfolder_label />"><tag:delete_vfolder_img /></a>
-  </if:delete_vfolder_url>
+ <div class="rightFloat rightAlign">
+  <tag:msgcount />
  </div>
 <if:page>
- <div style="width:20%" class="leftFloat">
-  <tag:page />
+ <div class="rightFloat pageCount">
+  (<tag:page />)
  </div>
- <div style="width:40%" class="rightFloat rightAlign">
-<else:page>
- <div class="rightFloat rightAlign">
-</else:page></if:page>
-  <tag:msgcount />
+</if:page>
+ <div class="leftFloat">
+  <span dir="ltr"><tag:pagetitle /></span>
+<if:readonly>
+  <tag:readonly />
+</if:readonly>
+  <tag:refresh /><span class="reloadImg"></span></a>
+<if:filter_url>
+  <a href="<tag:filter_url />" title="<gettext>Apply Filters</gettext>"><tag:filter_img /></a>
+</if:filter_url>
+<if:search_url>
+  <a href="<tag:search_url />" title="<gettext>Search</gettext>"><tag:search_img /></a>
+<if:searchclose>
+  <a href="<tag:searchclose />" title="<gettext>Exit Search</gettext>"><span class="closeImg"</span></a>
+</if:searchclose>
+</if:search_url>
+<if:edit_search_url>
+  <a href="<tag:edit_search_url />" title="<tag:edit_search_title />"><tag:edit_search_img /></a>
+</if:edit_search_url>
+<if:empty>
+  <a href="<tag:empty />" id="empty_mailbox" title="<gettext>Empty Mailbox</gettext>"><tag:empty_img /></a>
+</if:empty>
+<if:delete_vfolder_url>
+  <a href="<tag:delete_vfolder_url />" id="delete_vfolder" title="<gettext>Delete Virtual Folder</gettext>"><tag:delete_vfolder_img /></a>
+</if:delete_vfolder_url>
  </div>
  <div class="clear"></div>
 </div>
index 0109704..9e7959c 100644 (file)
@@ -1,12 +1,23 @@
 <loop:messages>
  <tr id="row<tag:messages.id />"<if:messages.class> class="<tag:messages.class />"</if:messages.class><if:messages.bg> style="background-color:<tag:messages.bg />"</if:messages.bg>>
   <td>
-   <tag:overflow_begin /><label><input type="checkbox" class="checkbox" name="indices[]" value="<tag:messages.uid />" /><tag:messages.status />&nbsp;</label><tag:overflow_end />
+   <label>
+    <input type="checkbox" class="checkbox" name="indices[]" value="<tag:messages.uid />" />
+    <tag:messages.status />
+   </label>
+  </td>
+  <td>
+   <tag:messages.date />
+  </td>
+  <td>
+   <tag:messages.from />
+  </td>
+  <td>
+   <tag:messages.subject />
+  </td>
+  <td class="rightAlign">
+   <tag:messages.size />
   </td>
-  <td><tag:overflow_begin /><tag:messages.date />&nbsp;<tag:overflow_end /></td>
-  <td><tag:overflow_begin /><tag:messages.from />&nbsp;<tag:overflow_end /></td>
-  <td><tag:overflow_begin /><tag:messages.subject /><tag:overflow_end /></td>
-  <td class="rightAlign"><tag:overflow_begin /><tag:messages.size /><tag:overflow_end /></td>
  </tr>
 </loop:messages>
 </table>
diff --git a/imp/templates/imp/mailbox/message_footers.html b/imp/templates/imp/mailbox/message_footers.html
deleted file mode 100644 (file)
index fe2785d..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-<input type="hidden" name="page" value="<tag:page />" />
-<input type="hidden" id="actionID" name="actionID" value="" />
-<input type="hidden" id="targetMbox" name="targetMbox" value="" />
-<input type="hidden" id="newMbox" name="newMbox" value="0" />
-<input type="hidden" id="flag" name="flag" value="" />
-</form>
index cd5c70b..b7ccf54 100644 (file)
@@ -1,22 +1,18 @@
-<if:form_tag>
-<form method="post" id="messages" name="messages" action="<tag:mailbox_url />">
-<input type="hidden" name="mailbox" value="<tag:mailbox />" />
-<input type="hidden" name="mailbox_token" value="<tag:mailbox_token />" />
-<tag:sessiontag />
-</if:form_tag>
-<table class="messageList" width="100%" cellspacing="0">
+<table class="messageList">
  <tr class="item">
-<if:mh_count>
-  <th width="8%">&nbsp;</th>
-<else:mh_count>
-  <th id="checkheader" width="8%">
+     <th id="checkheader">
+<if:show_checkbox>
    <label for="checkAll" class="hidden"><gettext>Check All/None</gettext></label>
    <input type="checkbox" class="checkbox" id="checkAll" name="checkAll" <tag:check_all /> />
   </th>
-</else:mh_count></if:mh_count>
+</if:show_checkbox>
 <loop:headers>
-  <th class="<tag:headers.class />" width="<tag:headers.width />">
-   <tag:headers.change_sort_link /> <tag:headers.change_sort_widget /> <tag:headers.extra />
+  <th class="<tag:headers.class />" id="<tag:headers.id />">
+   <tag:headers.change_sort_link />
+   <tag:headers.change_sort_widget />
+<if:headers.altsort>
+   <span class="toggleSort">[<tag:headers.altsort />]</span>
+</if:headers.altsort>
   </th>
 </loop:headers>
  </tr>
index 4095fe4..73f48db 100644 (file)
@@ -1,8 +1,39 @@
-/* Mailbox header styling. */
+/* Mailbox page styling. */
 .mboxheader {
     font-size: 110%;
     text-align: left;
 }
+.mboxheader .pageCount {
+    padding-right: 10px;
+}
+
+table.mboxactions {
+    border-collapse: collapse;
+    width: 100%;
+}
+
+#checkheader {
+    width: 8%;
+}
+#checkheader input {
+    float: left;
+}
+
+#mboxdate {
+    width: 14%;
+}
+
+#mboxto, #mboxfrom {
+    width: 20%;
+}
+
+#mboxthread, #mboxsubject {
+    width: 52%;
+}
+
+#mboxsize {
+    width: 6%;
+}
 
 /* Message list table styles. */
 .searchfolder a.smallheader {
@@ -39,9 +70,6 @@
     border: 1px solid #ddd;
     vertical-align: middle;
 }
-.messageList td label {
-    padding-right: 2px;
-}
 .messageList td label input {
     vertical-align: middle;
 }
     margin-left: 3px;
 }
 
-#checkheader input {
-    float: left;
-}
-
 /* Newmail alerts. */
 #newmail {
     padding: 1em;