public void JoinGroupAsCustomUser (CustomUserEditModel user, int groupid) { var gmd = new GroupMembershipEditModel (); gmd.AccountNumberString = user.AccountNumberString; gmd.GroupId = groupid; _groupMembershipDal.SaveMemberToGroup (gmd); }
public GroupHomeEditModel GroupHomeEditModelByGroupId (int groupid) { var result = new GroupHomeEditModel (); var userlist = new List<CustomUserEditModel> (); var liu = _httpContextAccessor.HttpContext.User; var loggedinuser = CustomUserModelByLoggedInUser (liu); //var loggedinuser = _httpContextAccessor.HttpContext.Session.GetObjectFromJson<CustomUserEditModel>("LoggedInUser"); var group = _groupDal.GetGroupById (groupid); var admin = _customUserDal.CustomUserByAccountNumber (group.InsertedBy); result.GroupAdmin = admin; //if the user is the person who created the group assign them to admin. result.GroupAdminBool = group.InsertedBy == loggedinuser.AccountNumberString; result.Update (group); var groupmembership = _groupMembershipDal.AllGroupMembersByGroupId (groupid); foreach (var g in groupmembership) { var user = new CustomUser (); var cu = new CustomUserEditModel (); user = _customUserDal.CustomUserByAccountNumber (g.AccountNumberString); cu.Update (user); userlist.Add (cu); } if (groupmembership.Any (x => x.AccountNumberString == loggedinuser.AccountNumberString)) result.IsAuthorized = true; else result.IsAuthorized = false; //check to see if the pairings have been assigned: (AKA - You have your secret santa) var pairings = _groupPairingsDal.GroupPairingsByGroupId (groupid); if (pairings.Count >= 1) result.PairingsAssigned = true; else result.PairingsAssigned = false; result.GroupMembers = userlist; result.GroupMembershipModelList = groupmembership; result.NewGroup = false; //result.GroupConditions = conditions; return result; }
public CustomUserEditModel CheckUserByCustomUserAccountNumber(CustomUserEditModel model) { //First check to see if this user exists //_customUserDal.SaveUser(model); //var exists = _customUserDal.CustomUserByAccountNumber(model.AccountNumberString); if (model.NewUser) { var m = new CustomUser(); m.Update(model); var saved = _customUserDal.SaveUser(m); model.Update(saved); return(model); } return(model); }
public MyGroupsViewModel MyGroupsViewModelByUserId (CustomUserEditModel user) { var result = new MyGroupsViewModel (); result.MyGroups = new List<Group> (); var grouplist = new List<Group> (); var groupsibelongto = _groupMembershipDal.GroupsBelongingToUserAccountNumberString (user.AccountNumberString); foreach (var g in groupsibelongto) { var group = new Group (); group = _groupDal.GetGroupById (g.GroupId); grouplist.Add (group); } result.MyGroups = grouplist; return result; }
public CustomUserEditModel CustomUserModelByLoggedInUser(ClaimsPrincipal user) { var acctid = user.Claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value; //resharper ignore nullcheck if (acctid == null) { throw new AppException("Error getting account number"); } var existinguser = _customUserDal.CustomUserByAccountNumber(acctid); if (existinguser != null) { var existingusereditmodel = new CustomUserEditModel(); existingusereditmodel.Update(existinguser); existingusereditmodel.NewUser = false; return(existingusereditmodel); } var result = new CustomUserEditModel(); var name = user.Identity.Name; var email = user.Claims.FirstOrDefault(c => c.Type == ClaimTypes.Email).Value; if (email == null) { throw new AppException("Error getting email from auth0"); } var pic = user.Claims.FirstOrDefault(c => c.Type == "picture")?.Value; result.AccountNumberString = acctid; result.FullName = name; result.Email = email; result.ProfileImage = pic; result.NewUser = true; result.UserId = 0; return(result); }