|
@@ -117,12 +117,12 @@ function replyAllString($header) {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- /**
|
|
|
|
|
|
+ /**
|
|
* 3) get the addresses.
|
|
* 3) get the addresses.
|
|
*/
|
|
*/
|
|
$url_replytoall_ar = $header->getAddr_a(array('to','cc'), $excl_ar);
|
|
$url_replytoall_ar = $header->getAddr_a(array('to','cc'), $excl_ar);
|
|
|
|
|
|
- /**
|
|
|
|
|
|
+ /**
|
|
* 4) generate the string.
|
|
* 4) generate the string.
|
|
*/
|
|
*/
|
|
$url_replytoallcc = '';
|
|
$url_replytoallcc = '';
|
|
@@ -130,11 +130,11 @@ function replyAllString($header) {
|
|
if ($personal) {
|
|
if ($personal) {
|
|
$url_replytoallcc .= ", $personal <$email>";
|
|
$url_replytoallcc .= ", $personal <$email>";
|
|
} else {
|
|
} else {
|
|
- $url_replytoallcc .= ', '. $email;
|
|
|
|
|
|
+ $url_replytoallcc .= ', '. $email;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$url_replytoallcc = substr($url_replytoallcc,2);
|
|
$url_replytoallcc = substr($url_replytoallcc,2);
|
|
-
|
|
|
|
|
|
+
|
|
return $url_replytoallcc;
|
|
return $url_replytoallcc;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -163,7 +163,7 @@ function getReplyCitation($orig_from) {
|
|
$end = '">';
|
|
$end = '">';
|
|
break;
|
|
break;
|
|
case 'user-defined':
|
|
case 'user-defined':
|
|
- $start = $reply_citation_start .
|
|
|
|
|
|
+ $start = $reply_citation_start .
|
|
($reply_citation_start == '' ? '' : ' ');
|
|
($reply_citation_start == '' ? '' : ' ');
|
|
$end = $reply_citation_end;
|
|
$end = $reply_citation_end;
|
|
break;
|
|
break;
|
|
@@ -179,9 +179,9 @@ function getforwardHeader($orig_header) {
|
|
global $editor_size;
|
|
global $editor_size;
|
|
|
|
|
|
$display = array( _("Subject") => strlen(_("Subject")),
|
|
$display = array( _("Subject") => strlen(_("Subject")),
|
|
- _("From") => strlen(_("From")),
|
|
|
|
- _("Date") => strlen(_("Date")),
|
|
|
|
- _("To") => strlen(_("To")),
|
|
|
|
|
|
+ _("From") => strlen(_("From")),
|
|
|
|
+ _("Date") => strlen(_("Date")),
|
|
|
|
+ _("To") => strlen(_("To")),
|
|
_("Cc") => strlen(_("Cc")) );
|
|
_("Cc") => strlen(_("Cc")) );
|
|
$maxsize = max($display);
|
|
$maxsize = max($display);
|
|
$indent = str_pad('',$maxsize+2);
|
|
$indent = str_pad('',$maxsize+2);
|
|
@@ -201,7 +201,7 @@ function getforwardHeader($orig_header) {
|
|
$display[_("To")] . $to . "\n";
|
|
$display[_("To")] . $to . "\n";
|
|
if ($orig_header->cc != array() && $orig_header->cc !='') {
|
|
if ($orig_header->cc != array() && $orig_header->cc !='') {
|
|
$cc = decodeHeader($orig_header->getAddr_s('cc',"\n$indent"),false,false);
|
|
$cc = decodeHeader($orig_header->getAddr_s('cc',"\n$indent"),false,false);
|
|
- $cc = str_replace(' ',' ',$cc);
|
|
|
|
|
|
+ $cc = str_replace(' ',' ',$cc);
|
|
$bodyTop .= $display[_("Cc")] .$cc . "\n";
|
|
$bodyTop .= $display[_("Cc")] .$cc . "\n";
|
|
}
|
|
}
|
|
$bodyTop .= str_pad('', $editor_size -2 , '-') .
|
|
$bodyTop .= str_pad('', $editor_size -2 , '-') .
|
|
@@ -211,12 +211,12 @@ function getforwardHeader($orig_header) {
|
|
/* ----------------------------------------------------------------------- */
|
|
/* ----------------------------------------------------------------------- */
|
|
|
|
|
|
/*
|
|
/*
|
|
- * If the session is expired during a post this restores the compose session
|
|
|
|
|
|
+ * If the session is expired during a post this restores the compose session
|
|
* vars.
|
|
* vars.
|
|
*/
|
|
*/
|
|
if (sqsession_is_registered('session_expired_post')) {
|
|
if (sqsession_is_registered('session_expired_post')) {
|
|
sqgetGlobalVar('session_expired_post', $session_expired_post, SQ_SESSION);
|
|
sqgetGlobalVar('session_expired_post', $session_expired_post, SQ_SESSION);
|
|
- /*
|
|
|
|
|
|
+ /*
|
|
* extra check for username so we don't display previous post data from
|
|
* extra check for username so we don't display previous post data from
|
|
* another user during this session.
|
|
* another user during this session.
|
|
*/
|
|
*/
|
|
@@ -261,10 +261,10 @@ if (!isset($composesession)) {
|
|
|
|
|
|
if (!isset($session) || (isset($newmessage) && $newmessage)) {
|
|
if (!isset($session) || (isset($newmessage) && $newmessage)) {
|
|
sqsession_unregister('composesession');
|
|
sqsession_unregister('composesession');
|
|
- $session = "$composesession" +1;
|
|
|
|
|
|
+ $session = "$composesession" +1;
|
|
$composesession = $session;
|
|
$composesession = $session;
|
|
sqsession_register($composesession,'composesession');
|
|
sqsession_register($composesession,'composesession');
|
|
-}
|
|
|
|
|
|
+}
|
|
if (!isset($compose_messages)) {
|
|
if (!isset($compose_messages)) {
|
|
$compose_messages = array();
|
|
$compose_messages = array();
|
|
}
|
|
}
|
|
@@ -275,7 +275,7 @@ if (!isset($compose_messages[$session]) || ($compose_messages[$session] == NULL)
|
|
$composeMessage->rfc822_header = $rfc822_header;
|
|
$composeMessage->rfc822_header = $rfc822_header;
|
|
$composeMessage->reply_rfc822_header = '';
|
|
$composeMessage->reply_rfc822_header = '';
|
|
$compose_messages[$session] = $composeMessage;
|
|
$compose_messages[$session] = $composeMessage;
|
|
- sqsession_register($compose_messages,'compose_messages');
|
|
|
|
|
|
+ sqsession_register($compose_messages,'compose_messages');
|
|
} else {
|
|
} else {
|
|
$composeMessage=$compose_messages[$session];
|
|
$composeMessage=$compose_messages[$session];
|
|
}
|
|
}
|
|
@@ -360,12 +360,12 @@ if ($send) {
|
|
} else {
|
|
} else {
|
|
sqWordWrap($line, $editor_size);
|
|
sqWordWrap($line, $editor_size);
|
|
$newBody .= $line . "\n";
|
|
$newBody .= $line . "\n";
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
}
|
|
}
|
|
$body = $newBody;
|
|
$body = $newBody;
|
|
-
|
|
|
|
|
|
+
|
|
$composeMessage=$compose_messages[$session];
|
|
$composeMessage=$compose_messages[$session];
|
|
|
|
|
|
$Result = deliverMessage($composeMessage);
|
|
$Result = deliverMessage($composeMessage);
|
|
@@ -495,7 +495,7 @@ elseif (isset($sigappend)) {
|
|
} else {
|
|
} else {
|
|
/*
|
|
/*
|
|
* This handles the default case as well as the error case
|
|
* This handles the default case as well as the error case
|
|
- * (they had the same code) --> if (isset($smtpErrors))
|
|
|
|
|
|
+ * (they had the same code) --> if (isset($smtpErrors))
|
|
*/
|
|
*/
|
|
|
|
|
|
if ($compose_new_win == '1') {
|
|
if ($compose_new_win == '1') {
|
|
@@ -510,15 +510,15 @@ elseif (isset($sigappend)) {
|
|
$passed_ent_id = '';
|
|
$passed_ent_id = '';
|
|
}
|
|
}
|
|
if (!isset($passed_id)) {
|
|
if (!isset($passed_id)) {
|
|
- $passed_id = '';
|
|
|
|
|
|
+ $passed_id = '';
|
|
}
|
|
}
|
|
if (!isset($mailbox)) {
|
|
if (!isset($mailbox)) {
|
|
$mailbox = '';
|
|
$mailbox = '';
|
|
- }
|
|
|
|
|
|
+ }
|
|
if (!isset($action)) {
|
|
if (!isset($action)) {
|
|
$action = '';
|
|
$action = '';
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
$values = newMail($mailbox,$passed_id,$passed_ent_id, $action, $session);
|
|
$values = newMail($mailbox,$passed_id,$passed_ent_id, $action, $session);
|
|
|
|
|
|
/* in case the origin is not read_body.php */
|
|
/* in case the origin is not read_body.php */
|
|
@@ -559,7 +559,7 @@ function newMail ($mailbox='', $passed_id='', $passed_ent_id='', $action='', $se
|
|
|
|
|
|
sqimap_mailbox_select($imapConnection, $mailbox);
|
|
sqimap_mailbox_select($imapConnection, $mailbox);
|
|
$message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
|
|
$message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
|
|
-
|
|
|
|
|
|
+
|
|
$body = '';
|
|
$body = '';
|
|
if ($passed_ent_id) {
|
|
if ($passed_ent_id) {
|
|
/* redefine the messsage in case of message/rfc822 */
|
|
/* redefine the messsage in case of message/rfc822 */
|
|
@@ -586,7 +586,7 @@ function newMail ($mailbox='', $passed_id='', $passed_ent_id='', $action='', $se
|
|
}
|
|
}
|
|
$orig_header = $message->rfc822_header;
|
|
$orig_header = $message->rfc822_header;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
$encoding = $message->header->encoding;
|
|
$encoding = $message->header->encoding;
|
|
$type0 = $message->type0;
|
|
$type0 = $message->type0;
|
|
$type1 = $message->type1;
|
|
$type1 = $message->type1;
|
|
@@ -648,7 +648,7 @@ function newMail ($mailbox='', $passed_id='', $passed_ent_id='', $action='', $se
|
|
$composeMessage->rfc822_header = $orig_header;
|
|
$composeMessage->rfc822_header = $orig_header;
|
|
$send_to = decodeHeader($orig_header->getAddr_s('to'),false,true);
|
|
$send_to = decodeHeader($orig_header->getAddr_s('to'),false,true);
|
|
$send_to_cc = decodeHeader($orig_header->getAddr_s('cc'),false,true);
|
|
$send_to_cc = decodeHeader($orig_header->getAddr_s('cc'),false,true);
|
|
- $send_to_bcc = decodeHeader($orig_header->getAddr_s('bcc'),false,true);
|
|
|
|
|
|
+ $send_to_bcc = decodeHeader($orig_header->getAddr_s('bcc'),false,true);
|
|
$subject = decodeHeader($orig_header->subject,false,true);
|
|
$subject = decodeHeader($orig_header->subject,false,true);
|
|
// /* remember the references and in-reply-to headers in case of an reply */
|
|
// /* remember the references and in-reply-to headers in case of an reply */
|
|
$composeMessage->rfc822_header->more_headers['References'] = $orig_header->references;
|
|
$composeMessage->rfc822_header->more_headers['References'] = $orig_header->references;
|
|
@@ -754,7 +754,7 @@ function newMail ($mailbox='', $passed_id='', $passed_ent_id='', $action='', $se
|
|
function getAttachments($message, &$composeMessage, $passed_id, $entities, $imapConnection) {
|
|
function getAttachments($message, &$composeMessage, $passed_id, $entities, $imapConnection) {
|
|
global $attachment_dir, $username, $data_dir, $squirrelmail_language;
|
|
global $attachment_dir, $username, $data_dir, $squirrelmail_language;
|
|
$hashed_attachment_dir = getHashedDir($username, $attachment_dir);
|
|
$hashed_attachment_dir = getHashedDir($username, $attachment_dir);
|
|
- if (!count($message->entities) ||
|
|
|
|
|
|
+ if (!count($message->entities) ||
|
|
($message->type0 == 'message' && $message->type1 == 'rfc822')) {
|
|
($message->type0 == 'message' && $message->type1 == 'rfc822')) {
|
|
if ( !in_array($message->entity_id, $entities) && $message->entity_id) {
|
|
if ( !in_array($message->entity_id, $entities) && $message->entity_id) {
|
|
switch ($message->type0) {
|
|
switch ($message->type0) {
|
|
@@ -776,7 +776,7 @@ function getAttachments($message, &$composeMessage, $passed_id, $entities, $imap
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
$filename = decodeHeader($filename);
|
|
$filename = decodeHeader($filename);
|
|
- if (isset($languages[$squirrelmail_language]['XTRA_CODE']) &&
|
|
|
|
|
|
+ if (isset($languages[$squirrelmail_language]['XTRA_CODE']) &&
|
|
function_exists($languages[$squirrelmail_language]['XTRA_CODE'])) {
|
|
function_exists($languages[$squirrelmail_language]['XTRA_CODE'])) {
|
|
$filename = $languages[$squirrelmail_language]['XTRA_CODE']('encode', $filename);
|
|
$filename = $languages[$squirrelmail_language]['XTRA_CODE']('encode', $filename);
|
|
}
|
|
}
|
|
@@ -788,9 +788,9 @@ function getAttachments($message, &$composeMessage, $passed_id, $entities, $imap
|
|
}
|
|
}
|
|
$message->att_local_name = $full_localfilename;
|
|
$message->att_local_name = $full_localfilename;
|
|
|
|
|
|
- $composeMessage->initAttachment($message->type0.'/'.$message->type1,$filename,
|
|
|
|
|
|
+ $composeMessage->initAttachment($message->type0.'/'.$message->type1,$filename,
|
|
$full_localfilename);
|
|
$full_localfilename);
|
|
-
|
|
|
|
|
|
+
|
|
/* Write Attachment to file */
|
|
/* Write Attachment to file */
|
|
$fp = fopen ("$hashed_attachment_dir/$localfilename", 'wb');
|
|
$fp = fopen ("$hashed_attachment_dir/$localfilename", 'wb');
|
|
fputs($fp, decodeBody(mime_fetch_body($imapConnection,
|
|
fputs($fp, decodeBody(mime_fetch_body($imapConnection,
|
|
@@ -806,17 +806,17 @@ function getAttachments($message, &$composeMessage, $passed_id, $entities, $imap
|
|
return $composeMessage;
|
|
return $composeMessage;
|
|
}
|
|
}
|
|
|
|
|
|
-function getMessage_RFC822_Attachment($message, $composeMessage, $passed_id,
|
|
|
|
|
|
+function getMessage_RFC822_Attachment($message, $composeMessage, $passed_id,
|
|
$passed_ent_id='', $imapConnection) {
|
|
$passed_ent_id='', $imapConnection) {
|
|
global $attachments, $attachment_dir, $username, $data_dir, $uid_support;
|
|
global $attachments, $attachment_dir, $username, $data_dir, $uid_support;
|
|
$hashed_attachment_dir = getHashedDir($username, $attachment_dir);
|
|
$hashed_attachment_dir = getHashedDir($username, $attachment_dir);
|
|
if (!$passed_ent_id) {
|
|
if (!$passed_ent_id) {
|
|
- $body_a = sqimap_run_command($imapConnection,
|
|
|
|
|
|
+ $body_a = sqimap_run_command($imapConnection,
|
|
'FETCH '.$passed_id.' RFC822',
|
|
'FETCH '.$passed_id.' RFC822',
|
|
- TRUE, $response, $readmessage,
|
|
|
|
|
|
+ TRUE, $response, $readmessage,
|
|
$uid_support);
|
|
$uid_support);
|
|
} else {
|
|
} else {
|
|
- $body_a = sqimap_run_command($imapConnection,
|
|
|
|
|
|
+ $body_a = sqimap_run_command($imapConnection,
|
|
'FETCH '.$passed_id.' BODY['.$passed_ent_id.']',
|
|
'FETCH '.$passed_id.' BODY['.$passed_ent_id.']',
|
|
TRUE, $response, $readmessage, $uid_support);
|
|
TRUE, $response, $readmessage, $uid_support);
|
|
$message = $message->parent;
|
|
$message = $message->parent;
|
|
@@ -824,15 +824,16 @@ function getMessage_RFC822_Attachment($message, $composeMessage, $passed_id,
|
|
if ($response == 'OK') {
|
|
if ($response == 'OK') {
|
|
$subject = encodeHeader($message->rfc822_header->subject);
|
|
$subject = encodeHeader($message->rfc822_header->subject);
|
|
array_shift($body_a);
|
|
array_shift($body_a);
|
|
|
|
+ array_pop($body_a);
|
|
$body = implode('', $body_a) . "\r\n";
|
|
$body = implode('', $body_a) . "\r\n";
|
|
-
|
|
|
|
|
|
+
|
|
$localfilename = GenerateRandomString(32, 'FILE', 7);
|
|
$localfilename = GenerateRandomString(32, 'FILE', 7);
|
|
$full_localfilename = "$hashed_attachment_dir/$localfilename";
|
|
$full_localfilename = "$hashed_attachment_dir/$localfilename";
|
|
-
|
|
|
|
- $fp = fopen( $full_localfilename, 'w');
|
|
|
|
|
|
+
|
|
|
|
+ $fp = fopen($full_localfilename, 'w');
|
|
fwrite ($fp, $body);
|
|
fwrite ($fp, $body);
|
|
fclose($fp);
|
|
fclose($fp);
|
|
- $composeMessage->initAttachment('message/rfc822',$subject.'.eml',
|
|
|
|
|
|
+ $composeMessage->initAttachment('message/rfc822',$subject.'.eml',
|
|
$full_localfilename);
|
|
$full_localfilename);
|
|
}
|
|
}
|
|
return $composeMessage;
|
|
return $composeMessage;
|
|
@@ -846,7 +847,7 @@ function showInputForm ($session, $values=false) {
|
|
$from_htmladdr_search, $location_of_buttons, $attachment_dir,
|
|
$from_htmladdr_search, $location_of_buttons, $attachment_dir,
|
|
$username, $data_dir, $identity, $idents, $draft_id, $delete_draft,
|
|
$username, $data_dir, $identity, $idents, $draft_id, $delete_draft,
|
|
$mailprio, $default_use_mdn, $mdn_user_support, $compose_new_win,
|
|
$mailprio, $default_use_mdn, $mdn_user_support, $compose_new_win,
|
|
- $saved_draft, $mail_sent, $sig_first, $edit_as_new, $action,
|
|
|
|
|
|
+ $saved_draft, $mail_sent, $sig_first, $edit_as_new, $action,
|
|
$username, $compose_messages, $composesession, $default_charset;
|
|
$username, $compose_messages, $composesession, $default_charset;
|
|
|
|
|
|
$composeMessage = $compose_messages[$session];
|
|
$composeMessage = $compose_messages[$session];
|
|
@@ -855,7 +856,7 @@ function showInputForm ($session, $values=false) {
|
|
$send_to = $values['send_to'];
|
|
$send_to = $values['send_to'];
|
|
$send_to_cc = $values['send_to_cc'];
|
|
$send_to_cc = $values['send_to_cc'];
|
|
$send_to_bcc = $values['send_to_bcc'];
|
|
$send_to_bcc = $values['send_to_bcc'];
|
|
- $subject = $values['subject'];
|
|
|
|
|
|
+ $subject = $values['subject'];
|
|
$mailprio = $values['mailprio'];
|
|
$mailprio = $values['mailprio'];
|
|
$body = $values['body'];
|
|
$body = $values['body'];
|
|
$identity = (int) $values['identity'];
|
|
$identity = (int) $values['identity'];
|
|
@@ -864,7 +865,7 @@ function showInputForm ($session, $values=false) {
|
|
$send_to_cc = decodeHeader($send_to_cc);
|
|
$send_to_cc = decodeHeader($send_to_cc);
|
|
$send_to_bcc = decodeHeader($send_to_bcc);
|
|
$send_to_bcc = decodeHeader($send_to_bcc);
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
if ($use_javascript_addr_book) {
|
|
if ($use_javascript_addr_book) {
|
|
echo "\n". '<SCRIPT LANGUAGE=JavaScript>'."\n<!--\n" .
|
|
echo "\n". '<SCRIPT LANGUAGE=JavaScript>'."\n<!--\n" .
|
|
'function open_abook() { ' . "\n" .
|
|
'function open_abook() { ' . "\n" .
|
|
@@ -879,7 +880,7 @@ function showInputForm ($session, $values=false) {
|
|
echo "\n" . '<FORM name=compose action="compose.php" METHOD=POST ' .
|
|
echo "\n" . '<FORM name=compose action="compose.php" METHOD=POST ' .
|
|
'ENCTYPE="multipart/form-data"';
|
|
'ENCTYPE="multipart/form-data"';
|
|
do_hook("compose_form");
|
|
do_hook("compose_form");
|
|
-
|
|
|
|
|
|
+
|
|
echo ">\n";
|
|
echo ">\n";
|
|
|
|
|
|
if ($action == 'draft') {
|
|
if ($action == 'draft') {
|
|
@@ -891,7 +892,7 @@ function showInputForm ($session, $values=false) {
|
|
if (isset($session)) {
|
|
if (isset($session)) {
|
|
echo '<input type="hidden" name="session" value="' . $session . "\">\n";
|
|
echo '<input type="hidden" name="session" value="' . $session . "\">\n";
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
if (isset($passed_id)) {
|
|
if (isset($passed_id)) {
|
|
echo '<input type="hidden" name="passed_id" value="' . $passed_id . "\">\n";
|
|
echo '<input type="hidden" name="passed_id" value="' . $passed_id . "\">\n";
|
|
}
|
|
}
|
|
@@ -1061,20 +1062,20 @@ function showInputForm ($session, $values=false) {
|
|
$maxsize .
|
|
$maxsize .
|
|
' </td>' . "\n" .
|
|
' </td>' . "\n" .
|
|
' </tr>' . "\n";
|
|
' </tr>' . "\n";
|
|
-
|
|
|
|
|
|
+
|
|
|
|
|
|
$s_a = array();
|
|
$s_a = array();
|
|
if ($composeMessage->entities) {
|
|
if ($composeMessage->entities) {
|
|
foreach ($composeMessage->entities as $key => $attachment) {
|
|
foreach ($composeMessage->entities as $key => $attachment) {
|
|
$attached_file = $attachment->att_local_name;
|
|
$attached_file = $attachment->att_local_name;
|
|
- if ($attachment->att_local_name || $attachment->body_part) {
|
|
|
|
|
|
+ if ($attachment->att_local_name || $attachment->body_part) {
|
|
$attached_filename = decodeHeader($attachment->mime_header->getParameter('name'));
|
|
$attached_filename = decodeHeader($attachment->mime_header->getParameter('name'));
|
|
$type = $attachment->mime_header->type0.'/'.
|
|
$type = $attachment->mime_header->type0.'/'.
|
|
$attachment->mime_header->type1;
|
|
$attachment->mime_header->type1;
|
|
-
|
|
|
|
|
|
+
|
|
$s_a[] = '<table bgcolor="'.$color[0].
|
|
$s_a[] = '<table bgcolor="'.$color[0].
|
|
'" border="0"><tr><td><input type="checkbox" name="delete[]" value="' .
|
|
'" border="0"><tr><td><input type="checkbox" name="delete[]" value="' .
|
|
- $key . "\"></td><td>\n" . $attached_filename .
|
|
|
|
|
|
+ $key . "\"></td><td>\n" . $attached_filename .
|
|
'</td><td>-</td><td> ' . $type . '</td><td>('.
|
|
'</td><td>-</td><td> ' . $type . '</td><td>('.
|
|
show_readable_size( filesize( $attached_file ) ) . ')</td></tr></table>'."\n";
|
|
show_readable_size( filesize( $attached_file ) ) . ')</td></tr></table>'."\n";
|
|
}
|
|
}
|
|
@@ -1083,7 +1084,7 @@ function showInputForm ($session, $values=false) {
|
|
if (count($s_a)) {
|
|
if (count($s_a)) {
|
|
foreach ($s_a as $s) {
|
|
foreach ($s_a as $s) {
|
|
echo '<tr>' . html_tag( 'td', '', 'left', $color[0], 'colspan="2"' ) . $s .'</td></tr>';
|
|
echo '<tr>' . html_tag( 'td', '', 'left', $color[0], 'colspan="2"' ) . $s .'</td></tr>';
|
|
- }
|
|
|
|
|
|
+ }
|
|
echo '<tr><td colspan="2"><input type="submit" name="do_delete" value="' .
|
|
echo '<tr><td colspan="2"><input type="submit" name="do_delete" value="' .
|
|
_("Delete selected attachments") . "\">\n" .
|
|
_("Delete selected attachments") . "\">\n" .
|
|
'</td></tr>';
|
|
'</td></tr>';
|
|
@@ -1101,12 +1102,12 @@ function showInputForm ($session, $values=false) {
|
|
}
|
|
}
|
|
|
|
|
|
echo '</TABLE>' . "\n" .
|
|
echo '</TABLE>' . "\n" .
|
|
- '<input type="hidden" name="username" value="'. $username . "\">\n" .
|
|
|
|
|
|
+ '<input type="hidden" name="username" value="'. $username . "\">\n" .
|
|
'<input type=hidden name=action value="' . $action . "\">\n" .
|
|
'<input type=hidden name=action value="' . $action . "\">\n" .
|
|
'<INPUT TYPE=hidden NAME=mailbox VALUE="' . htmlspecialchars($mailbox) .
|
|
'<INPUT TYPE=hidden NAME=mailbox VALUE="' . htmlspecialchars($mailbox) .
|
|
"\">\n";
|
|
"\">\n";
|
|
- /*
|
|
|
|
- store the complete ComposeMessages array in a hidden input value
|
|
|
|
|
|
+ /*
|
|
|
|
+ store the complete ComposeMessages array in a hidden input value
|
|
so we can restore them in case of a session timeout.
|
|
so we can restore them in case of a session timeout.
|
|
*/
|
|
*/
|
|
sqgetGlobalVar('QUERY_STRING', $queryString, SQ_SERVER);
|
|
sqgetGlobalVar('QUERY_STRING', $queryString, SQ_SERVER);
|
|
@@ -1276,7 +1277,7 @@ function getByteSize($ini_size) {
|
|
|
|
|
|
return ($bytesize * (int)substr($ini_size, 0, -1));
|
|
return ($bytesize * (int)substr($ini_size, 0, -1));
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
return $ini_size;
|
|
return $ini_size;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1298,7 +1299,7 @@ function deliverMessage($composeMessage, $draft=false) {
|
|
by replacing them back to spaces addressparsing works */
|
|
by replacing them back to spaces addressparsing works */
|
|
/* FIXME: How to handle in case of other charsets where "\240"
|
|
/* FIXME: How to handle in case of other charsets where "\240"
|
|
is not a non breaking space ??? */
|
|
is not a non breaking space ??? */
|
|
-
|
|
|
|
|
|
+
|
|
$send_to = str_replace("\240",' ',$send_to);
|
|
$send_to = str_replace("\240",' ',$send_to);
|
|
$send_to_cc = str_replace("\240",' ',$send_to_cc);
|
|
$send_to_cc = str_replace("\240",' ',$send_to_cc);
|
|
$send_to_bcc = str_replace("\240",' ',$send_to_bcc);
|
|
$send_to_bcc = str_replace("\240",' ',$send_to_bcc);
|
|
@@ -1357,7 +1358,7 @@ function deliverMessage($composeMessage, $draft=false) {
|
|
}
|
|
}
|
|
/* Receipt: On Delivery */
|
|
/* Receipt: On Delivery */
|
|
if (isset($request_dr) && $request_dr) {
|
|
if (isset($request_dr) && $request_dr) {
|
|
- $rfc822_header->more_headers['Return-Receipt-To'] = $from_mail;
|
|
|
|
|
|
+ $rfc822_header->more_headers['Return-Receipt-To'] = $from_mail;
|
|
}
|
|
}
|
|
/* multipart messages */
|
|
/* multipart messages */
|
|
if (count($composeMessage->entities)) {
|
|
if (count($composeMessage->entities)) {
|
|
@@ -1369,31 +1370,31 @@ function deliverMessage($composeMessage, $draft=false) {
|
|
$mime_header->type1 = 'plain';
|
|
$mime_header->type1 = 'plain';
|
|
if ($special_encoding) {
|
|
if ($special_encoding) {
|
|
$mime_header->encoding = $special_encoding;
|
|
$mime_header->encoding = $special_encoding;
|
|
- } else {
|
|
|
|
|
|
+ } else {
|
|
$mime_header->encoding = '8bit';
|
|
$mime_header->encoding = '8bit';
|
|
}
|
|
}
|
|
if ($default_charset) {
|
|
if ($default_charset) {
|
|
$mime_header->parameters['charset'] = $default_charset;
|
|
$mime_header->parameters['charset'] = $default_charset;
|
|
}
|
|
}
|
|
- $message_body->mime_header = $mime_header;
|
|
|
|
|
|
+ $message_body->mime_header = $mime_header;
|
|
array_unshift($composeMessage->entities, $message_body);
|
|
array_unshift($composeMessage->entities, $message_body);
|
|
$content_type = new ContentType('multipart/mixed');
|
|
$content_type = new ContentType('multipart/mixed');
|
|
} else {
|
|
} else {
|
|
$content_type = new ContentType('text/plain');
|
|
$content_type = new ContentType('text/plain');
|
|
if ($special_encoding) {
|
|
if ($special_encoding) {
|
|
$rfc822_header->encoding = $special_encoding;
|
|
$rfc822_header->encoding = $special_encoding;
|
|
- } else {
|
|
|
|
|
|
+ } else {
|
|
$rfc822_header->encoding = '8bit';
|
|
$rfc822_header->encoding = '8bit';
|
|
- }
|
|
|
|
|
|
+ }
|
|
if ($default_charset) {
|
|
if ($default_charset) {
|
|
$content_type->properties['charset']=$default_charset;
|
|
$content_type->properties['charset']=$default_charset;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
$rfc822_header->content_type = $content_type;
|
|
$rfc822_header->content_type = $content_type;
|
|
$composeMessage->rfc822_header = $rfc822_header;
|
|
$composeMessage->rfc822_header = $rfc822_header;
|
|
|
|
|
|
- /* Here you can modify the message structure just before we hand
|
|
|
|
|
|
+ /* Here you can modify the message structure just before we hand
|
|
it over to deliver */
|
|
it over to deliver */
|
|
$hookReturn = do_hook('compose_send', $composeMessage);
|
|
$hookReturn = do_hook('compose_send', $composeMessage);
|
|
/* Get any changes made by plugins to $composeMessage. */
|
|
/* Get any changes made by plugins to $composeMessage. */
|
|
@@ -1432,7 +1433,7 @@ function deliverMessage($composeMessage, $draft=false) {
|
|
require_once(SM_PATH . 'class/deliver/Deliver_IMAP.class.php');
|
|
require_once(SM_PATH . 'class/deliver/Deliver_IMAP.class.php');
|
|
$imap_deliver = new Deliver_IMAP();
|
|
$imap_deliver = new Deliver_IMAP();
|
|
$length = $imap_deliver->mail($composeMessage);
|
|
$length = $imap_deliver->mail($composeMessage);
|
|
- sqimap_append ($imap_stream, $draft_folder, $length);
|
|
|
|
|
|
+ sqimap_append ($imap_stream, $draft_folder, $length);
|
|
$imap_deliver->mail($composeMessage, $imap_stream);
|
|
$imap_deliver->mail($composeMessage, $imap_stream);
|
|
sqimap_append_done ($imap_stream, $draft_folder);
|
|
sqimap_append_done ($imap_stream, $draft_folder);
|
|
sqimap_logout($imap_stream);
|
|
sqimap_logout($imap_stream);
|
|
@@ -1466,7 +1467,7 @@ function deliverMessage($composeMessage, $draft=false) {
|
|
$svr_allow_sent = false;
|
|
$svr_allow_sent = false;
|
|
}
|
|
}
|
|
|
|
|
|
- if (isset($sent_folder) && (($sent_folder != '') || ($sent_folder != 'none'))
|
|
|
|
|
|
+ if (isset($sent_folder) && (($sent_folder != '') || ($sent_folder != 'none'))
|
|
&& sqimap_mailbox_exists( $imap_stream, $sent_folder)) {
|
|
&& sqimap_mailbox_exists( $imap_stream, $sent_folder)) {
|
|
$fld_sent = true;
|
|
$fld_sent = true;
|
|
} else {
|
|
} else {
|
|
@@ -1493,7 +1494,7 @@ function deliverMessage($composeMessage, $draft=false) {
|
|
sqimap_mailbox_select ($imap_stream, $mailbox);
|
|
sqimap_mailbox_select ($imap_stream, $mailbox);
|
|
sqimap_messages_flag ($imap_stream, $passed_id, $passed_id, 'Answered', true);
|
|
sqimap_messages_flag ($imap_stream, $passed_id, $passed_id, 'Answered', true);
|
|
}
|
|
}
|
|
- sqimap_logout($imap_stream);
|
|
|
|
|
|
+ sqimap_logout($imap_stream);
|
|
}
|
|
}
|
|
return $succes;
|
|
return $succes;
|
|
}
|
|
}
|