diff --git a/src/Protocol/ATProtocol/Processor.php b/src/Protocol/ATProtocol/Processor.php
index f551f6a273..3a21ff3dd4 100755
--- a/src/Protocol/ATProtocol/Processor.php
+++ b/src/Protocol/ATProtocol/Processor.php
@@ -279,7 +279,7 @@ class Processor
$uri = $this->getUri($post);
if ($uri_id = $this->fetchUriId($uri, $uid)) {
- return $uri_id;
+ return (int) $uri_id;
}
if (empty($post->record)) {
@@ -322,7 +322,7 @@ class Processor
$this->logger->warning('Fetched post was not inserted', ['guid' => $item['guid'], 'uri' => $item['uri']]);
}
- return $this->fetchUriId($uri, $uid);
+ return (int) $this->fetchUriId($uri, $uid);
}
private function getHeaderFromJetstream(stdClass $data, int $uid, int $protocol = Conversation::PARCEL_JETSTREAM): array
@@ -860,7 +860,7 @@ class Processor
$this->logger->debug('Post with extid exists', ['uri' => $uri]);
return $reply['uri-id'];
}
- return 0;
+ return '0';
}
private function getPostUids(string $uri, bool $with_public_user): array
diff --git a/src/Protocol/ActivityPub/Receiver.php b/src/Protocol/ActivityPub/Receiver.php
index 34732022b5..76f4d31d3d 100644
--- a/src/Protocol/ActivityPub/Receiver.php
+++ b/src/Protocol/ActivityPub/Receiver.php
@@ -250,7 +250,7 @@ class Receiver
* @param string $object_id Object ID of the provided object
* @param integer $uid User ID
*
- * @return string with object type or NULL
+ * @return string|null string with object type or NULL
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @throws \ImagickException
*/
diff --git a/src/Protocol/DFRN.php b/src/Protocol/DFRN.php
index be6dfc206d..56cafc1a97 100644
--- a/src/Protocol/DFRN.php
+++ b/src/Protocol/DFRN.php
@@ -607,64 +607,64 @@ class DFRN
* @param string $element Element name for the activity
* @param string $activity activity value
* @param int $uriid Uri-Id of the post
- * @return DOMElement XML activity object
+ * @return DOMElement|false XML activity object or false on error
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @todo Find proper type-hints
*/
private static function createActivity(DOMDocument $doc, string $element, string $activity, int $uriid)
{
- if ($activity) {
- $entry = $doc->createElement($element);
-
- $r = XML::parseString($activity);
- if (!$r) {
- return false;
- }
-
- if ($r->type) {
- XML::addElement($doc, $entry, "activity:object-type", $r->type);
- }
-
- if ($r->id) {
- XML::addElement($doc, $entry, "id", $r->id);
- }
-
- if ($r->title) {
- XML::addElement($doc, $entry, "title", $r->title);
- }
-
- if ($r->link) {
- if (substr($r->link, 0, 1) == '<') {
- if (strstr($r->link, '&') && (! strstr($r->link, '&'))) {
- $r->link = str_replace('&', '&', $r->link);
- }
-
- $r->link = preg_replace('/\/', '', $r->link);
-
- // XML does need a single element as root element so we add a dummy element here
- $data = XML::parseString("" . $r->link . "");
- if (is_object($data)) {
- foreach ($data->link as $link) {
- $attributes = [];
- foreach ($link->attributes() as $parameter => $value) {
- $attributes[$parameter] = $value;
- }
- XML::addElement($doc, $entry, "link", "", $attributes);
- }
- }
- } else {
- $attributes = ["rel" => "alternate", "type" => "text/html", "href" => $r->link];
- XML::addElement($doc, $entry, "link", "", $attributes);
- }
- }
- if ($r->content) {
- XML::addElement($doc, $entry, "content", BBCode::convertForUriId($uriid, $r->content, BBCode::EXTERNAL), ["type" => "html"]);
- }
-
- return $entry;
+ if (!$activity) {
+ return false;
}
- return false;
+ $entry = $doc->createElement($element);
+
+ $r = XML::parseString($activity);
+ if (!$r) {
+ return false;
+ }
+
+ if ($r->type) {
+ XML::addElement($doc, $entry, "activity:object-type", $r->type);
+ }
+
+ if ($r->id) {
+ XML::addElement($doc, $entry, "id", $r->id);
+ }
+
+ if ($r->title) {
+ XML::addElement($doc, $entry, "title", $r->title);
+ }
+
+ if ($r->link) {
+ if (substr($r->link, 0, 1) == '<') {
+ if (strstr($r->link, '&') && (! strstr($r->link, '&'))) {
+ $r->link = str_replace('&', '&', $r->link);
+ }
+
+ $r->link = preg_replace('/\/', '', $r->link);
+
+ // XML does need a single element as root element so we add a dummy element here
+ $data = XML::parseString("" . $r->link . "");
+ if (is_object($data)) {
+ foreach ($data->link as $link) {
+ $attributes = [];
+ foreach ($link->attributes() as $parameter => $value) {
+ $attributes[$parameter] = $value;
+ }
+ XML::addElement($doc, $entry, "link", "", $attributes);
+ }
+ }
+ } else {
+ $attributes = ["rel" => "alternate", "type" => "text/html", "href" => $r->link];
+ XML::addElement($doc, $entry, "link", "", $attributes);
+ }
+ }
+ if ($r->content) {
+ XML::addElement($doc, $entry, "content", BBCode::convertForUriId($uriid, $r->content, BBCode::EXTERNAL), ["type" => "html"]);
+ }
+
+ return $entry;
}
/**
@@ -1925,7 +1925,7 @@ class DFRN
// Check if the message is wanted
if (!self::isSolicitedMessage($item, $importer)) {
DBA::delete('item-uri', ['uri' => $item['uri']]);
- return 403;
+ return;
}
// Get the type of the item (Top level post, reply or remote reply)
@@ -2051,7 +2051,7 @@ class DFRN
Item::distribute($posted_id);
}
- return true;
+ return;
}
} else { // $entrytype == self::TOP_LEVEL
if (($item['uid'] != 0) && !Contact::isSharing($item['owner-id'], $item['uid']) && !Contact::isSharing($item['author-id'], $item['uid'])) {
@@ -2099,7 +2099,7 @@ class DFRN
}
if (!$uri || !$importer['id']) {
- return false;
+ return;
}
$condition = ['uri' => $uri, 'uid' => $importer['importer_uid']];
diff --git a/src/Protocol/Diaspora.php b/src/Protocol/Diaspora.php
index a8db02f045..0166e65f9d 100644
--- a/src/Protocol/Diaspora.php
+++ b/src/Protocol/Diaspora.php
@@ -337,7 +337,7 @@ class Diaspora
* @param string $xml urldecoded Diaspora salmon
* @param string $privKey The private key of the importer
*
- * @return array
+ * @return array|false array with decoded data or false on error
* 'message' -> decoded Diaspora XML message
* 'author' -> author diaspora handle
* 'key' -> author public key (converted to pkcs#8)
@@ -1051,7 +1051,7 @@ class Diaspora
* @param string $server The url of the server
* @param int $level Endless loop prevention
*
- * @return array
+ * @return array|false The message as array or false on error
* 'message' => The message XML
* 'author' => The author handle
* 'key' => The public key of the author
@@ -2795,7 +2795,7 @@ class Diaspora
// without a public key nothing will work
if (!$pubkey) {
DI::logger()->notice('pubkey missing: contact id: ' . $contact['id']);
- return false;
+ return '';
}
$aes_key = random_bytes(32);
@@ -2809,7 +2809,7 @@ class Diaspora
$encrypted_key_bundle = '';
if (!@openssl_public_encrypt($json, $encrypted_key_bundle, $pubkey)) {
- return false;
+ return '';
}
$json_object = json_encode(