> TypeError: "Argument 2 passed to Friendica\Protocol\ActivityPub\Transmitter::sendContactReject()
> must be of the type int, string given

I followed here here the documentation, may fix #11708
This commit is contained in:
Roland Häder 2022-07-06 05:41:48 +02:00
parent 7b55f93027
commit bf809c9d57
No known key found for this signature in database
GPG Key ID: C82EDE5DDFA0BA77

View File

@ -2162,13 +2162,13 @@ class Transmitter
* Reject a contact request or terminates the contact relation
*
* @param string $target Target profile
* @param integer $id Object id
* @param integer $uid User ID
* @param string $objectId Object id
* @param int $uid User ID
* @return bool Operation success
* @throws HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
public static function sendContactReject(string $target, int $id, int $uid): bool
public static function sendContactReject(string $target, string $objectId, int $uid): bool
{
$profile = APContact::getByURL($target);
if (empty($profile['inbox'])) {
@ -2183,7 +2183,7 @@ class Transmitter
'type' => 'Reject',
'actor' => $owner['url'],
'object' => [
'id' => (string)$id,
'id' => $objectId,
'type' => 'Follow',
'actor' => $profile['url'],
'object' => $owner['url']
@ -2192,7 +2192,7 @@ class Transmitter
'to' => [$profile['url']],
];
Logger::debug('Sending reject to ' . $target . ' for user ' . $uid . ' with id ' . $id);
Logger::debug('Sending reject to ' . $target . ' for user ' . $uid . ' with id ' . $objectId);
$signed = LDSignature::sign($data, $owner);
return HTTPSignature::transmit($signed, $profile['inbox'], $uid);
@ -2222,12 +2222,12 @@ class Transmitter
return false;
}
$id = DI::baseUrl() . '/activity/' . System::createGUID();
$objectId = DI::baseUrl() . '/activity/' . System::createGUID();
$owner = User::getOwnerDataById($uid);
$data = [
'@context' => ActivityPub::CONTEXT,
'id' => $id,
'id' => $objectId,
'type' => 'Undo',
'actor' => $owner['url'],
'object' => [
@ -2240,7 +2240,7 @@ class Transmitter
'to' => [$profile['url']],
];
Logger::info('Sending undo to ' . $target . ' for user ' . $uid . ' with id ' . $id);
Logger::info('Sending undo to ' . $target . ' for user ' . $uid . ' with id ' . $objectId);
$signed = LDSignature::sign($data, $owner);
return HTTPSignature::transmit($signed, $profile['inbox'], $uid);