*
* Functions require SM_PATH and support of forms.php functions
*
- * @copyright © 1999-2007 The SquirrelMail Project Team
+ * @copyright © 1999-2009 The SquirrelMail Project Team
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @version $Id$
* @package squirrelmail
function full_address($row) {
global $data_dir, $username;
$addrsrch_fullname = getPref($data_dir, $username, 'addrsrch_fullname');
- if ($addrsrch_fullname == 'fullname')
- return $row['name'] . ' <' . trim($row['email']) . '>';
- else if ($addrsrch_fullname == 'nickname')
- return $row['nickname'] . ' <' . trim($row['email']) . '>';
- else // "noprefix"
- return trim($row['email']);
+
+ // allow multiple addresses in one row (poor person's grouping - bah)
+ // (separate with commas)
+ //
+ $return = '';
+ $addresses = explode(',', $row['email']);
+ foreach ($addresses as $address) {
+
+ if (!empty($return)) $return .= ', ';
+
+ if ($addrsrch_fullname == 'fullname')
+ $return .= '"' . $row['name'] . '" <' . trim($address) . '>';
+ else if ($addrsrch_fullname == 'nickname')
+ $return .= '"' . $row['nickname'] . '" <' . trim($address) . '>';
+ else // "noprefix"
+ $return .= trim($address);
+
+ }
+
+ return $return;
}
/**
* of the SM_ABOOK_FIELD_* constants
* defined in include/constants.php
* (OPTIONAL; defaults to nickname field)
+ * NOTE: uniqueness is only guaranteed
+ * when the nickname field is used here;
+ * otherwise, the first matching address
+ * is returned.
*
* @return mixed Array with lookup results when the value
* was found, an empty array if the value was
}
/* Blocks use of space, :, |, #, " and ! in nickname */
- if (eregi('[ \\:\\|\\#\\"\\!]', $userdata['nickname'])) {
+ if (preg_match('/[ :|#"!]/', $userdata['nickname'])) {
$this->error = _("Nickname contains illegal characters");
return false;
}
return false;
}
- if (eregi('[\\: \\|\\#"\\!]', $userdata['nickname'])) {
+ if (preg_match('/[: |#"!]/', $userdata['nickname'])) {
$this->error = _("Nickname contains illegal characters");
return false;
}
* @param integer $field The field to look in, should be one
* of the SM_ABOOK_FIELD_* constants
* defined in include/constants.php
+ * NOTE: uniqueness is only guaranteed
+ * when the nickname field is used here;
+ * otherwise, the first matching address
+ * is returned.
*
* @return mixed Array with lookup results when the value
* was found, an empty array if the value was