<?php
// Dependências
// composer.json
// {
//     "require": {
//         "jumbojett/openid-connect-php": "^1.0"
//     }
// }
//
session_start();
require 'vendor/autoload.php';

$CONSUMER_KEY = "CONSUMER_KEY";
$CONSUMER_SECRET = "CONSUMER_SECRET";
$SCOPES_ARRAY = ["profile", "email"];

$oidc = new Jumbojett\OpenIDConnectClient(
    'https://id.sapo.pt/',
    $CONSUMER_KEY,
    $CONSUMER_SECRET
);

$oidc->addScope($SCOPES_ARRAY);
$oidc->setCodeChallengeMethod('S256');

if ($oidc->authenticate()) {
    echo "Authenticated" . "<br>";

    // We have an access token, which we may use in authenticated
    // requests against the service provider's API.
    echo 'Access Token: ' . $oidc->getAccessToken() . "<br>";
    echo 'Refresh Token: ' . $oidc->getRefreshToken() . "<br>";
    echo 'Id Token: ' . $oidc->getIdToken() . "<br>";
    var_export($oidc->getVerifiedClaims());
}
?>
