function get() { $auth_success = false; $o .= '<h3>Magic-Auth Diagnostic</h3>'; if (!local_channel()) { notice(t('Permission denied.') . EOL); return $o; } $o .= '<form action="authtest" method="get">'; $o .= 'Target URL: <input type="text" style="width: 250px;" name="dest" value="' . $_GET['dest'] . '" />'; $o .= '<input type="submit" name="submit" value="Submit" /></form>'; $o .= '<br /><br />'; if (x($_GET, 'dest')) { if (strpos($_GET['dest'], '@')) { $_GET['dest'] = $_REQUEST['dest'] = 'https://' . substr($_GET['dest'], strpos($_GET['dest'], '@') + 1) . '/channel/' . substr($_GET['dest'], 0, strpos($_GET['dest'], '@')); } $_REQUEST['test'] = 1; $mod = new Magic(); $x = $mod->init($a); $o .= 'Local Setup returns: ' . print_r($x, true); if ($x['url']) { $z = z_fetch_url($x['url'] . '&test=1'); if ($z['success']) { $j = json_decode($z['body'], true); if (!$j) { $o .= 'json_decode failure from remote site. ' . print_r($z['body'], true); } $o .= 'Remote site responded: ' . print_r($j, true); if ($j['success'] && strpos($j['message'], 'Authentication Success')) { $auth_success = true; } } else { $o .= 'fetch url failure.' . print_r($z, true); } } if (!$auth_success) { $o .= 'Authentication Failed!' . EOL; } } return str_replace("\n", '<br />', $o); }