Example #1
0
        public ActionResult RemoveFriend(int requester, int requested)
        {
            int personId = Int32.Parse(Session["person_id"].ToString());

            if (requester == personId)
            {
                Models.FriendLink            theLinkRequester = db.FriendLinks.SingleOrDefault(c => c.requester == personId && c.requested == requested);
                IEnumerable <Models.Message> theMessage       = db.Messages.Where(c => (c.sender == personId && c.receiver == requested) || (c.sender == requested && c.receiver == personId));
                foreach (var item in theMessage)
                {
                    db.Messages.Remove(item);
                }
                db.FriendLinks.Remove(theLinkRequester);
                db.SaveChanges();
            }
            else
            {
                Models.FriendLink            theLinkRequested = db.FriendLinks.SingleOrDefault(c => c.requester == requester && c.requested == personId);
                IEnumerable <Models.Message> theMessage       = db.Messages.Where(c => (c.sender == personId && c.receiver == requester) || (c.sender == requester && c.receiver == personId));
                foreach (var item in theMessage)
                {
                    db.Messages.Remove(item);
                }
                db.FriendLinks.Remove(theLinkRequested);
                db.SaveChanges();
            }

            return(View("FriendLink", db.FriendLinks));
        }
 public ActionResult DeleteRequest(int id)
 {
     Models.FriendLink theFriendRequest = database.FriendLinks.SingleOrDefault(c => c.requester == id);
     database.FriendLinks.Remove(theFriendRequest);
     database.SaveChanges();
     return(RedirectToAction("FriendRequestIndex", new { id = theFriendRequest.requester }));
 }
 public ActionResult ApproveRequest(int id)
 {
     Models.FriendLink theFriendRequest = database.FriendLinks.SingleOrDefault(c => c.requester == id);
     theFriendRequest.read     = 1;
     theFriendRequest.status   = "Approved";
     theFriendRequest.approved = 1;
     database.SaveChanges();
     return(RedirectToAction("FriendRequestIndex", new { id = theFriendRequest.requester }));
 }
Example #4
0
        public ActionResult Refuse(int id)
        {
            int personId = Int32.Parse(Session["person_id"].ToString());

            Models.FriendLink theLink = db.FriendLinks.SingleOrDefault(c => c.requester == id && c.requested == personId);

            db.FriendLinks.Remove(theLink);
            db.SaveChanges();

            return(View("FriendLink", db.FriendLinks));
        }
        public ActionResult UnFollowUser(int id)
        {
            int user_id = int.Parse(Session["user_id"].ToString());

            Models.Profile    theProfile = database.Profiles.SingleOrDefault(p => p.user_id == user_id);
            Models.FriendLink theFriend  = database.FriendLinks.SingleOrDefault(p => p.requested == id);
            database.FriendLinks.Remove(theFriend);

            database.SaveChanges();

            return(RedirectToAction("Index", new { id = theProfile.profile_id }));
        }
Example #6
0
        public ActionResult CreateFriendLink(int id)
        {
            int    personId = Int32.Parse(Session["person_id"].ToString());
            string error    = "";

            Models.FriendLink theLinkRequester = db.FriendLinks.SingleOrDefault(c => c.requester == personId && c.requested == id);
            Models.FriendLink theLinkRequested = db.FriendLinks.SingleOrDefault(c => c.requester == id && c.requested == personId);



            Models.Profile theRequested = db.Profiles.SingleOrDefault(c => c.person_id == id);

            Models.FriendLink newLink;
            if (theLinkRequester == null && theLinkRequested == null)
            {
                if (theRequested.privacy_flag.Equals("On"))
                {
                    newLink = new Models.FriendLink()
                    {
                        requester = personId,
                        requested = id,
                        approved  = "Pending",
                        status    = "Strangers",
                        read      = "Not read",
                        timestamp = DateTime.Now.ToString()
                    };
                }
                else
                {
                    newLink = new Models.FriendLink()
                    {
                        requester = personId,
                        requested = id,
                        approved  = "true",
                        status    = "Friends",
                        read      = "Not read",
                        timestamp = DateTime.Now.ToString()
                    };
                }
                db.FriendLinks.Add(newLink);
                db.SaveChanges();

                return(RedirectToAction("AllUsers", new { errorMessage = error }));
            }
            else
            {
                Models.Profile theProfile = db.Profiles.SingleOrDefault(p => p.person_id == id);
                error = "You have already sent/received a friend request to/from " + theProfile.first_name + " " + theProfile.last_name;

                return(RedirectToAction("AllUsers", new { errorMessage = error }));
            }
        }
Example #7
0
        public ActionResult Approve(int id)
        {
            int personId = Int32.Parse(Session["person_id"].ToString());

            Models.FriendLink theLink = db.FriendLinks.SingleOrDefault(c => c.requester == id && c.requested == personId);

            theLink.approved = "true";
            theLink.status   = "Friends";

            db.SaveChanges();

            return(View("FriendLink", db.FriendLinks));
        }
Example #8
0
        public ActionResult DetailsPrivacy(int id)
        {
            int personId = Int32.Parse(Session["person_id"].ToString());

            Models.FriendLink theLinkRequester = db.FriendLinks.SingleOrDefault(c => c.requester == personId && c.requested == id && c.approved == "true");
            Models.FriendLink theLinkRequested = db.FriendLinks.SingleOrDefault(c => c.requester == id && c.requested == personId && c.approved == "true");

            if (theLinkRequester != null || theLinkRequested != null)
            {
                Models.Profile theClient = db.Profiles.SingleOrDefault(c => c.person_id == id);

                return(View("Details", theClient));
            }

            Models.Profile theProfile = db.Profiles.SingleOrDefault(p => p.person_id == id);
            string         error      = theProfile.first_name + " " + theProfile.last_name + " is a private user and hasn't accepted your request.";

            return(RedirectToAction("AllUsers", "Friend", new { errorMessage = error }));
        }
        public ActionResult FollowUser(int id)
        {
            int user_id = int.Parse(Session["user_id"].ToString());

            Models.Profile    theProfile = database.Profiles.SingleOrDefault(p => p.user_id == user_id);
            Models.FriendLink friend     = new Models.FriendLink()
            {
                requester = theProfile.profile_id,
                requested = id,
                timestamp = DateTime.Now,
                status    = "To Be Approved",
                read      = 0,
                approved  = 0
            };

            database.FriendLinks.Add(friend);
            database.SaveChanges();

            return(RedirectToAction("Index", new { id = theProfile.profile_id }));
        }