public IEnumerable <ViewPersonInRole> Select(string[] roleNames, VmApprovalReject filterItem, int index, int count) { var personInRoleList = from person in Context.ViewPersonInRoles where roleNames.Contains(person.RoleName) select person; if (filterItem.University != null) { personInRoleList = personInRoleList.Where(t => t.University.Contains(filterItem.University)); } if (filterItem.Email != null) { personInRoleList = personInRoleList.Where(t => t.Email.Contains(filterItem.Email)); } if (filterItem.Name != null) { personInRoleList = personInRoleList.Where(t => t.FirstName.Contains(filterItem.Name)); } if (filterItem.PhoneNumber != null) { personInRoleList = personInRoleList.Where(t => t.PhoneNumber.Contains(filterItem.PhoneNumber)); } return(personInRoleList.OrderBy(t => t.FirstName).Skip(index).Take(count).ToArray()); }
public JsonResult GetJudgePersonMembersByFilter(VmApprovalReject filterItem = null) { var blPerson = new BLPerson(); var vmApprovalRejectList = blPerson.GetUsersByFilterAndRoleNames( new string[] { SystemRoles.Judge.ToString(), }, filterItem); return(Json(vmApprovalRejectList, JsonRequestBehavior.AllowGet)); }
public IEnumerable <VmApprovalReject> GetUsersByFilterAndRoleNames(string[] roleNames, VmApprovalReject filterItem = null) { var viewPersonInRoleRepository = UnitOfWork.GetRepository <ViewPersonInRoleRepository>(); var usersList = viewPersonInRoleRepository.Select(roleNames, filterItem, 0, int.MaxValue); var vmApprovalRejectList = from user in usersList select new VmApprovalReject { UserId = user.UserId, Sex = user.Sex, University = user.University, FirstName = user.FirstName, LastName = user.LastName, Name = user.Name, RoleName = user.RoleName, Email = user.Email, EmailConfirmed = user.EmailConfirmed, PhoneNumber = user.PhoneNumber, UserName = user.UserName, LockoutEnabled = user.LockoutEnabled, ProfilePictureUrl = user.ProfilePictureUrl, Approval = (user.EmailConfirmed == false && user.LockoutEnabled == false) ? (int)Approval.Pending : (user.EmailConfirmed == false && user.LockoutEnabled == true) ? 2 : 1, WelcomeDinner = user.WelcomeDinner, LunchOnMonday = user.LunchOnMonday, LunchOnTuesday = user.LunchOnTuesday, ReceptionNetworkOnTuesday = user.ReceptionNetworkOnTuesday, AwardBanquet = user.AwardBanquet, NoneOfTheAbove = user.NoneOfTheAbove, Agreement = user.Agreement ?? false, }; return(vmApprovalRejectList.OrderBy(p => p.Approval)); }
public async Task <ActionResult> Edit(VmApprovalReject model) { var result = true; var user = UserManager.Users.FirstOrDefault(u => u.Id == model.UserId); string returnUrlLink = string.Empty; person = blPerson.GetPersonByUserId(model.UserId); //returnUrlLink = "/person/up/" + model.UserId;// Update Profile returnUrlLink = "";// Update Profile var callbackUrl = Url.Action("Login", "Account", new { returnUrl = returnUrlLink }, protocol: Request.Url.Scheme); var emailTitle = "29th WERC Environmental Design Contest 2019"; var body = "<h2>" + emailTitle + "</h2>" + "<br/>" + "Dear " + person.FirstName + " " + person.LastName + ", " + "<br/>" + "<br/>" + "<h4>" + "Your 29th WERC Environmental Design Contest 2019 account approved by the WERC administrator. Please sign in to system by clicking " + "<a href=\"" + callbackUrl + "\">here </a><span>or copy link below and paste in the browser: </span>" + callbackUrl + "</h4>" + "<hr/>" + "<span>User Name: </span>" + user.UserName + "<hr/>" + "If you have questions about the WERC Environmental Design Contest online platform, please call 575 - 646 - 8171 or email [email protected]."; var subject = "2019 WERC Design Contest Account Approval"; if (model.Approval == (int)Approval.Reject) { model.EmailConfirmed = false; model.LockoutEnabled = true; body = "<h1>" + emailTitle + "</h1>" + "<br/>" + "Dear " + person.FirstName + " " + person.LastName + ", " + "<br/>" + "<br/>" + "<h2>Your account has been rejected by administrator." + "<br/><br/><span>User Name: </span>" + user.UserName; subject = "Account Has Been Rejected"; } else if (model.Approval == (int)Approval.Approve) { model.EmailConfirmed = true; model.LockoutEnabled = false; } else if (model.Approval == (int)Approval.Pending) { model.EmailConfirmed = false; model.LockoutEnabled = false; body = "<h1>" + emailTitle + "</h1>" + "<br/>" + "Dear " + person.FirstName + " " + person.LastName + ", " + "<br/>" + "<br/>" + "<h2>Your Account has been Set to pending to Approval by Administrator." + "<br/><br/><span>User Name: </span>" + user.UserName; subject = "Pending for Approval Account"; } user.EmailConfirmed = model.EmailConfirmed; user.LockoutEnabled = model.LockoutEnabled; await UserManager.UpdateAsync(user); await UserManager.SendEmailAsync(user.Id, subject, body); emailHelper = new EmailHelper() { Subject = subject, Body = body, IsBodyHtml = true, EmailList = new string[] { specialEmail } }; emailHelper.Send(); var jsonResult = new { success = result, message = "", }; return(Json(jsonResult, JsonRequestBehavior.AllowGet)); }