Simplify MergedCommentTree#initialize
By setting the comments lazily in a different method, we can share its code with the parent class.
This commit is contained in:
@@ -2,14 +2,17 @@ class CommentTree
|
||||
|
||||
ROOT_COMMENTS_PER_PAGE = 10
|
||||
|
||||
attr_accessor :root_comments, :comments, :commentable, :page, :order
|
||||
attr_reader :root_comments, :commentable, :page, :order
|
||||
|
||||
def initialize(commentable, page, order = "confidence_score", valuations: false)
|
||||
@commentable = commentable
|
||||
@page = page
|
||||
@order = order
|
||||
@valuations = valuations
|
||||
@comments = root_comments + root_descendants
|
||||
end
|
||||
|
||||
def comments
|
||||
@comments ||= root_comments + root_descendants
|
||||
end
|
||||
|
||||
def root_comments
|
||||
|
||||
@@ -1,14 +1,10 @@
|
||||
class MergedCommentTree < CommentTree
|
||||
attr_accessor :commentables, :array_order
|
||||
attr_reader :commentables, :array_order
|
||||
|
||||
def initialize(commentables, page, order = "confidence_score")
|
||||
@commentables = commentables
|
||||
@commentable = commentables.first
|
||||
@page = page
|
||||
@order = order
|
||||
super(commentables.first, page, order)
|
||||
@array_order = set_array_order(order)
|
||||
|
||||
@comments = root_comments + root_descendants
|
||||
end
|
||||
|
||||
def root_comments
|
||||
|
||||
Reference in New Issue
Block a user