package gui.lecture; import gui.intro.About_GUI; import gui.intro.MainMenue_GUI; import java.awt.Color; import java.awt.FlowLayout; import java.awt.Font; import java.awt.SystemColor; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.net.URI; import java.net.URISyntaxException; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Iterator; import java.util.List; import java.util.Map; import javax.swing.JButton; import javax.swing.JComboBox; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JRadioButton; import javax.swing.JScrollPane; import javax.swing.JSeparator; import javax.swing.JTabbedPane; import javax.swing.JTable; import javax.swing.JTextArea; import javax.swing.JTextField; import javax.swing.JTextPane; import javax.swing.RowFilter; import javax.swing.UIManager; import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import javax.swing.border.TitledBorder; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableModel; import javax.swing.table.TableRowSorter; import models.Lecture; import models.Links; import models.person; import org.apache.thrift.TException; import server.generated.Server.Client; import thrift.ThriftConnection; import util.GuiOrganizer; import util.OpenLinks; import javax.swing.event.ChangeListener; import javax.swing.event.ChangeEvent; import javax.swing.event.ListSelectionEvent; import javax.swing.event.ListSelectionListener; @SuppressWarnings("serial") public class CreateLectureLink_GUI extends JFrame { private final JPanel contentPanel = new JPanel(); String[] result; JRadioButton rdbtnInternetJa; JRadioButton rdbtnInternetNein; JComboBox comboBox; JTabbedPane tabbedPane; JLabel labelName; JLabel labelUpdate; JLabel labelVerantwortlicher; JLabel labelWeitereVerantwortliche; JLabel labelVorlage; JLabel labelLizenzSoftware; JLabel labelInternet; JLabel labelRam; JLabel labelCPU; JLabel labelID; JLabel labelVersion; JTextArea textAreadesc; private JLabel labelOS; JTable tableAllImages = new JTable(); JTable tablemyImages = new JTable(); JTable tableCoopImages = new JTable(); JTable tablePublicVorlagen = new JTable(); boolean activeSearch=false; private JTextField textFieldName; String[] titles = { "Image-Name", "Lizenzpflichtig", "OS", "Veranstaltung", "Verantwortlicher", "Letztes Update", "ID", "Version","Template" }; 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 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 TableRowSorter rowSorterAll = new TableRowSorter( modelAll); final TableRowSorter rowSorterMyImages = new TableRowSorter( modelMyImages); final TableRowSorter rowSorterPublicVorlagen = new TableRowSorter( modelPublicVorlagen); private JTextField textField; /** * Create the dialog. */ public CreateLectureLink_GUI() { addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent arg0) { con.closeThriftConnection(); System.exit(0); } @Override public void windowOpened(WindowEvent arg0) { try { initTableModel(modelMyImages); initTableModel(modelAll); initTableModel(modelPublicVorlagen); } catch (TException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } // auszublendende Angaben // 1=Lizenzpflichtig // 3=Veranstaltung // 6=ID // 7=Version // 8=Template tablemyImages.getColumnModel().getColumn(1).setWidth(0); tablemyImages.getColumnModel().getColumn(1).setMinWidth(0); tablemyImages.getColumnModel().getColumn(1).setMaxWidth(0); tablemyImages.getColumnModel().getColumn(3).setWidth(0); tablemyImages.getColumnModel().getColumn(3).setMinWidth(0); tablemyImages.getColumnModel().getColumn(3).setMaxWidth(0); tablemyImages.getColumnModel().getColumn(8).setWidth(0); tablemyImages.getColumnModel().getColumn(8).setMinWidth(0); tablemyImages.getColumnModel().getColumn(8).setMaxWidth(0); tablemyImages.getColumnModel().getColumn(6).setWidth(0); tablemyImages.getColumnModel().getColumn(6).setMinWidth(0); tablemyImages.getColumnModel().getColumn(6).setMaxWidth(0); tablemyImages.getColumnModel().getColumn(7).setWidth(0); tablemyImages.getColumnModel().getColumn(7).setMinWidth(0); tablemyImages.getColumnModel().getColumn(7).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(1).setWidth(0); tablePublicVorlagen.getColumnModel().getColumn(1).setMinWidth(0); tablePublicVorlagen.getColumnModel().getColumn(1).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(3).setWidth(0); tablePublicVorlagen.getColumnModel().getColumn(3).setMinWidth(0); tablePublicVorlagen.getColumnModel().getColumn(3).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(8).setWidth(0); tablePublicVorlagen.getColumnModel().getColumn(8).setMinWidth(0); tablePublicVorlagen.getColumnModel().getColumn(8).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(6).setWidth(0); tablePublicVorlagen.getColumnModel().getColumn(6).setMinWidth(0); tablePublicVorlagen.getColumnModel().getColumn(6).setMaxWidth(0); tablePublicVorlagen.getColumnModel().getColumn(7).setWidth(0); tablePublicVorlagen.getColumnModel().getColumn(7).setMinWidth(0); tablePublicVorlagen.getColumnModel().getColumn(7).setMaxWidth(0); tableAllImages.getColumnModel().getColumn(1).setWidth(0); tableAllImages.getColumnModel().getColumn(1).setMinWidth(0); tableAllImages.getColumnModel().getColumn(1).setMaxWidth(0); tableAllImages.getColumnModel().getColumn(3).setWidth(0); tableAllImages.getColumnModel().getColumn(3).setMinWidth(0); tableAllImages.getColumnModel().getColumn(3).setMaxWidth(0); tableAllImages.getColumnModel().getColumn(8).setWidth(0); tableAllImages.getColumnModel().getColumn(8).setMinWidth(0); tableAllImages.getColumnModel().getColumn(8).setMaxWidth(0); tableAllImages.getColumnModel().getColumn(6).setWidth(0); tableAllImages.getColumnModel().getColumn(6).setMinWidth(0); tableAllImages.getColumnModel().getColumn(6).setMaxWidth(0); tableAllImages.getColumnModel().getColumn(7).setWidth(0); tableAllImages.getColumnModel().getColumn(7).setMinWidth(0); tableAllImages.getColumnModel().getColumn(7).setMaxWidth(0); textFieldName.requestFocusInWindow(); } }); setResizable(false); try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException | IllegalAccessException | UnsupportedLookAndFeelException e) { // TODO Auto-generated catch block e.printStackTrace(); } setTitle("bwLehrpool Suite - Veranstaltung erzeugen"); setBounds(0, 0, 918, 722); GuiOrganizer.centerGUI(this); final DefaultTableModel model = new DefaultTableModel(titles, 0); getContentPane().setLayout(null); { JPanel panel = new JPanel(); panel.setBackground(SystemColor.menu); panel.setBounds(10, 11, 892, 57); getContentPane().add(panel); panel.setLayout(null); { JLabel lblNewLabel = new JLabel("Image verlinken"); lblNewLabel.setBounds(10, 11, 509, 22); panel.add(lblNewLabel); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18)); } JTextPane txtpnBitteWhlenSie = new JTextPane(); txtpnBitteWhlenSie.setEditable(false); txtpnBitteWhlenSie.setBackground(SystemColor.menu); txtpnBitteWhlenSie .setText("Wählen Sie bitte ein Image aus, auf dem Ihre Versanstaltung basiert."); txtpnBitteWhlenSie.setBounds(10, 36, 509, 32); panel.add(txtpnBitteWhlenSie); } contentPanel.setBounds(10, 85, 577, 531); contentPanel.setBackground(SystemColor.menu); contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); getContentPane().add(contentPanel); contentPanel.setLayout(null); JPanel panel_1 = new JPanel(); panel_1.setBackground(SystemColor.menu); panel_1.setBorder(new TitledBorder(null, "Filterfunktionen", TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel_1.setBounds(10, 49, 557, 92); contentPanel.add(panel_1); panel_1.setLayout(null); JLabel lblNewLabel_2 = new JLabel("Anzeigename:"); lblNewLabel_2.setBounds(10, 30, 80, 20); panel_1.add(lblNewLabel_2); JLabel lblInternetIstInnerhalb = new JLabel("Betriebssystem:"); lblInternetIstInnerhalb.setBounds(10, 58, 80, 20); panel_1.add(lblInternetIstInnerhalb); textFieldName = new JTextField(); textFieldName.addKeyListener(new KeyAdapter() { @Override public void keyReleased(KeyEvent e) { String stext = textFieldName.getText(); // Wenn Textfield nicht leer if (stext != "") { activeSearch=true; // Filtere nach der Eingabe rowSorterAll.setRowFilter(RowFilter.regexFilter( textFieldName.getText(), 0)); rowSorterMyImages.setRowFilter(RowFilter.regexFilter( textFieldName.getText(), 0)); rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( textFieldName.getText(), 0)); }else{ activeSearch=false; String username = person.verantwortlicher.getName() + " " + person.verantwortlicher.getVorname(); rowSorterMyImages.setRowFilter(RowFilter.regexFilter( username, 4)); rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( "true", 8)); rowSorterAll.setRowFilter(null); } } }); textFieldName.setBounds(96, 30, 166, 20); panel_1.add(textFieldName); textFieldName.setColumns(10); comboBox = new JComboBox(); try { List list = client.getAllOS(); comboBox.addItem(""); for (int i = 0; i < list.size(); i++) { comboBox.addItem(list.get(i)); } } catch (TException e) { // TODO Auto-generated catch block e.printStackTrace(); JOptionPane.showMessageDialog(null, e.getCause()+"\n"+e.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } comboBox.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { // Prueft das die Auswahl nicht leer ist if (comboBox.getSelectedItem().toString() != "") { activeSearch=true; rowSorterAll.setRowFilter(RowFilter.regexFilter(comboBox .getSelectedItem().toString(), 2)); rowSorterMyImages.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(); rowSorterMyImages.setRowFilter(RowFilter.regexFilter( username, 4)); rowSorterPublicVorlagen.setRowFilter(RowFilter.regexFilter( "true", 8)); rowSorterAll.setRowFilter(null); } } }); comboBox.setBounds(96, 58, 166, 20); panel_1.add(comboBox); JLabel label_3 = new JLabel("Beschreibung:"); label_3.setBounds(291, 30, 80, 20); panel_1.add(label_3); textField = new JTextField(); textField.setColumns(10); textField.setBounds(381, 30, 166, 20); panel_1.add(textField); JLabel lblHauptmen = new JLabel("Hauptmenü"); lblHauptmen.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent arg0) { CreateLectureLink_GUI.this.setVisible(false); MainMenue_GUI main = new MainMenue_GUI(); main.setVisible(true); } }); lblHauptmen.setForeground(Color.BLUE); lblHauptmen.setBounds(10, 11, 61, 14); contentPanel.add(lblHauptmen); JLabel label_1 = new JLabel(">"); label_1.setBounds(69, 11, 13, 14); contentPanel.add(label_1); JLabel lblVlimage = new JLabel("Veranstaltung"); lblVlimage.setForeground(Color.BLUE); lblVlimage.setBounds(81, 11, 76, 14); contentPanel.add(lblVlimage); JLabel label_2 = new JLabel(">"); label_2.setBounds(151, 11, 13, 14); contentPanel.add(label_2); JLabel lblNewLabel_1 = new JLabel("Imageauswahl"); lblNewLabel_1.setBounds(164, 11, 85, 14); contentPanel.add(lblNewLabel_1); tabbedPane = new JTabbedPane(JTabbedPane.TOP); 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)); } else if(tabbedPane.getSelectedIndex()==2 && activeSearch==false){ rowSorterAll.setRowFilter(null); } } }); tabbedPane.setBounds(10, 152, 557, 345); contentPanel.add(tabbedPane); JScrollPane scrollPaneMyImage = new JScrollPane(); tablemyImages.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { String imageid = modelMyImages .getValueAt( tablemyImages .convertRowIndexToModel(tablemyImages .getSelectedRow()), 6) .toString(); //System.out.println(imageid); String version = modelMyImages .getValueAt( tablemyImages .convertRowIndexToModel(tablemyImages .getSelectedRow()), 7) .toString(); //System.out.println(version); try { writeImageData(imageid, version); } catch (TException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (ParseException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }); tablemyImages.setModel(modelMyImages); tablemyImages.getColumnModel().getColumn(1).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(2).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(3).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(4).sizeWidthToFit(); tablemyImages.getColumnModel().getColumn(5).sizeWidthToFit(); tablemyImages.setRowSorter(rowSorterMyImages); scrollPaneMyImage.setViewportView(tablemyImages); tabbedPane.addTab("Meine Images", null, scrollPaneMyImage, null); JScrollPane scrollPaneCoopImages = new JScrollPane(); tableCoopImages.setModel(model); tableCoopImages.getColumnModel().getColumn(1).sizeWidthToFit(); tableCoopImages.getColumnModel().getColumn(2).sizeWidthToFit(); tableCoopImages.getColumnModel().getColumn(3).sizeWidthToFit(); tableCoopImages.getColumnModel().getColumn(4).sizeWidthToFit(); tableCoopImages.getColumnModel().getColumn(5).sizeWidthToFit(); JScrollPane scrollPanePublicVorlagen = new JScrollPane(); tablePublicVorlagen.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { String imageid = modelPublicVorlagen .getValueAt( tablePublicVorlagen .convertRowIndexToModel(tablePublicVorlagen .getSelectedRow()), 6) .toString(); //System.out.println(imageid); String version = modelPublicVorlagen .getValueAt( tablePublicVorlagen .convertRowIndexToModel(tablePublicVorlagen .getSelectedRow()), 7) .toString(); //System.out.println(version); try { writeImageData(imageid, version); } catch (TException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (ParseException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }); tablePublicVorlagen.setModel(modelPublicVorlagen); tablePublicVorlagen.getColumnModel().getColumn(1).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(2).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(3).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(4).sizeWidthToFit(); tablePublicVorlagen.getColumnModel().getColumn(5).sizeWidthToFit(); tablePublicVorlagen.setRowSorter(rowSorterPublicVorlagen); scrollPanePublicVorlagen.setViewportView(tablePublicVorlagen); tabbedPane.addTab("Vorlagen", null, scrollPanePublicVorlagen, null); JScrollPane scrollPaneAllImages = new JScrollPane(); tableAllImages = new JTable(); tableAllImages.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { String imageid = modelAll .getValueAt( tableAllImages .convertRowIndexToModel(tableAllImages .getSelectedRow()), 6) .toString(); //System.out.println(imageid); String version = modelAll .getValueAt( tableAllImages .convertRowIndexToModel(tableAllImages .getSelectedRow()), 7) .toString(); //System.out.println(version); try { writeImageData(imageid, version); } catch (TException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (ParseException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }); tableAllImages.setModel(modelAll); tableAllImages.getColumnModel().getColumn(1).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(2).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(3).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(4).sizeWidthToFit(); tableAllImages.getColumnModel().getColumn(5).sizeWidthToFit(); tableAllImages.setRowSorter(rowSorterAll); scrollPaneAllImages.setViewportView(tableAllImages); tabbedPane.addTab("Alle", null, scrollPaneAllImages, null); scrollPaneCoopImages.setViewportView(tableCoopImages); tabbedPane.addTab("bwLehrpool", null, scrollPaneCoopImages, null); tabbedPane.setEnabledAt(3, false); { JPanel buttonPane = new JPanel(); buttonPane.setBounds(0, 640, 902, 33); buttonPane.setBackground(SystemColor.menu); buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); getContentPane().add(buttonPane); { JButton cancelButton = new JButton("Zurück"); cancelButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { PermissionCreateLecture_GUI eVAG = new PermissionCreateLecture_GUI(); eVAG.setVisible(true); dispose(); } }); cancelButton.setActionCommand("CANCEL"); buttonPane.add(cancelButton); getRootPane().setDefaultButton(cancelButton); } { JButton doLinkButton = new JButton( "Veranstaltung erzeugen und abschließen"); doLinkButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { String username = person.verantwortlicher.getName() + " " + person.verantwortlicher.getVorname(); // check if a row is selected if (tablemyImages.getSelectedRow() != -1){ // a row is selected, do operations String imagename = tablemyImages.getValueAt( tablemyImages.getSelectedRow(), 0) .toString(); try { DateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss"); client.writeLecturedata( Lecture.lecture.getName(), Lecture.lecture.getShortDesc(), Lecture.lecture.getDesc(), formatter.format( Lecture.lecture.getStartdate()) .toString(), formatter.format( Lecture.lecture.getEnddate()) .toString(), Lecture.lecture.isActive(), imagename, person.verantwortlicher.getUsername(), person.verantwortlicher.getVorname(), person.verantwortlicher.getName(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getEMail(), person.verantwortlicher.getTel(), person.verantwortlicher.getFakultaet()); client.writeLectureRights(Lecture.lecture.getName(), person.verantwortlicher.getUsername(), person.verantwortlicher.getName(), person.verantwortlicher.getVorname(), person.verantwortlicher.getEMail(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getRole()); JOptionPane .showMessageDialog( null, "Ihre Veranstaltung wurde erfolgreich angelegt. Sie kehren nun zum Hauptmenü zurück.", "Veranstaltung angelegt", JOptionPane.INFORMATION_MESSAGE); // zurueck zum Menue MainMenue_GUI m = new MainMenue_GUI(); m.setVisible(true); } catch (TException e1) { // TODO Auto-generated catch block e1.printStackTrace(); JOptionPane .showMessageDialog( null, "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.", "Error", JOptionPane.ERROR_MESSAGE); JOptionPane.showMessageDialog(null, e1.getCause()+"\n"+e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } dispose(); }else if (tablePublicVorlagen.getSelectedRow() != -1){ // a row is selected, do operations String imagename = tablePublicVorlagen.getValueAt( tablePublicVorlagen.getSelectedRow(), 0) .toString(); try { DateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd hh:mm:ss"); client.writeLecturedata( Lecture.lecture.getName(), Lecture.lecture.getShortDesc(), Lecture.lecture.getDesc(), formatter.format( Lecture.lecture.getStartdate()) .toString(), formatter.format( Lecture.lecture.getEnddate()) .toString(), Lecture.lecture.isActive(), imagename, person.verantwortlicher.getUsername(), person.verantwortlicher.getVorname(), person.verantwortlicher.getName(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getEMail(), person.verantwortlicher.getTel(), person.verantwortlicher.getFakultaet()); client.writeLectureRights(Lecture.lecture.getName(), person.verantwortlicher.getUsername(), person.verantwortlicher.getName(), person.verantwortlicher.getVorname(), person.verantwortlicher.getEMail(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getRole()); JOptionPane .showMessageDialog( null, "Ihre Veranstaltung wurde erfolgreich angelegt. Sie kehren nun zum Hauptmenü zurück.", "Veranstaltung angelegt", JOptionPane.INFORMATION_MESSAGE); // zurueck zum Menue MainMenue_GUI m = new MainMenue_GUI(); m.setVisible(true); } catch (TException e1) { // TODO Auto-generated catch block e1.printStackTrace(); JOptionPane .showMessageDialog( null, "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.", "Error", JOptionPane.ERROR_MESSAGE); JOptionPane.showMessageDialog(null, e1.getCause()+"\n"+e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } dispose(); }else if (tableAllImages.getSelectedRow() != -1 &&tableAllImages.getValueAt(tableAllImages.getSelectedRow(), 4).toString().equals(username)){ // a row is selected, do operations String imagename = tableAllImages.getValueAt( tableAllImages.getSelectedRow(), 0) .toString(); try { DateFormat formatter = new SimpleDateFormat( "yyyy-MM-dd hh:mm:ss"); client.writeLecturedata( Lecture.lecture.getName(), Lecture.lecture.getShortDesc(), Lecture.lecture.getDesc(), formatter.format( Lecture.lecture.getStartdate()) .toString(), formatter.format( Lecture.lecture.getEnddate()) .toString(), Lecture.lecture.isActive(), imagename, person.verantwortlicher.getUsername(), person.verantwortlicher.getVorname(), person.verantwortlicher.getName(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getEMail(), person.verantwortlicher.getTel(), person.verantwortlicher.getFakultaet()); client.writeLectureRights(Lecture.lecture.getName(), person.verantwortlicher.getUsername(), person.verantwortlicher.getName(), person.verantwortlicher.getVorname(), person.verantwortlicher.getEMail(), person.verantwortlicher.getHochschule(), person.verantwortlicher.getRole()); JOptionPane .showMessageDialog( null, "Ihre Veranstaltung wurde erfolgreich angelegt. Sie kehren nun zum Hauptmenü zurück.", "Veranstaltung angelegt", JOptionPane.INFORMATION_MESSAGE); // zurueck zum Menue MainMenue_GUI m = new MainMenue_GUI(); m.setVisible(true); } catch (TException e1) { // TODO Auto-generated catch block e1.printStackTrace(); JOptionPane .showMessageDialog( null, "Beim Anlegen Ihrer Veranstaltung ist ein Fehler aufgetreten.", "Error", JOptionPane.ERROR_MESSAGE); JOptionPane.showMessageDialog(null, e1.getCause()+"\n"+e1.getStackTrace(), "Debug-Message", JOptionPane.ERROR_MESSAGE); } dispose(); } else { // nothing selected JOptionPane.showMessageDialog(null, "Bitte wählen Sie ein Image aus.", "Image Auswahl", JOptionPane.INFORMATION_MESSAGE); } } }); doLinkButton.setActionCommand("OK"); buttonPane.add(doLinkButton); } } JSeparator separator = new JSeparator(); separator.setBounds(0, 79, 912, 1); getContentPane().add(separator); JSeparator separator_1 = new JSeparator(); separator_1.setBounds(0, 627, 912, 2); getContentPane().add(separator_1); JPanel panel = new JPanel(); panel.setLayout(null); panel.setBorder(new TitledBorder(null, "Detailinformationen", TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel.setBackground(SystemColor.menu); panel.setBounds(586, 85, 316, 531); getContentPane().add(panel); JLabel lblName = new JLabel("Name:"); lblName.setBounds(10, 87, 130, 14); panel.add(lblName); labelName = new JLabel(""); labelName.setBounds(10, 102, 296, 14); panel.add(labelName); JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:"); lblVerantwortlicher.setBounds(10, 259, 130, 14); panel.add(lblVerantwortlicher); labelOS = new JLabel(""); labelOS.setBounds(10, 216, 296, 14); panel.add(labelOS); JLabel lblWeitereVerantwortliche = new JLabel("Betriebssystem:"); lblWeitereVerantwortliche.setBounds(10, 202, 130, 14); panel.add(lblWeitereVerantwortliche); labelVerantwortlicher = new JLabel(""); labelVerantwortlicher.setBounds(10, 272, 296, 14); panel.add(labelVerantwortlicher); JLabel label = new JLabel("Weitere Verantwortliche:"); label.setBounds(10, 284, 130, 14); panel.add(label); labelWeitereVerantwortliche = new JLabel(""); labelWeitereVerantwortliche.setBounds(10, 297, 296, 14); panel.add(labelWeitereVerantwortliche); labelUpdate = new JLabel(""); labelUpdate.setBounds(10, 245, 296, 14); panel.add(labelUpdate); JLabel lblLetztesUpdate = new JLabel("Letztes Update:"); lblLetztesUpdate.setBounds(10, 231, 130, 14); panel.add(lblLetztesUpdate); JLabel lblImageIstVorlage = new JLabel("Image ist Vorlage:"); lblImageIstVorlage.setBounds(10, 336, 130, 14); panel.add(lblImageIstVorlage); labelVorlage = new JLabel(""); labelVorlage.setBounds(10, 350, 296, 14); panel.add(labelVorlage); labelLizenzSoftware = new JLabel(""); labelLizenzSoftware.setBounds(10, 383, 296, 14); panel.add(labelLizenzSoftware); JLabel lblLizenzpflichtigeSoftware = new JLabel("Lizenzpflichtige Software:"); lblLizenzpflichtigeSoftware.setBounds(10, 367, 130, 14); panel.add(lblLizenzpflichtigeSoftware); JLabel lblInternet = new JLabel("Internetsperre vorhanden:"); lblInternet.setBounds(10, 400, 130, 14); panel.add(lblInternet); labelInternet = new JLabel(""); labelInternet.setBounds(10, 417, 296, 14); panel.add(labelInternet); JLabel lblEmpfehlungRam = new JLabel("Empfehlung RAM:"); lblEmpfehlungRam.setBounds(10, 432, 130, 14); panel.add(lblEmpfehlungRam); labelRam = new JLabel(""); labelRam.setBounds(10, 455, 296, 14); panel.add(labelRam); JLabel lblEmpfehlungCpu = new JLabel("Empfehlung CPU:"); lblEmpfehlungCpu.setBounds(10, 469, 130, 14); panel.add(lblEmpfehlungCpu); labelCPU = new JLabel(""); labelCPU.setBounds(10, 487, 296, 14); panel.add(labelCPU); JLabel lblTechnischeDaten = new JLabel("Technische Daten:"); lblTechnischeDaten.setBounds(10, 322, 296, 14); panel.add(lblTechnischeDaten); JLabel lblId = new JLabel("ID:"); lblId.setBounds(10, 23, 296, 14); panel.add(lblId); labelID = new JLabel(""); labelID.setBounds(10, 37, 296, 14); panel.add(labelID); labelVersion = new JLabel(""); labelVersion.setBounds(10, 73, 296, 14); panel.add(labelVersion); JLabel lblVersion = new JLabel("Version:"); lblVersion.setBounds(10, 57, 296, 14); panel.add(lblVersion); JLabel lblBeschreibung = new JLabel("Beschreibung:"); lblBeschreibung.setBounds(10, 119, 130, 14); panel.add(lblBeschreibung); JScrollPane scrollPane = new JScrollPane(); scrollPane.setBounds(10, 135, 296, 65); panel.add(scrollPane); textAreadesc = new JTextArea(); textAreadesc.setLineWrap(true); textAreadesc.setBackground(SystemColor.menu); scrollPane.setViewportView(textAreadesc); JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); JMenu mnNewMenu_1 = new JMenu("Hilfe"); menuBar.add(mnNewMenu_1); JMenuItem mntmFaq = new JMenuItem("FAQ"); mntmFaq.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent arg0) { OpenLinks open = new OpenLinks(); URI windows; try { windows = new URI(Links.getFAQ()); open.openWebpage(windows); } catch (URISyntaxException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }); mnNewMenu_1.add(mntmFaq); JMenuItem mntmOtrs = new JMenuItem("OTRS"); mntmOtrs.addMouseListener(new MouseAdapter() { @Override public void mousePressed(MouseEvent arg0) { OpenLinks open = new OpenLinks(); URI windows; try { windows = new URI(Links.getOTRS()); open.openWebpage(windows); } catch (URISyntaxException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }); mnNewMenu_1.add(mntmOtrs); JMenuItem mntmAbout = new JMenuItem("About"); mntmAbout.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { About_GUI ab = new About_GUI(); ab.setVisible(true); } }); mnNewMenu_1.add(mntmAbout); } // Initiale Beffuelung eines Table models public DefaultTableModel initTableModel(DefaultTableModel model) throws TException, ParseException { List images; // Hole eine Liste der Images images = client.getImageList(); Iterator 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()}; // Fuege diese Objekte der Tabelle hinzu model.addRow(obj); x++; i.next(); } return model; } public void writeImageData(String id, String version) throws TException, ParseException{ SimpleDateFormat in=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); SimpleDateFormat out=new SimpleDateFormat("dd.MM.yyyy hh:mm:ss"); Map res=client.getImageData(id,version); labelName.setText(res.get("name")); labelOS.setText(res.get("os")); labelUpdate.setText(out.format(in.parse(res.get("lastupdate")))); labelVerantwortlicher.setText(res.get("owner")); labelWeitereVerantwortliche.setText("Noch nicht Verf�gbar"); if(res.get("template").equals("true")){ labelVorlage.setText("Ja"); }else{ labelVorlage.setText("Nein"); } if(res.get("license").equals("1")){ labelLizenzSoftware.setText("Ja"); } else { labelLizenzSoftware.setText("Nein"); } if(res.get("internet").equals("1")){ labelInternet.setText("Ja"); } else { labelInternet.setText("Nein"); } labelRam.setText(res.get("ram")); labelCPU.setText(res.get("cpu")); labelID.setText(res.get("id")); labelVersion.setText(res.get("version")); textAreadesc.setText(res.get("desc")); } }