ministryofjustice/Claim-for-Crown-Court-Defence

View on GitHub
app/views/shared/_message_controls.html.haml

Summary

Maintainability
Test Coverage
= form_with(model: message, authenticity_token: true, local: false) do |f|
  = f.hidden_field :claim_id, value: @claim.id

  = f.govuk_error_summary

  - if current_user_persona_is?(ExternalUser) && @claim.redeterminable?
    .js-hide-status.js-test-claim-action
      = f.govuk_collection_radio_buttons :claim_action,
        Claims::ExternalUserActions.available_for(@claim),
        :to_s,
        :to_s,
        inline: true,
        legend: { text: t('.update_claim_status') }

  - if messaging_permitted?(message) || current_user_is_caseworker?
    .message-column
      = f.govuk_text_area :body,
        label: { text: t('.message_placeholder') },
        rows: 10

    - if current_user_is_caseworker? && @claim.written_reasons_outstanding?
      .written-reasons-checkbox
        = f.govuk_check_boxes_fieldset :written_reasons_submitted, multiple: false, legend: { text: t('.written_reasons_heading'), size: 'm' } do
          = f.govuk_check_box :written_reasons_submitted,
            1,
            0,
            multiple: false,
            link_errors: true,
            label: { text: t('.written_reasons') }

    = f.govuk_file_field :attachment,
      label: { text: t('.attachment_label') },
      hint: { text: t('.accepted_files_help_text') }

    .file-to-be-uploaded.govuk-form-group
      %span.filename
      = govuk_link_to t('.remove_file_html'), '#'

    = f.govuk_submit t('.send'), class: 'govuk-button--secondary'