Exemple #1
0
        public ActionResult GetFriendsForConsideration(string intendedAction, string controller)
        {
            var currentUser = db.Users.Find(System.Web.HttpContext.Current.User.Identity.GetUserId());
            FriendsListViewModel suggestionsFriendsListModel = new FriendsListViewModel();

            suggestionsFriendsListModel.Action     = intendedAction;
            suggestionsFriendsListModel.Controller = controller;
            var acceptedRequestsOne = (from ele in db.UserToFriendsLists where ele.UserId == currentUser.Id && ele.IsAccepted == true select ele.FriendsListId).ToList();

            foreach (var friendsListId in acceptedRequestsOne)
            {
                foreach (ApplicationUser user in db.Users)
                {
                    if (friendsListId == user.FriendsListId)
                    {
                        suggestionsFriendsListModel.FriendsList.Add(user);
                    }
                }
            }
            var acceptedRequestsTwo = (from ele in db.UserToFriendsLists where ele.FriendsListId == currentUser.FriendsListId && ele.IsAccepted == true select ele.UserId).ToList();

            foreach (var userId in acceptedRequestsTwo)
            {
                foreach (ApplicationUser user in db.Users)
                {
                    if (userId == user.Id)
                    {
                        suggestionsFriendsListModel.FriendsList.Add(user);
                    }
                }
            }
            return(View(suggestionsFriendsListModel));
        }
Exemple #2
0
        public ViewResult ListFriends(int page = 1)
        {
            //通过我的Email获得我的ID
            Int64 my_id = UserHandler.GetUserIdByEmail(User.Identity.Name);

            //根据我的ID获得好友ID
            var f_ids = from f in friendsRepository.Friends.ToList()
                        where f.My_id == my_id
                        select f.Friend_id;

            //根据好友ID获得好友信息
            var friends = from u in userRepository.Users.ToList()
                          where f_ids.Contains(u.User_id)
                          select u;


            FriendsListViewModel model = new FriendsListViewModel
            {
                Friends    = friends,
                PagingInfo = new PagingInfo
                {
                    CurrentPage  = page,
                    ItemsPerPage = PageSize,
                    TotalItems   = friendsRepository.Friends.Count()
                }
            };

            return(View(model));
        }
Exemple #3
0
        // GET
        public ActionResult InviteFriend(FriendsListViewModel model)
        {
            model.UserToFindIsFound = false;
            var currentUser = db.Users.Find(System.Web.HttpContext.Current.User.Identity.GetUserId());
            UserToFriendsList newFriendRequest = new UserToFriendsList();

            foreach (ApplicationUser user in db.Users)
            {
                if (user.UserName == model.UserToFind)
                {
                    model.UserHasAttemptedASearch  = true;
                    model.UserToFindIsFound        = true;
                    newFriendRequest.FriendsListId = (int)currentUser.FriendsListId;
                    newFriendRequest.UserId        = user.Id;
                    newFriendRequest.IsAccepted    = false;
                    newFriendRequest.IsDenied      = false;
                    break;
                }
            }
            if (model.UserHasAttemptedASearch == true && model.UserToFindIsFound == true)
            {
                db.UserToFriendsLists.Add(newFriendRequest);
                db.SaveChanges();
                return(View("ManageFriends", model));
            }
            model.UserHasAttemptedASearch = true;
            return(View("ManageFriends", model));
        }
 public FriendsListPage()
 {
     InitializeComponent();
     BindingContext = new FriendsListViewModel()
     {
         Navigation = Navigation
     };
 }
 public FriendsListPage()
 {//инициализация и привязка контекста, передача навигации
     InitializeComponent();
     BindingContext = new FriendsListViewModel()
     {
         Navigation = this.Navigation
     };
 }
Exemple #6
0
        // GET: Enjoyer
        public ActionResult Index()
        {
            FriendsListViewModel friendsListModel = new FriendsListViewModel();
            var currentUser = db.Users.Find(System.Web.HttpContext.Current.User.Identity.GetUserId());

            foreach (UserToFriendsList invite in db.UserToFriendsLists)
            {
                if (invite.UserId == currentUser.Id && invite.IsAccepted == false && invite.IsDenied == false)
                {
                    friendsListModel.Invites.Add(invite);
                }
            }
            return(View(friendsListModel));
        }
