Index: old/revenue_sharing_basic/revenue_sharing_basic.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/adsense/old/revenue_sharing_basic/revenue_sharing_basic.module,v
retrieving revision 1.4.2.8
diff -u -r1.4.2.8 revenue_sharing_basic.module
--- old/revenue_sharing_basic/revenue_sharing_basic.module	23 Jan 2009 00:28:33 -0000	1.4.2.8
+++ old/revenue_sharing_basic/revenue_sharing_basic.module	28 Mar 2009 01:08:22 -0000
@@ -111,6 +111,8 @@
     // Give up!
     return NULL;
   }
+  
+  global $user;
 
   $site_client = variable_get('adsense_basic_id', ADSENSE_BASIC_ID_DEFAULT);
 
@@ -124,10 +126,10 @@
 
   // Toss the dice and see who gets their ad displayed
   $random = mt_rand(1, 100);
-  if ($random <= $percent_author) {
+  if ($random <= $percent_author && $user->uid != $uid) {
     $client = revenue_sharing_basic_get_profile_client_id($uid);
   }
-  elseif ($random <= ($percent_author + $percent_referral)) {
+  elseif ($random <= ($percent_author + $percent_referral) && $user->uid != revenue_sharing_basic_get_referral_uid($uid)) {
     $client = revenue_sharing_basic_get_referral_client_id($uid);
   }
   else {
@@ -191,12 +193,25 @@
  *   otherwise NULL
  */
 function revenue_sharing_basic_get_referral_client_id($uid) {
-  if (module_exists('referral')) {
-    $referral_uid = referral_get_user($uid);
-    if ($referral_uid) {
-      return revenue_sharing_basic_get_profile_client_id($referral_uid);
-    }
+  if ($referral_uid = revenue_sharing_basic_get_referral_uid($uid)) {
+    return revenue_sharing_basic_get_profile_client_id($referral_uid);
   }
   // User was not referred by an existing user
   return NULL;
 }
+
+/**
+ * 
+ * @param $uid
+ *   User ID
+ * @return
+ * 	 User ID of the referrer of the specified user
+ *   otherwise NULL
+ */
+function revenue_sharing_basic_get_referral_uid($uid) {
+  if (module_exists('referral')) {
+    return referral_get_user($uid);
+  }
+  
+  return NULL;
+}

