diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/request_controller.rb | 6 | ||||
-rw-r--r-- | app/helpers/link_to_helper.rb | 4 | ||||
-rw-r--r-- | app/models/info_request.rb | 9 | ||||
-rw-r--r-- | app/views/request/_classify.rhtml | 15 | ||||
-rw-r--r-- | app/views/request/_correspondence.rhtml | 10 | ||||
-rw-r--r-- | app/views/request/classify.rhtml | 15 | ||||
-rw-r--r-- | app/views/request/show.rhtml | 22 |
7 files changed, 54 insertions, 27 deletions
diff --git a/app/controllers/request_controller.rb b/app/controllers/request_controller.rb index adb469923..1c5cef751 100644 --- a/app/controllers/request_controller.rb +++ b/app/controllers/request_controller.rb @@ -4,7 +4,7 @@ # Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. # Email: francis@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: request_controller.rb,v 1.22 2007-12-22 02:52:05 francis Exp $ +# $Id: request_controller.rb,v 1.23 2007-12-24 16:49:36 francis Exp $ class RequestController < ApplicationController @@ -82,6 +82,10 @@ class RequestController < ApplicationController flash[:notice] = "Thank you for classifying the response." redirect_to show_request_url(:id => @info_request) end + if params[:incoming_message_id] + # Case when didn't choose radio option, but did submit form + flash[:error] = "Please choose whether or not you got some of the information that you wanted." + end @correspondences = @info_request.outgoing_messages + @info_request.incoming_messages @correspondences.sort! { |a,b| a.sent_at <=> b.sent_at } diff --git a/app/helpers/link_to_helper.rb b/app/helpers/link_to_helper.rb index 054bcbf3d..7ef8a8186 100644 --- a/app/helpers/link_to_helper.rb +++ b/app/helpers/link_to_helper.rb @@ -5,7 +5,7 @@ # Copyright (c) 2007 UK Citizens Online Democracy. All rights reserved. # Email: francis@mysociety.org; WWW: http://www.mysociety.org/ # -# $Id: link_to_helper.rb,v 1.5 2007-12-20 16:42:43 francis Exp $ +# $Id: link_to_helper.rb,v 1.6 2007-12-24 16:49:36 francis Exp $ module LinkToHelper @@ -19,7 +19,7 @@ module LinkToHelper def request_link(info_request) link_to h(info_request.title), request_url(info_request) end - + def public_body_url(public_body) return show_public_body_url(:simple_short_name => simplify_url_part(public_body.short_name), :only_path => true) end diff --git a/app/models/info_request.rb b/app/models/info_request.rb index c295a57a8..d1db6f1a4 100644 --- a/app/models/info_request.rb +++ b/app/models/info_request.rb @@ -17,7 +17,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.16 2007-12-11 12:16:29 francis Exp $ +# $Id: info_request.rb,v 1.17 2007-12-24 16:49:36 francis Exp $ require 'digest/sha1' @@ -116,6 +116,13 @@ class InfoRequest < ActiveRecord::Base end end + # Return array of unclassified responses + def unclassified_responses + return self.incoming_messages.select do |msg| + not msg.user_classified + end + end + end diff --git a/app/views/request/_classify.rhtml b/app/views/request/_classify.rhtml new file mode 100644 index 000000000..cf27d734c --- /dev/null +++ b/app/views/request/_classify.rhtml @@ -0,0 +1,15 @@ +<% form_for(:incoming_message, @info_request ) do |f| %> + <h2>Got what you wanted?</h2> + <p>Does this response contain any of the information that you requested?</p> + <p> + <%= radio_button "incoming_message", "contains_information", "true" %> + <label for="incoming_message_contains_information_true">Yes, this response contains some or all of the information that I requested.</label> + <br> + <%= radio_button "incoming_message", "contains_information", "false" %> + <label for="incoming_message_contains_information_false">No, this response does not contain any of the information.</label> + </p> + + <%= submit_tag "Update" %> + +<% end %> + diff --git a/app/views/request/_correspondence.rhtml b/app/views/request/_correspondence.rhtml index 80f92c50a..ea7ca4e6c 100644 --- a/app/views/request/_correspondence.rhtml +++ b/app/views/request/_correspondence.rhtml @@ -28,8 +28,16 @@ <%= incoming_message.mail.friendly_from %> of <% end %> <%= public_body_link(@info_request.public_body) %> - wrote a reply on <strong><%= simple_date(incoming_message.sent_at) + <% if incoming_message.contains_information %> + sent some <strong>useful information</strong> + <% else %> + replied + <% end %> + on <strong><%= simple_date(incoming_message.sent_at) %></strong> + <% if not incoming_message.user_classified %> + — please <%= link_to "classify this response", classify_request_url(:incoming_message_id => incoming_message.id) %> + <% end %> </p> <% else %> <% raise "Unknown correspondence type " + correspondence.class.to_s %> diff --git a/app/views/request/classify.rhtml b/app/views/request/classify.rhtml index c6ce42d14..15789858e 100644 --- a/app/views/request/classify.rhtml +++ b/app/views/request/classify.rhtml @@ -10,20 +10,7 @@ <% if not @incoming_message.user_classified %> <div id="classify_action"> - <% form_for(:incoming_message, @info_request ) do |f| %> - <h2>Got what you wanted?</h2> - <p>Does this response contain any of the information that you requested?</p> - <p> - <%= radio_button "incoming_message", "contains_information", "true" %> - <label for="incoming_message_contains_information_true">Yes, this response contains some or all of the information that I requested.</label> - <br> - <%= radio_button "incoming_message", "contains_information", "false" %> - <label for="incoming_message_contains_information_false">No, this response does not contain any of the information.</label> - </p> - - <%= submit_tag "Update" %> - - <% end %> + <%= render :partial => 'classify' %> <div> <% end %> diff --git a/app/views/request/show.rhtml b/app/views/request/show.rhtml index 83e183c81..99ba55d11 100644 --- a/app/views/request/show.rhtml +++ b/app/views/request/show.rhtml @@ -11,18 +11,24 @@ <p id="request_status"> <% if @status == 'awaiting' %> - Currently <strong>waiting for a response</strong> from <%= public_body_link(@info_request.public_body) %> + Currently <strong>waiting for a response</strong> from <%= public_body_link(@info_request.public_body) %> <% elsif @status == 'overdue' %> - Currently <strong>overdue a response</strong> from <%= - public_body_link(@info_request.public_body) %>. Under section blah of the - Freedom of Information Act 2000 responses must be made within 20 working days. + Currently <strong>overdue a response</strong> from <%= + public_body_link(@info_request.public_body) %>. Under section blah of the + Freedom of Information Act 2000 responses must be made within 20 working days. <% elsif @status == 'information' %> - The request was at least partly <strong>successful</strong>. + The request was at least partly <strong>successful</strong>. <% elsif @status == 'none' %> - The request is <strong>not (yet) successful</strong>. + The request is <strong>not (yet) successful</strong>. <% elsif @status == 'unknown' %> - <strong>Response received</strong>, but <%= user_link(@info_request.user) %> has not yet reported if it was - successful or a rejection. + <strong><%= MySociety::Format.fancy_pluralize(@info_request.incoming_messages.size, 'Response', 'responses') %> + received</strong>, + but <%= user_link(@info_request.user) %> has not yet reported whether + <%= @info_request.incoming_messages.size == 1 ? 'it' : 'they' %> + contained useful information or not. + + If you are <%= user_link(@info_request.user) %>, please classify them below. + <!-- This will be useful here too: @info_request.unclassified_responses --> <% else %> <% raise "unknown status " + $status %> <% end %> |