Jelajahi Sumber

fixed some bugs in email address finding

Luke Ehresman 25 tahun lalu
induk
melakukan
85335a7c3b
2 mengubah file dengan 19 tambahan dan 12 penghapusan
  1. 12 9
      functions/mailbox.php
  2. 7 3
      src/compose.php

+ 12 - 9
functions/mailbox.php

@@ -138,31 +138,34 @@
 
    function decodeEmailAddr($sender) {
       $emailAddr = getEmailAddr($sender);
-      $emailStart = strpos($emailAddr, "EMAILSTART--");
-      $emailEnd = strpos($emailAddr, "--EMAILEND") - 10;
+      if (strpos($emailAddr, "EMAILSTART--")) {
 
-      $emailAddr = ereg_replace("EMAILSTART--", "", $emailAddr);
-      $emailAddr = ereg_replace("--EMAILEND", "", $emailAddr);
+         $emailAddr = ereg_replace("EMAILSTART--", "", $emailAddr);
+         $emailAddr = ereg_replace("--EMAILEND", "", $emailAddr);
+      } else {
+         $emailAddr = $emailAddr;
+      }
       return $emailAddr;
    }
 
    function getEmailAddr($sender) {
       if (strpos($sender, "EMAILSTART--") == false)
-         return "";
+         return "$sender";
 
-      $start = strpos($sender, "EMAILSTART--");
-      $emailAddr = substr($sender, $start, strlen($sender));
+      $emailStart = strpos($sender, "EMAILSTART--") + 12;
+      $emailAddr = substr($sender, $emailStart, strlen($sender));
+      $emailAddr = substr($emailAddr, 0, strpos($emailAddr, "--EMAILEND"));
 
       return $emailAddr;
    }
 
    function getSender($sender) {
       if (strpos($sender, "EMAILSTART--") == false)
-         return "";
+         return "$sender";
 
       $first = substr($sender, 0, strpos($sender, "EMAILSTART--"));
       $second = substr($sender, strpos($sender, "--EMAILEND") +10, strlen($sender));
-      return "$first$second";
+      return "$first $second";
    }
 
    function getSenderName($sender) {

+ 7 - 3
src/compose.php

@@ -59,12 +59,16 @@
    echo "      <TD WIDTH=15% BGCOLOR=FFFFFF ALIGN=RIGHT>\n";
    echo "         <FONT FACE=\"Arial,Helvetica\">Subject:</FONT>\n";
    echo "      </TD><TD WIDTH=85% BGCOLOR=FFFFFF ALIGN=LEFT>\n";
-   if ($reply_subj)
+   if ($reply_subj) {
+      $reply_subj = str_replace("\"", "'", $reply_subj);
+      $reply_subj = stripslashes($reply_subj);
       echo "         <INPUT TYPE=TEXT NAME=passed_subject SIZE=60 VALUE=\"Re: $reply_subj\"><BR>";
-   else if ($forward_subj)
+   } else if ($forward_subj) {
+      $forward_subj = stripquotes($forward_subj);
       echo "         <INPUT TYPE=TEXT NAME=passed_subject SIZE=60 VALUE=\"[Fwd: $forward_subj]\"><BR>";
-   else
+   } else {
       echo "         <INPUT TYPE=TEXT NAME=passed_subject SIZE=60>";
+   }
    echo "&nbsp;&nbsp;<INPUT TYPE=SUBMIT VALUE=\"Send\"><BR>";
    echo "      </TD>\n";
    echo "   </TR>\n";