public function allSubforums($forum_ids = null, $new_forum_ids = null)
{
if ($forum_ids === null) {
$forum_ids = $new_forum_ids = [$this->forum_id];
}
$new_forum_ids = model_pluck(static::whereIn('parent_id', $new_forum_ids), 'forum_id');
$new_forum_ids = array_map('intval', $new_forum_ids);
$forum_ids = array_merge($forum_ids, $new_forum_ids);
if (count($new_forum_ids) === 0) {
return $forum_ids;
} else {
return $this->allSubforums($forum_ids, $new_forum_ids);
}
}