class Documentation::SearchResult
Attributes
page[RW]
per_page[RW]
query[RW]
raw_results[RW]
results[RW]
time[RW]
total_results[RW]
Public Class Methods
new()
click to toggle source
# File lib/documentation/search_result.rb, line 12 def initialize @time = nil @raw_results = {} @page = 1 @total_pages = 1 @per_page = nil end
Public Instance Methods
empty?()
click to toggle source
Is the result set empty?
# File lib/documentation/search_result.rb, line 44 def empty? self.results.empty? end
end_result_number()
click to toggle source
The number of the last result on the current page
# File lib/documentation/search_result.rb, line 65 def end_result_number start_result_number + (results.size) - 1 end
excerpt_for(page)
click to toggle source
Return the highlight string for a given page
# File lib/documentation/search_result.rb, line 33 def excerpt_for(page) if @raw_results[page.id] && hl = @raw_results[page.id][:highlights] ERB::Util.html_escape((hl.join("..."))).gsub('{{{', "<mark>").gsub("}}}", "</mark>").html_safe else page.content[0,255].gsub(/[\n\r]/, '') + "..." end end
first_page?()
click to toggle source
Is this the first page of the result set?
# File lib/documentation/search_result.rb, line 72 def first_page? page == 1 end
last_page?()
click to toggle source
Is this the last page of the result set?
# File lib/documentation/search_result.rb, line 79 def last_page? page == total_pages end
start_result_number()
click to toggle source
The number of the first result on the current page
# File lib/documentation/search_result.rb, line 58 def start_result_number ((page - 1) * per_page) + 1 end
total_pages()
click to toggle source
The total number of pages in the result set
# File lib/documentation/search_result.rb, line 51 def total_pages (total_results / per_page.to_f).ceil end