public ListingsController() { _svc = ShackUpServiceFactory.GetService(); listingRepo = ListingRepositoryFactory.GetRepository(); //use if no service layer statesRepo = StatesRepositoryFactory.GetRepository(); //use if no service layer bathroomTypesRepo = BathroomTypesRepositoryFactory.GetRepository(); //use if no service layer }
public ShackUpService() { statesRepo = StatesRepositoryFactory.GetRepository(); bathroomTypesRepo = BathroomTypesRepositoryFactory.GetRepository(); listingsRepo = ListingRepositoryFactory.GetRepository(); acctRepo = AccountRepositoryFactory.GetRepository(); }
public ActionResult Add() { var model = new ListingAddViewModel(); var statesRepo = StatesRepositoryFactory.GetRepository(); var bathroomRepo = BathroomTypesRepositoryFactory.GetRepository(); model.States = new SelectList(statesRepo.GetAll(), "StateId", "StateId"); model.BathroomTypes = new SelectList(bathroomRepo.GetAll(), "BathroomTypeId", "BathroomTypeName"); model.Listing = new Listing(); return(View(model)); }
public ActionResult Add(ListingAddViewModel model) { if (ModelState.IsValid) { var repo = ListingRepositoryFactory.GetRepository(); try { model.Listing.UserId = AuthorizeUtilities.GetUserId(this); if (model.ImageUpload != null && model.ImageUpload.ContentLength > 0) { var savepath = Server.MapPath("~/Images"); string fileName = Path.GetFileNameWithoutExtension(model.ImageUpload.FileName); string extension = Path.GetExtension(model.ImageUpload.FileName); var filePath = Path.Combine(savepath, fileName + extension); int counter = 1; while (System.IO.File.Exists(filePath)) { filePath = Path.Combine(savepath, fileName + counter.ToString() + extension); counter++; } model.ImageUpload.SaveAs(filePath); model.Listing.ImageFileName = Path.GetFileName(filePath); } repo.Insert(model.Listing); return(RedirectToAction("Edit", new { id = model.Listing.ListingId })); } catch (Exception ex) { throw ex; } } else { var statesRepo = StatesRepositoryFactory.GetRepository(); var bathroomRepo = BathroomTypesRepositoryFactory.GetRepository(); model.States = new SelectList(statesRepo.GetAll(), "StateId", "StateId"); model.BathroomTypes = new SelectList(bathroomRepo.GetAll(), "BathroomTypeId", "BathroomTypeName"); return(View(model)); } }
public ActionResult Edit(int id) { var model = new ListingEditViewModel(); var statesRepo = StatesRepositoryFactory.GetRepository(); var bathroomRepo = BathroomTypesRepositoryFactory.GetRepository(); var listingsRepo = ListingRepositoryFactory.GetRepository(); model.States = new SelectList(statesRepo.GetAll(), "StateId", "StateId"); model.BathroomTypes = new SelectList(bathroomRepo.GetAll(), "BathroomTypeId", "BathroomTypeName"); model.Listing = listingsRepo.GetById(id); if (model.Listing.UserId != AuthorizeUtilities.GetUserId(this)) { throw new Exception("Attempt to edit a listing you do not own! Naughty!"); } return(View(model)); }