/** Edit a map origin statement */ public function editmaporiginAction() { if ($this->_getParam('id', false)) { $form = new OriginForm(); $form->details->setLegend('Edit an origin term'); $form->submit->setLabel(self::UPDATE); $this->view->form = $form; if ($this->getRequest()->isPost() && $form->isValid($this->_request->getPost())) { if ($form->isValid($form->getValues())) { $origins = new MapOrigins(); $where = array(); $where[] = $origins->getAdapter()->quoteInto('id = ?', $this->_getParam('id')); $origins->update($form->getValues(), $where); $this->_redirect($this->_redirectUrl . 'maporigins'); $this->_flashMessenger->addMessage('Grid reference origin updated!'); } else { $form->populate($form->getValues()); } } else { $id = (int) $this->_request->getParam('id', 0); if ($id > 0) { $origins = new MapOrigins(); $origin = $origins->fetchRow('id = ' . $this->_getParam('id')); if (count($origin) != NULL) { $form->populate($origin->toArray()); } else { throw new Pas_Exception_Param($this->_nothingFound); } } } } else { throw new Pas_Exception_Param($this->_missingParamter); } }