Beispiel #1
0
        public ActionResult CreateCategory([Bind(Exclude = "Shop")] CategoryViewModel model, int shop, HttpPostedFileBase image)
        {
            var userId = User.Identity.GetUserId();

            if (ModelState.IsValid)
            {
                var category = Mapper.Map <Category>(model);
                using (var db = new UwtContext())
                {
                    var myShop = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                    if (myShop == null)
                    {
                        return(HttpNotFound());
                    }
                    category.Shop  = myShop;
                    category.Image = image.AddUploadedImage(Server, db.Users.FirstOrDefault(u => u.Id == userId));
                    db.Categories.Add(category);
                    db.SaveChanges();
                    return(RedirectToAction("Categories", "Merchant", new { shop = myShop.Id }));
                }
            }
            using (var db = new UwtContext())
            {
                var myShop = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                if (myShop == null)
                {
                    return(HttpNotFound());
                }
                ViewBag.ShopName = myShop.Name;
                ViewBag.ShopId   = myShop.Id;
            }
            return(View(model));
        }
Beispiel #2
0
        public ActionResult EditCategory([Bind(Exclude = "Shop")] CategoryViewModel model, int shop, HttpPostedFileBase image)
        {
            var userId = User.Identity.GetUserId();

            if (ModelState.IsValid)
            {
                using (var db = new UwtContext()) {
                    var myShop   = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                    var category = db.Categories.IncludeAll().Filter(userId, shop).FirstOrDefault(c => c.Id == model.Id);
                    if (myShop == null || category == null)
                    {
                        return(HttpNotFound());
                    }
                    category.Name = model.Name;
                    if (image != null && image.ContentLength > 0)
                    {
                        category.Image = image.AddUploadedImage(Server, db.Users.FirstOrDefault(u => u.Id == userId));
                    }
                    db.SaveChanges();
                    return(RedirectToAction("EditCategory", "Merchant", new { shop = myShop.Id, model.Id }));
                }
            }
            using (var db = new UwtContext()) {
                var myShop   = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                var category = db.Categories.IncludeAll().Filter(userId, shop).FirstOrDefault(c => c.Id == model.Id);
                if (myShop == null || category == null)
                {
                    return(HttpNotFound());
                }
                ViewBag.ShopName = myShop.Name;
                ViewBag.ShopId   = myShop.Id;
                ViewBag.Products = category.Products.Select(Mapper.Map <ProductViewModel>).ToList();
            }
            return(View(model));
        }
Beispiel #3
0
        public static void Update(this PageStyle o, PageStyleViewModel model, HttpPostedFileBase imglogo,
                                  HttpPostedFileBase imgbackground, HttpPostedFileBase imgnav, HttpPostedFileBase imgfooter, HttpServerUtilityBase server)
        {
            o.BackgroundColor = model.BackgroundColor;
            o.ForegroundColor = model.ForegroundColor;
            o.NavColor        = model.NavColor;
            o.SheetColor      = model.SheetColor;
            o.Name            = model.Name;

            if (imglogo != null)
            {
                o.Logo = imglogo.AddUploadedImage(server, o.Owner);
            }

            if (imgbackground != null)
            {
                o.BackgroundImage = imgbackground.AddUploadedImage(server, o.Owner);
            }

            if (imgnav != null)
            {
                o.NavImage = imgnav.AddUploadedImage(server, o.Owner);
            }

            if (imgfooter != null)
            {
                o.FooterImage = imgfooter.AddUploadedImage(server, o.Owner);
            }
        }
