diff options
Diffstat (limited to 'dozentenmodul/src/main/java/gui')
23 files changed, 567 insertions, 364 deletions
diff --git a/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java b/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java index b10000ef..325fe62f 100644 --- a/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/CreateImageAllgemein_GUI.java @@ -112,7 +112,7 @@ public class CreateImageAllgemein_GUI extends JFrame { JOptionPane.ERROR_MESSAGE); } // Setzt den Titel - setTitle("bwLehrpool Suite - Image erzeugen"); + setTitle("bwLehrpool Suite - Image erzeugen - "+person.verantwortlicher.getUserID()); // Zentriert das Fenster setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -147,7 +147,7 @@ public class CreateImageAllgemein_GUI extends JFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Informationen zum Besitzer", + panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel_1.setBounds(10, 66, 557, 369); contentPanel.add(panel_1); diff --git a/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java b/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java index 12ef7554..e80c3a68 100644 --- a/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/CreateImageTechnisch_GUI.java @@ -43,7 +43,11 @@ import javax.swing.border.TitledBorder; import models.Image; import models.Links; + import models.SessionData; + +import models.person; + import server.generated.Server.Client; import thrift.ThriftConnection; import util.GuiOrganizer; @@ -108,7 +112,7 @@ public class CreateImageTechnisch_GUI extends JFrame { // TODO Auto-generated catch block e.printStackTrace(); } - setTitle("bwLehrpool Suite - Image erzeugen"); + setTitle("bwLehrpool Suite - Image erzeugen - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -163,6 +167,14 @@ public class CreateImageTechnisch_GUI extends JFrame { panel_1.add(lblNewLabel_2); chckbxIsLicensed = new JCheckBox(""); + chckbxIsLicensed.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + //if windows is selected, always set isLicensed()=true + if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + chckbxIsLicensed.setSelected(true); + } + } + }); chckbxIsLicensed.setSelected(true); chckbxIsLicensed.setBounds(266, 52, 97, 23); panel_1.add(chckbxIsLicensed); @@ -170,6 +182,7 @@ public class CreateImageTechnisch_GUI extends JFrame { chckbxIsInternetBlocked = new JCheckBox(""); chckbxIsInternetBlocked.setSelected(Image.image.isInternet()); chckbxIsInternetBlocked.setBounds(266, 80, 97, 23); + chckbxIsInternetBlocked.setEnabled(false); panel_1.add(chckbxIsInternetBlocked); JLabel lblLizenzserverEintragen = new JLabel("Lizenzserver eintragen:"); @@ -189,6 +202,14 @@ public class CreateImageTechnisch_GUI extends JFrame { // populate comboBox with list of supported OS we get // from the server ... comboBox = new JComboBox<String>(); + comboBox.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + //if windows is selected, always set isLicensed()=true + if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + chckbxIsLicensed.setSelected(true); + } + } + }); List<String> os = null; try { os = client.getAllOS(SessionData.session.getAuthToken()); diff --git a/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java b/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java index 09a6a966..525b7a11 100644 --- a/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/DeleteImage_GUI.java @@ -71,7 +71,7 @@ import javax.swing.JTextArea; @SuppressWarnings("serial") public class DeleteImage_GUI extends JFrame { - + private final static Logger LOGGER = Logger .getLogger(FTPCreateUploader_GUI.class); @@ -95,76 +95,71 @@ public class DeleteImage_GUI extends JFrame { JComboBox<String> comboBox; JTable tablemyImages; private JTextField textFieldName; + private JLabel lblTotalResults = new JLabel("Anzahl:"); boolean activeSearch = false; Component c = null; String[] titles = { "Name", "Lizenzpflichtig", "OS", "Veranstaltung", - "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung" }; // Angezeigt - // werden - // aber - // nur - // Name - // (0), - // OS - // (2), - // Verantwortlicher - // (4), - // Letztes - // Update - // (5) - private static final String HELP_MESSAGE = "<html><div align = \"center\">" + - "Löschen Sie hier die Images, die nicht mehr benötigt werden.<br />" + - "Ein gelöschtes Image wird auch tatsächlich physisch gelöscht und kann nicht wiederhergestellt werden.<br />" + - "Wird das Image nach dem Löschen nochmal benötigt, muss es erneut hochgeladen werden." + - "</div></html>"; - - + "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", + "Beschreibung" }; // Angezeigt + // werden + // aber + // nur + // Name + // (0), + // OS + // (2), + // Verantwortlicher + // (4), + // Letztes + // Update + // (5) + private static final String HELP_MESSAGE = "<html><div align = \"center\">" + + "Löschen Sie hier die Images, die nicht mehr benötigt werden.<br />" + + "Ein gelöschtes Image wird auch tatsächlich physisch gelöscht und kann nicht wiederhergestellt werden.<br />" + + "Wird das Image nach dem Löschen nochmal benötigt, muss es erneut hochgeladen werden." + + "</div></html>"; + ThriftConnection con = new ThriftConnection(); Client client = models.Client.clientcon.getClient(); - + /* - final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) { - public boolean isCellEditable(int rowIndex, int mColIndex) { - return false; - } - }; - */ + * final DefaultTableModel modelAll = new DefaultTableModel(titles, 0) { + * public boolean isCellEditable(int rowIndex, int mColIndex) { return + * false; } }; + */ final DefaultTableModel modelMyImages = new DefaultTableModel(titles, 0) { public boolean isCellEditable(int rowIndex, int mColIndex) { return false; } }; /* - final DefaultTableModel modelPublicVorlagen = new DefaultTableModel(titles, - 0) { - public boolean isCellEditable(int rowIndex, int mColIndex) { - return false; - } - };*/ + * final DefaultTableModel modelPublicVorlagen = new + * DefaultTableModel(titles, 0) { public boolean isCellEditable(int + * rowIndex, int mColIndex) { return false; } }; + */ /* - final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>( - modelAll); - */ + * final TableRowSorter<TableModel> rowSorterAll = new + * TableRowSorter<TableModel>( modelAll); + */ final TableRowSorter<TableModel> rowSorterMyImages = new TableRowSorter<TableModel>( modelMyImages); /* - final TableRowSorter<TableModel> rowSorterPublicVorlagen = new TableRowSorter<TableModel>( - modelPublicVorlagen); - */ + * final TableRowSorter<TableModel> rowSorterPublicVorlagen = new + * TableRowSorter<TableModel>( modelPublicVorlagen); + */ RowFilter rf = null; - List<RowFilter<Object,Object>> filters = new ArrayList<RowFilter<Object,Object>>(2); - + List<RowFilter<Object, Object>> filters = new ArrayList<RowFilter<Object, Object>>( + 2); + /** * Create the dialog. */ public DeleteImage_GUI(Component formerGUI) { - filters.add(RowFilter.regexFilter(".", 0)); rf = RowFilter.orFilter(filters); - - addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent arg0) { @@ -181,9 +176,8 @@ public class DeleteImage_GUI extends JFrame { @Override public void windowOpened(WindowEvent arg0) { - //initTableModel(modelAll); + initTableModel(modelMyImages); - //initTableModel(modelPublicVorlagen); // auszublendende Angaben // 1=Lizenzpflichtig @@ -211,7 +205,7 @@ public class DeleteImage_GUI extends JFrame { tablemyImages.getColumnModel().getColumn(9).setMaxWidth(0); tablemyImages.getTableHeader().setReorderingAllowed(false); - + // bis hier textFieldName.requestFocusInWindow(); } @@ -224,11 +218,12 @@ public class DeleteImage_GUI extends JFrame { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) { - + e.printStackTrace(); } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Image löschen"); + setTitle("bwLehrpool Suite - Image löschen - " + + person.verantwortlicher.getUserID()); // Zentriert das Fenster in die Bildmitte setBounds(0, 0, 918, 722); setLocationRelativeTo(formerGUI); @@ -281,37 +276,37 @@ public class DeleteImage_GUI extends JFrame { textFieldName = new JTextField(); // Key Listener der Tastatureingabe registriert - - + textFieldName.addKeyListener(new KeyAdapter() { @Override - public void keyReleased(KeyEvent e) - { + public void keyReleased(KeyEvent e) { // Textfield eingabe auslesen String stext = textFieldName.getText().trim(); // Wenn Textfield nicht leer - if (stext != "") - { + if (stext != "") { activeSearch = true; // Filtere nach der Eingabe - filters.clear(); - filters.add(RowFilter.regexFilter("(?i)"+stext, 0)); //case insensitive - filters.add(RowFilter.regexFilter("(?i)"+stext, 9)); //case insensitive + filters.clear(); + filters.add(RowFilter.regexFilter("(?i)" + stext, 0)); // case + // insensitive + filters.add(RowFilter.regexFilter("(?i)" + stext, 9)); // case + // insensitive rf = RowFilter.orFilter(filters); rowSorterMyImages.setRowFilter(rf); - } - else - { + } else { activeSearch = false; - + filters.clear(); - filters.add(RowFilter.regexFilter(".", 0)); //case insensitive, filter for anything + filters.add(RowFilter.regexFilter(".", 0)); // case + // insensitive, + // filter for + // anything rf = RowFilter.orFilter(filters); rowSorterMyImages.setRowFilter(rf); } tablemyImages.clearSelection(); - + resetImageInfo(); } }); @@ -324,7 +319,8 @@ public class DeleteImage_GUI extends JFrame { try { // Holt sich eine Liste aller verfügbaren Betriebssysteme vom // Server - List<String> list = client.getAllOS(SessionData.session.getAuthToken()); + List<String> list = client.getAllOS(SessionData.session + .getAuthToken()); // Leeres Item hinzufuegen comboBox.addItem(""); for (int i = 0; i < list.size(); i++) { @@ -332,7 +328,7 @@ public class DeleteImage_GUI extends JFrame { comboBox.addItem(list.get(i)); } } catch (TException e2) { - + e2.printStackTrace(); JOptionPane.showMessageDialog(c, e2.getCause() + "\n" + e2.getStackTrace(), "Debug-Message", @@ -344,23 +340,28 @@ public class DeleteImage_GUI extends JFrame { // Prueft das die Auswahl nicht leer ist if (comboBox.getSelectedItem().toString() != "") { activeSearch = true; - - /*rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox - .getSelectedItem().toString(), 2));*/ + + /* + * rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox + * .getSelectedItem().toString(), 2)); + */ rowSorterMyImages.setRowFilter(RowFilter.regexFilter( comboBox.getSelectedItem().toString(), 2)); - /*rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( - comboBox.getSelectedItem().toString(), 2));*/ + /* + * rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter + * ( comboBox.getSelectedItem().toString(), 2)); + */ } else { activeSearch = false; /* - String username = person.verantwortlicher.getName() + " " - + person.verantwortlicher.getVorname(); - */ + * String username = person.verantwortlicher.getName() + " " + * + person.verantwortlicher.getVorname(); + */ rowSorterMyImages.setRowFilter(null); - /*rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( - "true", 8)); - rowSorterAll.setRowFilter(null);*/ + /* + * rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter + * ( "true", 8)); rowSorterAll.setRowFilter(null); + */ } } @@ -375,7 +376,7 @@ public class DeleteImage_GUI extends JFrame { // oeffnet das Hauuetmenue con.closeThriftConnection(); - + // oeffnet das Hauuetmenue DeleteImage_GUI.this.setVisible(false); @@ -439,31 +440,58 @@ public class DeleteImage_GUI extends JFrame { try { if (!client.connectedToLecture(imageid, - imageversion,SessionData.session.getAuthToken())) { + imageversion, + SessionData.session.getAuthToken())) { try { - - client.deleteImageServer(imageid,imageversion, SessionData.session.getAuthToken()); - - if (client.deleteImageData(imageid,imageversion,SessionData.session.getAuthToken())) { - - LOGGER.info("Image '"+imageid+"' erfolgreich gelöscht."); - - DeleteImage_GUI di = new DeleteImage_GUI(c); - di.setVisible(true); - dispose(); + // try to delete file from file system + if (client.deleteImageServer(imageid, + imageversion, + SessionData.session.getAuthToken()) == true) { + // successful, now delete file from DB + if (client.deleteImageData(imageid, + imageversion, + SessionData.session + .getAuthToken())) { + + LOGGER.info("Image '" + imageid + + "' erfolgreich gelöscht."); + + DeleteImage_GUI di = new DeleteImage_GUI( + c); + di.setVisible(true); + dispose(); + + } else { + //could not delete file from DB + LOGGER.info("Image '" + + imageid + + "' konnte nicht gelöscht werden."); + + JOptionPane + .showConfirmDialog( + c, + "Image konnte nicht gelöscht werden.", + "Fehler", + JOptionPane.INFORMATION_MESSAGE); + } } else { - LOGGER.info("Image '"+imageid+"' konnte nicht gelöscht werden."); + // could not delete file from file + // system + LOGGER.info("Image '" + + imageid + + "' konnte nicht von Server gelöscht werden."); JOptionPane .showConfirmDialog( c, - "Image konnte nicht gelöscht werden.", + "Image konnte nicht vom Server gelöscht werden.", "Fehler", JOptionPane.INFORMATION_MESSAGE); } + } catch (HeadlessException e) { - + e.printStackTrace(); JOptionPane.showMessageDialog( c, @@ -472,7 +500,7 @@ public class DeleteImage_GUI extends JFrame { "Debug-Message", JOptionPane.ERROR_MESSAGE); } catch (TException e) { - + e.printStackTrace(); JOptionPane.showMessageDialog( c, @@ -483,7 +511,9 @@ public class DeleteImage_GUI extends JFrame { } } else { - LOGGER.info("Image '"+imageid+"' konnte nicht gelöscht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist."); + LOGGER.info("Image '" + + imageid + + "' konnte nicht gelöscht werden, da mindestens eine Veranstaltung mit diesem Image verlinkt ist."); JOptionPane .showMessageDialog( @@ -493,7 +523,7 @@ public class DeleteImage_GUI extends JFrame { JOptionPane.INFORMATION_MESSAGE); } } catch (TException e) { - + e.printStackTrace(); JOptionPane.showMessageDialog(c, e.getCause() + "\n" + e.getStackTrace(), @@ -515,23 +545,24 @@ public class DeleteImage_GUI extends JFrame { tablemyImages.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { - - if(tablemyImages.getSelectedRow() != -1) - { - String imageid = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 6) - .toString(); - String version = modelMyImages.getValueAt( - tablemyImages - .convertRowIndexToModel(tablemyImages - .getSelectedRow()), 7) - .toString(); - writeImageData(imageid, version); + + if (tablemyImages.getSelectedRow() != -1) { + String imageid = modelMyImages + .getValueAt( + tablemyImages + .convertRowIndexToModel(tablemyImages + .getSelectedRow()), + 6).toString(); + String version = modelMyImages + .getValueAt( + tablemyImages + .convertRowIndexToModel(tablemyImages + .getSelectedRow()), + 7).toString(); + writeImageData(imageid, version); } } - + }); tablemyImages.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); tablemyImages.setModel(modelMyImages); @@ -543,6 +574,9 @@ public class DeleteImage_GUI extends JFrame { tablemyImages.setRowSorter(rowSorterMyImages); scrollPaneMyImage.setViewportView(tablemyImages); + + lblTotalResults.setBounds(10, 512, 131, 20); + contentPanel.add(lblTotalResults); { JPanel buttonPane = new JPanel(); buttonPane.setBounds(0, 640, 902, 33); @@ -723,7 +757,7 @@ public class DeleteImage_GUI extends JFrame { open.openWebpage(windows); } catch (URISyntaxException e) { - + e.printStackTrace(); } } @@ -744,7 +778,7 @@ public class DeleteImage_GUI extends JFrame { open.openWebpage(windows); } catch (URISyntaxException e) { - + e.printStackTrace(); } @@ -760,12 +794,14 @@ public class DeleteImage_GUI extends JFrame { } }); mnNewMenu_1.add(menuItem); - + JMenu mnNewMenu_Info = new JMenu("Info"); mnNewMenu_Info.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent arg0) { - JOptionPane.showMessageDialog(c, HELP_MESSAGE, "Hilfe zu dieser Oberfläche", JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(c, HELP_MESSAGE, + "Hilfe zu dieser Oberfläche", + JOptionPane.INFORMATION_MESSAGE); } }); menuBar.add(mnNewMenu_Info); @@ -775,28 +811,30 @@ public class DeleteImage_GUI extends JFrame { // Initiale Beffuelung eines Table models public DefaultTableModel initTableModel(DefaultTableModel model) { - - + List<server.generated.Image> images; try { - + // Hole eine Liste der Images - if(person.verantwortlicher.getRole()=="Admin"){ - //get complete list - images = client.getImageList(person.verantwortlicher.getUserID()); + if (person.verantwortlicher.getRole() == "Admin") { + // get complete list + images = client.getImageList(person.verantwortlicher + .getUserID(),SessionData.session.getAuthToken()); } else { - //get permitted list - images = client.getImageListPermissionAdmin(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken()); + // get permitted list + images = client.getImageListPermissionAdmin( + person.verantwortlicher.getUserID(), + SessionData.session.getAuthToken()); } Iterator<server.generated.Image> i = images.iterator(); - System.out.println("Size of image list="+images.size()); - + System.out.println("Size of image list=" + images.size()); + int x = 0; SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - + while (i.hasNext()) { // erzeuge Objekte fuer die Tabelle Object[] obj = { images.get(x).getImageName(), @@ -807,22 +845,24 @@ public class DeleteImage_GUI extends JFrame { out.format(in.parse(images.get(x).updateTime)), images.get(x).id, images.get(x).getVersion(), images.get(x).getIsTemplate(), - images.get(x).getDescription()}; + images.get(x).getDescription() }; // Fuege diese Objekte der Tabelle hinzu model.addRow(obj); x++; i.next(); - - } - if(x==0){ + if (x == 0) { System.out.println("Damn... nothing to do here.."); } + // show number if rows in GUI + lblTotalResults.setText(lblTotalResults.getText() + " " + + model.getRowCount()); + return model; } catch (TException | ParseException e1) { - + e1.printStackTrace(); JOptionPane.showMessageDialog(c, e1.getCause() + "\n" + e1.getStackTrace(), "Debug-Message", @@ -830,9 +870,10 @@ public class DeleteImage_GUI extends JFrame { } return model; } - + private void resetImageInfo() { - //reset the detailed information on the right hand side when changing search string + // reset the detailed information on the right hand side when changing + // search string labelID.setText(""); labelVersion.setText(""); labelName.setText(""); @@ -846,14 +887,15 @@ public class DeleteImage_GUI extends JFrame { labelInternet.setText(""); labelRam.setText(""); labelCPU.setText(""); - + } public void writeImageData(String id, String version) { try { SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); - Map<String, String> res = client.getImageData(id, version,SessionData.session.getAuthToken()); + Map<String, String> res = client.getImageData(id, version, + SessionData.session.getAuthToken()); labelName.setText(res.get("name")); labelOS.setText(res.get("os")); labelUpdate.setText(out.format(in.parse(res.get("lastupdate")))); @@ -880,7 +922,7 @@ public class DeleteImage_GUI extends JFrame { labelVersion.setText(res.get("version")); textAreadesc.setText(res.get("desc")); } catch (TException | ParseException e1) { - + e1.printStackTrace(); } } diff --git a/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java b/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java index 273e3748..686fcccb 100644 --- a/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/EditImageAllgemein_GUI.java @@ -115,7 +115,7 @@ public class EditImageAllgemein_GUI extends JFrame { e.printStackTrace(); } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Image bearbeiten"); + setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); // Zentriert das Fenster in der Bildmitte setBounds(0, 0, 603, 722); @@ -151,7 +151,7 @@ public class EditImageAllgemein_GUI extends JFrame { JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); - panel_1.setBorder(new TitledBorder(null, "Informationen zum Besitzer", + panel_1.setBorder(new TitledBorder(null, "Informationen zum Image", TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel_1.setBounds(10, 66, 557, 369); contentPanel.add(panel_1); diff --git a/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java b/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java index 418ce276..10be7d2b 100644 --- a/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/EditImageTechnisch_GUI.java @@ -50,6 +50,12 @@ import org.apache.log4j.Logger; import org.apache.thrift.TException; import javax.swing.JCheckBox; +import java.beans.PropertyChangeListener; +import java.beans.PropertyChangeEvent; +import java.awt.event.ItemListener; +import java.awt.event.ItemEvent; +import java.awt.event.FocusAdapter; +import java.awt.event.FocusEvent; @SuppressWarnings("serial") public class EditImageTechnisch_GUI extends JFrame { @@ -105,7 +111,7 @@ public class EditImageTechnisch_GUI extends JFrame { e.printStackTrace(); } // Setzt den Titel des Fensters - setTitle("bwLehrpool Suite - Image bearbeiten"); + setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); // Zentriert das Fenster setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -152,11 +158,20 @@ public class EditImageTechnisch_GUI extends JFrame { panel_1.add(lblNewLabel_2); chckbxIsLicensed = new JCheckBox(""); + chckbxIsLicensed.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + //if windows is selected, always set isLicensed()=true + if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + chckbxIsLicensed.setSelected(true); + } + } + }); chckbxIsLicensed.setBounds(266, 57, 97, 23); panel_1.add(chckbxIsLicensed); chckbxIsInternetBlocked = new JCheckBox(""); chckbxIsInternetBlocked.setBounds(266, 85, 97, 23); + chckbxIsInternetBlocked.setEnabled(false); panel_1.add(chckbxIsInternetBlocked); JLabel lblInternetIstInnerhalb = new JLabel( @@ -178,6 +193,18 @@ public class EditImageTechnisch_GUI extends JFrame { panel_1.add(lblBetriebssystem); comboBox = new JComboBox<String>(); + comboBox.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + + //if windows is selected, always set isLicensed()=true + if(comboBox.getSelectedItem().toString().startsWith("Windows")){ + chckbxIsLicensed.setSelected(true); + } + } + }); + + + List<String> os = null; try { os=client.getAllOS(SessionData.session.getAuthToken()); @@ -361,7 +388,7 @@ public class EditImageTechnisch_GUI extends JFrame { try { //check if user may change permissions and choose window - if(client.userIsImageAdmin(Image.image.getImageId(),SessionData.session.getAuthToken(), person.verantwortlicher.getUserID()) == true){ + if(client.userIsImageAdmin(Image.image.getImageId(),SessionData.session.getAuthToken(), person.verantwortlicher.getUserID()) == true || (person.verantwortlicher.getRole().equals("Admin"))) { //user has permission, go to permission GUI PermissionEditImage_GUI ea=new PermissionEditImage_GUI(c); ea.setVisible(true); diff --git a/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java index 324ae01a..d5ab0330 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPCreateUploader_GUI.java @@ -55,6 +55,7 @@ import config.Config; import ftp.UploadTask; import gui.intro.About_GUI; import gui.intro.MainMenue_GUI; +import gui.lecture.CreateLectureAllgemein_GUI; @SuppressWarnings("serial") public class FTPCreateUploader_GUI extends JFrame implements @@ -63,8 +64,8 @@ public class FTPCreateUploader_GUI extends JFrame implements /** * Logger instance for this class. */ - private final static Logger LOGGER = Logger.getLogger(FTPCreateUploader_GUI.class); - + private final static Logger LOGGER = Logger + .getLogger(FTPCreateUploader_GUI.class); @SuppressWarnings("unused") private JPanel contentPane; @@ -99,18 +100,15 @@ public class FTPCreateUploader_GUI extends JFrame implements private boolean isCurrentlyLoading = false; // currently up or downloading // file Component c = null; - private boolean isAborted = false; //down- or upload was manually aborted + private boolean isAborted = false; // down- or upload was manually aborted private String uuid; - - private static final String HELP_MESSAGE = "<html><div align = \"center\">" + - "Laden Sie hier Ihre .vmdk-Datei hoch, die dann als virtuelles Labor geladen werden kann.<br />" + - "Wichtig ist, dass Sie zum Schluss auf \"Fertigstellen\" klicken, damit die Daten übernommen werden.<br />" + - "Wenn Sie die Datei hochgeladen haben, dann aber auf \"zurück\" klicken, oder die Anwendung beenden,<br />" + - "werden die Daten NICHT übernommen und auch die .vmdk-Datei wird nicht aktiv geschaltet." + - "</div></html>"; - - + private static final String HELP_MESSAGE = "<html><div align = \"center\">" + + "Laden Sie hier Ihre .vmdk-Datei hoch, die dann als virtuelles Labor geladen werden kann.<br />" + + "Wichtig ist, dass Sie zum Schluss auf \"Fertigstellen\" klicken, damit die Daten übernommen werden.<br />" + + "Wenn Sie die Datei hochgeladen haben, dann aber auf \"zurück\" klicken, oder die Anwendung beenden,<br />" + + "werden die Daten NICHT übernommen und auch die .vmdk-Datei wird nicht aktiv geschaltet." + + "</div></html>"; /** * Create the frame. @@ -123,8 +121,9 @@ public class FTPCreateUploader_GUI extends JFrame implements { uuid = client.createRandomUUID(SessionData.session.getAuthToken()); + } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); } @@ -148,7 +147,7 @@ public class FTPCreateUploader_GUI extends JFrame implements try { client.DeleteFtpUser(user.userName, SessionData.session.getAuthToken()); } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); } task.cancel(true); @@ -175,12 +174,12 @@ public class FTPCreateUploader_GUI extends JFrame implements }// end window closing }); setResizable(false); - + try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) { - // TODO Auto-generated catch block + e.printStackTrace(); JOptionPane.showMessageDialog(c, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", @@ -189,13 +188,12 @@ public class FTPCreateUploader_GUI extends JFrame implements // filename=name; setBackground(Color.WHITE); - setTitle("Dozentenmodul - Image erzeugen"); + setTitle("Dozentenmodul - Image erzeugen - "+person.verantwortlicher.getUserID()); // Aktion die beim Schliessen durchgefuehrt werden soll setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); - getContentPane().setLayout(new BorderLayout()); contentPanel.setBackground(SystemColor.menu); @@ -402,7 +400,7 @@ public class FTPCreateUploader_GUI extends JFrame implements client.DeleteFtpUser(user.userName,SessionData.session.getAuthToken()); LOGGER.info("Deleted FTP user."); } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); } task.cancel(true); @@ -425,19 +423,28 @@ public class FTPCreateUploader_GUI extends JFrame implements btnFinish.setEnabled(false); btnFinish.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - - //save data + + // save data boolean success = writeData(); - if(success==true){ - LOGGER.info("Neues Image '"+Image.image.getImagename()+"' erfolgreich gespeichert."); - JOptionPane.showMessageDialog(c, - "Die Daten wurden erfolgreich gespeichert.", "Daten gespeichert", - JOptionPane.INFORMATION_MESSAGE); + if (success == true) { + LOGGER.info("Neues Image '" + + Image.image.getImagename() + + "' erfolgreich gespeichert."); + JOptionPane + .showMessageDialog( + c, + "Die Daten wurden erfolgreich gespeichert.", + "Daten gespeichert", + JOptionPane.INFORMATION_MESSAGE); } else { - LOGGER.info("Neues Image '"+Image.image.getImagename()+"' konnte nicht gespeichert werden."); - JOptionPane.showMessageDialog(c, - "Die Daten konnten nicht gespeichert werden.", "Fehler", - JOptionPane.ERROR_MESSAGE); + LOGGER.info("Neues Image '" + + Image.image.getImagename() + + "' konnte nicht gespeichert werden."); + JOptionPane + .showMessageDialog( + c, + "Die Daten konnten nicht gespeichert werden.", + "Fehler", JOptionPane.ERROR_MESSAGE); } File f = new File(lblPath.getText().trim()); @@ -449,30 +456,52 @@ public class FTPCreateUploader_GUI extends JFrame implements Config.setLastUploadPath(f.getParentFile() .toString()); } - + // save configuration Config.store(); - dispose(); - MainMenue_GUI m = new MainMenue_GUI(c); - m.setVisible(true); - + // dispose(); + // MainMenue_GUI m = new MainMenue_GUI(c); + // m.setVisible(true); + if (taskrun == true) { try { client.DeleteFtpUser(user.userName,SessionData.session.getAuthToken()); } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); - JOptionPane.showMessageDialog( - c, - e1.getCause() + "\n" - + e1.getStackTrace(), + JOptionPane.showMessageDialog(c, e1.getCause() + + "\n" + e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } task.cancel(true); } + + // Erstellung Array vom Datentyp Object, Hinzufügen der + // Optionen + Object[] options = { "Neue Veranstaltung erstellen", + "Zum Hauptmenü zurückkehren" }; + + int choice = JOptionPane.showOptionDialog(c, + "Möchten Sie eine neue Veranstaltung zu diesem Image erstellen oder in das Hauptmenü zurückkehren?", "Alternativen", + JOptionPane.DEFAULT_OPTION, + JOptionPane.INFORMATION_MESSAGE, null, options, + options[0]); + + // 0=New Lecture, 1=Main Menu + if (choice == 0) { + dispose(); + CreateLectureAllgemein_GUI cl = new CreateLectureAllgemein_GUI( + c); + cl.setVisible(true); + } else { + dispose(); + MainMenue_GUI m = new MainMenue_GUI(c); + m.setVisible(true); + } + } }); @@ -493,18 +522,18 @@ public class FTPCreateUploader_GUI extends JFrame implements try { client.DeleteFtpUser(user.userName,SessionData.session.getAuthToken()); } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); } task.cancel(true); // not loading files, go back one page dispose(); - PermissionCreateImage_GUI m = new PermissionCreateImage_GUI(c); - //m.setVisible(true); + PermissionCreateImage_GUI m = new PermissionCreateImage_GUI( + c); + // m.setVisible(true); }// end if choice } else { - int selectedOption = JOptionPane .showConfirmDialog( @@ -513,17 +542,17 @@ public class FTPCreateUploader_GUI extends JFrame implements "Abbrechen und zurück", JOptionPane.YES_NO_OPTION); if (selectedOption == JOptionPane.YES_OPTION) { - //System.out.println("CreateUploader X:"+formerGUI.getLocation().getX()); - //System.out.println("CreateUploader X:"+formerGUI.getLocation().getY()); - PermissionCreateImage_GUI m = new PermissionCreateImage_GUI(c); - //m.setLocationRelativeTo(formerGUI); + // System.out.println("CreateUploader X:"+formerGUI.getLocation().getX()); + // System.out.println("CreateUploader X:"+formerGUI.getLocation().getY()); + PermissionCreateImage_GUI m = new PermissionCreateImage_GUI( + c); + // m.setLocationRelativeTo(formerGUI); m.setVisible(true); dispose(); - + } else { // for actions if "no" is selected. tbd. } - }// end else }// end action @@ -551,7 +580,7 @@ public class FTPCreateUploader_GUI extends JFrame implements windows = new URI(Links.getFAQ()); OpenLinks.openWebpage(windows); } catch (URISyntaxException e) { - // TODO Auto-generated catch block + e.printStackTrace(); } } @@ -569,7 +598,7 @@ public class FTPCreateUploader_GUI extends JFrame implements windows = new URI(Links.getOTRS()); open.openWebpage(windows); } catch (URISyntaxException e) { - // TODO Auto-generated catch block + e.printStackTrace(); } } @@ -585,16 +614,18 @@ public class FTPCreateUploader_GUI extends JFrame implements }); menu.add(mntmAbout); setVisible(true); - + JMenu mnNewMenu_Info = new JMenu("Info"); mnNewMenu_Info.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent arg0) { - JOptionPane.showMessageDialog(c, HELP_MESSAGE, "Hilfe zu dieser Oberfläche", JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(c, HELP_MESSAGE, + "Hilfe zu dieser Oberfläche", + JOptionPane.INFORMATION_MESSAGE); } }); menuBar.add(mnNewMenu_Info); - //System.out.println("userID is: "+person.verantwortlicher.getUserID()); + c = this; } @@ -609,11 +640,11 @@ public class FTPCreateUploader_GUI extends JFrame implements LOGGER.info("Getting FTP User..."); user = client.getFtpUser(SessionData.session.getAuthToken()); LOGGER.info("Received FTP user."); - //LOGGER.debug("FTP name: " + user.userName); - //LOGGER.debug("FTP path: " + user.path); - //LOGGER.debug("FTP pass: " + user.password); + // LOGGER.debug("FTP name: " + user.userName); + // LOGGER.debug("FTP path: " + user.path); + // LOGGER.debug("FTP pass: " + user.password); } catch (TException e) { - // TODO Auto-generated catch block + LOGGER.error("Konnte vom Satellit keinen FTP-User erhalten!"); e.printStackTrace(); JOptionPane.showMessageDialog(c, @@ -622,10 +653,10 @@ public class FTPCreateUploader_GUI extends JFrame implements } DateFormat formatter = new SimpleDateFormat("yyyMMddHHmmss"); - //LOGGER.info("Setting new name: " + formatter.format(new Date()) + "_" - // + person.verantwortlicher.getHochschule() + "_" - // + person.verantwortlicher.getUsername() + "_" - // + Image.image.getImagename() + ".vmdk"); + // LOGGER.info("Setting new name: " + formatter.format(new Date()) + "_" + // + person.verantwortlicher.getHochschule() + "_" + // + person.verantwortlicher.getUsername() + "_" + // + Image.image.getImagename() + ".vmdk"); Image.image.setNewName(formatter.format(new Date()) + "_" + person.verantwortlicher.getHochschule() + "_" + person.verantwortlicher.getUsername() + "_" @@ -653,9 +684,10 @@ public class FTPCreateUploader_GUI extends JFrame implements // Fertigstellen erlauben wenn upload abgeschlossen und abbrechen // erlauben wenn kein load aktiv ist - if (isCurrentlyLoading() == false || progressBar.getPercentComplete() == 1.0) { + if (isCurrentlyLoading() == false + || progressBar.getPercentComplete() == 1.0) { // no upload - //LOGGER.info("finished uploading file"); + // LOGGER.info("finished uploading file"); btnUploadStoppen.setEnabled(false); btnFinish.setEnabled(true); } else { @@ -668,8 +700,7 @@ public class FTPCreateUploader_GUI extends JFrame implements speed = (double) arg0.getNewValue(); // if(speed<=1){ - lblUpSpeed.setText(String.format("%.2f", speed) - + " MB/s"); + lblUpSpeed.setText(String.format("%.2f", speed) + " MB/s"); } if ("bytesread" == arg0.getPropertyName()) { @@ -701,7 +732,7 @@ public class FTPCreateUploader_GUI extends JFrame implements public boolean writeData() { try { - + client.writeVLdata( Image.image.getImagename(), Image.image.getDesc(), @@ -721,7 +752,8 @@ public class FTPCreateUploader_GUI extends JFrame implements person.verantwortlicher.getUserID() ); - System.out.println("userID is: "+person.verantwortlicher.getUserID()); + //System.out.println("userID is: "+person.verantwortlicher.getUserID()); + System.out.println("starting file copy..."); client.startFileCopy(Image.image.getNewName(),SessionData.session.getAuthToken()); client.writeImageRights(uuid,SessionData.session.getAuthToken(),person.verantwortlicher.getRole(),person.verantwortlicher.getHochschule(), person.verantwortlicher.getUserID()); @@ -738,22 +770,11 @@ public class FTPCreateUploader_GUI extends JFrame implements RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageAdmin(), SessionData.session.getAuthToken() ); - /* - LOGGER.info( - "Name: "+Image.image.getImagename() - +"\tUserID: "+RightsManagement.rightsManagement.getPermittedUserList().get(i).getUserID() - +"\tisImageRead: "+RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageRead() - +"\tisImageWrite: "+RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageWrite() - +"\tisImageLInkAllowed: "+RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageLinkAllowed() - +"\tisImageAdmin: "+RightsManagement.rightsManagement.getPermittedUserList().get(i).isImageAdmin() - ); - */ - - }//end for - - + + }// end for + } catch (TException e) { - // TODO Auto-generated catch block + e.printStackTrace(); JOptionPane.showMessageDialog(c, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", diff --git a/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java index 34e3efb3..437f6c77 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPEditDownloader_GUI.java @@ -40,6 +40,7 @@ import javax.swing.border.EmptyBorder; import models.Image; import models.Links; import models.SessionData; +import models.person; import org.apache.log4j.Logger; import org.apache.thrift.TException; @@ -99,16 +100,16 @@ public class FTPEditDownloader_GUI extends JFrame implements private boolean isCurrentlyLoading = false; // currently up or downloading // file private boolean isAborted = false; // down- or upload was manually aborted - private static final String HELP_MESSAGE = "<html><div align=\"center\">" + - "Hier können Sie Images herunterladen.<br />" + - "Klicken Sie anschließend auf \"Zurück\", um zu Ihrer vorherigen Auswahl zurückzugelangen.<br />" + - "</div></html>"; + private static final String HELP_MESSAGE = "<html><div align=\"center\">" + + "Hier können Sie Images herunterladen.<br />" + + "Klicken Sie anschließend auf \"Zurück\", um zu Ihrer vorherigen Auswahl zurückzugelangen.<br />" + + "</div></html>"; /** * Create the frame. */ public FTPEditDownloader_GUI(Component formerGUI) { - + final Object[] options = { "Beenden", "Abbrechen" }; @@ -137,7 +138,7 @@ public class FTPEditDownloader_GUI extends JFrame implements e1.printStackTrace(); } } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); } task.cancel(true); @@ -160,12 +161,12 @@ public class FTPEditDownloader_GUI extends JFrame implements UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) { - // TODO Auto-generated catch block + e.printStackTrace(); } setBackground(Color.WHITE); - setTitle("Dozentenmodul - Image herunterladen"); + setTitle("Dozentenmodul - Image herunterladen - "+person.verantwortlicher.getUserID()); // Aktion die beim Schliessen durchgefuehrt werden soll setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); @@ -311,6 +312,15 @@ public class FTPEditDownloader_GUI extends JFrame implements label_1.setForeground(Color.BLUE); label_1.setBounds(20, 92, 61, 20); contentPanel.add(label_1); + label_1.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent arg0) { + // oeffnet das Hauptmenue + dispose(); + MainMenue_GUI main = new MainMenue_GUI(c); + main.setVisible(true); + } + }); JLabel label_2 = new JLabel(">"); label_2.setBounds(80, 95, 14, 14); @@ -345,8 +355,7 @@ public class FTPEditDownloader_GUI extends JFrame implements lblSchritt_3.setBounds(20, 423, 57, 14); contentPanel.add(lblSchritt_3); - JLabel lblKlickenSieAuf = new JLabel( - "Klicken Sie auf \"Zurück\"."); + JLabel lblKlickenSieAuf = new JLabel("Klicken Sie auf \"Zurück\"."); lblKlickenSieAuf.setBounds(102, 423, 241, 14); contentPanel.add(lblKlickenSieAuf); @@ -367,7 +376,7 @@ public class FTPEditDownloader_GUI extends JFrame implements windows = new URI(Links.getFAQ()); open.openWebpage(windows); } catch (URISyntaxException e) { - // TODO Auto-generated catch block + e.printStackTrace(); } } @@ -385,7 +394,7 @@ public class FTPEditDownloader_GUI extends JFrame implements windows = new URI(Links.getOTRS()); open.openWebpage(windows); } catch (URISyntaxException e) { - // TODO Auto-generated catch block + e.printStackTrace(); } } @@ -415,7 +424,7 @@ public class FTPEditDownloader_GUI extends JFrame implements anleitung = new URI(Links.getAnleitungVMDK()); open.openWebpage(anleitung); } catch (URISyntaxException e) { - // TODO Auto-generated catch block + e.printStackTrace(); } } @@ -430,7 +439,7 @@ public class FTPEditDownloader_GUI extends JFrame implements client.DeleteFtpUser(user.userName,SessionData.session.getAuthToken()); LOGGER.info("FTP user deleted."); } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); } task.cancel(true); @@ -468,12 +477,13 @@ public class FTPEditDownloader_GUI extends JFrame implements try { client.DeleteFtpUser(user.userName,SessionData.session.getAuthToken()); } catch (TException e1) { - // TODO Auto-generated catch block + e1.printStackTrace(); } // go back one page - SearchEditImage_GUI se = new SearchEditImage_GUI(c); + SearchEditImage_GUI se = new SearchEditImage_GUI( + c); se.setVisible(true); dispose(); }// end choice @@ -503,16 +513,18 @@ public class FTPEditDownloader_GUI extends JFrame implements } } setVisible(true); - + JMenu mnNewMenu_Info = new JMenu("Info"); mnNewMenu_Info.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent arg0) { - JOptionPane.showMessageDialog(c, HELP_MESSAGE, "Hilfe zu dieser Oberfläche", JOptionPane.INFORMATION_MESSAGE); + JOptionPane.showMessageDialog(c, HELP_MESSAGE, + "Hilfe zu dieser Oberfläche", + JOptionPane.INFORMATION_MESSAGE); } }); menuBar.add(mnNewMenu_Info); - + c = this; } @@ -533,7 +545,7 @@ public class FTPEditDownloader_GUI extends JFrame implements Image.image.getVersion(),SessionData.session.getAuthToken()); } catch (TException e) { - // TODO Auto-generated catch block + e.printStackTrace(); JOptionPane.showMessageDialog(c, e.getCause() + "\n" + e.getStackTrace(), "Debug-Message", @@ -566,9 +578,10 @@ public class FTPEditDownloader_GUI extends JFrame implements } // Button zum Fertigstellen freischalten, wenn 100% erreicht sind - if (isCurrentlyLoading() == false || progressBar.getPercentComplete() == 1.0) { + if (isCurrentlyLoading() == false + || progressBar.getPercentComplete() == 1.0) { // no download - //LOGGER.info("finished downloading file"); + // LOGGER.info("finished downloading file"); btnDownloadStoppen.setEnabled(false); } else { // currently uploading, don't let user interact diff --git a/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java index 18925ff7..597ac36b 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPEditUploader_GUI.java @@ -179,7 +179,7 @@ public class FTPEditUploader_GUI extends JFrame implements // filename=name; setBackground(Color.WHITE); - setTitle("Dozentenmodul - Image bearbeiten"); + setTitle("Dozentenmodul - Image bearbeiten - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -322,6 +322,16 @@ public class FTPEditUploader_GUI extends JFrame implements lblNewLabel_1.setForeground(Color.BLUE); lblNewLabel_1.setBounds(20, 88, 61, 20); contentPanel.add(lblNewLabel_1); + lblNewLabel_1.addMouseListener(new MouseAdapter() { + @Override + public void mouseClicked(MouseEvent arg0) { + // oeffnet das Hauptmenue + dispose(); + MainMenue_GUI main = new MainMenue_GUI(c); + main.setVisible(true); + } + }); + JLabel label_3 = new JLabel(">"); label_3.setBounds(80, 91, 14, 14); @@ -468,7 +478,9 @@ public class FTPEditUploader_GUI extends JFrame implements // not loading files, go back one page try { - if(client.userIsImageAdmin(Image.image.getImageId(), SessionData.session.getAuthToken(),person.verantwortlicher.getUserID()) == true){ + + if(client.userIsImageAdmin(Image.image.getImageId(), SessionData.session.getAuthToken(),person.verantwortlicher.getUserID()) == true || person.verantwortlicher.getRole().equals("Admin")){ + //user is admin and may change permissions PermissionEditImage_GUI ei = new PermissionEditImage_GUI(c); ei.setVisible(true); diff --git a/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java b/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java index fea3ae42..f7238b03 100644 --- a/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/FTPSearchDownloader_GUI.java @@ -39,6 +39,7 @@ import javax.swing.border.EmptyBorder; import models.Image; import models.Links; import models.SessionData; +import models.person; import org.apache.log4j.Logger; import org.apache.thrift.TException; @@ -170,7 +171,7 @@ public class FTPSearchDownloader_GUI extends JFrame implements } setBackground(Color.WHITE); - setTitle("Dozentenmodul - Image herunterladen"); + setTitle("Dozentenmodul - Image herunterladen - "+person.verantwortlicher.getUserID()); // Aktion die beim Schliessen durchgefuehrt werden soll setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); setBounds(0, 0, 603, 722); diff --git a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java index b7f2e8ae..53c30efc 100644 --- a/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/PermissionCreateImage_GUI.java @@ -76,7 +76,7 @@ public class PermissionCreateImage_GUI extends JFrame { String[] result; private JTable table = null; private Class[] classes; - Object[] titles = { "Name", "Read", "Write", "Link", "Admin", "userID" }; + Object[] titles = { "Name", "Lesen", "Schreiben", "Link", "Admin", "userID" }; private List<Person> map = null; // List of people who have rights Component c = null; @@ -111,7 +111,7 @@ public class PermissionCreateImage_GUI extends JFrame { private JLabel lblLinkallowedDesc; private static final String HELP_MESSAGE = "<html><div align=\"center\">" + "Legen Sie fest, welche Personen welche Rechte an Ihrem Image haben.<br />" - + "Sie können die Rechte read, write, link und admin vergeben.<br />" + + "Sie können die Rechte Lesen, Schreiben, Link und Admin vergeben.<br />" + "Link bedeutet, dass diese Person Veranstaltungen auf Ihr Image verlinken darf und dieses somit<br />" + "implizit freigeben darf. Eine Person mit Adminrechten darf zusätzlich das Image löschen und Berechtigungen<br />" + "für andere Benutzer festlegen und ist somit wie der Besitzer zu betrachten." @@ -145,7 +145,7 @@ public class PermissionCreateImage_GUI extends JFrame { // TODO Auto-generated catch block e.printStackTrace(); } - setTitle("bwLehrpool Suite - Image bearbeiten"); + setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -413,11 +413,11 @@ public class PermissionCreateImage_GUI extends JFrame { contentPanel.add(panel_2); panel_2.setLayout(null); - lblRead = new JLabel("Read"); + lblRead = new JLabel("Lesen"); lblRead.setBounds(28, 18, 90, 20); panel_2.add(lblRead); - lblWrite = new JLabel("Write"); + lblWrite = new JLabel("Schreiben"); lblWrite.setBounds(28, 38, 90, 20); panel_2.add(lblWrite); @@ -430,17 +430,17 @@ public class PermissionCreateImage_GUI extends JFrame { panel_2.add(lblLinkallowed); lblReadDesc = new JLabel( - "Image ist in bwLehrpool Suite und VMchooser sichtbar."); + "Benutzer kann Image in bwLehrpool Suite sehen."); lblReadDesc.setBounds(128, 18, 380, 20); panel_2.add(lblReadDesc); lblWriteDesc = new JLabel( - "Image anpassen und überschreiben, jedoch nicht löschen."); + "Image sehen, anpassen und überschreiben, jedoch nicht löschen."); lblWriteDesc.setBounds(128, 38, 380, 20); panel_2.add(lblWriteDesc); lblAdminDesc = new JLabel( - "<HTML>Volle Rechte: read, write, löschen, Link und<br>Berechtigungen für andere Benutzer festlegen.</HTML>"); + "<HTML>Volle Rechte: Lesen, Schreiben, Löschen, Link und<br>Berechtigungen für andere Benutzer festlegen.</HTML>"); lblAdminDesc.setBounds(128, 78, 380, 40); panel_2.add(lblAdminDesc); diff --git a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java index 17b083a3..6853f6d7 100644 --- a/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/PermissionEditImage_GUI.java @@ -71,7 +71,7 @@ public class PermissionEditImage_GUI extends JFrame { String[] result; private JTable table; private Class[] classes; - Object[] titles = { "Name", "Read", "Write", "Link", "Admin", "userID" }; + Object[] titles = { "Name", "Lesen", "Schreiben", "Link", "Admin", "userID" }; private List<Person> map = null; // List of people who have rights Component c = null; @@ -101,7 +101,7 @@ public class PermissionEditImage_GUI extends JFrame { private JLabel lblvolleRechteRead; private static final String HELP_MESSAGE = "<html><div align=\"center\">" + "Verändern Sie die Berechtigungen für Ihr Image.<br />" - + "Sie können die Rechte read, write, link und admin vergeben.<br />" + + "Sie können die Rechte Lesen, Schreiben, Link und Admin vergeben.<br />" + "Link bedeutet, dass diese Person Veranstaltungen auf Ihr Image verlinken darf und dieses somit<br />" + "implizit freigeben darf. Eine Person mit Adminrechten darf zusätzlich das Image löschen und Berechtigungen<br />" + "für andere Benutzer festlegen und ist somit wie der Besitzer zu betrachten." @@ -131,7 +131,7 @@ public class PermissionEditImage_GUI extends JFrame { // TODO Auto-generated catch block e.printStackTrace(); } - setTitle("bwLehrpool Suite - Image bearbeiten"); + setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -401,21 +401,21 @@ public class PermissionEditImage_GUI extends JFrame { TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel.setBackground(SystemColor.menu); - JLabel label = new JLabel("Read"); + JLabel label = new JLabel("Lesen"); label.setBounds(28, 18, 90, 20); panel.add(label); - JLabel label_3 = new JLabel("Write"); + JLabel label_3 = new JLabel("Schreiben"); label_3.setBounds(28, 38, 90, 20); panel.add(label_3); JLabel lblImageLesenUnd = new JLabel( - "Image ist in bwLehrpool Suite und VMchooser sichtbar."); + "Benutzer kann Image in bwLehrpool Suite sehen."); lblImageLesenUnd.setBounds(128, 18, 380, 20); panel.add(lblImageLesenUnd); JLabel lblImageAnpassenUnd = new JLabel( - "Image anpassen und überschreiben, jedoch nicht löschen."); + "Image sehen, anpassen und überschreiben, jedoch nicht löschen."); lblImageAnpassenUnd.setBounds(128, 38, 380, 20); panel.add(lblImageAnpassenUnd); @@ -433,7 +433,7 @@ public class PermissionEditImage_GUI extends JFrame { panel.add(label_6); lblvolleRechteRead = new JLabel( - "<HTML>Volle Rechte: read, write, löschen, Link und<br>Berechtigungen für andere Benutzer festlegen.</HTML>"); + "<HTML>Volle Rechte: Lesen, Schreiben, Löschen, Link und<br>Berechtigungen für andere Benutzer festlegen.</HTML>"); lblvolleRechteRead.setBounds(128, 78, 380, 40); panel.add(lblvolleRechteRead); { diff --git a/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java b/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java index 1b5feb6e..5e1607a8 100644 --- a/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/SearchEditImage_GUI.java @@ -140,6 +140,7 @@ public class SearchEditImage_GUI extends JFrame { RowFilter rf = null; List<RowFilter<Object,Object>> filters = new ArrayList<RowFilter<Object,Object>>(2); + private JLabel lblTotalResults; /** @@ -213,7 +214,7 @@ public class SearchEditImage_GUI extends JFrame { e.printStackTrace(); } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Image bearbeiten"); + setTitle("bwLehrpool Suite - Image bearbeiten - "+person.verantwortlicher.getUserID()); // Zentriert das Fenster in die Bildmitte setBounds(0, 0, 918, 722); setLocationRelativeTo(formerGUI); @@ -483,6 +484,10 @@ public class SearchEditImage_GUI extends JFrame { scrollPaneMyImage.setViewportView(tablemyImages); + + lblTotalResults = new JLabel("Anzahl:"); + lblTotalResults.setBounds(10, 512, 131, 20); + contentPanel.add(lblTotalResults); { JPanel buttonPane = new JPanel(); buttonPane.setBounds(0, 640, 902, 33); @@ -760,7 +765,7 @@ public class SearchEditImage_GUI extends JFrame { // Hole eine Liste der passenden Images, if(person.verantwortlicher.getRole()=="Admin"){ //get complete list - images = client.getImageList(person.verantwortlicher.getUserID()); + images = client.getImageList(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken()); } else { //only get permitted list images = client.getImageListPermissionWrite(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken()); @@ -795,7 +800,8 @@ public class SearchEditImage_GUI extends JFrame { x++; i.next(); } - //LOGGER.info("Finished counting crap, mo"+model.getRowCount()); + //show number if rows in GUI + lblTotalResults.setText(lblTotalResults.getText()+" "+model.getRowCount()); return model; } catch (TException | ParseException e1) { diff --git a/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java b/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java index e9decd1b..9aff1648 100644 --- a/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java +++ b/dozentenmodul/src/main/java/gui/image/SearchImage_GUI.java @@ -165,8 +165,7 @@ public class SearchImage_GUI extends JFrame { /**
* Create the dialog.
*/
- public SearchImage_GUI(Component formerGUI) {
-
+ public SearchImage_GUI(Component formerGUI) { addWindowListener(new WindowAdapter() {
@Override
@@ -302,7 +301,7 @@ public class SearchImage_GUI extends JFrame { e.printStackTrace();
}
// Setzt den Fenstertitel
- setTitle("bwLehrpool Suite - Image suchen");
+ setTitle("bwLehrpool Suite - Image suchen - "+person.verantwortlicher.getUserID());
// Zentriert das Fenster in die Bildmitte
setBounds(0, 0, 918, 722);
setLocationRelativeTo(formerGUI);
@@ -503,29 +502,6 @@ public class SearchImage_GUI extends JFrame { tabbedPane = new JTabbedPane(JTabbedPane.TOP);
- //not needed anymore, as the filters are set by the full text search completely
- /*
- tabbedPane.addChangeListener(new ChangeListener() {
- public void stateChanged(ChangeEvent arg0) {
- if (tabbedPane.getSelectedIndex() == 0 && activeSearch == false)
- {
-
- String username = person.verantwortlicher.getName() + " "
- + person.verantwortlicher.getVorname();
- //rowSorterMyImages.setRowFilter(RowFilter.regexFilter(username, 4));
- }
- else if (tabbedPane.getSelectedIndex() == 1&& activeSearch == false)
- {
- //rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter("true", 8)); //--> caused bug: no initial list in public images
- }
- else if (tabbedPane.getSelectedIndex() == 2 && activeSearch == false)
- {
- //rowSorterAll.setRowFilter(null);
- }
-
- }
- });
- */
tabbedPane.setBounds(10, 158, 557, 339);
contentPanel.add(tabbedPane);
@@ -739,7 +715,7 @@ public class SearchImage_GUI extends JFrame { tableAllImages
.convertRowIndexToModel(tableAllImages
.getSelectedRow()),
- 8).equals("true") == true) {
+ 8).equals("true") == true || person.verantwortlicher.getRole().equals("Admin")) {
String imageid = modelAll
.getValueAt(
tableAllImages
@@ -785,6 +761,8 @@ public class SearchImage_GUI extends JFrame { });
btnDownload.setBounds(449, 508, 118, 23);
contentPanel.add(btnDownload);
+
+
{
JPanel buttonPane = new JPanel();
buttonPane.setBounds(0, 640, 902, 33);
@@ -1006,7 +984,7 @@ public class SearchImage_GUI extends JFrame { }
});
menuBar.add(mnNewMenu_Info);
-
+
c = this;
}
@@ -1019,7 +997,7 @@ public class SearchImage_GUI extends JFrame { // Hole eine Liste der Images
if(person.verantwortlicher.getRole()=="Admin"){
//get complete list
- images = client.getImageList(person.verantwortlicher.getUserID());
+ images = client.getImageList(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken());
} else {
images = client.getImageListPermissionRead(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken());
}
@@ -1050,6 +1028,9 @@ public class SearchImage_GUI extends JFrame { i.next();
}
+
+ //show number of rows in GUI
+ tabbedPane.setTitleAt(0, tabbedPane.getTitleAt(0)+" ("+model.getRowCount()+") ");
return model;
} catch (TException | ParseException e1) {
@@ -1066,7 +1047,7 @@ public class SearchImage_GUI extends JFrame { List<server.generated.Image> images;
try {
// Hole eine Liste der Images
- images = client.getImageList(SessionData.session.getAuthToken());
+ images = client.getImageList(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken());
Iterator<server.generated.Image> i = images.iterator();
SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -1096,6 +1077,8 @@ public class SearchImage_GUI extends JFrame { i.next();
}
+ //show number of rows in GUI
+ tabbedPane.setTitleAt(2, tabbedPane.getTitleAt(2)+" ("+model.getRowCount()+") ");
return model;
} catch (TException | ParseException e1) {
@@ -1141,6 +1124,8 @@ public class SearchImage_GUI extends JFrame { i.next();
}
+ //show number of rows in GUI
+ tabbedPane.setTitleAt(1, tabbedPane.getTitleAt(1)+" ("+model.getRowCount()+") ");
return model;
} catch (TException | ParseException e1) {
diff --git a/dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java b/dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java index 01b4aaeb..a171cd57 100644 --- a/dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java +++ b/dozentenmodul/src/main/java/gui/intro/MainMenue_GUI.java @@ -184,7 +184,7 @@ public class MainMenue_GUI extends JFrame { rdbtnImageNew = new JRadioButton("Neu"); rdbtnImageNew .setToolTipText("Hier können Sie ein neues Image anlegen und im Anschluss eine Veranstaltung darauf verlinken"); - rdbtnImageNew.setBounds(20, 22, 159, 23); + rdbtnImageNew.setBounds(20, 22, 244, 23); panelImage.add(rdbtnImageNew); buttonGroup.add(rdbtnImageNew); rdbtnImageNew.setBackground(SystemColor.menu); @@ -192,7 +192,7 @@ public class MainMenue_GUI extends JFrame { rdbtnImageEdit = new JRadioButton("Bearbeiten"); rdbtnImageEdit .setToolTipText("Hier können Sie ein bereits angelegtes Image bearbeiten"); - rdbtnImageEdit.setBounds(20, 48, 185, 23); + rdbtnImageEdit.setBounds(20, 48, 244, 23); panelImage.add(rdbtnImageEdit); buttonGroup.add(rdbtnImageEdit); rdbtnImageEdit.setHorizontalAlignment(SwingConstants.LEFT); @@ -205,16 +205,16 @@ public class MainMenue_GUI extends JFrame { .setToolTipText("Löschen Sie hier Images, die Sie nicht mehr benötigen"); rdbtnImageDelete.setHorizontalAlignment(SwingConstants.LEFT); rdbtnImageDelete.setBackground(SystemColor.menu); - rdbtnImageDelete.setBounds(20, 74, 185, 23); + rdbtnImageDelete.setBounds(20, 74, 244, 23); panelImage.add(rdbtnImageDelete); - rdbtnImageSearchDownload = new JRadioButton("Suche und Download"); + rdbtnImageSearchDownload = new JRadioButton("Suche und Download (inkl. Vorlagen)"); buttonGroup.add(rdbtnImageSearchDownload); rdbtnImageSearchDownload .setToolTipText("Hier können Sie ein bestehendes Labor zum verändern downloaden"); rdbtnImageSearchDownload.setHorizontalAlignment(SwingConstants.LEFT); rdbtnImageSearchDownload.setBackground(SystemColor.menu); - rdbtnImageSearchDownload.setBounds(20, 100, 185, 23); + rdbtnImageSearchDownload.setBounds(20, 100, 244, 23); panelImage.add(rdbtnImageSearchDownload); JPanel panelDesc = new JPanel(); @@ -253,7 +253,7 @@ public class MainMenue_GUI extends JFrame { buttonGroup.add(rdbtnLectureNew); rdbtnLectureNew .setToolTipText("Erzeugen Sie Veranstaltungen, die dann im VMChooser erscheinen und mit denen Ihre Studierenden arbeiten können - hierzu benötigen Sie ein Image"); - rdbtnLectureNew.setBounds(20, 24, 185, 23); + rdbtnLectureNew.setBounds(20, 24, 230, 23); panelVeranstaltung.add(rdbtnLectureNew); rdbtnLectureNew.setBackground(SystemColor.menu); @@ -268,7 +268,7 @@ public class MainMenue_GUI extends JFrame { rdbtnLectureDelete = new JRadioButton("Löschen"); rdbtnLectureDelete .setToolTipText("Löschen Sie nicht mehr benötigte Veranstaltungen"); - rdbtnLectureDelete.setBounds(20, 76, 175, 23); + rdbtnLectureDelete.setBounds(20, 76, 230, 23); panelVeranstaltung.add(rdbtnLectureDelete); buttonGroup.add(rdbtnLectureDelete); rdbtnLectureDelete.setBackground(SystemColor.menu); @@ -278,7 +278,7 @@ public class MainMenue_GUI extends JFrame { rdbtnLectureSearch .setToolTipText("Hier können Sie wahlweise nach Ihren eigenen, aber auch nach allen verfügbaren Veranstaltungen suchen"); rdbtnLectureSearch.setBackground(SystemColor.menu); - rdbtnLectureSearch.setBounds(20, 102, 175, 23); + rdbtnLectureSearch.setBounds(20, 102, 230, 23); panelVeranstaltung.add(rdbtnLectureSearch); JPanel panelNews = new JPanel(); @@ -472,19 +472,7 @@ public class MainMenue_GUI extends JFrame { JMenu mnNewMenu_1 = new JMenu("Hilfe"); menuBar.add(mnNewMenu_1); - - //Template for Help-Buttons - /* - JMenu mnNewMenu_Info = new JMenu("Info"); - mnNewMenu_Info.addMouseListener(new MouseAdapter() { - @Override - public void mouseClicked(MouseEvent arg0) { - JOptionPane.showMessageDialog(null, HELP_MESSAGE, "Hilfe zu dieser Oberfläche", JOptionPane.INFORMATION_MESSAGE); - } - }); - menuBar.add(mnNewMenu_Info); - * - */ + JMenuItem mntmFaq = new JMenuItem("FAQ"); diff --git a/dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java b/dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java index 9ea9f779..9dc90eb3 100644 --- a/dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/CreateLectureAllgemein_GUI.java @@ -118,7 +118,7 @@ public class CreateLectureAllgemein_GUI extends JFrame { e.printStackTrace(); } - setTitle("bwLehrpool Suite - Veranstaltung erzeugen"); + setTitle("bwLehrpool Suite - Veranstaltung erzeugen - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); diff --git a/dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java b/dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java index 2549e60f..ea1c7b88 100644 --- a/dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/CreateLectureLink_GUI.java @@ -100,6 +100,7 @@ public class CreateLectureLink_GUI extends JFrame { boolean activeSearch = false; Component c = null; private JTextField textFieldName; + private JLabel lblTotalResults; private String uuid = null; String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", "Letztes Update", "ID", "Version", "Template", "Beschreibung" }; @@ -215,7 +216,7 @@ public class CreateLectureLink_GUI extends JFrame { e.printStackTrace(); } - setTitle("bwLehrpool Suite - Veranstaltung erzeugen"); + setTitle("bwLehrpool Suite - Veranstaltung erzeugen - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 918, 722); setLocationRelativeTo(formerGUI); @@ -415,6 +416,10 @@ public class CreateLectureLink_GUI extends JFrame { tablemyImages.setRowSorter(rowSorterMyImages); scrollPaneMyImage.setViewportView(tablemyImages); + + lblTotalResults = new JLabel("Anzahl:"); + lblTotalResults.setBounds(10, 512, 131, 20); + contentPanel.add(lblTotalResults); { JPanel buttonPane = new JPanel(); @@ -668,6 +673,7 @@ public class CreateLectureLink_GUI extends JFrame { textAreadesc = new JTextArea(); textAreadesc.setLineWrap(true); textAreadesc.setBackground(SystemColor.menu); + textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11)); scrollPane.setViewportView(textAreadesc); JMenuBar menuBar = new JMenuBar(); @@ -761,7 +767,7 @@ public class CreateLectureLink_GUI extends JFrame { // Hole eine Liste der Images if(person.verantwortlicher.getRole()=="Admin"){ //get complete list - images = client.getImageList(person.verantwortlicher.getUserID()); + images = client.getImageList(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken()); } else { images = client.getImageListPermissionLink(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken()); } @@ -788,6 +794,8 @@ public class CreateLectureLink_GUI extends JFrame { i.next(); } + //show number if rows in GUI + lblTotalResults.setText(lblTotalResults.getText()+" "+model.getRowCount()); return model; diff --git a/dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java index 6d908413..3e010696 100644 --- a/dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/DeleteLecture_GUI.java @@ -83,6 +83,7 @@ public class DeleteLecture_GUI extends JFrame { JLabel labelVerantwortlicher; JTable tablemyLectures; private JTextField textFieldName; + private JLabel lblTotalResults; boolean activeSearch = false; String[] titles = { "Veranstaltungsname", "Beschreibung", "Gültigkeitsdatum", "Aktiv", "Letzte Benutzung", @@ -91,7 +92,14 @@ public class DeleteLecture_GUI extends JFrame { ThriftConnection con = new ThriftConnection(); Client client = models.Client.clientcon.getClient(); - final DefaultTableModel modelMyLectures = new DefaultTableModel(titles, 0); + final DefaultTableModel modelMyLectures = new DefaultTableModel(titles, 0){ + public boolean isCellEditable(int rowIndex, int mColIndex) { + return false; + } + }; + + + final TableRowSorter<TableModel> rowSorterMyLectures = new TableRowSorter<TableModel>( modelMyLectures); @@ -137,7 +145,6 @@ public class DeleteLecture_GUI extends JFrame { textFieldName.requestFocusInWindow(); try { initTableModel(modelMyLectures); - // initTableModel(modelAll); } catch (ParseException e) { @@ -199,7 +206,7 @@ public class DeleteLecture_GUI extends JFrame { e.printStackTrace(); } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Veranstaltung löschen"); + setTitle("bwLehrpool Suite - Veranstaltung löschen - "+person.verantwortlicher.getUserID()); // Zentriert das Fenster in die Bildmitte setBounds(0, 0, 842, 722); setLocationRelativeTo(formerGUI); @@ -312,6 +319,10 @@ public class DeleteLecture_GUI extends JFrame { JLabel label_2 = new JLabel(">"); label_2.setBounds(152, 11, 13, 14); contentPanel.add(label_2); + + lblTotalResults = new JLabel("Anzahl:"); + lblTotalResults.setBounds(10, 500, 131, 20); + contentPanel.add(lblTotalResults); JLabel lblNewLabel_1 = new JLabel("Löschen"); lblNewLabel_1.setBounds(166, 11, 155, 14); @@ -659,6 +670,10 @@ public class DeleteLecture_GUI extends JFrame { i.next(); } + + //show number if rows in GUI + lblTotalResults.setText(lblTotalResults.getText()+" "+model.getRowCount()); + return model; } catch (TException e1) { diff --git a/dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java b/dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java index eae7a49c..f9fdd8fb 100644 --- a/dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/EditLectureAllgemein_GUI.java @@ -118,7 +118,7 @@ public class EditLectureAllgemein_GUI extends JFrame { e.printStackTrace(); } - setTitle("bwLehrpool Suite - Veranstaltung bearbeiten"); + setTitle("bwLehrpool Suite - Veranstaltung bearbeiten - "+person.verantwortlicher.getUserID()); ; setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -505,7 +505,8 @@ public class EditLectureAllgemein_GUI extends JFrame { //check which GUI to open try { - if(client.userIsLectureAdmin(person.verantwortlicher.getUserID(), Lecture.lecture.getid(),SessionData.session.getAuthToken())){ + + if((client.userIsLectureAdmin(person.verantwortlicher.getUserID(), Lecture.lecture.getid(),SessionData.session.getAuthToken()) || (person.verantwortlicher.getRole().equals("Admin")))){ //user is admin of the lecture PermissionEditLecture_GUI ev = new PermissionEditLecture_GUI(c); ev.setVisible(true); diff --git a/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java b/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java index a92b2dec..001f1b44 100644 --- a/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/EditLectureLink_GUI.java @@ -167,9 +167,8 @@ public class EditLectureLink_GUI extends JFrame { @Override public void windowOpened(WindowEvent arg0) { try { - initTableModel(modelAll); + initTableModelAll(modelAll); initTableModel(modelMyImages); - //initTableModel(modelPublicVorlagen); initTableModelTemplates(modelPublicVorlagen); } catch (TException e) { @@ -292,7 +291,7 @@ public class EditLectureLink_GUI extends JFrame { e.printStackTrace(); } - setTitle("bwLehrpool Suite - Veranstaltung bearbeiten"); + setTitle("bwLehrpool Suite - Veranstaltung bearbeiten - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 918, 722); setLocationRelativeTo(formerGUI); @@ -630,7 +629,9 @@ public class EditLectureLink_GUI extends JFrame { //check which GUI to open try { - if(client.userIsLectureAdmin(person.verantwortlicher.getUserID(), Lecture.lecture.getid(),SessionData.session.getAuthToken())){ + + if(client.userIsLectureAdmin(person.verantwortlicher.getUserID(), Lecture.lecture.getid(),SessionData.session.getAuthToken()) || (person.verantwortlicher.getRole().equals("Admin"))){ + //user is admin of the lecture PermissionEditLecture_GUI ev = new PermissionEditLecture_GUI(c); ev.setVisible(true); @@ -1134,6 +1135,7 @@ public class EditLectureLink_GUI extends JFrame { textAreadesc = new JTextArea(); textAreadesc.setLineWrap(true); textAreadesc.setBackground(SystemColor.menu); + textAreadesc.setFont(new Font("Tahoma", Font.PLAIN, 11)); scrollPane.setViewportView(textAreadesc); JMenuBar menuBar = new JMenuBar(); @@ -1217,7 +1219,50 @@ public class EditLectureLink_GUI extends JFrame { // Hole eine Liste der Images if(person.verantwortlicher.getRole()=="Admin"){ //get complete list - images = client.getImageList(person.verantwortlicher.getUserID()); + images = client.getImageList(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken()); + } else { + //get permitted list + images = client.getImageListPermissionLink(person.verantwortlicher + .getUserID(),SessionData.session.getAuthToken()); + } + + Iterator<server.generated.Image> i = images.iterator(); + SimpleDateFormat in = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + SimpleDateFormat out = new SimpleDateFormat("dd.MM.yyyy HH:mm:ss"); + int x = 0; + + while (i.hasNext()) { + // erzeuge Objekte fuer die Tabelle + Object[] obj = { images.get(x).getImageName(), + images.get(x).getLicenseRestriction(), + images.get(x).getOsName(), images.get(x).getLectureName(), + images.get(x).getUserData(), + out.format(in.parse(images.get(x).updateTime)), + images.get(x).id, images.get(x).getVersion(), + images.get(x).getIsTemplate(), + images.get(x).getDescription()}; + // Fuege diese Objekte der Tabelle hinzu + model.addRow(obj); + x++; + i.next(); + } + + //show number of rows in GUI + tabbedPane.setTitleAt(0, tabbedPane.getTitleAt(0)+" ("+model.getRowCount()+") "); + + return model; + + } + + + public DefaultTableModel initTableModelAll(DefaultTableModel model) + throws TException, ParseException { + List<server.generated.Image> images; + + // Hole eine Liste der Images + if(person.verantwortlicher.getRole()=="Admin"){ + //get complete list + images = client.getImageList(person.verantwortlicher.getUserID(),SessionData.session.getAuthToken()); } else { //get permitted list images = client.getImageListPermissionLink(person.verantwortlicher @@ -1244,6 +1289,9 @@ public class EditLectureLink_GUI extends JFrame { x++; i.next(); } + + //show number of rows in GUI + tabbedPane.setTitleAt(2, tabbedPane.getTitleAt(2)+" ("+model.getRowCount()+") "); return model; @@ -1280,6 +1328,8 @@ public class EditLectureLink_GUI extends JFrame { i.next(); } + //show number of rows in GUI + tabbedPane.setTitleAt(1, tabbedPane.getTitleAt(1)+" ("+model.getRowCount()+") "); return model; diff --git a/dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java b/dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java index 92981146..064ad5af 100644 --- a/dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java @@ -84,6 +84,7 @@ public class EditLectureSearch_GUI extends JFrame { JLabel labelVerantwortlicher; JTable tablemyLectures; private JTextField textFieldName; + private JLabel lblTotalResults; boolean activeSearch = false; Component c = null; String[] titles = { "Veranstaltungsname", "Beschreibung", @@ -196,7 +197,7 @@ public class EditLectureSearch_GUI extends JFrame { e.printStackTrace(); } // Setzt den Fenstertitel - setTitle("bwLehrpool Suite - Veranstaltung bearbeiten"); + setTitle("bwLehrpool Suite - Veranstaltung bearbeiten - "+person.verantwortlicher.getUserID()); // Zentriert das Fenster in die Bildmitte setBounds(0, 0, 842, 722); setLocationRelativeTo(formerGUI); @@ -362,6 +363,11 @@ public class EditLectureSearch_GUI extends JFrame { tablemyLectures.setRowSorter(rowSorterMyLectures); scrollPaneMyImage.setViewportView(tablemyLectures); + + lblTotalResults = new JLabel("Anzahl:"); + lblTotalResults.setBounds(10, 512, 131, 20); + contentPanel.add(lblTotalResults); + { JPanel buttonPane = new JPanel(); buttonPane.setBounds(0, 640, 826, 33); @@ -695,6 +701,9 @@ public class EditLectureSearch_GUI extends JFrame { i.next(); } + + //show number if rows in GUI + lblTotalResults.setText(lblTotalResults.getText()+" "+model.getRowCount()); return model; } catch (TException e1) { diff --git a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java index f32648f0..b9886c73 100644 --- a/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/PermissionCreateLecture_GUI.java @@ -80,7 +80,7 @@ public class PermissionCreateLecture_GUI extends JFrame { // private JTable table = null; private JTable tablePermittedUsers = null; private final ButtonGroup buttonGroup = new ButtonGroup(); - Object[] titles = { "Name", "Read", "Write", "Admin", "userID" }; + Object[] titles = { "Name", "Lesen", "Schreiben", "Admin", "userID" }; // Object[] titles = { "Name", "Read", "Write", "Link", "Admin", "userID" }; Component c = null; private static final String HELP_MESSAGE = "<html><div align=\"center\">" @@ -144,7 +144,7 @@ public class PermissionCreateLecture_GUI extends JFrame { | IllegalAccessException | UnsupportedLookAndFeelException e) { e.printStackTrace(); } - setTitle("bwLehrpool Suite - Berechtigungen"); + setTitle("bwLehrpool Suite - Berechtigungen - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -311,31 +311,31 @@ public class PermissionCreateLecture_GUI extends JFrame { TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel.setBackground(SystemColor.menu); - JLabel label = new JLabel("Read"); + JLabel label = new JLabel("Lesen"); label.setBounds(28, 18, 90, 20); panel.add(label); - JLabel label_3 = new JLabel("Write"); + JLabel label_3 = new JLabel("Schreiben"); label_3.setBounds(28, 38, 90, 20); panel.add(label_3); JLabel label_5 = new JLabel("Admin"); - label_5.setBounds(28, 78, 90, 20); + label_5.setBounds(28, 58, 90, 20); panel.add(label_5); JLabel label_7 = new JLabel( - "Veranstaltung ist in bwLehrpool Suite und VMchooser für sichtbar.."); - label_7.setBounds(128, 18, 380, 20); + "Veranstaltung ist in bwLehrpool Suite und VMchooser sichtbar."); + label_7.setBounds(128, 18, 419, 20); panel.add(label_7); JLabel lblimageDarfAngepasst = new JLabel( - "<HTML>Image darf angepasst und überschrieben, jedoch nicht gelöscht werden. Berechtigungen für andere Benutzer festlegen</HTML>"); - lblimageDarfAngepasst.setBounds(128, 38, 380, 45); + "Veranstaltung darf angepasst und überschrieben, jedoch nicht gelöscht werden."); + lblimageDarfAngepasst.setBounds(128, 38, 419, 20); panel.add(lblimageDarfAngepasst); JLabel lblvolleRechteRead = new JLabel( - "<HTML>Volle Rechte: read, write, löschen und Berechtigungen für andere Benutzer festlegen.</HTML>"); - lblvolleRechteRead.setBounds(128, 78, 380, 40); + "<HTML>Volle Rechte: Lesen, Schreiben, Löschen und Berechtigungen für andere Benutzer festlegen.</HTML>"); + lblvolleRechteRead.setBounds(128, 58, 419, 35); panel.add(lblvolleRechteRead); JPanel panel_1 = new JPanel(); diff --git a/dozentenmodul/src/main/java/gui/lecture/PermissionEditLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/PermissionEditLecture_GUI.java index 52e9746a..40956d88 100644 --- a/dozentenmodul/src/main/java/gui/lecture/PermissionEditLecture_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/PermissionEditLecture_GUI.java @@ -75,7 +75,7 @@ public class PermissionEditLecture_GUI extends JFrame { String[] result; private JTable table; private Class[] classes; - Object[] titles = { "Name", "Read", "Write", "Admin", "userID" }; + Object[] titles = { "Name", "Lesen", "Schreiben", "Admin", "userID" }; private List<Person> map = null; // List of people who have rights Component c = null; private static final String HELP_MESSAGE = "<html><div align=\"center\">" @@ -128,7 +128,7 @@ public class PermissionEditLecture_GUI extends JFrame { e.printStackTrace(); } - setTitle("bwLehrpool Suite - Berechtigungen"); + setTitle("bwLehrpool Suite - Berechtigungen - "+person.verantwortlicher.getUserID()); setBounds(0, 0, 603, 722); setLocationRelativeTo(formerGUI); @@ -170,32 +170,32 @@ public class PermissionEditLecture_GUI extends JFrame { panel.setBounds(10, 35, 557, 130); contentPanel.add(panel); - JLabel label = new JLabel("Read"); - label.setBounds(28, 18, 90, 20); - panel.add(label); + JLabel lblLesen = new JLabel("Lesen"); + lblLesen.setBounds(28, 18, 90, 20); + panel.add(lblLesen); JLabel lblVeranstaltungIstIn = new JLabel( "Veranstaltung ist in bwLehrpool Suite und VMchooser für sichtbar."); - lblVeranstaltungIstIn.setBounds(128, 18, 380, 20); + lblVeranstaltungIstIn.setBounds(128, 18, 419, 20); panel.add(lblVeranstaltungIstIn); - JLabel label_4 = new JLabel("Write"); - label_4.setBounds(28, 38, 90, 20); - panel.add(label_4); + JLabel lblSchreiben = new JLabel("Schreiben"); + lblSchreiben.setBounds(28, 38, 90, 20); + panel.add(lblSchreiben); JLabel label_5 = new JLabel( - "<HTML>Veranstaltung darf angepasst und überschrieben, jedoch nicht gelöscht werden. Berechtigungen für andere Benutzer festlegen</HTML>"); - label_5.setBounds(128, 38, 380, 45); + "Veranstaltung darf angepasst und überschrieben, jedoch nicht gelöscht werden."); + label_5.setBounds(128, 38, 419, 20); panel.add(label_5); JLabel label_6 = new JLabel("Admin"); - label_6.setBounds(28, 78, 90, 20); + label_6.setBounds(28, 58, 90, 20); panel.add(label_6); - JLabel label_7 = new JLabel( - "<HTML>Volle Rechte: read, write, löschen und Berechtigungen für andere Benutzer festlegen.</HTML>"); - label_7.setBounds(128, 78, 380, 40); - panel.add(label_7); + JLabel lblvolleRechteLesen = new JLabel( + "<HTML>Volle Rechte: Lesen, Schreiben, Löschen und Berechtigungen für andere Benutzer festlegen.</HTML>"); + lblvolleRechteLesen.setBounds(128, 58, 419, 35); + panel.add(lblvolleRechteLesen); JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); diff --git a/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java b/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java index fc00997f..cb783a59 100644 --- a/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java +++ b/dozentenmodul/src/main/java/gui/lecture/SearchLecture_GUI.java @@ -223,7 +223,7 @@ public class SearchLecture_GUI extends JFrame { e.printStackTrace();
}
// Setzt den Fenstertitel
- setTitle("bwLehrpool Suite - Veranstaltung suchen");
+ setTitle("bwLehrpool Suite - Veranstaltung suchen - "+person.verantwortlicher.getUserID());
// Zentriert das Fenster in die Bildmitte 2;
setBounds(0, 0, 842, 722);
setLocationRelativeTo(formerGUI);
@@ -660,6 +660,8 @@ public class SearchLecture_GUI extends JFrame { i.next();
}
+ //show number of rows in GUI
+ tabbedPane.setTitleAt(0, tabbedPane.getTitleAt(0)+" ("+model.getRowCount()+") ");
return model;
} catch (TException e1) {
@@ -697,6 +699,8 @@ public class SearchLecture_GUI extends JFrame { i.next();
}
+ //show number of rows in GUI
+ tabbedPane.setTitleAt(1, tabbedPane.getTitleAt(1)+" ("+model.getRowCount()+") ");
return model;
} catch (TException e1) {
|
