-- -- bookmark__new_root_folder/2 -- create or replace function bookmark__new_root_folder( p_package_id integer, p_user_id integer ) returns int4 as $$ DECLARE v_folder_id bm_bookmarks.bookmark_id%TYPE; v_bookmark_id bm_bookmarks.bookmark_id%TYPE; v_email parties.email%TYPE; v_local_title bm_bookmarks.local_title%TYPE; BEGIN SELECT nextval('t_acs_object_id_seq') INTO v_bookmark_id FROM dual; SELECT email INTO v_email FROM parties where party_id = p_user_id; v_local_title := ' Bookmarks Root Folder of ' || v_email; v_folder_id := bookmark__new ( v_bookmark_id, p_user_id, null, v_local_title, 't', p_package_id, null, null, null, null); -- bookmark_id => v_bookmark_id, -- owner_id => p_user_id, -- folder_p => t, -- local_title => Bookmarks Root Folder of || v_email, -- parent_id => new_root_folder.package_id -- set up default permissions -- The owner may administer the bookmarks -- Any other permissions will be inherited from the next higher -- package instance in the site hierarchy PERFORM acs_permission__grant_permission ( v_folder_id, p_user_id, 'admin'); -- object_id => v_folder_id, -- grantee_id => new_root_folder.user_id, -- privilege => admin RETURN v_folder_id; END; $$ language plpgsql;