Display additional images below primary product image#134
Display additional images below primary product image#134robertsoniv merged 29 commits intoordercloud-api:developmentfrom
Conversation
robertsoniv
left a comment
There was a problem hiding this comment.
Please make the changes described in my comment on the productDetail.images.html file
| @@ -0,0 +1,13 @@ | |||
| <div cg-busy="carouselLoading" ng-if="product.xp && product.xp.additionalImages && product.xp.additionalImages.length"> | |||
There was a problem hiding this comment.
@amrarick26 You should do your ngRepeat over a new array variable that combines the default image (product.xp.image) with the additionalImages array. Make the default image the first item in the array so that it is active by default.
This new array is also what should be passed into the product images modal to get the same result there.
There was a problem hiding this comment.
@robertsoniv that is being done in the productDetail controller.
| <!--PRODUCT IMAGE--> | ||
| <div class="thumbnail"> | ||
| <!-- PRODUCT IMAGES --> | ||
| <div class="thumbnail" style="max-width: 400px; height: auto; margin: 0 auto;" ng-if="!productDetail.item.xp.additionalImages || !productDetail.item.xp.additionalImages.length"> |
There was a problem hiding this comment.
@amrarick26 @spencerwalker @crhistianr Do y'all think it would make sense to roll the default image display (when there are no additional images) into the oc-product-images directive? That way we just have to move that one directive around when coming up with new PDT layouts.
There was a problem hiding this comment.
@amrarick26 would you like to update this PR with the changes we talked about? Or just submit a new one once you have time to do it.
Basically, display a single image with a lightbox if there aren't any additional images and image zoom is turned on.
There was a problem hiding this comment.
If image zoom is off and there are no additional images, just show the thumbnail of the default image
There was a problem hiding this comment.
If there are no images... placeholder still? Or just don't show anything? @spencerwalker @crhistianr
There was a problem hiding this comment.
@robertsoniv doesn't that seem kind of redundant if they only have one image, to show another thumbnail version of that image?
| function ProductDetailController($exceptionHandler, Product, RelatedProducts, CurrentOrder, ocLineItems, toastr) { | ||
| var vm = this; | ||
| vm.item = Product; | ||
| vm.item.xp.image && vm.item.xp.additionalImages ? vm.item.xp.additionalImages.unshift(vm.item.xp.image) : angular.noop(); |
* F51-386 feat: add slick carousel template for multiple product images * F51-386 feat: repeat over product.xp.Images * F51-386 refactor: comment out responsive breakpoint, add infinite false to slick carousel * F51-386 refactor: add template request to directive * F51-386 chore: add angular-ez-plus, zoom library * F51-386 refactor: add timeout function in directive * F51-386 feat: product zoom using ez-plus directive * reset branch to previous commit * reset branch to previous commit * refactor: wrap template request in timeout, add center-mode attr to slick carousel nav * refactor: add modal for product images F51-386 * refactor: update the slick carousel usage to a directive * refactor: move product images carousel and modal functionality into directive F51-386 * F51-386 feat: add zoom directive (wip) for products * F51-386 refactor: update code to reflect data structure of additional images on product * F51-386 refactor: add conditional to open zoom modal if zoom enabled on product * F51-386 refactor: remove use of oc-zoom directive * F51-386 refactor: remove scope injection * F51-386 refactor: move inline style on thumbnail for product slider to less file * F51-386 refactor: remove empty style declaration * F51-386 refactor: remove commented out code * F51-386 refactor: move single image to images directive, update modal to be compatible with one image * F51-386 refactor: remove inline style * F51-386 refactor: remove redundant style, fix size on modal config
fix: typo 'canceled' is actually correct usage
…ar-buyer into development * 'development' of https://github.com/ordercloud-api/angular-buyer: (101 commits) feat: add authorize and capture call to ocAuth service fix: add UTC timezone to date filter Update gulp.config.js module order for SaaS Fix for gulp compile/build lib styles design: remove product search modal styles design: mimic carousel layout for single item zoom design: componentize gallery and lightbox design: add style and layout for lightbox modal design: refactor inline flex styles typo: add comment to remove inline styles typo: add comment to fix inline styles Clean up for the product image display Fix typo in product quick view modal Fix typo in product quick view modal Display additional images below primary product image (ordercloud-api#134) Display additional images below primary product image (ordercloud-api#134) design: uncomment out necessary code design: optimize search UI F51-550 - Allow embedded videos in PQV description Use the ta-bind directive for product description ... # Conflicts: # src/app/app.constants.json
…ar-buyer into f51-development * 'development' of https://github.com/ordercloud-api/angular-buyer: (23 commits) Update gulp.config.js module order for SaaS Fix for gulp compile/build lib styles design: remove product search modal styles design: mimic carousel layout for single item zoom design: componentize gallery and lightbox design: add style and layout for lightbox modal design: refactor inline flex styles typo: add comment to remove inline styles typo: add comment to fix inline styles Clean up for the product image display Fix typo in product quick view modal Fix typo in product quick view modal Display additional images below primary product image (ordercloud-api#134) Display additional images below primary product image (ordercloud-api#134) design: uncomment out necessary code design: optimize search UI F51-550 - Allow embedded videos in PQV description Use the ta-bind directive for product description set values to true unless on production refactor: call ocRefresh if token is expired ...
…into es-sota-subs * 'scs-esitarz' of https://github.com/esitarz/angular-buyer: (331 commits) Add Hover To Search Button Merge in custom SCS-theme (Bug Fix) Fix Typo Causing Bad Request On My Account/Orders (ordercloud-api#145) feat: add authorize and capture call to ocAuth service fix: add UTC timezone to date filter Update gulp.config.js module order for SaaS Fix for gulp compile/build lib styles design: remove product search modal styles design: mimic carousel layout for single item zoom design: componentize gallery and lightbox design: add style and layout for lightbox modal design: refactor inline flex styles typo: add comment to remove inline styles typo: add comment to fix inline styles Clean up for the product image display Fix typo in product quick view modal Fix typo in product quick view modal Display additional images below primary product image (ordercloud-api#134) Display additional images below primary product image (ordercloud-api#134) design: uncomment out necessary code ... # Conflicts: # bower.json # gulp.config.js # package.json # src/README.md # src/app/account/account.js # src/app/account/templates/account.tpl.html # src/app/account/tests/account.spec.js # src/app/addPromotion/addPromotion.js # src/app/addPromotion/tests/addPromotion.spec.js # src/app/app.constants.json # src/app/app.controller.js # src/app/app.module.js # src/app/app.run.js # src/app/app.spec.js # src/app/base/base.js # src/app/base/templates/base.tpl.html # src/app/base/templates/navigation.tpl.html # src/app/base/tests/base.spec.js # src/app/cart/cart.js # src/app/cart/templates/cart.html # src/app/cart/test/cart.spec.js # src/app/checkout/checkout.js # src/app/checkout/confirmation/checkout.confirmation.js # src/app/checkout/confirmation/templates/checkout.confirmation.html # src/app/checkout/payment/directives/templates/payments.html # src/app/checkout/payment/js/payment.controller.js # src/app/checkout/payment/templates/checkout.payment.html # src/app/checkout/review/js/review.config.js # src/app/checkout/review/templates/checkout.review.html # src/app/checkout/shipping/js/shipping.controller.js # src/app/checkout/shipping/js/shippingRates.service.js # src/app/checkout/shipping/templates/checkout.shipping.html # src/app/checkout/templates/addressSelect.modal.html # src/app/checkout/tests/checkout.confirmation.spec.js # src/app/checkout/tests/checkout.payment.spec.js # src/app/checkout/tests/checkout.review.spec.js # src/app/checkout/tests/checkout.shipping.spec.js # src/app/checkout/tests/checkout.spec.js # src/app/checkout/tests/payments.spec.js # src/app/common/directives/oc-product-carousel/oc-product-carousel.js # src/app/favoriteOrders/favoriteOrder.js # src/app/favoriteOrders/tests/favoriteOrder.spec.js # src/app/favoriteProducts/js/favoriteProducts.config.js # src/app/favoriteProducts/js/favoriteProducts.controller.js # src/app/favoriteProducts/js/favoriteProducts.directive.js # src/app/favoriteProducts/js/favoriteProducts.service.js # src/app/home/js/home.config.js # src/app/home/templates/home.tpl.html # src/app/login/login.js # src/app/login/tests/login.spec.js # src/app/myAddresses/myAddresses.js # src/app/myAddresses/myAddresses.modalFactory.js # src/app/myAddresses/templates/myAddresses.html # src/app/myAddresses/tests/myAddresses.modalFactory.spec.js # src/app/myAddresses/tests/myAddresses.spec.js # src/app/myOrders/order/templates/orderDetails.html # src/app/myOrders/orders/js/orders.config.js # src/app/myOrders/orders/js/orders.controller.js # src/app/myOrders/orders/templates/orders.html # src/app/myPayments/myPayments.js # src/app/myPayments/templates/myPayments.html # src/app/myPayments/tests/myPaymentCreditCard.modalFactory.spec.js # src/app/myPayments/tests/myPayments.spec.js # src/app/orders/orderApprovals/js/oc-approvals.service.js # src/app/orders/orderApprovals/js/orderApprovals.config.js # src/app/orders/orderApprovals/js/orderApprovals.controller.js # src/app/orders/orderApprovals/templates/orderApprovals.html # src/app/orders/orderApprovals/tests/orderApprovals.spec.js # src/app/orders/orderDetails/js/oc-orderDetails.service.js # src/app/orders/orderDetails/js/orderDetails.config.js # src/app/orders/orderDetails/js/orderDetails.controller.js # src/app/orders/orderDetails/tests/orderDetails.spec.js # src/app/orders/orderList/js/oc-orders.service.js # src/app/orders/orderList/tests/orders.spec.js # src/app/productBrowse/templates/productBrowse.html # src/app/productSearch/productSearch.js # src/app/productSearch/templates/productSearch.component.tpl.html # src/app/productSearch/templates/productSearch.results.tpl.html # src/app/productSearch/tests/productSearch.spec.js # src/app/repeatOrder/repeatOrder.js # src/app/repeatOrder/templates/repeatOrder.component.html # src/app/repeatOrder/templates/repeatOrder.modal.html # src/app/repeatOrder/tests/repeatOrder.spec.js # src/app/styles/pages/_login.less # src/app/styles/shame.less # src/app/styles/theme/glob.less # src/index.html
…into es-sota-subs1 * 'scs-esitarz' of https://github.com/esitarz/angular-buyer: (331 commits) Add Hover To Search Button Merge in custom SCS-theme (Bug Fix) Fix Typo Causing Bad Request On My Account/Orders (ordercloud-api#145) feat: add authorize and capture call to ocAuth service fix: add UTC timezone to date filter Update gulp.config.js module order for SaaS Fix for gulp compile/build lib styles design: remove product search modal styles design: mimic carousel layout for single item zoom design: componentize gallery and lightbox design: add style and layout for lightbox modal design: refactor inline flex styles typo: add comment to remove inline styles typo: add comment to fix inline styles Clean up for the product image display Fix typo in product quick view modal Fix typo in product quick view modal Display additional images below primary product image (ordercloud-api#134) Display additional images below primary product image (ordercloud-api#134) design: uncomment out necessary code ... # Conflicts: # bower.json # gulp.config.js # package.json # src/README.md # src/app/account/account.js # src/app/account/templates/account.tpl.html # src/app/account/tests/account.spec.js # src/app/addPromotion/addPromotion.js # src/app/addPromotion/tests/addPromotion.spec.js # src/app/app.constants.json # src/app/app.controller.js # src/app/app.module.js # src/app/app.run.js # src/app/app.spec.js # src/app/base/base.js # src/app/base/templates/base.tpl.html # src/app/base/templates/navigation.tpl.html # src/app/base/tests/base.spec.js # src/app/cart/cart.js # src/app/cart/templates/cart.html # src/app/cart/test/cart.spec.js # src/app/checkout/checkout.js # src/app/checkout/confirmation/checkout.confirmation.js # src/app/checkout/confirmation/templates/checkout.confirmation.html # src/app/checkout/payment/directives/templates/payments.html # src/app/checkout/payment/js/payment.controller.js # src/app/checkout/payment/templates/checkout.payment.html # src/app/checkout/review/js/review.config.js # src/app/checkout/review/templates/checkout.review.html # src/app/checkout/shipping/js/shipping.controller.js # src/app/checkout/shipping/templates/checkout.shipping.html # src/app/checkout/templates/addressSelect.modal.html # src/app/checkout/tests/checkout.confirmation.spec.js # src/app/checkout/tests/checkout.payment.spec.js # src/app/checkout/tests/checkout.review.spec.js # src/app/checkout/tests/checkout.shipping.spec.js # src/app/checkout/tests/checkout.spec.js # src/app/checkout/tests/payments.spec.js # src/app/common/directives/oc-product-carousel/oc-product-carousel.js # src/app/favoriteOrders/favoriteOrder.js # src/app/favoriteOrders/tests/favoriteOrder.spec.js # src/app/favoriteProducts/js/favoriteProducts.config.js # src/app/favoriteProducts/js/favoriteProducts.controller.js # src/app/favoriteProducts/js/favoriteProducts.directive.js # src/app/favoriteProducts/js/favoriteProducts.service.js # src/app/home/js/home.config.js # src/app/home/templates/home.tpl.html # src/app/login/login.js # src/app/login/tests/login.spec.js # src/app/myAddresses/myAddresses.js # src/app/myAddresses/myAddresses.modalFactory.js # src/app/myAddresses/templates/myAddresses.html # src/app/myAddresses/tests/myAddresses.modalFactory.spec.js # src/app/myAddresses/tests/myAddresses.spec.js # src/app/myOrders/order/templates/orderDetails.html # src/app/myOrders/orders/js/orders.config.js # src/app/myOrders/orders/js/orders.controller.js # src/app/myOrders/orders/templates/orders.html # src/app/myPayments/myPayments.js # src/app/myPayments/templates/myPayments.html # src/app/myPayments/tests/myPaymentCreditCard.modalFactory.spec.js # src/app/myPayments/tests/myPayments.spec.js # src/app/orders/orderApprovals/js/oc-approvals.service.js # src/app/orders/orderApprovals/js/orderApprovals.config.js # src/app/orders/orderApprovals/js/orderApprovals.controller.js # src/app/orders/orderApprovals/templates/orderApprovals.html # src/app/orders/orderApprovals/tests/orderApprovals.spec.js # src/app/orders/orderDetails/js/oc-orderDetails.service.js # src/app/orders/orderDetails/js/orderDetails.config.js # src/app/orders/orderDetails/js/orderDetails.controller.js # src/app/orders/orderDetails/tests/orderDetails.spec.js # src/app/orders/orderList/js/oc-orders.service.js # src/app/orders/orderList/tests/orders.spec.js # src/app/productBrowse/templates/productBrowse.html # src/app/productSearch/productSearch.js # src/app/productSearch/templates/productSearch.component.tpl.html # src/app/productSearch/templates/productSearch.results.tpl.html # src/app/productSearch/tests/productSearch.spec.js # src/app/repeatOrder/repeatOrder.js # src/app/repeatOrder/templates/repeatOrder.component.html # src/app/repeatOrder/templates/repeatOrder.modal.html # src/app/repeatOrder/tests/repeatOrder.spec.js # src/app/styles/pages/_login.less # src/app/styles/shame.less # src/app/styles/theme/glob.less # src/index.html
…into es-sota-subs2 * 'scs-esitarz' of https://github.com/esitarz/angular-buyer: (331 commits) Add Hover To Search Button Merge in custom SCS-theme (Bug Fix) Fix Typo Causing Bad Request On My Account/Orders (ordercloud-api#145) feat: add authorize and capture call to ocAuth service fix: add UTC timezone to date filter Update gulp.config.js module order for SaaS Fix for gulp compile/build lib styles design: remove product search modal styles design: mimic carousel layout for single item zoom design: componentize gallery and lightbox design: add style and layout for lightbox modal design: refactor inline flex styles typo: add comment to remove inline styles typo: add comment to fix inline styles Clean up for the product image display Fix typo in product quick view modal Fix typo in product quick view modal Display additional images below primary product image (ordercloud-api#134) Display additional images below primary product image (ordercloud-api#134) design: uncomment out necessary code ... # Conflicts: # bower.json # gulp.config.js # package.json # src/README.md # src/app/account/account.js # src/app/account/templates/account.tpl.html # src/app/account/tests/account.spec.js # src/app/addPromotion/addPromotion.js # src/app/addPromotion/tests/addPromotion.spec.js # src/app/app.constants.json # src/app/app.controller.js # src/app/app.module.js # src/app/app.run.js # src/app/app.spec.js # src/app/base/base.js # src/app/base/templates/base.tpl.html # src/app/base/templates/navigation.tpl.html # src/app/base/tests/base.spec.js # src/app/cart/cart.js # src/app/cart/templates/cart.html # src/app/cart/test/cart.spec.js # src/app/checkout/checkout.js # src/app/checkout/confirmation/checkout.confirmation.js # src/app/checkout/confirmation/templates/checkout.confirmation.html # src/app/checkout/payment/directives/templates/payments.html # src/app/checkout/payment/js/payment.controller.js # src/app/checkout/payment/templates/checkout.payment.html # src/app/checkout/review/js/review.config.js # src/app/checkout/review/templates/checkout.review.html # src/app/checkout/shipping/js/shipping.controller.js # src/app/checkout/shipping/js/shippingRates.service.js # src/app/checkout/shipping/templates/checkout.shipping.html # src/app/checkout/templates/addressSelect.modal.html # src/app/checkout/tests/checkout.confirmation.spec.js # src/app/checkout/tests/checkout.payment.spec.js # src/app/checkout/tests/checkout.review.spec.js # src/app/checkout/tests/checkout.shipping.spec.js # src/app/checkout/tests/checkout.spec.js # src/app/checkout/tests/payments.spec.js # src/app/common/directives/oc-product-carousel/oc-product-carousel.js # src/app/favoriteOrders/favoriteOrder.js # src/app/favoriteOrders/tests/favoriteOrder.spec.js # src/app/favoriteProducts/js/favoriteProducts.config.js # src/app/favoriteProducts/js/favoriteProducts.controller.js # src/app/favoriteProducts/js/favoriteProducts.directive.js # src/app/favoriteProducts/js/favoriteProducts.service.js # src/app/home/js/home.config.js # src/app/home/templates/home.tpl.html # src/app/login/login.js # src/app/login/tests/login.spec.js # src/app/myAddresses/myAddresses.js # src/app/myAddresses/myAddresses.modalFactory.js # src/app/myAddresses/templates/myAddresses.html # src/app/myAddresses/tests/myAddresses.modalFactory.spec.js # src/app/myAddresses/tests/myAddresses.spec.js # src/app/myOrders/order/templates/orderDetails.html # src/app/myOrders/orders/js/orders.config.js # src/app/myOrders/orders/js/orders.controller.js # src/app/myOrders/orders/templates/orders.html # src/app/myPayments/myPayments.js # src/app/myPayments/templates/myPayments.html # src/app/myPayments/tests/myPaymentCreditCard.modalFactory.spec.js # src/app/myPayments/tests/myPayments.spec.js # src/app/orders/orderApprovals/js/oc-approvals.service.js # src/app/orders/orderApprovals/js/orderApprovals.config.js # src/app/orders/orderApprovals/js/orderApprovals.controller.js # src/app/orders/orderApprovals/templates/orderApprovals.html # src/app/orders/orderApprovals/tests/orderApprovals.spec.js # src/app/orders/orderDetails/js/oc-orderDetails.service.js # src/app/orders/orderDetails/js/orderDetails.config.js # src/app/orders/orderDetails/js/orderDetails.controller.js # src/app/orders/orderDetails/tests/orderDetails.spec.js # src/app/orders/orderList/js/oc-orders.service.js # src/app/orders/orderList/tests/orders.spec.js # src/app/productBrowse/templates/productBrowse.html # src/app/productSearch/productSearch.js # src/app/productSearch/templates/productSearch.component.tpl.html # src/app/productSearch/templates/productSearch.results.tpl.html # src/app/productSearch/tests/productSearch.spec.js # src/app/repeatOrder/repeatOrder.js # src/app/repeatOrder/templates/repeatOrder.component.html # src/app/repeatOrder/templates/repeatOrder.modal.html # src/app/repeatOrder/tests/repeatOrder.spec.js # src/app/styles/pages/_login.less # src/app/styles/shame.less # src/app/styles/theme/glob.less # src/index.html
F51-386
Display the default image along with additional images set on the product.xp when in the product detail view.