public ActionResult SetGroupLeader(int grpId) { Group volunteergroup = db.Groups.Find(grpId); if (!User.IsInRole(LWSFRoles.admin)) { var currVol = GetCurrentVolunteer(); if (currVol.Organization.Id != volunteergroup.OrganizationId) { return(RedirectToAction("UnauthorizedError", "Home", null)); } } if (volunteergroup.Leader != null) { ViewBag.LeaderId = new SelectList(volunteergroup.Volunteers, "Id", "Name", volunteergroup.Leader.Id); } else { ViewBag.LeaderId = new SelectList(volunteergroup.Volunteers, "Id", "Name", 0); } var model = new SetLeaderModel { Id = grpId, }; return(View(model)); }
public ActionResult SetOrgLeader(int orgId) { Organization org = db.Organizations.Find(orgId); List <Volunteer> vols = org.Volunteers.ToList(); if (org.OrgLeader != null) { ViewBag.LeaderId = new SelectList(vols, "Id", "Name", org.OrgLeader.Id); } else { ViewBag.LeaderId = new SelectList(vols, "Id", "Name", 0); } var model = new SetLeaderModel { Id = orgId, }; return(View(model)); }
public ActionResult SetOrgLeader(SetLeaderModel OrgLeader, string returnUrl) { if (ModelState.IsValid) { Volunteer vol = db.Volunteers.Find(OrgLeader.LeaderId); if (vol == null) { return(Redirect(returnUrl)); } var org = vol.Organization; if (org.OrgLeader != null) { Roles.RemoveUserFromRole(org.OrgLeader.UserName, LWSFRoles.organizationLeader); } org.OrgLeader = vol; vol.AdminOrg = org; db.SaveChanges(); Roles.AddUserToRole(vol.UserName, LWSFRoles.organizationLeader); } return(Redirect(returnUrl)); }
public ActionResult SetGroupLeader(SetLeaderModel GroupLeader, string returnUrl) { if (ModelState.IsValid) { Volunteer vol = db.Volunteers.Find(GroupLeader.LeaderId); if (vol == null) { return(Redirect(returnUrl)); } var grp = vol.Group; if (grp.Leader != null) { if (Roles.GetRolesForUser(grp.Leader.UserName).Contains(LWSFRoles.groupLeader)) { Roles.RemoveUserFromRole(grp.Leader.UserName, LWSFRoles.groupLeader); } } grp.Leader = vol; vol.AdminGroup = grp; db.SaveChanges(); Roles.AddUserToRole(vol.UserName, LWSFRoles.groupLeader); } return(Redirect(returnUrl)); }