Exemplo n.º 1
0
 /**
  * {@inheritdoc}
  */
 public function run(App $app, Document $config)
 {
     $app->m->shell = new Shell($app);
     $app->on('ready', function () use($app) {
         $app->m->shell->run();
     });
 }
Exemplo n.º 2
0
 /**
  * {@inheritdoc}
  */
 public function run(App $app, Document $config)
 {
     Enum::addSearchPrefix($app->n('Enums') . '\\');
     $app->m->Helpers = new Helpers($app);
     $app->m->Helpers->addHelper('Jivoo\\Snippets\\SnippetHelper');
     $app->m->Helpers->runInit();
     $app->m->Helpers->addHelper('Jivoo\\AccessControl\\AuthHelper');
     $app->m->addMethod('helper', array($app->m->Helpers, 'getHelper'));
     $app->m->Models = new Models($app);
     $app->m->Models->runInit();
     $listeners = $this->p('app/Listeners');
     if (is_dir($listeners)) {
         $files = scandir($listeners);
         if ($files !== false) {
             foreach ($files as $file) {
                 $split = explode('.', $file);
                 if (isset($split[1]) and $split[1] == 'php') {
                     $listener = $this->app->n('Listeners\\' . $split[0]);
                     Assume::isSubclassOf($listener, 'Jivoo\\Core\\AppListener');
                     $this->app->attachEventListener(new $listener($this->app));
                 }
             }
         }
     }
 }
Exemplo n.º 3
0
 /**
  * {@inheritdoc}
  */
 public function run(App $app, Document $config)
 {
     $app->m->Routing = new Routing($app, false);
     $this->m->Routing->fixPath();
     $this->logger->debug('Request for {path} from {ip}', array('path' => '/' . implode('/', $app->m->request->path), 'ip' => $app->m->request->ip));
     $app->m->Routing->dispatchers->add(new ActionDispatcher($app));
     $app->m->Routing->dispatchers->add(new SnippetDispatcher($app));
     $app->on('ready', array($app->m->Routing, 'findRoute'));
     $app->m->Assets = new Assets($app);
     $app->m->Assets->runInit();
     $app->m->View = new View($app);
     $app->m->View->runInit();
     $app->m->addProperty('view', $app->m->View);
 }
Exemplo n.º 4
0
 /**
  * Get a path relative to this extension's directory.
  * @param App $app Application.
  * @param string $path A relative path.
  * @return string An absolute path.
  */
 public function p(App $app, $path)
 {
     list($key, $path) = $this->getKeyPath($path);
     return $app->p($key, $path);
 }
Exemplo n.º 5
0
 /**
  * Stop event source and program execution.
  * @param App|null $app If set, the application's {@see App::stop} method will
  * be called instead of {@see exit}.
  */
 public function stop(App $app = null)
 {
     if (isset($app)) {
         $app->stop();
     }
     exit;
 }