public async Task FriendRequest(string fromUser, string toUser) { using (_friendRepo = new FriendRepo(_ctx)) { var friends = new List <Friend>() { new Friend() { UserId = fromUser, FriendId = toUser, Waiting = true, Accepted = false }, new Friend() { UserId = toUser, FriendId = fromUser, Waiting = true, Accepted = false } }; _friendRepo.AddRange(friends); await _friendRepo.SaveChangesAsync(); if (_connectedUsers[toUser] != null) { Clients.Client(_connectedUsers[toUser].ConnectionId).newFriendRequest(fromUser); } } }
public override Task OnConnected() { using (_userRepo = new UserRepo(_ctx)) { using (_friendRepo = new FriendRepo(_ctx)) { var username = Context.Request.QueryString["username"]; var dbUser = _userRepo.Users.FirstOrDefault(x => x.UserName == username); var newUser = dbUser; newUser.IsOnline = true; _userRepo.Edit(dbUser, newUser); _userRepo.SaveChanges(); var userFriends = _friendRepo.UserFriends(username); var user = new UserSignalR() { ConnectionId = Context.ConnectionId, Username = username, Friends = userFriends.ToList() }; _connectedUsers.TryAdd(username, user); Clients.AllExcept(Context.ConnectionId).clientConnected(username); return(Clients.Caller.connected(userFriends)); } } }
public HomePageController(ICommentLikeRepo CommentLike, ICommentRepo PostComments, IPostRepo Post, IFriendRepo Friends, IPostLikeRepo PostLikes) { _Post = Post; _Friends = Friends; _PostLikes = PostLikes; _PostComments = PostComments; _CommentLike = CommentLike; }
public ProfileController(ICommentLikeRepo CommentLike, IUserRepo User, ICommentRepo PostComments, IPostRepo Post, IFriendRepo Friends, IPostLikeRepo PostLikes) { _Post = Post; _Friends = Friends; _PostLikes = PostLikes; _PostComments = PostComments; _CommentLike = CommentLike; _User = User; }
public ProfileController(ApplicationDbContext db, ICommentLikeRepo CommentLike, IUserRepo User, ICommentRepo PostComments, IPostRepo Post, IFriendRepo Friends, IPostLikeRepo PostLikes) { _Post = Post; _Friends = Friends; _PostLikes = PostLikes; _PostComments = PostComments; _CommentLike = CommentLike; _User = User; this.db = db; }
public async Task FriendRequestAccepted(string fromUser, string toUser) { using (_friendRepo = new FriendRepo(_ctx)) { var friends = _friendRepo.Friends.Where(x => (x.UserId == fromUser && x.FriendId == toUser) || (x.UserId == toUser && x.FriendId == fromUser)).ToList(); if (friends != null) { foreach (var friend in friends) { var newFriend = friend; newFriend.Waiting = false; newFriend.Accepted = true; _friendRepo.Edit(friend, newFriend); } await _friendRepo.SaveChangesAsync(); if (_connectedUsers[toUser] != null) { var user = new Domain.DTO.UserFriendsDTO() { FriendName = fromUser, IsOnline = _connectedUsers[fromUser] != null ? true : false }; _connectedUsers[toUser].Friends.Add(user); Clients.Client(_connectedUsers[toUser].ConnectionId).toUserAccepted(user); } if (_connectedUsers[fromUser] != null) { var user = new Domain.DTO.UserFriendsDTO() { FriendName = toUser, IsOnline = _connectedUsers[toUser] != null ? true : false }; _connectedUsers[fromUser].Friends.Add(user); Clients.Client(_connectedUsers[fromUser].ConnectionId).fromUserAccepted(user); } } } }
public FriendsController(UserManager <User> userManager, IFriendRepo repository, IMapper mapper) { _userManager = userManager; _repository = repository; _mapper = mapper; }
public ChatController(IUserRepo userRepo, IConversationReplyRepo conversationReplyRepo, IFriendRepo friendRepo) { _userRepo = userRepo; _conversationReplyRepo = conversationReplyRepo; _friendRepo = friendRepo; }