Beispiel #1
0
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            e.DataID = Request.QueryString["id"];
            Article article    = this.dbContext.Articles.Find(Convert.ToInt32(e.DataID));
            string  authorName = Page.User.Identity.Name;
            string  userID     = dbContext.Users.FirstOrDefault(a => a.UserName == authorName).Id;

            Like like = article.Likes.FirstOrDefault(l => l.AuthorId == userID);

            if (like == null)
            {
                like = new Like()
                {
                    AuthorId  = userID,
                    ArticleId = Convert.ToInt32(e.DataID)
                };

                article.Likes.Add(like);
            }

            like.Value = e.LikeValue;
            this.dbContext.SaveChanges();

            //LikeControl ctrl = sender as LikeControl;
            DataBind();
        }
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            var articleData = this.data.Articles.Find(articleId);
            if (e.LikeValue)
            {
                ArticleLike like = new ArticleLike()
                {
                    ArticleID = articleId,
                    UserID = loggedUserId
                };

                this.data.ArticleLikes.Add(like);
            }
            else
            {
                var currentUserLike = articleData.Likes.FirstOrDefault(l => l.UserID == loggedUserId);
                if (currentUserLike == null)
                {
                    return;
                }

                this.data.ArticleLikes.Delete(currentUserLike);
            }

            this.data.SaveChanges();

            var control = sender as Likes;
            control.Value = articleData.Likes.Count;
            control.UserVote = e.LikeValue;
            control.mustUpdate = true;
        }
Beispiel #3
0
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            var recipeData = this.data.Recipes.Find(recipeId);

            if (e.LikeValue)
            {
                RecipeLike like = new RecipeLike()
                {
                    RecipeID = recipeId,
                    UserID   = this.loggedUserId
                };

                this.data.RecipeLikes.Add(like);
            }
            else
            {
                var currentUserLike = recipeData.Likes.FirstOrDefault(l => l.UserID == this.loggedUserId);
                if (currentUserLike == null)
                {
                    return;
                }

                this.data.RecipeLikes.Delete(currentUserLike);
            }

            this.data.SaveChanges();

            var control = sender as Likes;

            control.Value      = recipeData.Likes.Count;
            control.UserVote   = e.LikeValue;
            control.mustUpdate = true;
        }
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            var userID = this.User.Identity.GetUserId();
            var meme   = this.dbContext.Memes.Find(e.DataID);
            var rating = new Like();

            rating.MemeId = e.DataID;
            rating.UserId = userID;
            if (e.LikeValue == 1)
            {
                rating.Value = true;
            }
            else
            {
                rating.Value = false;
            }

            meme.Likes.Add(rating);
            this.dbContext.SaveChanges();

            var control = sender as LikeControl;

            control.Likes        = this.GetLikes(meme);
            control.Dislikes     = this.GetDislikes(meme);
            control.UserHasVoted = 1;
        }
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            string userID = this.User.Identity.GetUserId();
            Event article = this.dbContext.Events.Find(e.DataID);
            Like like = article.Likes.FirstOrDefault(l => l.UserID == userID);
            if (like == null)
            {
                like = new Like()
                {
                    UserID = userID,
                };

                this.dbContext.Events.Find(e.DataID).Likes.Add(like);
            }

            like.Value = e.LikeValue;
            this.dbContext.SaveChanges();

            var control = sender as LikeControl;
            control.Value = article.Likes.Sum(l => l.Value);
            control.CurrentUserVote = e.LikeValue;
        }
