forked from GNUsocial/gnu-social
Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x
This commit is contained in:
@@ -299,4 +299,8 @@ $default =
|
||||
),
|
||||
'api' =>
|
||||
array('realm' => null),
|
||||
'nofollow' =>
|
||||
array('subscribers' => true,
|
||||
'members' => true,
|
||||
'peopletag' => true),
|
||||
);
|
||||
|
||||
@@ -139,25 +139,30 @@ class ProfileAction extends OwnerDesignAction
|
||||
$this->elementStart('div', array('id' => 'entity_subscribers',
|
||||
'class' => 'section'));
|
||||
|
||||
$this->element('h2', null, _('Subscribers'));
|
||||
if (Event::handle('StartShowSubscribersMiniList', array($this))) {
|
||||
|
||||
$cnt = 0;
|
||||
$this->element('h2', null, _('Subscribers'));
|
||||
|
||||
if (!empty($profile)) {
|
||||
$pml = new ProfileMiniList($profile, $this);
|
||||
$cnt = $pml->show();
|
||||
if ($cnt == 0) {
|
||||
$this->element('p', null, _('(None)'));
|
||||
$cnt = 0;
|
||||
|
||||
if (!empty($profile)) {
|
||||
$sml = new SubscribersMiniList($profile, $this);
|
||||
$cnt = $sml->show();
|
||||
if ($cnt == 0) {
|
||||
$this->element('p', null, _('(None)'));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($cnt > PROFILES_PER_MINILIST) {
|
||||
$this->elementStart('p');
|
||||
$this->element('a', array('href' => common_local_url('subscribers',
|
||||
array('nickname' => $this->profile->nickname)),
|
||||
'class' => 'more'),
|
||||
_('All subscribers'));
|
||||
$this->elementEnd('p');
|
||||
if ($cnt > PROFILES_PER_MINILIST) {
|
||||
$this->elementStart('p');
|
||||
$this->element('a', array('href' => common_local_url('subscribers',
|
||||
array('nickname' => $this->profile->nickname)),
|
||||
'class' => 'more'),
|
||||
_('All subscribers'));
|
||||
$this->elementEnd('p');
|
||||
}
|
||||
|
||||
Event::handle('EndShowSubscribersMiniList', array($this));
|
||||
}
|
||||
|
||||
$this->elementEnd('div');
|
||||
@@ -266,3 +271,23 @@ class ProfileAction extends OwnerDesignAction
|
||||
}
|
||||
}
|
||||
|
||||
class SubscribersMiniList extends ProfileMiniList
|
||||
{
|
||||
function newListItem($profile)
|
||||
{
|
||||
return new SubscribersMiniListItem($profile, $this->action);
|
||||
}
|
||||
}
|
||||
|
||||
class SubscribersMiniListItem extends ProfileMiniListItem
|
||||
{
|
||||
function linkAttributes()
|
||||
{
|
||||
$aAttrs = parent::linkAttributes();
|
||||
if (common_config('nofollow', 'subscribers')) {
|
||||
$aAttrs['rel'] .= ' nofollow';
|
||||
}
|
||||
return $aAttrs;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -181,9 +181,8 @@ class ProfileListItem extends Widget
|
||||
function showAvatar()
|
||||
{
|
||||
$avatar = $this->profile->getAvatar(AVATAR_STREAM_SIZE);
|
||||
$this->out->elementStart('a', array('href' => $this->profile->profileurl,
|
||||
'class' => 'url entry-title',
|
||||
'rel' => 'contact'));
|
||||
$aAttrs = $this->linkAttributes();
|
||||
$this->out->elementStart('a', $aAttrs);
|
||||
$this->out->element('img', array('src' => ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_STREAM_SIZE),
|
||||
'class' => 'photo avatar',
|
||||
'width' => AVATAR_STREAM_SIZE,
|
||||
@@ -223,8 +222,8 @@ class ProfileListItem extends Widget
|
||||
{
|
||||
if (!empty($this->profile->homepage)) {
|
||||
$this->out->text(' ');
|
||||
$this->out->elementStart('a', array('href' => $this->profile->homepage,
|
||||
'class' => 'url'));
|
||||
$aAttrs = $this->homepageAttributes();
|
||||
$this->out->elementStart('a', $aAttrs);
|
||||
$this->out->raw($this->highlight($this->profile->homepage));
|
||||
$this->out->elementEnd('a');
|
||||
}
|
||||
@@ -299,4 +298,17 @@ class ProfileListItem extends Widget
|
||||
{
|
||||
return htmlspecialchars($text);
|
||||
}
|
||||
|
||||
function linkAttributes()
|
||||
{
|
||||
return array('href' => $this->profile->profileurl,
|
||||
'class' => 'url entry-title',
|
||||
'rel' => 'contact');
|
||||
}
|
||||
|
||||
function homepageAttributes()
|
||||
{
|
||||
return array('href' => $this->profile->homepage,
|
||||
'class' => 'url');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -81,20 +81,36 @@ class ProfileMiniListItem extends ProfileListItem
|
||||
function show()
|
||||
{
|
||||
$this->out->elementStart('li', 'vcard');
|
||||
$this->out->elementStart('a', array('title' => $this->profile->getBestName(),
|
||||
'href' => $this->profile->profileurl,
|
||||
'rel' => 'contact member',
|
||||
'class' => 'url'));
|
||||
$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');
|
||||
$this->out->elementEnd('li');
|
||||
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');
|
||||
}
|
||||
}
|
||||
|
||||
// default; overridden for nofollow lists
|
||||
|
||||
function linkAttributes()
|
||||
{
|
||||
$aAttrs = parent::linkAttributes();
|
||||
|
||||
$aAttrs['title'] = $this->profile->getBestName();
|
||||
$aAttrs['rel'] = 'contact member'; // @todo: member? always?
|
||||
$aAttrs['class'] = 'url';
|
||||
|
||||
return $aAttrs;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user