. */ define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); $shortoptions = 'i:n:f:'; $longoptions = array('id=', 'nickname=', 'file='); $helptext = <<getSubscriptions(); $subscribers = $this->getSubscribers(); $faves = $this->getFaves(); $notices = $this->getNotices(); $objs = array_merge($subscriptions, $subscribers, $faves, $notices); // Sort by create date usort($objs, 'UserActivityStream::compareObject'); foreach ($objs as $obj) { $act = $obj->asActivity(); $this->addEntryRaw($act->asString(false)); } } function compareObject($a, $b) { $ac = strtotime((empty($a->created)) ? $a->modified : $a->created); $bc = strtotime((empty($b->created)) ? $b->modified : $b->created); return (($ac == $bc) ? 0 : (($ac < $bc) ? 1 : -1)); } function getSubscriptions() { $subs = array(); $sub = new Subscription(); $sub->subscriber = $this->user->id; if ($sub->find()) { while ($sub->fetch()) { if ($sub->subscribed != $this->user->id) { $subs[] = clone($sub); } } } return $subs; } function getSubscribers() { $subs = array(); $sub = new Subscription(); $sub->subscribed = $this->user->id; if ($sub->find()) { while ($sub->fetch()) { if ($sub->subscriber != $this->user->id) { $subs[] = clone($sub); } } } return $subs; } function getFaves() { $faves = array(); $fave = new Fave(); $fave->user_id = $this->user->id; if ($fave->find()) { while ($fave->fetch()) { $faves[] = clone($fave); } } return $faves; } function getNotices() { $notices = array(); $notice = new Notice(); $notice->profile_id = $this->user->id; if ($notice->find()) { while ($notice->fetch()) { $notices[] = clone($notice); } } return $notices; } } function getUser() { $user = null; if (have_option('i', 'id')) { $id = get_option_value('i', 'id'); $user = User::staticGet('id', $id); if (empty($user)) { throw new Exception("Can't find user with id '$id'."); } } else if (have_option('n', 'nickname')) { $nickname = get_option_value('n', 'nickname'); $user = User::staticGet('nickname', $nickname); if (empty($user)) { throw new Exception("Can't find user with nickname '$nickname'"); } } else { show_help(); exit(1); } return $user; } try { $user = getUser(); $actstr = new UserActivityStream($user); print $actstr->getString(); } catch (Exception $e) { print $e->getMessage()."\n"; exit(1); }