Index: user_relationships_hooks.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/user_relationships/user_relationships_hooks.inc,v
retrieving revision 1.11.4.8
diff -u -r1.11.4.8 user_relationships_hooks.inc
--- user_relationships_hooks.inc	11 Jan 2008 23:24:39 -0000	1.11.4.8
+++ user_relationships_hooks.inc	25 Apr 2008 19:46:29 -0000
@@ -331,26 +331,40 @@
 
   // only expire relationships once a day
   $last_cron = variable_get('user_relationships_last_expire', 0);
-  if ($now >  $last_cron + (24 * 60 * 60)) {
+  if ($now <  $last_cron + (24 * 60 * 60)) {
     return FALSE;
   }
 
   switch ($GLOBALS['db_type']) {
   case 'mysql':
   case 'mysqli':
+    $result = db_query(
+      " SELECT DISTINCT ur.requestee_id
+        FROM {user_relationships} AS ur, {user_relationship_types} AS urt 
+        WHERE ur.approved = 0 
+          AND ur.rtid = urt.rtid 
+          AND urt.expires_val > 0 
+          AND UNIX_TIMESTAMP() > ur.updated_at + (86400 * urt.expires_val)"
+    );
+    $expired_relationships = array();
+    while($row = db_fetch_array($result)) {
+      $expired_relationships[] = $row['requestee_id'];
+    }   
     db_query(
       " DELETE ur
-        FROM user_relationships ur, user_relationship_types urt 
+        FROM {user_relationships} AS ur, {user_relationship_types} AS urt 
         WHERE ur.approved = 0 
           AND ur.rtid = urt.rtid 
           AND urt.expires_val > 0 
-          AND NOW() > DATE_ADD(ur.updated_at, INTERVAL urt.expires_val DAY)"
+          AND UNIX_TIMESTAMP() > ur.updated_at + (86400 * urt.expires_val)"
     );
+     _user_relationships_invoke('cron', $expired_relationships);  
     break;
   }
 
   // remember when we last expired relationships
   variable_set('user_relationships_last_expire', $now);
+  
   return TRUE;
 }
 
