summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2010-03-31 15:57:20 +0000
committerthomascube <thomas@roundcube.net>2010-03-31 15:57:20 +0000
commit04adaac71b863e8b13303b945ac433b03644ed3f (patch)
treea6bb7db54f971715ee07dbaedece7c5e26f4c0bb
parentbb6294a26e9ce1dca5e0b8f69a1144ea149e05fe (diff)
Complete address book interface class with group functions
-rw-r--r--program/include/rcube_addressbook.php62
-rw-r--r--program/include/rcube_contacts.php2
2 files changed, 64 insertions, 0 deletions
diff --git a/program/include/rcube_addressbook.php b/program/include/rcube_addressbook.php
index ff525bc11..b9f9f29ed 100644
--- a/program/include/rcube_addressbook.php
+++ b/program/include/rcube_addressbook.php
@@ -179,5 +179,67 @@ abstract class rcube_addressbook
/* empty for read-only address books */
}
+ /**
+ * Create a contact group with the given name
+ *
+ * @param string The group name
+ * @return False on error, array with record props in success
+ */
+ function create_group($name)
+ {
+ /* empty for address books don't supporting groups */
+ return false;
+ }
+
+ /**
+ * Delete the given group and all linked group members
+ *
+ * @param string Group identifier
+ * @return boolean True on success, false if no data was changed
+ */
+ function delete_group($gid)
+ {
+ /* empty for address books don't supporting groups */
+ return false;
+ }
+
+ /**
+ * Rename a specific contact group
+ *
+ * @param string Group identifier
+ * @param string New name to set for this group
+ * @return boolean New name on success, false if no data was changed
+ */
+ function rename_group($gid, $newname)
+ {
+ /* empty for address books don't supporting groups */
+ return false;
+ }
+
+ /**
+ * Add the given contact records the a certain group
+ *
+ * @param string Group identifier
+ * @param array List of contact identifiers to be added
+ * @return int Number of contacts added
+ */
+ function add_to_group($group_id, $ids)
+ {
+ /* empty for address books don't supporting groups */
+ return 0;
+ }
+
+ /**
+ * Remove the given contact records from a certain group
+ *
+ * @param string Group identifier
+ * @param array List of contact identifiers to be removed
+ * @return int Number of deleted group members
+ */
+ function remove_from_group($group_id, $ids)
+ {
+ /* empty for address books don't supporting groups */
+ return 0;
+ }
}
\ No newline at end of file
diff --git a/program/include/rcube_contacts.php b/program/include/rcube_contacts.php
index 2964cde49..070e00ffd 100644
--- a/program/include/rcube_contacts.php
+++ b/program/include/rcube_contacts.php
@@ -499,6 +499,7 @@ class rcube_contacts extends rcube_addressbook
*
* @param string Group identifier
* @param array List of contact identifiers to be added
+ * @return int Number of contacts added
*/
function add_to_group($group_id, $ids)
{
@@ -534,6 +535,7 @@ class rcube_contacts extends rcube_addressbook
*
* @param string Group identifier
* @param array List of contact identifiers to be removed
+ * @return int Number of deleted group members
*/
function remove_from_group($group_id, $ids)
{