public ActionResult Add(PackagesViewModel model) { if (model.ImageUpload == null || model.ImageUpload.ContentLength == 0) { ModelState.AddModelError("ErrorMessage", "The image field is required."); return View(model); } if (ModelState.IsValid) { // Process image string[] validImageTypes = new string[] { "image/gif", "image/jpeg", "image/pjpeg", "image/png" }; if (!validImageTypes.Contains(model.ImageUpload.ContentType)) { ModelState.AddModelError("ErrorMessage", "Please choose either a GIF, JPG or PNG image."); return View(model); } string uploadDir = @"~/Images/Packages"; string imagePath = Path.Combine(Server.MapPath(uploadDir), model.ImageUpload.FileName); string imageUrl = Path.Combine(uploadDir, model.ImageUpload.FileName); model.ImageUpload.SaveAs(imagePath); Package package = model.ToPackage(); package.ImageUrl = imageUrl; package.Status = PackageStatusEnum.Available; package.ApplicationUserId = WebSecurity.CurrentUserId; Result<Package> result = packageService.AddPackage(package); if (result.Status == ResultEnum.Success) { return RedirectToAction("Add", "Activities", new { packageId = result.Data.PackageId }); } else { ModelState.AddModelError("ErrorMessage", "Sorry, we were unable to create your package."); model.DisableSubmit = true; return View(model); } } ModelState.AddModelError("ErrorMessage", "Sorry, we were unable to create your package."); model.DisableSubmit = true; return View(model); }
public ActionResult Add() { PackagesViewModel model = new PackagesViewModel(); if (MvcApplication.SHOW_SAMPLE_FORM_DATA) { // Show dummy user data for model model = SampleModelData.GetSamplePackagesViewModel(); } return View(model); }
public ActionResult Edit(PackagesViewModel model) { if (ModelState.IsValid) { Result<Package> packageResult = new Result<Package>(); packageResult = packageService.GetPackageById(model.Id); Package package = new Package(); if (packageResult.Status == ResultEnum.Success && packageResult.Data.Status == PackageStatusEnum.Available) { package = packageResult.Data; package.City = model.City; package.State = model.State; package.Accomodation = model.Accomodation; package.Amount = model.Price; } else { model.ErrorMessage = "Unable to edit the package."; return View(model); } ResultEnum result = packageService.UpdatePackage(package); if (result == ResultEnum.Success) { model.SuccessMessage = "Package successfully edited."; } else { model.ErrorMessage = "Unable to edit the package."; } return View(model); } model.ErrorMessage = "Unable to edit the package."; return View(model); }
public ActionResult Edit(int? id) { if (id == null) { return RedirectToAction("Index", "Home"); } int packageId = id.GetValueOrDefault(); PackagesViewModel model = new PackagesViewModel(); Result<Package> packageResult = new Result<Package>(); packageResult = packageService.GetPackageById(packageId); if (packageResult.Status == ResultEnum.Success && WebSecurity.CurrentUserId == packageResult.Data.ApplicationUserId && packageResult.Data.Status == PackageStatusEnum.Available) { model = packageResult.Data.ToPackagesViewModel(); } else { return RedirectToAction("Index", "Home"); } return View(model); }