/** * dodawanie nowej reklamacji * @return */ public function addAction() { $request = $this->getRequest(); $nqId = $request->getParam('id'); $disable = isset($nqId) ? true : false; $form = new Logic_Ws_Complaint_Form_Generic($disable); if ($request->isPost()) { $post = $request->getPost(); if (key_exists('cancel', $post)) { foreach ($post as $key => $value) { $post[$key] = ''; } $request->setPost($post); } else { if ($form->isValid($post)) { try { $id = $this->_model->createComplaint($form); //$this->_model->showComplaint($id); $this->_helper->messenger->success(); $this->_helper->redirector('send', null, null, array('id' => $this->_helper->IdConvert->strToHex($id))); return; } catch (Logic_Ws_Exception $e) { $this->_helper->messenger->error($e->getMessage()); } } } } if (!empty($nqId)) { $nqId = $this->_helper->IdConvert->hexToStr($nqId); $nqModel = new NagiosQueue(); $nqRow = $nqModel->getRowWithDependencies($nqId); $repetable = $nqRow->occurence_count > 1 ? 'Tak, wystąpień: ' . $nqRow->occurence_count : 'Nie'; $user = Zend_Auth::getInstance()->getIdentity(); $defaults = array('surname' => $user->surname, 'name' => $user->first_name, 'phone_number' => $user->phone, 'email' => $user->email, 'special_id' => $nqRow->special_id, 'description' => $nqRow->error_code . ':: ' . $nqRow->error_message, 'login' => $nqRow->service_login, 'problem_phone_number' => $nqRow->phone_number, 'start_problem_date' => date('Y-m-d h:i:s', strtotime($nqRow->created_at)), 'problem_info' => $repetable, 'last_problem_date' => date('Y-m-d h:i:s', strtotime($nqRow->last_occurence)), 'nagios_queue_id' => $nqId); $form->setDefaults($defaults); } $this->view->form = $form; }