Exemple #1
0
if (isset($_POST['mode'])) {
    switch ($_POST['mode']) {
        case 'allow':
            $OAuth2->add_access($client['id']);
            break;
        default:
            header('Location: ' . http_build_url(urldecode($redirect_uri), ['error' => 'access_denied', 'error_description' => 'User denied access', 'state' => isset($_GET['state']) ? $_GET['state'] : false]), true, 302);
            $Page->Content = '';
            $Index->stop = true;
            return;
    }
}
if (!$OAuth2->get_access($client['id'])) {
    $Index->form = true;
    $Index->buttons = false;
    $Page->success($L->client_want_access_your_account($client['name']));
    $Index->action = $Config->base_url() . '/' . $Config->server['raw_relative_address'];
    $Index->post_buttons = h::{'button[type=submit][name=mode][value=allow]'}($L->allow) . h::{'button[type=submit][mode=mode][value=deny]'}($L->deny);
} else {
    $code = $OAuth2->add_code($client['id'], $_GET['response_type'], $redirect_uri);
    if (!$code) {
        header('Location: ' . http_build_url(urldecode($redirect_uri), ['error' => 'server_error', 'error_description' => "Server can't generate code, try later", 'state' => isset($_GET['state']) ? $_GET['state'] : false]), true, 302);
        $Page->Content = '';
        $Index->stop = true;
        return;
    }
    switch ($_GET['response_type']) {
        case 'code':
            header('Location: ' . http_build_url(urldecode($redirect_uri), ['code' => $code, 'state' => isset($_GET['state']) ? $_GET['state'] : false]), true, 302);
            $Page->Content = '';
            $Index->stop = true;