Exemple #1
0
        public ActionResult ProductAddPopupList(GridCommand command, NewsItemModel.AddNewsItemProductModel model)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageNews))
            {
                return(AccessDeniedView());
            }

            var gridModel = new GridModel();
            IPagedList <Product> products = null;

            if (model.SearchCategoryId == 0 &&
                model.SearchManufacturerId == 0 &&
                string.IsNullOrEmpty(model.SearchProductName))
            {
                products = new PagedList <Product>(new List <Product>(), 0, 1);
            }
            else
            {
                products = _productService.SearchProducts(model.SearchCategoryId,
                                                          model.SearchManufacturerId, null, null, null, 0, model.SearchProductName, false,
                                                          _workContext.WorkingLanguage.Id, new List <int>(),
                                                          ProductSortingEnum.Position, command.Page - 1, command.PageSize, true);
                gridModel.Data  = products.Select(x => x.ToModel());
                gridModel.Total = products.TotalCount;
            }
            return(new JsonResult
            {
                Data = gridModel
            });
        }
Exemple #2
0
        public ActionResult ProductAddPopup(int newsItemId)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageNews))
            {
                return(AccessDeniedView());
            }

            var products = new PagedList <Product>(new List <Product>(), 0, 1);

            var model = new NewsItemModel.AddNewsItemProductModel();

            model.Products = new GridModel <ProductModel>
            {
                Data  = products.Select(x => x.ToModel()),
                Total = products.TotalCount
            };
            //categories
            model.AvailableCategories.Add(new SelectListItem()
            {
                Text = _localizationService.GetResource("Admin.Common.All"), Value = "0"
            });
            foreach (var c in _categoryService.GetAllCategories(true))
            {
                model.AvailableCategories.Add(new SelectListItem()
                {
                    Text = c.GetCategoryNameWithPrefix(_categoryService), Value = c.Id.ToString()
                });
            }

            //manufacturers
            model.AvailableManufacturers.Add(new SelectListItem()
            {
                Text = _localizationService.GetResource("Admin.Common.All"), Value = "0"
            });
            foreach (var m in _manufacturerService.GetAllManufacturers(true))
            {
                model.AvailableManufacturers.Add(new SelectListItem()
                {
                    Text = m.Name, Value = m.Id.ToString()
                });
            }

            return(View(model));
        }
Exemple #3
0
        public ActionResult ProductAddPopup(string btnId, string formId, NewsItemModel.AddNewsItemProductModel model, string selectedIds)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageNews))
            {
                return(AccessDeniedView());
            }

            var ids = selectedIds
                      .Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
                      .Select(x => Convert.ToInt32(x))
                      .ToArray();

            if (ids.Length > 0)
            {
                foreach (int id in ids)
                {
                    var product = _productService.GetProductById(id);
                    if (product != null)
                    {
                        var existingNewsItemProducts = _newsService.GetNewsItemProductsByNewsItemId(model.NewsItemId);
                        if (existingNewsItemProducts.FindNewsItemProduct(id, model.NewsItemId) == null)
                        {
                            _newsService.InsertNewsItemProduct(
                                new NewsItemProduct()
                            {
                                NewsItemId        = model.NewsItemId,
                                ProductId         = id,
                                IsFeaturedProduct = false,
                                DisplayOrder      = 1
                            });
                        }
                    }
                }
            }



            //if (model.SelectedProductIds != null)
            //{
            //    foreach (int id in model.SelectedProductIds)
            //    {
            //        var product = _productService.GetProductById(id);
            //        if (product != null)
            //        {
            //            var existingNewsItemProducts = _newsService.GetNewsItemProductsByNewsItemId(model.NewsItemId);
            //            if (existingNewsItemProducts.FindNewsItemProduct(id, model.NewsItemId) == null)
            //            {
            //                _newsService.InsertNewsItemProduct(
            //                    new NewsItemProduct()
            //                    {
            //                        NewsItemId = model.NewsItemId,
            //                        ProductId = id,
            //                        IsFeaturedProduct = false,
            //                        DisplayOrder = 1
            //                    });
            //            }
            //        }
            //    }
            //}

            ViewBag.RefreshPage = true;
            ViewBag.btnId       = btnId;
            ViewBag.formId      = formId;
            model.Products      = new GridModel <ProductModel>();
            return(View(model));
        }