N98\Magento\Command\Developer\Module\CreateCommand::createModuleDirectories PHP Method

createModuleDirectories() protected method

protected createModuleDirectories ( Symfony\Component\Console\Input\InputInterface $input, Symfony\Component\Console\Output\OutputInterface $output )
$input Symfony\Component\Console\Input\InputInterface
$output Symfony\Component\Console\Output\OutputInterface
    protected function createModuleDirectories(InputInterface $input, OutputInterface $output)
    {
        if ($this->modmanMode) {
            $modManDir = $this->vendorNamespace . '_' . $this->moduleName . '/src';
            if (file_exists($modManDir)) {
                throw new RuntimeException('Module already exists. Stop.');
            }
            mkdir($modManDir, 0777, true);
            $this->_magentoRootFolder = './' . $modManDir;
            mkdir($this->_magentoRootFolder . '/app/etc/modules', 0777, true);
        }
        $moduleDir = sprintf('%s/app/code/%s/%s/%s', $this->_magentoRootFolder, $this->codePool, $this->vendorNamespace, $this->moduleName);
        if (file_exists($moduleDir)) {
            throw new RuntimeException('Module already exists. Stop.');
        }
        $this->moduleDirectory = $moduleDir;
        mkdir($this->moduleDirectory, 0777, true);
        $output->writeln('<info>Created directory: <comment>' . $this->moduleDirectory . '<comment></info>');
        // Add etc folder
        $this->createModuleDirectory('etc');
        // Add controllers folder
        if ($input->getOption('add-controllers')) {
            $this->createModuleDirectory('controllers');
        }
        // Add blocks folder
        if ($input->getOption('add-blocks')) {
            $this->createModuleDirectory('Block');
        }
        // Add helpers folder
        if ($input->getOption('add-helpers')) {
            $this->createModuleDirectory('Helper');
        }
        // Add models folder
        if ($input->getOption('add-models')) {
            $this->createModuleDirectory('Model');
        }
        // Create SQL and Data folder
        if ($input->getOption('add-setup')) {
            $sqlSetupFolder = $this->moduleDirectory . '/sql/' . strtolower($this->vendorNamespace) . '_' . strtolower($this->moduleName) . '_setup';
            mkdir($sqlSetupFolder, 0777, true);
            $output->writeln('<info>Created directory: <comment>' . $sqlSetupFolder . '<comment></info>');
            $dataSetupFolder = $this->moduleDirectory . '/data/' . strtolower($this->vendorNamespace) . '_' . strtolower($this->moduleName) . '_setup';
            mkdir($dataSetupFolder, 0777, true);
            $output->writeln('<info>Created directory: <comment>' . $dataSetupFolder . '<comment></info>');
        }
    }