3 * StatusNet, the distributed open-source microblogging tool
5 * Widget to show a list of profiles
9 * LICENCE: This program is free software: you can redistribute it and/or modify
10 * it under the terms of the GNU Affero General Public License as published by
11 * the Free Software Foundation, either version 3 of the License, or
12 * (at your option) any later version.
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU Affero General Public License for more details.
19 * You should have received a copy of the GNU Affero General Public License
20 * along with this program. If not, see <http://www.gnu.org/licenses/>.
24 * @author Evan Prodromou <evan@status.net>
25 * @copyright 2008-2009 StatusNet, Inc.
26 * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
27 * @link http://status.net/
30 if (!defined('STATUSNET') && !defined('LACONICA')) {
35 * Widget to show a list of subscriptions
39 * @author Zach Copley <zach@status.net>
40 * @author Evan Prodromou <evan@status.net>
41 * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
42 * @link http://status.net/
44 class SubscriptionList extends ProfileList
46 /** Owner of this list */
49 function __construct($profile, $owner=null, $action=null)
51 parent::__construct($profile, $action);
53 $this->owner = $owner;
56 function newListItem($profile)
58 return new SubscriptionListItem($profile, $this->owner, $this->action);
62 class SubscriptionListItem extends ProfileListItem
64 /** Owner of this list */
67 function __construct($profile, $owner, $action)
69 parent::__construct($profile, $action);
71 $this->owner = $owner;
74 function showProfile()
76 $this->startProfile();
77 $this->showAvatar($this->profile);
78 $this->showNickname();
79 $this->showFullName();
80 $this->showLocation();
81 $this->showHomepage();
86 $this->showOwnerControls();
91 function showOwnerControls()
98 $user = common_current_user();
99 return (!empty($user) && ($this->owner->id == $user->id));