<% content_for :title, @page.header.presence || @page.questions.first.header.html_safe %>

<% content_for :before_content do %>
  <%= govuk_back_link(href: "javascript:history.back()") %>
<% end %>

<div data-controller="govukfrontend"></div>
<%= form_with model: @log, url: form_lettings_log_path(@log), method: "post", local: true do |f| %>
  <div class="govuk-grid-row">
    <div class="govuk-grid-column-<%= @page.questions[0].type == "interruption_screen" ? "full-from-desktop" : "two-thirds-from-desktop" %>">
      <% remove_other_page_errors(@log, @page) %>
      <%= f.govuk_error_summary %>

      <% if @page.header.present? || @page.header_partial.present? %>
        <h1 class="govuk-heading-l">
          <% if !@page.hide_subsection_label %>
            <span class="govuk-caption-l"><%= @subsection.label %></span>
          <% end %>
          <% if @page.header_partial.present? %>
            <%= render partial: "form/headers/#{@page.header_partial}", locals: { log: @log } %>
          <% else %>
            <%= @page.header %>
          <% end %>
        </h1>
      <% end %>

      <% if @page.description.present? %>
        <p class="govuk-body govuk-body-m"><%= @page.description.html_safe %></p>
      <% end %>

      <% @page.non_conditional_questions.map do |question| %>
        <div id="<%= question.id %>_div" <%= display_question_key_div(@page, question) %>>
          <% if question.read_only? %>
            <%= govuk_section_break(visible: true, size: "m") %>
          <% end %>
          <% if question.type == "interruption_screen" %>
            <%= render partial: "form/#{question.type}_question", locals: { question:, caption_text: @subsection.label, page_header: @page.header, lettings_log: @log, title_text: @page.title_text, informative_text: @page.informative_text, form: @form, f:, conditional: false } %>
          <% else %>
            <%= render partial: "form/#{question.type}_question", locals: { question:, caption_text: @page.header_partial.present? ? nil : @subsection.label, page_header: @page.header, lettings_log: @log, f:, conditional: false } %>
          <% end %>
        </div>
      <% end %>

      <%= f.hidden_field :page, value: @page.id %>

      <div class="govuk-button-group">
        <% if !@page.id.include?("value_check") && if request.query_parameters["referrer"] != "check_answers" %>
          <%= f.govuk_submit "Save and continue" %>
          <%= govuk_link_to "Skip for now", send(@log.form.next_page_redirect_path(@page, @log, current_user), @log) %>
          <% else %>
          <%= f.govuk_submit "Save changes" %>
            <%= govuk_link_to "Cancel", send(@log.form.cancel_path(@page, @log), @log) %>
          <% end %>
        <% end %>
      </div>
    </div>
  </div>
<% end %>