public ActionResult UploadImage(ImageAddViewModel model) { if (ModelState.IsValid) { model.FileName = model.File.FileName; var img = new Image { FileName = model.FileName, Name = model.Name }; // Get id back var imgId = _imageService.InsertImage(img, new PurchaseOption[] { model.LowRes, model.HighRes, model.MaxRes } ); // Save image to disk ( /images/{id + fileName} var path = System.IO.Path.Combine(Server.MapPath("~/Images/"), imgId + model.File.FileName); model.File.SaveAs(path); return(RedirectToAction("List", "Image")); } return(View()); }
public void AddImages_Should_Return_ImageAddViewModel() { // Arrange // Act var result = _adminController.AddImages("gallery"); // Assert result.AssertViewRendered().ForView("").WithViewData <ImageAddViewModel>(); ImageAddViewModel model = ((ViewResult)result).Model as ImageAddViewModel; Assert.IsNotNull(model); Assert.AreEqual("gallery", model.ImageGalleryName); }
public ActionResult Add(ImageAddViewModel model) { string path = Server.MapPath(ConfigurationManager.AppSettings["ImagesPath"]); var imageName = Guid.NewGuid().ToString() + ".jpg"; model.Image.SaveAs(path + imageName); ListImage image = new ListImage() { Name = imageName }; _context.ListImages.Add(image); _context.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult AddImages(ImageAddViewModel viewModel) { if (!Services.Authorizer.Authorize(Permissions.ManageImageGallery, T("Couldn't upload media file"))) { return(new HttpUnauthorizedResult()); } viewModel.AllowedFiles = _imageGalleryService.AllowedFileFormats; if (!ModelState.IsValid) { return(View(viewModel)); } try { if (viewModel.ImageFiles == null || viewModel.ImageFiles.Count() == 0 || viewModel.ImageFiles.First() == null) { ModelState.AddModelError("File", T("Select a file to upload").ToString()); return(View(viewModel)); } if (viewModel.ImageFiles.Any(file => !_imageGalleryService.IsFileAllowed(file))) { ModelState.AddModelError("File", T("That file type is not allowed.").ToString()); return(View(viewModel)); } foreach (var file in viewModel.ImageFiles) { _imageGalleryService.AddImage(viewModel.ImageGalleryName, file); } } catch (Exception exception) { Services.Notifier.Error(T("Adding image failed: {0}", exception.Message)); return(View(viewModel)); } return(RedirectToAction("Images", new { imageGalleryName = viewModel.ImageGalleryName })); }