X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=src%2Fcompose.php;h=33bc51d03a9fec0c934cc20489cf8eec51acf062;hp=abb60da22ca6ceaf3632a460fc0e53c6245433c6;hb=f95d9e7b53d67bbf15be0894cd25acd1c656f0d7;hpb=991a059e3b2b9341adfa5625c2a0b33f6f952908 diff --git a/src/compose.php b/src/compose.php index abb60da2..33bc51d0 100644 --- a/src/compose.php +++ b/src/compose.php @@ -14,34 +14,25 @@ ** ** $Id$ **/ - - session_start(); - - if (!isset($strings_php)) - include("../functions/strings.php"); - if (!isset($config_php)) - include("../config/config.php"); - if (!isset($page_header_php)) - include("../functions/page_header.php"); - if (!isset($imap_php)) - include("../functions/imap.php"); - if (!isset($date_php)) - include("../functions/date.php"); - if (!isset($mime_php)) - include("../functions/mime.php"); - if (!isset($smtp_php)) - include("../functions/smtp.php"); - if (!isset($display_messages_php)) - include("../functions/display_messages.php"); - if (!isset($auth_php)) - include ("../functions/auth.php"); - if (!isset($plugin_php)) - include ("../functions/plugin.php"); + include('../src/validate.php'); + include("../functions/strings.php"); + include("../config/config.php"); + include("../functions/page_header.php"); + include("../functions/imap.php"); + include("../functions/date.php"); + include("../functions/mime.php"); + include("../functions/smtp.php"); + include("../functions/display_messages.php"); + include ("../functions/plugin.php"); include("../src/load_prefs.php"); if (!isset($attachments)) + { $attachments = array(); + session_register('attachments'); + } + // This function is used when not sending or adding attachments function newMail () { @@ -73,7 +64,7 @@ } else { $body = ""; } - + if ($message->header->type1 == "html") $body = strip_tags($body); @@ -99,7 +90,7 @@ } sqWordWrap($body_ary[$i], $editor_size - 1); $body .= $body_ary[$i] . "\n"; - unset($body_ary[$i]); + unset($body_ary[$i]); } if ($forward_id) { @@ -155,11 +146,11 @@ function getAttachments($message) { global $mailbox, $attachments, $attachment_dir, $imapConnection, $ent_num, $forward_id; - + if (!$message) { sqimap_mailbox_select($imapConnection, $mailbox); $message = sqimap_get_message($imapConnection, $forward_id, - $mailbox); + $mailbox); } if (count($message->entities) == 0) { @@ -170,21 +161,22 @@ $filename = "untitled-".$message->header->entity_id; $localfilename = GenerateRandomString(32, '', 7); - - // Write File Info - $fp = fopen ($attachment_dir.$localfilename.".info", "w"); - fputs ($fp, strtolower($message->header->type0)."/". - strtolower($message->header->type1)."\n".$filename."\n"); - fclose ($fp); + while (file_exists($attachment_dir . $localfilename)) + $localfilename = GenerateRandomString(32, '', 7); + + $newAttachment['localfilename'] = $localfilename; + $newAttachment['remotefilename'] = $filename; + $newAttachment['type'] = strtolower($message->header->type0 . + '/' . $message->header->type1); // Write Attachment to file - $fp = fopen ($attachment_dir.$localfilename, "w"); + $fp = fopen ($attachment_dir.$localfilename, 'w'); fputs ($fp, decodeBody(mime_fetch_body($imapConnection, - $forward_id, $message->header->entity_id), - $message->header->encoding)); + $forward_id, $message->header->entity_id), + $message->header->encoding)); fclose ($fp); - $attachments[$localfilename] = $filename; + $attachments[] = $newAttachment; } } else { for ($i = 0; $i < count($message->entities); $i++) { @@ -199,7 +191,7 @@ $passed_body, $color, $use_signature, $signature, $prefix_sig, $editor_size, $attachments, $subject, $newmail, $use_javascript_addr_book, $send_to_bcc, $reply_id, $mailbox, - $from_htmladdr_search, $location_of_buttons; + $from_htmladdr_search, $location_of_buttons, $attachment_dir; $subject = decodeHeader($subject); $reply_subj = decodeHeader($reply_subj); @@ -218,7 +210,7 @@ echo "\n
\n"; + echo ">\n"; if ($reply_id) { echo "\n"; } @@ -263,11 +255,10 @@ printf(" ", htmlspecialchars($reply_subj)); } else if ($forward_subj) { - $forward_subj = str_replace("\"", "'", $forward_subj); $forward_subj = trim($forward_subj); - if ((substr(strtolower($forward_subj), 0, 4) != "fwd:") && - (substr(strtolower($forward_subj), 0, 5) != "[fwd:") && - (substr(strtolower($forward_subj), 0, 6) != "[ fwd:")) + if ((substr(strtolower($forward_subj), 0, 4) != 'fwd:') && + (substr(strtolower($forward_subj), 0, 5) != '[fwd:') && + (substr(strtolower($forward_subj), 0, 6) != '[ fwd:')) $forward_subj = "[Fwd: $forward_subj]"; printf(" ", htmlspecialchars($forward_subj)); @@ -309,13 +300,16 @@ echo " value=\"" . _("Add") ."\">\n"; echo " \n"; echo " \n"; - if (count($attachments) > 0) { + if (count($attachments)) + { echo "\n"; echo " "; echo ""; - while (list($localname, $remotename) = each($attachments)) { - echo "\n"; - echo "$remotename
\n"; + foreach ($attachments as $key => $info) { + echo "\n"; + echo $info['remotefilename'] . " - " . $info['type'] . " ("; + echo show_readable_size(filesize($attachment_dir . + $info['localfilename'])) . ")
\n"; } echo "\n"; @@ -330,6 +324,7 @@ function showComposeButtonRow() { global $use_javascript_addr_book; + echo " \n \n"; if ($use_javascript_addr_book) { echo "