X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=src%2Fread_body.php;h=a16372b1a8bc8ebd648dac36efd829c958579b2b;hp=964f79d58ff14fa04bbe0efd47db80d5edf85118;hb=c221adcec8a4cdaf0f89fa83897444671ae4e403;hpb=8d8ab69aaf81e9fdd15396c783f0e40e698e839f diff --git a/src/read_body.php b/src/read_body.php index 964f79d5..a16372b1 100644 --- a/src/read_body.php +++ b/src/read_body.php @@ -34,10 +34,16 @@ $read = sqimap_read_data ($imapConnection, "a003", true, $a, $b); echo "
"; - echo "\n"; + echo "
\n"; echo " \n"; + if ($where && $what) { + // Got here from a search + echo ""; + } else { + echo ""; + } + echo ""._("View message") . "
" . _("Viewing full header") . " - "; - echo ""; - echo ""._("View message") . "
\n"; + echo "\n"; echo "
";
       for ($i=1; $i < count($read)-1; $i++) {
          $read[$i] = htmlspecialchars($read[$i]);
@@ -46,12 +52,14 @@
              substr($read[$i], 0, 1) != "&" && 
              trim($read[$i])) {
             $pre = substr($read[$i], 0, strpos($read[$i], ":"));
-            $read[$i] = str_replace("$pre", "$pre", $read[$i]);
+            $read[$i] = str_replace("$pre", "$pre", decodeHeader($read[$i]));
          }
          echo "$read[$i]";
       }
       echo "
