public function editAction() { $id = (int) $this->params()->fromRoute('id', 0); $book = $this->getBookTable()->getBook($id); $form = new BookForm(); $form->bind($book); $form->get('submit')->setAttribute('value', 'Edit'); $request = $this->getRequest(); if ($request->isPost()) { $form->setInputFilter($book->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $this->getBookTable()->saveBook($book); return $this->redirect()->toRoute('book'); } } return array('id' => $id, 'form' => $form); }
/** * Edit Action * <br/> Responsible for : * <br/>In case Get verb -> Display Edit Exists Book Form * <br/>In case Post verb -> Edit Exists book with new submitted details * and updated book details into Database * After Submit Book Form * @return ViewModel edit view */ public function editAction() { $id = (int) $this->params()->fromRoute('id', 0); $book = $this->getBookTable()->getBook($id); $form = new BookForm(); $form->bind($book); $form->get('submit')->setValue('Edit'); $request = $this->getRequest(); // Check If Request Is Post Verb if ($request->isPost()) { $form->setInputFilter($book->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $this->getBookTable()->saveBook($book); // redirect to list of Books return $this->redirect()->toRoute('book'); } } return new ViewModel(array('id' => $id, 'form' => $form)); }