Beispiel #4
0
        public ActionResult CreateProduct([Bind(Exclude = "Shop")] ProductViewModel model, int shop, HttpPostedFileBase image)
        {
            var userId = User.Identity.GetUserId();

            if (ModelState.IsValid)
            {
                var product = Mapper.Map <Product>(model);
                using (var db = new UwtContext()) {
                    var myShop = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                    if (myShop == null)
                    {
                        return(HttpNotFound());
                    }
                    product.Shop       = myShop;
                    product.Image      = image.AddUploadedImage(Server, db.Users.FirstOrDefault(u => u.Id == userId));
                    product.Categories = model.Categories.Select(int.Parse).Select(cid => db.Categories.IncludeAll().Filter(userId, myShop.Id).FirstOrDefault(c => c.Id == cid)).ToList();
                    product.Views      = 0;
                    db.Products.Add(product);
                    db.SaveChanges();
                    return(RedirectToAction("Products", "Merchant", new { shop = myShop.Id }));
                }
            }
            using (var db = new UwtContext()) {
                var myShop = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                if (myShop == null)
                {
                    return(HttpNotFound());
                }
                ViewBag.ShopName   = myShop.Name;
                ViewBag.ShopId     = myShop.Id;
                ViewBag.Categories = new MultiSelectList(db.Categories.Filter(userId, myShop.Id).ToList().Select(c => new SelectListItem {
                    Text = c.Name, Value = c.Id.ToString()
                }).ToArray(), "Value", "Text", model.Categories);
            }
            return(View(model));
        }
Beispiel #5
0
        public ActionResult EditProduct([Bind(Exclude = "Shop")] ProductViewModel model, int shop, HttpPostedFileBase image)
        {
            var userId = User.Identity.GetUserId();

            if (ModelState.IsValid)
            {
                using (var db = new UwtContext()) {
                    var myShop = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                    if (myShop == null)
                    {
                        return(HttpNotFound());
                    }

                    var product = db.Products.IncludeAll().Filter(userId, myShop.Id).FirstOrDefault(c => c.Id == model.Id);
                    if (product == null)
                    {
                        return(HttpNotFound());
                    }
                    product.Title       = model.Title;
                    product.Count       = model.Count;
                    product.Description = model.Description;
                    product.Tags        = model.Tags;
                    product.UnitPrice   = model.UnitPrice;
                    if (model.Categories != null)
                    {
                        product.Categories = model.Categories.Select(int.Parse).Select(cid => db.Categories.IncludeAll().Filter(userId, myShop.Id).FirstOrDefault(c => c.Id == cid)).ToList();
                    }
                    if (image != null && image.ContentLength > 0)
                    {
                        product.Image = image.AddUploadedImage(Server, db.Users.FirstOrDefault(u => u.Id == userId));
                    }
                    model.Image = product.Image.Source();
                    db.SaveChanges();

                    if (product.Count > 0)
                    {
                        // Mark messages as read
                        var messages = db.Messages.IncludeAll().Filter(userId, model.Id).ActiveMessages().ToList();
                        messages.ForEach(m => m.DateRecieved = DateTime.UtcNow);
                        db.SaveChanges();
                    }
                    ViewBag.Categories = new MultiSelectList(db.Categories.Filter(userId, myShop.Id).ToList().Select(c => new SelectListItem {
                        Text = c.Name, Value = c.Id.ToString()
                    }).ToArray(), "Value", "Text", model.Categories);
                }
            }
            using (var db = new UwtContext()) {
                var myShop = db.Shops.Filter(userId).FirstOrDefault(s => s.Id == shop);
                if (myShop == null)
                {
                    return(HttpNotFound());
                }
                ViewBag.ShopName   = myShop.Name;
                ViewBag.ShopId     = myShop.Id;
                ViewBag.Categories = new MultiSelectList(db.Categories.Filter(userId, myShop.Id).ToList().Select(c => new SelectListItem {
                    Text = c.Name, Value = c.Id.ToString()
                }).ToArray(), "Value", "Text", model.Categories);
                ViewBag.Sales    = db.GetDailySales(model.Id, 30);
                ViewBag.Messages = db.Messages.Filter(userId, model.Id).ActiveMessages().Count();
            }
            return(View(model));
        }