\n"
- . " \n"
- . html_tag( 'td', $paginator, 'left' )
- . html_tag( 'td', $msg_cnt_str, 'right' )
- . " \n"
- . ' |
'
- . "\n"
- . "\n"
- . " \n"
- . html_tag( 'td',
- ' ' . _("Move Selected To:") . '',
- 'left',
- '',
- 'valign="middle" nowrap' )
- . html_tag( 'td',
- '' . _("Transform Selected Messages") . ': ',
- 'right',
- '',
- 'nowrap' )
- . " \n"
- . " \n"
- . html_tag( 'td', '', 'left', '', 'valign="middle" nowrap' )
- . ' \n";
/* draws thread sorting links */
if ($allow_thread_sort == TRUE) {
if ($thread_sort_messages == 1 ) {
$set_thread = 2;
$thread_name = _("Unthread View");
- }
- elseif ($thread_sort_messages == 0) {
+ } elseif ($thread_sort_messages == 0) {
$set_thread = 1;
$thread_name = _("Thread View");
}
- echo ' ' . $thread_name
- . ' | ';
+ echo html_tag( 'tr' ,
+ html_tag( 'td' ,
+ ' ' . $thread_name
+ . ' '
+ , '', '', '' )
+ , '', '', '' );
}
- echo " \n";
+ echo " |
\n";
+
do_hook('mailbox_form_before');
- echo ''
- . ""
- . '"
- . "";
+
/* if using server sort we highjack the
- * the $sort var and use $server_sort_order
- * instead. but here we reset sort for a bit
- * since its easy
- */
+ * the $sort var and use $server_sort_order
+ * instead. but here we reset sort for a bit
+ * since its easy
+ */
if ($allow_server_sort == TRUE) {
$sort = $server_sort_order;
}
- /* Print the headers. */
- for ($i=1; $i <= count($index_order); $i++) {
+}
+
+function mail_message_listing_end($num_msgs, $paginator_str, $msg_cnt_str, $color) {
+ if ($num_msgs) {
+ /* space between list and footer */
+ echo ' ';
+
+ echo ' | ';
+ echo html_tag( 'table',
+ html_tag( 'tr',
+ html_tag( 'td',
+ html_tag( 'table',
+ html_tag( 'tr',
+ html_tag( 'td', $paginator_str ) .
+ html_tag( 'td', $msg_cnt_str, 'right' )
+ )
+ , '', $color[4], 'width="100%" border="0" cellpadding="1" cellspacing="0"' )
+ )
+ )
+ , '', $color[9], 'width="100%" border="0" cellpadding="1" cellspacing="0"' );
+ echo ' | ';
+ }
+ /* End of message-list table */
+
+ do_hook('mailbox_index_after');
+ echo "\n";
+}
+
+function printHeader($mailbox, $sort, $color, $showsort=true) {
+ global $index_order;
+ echo html_tag( 'tr' ,'' , 'center', $color[5] );
+ for ($i = 1; $i <= count($index_order); $i++) {
switch ($index_order[$i]) {
case 1: /* checkbox */
case 5: /* flags */
- echo ' | ';
+ echo html_tag( 'td' ,' ' , '', '', 'width="1%"' );
break;
case 2: /* from */
if (handleAsSent($mailbox)) {
- echo ' ' . _("To") . '';
+ echo html_tag( 'td' ,'' , 'left', '', 'width="25%"' )
+ . '' . _("To") . '';
} else {
- echo ' | ' . _("From") . '';
+ echo html_tag( 'td' ,'' , 'left', '', 'width="25%"' )
+ . '' . _("From") . '';
}
- if ($allow_thread_sort != TRUE || $thread_sort_messages != 1) {
+ if ($showsort) {
ShowSortButton($sort, $mailbox, 2, 3);
}
- echo " | \n";
+ echo "\n";
break;
case 3: /* date */
- echo ' ' . _("Date") . '';
- if ($allow_thread_sort != TRUE || $thread_sort_messages != 1) {
+ echo html_tag( 'td' ,'' , 'left', '', 'width="5%" nowrap' )
+ . '' . _("Date") . '';
+ if ($showsort) {
ShowSortButton($sort, $mailbox, 0, 1);
}
- echo " | \n";
+ echo "\n";
break;
- case 4: /* subject */
- echo ' ' . _("Subject") . ' ';
- if ($allow_thread_sort != TRUE || $thread_sort_messages != 1) {
+ case 4: /* subject */
+ echo html_tag( 'td' ,'' , 'left', '', '' )
+ . '' . _("Subject") . '';
+ if ($showsort) {
ShowSortButton($sort, $mailbox, 4, 5);
}
- echo " | \n";
+ echo "\n";
break;
case 6: /* size */
echo html_tag( 'td', '' . _("Size") . '', 'center', '', 'width="5%"' );
break;
}
}
- /* if using server-sorting,
- * send sort back to 6
- */
- if ($allow_server_sort == TRUE) {
- $sort = 6;
- }
- echo "\n";
+ echo "\n";
}
+
/*
-* This function shows the sort button. Isn't this a good comment?
-*/
-function ShowSortButton($sort, $mailbox, $Up, $Down) {
+ * This function shows the sort button. Isn't this a good comment?
+ */
+function ShowSortButton($sort, $mailbox, $Up, $Down ) {
+ global $PHP_SELF;
/* Figure out which image we want to use. */
if ($sort != $Up && $sort != $Down) {
$img = 'sort_none.png';
@@ -838,11 +842,17 @@ function ShowSortButton($sort, $mailbox, $Up, $Down) {
$which = 6;
}
+ if (preg_match('/^(.+)\?.+$/',$PHP_SELF,$regs)) {
+ $source_url = $regs[1];
+ } else {
+ $source_url = $PHP_SELF;
+ }
+
/* Now that we have everything figured out, show the actual button. */
- echo ' ';
+ echo ' ';
}
function get_selectall_link($start_msg, $sort) {
@@ -851,27 +861,26 @@ function get_selectall_link($start_msg, $sort) {
$result = '';
if ($javascript_on) {
- $result =
- '' . _("Toggle All")
- . "\n";
+ $result = '' . _("Toggle All")
+ . "\n";
} else {
if (strpos($PHP_SELF, "?")) {
$result .= "";
if (isset($checkall) && ($checkall == '1')) {
@@ -891,7 +899,6 @@ function get_selectall_link($start_msg, $sort) {
} else {
$result .= _("Select All");
}
-
$result .= "\n";
}
@@ -900,48 +907,63 @@ function get_selectall_link($start_msg, $sort) {
}
/*
-* This function computes the "Viewing Messages..." string.
-*/
+ * This function computes the "Viewing Messages..." string.
+ */
function get_msgcnt_str($start_msg, $end_msg, $num_msgs) {
/* Compute the $msg_cnt_str. */
$result = '';
if ($start_msg < $end_msg) {
$result = sprintf(_("Viewing Messages: %s to %s (%s total)"),
- $start_msg, $end_msg, $num_msgs);
+ $start_msg, $end_msg, $num_msgs);
} else if ($start_msg == $end_msg) {
$result = sprintf(_("Viewing Message: %s (1 total)"), $start_msg);
} else {
$result = ' ';
}
-
/* Return our result string. */
return ($result);
}
/*
-* Generate a paginator link.
-*/
+ * Generate a paginator link.
+ */
function get_paginator_link($box, $start_msg, $use, $text) {
+ global $PHP_SELF;
+
$result = "$text";
+ . "&startMessage=$start_msg&mailbox=$box\" "
+ . "TARGET=\"right\">$text";
return ($result);
+/*
+ if (preg_match('/^(.+)\?.+$/',$PHP_SELF,$regs)) {
+ $source_url = $regs[1];
+ } else {
+ $source_url = $PHP_SELF;
+ }
+
+ $result = '$text";
+ return ($result);
+*/
}
/*
-* This function computes the paginator string.
-*/
+ * This function computes the paginator string.
+ */
function get_paginator_str($box, $start_msg, $end_msg, $num_msgs,
-$show_num, $sort) {
+ $show_num, $sort) {
global $username, $data_dir, $use_mailbox_cache, $color, $PG_SHOWNUM;
/* Initialize paginator string chunks. */
$prv_str = '';
$nxt_str = '';
- $pg_str = '';
+ $pg_str = '';
$all_str = '';
$tgl_str = '';
+ $box = urlencode($box);
+
/* Create simple strings that will be creating the paginator. */
$spc = ' '; /* This will be used as a space. */
$sep = '|'; /* This will be used as a seperator. */
@@ -994,14 +1016,14 @@ $show_num, $sort) {
$q2_pgs = $q3_pgs = 0;
$q4_pgs = $tot_pgs - $cur_pg;
- /* Otherwise, compute some magic to choose the four quarters. */
+ /* Otherwise, compute some magic to choose the four quarters. */
} else {
/*
- * Compute the magic base values. Added together,
- * these values will always equal to the $pag_pgs.
- * NOTE: These are DEFAULT values and do not take
- * the current page into account. That is below.
- */
+ * Compute the magic base values. Added together,
+ * these values will always equal to the $pag_pgs.
+ * NOTE: These are DEFAULT values and do not take
+ * the current page into account. That is below.
+ */
$q1_pgs = floor($vis_pgs/4);
$q2_pgs = round($vis_pgs/4, 0);
$q3_pgs = ceil($vis_pgs/4);
@@ -1015,7 +1037,7 @@ $show_num, $sort) {
$q3_pgs += ceil($extra_pgs / 2);
$q4_pgs += floor($extra_pgs / 2);
- /* Adjust if the first and second quarters intersect. */
+ /* Adjust if the first and second quarters intersect. */
} else if (($cur_pg - $q2_pgs - ceil($q2_pgs/3)) <= $q1_pgs) {
$extra_pgs = $q2_pgs;
$extra_pgs -= ceil(($cur_pg - $q1_pgs - 1) * 0.75);
@@ -1023,7 +1045,7 @@ $show_num, $sort) {
$q3_pgs += ceil($extra_pgs / 2);
$q4_pgs += floor($extra_pgs / 2);
- /* Adjust if the fourth quarter contains the current page. */
+ /* Adjust if the fourth quarter contains the current page. */
} else if (($cur_pg + $q4_pgs) >= $tot_pgs) {
$extra_pgs = ($q4_pgs - ($tot_pgs - $cur_pg)) + $q3_pgs;
$q3_pgs = 0;
@@ -1031,7 +1053,7 @@ $show_num, $sort) {
$q1_pgs += floor($extra_pgs / 2);
$q2_pgs += ceil($extra_pgs / 2);
- /* Adjust if the third and fourth quarter intersect. */
+ /* Adjust if the third and fourth quarter intersect. */
} else if (($cur_pg + $q3_pgs + 1) >= ($tot_pgs - $q4_pgs + 1)) {
$extra_pgs = $q3_pgs;
$extra_pgs -= ceil(($tot_pgs - $cur_pg - $q4_pgs) * 0.75);
@@ -1042,11 +1064,11 @@ $show_num, $sort) {
}
/*
- * I am leaving this debug code here, commented out, because
- * it is a really nice way to see what the above code is doing.
- * echo "qts = $q1_pgs/$q2_pgs/$q3_pgs/$q4_pgs = "
- * . ($q1_pgs + $q2_pgs + $q3_pgs + $q4_pgs) . ' ';
- */
+ * I am leaving this debug code here, commented out, because
+ * it is a really nice way to see what the above code is doing.
+ * echo "qts = $q1_pgs/$q2_pgs/$q3_pgs/$q4_pgs = "
+ * . ($q1_pgs + $q2_pgs + $q3_pgs + $q4_pgs) . ' ';
+ */
/* Print out the page links from the compute page quarters. */
@@ -1092,15 +1114,15 @@ $show_num, $sort) {
}
} else if ($PG_SHOWNUM == 999999) {
$pg_str = "" ._("Paginate") . '' . $spc;
+ . "&use_mailbox_cache=$use&startMessage=1&mailbox=$box\" "
+ . "TARGET=\"right\">" ._("Paginate") . '' . $spc;
}
/* If necessary, compute the 'show all' string. */
if (($prv_str != '') || ($nxt_str != '')) {
$all_str = "" . _("Show All") . '';
+ . "&use_mailbox_cache=$use&startMessage=1&mailbox=$box\" "
+ . "TARGET=\"right\">" . _("Show All") . '';
}
/* Last but not least, get the value for the toggle all link. */
@@ -1108,15 +1130,15 @@ $show_num, $sort) {
/* Put all the pieces of the paginator string together. */
/**
- * Hairy code... But let's leave it like it is since I am not certain
- * a different approach would be any easier to read. ;)
- */
+ * Hairy code... But let's leave it like it is since I am not certain
+ * a different approach would be any easier to read. ;)
+ */
$result = '';
$result .= ($prv_str != '' ? $prv_str . $spc . $sep . $spc : '');
$result .= ($nxt_str != '' ? $nxt_str . $spc . $sep . $spc : '');
- $result .= ($pg_str != '' ? $pg_str : '');
+ $result .= ($pg_str != '' ? $pg_str : '');
$result .= ($all_str != '' ? $sep . $spc . $all_str . $spc : '');
- $result .= ($result != '' ? $sep . $spc . $tgl_str: $tgl_str);
+ $result .= ($result != '' ? $sep . $spc . $tgl_str: $tgl_str);
/* If the resulting string is blank, return a non-breaking space. */
if ($result == '') {
@@ -1128,42 +1150,97 @@ $show_num, $sort) {
}
function processSubject($subject) {
+ global $languages, $squirrelmail_language;
/* Shouldn't ever happen -- caught too many times in the IMAP functions */
if ($subject == '')
- return _("(no subject)");
+ return _("(no subject)");
if (strlen($subject) <= 55)
- return $subject;
+ return $subject;
- $ent_strlen=strlen($subject);
+ $ent_strlen = strlen($subject);
$trim_val=50;
$ent_offset=0;
/*
- * see if this is entities-encoded string
- * If so, Iterate through the whole string, find out
- * the real number of characters, and if more
- * than 55, substr with an updated trim value.
- */
+ * see if this is entities-encoded string
+ * If so, Iterate through the whole string, find out
+ * the real number of characters, and if more
+ * than 55, substr with an updated trim value.
+ */
while ( (($ent_loc = strpos($subject, '&', $ent_offset)) !== false) &&
- (($ent_loc_end = strpos($subject, ';', $ent_loc)) !== false) ) {
- $trim_val += ($ent_loc_end-$ent_loc)+1;
+ (($ent_loc_end = strpos($subject, ';', $ent_loc)) !== false) ) {
+ $trim_val += ($ent_loc_end-$ent_loc)+1;
$ent_strlen -= $ent_loc_end-$ent_loc;
- $ent_offset = $ent_loc_end+1;
+ $ent_offset = $ent_loc_end+1;
}
if ($ent_strlen <= 55){
return $subject;
}
+ if (isset($languages[$squirrelmail_language]['XTRA_CODE']) &&
+ function_exists($languages[$squirrelmail_language]['XTRA_CODE'])) {
+ return $languages[$squirrelmail_language]['XTRA_CODE']('strimwidth', $subject, $trim_val);
+ }
+
return substr($subject, 0, $trim_val) . '...';
}
+function getMbxList($imapConnection) {
+ global $lastTargetMailbox;
+ echo ' ';
+}
+
+function getButton($type, $name, $value) {
+ return '';
+}
+
+function getSmallStringCell($string, $align) {
+ return html_tag('td',
+ '' . $string . ': ',
+ $align,
+ '',
+ 'nowrap' );
+}
+
+function getEndMessage($start_msg, $show_num, $num_msgs) {
+ if ($start_msg + ($show_num - 1) < $num_msgs){
+ $end_msg = $start_msg + ($show_num - 1);
+ } else {
+ $end_msg = $num_msgs;
+ }
+
+ if ($end_msg < $start_msg) {
+ $start_msg = $start_msg - $show_num;
+ if ($start_msg < 1) {
+ $start_msg = 1;
+ }
+ }
+ return (array($start_msg,$end_msg));
+}
+
function handleAsSent($mailbox) {
global $sent_folder, $draft_folder, $handleAsSent_result;
/* First check if this is the sent or draft folder. */
$handleAsSent_result = (($mailbox == $sent_folder)
- || ($mailbox == $draft_folder));
+ || ($mailbox == $draft_folder));
/* Then check the result of the handleAsSent hook. */
do_hook('check_handleAsSent_result', $mailbox);
@@ -1171,5 +1248,4 @@ function handleAsSent($mailbox) {
/* And return the result. */
return ($handleAsSent_result);
}
-
-?>
\ No newline at end of file
+?>
|