Esempio n. 1
0
 public function editAction()
 {
     $form = new MessageForm();
     $this->translator = $this->getServiceLocator()->get('translator');
     $form->get('submitbutton')->setAttribute('value', $this->translator->translate('Modifier'));
     $this->messageDao = new MessageDao();
     $id = (int) $this->params()->fromRoute('id', 0);
     /*
     if ($id == 0) {
         return $this->redirect()->toRoute('Message', array(
                     'action' => 'add'
         ));
     }
     */
     $message = $this->messageDao->getMessage($id);
     $messageId = $message->getId();
     if (!empty($id)) {
         if (empty($messageId)) {
             //return $this->getResponse()->setStatusCode(404);
             return $this->notFoundAction();
         }
     }
     $form->get('id')->setAttribute('value', $message->getId());
     $form->get('row1')->setAttribute('value', $message->getRow1());
     $form->get('row2')->setAttribute('value', $message->getRow2());
     $form->get('row3')->setAttribute('value', $message->getRow3());
     $form->get('row4')->setAttribute('value', $message->getRow4());
     $form->get('type')->setAttribute('value', $message->getType());
     $form->get('msg')->setAttribute('value', $message->getMessage());
     //$form->get('position')->setAttribute('value', $message->getRang());
     $form->get('timestamp')->setAttribute('value', $message->getDate());
     $form->get('submitbutton')->setAttribute('value', 'Modifier');
     $request = $this->getRequest();
     if ($request->isPost()) {
         //trigger data controls
         $message = new Message();
         $form->setInputFilter(new MessageInputFilter());
         $form->setData($request->getPost());
         //$form->setUseInputFilterDefaults(false);
         //print_r('nonOK');
         //    exit;
         if ($form->isValid()) {
             $filterData = new Utils();
             $message->setId($filterData->stripTags_replaceHtmlChar_trim($request->getPost('id'), true, false, true));
             $message->setRow1($filterData->stripTags_replaceHtmlChar_trim($request->getPost('row1'), false, false, true));
             $message->setRow2($filterData->stripTags_replaceHtmlChar_trim($request->getPost('row2'), false, false, true));
             $message->setRow3($filterData->stripTags_replaceHtmlChar_trim($request->getPost('row3'), false, false, true));
             $message->setRow4($filterData->stripTags_replaceHtmlChar_trim($request->getPost('row4'), false, false, true));
             $message->setType($filterData->stripTags_replaceHtmlChar_trim($request->getPost('type'), true, true, true));
             $message->setDate($filterData->stripTags_replaceHtmlChar_trim($request->getPost('timestamp'), true, false, true));
             //$message['position'] = $filterData->stripTags_replaceHtmlChar_trim($request->getPost('position'), true, true, true);
             $message->setMessage($filterData->stripTags_replaceHtmlChar_trim($request->getPost('msg'), true, true, true));
             $this->messageDao->saveMessage($message);
             //flush cache
             $this->getServiceLocator()->get('CacheDataListener')->getCacheService()->flush();
             return $this->redirect()->toRoute('Message');
         } else {
             return array('id' => $id, 'form' => $form, 'error' => $form->getMessages());
         }
     }
     return array('id' => $id, 'form' => $form, 'error' => "no error");
 }