use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Model\Item;
+use Friendica\Model\Photo;
use Friendica\Model\Post as PostModel;
use Friendica\Model\Tag;
use Friendica\Model\User;
/**
* Fetch the privacy of the post
*
- * @param array $item
- * @return string
+ * @param array $item
+ * @return string
*/
private function fetchPrivacy(array $item):string
{
$browsershare = null;
}
+ if (in_array($item['network'], [Protocol::FEED, Protocol::MAIL])) {
+ $owner_avatar = $author_avatar = $item['contact-id'];
+ $owner_updated = $author_updated = '';
+ $owner_thumb = $author_thumb = $item['contact-avatar'];
+ } else {
+ $owner_avatar = $item['owner-id'];
+ $owner_updated = $item['owner-updated'];
+ $owner_thumb = $item['owner-avatar'];
+ $author_avatar = $item['author-id'];
+ $author_updated = $item['author-updated'];
+ $author_thumb = $item['author-avatar'];
+ }
+
+ if (empty($owner_thumb) || Photo::isPhotoURI($owner_thumb)) {
+ $owner_thumb = Contact::getAvatarUrlForId($owner_avatar, Proxy::SIZE_THUMB, $owner_updated);
+ }
+
+ if (empty($author_thumb) || Photo::isPhotoURI($author_thumb)) {
+ $author_thumb = Contact::getAvatarUrlForId($author_avatar, Proxy::SIZE_THUMB, $author_updated);
+ }
+
$tmp_item = [
'template' => $this->getTemplate(),
'type' => implode("", array_slice(explode("/", $item['verb']), -1)),
'profile_url' => $profile_link,
'name' => $profile_name,
'item_photo_menu_html' => DI::contentItem()->photoMenu($item, $formSecurityToken),
- 'thumb' => DI::baseUrl()->remove(Contact::getAvatarUrlForUrl($item['author-link'], $item['uid'], Proxy::SIZE_THUMB)),
+ 'thumb' => DI::baseUrl()->remove($author_thumb),
'osparkle' => $osparkle,
'sparkle' => $sparkle,
'title' => $title,
'shiny' => $shiny,
'owner_self' => $item['author-link'] == Session::get('my_url'),
'owner_url' => $this->getOwnerUrl(),
- 'owner_photo' => DI::baseUrl()->remove(Contact::getAvatarUrlForUrl($item['owner-link'], $item['uid'], Proxy::SIZE_THUMB)),
+ 'owner_photo' => DI::baseUrl()->remove($owner_thumb),
'owner_name' => $this->getOwnerName(),
'plink' => Item::getPlink($item),
'browsershare' => $browsershare,
'thread_level' => $thread_level,
'edited' => $edited,
'network' => $item["network"],
- 'network_name' => ContactSelector::networkToName($item['author-network'], $item['author-link'], $item['network']),
- 'network_icon' => ContactSelector::networkToIcon($item['network'], $item['author-link']),
+ 'network_name' => ContactSelector::networkToName($item['author-network'], $item['author-link'], $item['network'], $item['author-gsid']),
+ 'network_icon' => ContactSelector::networkToIcon($item['network'], $item['author-link'], $item['author-gsid']),
'received' => $item['received'],
'commented' => $item['commented'],
'created_date' => $item['created'],