diff options
author | Jonathan Bauer | 2016-09-07 17:09:16 +0200 |
---|---|---|
committer | Jonathan Bauer | 2016-09-07 17:09:16 +0200 |
commit | 54c0a813587a33a41da49e320548f2ce5bdd8b0c (patch) | |
tree | f862a7ad71c810d64a25766654d7c62971ff5a4d /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java | |
parent | [client] reformulate "interpreter" to "extension" (diff) | |
download | tutor-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.java | 26 |
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; |