/**
  * Deletes a thread
  * 
  * @param int The id of the thread
  */
 public function delete($id)
 {
     $forumPost = ForumPost::isAccessible()->findOrFail($id);
     $forumThread = ForumThread::findOrFail($id);
     $forum = $forumThread->forum;
     ForumPost::whereThreadId($forumThread->id)->delete();
     /*
      * Updates the users posts counter
      */
     $query = DB::table('forum_posts')->whereThreadId(DB::raw($forumThread->id))->groupBy('creator_id')->select('creator_id', DB::raw('COUNT(creator_id) AS count'))->toSql();
     DB::table('users')->join(DB::raw('(' . $query . ') AS sq'), 'id', '=', 'creator_id')->update(['posts_count' => DB::raw('posts_count - count')]);
     $forumThread->delete();
     $forum->refresh();
 }