\n"; echo ""; + sqimap_mailbox_close($imapConnection); + sqimap_logout($imapConnection); exit; } @@ -110,12 +118,25 @@ $message = sqimap_get_message($imapConnection, $passed_id, $mailbox); /** translate the subject and mailbox into url-able text **/ - $url_subj = urlencode(trim(stripslashes($message->header->subject))); + $url_subj = urlencode(trim(sqStripSlashes($message->header->subject))); $urlMailbox = urlencode($mailbox); $url_replyto = urlencode($message->header->replyto); $url_replytoall = urlencode($message->header->replyto); - $url_replytoallcc = urlencode(getLineOfAddrs($message->header->to) . ", " . getLineOfAddrs($message->header->cc)); + $url_replytoallcc = getLineOfAddrs($message->header->to); + $url_replytoallcc_cc = getLineOfAddrs($message->header->cc); + if ($url_replytoallcc) { + if ($url_replytoallcc_cc) { + $url_replytoallcc .= ", " . $url_replytoallcc_cc; + } + } else { + if ($url_replytoallcc_cc) { + $url_replytoallcc = $url_replytoallcc_cc; + } else { + $url_replytoallcc = ""; + } + } + $url_replytoallcc = urlencode($url_replytoallcc); $dateString = getLongDateString($message->header->date); $ent_num = findDisplayEntity($message); @@ -129,7 +150,7 @@ $to_string = ""; $to_ary = $message->header->to; while ($i < count($to_ary)) { - $to_ary[$i] = htmlspecialchars($to_ary[$i]); + $to_ary[$i] = htmlspecialchars(decodeHeader($to_ary[$i])); if ($to_string) $to_string = "$to_string
$to_ary[$i]"; @@ -140,11 +161,21 @@ if (count($to_ary) > 1) { if ($show_more == false) { if ($i == 1) { - $to_string = "$to_string ($echo_more)"; + if ($where && $what) { + // from a search + $to_string = "$to_string ($echo_more)"; + } else { + $to_string = "$to_string ($echo_more)"; + } $i = count($to_ary); } } else if ($i == 1) { - $to_string = "$to_string ($echo_less)"; + if ($where && $what) { + // from a search + $to_string = "$to_string ($echo_less)"; + } else { + $to_string = "$to_string ($echo_less)"; + } } } } @@ -153,7 +184,7 @@ $i = 0; $cc_string = ""; $cc_ary = $message->header->cc; - while ($i < count($cc_ary)) { + while ($i < count(decodeHeader($cc_ary))) { $cc_ary[$i] = htmlspecialchars($cc_ary[$i]); if ($cc_string) $cc_string = "$cc_string
$cc_ary[$i]"; @@ -164,49 +195,71 @@ if (count($cc_ary) > 1) { if ($show_more_cc == false) { if ($i == 1) { - $cc_string = "$cc_string ($echo_more)"; + if ($where && $what) { + // from a search + $cc_string = "$cc_string ($echo_more)"; + } else { + $cc_string = "$cc_string ($echo_more)"; + } $i = count($cc_ary); } } else if ($i == 1) { - $cc_string = "$cc_string ($echo_less)"; + if ($where && $what) { + // from a search + $cc_string = "$cc_string ($echo_less)"; + } else { + $cc_string = "$cc_string ($echo_less)"; + } } } } /** make sure everything will display in HTML format **/ $from_name = decodeHeader(htmlspecialchars($message->header->from)); - $subject = decodeHeader(htmlspecialchars(stripslashes($message->header->subject))); + $subject = decodeHeader(htmlspecialchars($message->header->subject)); + do_hook("read_body_top"); echo "
"; - echo "\n"; + echo "
\n"; echo " "; + echo "
"; echo " "; echo " "; echo " \n"; - echo " "; + if ($where && $what) { + // Got here from a search + echo " "; + } else { + echo " "; + } echo " \n"; /** from **/ echo " \n"; echo " \n"; echo " \n"; /** date **/ @@ -248,7 +306,7 @@ echo " \n"; echo " \n"; /** to **/ @@ -256,7 +314,7 @@ echo " \n"; echo " \n"; /** cc **/ @@ -265,22 +323,26 @@ echo " \n"; echo " \n"; } echo "
"; echo " "; - echo " "; + if ($where && $what) { + echo " "; + } else { + echo " "; + } echo _("Message List"); echo " | "; - echo " "; + if ($where && $what) { + echo " "; + } else { + echo " "; + } echo _("Delete"); echo "  "; echo " "; echo " "; echo " \n"; - if ($currentArrayIndex == -1) { - echo "Previous | Next"; + if ($where && $what) { } else { - $prev = findPreviousMessage(); - $next = findNextMessage(); - if ($prev != -1) - echo "" . _("Previous") . " | "; - else - echo _("Previous") . " | "; - if ($next != -1) - echo "" . _("Next") . ""; - else - echo _("Next"); - } + if ($currentArrayIndex == -1) { + echo "Previous | Next"; + } else { + $prev = findPreviousMessage(); + $next = findNextMessage(); + if ($prev != -1) + echo "" . _("Previous") . " | "; + else + echo _("Previous") . " | "; + if ($next != -1) + echo "" . _("Next") . ""; + else + echo _("Next"); + } + } echo " \n"; echo " "; echo " "; @@ -231,16 +284,21 @@ echo " \n"; echo _("Subject:"); echo " \n"; - echo " $subject\n"; + echo " $subject \n"; echo " " . _("View full header") . "  " . _("View full header") . "  " . _("View full header") . "  
\n"; echo _("From:"); echo " \n"; - echo " $from_name\n"; + echo " $from_name \n"; echo "
\n"; echo _("Date:"); echo " \n"; - echo " $dateString\n"; + echo " $dateString \n"; echo "
\n"; echo _("To:"); echo " \n"; - echo " $to_string\n"; + echo " $to_string \n"; echo "
\n"; echo " Cc:\n"; echo " \n"; - echo " $cc_string\n"; + echo " $cc_string \n"; echo "
"; echo "
"; + echo "\n"; echo " \n"; + echo "
\n"; - $body = formatBody($imapConnection, $message, $color, $wrap_at); echo "
"; + + $body = formatBody($imapConnection, $message, $color, $wrap_at); echo "$body"; - echo "
\n"; echo " "; echo "
 
\n"; + do_hook("read_body_bottom"); sqimap_logout($imapConnection); ?>