X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fprofileminilist.php;h=807bed50a2f86d0c5e7a13994f5248d5dd937578;hb=8b78e01d4c4b9512a7b74efa52fcaf37de0dc6f1;hp=a9895347486c1253fd1bd389922d1211bec58b82;hpb=5dc169260dc36209dd5ad0d4d4cac2bdaaefe62c;p=quix0rs-gnu-social.git diff --git a/lib/profileminilist.php b/lib/profileminilist.php index a989534748..807bed50a2 100644 --- a/lib/profileminilist.php +++ b/lib/profileminilist.php @@ -27,13 +27,7 @@ * @link http://status.net/ */ -if (!defined('STATUSNET') && !defined('LACONICA')) { - exit(1); -} - -require_once INSTALLDIR.'/lib/profilelist.php'; - -define('PROFILES_PER_MINILIST', 27); +if (!defined('GNUSOCIAL')) { exit(1); } /** * Widget to show a list of profiles, good for sidebar @@ -47,70 +41,25 @@ define('PROFILES_PER_MINILIST', 27); class ProfileMiniList extends ProfileList { + const MAX_PROFILES = PROFILES_PER_MINILIST; // put it in the class function startList() { $this->out->elementStart('ul', 'entities users xoxo'); } - function newListItem($profile) + function newListItem(Profile $target) { - return new ProfileMiniListItem($profile, $this->action); - } - - function showProfiles() - { - $cnt = 0; - - while ($this->profile->fetch()) { - $cnt++; - if ($cnt > PROFILES_PER_MINILIST) { - break; - } - $pli = $this->newListItem($this->profile); - $pli->show(); - } - - return $cnt; + return new ProfileMiniListItem($target, $this->action); } -} - -class ProfileMiniListItem extends ProfileListItem -{ - function show() + function maxProfiles() { - $this->out->elementStart('li', 'vcard'); - if (Event::handle('StartProfileListItemProfileElements', array($this))) { - if (Event::handle('StartProfileListItemAvatar', array($this))) { - $aAttrs = $this->linkAttributes(); - $this->out->elementStart('a', $aAttrs); - $avatar = $this->profile->getAvatar(AVATAR_MINI_SIZE); - $this->out->element('img', array('src' => (($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_MINI_SIZE)), - 'width' => AVATAR_MINI_SIZE, - 'height' => AVATAR_MINI_SIZE, - 'class' => 'avatar photo', - 'alt' => ($this->profile->fullname) ? - $this->profile->fullname : - $this->profile->nickname)); - $this->out->element('span', 'fn nickname', $this->profile->nickname); - $this->out->elementEnd('a'); - Event::handle('EndProfileListItemAvatar', array($this)); - } - $this->out->elementEnd('li'); - } + return PROFILES_PER_MINILIST; } - // default; overridden for nofollow lists - - function linkAttributes() + function avatarSize() { - $aAttrs = parent::linkAttributes(); - - $aAttrs['title'] = $this->profile->getBestName(); - $aAttrs['rel'] = 'contact member'; // @todo: member? always? - $aAttrs['class'] = 'url'; - - return $aAttrs; + return AVATAR_MINI_SIZE; } }