public function editAction() { $id = (int) $this->params()->fromRoute('id', 0); if (!$id) { return $this->redirect()->toRoute('admin/advertisement', array('action' => 'add')); } $advertisement = $this->getAdvertisementTable()->getAdvertisement($id); if ($advertisement == false) { $this->flashMessenger()->addErrorMessage('Advertisement not found..!!'); return $this->redirect()->toRoute('admin/advertisement'); } $form = new AdvertisementForm($this->getServiceLocator()->get('Admin\\Model\\StatusTable')); $form->bind($advertisement); $form->get('submit')->setAttribute('value', 'Edit'); $request = $this->getRequest(); if ($request->isPost()) { $form->setInputFilter($advertisement->getInputFilter()); $form->setData($request->getPost()); if ($form->isValid()) { $this->getAdvertisementTable()->saveAdvertisement($form->getData()); $this->flashMessenger()->addSuccessMessage('Advertisement updated successfully..!!'); // Redirect to list of pages return $this->redirect()->toRoute('admin/advertisement'); } else { $this->errors = $form->getMessages(); } } return array('id' => $id, 'form' => $form, 'errors' => $this->errors); }