A few more unnecessary urldecodes when not needed. Now we can view headers
[squirrelmail.git] / src / vcard.php
index 4c3790a273f1d85f5f76c10b2b48109fe1d3e790..da4a7a63216b2eeb82990789539cd330150b672e 100644 (file)
@@ -3,7 +3,7 @@
 /**
  * vcard.php
  *
- * Copyright (c) 1999-2002 The SquirrelMail Project Team
+ * Copyright (c) 1999-2003 The SquirrelMail Project Team
  * Licensed under the GNU GPL. For full terms see the file COPYING.
  *
  * This file shows an attched vcard
@@ -12,7 +12,7 @@
  */
 
 /* Path for SquirrelMail required files. */
-define('SM_PATH','../');
+Define('SM_PATH','../');
 
 /* SquirrelMail required files. */
 require_once(SM_PATH . 'include/validate.php');
@@ -24,12 +24,11 @@ require_once(SM_PATH . 'include/load_prefs.php');
 /* globals */
 $key  = $_COOKIE['key'];
 $username = $_SESSION['username'];
-$onetimepad = $_SESISON['onetimepad'];
-
+$onetimepad = $_SESSION['onetimepad'];
 $mailbox = $_GET['mailbox'];
-$passed_id = $_GET['passed_id'];
-$passed_ent_id = $_GET['passed_ent_id'];
-
+$passed_id = (int) $_GET['passed_id'];
+$ent_id = $_GET['ent_id'];
+$startMessage = (int) $_GET['startMessage'];
 /* end globals */
 
 $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 0);
@@ -43,8 +42,12 @@ echo '<br><table width="100%" border="0" cellspacing="0" cellpadding="2" ' .
         '<tr><td bgcolor="' . $color[0] . '">' .
         '<b><center>' .
         _("Viewing a Business Card") . " - ";
-$msg_url = 'read_body.php?' . $QUERY_STRING;
+$msg_url = 'read_body.php?mailbox='.urlencode($mailbox).
+    '&amp;startMessage='.$startMessage.
+    '&amp;passed_id='.$passed_id;
+
 $msg_url = set_url_var($msg_url, 'ent_id', 0);
+
 echo '<a href="'.$msg_url.'">'. _("View message") . '</a>';
 
 echo '</center></b></td></tr>';
@@ -65,7 +68,7 @@ foreach ($vcard as $l) {
         if ($attr == 'quoted-printable')
         $v = quoted_printable_decode($v);
         else
-            $k .= ';' . $attr;
+            $k .= ';' . strtolower($attr);
     }
 
     $v = str_replace(';', "\n", $v);
@@ -74,10 +77,15 @@ foreach ($vcard as $l) {
 
 if ($vcard_nice['version'] == '2.1') {
     // get firstname and lastname for sm addressbook
-    $vcard_nice["firstname"] = substr($vcard_nice["n"],
-    strpos($vcard_nice["n"], "\n") + 1, strlen($vcard_nice["n"]));
-    $vcard_nice["lastname"] = substr($vcard_nice["n"], 0,
-        strpos($vcard_nice["n"], "\n"));
+    $vcard_nice['firstname'] = substr($vcard_nice['n'],
+    strpos($vcard_nice['n'], "\n") + 1, strlen($vcard_nice['n']));
+    $vcard_nice['lastname'] = substr($vcard_nice['n'], 0,
+        strpos($vcard_nice['n'], "\n"));
+    // workaround for Outlook, should be fixed in a better way,
+    // maybe in new 'vCard' class.
+    if (isset($vcard_nice['email;pref;internet'])) {
+       $vcard_nice['email;internet'] = $vcard_nice['email;pref;internet'];
+    }
 } else {
     echo '<tr><td align=center>vCard Version ' . $vcard_nice['version'] .
         ' is not supported.  Some information might not be converted ' .
@@ -201,7 +209,7 @@ echo '</select>' .
         '<tr><td align=center>' .
         '<a href="../src/download.php?absolute_dl=true&amp;passed_id=' .
         $passed_id . '&amp;mailbox=' . urlencode($mailbox) .
-        '&amp;passed_ent_id=' . $passed_ent_id . '">' .
+        '&amp;ent_id=' . urlencode($ent_id) . '">' .
         _("Download this as a file") . '</A>' .
         '</TD></TR></TABLE>' .