<?php
/**
- * @copyright Copyright (C) 2010-2022, the Friendica project
+ * @copyright Copyright (C) 2010-2023, the Friendica project
*
* @license GNU AGPL version 3 or any later version
*
DI::config()->set('system', 'site_pubkey', $res['pubkey']);
}
- $profilephotos = Photo::selectToArray(['resource-id' , 'scale'], ['profile' => true, 'uid' => $uid], ['order' => ['scale']]);
+ $profilephotos = Photo::selectToArray(['resource-id', 'scale', 'type'], ['profile' => true, 'uid' => $uid], ['order' => ['scale']]);
$photos = [];
$ext = Images::supportedTypes();
foreach ($profilephotos as $p) {
- $photos[$p['scale']] = DI::baseUrl().'/photo/'.$p['resource-id'].'-'.$p['scale'].'.'.$ext[$p['type']];
+ $photos[$p['scale']] = DI::baseUrl() . '/photo/' . $p['resource-id'] . '-' . $p['scale'] . '.' . $ext[$p['type']];
}
-
$doc = new DOMDocument('1.0', 'utf-8');
$doc->formatOutput = true;
}
$body = Post\Media::addAttachmentsToBody($item['uri-id'], DI::contentItem()->addSharedPost($item));
+ $body = Post\Media::addHTMLAttachmentToBody($item['uri-id'], $body);
if ($item['private'] == Item::PRIVATE) {
$body = Item::fixPrivatePhotos($body, $owner['uid'], $item, $cid);
$xml = $postResult->getBody();
$curl_stat = $postResult->getReturnCode();
+ if (!empty($contact['gsid']) && ($postResult->isTimeout() || empty($curl_stat))) {
+ GServer::setFailureById($contact['gsid']);
+ }
+
if (empty($curl_stat) || empty($xml)) {
Logger::notice('Empty answer from ' . $contact['id'] . ' - ' . $dest_url);
return -9; // timed out
return -23;
}
+ if (!empty($contact['gsid'])) {
+ GServer::setReachableById($contact['gsid'], Protocol::DFRN);
+ }
+
if (!empty($res->message)) {
Logger::info('Transmit to ' . $dest_url . ' returned status '.$res->status.' - '.$res->message);
}
*/
private static function processMail(DOMXPath $xpath, DOMNode $mail, array $importer)
{
- Logger::notice("Processing mails");
+ Logger::info("Processing mails");
$msg = [];
$msg['uid'] = $importer['importer_uid'];
*/
private static function processSuggestion(DOMXPath $xpath, DOMNode $suggestion, array $importer)
{
- Logger::notice('Processing suggestions');
+ Logger::info('Processing suggestions');
$url = $xpath->evaluate('string(dfrn:url[1]/text())', $suggestion);
$cid = Contact::getIdForURL($url);
*/
private static function processRelocation(DOMXPath $xpath, DOMNode $relocation, array $importer): bool
{
- Logger::notice("Processing relocations");
+ Logger::info("Processing relocations");
/// @TODO Rewrite this to one statement
$relocate = [];
Contact::updateAvatar($importer['id'], $relocate['avatar'], true);
- Logger::notice('Contacts are updated.');
+ Logger::info('Contacts are updated.');
/// @TODO
/// merge with current record, current contents have priority
// Big question: Do we need these functions? They were part of the "consume_feed" function.
// This function once was responsible for DFRN and OStatus.
if ($activity->match($item['verb'], Activity::FOLLOW)) {
- Logger::notice("New follower");
+ Logger::info("New follower");
Contact::addRelationship($importer, $contact, $item);
return false;
}
if ($activity->match($item['verb'], Activity::UNFOLLOW)) {
- Logger::notice("Lost follower");
+ Logger::info("Lost follower");
Contact::removeFollower($contact);
return false;
}
if ($activity->match($item['verb'], Activity::REQ_FRIEND)) {
- Logger::notice("New friend request");
+ Logger::info("New friend request");
Contact::addRelationship($importer, $contact, $item, true);
return false;
}
if ($activity->match($item['verb'], Activity::UNFRIEND)) {
- Logger::notice("Lost sharer");
+ Logger::info("Lost sharer");
Contact::removeSharer($contact);
return false;
}
* Checks if an incoming message is wanted
*
* @param array $item
- * @param array $imporer
+ * @param array $importer
* @return boolean Is the message wanted?
*/
private static function isSolicitedMessage(array $item, array $importer): bool
*/
private static function processEntry(array $header, DOMXPath $xpath, DOMNode $entry, array $importer, string $xml, int $protocol)
{
- Logger::notice("Processing entries");
+ Logger::info("Processing entries");
$item = $header;
// This is my contact on another system, but it's really me.
// Turn this into a wall post.
$notify = Item::isRemoteSelf($importer, $item);
+ $item['wall'] = (bool)$notify;
$posted_id = Item::insert($item, $notify);
*/
private static function processDeletion(DOMXPath $xpath, DOMNode $deletion, array $importer)
{
- Logger::notice("Processing deletions");
+ Logger::info("Processing deletions");
$uri = null;
foreach ($deletion->attributes as $attributes) {
self::processDeletion($xpath, $deletion, $importer);
}
if (count($deletions) > 0) {
- Logger::notice(count($deletions) . ' deletions had been processed');
+ Logger::info(count($deletions) . ' deletions had been processed');
return 200;
}
}