rg=0 fix for attachment_common_types
[squirrelmail.git] / functions / attachment_common.php
index fc37d988421dc981719eaeb06292505f8731c843..1d3365230db4e4f9835dbd9ae5926cd83e267670 100644 (file)
@@ -28,6 +28,7 @@ $FileExtensionToMimeType = array('bmp'  => 'image/x-bitmap',
                                  'vcf'  => 'text/x-vcard');
 
 /* Register browser-supported image types */
+$attachment_common_types = $_SESSION['attachment_common_types'];
 if (isset($attachment_common_types)) {
     /* Don't run this before being logged in. That may happen
        when plugins include mime.php */
@@ -49,7 +50,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');
 
@@ -92,19 +94,17 @@ function attachment_common_link_text(&$Args)
        $Args[1]['attachment_common']['href'] = Where it links to
       
        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';
-    
-    /* 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]);
+    $QUERY_STRING = $_SERVER['QUERY_STRING'];;   
+
+    $Args[1]['attachment_common']['href'] = '../src/view_text.php?'. $QUERY_STRING;
+    $Args[1]['attachment_common']['href'] =
+          set_url_var($Args[1]['attachment_common']['href'], 
+         'ent_id',$Args[5]);
   
     /* 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
@@ -116,27 +116,40 @@ function attachment_common_link_text(&$Args)
     $Args[6] = $Args[1]['attachment_common']['href'];
 }
 
+function attachment_common_link_message(&$Args)
+{
+    $Args[1]['attachment_common']['href'] = '../src/read_body.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");
+
+    $Args[6] = $Args[1]['attachment_common']['href'];    
+}
+
 
-function attachment_common_link_html(&$Args)
+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';
-    
-    if ($Args[8] && $Args[9]) {
-        $Args[1]['attachment_common']['href'] .= '&where=' . 
-        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
-    }
+    $QUERY_STRING = $_SERVER['QUERY_STRING'];;   
+
+    $Args[1]['attachment_common']['href'] = '../src/view_text.php?'. $QUERY_STRING.
+       /* why use the overridetype? can this be removed */
+       '&override_type0=text&override_type1=html';
+    $Args[1]['attachment_common']['href'] =
+          set_url_var($Args[1]['attachment_common']['href'], 
+         'ent_id',$Args[5]);
 
     $Args[1]['attachment_common']['text'] = _("view");
 
     $Args[6] = $Args[1]['attachment_common']['href'];
 }
 
-
 function attachment_common_link_image(&$Args)
 {
+    $QUERY_STRING = $_SERVER['QUERY_STRING'];;   
     global $attachment_common_show_images, $attachment_common_show_images_list;
+
     
     $info['passed_id'] = $Args[3];
     $info['mailbox'] = $Args[4];
@@ -144,31 +157,26 @@ 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];
-    
-    if ($Args[8] && $Args[9]) {
-        $Args[1]['attachment_common']['href'] .= '&where=' . 
-        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
-    }
+    $Args[1]['attachment_common']['href'] = '../src/image.php?'. $QUERY_STRING;
+    $Args[1]['attachment_common']['href'] =
+          set_url_var($Args[1]['attachment_common']['href'], 
+         'ent_id',$Args[5]);
   
     $Args[1]['attachment_common']['text'] = _("view");
     
     $Args[6] = $Args[1]['attachment_common']['href'];
-    
+
 }
 
 
 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];
-  
-    if (isset($where) && isset($what))
-        $Args[1]['attachment_common']['href'] .= '&where=' . 
-        urlencode($Args[8]) . '&what=' . urlencode($Args[9]);
+    $QUERY_STRING = $_SERVER['QUERY_STRING'];;   
+
+    $Args[1]['attachment_common']['href'] = '../src/vcard.php?'. $QUERY_STRING;
+    $Args[1]['attachment_common']['href'] =
+          set_url_var($Args[1]['attachment_common']['href'], 
+         'ent_id',$Args[5]);
   
     $Args[1]['attachment_common']['text'] = _("Business Card");