Merge pull request #7334 from annando/federated-protocol

New constant for federated protocols
This commit is contained in:
Hypolite Petovan 2019-07-01 21:52:55 -04:00 committed by GitHub
commit a248da8f2e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 28 additions and 27 deletions

View File

@ -584,7 +584,7 @@ function conversation(App $a, array $items, Pager $pager, $mode, $update, $previ
if (in_array($mode, ['community', 'contacts'])) { if (in_array($mode, ['community', 'contacts'])) {
$writable = true; $writable = true;
} else { } else {
$writable = ($items[0]['uid'] == 0) && in_array($items[0]['network'], [Protocol::ACTIVITYPUB, Protocol::OSTATUS, Protocol::DIASPORA, Protocol::DFRN]); $writable = ($items[0]['uid'] == 0) && in_array($items[0]['network'], Protocol::FEDERATED);
} }
if (!local_user()) { if (!local_user()) {
@ -872,7 +872,7 @@ function conversation_add_children(array $parents, $block_authors, $order, $uid)
foreach ($items as $index => $item) { foreach ($items as $index => $item) {
if ($item['uid'] == 0) { if ($item['uid'] == 0) {
$items[$index]['writable'] = in_array($item['network'], [Protocol::ACTIVITYPUB, Protocol::OSTATUS, Protocol::DIASPORA, Protocol::DFRN]); $items[$index]['writable'] = in_array($item['network'], Protocol::FEDERATED);
} }
} }
@ -931,7 +931,7 @@ function item_photo_menu($item) {
$contact_url = 'contact/' . $cid; $contact_url = 'contact/' . $cid;
$posts_link = 'contact/' . $cid . '/posts'; $posts_link = 'contact/' . $cid . '/posts';
if (in_array($network, [Protocol::DFRN, Protocol::DIASPORA])) { if (in_array($network, [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA])) {
$pm_url = 'message/new/' . $cid; $pm_url = 'message/new/' . $cid;
} }
} }
@ -954,7 +954,7 @@ function item_photo_menu($item) {
} }
if ((($cid == 0) || ($rel == Contact::FOLLOWER)) && if ((($cid == 0) || ($rel == Contact::FOLLOWER)) &&
in_array($item['network'], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::OSTATUS, Protocol::DIASPORA])) { in_array($item['network'], Protocol::FEDERATED)) {
$menu[L10n::t('Connect/Follow')] = 'follow?url=' . urlencode($item['author-link']); $menu[L10n::t('Connect/Follow')] = 'follow?url=' . urlencode($item['author-link']);
} }
} else { } else {

View File

@ -132,7 +132,7 @@ function crepair_content(App $a)
$remote_self_options = ['0' => L10n::t('No mirroring'), '2' => L10n::t('Mirror as my own posting')]; $remote_self_options = ['0' => L10n::t('No mirroring'), '2' => L10n::t('Mirror as my own posting')];
} }
$update_profile = in_array($contact['network'], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS]); $update_profile = in_array($contact['network'], Protocol::FEDERATED);
$tab_str = Module\Contact::getTabsHTML($a, $contact, 5); $tab_str = Module\Contact::getTabsHTML($a, $contact, 5);

View File

