X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fredir.php;h=eb9702b0415a31525b5d0e68f691f68f0c207a1a;hb=bcb672e7ff859168b639ffffc38553bbcf7e918c;hp=cc58b9cd126ed73d10679564b7d1beb6856fa5b0;hpb=e241c401cf21108f39f67e54f64f50ad139af221;p=friendica.git diff --git a/mod/redir.php b/mod/redir.php index cc58b9cd12..eb9702b041 100644 --- a/mod/redir.php +++ b/mod/redir.php @@ -3,16 +3,17 @@ function redir_init(&$a) { if((! local_user()) || (! ($a->argc == 2)) || (! intval($a->argv[1]))) - goaway($a->get_baseurl()); + goaway(z_root()); $cid = $a->argv[1]; + $url = ((x($_GET,'url')) ? $_GET['url'] : ''); - $r = q("SELECT `network`, `issued-id`, `dfrn-id`, `duplex`, `poll` FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", + $r = q("SELECT * FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", intval($cid), intval(local_user()) ); if((! count($r)) || ($r[0]['network'] !== 'dfrn')) - goaway($a->get_baseurl()); + goaway(z_root()); $dfrn_id = $orig_id = (($r[0]['issued-id']) ? $r[0]['issued-id'] : $r[0]['dfrn-id']); @@ -36,8 +37,9 @@ function redir_init(&$a) { intval(time() + 45) ); + logger('mod_redir: ' . $r[0]['name'] . ' ' . $sec, LOGGER_DEBUG); + $dest = (($url) ? '&destination_url=' . $url : ''); goaway ($r[0]['poll'] . '?dfrn_id=' . $dfrn_id -// . '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&type=profile'); - . '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&type=profile&sec=' . $sec); + . '&dfrn_version=' . DFRN_PROTOCOL_VERSION . '&type=profile&sec=' . $sec . $dest ); }