Example #1
0
        public Entry(XmlElement element)
        {
            Id = Util.ChildValue(element, "id");
            Title = Util.ChildValue(element, "title");
            Link = Util.ChildValue(element, "link");
            Published = DateTime.Parse(Util.ChildValue(element, "published"));
            Updated = DateTime.Parse(Util.ChildValue(element, "updated"));
            User = new User(Util.ChildElement(element, "user"));
            Service = new Service(Util.ChildElement(element, "service"));
            Comments = new CommentList();

            foreach (XmlElement child in element.GetElementsByTagName("comment"))
            {
                Comments.Add(new Comment(child));
            }
            Likes = new LikeList();
            foreach (XmlElement child in element.GetElementsByTagName("like"))
            {
                Likes.Add(new Like(child));
            }
            Media = new MediaList();
            foreach (XmlElement child in element.GetElementsByTagName("media"))
            {
                Media.Add(new Media(child));
            }
        }
        public string LikedByUser(LikeList check, int userProfileId)
        {
            string isLiked = "no";

            if (check == null)
            {
                isLiked = "no";
            }
            else if (check.ProfileId == userProfileId)
            {
                isLiked = "yes";
            }

            return(isLiked);
        }
        public async Task <IActionResult> Like(int storyId, string returnUrl)
        {
            var userId = User.FindFirstValue(ClaimTypes.NameIdentifier);
            var user   = await _userManager.FindByIdAsync(userId);

            var profileId = user.GetProfileId();
            var isLiked   = await _context.LikeList.FindAsync(profileId, storyId);

            LikeList newLike = new LikeList();
            var      story   = await _context.Story.FindAsync(storyId);

            if (ModelState.IsValid)
            {
                if (isLiked == null)
                {
                    story.Likes++;
                    newLike.ProfileId = profileId;
                    newLike.StoryId   = storyId;
                    _context.Add(newLike);
                    await _context.SaveChangesAsync();
                }
            }
            return(Redirect(returnUrl));
        }
        private async Task WebSocketRequest(AspNetWebSocketContext context)
        {
            WebSocket clientSocket = context.WebSocket;
            var       buffer       = new ArraySegment <byte>(new byte[1024]);
            var       result       = await clientSocket.ReceiveAsync(buffer, CancellationToken.None);

            byte[] cleanBuffer = buffer.Array.Where(b => b != 0).ToArray();//Чистим массив от пустых байтов, чтобы он не содержал мусор
            int    id          = 0;

            if (cleanBuffer.Length > 0)
            {
                id = Convert.ToInt32(Encoding.UTF8.GetString(buffer.Array));
            }

            if (!users.ContainsKey(id))//Если в списке диалогов(подключенных клиентов) уже есть клиент, добавляем его(или их)
            {
                users.Add(id, clientSocket);
            }

            while (true)
            {
                result = await clientSocket.ReceiveAsync(buffer, CancellationToken.None);

                if (clientSocket.State != WebSocketState.Open)
                {
                    users.Remove(id);
                }
                cleanBuffer = buffer.Array.Where(b => b != 0).ToArray();
                string   json = Encoding.UTF8.GetString(cleanBuffer);
                LikeList like = JsonConvert.DeserializeObject <LikeList>(json);

                using (DatingContext db = new DatingContext())
                {
                    string action;

                    //LikeList likeExists = db.LikeList.FirstOrDefault(x => (x.from == like.from && x.to == like.to) || (x.from == like.to && x.to == like.from));
                    LikeList likeExists = db.LikeList.FirstOrDefault(x => x.from == like.from && x.to == like.to);
                    if (likeExists != null)
                    {
                        like = likeExists;
                        db.LikeList.Remove(likeExists);
                        action = "Remove";
                    }
                    else
                    {
                        db.LikeList.Add(like);
                        action = "Add";
                    }

                    await db.SaveChangesAsync();

                    if (users.ContainsKey(like.to))
                    {
                        WebSocket ws       = users[like.to];
                        object    response = new { like, action };
                        json        = JsonConvert.SerializeObject(response);
                        cleanBuffer = Encoding.UTF8.GetBytes(json);

                        await users[id].SendAsync(new ArraySegment <byte>(cleanBuffer), WebSocketMessageType.Text, true, CancellationToken.None);
                        if (ws.State == WebSocketState.Open)
                        {
                            await ws.SendAsync(new ArraySegment <byte>(cleanBuffer), WebSocketMessageType.Text, true, CancellationToken.None);
                        }
                    }
                }
            }
        }
        void ReleaseDesignerOutlets()
        {
            if (BlackList != null)
            {
                BlackList.Dispose();
                BlackList = null;
            }

            if (DateColumn != null)
            {
                DateColumn.Dispose();
                DateColumn = null;
            }

            if (FollowList != null)
            {
                FollowList.Dispose();
                FollowList = null;
            }

            if (LikeList != null)
            {
                LikeList.Dispose();
                LikeList = null;
            }

            if (MessageColumn != null)
            {
                MessageColumn.Dispose();
                MessageColumn = null;
            }

            if (MessageTable != null)
            {
                MessageTable.Dispose();
                MessageTable = null;
            }

            if (SectionColumn != null)
            {
                SectionColumn.Dispose();
                SectionColumn = null;
            }

            if (interval != null)
            {
                interval.Dispose();
                interval = null;
            }

            if (maxAutomatic != null)
            {
                maxAutomatic.Dispose();
                maxAutomatic = null;
            }

            if (maxCancel != null)
            {
                maxCancel.Dispose();
                maxCancel = null;
            }
        }
