Module: Workarea::Admin::FeaturedBrowseOptionProductsViewModel

Defined in:
app/view_models/workarea/admin/featured_browse_option_products_view_model.rb

Instance Method Summary collapse

Instance Method Details



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'app/view_models/workarea/admin/featured_browse_option_products_view_model.rb', line 4

def featured_products
  @featured_products ||=
    begin
      models = Catalog::Product.any_in(id: model.unique_product_ids).to_a

      results = model.product_ids.map do |id|
        id, option = BrowseOptionIds.split(id)
        tmp = models.detect { |m| m.id == id }
        next unless tmp.present?

        Admin::FeaturedBrowseOptionProductViewModel.new(
          tmp,
          tmp.browse_option => option&.optionize
        )
      end

      results.compact
    end
end