diff options
| author | Michael Wilson | 2014-08-29 11:13:11 +0200 |
|---|---|---|
| committer | Michael Wilson | 2014-08-29 11:13:11 +0200 |
| commit | c725783a85b44256a709a7468e674c7e868d04ab (patch) | |
| tree | 91346fffe3d69d7859411e5c5f37f0df893df2d9 /Dozentenmodul/src/gui/lecture/EditLectureAllgemein_GUI.java | |
| parent | -Hilfetext bei Imagebeschreibung (diff) | |
| download | tutor-module-c725783a85b44256a709a7468e674c7e868d04ab.tar.gz tutor-module-c725783a85b44256a709a7468e674c7e868d04ab.tar.xz tutor-module-c725783a85b44256a709a7468e674c7e868d04ab.zip | |
-Länge der Beschreibung von Images und Veranstaltungen wird geprüft und abgefangen um DB-Probleme zu verhindern
Diffstat (limited to 'Dozentenmodul/src/gui/lecture/EditLectureAllgemein_GUI.java')
| -rw-r--r-- | Dozentenmodul/src/gui/lecture/EditLectureAllgemein_GUI.java | 239 |
1 files changed, 127 insertions, 112 deletions
diff --git a/Dozentenmodul/src/gui/lecture/EditLectureAllgemein_GUI.java b/Dozentenmodul/src/gui/lecture/EditLectureAllgemein_GUI.java index d30a9284..457b67db 100644 --- a/Dozentenmodul/src/gui/lecture/EditLectureAllgemein_GUI.java +++ b/Dozentenmodul/src/gui/lecture/EditLectureAllgemein_GUI.java @@ -1,6 +1,5 @@ package gui.lecture; - import gui.intro.About_GUI; import gui.intro.MainMenue_GUI; @@ -50,7 +49,6 @@ import com.toedter.calendar.JDateChooser; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeEvent; - @SuppressWarnings("serial") public class EditLectureAllgemein_GUI extends JFrame { @@ -69,12 +67,15 @@ public class EditLectureAllgemein_GUI extends JFrame { Date startDate = new Date(); Date endDate; private final ButtonGroup buttonGroup = new ButtonGroup(); - + private boolean descriptionLengthOK = false; // description may not be + // longer than + // MAX_DESCRIPTION_LENGTH + private final int MAX_DESCRIPTION_LENGTH = 254; + int maxLifeTime = 180; // Anzahl Tage, die eine Veranstaltung in der Zukunft // aktiv sein darf -boolean isDateOrderCorrect, isDateMaxLifeTimeCorrect, -isAllInformationReady = false; - + boolean isDateOrderCorrect, isDateMaxLifeTimeCorrect, + isAllInformationReady = false; /** * Create the dialog. @@ -87,7 +88,7 @@ isAllInformationReady = false; } }); setResizable(false); - + try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (ClassNotFoundException | InstantiationException @@ -95,7 +96,8 @@ isAllInformationReady = false; // TODO Auto-generated catch block e.printStackTrace(); } - setTitle("bwLehrpool Suite - Veranstaltung bearbeiten");; + setTitle("bwLehrpool Suite - Veranstaltung bearbeiten"); + ; setBounds(0, 0, 603, 722); GuiOrganizer.centerGUI(this); @@ -112,11 +114,12 @@ isAllInformationReady = false; panel.add(lblNewLabel); lblNewLabel.setFont(new Font("Tahoma", Font.BOLD, 18)); } - + JTextPane txtpnBitteWhlenSie = new JTextPane(); txtpnBitteWhlenSie.setEditable(false); txtpnBitteWhlenSie.setBackground(SystemColor.menu); - txtpnBitteWhlenSie.setText("Geben Sie hier bitte einen sprechenden Imagename sowie Ihre Kontaktdaten an"); + txtpnBitteWhlenSie + .setText("Geben Sie hier bitte einen sprechenden Imagename sowie Ihre Kontaktdaten an"); txtpnBitteWhlenSie.setBounds(10, 36, 509, 21); panel.add(txtpnBitteWhlenSie); } @@ -125,19 +128,20 @@ isAllInformationReady = false; 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, "Informationen zum Besitzer", TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_1.setBorder(new TitledBorder(null, "Informationen zum Besitzer", + TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel_1.setBounds(10, 331, 557, 162); contentPanel.add(panel_1); panel_1.setLayout(null); - + JLabel label = new JLabel("Vorname: *"); label.setBackground(SystemColor.menu); label.setBounds(10, 33, 125, 20); panel_1.add(label); - + Vorname = new JTextField(); Vorname.setEditable(false); Vorname.setEnabled(false); @@ -146,12 +150,12 @@ isAllInformationReady = false; Vorname.setColumns(10); Vorname.setBounds(145, 33, 350, 20); panel_1.add(Vorname); - + JLabel label_7 = new JLabel("Nachname: *"); label_7.setBackground(SystemColor.menu); label_7.setBounds(10, 64, 125, 20); panel_1.add(label_7); - + Nachname = new JTextField(); Nachname.setEnabled(false); Nachname.setEditable(false); @@ -160,12 +164,12 @@ isAllInformationReady = false; Nachname.setColumns(10); Nachname.setBounds(145, 64, 350, 20); panel_1.add(Nachname); - + JLabel label_8 = new JLabel("Hochschule: *"); label_8.setBackground(SystemColor.menu); label_8.setBounds(10, 95, 125, 20); panel_1.add(label_8); - + Hochschule = new JTextField(); Hochschule.setEnabled(false); Hochschule.setEditable(false); @@ -174,12 +178,12 @@ isAllInformationReady = false; Hochschule.setColumns(10); Hochschule.setBounds(145, 95, 350, 20); panel_1.add(Hochschule); - + JLabel label_9 = new JLabel("E-Mail: *"); label_9.setBackground(SystemColor.menu); label_9.setBounds(10, 126, 125, 20); panel_1.add(label_9); - + EMail = new JTextField(); EMail.setEnabled(false); EMail.setEditable(false); @@ -188,62 +192,63 @@ isAllInformationReady = false; EMail.setColumns(10); EMail.setBounds(145, 126, 350, 20); panel_1.add(EMail); - + JPanel panel = new JPanel(); panel.setBounds(10, 402, 577, 33); contentPanel.add(panel); panel.setLayout(null); panel.setBorder(new EmptyBorder(5, 5, 5, 5)); panel.setBackground(SystemColor.menu); - + JLabel lblHauptmen = new JLabel("Hauptmen\u00FC"); lblHauptmen.addMouseListener(new MouseAdapter() { @Override public void mouseClicked(MouseEvent arg0) { - + EditLectureAllgemein_GUI.this.setVisible(false); - MainMenue_GUI main=new MainMenue_GUI(); + 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, 84, 14); contentPanel.add(lblVlimage); - + JLabel label_2 = new JLabel(">"); label_2.setBounds(175, 11, 13, 14); contentPanel.add(label_2); - + JLabel lblNewLabel_1 = new JLabel("Bearbeiten"); lblNewLabel_1.setBounds(188, 11, 72, 14); contentPanel.add(lblNewLabel_1); - + JPanel panel_2 = new JPanel(); panel_2.setLayout(null); - panel_2.setBorder(new TitledBorder(null, "Veranstaltungsdaten", TitledBorder.LEADING, TitledBorder.TOP, null, null)); + panel_2.setBorder(new TitledBorder(null, "Veranstaltungsdaten", + TitledBorder.LEADING, TitledBorder.TOP, null, null)); panel_2.setBackground(SystemColor.menu); panel_2.setBounds(10, 36, 557, 284); contentPanel.add(panel_2); - + JLabel label_3 = new JLabel("Laborname (Anzeigename): *"); label_3.setBounds(10, 25, 180, 14); panel_2.add(label_3); - + textFieldLaborname = new JTextField(); textFieldLaborname.setText(Lecture.lecture.getName()); textFieldLaborname.setColumns(10); textFieldLaborname.setBounds(200, 22, 347, 20); panel_2.add(textFieldLaborname); - + JTextArea textArea = new JTextArea(); textArea.setEditable(false); textArea.setWrapStyleWord(true); @@ -253,11 +258,11 @@ isAllInformationReady = false; textArea.setBackground(SystemColor.menu); textArea.setBounds(10, 49, 537, 49); panel_2.add(textArea); - + JLabel label_4 = new JLabel("Beschreibung: *"); label_4.setBounds(10, 111, 180, 14); panel_2.add(label_4); - + ScrollPane scrollPane = new ScrollPane(); scrollPane.setBounds(200, 104, 347, 78); panel_2.add(scrollPane); @@ -268,27 +273,29 @@ isAllInformationReady = false; scrollPane.add(description); description.setBounds(0, 0, 4, 22); scrollPane.add(description); - + dateChooserend = new JDateChooser(); dateChooserend.setDateFormatString("dd-MM-yyyy HH:mm:ss"); dateChooserend.setDate(Lecture.lecture.getEnddate()); dateChooserend.setBounds(404, 188, 143, 20); panel_2.add(dateChooserend); - + JLabel label_5 = new JLabel("bis"); label_5.setBounds(378, 188, 21, 20); panel_2.add(label_5); - + dateChooserstart = new JDateChooser(); - dateChooserstart.addPropertyChangeListener(new PropertyChangeListener() { - public void propertyChange(PropertyChangeEvent arg0) { - endDate = addDays(dateChooserstart.getDate(), maxLifeTime); // Datum darf weiter als 6 - // Monate in der Zukunft - // liegen - } - }); - - //initialize + dateChooserstart + .addPropertyChangeListener(new PropertyChangeListener() { + public void propertyChange(PropertyChangeEvent arg0) { + endDate = addDays(dateChooserstart.getDate(), + maxLifeTime); // Datum darf weiter als 6 + // Monate in der Zukunft + // liegen + } + }); + + // initialize if (Lecture.lecture.getStartdate() == null) { // is not defined yet dateChooserstart.setDate(startDate); @@ -296,7 +303,7 @@ isAllInformationReady = false; // already defined from last visit on this page dateChooserstart.setDate(Lecture.lecture.getStartdate()); } - + if (Lecture.lecture.getEnddate() == null) { // is not defined yet dateChooserend.setDate(endDate); @@ -304,24 +311,24 @@ isAllInformationReady = false; // already defined from last visit on this page dateChooserend.setDate(Lecture.lecture.getEnddate()); } - + dateChooserstart.setDateFormatString("yyyy-MM-dd HH:mm:ss"); dateChooserstart.setDate(Lecture.lecture.getStartdate()); dateChooserstart.setBounds(226, 188, 143, 20); panel_2.add(dateChooserstart); - + JLabel label_6 = new JLabel("von:"); label_6.setBounds(200, 188, 30, 20); panel_2.add(label_6); - + JLabel label_10 = new JLabel("G\u00FCltigkeitsdatum: *"); label_10.setBounds(10, 188, 250, 14); panel_2.add(label_10); - + JLabel label_11 = new JLabel("Aktiv:"); label_11.setBounds(10, 229, 250, 14); panel_2.add(label_11); - + radioButtonyes = new JRadioButton("Ja"); buttonGroup.add(radioButtonyes); radioButtonyes.setBounds(240, 225, 109, 23); @@ -330,7 +337,7 @@ isAllInformationReady = false; buttonGroup.add(radioButtonno); radioButtonno.setBounds(385, 225, 109, 23); panel_2.add(radioButtonno); - + radioButtonyes.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent arg0) { radioButtonyes.setSelected(true); @@ -343,19 +350,15 @@ isAllInformationReady = false; radioButtonyes.setSelected(false); } }); - - - - - + JLabel label_12 = new JLabel("(Im VMChooser sichtbar)"); label_12.setBounds(10, 254, 250, 14); panel_2.add(label_12); - + JLabel lblmaxMonate = new JLabel("(max. 6 Monate)"); lblmaxMonate.setBounds(10, 208, 127, 14); panel_2.add(lblmaxMonate); - + { JPanel buttonPane = new JPanel(); buttonPane.setBounds(0, 640, 597, 33); @@ -366,23 +369,20 @@ isAllInformationReady = false; JButton okButton = new JButton("Zur\u00FCck"); okButton.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - - if(radioButtonyes.isSelected()==true) - { + + if (radioButtonyes.isSelected() == true) { Lecture.lecture.setActive(true); - } - else - { + } else { Lecture.lecture.setActive(false); } - + Lecture.lecture.setName(textFieldLaborname.getText()); Lecture.lecture.setDesc(description.getText()); Lecture.lecture.setEnddate(dateChooserend.getDate()); Lecture.lecture.setStartdate(dateChooserstart.getDate()); Image.image.setImagename(textFieldLaborname.getText()); - - MainMenue_GUI sr=new MainMenue_GUI(); + + MainMenue_GUI sr = new MainMenue_GUI(); sr.setVisible(true); dispose(); } @@ -394,28 +394,24 @@ isAllInformationReady = false; { JButton cancelButton = new JButton("Weiter"); cancelButton.addActionListener(new ActionListener() { - /*public void actionPerformed(ActionEvent e) { - if(radioButtonyes.isSelected()==true) - { - Lecture.lecture.setActive(true); - } - else - { - Lecture.lecture.setActive(false); - } - - Lecture.lecture.setName(textFieldLaborname.getText()); - Lecture.lecture.setNewName(textFieldLaborname.getText()); - Lecture.lecture.setDesc(description.getText()); - Lecture.lecture.setEnddate(dateChooserend.getDate()); - Lecture.lecture.setStartdate(dateChooserstart.getDate()); - Image.image.setImagename(textFieldLaborname.getText()); - - - PermissionEditLecture_GUI ev=new PermissionEditLecture_GUI(); - ev.setVisible(true); - dispose(); - }*/ + /* + * public void actionPerformed(ActionEvent e) { + * if(radioButtonyes.isSelected()==true) { + * Lecture.lecture.setActive(true); } else { + * Lecture.lecture.setActive(false); } + * + * Lecture.lecture.setName(textFieldLaborname.getText()); + * Lecture.lecture.setNewName(textFieldLaborname.getText()); + * Lecture.lecture.setDesc(description.getText()); + * Lecture.lecture.setEnddate(dateChooserend.getDate()); + * Lecture.lecture.setStartdate(dateChooserstart.getDate()); + * Image.image.setImagename(textFieldLaborname.getText()); + * + * + * PermissionEditLecture_GUI ev=new + * PermissionEditLecture_GUI(); ev.setVisible(true); + * dispose(); } + */ public void actionPerformed(ActionEvent e) { // liegt das End-Datum vor dem Start-Datum? if (dateChooserend.getDate().before( @@ -441,9 +437,9 @@ isAllInformationReady = false; "Das End-Datum liegt zu weit in der Zukunft. Erlaubt ist maximal:\n" + endDate, "Datum fehlerhaft", JOptionPane.INFORMATION_MESSAGE); - - - dateChooserend.setDate(endDate); //setze Datum auf maximum + + dateChooserend.setDate(endDate); // setze Datum auf + // maximum } else { // bereit isDateMaxLifeTimeCorrect = true; @@ -474,7 +470,8 @@ isAllInformationReady = false; // weiter if (isAllInformationReady == true && isDateMaxLifeTimeCorrect == true - && isDateOrderCorrect == true) { + && isDateOrderCorrect == true + && descriptionLenghtOK() == true) { // everything is ok, proceed Lecture.lecture.setName(textFieldLaborname .getText()); @@ -482,7 +479,7 @@ isAllInformationReady = false; Lecture.lecture.setEnddate(dateChooserend.getDate()); Lecture.lecture.setStartdate(dateChooserstart .getDate()); - + Image.image.setImagename(textFieldLaborname .getText()); @@ -492,37 +489,37 @@ isAllInformationReady = false; } } - + }); cancelButton.setActionCommand("Cancel"); buttonPane.add(cancelButton); } } - + JSeparator separator = new JSeparator(); separator.setBounds(0, 78, 597, 2); getContentPane().add(separator); - + JSeparator separator_1 = new JSeparator(); separator_1.setBounds(0, 627, 597, 2); getContentPane().add(separator_1); - + JLabel lblPflichtfelder = new JLabel("* Pflichtfelder"); lblPflichtfelder.setBounds(32, 602, 136, 14); getContentPane().add(lblPflichtfelder); - + JMenuBar menuBar = new JMenuBar(); setJMenuBar(menuBar); - + JMenu mnNewMenu = new JMenu("Suchen"); menuBar.add(mnNewMenu); - + JMenuItem mntmVlSuche = new JMenuItem("VL Suche"); mnNewMenu.add(mntmVlSuche); - + JMenu mnNewMenu_1 = new JMenu("Hilfe"); menuBar.add(mnNewMenu_1); - + JMenuItem mntmFaq = new JMenuItem("FAQ"); mntmFaq.addMouseListener(new MouseAdapter() { @Override @@ -539,7 +536,6 @@ isAllInformationReady = false; } }); mnNewMenu_1.add(mntmFaq); - JMenuItem mntmOtrs = new JMenuItem("OTRS"); mntmOtrs.addMouseListener(new MouseAdapter() { @@ -557,7 +553,7 @@ isAllInformationReady = false; } }); mnNewMenu_1.add(mntmOtrs); - + JMenuItem mntmAbout = new JMenuItem("About"); mntmAbout.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -566,14 +562,33 @@ isAllInformationReady = false; } }); mnNewMenu_1.add(mntmAbout); - + } - + public Date addDays(Date date, int days) { Calendar cal = Calendar.getInstance(); cal.setTime(date); cal.add(Calendar.DATE, days); // minus number would decrement the days return cal.getTime(); - } + }// end addDays() + + public boolean descriptionLenghtOK() { + descriptionLengthOK = false; + + // max length is 254 chars + if (description.getText().length() >= MAX_DESCRIPTION_LENGTH) { + descriptionLengthOK = false; + JOptionPane.showMessageDialog(null, + "Die Beschreibung darf max 254 Zeichen enthalten. Aktuell enthält sie " + + description.getText().length() + ".", + "Beschreibung zu umfangreich", + JOptionPane.INFORMATION_MESSAGE); + } else { + descriptionLengthOK = true; + + } + + return descriptionLengthOK; + }// enddescriptionLenghtOK() -}
\ No newline at end of file +}// end class
\ No newline at end of file |
