function __construct($dir, NContext $context = NULL) { if (self::$useDirectories === NULL) { $uniq = uniqid('_', TRUE); umask(00); if (!@mkdir("{$dir}/{$uniq}", 0777)) { throw new InvalidStateException("Unable to write to directory '{$dir}'. Make this directory writable."); } self::$useDirectories = !ini_get('safe_mode'); if (!self::$useDirectories && @file_put_contents("{$dir}/{$uniq}/_", '') !== FALSE) { self::$useDirectories = TRUE; unlink("{$dir}/{$uniq}/_"); } @rmdir("{$dir}/{$uniq}"); } $this->dir = $dir; $this->useDirs = (bool) self::$useDirectories; $this->context = $context; if (mt_rand() / mt_getrandmax() < self::$gcProbability) { $this->clean(array()); } }
public function initialize() { date_default_timezone_set('Europe/Prague'); NFileStorage::$useDirectories = TRUE; $this->getService("session")->exists() && $this->getService("session")->start(); header('X-Frame-Options: SAMEORIGIN'); }