summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page
diff options
context:
space:
mode:
authorJonathan Bauer2015-08-11 15:36:45 +0200
committerJonathan Bauer2015-08-11 15:36:45 +0200
commit53f1e1b9eb6bf23525d88c28a63c52c143777fe5 (patch)
tree9f48f6bce1e45a4ceece48524b06aeb0aa24bbb6 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page
parent[client] added combo and filter to filter imagelist for editable and own images. (diff)
downloadtutor-module-53f1e1b9eb6bf23525d88c28a63c52c143777fe5.tar.gz
tutor-module-53f1e1b9eb6bf23525d88c28a63c52c143777fe5.tar.xz
tutor-module-53f1e1b9eb6bf23525d88c28a63c52c143777fe5.zip
[client] lecture wizard quasi complete
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java87
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java2
2 files changed, 38 insertions, 51 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java
index e9eeb3bf..0e1e7465 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCreationPage.java
@@ -2,18 +2,18 @@ package org.openslx.dozmod.gui.wizard.page;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
-import java.text.DateFormat;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
+import javax.swing.JSpinner;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import org.apache.log4j.Logger;
+import org.jdatepicker.impl.JDatePickerImpl;
+import org.openslx.bwlp.thrift.iface.LecturePermissions;
import org.openslx.dozmod.gui.wizard.Wizard;
import org.openslx.dozmod.gui.wizard.layout.LectureCreationPageLayout;
import org.openslx.dozmod.state.LectureWizardState;
@@ -55,23 +55,25 @@ public class LectureCreationPage extends LectureCreationPageLayout {
descriptionText.getDocument().addDocumentListener(docListener);
// listeners for the date pickers
- ActionListener dateListener = new ActionListener() {
+ final ActionListener actionListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
reactToUserInput();
}
};
// listeners for the time pickers
- ChangeListener timeListener = new ChangeListener() {
+ final ChangeListener changeListener = new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
reactToUserInput();
}
};
- startTime.addChangeListener(timeListener);
- endTime.addChangeListener(timeListener);
- startDate.addActionListener(dateListener);
- endDate.addActionListener(dateListener);
+ startTime.addChangeListener(changeListener);
+ endTime.addChangeListener(changeListener);
+ startDate.addActionListener(actionListener);
+ endDate.addActionListener(actionListener);
+ editPermissionsCheck.addActionListener(actionListener);
+ adminPermissionsCheck.addActionListener(actionListener);
}
/**
* Called by event listeners. This will set guidance message or error
@@ -93,9 +95,12 @@ public class LectureCreationPage extends LectureCreationPageLayout {
} else {
state.description = descriptionText.getText();
}
- Date now = new Date();
- Date start = getStartDate();
- Date end = getEndDate();
+ // TODO max <sat config> months checks
+ final Date now = new Date();
+ final Date start = getDateFrom(startDate, startTime);
+ final Date end = getDateFrom(endDate, endTime);
+ LOGGER.debug(start);
+ LOGGER.debug(end);
if (start.after(end)) {
setWarningMessage("Startzeit is nach Endzeit!");
setPageComplete(false);
@@ -108,56 +113,36 @@ public class LectureCreationPage extends LectureCreationPageLayout {
state.start = start;
state.end = end;
}
- setWarningMessage("Sie können jetzt fortfahren.");
+ // always save checkboxes if we get this far
+ state.autoUpdate = autoUpdate.isSelected();
+ state.isEnabled = enabledCheck.isSelected();
+ state.isExam = examCheck.isSelected();
+ state.internetAccess = networkAccessCheck.isSelected();
+ state.defaultPermissions = new LecturePermissions(editPermissionsCheck.isSelected(), adminPermissionsCheck.isSelected());
+ setWarningMessage("Clicken Sie auf 'Weiter' für Berechtigungen oder 'Fertigstellen'.");
setPageComplete(true);
}
/**
- * @return the Date object representing the user's input for the start date
+ * TODO
+ * @param datePicker
+ * @param timeSpinner
+ * @return
*/
- private Date getStartDate() {
+ private Date getDateFrom(JDatePickerImpl datePicker, JSpinner timeSpinner) {
// start date from the DatePicker
- int years = startDate.getModel().getYear();
- int months = startDate.getModel().getMonth() + 1;
- int days = startDate.getModel().getDay();
+ int years = datePicker.getModel().getYear();
+ int months = datePicker.getModel().getMonth();
+ int days = datePicker.getModel().getDay();
// start time from the Spinner
- Date starttime = (Date) startTime.getValue();
+ Date time = (Date) timeSpinner.getValue();
Calendar cal = Calendar.getInstance();
- cal.setTime(starttime);
+ cal.setTime(time);
int hours = cal.get(Calendar.HOUR_OF_DAY);
int minutes = cal.get(Calendar.MINUTE);
// build the time from the single values
- DateFormat format = new SimpleDateFormat("dd-MM-yyyy kk:mm");
- Date date = null;
- try {
- date = format.parse(days + "-" + months + "-" + years + " " + hours + ":" + minutes);
- } catch (ParseException e) {
- LOGGER.error("Parsing error while converting date: ", e);
- }
- return date;
- }
- /**
- * @return the Date object representing the user's input for the end date
- */
- private Date getEndDate() {
- // end date from the DatePicker
- int years = endDate.getModel().getYear();
- int months = endDate.getModel().getMonth() + 1;
- int days = endDate.getModel().getDay();
- // end time from the Spinner
- Date endtime = (Date) endTime.getValue();
- Calendar cal = Calendar.getInstance();
- cal.setTime(endtime);
- int hours = cal.get(Calendar.HOUR_OF_DAY);
- int minutes = cal.get(Calendar.MINUTE);
- // build the time from the single values
- DateFormat format = new SimpleDateFormat("dd-MM-yyyy kk:mm");
- Date date = null;
- try {
- date = format.parse(days + "-" + months + "-" + years + " " + hours + ":" + minutes);
- } catch (ParseException e) {
- LOGGER.error("Parsing error while converting date: ", e);
- }
+ cal.set(years, months, days, hours, minutes);
+ Date date = cal.getTime();
return date;
}
}
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java
index d0c3da06..94bd8f72 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureCustomPermissionPage.java
@@ -76,5 +76,7 @@ public class LectureCustomPermissionPage extends LectureCustomPermissionPageLayo
permissionTableViewer.setData(permissionList, false);
}
});
+ // no requirements before finishing
+ setPageComplete(true);
}
}