Add replaceHeader().
authorMichael M Slusarz <slusarz@curecanti.org>
Mon, 24 Nov 2008 21:45:54 +0000 (14:45 -0700)
committerMichael M Slusarz <slusarz@curecanti.org>
Mon, 24 Nov 2008 22:04:53 +0000 (15:04 -0700)
framework/Mime/lib/Horde/Mime/Headers.php
framework/Mime/lib/Horde/Mime/Part.php

index 4184ecd..6869276 100644 (file)
@@ -273,6 +273,19 @@ class Horde_Mime_Headers
     }
 
     /**
+     * Replace a value of a header.
+     *
+     * @param string $header   The header name.
+     * @param string $value    The header value.
+     * @param boolean $decode  MIME decode the value?
+     */
+    public function replaceHeader($header, $value, $decode = false)
+    {
+        $this->removeHeader($header);
+        $this->addHeader($header, $value, $decode);
+    }
+
+    /**
      * Set a value for a particular header ONLY if that header is set.
      *
      * @param string $header   The header name.
index b5abfff..29676b2 100644 (file)
@@ -741,7 +741,7 @@ class Horde_Mime_Part
         }
 
         foreach ($this->getHeaderArray() as $key => $val) {
-            $headers->addHeader($key, $val);
+            $headers->replaceHeader($key, $val);
         }
 
         return $headers;
@@ -1395,7 +1395,7 @@ class Horde_Mime_Part
                     $this->strict7bit(true);
                     $encoding = $this->getTransferEncoding();
                 }
-                $headers->addHeader('Content-Transfer-Encoding', $encoding);
+                $headers->replaceHeader('Content-Transfer-Encoding', $encoding);
             }
         }