Skip to content

Commit

Permalink
Allow configuring Pimcore's own branding settings via this bundle
Browse files Browse the repository at this point in the history
  • Loading branch information
jdreesen committed May 8, 2024
1 parent fa7e3d7 commit dd372c8
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 1 deletion.
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,14 @@ neusta_pimcore_backend_branding:
tabBarIcon:
url: <url-of-your-logo>
size: 40px
# Configure Pimcore's own branding settings (pimcore_admin.branding)
login:
color: '#fff' # => color_login_screen
invertColors: true # => login_screen_invert_colors
image: <url-of-your-logo> # => login_screen_custom_image
backend:
color: '#fff' # => color_admin_interface
backgroundColor: '#000' # => color_admin_interface_background
when@dev:
neusta_pimcore_backend_branding:
Expand Down
30 changes: 30 additions & 0 deletions src/DependencyInjection/Configuration.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,36 @@ public function getConfigTreeBuilder(): TreeBuilder
->end()
->end()
->scalarNode('favIcon')->end()
->arrayNode('login')
->addDefaultsIfNotSet()
->children()
->scalarNode('color')
->info('Configures: pimcore_admin.branding.color_login_screen')
->defaultNull()
->end()
->booleanNode('invertColors')
->info('Configures: pimcore_admin.branding.login_screen_invert_colors')
->defaultFalse()
->end()
->scalarNode('image')
->info('Configures: pimcore_admin.branding.login_screen_custom_image')
->defaultValue('')
->end()
->end()
->end()
->arrayNode('backend')
->addDefaultsIfNotSet()
->children()
->scalarNode('color')
->info('Configures: pimcore_admin.branding.color_admin_interface')
->defaultNull()
->end()
->scalarNode('backgroundColor')
->info('Configures: pimcore_admin.branding.color_admin_interface_background')
->defaultNull()
->end()
->end()
->end()
->scalarNode('bezelColor')->end()
->scalarNode('sidebarColor')->end()
->arrayNode('signet')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@
use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\ChildDefinition;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface;
use Symfony\Component\DependencyInjection\Loader\PhpFileLoader;
use Symfony\Component\HttpKernel\DependencyInjection\ConfigurableExtension;

final class NeustaPimcoreBackendBrandingExtension extends ConfigurableExtension
final class NeustaPimcoreBackendBrandingExtension extends ConfigurableExtension implements PrependExtensionInterface
{
/**
* @param array<string, mixed> $mergedConfig
Expand All @@ -29,4 +30,21 @@ static function (ChildDefinition $definition, AsCssProvider $attribute): void {
},
);
}

public function prepend(ContainerBuilder $container): void
{
$configs = $container->getExtensionConfig($this->getAlias());
$configs = $container->getParameterBag()->resolveValue($configs);
$config = $this->processConfiguration(new Configuration(), $configs);

$container->prependExtensionConfig('pimcore_admin', [
'branding' => [
'color_admin_interface' => $config['backend']['color'],
'color_admin_interface_background' => $config['backend']['backgroundColor'],
'color_login_screen' => $config['login']['color'],
'login_screen_custom_image' => $config['login']['image'],
'login_screen_invert_colors' => $config['login']['invertColors'],
],
]);
}
}

0 comments on commit dd372c8

Please sign in to comment.