Class: Lcms::Engine::ResourceSerializer
- Inherits:
-
ActiveModel::Serializer
- Object
- ActiveModel::Serializer
- Lcms::Engine::ResourceSerializer
- Includes:
- ResourceHelper
- Defined in:
- app/serializers/lcms/engine/resource_serializer.rb
Overview
This is a subset of the previous ResourceSerializer, meant to be used on listings like find_lessons and search cards. We use this instead the full version (ResourceDetailsSerializer) to avoid expensive queries on data we don’t need (like downloads, and related)
Direct Known Subclasses
Instance Method Summary collapse
- #breadcrumb_title ⇒ Object
- #grade ⇒ Object
-
#is_assessment ⇒ Object
rubocop:disable Naming/PredicateName.
-
#is_foundational ⇒ Object
rubocop:disable Naming/PredicateName.
-
#is_opr ⇒ Object
rubocop:disable Naming/PredicateName.
-
#is_prerequisite ⇒ Object
rubocop:disable Naming/PredicateName.
- #path ⇒ Object
- #type ⇒ Object
Methods included from ResourceHelper
#back_to_resource_path, #bundle_heap_data, #copyrights_text, #download_heap_data, #download_per_category_limit, #prerequisites_standards, #resource_breadcrumbs_with_links, #show_resource_path, #type_name
Instance Method Details
#breadcrumb_title ⇒ Object
16 17 18 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 16 def Breadcrumbs.new(object).title end |
#grade ⇒ Object
20 21 22 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 20 def grade object.grades.average end |
#is_assessment ⇒ Object
rubocop:disable Naming/PredicateName
24 25 26 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 24 def is_assessment # rubocop:disable Naming/PredicateName object&.assessment? || short_title&.index('assessment').present? end |
#is_foundational ⇒ Object
rubocop:disable Naming/PredicateName
28 29 30 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 28 def is_foundational # rubocop:disable Naming/PredicateName object.document&.foundational? end |
#is_opr ⇒ Object
rubocop:disable Naming/PredicateName
32 33 34 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 32 def is_opr # rubocop:disable Naming/PredicateName object.opr? end |
#is_prerequisite ⇒ Object
rubocop:disable Naming/PredicateName
36 37 38 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 36 def is_prerequisite # rubocop:disable Naming/PredicateName object.prerequisite? end |
#path ⇒ Object
40 41 42 43 44 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 40 def path return document_path(object.document) if object.document? && !object.assessment? show_resource_path(object) end |
#type ⇒ Object
46 47 48 |
# File 'app/serializers/lcms/engine/resource_serializer.rb', line 46 def type object.curriculum_type end |