mirror of
https://codeberg.org/streams/streams.git
synced 2024-09-20 02:35:12 +00:00
connect issue and pubstream localhost delivery issue
This commit is contained in:
parent
95dd75e813
commit
e07a92a4d5
2 changed files with 28 additions and 3 deletions
|
@ -534,7 +534,31 @@ class Notifier {
|
|||
where hubloc_hash in (" . protect_sprintf(implode(',',self::$recipients)) . ")
|
||||
and hubloc_error = 0 and hubloc_deleted = 0 and ( site_dead = 0 OR site_dead is null ) "
|
||||
);
|
||||
|
||||
|
||||
// public posts won't make it to the local public stream unless there's a recipient on this site.
|
||||
// This code block sees if it's a public post and localhost is missing, and if so adds an entry for the local sys channel to the $hubs list
|
||||
|
||||
if (! self::$private) {
|
||||
$found_localhost = false;
|
||||
if ($hubs) {
|
||||
foreach ($hubs as $h) {
|
||||
if ($h['hubloc_url'] === z_root()) {
|
||||
$found_localhost = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (! $found_localhost) {
|
||||
$localhub = q("select hubloc.*, site.site_crypto, site.site_flags from hubloc left join site on site_url = hubloc_url
|
||||
where hubloc_id_url = '%s' and hubloc_error = 0 and hubloc_deleted = 0 and ( site_dead = 0 OR site_dead is null ) ",
|
||||
dbesc(z_root() . '/channel/sys')
|
||||
);
|
||||
if ($localhub) {
|
||||
$hubs = array_merge($hubs,$localhub);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (! $hubs) {
|
||||
logger('notifier: no hubs', LOGGER_NORMAL, LOG_NOTICE);
|
||||
return;
|
||||
|
|
|
@ -34,6 +34,8 @@ class Connect {
|
|||
$my_perms = false;
|
||||
$protocol = '';
|
||||
|
||||
$ap_allowed = get_config('system','activitypub',true) && get_pconfig($uid,'system','activitypub',true);
|
||||
|
||||
if (substr($url,0,1) === '[') {
|
||||
$x = strpos($url,']');
|
||||
if ($x) {
|
||||
|
@ -85,7 +87,7 @@ class Connect {
|
|||
// Some Hubzilla records were originally stored as activitypub. If we find one, force rediscovery
|
||||
// since Zap cannot connect with them.
|
||||
|
||||
if ($r['xchan_network'] === 'activitypub' && ! get_config('system','activitypub',true)) {
|
||||
if (($r['xchan_network'] === 'activitypub') && (! $ap_allowed)) {
|
||||
$r = null;
|
||||
}
|
||||
}
|
||||
|
@ -145,7 +147,6 @@ class Connect {
|
|||
|
||||
}
|
||||
|
||||
$ap_allowed = get_config('system','activitypub',true) && get_pconfig($uid,'system','activitypub',true);
|
||||
|
||||
if ($r['xchan_network'] === 'activitypub') {
|
||||
if (! $ap_allowed) {
|
||||
|
|
Loading…
Reference in a new issue