protected function reconcileInitialConfig(OutputInterface $output)
    {
        $this->step(++$this->step, 'Basic configuration');
        $settings = $this->displayConfigTable();
        $confirm = $this->io->confirm('Would you like to edit these now?', false);
        if ($confirm === false) {
            return true;
        }
        $command = $this->getApplication()->find('config:set');
        $buffer = $this->getBufferedOutput($output, OutputInterface::VERBOSITY_NORMAL);

        $siteName = $this->io->ask('Site name:', $settings['sitename']);
        $sitePayoff = $this->io->ask('Site payoff tag-line:', $settings['payoff']);
        $theme = $this->io->ask('Theme name:', $settings['theme'], function ($v) use ($settings) {
            $fs = $this->app['filesystem']->getFilesystem('themes');
            if ($fs->has($v)) {
                return $v;
            }
            $this->io->warning(sprintf('The theme directory "%s" was not found, reverting to "%s"', $v, $settings['theme']));

            return $settings['theme'];
        });
        $debug = $this->io->confirm('Enable debugging:', $settings['debug']);
        $settings = [
            'sitename' => $siteName,
            'payoff'   => $sitePayoff,
            'theme'    => $theme,
            'debug'    => $debug,
        ];
        foreach ($settings as $key => $value) {
            $input = new ArrayInput([
                '--no-interaction' => true,
                'key'              => $key,
                'value'            => $value,
            ]);

            $result = $command->run($input, $buffer);
            $this->writeBufferedOutput($buffer, $result);
        }

        $this->io->success('Settings updated!');
        $this->displayConfigTable();
        if ($debug) {
            $this->io->block('Do not forget to disable debugging for production', 'REMINDER', 'fg=yellow', ' ! ');
        }

        return true;
    }
protected function reconcileInitialConfig(OutputInterface $output)
    {
        $this->step(++$this->step, 'Basic configuration');
        $settings = $this->displayConfigTable();
        $confirm = $this->io->confirm('Would you like to edit these now?', false);
        if ($confirm === false) {
            return true;
        }
        $command = $this->getApplication()->find('config:set');
        $buffer = $this->getBufferedOutput($output, OutputInterface::VERBOSITY_NORMAL);

        $siteName = $this->io->ask('Site name:', $settings['sitename']);
        $sitePayoff = $this->io->ask('Site payoff tag-line:', $settings['payoff']);
        $theme = $this->io->ask('Theme name:', $settings['theme'], function ($v) use ($settings) {
            $fs = $this->app['filesystem']->getFilesystem('themes');
            if ($fs->has($v)) {
                return $v;
            }
            $this->io->warning(sprintf('The theme directory "%s" was not found, reverting to "%s"', $v, $settings['theme']));

            return $settings['theme'];
        });
        $debug = $this->io->confirm('Enable debugging:', $settings['debug']);
        $settings = [
            'sitename' => $siteName,
            'payoff'   => $sitePayoff,
            'theme'    => $theme,
            'debug'    => $debug,
        ];
        foreach ($settings as $key => $value) {
            $input = new ArrayInput([
                '--no-interaction' => true,
                'key'              => $key,
                'value'            => $value,
            ]);

            $result = $command->run($input, $buffer);
            $this->writeBufferedOutput($buffer, $result);
        }

        $this->io->success('Settings updated!');
        $this->displayConfigTable();
        if ($debug) {
            $this->io->block('Do not forget to disable debugging for production', 'REMINDER', 'fg=yellow', ' ! ');
        }

        return true;
    }
protected function reconcileInitialConfig ( OutputInterface $ output ) { $ this -> step ( ++ $ this -> step , 'Basic configuration' ) ; $ settings = $ this -> displayConfigTable ( ) ; $ confirm = $ this -> io -> confirm ( 'Would you like to edit these now?' , false ) ; if ( $ confirm === false ) { return true ; } $ command = $ this -> getApplication ( ) -> find ( 'config:set' ) ; $ buffer = $ this -> getBufferedOutput ( $ output , OutputInterface :: VERBOSITY_NORMAL ) ; $ siteName = $ this -> io -> ask ( 'Site name:' , $ settings [ 'sitename' ] ) ; $ sitePayoff = $ this -> io -> ask ( 'Site payoff tag-line:' , $ settings [ 'payoff' ] ) ; $ theme = $ this -> io -> ask ( 'Theme name:' , $ settings [ 'theme' ] , function ( $ v ) use ( $ settings ) { $ fs = $ this -> app [ 'filesystem' ] -> getFilesystem ( 'themes' ) ; if ( $ fs -> has ( $ v ) ) { return $ v ; } $ this -> io -> warning ( sprintf ( 'The theme directory "%s" was not found, reverting to "%s"' , $ v , $ settings [ 'theme' ] ) ) ; return $ settings [ 'theme' ] ; } ) ; $ debug = $ this -> io -> confirm ( 'Enable debugging:' , $ settings [ 'debug' ] ) ; $ settings = [ 'sitename' => $ siteName , 'payoff' => $ sitePayoff , 'theme' => $ theme , 'debug' => $ debug , ] ; foreach ( $ settings as $ key => $ value ) { $ input = new ArrayInput ( [ '--no-interaction' => true , 'key' => $ key , 'value' => $ value , ] ) ; $ result = $ command -> run ( $ input , $ buffer ) ; $ this -> writeBufferedOutput ( $ buffer , $ result ) ; } $ this -> io -> success ( 'Settings updated!' ) ; $ this -> displayConfigTable ( ) ; if ( $ debug ) { $ this -> io -> block ( 'Do not forget to disable debugging for production' , 'REMINDER' , 'fg=yellow' , ' ! ' ) ; } return true ; }
Selective config edit on set-up.

@param OutputInterface $output

@return bool
Selective config edit on set - up .