Merge branch 'z6_discover_fixes' into 'dev'
fix various issues in z6_discover() and add zot6 hubloc creation on channel import See merge request hubzilla/core!1575
This commit is contained in:
commit
7d392e5adb
@ -228,13 +228,45 @@ class Import extends \Zotlabs\Web\Controller {
|
|||||||
);
|
);
|
||||||
|
|
||||||
// reset the original primary hubloc if it is being seized
|
// reset the original primary hubloc if it is being seized
|
||||||
|
|
||||||
if($seize) {
|
if($seize) {
|
||||||
$r = q("update hubloc set hubloc_primary = 0 where hubloc_primary = 1 and hubloc_hash = '%s' and hubloc_url != '%s' ",
|
$r = q("update hubloc set hubloc_primary = 0 where hubloc_primary = 1 and hubloc_hash = '%s' and hubloc_url != '%s' ",
|
||||||
dbesc($channel['channel_hash']),
|
dbesc($channel['channel_hash']),
|
||||||
dbesc(z_root())
|
dbesc(z_root())
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// create a new zot6 hubloc if we have got a channel_portable_id
|
||||||
|
if($channel['channel_portable_id']) {
|
||||||
|
$r = hubloc_store_lowlevel(
|
||||||
|
[
|
||||||
|
'hubloc_guid' => $channel['channel_guid'],
|
||||||
|
'hubloc_guid_sig' => 'sha256.' . $channel['channel_guid_sig'],
|
||||||
|
'hubloc_hash' => $channel['channel_portable_id'],
|
||||||
|
'hubloc_addr' => channel_reddress($channel),
|
||||||
|
'hubloc_network' => 'zot6',
|
||||||
|
'hubloc_primary' => (($seize) ? 1 : 0),
|
||||||
|
'hubloc_url' => z_root(),
|
||||||
|
'hubloc_url_sig' => 'sha256.' . base64url_encode(rsa_sign(z_root(),$channel['channel_prvkey'])),
|
||||||
|
'hubloc_host' => \App::get_hostname(),
|
||||||
|
'hubloc_callback' => z_root() . '/zot',
|
||||||
|
'hubloc_sitekey' => get_config('system','pubkey'),
|
||||||
|
'hubloc_updated' => datetime_convert(),
|
||||||
|
'hubloc_id_url' => channel_url($channel),
|
||||||
|
'hubloc_site_id' => Libzot::make_xchan_hash(z_root(),get_config('system','pubkey'))
|
||||||
|
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
// reset the original primary hubloc if it is being seized
|
||||||
|
if($seize) {
|
||||||
|
$r = q("update hubloc set hubloc_primary = 0 where hubloc_primary = 1 and hubloc_hash = '%s' and hubloc_url != '%s' ",
|
||||||
|
dbesc($channel['channel_portable_id']),
|
||||||
|
dbesc(z_root())
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
logger('import step 5');
|
logger('import step 5');
|
||||||
|
@ -311,7 +311,9 @@ function z6_discover() {
|
|||||||
|
|
||||||
// find unregistered zot6 clone hublocs
|
// find unregistered zot6 clone hublocs
|
||||||
|
|
||||||
$c = q("select channel_hash, channel_portable_id from channel where channel_deleted = 0");
|
$c = q("select channel_hash, channel_portable_id from channel where channel_deleted = '%s'",
|
||||||
|
dbesc(NULL_DATE)
|
||||||
|
);
|
||||||
if ($c) {
|
if ($c) {
|
||||||
foreach ($c as $entry) {
|
foreach ($c as $entry) {
|
||||||
$q1 = q("select * from hubloc left join site on hubloc_url = site_url where hubloc_deleted = 0 and site_dead = 0 and hubloc_hash = '%s' and hubloc_url != '%s'",
|
$q1 = q("select * from hubloc left join site on hubloc_url = site_url where hubloc_deleted = 0 and site_dead = 0 and hubloc_hash = '%s' and hubloc_url != '%s'",
|
||||||
@ -325,16 +327,16 @@ function z6_discover() {
|
|||||||
// does this particular server have a zot6 clone registered on our site for this channel?
|
// does this particular server have a zot6 clone registered on our site for this channel?
|
||||||
foreach ($q1 as $q) {
|
foreach ($q1 as $q) {
|
||||||
$q2 = q("select * from hubloc left join site on hubloc_url = site_url where hubloc_deleted = 0 and site_dead = 0 and hubloc_hash = '%s' and hubloc_url = '%s'",
|
$q2 = q("select * from hubloc left join site on hubloc_url = site_url where hubloc_deleted = 0 and site_dead = 0 and hubloc_hash = '%s' and hubloc_url = '%s'",
|
||||||
dbesc($entry['portable_id']),
|
dbesc($entry['channel_portable_id']),
|
||||||
dbesc($q['hubloc_url'])
|
dbesc($q['hubloc_url'])
|
||||||
);
|
);
|
||||||
if ($q2) {
|
if ($q2) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
// zot6 hubloc not found.
|
// zot6 hubloc not found.
|
||||||
if(strpos($entry['site_project'],'hubzilla') !== false && version_compare($entry['site_version'],'4.0') >= 0) {
|
if(strpos($q['site_project'],'hubzilla') !== false && version_compare($q['site_version'],'4.0') >= 0) {
|
||||||
// probe and store results - only for zot6 (over-ride the zot default)
|
// probe and store results - only for zot6 (over-ride the zot default)
|
||||||
discover_by_webbie($entry['hubloc_addr'],'zot6');
|
discover_by_webbie($q['hubloc_addr'],'zot6');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user