Merge branch 'develop_achievements' into 'master'
Develop achievements See merge request cse1105/2018-2019/oopp-group-43/template!72
This commit is contained in:
@@ -398,10 +398,11 @@ public class CalculatorController {
|
|||||||
Float footprint = userService.saveFootprint(userService.currentUser.getName());
|
Float footprint = userService.saveFootprint(userService.currentUser.getName());
|
||||||
Window owner = saveButton.getScene().getWindow();
|
Window owner = saveButton.getScene().getWindow();
|
||||||
Stage current = (Stage) owner;
|
Stage current = (Stage) owner;
|
||||||
current.close();
|
|
||||||
controller.updateLeaderboard();
|
controller.updateLeaderboard();
|
||||||
|
controller.updateAchievements();
|
||||||
UserController.AlertHelper.showAlert(Alert.AlertType.CONFIRMATION,
|
UserController.AlertHelper.showAlert(Alert.AlertType.CONFIRMATION,
|
||||||
owner, "Footprint saved!", "Your footprint is saved!");
|
owner, "Footprint saved!", "Your footprint is saved!");
|
||||||
|
current.close();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -165,7 +165,17 @@ public class DashBoardController {
|
|||||||
@FXML
|
@FXML
|
||||||
private Label snacks;
|
private Label snacks;
|
||||||
@FXML
|
@FXML
|
||||||
private ImageView achiev1image;
|
private ImageView achieve1;
|
||||||
|
@FXML
|
||||||
|
private ImageView achieve2;
|
||||||
|
@FXML
|
||||||
|
private ImageView achieve3;
|
||||||
|
@FXML
|
||||||
|
private ImageView achieve4;
|
||||||
|
@FXML
|
||||||
|
private ImageView achieve5;
|
||||||
|
@FXML
|
||||||
|
private ImageView achieve6;
|
||||||
@FXML
|
@FXML
|
||||||
private Label hintText;
|
private Label hintText;
|
||||||
@FXML
|
@FXML
|
||||||
@@ -232,7 +242,6 @@ public class DashBoardController {
|
|||||||
friendsTable.setItems(data);
|
friendsTable.setItems(data);
|
||||||
updateLeaderboard();
|
updateLeaderboard();
|
||||||
updateAchievements();
|
updateAchievements();
|
||||||
|
|
||||||
calculateFootPrintButton.setSkin(new ClickButtonSkin(calculateFootPrintButton));
|
calculateFootPrintButton.setSkin(new ClickButtonSkin(calculateFootPrintButton));
|
||||||
addFriendButton.setSkin(new ClickButtonSkin(addFriendButton));
|
addFriendButton.setSkin(new ClickButtonSkin(addFriendButton));
|
||||||
addExtraActivityButton.setSkin(new ClickButtonSkin(addExtraActivityButton));
|
addExtraActivityButton.setSkin(new ClickButtonSkin(addExtraActivityButton));
|
||||||
@@ -563,9 +572,36 @@ public class DashBoardController {
|
|||||||
*/
|
*/
|
||||||
public void updateAchievements() {
|
public void updateAchievements() {
|
||||||
Map achievements = userService.getAchievements(userService.currentUser.getName());
|
Map achievements = userService.getAchievements(userService.currentUser.getName());
|
||||||
achiev1image.setVisible((Boolean)achievements.get("Starting off"));
|
if((Boolean)achievements.get("Starting off")) {
|
||||||
//achiev2image.setVisible(achievements.get("name second achievement"));
|
achieve1.setOpacity(1);
|
||||||
//Add all achievements here, add updateAchievements to the achievements pane
|
} else {
|
||||||
|
achieve1.setOpacity(0.3);
|
||||||
|
}
|
||||||
|
if((Boolean)achievements.get("Social butterfly")) {
|
||||||
|
achieve2.setOpacity(1);
|
||||||
|
} else {
|
||||||
|
achieve2.setOpacity(0.3);
|
||||||
|
}
|
||||||
|
if((Boolean)achievements.get("Green saver")) {
|
||||||
|
achieve3.setOpacity(1);
|
||||||
|
} else {
|
||||||
|
achieve3.setOpacity(0.3);
|
||||||
|
}
|
||||||
|
if((Boolean)achievements.get("Animal friend")) {
|
||||||
|
achieve4.setOpacity(1);
|
||||||
|
} else {
|
||||||
|
achieve4.setOpacity(0.3);
|
||||||
|
}
|
||||||
|
if((Boolean)achievements.get("Tom Dumoulin")) {
|
||||||
|
achieve5.setOpacity(1);
|
||||||
|
} else {
|
||||||
|
achieve5.setOpacity(0.3);
|
||||||
|
}
|
||||||
|
if((Boolean)achievements.get("Let it shine")) {
|
||||||
|
achieve6.setOpacity(1);
|
||||||
|
} else {
|
||||||
|
achieve6.setOpacity(0.3);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//class for the animations on the navigation buttons
|
//class for the animations on the navigation buttons
|
||||||
|
|||||||
@@ -167,6 +167,7 @@ public class ExtraActivityController {
|
|||||||
Window owner = saveButton.getScene().getWindow();
|
Window owner = saveButton.getScene().getWindow();
|
||||||
Float footprint = userService.saveFootprint(userService.currentUser.getName());
|
Float footprint = userService.saveFootprint(userService.currentUser.getName());
|
||||||
controller.updateLeaderboard();
|
controller.updateLeaderboard();
|
||||||
|
controller.updateAchievements();
|
||||||
Stage current = (Stage) owner;
|
Stage current = (Stage) owner;
|
||||||
current.close();
|
current.close();
|
||||||
UserController.AlertHelper.showAlert(Alert.AlertType.CONFIRMATION, owner, "Activities are added!",
|
UserController.AlertHelper.showAlert(Alert.AlertType.CONFIRMATION, owner, "Activities are added!",
|
||||||
@@ -194,6 +195,8 @@ public class ExtraActivityController {
|
|||||||
"bike",
|
"bike",
|
||||||
temperatureLabel.getText().replace(" Degrees", ""));
|
temperatureLabel.getText().replace(" Degrees", ""));
|
||||||
}
|
}
|
||||||
|
controller.updateAchievements();
|
||||||
|
controller.updateLeaderboard();
|
||||||
}
|
}
|
||||||
|
|
||||||
public class TranslateButtonSkin extends ButtonSkin {
|
public class TranslateButtonSkin extends ButtonSkin {
|
||||||
|
|||||||
@@ -16,6 +16,9 @@ public class FriendController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
UserService userService;
|
UserService userService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
DashBoardController dashBoardController;
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
private Button addButton;
|
private Button addButton;
|
||||||
@FXML
|
@FXML
|
||||||
@@ -54,6 +57,7 @@ public class FriendController {
|
|||||||
//close the register window after the user has entered all the credentials
|
//close the register window after the user has entered all the credentials
|
||||||
String friendName = userNameText.getText();
|
String friendName = userNameText.getText();
|
||||||
Stage current = (Stage) owner;
|
Stage current = (Stage) owner;
|
||||||
|
dashBoardController.updateAchievements();
|
||||||
current.close();
|
current.close();
|
||||||
UserController.AlertHelper.showAlert(Alert.AlertType.CONFIRMATION, owner, "Friend added!",
|
UserController.AlertHelper.showAlert(Alert.AlertType.CONFIRMATION, owner, "Friend added!",
|
||||||
userNameText.getText() + " is now your friend!");
|
userNameText.getText() + " is now your friend!");
|
||||||
|
|||||||
@@ -8,7 +8,10 @@
|
|||||||
<?import javafx.scene.image.Image?>
|
<?import javafx.scene.image.Image?>
|
||||||
<?import javafx.scene.image.ImageView?>
|
<?import javafx.scene.image.ImageView?>
|
||||||
<?import javafx.scene.layout.AnchorPane?>
|
<?import javafx.scene.layout.AnchorPane?>
|
||||||
|
<?import javafx.scene.layout.ColumnConstraints?>
|
||||||
|
<?import javafx.scene.layout.GridPane?>
|
||||||
<?import javafx.scene.layout.Pane?>
|
<?import javafx.scene.layout.Pane?>
|
||||||
|
<?import javafx.scene.layout.RowConstraints?>
|
||||||
<?import javafx.scene.layout.VBox?>
|
<?import javafx.scene.layout.VBox?>
|
||||||
<?import javafx.scene.shape.Line?>
|
<?import javafx.scene.shape.Line?>
|
||||||
<?import javafx.scene.text.Font?>
|
<?import javafx.scene.text.Font?>
|
||||||
@@ -470,14 +473,59 @@
|
|||||||
</ImageView>
|
</ImageView>
|
||||||
</graphic>
|
</graphic>
|
||||||
</Button>
|
</Button>
|
||||||
<Label fx:id="achiev1text" layoutX="579.0" layoutY="379.0" prefHeight="17.0" prefWidth="181.0" text="Achievement test label" />
|
<Label fx:id="achiev1text" alignment="CENTER" layoutX="555.0" layoutY="350.0" prefHeight="30.0" prefWidth="250.0" text="ACHIEVEMENTS" textAlignment="CENTER">
|
||||||
<ImageView fx:id="achiev1image" fitHeight="150.0" fitWidth="200.0" layoutX="579.0" layoutY="396.0" pickOnBounds="true" preserveRatio="true">
|
<font>
|
||||||
|
<Font size="18.0" />
|
||||||
|
</font>
|
||||||
|
</Label>
|
||||||
|
<GridPane layoutX="539.0" layoutY="380.0" prefHeight="303.0" prefWidth="258.0">
|
||||||
|
<columnConstraints>
|
||||||
|
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
|
||||||
|
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
|
||||||
|
</columnConstraints>
|
||||||
|
<rowConstraints>
|
||||||
|
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
|
||||||
|
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
|
||||||
|
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
|
||||||
|
</rowConstraints>
|
||||||
|
<children>
|
||||||
|
<ImageView fx:id="achieve1" fitHeight="101.0" fitWidth="129.0" pickOnBounds="true" preserveRatio="true">
|
||||||
|
<image>
|
||||||
|
<Image url="@../icons/Clover.png" />
|
||||||
|
<!-- image from pngall.com - 3548 -->
|
||||||
|
</image>
|
||||||
|
</ImageView>
|
||||||
|
<ImageView fx:id="achieve2" fitHeight="101.0" fitWidth="129.0" pickOnBounds="true" preserveRatio="true" GridPane.rowIndex="1">
|
||||||
|
<image>
|
||||||
|
<Image url="@../icons/Friendship.png" />
|
||||||
|
<!-- image from pngall.com - 24498 -->
|
||||||
|
</image>
|
||||||
|
</ImageView>
|
||||||
|
<ImageView fx:id="achieve3" fitHeight="101.0" fitWidth="129.0" pickOnBounds="true" preserveRatio="true" GridPane.rowIndex="2">
|
||||||
|
<image>
|
||||||
|
<Image url="@../icons/co2dev.png" />
|
||||||
|
<!-- image from exceldryer.com -->
|
||||||
|
</image>
|
||||||
|
</ImageView>
|
||||||
|
<ImageView fx:id="achieve4" fitHeight="101.0" fitWidth="129.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="1">
|
||||||
|
<image>
|
||||||
|
<Image url="@../icons/alternate_foods.png" />
|
||||||
|
</image>
|
||||||
|
</ImageView>
|
||||||
|
<ImageView fx:id="achieve5" fitHeight="101.0" fitWidth="129.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="1" GridPane.rowIndex="1">
|
||||||
<image>
|
<image>
|
||||||
<Image url="@../icons/achiev1pic.jpg" />
|
<Image url="@../icons/achiev1pic.jpg" />
|
||||||
<!-- image from shutterstock.com - 1038138760 -->
|
<!-- image from shutterstock.com - 1038138760 -->
|
||||||
</image>
|
</image>
|
||||||
</ImageView>
|
</ImageView>
|
||||||
|
<ImageView fx:id="achieve6" fitHeight="101.0" fitWidth="129.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="1" GridPane.rowIndex="2">
|
||||||
|
<image>
|
||||||
|
<Image url="@../icons/solar_panels.jpeg" />
|
||||||
|
<!-- image from moregreenenergy.com -->
|
||||||
|
</image>
|
||||||
|
</ImageView>
|
||||||
|
</children>
|
||||||
|
</GridPane>
|
||||||
</children>
|
</children>
|
||||||
</AnchorPane>
|
</AnchorPane>
|
||||||
<AnchorPane fx:id="friendsPane" layoutX="216.0" prefHeight="703.0" prefWidth="820.0" visible="false" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="214.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
|
<AnchorPane fx:id="friendsPane" layoutX="216.0" prefHeight="703.0" prefWidth="820.0" visible="false" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="214.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
|
||||||
|
|||||||
BIN
src/Client/src/main/resources/icons/Clover.png
Normal file
BIN
src/Client/src/main/resources/icons/Clover.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 67 KiB |
BIN
src/Client/src/main/resources/icons/Friendship.png
Normal file
BIN
src/Client/src/main/resources/icons/Friendship.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
BIN
src/Client/src/main/resources/icons/alternate_foods.png
Normal file
BIN
src/Client/src/main/resources/icons/alternate_foods.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 19 KiB |
BIN
src/Client/src/main/resources/icons/co2dev.png
Normal file
BIN
src/Client/src/main/resources/icons/co2dev.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
BIN
src/Client/src/main/resources/icons/solar_panels.jpeg
Normal file
BIN
src/Client/src/main/resources/icons/solar_panels.jpeg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.1 KiB |
@@ -276,6 +276,7 @@ public class UserService {
|
|||||||
*/
|
*/
|
||||||
public Map<String, Boolean> getAchievements(String name) {
|
public Map<String, Boolean> getAchievements(String name) {
|
||||||
User user = userRepository.findByName(name);
|
User user = userRepository.findByName(name);
|
||||||
|
achievementService.updateAchievements(user);
|
||||||
return user.getAchievements();
|
return user.getAchievements();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user