bm_folder_selection (public)
bm_folder_selection user_id bookmark_id folder_p
Defined in packages/bookmarks/tcl/bookmarks-procs.tcl
This procedure is used to present a list of available folders to put bookmark or folder in.
- Parameters:
- user_id (required)
- bookmark_id (required)
- folder_p (required)
- Partial Call Graph (max 5 caller/called nodes):
- Testcases:
- No testcase defined.
Source code: # We cannot move folders to be their own children if { $folder_p == "t" } { set exclude_folders [db_map exclude_folders] } else { set exclude_folders "" } set package_id [ad_conn package_id] db_multirow folders folder_select " select /*+INDEX(bm_bookmarks bm_bookmarks_local_title_idx)*/ bookmark_id, local_title, level as indentation from bm_bookmarks where folder_p = 't' and owner_id = :user_id and bookmark_id <> :bookmark_id and parent_id <> :package_id and acs_permission.permission_p(bookmark_id, :user_id, 'write') = 't' $exclude_folders start with parent_id = :package_id connect by prior bookmark_id = parent_id "Generic XQL file: packages/bookmarks/tcl/bookmarks-procs.xql
PostgreSQL XQL file: <fullquery name="bm_folder_selection.folder_select"> <querytext> select bm.bookmark_id, bm.local_title, tree_level(bm.tree_sortkey) as indentation from bm_bookmarks bm, bm_bookmarks bm2 where bm.tree_sortkey between bm2.tree_sortkey and tree_right(bm2.tree_sortkey) and bm2.parent_id = :package_id and bm2.owner_id = :user_id and bm.folder_p = 't' and bm.owner_id = :user_id and bm.bookmark_id <> :bookmark_id and bm.parent_id <> :package_id and acs_permission__permission_p(:bookmark_id, :user_id, 'write') = 't' $exclude_folders order by bm.tree_sortkey </querytext> </fullquery>packages/bookmarks/tcl/bookmarks-procs-postgresql.xql
Oracle XQL file: <fullquery name="bm_folder_selection.folder_select"> <querytext> select /*+INDEX(bm_bookmarks bm_bookmarks_local_title_idx)*/ bookmark_id, local_title, level as indentation from bm_bookmarks where folder_p = 't' and owner_id = :user_id and bookmark_id <> :bookmark_id and parent_id <> :package_id and acs_permission.permission_p(:bookmark_id, :user_id, 'write') = 't' $exclude_folders start with parent_id = :package_id connect by prior bookmark_id = parent_id </querytext> </fullquery>packages/bookmarks/tcl/bookmarks-procs-oracle.xql