X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FProtocol%2FDFRN.php;h=2abdfe14869fc128a0911ecb8234f963b4f81ba4;hb=bcc8ed378c1920bc66d0f301f1060e7ebf894999;hp=84c4affc70815d32724c49680c0ddd088934cb37;hpb=1b2b2259b1dc9821c3b1b025c8fe4d76bc7fbe71;p=friendica.git diff --git a/src/Protocol/DFRN.php b/src/Protocol/DFRN.php index 84c4affc70..2abdfe1486 100644 --- a/src/Protocol/DFRN.php +++ b/src/Protocol/DFRN.php @@ -29,6 +29,7 @@ use Friendica\Model\Mail; use Friendica\Model\PermissionSet; use Friendica\Model\Profile; use Friendica\Model\User; +use Friendica\Network\Probe; use Friendica\Object\Image; use Friendica\Util\BaseURL; use Friendica\Util\Crypto; @@ -1693,13 +1694,12 @@ class DFRN 'location' => $contact['location'], 'addr' => $contact['addr'], 'keywords' => $contact['keywords'], 'bdyear' => $contact['bdyear'], 'bd' => $contact['bd'], 'hidden' => $contact['hidden'], 'xmpp' => $contact['xmpp'], 'name-date' => DateTimeFormat::utc($contact['name-date']), - 'uri-date' => DateTimeFormat::utc($contact['uri-date'])]; + 'unsearchable' => $contact['hidden'], 'uri-date' => DateTimeFormat::utc($contact['uri-date'])]; DBA::update('contact', $fields, ['id' => $contact['id'], 'network' => $contact['network']], $contact_old); // Update the public contact. Don't set the "hidden" value, this is used differently for public contacts unset($fields['hidden']); - $fields['unsearchable'] = $hide; $condition = ['uid' => 0, 'nurl' => Strings::normaliseLink($contact_old['url'])]; DBA::update('contact', $fields, $condition, true); @@ -2177,7 +2177,7 @@ class DFRN if (($entrytype == DFRN::TOP_LEVEL) && !empty($importer['id'])) { // The filling of the the "contact" variable is done for legcy reasons // The functions below are partly used by ostatus.php as well - where we have this variable - $contact = Contact::select([], ['id' => $importer['id']]); + $contact = Contact::selectFirst([], ['id' => $importer['id']]); // Big question: Do we need these functions? They were part of the "consume_feed" function. // This function once was responsible for DFRN and OStatus. @@ -3042,4 +3042,19 @@ class DFRN return (strcmp($existing_edited, $update_edited) < 0); } + + /** + * Checks if the given contact url does support DFRN + * + * @param string $url profile url + * @param boolean $update Update the profile + * @return boolean + * @throws \Friendica\Network\HTTPException\InternalServerErrorException + * @throws \ImagickException + */ + public static function isSupportedByContactUrl($url, $update = false) + { + $probe = Probe::uri($url, Protocol::DFRN, 0, !$update); + return $probe['network'] == Protocol::DFRN; + } }