Example #1
0
        public void UpdatePromo(AbcPromo promo)
        {
            if (promo == null)
            {
                throw new ArgumentNullException(nameof(promo));
            }

            _abcPromoRepository.UpdateAsync(promo);
        }
        private async Task <IViewComponentResult> ProductBoxPromo(object additionalData)
        {
            if (additionalData == null || !(additionalData is ProductOverviewModel))
            {
                await _logger.ErrorAsync("ProductOverviewModel not passed to Widgets.AbcPromos - skipping display of product box promo.");

                return(Content(""));
            }

            var productId = (additionalData as ProductOverviewModel).Id;
            var promos    = (await _abcPromoService.GetActivePromosByProductIdAsync(productId)).Take(2);

            var promosArray = new AbcPromo[]
            {
                promos.Count() > 0 ? promos.ElementAt(0) : null,
                promos.Count() > 1 ? promos.ElementAt(1) : null,
            };

            return(View("~/Plugins/Widgets.AbcPromos/Views/ProductBoxPromos.cshtml", promosArray));
        }