public bool TestDownvoteEvent() { EventModel e = eventServices.GetAllEvents().FirstOrDefault(); if (e != null) { VoteEventModel voteEventModel = new VoteEventModel(); voteEventModel.EventId = e.EventId; voteEventModel.IsDownvote = true; voteEventModel.UserProfileId = JAAAAY; return eventServices.Vote(voteEventModel); } else { return false; } }
public bool TestUpvoteEvent() { EventModel e = eventServices.GetAllEvents().FirstOrDefault(); if (e != null) { VoteEventModel voteEventModel = new VoteEventModel(); voteEventModel.EventId = e.EventId; //voteEventModel.UserProfileId = accountServices.GetAllUserProfiles().ToList()[]\ voteEventModel.UserProfileId = JAAAAY; //CHeck for null later return eventServices.Vote(voteEventModel); } else { return false; } }
public bool Vote(VoteEventModel voteEventModel) { if (voteEventModel.UserProfileId < 1 || voteEventModel.EventId < 1) { return false; } Event curEvent = db.Events.Where(ev => (ev.EventId == voteEventModel.EventId)).FirstOrDefault(); UserProfile userProfile = db.UserProfiles.Where(up => up.UserProfileId == voteEventModel.UserProfileId).FirstOrDefault(); EventVote eventVote = db.EventVotes.Where(e => e.EventId == curEvent.EventId && e.UserProfileId == userProfile.UserProfileId).FirstOrDefault(); if (curEvent == null || userProfile == null) return false; if (eventVote == null) { if (voteEventModel.IsDownvote) curEvent.Rating--; else curEvent.Rating++; db.EventVotes.AddObject( new EventVote { UserProfileId = userProfile.UserProfileId, EventId = curEvent.EventId, IsUpVote = !voteEventModel.IsDownvote }); db.SaveChanges(); return true; } // New: added new functionality for upvote and downvote. if (eventVote.IsUpVote) { if (voteEventModel.IsDownvote) { curEvent.Rating -= 2; } eventVote.IsUpVote = false; } else { if (!voteEventModel.IsDownvote) { curEvent.Rating += 2; } eventVote.IsUpVote = true; } db.SaveChanges(); return true; }