Function to return the avatar and header path for a given contact id

This commit is contained in:
Michael 2021-06-25 17:03:35 +00:00
parent 3ece803816
commit ed4a18f079
2 changed files with 24 additions and 3 deletions

View File

@ -1662,6 +1662,28 @@ class Contact
return DI::baseUrl() . $default;
}
/**
* Get avatar link for given contact id
*
* @param integer $cid contact id
* @return string avatar link
*/
public static function getAvatarForContact(int $cid):string
{
return DI::baseUrl() . '/photo/contact/'. $cid;
}
/**
* Get header link for given contact id
*
* @param integer $cid contact id
* @return string header link
*/
public static function getHeaderForContact(int $cid):string
{
return DI::baseUrl() . '/photo/header/'. $cid;
}
/**
* Updates the avatar links in a contact only if needed
*

View File

@ -26,7 +26,6 @@ use Friendica\BaseDataTransferObject;
use Friendica\Collection\Api\Mastodon\Fields;
use Friendica\Content\Text\BBCode;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Util\DateTimeFormat;
@ -113,9 +112,9 @@ class Account extends BaseDataTransferObject
$this->note = BBCode::convert($publicContact['about'], false);
$this->url = $publicContact['url'];
$this->avatar = (($userContact['photo'] ?? '') ?: $publicContact['photo']) ?: DI::baseUrl() . '/photo/contact/'. (($userContact['id'] ?? 0) ?: $publicContact['id']);
$this->avatar = (($userContact['photo'] ?? '') ?: $publicContact['photo']) ?: Contact::getAvatarForContact(($userContact['id'] ?? 0) ?: $publicContact['id']);
$this->avatar_static = $this->avatar;
$this->header = DI::baseUrl() . '/photo/header/'. (($userContact['id'] ?? 0) ?: $publicContact['id']);
$this->header = Contact::getHeaderForContact(($userContact['id'] ?? 0) ?: $publicContact['id']);
$this->header_static = $this->header;
$this->followers_count = $apcontact['followers_count'] ?? 0;
$this->following_count = $apcontact['following_count'] ?? 0;