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;
use Friendica\Protocol\Activity;
use Friendica\Util\Crypto;
use Friendica\Util\DateTimeFormat;
-use Friendica\Util\Network;
-use Friendica\Util\Proxy;
use Friendica\Util\Strings;
use Friendica\Util\Temporal;
+use GuzzleHttp\Psr7\Uri;
use InvalidArgumentException;
/**
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
- public function getTemplateData(array $conv_responses, string $formSecurityToken, int $thread_level = 1)
+ public function getTemplateData(array $conv_responses, string $formSecurityToken, int $thread_level = 1, string $parent_guid = "", string $parent_username = "")
{
$item = $this->getData();
$edited = false;
'label' => DI::l10n()->t('Report post'),
'href' => 'moderation/report/create?' . http_build_query(['cid' => $item['author-id'], 'uri-ids' => [$item['uri-id']]]),
];
- if (!Network::isLocalLink($item['plink'])) {
+ $authorBaseUri = new Uri($item['author-baseurl'] ?? '');
+ if ($authorBaseUri->getHost() && !DI::baseUrl()->isLocalUrl($authorBaseUri)) {
$ignoreServer = [
- 'label' => DI::l10n()->t("Ignore %s's server", $item['author-name']),
+ 'label' => DI::l10n()->t("Ignore %s server", $authorBaseUri->getHost()),
];
}
}
}
$tmp_item = [
+ 'parentguid' => $parent_guid,
+ 'isreplyto' => DI::l10n()->t('in reply to %s', $parent_username),
'template' => $this->getTemplate(),
'type' => implode('', array_slice(explode('/', $item['verb']), -1)),
'comment_firstcollapsed' => false,
$nb_children = count($children);
if ($nb_children > 0) {
foreach ($children as $child) {
- $result['children'][] = $child->getTemplateData($conv_responses, $formSecurityToken, $thread_level + 1);
+ $result['children'][] = $child->getTemplateData($conv_responses, $formSecurityToken, $thread_level + 1, $tmp_item['guid'], $tmp_item['name']);
}
// Collapse