belt and braces: reset the template cookie, if function is not enabled

This commit is contained in:
El RIDO
2025-11-10 12:25:19 +01:00
parent 4ac8ffa2a4
commit d1124382bc

View File

@@ -431,11 +431,15 @@ class Controller
setcookie('lang', $languageselection, array('SameSite' => 'Lax', 'Secure' => true));
}
// set template cookie if that functionality was enabled
// set template cookie if that functionality was enabled, otherwise delete any existing cookie
$templateselection = '';
if ($this->_conf->getKey('templateselection')) {
$templateselection = TemplateSwitcher::getTemplate();
setcookie('template', $templateselection, array('SameSite' => 'Lax', 'Secure' => true));
} elseif (array_key_exists('template', $_COOKIE)) {
unset($_COOKIE['template']); // ensure value is not re-used in template switcher
$expiredInAllTimezones = time() - 86400;
setcookie('template', '', array('expires' => $expiredInAllTimezones, 'SameSite' => 'Lax', 'Secure' => true));
}
// strip policies that are unsupported in meta tag