X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=functions%2Faddressbook.php;h=baa1c606dfd66ca5ce790723d9bf0de61756c77a;hb=c53195bbbf00d53343b5b33c35f43f75bb2646a9;hp=f8589a2f9acea68cef2cbe407c301d0cdbfa448f;hpb=1794d99316ac199aa68361e08a38b27faa07d5c4;p=squirrelmail.git diff --git a/functions/addressbook.php b/functions/addressbook.php index f8589a2f..baa1c606 100644 --- a/functions/addressbook.php +++ b/functions/addressbook.php @@ -4,7 +4,7 @@ * * Functions require SM_PATH and support of forms.php functions * - * @copyright © 1999-2009 The SquirrelMail Project Team + * @copyright 1999-2021 The SquirrelMail Project Team * @license http://opensource.org/licenses/gpl-license.php GNU Public License * @version $Id$ * @package squirrelmail @@ -141,7 +141,7 @@ function addressbook_init($showerr = true, $onlylocal = false) { /* Load configured LDAP servers (if PHP has LDAP support) */ if (isset($ldap_server) && is_array($ldap_server)) { reset($ldap_server); - while (list($undef,$param) = each($ldap_server)) { + foreach ($ldap_server as $param) { if (!is_array($param)) continue; @@ -162,7 +162,7 @@ function addressbook_init($showerr = true, $onlylocal = false) { * display address book init errors. */ if ($abook_init_error!='' && $showerr) { - error_box(nl2br(htmlspecialchars($abook_init_error))); + error_box(nl2br(sm_encode_html_special_chars($abook_init_error))); } /* Return the initialized object */ @@ -192,7 +192,7 @@ function abook_create_form($form_url, $name, $title, $button, global $oTemplate; - $output = addForm($form_url, 'post', 'f_add'); + $output = addForm($form_url, 'post', 'f_add', '', '', array(), TRUE); if ($button == _("Update address")) { $edit = true; @@ -251,7 +251,7 @@ function getWritableBackends () { $write = array(); $backends = $abook->get_backend_list(); - while (list($undef,$v) = each($backends)) { + foreach ($backends as $v) { if ($v->writeable) { $write[$v->bnum]=$v->sname; } @@ -414,7 +414,7 @@ class AddressBook { * * Extra field can be used to add link to form, which allows * to modify all fields supported by backend. This is the only field - * that is not sanitized with htmlspecialchars. Backends MUST make + * that is not sanitized with sm_encode_html_special_chars. Backends MUST make * sure that field data is sanitized and displayed correctly inside * table cell. Use of html formating in other address book fields is * not allowed. Backends that don't return 'extra' row in address book @@ -425,12 +425,19 @@ class AddressBook { var $add_extra_field = false; /** - * Constructor function. + * Constructor (PHP5 style, required in some future version of PHP) */ - function AddressBook() { + function __construct() { $this->localbackendname = _("Personal Address Book"); } + /** + * Constructor (PHP4 style, kept for compatibility reasons) + */ + function AddressBook() { + self::__construct(); + } + /** * Return an array of backends of a given type, * or all backends if no type is specified. @@ -514,9 +521,8 @@ class AddressBook { * @param array $row address book entry * @return string email address with real name prepended */ - function full_address($row) { - global $data_dir, $username; - $addrsrch_fullname = getPref($data_dir, $username, 'addrsrch_fullname'); + static function full_address($row) { + global $data_dir, $username, $addrsrch_fullname; // allow multiple addresses in one row (poor person's grouping - bah) // (separate with commas) @@ -958,7 +964,7 @@ class addressbook_backend { * not found, or false if an error occured. * */ - function lookup($value, $field) { + function lookup($value, $field=SM_ABOOK_FIELD_NICKNAME) { $this->set_error('lookup is not implemented'); return false; }