Index: openacs-4/packages/file-storage/www/folder-list-postgresql.xql =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/file-storage/www/Attic/folder-list-postgresql.xql,v diff -u -r1.1 -r1.2 --- openacs-4/packages/file-storage/www/folder-list-postgresql.xql 20 Nov 2001 02:04:50 -0000 1.1 +++ openacs-4/packages/file-storage/www/folder-list-postgresql.xql 8 Dec 2001 01:18:00 -0000 1.2 @@ -9,13 +9,12 @@ select lpad('  ',12 * tree_level(i.tree_sortkey),'  ') as spaces, (select f.label from cr_folders f where f.folder_id = i.item_id) as label, (select f.folder_id from cr_folders f where f.folder_id = i.item_id) as new_parent - from cr_items i - where acs_permission__permission_p(i.item_id,:user_id,'write') = 't' - and exists (select 1 from cr_folders f where f.folder_id = i.item_id) - $children_clause - and i.tree_sortkey like (select l.tree_sortkey || '%' - from cr_items l - where l.item_id = file_storage__get_root_folder(:package_id)) + from cr_items i, cr_items l + where acs_permission__permission_p(i.item_id,:user_id,'write') + and exists (select 1 from cr_folders f where f.folder_id = i.item_id) + $children_clause + and i.tree_sortkey between l.tree_sortkey and tree_right(l.tree_sortkey) + and l.item_id = file_storage__get_root_folder(:package_id) order by i.tree_sortkey @@ -25,12 +24,12 @@ - and i.item_id not in (select j.item_id - from cr_items j - where j.item_id != :file_id - and j.tree_sortkey like (select k.tree_sortkey || '%' - from cr_items k - where k.item_id = :file_id)) + and not exists (select 1 + from cr_items j, cr_items k + where i.item_id = j.item_id + and j.item_id != :file_id + and j.tree_sortkey between k.tree_sortkey and tree_right(k.tree_sortkey) + and k.item_id = :file_id)