Index: openacs-4/packages/acs-subsite/tcl/party-procs-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-subsite/tcl/Attic/party-procs-postgresql.xql,v diff -u -r1.3 -r1.4 --- openacs-4/packages/acs-subsite/tcl/party-procs-postgresql.xql 23 Aug 2001 21:15:56 -0000 1.3 +++ openacs-4/packages/acs-subsite/tcl/party-procs-postgresql.xql 1 Sep 2001 14:54:42 -0000 1.4 @@ -3,39 +3,41 @@ postgresql7.1 - + - FIX ME OUTER JOIN -FIX ME CONNECT BY -FIX ME ROWNUM + (t1.object_type = 'group' or t1.object_type = 'person') + + - select - types.pretty_name, - types.object_type, - types.tree_level, - types.indent, - case when valid_types.object_type = null then 0 else 1 end as valid_p - from - (select - t.pretty_name, t.object_type, level as tree_level, - replace(lpad(' ', (level - 1) * 4), - ' ', ' ') as indent, - rownum as tree_rownum - from - acs_object_types t - connect by - prior t.object_type = t.supertype - start with - $start_with_clause ) types, - (select - object_type - from - rel_types_valid_obj_two_types - where - rel_type = :rel_type ) valid_types - where - types.object_type = valid_types.object_type(+) - order by tree_rownum + + + t1.object_type = :start_with + + + + + + + select types.pretty_name, + types.object_type, + types.tree_level, + types.indent, + case when valid_types.object_type = null then 0 else 1 end as valid_p + from (select t2.pretty_name, + t2.object_type, + tree_level(t2.tree_sortkey) as tree_level, + repeat(' ', (tree_level(t2.tree_sortkey) - 1) * 4) as indent, + t2.tree_sortkey + from acs_object_types t1, + acs_object_types t2 + where t2.tree_sortkey like (t1.tree_sortkey || '%') + and $start_with_clause ) types + left outer join + (select object_type + from rel_types_valid_obj_two_types + where rel_type = :rel_type ) valid_types + using (object_type) + order by types.tree_sortkey