summaryrefslogblamecommitdiffstats
path: root/dozentenmodul/src/main/java/gui/lecture/EditLectureSearch_GUI.java
blob: ae8f3bb784961cf2369b4abf75beb6867c79c6ef (plain) (tree)
1
2
3
4
5
6
7
8
9
                    
 
                           
                               
 
                      


                            







                                     

                                   


                                  

                          
                     
 
                           











                                
                             


                              
                                       





                                                   

                                               


                                           
 
                      
                    
                     
 
                                    
 

                               
                         
                      
 
                           
                                                   




                                                         







                                     



                                         
                                     
                                                                 
                                                                         

                                                                          
                                                            



                                                                             
          



                                                                                    
          



                                                                                              
                                     
 


                             
                                        


                                                                     
                                                                         


                                                            














                                                                          
                                                      









































                                                                                              
                   
                                                           
                                    
 
                     
                                                           





                                                                                               
                                         
                                                                        
                                                         
                                          
                                             
 



                                                              
                                                         







                                                                                            
 


                                                                           
                                          
                                                                                                                                                         







                                                                      
 

                                                        

                                                                                     
                                                   

                                          
 

                                                           
                                           
 
                                                 
                                                               


                                                               

                                                                       

                                                            
                                                            





                                                                                               






                                                                                                 


                                 
 
                                                         

                                             








                                                           
 
                                                              


                                                                   
                                                         
 

                                                                             





                                                      
 


                                                  
 



                                                                
 


                                                   
 


                                                                           
 


                                                                    






                                                                                                 
                                                                        
                                 
 


                         
                                                        
                                             
 
                                                                    
                                                





















                                                                                                                                        





                                                                                
 
                                                                  
                                               




















                                                                                                                       
                                                          
 





                                                                               



                                                                                   
                                                            


                                                                           

                                                         
                                                              



                                                                               
                                                                         
                                                                                
                                                                                    
                                                                         
 
                                                                                         



                                                                      


                                                                        

                         

                                                                                    
                                                                                    

                                                                                                             
                                                                             
                                                                                             


                                                                                           
















































                                                                                                                                               
 





























                                                                                                                                               
                                                                                            









































































                                                                                                                                                
                                                                
                                                                                                 
                                                         



                                                                                                                     
                                                        


                                                                                             
                                                                                                                                   



                                                                                                                         
 
                                   

                                                                       

                         
 
                                                        
                                                   
                                                
 
                                                          
                                                      
                                                  
 



























































































                                                                             

                                                  
 

                                                       
 
                                                         

                                                             
                                                                   
 
                                                                 
 


                                                                          
 
                                                                  
 



                                                                          

                         
                                         
 
                                                           

                                                              
                                                                   

                                                                 
 


                                                                           
 
                                                                  
 



                                                                          
 

                         
                                          
 







                                                                    
 
         
 
                                                 

                                                                        

                                              
                                                     
                                                           
                                                                         

                                                                                           


                                             
                                                                   
 


                                                                            





                                                                                                                
                                                                        
                                                  
 

                                         
 
                         
 






                                                          
 
















                                                                                   
 
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.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.ScrollPaneConstants;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.border.EmptyBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
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.Server.Client;
import thrift.ThriftConnection;
import util.GuiOrganizer;
import util.OpenLinks;

@SuppressWarnings("serial")
public class EditLectureSearch_GUI extends JFrame {

	private final JPanel contentPanel = new JPanel();
	String[] result;
	JRadioButton rdbtnInternetJa;
	JRadioButton rdbtnInternetNein;
	JLabel labelAktiv;
	JLabel labelstartdate;
	JLabel labelenddate;
	JLabel labelimageversion;
	JTextArea labelName;
	JTextArea labelimage;
	JTextArea labeldesc;
	JLabel labelVerantwortlicher;
	JTable tableAllLectures;
	JTable tablemyLectures;
	private JTextField textFieldName;
	JTabbedPane tabbedPane;
	boolean activeSearch = false;
	String[] titles = { "Veranstaltungsname", "Beschreibung",
			"Gültigkeitsdatum", "Aktiv", "Letzte Benutzung",
			"Verantwortlicher", "Image", "Schlagwort", "ID" };
	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 modelMyLectures = new DefaultTableModel(titles, 0) {
		public boolean isCellEditable(int rowIndex, int mColIndex) {
			return false;
		}
	};
	final TableRowSorter<TableModel> rowSorterAll = new TableRowSorter<TableModel>(
			modelAll);
	final TableRowSorter<TableModel> rowSorterMyLectures = new TableRowSorter<TableModel>(
			modelMyLectures);
	private JTextField textField;

