diff options
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/info_request.rb | 8 | ||||
-rw-r--r-- | app/models/user.rb | 12 |
2 files changed, 18 insertions, 2 deletions
diff --git a/app/models/info_request.rb b/app/models/info_request.rb index 28d82e989..b98eb1f64 100644 --- a/app/models/info_request.rb +++ b/app/models/info_request.rb @@ -23,7 +23,7 @@ # Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. # Email: francis@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: info_request.rb,v 1.136 2008-09-02 17:59:40 francis Exp $ +# $Id: info_request.rb,v 1.137 2008-09-11 10:37:37 francis Exp $ require 'digest/sha1' require File.join(File.dirname(__FILE__),'../../vendor/plugins/acts_as_xapian/lib/acts_as_xapian') @@ -678,6 +678,12 @@ public end end + # Used to find when event last changed + def InfoRequest.last_event_time_clause + '(select created_at from info_request_events where info_request_events.info_request_id = info_requests.id order by created_at desc limit 1)' + end + + end diff --git a/app/models/user.rb b/app/models/user.rb index f0416506e..579ab7265 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -22,7 +22,7 @@ # Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. # Email: francis@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: user.rb,v 1.66 2008-08-31 14:08:55 francis Exp $ +# $Id: user.rb,v 1.67 2008-09-11 10:37:37 francis Exp $ require 'digest/sha1' @@ -164,6 +164,16 @@ class User < ActiveRecord::Base return u end + # Returns list of requests which the user hasn't described. + def get_undescribed_requests + self.info_requests.find( + :all, + :conditions => [ 'awaiting_description = ? and ' + InfoRequest.last_event_time_clause + ' < ?', + true, Time.now() - 1.day + ] + ) + end + # Does the user magically gain powers as if they owned every request? # e.g. Can classify it def owns_every_request? |