From 06f066164f60fe0babbc7a480e6319a0702e0c46 Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Sun, 21 Jun 2009 15:09:32 -0700 Subject: Add Session::abort_save() to Kohana. Filed upstream as: http://dev.kohanaphp.com/issues/1801 --- system/libraries/Session.php | 13 +++++++++++++ system/libraries/drivers/Session/Database.php | 4 ++++ 2 files changed, 17 insertions(+) (limited to 'system') diff --git a/system/libraries/Session.php b/system/libraries/Session.php index e03f5dff..61a0d403 100644 --- a/system/libraries/Session.php +++ b/system/libraries/Session.php @@ -27,6 +27,9 @@ class Session_Core { // Input library protected $input; + // Automatically save the session by default + public static $should_save = true; + /** * Singleton instance of Session. */ @@ -455,4 +458,14 @@ class Session_Core { } } + /** + * Do not save this session. + * + * @return void + */ + public function abort_save() { + Session::$should_save = false; + + } + } // End Session Class diff --git a/system/libraries/drivers/Session/Database.php b/system/libraries/drivers/Session/Database.php index b4144ffb..b8993a9e 100644 --- a/system/libraries/drivers/Session/Database.php +++ b/system/libraries/drivers/Session/Database.php @@ -98,6 +98,10 @@ class Session_Database_Driver implements Session_Driver { public function write($id, $data) { + if (!Session::$should_save) { + return true; + } + $data = array ( 'session_id' => $id, -- cgit v1.2.3