summaryrefslogtreecommitdiff
path: root/app/Model/Comment.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Model/Comment.php')
-rw-r--r--app/Model/Comment.php158
1 files changed, 0 insertions, 158 deletions
diff --git a/app/Model/Comment.php b/app/Model/Comment.php
deleted file mode 100644
index 7d3e1d6e..00000000
--- a/app/Model/Comment.php
+++ /dev/null
@@ -1,158 +0,0 @@
-<?php
-
-namespace Kanboard\Model;
-
-use Kanboard\Event\CommentEvent;
-
-use Kanboard\Core\Base;
-
-/**
- * Comment model
- *
- * @package model
- * @author Frederic Guillot
- */
-class Comment extends Base
-{
- /**
- * SQL table name
- *
- * @var string
- */
- const TABLE = 'comments';
-
- /**
- * Events
- *
- * @var string
- */
- const EVENT_UPDATE = 'comment.update';
- const EVENT_CREATE = 'comment.create';
- const EVENT_USER_MENTION = 'comment.user.mention';
-
- /**
- * Get all comments for a given task
- *
- * @access public
- * @param integer $task_id Task id
- * @param string $sorting ASC/DESC
- * @return array
- */
- public function getAll($task_id, $sorting = 'ASC')
- {
- return $this->db
- ->table(self::TABLE)
- ->columns(
- self::TABLE.'.id',
- self::TABLE.'.date_creation',
- self::TABLE.'.task_id',
- self::TABLE.'.user_id',
- self::TABLE.'.comment',
- User::TABLE.'.username',
- User::TABLE.'.name',
- User::TABLE.'.email',
- User::TABLE.'.avatar_path'
- )
- ->join(User::TABLE, 'id', 'user_id')
- ->orderBy(self::TABLE.'.date_creation', $sorting)
- ->eq(self::TABLE.'.task_id', $task_id)
- ->findAll();
- }
-
- /**
- * Get a comment
- *
- * @access public
- * @param integer $comment_id Comment id
- * @return array
- */
- public function getById($comment_id)
- {
- return $this->db
- ->table(self::TABLE)
- ->columns(
- self::TABLE.'.id',
- self::TABLE.'.task_id',
- self::TABLE.'.user_id',
- self::TABLE.'.date_creation',
- self::TABLE.'.comment',
- self::TABLE.'.reference',
- User::TABLE.'.username',
- User::TABLE.'.name',
- User::TABLE.'.email',
- User::TABLE.'.avatar_path'
- )
- ->join(User::TABLE, 'id', 'user_id')
- ->eq(self::TABLE.'.id', $comment_id)
- ->findOne();
- }
-
- /**
- * Get the number of comments for a given task
- *
- * @access public
- * @param integer $task_id Task id
- * @return integer
- */
- public function count($task_id)
- {
- return $this->db
- ->table(self::TABLE)
- ->eq(self::TABLE.'.task_id', $task_id)
- ->count();
- }
-
- /**
- * Create a new comment
- *
- * @access public
- * @param array $values Form values
- * @return boolean|integer
- */
- public function create(array $values)
- {
- $values['date_creation'] = time();
- $comment_id = $this->db->table(self::TABLE)->persist($values);
-
- if ($comment_id) {
- $event = new CommentEvent(array('id' => $comment_id) + $values);
- $this->dispatcher->dispatch(self::EVENT_CREATE, $event);
- $this->userMention->fireEvents($values['comment'], self::EVENT_USER_MENTION, $event);
- }
-
- return $comment_id;
- }
-
- /**
- * Update a comment in the database
- *
- * @access public
- * @param array $values Form values
- * @return boolean
- */
- public function update(array $values)
- {
- $result = $this->db
- ->table(self::TABLE)
- ->eq('id', $values['id'])
- ->update(array('comment' => $values['comment']));
-
- if ($result) {
- $this->container['dispatcher']->dispatch(self::EVENT_UPDATE, new CommentEvent($values));
- }
-
- return $result;
- }
-
- /**
- * Remove a comment
- *
- * @access public
- * @param integer $comment_id Comment id
- * @return boolean
- */
- public function remove($comment_id)
- {
- return $this->db->table(self::TABLE)->eq('id', $comment_id)->remove();
- }
-}