Sha256: 2ce4c85be4f296bd8d6283e3512f1213cb5d1069e6afa585f77984a932f3eb4d
Contents?: true
Size: 1.3 KB
Versions: 3
Compression:
Stored size: 1.3 KB
Contents
module Workarea module Search class Admin module Releasable def facets super.merge( upcoming_changes: upcoming_release_ids_with_changesets, active_by_segment: active_segment_ids ) end def status if model.active? 'active' else 'inactive' end end private def upcoming_release_ids_with_changesets (model_changesets + content_changesets).map(&:release_id) end def model_changesets Workarea::Release::Changeset .by_document_path(model) .any_in(release_id: upcoming_release_ids) end def content_changesets return [] unless content.present? content.changesets.any_in(release_id: upcoming_release_ids) end def upcoming_release_ids @upcoming_release_ids ||= Workarea::Release.upcoming.map(&:id) end def content return unless model.is_a?(Contentable) @content ||= Workarea::Content.for(model) end def active_segment_ids result = model.active_segment_ids_with_children + (content&.active_segment_ids_with_children || []) result.uniq end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems