Пример #1
0
        public JsonResult GetConversationWithUser(string UserName)
        {
            var userLogged = _userService.GetUserByUserName(this.User.Identity.Name);

            var conversation = _messageService.GetConversation(userLogged, UserName);

            var conversationModel = new List <HomeChatModel>();

            foreach (var part in conversation)
            {
                if (part.Sender.Contains(this.User.Identity.Name))
                {
                    conversationModel.Add(new HomeChatModel()
                    {
                        IsMe     = true,
                        UserName = part.Sender,
                        Letter   = part.Letter,
                        Date     = Converts.CreateStringDate(part.Date),
                    });
                }
                else
                {
                    conversationModel.Add(new HomeChatModel()
                    {
                        IsMe     = false,
                        UserName = part.Sender,
                        Letter   = part.Letter,
                        Date     = Converts.CreateStringDate(part.Date),
                    });
                }
            }

            return(Json(conversationModel, JsonRequestBehavior.AllowGet));
        }
Пример #2
0
        public ActionResult DetailsPost(string id, string secondId)
        {
            var userLogged = _userService.GetUserByUserName(this.User.Identity.Name);

            _postService.MakeSeenNotification(userLogged, int.Parse(secondId));

            var targetPost = _postService.GetPostWithId(int.Parse(id));

            var pictureId = 0;

            int.TryParse(targetPost.PictureId.ToString(), out pictureId);

            var commentsPost = new List <ViewModelComment>();
            var commentList  = _infoCommentsOnThePost.GetDataForCommentsOnThePost(targetPost.Id).ToList();

            foreach (var comment in commentList)
            {
                var profilePicture = _postService.GetPictureProfileFromPost(_userService.GetUserById(targetPost.UserId));

                commentsPost.Add(new ViewModelComment()
                {
                    Username       = comment.Username,
                    Description    = comment.Description,
                    PictureProfile = Converts.ConvertByteArrToStringForImg(profilePicture)
                });
            }

            var likesPost = new List <ViewModelLike>();
            var likeList  = _infoForLIkes.GetDataLikesOnThePost(targetPost.Id).ToList();

            foreach (var like in likeList)
            {
                var pictureOfProfile = _postService.GetPictureProfileFromPost(_userService.GetUserById(targetPost.UserId));

                likesPost.Add(new ViewModelLike()
                {
                    Username       = like.UserName,
                    PictureProfile = Converts.ConvertByteArrToStringForImg(pictureOfProfile)
                });
            }

            var pictureOfUser = _postService.GetPictureProfileFromPost(_userService.GetUserById(_userService.GetUserById(targetPost.UserId).Id));

            var model = new HomePostModel
            {
                PostId          = targetPost.Id,
                UserName        = _userService.GetUserById(targetPost.UserId).UserName,
                PictureOfUser   = Converts.ConvertByteArrToStringForImg(pictureOfUser),
                DiscriptionPost = targetPost.Disctription,
                PicturePost     = Converts.ConvertByteArrToStringForImg(_postService.GetPictureOnPost(pictureId)),
                DateOnPost      = Converts.CreateStringDate(targetPost.DateOnPost),
                Likes           = likesPost,
                Comments        = commentsPost
            };


            return(View(model));
        }
