Exemplo n.º 1
0
        public static void Initializer(BaseContext context)
        {
            if (context.User.Any() && context.Article.Any())
            {
                return;
            }
            else
            {
                var defaultUser = new User();
                defaultUser.Name     = "Admin";
                defaultUser.Email    = "*****@*****.**";
                defaultUser.Hash     = HashMD5.getMD5("*****@*****.**");
                defaultUser.Password = HashMD5.getMD5("123456");
                defaultUser.Role     = (int)RoleType.Admin;

                context.Add(defaultUser);
                context.SaveChanges();

                var defaultArticle = new Article();
                defaultArticle.PublishedDate = DateTime.Now;
                defaultArticle.Text          = "New Text";
                defaultArticle.Title         = "Same Title";
                defaultArticle.User          = context.User.FirstOrDefault();
                context.Add(defaultArticle);
                context.SaveChanges();

                var like = new ArticleLikes();
                like.Article = context.Article.FirstOrDefault();
                like.User    = context.User.FirstOrDefault();
                context.Add(like);

                context.SaveChanges();
            }
        }
        public async Task <ArticleViewModel> Like(ArticleLikeViewModel model)
        {
            var data = new ArticleLikes(model.IdUser, model.IdArticle);

            _articleLikes.AddLike(data);

            return(_mapper.Map <ArticleViewModel>(await _article.GetById(model.IdArticle)));
        }
Exemplo n.º 3
0
        public async Task <bool> LikeArticle(int articleId)
        {
            var userName = _httpContextAccessor.HttpContext.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value;

            //Ordering is important if article is already liked then we don't want to perform another DB hit for IsValidArticle
            if (userName == null || AlreadyLiked(userName, articleId) || !IsValidArticle(articleId))
            {
                return(false);
            }

            var articleLikes = new ArticleLikes()
            {
                ArticleId = articleId,
                UserName  = userName
            };

            await _articleLikesRepository.AddAsync(articleLikes);

            return(true);
        }
 public string setLike(string userCode, string articleCode, bool like)
 {
     try
     {
         BLLRepository <User>    rep_user    = new BLLRepository <User>();
         BLLRepository <Article> rep_article = new BLLRepository <Article>();
         Entities.User           user        = rep_user.Find(x => x.userCodeID == userCode);
         Entities.Article        article     = rep_article.Find(x => x.articleCodeID == articleCode);
         if (like) //Like işlemi yapılacak
         {
             BLLRepository <ArticleLikes> rep_artLike = new BLLRepository <ArticleLikes>();
             rep_artLike.Insert(new ArticleLikes {
                 article = article,
                 user    = user
             });
             return("liked");
         }
         else // Unlike işlemi yapılacak
         {
             BLLRepository <ArticleLikes> rep_artLike = new BLLRepository <ArticleLikes>();
             ArticleLikes        articlelike          = new ArticleLikes();
             List <ArticleLikes> artLikeLİst          = rep_artLike.List();
             try
             {
                 articlelike = rep_artLike.List(x => x.article.articleCodeID == article.articleCodeID & x.user.userCodeID == user.userCodeID).First();
             }
             catch (Exception) { }
             if (articlelike.articleLikesID != null) // like kaydı bulunmuş ise
             {
                 rep_artLike.Remove(articlelike);
             }
             return("unliked");
         }
     }
     catch (Exception)
     {
         return("error");
     }
 }