diff --git a/app/controllers/plan_exports_controller.rb b/app/controllers/plan_exports_controller.rb index a26e018..d2e8a3a 100644 --- a/app/controllers/plan_exports_controller.rb +++ b/app/controllers/plan_exports_controller.rb @@ -25,8 +25,13 @@ end @hash = @plan.as_pdf(@show_coversheet) - @formatting = params[:export][:formatting] || @plan.settings(:export).formatting - @selected_phase = @plan.phases.find(params[:phase_id]) + @formatting = export_params[:formatting] || @plan.settings(:export).formatting + if params.key?(:phase_id) + @selected_phase = @plan.phases.find(params[:phase_id]) + else + @selected_phase = @plan.phases.order("phases.updated_at DESC") + .detect { |p| p.visibility_allowed?(@plan) } + end respond_to do |format| format.html { show_html } @@ -90,6 +95,6 @@ end def export_params - params[:export] + params.fetch(:export, {}) end end diff --git a/app/models/phase.rb b/app/models/phase.rb index 58a466d..3687d4a 100644 --- a/app/models/phase.rb +++ b/app/models/phase.rb @@ -111,4 +111,9 @@ end n end + + def visibility_allowed?(plan) + value = Rational(num_answered_questions(plan), num_questions) * 100 + value >= Rails.application.config.default_plan_percentage_answered + end end