/** * Admin - edit post * * @param integer $id ID of post * @return void */ public function actionEdit($id = null) { // authorization $this->checkAuth(); $data = array(); $data['page_title'] = 'New post'; $post = array('title' => '', 'uri' => '', 'annotation' => '', 'content' => '', 'category_id' => ''); if (!is_null($id)) { $post = $this->db->post[$id]; if ($post) { $data['page_title'] = 'Edit post'; } else { $this->notFound(); } } // Form $form = new Forms('postEdit'); $form->successMessage = 'Your post was saved.'; $form->errorMessage = 'Error while saving post. Try it later.'; $form->addInput('text', 'title', 'Title', true, $post['title']); $form->addInput('text', 'uri', 'URI', false, $post['uri']); // categories $categories = array('' => '= Choose category ='); foreach ($this->db->category() as $category) { $categories[$category['id']] = $category['title']; } $form->addSelect('category_id', 'Category', $categories, true, $post['category_id']); $form->addTextArea('annotation', 'Annotation', true, $post['annotation']); $form->addTextArea('content', 'Content', true, $post['content']); $form->addSubmit('save', 'Save'); if ($form->isValid()) { $auth = new Auth($this->db); $saveData = $form->values(); $saveData['uri'] = trim($saveData['uri']); if ($saveData['uri'] == "") { $saveData['uri'] = $saveData['title']; } $saveData['uri'] = $this->text2url($saveData['uri']); $saveData['user_id'] = $auth->userInfo()->id; $saveData['updated'] = new NotORM_Literal("NOW()"); if (is_null($id)) { $saveData['created'] = new NotORM_Literal("NOW()"); $postSave = $this->db->post()->insert($saveData); } else { $postSave = $this->db->post[$id]->update($saveData); } if ($postSave) { $this->addMessage('success', 'Post saved'); $this->redirect('admin'); // $form->success(); } else { $form->error(); } } $data['editForm'] = $form->formHtml(); $data['isAdmin'] = true; $this->renderTemplate('post/edit', $data); }
/** * Edit comment * @return void */ public function actionEdit($id) { // authorization $this->checkAuth(); $data = array(); $data['page_title'] = 'Edit comment'; $comment = $this->db->comment[$id]; if (!$comment) { $this->notFound(); } // Form $form = new Forms('commentEdit'); $form->successMessage = 'Comment was saved.'; $form->errorMessage = 'Error while saving comment. Try it later.'; $form->addInput('text', 'name', 'Author', false, $comment['name']); $form->addInput('email', 'email', 'E-mail', true, $comment['email']); $form->addTextArea('comment', 'Comment', true, $comment['comment'], 2); $form->addSubmit('save', 'Save'); if ($form->isValid()) { $auth = new Auth($this->db); $saveData = $form->values(); $saveData['updated'] = new NotORM_Literal("NOW()"); $commentSave = $comment->update($saveData); if ($commentSave) { $this->addMessage('success', 'Comment saved'); $this->redirect('admin/comments'); } else { $form->error(); } } $data['editForm'] = $form->formHtml(); $data['isAdmin'] = true; $this->renderTemplate('comment/edit', $data); }