From f09d63dd21d9d6025c86501d97d41eac99951dc8 Mon Sep 17 00:00:00 2001 From: Richard Date: Tue, 31 Jan 2023 17:51:37 +0100 Subject: [PATCH] aus main stuff kopiert --- .../LoginController.java | 12 +-- .../StartViewApplication.java | 11 ++- .../WorkerMenuController.java | 95 +++++++++++++++++++ 3 files changed, 109 insertions(+), 9 deletions(-) create mode 100644 src/main/java/com/bib/essensbestellungsverwaltung/WorkerMenuController.java diff --git a/src/main/java/com/bib/essensbestellungsverwaltung/LoginController.java b/src/main/java/com/bib/essensbestellungsverwaltung/LoginController.java index 6f96348..6cc85e1 100644 --- a/src/main/java/com/bib/essensbestellungsverwaltung/LoginController.java +++ b/src/main/java/com/bib/essensbestellungsverwaltung/LoginController.java @@ -1,4 +1,3 @@ -/*Reshad Meher*/ package com.bib.essensbestellungsverwaltung; import javafx.fxml.FXML; @@ -15,6 +14,7 @@ import java.util.HashMap; public class LoginController { @FXML private TextField tfEmail; + @FXML private PasswordField pfPassword; @@ -25,20 +25,18 @@ public class LoginController { String email = tfEmail.getText(); String password = pfPassword.getText(); if(benutzerMap.containsKey(email) && benutzerMap.containsValue(password)){ - FXMLLoader fxmlLoader = new FXMLLoader(StartViewApplication.class.getResource("menue-view.fxml")); - Scene scene = new Scene(fxmlLoader.load(), 950,480); - HelloApplication.primary.setScene(scene); + // if user is worker: StartViewApplication.changeScene("workerMenu-view.fxml"); + StartViewApplication.changeScene("parentMenu-view.fxml"); }else { Alert alert = new Alert(Alert.AlertType.ERROR,"Email oder Passwort ist falsch"); alert.showAndWait(); } + tfEmail.setText(""); pfPassword.setText(""); } @FXML protected void changeToSignUp() throws IOException { - FXMLLoader fxmlLoader = new FXMLLoader(StartViewApplication.class.getResource("signUp-view.fxml")); - Scene scene = new Scene(fxmlLoader.load(), 950,480); - HelloApplication.primary.setScene(scene); + StartViewApplication.changeScene("signUp-view.fxml"); } } diff --git a/src/main/java/com/bib/essensbestellungsverwaltung/StartViewApplication.java b/src/main/java/com/bib/essensbestellungsverwaltung/StartViewApplication.java index fe03394..ffc7b5a 100644 --- a/src/main/java/com/bib/essensbestellungsverwaltung/StartViewApplication.java +++ b/src/main/java/com/bib/essensbestellungsverwaltung/StartViewApplication.java @@ -7,6 +7,7 @@ package com.bib.essensbestellungsverwaltung; import javafx.application.Application; import javafx.fxml.FXMLLoader; +import javafx.scene.Parent; import javafx.scene.Scene; import javafx.stage.Stage; @@ -14,11 +15,12 @@ import java.io.IOException; public class StartViewApplication extends Application { public static Stage primary; + @Override public void start(Stage stage) throws IOException { FXMLLoader fxmlLoader = new FXMLLoader(StartViewApplication.class.getResource("login-view.fxml")); - Scene scene = new Scene(fxmlLoader.load(), 950,480); - //stage = primary; + Scene scene = new Scene(fxmlLoader.load(), 1200, 750); + primary = stage; stage.setTitle("Essen Bestellung im Kindergarten"); stage.setScene(scene); stage.show(); @@ -34,4 +36,9 @@ public class StartViewApplication extends Application { //Database.deleteSample(); launch(); } + + public static void changeScene(String scene) throws IOException { + Parent p = FXMLLoader.load(StartViewApplication.class.getResource(scene)); + primary.getScene().setRoot(p); + } } \ No newline at end of file diff --git a/src/main/java/com/bib/essensbestellungsverwaltung/WorkerMenuController.java b/src/main/java/com/bib/essensbestellungsverwaltung/WorkerMenuController.java new file mode 100644 index 0000000..42d7bcb --- /dev/null +++ b/src/main/java/com/bib/essensbestellungsverwaltung/WorkerMenuController.java @@ -0,0 +1,95 @@ +package com.bib.essensbestellungsverwaltung; + +import javafx.fxml.FXML; +import javafx.fxml.FXMLLoader; +import javafx.scene.Parent; +import javafx.scene.control.Button; +import javafx.scene.input.MouseEvent; +import javafx.scene.layout.BorderPane; + +import java.io.IOException; + +public class WorkerMenuController { + @FXML + public BorderPane contentView; + + @FXML + Button tagesbestellungButton; + @FXML + Button wochenplanButton; + @FXML + Button monatsabrechnungButton; + @FXML + Button mitarbeiterButton; + @FXML + Button mahlzeitButton; + @FXML + Button einstellungenButton; + + @FXML + public void initialize() { + changePage("menue-view.fxml"); + setButtonActive(tagesbestellungButton); + } + + @FXML + public void onTagesbestellungenClick(MouseEvent mouseEvent) { + changePage("menue-view.fxml"); + setButtonActive(tagesbestellungButton); + } + + @FXML + public void onWochenplanClick(MouseEvent mouseEvent) { + changePage("createFoodplan-view.fxml"); + setButtonActive(wochenplanButton); + } + + @FXML + public void onMonatsabrechnungClick(MouseEvent mouseEvent) { + changePage("invoice-view.fxml"); + setButtonActive(monatsabrechnungButton); + } + + + @FXML + public void onMitarbeiterClick(MouseEvent mouseEvent) { + changePage("createCoworker-view.fxml"); + setButtonActive(mitarbeiterButton); + } + + + @FXML + public void onMahlzeitClick(MouseEvent mouseEvent) { + changePage("createFood-view.fxml"); + setButtonActive(mahlzeitButton); + } + + + public void onEinstellungenClick(MouseEvent mouseEvent) { + setButtonActive(einstellungenButton); + } + + @FXML + public void onAusloggenClick(MouseEvent mouseEvent) throws IOException { + StartViewApplication.changeScene("parentMenu-view.fxml"); + } + + private void changePage(String page) { + try { + Parent root = FXMLLoader.load(getClass().getResource(page)); + contentView.setCenter(root); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + + private void setButtonActive(Button b) { + tagesbestellungButton.getStyleClass().remove("active"); + monatsabrechnungButton.getStyleClass().remove("active"); + wochenplanButton.getStyleClass().remove("active"); + mahlzeitButton.getStyleClass().remove("active"); + mitarbeiterButton.getStyleClass().remove("active"); + einstellungenButton.getStyleClass().remove("active"); + b.getStyleClass().add("active"); + } +}