Пример #1
0
 public ActionResult AddMember(int groupId, string username)
 {
     var service = new Service();
     User user = service.GetUser(User.Identity.Name);
     User member = service.GetUser(username);
     if (service.IsOwnerOfGroup(user.UserID, groupId) == false)
     {
         TempData["message"] = new Message("Only the owner of a group can add a member to it", MessageType.INFORMATION);
     }
     else if (member == null)
     {
         TempData["message"] = new Message("The username " + username + " could not be found.", MessageType.INFORMATION);
     }
     else if (User.Identity.Name == member.UserName)
     {
         TempData["message"] = new Message("You are already in the group.", MessageType.INFORMATION);
     }
     else if (service.IsMemberOfGroup(member.UserID, groupId))
     {
         TempData["message"] = new Message(username + " is already in the group.", MessageType.INFORMATION);
     }
     else if (service.AddMember(member.UserID, groupId))
     {
         TempData["message"] = new Message(member.UserName + " was added to the group.", MessageType.SUCCESS);
     }
     else
     {
         TempData["message"] = new Message("An error occured when trying to add " + username + "to the group, please try again later.", MessageType.ERROR);
     }
     if (Request.IsAjaxRequest())
     {
         return Json(new { member = member, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
     }
     return RedirectToAction("Index", new { groupId = groupId });
 }
Пример #2
0
 public ActionResult AddFriend(string username)
 {
     var service = new Service();
     User user = service.GetUser(User.Identity.Name);
     User friend = service.GetUser(username);
     if (friend == null)
     {
         TempData["message"] = new Message("The username " + username + " could not be found.", MessageType.INFORMATION);
     }
     else if (User.Identity.Name == friend.UserName)
     {
         TempData["message"] = new Message("You can't add yourself to your friend list.", MessageType.INFORMATION);
     }
     else if (service.IsFriendsWith(user.UserID, friend.UserID))
     {
         TempData["message"] = new Message(username + " is already your friend.", MessageType.INFORMATION);
     }
     else if (service.FriendRequestExists(user.UserID, friend.UserID))
     {
         TempData["message"] = new Message(username + " still has a pending friend request", MessageType.INFORMATION);
     }
     else if (service.SendFriendRequest(user.UserID, friend.UserID))
     {
         TempData["message"] = new Message(username + " has received your friend request.", MessageType.SUCCESS);
     }
     else
     {
         TempData["message"] = new Message("Could not process Add Friend request please try again later.", MessageType.ERROR);
     }
     if (Request.IsAjaxRequest())
     {
         return Json(new { message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
     }
     return RedirectToAction("Index");
 }
Пример #3
0
 public ActionResult AnswerEvent(int groupId, int eventId, bool answer)
 {
     var service = new Service();
     User user = service.GetUser(User.Identity.Name);
     if (service.IsInvitedToEvent(user.UserID, eventId))
     {
         Event theEvent = service.GetEventById(eventId);
         EventViewModel model = service.CastToViewModel(theEvent, null);
         if (model.State == State.FULL)
         {
             TempData["message"] = new Message("This event is already full", MessageType.INFORMATION);
         }
         else if (answer && (model.State == State.OFF || model.State == State.ON))
         {
             TempData["message"] = new Message("This event has expired", MessageType.INFORMATION);
         }
         else if (service.AnswerEvent(user.UserID, eventId, answer))
         {
             if (answer)
             {
                 TempData["message"] = new Message("You are listed as an attendee of " + theEvent.Name, MessageType.SUCCESS);
             }
             else
             {
                 TempData["message"] = new Message("You declined the invitation to " + theEvent.Name, MessageType.SUCCESS);
             }
         }
         else
         {
             TempData["message"] = new Message("An error occured when processing your request, please try again later.", MessageType.ERROR);
         }
     }
     else
     {
         TempData["message"] = new Message("Either the event you are trying to access doesn't exist or you do not have sufficient access to it.", MessageType.INFORMATION);
     }
     if (Request.IsAjaxRequest())
     {
         return Json(new { id = eventId, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
     }
     return RedirectToAction("Index");
 }
Пример #4
0
 public ActionResult AcceptFriendRequest(int requesterId)
 {
     var service = new Service();
     User user = service.GetUser(User.Identity.Name);
     User friend = service.GetUser(requesterId);
     if (service.IsFriendsWith(user.UserID, requesterId))
     {
         TempData["message"] = new Message(friend.DisplayName + " is already your friend", MessageType.INFORMATION);
     }
     else if (service.AnswerFriendRequest(friend.UserID, user.UserID, true))
     {
         TempData["message"] = new Message("You are now friends with " + friend.DisplayName, MessageType.SUCCESS);
     }
     else
     {
         TempData["message"] = new Message("The friend request you are trying to access no longer exists.", MessageType.INFORMATION);
     }
     if (Request.IsAjaxRequest())
     {
         return Json(new { message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
     }
     return RedirectToAction("Index");
 }
Пример #5
0
        public ActionResult RemoveFriend(int friendId)
        {
            var service = new Service();
            User user = service.GetUser(User.Identity.Name);
            User friend = service.GetUser(friendId);
            User parameter = null;

            if (service.IsFriendsWith(user.UserID, friendId))
            {
                TempData["message"] = new Message("You are no longer friends with " + friend.DisplayName, MessageType.SUCCESS);
                if (service.RemoveFriend(user.UserID, friendId))
                {
                    parameter = friend;
                }
            }
            else if (service.FriendRequestExists(user.UserID, friendId))
            {
                if (service.FriendRequestCancel(user.UserID, friendId))
                {
                    parameter = friend;
                }
                TempData["message"] = new Message("Friend request to " + friend.DisplayName + " has been cancelled", MessageType.SUCCESS);
            }
            else
            {
                if (friend != null)
                {
                    TempData["message"] = new Message("You are not friends with " + friend.DisplayName, MessageType.ERROR);
                }
                else
                {
                    TempData["message"] = new Message("User could not be found", MessageType.ERROR);
                }
            }
            if (Request.IsAjaxRequest())
            {
                return Json(new { friend = parameter, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
            }
            return RedirectToAction("Index");
        }
Пример #6
0
 public ActionResult DeclineFriendRequest(int requesterId)
 {
     var service = new Service();
     User user = service.GetUser(User.Identity.Name);
     User friend = service.GetUser(requesterId);
     if (service.AnswerFriendRequest(requesterId, user.UserID, false))
     {
         TempData["message"] = new Message("You declined a friend request from " + friend.DisplayName, MessageType.SUCCESS);
     }
     else
     {
         TempData["message"] = new Message("Could not find that specific friend request, maybe the other user withdrew it.", MessageType.ERROR);
     }
     if (Request.IsAjaxRequest())
     {
         return Json(new { friend = friend, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
     }
     return RedirectToAction("Index");
 }
Пример #7
0
        public ActionResult Comment(int eventId, string content)
        {
            var service = new Service();
            User user = service.GetUser(User.Identity.Name);
            if (String.IsNullOrEmpty(content))
            {

            }
            else if (service.IsInvitedToEvent(user.UserID, eventId))
            {
                Comment myComment = new Comment();
                myComment.Content = content;
                myComment.Active = true;
                myComment.OwnerId = user.UserID;
                myComment.CreationTime = DateTime.Now;
                if (!service.CreateComment(eventId, ref myComment))
                {
                    TempData["Message"] = new Message("An Error occured when processing your event, please try again later", MessageType.ERROR);
                }
            }
            else
            {
                TempData["message"] = new Message("Either the event you are trying to access doesn't exist or you do not have sufficient access to it.", MessageType.INFORMATION);
            }
            if (Request.IsAjaxRequest())
            {
                return Json(new { id = eventId, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
            }
            return RedirectToAction("Index");
        }
Пример #8
0
 public ActionResult RemoveMember(int groupId, int memberId)
 {
     var service = new Service();
     User user = service.GetUser(User.Identity.Name);
     User member = null;
     if (memberId == user.UserID)
     {
         TempData["message"] = new Message("You left the group.", MessageType.SUCCESS);
         service.RemoveMember(memberId, groupId);
         return RedirectToAction("Index", "User");
     }
     else if (service.IsOwnerOfGroup(user.UserID, groupId) == false)
     {
         TempData["message"] = new Message("You are not the owner of this group.", MessageType.WARNING);
     }
     else if (service.RemoveMember(memberId, groupId))
     {
         member = service.GetUser(memberId);
         TempData["message"] = new Message(member.DisplayName + " has been removed from the group", MessageType.SUCCESS);
     }
     if (Request.IsAjaxRequest())
     {
         return Json(new { member = member, message = TempData["message"] as Message }, JsonRequestBehavior.AllowGet);
     }
     return RedirectToAction("Index", "Group", new { groupId = groupId });
 }
Пример #9
0
 public ActionResult CreateGroup(string name)
 {
     var service = new Service();
     User user = service.GetUser(User.Identity.Name);
     if (String.IsNullOrEmpty(name))
     {
         TempData["message"] = new Message("Group name can not be empty.", MessageType.ERROR);
         return RedirectToAction("CreateGroup");
     }
     Group group = new Group(true, user.UserID, name, 0);
     if (service.CreateGroup(ref group))
     {
         TempData["message"] = new Message("Your group was created!", MessageType.SUCCESS);
         return RedirectToAction("Index", new { groupId = group.GroupID });
     }
     TempData["message"] = new Message("Your group could not be created, please try again later.", MessageType.ERROR);
     return RedirectToAction("Index");
 }