5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/documentation/searchers/simple.rb', line 5
def search(query, options = {})
options[:page] ||= 1
options[:per_page] ||= 15
query_string = "content LIKE ? OR title LIKE ?", "%#{query}%", "%#{query}"
total_results = pages = Documentation::Page.where(query_string).count
pages = Documentation::Page.where(query_string)
pages = pages.offset((options[:page].to_i - 1) * options[:per_page].to_i)
pages = pages.limit(options[:per_page].to_i)
result = Documentation::SearchResult.new
result.page = options[:page].to_i
result.per_page = options[:per_page].to_i
result.total_results = total_results
result.query = query
result.time = 0
result.results = pages
result
end
|