diff --git a/app/controllers/admin/poll/officer_assignments_controller.rb b/app/controllers/admin/poll/officer_assignments_controller.rb index e34e1a142..3a704b21a 100644 --- a/app/controllers/admin/poll/officer_assignments_controller.rb +++ b/app/controllers/admin/poll/officer_assignments_controller.rb @@ -17,6 +17,7 @@ class Admin::Poll::OfficerAssignmentsController < Admin::BaseController @officer_assignment = ::Poll::OfficerAssignment.new(booth_assignment: @booth_assignment, officer_id: create_params[:officer_id], date: create_params[:date]) + @officer_assignment.final = true if @officer_assignment.date > @booth_assignment.poll.ends_at if @officer_assignment.save notice = t("admin.poll_officer_assignments.flash.create") @@ -48,7 +49,7 @@ class Admin::Poll::OfficerAssignmentsController < Admin::BaseController end def load_booth_assignment - @booth_assignment = ::Poll::BoothAssignment.find_by(poll_id: create_params[:poll_id], booth_id: create_params[:booth_id]) + @booth_assignment = ::Poll::BoothAssignment.includes(:poll).find_by(poll_id: create_params[:poll_id], booth_id: create_params[:booth_id]) end def redirect_if_blank_required_params diff --git a/app/helpers/polls_helper.rb b/app/helpers/polls_helper.rb index ed39f44e5..d6295739b 100644 --- a/app/helpers/polls_helper.rb +++ b/app/helpers/polls_helper.rb @@ -28,6 +28,11 @@ module PollsHelper options_for_select(options) end + def poll_final_recount_option(poll) + final_date = poll.ends_at.to_date + 1.day + options_for_select([[I18n.t("polls.final_date"), l(final_date)]]) + end + def poll_booths_select_options(poll) options = [] poll.booths.each do |booth| diff --git a/app/views/admin/poll/officer_assignments/index.html.erb b/app/views/admin/poll/officer_assignments/index.html.erb index 81ac5aa61..8bac58295 100644 --- a/app/views/admin/poll/officer_assignments/index.html.erb +++ b/app/views/admin/poll/officer_assignments/index.html.erb @@ -11,7 +11,7 @@