aboutsummaryrefslogtreecommitdiffstats
path: root/app/controllers/admin_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/admin_controller.rb')
-rw-r--r--app/controllers/admin_controller.rb23
1 files changed, 22 insertions, 1 deletions
diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb
index b33b6a9fc..5810b4b04 100644
--- a/app/controllers/admin_controller.rb
+++ b/app/controllers/admin_controller.rb
@@ -4,7 +4,7 @@
# Copyright (c) 2009 UK Citizens Online Democracy. All rights reserved.
# Email: francis@mysociety.org; WWW: http://www.mysociety.org/
#
-# $Id: admin_controller.rb,v 1.24 2009-01-29 12:23:25 francis Exp $
+# $Id: admin_controller.rb,v 1.25 2009-06-23 13:52:25 francis Exp $
class AdminController < ApplicationController
@@ -15,4 +15,25 @@ class AdminController < ApplicationController
def local_request?
true
end
+
+ # Expire cached attachment files for a request
+ def expire_for_request(info_request)
+ # So is using latest censor rules
+ info_request.reload
+
+ # clear out cached entries
+ for incoming_message in info_request.incoming_messages
+ for attachment in incoming_message.get_attachments_for_display
+ expire_page :controller => 'request', :action => "get_attachment", :id => info_request.id,
+ :incoming_message_id => incoming_message.id,
+ :part => attachment.url_part_number, :file_name => attachment.display_filename
+ expire_page :controller => 'request', :action => "get_attachment_as_html", :id => info_request.id,
+ :incoming_message_id => incoming_message.id,
+ :part => attachment.url_part_number, :file_name => attachment.display_filename
+ end
+ end
+ end
+
+
end
+