From 653112ba574b2402c8a7e8dc6c90126b4d9ebd09 Mon Sep 17 00:00:00 2001 From: Marc Ducobu Date: Tue, 29 Sep 2015 20:20:14 +0200 Subject: [PATCH] refactoring Command/CreateFieldsOnGroupCommand.php : code indent --- Command/CreateFieldsOnGroupCommand.php | 92 ++++++++++++-------------- 1 file changed, 42 insertions(+), 50 deletions(-) diff --git a/Command/CreateFieldsOnGroupCommand.php b/Command/CreateFieldsOnGroupCommand.php index e91f85039..5e402f9b4 100644 --- a/Command/CreateFieldsOnGroupCommand.php +++ b/Command/CreateFieldsOnGroupCommand.php @@ -38,58 +38,56 @@ use Chill\CustomFieldsBundle\Entity\CustomField; */ class CreateFieldsOnGroupCommand extends ContainerAwareCommand { - const ARG_PATH = 'path'; const ARG_DELETE = 'delete'; protected function configure() { $this->setName('chill:custom_fields:populate_group') - ->setDescription('Create custom fields from a yml file') - ->addArgument(self::ARG_PATH, InputOption::VALUE_REQUIRED, - 'Path to description file') - ->addOption(self::ARG_DELETE, null, InputOption::VALUE_NONE, - 'If set, delete existing fields') - ; + ->setDescription('Create custom fields from a yml file') + ->addArgument(self::ARG_PATH, InputOption::VALUE_REQUIRED, + 'Path to description file') + ->addOption(self::ARG_DELETE, null, InputOption::VALUE_NONE, + 'If set, delete existing fields'); } protected function execute(InputInterface $input, OutputInterface $output) { $dialog = $this->getHelperSet()->get('dialog'); $em = $this->getContainer() - ->get('doctrine.orm.default_entity_manager'); + ->get('doctrine.orm.default_entity_manager'); $customFieldsGroups = $em - ->getRepository('ChillCustomFieldsBundle:CustomFieldsGroup') - ->findAll() - ; + ->getRepository('ChillCustomFieldsBundle:CustomFieldsGroup') + ->findAll(); if (count($customFieldsGroups) === 0) { $output->writeln('There aren\'t any CustomFieldsGroup recorded' - . ' Please create at least one.'); + . ' Please create at least one.'); } $table = $this->getHelperSet()->get('table'); $table->setHeaders(array_merge(array('id', 'entity'), $this->getContainer() - ->getParameter('chill_main.available_languages'))) - ->setRows($this->_prepareRows($customFieldsGroups)); + ->getParameter('chill_main.available_languages'))) + ->setRows($this->_prepareRows($customFieldsGroups)); $table->render($output); $customFieldsGroup = $dialog->askAndValidate($output, - "Enter the customfieldGroup's id on which the custom fields " - . "should be added :", - function($answer) use ($customFieldsGroups) { + "Enter the customfieldGroup's id on which the custom fields " + . "should be added :", + function($answer) use ($customFieldsGroups) { foreach ($customFieldsGroups as $customFieldsGroup) { if ($answer == $customFieldsGroup->getId()) { return $customFieldsGroup; } } - + throw new \RunTimeException('The id does not match an existing ' - . 'CustomFieldsGroup'); - } - ); - + . 'CustomFieldsGroup'); + } + ); + + // TODO : getCustomFields or getActiveCustomFields ? if ($input->getOption(self::ARG_DELETE)) { foreach ($customFieldsGroup->getCustomFields() as $field) { $em->remove($field); @@ -97,43 +95,41 @@ class CreateFieldsOnGroupCommand extends ContainerAwareCommand } $fieldsInput = $this->_parse($input->getArgument(self::ARG_PATH), - $output); + $output); $fields = $this->_addFields($customFieldsGroup, $fieldsInput, $output); - - } private function _prepareRows ($customFieldsGroups) { $rows = array(); $languages = $this->getContainer() - ->getParameter('chill_main.available_languages'); + ->getParameter('chill_main.available_languages'); //gather entitites and create an array to access them easily $customizableEntities = array(); foreach ($this->getContainer() - ->getParameter('chill_custom_fields.customizables_entities') as $entry) { + ->getParameter('chill_custom_fields.customizables_entities') as $entry) { $customizableEntities[$entry['class']] = $entry['name']; } array_walk($customFieldsGroups, - function(CustomFieldsGroup $customFieldGroup, $key) + function(CustomFieldsGroup $customFieldGroup, $key) use ($languages, &$rows, $customizableEntities) { //set id and entity $row = array( - $customFieldGroup->getId(), - $customizableEntities[$customFieldGroup->getEntity()] + $customFieldGroup->getId(), + $customizableEntities[$customFieldGroup->getEntity()] ); foreach ($languages as $lang) { //todo replace with service to find lang when available $row[] = (isset($customFieldGroup->getName()[$lang])) ? - $customFieldGroup->getName()[$lang] : + $customFieldGroup->getName()[$lang] : 'Not available in this language'; } $rows[] = $row; } - ); + ); return $rows; } @@ -152,7 +148,6 @@ class CreateFieldsOnGroupCommand extends ContainerAwareCommand throw new \RunTimeException("The yaml file is not valid", 0, $ex); } - return $values; } @@ -163,44 +158,41 @@ class CreateFieldsOnGroupCommand extends ContainerAwareCommand $em = $this->getContainer()->get('doctrine.orm.entity_manager'); $languages = $this->getContainer() - ->getParameter('chill_main.available_languages'); + ->getParameter('chill_main.available_languages'); foreach($values['fields'] as $slug => $field) { //check the cf type exists $cfType = $cfProvider->getCustomFieldByType($field['type']); if ($cfType === NULL) { throw new \RunTimeException('the type '.$field['type'].' ' - . 'does not exists'); + . 'does not exists'); } $cf = new CustomField(); $cf->setSlug($slug) - ->setName($field['name']) - ->setOptions(isset($field['options']) ? $field['options'] : array() ) - ->setOrdering($field['ordering']) - ->setType($field['type']) - ->setCustomFieldsGroup($group) - ; + ->setName($field['name']) + ->setOptions(isset($field['options']) ? $field['options'] : array() ) + ->setOrdering($field['ordering']) + ->setType($field['type']) + ->setCustomFieldsGroup($group); //add to table $names = array(); foreach ($languages as $lang) { - //todo replace with service to find lang when available - $names[] = (isset($cf->getName()[$lang])) ? - $cf->getName()[$lang] : - 'Not available in this language'; - } - + //todo replace with service to find lang when available + $names[] = (isset($cf->getName()[$lang])) ? + $cf->getName()[$lang] : + 'Not available in this language'; + } if ($this->getContainer()->get('validator')->validate($cf)) { $em->persist($cf); $output->writeln("Adding Custom Field of type " - .$cf->getType()."\t with slug ".$cf->getSlug(). - "\t and names : ".implode($names, ', ').""); + .$cf->getType()."\t with slug ".$cf->getSlug(). + "\t and names : ".implode($names, ', ').""); } else { throw new \RunTimeException("Error in field ".$slug); } - } $em->flush();