diff --git a/src/main/java/Team5/SmartTowns/Towns/TownController.java b/src/main/java/Team5/SmartTowns/Towns/TownController.java new file mode 100644 index 0000000000000000000000000000000000000000..8c2abdac6fb5f3038702b6bfea125630063de033 --- /dev/null +++ b/src/main/java/Team5/SmartTowns/Towns/TownController.java @@ -0,0 +1,21 @@ +package Team5.SmartTowns.Towns; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.servlet.ModelAndView; + +import java.util.List; + +@Controller +public class TownController { + + @GetMapping("/townTest") + public ModelAndView getTownList(){ + ModelAndView modelAndView = new ModelAndView("Towns/home/homePageTest"); + TownStorage townsCurrent= new TownStorage().getInstance(); + List<Towns> towns = townsCurrent.getTownList(); + modelAndView.addObject("towns",towns); + return modelAndView; + + } +} diff --git a/src/main/java/Team5/SmartTowns/Towns/TownStorage.java b/src/main/java/Team5/SmartTowns/Towns/TownStorage.java new file mode 100644 index 0000000000000000000000000000000000000000..785e4b77e8a9434175581db63bebacc21ad8fe37 --- /dev/null +++ b/src/main/java/Team5/SmartTowns/Towns/TownStorage.java @@ -0,0 +1,39 @@ +package Team5.SmartTowns.Towns; + +import java.util.ArrayList; +import java.util.List; + +public class TownStorage { + private List<Towns> townList; + private static TownStorage singleton; + + TownStorage() { + townList = new ArrayList<>(); + townList.addAll( + List.of( + new Towns("Caerphilly",01,3,70,"/images/CaerphillyCastle.jpg"), + new Towns("Risca",02,2,0,"/images/RiscaBanner.jpg"), + new Towns("Penarth",03,5,60,"/images/PenarthBanner.jpg") + + + ) + + ); + + } + public static TownStorage getInstance() { + if (singleton == null) { + singleton = new TownStorage(); + + } + return singleton; + } + + public List<Towns> getTownList() { + return townList; + } + + + + +} diff --git a/src/main/java/Team5/SmartTowns/Towns/towns.java b/src/main/java/Team5/SmartTowns/Towns/Towns.java similarity index 72% rename from src/main/java/Team5/SmartTowns/Towns/towns.java rename to src/main/java/Team5/SmartTowns/Towns/Towns.java index 3bfeee97d69ced432c2d05ab28f9e9b245db4f76..a1b103f7abf6aa4379d877c645185f2c522a25ba 100644 --- a/src/main/java/Team5/SmartTowns/Towns/towns.java +++ b/src/main/java/Team5/SmartTowns/Towns/Towns.java @@ -3,12 +3,14 @@ package Team5.SmartTowns.Towns; import lombok.Data; @Data -public class towns { +public class Towns { private String name; private Integer id; private int trailNumber; private int trailProgress; + private String imageTown; + public String getName() { return name; @@ -42,11 +44,19 @@ public class towns { this.trailProgress = trailProgress; } + public String getImageTown() { + return imageTown; + } + + public void setImageTown(String imageTown) { + this.imageTown = imageTown; + } - public towns(String name, Integer id, int trailNumber, int trailProgress) { + public Towns(String name, Integer id, int trailNumber, int trailProgress, String imageTown) { this.name = name; this.id = id; this.trailNumber = trailNumber; this.trailProgress = trailProgress; + this.imageTown = imageTown; } } diff --git a/src/main/java/Team5/SmartTowns/Towns/townsStorage.java b/src/main/java/Team5/SmartTowns/Towns/townsStorage.java deleted file mode 100644 index 9d3386308152a9095dcc9d929681fa866ef5ba56..0000000000000000000000000000000000000000 --- a/src/main/java/Team5/SmartTowns/Towns/townsStorage.java +++ /dev/null @@ -1,29 +0,0 @@ -package Team5.SmartTowns.Towns; - -import java.util.ArrayList; -import java.util.List; - -public class townsStorage { - private List<towns> townList; - private static townsStorage singelton; - - townsStorage() { - townList = new ArrayList<>(); - townList.addAll( - List.of( - new towns("Caerphilly",01,3,70), - new towns("Risca",02,2,0), - new towns("Penarth",03,5,60) - - - ) - - ); - - } - - - - - -} diff --git a/src/main/java/Team5/SmartTowns/Webpages/WebpageController.java b/src/main/java/Team5/SmartTowns/Webpages/WebpageController.java index 5338f32f6dcbd262d1b9070169fcbaa211363a44..adae9c4aa1120bdc103b7fbe47ebaf5f5db61a62 100644 --- a/src/main/java/Team5/SmartTowns/Webpages/WebpageController.java +++ b/src/main/java/Team5/SmartTowns/Webpages/WebpageController.java @@ -11,25 +11,25 @@ import org.springframework.stereotype.Controller; public class WebpageController { @GetMapping("/Caerleon") public ModelAndView getCaerleonPage(){ - ModelAndView modelAndView = new ModelAndView("towns/caerleon"); + ModelAndView modelAndView = new ModelAndView("Towns/caerleon"); return modelAndView; } @GetMapping("/Caerphilly") public ModelAndView getCaerphillyPage(){ - ModelAndView modelAndView = new ModelAndView("towns/caerphilly"); + ModelAndView modelAndView = new ModelAndView("Towns/caerphilly"); return modelAndView; } @GetMapping("/Risca") public ModelAndView getRiscaPage(){ - ModelAndView modelAndView = new ModelAndView("towns/risca"); + ModelAndView modelAndView = new ModelAndView("Towns/risca"); return modelAndView; } @GetMapping("/home") public ModelAndView getHome(){ - ModelAndView modelAndView = new ModelAndView("towns/home/homePage"); + ModelAndView modelAndView = new ModelAndView("Towns/home/homePage"); return modelAndView; } diff --git a/src/main/java/Team5/SmartTowns/trailcontrollers/DragonsTale.java b/src/main/java/Team5/SmartTowns/trailcontrollers/DragonsTale.java index ba499c964988180a774b2f66ba7c18274ccfdd21..1330e8e529dcce380e0feb27eaffd34d3111ee5a 100644 --- a/src/main/java/Team5/SmartTowns/trailcontrollers/DragonsTale.java +++ b/src/main/java/Team5/SmartTowns/trailcontrollers/DragonsTale.java @@ -9,7 +9,7 @@ import org.springframework.web.servlet.ModelAndView; public class DragonsTale { @GetMapping("/dragonstale") public ModelAndView getDragonsTale(){ - ModelAndView modelAndView = new ModelAndView("src/main/resources/templates/towns/trails/dragonstale/index.html"); + ModelAndView modelAndView = new ModelAndView("src/main/resources/templates/Towns/trails/dragonstale/index.html"); return modelAndView; } } diff --git a/src/main/resources/templates/towns/home/homePageTest.html b/src/main/resources/templates/towns/home/homePageTest.html new file mode 100644 index 0000000000000000000000000000000000000000..f4976d116cdb17b440fdf4ca13391e745bc2f681 --- /dev/null +++ b/src/main/resources/templates/towns/home/homePageTest.html @@ -0,0 +1,95 @@ +<!DOCTYPE html> +<html lang="en"> +<head> + <meta charset="UTF-8"> + <title>Title</title> +<!-- <link rel="stylesheet" th:href="@{/css/homePageStyle.css}">--> + <link rel="stylesheet" th:href="@{/css/templatingstyle.css}"> + +</head> +<body> + +<header th:insert="~{/towns/Templating.html::header}"></header> +<main> + <div class="gridContainer1"> + <H1 id="homeTitle"> VZTA Smart Towns - Trails</H1> + <a class="submitLand" href="/landmarkSubmission"> <button> Submit Landmark!</button></a> + + <div th:text="${towns}"> + + + + + + + + + </div> + + <ul th:each="town:${towns}"> + + <a href="/allTrails" class="caerphillyBanner"> + <H2 th:text="${town.getName()}"> </H2></a> + + + <div class="caerphillyBannerTrail"> + <div id="trailCountCaer" th:text="'Trails: '+ ${town.getTrailNumber()}">Trails: </div> + <div id="trailProgressCaer" th:text="${town.getTrailProgress()}"></div> + </div> + <!-- //goes through each student in list of students^^--> + + <li th:text="${town.getName()}"></li> + + </ul> + + + + <a href="/allTrails" class="caerphillyBanner"> + <H2> Caerphilly</H2></a> + + + <div class="caerphillyBannerTrail"> + <div id="trailCountCaer">Trails: 3</div> + <div id="trailProgressCaer">70%</div> + </div> + + <a href="/allTrails" class="riscaBanner"> + <H2> Risca</H2> </a> + + <div class="riscaBannerTrail"> + <div id="trailCountRisca">Trails: 2</div> + <div id="trailProgressRisca">0%</div> + </div> + + + <a href="/allTrails" class="penarthBanner"> + <H2> Penarth</H2> </a> + <div class="penarthBannerTrail"> + <div id="trailCountPenarth">Trails: 5</div> + <div id="trailProgressPenarth">60%</div> + </div> + + <div id="aboutUsFlavour"> This is placeholder text about VZTA, this application, + the trails and towns and resultant awards written in an excitable manner!!</div> + + </div> + + + + + + + + + + + + + + + +</main> +<footer th:insert="~{/towns/Templating.html::footer}"></footer> + +</body> +</html>