From 0153cb33dede09a0167d490204bdf10151ed15cc Mon Sep 17 00:00:00 2001 From: Frédéric Guillot Date: Fri, 1 Dec 2017 11:54:02 -0800 Subject: Add command to remove project activities after one year --- app/Model/ProjectActivityModel.php | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) (limited to 'app/Model') diff --git a/app/Model/ProjectActivityModel.php b/app/Model/ProjectActivityModel.php index 17cf6485..739fd787 100644 --- a/app/Model/ProjectActivityModel.php +++ b/app/Model/ProjectActivityModel.php @@ -33,17 +33,14 @@ class ProjectActivityModel extends Base */ public function createEvent($project_id, $task_id, $creator_id, $event_name, array $data) { - $values = array( + return $this->db->table(self::TABLE)->insert(array( 'project_id' => $project_id, 'task_id' => $task_id, 'creator_id' => $creator_id, 'event_name' => $event_name, 'date_creation' => time(), 'data' => json_encode($data), - ); - - $this->cleanup(PROJECT_ACTIVITIES_MAX_EVENTS - 1); - return $this->db->table(self::TABLE)->insert($values); + )); } /** @@ -73,15 +70,10 @@ class ProjectActivityModel extends Base * Remove old event entries to avoid large table * * @access public - * @param integer $max Maximum number of items to keep in the table + * @param integer $ts Timestamp */ - public function cleanup($max) + public function cleanup($ts) { - $total = $this->db->table(self::TABLE)->count(); - - if ($total > $max) { - $ids = $this->db->table(self::TABLE)->asc('id')->limit($total - $max)->findAllByColumn('id'); - $this->db->table(self::TABLE)->in('id', $ids)->remove(); - } + $this->db->table(self::TABLE)->lt('date_creation', $ts)->remove(); } } -- cgit v1.2.3