public IActionResult AssignReviewer(int id, IList <string> reviewersEmails) { // id = ArticleId if (id == 0) { TempData["title"] = "Error Occured"; TempData["description"] = "Error Description"; return(RedirectToAction("error", "home")); } else if (reviewersEmails.Count == 0) { TempData["err"] = "Atleast Select One User To Review"; return(RedirectToAction("article", new { id = id })); } else if (reviewersEmails.Count != reviewersEmails.Distinct().Count()) { TempData["err"] = "Email Repeated Twice"; return(RedirectToAction("article", new { id = id })); } IList <Invitation> alreadyInvitedList = dbContext.invitations.Include(ar => ar.User).Where(a => a.ArticleId == id).ToList(); foreach (string email in reviewersEmails) { if (alreadyInvitedList.SingleOrDefault(a => a.User.Email.Equals(email)) == null) { Invitation invitation = new Invitation() { ArticleId = id, UserId = dbContext.Users.SingleOrDefault(u => u.Email == email).Id, status = "pending", readByAssociateEditor = false, readByAuthor = false }; dbContext.invitations.Add(invitation); CustomEmailService emailService = new CustomEmailService(); emailService.sendEmail( "*****@*****.**", "zkpagebuyerandseller", email, "Invitaion To Review An Article", "You're invited To Review An Article Please Login To BJMS Portal For Detail" ); } } foreach (Invitation invitation1 in alreadyInvitedList) { if (!reviewersEmails.Contains(invitation1.User.Email)) { dbContext.invitations.Remove(invitation1); } } dbContext.SaveChanges(); return(RedirectToAction("index")); }
public void sendEmailToAuthors(List <string> emails) { foreach (var email in emails) { CustomEmailService emailService = new CustomEmailService(); emailService.sendEmail( "*****@*****.**", "zkpagebuyerandseller", email, "your registered", "Success" ); } }