Index: openacs-4/packages/contacts/tcl/contacts-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/tcl/contacts-procs-postgresql.xql,v diff -u -N -r1.23 -r1.24 --- openacs-4/packages/contacts/tcl/contacts-procs-postgresql.xql 28 Jan 2007 12:53:55 -0000 1.23 +++ openacs-4/packages/contacts/tcl/contacts-procs-postgresql.xql 12 Jun 2007 10:34:47 -0000 1.24 @@ -28,9 +28,8 @@ - select person_id - from persons - where person_id not in ( select item_id from cr_items ) + select person_id from persons + where person_id not in (select item_id from cr_items where content_type = 'contact_party_revision') and person_id > 0 @@ -152,20 +151,22 @@ - select groups.group_id, + select groups2.group_id, acs_objects.title as group_name, - ( select count(distinct gamm.member_id) from group_approved_member_map gamm where gamm.group_id = groups.group_id ) as member_count, - ( select count(distinct gcm.component_id) from group_component_map gcm where gcm.group_id = groups.group_id) as component_count, + ( select count(distinct gamm.member_id) from group_approved_member_map gamm where gamm.group_id = groups2.group_id ) as member_count, + ( select count(distinct gcm.component_id) from group_component_map gcm where gcm.group_id = groups2.group_id) as component_count, CASE WHEN contact_groups.package_id is not null THEN '1' ELSE '0' END as mapped_p, CASE WHEN default_p THEN '1' ELSE '0' END as default_p, CASE WHEN user_change_p THEN '1' ELSE '0' END as user_change_p - from groups left join ( select * from contact_groups where package_id = :package_id ) as contact_groups on ( groups.group_id = contact_groups.group_id ), acs_objects - where groups.group_id not in ('-1','[contacts::default_group -package_id $package_id]') - and groups.group_id = acs_objects.object_id - and groups.group_id not in ( select gcm.component_id from group_component_map gcm where gcm.group_id != -1 ) - and groups.group_id not in ( select group_id from application_groups ) + from (select g.* from groups g left join application_groups ag on (ag.group_id = g.group_id) + where package_id is null and group_name not like 'forumgroup_%') groups2 + left join ( select * from contact_groups where package_id = :package_id ) as contact_groups on ( groups2.group_id = contact_groups.group_id ), + acs_objects + where groups2.group_id not in ('-1','[contacts::default_group -package_id $package_id]') + and groups2.group_id = acs_objects.object_id + and groups2.group_id not in ( select gcm.component_id from group_component_map gcm where gcm.group_id != -1 ) $filter_clause - order by mapped_p desc, CASE WHEN contact_groups.default_p THEN '000000000' ELSE upper(groups.group_name) END + order by mapped_p desc, CASE WHEN contact_groups.default_p THEN '000000000' ELSE upper(groups2.group_name) END Index: openacs-4/packages/contacts/tcl/contacts-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/contacts/tcl/contacts-procs.tcl,v diff -u -N -r1.108 -r1.109 --- openacs-4/packages/contacts/tcl/contacts-procs.tcl 23 Mar 2007 07:25:32 -0000 1.108 +++ openacs-4/packages/contacts/tcl/contacts-procs.tcl 12 Jun 2007 10:34:47 -0000 1.109 @@ -939,7 +939,7 @@ # set filter_clause "" set dotlrn_installed_p [apm_package_installed_p dotlrn] if { $dotlrn_installed_p } { - set filter_clause "and groups.group_id not in (select community_id from dotlrn_communities_all)" + set filter_clause "and groups2.group_id not in (select community_id from dotlrn_communities_all)" } else { set filter_clause "" } @@ -965,6 +965,7 @@ if { $package_id eq "" } { set package_id [ad_conn package_id] } + set user_id [ad_conn user_id] set group_list [list] foreach one_group [contact::groups_list -package_id $package_id] { @@ -985,7 +986,6 @@ continue } } - if { $mapped_p || $all_p} { lappend group_list [list [lang::util::localize $group_name] $group_id $member_count "1" $mapped_p $default_p $user_change_p] if { $component_count > 0 && ( $expand == "all" || $expand == $group_id ) } {