diff options
Diffstat (limited to 'mod')
-rw-r--r-- | mod/magic.php | 2 | ||||
-rw-r--r-- | mod/rmagic.php | 14 |
2 files changed, 11 insertions, 5 deletions
diff --git a/mod/magic.php b/mod/magic.php index 72fbe6dba..ba9e69a49 100644 --- a/mod/magic.php +++ b/mod/magic.php @@ -27,10 +27,12 @@ function magic_init(&$a) { $b = explode('/',$dest); if(count($b) >= 2) $u = $b[0] . '//' . $b[2]; + $x = q("select xchan.xchan_url, hubloc.* from xchan left join hubloc on xchan_hash = hubloc_hash where hubloc_url = '%s' limit 1", dbesc($u) ); + } diff --git a/mod/rmagic.php b/mod/rmagic.php index 445c8c917..910ccd40f 100644 --- a/mod/rmagic.php +++ b/mod/rmagic.php @@ -3,17 +3,21 @@ function rmagic_init(&$a) { + if(local_user()) + goaway(z_root()); + $me = get_my_address(); if($me) { $r = q("select hubloc_url from hubloc where hubloc_addr = '%s' limit 1", dbesc($me) ); if($r) { - $dest = z_root() . str_replace('zid=','zid_=',$get_app()->query_string); - goaway($r[0]['hubloc_url'] . '/magic' . '?f=&dest=' . z_root() . $dest); + if($r[0]['hubloc_url'] === z_root()) + goaway(z_root() . '/login'); + $dest = z_root() . '/' . str_replace('zid=','zid_=',$get_app()->query_string); + goaway($r[0]['hubloc_url'] . '/magic' . '?f=&dest=' . $dest); } } - } function rmagic_post(&$a) { @@ -38,8 +42,8 @@ function rmagic_post(&$a) { } if($url) { - $dest = z_root() . str_replace('zid=','zid_=',$a->query_string); - goaway($url . '/magic' . '?f=&dest=' . z_root() . $dest); + $dest = z_root() . '/' . str_replace('zid=','zid_=',$a->query_string); + goaway($url . '/magic' . '?f=&dest=' . $dest); } |