Exemple #1
0
        public ActionResult Following()
        {
            var idCard = ((System.Web.HttpContext.Current.User as MyIdentity.MyPrincipal).Identity as MyIdentity).User.IdCard;
            var model  = new FollowersViewModel();
            List <PR_GetFriends_Result> customers     = db.PR_GetFriends(idCard).ToList();
            List <ProfileModel>         profileModels = new List <ProfileModel>();

            foreach (var account in customers)
            {
                var profile = new ProfileModel();
                profile.IdCard    = account.IdCard;
                profile.Username  = account.Username;
                profile.FirstName = account.FirstName;
                profile.LastName  = account.LastName;
                profile.LastName  = account.LastName;

                ObjectParameter followersQty = new ObjectParameter("Qty", typeof(int));
                db.PR_GetFollowersCount(account.IdCard, followersQty);
                profile.Followers = (int)followersQty.Value;
                profile.Reviews   = db.Customer.Find(account.IdCard).Review.Count;
                profileModels.Add(profile);
            }
            model.Customers = profileModels;
            return(View(model));
        }
Exemple #2
0
        protected override void HandleOnNavigatedTo(NavigationEventArgs e)
        {
            base.HandleOnNavigatedTo(e);
            if (this._isInitialized)
            {
                return;
            }
            string name = "";

            if (((Page)this).NavigationContext.QueryString.ContainsKey("Name"))
            {
                name = ((Page)this).NavigationContext.QueryString["Name"];
            }
            if (((Page)this).NavigationContext.QueryString.ContainsKey("Mode") && ((Page)this).NavigationContext.QueryString["Mode"] == "Subscriptions")
            {
                this._subscriptions = true;
                ((FrameworkElement)this.listBox).SetBinding((DependencyProperty)FrameworkElement.DataContextProperty, new Binding("SubscriptionsVM"));
            }
            FollowersViewModel followersViewModel = new FollowersViewModel(this.CommonParameters.UserOrGroupId, this.CommonParameters.IsGroup, name, this._subscriptions);

            base.DataContext = followersViewModel;
            if (!this._subscriptions)
            {
                followersViewModel.FollowersVM.LoadData(false, false, null, false);
            }
            else
            {
                followersViewModel.SubscriptionsVM.LoadData(false, false, null, false);
            }
            this._isInitialized = true;
        }
        public FollowersViewController(IntPtr handle) : base(handle)
        {
            dataContext = new FollowersViewModel(CurrentUser.UserId);
            Bindings    = new List <Binding>();

            source = new FollowersCollectionViewSource(CurrentUser.UserId);

            source.LoadData(dataContext.Users.ToList());
        }
Exemple #4
0
        public FollowersViewModel GetFollowers(int UserId)
        {
            FollowersViewModel model = new FollowersViewModel();

            try
            {
                model = new FollowersViewModel("[[[Followers]]]", _userFollowService.GetUsersFollowingUser(UserId));
            }
            catch (Exception e)
            {
                model = new FollowersViewModel();
                Commons.Logger.GenerateError(e, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, "UserId = " + UserId);
            }
            return(model);
        }
        public async Task <IActionResult> Followers()
        {
            var user = await _userManager.GetUserAsync(HttpContext.User);

            var splitFollowers = SplitField(user.FolowersId, SEPARATOR);
            var folowersEntity = await GetElements(splitFollowers, _userManager.Users.ToArray());

            var followersPosts     = FollowerPosts(folowersEntity);
            var followersViewModel = new FollowersViewModel
            {
                UsersActivity = folowersEntity,
                PostsActivity = followersPosts
            };

            ViewData["followersViewModel"] = followersViewModel;

            return(View());
        }
