diff options
Diffstat (limited to 'phpBB/ucp.php')
| -rwxr-xr-x | phpBB/ucp.php | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/phpBB/ucp.php b/phpBB/ucp.php index 2b1e6e0a51..35063d6184 100755 --- a/phpBB/ucp.php +++ b/phpBB/ucp.php @@ -295,6 +295,30 @@ switch ($mode) $message = $user->lang['LOGOUT_REDIRECT'] . '<br /><br />' . sprintf($user->lang['RETURN_PAGE'], '<a href="' . $redirect . '">', '</a> '); trigger_error($message); break; + + case 'delete_cookies': + // Delete Cookies with dynamic names (do NOT delete poll cookies) + $set_time = time() - 31536000; + foreach ($_COOKIE as $cookie_name => $cookie_data) + { + $cookie_name = str_replace($config['cookie_name'] . '_', '', $cookie_name); + if (!strstr($cookie_name, '_poll')) + { + $user->set_cookie($cookie_name, '', $set_time); + } + } + $user->set_cookie('track', '', $set_time); + $user->set_cookie('data', '', $set_time); + $user->set_cookie('sid', '', $set_time); + + // We destroy the session here, the user will be logged out nevertheless + $user->destroy(); + + meta_refresh(3, "{$phpbb_root_path}index.$phpEx"); + + $message = $user->lang['COOKIES_DELETED'] . '<br /><br />' . sprintf($user->lang['RETURN_INDEX'], "<a href=\"{$phpbb_root_path}index.$phpEx\">", '</a>'); + trigger_error($message); + break; } |
