// the surrounding feed.
$this->actor = new ActivityObject($authorEl);
- } else if (!empty($feed) && $authorEl = $this->_child($feed, self::AUTHOR,
- self::ATOM)) {
-
- // If there's no <atom:author> on the entry, it's safe to assume
- // the containing feed's authorship info applies.
- $this->actor = new ActivityObject($authorEl);
} else if (!empty($feed) &&
$subjectEl = $this->_child($feed, self::SUBJECT)) {
// Feed subject is used for things like groups.
// Should actually possibly not be interpreted as an actor...?
$this->actor = new ActivityObject($subjectEl);
+
+ } else if (!empty($feed) && $authorEl = $this->_child($feed, self::AUTHOR,
+ self::ATOM)) {
+
+ // If there's no <atom:author> on the entry, it's safe to assume
+ // the containing feed's authorship info applies.
+ $this->actor = new ActivityObject($authorEl);
}
$contextEl = $this->_child($entry, self::CONTEXT);
static function getFeedAuthor($feedEl)
{
- // Try the feed author
-
- $author = ActivityUtils::child($feedEl, Activity::AUTHOR, Activity::ATOM);
-
- if (!empty($author)) {
- return new ActivityObject($author);
- }
-
// Try old and deprecated activity:subject
$subject = ActivityUtils::child($feedEl, Activity::SUBJECT, Activity::SPEC);
return new ActivityObject($subject);
}
+ // Try the feed author
+
+ $author = ActivityUtils::child($feedEl, Activity::AUTHOR, Activity::ATOM);
+
+ if (!empty($author)) {
+ return new ActivityObject($author);
+ }
+
// Sheesh. Not a very nice feed! Let's try fingerpoken in the
// entries.
$entry = $entries->item(0);
- // Try the author
-
- $author = ActivityUtils::child($entry, Activity::AUTHOR, Activity::ATOM);
-
- if (!empty($author)) {
- return new ActivityObject($author);
- }
-
// Try the (deprecated) activity:actor
$actor = ActivityUtils::child($entry, Activity::ACTOR, Activity::SPEC);
if (!empty($actor)) {
return new ActivityObject($actor);
}
+
+ // Try the author
+
+ $author = ActivityUtils::child($entry, Activity::AUTHOR, Activity::ATOM);
+
+ if (!empty($author)) {
+ return new ActivityObject($author);
+ }
}
return null;
{
$orig = clone($profile);
- $profile->nickname = self::getActivityObjectNickname($object, $hints);
+ // Existing nickname is better than nothing.
+
+ if (!array_key_exists('nickname', $hints)) {
+ $hints['nickname'] = $profile->nickname;
+ }
+
+ $nickname = self::getActivityObjectNickname($object, $hints);
+
+ if (!empty($nickname)) {
+ $profile->nickname = $nickname;
+ }
if (!empty($object->title)) {
$profile->fullname = $object->title;
$profile->profileurl = $object->id;
}
- $profile->bio = self::getActivityObjectBio($object, $hints);
- $profile->location = self::getActivityObjectLocation($object, $hints);
- $profile->homepage = self::getActivityObjectHomepage($object, $hints);
+ $bio = self::getActivityObjectBio($object, $hints);
+
+ if (!empty($bio)) {
+ $profile->bio = $bio;
+ }
+
+ $location = self::getActivityObjectLocation($object, $hints);
+
+ if (!empty($location)) {
+ $profile->location = $location;
+ }
+
+ $homepage = self::getActivityObjectHomepage($object, $hints);
+
+ if (!empty($homepage)) {
+ $profile->homepage = $homepage;
+ }
if (!empty($object->geopoint)) {
$location = ActivityContext::locationFromPoint($object->geopoint);