/** * * @param Resources $context * @return self */ public static function generate(Resources $context) { $request = $context->getRequest(); $config = $context->config('session'); // Sets the cookie path (aka session namespace) $site = $config->value('site'); $path = rtrim($request->getRoot(), '/') . '/'; // Creates the save handler $key = trim($config->value('save_handler')); $pre = substr($key, 0, 1); if ($pre == '#') { $resource = trim(substr($key, 1)); $handler = $context->get($resource); } elseif ($key) { if ($pre == '~') { $key = static::getDefaultNamespace() . '\\' . trim(substr($key, 1)); } $handler = $context->create($key); } else { $handler = null; } if ($handler instanceof DbSaveHandler) { $handler->setSite($site)->setPath($path); } // Create the manager and registers the save handler $manager = new static(); if ($handler) { $manager->registerSaveHandler($handler); } return $manager; }
/** * @param Resources $context */ public static function generate(Resources $context) { $config = $context->config('i18n'); $instance = new static(); $instance->setBaseDir($config->value('base_dir')); return $instance; }
/** * Factory function * @param Resources $context */ public static function generate(Resources $context) { /* @var $config Node\Param */ $config = $context->config('view'); $renderer = new static(); $renderer->setScriptDir($config->value('template_dir'))->setScriptsuffix($config->value('script_suffix', '.phtml'))->setHelpers($context->get('helpers')); return $renderer; }
/** * @param Resources $context * @return string * @throws Exception\RuntimeException */ public static function datadir(Resources $context) { $datadir = $context->config('datafiles.base_dir'); if (!file_exists($datadir)) { throw new Exception\RuntimeException("Data directory '{$datadir}' doesn't exist"); } // $datadir = realpath($datadir); return $datadir; }
/** * Factory function * @param Resources $context * @return self */ public static function create(Resources $context, $databaseKey = 'database') { /* @var $config Param */ $config = $context->config('session.database'); $logger = $context->get('logger'); $database = $context->get($databaseKey); $path = ini_get('session.cookie_path'); $handler = new static($database, $config); $handler->setLogger($logger)->setPath($path); return $handler; }
/** * @param Resources $context */ public static function generate(Resources $context) { $config = $context->config('view'); $helpers = $context->get('helpers'); $engine = new Engine(); $engine->setEscape($helpers->get('escape')); $engine->getScriptLoader()->setBaseDir($config->value('template_dir'))->setFileSuffix($config->value('script_suffix', '.mustache')); $renderer = new static(); $renderer->setEngine($engine)->setHelpers($helpers)->setLogger($context->get('logger')); return $renderer; }
/** * Factory method * @param Resources $context * @return \static */ public static function generate(Resources $context) { $fuse = new static(); if ($context->has('logger')) { $fuse->setLogger($context->get('logger')); } $env = $context->config('application.environment'); if ($env->exists()) { $fuse->setEnvironment($env->str()); } return $fuse; }
/** * @param Resources $mvc * http://localhost/dev/okapi/test/instance/session */ public function sessionAction(Resources $mvc) { /* @var $sess Session */ $req = $mvc->get('request'); $uri = $mvc->helper('uri'); $sess = $mvc('session'); $post = $mvc->input('POST'); $ttl = $mvc->config('php.session.gc_maxlifetime'); if ($req->isMethod('POST')) { $action = $post->get('action'); if ($action == 'open') { $sess->open('Testinator'); $sess['content'] = $post->get('content'); } else { $sess->resume(); } if ($action == 'close') { $sess->close(); } elseif ($action == 'update') { $sess['content'] = $post->get('content'); } } else { $sess->resume(); } $content = isset($sess['content']) ? $sess['content'] : null; return ['base' => $uri->route('tests', ['action' => 'session', '**' => '']), 'content' => $content, 'ttl' => $ttl, 'dump' => $this->jsonDump($sess->data())]; }
/** * * @param Resources $resources */ public static function generate(Resources $resources) { $config = $resources->config('routes'); return new static($config); }