public void UpdateUser_Likes_Rates(User_Likes user_likes, int RateBefore) { User_Likes ul = context.User_Likes.Where(x => x.id == user_likes.id && x.UserId == user_likes.UserId && x.PostId == user_likes.PostId).FirstOrDefault(); ul.isLiked = user_likes.isLiked; ul.PostId = user_likes.PostId.Value; ul.UserId = user_likes.UserId.Value; if (user_likes.Rate == null) { ul.Rate = 0; } else { ul.Rate = user_likes.Rate.Value; } ul.DatumLajkanja = user_likes.DatumLajkanja.Value; ul.DaumRated = user_likes.DaumRated.Value; context.SaveChanges(); Post post = context.Post.First(p => p.id == user_likes.PostId.Value); post.BrojOmiljenih = post.BrojOmiljenih.Value - RateBefore + user_likes.Rate.Value; ul = context.User_Likes.Where(x => x.id == user_likes.id && x.UserId == user_likes.UserId && x.PostId == user_likes.PostId).FirstOrDefault(); if (RateBefore == 0) { post.BrojRangiranja++; } UpdatePost(post); }
public void SaveUser_Likes_Rates(User_Likes user_likes) { context.User_Likes.Add(user_likes); context.SaveChanges(); Post post = context.Post.First(p => p.id == user_likes.PostId.Value); post.BrojOmiljenih = post.BrojOmiljenih.Value + user_likes.Rate.Value; post.BrojRangiranja++; UpdatePost(post); }
public void SaveUser_Unlikes(User_Likes user_likes) { context.User_Likes.Add(user_likes); Post post = context.Post.First(p => p.id == user_likes.PostId.Value); Korisnik korisnik = context.Korisnik.First(p => p.id == post.VlasnikID); if (user_likes.isLiked == 2) { post.Unlikes++; post.BrojPoena = post.Likes.Value - post.Unlikes.Value; UpdatePost(post); korisnik.Unlikes++; korisnik.Reputacija = korisnik.Likes.Value - korisnik.Unlikes.Value; UpdateKorisnik(korisnik); } KalkulirajMedaljePostaKorisnikaDOWN(korisnik, post); context.SaveChanges(); }
public bool QuestionLike(int questionId, string userId) { var likeInfo = new User_Likes(); likeInfo.QuestionId = questionId; likeInfo.UserId = userId; db.User_Likes.Add(likeInfo); var question = db.Questions.FirstOrDefault(q => q.Id.Equals(questionId)); question.Points += 1; try { db.SaveChanges(); return(true); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { string err = string.Format("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { string errr = string.Format("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); throw new Exception(errr); } } return(false); } catch (System.Data.Entity.Infrastructure.DbUpdateException e) { string err = e.Message; return(false); } }
public void UpdateUser_Likes(User_Likes user_likes, int LikesBefore) { User_Likes uli = context.User_Likes.Where(x => x.id == user_likes.id && x.UserId == user_likes.UserId && x.PostId == user_likes.PostId).FirstOrDefault(); uli.isLiked = user_likes.isLiked; uli.PostId = user_likes.PostId.Value; uli.UserId = user_likes.UserId.Value; if (user_likes.Rate == null) { uli.Rate = 0; } else { uli.Rate = user_likes.Rate.Value; } uli.DatumLajkanja = user_likes.DatumLajkanja.Value; uli.DaumRated = user_likes.DaumRated.Value; context.SaveChanges(); Post post = context.Post.First(p => p.id == user_likes.PostId.Value); Korisnik korisnik = context.Korisnik.First(p => p.id == post.VlasnikID); User_Likes ul = context.User_Likes.Where(x => x.id == user_likes.id && x.UserId == user_likes.UserId && x.PostId == user_likes.PostId).FirstOrDefault(); if (LikesBefore == 0) { if (ul.isLiked == 1) { post.Likes++; post.BrojPoena = post.Likes.Value - post.Unlikes.Value; UpdatePost(post); korisnik.Likes++; korisnik.Reputacija = korisnik.Likes.Value - korisnik.Unlikes.Value; UpdateKorisnik(korisnik); KalkulirajMedaljePostaKorisnikaUP(korisnik, post); } if (ul.isLiked == 2) { post.Unlikes++; post.BrojPoena = post.Likes.Value - post.Unlikes.Value; UpdatePost(post); korisnik.Unlikes++; korisnik.Reputacija = korisnik.Likes.Value - korisnik.Unlikes.Value; UpdateKorisnik(korisnik); KalkulirajMedaljePostaKorisnikaDOWN(korisnik, post); } } else { if (ul.isLiked == 1) { post.Likes++; post.BrojPoena = post.Likes.Value - post.Unlikes.Value; UpdatePost(post); KalkulirajMedaljePostaKorisnikaUP(korisnik, post); post.Unlikes--; post.BrojPoena = post.Likes.Value - post.Unlikes.Value; UpdatePost(post); KalkulirajMedaljePostaKorisnikaUP(korisnik, post); korisnik.Likes++; korisnik.Unlikes--; korisnik.Reputacija = korisnik.Likes.Value - korisnik.Unlikes.Value; UpdateKorisnik(korisnik); } if (ul.isLiked == 2) { post.Likes--; post.BrojPoena = post.Likes.Value - post.Unlikes.Value; UpdatePost(post); KalkulirajMedaljePostaKorisnikaDOWN(korisnik, post); post.Unlikes++; post.BrojPoena = post.Likes.Value - post.Unlikes.Value; UpdatePost(post); KalkulirajMedaljePostaKorisnikaDOWN(korisnik, post); korisnik.Likes--; korisnik.Unlikes++; korisnik.Reputacija = korisnik.Likes.Value - korisnik.Unlikes.Value; UpdateKorisnik(korisnik); } } context.SaveChanges(); }
public int getRateUserLikes(int UID, int PID) { User_Likes ul = context.User_Likes.Where(x => x.UserId == UID && x.PostId == PID).FirstOrDefault(); return(ul.Rate.Value); }