Beispiel #6
0
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            var    article = this.context.Articles.Find(Convert.ToInt32(e.DataID));
            string userId  = this.userIdProvider.GetUserId();

            var like = article.Likes.FirstOrDefault(l => l.UserId == userId);

            if (like == null)
            {
                like = new Like()
                {
                    UserId    = userId,
                    ArticleId = Convert.ToInt32(e.DataID)
                };

                article.Likes.Add(like);
            }

            like.Value = e.LikeValue;
            this.context.SaveChanges();

            this.DataBind();
        }
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            Article article = this.dbContext.Articles.Find(Convert.ToInt32(e.DataID));
            string  userID  = this.User.Identity.GetUserId();
            Like    like    = article.Likes.FirstOrDefault(l => l.UserID == userID);

            if (like == null)
            {
                like = new Like()
                {
                    UserID = userID,
                    PostID = Convert.ToInt32(e.DataID)
                };

                article.Likes.Add(like);
                dbContext.Likes.Add(like);
            }

            like.Value = e.LikeValue;
            this.dbContext.SaveChanges();

            //LikeControl ctrl = sender as LikeControl;
            DataBind();
        }
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            string  userID  = this.User.Identity.GetUserId();
            Article article = this.dbContext.Articles.Find(e.DataID);
            Like    like    = article.Likes.FirstOrDefault(l => l.UserID == userID);

            if (like == null)
            {
                like = new Like()
                {
                    UserID = userID,
                };

                this.dbContext.Articles.Find(e.DataID).Likes.Add(like);
            }

            like.Value = e.LikeValue;
            this.dbContext.SaveChanges();

            var control = sender as LikeControl;

            control.Value           = article.Likes.Sum(l => l.Value);
            control.CurrentUserVote = e.LikeValue;
        }
Beispiel #9
0
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            string   userId   = this.User.Identity.GetUserId();
            Question question = this.Data.Questions.GetById(e.DataId);
            Vote     vote     = question.Votes.FirstOrDefault(l => l.UserId == userId);

            if (vote == null)
            {
                vote = new Vote()
                {
                    UserId = userId,
                };

                this.Data.Questions.GetById(e.DataId).Votes.Add(vote);
            }

            vote.Value = e.LikeValue;
            this.Data.SaveChanges();

            var control = sender as VoteControl;

            control.Value           = question.Votes.Sum(l => l.Value);
            control.CurrentUserVote = e.LikeValue;
        }
Beispiel #10
0
 private static void Bot_OnLike(LikeEventArgs e)
 {
     WriteLine(e.Recipient, "Like", $"[{e.User.Id}:{e.User.ScreenName}] => [{e.Tweet.IdAsString}:{e.Tweet.Text}]");
 }
