public ActionResult RentBook(string id, string bookId, DateTime startDate, DateTime endDate) { List <Book> books = BookRepository.GetBooks(); SortBooksByTitle sortBooksByTitle = new SortBooksByTitle(); books.Sort(sortBooksByTitle); if (RentRepository.IsStartDateCorrect(startDate)) { if (RentRepository.IsEndDateCorrect(endDate, startDate)) { ObjectId memberId = new ObjectId(id); Member member = MemberRepository.GetMemberById(memberId); ObjectId rentingBookId = new ObjectId(bookId); Book book = BookRepository.GetBookById(rentingBookId); Rent rent = new Rent(member, book, null, startDate, endDate); if (BookRepository.BookIsFreeToRent(rent)) { RentRepository.CreateRent(rent); return(Redirect($"/Rents/MemberRents/{id}")); } else { TempData["textmsg"] = "<script>alert('This book is not free to Rent in this entered date period. Please try another dates');</script>"; return(View(books)); } } else { TempData["textmsg"] = "<script>alert('You entered a date before rent start date. Please try a date after rent start date');</script>"; return(View(books)); } } else { TempData["textmsg"] = "<script>alert('You entered a date before today date. Please try a date after today date');</script>"; return(View(books)); } }
public ActionResult RentFilmToMember(string id, string memberId, DateTime startDate, DateTime endDate) { List <Member> members = MemberRepository.GetMembers(); SortMemberByName sortMemberByName = new SortMemberByName(); members.Sort(sortMemberByName); if (RentRepository.IsStartDateCorrect(startDate)) { if (RentRepository.IsEndDateCorrect(endDate, startDate)) { ObjectId RentingMemberId = new ObjectId(memberId); Member member = MemberRepository.GetMemberById(RentingMemberId); ObjectId rentingFilmId = new ObjectId(id); Film film = FilmRepository.GetFilmById(rentingFilmId); Rent rent = new Rent(member, null, film, startDate, endDate); if (FilmRepository.FilmIsFreeToRent(rent)) { RentRepository.CreateRent(rent); return(Redirect($"/Rents/MemberRents/{memberId}")); } else { TempData["textmsg"] = "<script>alert('This book is not free to Rent in this entered date period. Please try another dates');</script>"; return(View(members)); } } else { TempData["textmsg"] = "<script>alert('You entered a date before rent start date. Please try a date after rent start date');</script>"; return(View(members)); } } else { TempData["textmsg"] = "<script>alert('You entered a date before today date. Please try a date after today date');</script>"; return(View(members)); } }