summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
diff options
context:
space:
mode:
authorJonathan Bauer2016-09-02 17:29:47 +0200
committerJonathan Bauer2016-09-02 17:29:47 +0200
commitb794e38b72473538461b97882f4f20ede7042ea9 (patch)
tree7a4fad9eb687f451c6bd5e3e293f205790ac0bc3 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
parent[client] don't use System.lineSeparator() but regular linefeed/carriage return (diff)
downloadtutor-module-b794e38b72473538461b97882f4f20ede7042ea9.tar.gz
tutor-module-b794e38b72473538461b97882f4f20ede7042ea9.tar.xz
tutor-module-b794e38b72473538461b97882f4f20ede7042ea9.zip
[client] splitted netrules & runscript tab/panel/w/e
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.java46
1 files changed, 25 insertions, 21 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 9d6b6134..58ce9b89 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
@@ -39,13 +39,12 @@ import org.openslx.bwlp.thrift.iface.LectureWrite;
import org.openslx.bwlp.thrift.iface.UserInfo;
import org.openslx.dozmod.gui.Gui;
import org.openslx.dozmod.gui.MainWindow;
-import org.openslx.dozmod.gui.control.AdvancedConfigurator.AdvancedConfiguration;
-import org.openslx.dozmod.gui.control.AdvancedConfigurator.AdvancedConfigurationChangeEvent;
-import org.openslx.dozmod.gui.control.AdvancedConfigurator.AdvancedConfigurationChangeEventListener;
import org.openslx.dozmod.gui.control.JCheckBoxTree.CheckChangeEvent;
import org.openslx.dozmod.gui.control.JCheckBoxTree.CheckChangeEventListener;
import org.openslx.dozmod.gui.control.LectureCustomPermissionManager.UserChangeEvent;
import org.openslx.dozmod.gui.control.LectureCustomPermissionManager.UserChangeEventListener;
+import org.openslx.dozmod.gui.control.NetrulesConfigurator.NetrulesConfiguration;
+import org.openslx.dozmod.gui.control.RunscriptConfigurator.RunscriptConfiguration;
import org.openslx.dozmod.gui.helper.DateTimeHelper;
import org.openslx.dozmod.gui.helper.MessageType;
import org.openslx.dozmod.gui.helper.TextChangeListener;
@@ -136,7 +135,8 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
/**
* Holder of the netrules/runscript of this lecture
*/
- private AdvancedConfiguration currentAdvConf = null;
+ private NetrulesConfiguration currentNetrules = null;
+ private RunscriptConfiguration currentRunscript = null;
/**
* Constructor
@@ -258,12 +258,16 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
chkCustomPermAdmin.addActionListener(changeReacter);
chkCustomPermEdit.addActionListener(changeReacter);
- ctlAdvancedConfigurator.addAdvancedConfigurationChangeEventListener(new AdvancedConfigurationChangeEventListener() {
+ btnNetrules.addActionListener(new ActionListener() {
@Override
- public void stateChanged(AdvancedConfigurationChangeEvent event) {
- btnSaveChanges.setEnabled(ctlAdvancedConfigurator.hasChanged());
+ public void actionPerformed(ActionEvent e) {
+ NetrulesConfiguration newNetrules = LectureNetrulesWindow.open(me, new NetrulesConfiguration(currentNetrules.netRulesList));
+ if (newNetrules != null)
+ currentNetrules = newNetrules;
+ reactToChange();
}
});
+
final TextChangeListener docListener = new TextChangeListener() {
@Override
public void changed() {
@@ -369,7 +373,8 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
lblImageNameInfo.setText(image.getImageName());
}
// remember original advanced config
- currentAdvConf = new AdvancedConfiguration(lecture.networkExceptions, lecture.runscript);
+ currentNetrules = new NetrulesConfiguration(lecture.networkExceptions);
+ currentRunscript = new RunscriptConfiguration(lecture.runscript);
// remember default permissions
if (lecture.defaultPermissions != null) {
@@ -395,10 +400,9 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
locationInfo = new LocationInfo(lecture.locationIds, lecture.limitToLocations);
ctlLocationSelector.setOnlyInSelection(locationInfo.limitToLocations);
ctlLocationSelector.setSelectedLocationsAsIds(locationInfo.locationList);
- // advanced config stuff, save current information
- currentAdvConf = new AdvancedConfiguration(lecture.networkExceptions, lecture.runscript);
+
// init advanced info
- ctlAdvancedConfigurator.setState(new AdvancedConfiguration(lecture.networkExceptions, lecture.runscript));
+ ctlRunscriptConfigurator.setState(new RunscriptConfiguration(lecture.runscript));
txtTitle.setText(lecture.getLectureName());
lblTitleInfo.setText(lecture.getLectureName());
@@ -608,8 +612,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)
- || (currentAdvConf != null && lecture.networkExceptions != null && !lecture.networkExceptions.equals(currentAdvConf.netRulesList))
- || (currentAdvConf != null && lecture.runscript != null && !lecture.runscript.equals(currentAdvConf.runScriptText))
+ || (currentNetrules != null && lecture.networkExceptions != null && !lecture.networkExceptions.equals(currentNetrules))
+ || (currentRunscript != null && lecture.runscript != null && !lecture.runscript.equals(currentRunscript))
|| imageLinkChanged;
return changed;
@@ -640,27 +644,27 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
: cboVersions.getItemAt(cboVersions.getSelectedIndex()).versionId;
}
// goto to advanced tab and check (by getting) the state of the textAreas
- currentAdvConf = ctlAdvancedConfigurator.getState();
- if (currentAdvConf == null) {
+ currentRunscript = ctlRunscriptConfigurator.getState();
+ if (currentRunscript == null) {
// getState() will return null only if it couldn't parse the rules
// which means that the user got informed about what was invalid
// So we just return here until the parsing works.
- pnlTabs.setSelectedIndex(pnlTabs.indexOfTab("Erweitert"));
+ pnlTabs.setSelectedIndex(pnlTabs.indexOfTab("Startskript"));
return false;
}
- metadataChanged |= (currentAdvConf.netRulesList != lecture.networkExceptions || currentAdvConf.runScriptText != lecture.runscript);
+ metadataChanged |= (currentNetrules.netRulesList != lecture.networkExceptions || currentRunscript.runScriptText != lecture.runscript);
// now check if we need to push a new LectureWrite
if (metadataChanged) {
// first build the LectureWrite from the GUI fields
final LectureWrite metadata = new LectureWrite(txtTitle.getText(), txtDescription.getText(),
lecture.getImageVersionId(), chkAutoUpdate.isSelected(), chkIsActive.isSelected(),
DateTimeHelper.getDateFrom(dtpStartDate, spnStartTime).getTime() / 1000L,
- DateTimeHelper.getDateFrom(dtpEndDate, spnEndTime).getTime() / 1000L, currentAdvConf.runScriptText, null,
+ DateTimeHelper.getDateFrom(dtpEndDate, spnEndTime).getTime() / 1000L, currentRunscript.runScriptText, null,
chkIsExam.isSelected(), chkHasInternetAccess.isSelected(), // TODO USBACCESS
lecture.getDefaultPermissions(), locationInfo.locationList, locationInfo.limitToLocations,
// TODO: coming "false" is Location related
false, chkHasUsbAccess.isSelected());
- metadata.setNetworkExceptions(currentAdvConf.netRulesList);
+ metadata.setNetworkExceptions(currentNetrules.netRulesList);
// now trigger the actual action
try {
ThriftManager.getSatClient().updateLecture(Session.getSatelliteToken(),
@@ -745,8 +749,8 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
if (pnlTabs.indexOfTab("Raumauswahl") != -1) {
pnlTabs.setEnabledAt(pnlTabs.indexOfTab("Raumauswahl"), editable);
}
- if (pnlTabs.indexOfTab("Erweitert") != -1) {
- pnlTabs.setEnabledAt(pnlTabs.indexOfTab("Erweitert"), editable);
+ if (pnlTabs.indexOfTab("Startskript") != -1) {
+ pnlTabs.setEnabledAt(pnlTabs.indexOfTab("Startskript"), editable);
}
btnChangeOwner.setEnabled(LecturePerms.canAdmin(lecture));
btnDownloadImage.setEnabled(ImagePerms.canDownload(image));