//private class InternalUserData //{ // public InternalUserData(string name, string username, string hashedPassword, string role) // { // Name = name; // Username = username; // HashedPassword = hashedPassword; // Role = role; // } // public string Name // { // get; // private set; // } // public string Username // { // get; // private set; // } // public string HashedPassword // { // get; // private set; // } // public string Role // { // get; // private set; // } //} //private static readonly List<InternalUserData> _users = new List<InternalUserData>() //{ // new InternalUserData("Administrator", "Admin", "XYe3Vs7WzqV+aglmNmwxZg0XhDN0560nL6c0imwiUbU=", "Administrator"), // new InternalUserData("Mark Zuckerberg", "Mark", "3t+xSzmHldJCtbneg/o3ISj4ISxYANB5iLJqHLKOgoY=", "User"), // new InternalUserData("Satya Nadella", "Satya", "1TwZVFwIbBPmx7tG+O7xxDrJTdWCvrA0B45zDPkmito=", "User"), // new InternalUserData("Sundar Pichai", "Pichai", "+JmEE5Mbfcxj5n45JiyVIZX3hsp/3BU/M847cBuoXUY=", "User") //}; public User AuthenticateUser(string username, string clearTextPassword) { if (dbContext != null) { //InternalUserData userData = _users.FirstOrDefault(u => u.Username.Equals(username) && u.HashedPassword.Equals(CalculateHash(clearTextPassword, u.Username))); //if (userData == null) //{ // throw new UnauthorizedAccessException("Access denied. Please provide some valid credentials."); //} //return new User(userData.Username, userData.Username, userData.Role); string errorMessage = string.Empty; var userValidateDetail = dbContext.ValidateUser(username, clearTextPassword, out errorMessage); if (userValidateDetail != null && userValidateDetail.Code != -1 && userValidateDetail.UserId != -1 && userValidateDetail.GroupId != -1) { //var userdataset = dbContext.LoadComboDetails("USER", out errorMessage); //var userGroupDetails = GetUserDetails(userdataset); //var userGroupDetail = userGroupDetails.Single(ud => ud.UserName.ToUpper() == username.ToUpper()); //var groupdataset = dbContext.GetGroupDetails(userGroupDetail.GroupID, out errorMessage); //var groupDetail = GetGroupDetail(groupdataset); //var groupFormRights = GetGroupFormRights(groupdataset); //var formIds = groupFormRights.Select(gfr => gfr.FormID); //var formdataset = dbContext.LoadComboDetails("FORM", out errorMessage); //var formDetails = GetFormDetails(formdataset); //var formNames = formDetails.Where(f => formIds.Any(fi => fi == f.FormID)).Select(f => f.FormName); var groupdataset = dbContext.GetGroupDetails(userValidateDetail.GroupId, out errorMessage); var groupDetail = GetGroupDetail(groupdataset); var groupFormRights = GetGroupFormRights(groupdataset); var formIds = groupFormRights.Select(gfr => gfr.FormID); var formdataset = dbContext.LoadComboDetails("FORM", out errorMessage); var formDetails = GetFormDetails(formdataset); var formNames = formDetails.Where(f => formIds.Any(fi => fi == f.FormID)).Select(f => f.FormName); return(new User(userValidateDetail.UserId, userValidateDetail.Name, username, groupDetail.GroupName, formNames.ToArray())); } else { throw new UnauthorizedAccessException("Access denied. Please provide some valid credentials."); } } else { throw new UnauthorizedAccessException("Access denied. Please contact your administrator."); } }
public async Task <IHttpActionResult> GetGroupDetails(string groupId) { try { DataSet dataSet = await Task.Run(() => usermanagementDb.GetGroupDetails(groupId)); if (dataSet == null) { return(NotFound()); } return(Ok(dataSet)); } catch (Exception) { return(InternalServerError()); } }
//public GroupViewModel(UserManagementDb userManagementDb, GroupDetail groupDetail) //{ // this.userManagementDb = userManagementDb; // this.groupId = groupDetail.GroupID; // this.name = groupDetail.GroupName; // this.SaveCommand = new RelayCommand(this.ExecuteSaveCommand, this.CanExecuteSaveCommand); // string errorMessage = string.Empty; // var groupDetailDataSet = userManagementDb.GetGroupDetails(groupId, out errorMessage); // var groupFormRights = GetGroupFormRights(groupDetailDataSet); // var formdataset = userManagementDb.LoadComboDetails("FORM", out errorMessage); // var formDetails = GetFormDetails(formdataset); // this.forms = new List<GroupFormViewModel>(formDetails.Select(fd => new GroupFormViewModel(fd.FormID, fd.FormName, this))); // foreach (var form in forms) // { // if (groupFormRights.Any(gfr => gfr.FormID == form.ID)) // { // form.IsSelected = true; // } // } //} public GroupViewModel(UserManagementDb userManagementDb, GroupDetail groupDetail, List <FormDetail> formDetails) { this.userManagementDb = userManagementDb; this.groupId = groupDetail.GroupID; this.name = groupDetail.GroupName; this.SaveCommand = new RelayCommand(this.ExecuteSaveCommand, this.CanExecuteSaveCommand); string errorMessage = string.Empty; var groupDetailDataSet = userManagementDb.GetGroupDetails(groupId, out errorMessage); var groupFormRights = GetGroupFormRights(groupDetailDataSet); this.forms = new List <GroupFormViewModel>(formDetails.Select(fd => new GroupFormViewModel(fd.FormID, fd.CustomeText, this))); foreach (var form in forms) { if (groupFormRights.Any(gfr => gfr.FormID == form.ID)) { form.IsSelected = true; } } }