Better error reporting
[squirrelmail.git] / functions / addressbook.php
index 9642b08db9b18de3dd08acdfb294bdd41331bb3b..d35e9eeaeee0c23548a0d11766565cd655399c56 100644 (file)
@@ -3,11 +3,10 @@
 /**
  * functions/addressbook.php - Functions and classes for the addressbook system
  *
- * Copyright (c) 1999-2005 The SquirrelMail Project Team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
- *
  * Functions require SM_PATH and support of forms.php functions
  *
+ * @copyright © 1999-2006 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  * @version $Id$
  * @package squirrelmail
  * @subpackage addressbook
@@ -448,6 +447,20 @@ class AddressBook {
      * @var string
      */
     var $localbackendname = '';
+    /**
+     * Controls use of 'extra' field
+     * 
+     * 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
+     * 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 
+     * data should not modify this object property.
+     * @var boolean
+     * @since 1.5.1
+     */
+    var $add_extra_field = false;
 
     /**
      * Constructor function.
@@ -608,7 +621,7 @@ class AddressBook {
             if (is_array($res)) {
                return $res;
             } else {
-               $this->error = htmlspecialchars($backend->error);
+               $this->error = htmlspecialchars($this->backends[$bnum]->error);
                return false;
             }
         }
@@ -954,4 +967,4 @@ if((isset($addrbook_dsn) && !empty($addrbook_dsn)) ||
  */
 do_hook('abook_add_class');
 
-?>
\ No newline at end of file
+?>