summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod
diff options
context:
space:
mode:
authorStephan Schwaer2015-09-04 18:10:17 +0200
committerStephan Schwaer2015-09-04 18:10:17 +0200
commit74eed6e9f17e932b7a6738cc84460b4fb89258db (patch)
tree4565dcc27d0535f923fb27b7039c6dc19341664b /dozentenmodul/src/main/java/org/openslx/dozmod
parent[client] Added confirmation for changing owner of lecture, switched positions... (diff)
downloadtutor-module-74eed6e9f17e932b7a6738cc84460b4fb89258db.tar.gz
tutor-module-74eed6e9f17e932b7a6738cc84460b4fb89258db.tar.xz
tutor-module-74eed6e9f17e932b7a6738cc84460b4fb89258db.zip
[client] Fixed linking to unallowed images.
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureChangeLinkedImage.java19
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java6
2 files changed, 15 insertions, 10 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureChangeLinkedImage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureChangeLinkedImage.java
index faa3e306..fe30abf7 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureChangeLinkedImage.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureChangeLinkedImage.java
@@ -17,9 +17,10 @@ import org.openslx.dozmod.gui.control.table.ImageTable;
import org.openslx.dozmod.gui.helper.MessageType;
import org.openslx.dozmod.gui.helper.UiFeedback;
import org.openslx.dozmod.gui.window.layout.LectureChangeLinkedImageLayout;
+import org.openslx.dozmod.permissions.ImagePerms;
/**
- * Window for modifying the custom permissions of an lecture.
+ * Window for changing the linked image of a lecture
*/
@SuppressWarnings("serial")
public class LectureChangeLinkedImage extends LectureChangeLinkedImageLayout implements UiFeedback {
@@ -68,12 +69,14 @@ public class LectureChangeLinkedImage extends LectureChangeLinkedImageLayout imp
private void processClick(MouseEvent e) {
// left double click => open details
if (SwingUtilities.isLeftMouseButton(e) && e.getClickCount() == 2) {
- if (imageIsValid()) {
+ ImageSummaryRead image = imageTable.getSelectedItem();
+ if (image.isValid && ImagePerms.canLink(image)) {
okUsed = true;
dispose();
- } else
- {
- Gui.showMessageBox(me, "Ausgewähltes Image ist ungültig!", MessageType.ERROR, LOGGER , null);
+ } else {
+ if(!image.isValid)
+ Gui.showMessageBox(me, "Ausgewähltes Image ist ungültig!", MessageType.ERROR, LOGGER , null);
+ else Gui.showMessageBox(me, "Keine Rechte zum verlinken auf das ausgewählte Image.", MessageType.ERROR, LOGGER , null);
}
}
@@ -84,7 +87,8 @@ public class LectureChangeLinkedImage extends LectureChangeLinkedImageLayout imp
imageTable.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
@Override
public void valueChanged(ListSelectionEvent e) {
- btnOk.setEnabled(imageIsValid());
+ ImageSummaryRead image = imageTable.getSelectedItem();
+ btnOk.setEnabled(image.isValid && ImagePerms.canLink(image));
}
});
@@ -106,9 +110,6 @@ public class LectureChangeLinkedImage extends LectureChangeLinkedImageLayout imp
});
}
- private boolean imageIsValid(){
- return imageTable.getSelectedItem().isValid;
- }
/**
* Set window visible and return resulting ImageSummaryRead
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java
index f5acb83b..74e7cb31 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/LectureImageListPage.java
@@ -10,6 +10,7 @@ import org.openslx.bwlp.thrift.iface.ImageSummaryRead;
import org.openslx.dozmod.gui.control.table.ImageTable;
import org.openslx.dozmod.gui.wizard.Wizard;
import org.openslx.dozmod.gui.wizard.layout.LectureImageListPageLayout;
+import org.openslx.dozmod.permissions.ImagePerms;
import org.openslx.dozmod.state.LectureWizardState;
/**
@@ -72,12 +73,15 @@ public class LectureImageListPage extends LectureImageListPageLayout {
}
private boolean isPageValid() {
ImageSummaryRead selected = imageTable.getSelectedItem();
- if (selected != null && selected.isValid) {
+ if (selected != null && selected.isValid && ImagePerms.canLink(selected)) {
state.image = selected;
state.imageVersionId = selected.getLatestVersionId();
setDescription("Klicken Sie auf 'Weiter'");
return true;
}
+ if (selected != null && ImagePerms.canLink(selected))
+ setErrorMessage("Unzureichende Berechtigungen um auf dieses Image zu linken.");
+
setErrorMessage("Invalides Image ausgewählt");
return false;
}