use Shaarli\Formatter\FormatterFactory;
use Shaarli\History;
use Shaarli\Http\HttpAccess;
+use Shaarli\Netscape\NetscapeBookmarkUtils;
use Shaarli\Plugin\PluginManager;
use Shaarli\Render\PageBuilder;
use Shaarli\Render\PageCacheManager;
use Shaarli\Security\LoginManager;
use Shaarli\Security\SessionManager;
use Shaarli\Thumbnailer;
+use Shaarli\Updater\Updater;
+use Shaarli\Updater\UpdaterUtils;
/**
* Class ContainerBuilder
};
$container['pluginManager'] = function (ShaarliContainer $container): PluginManager {
- return new PluginManager($container->conf);
+ $pluginManager = new PluginManager($container->conf);
+
+ // FIXME! Configuration is already injected
+ $pluginManager->load($container->conf->get('general.enabled_plugins'));
+
+ return $pluginManager;
};
$container['formatterFactory'] = function (ShaarliContainer $container): FormatterFactory {
return new HttpAccess();
};
+ $container['netscapeBookmarkUtils'] = function (ShaarliContainer $container): NetscapeBookmarkUtils {
+ return new NetscapeBookmarkUtils($container->bookmarkService, $container->conf, $container->history);
+ };
+
+ $container['updater'] = function (ShaarliContainer $container): Updater {
+ return new Updater(
+ UpdaterUtils::read_updates_file($container->conf->get('resource.updates')),
+ $container->bookmarkService,
+ $container->conf,
+ $container->loginManager->isLoggedIn()
+ );
+ };
+
return $container;
}
}