Exemple #6
0
        public async Task <IActionResult> Followers(string id)
        {
            var user = await _userManager.FindByNameAsync(id);//Viewing user name

            if (user == null)
            {
                return(NotFound());
            }
            var followers = await _dbContext
                            .Follows
                            .Include(t => t.Trigger)
                            .Where(t => t.ReceiverId == user.Id).ToListAsync();

            var model = new FollowersViewModel
            {
                Followers = followers
            };
            await model.Restore(user, 4, _dbContext, await GetCurrentUserAsync());

            return(View(model));
        }
        public ActionResult _Followers(int id)
        {
            try
            {
                FollowersViewModel model = new FollowersViewModel();

                model = _userService.GetFollowers(id);
                if (model != null)
                {
                    if (User.Identity.IsAuthenticated)
                    {
                        model.IsLoggedUserProfile = (id == UserSession.UserId);
                    }
                    return(PartialView("~/Views/Profile/Profile/_Followers.cshtml", model));
                }
            }
            catch (Exception e)
            {
                Logger.GenerateError(e, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType, " id = " + id);
            }
            return(Content(PartialViewResults.UnknownError));
        }
Exemple #8
0
 public FollowersPage()
 {
     InitializeComponent();
     BindingContext = new FollowersViewModel();
 }
 public async Task <ActionResult> Followers(string user, string avatar)
 {
     return(View(await FollowersViewModel.GetFollowers(user, avatar)));
 }
Exemple #10
0
        public IActionResult Followers(string userName)
        {
            if (!User.Identity.IsAuthenticated)
            {
                return(RedirectToAction("LoginOrRegister", "Account"));
            }
            if (userName == null || userName == "")
            {
                userName = _userManager.GetUserName(User);
            }
            var user = _context.Users.Where(x => x.UserName.ToLower() == userName.ToLower()).SingleOrDefault();

            if (user == null)
            {
                TempData["error"] = "Unable to find user " + userName + ".";
                return(RedirectToAction(nameof(Home)));
            }
            Random random = new Random();

            string realUserName   = user.UserName;
            string loggedInUserId = _userManager.GetUserId(User);

            int barksCount     = _context.Posts.Where(p => p.Author == userName).Count();
            int followingCount = _context.Follows.Where(f => f.FollowerId == user.Id).Count();
            int followersCount = _context.Follows.Where(f => f.FolloweeId == user.Id).Count();
            int likesCount     = _context.Likes.Where(l => l.UserId == user.Id).Count();
            var following      = _context.Follows.Where(f => f.FollowerId == loggedInUserId).Select(f => f.FolloweeId).ToList();

            following = _context.Users.Where(u => following.Contains(u.Id)).Select(u => u.UserName).ToList();
            var userNames      = _context.Users.Select(u => u.UserName).Where(x => x != _userManager.GetUserName(User)).OrderBy(x => random.Next()).Take(10).ToList();
            var profileImageId = user.ProfileImageId;

            // Getting the list of users who are following the specified user
            string userId           = _context.Users.Single(u => u.UserName == realUserName).Id;
            var    followerUsersIds = _context.Follows.Where(f => f.FolloweeId == userId).Select(f => f.FollowerId).ToList();
            var    followerUsers    = _context.Users.Where(u => followerUsersIds.Contains(u.Id)).ToList();

            // Putting the users into the correct list format
            var formattedUserList = new List <FollowerUser>();

            foreach (var fUser in followerUsers)
            {
                formattedUserList.Add(new FollowerUser {
                    UserName       = fUser.UserName,
                    BarksCount     = _context.Posts.Count(p => p.User == fUser),
                    FollowersCount = _context.Follows.Count(f => f.FolloweeId == fUser.Id),
                    isFollowing    = _context.Follows.Any(f => f.FolloweeId == fUser.Id && f.FollowerId == loggedInUserId)
                });
            }

            var model = new FollowersViewModel
            {
                UserName       = realUserName,
                BarksCount     = barksCount,
                FollowingCount = followingCount,
                FollowersCount = followersCount,
                LikesCount     = likesCount,
                JoinDate       = user.JoinDate,
                Bio            = user.Bio,
                ProfileImageId = profileImageId,
                Following      = following,
                OtherUsers     = userNames,
                FollowerUsers  = formattedUserList
            };

            return(View(model));
        }
Exemple #11
0
 public FollowersViewModel GetFriends(string username)
 {
     User user = UserRepository.GetUser(username);
     FollowersViewModel result = new FollowersViewModel();
     result.Following = Mapper.Map<List<User>, List<UserViewModel>>(user.Friends.ToList());
     result.Followers = Mapper.Map<List<User>, List<UserViewModel>>(UserRepository.GetFollowedBy(user));
     return result;
 }