public function editAction() { $this->_helper->viewRenderer->setNoRender(); $this->_helper->getHelper('layout')->disableLayout(); $request = $this->getRequest(); $locale = Zend_Registry::get('Zend_Locale'); $id = $this->_getParam('id', 0); $processid = $this->_getParam('processid', 0); $form = new Processes_Form_Processpos(); $form->uom->addMultiOptions($this->_helper->Uom->getUoms()); $form->shippingmethod->addMultiOptions($this->_helper->ShippingMethod->getShippingMethods($this->_user['clientid'])); $form->ordering->addMultiOptions($this->getOrdering($processid)); if ($request->isPost()) { $data = $request->getPost(); $element = key($data); if (isset($form->{$element}) && $form->isValidPartial($data)) { $data['modified'] = $this->_date; $data['modifiedby'] = $this->_user['id']; if ($element == 'price' || $element == 'quantity' || $element == 'supplierinvoicetotal') { $data[$element] = Zend_Locale_Format::getNumber($data[$element], array('precision' => 2, 'locale' => $locale)); } $position = new Processes_Model_DbTable_Processpos(); $position->updatePosition($id, $data); } else { throw new Exception('Form is invalid'); } } }