public async Task <AdminUserDetailsList> GetUsers() { AdminUserDetailsList usersList = new AdminUserDetailsList(); ProfileDetails profileDetails; if (ValidateAuthentication(true, out profileDetails)) { IProfileService profileService = DependencyResolver.Current.GetService(typeof(IProfileService)) as IProfileService; profileDetails = profileService.GetProfile(profileDetails.PUID); if (profileDetails != null) { usersList.AdminUsers = new Collection <AdminUserDetails>(); usersList.Users = new Collection <AdminUserDetails>(); foreach (var profile in await profileService.GetAllProfiles(profileDetails.ID)) { AdminUserDetails user = new AdminUserDetails(); Mapper.Map(profile, user); if (profile.UserType == UserTypes.SiteAdmin) { usersList.AdminUsers.Add(user); } else { usersList.Users.Add(user); } } } else { throw new WebFaultException <string>(Resources.UserNotRegisteredMessage, HttpStatusCode.Unauthorized); } } return(usersList); }
//public AdminReportProfileDetailsList GetUsersForReport() //{ // AdminReportProfileDetailsList usersList = new AdminReportProfileDetailsList(); // ProfileDetails profileDetails; // if (ValidateAuthentication(true, out profileDetails)) // { // IProfileService profileService = DependencyResolver.Current.GetService(typeof(IProfileService)) as IProfileService; // profileDetails = profileService.GetProfile(profileDetails.PUID); // if (profileDetails != null) // { // usersList.Users = new Collection<AdminReportProfileDetails>(); // foreach (var profile in profileService.GetAllProfilesForReport(profileDetails.ID)) // { // usersList.Users.Add(profile); // } // } // else // { // throw new WebFaultException<string>(Resources.UserNotRegisteredMessage, HttpStatusCode.Unauthorized); // } // } // return usersList; //} public async Task <bool> UpdateAdminUsers(Stream adminUsers) { bool operationStatus = false; ProfileDetails profileDetails; if (ValidateAuthentication(true, out profileDetails)) { IProfileService profileService = DependencyResolver.Current.GetService(typeof(IProfileService)) as IProfileService; profileDetails = profileService.GetProfile(profileDetails.PUID); if (profileDetails != null) { string input; using (StreamReader sr = new StreamReader(adminUsers)) { input = sr.ReadToEnd(); } if (!string.IsNullOrWhiteSpace(input)) { AdminUserDetailsList usersList = input.DeserializeXML <AdminUserDetailsList>(); if (usersList != null) { var status = await profileService.PromoteAsSiteAdmin(usersList.AdminUsers.Select(u => u.UserID), profileDetails.ID); operationStatus = status.Succeeded; } } } else { throw new WebFaultException <string>(Resources.UserNotRegisteredMessage, HttpStatusCode.Unauthorized); } } return(operationStatus); }
public async Task<AdminUserDetailsList> GetUsers() { AdminUserDetailsList usersList = new AdminUserDetailsList(); ProfileDetails profileDetails; if (ValidateAuthentication(true, out profileDetails)) { IProfileService profileService = DependencyResolver.Current.GetService(typeof(IProfileService)) as IProfileService; profileDetails = profileService.GetProfile(profileDetails.PUID); if (profileDetails != null) { usersList.AdminUsers = new Collection<AdminUserDetails>(); usersList.Users = new Collection<AdminUserDetails>(); foreach (var profile in await profileService.GetAllProfiles(profileDetails.ID)) { AdminUserDetails user = new AdminUserDetails(); Mapper.Map(profile, user); if (profile.UserType == UserTypes.SiteAdmin) { usersList.AdminUsers.Add(user); } else { usersList.Users.Add(user); } } } else { throw new WebFaultException<string>(Resources.UserNotRegisteredMessage, HttpStatusCode.Unauthorized); } } return usersList; }