/** * Add an action * * This is the add action method. It literally does what it say. * It adds an action. * * * @return void */ public function addAction() { $this->_helper->viewRenderer->setViewSuffix('txt'); // The options we are accepting for adding $options = new Zend_Console_Getopt(array('name|n=s' => $this->tr->_('NAME'), 'enabled|e' => $this->tr->_('IS_ACTION_ENABLED'), 'public|p' => $this->tr->_('IS_ACTION_PUBLIC'), 'route|r=s' => $this->tr->_('CUSTOM_ROUTE'), 'description|d=s' => $this->tr->_('DESCRIPTION'), 'parameters|pa=s' => $this->tr->_('CLI_PARAMETERS'), 'required-parameters|rp=s' => $this->tr->_('CLI_REQUIRED_PARAMETERS'))); try { $options->parse(); } catch (Zend_Console_Getopt_Exception $e) { $this->view->message = $e->getUsageMessage(); return; } if ($options->name == '') { $this->view->message = $options->getUsageMessage(); return; } else { if ($options->route == '') { $this->view->message = $options->getUsageMessage(); return; } } $action_name = $options->name; $action_enabled = $options->enabled === true ? '1' : '0'; $action_public = $options->public === true ? '1' : '0'; $action_route = $options->route; $action_description = $options->description; $submit_data = array('name' => $action_name, 'enabled' => $action_enabled, 'public' => $action_public, 'route' => $action_route, 'description' => $action_description); // Handle parameters passed $action_optional_parameters = explode(',', $options->parameters); $i = 0; foreach ($action_optional_parameters as $parameter) { if ($parameter != '') { $submit_data['param'][$i] = $parameter; $i++; } } $action_required_parameters = explode(',', $options->getOption('required-parameters')); foreach ($action_required_parameters as $parameter) { if ($parameter != '') { $submit_data['param'][$i] = $parameter; $submit_data['required'][$i] = '1'; $i++; } } $model = new Default_Model_Action(); try { $model->add($submit_data); $this->view->message = $this->tr->_('ADDED_ACTION') . ': ' . $action_name . PHP_EOL; } catch (RuntimeException $e) { $this->view->message = $this->tr->_('ERROR_ADDING_ACTION') . ': ' . $action_name . '. ' . $e->getMessage() . PHP_EOL; } }
/** * Add an action * * This is the add action method. It literally does what it say. * It adds an action. * * * @return void */ public function addAction() { $this->_helper->viewRenderer->setViewSuffix('txt'); // The options we are accepting for adding $options = new Zend_Console_Getopt(array('name|n=s' => 'Name of the action.', 'enabled|e' => 'Is the action enabled?', 'public|p' => 'Is the action public?', 'route|r=s' => 'Custom route of the action.', 'description|d=s' => 'Description of the action.', 'parameters|pa=s' => 'List of comma-seperated optional parameters.', 'required-parameters|rp=s' => 'List of comma-seperated required parameters.')); try { $options->parse(); } catch (Zend_Console_Getopt_Exception $e) { $this->view->message = $e->getUsageMessage(); return; } if ($options->name == '') { $this->view->message = $options->getUsageMessage(); return; } else { if ($options->route == '') { $this->view->message = $options->getUsageMessage(); return; } } $action_name = $options->name; $action_enabled = $options->enabled === true ? '1' : '0'; $action_public = $options->public === true ? '1' : '0'; $action_route = $options->route; $action_description = $options->description; $submit_data = array('name' => $action_name, 'enabled' => $action_enabled, 'public' => $action_public, 'route' => $action_route, 'description' => $action_description); // Handle parameters passed $action_optional_parameters = explode(',', $options->parameters); $i = 0; foreach ($action_optional_parameters as $parameter) { if ($parameter != '') { $submit_data['param'][$i] = $parameter; $i++; } } $action_required_parameters = explode(',', $options->getOption('required-parameters')); foreach ($action_required_parameters as $parameter) { if ($parameter != '') { $submit_data['param'][$i] = $parameter; $submit_data['required'][$i] = '1'; $i++; } } $model = new Default_Model_Action(); try { $model->add($submit_data); $this->view->message = 'Successfully added action: ' . $action_name . PHP_EOL; } catch (RuntimeException $e) { $this->view->message = 'Error adding action: ' . $action_name . '. ' . $e->getMessage() . PHP_EOL; } }