Merge branch 'merge' into 2410-develop
This commit is contained in:
commit
7a119a8aed
@ -16,7 +16,12 @@ application {
|
|||||||
mainClassName = "client.MainApplication"
|
mainClassName = "client.MainApplication"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
repositories {
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
|
implementation("com.jfoenix:jfoenix:9.0.10")
|
||||||
implementation(project(":data"))
|
implementation(project(":data"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,33 +1,41 @@
|
|||||||
package main;
|
package main;
|
||||||
|
|
||||||
|
import com.jfoenix.controls.*;
|
||||||
import javafx.event.ActionEvent;
|
import javafx.event.ActionEvent;
|
||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.scene.Node;
|
import javafx.scene.Node;
|
||||||
import javafx.scene.control.*;
|
import javafx.scene.control.*;
|
||||||
|
import javafx.scene.layout.GridPane;
|
||||||
import javafx.stage.Stage;
|
import javafx.stage.Stage;
|
||||||
|
import javafx.util.StringConverter;
|
||||||
|
import javafx.util.converter.LocalTimeStringConverter;
|
||||||
import res.DataController;
|
import res.DataController;
|
||||||
import res.Event;
|
import res.Event;
|
||||||
|
|
||||||
|
import java.time.LocalTime;
|
||||||
|
import java.time.format.FormatStyle;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
public class CreateEventController {
|
public class CreateEventController {
|
||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
public DatePicker datePickerDate;
|
public GridPane mainGrid;
|
||||||
@FXML
|
@FXML
|
||||||
public TextField textName;
|
public JFXDatePicker datePickerDate;
|
||||||
@FXML
|
@FXML
|
||||||
public TextField textStart;
|
public JFXTextField textName;
|
||||||
@FXML
|
@FXML
|
||||||
public TextField textEnd;
|
public JFXComboBox<String> ComboBoxPriotity;
|
||||||
@FXML
|
@FXML
|
||||||
public ComboBox<String> ComboBoxTyp;
|
public JFXToggleButton toggleBtnIsFullDay;
|
||||||
@FXML
|
@FXML
|
||||||
public ComboBox<String> ComboBoxPriotity;
|
public JFXToggleButton toggleBtnIsPrivate;
|
||||||
@FXML
|
|
||||||
public CheckBox checkBoxIsFullDay;
|
|
||||||
@FXML
|
|
||||||
public CheckBox checkBoxIsPrivate;
|
|
||||||
@FXML
|
@FXML
|
||||||
public Label labelError;
|
public Label labelError;
|
||||||
|
@FXML
|
||||||
|
public JFXTimePicker timeStart;
|
||||||
|
@FXML
|
||||||
|
public JFXTimePicker timeEnd;
|
||||||
|
|
||||||
|
|
||||||
public CreateEventController() {
|
public CreateEventController() {
|
||||||
@ -35,6 +43,13 @@ public class CreateEventController {
|
|||||||
|
|
||||||
@FXML
|
@FXML
|
||||||
public void initialize() {
|
public void initialize() {
|
||||||
|
|
||||||
|
StringConverter<LocalTime> defaultConverter = new LocalTimeStringConverter(FormatStyle.SHORT, Locale.GERMANY);
|
||||||
|
timeStart.set24HourView(true);
|
||||||
|
timeStart.setConverter(defaultConverter);
|
||||||
|
|
||||||
|
timeEnd.set24HourView(true);
|
||||||
|
timeEnd.setConverter(defaultConverter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -48,10 +63,10 @@ public class CreateEventController {
|
|||||||
Event event = new Event(
|
Event event = new Event(
|
||||||
textName.getText(),
|
textName.getText(),
|
||||||
ComboBoxPriotity.getSelectionModel().getSelectedIndex(),
|
ComboBoxPriotity.getSelectionModel().getSelectedIndex(),
|
||||||
checkBoxIsFullDay.isSelected(),
|
toggleBtnIsFullDay.isSelected(),
|
||||||
checkBoxIsPrivate.isSelected(),
|
toggleBtnIsPrivate.isSelected(),
|
||||||
textStart.getText(),
|
timeStart.getValue().toString(),
|
||||||
textEnd.getText(),
|
timeEnd.getValue().toString(),
|
||||||
datePickerDate.getValue().atStartOfDay(),
|
datePickerDate.getValue().atStartOfDay(),
|
||||||
(int) DataController.USER_ID
|
(int) DataController.USER_ID
|
||||||
);
|
);
|
||||||
|
@ -12,10 +12,12 @@ import java.util.Objects;
|
|||||||
public class MainApplication extends Application {
|
public class MainApplication extends Application {
|
||||||
@Override
|
@Override
|
||||||
public void start(Stage stage) throws IOException {
|
public void start(Stage stage) throws IOException {
|
||||||
|
|
||||||
FXMLLoader fxmlLoader = new FXMLLoader(MainApplication.class.getResource("main-view.fxml"));
|
FXMLLoader fxmlLoader = new FXMLLoader(MainApplication.class.getResource("main-view.fxml"));
|
||||||
|
|
||||||
Scene scene = new Scene(fxmlLoader.load(), 1200, 700);
|
Scene scene = new Scene(fxmlLoader.load(), 1200, 700);
|
||||||
scene.getStylesheets().add(Objects.requireNonNull(
|
scene.getStylesheets().add(Objects.requireNonNull(
|
||||||
|
|
||||||
MainApplication.class.getResource("main-view.css")).toExternalForm());
|
MainApplication.class.getResource("main-view.css")).toExternalForm());
|
||||||
stage.setTitle("SharePlaner");
|
stage.setTitle("SharePlaner");
|
||||||
stage.setScene(scene);
|
stage.setScene(scene);
|
||||||
|
@ -148,6 +148,23 @@ public class MainController {
|
|||||||
});
|
});
|
||||||
Button editBtn = new Button();
|
Button editBtn = new Button();
|
||||||
editBtn.setTextValue("edit");
|
editBtn.setTextValue("edit");
|
||||||
|
editBtn.setOnAction(event1 -> {
|
||||||
|
try {
|
||||||
|
FXMLLoader fxmlLoader = new FXMLLoader(
|
||||||
|
MainApplication.class.getResource("edit-event.fxml"));
|
||||||
|
Scene scene = new Scene(fxmlLoader.load(), 650, 650);
|
||||||
|
scene.getStylesheets().add(Objects.requireNonNull(
|
||||||
|
MainApplication.class.getResource("create-event.css")).toExternalForm());
|
||||||
|
Stage stage = new Stage();
|
||||||
|
stage.setTitle("Termin bearbeiten");
|
||||||
|
stage.setScene(scene);
|
||||||
|
stage.initModality(Modality.APPLICATION_MODAL);
|
||||||
|
stage.setResizable(false);
|
||||||
|
stage.showAndWait();
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
});
|
||||||
btnHBox.getChildren().add(editBtn);
|
btnHBox.getChildren().add(editBtn);
|
||||||
btnHBox.getChildren().add(deleteBtn);
|
btnHBox.getChildren().add(deleteBtn);
|
||||||
vBox.getChildren().add(btnHBox);
|
vBox.getChildren().add(btnHBox);
|
||||||
|
55
client/app/src/main/java/users/CreateUserController.java
Normal file
55
client/app/src/main/java/users/CreateUserController.java
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
package users;
|
||||||
|
|
||||||
|
import javafx.event.ActionEvent;
|
||||||
|
import javafx.fxml.FXML;
|
||||||
|
import javafx.scene.Node;
|
||||||
|
import javafx.scene.control.Label;
|
||||||
|
import javafx.scene.control.TextField;
|
||||||
|
import javafx.scene.control.ToggleButton;
|
||||||
|
import javafx.stage.Stage;
|
||||||
|
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
|
public class CreateUserController {
|
||||||
|
|
||||||
|
public TextField textName;
|
||||||
|
public TextField textPassword;
|
||||||
|
public TextField textPasswordSecond;
|
||||||
|
public ToggleButton checkButtonIsAdmin;
|
||||||
|
public TextField textLogin;
|
||||||
|
public TextField textForename;
|
||||||
|
public Label labelError;
|
||||||
|
|
||||||
|
@FXML
|
||||||
|
protected void createUser(ActionEvent event) {
|
||||||
|
if (textLogin.getText().trim().isEmpty()){
|
||||||
|
labelError.setText("Bitte Login Namen angeben");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (textForename.getText().trim().isEmpty()) {
|
||||||
|
labelError.setText("Bitte Vornamen eingeben!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (textName.getText().trim().isEmpty()) {
|
||||||
|
labelError.setText("Bitte Nachnamen eingeben!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (textPassword.getText().trim().isEmpty()) {
|
||||||
|
labelError.setText("Bitte Passwort eingeben!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!Objects.equals(textPassword.getText(), textPasswordSecond.getText())){
|
||||||
|
labelError.setText("Passwörter stimmen nicht überein!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
|
||||||
|
stage.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
@FXML
|
||||||
|
protected void abortBtnClick(ActionEvent event) {
|
||||||
|
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
|
||||||
|
stage.close();
|
||||||
|
}
|
||||||
|
}
|
@ -1,18 +1,18 @@
|
|||||||
package users;
|
package users;
|
||||||
|
|
||||||
|
import com.jfoenix.controls.*;
|
||||||
import javafx.event.ActionEvent;
|
import javafx.event.ActionEvent;
|
||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.scene.Node;
|
import javafx.scene.Node;
|
||||||
import javafx.scene.control.Label;
|
import javafx.scene.control.Label;
|
||||||
import javafx.scene.control.TextField;
|
|
||||||
import javafx.stage.Stage;
|
import javafx.stage.Stage;
|
||||||
import res.DataController;
|
import res.DataController;
|
||||||
|
|
||||||
public class LoginController {
|
public class LoginController {
|
||||||
@FXML
|
@FXML
|
||||||
public TextField userField;
|
public JFXTextField userField;
|
||||||
@FXML
|
@FXML
|
||||||
public TextField passField;
|
public JFXPasswordField passField;
|
||||||
@FXML
|
@FXML
|
||||||
public Label userErrLabel;
|
public Label userErrLabel;
|
||||||
@FXML
|
@FXML
|
||||||
|
@ -28,10 +28,16 @@ Label{
|
|||||||
|
|
||||||
.inputField{
|
.inputField{
|
||||||
-fx-padding: 10px;
|
-fx-padding: 10px;
|
||||||
|
-fx-background-color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mainButton{
|
.mainButton{
|
||||||
-fx-font-weight: bold;
|
-fx-font-weight: bold;
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
JFXButton{
|
||||||
|
-fx-background-color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
#labelError{
|
#labelError{
|
||||||
@ -44,3 +50,15 @@ Label{
|
|||||||
-fx-wrap-text: true;
|
-fx-wrap-text: true;
|
||||||
-fx-font-size: 16px;
|
-fx-font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.inputDate{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.comboBox{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.timePicker{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
@ -5,7 +5,9 @@
|
|||||||
|
|
||||||
<?import javafx.collections.FXCollections?>
|
<?import javafx.collections.FXCollections?>
|
||||||
<?import java.lang.String?>
|
<?import java.lang.String?>
|
||||||
<GridPane xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml/1"
|
<?import com.jfoenix.controls.*?>
|
||||||
|
|
||||||
|
<GridPane fx:id="mainGrid" xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml/1"
|
||||||
fx:controller="main.CreateEventController">
|
fx:controller="main.CreateEventController">
|
||||||
|
|
||||||
<columnConstraints>
|
<columnConstraints>
|
||||||
@ -23,26 +25,25 @@
|
|||||||
<RowConstraints vgrow="ALWAYS"/>
|
<RowConstraints vgrow="ALWAYS"/>
|
||||||
<RowConstraints vgrow="ALWAYS"/>
|
<RowConstraints vgrow="ALWAYS"/>
|
||||||
<RowConstraints vgrow="ALWAYS"/>
|
<RowConstraints vgrow="ALWAYS"/>
|
||||||
<RowConstraints vgrow="ALWAYS"/>
|
|
||||||
</rowConstraints>
|
</rowConstraints>
|
||||||
|
|
||||||
<Label styleClass="mainLabel">Termin anlegen</Label>
|
<Label styleClass="mainLabel">Termin anlegen</Label>
|
||||||
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="1">Datum:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="1">Titel:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="2">Titel:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="2">Datum:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="3">Von:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="3">Von:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="4">Bis:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="4">Bis:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="5">Typ:</Label>
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="6">Priorität:</Label>
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="7">Ganztägig:</Label>
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="8">Privat:</Label>
|
|
||||||
|
|
||||||
<DatePicker fx:id="datePickerDate" GridPane.columnIndex="1" GridPane.rowIndex="1" maxWidth="400" minWidth="400"/>
|
<Label styleClass="inputLabel" GridPane.rowIndex="5">Priorität:</Label>
|
||||||
<TextField fx:id="textName" GridPane.columnIndex="1" GridPane.rowIndex="2" maxWidth="400" minWidth="400"/>
|
<Label styleClass="inputLabel" GridPane.rowIndex="6">Ganztägig:</Label>
|
||||||
<TextField fx:id="textStart" GridPane.columnIndex="1" GridPane.rowIndex="3" maxWidth="400" minWidth="400"/>
|
<Label styleClass="inputLabel" GridPane.rowIndex="7">Privat:</Label>
|
||||||
<TextField fx:id="textEnd" GridPane.columnIndex="1" GridPane.rowIndex="4" maxWidth="400" minWidth="400"/>
|
|
||||||
<ComboBox fx:id="ComboBoxTyp" GridPane.columnIndex="1" GridPane.rowIndex="5" maxWidth="400" minWidth="400"/>
|
<JFXTextField styleClass="inputField" fx:id="textName" GridPane.columnIndex="1" GridPane.rowIndex="1" maxWidth="400" minWidth="400"/>
|
||||||
<ComboBox fx:id="ComboBoxPriotity" GridPane.columnIndex="1" GridPane.rowIndex="6" maxWidth="200" minWidth="200">
|
<JFXDatePicker styleClass="inputDate" fx:id="datePickerDate" GridPane.columnIndex="1" GridPane.rowIndex="2" maxWidth="200" minWidth="200"/>
|
||||||
|
<JFXTimePicker styleClass="timePicker" fx:id="timeStart" GridPane.columnIndex="1" GridPane.rowIndex="3" maxWidth="200" minWidth="200"/>
|
||||||
|
<JFXTimePicker styleClass="timePicker" fx:id="timeEnd" GridPane.columnIndex="1" GridPane.rowIndex="4" maxWidth="200" minWidth="200"/>
|
||||||
|
|
||||||
|
<JFXComboBox fx:id="ComboBoxPriotity" styleClass="comboBox" GridPane.columnIndex="1" GridPane.rowIndex="5" maxWidth="200" minWidth="200">
|
||||||
<items>
|
<items>
|
||||||
<FXCollections fx:factory="observableArrayList">
|
<FXCollections fx:factory="observableArrayList">
|
||||||
<String fx:value="gering"/>
|
<String fx:value="gering"/>
|
||||||
@ -50,14 +51,14 @@
|
|||||||
<String fx:value="hoch"/>
|
<String fx:value="hoch"/>
|
||||||
</FXCollections>
|
</FXCollections>
|
||||||
</items>
|
</items>
|
||||||
</ComboBox>
|
</JFXComboBox>
|
||||||
<CheckBox fx:id="checkBoxIsFullDay" GridPane.columnIndex="1" GridPane.rowIndex="7"/>
|
<JFXToggleButton styleClass="checkbox" fx:id="toggleBtnIsFullDay" GridPane.columnIndex="1" GridPane.rowIndex="6"/>
|
||||||
<CheckBox fx:id="checkBoxIsPrivate" GridPane.columnIndex="1" GridPane.rowIndex="8"/>
|
<JFXToggleButton styleClass="checkbox" fx:id="toggleBtnIsPrivate" GridPane.columnIndex="1" GridPane.rowIndex="7"/>
|
||||||
<Label fx:id="labelError" GridPane.columnIndex="1" GridPane.rowIndex="9"/>
|
<Label fx:id="labelError" GridPane.columnIndex="1" GridPane.rowIndex="8"/>
|
||||||
|
|
||||||
<HBox GridPane.columnIndex="1" GridPane.rowIndex="10" GridPane.columnSpan="2" alignment="CENTER_RIGHT">
|
<HBox GridPane.columnIndex="1" GridPane.rowIndex="9" GridPane.columnSpan="2" alignment="CENTER_RIGHT">
|
||||||
<Button onAction="#abortBtnClick" maxWidth="150" minWidth="150">Abbrechen</Button>
|
<JFXButton onAction="#abortBtnClick" maxWidth="150" minWidth="150">Abbrechen</JFXButton>
|
||||||
<Button styleClass="mainButton" onAction="#createBtnClick" maxWidth="150" minWidth="150">Anlegen</Button>
|
<JFXButton styleClass="mainButton" onAction="#createBtnClick" maxWidth="150" minWidth="150">Anlegen</JFXButton>
|
||||||
</HBox>
|
</HBox>
|
||||||
|
|
||||||
</GridPane>
|
</GridPane>
|
||||||
|
@ -5,7 +5,9 @@
|
|||||||
|
|
||||||
<?import javafx.collections.FXCollections?>
|
<?import javafx.collections.FXCollections?>
|
||||||
<?import java.lang.String?>
|
<?import java.lang.String?>
|
||||||
<GridPane xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml/1"
|
<?import com.jfoenix.controls.*?>
|
||||||
|
|
||||||
|
<GridPane fx:id="mainGrid" xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml/1"
|
||||||
fx:controller="main.CreateEventController">
|
fx:controller="main.CreateEventController">
|
||||||
|
|
||||||
<columnConstraints>
|
<columnConstraints>
|
||||||
@ -23,26 +25,25 @@
|
|||||||
<RowConstraints vgrow="ALWAYS"/>
|
<RowConstraints vgrow="ALWAYS"/>
|
||||||
<RowConstraints vgrow="ALWAYS"/>
|
<RowConstraints vgrow="ALWAYS"/>
|
||||||
<RowConstraints vgrow="ALWAYS"/>
|
<RowConstraints vgrow="ALWAYS"/>
|
||||||
<RowConstraints vgrow="ALWAYS"/>
|
|
||||||
</rowConstraints>
|
</rowConstraints>
|
||||||
|
|
||||||
<Label styleClass="mainLabel">Termin bearbeiten</Label>
|
<Label styleClass="mainLabel">Termin bearbeiten</Label>
|
||||||
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="1">Datum:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="1">Titel:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="2">Titel:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="2">Datum:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="3">Von:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="3">Von:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="4">Bis:</Label>
|
<Label styleClass="inputLabel" GridPane.rowIndex="4">Bis:</Label>
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="5">Typ:</Label>
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="6">Priorität:</Label>
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="7">Ganztägig:</Label>
|
|
||||||
<Label styleClass="inputLabel" GridPane.rowIndex="8">Privat:</Label>
|
|
||||||
|
|
||||||
<DatePicker fx:id="datePickerDate" GridPane.columnIndex="1" GridPane.rowIndex="1" maxWidth="400" minWidth="400"/>
|
<Label styleClass="inputLabel" GridPane.rowIndex="5">Priorität:</Label>
|
||||||
<TextField fx:id="textName" GridPane.columnIndex="1" GridPane.rowIndex="2" maxWidth="400" minWidth="400"/>
|
<Label styleClass="inputLabel" GridPane.rowIndex="6">Ganztägig:</Label>
|
||||||
<TextField fx:id="textStart" GridPane.columnIndex="1" GridPane.rowIndex="3" maxWidth="400" minWidth="400"/>
|
<Label styleClass="inputLabel" GridPane.rowIndex="7">Privat:</Label>
|
||||||
<TextField fx:id="textEnd" GridPane.columnIndex="1" GridPane.rowIndex="4" maxWidth="400" minWidth="400"/>
|
|
||||||
<ComboBox fx:id="ComboBoxTyp" GridPane.columnIndex="1" GridPane.rowIndex="5" maxWidth="400" minWidth="400"/>
|
<JFXTextField styleClass="inputField" fx:id="textName" GridPane.columnIndex="1" GridPane.rowIndex="1" maxWidth="400" minWidth="400"/>
|
||||||
<ComboBox fx:id="ComboBoxPriotity" GridPane.columnIndex="1" GridPane.rowIndex="6" maxWidth="200" minWidth="200">
|
<JFXDatePicker styleClass="inputDate" fx:id="datePickerDate" GridPane.columnIndex="1" GridPane.rowIndex="2" maxWidth="200" minWidth="200"/>
|
||||||
|
<JFXTimePicker styleClass="timePicker" fx:id="timeStart" GridPane.columnIndex="1" GridPane.rowIndex="3" maxWidth="200" minWidth="200"/>
|
||||||
|
<JFXTimePicker styleClass="timePicker" fx:id="timeEnd" GridPane.columnIndex="1" GridPane.rowIndex="4" maxWidth="200" minWidth="200"/>
|
||||||
|
|
||||||
|
<JFXComboBox fx:id="ComboBoxPriotity" styleClass="comboBox" GridPane.columnIndex="1" GridPane.rowIndex="5" maxWidth="200" minWidth="200">
|
||||||
<items>
|
<items>
|
||||||
<FXCollections fx:factory="observableArrayList">
|
<FXCollections fx:factory="observableArrayList">
|
||||||
<String fx:value="gering"/>
|
<String fx:value="gering"/>
|
||||||
@ -50,14 +51,14 @@
|
|||||||
<String fx:value="hoch"/>
|
<String fx:value="hoch"/>
|
||||||
</FXCollections>
|
</FXCollections>
|
||||||
</items>
|
</items>
|
||||||
</ComboBox>
|
</JFXComboBox>
|
||||||
<CheckBox fx:id="checkBoxIsFullDay" GridPane.columnIndex="1" GridPane.rowIndex="7"/>
|
<JFXToggleButton styleClass="checkbox" fx:id="toggleBtnIsFullDay" GridPane.columnIndex="1" GridPane.rowIndex="6"/>
|
||||||
<CheckBox fx:id="checkBoxIsPrivate" GridPane.columnIndex="1" GridPane.rowIndex="8"/>
|
<JFXToggleButton styleClass="checkbox" fx:id="toggleBtnIsPrivate" GridPane.columnIndex="1" GridPane.rowIndex="7"/>
|
||||||
<Label fx:id="labelError" GridPane.columnIndex="1" GridPane.rowIndex="9"/>
|
<Label fx:id="labelError" GridPane.columnIndex="1" GridPane.rowIndex="8"/>
|
||||||
|
|
||||||
<HBox GridPane.columnIndex="1" GridPane.rowIndex="10" GridPane.columnSpan="2" alignment="CENTER_RIGHT">
|
<HBox GridPane.columnIndex="1" GridPane.rowIndex="9" GridPane.columnSpan="2" alignment="CENTER_RIGHT">
|
||||||
<Button onAction="#abortBtnClick" maxWidth="150" minWidth="150">Abbrechen</Button>
|
<JFXButton onAction="#abortBtnClick" maxWidth="150" minWidth="150">Abbrechen</JFXButton>
|
||||||
<Button styleClass="mainButton" onAction="#createBtnClick" maxWidth="150" minWidth="150">Speichern</Button>
|
<JFXButton styleClass="mainButton" onAction="#createBtnClick" maxWidth="150" minWidth="150">Speichern</JFXButton>
|
||||||
</HBox>
|
</HBox>
|
||||||
|
|
||||||
</GridPane>
|
</GridPane>
|
||||||
|
@ -72,3 +72,7 @@ Label{
|
|||||||
-fx-max-height: 40px;
|
-fx-max-height: 40px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.navBtn{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
<?import javafx.scene.control.*?>
|
<?import javafx.scene.control.*?>
|
||||||
<?import javafx.scene.image.*?>
|
<?import javafx.scene.image.*?>
|
||||||
<?import javafx.scene.layout.*?>
|
<?import javafx.scene.layout.*?>
|
||||||
|
<?import com.jfoenix.controls.*?>
|
||||||
|
|
||||||
<GridPane style="-fx-background-color: #424242;" xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml/1"
|
<GridPane style="-fx-background-color: #424242;" xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml/1"
|
||||||
fx:controller="main.MainController">
|
fx:controller="main.MainController">
|
||||||
@ -19,15 +20,15 @@
|
|||||||
<ImageView fitHeight="50.0" fitWidth="50.0" pickOnBounds="true" preserveRatio="true">
|
<ImageView fitHeight="50.0" fitWidth="50.0" pickOnBounds="true" preserveRatio="true">
|
||||||
|
|
||||||
</ImageView>
|
</ImageView>
|
||||||
<Button onAction="#onAddBtnClick" styleClass="main-btn">
|
<JFXButton onAction="#onAddBtnClick" styleClass="main-btn">
|
||||||
ADD
|
ADD
|
||||||
</Button>
|
</JFXButton>
|
||||||
<Button onAction="#onAddBtnClick" styleClass="main-btn">
|
<JFXButton onAction="#onAddBtnClick" styleClass="main-btn">
|
||||||
ADD
|
ADD
|
||||||
</Button>
|
</JFXButton>
|
||||||
<Button onAction="#onAddBtnClick" styleClass="main-btn">
|
<JFXButton onAction="#onAddBtnClick" styleClass="main-btn">
|
||||||
ADD
|
ADD
|
||||||
</Button>
|
</JFXButton>
|
||||||
</VBox>
|
</VBox>
|
||||||
<GridPane prefHeight="200.0" prefWidth="222.0" GridPane.columnIndex="1" GridPane.rowIndex="0">
|
<GridPane prefHeight="200.0" prefWidth="222.0" GridPane.columnIndex="1" GridPane.rowIndex="0">
|
||||||
<columnConstraints>
|
<columnConstraints>
|
||||||
@ -48,9 +49,9 @@
|
|||||||
<Insets left="5"/>
|
<Insets left="5"/>
|
||||||
</padding>
|
</padding>
|
||||||
</Label>
|
</Label>
|
||||||
<Button onAction="#onBackClick" GridPane.columnIndex="1" maxHeight="1.7976931348623157E308">zurück</Button>
|
<JFXButton styleClass="navBtn" onAction="#onBackClick" GridPane.columnIndex="1" maxHeight="1.7976931348623157E308">zurück</JFXButton>
|
||||||
<Button onAction="#onTodayClick" GridPane.columnIndex="2" maxHeight="1.7976931348623157E308">heute</Button>
|
<JFXButton styleClass="navBtn" onAction="#onTodayClick" GridPane.columnIndex="2" maxHeight="1.7976931348623157E308">heute</JFXButton>
|
||||||
<Button onAction="#onNextClick" GridPane.columnIndex="3" maxHeight="1.7976931348623157E308">weiter</Button>
|
<JFXButton styleClass="navBtn" onAction="#onNextClick" GridPane.columnIndex="3" maxHeight="1.7976931348623157E308">weiter</JFXButton>
|
||||||
|
|
||||||
<GridPane fx:id="calendarGrid" gridLinesVisible="true" styleClass="gridCalendar" GridPane.columnSpan="4"
|
<GridPane fx:id="calendarGrid" gridLinesVisible="true" styleClass="gridCalendar" GridPane.columnSpan="4"
|
||||||
GridPane.columnIndex="0" GridPane.rowIndex="1">
|
GridPane.columnIndex="0" GridPane.rowIndex="1">
|
||||||
|
@ -1,3 +1,12 @@
|
|||||||
|
* {
|
||||||
|
-fx-base-background-color: #2B2D42;
|
||||||
|
-fx-base1-background-color: #525E74;
|
||||||
|
|
||||||
|
-fx-main-border-color: #B0B0B0;
|
||||||
|
-fx-main-text-color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
GridPane{
|
GridPane{
|
||||||
-fx-background-color: #3E415F;
|
-fx-background-color: #3E415F;
|
||||||
-fx-padding: 20px;
|
-fx-padding: 20px;
|
||||||
@ -11,36 +20,37 @@ GridPane{
|
|||||||
-fx-effect: dropshadow(three-pass-box, rgba(100, 100, 100, 1), 24, 0.5, 0, 0);
|
-fx-effect: dropshadow(three-pass-box, rgba(100, 100, 100, 1), 24, 0.5, 0, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.mainLabel{
|
||||||
|
-fx-padding: 10px;
|
||||||
|
-fx-max-width: 400px;
|
||||||
|
-fx-min-width: 400px;
|
||||||
|
-fx-font-weight: bold;
|
||||||
|
-fx-alignment: top-center;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Label{
|
Label{
|
||||||
-fx-text-fill: white;
|
-fx-text-fill: white;
|
||||||
-fx-max-width: 150px;
|
-fx-max-width: 150px;
|
||||||
-fx-min-width: 150px;
|
-fx-min-width: 150px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mainLabel{
|
.textField{
|
||||||
-fx-background-color: #8D99AE;
|
-fx-max-width: 400px;
|
||||||
-fx-padding: 10px;
|
-fx-min-width: 400px;
|
||||||
-fx-max-width: 200px;
|
|
||||||
-fx-min-width: 200px;
|
|
||||||
-fx-font-weight: bold;
|
|
||||||
-fx-alignment: center;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.inputField{
|
.errorMessage{
|
||||||
-fx-padding: 10px;
|
-fx-max-width: 400px;
|
||||||
|
-fx-min-width: 400px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.mainButton{
|
Button{
|
||||||
|
-fx-max-width: 150px;
|
||||||
|
-fx-min-width: 150px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btnLogin{
|
||||||
-fx-font-weight: bold;
|
-fx-font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
#labelError{
|
|
||||||
-fx-font-weight: bold;
|
|
||||||
-fx-max-width: 1000px;
|
|
||||||
-fx-text-fill: #ff5555;
|
|
||||||
-fx-padding: 16px;
|
|
||||||
-fx-min-height: 140px;
|
|
||||||
-fx-max-height: 400px;
|
|
||||||
-fx-wrap-text: true;
|
|
||||||
-fx-font-size: 16px;
|
|
||||||
}
|
|
56
client/app/src/main/resources/users/create-user.fxml
Normal file
56
client/app/src/main/resources/users/create-user.fxml
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<?import javafx.scene.control.*?>
|
||||||
|
<?import javafx.scene.layout.*?>
|
||||||
|
<?import javafx.geometry.Insets?>
|
||||||
|
<GridPane xmlns="http://javafx.com/javafx"
|
||||||
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
|
fx:controller="users.CreateUserController">
|
||||||
|
<columnConstraints>
|
||||||
|
<ColumnConstraints minWidth="100"/>
|
||||||
|
<ColumnConstraints minWidth="100"/>
|
||||||
|
<ColumnConstraints minWidth="100"/>
|
||||||
|
</columnConstraints>
|
||||||
|
<rowConstraints>
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
<RowConstraints vgrow="ALWAYS" />
|
||||||
|
</rowConstraints>
|
||||||
|
|
||||||
|
<Label styleClass="mainLabel" GridPane.columnIndex="2" >User anlegen</Label>
|
||||||
|
|
||||||
|
<Label styleClass="inputLabel" GridPane.rowIndex="1" GridPane.columnIndex="1">Login:</Label>
|
||||||
|
<Label styleClass="inputLabel" GridPane.rowIndex="2" GridPane.columnIndex="1">Vorname:</Label>
|
||||||
|
<Label styleClass="inputLabel" GridPane.rowIndex="3" GridPane.columnIndex="1">Nachname:</Label>
|
||||||
|
<Label styleClass="inputLabel" GridPane.rowIndex="4" GridPane.columnIndex="1">Passwort:</Label>
|
||||||
|
<Label styleClass="inputLabel" GridPane.rowIndex="5" GridPane.columnIndex="1">Passwort wiederholen:</Label>
|
||||||
|
|
||||||
|
<Label styleClass="inputLabelAdmin" GridPane.rowIndex="6" GridPane.columnIndex="1">Admin:</Label>
|
||||||
|
|
||||||
|
<TextField fx:id="textLogin" styleClass="textField" GridPane.columnIndex="2" GridPane.rowIndex="1" />
|
||||||
|
<TextField fx:id="textForename" styleClass="textField" GridPane.columnIndex="2" GridPane.rowIndex="2" />
|
||||||
|
<TextField fx:id="textName" styleClass="textField" GridPane.columnIndex="2" GridPane.rowIndex="3" />
|
||||||
|
<TextField fx:id="textPassword" styleClass="textField" GridPane.columnIndex="2" GridPane.rowIndex="4" />
|
||||||
|
<TextField fx:id="textPasswordSecond" styleClass="textField" GridPane.columnIndex="2" GridPane.rowIndex="5" />
|
||||||
|
|
||||||
|
<ToggleButton fx:id="checkButtonIsAdmin" GridPane.columnIndex="2" GridPane.rowIndex="6"/>
|
||||||
|
|
||||||
|
<Label fx:id="labelError" styleClass="errorMessage" GridPane.columnIndex="2" GridPane.rowIndex="7"/>
|
||||||
|
|
||||||
|
<HBox GridPane.columnIndex="2" GridPane.rowIndex="8" alignment="CENTER_RIGHT">
|
||||||
|
<HBox.margin>
|
||||||
|
<Insets right="100" left="100"/>
|
||||||
|
</HBox.margin>
|
||||||
|
<Button onAction="#abortBtnClick">Abbrechen</Button>
|
||||||
|
<Button onAction="#createUser" styleClass="btnLogin" >Anmelden</Button>
|
||||||
|
|
||||||
|
</HBox>
|
||||||
|
</GridPane>
|
||||||
|
|
@ -35,3 +35,19 @@ Label{
|
|||||||
-fx-wrap-text: true;
|
-fx-wrap-text: true;
|
||||||
-fx-font-size: 16px;
|
-fx-font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.userField{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.passField{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.quitBtn{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.loginBtn{
|
||||||
|
-fx-background-color: white;
|
||||||
|
}
|
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
<?import javafx.scene.control.*?>
|
<?import javafx.scene.control.*?>
|
||||||
<?import javafx.scene.layout.*?>
|
<?import javafx.scene.layout.*?>
|
||||||
|
<?import com.jfoenix.controls.*?>
|
||||||
|
|
||||||
<GridPane xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml" fx:controller="users.LoginController">
|
<GridPane xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml" fx:controller="users.LoginController">
|
||||||
|
|
||||||
<columnConstraints>
|
<columnConstraints>
|
||||||
@ -19,14 +21,14 @@
|
|||||||
<Label GridPane.columnIndex="1">Anmelden</Label>
|
<Label GridPane.columnIndex="1">Anmelden</Label>
|
||||||
|
|
||||||
<Label GridPane.rowIndex="1">Username</Label>
|
<Label GridPane.rowIndex="1">Username</Label>
|
||||||
<TextField GridPane.columnIndex="1" GridPane.rowIndex="1" fx:id="userField"/>
|
<JFXTextField styleClass="userField" GridPane.columnIndex="1" GridPane.rowIndex="1" fx:id="userField"/>
|
||||||
<Label styleClass="errorLbl" GridPane.columnIndex="2" GridPane.rowIndex="1" fx:id="userErrLabel"/>
|
<Label styleClass="errorLbl" GridPane.columnIndex="2" GridPane.rowIndex="1" fx:id="userErrLabel"/>
|
||||||
|
|
||||||
<Label GridPane.rowIndex="2">Paswort</Label>
|
<Label GridPane.rowIndex="2">Paswort</Label>
|
||||||
<PasswordField GridPane.columnIndex="1" GridPane.rowIndex="2" fx:id="passField"/>
|
<JFXPasswordField styleClass="passField" GridPane.columnIndex="1" GridPane.rowIndex="2" fx:id="passField"/>
|
||||||
<Label styleClass="errorLbl" GridPane.columnIndex="2" GridPane.rowIndex="2" fx:id="passErrLabel"/>
|
<Label styleClass="errorLbl" GridPane.columnIndex="2" GridPane.rowIndex="2" fx:id="passErrLabel"/>
|
||||||
|
|
||||||
<Button onAction="#abortBtnClick" GridPane.columnIndex="1" GridPane.rowIndex="3">Beenden</Button>
|
<JFXButton styleClass="quitBtn" onAction="#abortBtnClick" GridPane.columnIndex="1" GridPane.rowIndex="3">Beenden</JFXButton>
|
||||||
<Button onAction="#login" GridPane.columnIndex="2" GridPane.rowIndex="3">Anmelden</Button>
|
<JFXButton styleClass="loginBtn" onAction="#login" GridPane.columnIndex="2" GridPane.rowIndex="3">Anmelden</JFXButton>
|
||||||
|
|
||||||
</GridPane>
|
</GridPane>
|
||||||
|
Loading…
Reference in New Issue
Block a user