As much as I’d like to, I still can’t announce being in sync with my proposed time-line; apparently my habit of never completing a project before the deadline is too ingrained for me to break it — yet.
I’ll be doing my best to get all the remaining features up and running by Sunday, so that the plugin is for review by Monday. Based on last week’s post, and the discussion about the API I should use — I’ll be going with Google Maps, and will wrap all API calls with my own functions to make it API agnostic. (For anyone wanting to use Yahoo, or any other service, instead.)
Something I’ve managed to maintain, and am finally fairly sure will be possible is a sub-plugin (for want of a better term) BuddyPress Custom Posts; this basically adds to the Custom Post API for BuddyPress, and allows registering your own custom post types with a call to bpcp_register_post_type( Array( another huge set of variables go here ) ). By the time I’m finished, setting the right variables will allow creation from the front end, a root directory, give pre-prepared hook-able theme files, etc. directly, allowing anyone interested to go right to the interesting stuff they want to do with their custom post type/BuddyPress component, and not worry about the standard stuff.
Maintaining post type agnosticism has been a bit difficult, and occasionally involved jumping through hoops. My GSoC Project can perhaps now be considered a combination of 3 plugins: EventPress, BuddyPress Custom Posts — both involving equal amounts of work, and a tiny spin-off — my swiss army knife for debugging and exploring WP/BP. It essentially captures Warnings, Notices, as well as hooks and displays them neatly at the end; allowing me to do some basic logging using trigger_error, as well as exploring the hooks/actions available, the functions called at each as well as arguments passed.
I’ll need to do quite a bit of clean up after the mid-term for making the code truly extensible — thanks to the fact that I’m using the BP Custom Post API simultaneously as I develop it for EventPress I can make out where all I need hooks and add them, but there are definitely places I miss. I’ll try to add a list of the clean up I’ll definitely need to do after the mid-term by this weekend (Roughly UI, settings pages, docs, lots and lots of hooks and actions as well as perhaps splitting up the code a bit more — in that order).