aboutsummaryrefslogtreecommitdiffstats
path: root/include/hubloc.php
diff options
context:
space:
mode:
authorzotlabs <mike@macgirvin.com>2019-03-13 16:27:52 -0700
committerzotlabs <mike@macgirvin.com>2019-03-13 16:27:52 -0700
commita5a5ac60ba626b0d863627e5f0144afbbaeb8e66 (patch)
tree53b620568ef7a967a8952347cd0bd9b0585bccb1 /include/hubloc.php
parent30f71ad63292c52d037946ad92c9a8a0940ff0c1 (diff)
downloadvolse-hubzilla-a5a5ac60ba626b0d863627e5f0144afbbaeb8e66.tar.gz
volse-hubzilla-a5a5ac60ba626b0d863627e5f0144afbbaeb8e66.tar.bz2
volse-hubzilla-a5a5ac60ba626b0d863627e5f0144afbbaeb8e66.zip
find unregistered z6 clones on hubzilla sites (does not happen automatically since z6 is not the default protocol on hubzilla). This will need to be pushed to master for the next point release.
Diffstat (limited to 'include/hubloc.php')
-rw-r--r--include/hubloc.php36
1 files changed, 36 insertions, 0 deletions
diff --git a/include/hubloc.php b/include/hubloc.php
index b2903b0ee..7cb00f788 100644
--- a/include/hubloc.php
+++ b/include/hubloc.php
@@ -305,3 +305,39 @@ function ping_site($url) {
return $ret;
}
+
+
+function z6_discover() {
+
+ // find unregistered zot6 clone hublocs
+
+ $c = q("select channel_hash, portable_id from channel where channel_deleted = 0");
+ if ($c) {
+ 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'",
+ dbesc($entry['channel_hash']),
+ dbesc(z_root())
+ );
+ if (! $q1) {
+ // channel has no zot clones
+ continue;
+ }
+ // does this particular server have a zot6 clone registered on our site for this channel?
+ 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'",
+ dbesc($entry['portable_id']),
+ dbesc($q['hubloc_url'])
+ );
+ if ($q2) {
+ continue;
+ }
+ // zot6 hubloc not found.
+ if(strpos($entry['site_project'],'hubzilla') !== false && version_compare($entry['site_version'],'4.0') >= 0) {
+ // probe and store results - only for zot6 (over-ride the zot default)
+ discover_by_webbie($entry['hubloc_addr'],'zot6');
+ }
+ }
+ }
+ }
+
+} \ No newline at end of file