public function treatAction() { $privacyMapper = new PrivacyMapper(); if ($this->getRequest()->getParam('id')) { $this->getLayout()->getAdminHmenu()->add($this->getTranslator()->trans('menuPrivacy'), array('action' => 'index'))->add($this->getTranslator()->trans('edit'), array('action' => 'treat')); $this->getView()->set('privacy', $privacyMapper->getPrivacyById($this->getRequest()->getParam('id'))); } else { $this->getLayout()->getAdminHmenu()->add($this->getTranslator()->trans('menuPrivacy'), array('action' => 'index'))->add($this->getTranslator()->trans('add'), array('action' => 'treat')); } if ($this->getRequest()->isPost()) { $model = new PrivacyModel(); if ($this->getRequest()->getParam('id')) { $model->setId($this->getRequest()->getParam('id')); } $title = trim($this->getRequest()->getPost('title')); $text = trim($this->getRequest()->getPost('text')); if (empty($title)) { $this->addMessage('missingTitle', 'danger'); } elseif (empty($text)) { $this->addMessage('missingText', 'danger'); } else { $model->setTitle($title); $model->setUrlTitle($this->getRequest()->getPost('urltitle')); $model->setUrl($this->getRequest()->getPost('url')); $model->setText($text); $model->setShow($this->getRequest()->getPost('show')); $privacyMapper->save($model); $this->addMessage('saveSuccess'); $this->redirect(array('action' => 'index')); } } }
/** * Inserts or updates privacy model. * * @param PrivacyModel $privacy */ public function save(PrivacyModel $privacy) { $fields = array('title' => $privacy->getTitle(), 'urltitle' => $privacy->getUrlTitle(), 'url' => $privacy->getUrl(), 'text' => $privacy->getText(), 'show' => $privacy->getShow()); if ($privacy->getId()) { $this->db()->update('privacy')->values($fields)->where(array('id' => $privacy->getId()))->execute(); } else { $this->db()->insert('privacy')->values($fields)->execute(); } }