
















共有 2 个文件被更改,包括 6 次插入 和 22 次删除
@ -20,7 +20,9 @@ class IndieAuthController extends \Schmarty\Micropubkit\IndieAuthController {
|
||||
return $this->error_redirect('missing_url', 'Website URL is required');
|
||||
}
|
||||
|
||||
list($authorizationURL, $error) = \IndieAuth\Client::begin($params['me'], $this->scopes);
|
||||
$url = \IndieAuth\Client::normalizeMeURL($params['me']);
|
||||
|
||||
list($authorizationURL, $error) = \IndieAuth\Client::begin($url, $this->scopes);
|
||||
|
||||
if($error) {
|
||||
// use indielogin instead
|
||||
@ -30,20 +32,15 @@ class IndieAuthController extends \Schmarty\Micropubkit\IndieAuthController {
|
||||
$codeVerifier = \IndieAuth\Client::generatePKCECodeVerifier();
|
||||
|
||||
// set up session info so \IndieAuth\Client can find it later
|
||||
$_SESSION['indieauth_entered_url'] = $params['me'];
|
||||
$_SESSION['indieauth_entered_url'] = $url;
|
||||
$_SESSION['indieauth_state'] = $state;
|
||||
$_SESSION['indieauth_code_verifier'] = $codeVerifier;
|
||||
$_SESSION['indieauth_authorization_endpoint'] = 'https://indielogin.com/auth';
|
||||
|
||||
// HACK 2024-08-25: indielogin.com maybe only has our old client_id
|
||||
$clientId = \IndieAuth\Client::$clientID;
|
||||
$u = parse_url($clientId);
|
||||
\IndieAuth\Client::$clientID = $u['scheme'] . '://' . $u['host'] . '/';
|
||||
|
||||
$authorizationURL = \IndieAuth\Client::buildAuthorizationURL(
|
||||
"https://indielogin.com/auth",
|
||||
[
|
||||
'me' => $params['me'],
|
||||
'me' => $url,
|
||||
'redirect_uri' => \IndieAuth\Client::$redirectURL,
|
||||
'client_id' => \IndieAuth\Client::$clientID,
|
||||
'code_verifier' => $codeVerifier,
|
||||
@ -56,17 +53,4 @@ class IndieAuthController extends \Schmarty\Micropubkit\IndieAuthController {
|
||||
return $this->response->withHeader('Location', $authorizationURL)->withStatus(302);
|
||||
}
|
||||
|
||||
// FIXME: remove this once indielogin.com allows https://xn--sr8hvo.ws/auth/id client ID
|
||||
public function login_callback(ServerRequestInterface $request): ResponseInterface {
|
||||
if ($_SESSION['indieauth_authorization_endpoint'] === 'https://indielogin.com/auth')
|
||||
{
|
||||
// HACK 2024-08-25: indielogin.com maybe only has our old client_id
|
||||
$clientId = \IndieAuth\Client::$clientID;
|
||||
$u = parse_url($clientId);
|
||||
\IndieAuth\Client::$clientID = $u['scheme'] . '://' . $u['host'] . '/';
|
||||
}
|
||||
|
||||
return parent::login_callback($request);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -9,7 +9,7 @@ use Monolog\Handler\StreamHandler;
|
||||
|
||||
// set up logger
|
||||
$logDest = getenv('LOGFILE');
|
||||
$logDest = $logDest ? $logDest : 'php://stdin';
|
||||
$logDest = $logDest ? $logDest : 'php://stdout';
|
||||
$logger = new Logger('🕸️💍✀🌿');
|
||||
$logger->pushHandler(new StreamHandler($logDest));
|
||||
|
||||
|
||||
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。