Exemplo n.º 1
0
 /**
  * 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;
 }