diff options
| author | Michael Wilson | 2014-11-21 14:08:53 +0100 |
|---|---|---|
| committer | Michael Wilson | 2014-11-21 14:08:53 +0100 |
| commit | 7675cf0b3f9e0cb7805a008684ba620aaa5b1fc1 (patch) | |
| tree | 702f828bffa0722c0d8ce79f2c5ac0f84491331d /dozentenmodul/src/main/java/gui/image | |
| parent | Fixed Bug: no new user possible --> query changed (diff) | |
| download | tutor-module-7675cf0b3f9e0cb7805a008684ba620aaa5b1fc1.tar.gz tutor-module-7675cf0b3f9e0cb7805a008684ba620aaa5b1fc1.tar.xz tutor-module-7675cf0b3f9e0cb7805a008684ba620aaa5b1fc1.zip | |
• Only allow permission changes for users who are authorized to do so
Diffstat (limited to 'dozentenmodul/src/main/java/gui/image')
3 files changed, 55 insertions, 24 deletions
diff --git a/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java b/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java index 2b21bd04..f9701a0c 100644 --- a/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java @@ -38,10 +38,10 @@ import javax.swing.border.TitledBorder; import server.generated.Server.Client; import thrift.ThriftConnection; -import util.GuiOrganizer; import util.OpenLinks; import models.Image; import models.Links; +import models.person; import javax.swing.JComboBox; @@ -348,20 +348,27 @@ public class EditImageTechnisch_GUI extends JFrame { Image.image.setInternet(chckbxIsInternetBlocked.isSelected()); Image.image.setLicensed(chckbxIsLicensed.isSelected()); Image.image.setOS(comboBox.getSelectedItem().toString()); + - //System.out.println("OS bei Klick auf Weiter: "+Image.image.getOS()); + LOGGER.info("user is '"+person.verantwortlicher.getUserID()+"' and imageID is '"+Image.image.getImageId()+"'."); - //LOGGER.info("OS: " + Image.image.getOS() + - // ", Vorlage: " + Image.image.isVorlage() + - // ", Lizenzpflichtig: " + Image.image.isLicensed() + - // ", Internetsperre: " + Image.image.isInternet() + - // ", CPU: " + Image.image.getCpu() + - // ", RAM: " + Image.image.getRam()); - // oeffnet das naechste Fenster - PermissionEditImage_GUI ea=new PermissionEditImage_GUI(c); - ea.setVisible(true); - dispose(); + try { + //check if user may change permissions and choose window + if(client.userIsImageAdmin(person.verantwortlicher.getUserID(),Image.image.getImageId()) == true){ + //user has permission, go to permission GUI + PermissionEditImage_GUI ea=new PermissionEditImage_GUI(c); + ea.setVisible(true); + dispose(); + } else { + // user does not have permission, go straight to upload GUI + FTPEditUploader_GUI ea = new FTPEditUploader_GUI(c); + ea.setVisible(true); + dispose(); + } + } catch (TException e1) { + e1.printStackTrace(); + } } }); diff --git a/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java index d0a42e4b..415e3dee 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java @@ -453,10 +453,24 @@ public class FTPEditUploader_GUI extends JFrame implements } task.cancel(true); // not loading files, go back one page - dispose(); - PermissionEditImage_GUI ei = new PermissionEditImage_GUI( - c); - ei.setVisible(true); + + try { + if(client.userIsImageAdmin(person.verantwortlicher.getUserID(), Image.image.getImageId()) == true){ + //user is admin and may change permissions + PermissionEditImage_GUI ei = new PermissionEditImage_GUI(c); + ei.setVisible(true); + dispose(); + } else { + //user may not change permissions + EditImageTechnisch_GUI ei = new EditImageTechnisch_GUI(c); + ei.setVisible(true); + dispose(); + } + } catch (TException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + }// end if coice } else { @@ -468,10 +482,22 @@ public class FTPEditUploader_GUI extends JFrame implements "Abbrechen und zurück", JOptionPane.YES_NO_OPTION); if (selectedOption == JOptionPane.YES_OPTION) { - dispose(); - PermissionEditImage_GUI m = new PermissionEditImage_GUI( - c); - m.setVisible(true); + try { + if(client.userIsImageAdmin(person.verantwortlicher.getUserID(), Image.image.getImageId()) == true){ + //user is admin and may change permissions + PermissionEditImage_GUI ei = new PermissionEditImage_GUI(c); + ei.setVisible(true); + dispose(); + } else { + //user may not change permissions + EditImageTechnisch_GUI ei = new EditImageTechnisch_GUI(c); + ei.setVisible(true); + dispose(); + } + } catch (TException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } } else { // for actions if "no" is selected. tbd. } diff --git a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java index a794f404..7f61d827 100644 --- a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java @@ -571,15 +571,12 @@ public class PermissionEditImage_GUI extends JFrame { // save the entered rights into the model and prepare them to be written to // the database private void saveTableToList() { - //System.out.println("Saving Table to List"); + //LOGGER.info("Saving Table to List"); List<person> list = new ArrayList<person>(); int seperatorIndex = 0; - // get values from table and save the checkbox values - if (map == null) - //System.out.println("Error: map is null"); // for (int i = 0; i < map.size(); i++) { for (int i = 0; i < table.getRowCount(); i++) { @@ -628,6 +625,7 @@ public class PermissionEditImage_GUI extends JFrame { //permissions could have changed, compare vals at the end and update in db (quick and dirty due to time limitations) RightsManagement.rightsManagement.setPermittedUserList(list); + //LOGGER.info("number of permission="+list.size()); }// end saveTableToList() private void checkIntegrity(int row) { |
