Sha256: 3cdba65757258d8f0653f76fffe86a730a7283dd577fd2add155ad8603558d78

Contents?: true

Size: 1.28 KB

Versions: 35

Compression:

Stored size: 1.28 KB

Contents

# frozen_string_literal: true

require_dependency "renalware/transplants/base_controller"

module Renalware
  module Transplants
    class WaitListsController < BaseController
      include Renalware::Concerns::Pageable

      # Here we display a named filter eg Active and query for patients based on registration
      # status and also any search criteria entered in the search form which is backed by our
      # ransack #search object.
      def show
        form = Registrations::WaitListForm.new(form_params)
        query = query_for(form)
        registrations = query.call.page(page).per(per_page || 50)
        authorize registrations
        render locals: {
          path_params: path_params,
          registrations: CollectionPresenter.new(registrations, WaitListRegistrationPresenter),
          q: query.search,
          form: form
        }
      end

      private

      def query_for(form)
        Registrations::WaitListQuery.new(
          named_filter: params[:named_filter],
          ukt_recipient_number: form.ukt_recipient_number,
          q: params[:q]
        )
      end

      def path_params
        params.permit([:controller, :action, :named_filter])
      end

      def form_params
        params.fetch(:form, {}).permit(:ukt_recipient_number)
      end
    end
  end
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
renalware-core-2.1.1 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.1.0 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.167 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.166 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.165 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.164 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.163 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.162 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.161 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.160 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.159 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.158 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.157 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.156 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.155 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.153 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.152 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.151 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.149 app/controllers/renalware/transplants/wait_lists_controller.rb
renalware-core-2.0.148 app/controllers/renalware/transplants/wait_lists_controller.rb