--- /Users/nicole/Downloads/ad/ad.module
+++ ad.module
@@ -567,7 +567,9 @@
     case 'delete':
       return (user_access('delete any advertisement', $account) || (user_access('delete own advertisements', $account) && is_ad_owner($node->nid)) || user_access('administer advertisements', $account));
     case 'view':
-      return (user_access('show advertisements', $account) || user_access('administer advertisements', $account));
+			// NSciacca: update ad_access only to return false if the user doesn't have permissions, but not return true so the domain/node access checks will happen
+			// return (user_access('show advertisements', $account) || user_access('administer advertisements', $account));
+			if (user_access('show advertisements', $account) !== TRUE) return false;
   }
 }
 


--- /Users/nicole/Downloads/ad/adcache.inc
+++ adcache.inc
@@ -230,7 +230,13 @@
   $ids = array();
   if (isset($result)) {
     while ($ad = db_fetch_object($result)) {
-      $ids[$ad->aid] = $ad->aid;
+	
+			// NSciacca: do a node access check before adding this ad to the list of available ads
+      //$ids[$ad->aid] = $ad->aid;
+			$ad_node = node_load($ad->aid);
+			if (node_access('view',$ad_node) == TRUE) {  
+	       $ids[$ad->aid] = $ad->aid;
+		  }	
     }
   }
   return $ids;
