public function treatAction() { $linkusMapper = new LinkusMapper(); if ($this->getRequest()->getParam('id')) { $this->getLayout()->getAdminHmenu()->add($this->getTranslator()->trans('menuLinkus'), array('action' => 'index'))->add($this->getTranslator()->trans('edit'), array('action' => 'treat')); $this->getView()->set('linkus', $linkusMapper->getLinkusById($this->getRequest()->getParam('id'))); } else { $this->getLayout()->getAdminHmenu()->add($this->getTranslator()->trans('menuLinkus'), array('action' => 'index'))->add($this->getTranslator()->trans('add'), array('action' => 'treat')); } if ($this->getRequest()->isPost()) { $model = new LinkusModel(); if ($this->getRequest()->getParam('id')) { $model->setId($this->getRequest()->getParam('id')); } $title = trim($this->getRequest()->getPost('title')); $banner = trim($this->getRequest()->getPost('banner')); if (empty($title)) { $this->addMessage('missingTitle', 'danger'); } elseif (empty($banner)) { $this->addMessage('missingBanner', 'danger'); } else { $model->setTitle($title); $model->setBanner($banner); $linkusMapper->save($model); $this->addMessage('saveSuccess'); $this->redirect(array('action' => 'index')); } } }
/** * Inserts or updates Linkus model. * * @param LinkusModel $linkus */ public function save(LinkusModel $linkus) { $fields = array('title' => $linkus->getTitle(), 'banner' => $linkus->getBanner()); if ($linkus->getId()) { $this->db()->update('linkus')->values($fields)->where(array('id' => $linkus->getId()))->execute(); } else { $this->db()->insert('linkus')->values($fields)->execute(); } }