コード例 #1
0
 public function editAction($id)
 {
     $id = (int) $id;
     $form = new PageForm();
     $model = Page::findFirst($id);
     if ($model->getSlug() == 'index') {
         $form->get('slug')->setAttribute('disabled', 'disabled');
     }
     if ($this->request->isPost()) {
         $post = $this->request->getPost();
         $form->bind($post, $model);
         if ($form->isValid()) {
             $model->updateFields($post);
             if ($model->save()) {
                 $this->flash->success($this->helper->at('Updated has been successful'));
                 // Очищаем кеш страницы
                 $query = "slug = '{$model->getSlug()}'";
                 $key = md5("Page::findFirst({$query})");
                 $this->cache->delete($key);
                 return $this->redirect($this->url->get() . 'page/admin/edit/' . $model->getId() . '?lang=' . LANG);
             } else {
                 $this->flashErrors($model);
             }
         } else {
             $this->flashErrors($form);
         }
     } else {
         $form->setEntity($model);
     }
     $this->view->model = $model;
     $this->view->form = $form;
     $this->helper->title($this->helper->at('Edit Page'), true);
 }
コード例 #2
0
 public function editAction($id)
 {
     $id = (int) $id;
     $form = new PageForm();
     $model = Page::findFirst(array("id = {$id}"));
     if ($this->request->isPost()) {
         $form->bind($this->request->getPost(), $model);
         if ($form->isValid()) {
             if ($model->save()) {
                 $this->flash->success('Информация обновлена');
                 // Очищаем кеш страницы
                 $query = "slug = '{$model->getSlug()}'";
                 $key = md5("Page::findFirst({$query})");
                 $this->cache->delete($key);
                 return $this->redirect('/page/admin/edit/' . $model->getId());
             } else {
                 $this->flashErrors($model);
             }
         } else {
             $this->flashErrors($form);
         }
     } else {
         $form->setEntity($model);
     }
     $this->view->model = $model;
     $this->view->form = $form;
     $this->view->title = 'Редактирование страницы';
     $this->helper->title('Редактирование страницы');
 }
コード例 #3
0
 public function addAction()
 {
     $form = new PageForm();
     //Создаем форму
     $request = $this->getRequest();
     //Обращение к запросу в форме (получение запроса)
     if ($request->isPost()) {
         $page = new Model\Page();
         $form->setInputFilter($page->getInputFilter());
         //Привязываем фильтр
         //Заполняем форму значениями
         $form->setData($request->getPost());
         //Используем фильтр
         if ($form->isValid()) {
             $page->exchangeArray($form->getData());
             //Формируем массив
             $this->getPageTable()->savePage($page);
             //Возвращаем и сохраняем
             return $this->redirect()->toRoute('page');
         }
     }
     return new ViewModel(['form' => $form]);
 }
コード例 #4
0
 /**
  *
  * @return \Zend\View\Model\ViewModel
  */
 public function addAction()
 {
     $form = new PageForm();
     $request = $this->getRequest();
     if ($request->isPost()) {
         $page = new Page();
         $form->setInputFilter($page->getInputFilter());
         $form->setData($request->getPost());
         if ($form->isValid()) {
             $page->exchangeArray($form->getData());
             $this->getPageTable()->savePage($page);
             $this->redirect()->toRoute("page");
         }
     }
     return new ViewModel(array("form" => $form));
 }