	/**
	 * Create the dialog.
	 */
	public EditLectureSearch_GUI() {
		addWindowListener(new WindowAdapter() {
			@Override
			public void windowClosing(WindowEvent arg0) {
				// Beendet die Anwendung nach klick auf X
				con.closeThriftConnection();
				System.exit(0);
			}

			@Override
			public void windowOpened(WindowEvent arg0) {
				textFieldName.requestFocusInWindow();
				try {
					initTableModel(modelMyLectures);
					initTableModel(modelAll);

				} catch (ParseException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}

				// auszublendende Angaben
				// 1=Beschreibung
				// 2=Gültigkeitsdatum
				// 3=Aktiv
				// 6=Image
				// 7=Schlagwort
				// 8=ID
				tablemyLectures.getColumnModel().getColumn(1).setWidth(0);
				tablemyLectures.getColumnModel().getColumn(1).setMinWidth(0);
				tablemyLectures.getColumnModel().getColumn(1).setMaxWidth(0);
				tablemyLectures.getColumnModel().getColumn(2).setWidth(0);
				tablemyLectures.getColumnModel().getColumn(2).setMinWidth(0);
				tablemyLectures.getColumnModel().getColumn(2).setMaxWidth(0);
				tablemyLectures.getColumnModel().getColumn(3).setWidth(0);
				tablemyLectures.getColumnModel().getColumn(3).setMinWidth(0);
				tablemyLectures.getColumnModel().getColumn(3).setMaxWidth(0);
				tablemyLectures.getColumnModel().getColumn(6).setWidth(0);
				tablemyLectures.getColumnModel().getColumn(6).setMinWidth(0);
				tablemyLectures.getColumnModel().getColumn(6).setMaxWidth(0);
				tablemyLectures.getColumnModel().getColumn(7).setWidth(0);
				tablemyLectures.getColumnModel().getColumn(7).setMinWidth(0);
				tablemyLectures.getColumnModel().getColumn(7).setMaxWidth(0);
				tablemyLectures.getColumnModel().getColumn(8).setWidth(0);
				tablemyLectures.getColumnModel().getColumn(8).setMinWidth(0);
				tablemyLectures.getColumnModel().getColumn(8).setMaxWidth(0);

				tableAllLectures.getColumnModel().getColumn(1).setWidth(0);
				tableAllLectures.getColumnModel().getColumn(1).setMinWidth(0);
				tableAllLectures.getColumnModel().getColumn(1).setMaxWidth(0);
				tableAllLectures.getColumnModel().getColumn(2).setWidth(0);
				tableAllLectures.getColumnModel().getColumn(2).setMinWidth(0);
				tableAllLectures.getColumnModel().getColumn(2).setMaxWidth(0);
				tableAllLectures.getColumnModel().getColumn(3).setWidth(0);
				tableAllLectures.getColumnModel().getColumn(3).setMinWidth(0);
				tableAllLectures.getColumnModel().getColumn(3).setMaxWidth(0);
				tableAllLectures.getColumnModel().getColumn(6).setWidth(0);
				tableAllLectures.getColumnModel().getColumn(6).setMinWidth(0);
				tableAllLectures.getColumnModel().getColumn(6).setMaxWidth(0);
				tableAllLectures.getColumnModel().getColumn(7).setWidth(0);
				tableAllLectures.getColumnModel().getColumn(7).setMinWidth(0);
				tableAllLectures.getColumnModel().getColumn(7).setMaxWidth(0);
				tableAllLectures.getColumnModel().getColumn(8).setWidth(0);
				tableAllLectures.getColumnModel().getColumn(8).setMinWidth(0);
				tableAllLectures.getColumnModel().getColumn(8).setMaxWidth(0);
			}
		});
		// Verhindert das Vergroessern Des Fensters
		setResizable(false);

		try {
			// Setzt das Look & Feel auf System
			UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
		} catch (ClassNotFoundException | InstantiationException
				| IllegalAccessException | UnsupportedLookAndFeelException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		// Setzt den Fenstertitel
		setTitle("bwLehrpool Suite - Veranstaltung bearbeiten");
		// Zentriert das Fenster in die Bildmitte
		setBounds(0, 0, 842, 722);
		GuiOrganizer.centerGUI(this);

		getContentPane().setLayout(null);
		{
			JPanel panel = new JPanel();
			panel.setBackground(SystemColor.menu);
			panel.setBounds(10, 11, 816, 57);
			getContentPane().add(panel);
			panel.setLayout(null);
			{
				JLabel lblNewLabel = new JLabel("Suche nach Veranstaltung");
				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("Hier können Sie nach Ihrem gewünschten VL-Image suchen und dieses für weitere Schritte auswählen");
			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, 66);
		contentPanel.add(panel_1);
		panel_1.setLayout(null);

		JLabel lblNewLabel_2 = new JLabel("Name:");
		lblNewLabel_2.setBounds(10, 30, 80, 20);
		panel_1.add(lblNewLabel_2);

		textFieldName = new JTextField();
		// Key Listener der Tastatureingabe registriert
		textFieldName.addKeyListener(new KeyAdapter() {
			@Override
			public void keyReleased(KeyEvent e) {
				// Textfield eingabe auslesen
				String stext = textFieldName.getText();
				// Wenn Textfield nicht leer
				if (stext != "") {
					activeSearch = true;
					// Filtere nach der Eingabe
					rowSorterAll.setRowFilter(RowFilter.regexFilter(
							textFieldName.getText(), 0));
					rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
							textFieldName.getText(), 0));

				} else {
					activeSearch = false;
					String username = person.verantwortlicher.getName() + " "
							+ person.verantwortlicher.getVorname();
					rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
							username, 5));
					rowSorterAll.setRowFilter(null);
				}
			}
		});

		textFieldName.setBounds(96, 30, 166, 20);
		panel_1.add(textFieldName);
		textFieldName.setColumns(10);
		
		JLabel label = new JLabel("Beschreibung:");
		label.setBounds(291, 30, 80, 20);
		panel_1.add(label);
		
		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) {
				// oeffnet das Hauptmenue

				EditLectureSearch_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, 75, 14);
		contentPanel.add(lblVlimage);

		JLabel label_2 = new JLabel(">");
		label_2.setBounds(152, 11, 13, 14);
		contentPanel.add(label_2);

		JLabel lblNewLabel_1 = new JLabel("Veranstaltungsauswahl");
		lblNewLabel_1.setBounds(166, 11, 128, 14);
		contentPanel.add(lblNewLabel_1);

		tabbedPane = new JTabbedPane(JTabbedPane.TOP);
		tabbedPane.addChangeListener(new ChangeListener() {
			public void stateChanged(ChangeEvent arg0) {
				if (tabbedPane.getSelectedIndex() == 0) {

					String username = person.verantwortlicher.getName() + " "
							+ person.verantwortlicher.getVorname();
					rowSorterMyLectures.setRowFilter(RowFilter.regexFilter(
							username, 5));
				} else if (tabbedPane.getSelectedIndex() == 1) {
					rowSorterAll.setRowFilter(null);
				}

			}
		});

		tabbedPane.setBounds(10, 123, 557, 397);
		contentPanel.add(tabbedPane);

		JScrollPane scrollPaneAllImages = new JScrollPane();
		tableAllLectures = new JTable();
		tableAllLectures.getSelectionModel().addListSelectionListener(
				new ListSelectionListener() {
					public void valueChanged(ListSelectionEvent e) {
						String imageid = modelAll
								.getValueAt(
										tableAllLectures
												.convertRowIndexToModel(tableAllLectures
														.getSelectedRow()), 8)
								.toString();
						//System.out.println(imageid);

						try {
							writeLectureData(imageid);
						} catch (TException e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						} catch (ParseException e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						}
					}
				});
		tableAllLectures.setModel(modelAll);
		tableAllLectures.getColumnModel().getColumn(1).sizeWidthToFit();
		tableAllLectures.getColumnModel().getColumn(2).sizeWidthToFit();
		tableAllLectures.getColumnModel().getColumn(3).sizeWidthToFit();
		tableAllLectures.getColumnModel().getColumn(4).sizeWidthToFit();
		tableAllLectures.getColumnModel().getColumn(5).sizeWidthToFit();

		JScrollPane scrollPaneMyImage = new JScrollPane();
		tablemyLectures = new JTable();
		tablemyLectures.getSelectionModel().addListSelectionListener(
				new ListSelectionListener() {
					public void valueChanged(ListSelectionEvent e) {
						String imageid = modelMyLectures.getValueAt(
								tablemyLectures
										.convertRowIndexToModel(tablemyLectures
												.getSelectedRow()), 8)
								.toString();
						//System.out.println(imageid);

						try {
							writeLectureData(imageid);
						} catch (TException e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						} catch (ParseException e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						}
					}
				});
		tablemyLectures.setModel(modelMyLectures);

		tablemyLectures.getColumnModel().getColumn(1).sizeWidthToFit();
		tablemyLectures.getColumnModel().getColumn(2).sizeWidthToFit();
		tablemyLectures.getColumnModel().getColumn(3).sizeWidthToFit();
		tablemyLectures.getColumnModel().getColumn(4).sizeWidthToFit();
		tablemyLectures.getColumnModel().getColumn(5).sizeWidthToFit();
		tablemyLectures.setRowSorter(rowSorterMyLectures);

		scrollPaneMyImage.setViewportView(tablemyLectures);
		tabbedPane.addTab("Meine Veranstaltungen", null, scrollPaneMyImage,
				null);
		tableAllLectures.setRowSorter(rowSorterAll);

		scrollPaneAllImages.setViewportView(tableAllLectures);
		tabbedPane.addTab("Alle", null, scrollPaneAllImages, null);
		{
			JPanel buttonPane = new JPanel();
			buttonPane.setBounds(0, 640, 826, 33);
			buttonPane.setBackground(SystemColor.menu);
			buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
			getContentPane().add(buttonPane);
			{
				JButton btnBack = new JButton("Zurück");
				btnBack.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e) {
						// oeffnet das Hauptmenue

						MainMenue_GUI main = new MainMenue_GUI();
						main.setVisible(true);
						dispose();
					}
				});
				btnBack.setActionCommand("OK");
				buttonPane.add(btnBack);
				getRootPane().setDefaultButton(btnBack);
			}
			{
				JButton btnContinue = new JButton("Weiter");
				btnContinue.addActionListener(new ActionListener() {
					public void actionPerformed(ActionEvent e) {
						String username = person.verantwortlicher.getName()
								+ " " + person.verantwortlicher.getVorname();
						// check if a row is selected
						if (tablemyLectures.getSelectedRow() != -1) {

							// a row is selected, do operations

							Lecture.lecture.setid(modelMyLectures
									.getValueAt(
											tablemyLectures
													.convertRowIndexToModel(tablemyLectures
															.getSelectedRow()),
											8).toString());
							Lecture.lecture.setName(modelMyLectures
									.getValueAt(
											tablemyLectures
													.convertRowIndexToModel(tablemyLectures
															.getSelectedRow()),
											0).toString());
							Lecture.lecture.setDesc(modelMyLectures
									.getValueAt(
											tablemyLectures
													.convertRowIndexToModel(tablemyLectures
															.getSelectedRow()),
											1).toString());
							String date = modelMyLectures
									.getValueAt(
											tablemyLectures
													.convertRowIndexToModel(tablemyLectures
															.getSelectedRow()),
											2).toString();

							Lecture.lecture.setLinkedImagename(modelMyLectures
									.getValueAt(
											tablemyLectures
													.convertRowIndexToModel(tablemyLectures
															.getSelectedRow()),
											6).toString());

							int zweitesLeerzeichen = date.indexOf(" ",
									date.indexOf(" ") + 1);

							String startdate = date.substring(0,
									zweitesLeerzeichen);
							String enddate = date.substring(zweitesLeerzeichen);
							SimpleDateFormat out = new SimpleDateFormat(
									"yyyy-MM-dd HH:mm:ss");
							SimpleDateFormat in = new SimpleDateFormat(
									"dd.MM.yyyy HH:mm:ss");
							try {
								enddate = out.format(in.parse(enddate));
								startdate = out.format(in.parse(startdate));
							} catch (ParseException e2) {
								// TODO Auto-generated catch block
								e2.printStackTrace();
							}

							DateFormat df = new SimpleDateFormat(
									"yyyy-MM-dd HH:mm:ss");

							try {
								// Format has to be "yyyy-MM-dd HH:mm:ss"
								Lecture.lecture.setEnddate(df.parse(enddate));
								Lecture.lecture.setStartdate(df
										.parse(startdate));
							} catch (ParseException e1) {
								// TODO Auto-generated catch block
								e1.printStackTrace();
							}
							if (modelMyLectures
									.getValueAt(
											tablemyLectures
													.convertRowIndexToModel(tablemyLectures
															.getSelectedRow()),
											3).toString().equals("1")) {
								Lecture.lecture.setActive(true);
							} else {
								Lecture.lecture.setActive(false);
							}

							// EditImageAllgemein_GUI ea=new
							// EditImageAllgemein_GUI();
							EditLectureAllgemein_GUI el = new EditLectureAllgemein_GUI();
							el.setVisible(true);
							dispose();
						} else if (tableAllLectures.getSelectedRow() != -1
								&& tableAllLectures
										.getValueAt(
												tableAllLectures
														.getSelectedRow(), 5)
										.toString().equals(username)) {

							// a row is selected, do operations

							Lecture.lecture.setid(modelAll
									.getValueAt(
											tableAllLectures
													.convertRowIndexToModel(tableAllLectures
															.getSelectedRow()),
											8).toString());
							Lecture.lecture.setName(modelAll
									.getValueAt(
											tableAllLectures
													.convertRowIndexToModel(tableAllLectures
															.getSelectedRow()),
											0).toString());
							Lecture.lecture.setDesc(modelAll
									.getValueAt(
											tableAllLectures
													.convertRowIndexToModel(tableAllLectures
															.getSelectedRow()),
											1).toString());
							String date = modelAll
									.getValueAt(
											tableAllLectures
													.convertRowIndexToModel(tableAllLectures
															.getSelectedRow()),
											2).toString();

							Lecture.lecture.setLinkedImagename(modelAll
									.getValueAt(
											tableAllLectures
													.convertRowIndexToModel(tableAllLectures
															.getSelectedRow()),
											6).toString());

							int zweitesLeerzeichen = date.indexOf(" ",
									date.indexOf(" ") + 1);

							String startdate = date.substring(0,
									zweitesLeerzeichen);
							String enddate = date.substring(zweitesLeerzeichen);
							SimpleDateFormat out = new SimpleDateFormat(
									"yyyy-MM-dd HH:mm:ss");
							SimpleDateFormat in = new SimpleDateFormat(
									"dd.MM.yyyy HH:mm:ss");
							try {
								enddate = out.format(in.parse(enddate));
								startdate = out.format(in.parse(startdate));
							} catch (ParseException e2) {
								// TODO Auto-generated catch block
								e2.printStackTrace();
							}
							DateFormat df = new SimpleDateFormat(
									"yyyy-MM-dd HH:mm:ss");

							try {
								// Format has to be "yyyy-MM-dd HH:mm:ss"
								Lecture.lecture.setEnddate(df.parse(enddate));
								Lecture.lecture.setStartdate(df
										.parse(startdate));
							} catch (ParseException e1) {
								// TODO Auto-generated catch block
								e1.printStackTrace();
							}
							if (modelAll
									.getValueAt(
											tableAllLectures
													.convertRowIndexToModel(tableAllLectures
															.getSelectedRow()),
											3).toString().equals("1")) {
								Lecture.lecture.setActive(true);
							} else {
								Lecture.lecture.setActive(false);
							}

							EditLectureAllgemein_GUI el = new EditLectureAllgemein_GUI();
							el.setVisible(true);
							dispose();
						} else {
							JOptionPane
									.showMessageDialog(
											null,
											"Bitte wählen Sie ein eigenes Image aus.",
											"Message",
											JOptionPane.INFORMATION_MESSAGE);
						} // End Else
					} // Action

				});
				btnContinue.setActionCommand("Cancel");
				buttonPane.add(btnContinue);
			}
		}

		JSeparator separator = new JSeparator();
		separator.setBounds(0, 79, 836, 1);
		getContentPane().add(separator);

		JSeparator separator_1 = new JSeparator();
		separator_1.setBounds(0, 628, 836, 1);
		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(591, 85, 235, 518);
		getContentPane().add(panel);

		JLabel lblNewLabel_3 = new JLabel("Name:");
		lblNewLabel_3.setBounds(10, 27, 104, 14);
		panel.add(lblNewLabel_3);

		JLabel lblAktiv = new JLabel("Aktiv:");
		lblAktiv.setBounds(10, 98, 104, 14);
		panel.add(lblAktiv);

		labelAktiv = new JLabel("");
		labelAktiv.setBounds(10, 114, 218, 14);
		panel.add(labelAktiv);

		labelstartdate = new JLabel("");
		labelstartdate.setBounds(10, 147, 218, 14);
		panel.add(labelstartdate);

		JLabel lblStartdatum = new JLabel("Startdatum:");
		lblStartdatum.setBounds(10, 129, 104, 14);
		panel.add(lblStartdatum);

		labelenddate = new JLabel("");
		labelenddate.setBounds(10, 175, 218, 14);
		panel.add(labelenddate);

		JLabel lblEnddatum = new JLabel("Enddatum:");
		lblEnddatum.setBounds(10, 161, 104, 14);
		panel.add(lblEnddatum);

		JLabel lblBeschreibung = new JLabel("Beschreibung:");
		lblBeschreibung.setBounds(10, 189, 104, 14);
		panel.add(lblBeschreibung);

		JLabel lblImage = new JLabel("Image:");
		lblImage.setBounds(10, 293, 104, 14);
		panel.add(lblImage);

		labelVerantwortlicher = new JLabel("");
		labelVerantwortlicher.setBounds(10, 426, 218, 14);
		panel.add(labelVerantwortlicher);

		JLabel lblVerantwortlicher = new JLabel("Verantwortlicher:");
		lblVerantwortlicher.setBounds(10, 411, 104, 14);
		panel.add(lblVerantwortlicher);

		JLabel lblImageversion = new JLabel("Imageversion:");
		lblImageversion.setBounds(10, 381, 104, 14);
		panel.add(lblImageversion);

		labelimageversion = new JLabel("");
		labelimageversion.setBounds(10, 399, 218, 14);
		panel.add(labelimageversion);

		labeldesc = new JTextArea();
		labeldesc.setFont(new Font("Tahoma", Font.PLAIN, 11));
		labeldesc.setEditable(false);
		labeldesc.setLineWrap(true);
		labeldesc.setBackground(SystemColor.menu);
		labeldesc.setBounds(124, 127, 104, 110);
		JScrollPane scrollPane = new JScrollPane(labeldesc);
		scrollPane.setBounds(10, 209, 218, 81);
		panel.add(scrollPane);
		// panel.add(labeldesc);

		labelimage = new JTextArea();
		labelimage.setLineWrap(true);
		labelimage.setFont(new Font("Tahoma", Font.PLAIN, 11));
		labelimage.setEditable(false);
		labelimage.setBackground(SystemColor.menu);
		labelimage.setBounds(124, 248, 101, 81);
		JScrollPane scrollPaneImage = new JScrollPane(labelimage);
		scrollPaneImage.setBounds(10, 309, 215, 69);
		panel.add(scrollPaneImage);

		labelName = new JTextArea();
		labelName.setEditable(false);
		labelName.setFont(new Font("Tahoma", Font.PLAIN, 11));
		labelName.setBackground(SystemColor.menu);
		labelName.setBounds(124, 22, 101, 55);
		JScrollPane scrollPaneName = new JScrollPane(labelName);
		scrollPaneName.setBounds(10, 40, 218, 55);
		panel.add(scrollPaneName);
		// panel.add(labelName);
		// panel.add(labelimage);
		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 ParseException {
		List<server.Lecture> lectures;
		try {
			// Hole eine Liste der Images
			lectures = client.getLectureList();
			Iterator<server.Lecture> i = lectures.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 = {
						lectures.get(x).lecturename,
						lectures.get(x).desc,
						out.format(in.parse(lectures.get(x).starttime)) + " "
								+ out.format(in.parse(lectures.get(x).endtime)),
						lectures.get(x).isActive,
						out.format(in.parse(lectures.get(x).lastused)),
						lectures.get(x).username, lectures.get(x).imagename,
						" ", lectures.get(x).id };
				// Fuege diese Objekte der Tabelle hinzu
				model.addRow(obj);

				x++;
				i.next();

			}

			return model;
		} catch (TException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}
		return model;
	}

	public void writeLectureData(String id) throws TException, ParseException {

		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.getLectureData(id);
		labelName.setText(res.get("name"));
		labelAktiv.setText(res.get("isActive"));
		labeldesc.setText(res.get("desc"));
		labelVerantwortlicher.setText(res.get("owner"));
		labelstartdate.setText(out.format(in.parse(res.get("startTime"))));
		labelenddate.setText(out.format(in.parse(res.get("endTime"))));
		labelimage.setText(res.get("imagepath").substring(
				res.get("imagepath").indexOf("/") + 1));
		labelimageversion.setText(res.get("imageversion"));

	}

}