$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
menu
Primary Navigation Menu
Study
add
Student Life
add
International
add
Research
add
About
add
Logout
search
Switch search type
Site search
sync_alt
Course search
"I strongly suggest understanding Cloud Computing. It’s extremely in demand for business."
How did your degree at the University of Chester prepare you for your current role?
When studying the theory side of computer science, I never thought it would be useful. Since working, my perspective has changed, as having a good understanding of systems development and project management is key for the industry and is widely recognised.
I thought I would be going into a developer role but when I found my job I fell in love. I can work with customers and code, fix bugs in systems and not be expected to sit at a desk all day but instead get to travel plus work from home.