Beispiel #1
0
        public ActionResult Online()
        {
            var list  = _accountService.GetUsers().Where(u => u.EstaEnLinea).ToList();
            var model = new OnlineUsersViewModel
            {
                Users = list
            };

            return(View(model));
        }
        public OnlineUsersViewModel GetUserFromPostId(int postid)
        {
            var model = new OnlineUsersViewModel();

            using (var context = new ScoutUpDB())
            {
                model = context.Posts.Where(e => e.PostID == postid).Select(e => new OnlineUsersViewModel
                {
                    UserId             = e.UserId
                    , UserProfilePhoto = e.User.UserProfilePhoto
                }).FirstOrDefault();
            }

            return(model);
        }
Beispiel #3
0
        public override System.Threading.Tasks.Task OnConnected()
        {
            //Create an instance of the Repository class
            string name           = Context.User.Identity.GetUserId();
            var    user           = _db.Users.Find(name);
            var    usersFollowing = user.UserFollow.Select(e => e.UserBeingFollowedUserId).ToArray();

            var followingEachOther = _db.UserFollow.Where(e => usersFollowing.Contains(e.UserId))
                                     .Where(e => e.UserBeingFollowedUserId == user.Id).Select(id => id.UserId).ToArray();
            List <OnlineUsersViewModel> model = new List <OnlineUsersViewModel>();
            List <string> connectionIds       = new List <string>();

            foreach (var connection in followingEachOther)
            {
                var connectionid = _connections.GetConnections(connection.ToString());
                var enumerable   = connectionid.ToList();
                if (enumerable.Any())
                {
                    connectionIds.Add(enumerable.First());
                    var onlineUser            = _db.Users.Find(connection);
                    OnlineUsersViewModel temp = new OnlineUsersViewModel
                    {
                        UserId           = onlineUser.Id,
                        UserName         = onlineUser.UserFirstName + " " + onlineUser.UserSurname,
                        UserProfilePhoto = onlineUser.UserProfilePhoto
                    };
                    model.Add(temp);
                }
            }

            _connections.Add(name, Context.ConnectionId);
            dynamic client = null;

            foreach (var connectionId in _connections.GetConnections(name.ToString()))
            {
                client = Clients.Client(connectionId);
            }

            Clients.Clients(connectionIds).updateOnlineUsers(new OnlineUsersViewModel()
            {
                UserId           = user.Id,
                UserName         = user.UserFirstName + " " + user.UserSurname,
                UserProfilePhoto = user.UserProfilePhoto
            });
            client.onlineUsers(model);
            return(base.OnConnected());
        }
Beispiel #4
0
 public ActionResult OnlineUsers()
 {
     OnlineUsersViewModel vModel = new OnlineUsersViewModel();
     vModel.UserList = new List<UserViewModel>();
     
     UserManage vUsersManage = new UserManage();
     UsersEF[] vUsers = vUsersManage.OnlineUsersInfo();
     foreach (UsersEF vTempUser in vUsers)
     {
         UserViewModel vUserModel = new UserViewModel();
         vUserModel.ID = DBConvert.ToInt32(vTempUser.ID).Value;
         vUserModel.UserName = vTempUser.UserName;
         vUserModel.LateLoginTime = vTempUser.LateLoginTime;
         vUserModel.PowerName = UserManage.ConverPowerIDToName(DBConvert.ToInt32(vTempUser.Power).Value);
         vModel.UserList.Add(vUserModel);
     }
     return View(vModel);
 }
Beispiel #5
0
        public ActionResult OnlineUsers(OnlineUsersViewModel model)
        {
            var list = new List <OnlineUsersViewModel>();

            return(PartialView("OnlineUsers", model));
        }