Sha256: dd174c84ba750d358ef85f9bcb1d86222dd1954ff35b2cd30c7a19ae09d8cd8f

Contents?: true

Size: 1.04 KB

Versions: 37

Compression:

Stored size: 1.04 KB

Contents

# frozen_string_literal: true

require_dependency "renalware/modalities"

module Renalware
  module Modalities
    class Description < ApplicationRecord
      acts_as_paranoid

      validates :name, presence: true, uniqueness: true

      def to_s
        name
      end

      def to_sym
        nil
      end

      def self.policy_class
        Modalities::DescriptionPolicy
      end

      # Modalities::Description subclasses can override this to for instance add
      # the patient's 'HD Site' add after 'HD'
      def augmented_name_for(_patient)
        name
      end

      # For a ModalityDescription with type Renalware::HD::ModalityDescription
      # this will return "hd"
      def namespace
        return if type.blank?

        namespace_raw.underscore
      end

      # For a ModalityDescription with type Renalware::HD::ModalityDescription
      # this will return "HD"
      def namespace_raw
        return if type.blank?

        type.gsub("::", "").gsub(/^Renalware/, "").gsub(/ModalityDescription$/, "")
      end
    end
  end
end

Version data entries

37 entries across 37 versions & 1 rubygems

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