}
/**
- * Processes poll participations - unssupported
+ * Processes poll participations - unsupported
*
* @param array $importer Array of the importer user
* @param object $data The message object
$author = WebFingerUri::fromString($author_handle);
// the current protocol version doesn't know these fields
- // That means that we will assume their existance
+ // That means that we will assume their existence
if (isset($data->following)) {
$following = (XML::unescape($data->following) == 'true');
} else {
} elseif (!$following && $sharing) {
Logger::info("Author " . $author . " wants to share with us.");
} elseif ($following && $sharing) {
- Logger::info("Author " . $author . " wants to have a bidirectional conection.");
+ Logger::info("Author " . $author . " wants to have a bidirectional connection.");
} elseif ($following && !$sharing) {
Logger::info("Author " . $author . " wants to listen to us.");
}
* ************************************************************************************** */
/**
- * returnes the handle of a contact
+ * returns the handle of a contact
*
* @param array $contact contact array
*
}
// Normally we should have a filled "addr" field - but in the past this wasn't the case
- // So - just in case - we build the the address here.
+ // So - just in case - we build the address here.
if ($contact['nickname'] != '') {
$nick = $contact['nickname'];
} else {
return false;
}
- if (!self::parentSupportDiaspora($item['thr-parent-id'])) {
+ if (!self::parentSupportDiaspora($item['thr-parent-id'], $uid)) {
Logger::info('One of the parents does not support Diaspora. A signature will not be created.', ['uri-id' => $item['uri-id'], 'guid' => $item['guid']]);
return false;
}
* Check if the parent and their parents support Diaspora
*
* @param integer $parent_id
+ * @param integer $uid
* @return boolean
* @throws InternalServerErrorException
* @throws \ImagickException
*/
- private static function parentSupportDiaspora(int $parent_id): bool
+ private static function parentSupportDiaspora(int $parent_id, int $uid): bool
{
- $parent_post = Post::selectFirstPost(['gravity', 'signed_text', 'author-link', 'thr-parent-id'], ['uri-id' => $parent_id]);
+ $parent_post = Post::selectFirst(['gravity', 'signed_text', 'author-link', 'thr-parent-id', 'protocol'], ['uri-id' => $parent_id, 'uid' => [0, $uid]]);
if (empty($parent_post['thr-parent-id'])) {
Logger::warning('Parent post does not exist.', ['parent-id' => $parent_id]);
return false;
return false;
}
- if (($parent_post['gravity'] == Item::GRAVITY_COMMENT) && empty($parent_post['signed_text'])) {
+ if (($parent_post['protocol'] != Conversation::PARCEL_DIASPORA) && ($parent_post['gravity'] == Item::GRAVITY_COMMENT) && empty($parent_post['signed_text'])) {
Logger::info('Parent comment has got no Diaspora signature.', ['parent-id' => $parent_id]);
return false;
}
if ($parent_post['gravity'] == Item::GRAVITY_COMMENT) {
- return self::parentSupportDiaspora($parent_post['thr-parent-id']);
+ return self::parentSupportDiaspora($parent_post['thr-parent-id'], $uid);
}
return true;