public function editAction() { $request = $this->getRequest(); $zoneId = $request->getParam('zone_id'); $zone = Modules_Ad_Services_Zone::getById($zoneId); if (null == $zone) { throw new Exception(); } $this->view->zoneData = $zone; if ($request->isPost()) { $zoneData = $request->getPost('zone'); $zoneData = Modules_Ad_Services_Zone::validate($zoneData); if (isset($zoneData['messages_error']) && $zoneData['messages_error']) { $this->view->errorMessages = $zoneData['messages']; $zoneData['zone_id'] = $zoneId; $this->view->zoneData = $zoneData; return; } $zoneData['description'] = null; $zone = array('zone_id' => $zoneId, 'code' => $this->view->STRING->escape($zoneData['code']), 'description' => $this->view->STRING->escape($zoneData['description']), 'width' => $this->view->STRING->escape($zoneData['width']), 'height' => $this->view->STRING->escape($zoneData['height']), 'price' => $this->view->STRING->escape($zoneData['price']), 'status' => $this->view->STRING->escape($zoneData['status'])); Modules_Ad_Services_Zone::update($zone); Gio_Core_Messenger::getInstance()->addMessage($this->view->TRANSLATOR->translator('zone_edit_action_success')); $this->redirect($this->view->url('ad_zone_edit', $zone)); } }