/** * @param CentreonMain\Events\PostSave $event */ public static function execute(PostSaveEvent $event) { $parameters = $event->getParameters(); $extraParameters = $event->getExtraParameters(); if ($event->getObjectName() === 'poller') { foreach ($parameters as $key => $value) { $extraParameters['centreon-broker'][$key] = $value; } if ($event->getAction() === 'update' && !isset($extraParameters['centreon-broker']['tmpl_name'])) { $templateName = Poller::getParameters($extraParameters['centreon-broker']['object_id'], 'tmpl_name'); $extraParameters['centreon-broker']['tmpl_name'] = $templateName['tmpl_name']; } BrokerRepository::save($event->getObjectId(), $extraParameters['centreon-broker']); } }
/** * Update a broker * * * @method post * @route /broker/update */ public function updateAction() { $givenParameters = $this->getParams('post'); $updateSuccessful = true; $updateErrorMessage = ''; try { $pollerId = $givenParameters['poller_id']; unset($givenParameters['poller_id']); \CentreonBroker\Repository\BrokerRepository::save($pollerId, $givenParameters); } catch (Exception $e) { $updateSuccessful = false; $updateErrorMessage = $e->getMessage(); var_dump($e); } $this->router = Di::getDefault()->get('router'); if ($updateSuccessful) { unset($_SESSION['form_token']); unset($_SESSION['form_token_time']); $this->router->response()->json(array('success' => true)); } else { $this->router->response()->json(array('success' => false, 'error' => $updateErrorMessage)); } }