From 96cbf78e2895d6498b072ab26125792c1ab6d5c1 Mon Sep 17 00:00:00 2001 From: "Timothy J. Warren" Date: Thu, 19 Jan 2017 12:49:18 -0500 Subject: [PATCH 1/2] Fix cache clear command --- app/bootstrap.php | 5 ++--- src/Command/BaseCommand.php | 32 +++++++++++++++++++++----------- src/Command/ClearCache.php | 1 - 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/app/bootstrap.php b/app/bootstrap.php index 7a0454ef..e88450ca 100644 --- a/app/bootstrap.php +++ b/app/bootstrap.php @@ -58,10 +58,9 @@ return function(array $config_array = []) { // ------------------------------------------------------------------------- // Create Config Object - $container->set('config', function() { - return new Config(); + $container->set('config', function() use ($config_array) { + return new Config($config_array); }); - $container->setInstance('config', new Config($config_array)); // Create Cache Object $container->set('cache', function($container) { diff --git a/src/Command/BaseCommand.php b/src/Command/BaseCommand.php index b8205f71..fecb2131 100644 --- a/src/Command/BaseCommand.php +++ b/src/Command/BaseCommand.php @@ -17,15 +17,19 @@ namespace Aviat\AnimeClient\Command; use Aura\Session\SessionFactory; -use Aviat\AnimeClient\AnimeClient; +use Aviat\AnimeClient\{ + AnimeClient, + Model, + Util +}; use Aviat\AnimeClient\Auth\HummingbirdAuth; -use Aviat\AnimeClient\Model; -use Aviat\AnimeClient\Util; -use Aviat\Ion\Cache\CacheManager; +use Aviat\Banker\Pool; use Aviat\Ion\Config; use Aviat\Ion\Di\Container; use ConsoleKit\Command; use ConsoleKit\Widgets\Box; +use Monolog\Handler\RotatingFileHandler; +use Monolog\Logger; /** * Base class for console command setup @@ -54,24 +58,30 @@ class BaseCommand extends Command { */ protected function setupContainer() { - $CONF_DIR = realpath(__DIR__ . '/../../app/config/'); + $APP_DIR = realpath(__DIR__ . '/../../app'); + $CONF_DIR = realpath("{$APP_DIR}/config/"); require_once $CONF_DIR . '/base_config.php'; // $base_config $config = AnimeClient::loadToml($CONF_DIR); $config_array = array_merge($base_config, $config); - $di = function ($config_array) { + $di = function ($config_array) use ($APP_DIR) { $container = new Container(); - + + $app_logger = new Logger('animeclient'); + $app_logger->pushHandler(new RotatingFileHandler("{$APP_DIR}/logs/app.log", Logger::NOTICE)); + $container->setLogger($app_logger, 'default'); + // Create Config Object - $container->set('config', function() { - return new Config(); + $container->set('config', function() use ($config_array) { + return new Config($config_array); }); - $container->setInstance('config', $config_array); // Create Cache Object $container->set('cache', function($container) { - return new CacheManager($container->get('config')); + $logger = $container->getLogger(); + $config = $container->get('config')->get('cache'); + return new Pool($config, $logger); }); // Create session Object diff --git a/src/Command/ClearCache.php b/src/Command/ClearCache.php index 2e58019d..9c893aab 100644 --- a/src/Command/ClearCache.php +++ b/src/Command/ClearCache.php @@ -37,4 +37,3 @@ class ClearCache extends BaseCommand { $this->echoBox('API Cache has been cleared.'); } } -// End of ClearCache.php \ No newline at end of file From b2544fab162cfde6068cddad22acfd45c9725380 Mon Sep 17 00:00:00 2001 From: "Timothy J. Warren" Date: Wed, 25 Jan 2017 12:13:37 -0500 Subject: [PATCH 2/2] Fix issue with selected list highlighting, fixes #20 --- src/MenuGenerator.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/MenuGenerator.php b/src/MenuGenerator.php index ccfb2616..a292616f 100644 --- a/src/MenuGenerator.php +++ b/src/MenuGenerator.php @@ -100,8 +100,8 @@ class MenuGenerator extends UrlGenerator { foreach ($menu_config as $title => $path) { - $has = $this->string($path)->contains($this->path()); - $selected = ($has && strlen($path) >= strlen($this->path())); + $has = $this->string($this->path())->contains($path); + $selected = ($has && strlen($this->path()) >= strlen($path)); $link = $this->helper->a($this->url($path), $title);