diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/general_controller.rb | 4 | ||||
-rw-r--r-- | app/models/info_request_event.rb | 12 |
2 files changed, 12 insertions, 4 deletions
diff --git a/app/controllers/general_controller.rb b/app/controllers/general_controller.rb index 11a1a61d7..8dd5e2384 100644 --- a/app/controllers/general_controller.rb +++ b/app/controllers/general_controller.rb @@ -5,7 +5,7 @@ # Copyright (c) 2008 UK Citizens Online Democracy. All rights reserved. # Email: francis@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: general_controller.rb,v 1.42 2008-09-08 02:05:13 francis Exp $ +# $Id: general_controller.rb,v 1.43 2008-09-08 11:33:10 francis Exp $ class GeneralController < ApplicationController @@ -23,7 +23,7 @@ class GeneralController < ApplicationController # Get some successful requests query = 'variety:response (status:successful OR status:partially_successful)' sortby = "described" - @xapian_object = perform_search([InfoRequestEvent], query, sortby, 'request_collapse', 8) + @xapian_object = perform_search([InfoRequestEvent], query, sortby, 'request_title_collapse', 8) @successful_requests = @xapian_object.results.map { |r| r[:model].info_request } end diff --git a/app/models/info_request_event.rb b/app/models/info_request_event.rb index ae6efcf84..4faeb0bdd 100644 --- a/app/models/info_request_event.rb +++ b/app/models/info_request_event.rb @@ -21,7 +21,7 @@ # Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. # Email: francis@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: info_request_event.rb,v 1.55 2008-08-31 13:08:24 francis Exp $ +# $Id: info_request_event.rb,v 1.56 2008-09-08 11:33:11 francis Exp $ class InfoRequestEvent < ActiveRecord::Base belongs_to :info_request @@ -64,7 +64,8 @@ class InfoRequestEvent < ActiveRecord::Base acts_as_xapian :texts => [ :search_text_main, :title ], :values => [ [ :created_at, 0, "created_at", :date ], [ :described_at_numeric, 1, "described_at", :number ], # XXX using :number for lack of :datetime support in Xapian values - [ :request, 2, "request_collapse", :string ] + [ :request, 2, "request_collapse", :string ], + [ :request_title_collapse, 3, "request_title_collapse", :string ] ], :terms => [ [ :calculated_state, 'S', "status" ], [ :requested_by, 'B', "requested_by" ], @@ -93,6 +94,13 @@ class InfoRequestEvent < ActiveRecord::Base def request self.info_request.url_title end + def request_title_collapse + url_title = self.info_request.url_title + # remove numeric section from the end, use this to group lots + # of similar requests by + url_title.gsub!(/[_0-9]+$/, "") + return url_title + end def described_at # For responses, people might have RSS feeds on searches for type of # response (e.g. successful) in which case we want to date sort by |