Drupal [diff]: Automatic buddylist reciprocation

Another oldie.


Index: vop/trunk/modules/buddylist/buddylist.module
===================================================================
--- vop/trunk/modules/buddylist/buddylist.module (revision 590)
+++ vop/trunk/modules/buddylist/buddylist.module (revision 625)
@@ -1,5 +1,5 @@
  array($id)
       );
+      
+      // Remove 'buddy of'
+      /*
       $items[] = array(
         'path' => 'buddylist/'. $id .'/buddyof',
@@ -150,4 +153,5 @@
         'callback arguments' => array($id, 'buddyof')
       );
+      */
     }
 
@@ -1479,4 +1483,5 @@
   if (!in_array($id, array_keys(buddylist_get_buddies($user->uid)))) {
     db_query('INSERT INTO {buddylist} (received, uid, buddy, timestamp) VALUES (1, %d, %d, %d)' , $user->uid , $id , time());
+    db_query('INSERT INTO {buddylist} (received, uid, buddy, timestamp) VALUES (1, %d, %d, %d)' , $id , $user->uid , time());
     
     // DB value buddylist.received set to 1, meaning buddy has a message waiting
@@ -1522,5 +1527,9 @@
   global $user;
   db_query('DELETE FROM {buddylist} WHERE uid = %d AND buddy = %d' , $user->uid , $id);
+  db_query('DELETE FROM {buddylist} WHERE uid = %d AND buddy = %d' , $id, $user->uid);
+  
   db_query('DELETE FROM {buddylist_buddy_group} WHERE uid = %d AND buddy = %d' , $user->uid , $id);
+  db_query('DELETE FROM {buddylist_buddy_group} WHERE uid = %d AND buddy = %d' , $id, $user->id);
+  
   $thisuser = user_load(array('uid' => $id));
   if (variable_get('buddylist_send_remove', FALSE)) {


click here to add a comment