diff --git a/app/assets/images/noimage/product.png b/app/assets/images/noimage/product.png index 44ca117e5f..7bb97178b9 100644 Binary files a/app/assets/images/noimage/product.png and b/app/assets/images/noimage/product.png differ diff --git a/app/assets/images/noimage/small.png b/app/assets/images/noimage/small.png index e8ed5f07d9..8c90a86449 100644 Binary files a/app/assets/images/noimage/small.png and b/app/assets/images/noimage/small.png differ diff --git a/app/assets/javascripts/darkswarm/services/products.js.coffee b/app/assets/javascripts/darkswarm/services/products.js.coffee index 561feddfc5..e6ff0d0b03 100644 --- a/app/assets/javascripts/darkswarm/services/products.js.coffee +++ b/app/assets/javascripts/darkswarm/services/products.js.coffee @@ -43,3 +43,5 @@ Darkswarm.factory 'Products', ($resource, Enterprises, Dereferencer, Taxons, Car prices = (v.price for v in product.variants) product.price = Math.min.apply(null, prices) product.hasVariants = product.variants?.length > 0 + + product.primaryImage = product.images[0]?.small_url || "/assets/noimage/small.png" diff --git a/app/serializers/api/product_serializer.rb b/app/serializers/api/product_serializer.rb index 547fa1ad25..ceeaf7148e 100644 --- a/app/serializers/api/product_serializer.rb +++ b/app/serializers/api/product_serializer.rb @@ -34,6 +34,7 @@ class Api::CachedProductSerializer < ActiveModel::Serializer has_many :variants, serializer: Api::VariantSerializer has_many :taxons, serializer: Api::IdSerializer has_many :properties, serializer: Api::PropertySerializer + has_many :images, serializer: Api::ImageSerializer has_one :supplier, serializer: Api::IdSerializer has_one :primary_taxon, serializer: Api::TaxonSerializer diff --git a/app/serializers/api/variant_serializer.rb b/app/serializers/api/variant_serializer.rb index eee592c0c5..c5dbe05634 100644 --- a/app/serializers/api/variant_serializer.rb +++ b/app/serializers/api/variant_serializer.rb @@ -1,7 +1,6 @@ class Api::VariantSerializer < ActiveModel::Serializer attributes :id, :is_master, :count_on_hand, :name_to_display, :unit_to_display, :on_demand, :price - has_many :images, serializer: Api::ImageSerializer def price object.price_with_fees(options[:current_distributor], options[:current_order_cycle]) diff --git a/app/views/shop/products/_summary.html.haml b/app/views/shop/products/_summary.html.haml index b0f23673b1..45b6136875 100644 --- a/app/views/shop/products/_summary.html.haml +++ b/app/views/shop/products/_summary.html.haml @@ -1,6 +1,6 @@ .product-thumb %a{"ng-click" => "triggerProductModal()"} - %img{"bo-src" => "product.master.images[0].small_url", "ng-click" => "triggerProductModal()"} + %img{"bo-src" => "product.primaryImage", "ng-click" => "triggerProductModal()"} .row.summary .small-9.medium-10.large-11.columns.summary-header