setDescription('Unpublish collection in Phraseanet') ->addOption('collection_id', null, InputOption::VALUE_REQUIRED, 'The base_id of the collection to unpublish, the base_id is the same id used in API.') ->setHelp(''); return $this; } protected function doExecute(InputInterface $input, OutputInterface $output) { try { $collection = \collection::getByBaseId($this->container,(int)$input->getOption('collection_id')); $dialog = $this->getHelperSet()->get('dialog'); do { $continue = mb_strtolower($dialog->ask($output, sprintf(" Do you want really unpublish the collection %s? (y/N)", $collection->get_name()), 'N')); } while ( ! in_array($continue, ['y', 'n'])); if ($continue !== 'y') { $output->writeln('Aborting !'); return; } $collection->disable($this->container->getApplicationBox()); $output->writeln('Unpublish collection successful'); } catch (\Exception $e) { $output->writeln('Unpublish collection failed : '.$e->getMessage().''); } return 0; } }