Пример #3
0
        public ActionResult Begining()
        {
            var name       = this.User.Identity.Name;
            var userLogged = _userService.GetUserByUserName(name);

            if (userLogged == null)
            {
                var notUserModel = new HomeIndexViewModel()
                {
                    AllAskForFriend   = new List <InvitationForFriend>(),
                    Messages          = new List <MissMessage>(),
                    CountAskForFriend = 0,
                    Posts             = new List <HomePostModel>()
                };

                return(View(notUserModel));
            }

            //Posts
            var result = _postService.GetAllPost().OrderByDescending(x => x.DateOnPost);

            var resultPost = new List <HomePostModel>();

            foreach (var post in result)
            {
                var timeForShowPosts = (DateTime.Now - post.DateOnPost);

                if (timeForShowPosts.Minutes < 10 || timeForShowPosts.Hours > 0)
                {
                    continue;
                }

                var commentsPost = new List <ViewModelComment>();
                var commentList  = post.Comments;

                foreach (var comment in commentList)
                {
                    var profilePicture = _postService.GetPictureProfileFromPost(_userService.GetUserById(post.UserId));

                    commentsPost.Add(new ViewModelComment()
                    {
                        Username       = comment.Username,
                        Description    = comment.Description,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(profilePicture)
                    });
                }

                var likesPost = new List <ViewModelLike>();
                var likeList  = post.Likes;

                foreach (var like in likeList)
                {
                    var pictureOfProfile = _postService.GetPictureProfileFromPost(_userService.GetUserById(post.UserId));

                    likesPost.Add(new ViewModelLike()
                    {
                        Username       = like.Username,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(pictureOfProfile)
                    });
                }

                var pictureId = 0;
                int.TryParse(post.PictureId.ToString(), out pictureId);

                var pictureOfUser = _postService.GetPictureProfileFromPost(_userService.GetUserById(_userService.GetUserById(post.UserId).Id));

                resultPost.Add(new HomePostModel
                {
                    PostId          = post.Id,
                    UserName        = _userService.GetUserById(post.UserId).UserName,
                    PictureOfUser   = Converts.ConvertByteArrToStringForImg(pictureOfUser),
                    DiscriptionPost = post.Disctription,
                    PicturePost     = Converts.ConvertByteArrToStringForImg(_postService.GetPictureOnPost(pictureId)),
                    DateOnPost      = Converts.CreateStringDate(post.DateOnPost),
                    Likes           = likesPost,
                    Comments        = commentsPost
                });
            }


            var allAskForFriend = userLogged.InvitationForFriends.ToList();
            var message         = userLogged.MissMessages.ToList();

            var model = new HomeIndexViewModel()
            {
                AllAskForFriend   = allAskForFriend,
                Messages          = message,
                CountAskForFriend = allAskForFriend.Count,
                Posts             = resultPost
            };

            return(View(model));
        }
Пример #4
0
        // GET: DetaialUser
        public ActionResult Index()
        {
            var name = User.Identity.Name;

            var userLogged = _userService.GetUserByUserName(name);

            var details = _detailService.GetDetailByUserId(userLogged.Id);

            var profilPicture = _postService.GetPictureProfileFromPost(userLogged);

            var listPost = userLogged.Posts.OrderByDescending(x => x.DateOnPost);

            var viewListPost = new List <HomePostModel>();

            foreach (var post in listPost)
            {
                var pictureId = 0;
                int.TryParse(post.PictureId.ToString(), out pictureId);

                var commentsPost = new List <ViewModelComment>();

                foreach (var comment in post.Comments)
                {
                    var profilePicture = _postService.GetPictureProfileFromPost(_userService.GetUserByUserName(comment.Username));

                    commentsPost.Add(new ViewModelComment()
                    {
                        Username       = comment.Username,
                        Description    = comment.Description,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(profilePicture)
                    });
                }

                var likesPost = new List <ViewModelLike>();

                foreach (var like in post.Likes)
                {
                    var pictureOfProfile = _postService.GetPictureProfileFromPost(_userService.GetUserByUserName(like.Username));

                    likesPost.Add(new ViewModelLike()
                    {
                        Username       = like.Username,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(pictureOfProfile)
                    });
                }

                var pictureOfUser = _postService.GetPictureProfileFromPost(_userService.GetUserById(post.UserId));

                viewListPost.Add(new HomePostModel
                {
                    PostId          = post.Id,
                    UserName        = _userService.GetUserById(post.UserId).UserName,
                    PictureOfUser   = Converts.ConvertByteArrToStringForImg(pictureOfUser),
                    DiscriptionPost = post.Disctription,
                    DateOnPost      = Converts.CreateStringDate(post.DateOnPost),
                    PicturePost     = Converts.ConvertByteArrToStringForImg(_postService.GetPictureOnPost(pictureId)),
                    Likes           = likesPost,
                    Comments        = commentsPost
                });
            }

            var friendUser = userLogged.Friends;
            var listFriend = new List <FriendViewModel>();

            foreach (var friend in friendUser)
            {
                var pictureOfUser = _postService.GetPictureProfileFromPost(_userService.GetUserById(friend.Id));

                listFriend.Add(new FriendViewModel
                {
                    UserName    = friend.UserName,
                    PictureUser = Converts.ConvertByteArrToStringForImg(pictureOfUser),
                });
            }

            if (details == null)
            {
                var model = new UserDetailsViewModel()
                {
                    FirstName  = "",
                    LastName   = "",
                    Email      = userLogged.Email,
                    Adress     = "",
                    Age        = 0,
                    ImageBrand = "",
                    Friends    = listFriend,
                    Post       = viewListPost
                };

                return(View(model));
            }
            else
            {
                var model = new UserDetailsViewModel()
                {
                    FirstName  = details.FirstName,
                    LastName   = details.LastName,
                    Email      = userLogged.Email,
                    Adress     = details.Adress,
                    Age        = details.Age,
                    ImageBrand = Converts.ConvertByteArrToStringForImg(profilPicture),
                    Friends    = listFriend,
                    Post       = viewListPost
                };

                return(View(model));
            }
        }
