File: /home/timetracker.panomity.com/src/Plugin/AbstractPluginExtension.php
<?php
/*
* This file is part of the Kimai time-tracking app.
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace App\Plugin;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
abstract class AbstractPluginExtension extends Extension
{
protected function registerIcon(ContainerBuilder $container, string $name, string $icon): void
{
$container->setParameter(
'tabler_bundle.icons',
array_merge(
$container->getParameter('tabler_bundle.icons'),
[$name => $icon]
)
);
}
protected function registerBundleConfiguration(ContainerBuilder $container, array $configs): void
{
$bundleConfig = [$this->getAlias() => $configs];
if ($container->hasParameter('kimai.bundles.config')) {
$config = $container->getParameter('kimai.bundles.config');
if (!\is_array($config)) {
throw new \Exception('Invalid bundle configuration registered for ' . $this->getAlias());
}
$bundleConfig = array_merge($config, $bundleConfig);
}
$container->setParameter('kimai.bundles.config', $bundleConfig);
}
}