. * */ class AmpacheFriendsTimeline { public $name = 'Friends Timeline'; public $categories = 'home'; public $description = 'Friends Timeline on homepage'; public $url = ''; public $version = '000001'; public $min_ampache = '370040'; public $max_ampache = '999999'; // These are internal settings used by this class, run this->load to // fill them out private $maxitems; /** * Constructor * This function does nothing... */ public function __construct() { return true; } /** * install * This is a required plugin function. It inserts our preferences * into Ampache */ public function install() { // Check and see if it's already installed if (Preference::exists('ftl_max_items')) { return false; } Preference::insert('ftl_max_items','Friends timeline max items','5','25','integer','plugins',$this->name); return true; } /** * uninstall * This is a required plugin function. It removes our preferences from * the database returning it to its original form */ public function uninstall() { Preference::delete('ftl_max_items'); return true; } /** * upgrade * This is a recommended plugin function */ public function upgrade() { return true; } /** * display_home * This display the module in home page */ public function display_home() { if (AmpConfig::get('sociable')) { $user_id = $GLOBALS['user']->id; if ($user_id) { echo '
'; $activities = Useractivity::get_friends_activities($user_id, $this->maxitems); if (count($activities) > 0) { UI::show_box_top(T_('Friends Timeline')); Useractivity::build_cache($activities); foreach ($activities as $aid) { $activity = new Useractivity($aid); $activity->show(); } UI::show_box_bottom(); } echo '
'; } } } /** * load * This loads up the data we need into this object, this stuff comes * from the preferences. */ public function load($user) { $user->set_preferences(); $data = $user->prefs; $this->maxitems = intval($data['ftl_max_items']); if ($this->maxitems < 1) { $this->maxitems = 10; } return true; } }