summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
diff options
context:
space:
mode:
authorJonathan Bauer2016-09-07 17:09:16 +0200
committerJonathan Bauer2016-09-07 17:09:16 +0200
commit54c0a813587a33a41da49e320548f2ce5bdd8b0c (patch)
treef862a7ad71c810d64a25766654d7c62971ff5a4d /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
parent[client] reformulate "interpreter" to "extension" (diff)
downloadtutor-module-54c0a813587a33a41da49e320548f2ce5bdd8b0c.tar.gz
tutor-module-54c0a813587a33a41da49e320548f2ce5bdd8b0c.tar.xz
tutor-module-54c0a813587a33a41da49e320548f2ce5bdd8b0c.zip
[client] fix the save button for the first time ever!!!
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java26
1 files changed, 18 insertions, 8 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
index 750a4c0e..2918428f 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
@@ -137,7 +137,9 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
* Holder of the netrules/runscript of this lecture
*/
private List<NetRule> currentNetrules = null;
+ private List<NetRule> originalNetrules = null;
private String currentRunscript = null;
+ private String originalRunscript = null;
/**
* Constructor
@@ -281,7 +283,6 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
ctlRunscriptConfigurator.addRunscriptConfigurationChangeEventListener(new RunscriptConfigurationChangeEventListener() {
@Override
public void stateChanged(RunscriptConfigurationChangeEvent event) {
- currentRunscript = ctlRunscriptConfigurator.getState();
reactToChange();
}
@@ -380,9 +381,12 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
txtImageName.setText(image.getImageName());
lblImageNameInfo.setText(image.getImageName());
}
- // remember original advanced config
- currentNetrules = lecture.networkExceptions;
- currentRunscript = lecture.runscript;
+ // remember original netrules and runscript
+ originalNetrules = lecture.networkExceptions != null ? lecture.networkExceptions : new ArrayList<NetRule>();
+ originalRunscript = lecture.runscript != null ? lecture.runscript : new String("");
+
+ currentNetrules = originalNetrules;
+ currentRunscript = originalRunscript;
// remember default permissions
if (lecture.defaultPermissions != null) {
@@ -598,11 +602,17 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
Date start = DateTimeHelper.getDateFrom(dtpStartDate, spnStartTime);
Date end = DateTimeHelper.getDateFrom(dtpEndDate, spnEndTime);
if (!isPeriodValid(start, end, false) && dateHasChanged()) {
- pnlTabs.setSelectedIndex(pnlTabs.indexOfTab("Allgemein"));
lblError.setText("Ungültiger Zeitraum!");
return false;
}
-
+ // runscript stuff
+ String newState = ctlRunscriptConfigurator.getState();
+ if (newState == null) {
+ // marker for error, switch to tab
+ return false;
+ } else {
+ currentRunscript = newState;
+ }
// done with mandatory checks, remove error message
lblError.setText(null);
@@ -620,8 +630,8 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
|| !lecture.defaultPermissions.equals(originalDefaultPermissions)
|| (locationInfo != null && lecture.locationIds != null && !lecture.locationIds.equals(locationInfo.locationList))
|| (locationInfo != null && lecture.limitToLocations != locationInfo.limitToLocations)
- || (currentNetrules != null && lecture.networkExceptions != null && !lecture.networkExceptions.equals(currentNetrules))
- || (currentRunscript != null && lecture.runscript != null && !lecture.runscript.equals(currentRunscript))
+ || (currentNetrules != null && !currentNetrules.equals(originalNetrules))
+ || (currentRunscript != null && !currentRunscript.equals(originalRunscript))
|| imageLinkChanged;
return changed;