diff options
-rw-r--r-- | app/views/info_request_batch/show.html.erb | 33 | ||||
-rw-r--r-- | spec/controllers/info_request_batch_controller_spec.rb | 37 |
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 |