コード例 #1
0
 public PersonController(DatingAppContext context)
 {
     _context          = context;
     personRepository  = new PersonRepository(context);
     postRepository    = new PostRepository(context);
     requestRepository = new FriendRequestRepository(context);
 }
コード例 #2
0
        //
        // GET: /Account/ChangeUserData

        public ActionResult Accept(string id)
        {
            String userID   = User.Identity.GetUserId();
            String senderID = id;

            //Create new repositories
            FriendRequestRepository   friendRequestRepository   = new FriendRequestRepository(context);
            FriendRepository          friendRepository          = new FriendRepository(context);
            ApplicationUserRepository applicationUserRepository = new ApplicationUserRepository(context);

            ApplicationUser sendingUser   = applicationUserRepository.GetAll().Find(x => x.Id == senderID);
            ApplicationUser recievingUser = applicationUserRepository.GetAll().Find(x => x.Id == userID);

            var friend = new Friend
            {
                User1 = recievingUser,
                User2 = sendingUser
            };

            friendRepository.Add(friend);
            friendRepository.Save();


            var removeList = context.FriendRequests.Where(x => (x.FriendReceiver.Id == userID && x.FriendSender.Id == senderID) ||
                                                          (x.FriendReceiver.Id == senderID && x.FriendSender.Id == userID));

            foreach (var item in removeList)
            {
                friendRequestRepository.Items.Remove(item);
            }

            friendRequestRepository.Save();

            return(RedirectToAction("FriendRequest"));
        }
コード例 #3
0
        public IHttpActionResult GetFriendRequests()
        {
            UserRepository          userRep      = new UserRepository();
            FriendRequestRepository friendReqRep = new FriendRequestRepository();
            User user = userRep.GetUserByEmail(User.Identity.Name);

            return(Ok(friendReqRep.GetUserFriendRequests(user.Id)));
        }
コード例 #4
0
        public ActionResult DeclineFriendRequest(int id)
        {
            var friendrequestRepository = new FriendRequestRepository(context);
            var user = friendrequestRepository.GetAll().Find(x => x.Id == id);

            friendrequestRepository.Items.Remove(user);
            friendrequestRepository.Save();

            return(RedirectToAction("FriendRequest"));
        }
コード例 #5
0
        public IHttpActionResult AddFriendRequest(Guid FriendUserId)
        {
            UserRepository          db        = new UserRepository();
            FriendRequestRepository friendRep = new FriendRequestRepository();
            User user = db.GetUserByEmail(User.Identity.Name);

            friendRep.AddFriendRequest(user.Id, FriendUserId);

            return(Ok());
        }
コード例 #6
0
        public IHttpActionResult UpdateFriendRequest(Guid FriendUserId, bool Accepted)
        {
            FriendRequestRepository friendReqRep = new FriendRequestRepository();
            FriendsRepository       friendRep    = new FriendsRepository();
            UserRepository          userRep      = new UserRepository();
            User user = userRep.GetUserByEmail(User.Identity.Name);

            if (Accepted)
            {
                friendRep.AddUserFriend(user.Id, FriendUserId);
                friendRep.AddUserFriend(FriendUserId, user.Id);
            }

            friendReqRep.RemoveFriendRequest(FriendUserId, user.Id);

            return(Ok());
        }
コード例 #7
0
        public ActionResult SendFriendRequest(string id)
        {
            var userID     = User.Identity.GetUserId();
            var receiverID = id;

            FriendRequestRepository friendRequestRepository = new FriendRequestRepository(context);

            ApplicationUserRepository applicationUserRepository = new ApplicationUserRepository(context);

            ApplicationUser sendingUser   = applicationUserRepository.GetAll().Find(x => x.Id == userID);
            ApplicationUser recievingUser = applicationUserRepository.GetAll().Find(x => x.Id == receiverID);

            FriendRequest friendRequest = new FriendRequest
            {
                FriendSender   = sendingUser,
                FriendReceiver = recievingUser
            };

            friendRequestRepository.Add(friendRequest);
            friendRequestRepository.Save();


            return(RedirectToAction("SearchPage", "Home", new { SearchString = "" }));
        }
コード例 #8
0
 public FriendRequestManager()
 {
     _friendRequestRepository = new FriendRequestRepository();
 }