Пример #5
0
        public ActionResult Pictures(string UserName)
        {
            var user = _userService.GetUserByUserName(UserName);

            var userDetail = _detailService.GetDetailByUserId(user.Id);

            var postWithPicture = _postService.GetAllPostWithPictureOnUser(user);

            var resoultPost = new List <HomePostModel>();

            foreach (var post in postWithPicture)
            {
                var pictureId = 0;
                int.TryParse(post.PictureId.ToString(), out pictureId);

                var commentsPost = new List <ViewModelComment>();

                foreach (var comment in post.Comments)
                {
                    var profilePicture = _postService.GetPictureProfileFromPost(_userService.GetUserByUserName(comment.Username));

                    commentsPost.Add(new ViewModelComment()
                    {
                        Username       = comment.Username,
                        Description    = comment.Description,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(profilePicture)
                    });
                }

                var likesPost = new List <ViewModelLike>();

                foreach (var like in post.Likes)
                {
                    var pictureOfProfile = _postService.GetPictureProfileFromPost(_userService.GetUserByUserName(like.Username));

                    likesPost.Add(new ViewModelLike()
                    {
                        Username       = like.Username,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(pictureOfProfile)
                    });
                }

                var pictureOfUser = _postService.GetPictureProfileFromPost(_userService.GetUserById(post.UserId));

                resoultPost.Add(new HomePostModel
                {
                    PostId           = post.Id,
                    UserName         = _userService.GetUserById(post.UserId).UserName,
                    PictureOfUser    = Converts.ConvertByteArrToStringForImg(pictureOfUser),
                    DiscriptionPost  = post.Disctription,
                    DateOnPost       = Converts.CreateStringDate(post.DateOnPost),
                    PicturePost      = Converts.ConvertByteArrToStringForImg(_postService.GetPictureOnPost(pictureId)),
                    IsProfilePicture = post.IsProfilePicture,
                    Likes            = likesPost,
                    Comments         = commentsPost
                });
            }

            var model = new UserPicturesModel
            {
                UserName          = UserName,
                PostsWithPictures = resoultPost
            };

            return(View(model));
        }
Пример #6
0
        public JsonResult GetAllPostFromUsers()
        {
            var usr = _userService.GetAllUsers().ToList();

            var postResult = _postInfo.GetDataAllPost();

            var dateForLastPostInTneMinutes = DateTime.Now.AddMinutes(-10);

            var result = _postService.GetAllPost().Where(x => x.DateOnPost > dateForLastPostInTneMinutes).ToList().OrderByDescending(x => x.DateOnPost);;

            var resultPost = new List <HomePostModel>();

            foreach (var post in result)
            {
                var pictureId = 0;
                int.TryParse(post.PictureId.ToString(), out pictureId);

                var commentsPost = new List <ViewModelComment>();
                var commentList  = _infoCommentsOnThePost.GetDataForCommentsOnThePost(post.Id).ToList();

                foreach (var comment in commentList)
                {
                    var profilePicture = _postService.GetPictureProfileFromPost(_userService.GetUserById(post.UserId));

                    commentsPost.Add(new ViewModelComment()
                    {
                        Username       = comment.Username,
                        Description    = comment.Description,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(profilePicture)
                    });
                }

                var likesPost = new List <ViewModelLike>();
                var likeList  = _infoForLIkes.GetDataLikesOnThePost(post.Id).ToList();

                foreach (var like in likeList)
                {
                    var pictureOfProfile = _postService.GetPictureProfileFromPost(_userService.GetUserById(post.UserId));

                    likesPost.Add(new ViewModelLike()
                    {
                        Username       = like.UserName,
                        PictureProfile = Converts.ConvertByteArrToStringForImg(pictureOfProfile)
                    });
                }

                var pictureOfUser = _postService.GetPictureProfileFromPost(_userService.GetUserById(_userService.GetUserById(post.UserId).Id));

                resultPost.Add(new HomePostModel
                {
                    PostId          = post.Id,
                    UserName        = _userService.GetUserById(post.UserId).UserName,
                    PictureOfUser   = Converts.ConvertByteArrToStringForImg(pictureOfUser),
                    DiscriptionPost = post.Disctription,
                    DateOnPost      = Converts.CreateStringDate(post.DateOnPost),
                    PicturePost     = Converts.ConvertByteArrToStringForImg(_postService.GetPictureOnPost(pictureId)),
                    Likes           = likesPost,
                    Comments        = commentsPost
                });
            }

            return(Json(resultPost, JsonRequestBehavior.AllowGet));
        }