From 54d84c8b782470ce3bdcb44f361be14e9c5b61b2 Mon Sep 17 00:00:00 2001 From: "Duck (Jakob Munih)" Date: Wed, 25 Feb 2009 12:17:48 +0100 Subject: [PATCH] Add friends activity block --- folks/lib/Block/activities.php | 73 ++++++++++++++++++++++++++++++++++++ folks/templates/block/activities.php | 14 +++++++ 2 files changed, 87 insertions(+) create mode 100644 folks/lib/Block/activities.php create mode 100644 folks/templates/block/activities.php diff --git a/folks/lib/Block/activities.php b/folks/lib/Block/activities.php new file mode 100644 index 000000000..03295f607 --- /dev/null +++ b/folks/lib/Block/activities.php @@ -0,0 +1,73 @@ + + */ +class Horde_Block_Folks_activities extends Horde_Block { + + var $_app = 'folks'; + + /** + * The title to go in this block. + * + * @return string The title text. + */ + function _title() + { + return _("Friends activities"); + } + + /** + * The parameters of block + * + * @return array The parameters + */ + function _params() + { + return array('limit' => array('name' => _("Number of activities to display"), + 'type' => 'int', + 'default' => 10)); + } + + /** + * The content to go in this block. + * + * @return string The content + */ + function _content() + { + require_once dirname(__FILE__) . '/../base.php'; + require_once FOLKS_BASE . '/lib/Friends.php'; + + $friends_driver = Folks_Friends::singleton(); + $friend_list = $friends_driver->getFriends(); + if ($friend_list instanceof PEAR_Error) { + return $friend_list; + } + + // Get friends activities + $list = array(); + foreach ($friend_list as $user) { + $activities = $GLOBALS['folks_driver']->getActivity($user); + if ($activities instanceof PEAR_Error) { + return $activities; + } + foreach ($activities as $activity) { + $list[$activity['activity_date']] = $activity; + } + } + krsort($list); + $list = array_slice($list, 0, $this->_params['limit']); + + Horde::addScriptFile('stripe.js', 'horde', true); + + ob_start(); + require FOLKS_TEMPLATES . '/block/activities.php'; + return ob_get_clean(); + } +} \ No newline at end of file diff --git a/folks/templates/block/activities.php b/folks/templates/block/activities.php new file mode 100644 index 000000000..959939375 --- /dev/null +++ b/folks/templates/block/activities.php @@ -0,0 +1,14 @@ + + + $activity) { + echo '' + . ''; +} +?> + +
' + . ' ' + . $activity['user_uid'] . ' - ' . Folks::format_datetime($activity_date) . '' . '
' + . $activity['activity_message'] . '
' + . '
-- 2.11.0