Sha256: 8193703fc13b95128178e23d1ce0dd15dad21e2e849f3778d960c07dd60f5682

Contents?: true

Size: 634 Bytes

Versions: 44

Compression:

Stored size: 634 Bytes

Contents

# frozen_string_literal: true

module Renalware
  module System
    class UsersPresenter
      def list_for_dropdown(user_to_promote_to_top: nil)
        return users if user_to_promote_to_top.blank?
        matching_user = users.detect{ |user| user.id == user_to_promote_to_top.id }
        make_user_first_in_list(matching_user) if matching_user.present?
        users
      end

      private

      def make_user_first_in_list(user)
        users.delete(user)
        users.unshift(user)
      end

      def users
        @users ||= Renalware::User.select(:id, :family_name, :given_name).ordered.to_a
      end
    end
  end
end

Version data entries

44 entries across 44 versions & 1 rubygems

Version Path
renalware-core-2.0.46 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.45 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.44 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.43 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.42 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.41 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.40 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.39 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.38 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.37 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.36 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.35 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.34 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.33 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.32 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.31 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.30 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.28 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.27 app/presenters/renalware/system/users_presenter.rb
renalware-core-2.0.26 app/presenters/renalware/system/users_presenter.rb