public ActionResult Return(int Book_Id) { int userId = (int)Session["UserId"]; BookCorrect book = new BookCorrect(); LibraryUser libraryUser = new LibraryUser(); foreach (var item in db.LibraryUser) { if (item.User_Id == userId) { libraryUser = item; break; } } foreach (var item in db.BookCorrect) { if (item.Book_Id == Book_Id) { book = item; break; } } book.User_Id = null; book.LibraryUser = null; libraryUser.BookCorrect.Remove(book); db.SaveChanges(); return(RedirectToAction("Index", "BookCorrects")); }
public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } BookCorrect bookCorrect = db.BookCorrect.Find(id); if (bookCorrect == null) { return(HttpNotFound()); } List <LibraryUser> libraryUser = new List <LibraryUser>(); libraryUser.Add(bookCorrect.LibraryUser); foreach (var item in db.LibraryUser) { if (!item.Admin) { libraryUser.Add(item); } } ViewBag.User_Id = new SelectList(libraryUser, "User_Id", "Username"); FillChoosenAuthors(bookCorrect); FillChoosenGenres(bookCorrect); FillChoosenLanguage(bookCorrect); return(View(bookCorrect)); }
public ActionResult DeleteConfirmed(int id) { BookCorrect bookCorrect = db.BookCorrect.Find(id); db.BookCorrect.Remove(bookCorrect); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } BookCorrect bookCorrect = db.BookCorrect.Find(id); if (bookCorrect == null) { return(HttpNotFound()); } return(View(bookCorrect)); }
private void FillChoosenLanguage(BookCorrect book) { List <SelectListItem> languagesSelection = new List <SelectListItem>(); if (book.BookLanguage.Any()) { languagesSelection.Add(new SelectListItem { Text = db.Language.Find(book.BookLanguage.First().Language_Id).Language_Name }); } ; foreach (Language language in db.Language) { if (language.Language_Name != db.Language.Find(book.BookLanguage.First().Language_Id).Language_Name) { languagesSelection.Add(new SelectListItem { Text = language.Language_Name }); } } ViewBag.Language = null; ViewBag.Language = languagesSelection; }
private void FillChoosenGenres(BookCorrect book) { List <SelectListItem> choosen = new List <SelectListItem>(); List <SelectListItem> genres = new List <SelectListItem>(); List <Genre> allGenres = db.Genre.ToList(); List <BookGenre> genresFromBook = book.BookGenre.ToList(); if (genresFromBook.Any()) { foreach (BookGenre choosenGenre in genresFromBook) { choosen.Add(new SelectListItem { Text = choosenGenre.Genre.Genre_Name, Value = choosenGenre.Genre.Genre_Name }); } foreach (Genre genre in allGenres) { if (!ContainsGenres(genre.Genre_Id, genresFromBook)) { genres.Add(new SelectListItem { Text = genre.Genre_Name, Value = genre.Genre_Name }); } } } else { foreach (Genre genre in allGenres) { genres.Add(new SelectListItem { Text = genre.Genre_Name, Value = genre.Genre_Name }); } } ViewBag.Genres = genres; ViewBag.ChoosenGenres = choosen; }
private void FillChoosenAuthors(BookCorrect book) { List <SelectListItem> choosen = new List <SelectListItem>(); List <SelectListItem> authors = new List <SelectListItem>(); List <Author> allAuthors = db.Author.ToList(); List <BookAuthor> authorsFromBook = book.BookAuthor.ToList(); if (authorsFromBook.Any()) { foreach (BookAuthor choosenAuthor in authorsFromBook) { choosen.Add(new SelectListItem { Text = choosenAuthor.Author.Author_Name, Value = choosenAuthor.Author.Author_Name }); } foreach (Author author in allAuthors) { if (!ContainsAuthor(author.Author_Id, authorsFromBook)) { authors.Add(new SelectListItem { Text = author.Author_Name, Value = author.Author_Name }); } } } else { foreach (Author author in allAuthors) { authors.Add(new SelectListItem { Text = author.Author_Name, Value = author.Author_Name }); } } ViewBag.Authors = authors; ViewBag.ChoosenAuthors = choosen; }
public ActionResult Edit([Bind(Include = "Book_Id,Book_Name,ISBN_Number,Book_Desription,User_Id")] BookCorrect bookCorrect) { if (ModelState.IsValid) { if (bookCorrect.ISBN_Number.All(Char.IsLetter)) { ModelState.AddModelError("", "ISBN is not valid. No letters in ISBN number"); return(View(bookCorrect)); } db.Entry(bookCorrect).State = EntityState.Modified; if (Request.Form["ChoosenAuthors"] != null) { string choosenAuthors = Request.Form["ChoosenAuthors"].ToString(); string[] authorsNames = choosenAuthors.Split(','); List <BookAuthor> authorsNew = new List <BookAuthor>(); foreach (var item in db.Author) { BookAuthor bookAuthor = new BookAuthor(); for (int i = 0; i < authorsNames.Length; i++) { if (authorsNames[i].Equals(item.Author_Name)) { bookAuthor.Author = item; bookAuthor.Author_Id = item.Author_Id; bookAuthor.BookCorrect = bookCorrect; bookAuthor.BookAuthor_Id = bookCorrect.Book_Id; authorsNew.Add(bookAuthor); } } } foreach (BookAuthor bookAuthor in db.BookAuthor) { if (bookAuthor.Book_Id == bookCorrect.Book_Id) { bookCorrect.BookAuthor.Remove(bookAuthor); db.BookAuthor.Remove(bookAuthor); } } db.SaveChanges(); foreach (BookAuthor choosen in authorsNew) { db.BookAuthor.Add(choosen); bookCorrect.BookAuthor.Add(choosen); } } else { foreach (BookAuthor bookAuthor in db.BookAuthor) { if (bookAuthor.Book_Id == bookCorrect.Book_Id) { bookCorrect.BookAuthor.Remove(bookAuthor); db.BookAuthor.Remove(bookAuthor); } } } if (Request.Form["ChoosenGenres"] != null) { string choosenGenres = Request.Form["ChoosenGenres"].ToString(); string[] genreNames = choosenGenres.Split(','); List <BookGenre> genresNew = new List <BookGenre>(); foreach (var item in db.Genre) { BookGenre bookGenre = new BookGenre(); for (int i = 0; i < genreNames.Length; i++) { if (genreNames[i].Equals(item.Genre_Name)) { bookGenre.BookCorrect = bookCorrect; bookGenre.Genre = item; bookGenre.Book_Id = bookCorrect.Book_Id; bookGenre.Genre_Id = item.Genre_Id; genresNew.Add(bookGenre); } } } foreach (BookGenre bookGenre in db.BookGenre) { if (bookGenre.Book_Id == bookCorrect.Book_Id) { bookCorrect.BookGenre.Remove(bookGenre); db.BookGenre.Remove(bookGenre); } } db.SaveChanges(); foreach (BookGenre bookGenre in genresNew) { db.BookGenre.Add(bookGenre); bookCorrect.BookGenre.Add(bookGenre); } } else { foreach (BookGenre bookGenre in db.BookGenre) { if (bookGenre.Book_Id == bookCorrect.Book_Id) { bookCorrect.BookGenre.Remove(bookGenre); db.BookGenre.Remove(bookGenre); } } } if (Request.Form["Language"] != null) { string nameOfLanguage = Request.Form["Language"].ToString(); List <BookLanguage> languageNew = new List <BookLanguage>(); foreach (var item in db.Language) { BookLanguage bookLanguage = new BookLanguage(); if (nameOfLanguage.Equals(item.Language_Name)) { bookLanguage.Language = item; bookLanguage.Book_Id = bookCorrect.Book_Id; bookLanguage.BookCorrect = bookCorrect; bookLanguage.Language_Id = item.Language_Id; languageNew.Add(bookLanguage); } } foreach (BookLanguage bookLanguage in db.BookLanguage) { if (bookLanguage.Book_Id == bookCorrect.Book_Id) { db.BookLanguage.Remove(bookLanguage); } } db.SaveChanges(); foreach (BookLanguage bookLanguage in languageNew) { db.BookLanguage.Add(bookLanguage); bookCorrect.BookLanguage.Add(bookLanguage); } } else { foreach (BookLanguage bookLanguage in db.BookLanguage) { if (bookLanguage.Book_Id == bookCorrect.Book_Id) { db.BookLanguage.Remove(bookLanguage); } } } db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.User_Id = new SelectList(db.LibraryUser, "User_Id", "Username", bookCorrect.User_Id); return(View(bookCorrect)); }