* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Sensio\Bundle\GeneratorBundle\Command\Helper; use Symfony\Component\Console\Helper\QuestionHelper as BaseQuestionHelper; use Symfony\Component\Console\Output\OutputInterface; /** * Generates bundles. * * @author Fabien Potencier */ class QuestionHelper extends BaseQuestionHelper { public function writeGeneratorSummary(OutputInterface $output, $errors) { if (!$errors) { $this->writeSection($output, 'Everything is OK! Now get to work :).'); } else { $this->writeSection($output, array( 'The command was not able to configure everything automatically.', 'You\'ll need to make the following changes manually.', ), 'error'); $output->writeln($errors); } } public function getRunner(OutputInterface $output, &$errors) { $runner = function ($err) use ($output, &$errors) { if ($err) { $output->writeln('FAILED'); $errors = array_merge($errors, $err); } else { $output->writeln('OK'); } }; return $runner; } public function writeSection(OutputInterface $output, $text, $style = 'bg=blue;fg=white') { $output->writeln(array( '', $this->getHelperSet()->get('formatter')->formatBlock($text, $style, true), '', )); } public function getQuestion($question, $default, $sep = ':') { return $default ? sprintf('%s [%s]%s ', $question, $default, $sep) : sprintf('%s%s ', $question, $sep); } }