From 25c47b2968464ffc1235160c371b1367dc5840ba Mon Sep 17 00:00:00 2001 From: Sajkaan Date: Thu, 12 Jan 2017 12:00:18 +0100 Subject: [PATCH 1/3] Addresses --- .../flashy/controllers/IndexController.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java b/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java index f127754..2a6b75e 100644 --- a/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java +++ b/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java @@ -12,6 +12,7 @@ @Controller public class IndexController { + public static final int AMOUNT_IN_TOTAL = 3; private FlashCardService flashCardService; @Autowired @@ -22,7 +23,7 @@ public void setFlashCardService(FlashCardService flashCardService) { @RequestMapping("/") public String index(Model model) { StringBuilder ctaBuilder = new StringBuilder(); - List cards = flashCardService.getRandomFlashCards(5); + List cards = flashCardService.getRandomFlashCards(AMOUNT_IN_TOTAL); ctaBuilder.append("Refresh your memory about "); for (FlashCard card : cards) { ctaBuilder.append(card.getTerm()); @@ -30,12 +31,15 @@ public String index(Model model) { ctaBuilder.append(", "); } } - ctaBuilder.append(" and "); Long totalCount = flashCardService.getCurrentCount(); - ctaBuilder.append(totalCount); - ctaBuilder.append(" more"); - model.addAttribute("cta", ctaBuilder.toString()); - model.addAttribute("flashCardCount", totalCount); + if (totalCount > AMOUNT_IN_TOTAL){ + ctaBuilder.append(" and "); + ctaBuilder.append(totalCount - AMOUNT_IN_TOTAL); + ctaBuilder.append(" more"); + model.addAttribute("cta", ctaBuilder.toString()); + model.addAttribute("flashCardCount"); + } + return "index"; } From 64b9878dbc52f185624b597cad164b4aa124bd02 Mon Sep 17 00:00:00 2001 From: Sajkaan Date: Thu, 12 Jan 2017 15:37:06 +0100 Subject: [PATCH 2/3] Addresses bug described in #6 where the total count int call to was off --- .../com/teamtreehouse/flashy/controllers/IndexController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java b/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java index 2a6b75e..68958eb 100644 --- a/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java +++ b/src/main/java/com/teamtreehouse/flashy/controllers/IndexController.java @@ -35,7 +35,7 @@ public String index(Model model) { if (totalCount > AMOUNT_IN_TOTAL){ ctaBuilder.append(" and "); ctaBuilder.append(totalCount - AMOUNT_IN_TOTAL); - ctaBuilder.append(" more"); + ctaBuilder.append(" more."); model.addAttribute("cta", ctaBuilder.toString()); model.addAttribute("flashCardCount"); } From 1393e4b5fd05718495a56beb9d6b7d7e6a2c26c9 Mon Sep 17 00:00:00 2001 From: Sajkaan Date: Sat, 14 Jan 2017 01:30:28 +0100 Subject: [PATCH 3/3] Fixes #5 by making cards display more standard --- .../flashy/services/FlashCardServiceImpl.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/teamtreehouse/flashy/services/FlashCardServiceImpl.java b/src/main/java/com/teamtreehouse/flashy/services/FlashCardServiceImpl.java index 5b660e9..651ef7c 100644 --- a/src/main/java/com/teamtreehouse/flashy/services/FlashCardServiceImpl.java +++ b/src/main/java/com/teamtreehouse/flashy/services/FlashCardServiceImpl.java @@ -1,8 +1,9 @@ package com.teamtreehouse.flashy.services; +import static java.util.stream.Collectors.toList; + import com.teamtreehouse.flashy.domain.FlashCard; import com.teamtreehouse.flashy.repositories.FlashCardRepository; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -12,8 +13,6 @@ import java.util.Map; import java.util.Random; -import static java.util.stream.Collectors.toList; - @Service public class FlashCardServiceImpl implements FlashCardService { private FlashCardRepository flashCardRepository; @@ -62,10 +61,9 @@ public FlashCard getNextFlashCardBasedOnViews(Map idToViewCounts) { continue; } Long lowestScore = idToViewCounts.get(leastViewedId); - if (entry.getValue() >= lowestScore) { - break; + if (entry.getValue() < lowestScore) { + leastViewedId = entry.getKey(); } - leastViewedId = entry.getKey(); } return flashCardRepository.findOne(leastViewedId); }