Ejemplo n.º 1
0
        public ActionResult Profile()
        {
            AccountDetailViewModel model = new AccountDetailViewModel();
            string currentUser           = System.Web.HttpContext.Current.User.Identity.GetUserId();

            if (string.IsNullOrEmpty(currentUser))
            {
                return(RedirectToAction("Account", "Login"));
            }
            try
            {
                var userInfo   = _identityStore.GetUserByID(currentUser);
                var _userRoles = UserManager.GetRoles(currentUser);

                if (_userRoles != null)
                {
                    model.RolesList = _userRoles.ToList();
                }
                model.Id             = userInfo.Id;
                model.UserName       = userInfo.UserName;
                model.PhoneNumber    = userInfo.PhoneNumber;
                model.Email          = userInfo.Email;
                model.CreatedDateUtc = userInfo.CreatedDateUtc;
                model.Avatar         = userInfo.Avatar;
            }
            catch
            {
            }

            //Get newest activity
            try
            {
                int currentPage = 1;
                //Limit activity on once query.
                int pageSize = int.Parse(ConfigurationManager.AppSettings["Paging:PageSize"]);
                int total    = 0;

                model.ActivityNews = _activityStore.GetActivityLogByUserId(currentUser, currentPage, pageSize);
                total = _activityStore.CountAllActivityLogByUserId(currentUser);

                model.ActivityPagingInfo = new PagingInfo {
                    CurrentPage = currentPage,
                    //PageNo = (int)(total / pageSize),
                    PageNo   = (total + pageSize - 1) / pageSize,
                    PageSize = pageSize,
                    Total    = total
                };

                if (model.ActivityNews != null && model.ActivityNews.Count > 0)
                {
                    foreach (var record in model.ActivityNews)
                    {
                        //Calculate time
                        record.FriendlyRelativeTime = DateTimeHelper.GetFriendlyRelativeTime(record.ActivityDate);
                    }
                }
            }
            catch
            {
            }

            return(View(model));
        }