public async Task <IActionResult> Create([FromBody] UniversityRole item) { if (item == null) { return(BadRequest()); } await RoleRepository.AddMapping(item); return(Created("api/UniversityRole", item)); }
public bool SynchLoginAndApplicationDatabases(string email, Literal literalControl) { bool synchResult = true; var manager = Context.GetOwinContext().GetUserManager <ApplicationUserManager>(); // Get the role of the user. UniversityRole role = GetUserRole(email); ApplicationUser user = manager.FindByName(email); switch (role) { case UniversityRole.None: // The user is not an admin or a student. If the user is in AspNetUsers, then delete him/her from AspNetUsers. if (user != null) { manager.Delete(user); } break; case UniversityRole.Student: // If the user is in UniversityDB, but not in AspNetUsers, add the user to AspNetUsers in his/her specified role. if (user == null) { user = new ApplicationUser() { UserName = email }; IdentityResult result = manager.Create(user, "University1#"); if (result.Succeeded) { IdentityResult roleResult = manager.AddToRole(user.Id, role.ToString()); if (!roleResult.Succeeded) { manager.Delete(user); literalControl.Text = "Cannot create role " + role.ToString() + " for user with email '" + email + "'. Please contact 3311rep."; synchResult = false; } } else { literalControl.Text = ((string[])result.Errors)[0] + " Please contact 3311rep."; synchResult = false; } } break; default: // No action need for Admin role. break; } return(synchResult); }
protected void Page_Load(object sender, EventArgs e) { UniversityRole role = UniversityRole.None; // Hide all menu items. // Hide admin menu items. liAdminDropDown.Visible = false; liCreateStudentRecord.Visible = false; liSearchStudentRecord.Visible = false; liDisplayDepartmentStudentRecords.Visible = false; // Hide student menu items. liEnrollInCourses.Visible = false; liDisplayEnrolledCourses.Visible = false; string userId = HttpContext.Current.User.Identity.GetUserId(); var manager = Context.GetOwinContext().GetUserManager <ApplicationUserManager>(); if (userId != null) { if (manager.IsInRole(userId, "Admin")) { role = UniversityRole.Admin; } if (manager.IsInRole(userId, "Student")) { role = UniversityRole.Student; } } { switch (role) { case UniversityRole.Admin: // Show admin menu items. liAdminDropDown.Visible = true; liCreateStudentRecord.Visible = true; liSearchStudentRecord.Visible = true; liDisplayDepartmentStudentRecords.Visible = true; break; case UniversityRole.Student: // Show student menu items. liEnrollInCourses.Visible = true; liDisplayEnrolledCourses.Visible = true; break; case UniversityRole.None: break; } } }
public async Task <IActionResult> Get(int universityId, int roleId) { var item = await RoleRepository.Find(universityId, roleId); if (item == null) { var blankData = new UniversityRole { RoleId = 0, UniversityId = 0 }; return(Ok(blankData)); } return(Ok(item)); }
public UniversityRole GetUserRole(string email) { // If the user is neither an admin nor a student, return the None role. UniversityRole resultRole = UniversityRole.None; // If the username is admin, return the Admin role. if (email == "admin") { resultRole = UniversityRole.Admin; } // Else if the user is a student, return the Student role. else if (myUniversityDB.IsUserInRole(UniversityRole.Student.ToString(), "email", email) == 1) { resultRole = UniversityRole.Student; } return(resultRole); }
public async Task AddMapping(UniversityRole item) { await _context.UniversityRoles.AddAsync(item); await _context.SaveChangesAsync(); }