aboutsummaryrefslogtreecommitdiffstats
path: root/include/session.php
diff options
context:
space:
mode:
Diffstat (limited to 'include/session.php')
-rw-r--r--include/session.php32
1 files changed, 32 insertions, 0 deletions
diff --git a/include/session.php b/include/session.php
index 43bba528b..6060e4712 100644
--- a/include/session.php
+++ b/include/session.php
@@ -12,6 +12,38 @@
$session_exists = 0;
$session_expire = 180000;
+
+/**
+ * @brief Resets the current session.
+ *
+ * @return void
+ */
+
+function nuke_session() {
+ new_cookie(0); // 0 means delete on browser exit
+
+ unset($_SESSION['authenticated']);
+ unset($_SESSION['account_id']);
+ unset($_SESSION['uid']);
+ unset($_SESSION['visitor_id']);
+ unset($_SESSION['administrator']);
+ unset($_SESSION['cid']);
+ unset($_SESSION['theme']);
+ unset($_SESSION['mobile_theme']);
+ unset($_SESSION['show_mobile']);
+ unset($_SESSION['page_flags']);
+ unset($_SESSION['delegate']);
+ unset($_SESSION['delegate_channel']);
+ unset($_SESSION['my_url']);
+ unset($_SESSION['my_address']);
+ unset($_SESSION['addr']);
+ unset($_SESSION['return_url']);
+ unset($_SESSION['remote_service_class']);
+ unset($_SESSION['remote_hub']);
+}
+
+
+
function new_cookie($time) {
$old_sid = session_id();