Beispiel #11
0
        private async void WebhookServer_PostReceived(WebhookEventArgs e)
        {
            try
            {
#if !DEBUG
                const string signatureHeader = "X-Twitter-Webhooks-Signature";

                if (!e.Request.Headers.Keys.Contains(signatureHeader))
                {
                    Logger.LogWarning(Resources.InvalidSignature);

                    InvalidPostReceived?.Invoke(e);

                    return;
                }

                var signature = e.Request.Headers[signatureHeader][0];

                if (!VerifySignature(signature, e.BodyRaw))
                {
                    Logger.LogWarning(Resources.InvalidSignature);

                    InvalidPostReceived?.Invoke(e);

                    return;
                }
#endif
                e.IsValid = true;

                if (Recipient != 0)
                {
                    RecipientChecker check = e.Body.FromJson <RecipientChecker>();

                    if (Recipient != check.Recipient)
                    {
                        return;
                    }
                }

                WebhookEvent webhookEvent = e.Body.FromJson <WebhookEvent>();

                if (webhookEvent.DirectMessageEvents != null)
                {
                    if (OnMessage != null)
                    {
                        foreach (var item in webhookEvent.DirectMessageEvents)
                        {
                            MessageEventArgs args = new MessageEventArgs()
                            {
                                Recipient = webhookEvent.Recipient,
                                Message   = item.ToMessage()
                            };

                            await Task.Run(() =>
                            {
                                OnMessage.Invoke(args);
                            });
                        }
                    }
                }

                if (webhookEvent.FollowEvents != null)
                {
                    foreach (var item in webhookEvent.FollowEvents)
                    {
                        if (item.Type == "follow" && OnFollow != null)
                        {
                            FollowEventArgs args = new FollowEventArgs()
                            {
                                Recipient = webhookEvent.Recipient,
                                Timestamp = item.Timestamp,
                                Type      = FollowType.Follow,
                                Target    = item.Target,
                                Source    = item.Source
                            };

                            await Task.Run(() =>
                            {
                                OnFollow.Invoke(args);
                            });
                        }

                        if (item.Type == "unfollow" && OnUnFollow != null)
                        {
                            FollowEventArgs args = new FollowEventArgs()
                            {
                                Recipient = webhookEvent.Recipient,
                                Timestamp = item.Timestamp,
                                Type      = FollowType.Unfollow,
                                Target    = item.Target,
                                Source    = item.Source
                            };

                            await Task.Run(() =>
                            {
                                OnUnFollow.Invoke(args);
                            });
                        }
                    }
                }

                if (webhookEvent.TweetCreateEvents != null)
                {
                    foreach (var item in webhookEvent.TweetCreateEvents)
                    {
                        TweetEventArgs args = new TweetEventArgs()
                        {
                            Recipient = webhookEvent.Recipient,
                            Tweet     = item
                        };

                        bool processed = false;

                        if (item.RetweetedFrom != null)
                        {
                            if (OnRetweet != null)
                            {
                                await Task.Run(() =>
                                {
                                    OnRetweet.Invoke(args);
                                });
                            }

                            processed = true;
                        }

                        if (item.QuotedFrom != null)
                        {
                            if (OnQuote != null)
                            {
                                await Task.Run(() =>
                                {
                                    OnQuote.Invoke(args);
                                });
                            }

                            processed = true;
                        }

                        if (item.ReplyToUserId != null && item.ReplyToStatusId != null)
                        {
                            if (OnComment != null)
                            {
                                await Task.Run(() =>
                                {
                                    OnComment.Invoke(args);
                                });
                            }

                            processed = true;
                        }

                        if (item.ReplyToUserId != null && item.ReplyToStatusId == null)
                        {
                            if (OnMention != null)
                            {
                                await Task.Run(() =>
                                {
                                    OnMention.Invoke(args);
                                });
                            }

                            processed = true;
                        }

                        if (!processed)
                        {
                            if (OnTweet != null)
                            {
                                await Task.Run(() =>
                                {
                                    OnTweet.Invoke(args);
                                });
                            }
                        }
                    }

                    #region
                    //if (Tweeted != null)
                    //{
                    //    foreach (var item in webhookEvent.TweetCreateEvents)
                    //    {
                    //        TweetCreateEventArgs args = new TweetCreateEventArgs()
                    //        {
                    //            Tweet = item
                    //        };

                    //        Tweeted.Invoke(args);
                    //    }
                    //}
                    #endregion
                }

                if (webhookEvent.LikeEvents != null)
                {
                    if (OnLike != null)
                    {
                        foreach (var item in webhookEvent.LikeEvents)
                        {
                            LikeEventArgs args = new LikeEventArgs()
                            {
                                Recipient = webhookEvent.Recipient,
                                Id        = item.Id,
                                Timestamp = item.Timestamp,
                                Tweet     = item.Tweet,
                                User      = item.User
                            };

                            await Task.Run(() =>
                            {
                                OnLike.Invoke(args);
                            });
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.LogError(EventId, ex, ex.Message);
            }
        }
Beispiel #12
0
 public void OnLikeAdded(object sender, LikeEventArgs args)
 {
     return;
 }
        protected void LikeControl_Like(object sender, LikeEventArgs e)
        {
            var userID = this.User.Identity.GetUserId();
            var meme = this.dbContext.Memes.Find(e.DataID);
            var rating = new Like();
            rating.MemeId = e.DataID;
            rating.UserId = userID;
            if (e.LikeValue == 1)
            {
                rating.Value = true;
            }
            else
            {
                rating.Value = false;
            }

            meme.Likes.Add(rating);
            this.dbContext.SaveChanges();

            var control = sender as LikeControl;
            control.Likes = this.GetLikes(meme);
            control.Dislikes = this.GetDislikes(meme);
            control.UserHasVoted = 1;
        }