// Get parts and headers $mid = $_GET['mid']; $pid = $_GET['pid']; $msg->getParts($mid, $pid); $msg->getHeaders($mid, $pid); function Mail_IMAP_do_address_line(&$msg, &$mid, $line) { $rtn = (string) ''; if (!empty($msg->header[$mid][$line])) { foreach ($msg->header[$mid][$line] as $i => $address) { if (isset($msg->header[$mid][$line . '_personal'][$i]) && !empty($msg->header[$mid][$line . '_personal'][$i])) { $rtn .= "<span title='" . str_replace('@', ' at ', $msg->header[$mid][$line][$i]) . "'>" . $msg->header[$mid][$line . '_personal'][$i] . "</span> ;\n"; } else { $rtn .= str_replace('@', ' at ', $msg->header[$mid][$line][$i]) . "; \n"; } } } return $rtn; } function Mail_IMAP_do_parts(&$msg, &$mid, $disp) { $rtn = (string) ''; if (isset($msg->msg[$mid][$disp]['pid']) && count($msg->msg[$mid][$disp]['pid']) > 0) { foreach ($msg->msg[$mid][$disp]['pid'] as $i => $inid) { $rtn .= "<a href='{$_SERVER['PHP_SELF']}?mid={$mid}&pid=" . $msg->msg[$mid][$disp]['pid'][$i] . "' target='top'>" . $msg->msg[$mid][$disp]['fname'][$i] . " " . $msg->msg[$mid][$disp]['ftype'][$i] . " " . $msg->convertBytes($msg->msg[$mid][$disp]['fsize'][$i]) . "</a><br />\n"; } } return $rtn; } echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n <html>\n <head>\n <title> Mail_IMAP Inbox </title>\n <link rel='stylesheet' type='text/css' href='IMAP.css' media='all' />\n </head>\n <body>\n <table id='headerviewer'>\n <tbody>\n <tr>\n <td class='header'> Subject: </td>\n <td> {$msg->header[$mid]['subject']} </td>\n </tr>\n <tr>\n <td class='header'> To: </td>\n <td>\n" . Mail_IMAP_do_address_line($msg, $mid, 'to') . "\n </td>\n </tr>\n <tr>\n <td class='header'> Cc: </td>\n <td>\n" . Mail_IMAP_do_address_line($msg, $mid, 'cc') . "\n </td>\n </tr>\n <tr>\n <td class='header'> From: </td>\n <td>\n" . Mail_IMAP_do_address_line($msg, $mid, 'from') . "\n </td>\n </tr>\n <tr>\n <td class='header'> Received: </td>\n <td>" . date('D d M, Y h:i:s', $msg->header[$mid]['udate']) . "</td>\n </tr>\n <tr>\n <td class='header'> Inline Parts: </td>\n <td>" . Mail_IMAP_do_parts($msg, $mid, 'in') . "</td>\n </tr>\n <tr>\n <td class='header'> Attachments: </td>\n <td>" . Mail_IMAP_do_parts($msg, $mid, 'at') . "</td>\n </tr>\n </tbody>\n </table>\n <iframe src='IMAP.part_viewer.php?mid={$mid}&pid={$pid}' name='part' style='width: 100%; height: 400px;'></iframe>\n </body>\n </html>";
?> </td> </tr> <tr> <td class='header'> Cc: </td> <td> <?php echo Mail_IMAP_do_address_line($msg, $mid, 'cc'); ?> </td> </tr> <tr> <td class='header'> From: </td> <td> <?php echo Mail_IMAP_do_address_line($msg, $mid, 'from'); ?> </td> </tr> <tr> <td class='header'> Received: </td> <td> <?php echo date('D d M, Y h:i:s', $msg->header[$mid]['udate']); ?> </td> </tr> <tr> <td class='header'> Inline Parts: </td> <td> <?php