Exemple #7
0
        // GET
        public ActionResult ManageFriends(FriendsListViewModel model)
        {
            FriendsListViewModel friendsListModel = new FriendsListViewModel();
            var currentUser = db.Users.Find(System.Web.HttpContext.Current.User.Identity.GetUserId());

            foreach (UserToFriendsList invite in db.UserToFriendsLists)
            {
                if (invite.UserId == currentUser.Id && invite.IsAccepted == false && invite.IsDenied == false)
                {
                    friendsListModel.Invites.Add(invite);
                }
            }
            foreach (UserToFriendsList invite in friendsListModel.Invites)
            {
                foreach (ApplicationUser user in db.Users)
                {
                    if (user.FriendsListId == invite.FriendsListId)
                    {
                        friendsListModel.InvitingUserNames.Add(user.UserName);
                    }
                }
            }
            var acceptedRequestsOne = (from ele in db.UserToFriendsLists where ele.UserId == currentUser.Id && ele.IsAccepted == true select ele.FriendsListId).ToList();

            foreach (var friendsListId in acceptedRequestsOne)
            {
                foreach (ApplicationUser user in db.Users)
                {
                    if (friendsListId == user.FriendsListId)
                    {
                        friendsListModel.FriendsList.Add(user);
                    }
                }
            }
            var acceptedRequestsTwo = (from ele in db.UserToFriendsLists where ele.FriendsListId == currentUser.FriendsListId && ele.IsAccepted == true select ele.UserId).ToList();

            foreach (var userId in acceptedRequestsTwo)
            {
                foreach (ApplicationUser user in db.Users)
                {
                    if (userId == user.Id)
                    {
                        friendsListModel.FriendsList.Add(user);
                    }
                }
            }
            return(View(friendsListModel));
        }
Exemple #8
0
        public ActionResult Friends(int id)
        {
            var viewModel = new FriendsListViewModel();

            var clientFriend   = new RestClient();
            var requestFriend  = new RestRequest("http://localhost:50139/api/people/{id}/friends" + id, DataFormat.Json);
            var responseFriend = clientFriend.Get <List <PersonViewModel> >(requestFriend);

            var clientPeople   = new RestClient();
            var requestPeople  = new RestRequest("http://localhost:50139/api/people/", DataFormat.Json);
            var responsePeople = clientPeople.Get <List <PersonViewModel> >(requestPeople);

            viewModel.Friends = responseFriend.Data;
            viewModel.People  = responsePeople.Data;
            viewModel.Person  = viewModel.People.First(x => x.Id == id);
            viewModel.People.Remove(viewModel.Person);

            return(View(viewModel));
        }
Exemple #9
0
        public async Task <FriendsListViewModel> GetAllFriends(string userId)
        {
            var user = await this.userManager.FindByIdAsync(userId);

            var usersFriends             = this.friendsRepo.AllAsNoTracking().Where(x => x.FriendUser == user | x.MainUser == user).ToList();
            FriendsListViewModel friends = new FriendsListViewModel();

            if (usersFriends == null)
            {
                return(friends);
            }
            else
            {
                foreach (var friend in usersFriends)
                {
                    if (friend.MainUserId == userId)
                    {
                        var friendUser = await this.userManager.FindByIdAsync(friend.FriendUserId);

                        friends.Friends.Add(new ProfileViewModel {
                            Id = friend.FriendUserId, AvatarUrl = friendUser.AvatarUrl, DisplayName = friendUser.DisplayName
                        });
                    }
                    else if (friend.FriendUserId == userId)
                    {
                        var mainUser = await this.userManager.FindByIdAsync(friend.MainUserId);

                        friends.Friends.Add(new ProfileViewModel {
                            Id = friend.MainUserId, AvatarUrl = mainUser.AvatarUrl, DisplayName = mainUser.DisplayName
                        });
                    }
                }
            }


            return(friends);
        }