Example #6
0
        public void likeLblClick(object sender, EventArgs e)
        {
            Form next = new LikeList(likeComment.postID);

            next.ShowDialog();
        }
Example #7
0
        public List <LikeList> GetLikeListForBoards()
        {
            var  likes = new List <LikeList>();
            bool foundBoard;

            using (var conn = new NpgsqlConnection(_conn))
            {
                conn.Open();
                using (var cmd = new NpgsqlCommand("SELECT l.user_id as likedUserId, s.skateboard_id as skateboardId,u.nickname as userNickname,s.user_id as skateboardUserId, s.deck_id as deckId, s.wheels_id as wheelsId, s.trucks_id as trucksId FROM liked AS l INNER JOIN skateboards AS s on s.skateboard_id = l.skateboard_id INNER JOIN users AS u on u.user_id = s.user_id", conn))
                {
                    var reader = cmd.ExecuteReader();

                    while (reader.Read())
                    {
                        foundBoard = false;
                        int        likedUserId      = int.Parse(reader["likedUserId"].ToString());
                        int        skateboardId     = int.Parse(reader["skateboardId"].ToString());
                        string     userNickname     = reader["userNickname"].ToString();
                        int        skateboardUserId = int.Parse(reader["skateboardUserId"].ToString());
                        int        deckId           = int.Parse(reader["deckId"].ToString());
                        int        wheelsId         = int.Parse(reader["wheelsId"].ToString());
                        int        truckId          = int.Parse(reader["trucksId"].ToString());
                        Deck       deck             = GetDeckById(deckId);
                        Truck      truck            = GetTruckById(truckId);
                        Wheels     wheels           = GetWheelsById(wheelsId);
                        Skateboard skateboard       = new Skateboard(skateboardId, skateboardUserId, deck, wheels, truck);
                        foreach (LikeList like in likes)
                        {
                            if (like.LikeSkateboard.SkateboardId.Equals(skateboard.SkateboardId))
                            {
                                like.LikeUsers.Add(likedUserId);
                                foundBoard = true;
                                break;
                            }
                        }
                        if (foundBoard == false)
                        {
                            LikeList like_list = new LikeList(new List <int>(), skateboard, userNickname);
                            like_list.LikeUsers.Add(likedUserId);
                            likes.Add(like_list);
                        }
                    }
                    reader.Close();
                }
                conn.Close();
                List <Skateboard> completeSkateboards = GetBoardsForLikeList();
                foreach (Skateboard board in completeSkateboards)
                {
                    foundBoard = false;
                    foreach (LikeList like in likes)
                    {
                        if (like.LikeSkateboard.SkateboardId.Equals(board.SkateboardId))
                        {
                            foundBoard = true;
                            break;
                        }
                    }
                    if (foundBoard == false)
                    {
                        LikeList like_list = new LikeList(new List <int>(), board, GetUserFromSkateboardId(board.SkateboardId).UserNickname);
                        likes.Add(like_list);
                    }
                }
            }
            return(likes);
        }