Merge pull request #9530 from annando/fatal

Fix fatal errors
This commit is contained in:
Hypolite Petovan 2020-11-12 07:57:53 -05:00 committed by GitHub
commit 6dee10f340
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 29 additions and 19 deletions

View file

@ -995,11 +995,19 @@ class Transmitter
if (!empty($author['nurl'])) { if (!empty($author['nurl'])) {
$self = Contact::selectFirst(['uid'], ['nurl' => $author['nurl'], 'self' => true]); $self = Contact::selectFirst(['uid'], ['nurl' => $author['nurl'], 'self' => true]);
if (!empty($self['uid'])) { if (!empty($self['uid'])) {
$item = Item::selectFirst([], ['uri-id' => $item['uri-id'], 'uid' => $self['uid']]); $forum_item = Item::selectFirst([], ['uri-id' => $item['uri-id'], 'uid' => $self['uid']]);
if (DBA::isResult($item)) {
$item = $forum_item;
}
} }
} }
} }
if (empty($item['uri-id'])) {
Logger::warning('Item without uri-id', ['item' => $item]);
return false;
}
if (empty($type)) { if (empty($type)) {
$condition = ['item-uri' => $item['uri'], 'protocol' => Conversation::PARCEL_ACTIVITYPUB]; $condition = ['item-uri' => $item['uri'], 'protocol' => Conversation::PARCEL_ACTIVITYPUB];
$conversation = DBA::selectFirst('conversation', ['source'], $condition); $conversation = DBA::selectFirst('conversation', ['source'], $condition);

View file

@ -552,25 +552,27 @@ class Feed
$data = PageInfo::queryUrl($item["plink"], false, $preview, ($contact["fetch_further_information"] == 2), $contact["ffi_keyword_denylist"] ?? ''); $data = PageInfo::queryUrl($item["plink"], false, $preview, ($contact["fetch_further_information"] == 2), $contact["ffi_keyword_denylist"] ?? '');
// Take the data that was provided by the feed if the query is empty if (!empty($data)) {
if (($data['type'] == 'link') && empty($data['title']) && empty($data['text'])) { // Take the data that was provided by the feed if the query is empty
$data['title'] = $saved_title; if (($data['type'] == 'link') && empty($data['title']) && empty($data['text'])) {
$item["body"] = $saved_body; $data['title'] = $saved_title;
$item["body"] = $saved_body;
}
$data_text = strip_tags(trim($data['text'] ?? ''));
$item_body = strip_tags(trim($item['body'] ?? ''));
if (!empty($data_text) && (($data_text == $item_body) || strstr($item_body, $data_text))) {
$data['text'] = '';
}
// We always strip the title since it will be added in the page information
$item["title"] = "";
$item["body"] = $item["body"] . "\n" . PageInfo::getFooterFromData($data, false);
$taglist = $contact["fetch_further_information"] == 2 ? PageInfo::getTagsFromUrl($item["plink"], $preview, $contact["ffi_keyword_denylist"] ?? '') : [];
$item["object-type"] = Activity\ObjectType::BOOKMARK;
$attachments = [];
} }
$data_text = strip_tags(trim($data['text'] ?? ''));
$item_body = strip_tags(trim($item['body'] ?? ''));
if (!empty($data_text) && (($data_text == $item_body) || strstr($item_body, $data_text))) {
$data['text'] = '';
}
// We always strip the title since it will be added in the page information
$item["title"] = "";
$item["body"] = $item["body"] . "\n" . PageInfo::getFooterFromData($data, false);
$taglist = $contact["fetch_further_information"] == 2 ? PageInfo::getTagsFromUrl($item["plink"], $preview, $contact["ffi_keyword_denylist"] ?? '') : [];
$item["object-type"] = Activity\ObjectType::BOOKMARK;
$attachments = [];
} else { } else {
if (!empty($summary)) { if (!empty($summary)) {
$item["body"] = '[abstract]' . HTML::toBBCode($summary, $basepath) . "[/abstract]\n" . $item["body"]; $item["body"] = '[abstract]' . HTML::toBBCode($summary, $basepath) . "[/abstract]\n" . $item["body"];