summaryrefslogtreecommitdiffstats
path: root/dozentenmodul
diff options
context:
space:
mode:
authorJonathan Bauer2015-08-04 16:41:03 +0200
committerJonathan Bauer2015-08-04 16:41:03 +0200
commit45f14723ffdac1e6587b05f77e6ae917a65bf4c4 (patch)
treefbd876dac28cdba894b71b8f1649c83826be6ca3 /dozentenmodul
parent[server] Fix getLectureDetails() query and netrule parsing (diff)
downloadtutor-module-45f14723ffdac1e6587b05f77e6ae917a65bf4c4.tar.gz
tutor-module-45f14723ffdac1e6587b05f77e6ae917a65bf4c4.tar.xz
tutor-module-45f14723ffdac1e6587b05f77e6ae917a65bf4c4.zip
[client] save custom image permissions to state
Diffstat (limited to 'dozentenmodul')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java22
1 files changed, 22 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java
index f7ec1d9e..c137edda 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ImageCustomPermissionPage.java
@@ -3,6 +3,7 @@ package org.openslx.dozmod.gui.wizard.page;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
+import java.util.HashMap;
import org.apache.log4j.Logger;
import org.openslx.bwlp.thrift.iface.ImagePermissions;
@@ -31,12 +32,14 @@ public class ImageCustomPermissionPage extends ImageCustomPermissionPageLayout {
setPageComplete(true);
this.uploadWizardState = uploadWizardState;
+ // setup permission list for the table
permissionList = new ArrayList<>();
for (UserInfo user : UserCache.getAll()) {
permissionList.add(new UserImagePermissions(user.getUserId(), new ImagePermissions(true, true,
true, false)));
}
permissionTable.setData(permissionList, true);
+
// add user button adapter
addUser.addActionListener(new ActionListener() {
@@ -47,4 +50,23 @@ public class ImageCustomPermissionPage extends ImageCustomPermissionPageLayout {
});
}
+ @Override
+ protected void onPageLeave() {
+ LOGGER.debug("Saving permissions to state ...");
+ // save the table stuff to our upload wizard state
+ if (permissionList == null || permissionList.isEmpty())
+ return;
+ // stuff in our list, clear old list in state before continuing
+ if (uploadWizardState.permissionList == null) {
+ uploadWizardState.permissionList = new HashMap<String, ImagePermissions>();
+ } else {
+ uploadWizardState.permissionList.clear();
+ }
+
+ // add them one by one
+ for (UserImagePermissions perm : permissionList) {
+ // for now just overwrite the saved permission list of the state
+ uploadWizardState.permissionList.put(perm.userId, perm.permissions);
+ }
+ }
}