Removed more warnings
[squirrelmail.git] / src / read_body.php
index 28733de08ed9055196ef583c9a9d064b04049c01..95368c107000c8b5b5b1acea2ff97c20768e9887 100644 (file)
    /** translate the subject and mailbox into url-able text **/
    $url_subj = urlencode(trim($message->header->subject));
    $urlMailbox = urlencode($mailbox);
-   $url_replyto = urlencode($message->header->replyto);
+   $url_replyto = '';
+   if (isset($message->header->replyto))
+      $url_replyto = urlencode($message->header->replyto);
 
-   $url_replytoall   = urlencode($message->header->replyto);
+   $url_replytoall   = $url_replyto;
 
    // If we are replying to all, then find all other addresses and
    // add them to the list.  Remove duplicates.
       array_keys(array_flip($url_replytoall_extra_addrs));
    
    // 5) Remove the addresses we'll be sending the message 'to'
-   $url_replytoall_avoid_addrs = parseAddrs($message->header->replyto);
+   $url_replytoall_avoid_addrs = '';
+   if (isset($message->header->replyto))
+      $url_replytoall_avoid_addrs = $message->header->replyto;
+   $url_replytoall_avoid_addrs = parseAddrs($url_replytoall_avoid_addrs);
    foreach ($url_replytoall_avoid_addrs as $addr)
    {
        RemoveAddress($url_replytoall_extra_addrs, $addr);
    }
    
    // 6) Remove our identities from the CC list (they still can be in the
-   // TO list)
-   RemoveAddress($url_replytoall_extra_addrs, getPref($data_dir, $username,
-                                                      'email_address'));
-   $idents = getPref($data_dir, $username, 'identities');
-   if ($idents != '' && $idents > 1)
+   // TO list) only if $include_self_reply_all isn't set or it is ''.
+   if (getPref($data_dir, $username, 'include_self_reply_all') == '')
    {
-       for ($i = 1; $i < $idents; $i ++)
+       RemoveAddress($url_replytoall_extra_addrs, 
+                     getPref($data_dir, $username, 'email_address'));
+       $idents = getPref($data_dir, $username, 'identities');
+       if ($idents != '' && $idents > 1)
        {
-           RemoveAddress($url_replytoall_extra_addrs, 
-                        getPref($data_dir, $username, 'email_address' . $i));
+           for ($i = 1; $i < $idents; $i ++)
+           {
+               RemoveAddress($url_replytoall_extra_addrs, 
+                            getPref($data_dir, $username, 'email_address' .
+                                    $i));
+           }
        }
-   }
+   } 
    
    // 7) Smoosh back into one nice line
    $url_replytoallcc = getLineOfAddrs($url_replytoall_extra_addrs);