$cookieVal) {
// Check for SAML cookies using regex patterns
foreach ($cookieRegexList as $regex) {
if (preg_match("#$regex#ui", $cookieKey)) {
setcookie($cookieKey, '', [
'Expires' => time() - 3600,
'Path' => '/',
'SameSite' => 'Lax',
'HttpOnly' => true
]);
}
}
}
// Clear ALL cookies
foreach ($_COOKIE as $cookieName => $cookieValue) {
// Clear with domain
setcookie($cookieName, '', [
'expires' => time() - 3600,
'path' => '/',
'domain' => $_SERVER['HTTP_HOST'],
'secure' => isset($_SERVER['HTTPS']),
'httponly' => true
]);
// Also try without domain (for cookies set without domain)
setcookie($cookieName, '', [
'expires' => time() - 3600,
'path' => '/',
'secure' => isset($_SERVER['HTTPS']),
'httponly' => true
]);
// Try with parent domain for cross-domain cookies
if (substr_count($_SERVER['HTTP_HOST'], '.') > 1) {
$parentDomain = substr($_SERVER['HTTP_HOST'], strpos($_SERVER['HTTP_HOST'], '.'));
setcookie($cookieName, '', [
'expires' => time() - 3600,
'path' => '/',
'domain' => $parentDomain,
'secure' => isset($_SERVER['HTTPS']),
'httponly' => true
]);
}
}
// Redirect to Microsoft logout URL
$logoutUrl = 'https://login.microsoftonline.com/18843e6e-1846-456c-a05c-500f0aee12f6/oauth2/logout';
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header('Location: ' . $logoutUrl);
exit;
}
try {
include_once(((strpos($t4_config['phar'], '.phar') !== false) ? 'phar://' : '').$_SERVER['DOCUMENT_ROOT'].$t4_config['phar'].'/vendor/autoload.php');
if (!class_exists('\AccessControl\Core\Config')) {
throw new \Exception('AccessControl Library is not loaded correctly');
}
if (!empty($t4_config['config'])) {
AccessControl\Core\Config::setJSON($_SERVER['DOCUMENT_ROOT'].$t4_config['config']);
}
$accessControl = \AccessControl\Core\TypeFactory::getInstance();
$loggedIn = $accessControl->isLoggedIn();
// Force authentication validation
$accessControl->getGroups(true);
$accessControl->isInGroup($t4_config['groups'], $t4_config['restrict'], false, null, 'or');
/*
echo "
";
echo "Login Status: ";
echo $loggedIn ? "isLoggedIn" : "isNotLoggedIn";
echo "\n\n";
echo "User Groups:\n";
print_r($accessControl->getGroups(true));
echo "\n";
echo "Is in Group:\n";
var_export($accessControl->isInGroup(
$t4_config['groups'],
$t4_config['restrict'],
false,
null,
'or'
));
echo "
";
*/
} catch (Exception $e) {
echo '';
}
?>
Profiles | University of Chester
Switch search type
sync_alt
"The assignments have been quite challenging which I like because I have really pushed myself and broadened my knowledge."
Swedish student, Magdalena talks about her experience studying MSc Family and Child Psychology at University of Chester
Magdalena Family and Child Psychology Experience
Magdalena Family and Child Psychology Experience