Spaces:
No application file
No application file
| declare(strict_types=1); | |
| namespace Mautic\InstallBundle\DependencyInjection\Compiler; | |
| use Mautic\InstallBundle\Command\InstallCommand; | |
| use Symfony\Component\Console\Input\ArgvInput; | |
| use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface; | |
| use Symfony\Component\DependencyInjection\ContainerBuilder; | |
| class InstallCommandPass implements CompilerPassInterface | |
| { | |
| public function process(ContainerBuilder $container): void | |
| { | |
| $args = $_SERVER['argv'] ?? []; | |
| if (!in_array(InstallCommand::COMMAND, $args, true)) { | |
| return; | |
| } | |
| $input = new ArgvInput($args); | |
| $tablePrefix = $input->hasOption('db_table_prefix') | |
| ? $input->getOption('db_table_prefix') | |
| : MAUTIC_TABLE_PREFIX; | |
| if (!$tablePrefix) { | |
| return; | |
| } | |
| $container->setParameter('mautic.db_table_prefix', $tablePrefix); | |
| $container->getDefinition('mautic.tblprefix_subscriber')->setArgument('$tablePrefix', $tablePrefix); | |
| $container->getDefinition('mautic.schema.helper.column')->setArgument('$prefix', $tablePrefix); | |
| $container->getDefinition('mautic.schema.helper.index')->setArgument('$prefix', $tablePrefix); | |
| } | |
| } | |