- if (isset($where) && isset($what)) {
- // from a search
- echo '<a href="../src/read_body.php?mailbox=' . urlencode($mailbox) .
- '&passed_id=' . $passed_id . '&where=' . urlencode($where) .
- '&what=' . urlencode($what). '">' . _("View message") . '</a>';
- } else {
- echo '<a href="../src/read_body.php?mailbox=' . urlencode($mailbox) .
- '&passed_id=' . $passed_id . '&startMessage=' . $startMessage .
- '&show_more=0">' . _("View message") . '</a>';
- }
- echo '</center></b></td></tr>';
-
- $message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
-
- $entity_vcard = getEntity($message,$passed_ent_id);
-
- $vcard = mime_fetch_body ($imapConnection, $passed_id, $passed_ent_id);
- $vcard = decodeBody($vcard, $entity_vcard->header->encoding);
- $vcard = explode ("\n",$vcard);
- foreach ($vcard as $l)
- {
- $k = substr($l, 0, strpos($l, ':'));
- $v = substr($l, strpos($l, ':') + 1);
- $attributes = explode(';', $k);
- $k = strtolower(array_shift($attributes));
- foreach ($attributes as $attr)
- {
- if ($attr == 'quoted-printable')
- $v = quoted_printable_decode($v);
- else
- $k .= ';' . $attr;
- }
-
- $v = ereg_replace(';', "\n", $v);
- $vcard_nice[$k] = $v;
- }
-
- 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"));
- }
- else
- {
- echo '<tr><td align=center>vCard Version ' . $vcard_nice['version'] .
- ' is not supported. Some information might not be converted ' .
- "correctly.</td></tr>\n";
- }
-
- foreach ($vcard_nice as $k => $v)
- {
- $v = htmlspecialchars($v);
- $v = trim($v);
- $vcard_safe[$k] = trim(nl2br($v));
- }
-
- $ShowValues = array(
- 'fn' => _("Name"),
- 'title' => _("Title"),
- 'email;internet' => _("Email"),
- 'url' => _("Web Page"),
- 'org' => _("Organization / Department"),
- 'adr' => _("Address"),
- 'tel;work' => _("Work Phone"),
- 'tel;home' => _("Home Phone"),
- 'tel;cell' => _("Cellular Phone"),
- 'tel;fax' => _("Fax"),
- 'note' => _("Note"));
-
- echo '<tr><td><br>' .
+$msg_url = 'read_body.php?mailbox='.urlencode($mailbox).
+ '&startMessage='.$startMessage.
+ '&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>';
+
+$message = sqimap_get_message($imapConnection, $passed_id, $mailbox);
+
+$entity_vcard = getEntity($message,$ent_id);
+
+$vcard = mime_fetch_body ($imapConnection, $passed_id, $ent_id);
+$vcard = decodeBody($vcard, $entity_vcard->header->encoding);
+$vcard = explode ("\n",$vcard);
+foreach ($vcard as $l) {
+ $k = substr($l, 0, strpos($l, ':'));
+ $v = substr($l, strpos($l, ':') + 1);
+ $attributes = explode(';', $k);
+ $k = strtolower(array_shift($attributes));
+ foreach ($attributes as $attr) {
+ if ($attr == 'quoted-printable')
+ $v = quoted_printable_decode($v);
+ else
+ $k .= ';' . strtolower($attr);
+ }
+
+ $v = str_replace(';', "\n", $v);
+ $vcard_nice[$k] = $v;
+}
+
+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"));
+ // 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 ' .
+ "correctly.</td></tr>\n";
+}
+
+foreach ($vcard_nice as $k => $v) {
+ $v = htmlspecialchars($v);
+ $v = trim($v);
+ $vcard_safe[$k] = trim(nl2br($v));
+}
+
+$ShowValues = array(
+ 'fn' => _("Name"),
+ 'title' => _("Title"),
+ 'email;internet' => _("Email"),
+ 'url' => _("Web Page"),
+ 'org' => _("Organization / Department"),
+ 'adr' => _("Address"),
+ 'tel;work' => _("Work Phone"),
+ 'tel;home' => _("Home Phone"),
+ 'tel;cell' => _("Cellular Phone"),
+ 'tel;fax' => _("Fax"),
+ 'note' => _("Note"));
+
+echo '<tr><td><br>' .