public ActionResult Edit([Bind(Include = "GymClassID,ClassName,Description")] GymClass gymClass) { if (ModelState.IsValid) { db.Entry(gymClass).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(gymClass)); }
public ActionResult Create([Bind(Include = "Id,Name,StartTime,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { db.GymClasses.Add(gymClass); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(gymClass)); }
public async Task <IActionResult> Create([Bind("Id,Name,StartDate,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { _context.Add(gymClass); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(gymClass)); }
public async Task <IActionResult> Create([Bind("Id,Name,StartTime,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { _unitOfWork.GymClasses.Add(gymClass); await _unitOfWork.CompleteAsync(); return(RedirectToAction(nameof(Index))); } return(View(gymClass)); }
public async Task <IActionResult> CreateGymClass([Bind("GymClassId,Name,Trainer,StartTime,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { _context.Add(gymClass); await _context.SaveChangesAsync(); return(RedirectToAction("Index", "Home")); } return(View(gymClass)); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } GymClass gymClass = db.GymClasses.Find(id); if (gymClass == null) { return(HttpNotFound()); } return(View(gymClass)); }
// GET: GymClasses/Details/5 public async Task <IActionResult> Details(int?id) { if (id == null) { return(NotFound()); } GymClass gymClass = await _unitOfWork.GymClasses.GetClassWithAttendingMembersAsync(id); if (gymClass == null) { return(NotFound()); } return(View(gymClass)); }
public ActionResult Delete(int?id) { ViewBag.Title = "Delete gymclass"; if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } GymClass gymClass = db.GymClasses.Find(id); if (gymClass == null) { return(HttpNotFound()); } return(View(gymClass)); }
public async Task <IActionResult> Create([Bind("Id,Name,StartTime,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { ouw.GymClassRepository.Add(gymClass); await ouw.CompleteAsync(); if (Request.IsAjax()) { return(PartialView("GymClassPartial", gymClass)); // } return(RedirectToAction(nameof(Index))); } return(View(gymClass)); }
public async Task <IActionResult> Delete(int?id) { if (id == null) { return(NotFound()); } GymClass gymClass = await unitOfWork.GymClasses.GetAsync(id); if (gymClass == null) { return(NotFound()); } return(View(gymClass)); }
public ActionResult BookingToggle(int id) { GymClass gymClass = db.GymClasses.Where(gym => gym.Id == id).FirstOrDefault(); ApplicationUser currentUser = db.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefault(); if (gymClass.AttendingMembers.Contains(currentUser)) { gymClass.AttendingMembers.Remove(currentUser); } else { gymClass.AttendingMembers.Add(currentUser); } db.SaveChanges(); return(RedirectToAction("Index")); }
// GET: GymClass/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } GymClass dbClass = db.GymClass.Find(id); ClassBookingDetail gymClass = dbClass.ToBookingViewModel(false); if (gymClass == null) { return(HttpNotFound()); } gymClass.Types = db.GymClassTypes.OrderBy(t => t.Name).ToList(); return(View(gymClass)); }
public ActionResult Delete(int id) { Tex.Log("Delete called" + id.ToString()); try { GymClass gymClass = db.GymClass.Find(id); db.GymClass.Remove(gymClass); var bookings = db.MemberClassBookings.Where(cb => cb.GymClassId == id).ToList(); db.MemberClassBookings.RemoveRange(bookings); db.SaveChanges(); Tex.Log("returning"); return(Json("", JsonRequestBehavior.AllowGet)); } catch (Exception ex) { Tex.Dump(ex, "Exception GymClassController/delete"); throw; } }
public ActionResult BookingToggle(int id) { GymClass CurrentClass = db.GymClasses.Where(g => g.Id == id).FirstOrDefault(); ApplicationUser CurrentUser = db.Users.Where(g => g.UserName == User.Identity.Name).FirstOrDefault(); if (CurrentClass.AttendingMembers.Contains(CurrentUser)) { CurrentClass.AttendingMembers.Remove(CurrentUser); db.SaveChanges(); } else { CurrentClass.AttendingMembers.Add(CurrentUser); db.SaveChanges(); } return(RedirectToAction("Index")); }
public ActionResult BookingToggle(int id) { GymClass currentClass = db.GymClasses.Where(g => g.Id == id).FirstOrDefault(); ApplicationUser currentUser = db.Users.Where(u => u.UserName == User.Identity.Name).FirstOrDefault(); if (currentClass.AttendingMembers.Contains(currentUser)) { currentClass.AttendingMembers.Remove(currentUser); db.SaveChanges(); } else { currentClass.AttendingMembers.Add(currentUser); db.SaveChanges(); } return(RedirectToAction("Details", new { id = id })); }
// GET: GymClasses/Details/5 public ActionResult Details(int?id) { ViewBag.Title = "Gymclass, details"; var role = new Role(); ViewBag.Roles = role; if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } GymClass gymClass = db.GymClasses.Find(id); if (gymClass == null) { return(HttpNotFound()); } return(View(gymClass)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,StartDate,Duration,Description")] GymClass gymClass) { if (id != gymClass.Id) { return(NotFound()); } if (ModelState.IsValid) { try { unitOfWork.gymClassesRepository.Update(gymClass); await unitOfWork.CompleteAsync(); } catch (DbUpdateConcurrencyException) { if (!GymClassExists(gymClass.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(gymClass)); }
public async Task <IActionResult> Create([Bind("Id,Name,StartDate,Duration,Description")] CreateGymClassViewModel viewModel) { if (ModelState.IsValid) { var gymClass = new GymClass { Id = viewModel.Id, Name = viewModel.Name, StartDate = viewModel.StartDate, Duration = viewModel.Duration, Description = viewModel.Description }; unitOfWork.GymClassRepository.Add(gymClass); await unitOfWork.CompleteAsync(); return(RedirectToAction(nameof(Index))); } return(View(viewModel)); }
public async Task <IActionResult> BookingToogle(int?id) { if (id == null) { return(NotFound()); } ApplicationUser currentUser = await _context.Users.Where (u => u.UserName == User.Identity.Name).FirstOrDefaultAsync(); GymClass currentClass = await _context.GymClass.Where(c => c.Id == id) .Include(a => a.AttendingMembers).FirstOrDefaultAsync(); if (currentClass == null) { return(NotFound()); } ApplicationUserGymClass attending = currentClass.AttendingMembers .Where(u => u.ApplicationUserId == currentUser.Id && u.GymClassId == id).FirstOrDefault(); if (attending == null) { var book = new ApplicationUserGymClass() { ApplicationUserId = currentUser.Id, GymClassId = (int)id }; _context.UserGym.Add(book); _context.SaveChanges(); } else { _context.UserGym.Remove(attending); _context.SaveChanges(); } return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> BookingToogle(int?id) { if (id == null) { return(NotFound()); } //Hämta den inloggade användarens id // var userId = _context.Users.FirstOrDefault(u => u.UserName == User.Identity.Name); var userId = userManager.GetUserId(User); //Hämta aktuellt gympass //Todo: Remove button in ui if pass is history!!! GymClass currentGymClass = await unitOfWork.GymClasses.GetWithAttendingMembersAsync(id); //Är den aktuella inloggade användaren bokad på passet? var attending = currentGymClass.AttendingMembers .FirstOrDefault(u => u.ApplicationUserId == userId); //Om inte, boka användaren på passet if (attending == null) { var book = new ApplicationUserGymClass { ApplicationUserId = userId, GymClassId = currentGymClass.Id }; unitOfWork.UserGymClasses.Add(book); await unitOfWork.CompleteAsync(); } //Annars avboka else { unitOfWork.UserGymClasses.Remove(attending); await unitOfWork.CompleteAsync(); } return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Create([Bind("Id,Name,StartTime,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { unitOfWork.GymClasses.Add(gymClass); await unitOfWork.CompleteAsync(); if (Request.Headers["X-Requested-With"] == "XMLHttpRequest") { var gymClasses = await unitOfWork.GymClasses.GetAllClassesWithUsers(); var vm = new IndexViewModel { GymClasses = gymClasses }; return(PartialView("GymClassesPartial", vm)); } return(RedirectToAction(nameof(Index))); } return(View(gymClass)); }
public async Task <IActionResult> Create([Bind("Id,Name,StartTime,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { unitOfWork.GymClasses.Add(gymClass); await unitOfWork.CompleteAsync(); if (Request.Headers["X-Requested-With"] == "XMLHttpRequest") { var model = await unitOfWork.GymClasses.GetWithUsersAsync(gymClass.Id); // return Json(model); return(PartialView("GymClassPartial", model)); } } if (Request.Headers["X-Requested-With"] == "XMLHttpRequest") { return(Json(gymClass)); } return(View(gymClass)); }
public ActionResult Edit([Bind(Include = "GymClassId,Description,GymClassTypeId,ClassTime,ClassDate,MaxCapacity,MaxWaitList,ClassBookings,ClassWaiting")] ClassBookingDetail gymClass) { Tex.Log("Enter GymClassController/Edit"); try { if (ModelState.IsValid) { if (gymClass != null) { Tex.Log("Model Valid - GC ID " + gymClass.GymClassId); } GymClass dbClass = db.GymClass.Find(gymClass.GymClassId); GymClassMapper.CopyGymClass(gymClass.ToModel(), dbClass); db.Entry(dbClass).State = EntityState.Modified; if (gymClass.ClassBookings != null && gymClass.ClassBookings.Any()) { foreach (var booking in gymClass.ClassBookings) { db.Entry(booking).State = EntityState.Modified; } } if (gymClass.ClassWaiting != null && gymClass.ClassWaiting.Any()) { foreach (var booking in gymClass.ClassWaiting) { db.Entry(booking).State = EntityState.Modified; } } db.SaveChanges(); return(RedirectToAction("Index")); } return(View(gymClass)); } catch (Exception ex) { Tex.Dump(ex, "Excetption - GymClassControler/Edit"); throw; } }
public static GymClass ToModel(this ClassDetail classDetail) { GymClass gymClass = new GymClass(); gymClass.Description = classDetail.Description; gymClass.GymClassId = classDetail.GymClassId; gymClass.GymClassTypeId = classDetail.GymClassTypeId; gymClass.MaxCapacity = classDetail.MaxCapacity; gymClass.MaxWaitList = classDetail.MaxWaitList; if (classDetail.ClassDateTime != null && classDetail.ClassDateTime > DateTime.Now) { gymClass.ClassDateTime = classDetail.ClassDateTime; } else if (!String.IsNullOrEmpty(classDetail.ClassDate) && !String.IsNullOrEmpty(classDetail.ClassTime)) { DateTime d; bool dateOk = DateTime.TryParseExact(classDetail.ClassDate + " " + classDetail.ClassTime, "dd/MM/yyyy HH:mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out d); if (dateOk) { gymClass.ClassDateTime = d; } } return(gymClass); }
public ActionResult ReservationToggle(int?id) { if (id == null) { return(RedirectToAction("Index")); } GymClass currentClass = db.GymClasses.FirstOrDefault(g => g.ID == id); ApplicationUser currentUser = db.Users.FirstOrDefault(u => u.UserName == User.Identity.Name); if (currentClass != null) { if (currentClass.AttendingMembers.Contains(currentUser)) { currentClass.AttendingMembers.Remove(currentUser); db.SaveChanges(); } else { currentClass.AttendingMembers.Add(currentUser); db.SaveChanges(); } } return(RedirectToAction("Index")); }
public async Task <IActionResult> Create([Bind("Id,Name,StartTime,Duration,Description")] GymClass gymClass) { if (ModelState.IsValid) { unitOfWork.GymClasses.Add(gymClass); await unitOfWork.CompleteAsync(); if (Request.Headers["X-Requested-With"] == "XMLHttpRequest") { ////Get all //var gymClasses = await.unityOfWork.GymClasses.GetAllWithUsersAsync(); //var vm = new IndexViewModel {GymClasses = gymClasses }; //return PartialView("GymClassesPartial", vm); ////Get one var model = await unitOfWork.GymClasses.GetWithAttendingMembersAsync(gymClass.Id); return(PartialView(nameof(Index))); } return(RedirectToAction(nameof(Index))); } return(View(gymClass)); }
public void Remove(GymClass gymClass) { db.Remove(gymClass); }
//public async GymClass GetWithAttendingMembers(int? id) //detta ska levereras till controllern så att vi kan operera på rätt GymClass. Vi måste således ha rätt GymClass - för det använder vi det aktuella Id som vi kommer få genom vyn //{ // return db.UserGymClass. //} public void Remove(GymClass gymClass) //repositoryt måste ha den mest grundläggande db-funktionaliteten { db.GymClass.Remove(gymClass); }
public void Add(GymClass gymClass) // här kan man operera på databasen m.h.a. EFCore. Repositoryt har sina beteenden som enligt kontrakt med repositoryts Interface. Repositoryts beteenden skapas med EFCore-funktioner. { //db.Users.Where(u => u.UserName == ) db.Add(gymClass); }
public void Update(GymClass gymClass) //lite hjälp. { db.GymClass.Update(gymClass); }