Example #1
0
        echo 'Invalid state';
        echo '<br><a href="/">Retry</a>';
        exit;
    } else {
        try {
            $token = $oauth->getAccessToken('authorization_code', ['code' => $_GET['code']]);
            $_SESSION['wrike_oauth2_state'] = $oauth->getState();
            $_SESSION['wrike_token'] = $token;
        } catch (IdentityProviderException $e) {
            // Failed to get the access token or user details.
            echo 'Error: ' . $e->getMessage();
        }
        header('Location: /');
        exit;
    }
}
if (!isset($_SESSION['wrike_token']) || !$_SESSION['wrike_token'] instanceof AccessToken) {
    authenticate($oauth);
} elseif ($_SESSION['wrike_token']->getExpires() < time()) {
    $token = $oauth->getAccessToken('refresh_token', ['refresh_token' => $_SESSION['wrike_token']->getRefreshToken()]);
    $_SESSION['wrike_token'] = $token;
} else {
    // Test an API call
    echo '<br><a href="/">Retry</a>';
    $client = new Wrike($_SESSION['wrike_token'], $oauth);
    var_dump($client->get_folder_tree());
}
function test_api_call()
{
    //new WrikeClient()
}