} if (!is_string($config['redirect_uri']) || !filter_var($config['redirect_uri'], FILTER_VALIDATE_URL)) { ob_end_clean(); header($_SERVER['SERVER_PROTOCOL'] . ' 500 Internal Server Error (invalid redirect_uri)'); die('Bad config: redirect_uri'); } if (!is_string($config['admin_redirect_uri']) || !filter_var($config['admin_redirect_uri'], FILTER_VALIDATE_URL)) { ob_end_clean(); header($_SERVER['SERVER_PROTOCOL'] . ' 500 Internal Server Error (invalid admin_redirect_uri)'); die('Bad config: admin_redirect_uri'); } try { $main = new MainController($_REQUEST, $config['client_id'], $config['client_secret'], $config['redirect_uri'], $config['admin_redirect_uri'], isset($_SESSION['access_token']) ? $_SESSION['access_token'] : null, $startTime, null, null, null, null, null, isset($_SESSION['webapp']) ? $_SESSION['webapp'] : false, $debug); $out = $main->process(); // on token expiration/revocation/refreshing this should reset the token $_SESSION['access_token'] = $main->getAccessToken(); if (isset($out['loginSuccess']) && $out['loginSuccess'] && isset($_SESSION['webapp']) && $_SESSION['webapp']) { header('Location: webapp/index.php'); exit; } if (isset($out['logoutSuccess']) && $out['logoutSuccess'] && isset($_SESSION['webapp']) && $_SESSION['webapp']) { header('Location: main.php?collection=user&action=login'); exit; } if (isset($out['html'])) { echo $out['html']; } else { echo json_encode($out); } } catch (Exception $e) { // on token expiration/revocation/refreshing this should reset the token