Index: openacs-4/packages/dotlrn/www/communities-chunk-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/dotlrn/www/communities-chunk-postgresql.xql,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/dotlrn/www/communities-chunk-postgresql.xql 27 Jan 2018 17:58:19 -0000 1.3 +++ openacs-4/packages/dotlrn/www/communities-chunk-postgresql.xql 13 Jun 2018 16:27:20 -0000 1.4 @@ -1,233 +1,51 @@ - postgresql7.1 - - - - select count(*) - from dotlrn_communities_not_closed - - - + postgresql7.1 + select dotlrn_communities.community_id, dotlrn_communities.community_type, dotlrn_communities.pretty_name, dotlrn_communities.description, dotlrn_communities.package_id, - dotlrn_community__url(dotlrn_communities.community_id) as url, 1 as member_p, - CASE - WHEN acs_permission__permission_p(:user_id, - dotlrn_communities.community_id, - 'admin') = 'f' - THEN 0 - ELSE 1 - END as admin_p, (select dotlrn_community_types.community_type from dotlrn_community_types - where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type + where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type from dotlrn_communities dotlrn_communities, dotlrn_member_rels_approved where dotlrn_member_rels_approved.user_id = :user_id and dotlrn_member_rels_approved.community_id = dotlrn_communities.community_id + and (:community_type is null or dotlrn_communities.community_type = :community_type) order by root_community_type, dotlrn_communities.community_type, dotlrn_communities.pretty_name - - - select dotlrn_communities.community_id, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name, - dotlrn_communities.description, - dotlrn_communities.package_id, - dotlrn_community__url(dotlrn_communities.community_id) as url, - 0 as member_p, - CASE - WHEN acs_permission__permission_p(:user_id, - dotlrn_communities.community_id, - 'admin') = 'f' - THEN 0 - ELSE 1 - END as admin_p, - (select dotlrn_community_types.community_type - from dotlrn_community_types - where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type - from dotlrn_active_comms_not_closed dotlrn_communities - where not exists (select 1 - from dotlrn_member_rels_full - where dotlrn_member_rels_full.user_id = :user_id - and dotlrn_member_rels_full.community_id = dotlrn_communities.community_id) - order by root_community_type, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name - - - select dotlrn_communities.community_id, dotlrn_communities.community_type, dotlrn_communities.pretty_name, dotlrn_communities.description, dotlrn_communities.package_id, - dotlrn_community__url(dotlrn_communities.community_id) as url, 0 as member_p, - CASE - WHEN acs_permission__permission_p(:user_id, - dotlrn_communities.community_id, - 'admin') = 'f' - THEN 0 - ELSE 1 - END as admin_p, (select dotlrn_community_types.community_type from dotlrn_community_types - where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type + where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type from dotlrn_communities_not_closed dotlrn_communities where not exists (select 1 from dotlrn_member_rels_full where dotlrn_member_rels_full.user_id = :user_id and dotlrn_member_rels_full.community_id = dotlrn_communities.community_id) - and dotlrn_communities.parent_community_id is null + and (:community_type is null or dotlrn_communities.community_type = :community_type) order by root_community_type, dotlrn_communities.community_type, dotlrn_communities.pretty_name - - - select count(*) - from dotlrn_communities_not_closed dotlrn_communities - where dotlrn_communities.community_type = :community_type - - - - - - select dotlrn_communities.community_id, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name, - dotlrn_communities.description, - dotlrn_communities.package_id, - dotlrn_community__url(dotlrn_communities.community_id) as url, - 1 as member_p, - CASE - WHEN acs_permission__permission_p(:user_id, - dotlrn_communities.community_id, - 'admin') = 'f' - THEN 0 - ELSE 1 - END as admin_p, - (select dotlrn_community_types.community_type - from dotlrn_community_types - where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type - from dotlrn_active_communities dotlrn_communities, - dotlrn_member_rels_approved - where dotlrn_member_rels_approved.user_id = :user_id - and dotlrn_member_rels_approved.community_id = dotlrn_communities.community_id - and dotlrn_communities.community_type = :community_type - order by root_community_type, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name - - - - - - select dotlrn_communities.community_id, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name, - dotlrn_communities.description, - dotlrn_communities.package_id, - dotlrn_community__url(dotlrn_communities.community_id) as url, - 1 as member_p, - CASE - WHEN acs_permission__permission_p(:user_id, - dotlrn_communities.community_id, - 'admin') = 'f' - THEN 0 - ELSE 1 - END as admin_p, - (select dotlrn_community_types.community_type - from dotlrn_community_types - where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type - from dotlrn_communities dotlrn_communities, - dotlrn_member_rels_approved - where dotlrn_member_rels_approved.user_id = :user_id - and dotlrn_member_rels_approved.community_id = dotlrn_communities.community_id - and dotlrn_communities.community_type = :community_type - order by root_community_type, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name - - - - - - select dotlrn_communities.community_id, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name, - dotlrn_communities.description, - dotlrn_communities.package_id, - dotlrn_community__url(dotlrn_communities.community_id) as url, - 0 as member_p, - CASE - WHEN acs_permission__permission_p(:user_id, - dotlrn_communities.community_id, - 'admin') = 'f' - THEN 0 - ELSE 1 - END as admin_p, - (select dotlrn_community_types.community_type - from dotlrn_community_types - where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type - from dotlrn_active_comms_not_closed dotlrn_communities - where not exists (select 1 - from dotlrn_member_rels_full - where dotlrn_member_rels_full.user_id = :user_id - and dotlrn_member_rels_full.community_id = dotlrn_communities.community_id) - and dotlrn_communities.community_type = :community_type - order by root_community_type, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name - - - - - - select dotlrn_communities.community_id, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name, - dotlrn_communities.description, - dotlrn_communities.package_id, - dotlrn_community__url(dotlrn_communities.community_id) as url, - 0 as member_p, - CASE - WHEN acs_permission__permission_p(:user_id, - dotlrn_communities.community_id, - 'admin') = 'f' - THEN 0 - ELSE 1 - END as admin_p, - (select dotlrn_community_types.community_type - from dotlrn_community_types - where dotlrn_community_types.tree_sortkey = tree_ancestor_key(dotlrn_communities.tree_sortkey, 1)) as root_community_type - from dotlrn_communities_not_closed dotlrn_communities - where not exists (select 1 - from dotlrn_member_rels_full - where dotlrn_member_rels_full.user_id = :user_id - and dotlrn_member_rels_full.community_id = dotlrn_communities.community_id) - and dotlrn_communities.community_type = :community_type - order by root_community_type, - dotlrn_communities.community_type, - dotlrn_communities.pretty_name - - -