@ -163,7 +163,7 @@ function item_post(App $a) {
} }
// Allow commenting if it is an answer to a public post // Allow commenting if it is an answer to a public post
$allow_comment = local_user() && ($profile_uid == 0) && $toplevel_item_id && in_array($toplevel_item['network'], [Protocol::ACTIVITYPUB, Protocol::OSTATUS, Protocol::DIASPORA, Protocol::DFRN]); $allow_comment = local_user() && ($profile_uid == 0) && $toplevel_item_id && in_array($toplevel_item['network'], Protocol::FEDERATED);
// Now check that valid personal details have been provided // Now check that valid personal details have been provided
if (!Security::canWriteToUserWall($profile_uid) && !$allow_comment) { if (!Security::canWriteToUserWall($profile_uid) && !$allow_comment) {

View File

@ -105,7 +105,7 @@ class ContactSelector
$networkname = str_replace($search, $replace, $network); $networkname = str_replace($search, $replace, $network);
if ((in_array($network, [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS])) && ($profile != "")) { if ((in_array($network, Protocol::FEDERATED)) && ($profile != "")) {
// Create the server url out of the profile url // Create the server url out of the profile url
$parts = parse_url($profile); $parts = parse_url($profile);
unset($parts['path']); unset($parts['path']);

View File

@ -75,7 +75,7 @@ class ContactBlock
'hidden' => false, 'hidden' => false,
'archive' => false, 'archive' => false,
'rel' => $rel, 'rel' => $rel,
'network' => [Protocol::DFRN, Protocol::ACTIVITYPUB, Protocol::OSTATUS, Protocol::DIASPORA], 'network' => Protocol::FEDERATED,
], ['limit' => $shown]); ], ['limit' => $shown]);
if (DBA::isResult($contact_ids_stmt)) { if (DBA::isResult($contact_ids_stmt)) {

View File

@ -23,6 +23,8 @@ class Protocol
const NATIVE_SUPPORT = [self::DFRN, self::DIASPORA, self::OSTATUS, self::FEED, self::MAIL, self::ACTIVITYPUB]; const NATIVE_SUPPORT = [self::DFRN, self::DIASPORA, self::OSTATUS, self::FEED, self::MAIL, self::ACTIVITYPUB];
const FEDERATED = [self::DFRN, self::DIASPORA, self::OSTATUS, self::ACTIVITYPUB];
// Supported through a connector // Supported through a connector
const DIASPORA2 = 'dspc'; // Diaspora connector const DIASPORA2 = 'dspc'; // Diaspora connector
const LINKEDIN = 'lnkd'; // LinkedIn const LINKEDIN = 'lnkd'; // LinkedIn

View File

@ -49,7 +49,7 @@ class Search extends BaseObject
return $emptyResultList; return $emptyResultList;
} }
if (!(in_array($user_data["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::OSTATUS, Protocol::DIASPORA]))) { if (!(in_array($user_data["network"], Protocol::FEDERATED))) {
return $emptyResultList; return $emptyResultList;
} }

View File

@ -963,7 +963,7 @@ class Contact extends BaseObject
} }
if ((empty($profile["addr"]) || empty($profile["name"])) && (defaults($profile, "gid", 0) != 0) if ((empty($profile["addr"]) || empty($profile["name"])) && (defaults($profile, "gid", 0) != 0)
&& in_array($profile["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS]) && in_array($profile["network"], Protocol::FEDERATED)
) { ) {
Worker::add(PRIORITY_LOW, "UpdateGContact", $profile["gid"]); Worker::add(PRIORITY_LOW, "UpdateGContact", $profile["gid"]);
} }
@ -1587,7 +1587,7 @@ class Contact extends BaseObject
return ''; return '';
} }
if (in_array($contact["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS, ""])) { if (empty($contact["network"]) || in_array($contact["network"], Protocol::FEDERATED)) {
$sql = "(`item`.`uid` = 0 OR (`item`.`uid` = ? AND NOT `item`.`global`))"; $sql = "(`item`.`uid` = 0 OR (`item`.`uid` = ? AND NOT `item`.`global`))";
} else { } else {
$sql = "`item`.`uid` = ?"; $sql = "`item`.`uid` = ?";
@ -1779,8 +1779,7 @@ class Contact extends BaseObject
self::markForArchival($contact); self::markForArchival($contact);
} }
$condition = ['self' => false, 'nurl' => Strings::normaliseLink($url), $condition = ['self' => false, 'nurl' => Strings::normaliseLink($url), 'network' => Protocol::FEDERATED];
'network' => [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS]];
// These contacts are sharing with us, we don't poll them. // These contacts are sharing with us, we don't poll them.
// This means that we don't set the update fields in "OnePoll.php". // This means that we don't set the update fields in "OnePoll.php".
@ -1878,7 +1877,7 @@ class Contact extends BaseObject
self::updateContact($id, $uid, $ret['url'], $ret); self::updateContact($id, $uid, $ret['url'], $ret);
// Update the corresponding gcontact entry // Update the corresponding gcontact entry
PortableContact::lastUpdated($ret["url"]); GContact::updateFromProbe($ret['url']);
return true; return true;
} }

