public IActionResult AddLike(int IdeaId) { if (Logged_user == null) { return(RedirectToAction("Index")); } int likecount = _context.likenit.Count(l => l.ideaid == IdeaId && l.userid == Logged_user.id); int likeoneself = _context.idea.Count(l => l.id == IdeaId && l.userid == Logged_user.id); if (likeoneself > 0) { TempData["Error"] = "That's a No-No, you cannot like yourself this much"; } else if (likecount > 0) { TempData["Error"] = "That's a No-No, you've already liked this Bright Idea"; } if (likecount > 0 || likeoneself > 0) { List <Idea> allIdeas = _context.idea .Include(idea => idea.IdeaGuy) .ToList(); int LikeCount = 0; int ideaCount = 0; List <int> ListLikes = new List <int>(); foreach (var ai in allIdeas) { LikeCount = _context.likenit.Count(lk => lk.ideaid == ai.id); ListLikes.Insert(ideaCount, LikeCount); ideaCount++; } IdeasDashboardViewModel viewModel = new IdeasDashboardViewModel() { CurrentIdeas = allIdeas, LikesList = ListLikes, Current_user = Logged_user }; return(View("IdeasDashboard", viewModel)); } Likenit newLike = new Likenit(); newLike.userid = Logged_user.id; newLike.ideaid = IdeaId; newLike.created_at = DateTime.Now; _context.likenit.Add(newLike); _context.SaveChanges(); return(RedirectToAction("IdeasDashboard")); }
public IActionResult NewIdea(IdeasDashboardViewModel ViewModel) { if (Logged_user == null) { return(RedirectToAction("Index")); } Idea newIdea = new Idea(); newIdea.userid = Logged_user.id; newIdea.text = ViewModel.text; newIdea.created_at = DateTime.Now; _context.idea.Add(newIdea); _context.SaveChanges(); return(RedirectToAction("IdeasDashboard")); }
public IActionResult IdeasDashboard() { if (Logged_user == null) { int?CurrUser = HttpContext.Session.GetInt32("UserId"); ModelState.AddModelError("User", "User not logged in"); return(RedirectToAction("Login", "User")); } List <Idea> allIdeas = _context.idea .Include(idea => idea.IdeaGuy) .ToList(); int LikeCount = 0; int ideaCount = 0; List <int> ListLikes = new List <int>(); foreach (var ai in allIdeas) { LikeCount = _context.likenit.Count(lk => lk.ideaid == ai.id); ListLikes.Insert(ideaCount, LikeCount); ideaCount++; } // BigListofIdeas BLentry = new BigListofIdeas(); // List <BigListofIdeas> BigList = new List<BigListofIdeas>(); // int BigCount = 0; // while(BigCount < ideaCount ) // { // BLentry.LikesCount = ListLikes[BigCount]; // BLentry.CurrIdea = allIdeas[BigCount]; // // BigList.Insert(BigCount, BLentry); // // Console.WriteLine(BigCount); // Console.WriteLine(BigList[BigCount].CurrIdea.text); // Console.WriteLine(BigList[BigCount].LikesCount); // Console.WriteLine("========================================================="); // // BigCount++; // } // int idx = 0; // while( idx < 3) // { // Console.WriteLine(BigList[idx].LikesCount); // Console.WriteLine(BigList[idx].CurrIdea.text); // Console.WriteLine("=========================================="); // idx++; // } IdeasDashboardViewModel viewModel = new IdeasDashboardViewModel() { CurrentIdeas = allIdeas, LikesList = ListLikes, Current_user = Logged_user }; return(View("IdeasDashboard", viewModel)); }