Fix for bug 554789 Loose of attachements when using the html addressbook
[squirrelmail.git] / functions / attachment_common.php
index fc37d988421dc981719eaeb06292505f8731c843..95ecd33bf9c3654d2d1f26a754aefc0e8ed89549 100644 (file)
@@ -49,7 +49,8 @@ if (isset($attachment_common_types)) {
 }
 
 /* Register text-type attachments */
-register_attachment_common('message/rfc822', 'link_text');
+//register_attachment_common('message/rfc822', 'link_text');
+register_attachment_common('message/rfc822', 'link_message');
 register_attachment_common('text/plain',     'link_text');
 register_attachment_common('text/richtext',  'link_text');
 
@@ -93,18 +94,18 @@ function attachment_common_link_text(&$Args)
       
        This sets the 'href' of this plugin for a new link. */
     $Args[1]['attachment_common']['href'] = '../src/download.php?startMessage=' .
-        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
-        '&passed_ent_id=' . $Args[5] . '&override_type0=text&override_type1=plain';
+        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
+        '&passed_ent_id=' . $Args[5] . '&override_type0=text&override_type1=plain';
     
     /* If we got here from a search, we should preserve these variables */
     if ($Args[8] && $Args[9])
-        $Args[1]['attachment_common']['href'] .= '&where=' . 
-        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
+        $Args[1]['attachment_common']['href'] .= '&where=' . 
+        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
   
     /* The link that we created needs a name.  "view" will be displayed for
        all text attachments handled by this plugin. */
     $Args[1]['attachment_common']['text'] = _("view");
-    
+
     /* Each attachment has a filename on the left, which is a link.
        Where that link points to can be changed.  Just in case the link above
        for viewing text attachments is not the same as the default link for
@@ -117,15 +118,26 @@ function attachment_common_link_text(&$Args)
 }
 
 
+function attachment_common_link_message(&$Args)
+{
+    $Args[1]['attachment_common']['href'] = '../src/download.php?startMessage=' .
+        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
+        '&passed_ent_id=' . $Args[5] . '&override_type0=message&override_type1=rfc822';
+    /* The link that we created needs a name.  "view" will be displayed for
+       all text attachments handled by this plugin. */
+    $Args[1]['attachment_common']['text'] = _("view");
+}
+
+
 function attachment_common_link_html(&$Args)
 {
     $Args[1]['attachment_common']['href'] = '../src/download.php?startMessage=' . 
-        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
-       '&passed_ent_id=' . $Args[5] . '&override_type0=text&override_type1=html';
+        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
+       '&passed_ent_id=' . $Args[5] . '&override_type0=text&override_type1=html';
     
     if ($Args[8] && $Args[9]) {
-        $Args[1]['attachment_common']['href'] .= '&where=' . 
-        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
+        $Args[1]['attachment_common']['href'] .= '&where=' . 
+        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
     }
 
     $Args[1]['attachment_common']['text'] = _("view");
@@ -145,12 +157,12 @@ function attachment_common_link_image(&$Args)
     $attachment_common_show_images_list[] = $info;
     
     $Args[1]['attachment_common']['href'] = '../src/image.php?startMessage=' .
-        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
-        '&passed_ent_id=' . $Args[5];
+        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
+        '&passed_ent_id=' . $Args[5];
     
     if ($Args[8] && $Args[9]) {
-        $Args[1]['attachment_common']['href'] .= '&where=' . 
-        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
+        $Args[1]['attachment_common']['href'] .= '&where=' . 
+        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
     }
   
     $Args[1]['attachment_common']['text'] = _("view");
@@ -163,12 +175,12 @@ function attachment_common_link_image(&$Args)
 function attachment_common_link_vcard(&$Args)
 {
     $Args[1]['attachment_common']['href'] = '../src/vcard.php?startMessage=' .
-        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
-        '&passed_ent_id=' . $Args[5];
+        $Args[2] . '&passed_id=' . $Args[3] . '&mailbox=' . $Args[4] .
+        '&passed_ent_id=' . $Args[5];
   
     if (isset($where) && isset($what))
-        $Args[1]['attachment_common']['href'] .= '&where=' . 
-        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
+        $Args[1]['attachment_common']['href'] .= '&where=' . 
+        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
   
     $Args[1]['attachment_common']['text'] = _("Business Card");