X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fatomgroupnoticefeed.php;h=945d9fca2f54be2bc7f21da03b6e3f867d7d284d;hb=1536d3ef29486fc1c5387e73106b86873fdb7cf9;hp=08c1c707c578091a0d5eb7d67b0795d776b9f013;hpb=62d5f1addb1b710a387f7732ace1dd33bd1b86c1;p=quix0rs-gnu-social.git diff --git a/lib/atomgroupnoticefeed.php b/lib/atomgroupnoticefeed.php index 08c1c707c5..945d9fca2f 100644 --- a/lib/atomgroupnoticefeed.php +++ b/lib/atomgroupnoticefeed.php @@ -50,19 +50,23 @@ class AtomGroupNoticeFeed extends AtomNoticeFeed * Constructor * * @param Group $group the group for the feed + * @param User $cur the current authenticated user, if any * @param boolean $indent flag to turn indenting on or off * * @return void */ - function __construct($group, $indent = true) { - parent::__construct($indent); + function __construct($group, $cur = null, $indent = true) { + parent::__construct($cur, $indent); $this->group = $group; + // TRANS: Title in atom group notice feed. %s is a group name. $title = sprintf(_("%s timeline"), $group->nickname); $this->setTitle($title); $sitename = common_config('site', 'name'); $subtitle = sprintf( + // TRANS: Message is used as a subtitle in atom group notice feed. + // TRANS: %1$s is a group name, %2$s is a site name. _('Updates from %1$s on %2$s!'), $group->nickname, $sitename @@ -81,8 +85,9 @@ class AtomGroupNoticeFeed extends AtomNoticeFeed $this->setId($self); $this->setSelfLink($self); - $this->addAuthorRaw($group->asAtomAuthor()); - $this->setActivitySubject($group->asActivitySubject()); + $ao = ActivityObject::fromGroup($group); + + $this->addAuthorRaw($ao->asString('author')); $this->addLink($group->homeUrl()); } @@ -92,4 +97,23 @@ class AtomGroupNoticeFeed extends AtomNoticeFeed return $this->group; } + function initFeed() + { + parent::initFeed(); + + $attrs = array(); + + if (!empty($this->cur)) { + $attrs['member'] = $this->cur->isMember($this->group) + ? 'true' : 'false'; + $attrs['blocked'] = Group_block::isBlocked( + $this->group, + $this->cur->getProfile() + ) ? 'true' : 'false'; + } + + $attrs['member_count'] = $this->group->getMemberCount(); + + $this->element('statusnet:group_info', $attrs); + } }