aboutsummaryrefslogtreecommitdiffstats
path: root/app/models/info_request.rb
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2013-11-21 12:38:07 +0000
committerLouise Crow <louise.crow@gmail.com>2013-11-25 16:07:14 +0000
commitffa22a2d2586c09ac502a4993abf8d74fcb5aa0a (patch)
tree826b380dc74d046dbb4e6199d29d02c6958b4639 /app/models/info_request.rb
parentb28f47a03417687a9cc813660a4b10813ed69c6a (diff)
Move getting similar requests to the InfoRequest model.
Diffstat (limited to 'app/models/info_request.rb')
-rw-r--r--app/models/info_request.rb15
1 files changed, 15 insertions, 0 deletions
diff --git a/app/models/info_request.rb b/app/models/info_request.rb
index 9463a236e..4b76269e3 100644
--- a/app/models/info_request.rb
+++ b/app/models/info_request.rb
@@ -1212,6 +1212,21 @@ public
end
end
+
+ # Get requests that have similar important terms
+ def similar_requests(limit=10)
+ xapian_similar = nil
+ xapian_similar_more = false
+ begin
+ xapian_similar = ActsAsXapian::Similar.new([InfoRequestEvent],
+ info_request_events,
+ :limit => limit,
+ :collapse_by_prefix => 'request_collapse')
+ xapian_similar_more = (xapian_similar.matches_estimated > limit)
+ rescue
+ end
+ return [xapian_similar, xapian_similar_more]
+ end
private
def set_defaults