X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fatomusernoticefeed.php;h=fb0ac5f8313c88cd80504cfca650fb393d4a8d8d;hb=97af5e195421591265094685d9fa86af8d464794;hp=acfcbd75fb9fc25ad8ab5b4a0e23ea732167680b;hpb=2260d6ec7c1f2b9c63196a4d8c6c99750a89eb10;p=quix0rs-gnu-social.git diff --git a/lib/atomusernoticefeed.php b/lib/atomusernoticefeed.php index acfcbd75fb..fb0ac5f831 100644 --- a/lib/atomusernoticefeed.php +++ b/lib/atomusernoticefeed.php @@ -44,24 +44,44 @@ if (!defined('STATUSNET')) */ class AtomUserNoticeFeed extends AtomNoticeFeed { - private $user; + protected $user; /** * Constructor * * @param User $user the user 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($user, $indent = true) { - parent::__construct($indent); + function __construct($user, $cur = null, $indent = true) { + parent::__construct($cur, $indent); $this->user = $user; if (!empty($user)) { + $profile = $user->getProfile(); - $this->addAuthor($profile->nickname, $user->uri); - $this->setActivitySubject($profile->asActivityNoun('subject')); + + $ao = ActivityObject::fromProfile($profile); + + array_push($ao->extra, $profile->profileInfo($cur)); + + // XXX: For users, we generate an author _AND_ an + // This is for backward compatibility with clients (especially + // StatusNet's clients) that assume the Atom will conform to an + // older version of the Activity Streams API. Subject should be + // removed in future versions of StatusNet. + + $this->addAuthorRaw($ao->asString('author')); + + $depMsg = 'Deprecation warning: activity:subject is present ' + . 'only for backward compatibility. It will be ' + . 'removed in the next version of StatusNet.'; + + $this->addAuthorRaw( + "\n" + . $ao->asString('activity:subject') + ); } // TRANS: Title in atom user notice feed. %s is a user name. @@ -89,7 +109,7 @@ class AtomUserNoticeFeed extends AtomNoticeFeed array('nickname' => $user->nickname) ) ); - + $self = common_local_url('ApiTimelineUser', array('id' => $user->id, 'format' => 'atom'));