Пример #1
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;
        }
Пример #2
0
        public RedirectToRouteResult Like([Bind(Include = "Id,RecipeID,ProfileID")] RecipeLike recipeLike, [Bind(Include = "RecipeID")] int recipeID)
        {
            recipeLike.ProfileID = db.Profiles.Single(p => p.Login == User.Identity.Name).ID;
            db.RecipeLikes.Add(recipeLike);
            db.SaveChanges();

            return(RedirectToAction("Details", "Recipes", new { id = recipeID }));
        }
Пример #3
0
        // POST: RecipeLikes/Delete/5
        public ActionResult Delete2(int id)
        {
            RecipeLike recipeLike = db.RecipeLikes.Find(id);

            db.RecipeLikes.Remove(recipeLike);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #4
0
        public RedirectToRouteResult Unlike([Bind(Include = "Id,RecipeID,ProfileID")] RecipeLike recipeLike, [Bind(Include = "RecipeID")] int recipeID)
        {
            int profileId = db.Profiles.Single(p => p.Login == User.Identity.Name).ID;

            db.RecipeLikes.Remove(db.RecipeLikes.Single(r => r.RecipeID == recipeID && r.ProfileID == profileId));
            db.SaveChanges();

            return(RedirectToAction("Details", "Recipes", new { id = recipeID }));
        }
 public static RecipeLikeModel ToRecipeLikeModel(this RecipeLike recipeLike)
 {
     return(new RecipeLikeModel()
     {
         Id = recipeLike.Id,
         RecipeId = recipeLike.RecipeId,
         UserId = recipeLike.UserId
     });
 }
Пример #6
0
        private async Task AddToFavouriteAsync(string recipeId, string userId)
        {
            var recipeLike = new RecipeLike()
            {
                ClientId = userId,
                RecipeId = recipeId,
            };

            await this.recipeLikesRepository.AddAsync(recipeLike);
        }
Пример #7
0
 private static RecipeLikeModel ConvertToRecipeLikesViewModel(RecipeLike x)
 {
     return(new RecipeLikeModel
     {
         Id = x.Id,
         DateCreated = x.DateCreated,
         Status = x.Status,
         UserId = x.UserId,
         RecipeId = x.RecipeId
     });
 }
        public async Task LikeAsync(string userId, string recipeId)
        {
            var recipeLike = new RecipeLike()
            {
                RecipeId = recipeId,
                UserId   = userId,
            };

            await this.recipeLikesRepository.AddAsync(recipeLike);

            await this.recipeLikesRepository.SaveChangesAsync();
        }
Пример #9
0
 public ActionResult Edit([Bind(Include = "ID,RecipeID,ProfileID")] RecipeLike recipeLike)
 {
     if (ModelState.IsValid)
     {
         db.Entry(recipeLike).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ProfileID = new SelectList(db.Profiles, "ID", "Login", recipeLike.ProfileID);
     ViewBag.RecipeID  = new SelectList(db.Recipes, "ID", "Name", recipeLike.RecipeID);
     return(View(recipeLike));
 }
Пример #10
0
        public void Add(int recipeId, int userId)
        {
            var like = _recipeLikesRepository.Get(recipeId, userId);

            if (like == null)
            {
                var newLike = new RecipeLike();
                newLike.RecipeId = recipeId;
                newLike.UserId   = userId;

                _recipeLikesRepository.Add(newLike);
            }
        }
Пример #11
0
        // GET: RecipeLikes/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            RecipeLike recipeLike = db.RecipeLikes.Find(id);

            if (recipeLike == null)
            {
                return(HttpNotFound());
            }
            return(View(recipeLike));
        }
Пример #12
0
        public async Task <IActionResult> LikeRecipe(int recipeId)
        {
            var user = await _userManager.GetUserAsync(User);

            RecipeLike recipeLike = new RecipeLike();

            recipeLike.UserId   = user.Id;
            recipeLike.RecipeId = recipeId;

            await _appDb.AddAsync(recipeLike);

            await _appDb.SaveChangesAsync();

            return(Ok());
        }
Пример #13
0
        public async Task <RecipeLike> AddLike(RecipeLike like)
        {
            var isAlreadyLiked = _recipeLikeRepository.ListAllAsync().Result.Where(c => c.UserId == like.UserId && c.RecipeId == like.RecipeId);

            if (!isAlreadyLiked.Any())
            {
                return(await _recipeLikeRepository.AddAsync(like));
            }
            else
            {
                var recipeLikeObj = isAlreadyLiked.FirstOrDefault();
                recipeLikeObj.IsLiked   = like.IsLiked;
                recipeLikeObj.LikedDate = like.LikedDate;
                return(await _recipeLikeRepository.UpdateAsync(recipeLikeObj));
            }
        }
Пример #14
0
        // GET: RecipeLikes/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            RecipeLike recipeLike = db.RecipeLikes.Find(id);

            if (recipeLike == null)
            {
                return(HttpNotFound());
            }
            ViewBag.ProfileID = new SelectList(db.Profiles, "ID", "Login", recipeLike.ProfileID);
            ViewBag.RecipeID  = new SelectList(db.Recipes, "ID", "Name", recipeLike.RecipeID);
            return(View(recipeLike));
        }
        public void AddLike(int recipeId, int userId)
        {
            var currentLike = recipeLikesRepository.Get(recipeId, userId);

            if (currentLike != null)
            {
                currentLike.Status = true;
                recipeLikesRepository.Update(currentLike);
            }
            else
            {
                var newLike = new RecipeLike();

                newLike.UserId      = userId;
                newLike.RecipeId    = recipeId;
                newLike.DateCreated = DateTime.Now;
                newLike.Status      = true;

                recipeLikesRepository.Add(newLike);
            }
        }
Пример #16
0
        public IActionResult AddRecipieLike([FromBody] RecipeLike recipeLike)
        {
            var response = _RecipeService.AddLike(recipeLike).Result;

            return(new OkObjectResult(response));
        }
 public void Update(RecipeLike currentLike)
 {
     Context.RecipeLikes.Update(currentLike);
     Context.SaveChanges();
 }
 public void Remove(RecipeLike like)
 {
     Context.RecipeLikes.Remove(like);
     Context.SaveChanges();
 }
 public void Add(RecipeLike like)
 {
     Context.RecipeLikes.Add(like);
     Context.SaveChanges();
 }
Пример #20
0
 public void Add(RecipeLike newLike)
 {
     context.RecipeLikes.Add(newLike);
     context.SaveChanges();
 }