Class: Thredded::SearchSqlBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/thredded/search_sql_builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(query, messageboard) ⇒ SearchSqlBuilder

Returns a new instance of SearchSqlBuilder.



6
7
8
9
10
# File 'lib/thredded/search_sql_builder.rb', line 6

def initialize(query, messageboard)
  @topic_builder = TopicSqlBuilder.new(query, messageboard)
  @post_builder = PostSqlBuilder.new(query, messageboard)
  @order_by = 'ORDER BY updated_at DESC'
end

Instance Method Details

#build ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/thredded/search_sql_builder.rb', line 12

def build
  [
    'SELECT * FROM thredded_topics WHERE id IN (', @post_builder.sql,
    'UNION', @topic_builder.sql,
    ')', @order_by,
    'LIMIT 50'
  ].join(' ')
end