View File

@ -177,7 +177,7 @@ class Item extends BaseObject
// We can always comment on posts from these networks // We can always comment on posts from these networks
if (array_key_exists('writable', $row) && if (array_key_exists('writable', $row) &&
in_array($row['internal-network'], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS])) { in_array($row['internal-network'], Protocol::FEDERATED)) {
$row['writable'] = true; $row['writable'] = true;
} }
@ -1354,7 +1354,7 @@ class Item extends BaseObject
* We have to check several networks since Friendica posts could be repeated * We have to check several networks since Friendica posts could be repeated
* via OStatus (maybe Diasporsa as well) * via OStatus (maybe Diasporsa as well)
*/ */
if (in_array($item['network'], [Protocol::ACTIVITYPUB, Protocol::DIASPORA, Protocol::DFRN, Protocol::OSTATUS, ""])) { if (empty($item['network']) || in_array($item['network'], Protocol::FEDERATED)) {
$condition = ["`uri` = ? AND `uid` = ? AND `network` IN (?, ?, ?)", $condition = ["`uri` = ? AND `uid` = ? AND `network` IN (?, ?, ?)",
trim($item['uri']), $item['uid'], trim($item['uri']), $item['uid'],
Protocol::DIASPORA, Protocol::DFRN, Protocol::OSTATUS]; Protocol::DIASPORA, Protocol::DFRN, Protocol::OSTATUS];
@ -2077,7 +2077,7 @@ class Item extends BaseObject
// Only distribute public items from native networks // Only distribute public items from native networks
$condition = ['id' => $itemid, 'uid' => 0, $condition = ['id' => $itemid, 'uid' => 0,
'network' => [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS, ""], 'network' => array_merge(Protocol::FEDERATED ,['']),
'visible' => true, 'deleted' => false, 'moderated' => false, 'private' => false]; 'visible' => true, 'deleted' => false, 'moderated' => false, 'private' => false];
$item = self::selectFirst(self::ITEM_FIELDLIST, $condition); $item = self::selectFirst(self::ITEM_FIELDLIST, $condition);
if (!DBA::isResult($item)) { if (!DBA::isResult($item)) {
@ -2233,7 +2233,7 @@ class Item extends BaseObject
} }
// is it an entry from a connector? Only add an entry for natively connected networks // is it an entry from a connector? Only add an entry for natively connected networks
if (!in_array($item["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS, ""])) { if (!in_array($item["network"], array_merge(Protocol::FEDERATED ,['']))) {
return; return;
} }

View File

@ -471,7 +471,7 @@ class Profile
'pending' => false, 'pending' => false,
'hidden' => false, 'hidden' => false,
'archive' => false, 'archive' => false,
'network' => [Protocol::DFRN, Protocol::ACTIVITYPUB, Protocol::OSTATUS, Protocol::DIASPORA], 'network' => Protocol::FEDERATED,
]); ]);
} }
} }

View File

@ -521,7 +521,7 @@ class Contact extends BaseModule
$relation_text = ''; $relation_text = '';
} }
if (!in_array($contact['network'], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::OSTATUS, Protocol::DIASPORA])) { if (!in_array($contact['network'], Protocol::FEDERATED)) {
$relation_text = ''; $relation_text = '';
} }
@ -968,7 +968,7 @@ class Contact extends BaseModule
$profiledata = Model\Contact::getDetailsByURL($contact['url']); $profiledata = Model\Contact::getDetailsByURL($contact['url']);
if (local_user() && in_array($profiledata['network'], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS])) { if (local_user() && in_array($profiledata['network'], Protocol::FEDERATED)) {
$profiledata['remoteconnect'] = System::baseUrl() . '/follow?url=' . urlencode($profiledata['url']); $profiledata['remoteconnect'] = System::baseUrl() . '/follow?url=' . urlencode($profiledata['url']);
} }

