diff options
Diffstat (limited to 'Dozentenmodul/src/gui/lecture/CreateLectureAllgemein_GUI.java')
| -rw-r--r-- | Dozentenmodul/src/gui/lecture/CreateLectureAllgemein_GUI.java | 76 |
1 files changed, 51 insertions, 25 deletions
diff --git a/Dozentenmodul/src/gui/lecture/CreateLectureAllgemein_GUI.java b/Dozentenmodul/src/gui/lecture/CreateLectureAllgemein_GUI.java index 4f101454..76bf3933 100644 --- a/Dozentenmodul/src/gui/lecture/CreateLectureAllgemein_GUI.java +++ b/Dozentenmodul/src/gui/lecture/CreateLectureAllgemein_GUI.java @@ -66,13 +66,16 @@ public class CreateLectureAllgemein_GUI extends JFrame { JDateChooser dateChooserstart; Date startDate = new Date(); Date endDate; - + 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; - /** * Create the dialog. */ @@ -274,13 +277,15 @@ public class CreateLectureAllgemein_GUI extends JFrame { description.setBounds(0, 0, 4, 22); scrollPane.add(description); 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 - } - }); + dateChooserstart + .addPropertyChangeListener(new PropertyChangeListener() { + public void propertyChange(PropertyChangeEvent arg0) { + endDate = addDays(dateChooserstart.getDate(), + maxLifeTime); // Datum darf weiter als 6 + // Monate in der Zukunft + // liegen + } + }); if (Lecture.lecture.getStartdate() == null) { // is not defined yet dateChooserstart.setDate(startDate); @@ -293,9 +298,12 @@ public class CreateLectureAllgemein_GUI extends JFrame { panel_2.add(dateChooserstart); dateChooserend = new JDateChooser(); - endDate = addDays(dateChooserstart.getDate(), maxLifeTime); // Datum darf weiter als 6 - // Monate in der Zukunft - // liegen + endDate = addDays(dateChooserstart.getDate(), maxLifeTime); // Datum + // darf + // weiter + // als 6 + // Monate in der Zukunft + // liegen dateChooserend.setDate(endDate); if (Lecture.lecture.getEnddate() == null) { // is not defined yet @@ -312,8 +320,6 @@ public class CreateLectureAllgemein_GUI extends JFrame { lblBis.setBounds(378, 188, 21, 20); panel_2.add(lblBis); - - JLabel label_6 = new JLabel("von:"); label_6.setBounds(200, 188, 30, 20); panel_2.add(label_6); @@ -350,7 +356,7 @@ public class CreateLectureAllgemein_GUI extends JFrame { JLabel lblimVmchooserSichtbar = new JLabel("(im VMChooser sichtbar)"); lblimVmchooserSichtbar.setBounds(10, 245, 127, 14); panel_2.add(lblimVmchooserSichtbar); - + JLabel lblmaxMonate = new JLabel("(max. 6 Monate)"); lblmaxMonate.setBounds(10, 208, 127, 14); panel_2.add(lblmaxMonate); @@ -415,9 +421,9 @@ public class CreateLectureAllgemein_GUI extends JFrame { "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; @@ -448,7 +454,8 @@ public class CreateLectureAllgemein_GUI extends JFrame { // weiter if (isAllInformationReady == true && isDateMaxLifeTimeCorrect == true - && isDateOrderCorrect == true) { + && isDateOrderCorrect == true + && descriptionLenghtOK() == true) { // everything is ok, proceed Lecture.lecture.setName(txtFldVeranstaltungsname .getText()); @@ -456,7 +463,7 @@ public class CreateLectureAllgemein_GUI extends JFrame { Lecture.lecture.setEnddate(dateChooserend.getDate()); Lecture.lecture.setStartdate(dateChooserstart .getDate()); - + Image.image.setImagename(txtFldVeranstaltungsname .getText()); @@ -512,7 +519,6 @@ public class CreateLectureAllgemein_GUI extends JFrame { } }); mnNewMenu_1.add(mntmFaq); - JMenuItem mntmOtrs = new JMenuItem("OTRS"); mntmOtrs.addMouseListener(new MouseAdapter() { @@ -520,7 +526,7 @@ public class CreateLectureAllgemein_GUI extends JFrame { public void mousePressed(MouseEvent arg0) { OpenLinks open = new OpenLinks(); - + URI windows; try { windows = new URI(Links.getOTRS()); @@ -532,7 +538,7 @@ public class CreateLectureAllgemein_GUI extends JFrame { } }); mnNewMenu_1.add(mntmOtrs); - + JMenuItem mnmtAbout = new JMenuItem("About"); mnmtAbout.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -549,5 +555,25 @@ public class CreateLectureAllgemein_GUI extends JFrame { 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() + +}// end class |
