From 5db36f984feba00c23e1ecc71a6fb89270018725 Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Mon, 24 Nov 2008 23:26:08 -0700 Subject: [PATCH] Use new MIME functions; remove duplicate code --- imp/contacts.php | 36 +++++++++++++----------------------- 1 file changed, 13 insertions(+), 23 deletions(-) diff --git a/imp/contacts.php b/imp/contacts.php index ce70fdd38..585c05528 100644 --- a/imp/contacts.php +++ b/imp/contacts.php @@ -32,33 +32,21 @@ $formname = Util::getFormData('formname', 'compose'); /* Are we limiting to only the 'To:' field? */ $to_only = Util::getFormData('to_only'); +$search_params = IMP_Compose::getAddressSearchParams(); $apiargs = array( 'addresses' => array($search), 'addressbooks' => array($source), - 'fields' => array() + 'fields' => $search_params['fields'] ); -if ($search_fields_pref = $prefs->getValue('search_fields')) { - foreach (explode("\n", $search_fields_pref) as $s) { - $s = trim($s); - $s = explode("\t", $s); - if (!empty($s[0]) && ($s[0] == $source)) { - $apiargs['fields'][array_shift($s)] = $s; - break; - } - } -} - -$results = array(); +$addresses = array(); if (Util::getFormData('searched') || $prefs->getValue('display_contact')) { $results = $registry->call('contacts/search', $apiargs); -} - -/* The results list returns an array for each source searched - at least - * that's how it looks to me. Make it all one array instead. */ -$addresses = array(); -foreach ($results as $r) { - $addresses = array_merge($addresses, $r); + foreach ($results as $r) { + /* The results list returns an array for each source searched. Make + * it all one array instead. */ + $addresses = array_merge($addresses, $r); + } } /* If self-submitted, preserve the currently selected users encoded by @@ -74,7 +62,7 @@ foreach (explode('|', Util::getFormData('sa')) as $addr) { $template = new IMP_Template(); $template->setOption('gettext', true); -$template->set('action', Horde::url(Util::addParameter(Horde::applicationUrl('contacts.php'), 'uniq', base_convert(microtime(), 10, 36)))); +$template->set('action', Horde::url(Util::addParameter(Horde::applicationUrl('contacts.php'), array('uniq' => uniqid(mt_rand()))))); $template->set('formname', $formname); $template->set('formInput', Util::formInput()); $template->set('search', htmlspecialchars($search)); @@ -88,6 +76,7 @@ if (count($source_list) > 1) { } else { $template->set('source_list', key($source_list)); } + if ($browser->isBrowser('msie')) { $template->set('select_event', ' ondblclick="addAddress(\'to\')"'); $template->set('option_event', null); @@ -95,15 +84,16 @@ if ($browser->isBrowser('msie')) { $template->set('select_event', null); $template->set('option_event', ' ondblclick="addAddress(\'to\')"'); } + $a_list = array(); foreach ($addresses as $addr) { if (!empty($addr['email'])) { if (strpos($addr['email'], ',') !== false) { - $a_list[] = @htmlspecialchars(MIME::rfc2822Encode($addr['name'], 'personal') . ': ' . $addr['email'] . ';', ENT_QUOTES, NLS::getCharset()); + $a_list[] = @htmlspecialchars(Horde_Mime_Address::encode($addr['name'], 'personal') . ': ' . $addr['email'] . ';', ENT_QUOTES, NLS::getCharset()); } else { $mbox_host = explode('@', $addr['email']); if (isset($mbox_host[1])) { - $a_list[] = @htmlspecialchars(MIME::rfc822WriteAddress($mbox_host[0], $mbox_host[1], $addr['name']), ENT_QUOTES, NLS::getCharset()); + $a_list[] = @htmlspecialchars(Horde_Mime_Address::writeAddress($mbox_host[0], $mbox_host[1], $addr['name']), ENT_QUOTES, NLS::getCharset()); } } } -- 2.11.0