private void TakeBookButton_Click(object sender, EventArgs e) { if (_result != null) { try { _mTakenBookPresenter.AddTakenBook(_book, StaticDataSource.CurrUser); var takenBooks = _mTakenBookPresenter.GetTakenBooks(); var addedBook = takenBooks.First(item => item.Code == _book.Code && item.TakenByUser == StaticDataSource.CurrUser); var userRepository = new UserRepository(StaticDataSource.DataSource); var userPresenter = new UserPresenter(null, userRepository); var users = userPresenter.GetUserList(); var userToSendEmailTo = users.First(user => user.Nickname == StaticDataSource.CurrUser); var bookReturnWarning = new BookReturnWarning( userToSendEmailTo.Email, addedBook.HasToBeReturned, _book.Author, _book.Title); bookReturnWarning.SendWarningEmail(); MessageBox.Show("You have to return this book on " + addedBook.HasToBeReturned); } catch (Exception) { MessageBox.Show("You can not return this book"); } } else { MessageBox.Show("Please add picture of the barcode"); } }