Sha256: f05721b88ad14832fc5230dc576e98946848c799da5dbe37570b4842e6d37b2d

Contents?: true

Size: 885 Bytes

Versions: 67

Compression:

Stored size: 885 Bytes

Contents

# frozen_string_literal: true

require "attr_extras"

module Renalware
  # A base class for Summary presenters in other name-spaces. SummaryParts can be composed into
  # reporting dashboards or summary pages. The Clinical Summary for instance comprises an array
  # of various SummaryParts
  class SummaryPart
    DATE_FORMAT = "%Y%m%d%H%M%S%L"
    rattr_initialize :patient, :current_user
    attr_implement :to_partial_path

    # If the subclass defines a cache_key Rails will cache the partial
    def cache_key
      nil
    end

    def render?
      true
    end

    def cache?
      cache_key.present?
    end

    protected

    def date_formatted_for_cache(date)
      date&.strftime(DATE_FORMAT)
    end

    def title_friendly_collection_count(actual:, total:)
      if total > actual
        "#{actual} of #{total}"
      else
        actual
      end
    end
  end
end

Version data entries

67 entries across 67 versions & 1 rubygems

Version Path
renalware-core-2.0.159 app/presenters/renalware/summary_part.rb
renalware-core-2.0.158 app/presenters/renalware/summary_part.rb
renalware-core-2.0.157 app/presenters/renalware/summary_part.rb
renalware-core-2.0.156 app/presenters/renalware/summary_part.rb
renalware-core-2.0.155 app/presenters/renalware/summary_part.rb
renalware-core-2.0.153 app/presenters/renalware/summary_part.rb
renalware-core-2.0.152 app/presenters/renalware/summary_part.rb
renalware-core-2.0.151 app/presenters/renalware/summary_part.rb
renalware-core-2.0.149 app/presenters/renalware/summary_part.rb
renalware-core-2.0.148 app/presenters/renalware/summary_part.rb
renalware-core-2.0.147 app/presenters/renalware/summary_part.rb
renalware-core-2.0.146 app/presenters/renalware/summary_part.rb
renalware-core-2.0.145 app/presenters/renalware/summary_part.rb
renalware-core-2.0.144 app/presenters/renalware/summary_part.rb
renalware-core-2.0.143 app/presenters/renalware/summary_part.rb
renalware-core-2.0.142 app/presenters/renalware/summary_part.rb
renalware-core-2.0.141 app/presenters/renalware/summary_part.rb
renalware-core-2.0.140 app/presenters/renalware/summary_part.rb
renalware-core-2.0.139 app/presenters/renalware/summary_part.rb
renalware-core-2.0.138 app/presenters/renalware/summary_part.rb