public function __construct($Database) { session_set_save_handler(array($this, 'Open'), array($this, 'Close'), array($this, 'Read'), array($this, 'Write'), array($this, 'Destroy'), array($this, 'GarbageCollector')); register_shutdown_function('session_write_close'); Session::$DBConnection = $Database::$Connection; $FileLocation = getcwd() . DS . 'Core' . DS . 'Libraries' . DS . 'FreedomCore'; $Files = scandir($FileLocation); for ($i = 0; $i < 4; $i++) { unset($Files[$i]); } if (!empty($Files)) { Session::$Salt = file_get_contents($FileLocation . DS . $Files[4]); } else { $RandomFileName = substr("abcdefghijklmnopqrstuvwxyz", mt_rand(0, 25), 1) . substr(md5(time()), 1); $RandomSalt = Session::GenerateRandomSalt(); file_put_contents($FileLocation . DS . $RandomFileName, $RandomSalt); Session::$Salt = $RandomSalt; } }