Removed the vile fs_simple_objects added by OF to store URLs in file storage despite the existence of a non-versioned URL type in the content repository. Upgrade scripts provided. I added Tcl API to the content repository to honor our desire to export the SQL API to Tcl client code.
1. folder contents are now counted correctly (bug fix) 2. The fs_objects view is now usable in PG (it was a UNION view before and therefore didn't scale) 3. Code in file storage is considerably simpler now and all file storage objects are now stored in the content repository, as they should be.
The Oracle version may need some work I'll finish testing this afternoon.
1. Got rid of the "create or replace function" decls used for triggers, due to the brand-new PG 7.3 "opaque" vs. "trigger" issue.
2. Added a new "fs::get_folder_object_ids" for use when you just need the object ids rather than a bunch of (slow) permissions information, (slow) counts of items in folders and subfolders, last modified info, etc. dotLRN was calling "fs::get_folder_contents" when cloning folders despite making use of only the object_id and that proc used to be unimaginably slow. It's faster now due to the new permissions code but it's still slow enough to warrant avoiding it when possible.