From bb6d8870364daa996dcbdb1ad6da949ad28fe6ff Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Wed, 3 Apr 2019 15:33:26 +0200 Subject: [PATCH 1/3] Added class Hints, including tests --- .../src/main/java/greenify/client/Hints.java | 68 +++++++++++++++++++ .../controller/CalculatorController.java | 5 +- .../controller/DashBoardController.java | 1 + src/Client/src/test/java/HintsTest.java | 29 ++++++++ 4 files changed, 100 insertions(+), 3 deletions(-) create mode 100644 src/Client/src/main/java/greenify/client/Hints.java create mode 100644 src/Client/src/test/java/HintsTest.java diff --git a/src/Client/src/main/java/greenify/client/Hints.java b/src/Client/src/main/java/greenify/client/Hints.java new file mode 100644 index 0000000..34aa3fb --- /dev/null +++ b/src/Client/src/main/java/greenify/client/Hints.java @@ -0,0 +1,68 @@ +package greenify.client; + +import java.util.ArrayList; +import java.util.Random; + +public class Hints { + public ArrayList hints; + + public Hints() { + this.hints = new ArrayList(); + initHints(); + } + + /** + * This method adds all the Strings to the arraylist. + */ + private void initHints() { + hints.add("Buying local produce will not only decrease your carbon " + + "footprint, but also help your local economy: A win-win!"); + hints.add("Did you know that a gas oven only uses 6% of its energy " + + "to cook? And an electric oven is not much better at 12%."); + hints.add("70% of the deforestation of the Amazon is to provide land for cattle ranches."); + hints.add("Research shows that reducing meat consumption can increase" + + " your life span by 3.6 years"); + hints.add("Vegetarians have a lower risk of getting heart disease, high blood pressure, " + + "diabetes and cancer than meat eaters."); + hints.add("Did you know? The carbon footprint of a vegetarian diet is about half " + + "that of a meat-lover’s diet!"); + hints.add("Cycling is good for the environment AND for your body, " + + "so why not grab your bike instead of your car?"); + hints.add("If we could capture all of the sun’s energy shining on the Earth for just one " + + "hour, we could power the entire world for one year!"); + hints.add("27,000 trees are cut down each day so we can have toilet paper."); + hints.add("A glass bottle made in our time will take more than 4,000 years to decompose."); + hints.add("Don't forget to turn off the lights and heating in rooms" + + " you're not using at the moment!"); + hints.add("Did you know that about 4.5% of the Dutch population does not eat meat"); + hints.add("Reuse your bags when you go grocery shopping. You will save plastic bags."); + hints.add("An estimated 250 million trees can be save each year " + + "if every published newspaper is recycled."); + hints.add("About 88,000 jobs were created in 2015 through the wind power sector."); + hints.add("You can use LED lights in your home to safe energy!"); + hints.add("If you isolate your home well, it will be warmer " + + "and you'll save energy as well!"); + hints.add("Do you have leftovers? Donate them to food kitchens. This way you won't waste " + + "food and help people at the same time."); + hints.add("A lot of coffee places give you a discount if you bring your own cup. " + + "Get rid of those disposable cups!"); + hints.add("When shopping, look for products with minimal to no packaging, " + + "or at least packaging made from recycled items. "); + hints.add("If you order food, you can ask the restaurant to not include " + + "utensils and napkins, it saves plastic and paper."); + hints.add("It takes about 66 days to form a new habit, keep going!"); + hints.add("Get yourself a nice reusable water bottle! It's cheaper and better for " + + "the environment to refill than to buy a new one every time it's empty."); + } + + /** + * This method returns a random hint from the list of hints. + * @return the random hint. + */ + public String randomHint() { + Random rand = new Random(); + int index = rand.nextInt(hints.size()); + return hints.get(index); + } + +} diff --git a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java index 5098636..a44e0ef 100644 --- a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java +++ b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java @@ -9,9 +9,7 @@ import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.event.ActionEvent; import javafx.fxml.FXML; -import javafx.fxml.FXMLLoader; import javafx.scene.Node; -import javafx.scene.Parent; import javafx.scene.control.Button; import javafx.scene.control.CheckBox; import javafx.scene.control.Label; @@ -338,7 +336,8 @@ public class CalculatorController { @SuppressWarnings("Duplicates") public void displayExtra(ActionEvent event) throws IOException { - // Parent extra = FXMLLoader.load(getClass().getClassLoader().getResource("fxml/extraActivities.fxml")); + // Parent extra = FXMLLoader.load(getClass().getClassLoader() + // .getResource("fxml/extraActivities.fxml")); // extraPane.getChildren().setAll(extra); getStartedPane.setVisible(false); travelPane.setVisible(false); diff --git a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java index 259ed42..b43433d 100644 --- a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java +++ b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java @@ -495,4 +495,5 @@ public class DashBoardController { } } + } \ No newline at end of file diff --git a/src/Client/src/test/java/HintsTest.java b/src/Client/src/test/java/HintsTest.java new file mode 100644 index 0000000..c0e2442 --- /dev/null +++ b/src/Client/src/test/java/HintsTest.java @@ -0,0 +1,29 @@ +import static junit.framework.TestCase.assertTrue; +import static org.junit.Assert.assertFalse; + +import greenify.client.Hints; +import org.junit.Test; + +public class HintsTest { + @Test + public void initHintsTest() { + Hints test = new Hints(); + assertFalse(test.hints.isEmpty()); + } + + @Test + public void hintsContainsTest() { + Hints test = new Hints(); + assertTrue(test.hints.contains("27,000 trees are cut down " + + "each day so we can have toilet paper.")); + } + + @Test + public void randomHintTest() { + Hints test = new Hints(); + String random = test.randomHint(); + assertTrue(test.hints.contains(random)); + } +} + + From 1ff84ce3d812e6cdb0b9300b7b96dfbff9e227aa Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Wed, 3 Apr 2019 21:44:50 +0200 Subject: [PATCH 2/3] ADD:: Alert for taken username --- build.gradle | 6 +++--- .../client/controller/DashBoardController.java | 2 +- .../client/controller/RegisterWindowController.java | 10 +++++++++- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/build.gradle b/build.gradle index 2b6ed72..98f5661 100644 --- a/build.gradle +++ b/build.gradle @@ -18,9 +18,9 @@ apply plugin: 'org.springframework.boot' apply plugin: 'io.spring.dependency-management' apply plugin: 'application' -application { - mainClassName = 'greenify.server.Application' -} +//application { +// mainClassName = 'greenify.server.Application' +//} repositories { mavenCentral() diff --git a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java index b43433d..13613eb 100644 --- a/src/Client/src/main/java/greenify/client/controller/DashBoardController.java +++ b/src/Client/src/main/java/greenify/client/controller/DashBoardController.java @@ -398,7 +398,7 @@ public class DashBoardController { } /** - * method opend addFriend scene. + * method opens addFriend scene. * @throws IOException when file is not found */ public void openAddFriend() throws IOException { diff --git a/src/Client/src/main/java/greenify/client/controller/RegisterWindowController.java b/src/Client/src/main/java/greenify/client/controller/RegisterWindowController.java index 11cb71f..b30c137 100644 --- a/src/Client/src/main/java/greenify/client/controller/RegisterWindowController.java +++ b/src/Client/src/main/java/greenify/client/controller/RegisterWindowController.java @@ -2,6 +2,7 @@ package greenify.client.controller; import greenify.client.Application; import greenify.client.rest.UserService; +import greenify.common.ApplicationException; import javafx.animation.Interpolator; import javafx.animation.KeyFrame; import javafx.animation.KeyValue; @@ -228,7 +229,14 @@ public class RegisterWindowController { } //register the user with the provided username and password - userService.registerUser(userNameText.getText(), passwordField.getText()); + try{ + userService.registerUser(userNameText.getText(), passwordField.getText()); + } + catch(RuntimeException ex){ + UserController.AlertHelper.showAlert(Alert.AlertType.ERROR, owner, "Password Error!", + "This username has already been taken!"); + return; + } //close the register window after the user has entered all the credentials Stage current = (Stage) owner; current.close(); From b5c834fc52e4e20df9d2cd7037727cd5d8d486e1 Mon Sep 17 00:00:00 2001 From: Merel Steenbergen Date: Wed, 3 Apr 2019 21:51:35 +0200 Subject: [PATCH 3/3] ADD:: Alert 'Footprint saved. Still has a bug.' --- .../greenify/client/controller/CalculatorController.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java index a44e0ef..b5b4a51 100644 --- a/src/Client/src/main/java/greenify/client/controller/CalculatorController.java +++ b/src/Client/src/main/java/greenify/client/controller/CalculatorController.java @@ -10,12 +10,7 @@ import javafx.beans.value.ObservableValue; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.scene.Node; -import javafx.scene.control.Button; -import javafx.scene.control.CheckBox; -import javafx.scene.control.Label; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.Slider; -import javafx.scene.control.TextField; +import javafx.scene.control.*; import javafx.scene.layout.AnchorPane; import javafx.scene.text.Text; import javafx.stage.Stage; @@ -29,6 +24,7 @@ import java.text.DecimalFormat; @Controller public class CalculatorController { + private static UserController.AlertHelper AlertHelper; @Autowired UserService userService; @@ -497,6 +493,7 @@ public class CalculatorController { Float footprint = userService.saveFootprint(userService.currentUser.getName()); Window owner = saveButton.getScene().getWindow(); Stage current = (Stage) owner; +// CalculatorController.AlertHelper.showAlert(Alert.AlertType.CONFIRMATION, owner, "Footprint saved!", "Your footprint is saved!"); current.close(); controller.updateLeaderboard(); }