View File

@ -556,7 +556,7 @@ class Receiver
// Check if the potential receiver is following the actor // Check if the potential receiver is following the actor
// Exception: The receiver is targetted via "to" or this is a comment // Exception: The receiver is targetted via "to" or this is a comment
if ((($element != 'as:to') && empty($replyto)) || ($contact['contact-type'] == Contact::TYPE_COMMUNITY)) { if ((($element != 'as:to') && empty($replyto)) || ($contact['contact-type'] == Contact::TYPE_COMMUNITY)) {
$networks = [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS]; $networks = Protocol::FEDERATED;
$condition = ['nurl' => Strings::normaliseLink($actor), 'rel' => [Contact::SHARING, Contact::FRIEND], $condition = ['nurl' => Strings::normaliseLink($actor), 'rel' => [Contact::SHARING, Contact::FRIEND],
'network' => $networks, 'archive' => false, 'pending' => false, 'uid' => $contact['uid']]; 'network' => $networks, 'archive' => false, 'pending' => false, 'uid' => $contact['uid']];
@ -591,7 +591,7 @@ class Receiver
public static function getReceiverForActor($actor, $tags) public static function getReceiverForActor($actor, $tags)
{ {
$receivers = []; $receivers = [];
$networks = [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS]; $networks = Protocol::FEDERATED;
$condition = ['nurl' => Strings::normaliseLink($actor), 'rel' => [Contact::SHARING, Contact::FRIEND, Contact::FOLLOWER], $condition = ['nurl' => Strings::normaliseLink($actor), 'rel' => [Contact::SHARING, Contact::FRIEND, Contact::FOLLOWER],
'network' => $networks, 'archive' => false, 'pending' => false]; 'network' => $networks, 'archive' => false, 'pending' => false];
$contacts = DBA::select('contact', ['uid', 'rel'], $condition); $contacts = DBA::select('contact', ['uid', 'rel'], $condition);

View File

@ -358,7 +358,7 @@ class Transmitter
if (Config::get('debug', 'total_ap_delivery')) { if (Config::get('debug', 'total_ap_delivery')) {
// Will be activated in a later step // Will be activated in a later step
$networks = [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS]; $networks = Protocol::FEDERATED;
} else { } else {
// For now only send to these contacts: // For now only send to these contacts:
$networks = [Protocol::ACTIVITYPUB, Protocol::OSTATUS]; $networks = [Protocol::ACTIVITYPUB, Protocol::OSTATUS];
@ -530,7 +530,7 @@ class Transmitter
if (Config::get('debug', 'total_ap_delivery')) { if (Config::get('debug', 'total_ap_delivery')) {
// Will be activated in a later step // Will be activated in a later step
$networks = [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS]; $networks = Protocol::FEDERATED;
} else { } else {
// For now only send to these contacts: // For now only send to these contacts:
$networks = [Protocol::ACTIVITYPUB, Protocol::OSTATUS]; $networks = [Protocol::ACTIVITYPUB, Protocol::OSTATUS];

View File

@ -31,13 +31,13 @@ class UpdateGContact
return; return;
} }
if (!in_array($r[0]["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS])) { if (!in_array($r[0]["network"], Protocol::FEDERATED)) {
return; return;
} }
$data = Probe::uri($r[0]["url"]); $data = Probe::uri($r[0]["url"]);
if (!in_array($data["network"], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::DIASPORA, Protocol::OSTATUS])) { if (!in_array($data["network"], Protocol::FEDERATED)) {
if ($r[0]["server_url"] != "") { if ($r[0]["server_url"] != "") {
PortableContact::checkServer($r[0]["server_url"], $r[0]["network"]); PortableContact::checkServer($r[0]["server_url"], $r[0]["network"]);
} }