aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLouise Crow <louise.crow@gmail.com>2013-11-27 17:55:03 +0000
committerLouise Crow <louise.crow@gmail.com>2013-12-04 09:32:45 +0000
commitdd25406c2c96eb1b59a825f866b22ee34365c06c (patch)
tree4b597ecf6bcf641890dd86901f386ef804bfdc19
parente95b95e78891e2c0e7e0307464637b38ed8b5a4d (diff)
Show public body list when batch has not been sent.
-rw-r--r--app/views/info_request_batch/show.html.erb33
-rw-r--r--spec/controllers/info_request_batch_controller_spec.rb37
2 files changed, 53 insertions, 17 deletions
diff --git a/app/views/info_request_batch/show.html.erb b/app/views/info_request_batch/show.html.erb
index 02583a9b5..aaecdd45d 100644
--- a/app/views/info_request_batch/show.html.erb
+++ b/app/views/info_request_batch/show.html.erb
@@ -1,10 +1,25 @@
-<% @title = _("Batch request") %>
+<% @title = _("{{title}} - a batch request", :title => @info_request_batch.title) %>
<h1><%= @title %></h1>
-<div class="results_section">
- <div class="results_block">
- <% @info_requests.each do |info_request| %>
- <%= render :partial => 'request/request_listing_via_event', :locals => { :event => info_request.last_event_forming_initial_request, :info_request => info_request } %>
- <% end %>
- </div>
- <%= will_paginate WillPaginate::Collection.new(@page, @per_page, @info_request_batch.info_requests.count) %>
-</div>
+<% if @info_request_batch.sent_at %>
+ <%= n_('Sent to one authority by {{info_request_user}} on {{date}}.', 'Sent to {{authority_count}} authorities by {{info_request_user}} on {{date}}.', @info_request_batch.info_requests.size, :authority_count=> @info_request_batch.info_requests.size, :info_request_user => user_link(@info_request_batch.user), :date => simple_date(@info_request_batch.sent_at)) %>
+ <div class="results_section">
+ <div class="results_block">
+ <% @info_requests.each do |info_request| %>
+ <%= render :partial => 'request/request_listing_via_event', :locals => { :event => info_request.last_event_forming_initial_request, :info_request => info_request } %>
+ <% end %>
+ </div>
+ <%= will_paginate WillPaginate::Collection.new(@page, @per_page, @info_request_batch.info_requests.visible.count) %>
+ </div>
+
+<% else %>
+ <%= _('Created by {{info_request_user}} on {{date}}.', :info_request_user => user_link(@info_request_batch.user), :date => simple_date(@info_request_batch.created_at)) %>
+ <%= _('Requests will be sent to the following bodies:') %>
+ <div class="results_section">
+ <div class="results_block">
+ <%= render :partial => 'public_body/body_listing', :locals => { :public_bodies => @public_bodies } %>
+ </div>
+ <%= will_paginate WillPaginate::Collection.new(@page, @per_page, @info_request_batch.public_bodies.count) %>
+ </div>
+
+<% end %>
+
diff --git a/spec/controllers/info_request_batch_controller_spec.rb b/spec/controllers/info_request_batch_controller_spec.rb
index b5075c4e0..2a282e9a1 100644
--- a/spec/controllers/info_request_batch_controller_spec.rb
+++ b/spec/controllers/info_request_batch_controller_spec.rb
@@ -4,10 +4,16 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
describe InfoRequestBatchController, "when showing a request" do
before do
+ @first_public_body = FactoryGirl.create(:public_body)
+ @second_public_body = FactoryGirl.create(:public_body)
@info_request_batch = FactoryGirl.create(:info_request_batch, :title => 'Matched title',
- :body => 'Matched body')
- @first_request = FactoryGirl.create(:info_request, :info_request_batch => @info_request_batch)
- @second_request = FactoryGirl.create(:info_request, :info_request_batch => @info_request_batch)
+ :body => 'Matched body',
+ :public_bodies => [@first_public_body,
+ @second_public_body])
+ @first_request = FactoryGirl.create(:info_request, :info_request_batch => @info_request_batch,
+ :public_body => @first_public_body)
+ @second_request = FactoryGirl.create(:info_request, :info_request_batch => @info_request_batch,
+ :public_body => @second_public_body)
@default_params = {:id => @info_request_batch.id}
end
@@ -20,13 +26,28 @@ describe InfoRequestBatchController, "when showing a request" do
response.should be_success
end
- it 'should assign info_requests to the view' do
- make_request
- assigns[:info_requests].should == [@first_request, @second_request]
- end
-
it 'should assign an info_request_batch to the view' do
make_request
assigns[:info_request_batch].should == @info_request_batch
end
+
+ context 'when the batch has not been sent' do
+
+ it 'should assign public_bodies to the view' do
+ make_request
+ assigns[:public_bodies].should == [@first_public_body, @second_public_body]
+ end
+ end
+
+ context 'when the batch has been sent' do
+
+ it 'should assign info_requests to the view' do
+ @info_request_batch.sent_at = Time.now
+ @info_request_batch.save!
+ make_request
+ assigns[:info_requests].should == [@first_request, @second_request]
+ end
+
+ end
+
end