diff options
-rw-r--r-- | app/controllers/request_controller.rb | 3 | ||||
-rw-r--r-- | app/models/info_request.rb | 3 | ||||
-rw-r--r-- | app/views/request/_followup.rhtml | 4 | ||||
-rw-r--r-- | app/views/request/show.rhtml | 35 | ||||
-rw-r--r-- | todo.txt | 4 |
5 files changed, 30 insertions, 19 deletions
diff --git a/app/controllers/request_controller.rb b/app/controllers/request_controller.rb index a8cdd098e..98924f0a0 100644 --- a/app/controllers/request_controller.rb +++ b/app/controllers/request_controller.rb @@ -323,6 +323,9 @@ class RequestController < ApplicationController elsif @info_request.calculate_status == 'waiting_response_overdue' flash[:notice] = "<p>Thank you! Hope you don't have to wait much longer.</p> <p>By law, you should have got a response promptly, and normally before the end of <strong>" + simple_date(@info_request.date_response_required_by) + "</strong>.</p>" redirect_to request_url(@info_request) + elsif @info_request.calculate_status == 'waiting_response_very_overdue' + flash[:notice] = "<p>Thank you! Your request is long overdue, by more than 40 working days. Most requests should be answered within 20 working days. You might like to complain about this, see below.</p>" + redirect_to unhappy_url(@info_request) elsif @info_request.calculate_status == 'not_held' flash[:notice] = "<p>Thank you! Here are some ideas on what to do next:</p> <ul> diff --git a/app/models/info_request.rb b/app/models/info_request.rb index f3e7a29c6..0d55de8b4 100644 --- a/app/models/info_request.rb +++ b/app/models/info_request.rb @@ -487,6 +487,7 @@ public # self.described_state, can take these two values: # waiting_classification # waiting_response_overdue + # waiting_response_very_overdue def calculate_status return 'waiting_classification' if self.awaiting_description return described_state unless self.described_state == "waiting_response" @@ -729,6 +730,8 @@ public "Awaiting response." elsif status == 'waiting_response_overdue' "Response overdue." + elsif status == 'waiting_response_very_overdue' + "Response long overdue." elsif status == 'not_held' "Information not held." elsif status == 'rejected' diff --git a/app/views/request/_followup.rhtml b/app/views/request/_followup.rhtml index 489696ed3..f18dd32f3 100644 --- a/app/views/request/_followup.rhtml +++ b/app/views/request/_followup.rhtml @@ -32,9 +32,9 @@ that was not in your original request, then <%= link_to "file a new request", new_request_to_body_url(:public_body_id => @info_request.public_body.id.to_s) %>. - <% if @info_request.calculate_status == 'waiting_response_overdue' %> + <% if @info_request.calculate_status == 'waiting_response_overdue' || @info_request.calculate_status == 'waiting_response_very_overdue' %> <p> - <% if @info_request.working_days_20_overdue? %> + <% if @info_request.calculate_status == 'waiting_response_very_overdue' %> This request is <strong>long overdue a response</strong>. <% else %> This request is <strong>overdue a response</strong>. diff --git a/app/views/request/show.rhtml b/app/views/request/show.rhtml index 5b89a6d12..03ded06dc 100644 --- a/app/views/request/show.rhtml +++ b/app/views/request/show.rhtml @@ -58,28 +58,29 @@ Currently <strong>waiting for a response</strong> from <%= public_body_link(@info_request.public_body) %>, they <%= link_to "must respond", about_url + "#quickly_response" %> promptly but no later than <strong><%= simple_date(@info_request.date_response_required_by) %></strong>. - <% elsif @status == 'waiting_response_overdue' %> - <% if @info_request.working_days_20_overdue? %> - This request is <strong>long overdue a response</strong>. - By law, <%= public_body_link(@info_request.public_body) %> - should normally have answered by - <strong><%= simple_date(@info_request.date_response_required_by) %></strong> - (<%= link_to "more details", about_url + "#quickly_response" %>). - You can <strong>complain</strong> by - <%= link_to "requesting an internal review", show_response_no_followup_url(:id => @info_request.id, :incoming_message_id => nil) + "?internal_review=1#followup" %>. - <% else %> - This request is <strong>overdue a response</strong>. - By law, <%= public_body_link(@info_request.public_body) %> - should normally have answered by - <strong><%= simple_date(@info_request.date_response_required_by) %></strong>. - If they need extra time they should have told you - why (<%= link_to "more details", about_url + "#quickly_response" %>). + <% elsif @status == 'waiting_response_very_overdue' %> + This request is <strong>long overdue a response</strong>. + By law, <%= public_body_link(@info_request.public_body) %> + should normally have answered by + <strong><%= simple_date(@info_request.date_response_required_by) %></strong> + (<%= link_to "more details", about_url + "#quickly_response" %>). + You can <strong>complain</strong> by + <%= link_to "requesting an internal review", show_response_no_followup_url(:id => @info_request.id, :incoming_message_id => nil) + "?internal_review=1#followup" %>. + <% if @info_request.public_body.is_school? %> + This is a school, so legally they get lots of extra slack if it is + holiday time. <% end %> + <% elsif @status == 'waiting_response_overdue' %> + This request is <strong>overdue a response</strong>. + By law, <%= public_body_link(@info_request.public_body) %> + should normally have answered by + <strong><%= simple_date(@info_request.date_response_required_by) %></strong>. + If they need extra time they should have told you + why (<%= link_to "more details", about_url + "#quickly_response" %>). <% if @info_request.public_body.is_school? %> This is a school, so legally they get lots of extra slack if it is holiday time. <% end %> - <% elsif @status == 'not_held' %> <%= public_body_link(@info_request.public_body) %> <strong>did not have</strong> the information requested. <% elsif @status == 'rejected' %> @@ -23,7 +23,11 @@ waiting_response_overdue => waiting_response_slow, waiting_response_overdue Remove working_days_20_overdue? +Go through waiting_response_very_overdue/waiting_response_overdue and tighten wording + Send email at 40 days +models/request_mailer.rb self.alert_overdue_requests + Environmental Information Regulations allow for an extension but not an |