= Cuckoo TODO = This is a list of TODOs for this package. At the end of the file, TODOs are auto-extracted from source using bin/update-todo.sh == Bugs == * Maximum field lengths for update, bio, etc. == Features == * Date-rotating logs (date in a conf default?) * Installation process / wizard * DB tables prefix * Figure out logged in state for sidebar (something persistent per user?) * Friends * Mass editing page * RSS / Atom feeds * Public timeline * Personal updates * Personal updates with friends * Friends' updates only * profile * Personalizable home page, ala twitter's home page backgrounds * Feed aggregation * added as own update sources * via settings * added as friends (guests?) * via bookmarklet * Forgot password * Notifications * Email * RSS (private keyed) * Plugins * update acquisition * update processing * update forwarding * Twitter * Jaiku * double-post to twitter / jaiku * admin * CRUD across all tables * OpenID * Provider * Consumer * user IDs hashed on OpenID * Update management * Editing * Deletion * Favoriting * Single-User Mode * No registrations * closed registrations, sysop-approval only == Wishlist == == Blue Sky == * Federate between instances * Progressively better approaches * Poll RSS / JSON feeds * Accept incoming pings from individual friends * Accept aggregate pings for multiple friends at a single shared host * Accept Jabber/XMPP pings * Friends identified by OpenID? * OpenID hashes used as UUIDs for users in instances users * OpenIDs are friends' home pages, use feed autodetection * Remote feeds used to get updates * If allowed, register with remote site to receive pings about users. * Special local URL namespace for updates from external guest friends * Nomenclature * guests? * emissaries? * delegates? * /friends/e70dad053eba0b4b0a8344d6e9151073/updates/* * Joshua's message propagation ideas? * Message signing / verification * How expensive is private key encryption? == Extracted == ./actions/friends.action.php:5:if ($users->get('username', $out['page_username']) != 1 ) { // TODO: This should be a 404 error? ./actions/friends.add.POST.action.php:10: // TODO: Need some feedback when an existing friend is befriended. (edge case) ./actions/friends.add.POST.action.php:15: // TODO: Need some more feedback when a user is befriended. ./actions/friends.remove.POST.action.php:10: // TODO: Need some more feedback when a user is defriended. ./actions/friends.remove.POST.action.php:14: // TODO: Need some feedback when an non-friend is defriended. (edge case) ./actions/home.action.php:5:if ($users->get('username', $out['page_username']) != 1 ) { // TODO: This should be a 404 error? ./actions/settings.action.php:8:if ($users->get('username', $out['page_username']) != 1 ) { // TODO: This should be a 404 error? ./actions/settings.action.php:10:} elseif ($users->username != $out['auth_username']) { // TODO: This should be a 403 error? ./actions/signup.action.php:56: // TODO: Require email verification (or openid?) before automatically approving/auth'ing account. ./actions/update.action.php:7: header("Location: {$out['BASE_URL']}"); // TODO: This should be a 404 ./actions/update.action.php:15: header("Location: {$out['BASE_URL']}"); // TODO: This should be a 404 ./actions/update.POST.action.php:12: header("Location: $BASE_URL"); // TODO: This should be a 403 ./actions/update.POST.action.php:16: header("Location: $BASE_URL"); // TODO: This should be a 404 ./actions/update.POST.action.php:20: $updates->kind = 0; // TODO: Come up with some constants for update types. ./actions/update.POST.action.php:21: $updates->source = 'web'; // TODO: Come up with source convention that includes feeds and apps. ./bin/update-todo.sh:2:# TODO: Make this suck less. ./lib/Cuckoo/Framework.php:26: $args = array_map("addslashes", $args); // TODO: Make this use mysql_real_escape_string? ./lib/Cuckoo/Framework.php:85: if ($users->get('username', $auth_username) != 1 ) { // TODO: This should be a 404 error? ./lib/Cuckoo/Framework.php:88: } elseif ( (!$this->auth->checkAuth()) || ($users->username != $auth_username) ) { // TODO: This should be a 403 error? ./lib/Cuckoo/Framework.php:94: if ($friend_users->get('username', $friend_username) != 1 ) { // TODO: This should be a 404 error? ./lib/Cuckoo/Model/Friends.php:54: // TODO: Support variable limits with paging. ./lib/MiniFramework.php:75: /* TODO: Figure out if a raw DB connection is needed since DB_DataObject is around. ./templates/_update.tmpl.php:21: ./templates/_update.tmpl.php:24: ./templates/_updateform.tmpl.php:3: // TODO: Crumb this posting form. ./templates/friends.tmpl.php:61: ./templates/home.tmpl.php:58: