aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Zotlabs/Module/Connedit.php23
-rw-r--r--include/hubloc.php32
2 files changed, 35 insertions, 20 deletions
diff --git a/Zotlabs/Module/Connedit.php b/Zotlabs/Module/Connedit.php
index 8288886cd..e23a751d9 100644
--- a/Zotlabs/Module/Connedit.php
+++ b/Zotlabs/Module/Connedit.php
@@ -826,27 +826,10 @@ class Connedit extends \Zotlabs\Web\Controller {
}
}
- $locstr = '';
-
- $locs = q("select hubloc_addr as location from hubloc left join site on hubloc_url = site_url where hubloc_hash = '%s'
- and hubloc_deleted = 0 and site_dead = 0",
- dbesc($contact['xchan_hash'])
- );
-
- if($locs) {
- foreach($locs as $l) {
- if(!($l['location']))
- continue;
- if(strpos($locstr,$l['location']) !== false)
- continue;
- if(strlen($locstr))
- $locstr .= ', ';
- $locstr .= $l['location'];
- }
- }
- else
+ $locstr = locations_by_netid($contact['xchan_hash']);
+ if(! $locstr)
$locstr = $contact['xchan_url'];
-
+
$clone_warn = '';
$clonable = (in_array($contact['xchan_network'],['zot','rss']) ? true : false);
if(! $clonable) {
diff --git a/include/hubloc.php b/include/hubloc.php
index 0daa5908c..d5abda7fb 100644
--- a/include/hubloc.php
+++ b/include/hubloc.php
@@ -257,6 +257,38 @@ function hubloc_mark_as_down($posturl) {
}
+/**
+ * @brief return comma separated string of non-dead clone locations (net addresses) for a given netid
+ *
+ * @param string $netid network identity (typically xchan_hash or hubloc_hash)
+ * @return string
+ */
+
+function locations_by_netid($netid) {
+
+ $strloc = '';
+
+ $locs = q("select hubloc_addr as location from hubloc left join site on hubloc_url = site_url where hubloc_hash = '%s' and hubloc_deleted = 0 and site_dead = 0",
+ dbesc($netid)
+ );
+
+ if($locs) {
+ foreach($locs as $l) {
+ if(!($l['location']))
+ continue;
+ if(strpos($strloc,$l['location']) !== false)
+ continue;
+ if(strlen($strloc))
+ $strloc .= ', ';
+ $strloc .= $l['location'];
+ }
+ }
+
+ return $strloc;
+
+}
+
+
function ping_site($url) {