Index: openacs-4/packages/dotlrn/www/spam-oracle.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/Attic/spam-oracle.xql,v
diff -u -r1.2.6.2 -r1.2.6.3
--- openacs-4/packages/dotlrn/www/spam-oracle.xql	22 Jul 2004 05:58:37 -0000	1.2.6.2
+++ openacs-4/packages/dotlrn/www/spam-oracle.xql	11 Aug 2004 22:45:06 -0000	1.2.6.3
@@ -36,8 +36,7 @@
                  acs_objects
             where (acs_rels.object_id_one = $community_id
             and acs_rels.object_id_two = parties.party_id
-            and (acs_rels.rel_type in ('$rel_types_str')
-	         or acs_rels.object_id_two in ($recipients_str))
+            $query_restriction
 	    and parties.party_id = acs_objects.object_id
             and parties.party_id in (select acs_rels.object_id_two  
                                      from acs_rels, membership_rels
Index: openacs-4/packages/dotlrn/www/spam-postgresql.xql
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/Attic/spam-postgresql.xql,v
diff -u -r1.2.6.1 -r1.2.6.2
--- openacs-4/packages/dotlrn/www/spam-postgresql.xql	21 Jun 2004 19:55:37 -0000	1.2.6.1
+++ openacs-4/packages/dotlrn/www/spam-postgresql.xql	11 Aug 2004 22:45:06 -0000	1.2.6.2
@@ -43,12 +43,12 @@
                END as last_name,
                '$safe_community_name' as community_name,
                '$community_url' as community_url
-            from party_approved_member_map,
+            from acs_rels,
                  parties,
                  acs_objects
-            where party_approved_member_map.party_id = $segment_id
-            and party_approved_member_map.member_id <> $segment_id
-            and party_approved_member_map.member_id = parties.party_id
+            where (acs_rels.object_id_one = $community_id
+            and acs_rels.object_id_two = parties.party_id
+            $query_restriction
             and parties.party_id = acs_objects.object_id
             and parties.party_id in (select acs_rels.object_id_two  
                                      from acs_rels, membership_rels
@@ -57,8 +57,7 @@
                                      and acs_rels.rel_id = 
                                         membership_rels.rel_id
                                      and membership_rels.member_state 
-                                        = 'approved')
-            $extra_where_clause
+                                        = 'approved'))
         </querytext>
     </fullquery>
 
Index: openacs-4/packages/dotlrn/www/spam.tcl
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/spam.tcl,v
diff -u -r1.21.6.6 -r1.21.6.7
--- openacs-4/packages/dotlrn/www/spam.tcl	8 Aug 2004 05:56:05 -0000	1.21.6.6
+++ openacs-4/packages/dotlrn/www/spam.tcl	11 Aug 2004 22:45:06 -0000	1.21.6.7
@@ -164,10 +164,16 @@
 	set recipients_str ''
     }
 
+    if {![string equal $rel_types_str ''] && [string equal $recipients_str ''] } {
+    set query_restriction "and acs_rels.rel_type in ('$rel_types_str')"
+    } elseif {[string equal $rel_types_str ''] && ![string equal $recipients_str ''] } {
+    set query_restriction "and acs_rels.object_id_two in ($recipients_str)"
+    } elseif {![string equal $rel_types_str ''] && ![string equal $recipients_str ''] } {
+    set query_restriction "and (acs_rels.rel_type in ('$rel_types_str') or acs_rels.object_id_two in ($recipients_str))"
+    } 
 
     set query [db_map sender_info]
 
-
     if {$format == "html"} {
 	set message "$message"
 	set message_type "html"