VPR-Frontend/client/app/src/main/java/main/CreateEventController.java

102 lines
3.0 KiB
Java
Raw Normal View History

package main;
2022-01-14 21:22:50 +01:00
import com.jfoenix.controls.JFXTextField;
import com.jfoenix.controls.JFXTimePicker;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.scene.Node;
import javafx.scene.control.*;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
import javafx.util.StringConverter;
import javafx.util.converter.LocalTimeStringConverter;
import res.DataController;
import res.Event;
import java.time.LocalTime;
import java.time.format.FormatStyle;
import java.util.Locale;
public class CreateEventController {
@FXML
2022-01-13 10:11:09 +01:00
public GridPane mainGrid;
@FXML
public DatePicker datePickerDate;
@FXML
2022-01-14 21:22:50 +01:00
public JFXTextField textName;
@FXML
public ComboBox<String> ComboBoxPriotity;
@FXML
public CheckBox checkBoxIsFullDay;
@FXML
public CheckBox checkBoxIsPrivate;
@FXML
public Label labelError;
@FXML
public JFXTimePicker timeStart;
@FXML
public JFXTimePicker timeEnd;
public CreateEventController() {
}
@FXML
public void initialize() {
2022-01-14 10:14:17 +01:00
StringConverter<LocalTime> defaultConverter = new LocalTimeStringConverter(FormatStyle.SHORT, Locale.GERMANY);
JFXTimePicker timePickerStart = new JFXTimePicker();
timeStart = timePickerStart;
timePickerStart.set24HourView(true);
2022-01-14 10:14:17 +01:00
timePickerStart.setConverter(defaultConverter);
2022-01-13 10:11:09 +01:00
timePickerStart.getStyleClass().add("timePicker");
mainGrid.add(timePickerStart, 1 , 3);
JFXTimePicker timePickerEnd = new JFXTimePicker();
timeEnd = timePickerEnd;
timePickerEnd.set24HourView(true);
2022-01-14 10:14:17 +01:00
timePickerEnd.setConverter(defaultConverter);
2022-01-13 10:11:09 +01:00
timePickerEnd.getStyleClass().add("timePicker");
mainGrid.add(timePickerEnd, 1 , 4);
}
@FXML
protected void createBtnClick(ActionEvent actionEvent) {
try {
2021-12-22 15:04:15 +01:00
if (datePickerDate.getValue() == null) {
throw new IllegalArgumentException("Bitte w\u00e4hle ein Datum aus");
}
Event event = new Event(
textName.getText(),
ComboBoxPriotity.getSelectionModel().getSelectedIndex(),
checkBoxIsFullDay.isSelected(),
checkBoxIsPrivate.isSelected(),
timeStart.getValue().toString(),
timeEnd.getValue().toString(),
datePickerDate.getValue().atStartOfDay(),
2021-12-22 15:04:15 +01:00
(int) DataController.USER_ID
);
System.out.println(event.getAsUrlParam());
DataController dataController = new DataController();
dataController.createEvent(event);
Stage stage = (Stage) ((Node) actionEvent.getSource()).getScene().getWindow();
stage.close();
} catch (RuntimeException e) {
labelError.setText(e.getMessage());
}
}
@FXML
protected void abortBtnClick(ActionEvent event) {
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
stage.close();
}
}