public ActionResult FriendList()
        {
            var anvandare = User.Identity.GetUserId();
            //ska hämta till vilken dvs inloggade användaren
            var anvandaretill = friendRepository.GetAll().Where(x => x.Friend1.Id == (anvandare)).Select(u => u.Friend2);

            var user = from a in userRepository.GetAll().Where(x => x.Id.Equals(anvandaretill)) select a;

            var anvandaretill2 = friendRepository.GetAll().Where(x => x.Friend2.Id == (anvandare)).Select(u => u.Friend1);

            var user2 = from a in userRepository.GetAll().Where(x => x.Id.Equals(anvandaretill2)) select a;

            var total = anvandaretill.Concat(anvandaretill2);

            return(View(total.ToList()));
        }
Exemplo n.º 2
0
        public ActionResult AcceptFriendRequest(string id)
        {
            var requestFriend = userRepository.Get(id);
            var acceptFriend  = userRepository.Get(User.Identity.GetUserId());

            var Friend = friendRepository.GetAll().Single(x => x.FriendTo == acceptFriend && x.FriendFrom == requestFriend);

            Friend.FriendStatus = FriendStatus.Approved;

            friendRepository.Delete(Friend.Id);
            friendRepository.Add(Friend);
            friendRepository.Save();



            return(View("Error"));
        }
Exemplo n.º 3
0
        public ListViewViewModel()
        {
            FriendRepository repository = new FriendRepository();

            Friends = repository.GetAll().ToList();

            FriendsObservableCollection = repository.GetAllGrouped();
        }
Exemplo n.º 4
0
 public ActionResult GetAllFriend()
 {
     try
     {
         var friends = _friendRepository.GetAll();
         return(Json(friends, JsonRequestBehavior.AllowGet));
     }
     catch (Exception e)
     {
         return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, e.Message));
     }
 }
Exemplo n.º 5
0
        public IPagedResponse <Contracts.Models.UserView> GetAll(String UserId, int pageNumber, int pageSize)
        {
            /*if (pageNumber <= 0)
             *  throw new ArgumentException("Page number must exceed 0.");
             *
             * if (pageSize <= 0)
             *  throw new ArgumentException("Page size must exceed 0.");*/

            using (FriendRepository repo = new FriendRepository())
            {
                return(repo.GetAll(UserId, pageNumber, pageSize));
            }
        }
Exemplo n.º 6
0
        public ActionResult SendFriendRequest(string id)
        {
            Friends friends = new Friends();

            var userName = User.Identity.Name;

            var from = userRepository.GetAll().Single(x => x.UserName.Equals(userName));

            friends.FriendFrom = from;
            var to = userRepository.GetAll().Single(x => x.Id.Equals(id));

            friends.FriendTo = to;

            var requests = friendRepository.GetAll();

            bool requestExists = false;

            foreach (var item in requests)
            {
                if (from.Id.Equals(item.FriendTo_Id) && to.Id.Equals(item.FriendFrom_Id) || from.Id.Equals(item.FriendFrom_Id) && to.Id.Equals(item.FriendTo_Id))
                {
                    requestExists = true;
                }
            }

            if (requestExists == false && friends.FriendStatus == FriendStatus.Pending)
            {
                friendRepository.Add(friends);



                friendRepository.Save();
                return(View("Error"));
            }


            return(View());
        }
Exemplo n.º 7
0
 // GET: api/Friends
 public IEnumerable <Friend> Get()
 {
     return(_friendRepository.GetAll());
 }
        //Other profiles
        public ActionResult UserProfile(string id)
        {
            if (id == User.Identity.GetUserId())
            {
                return(RedirectToAction("Index"));
            }

            var user     = userRepository.Get(id);
            var posts    = postRepository.GetAllPostForUserIncludeSenderOrderByDateDesc(id);
            var identity = userRepository.Get(User.Identity.GetUserId());

            var model = new UserProfileViewModel
            {
                UserId             = user.Id,
                Firstname          = user.Firstname,
                Lastname           = user.Lastname,
                Description        = user.Description,
                Image              = user.ProfileImage,
                IsAlreadyFriend    = friendRepository.IsAlreadyFriend(id, User.Identity.GetUserId()),
                MatchingPercentage = Math.Round(MatchAlgorithm.MatchAlgorithm.GetMatchPercentage(identity, user), 1)
            };

            if (model.IsAlreadyFriend)
            {
                var friend = friendRepository.GetAll().First(x => x.TheFriendId == user.Id && x.TheUserId == User.Identity.GetUserId());
                model.RelationStatusId         = friend.Id;
                model.RelationStatusToIdentity = RelationStatusToIdentity.IsFriend;
            }
            else
            {
                model.HasSendRequest = requestRepository.HasAlreadySentRequest(id, User.Identity.GetUserId());
                if (model.HasSendRequest)
                {
                    var request = requestRepository.GetAll().First(x => x.RequestedBy_Id == User.Identity.GetUserId() && x.RequestedTo_Id == model.UserId);
                    model.RelationStatusId         = request.Id;
                    model.RelationStatusToIdentity = RelationStatusToIdentity.HasSendRequest;
                }
                else
                {
                    model.HasRecievedRequest = requestRepository.HasRecievedRequest(id, User.Identity.GetUserId());
                    if (model.HasRecievedRequest)
                    {
                        var request = requestRepository.GetAll().First(x => x.RequestedTo_Id == User.Identity.GetUserId() && x.RequestedBy_Id == model.UserId);
                        model.RelationStatusId         = request.Id;
                        model.RelationStatusToIdentity = RelationStatusToIdentity.HasRecievedRequest;
                    }
                    else
                    {
                        model.RelationStatusToIdentity = RelationStatusToIdentity.IsNotFriend;
                    }
                }
            }

            model.Posts = ConvertPostToPostViewModelIdentity(posts, id);
            model.Posts.IsFriendOrNot = model.IsAlreadyFriend;

            var visitor = new Visitor()
            {
                VisitBy   = userRepository.Get(User.Identity.GetUserId()),
                VisitTo   = user,
                VisitDate = DateTime.Now
            };

            visitorRepository.Add(visitor);
            visitorRepository.Save();

            return(View(model));
        }
Exemplo n.º 9
0
 public async Task <List <Friend> > GetAll()
 {
     return(await FriendRepository.GetAll());
 }