X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Fread_body.php;h=2138e904e7355647e88233ed404dcac66f6dd317;hb=25516e56ec887887fa947f2ad774c87cef78168d;hp=301447178ea210d1e1b3565370243db126164b07;hpb=5200c026d0a423fc2599276a1f73b28309ba2831;p=squirrelmail.git diff --git a/src/read_body.php b/src/read_body.php index 30144717..2138e904 100644 --- a/src/read_body.php +++ b/src/read_body.php @@ -19,8 +19,6 @@ require_once('../functions/date.php'); require_once('../functions/url_parser.php'); require_once('../functions/smtp.php'); require_once('../functions/html.php'); -require_once('../class/html.class'); -require_once('../src/view_header.php'); /** * Given an IMAP message id number, this will look it up in the cached @@ -29,8 +27,8 @@ require_once('../src/view_header.php'); * * @return the index of the next valid message from the array */ -function findNextMessage() { - global $msort, $currentArrayIndex, $msgs, $sort, +function findNextMessage($passed_id) { + global $msort, $msgs, $sort, $thread_sort_messages, $allow_server_sort, $server_sort_array; if (!is_array($server_sort_array)) { @@ -38,10 +36,10 @@ function findNextMessage() { $allow_server_sort = FALSE; } $result = -1; - if ($thread_sort_messages == 1 || $allow_server_sort == TRUE) { + if ($thread_sort_messages || $allow_server_sort) { reset($server_sort_array); while(list($key, $value) = each ($server_sort_array)) { - if ($currentArrayIndex == $value) { + if ($passed_id == $value) { if ($key == (count($server_sort_array) - 1)) { $result = -1; break; @@ -51,18 +49,18 @@ function findNextMessage() { } } } - elseif ($sort == 6 && $allow_server_sort != TRUE && - $thread_sort_messages != 1) { - if ($currentArrayIndex != 1) { - $result = $currentArrayIndex - 1; + elseif ($sort == 6 && !$allow_server_sort && + !$thread_sort_messages ) { + if ($passed_id != 1) { + $result = $passed_id - 1; } } - elseif ($allow_server_sort != TRUE && $thread_sort_messages != 1 ) { + elseif (!$allow_server_sort && !$thread_sort_messages ) { if (!is_array($msort)) { return -1; } for (reset($msort); ($key = key($msort)), (isset($key)); next($msort)) { - if ($currentArrayIndex == $msgs[$key]['ID']) { + if ($passed_id == $msgs[$key]['ID']) { next($msort); $key = key($msort); if (isset($key)){ @@ -76,19 +74,19 @@ function findNextMessage() { } /** returns the index of the previous message from the array. */ -function findPreviousMessage() { - global $msort, $currentArrayIndex, $sort, $msgs, $imapConnection, - $mailbox, $data_dir, $username, $thread_sort_messages, +function findPreviousMessage($numMessages, $passed_id) { + global $msort, $sort, $msgs, + $thread_sort_messages, $allow_server_sort, $server_sort_array; $result = -1; if (!is_array($server_sort_array)) { $thread_sort_messages = 0; $allow_server_sort = FALSE; } - if ($thread_sort_messages == 1 || $allow_server_sort == TRUE) { + if ($thread_sort_messages || $allow_server_sort ) { reset($server_sort_array); while(list($key, $value) = each ($server_sort_array)) { - if ($currentArrayIndex == $value) { + if ($passed_id == $value) { if ($key == 0) { $result = -1; break; @@ -98,22 +96,22 @@ function findPreviousMessage() { } } } - elseif ($sort == 6 && $allow_server_sort != TRUE && - $thread_sort_messages != 1) { - $numMessages = sqimap_get_num_messages($imapConnection, $mailbox); - if ($currentArrayIndex != $numMessages) { - $result = $currentArrayIndex + 1; + elseif ($sort == 6 && !$allow_server_sort && + !$thread_sort_messages) { + if ($passed_id != $numMessages) { + $result = $passed_id + 1; } } - elseif ($thread_sort_messages != 1 && $allow_server_sort != TRUE) { + elseif (!$thread_sort_messages && !$allow_server_sort) { if (!is_array($msort)) { return -1; } for (reset($msort); ($key = key($msort)), (isset($key)); next($msort)) { - if ($currentArrayIndex == $msgs[$key]['ID']) { + if ($passed_id == $msgs[$key]['ID']) { prev($msort); $key = key($msort); if (isset($key)) { + echo $msort[$key]; $result = $msgs[$key]['ID']; break; } @@ -127,31 +125,16 @@ function findPreviousMessage() { * Displays a link to a page where the message is displayed more * "printer friendly". */ -function printer_friendly_link() { - global $passed_id, $mailbox, $ent_num, $color, - $pf_subtle_link, - $javascript_on; +function printer_friendly_link($mailbox, $passed_id, $passed_ent_id, $color) { + global $javascript_on; - if (strlen(trim($mailbox)) < 1) { - $mailbox = 'INBOX'; - } - - $params = '?passed_ent_id=' . $ent_num . + $params = '?passed_ent_id=' . $passed_ent_id . '&mailbox=' . urlencode($mailbox) . '&passed_id=' . $passed_id; $print_text = _("View Printable Version"); - if (!$pf_subtle_link) { - /* The link is large, on the bottom of the header panel. */ - $result = html_tag( 'tr', '', '', $color[0] ) . - html_tag( 'td', ' ', 'right', '', 'class="medText" valign="top"' ) . - html_tag( 'td', '', 'left', '', 'class="medText" valign="top" colspan="2"' ) . "\n"; - } else { - /* The link is subtle, below "view full header". */ - $result = "\n"; - } - + $result = ''; /* Output the link. */ if ($javascript_on) { $result .= ''. "\n"; + echo $script; + } + $env[_("Read receipt")] = _("requested") . + ' ['. _("Send read receipt now") .']'; + } else { + $env[_("Read receipt")] = _("requested"); + } + } + } + } + } + + $s = '
'; + + $msgs_url = $base_uri . 'src/'; + if (isset($where) && isset($what)) { + $msgs_url .= 'search.php?where='.urlencode($where). + '&what='.urlencode($what).'&mailbox='.$urlMailbox; + $msgs_str = _("Search results"); + } else { + $msgs_url .= 'right_main.php?sort='.$sort.'&startMessage='. + $startMessage.'&mailbox='.$urlMailbox; + $msgs_str = _("Message List"); + } + $s .= ''.$msgs_str.''; + $s .= $topbar_delimiter; + + $delete_url = $base_uri . 'src/delete_message.php?mailbox='.$urlMailbox. + '&message='.$passed_id.'&'; + if (!(isset($passed_ent_id) && $passed_ent_id)) { + if ($where && $what) { + $delete_url .= 'where=' . urlencode($where) . '&what=' . urlencode($what); + } else { + $delete_url .= 'sort='. $sort . '&startMessage='. $startMessage; + } + $s .= ''._("Delete").''; + } + + $comp_uri = $base_uri . 'src/compose.php'. + '?passed_id='.$passed_id. + '&mailbox='.$urlMailbox. + (isset($passed_ent_id)?'&passed_ent_id='.$passed_ent_id:''); + + if (($mailbox == $draft_folder) && ($save_as_draft)) { + $comp_alt_uri = $comp_uri . '&action=draft'; + $comp_alt_string = _("Resume Draft"); + } else if ($mailbox == $sent_folder) { + $comp_alt_uri = $comp_uri . '&action=edit_as_new'; + $comp_alt_string = _("Edit Message as New"); + } + if (isset($comp_alt_uri)) { + $s .= $topbar_delimiter; + if ($compose_new_win == '1') { + $s .= ''.$comp_alt_string.''; + } else { + $s .= ''.$comp_alt_string.''; + } + } + + $s .= ' | '; + + if (!(isset($where) && isset($what)) && !$passed_ent_id) { + $prev = findPreviousMessage($mbx_response['EXISTS'], $passed_id); + $next = findNextMessage($passed_id); + if ($prev != -1) { + $uri = $base_uri . 'src/read_body.php?passed_id='.$prev. + '&mailbox='.$urlMailbox.'&sort='.$sort. + '&startMessage='.$startMessage.'&show_more=0'; + $s .= ''._("Previous").''; + } else { + $s .= _("Previous"); + } + $s .= $topbar_delimiter; + if ($next != -1) { + $uri = $base_uri . 'src/read_body.php?passed_id='.$next. + '&mailbox='.$urlMailbox.'&sort='.$sort. + '&startMessage='.$startMessage.'&show_more=0'; + $s .= ''._("Next").''; + } else { + $s .= _("Next"); + } + } else if (isset($passed_ent_id) && $passed_ent_id) { + /* code for navigating through attached message/rfc822 messages */ + $url = set_url_var($PHP_SELF, 'passed_ent_id',0); + $s .= ''._("View Message").''; + $par_ent_id = $message->parent->entity_id; + if ($par_ent_id) { + $par_ent_id = substr($par_ent_id,0,-2); + $s .= $topbar_delimiter; + $url = set_url_var($PHP_SELF, 'passed_ent_id',$par_ent_id); + $s .= ''._("Up").''; + } + } + + $s .= ' | '; + $comp_action_uri = $comp_uri . '&action=forward'; + if ($compose_new_win == '1') { + $s .= ''._("Forward").''; + } else { + $s .= ''._("Forward").''; + } + $s .= $topbar_delimiter; + + $comp_action_uri = $comp_uri . '&action=forward_as_attachment'; + if ($compose_new_win == '1') { + $s .= ''._("Forward as attachment").''; + } else { + $s .= ''._("Forward as attachment").''; + } + $s .= $topbar_delimiter; + + + + $comp_action_uri = decodeHeader($comp_uri . '&action=reply'); + if ($compose_new_win == '1') { + $s .= ''._("Reply").''; + } else { + $s .= ''._("Reply").''; + } + $s .= $topbar_delimiter; + + $comp_action_uri = $comp_uri . '&action=reply_all'; + if ($compose_new_win == '1') { + $s .= ''._("Reply All").''; + } else { + $s .= ''._("Reply All").''; + } + $s .= ' |