Пример #1
0
 /**
  * {@inheritDoc}
  */
 public function init(Application $app)
 {
     $app['spot.connections.default'] = null;
     $app['spot.connections'] = ['main' => $app['database.dsn']];
     $app['spot'] = $app->share(function () use($app) {
         return new Locator($app['spot.config']);
     });
     $app['spot.config'] = $app->share(function () use($app) {
         $config = new Config();
         $connections = $app['spot.connections'];
         if ($connections instanceof Pimple) {
             $keys = $connections->keys();
         } else {
             $keys = array_keys($connections);
         }
         foreach ($keys as $key) {
             if (isset($app['spot.connections.default']) && $key === $app['spot.connections.default']) {
                 $default = true;
             } else {
                 $default = false;
             }
             $config->addConnection($key, $connections[$key], $default);
         }
         return $config;
     });
 }
Пример #2
0
 /**
  * {@inheritDoc}
  */
 public function init(Application $app)
 {
     $app['hive'] = $app->share(function () use($app) {
         $hive = new Hive();
         $hive->setRedis($app['hive.redis']);
         return $hive;
     });
 }
Пример #3
0
 /**
  * {@inheritDoc}
  */
 public function init(Application $app)
 {
     $app['cache'] = $app->share(function () use($app) {
         switch ($app['cache.driver']) {
             case 'redis':
                 return new Cache\RedisCache($app);
                 break;
             default:
                 return new Cache\ArrayCache($app);
                 break;
         }
     });
 }
Пример #4
0
 /**
  * {@inheritDoc}
  */
 public function init(Application $app)
 {
     $cache = isset($app['twig.options']['cache']) ? $app['twig.options']['cache'] : false;
     $app['twig.options'] = array_merge($app['twig.options'], ['debug' => $app->getDebug(), 'cache' => $app->getDebug() ? false : $cache]);
     $app->register(new TwigServiceProvider(), ['twig.path' => $app['twig.path'], 'twig.templates' => $app['twig.templates'], 'twig.options' => $app['twig.options']]);
     $app['twig.loader.array'] = function ($app) {
         return new TwigTemplateLoader($app['twig.templates']);
     };
     $app['twig'] = $app->share($app->extend('twig', function ($twig, $app) {
         foreach ($app['twig.extensions'] as $extension) {
             $twig->addExtension(new $extension($app));
         }
         return $twig;
     }));
 }
Пример #5
0
 /**
  * {@inheritDoc}
  */
 public function init(Application $app)
 {
     $app['assets'] = $app->share(function () use($app) {
         $assetManager = new AssetManager();
         $filterManager = new FilterManager();
         $filterManager->set('less', new LessphpFilter());
         $filterManager->set('cssmin', new CssMinFilter());
         $filterManager->set('jsmin', new JSqueezeFilter());
         $factory = new AssetFactory($app['assets.path']);
         $factory->setAssetManager($assetManager);
         $factory->setFilterManager($filterManager);
         $factory->setDefaultOutput('misc/*');
         return $factory;
     });
 }