Iteración 3(Versión sin idiomas)
[ISBets21MAUBRY] / eclipse-workspace / ISBets21MAUBRY / src / main / java / gui / CreateEventGUI.java
diff --git a/eclipse-workspace/ISBets21MAUBRY/src/main/java/gui/CreateEventGUI.java b/eclipse-workspace/ISBets21MAUBRY/src/main/java/gui/CreateEventGUI.java
new file mode 100644 (file)
index 0000000..2e58610
--- /dev/null
@@ -0,0 +1,181 @@
+package gui;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Frame;
+import java.awt.SystemColor;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.Locale;
+
+import javax.swing.JButton;
+import javax.swing.JFrame;
+import javax.swing.JLabel;
+import javax.swing.JOptionPane;
+import javax.swing.JPanel;
+import javax.swing.JTextField;
+import javax.swing.border.EmptyBorder;
+
+import com.toedter.calendar.JCalendar;
+
+import businessLogic.BLFacade;
+import configuration.UtilDate;
+import domain.AdminUser;
+import domain.Event;
+
+public class CreateEventGUI extends JFrame {
+
+       private JPanel contentPane;
+       private JTextField textEvento;
+       private static BLFacade facade = LoginGUI.getBusinessLogic();
+       private Calendar calendarAct = null;
+       private Calendar calendarAnt = null;
+
+       private AdminUser userlog = null;
+       private JButton btnAtras;
+       private JButton btnCrearEvento = new JButton("Crear evento");
+
+       public static void setBusinessLogic(BLFacade pfacade) {
+               facade = pfacade;
+       }
+
+       public static BLFacade getBusinessLogic() {
+               return facade;
+       }
+
+       public CreateEventGUI(AdminUser au) {
+
+               userlog = au;
+
+               setTitle("Crear evento");
+               setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+               setBounds(100, 100, 585, 407);
+               contentPane = new JPanel();
+               contentPane.setBackground(Color.WHITE);
+               contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
+               setContentPane(contentPane);
+               contentPane.setLayout(null);
+
+               JCalendar jCalendar1 = new JCalendar();
+               jCalendar1.getDayChooser().getDayPanel().setBackground(Color.WHITE);
+               jCalendar1.addPropertyChangeListener(new PropertyChangeListener() {
+                       @Override
+                       public void propertyChange(PropertyChangeEvent evt) {
+                               if (evt.getPropertyName().equals("locale")) {
+                                       jCalendar1.setLocale((Locale) evt.getNewValue());
+                               } else if (evt.getPropertyName().equals("calendar")) {
+                                       calendarAnt = (Calendar) evt.getOldValue();
+                                       calendarAct = (Calendar) evt.getNewValue();
+
+                                       int monthAnt = calendarAnt.get(Calendar.MONTH);
+                                       int monthAct = calendarAct.get(Calendar.MONTH);
+                                       if (monthAct != monthAnt) {
+                                               if (monthAct == monthAnt + 2) {
+                                                       // Si en JCalendar está 30 de enero y se avanza al mes siguiente, devolvería 2
+                                                       // de marzo (se toma como equivalente a 30 de febrero)
+                                                       // Con este código se dejará como 1 de febrero en el JCalendar
+                                                       calendarAct.set(Calendar.MONTH, monthAnt + 1);
+                                                       calendarAct.set(Calendar.DAY_OF_MONTH, 1);
+                                               }
+
+                                               jCalendar1.setCalendar(calendarAct);
+
+                                       }
+
+                               }
+
+                       }
+               });
+               jCalendar1.setBounds(163, 30, 266, 175);
+               contentPane.add(jCalendar1);
+
+               JLabel lblNewLabel = new JLabel("Introduzca fecha:");
+               lblNewLabel.setBounds(41, 115, 103, 14);
+               contentPane.add(lblNewLabel);
+
+               JLabel lblNewLabel_1 = new JLabel("Introduzca partido:");
+               lblNewLabel_1.setBounds(41, 242, 113, 14);
+               contentPane.add(lblNewLabel_1);
+
+               textEvento = new JTextField();
+               textEvento.setBounds(163, 237, 266, 23);
+               textEvento.setForeground(Color.GRAY);
+               textEvento.setFont(new Font("Arial", Font.PLAIN, 16));
+               contentPane.add(textEvento);
+               textEvento.setColumns(10);
+               btnCrearEvento.setBackground(SystemColor.textHighlight);
+               btnCrearEvento.setForeground(Color.WHITE);
+               btnCrearEvento.setFont(new Font("Dialog", Font.BOLD, 14));
+
+//             btnCrearEvento.setText(ResourceBundle.getBundle("Etiquetas").getString("CreateEvent"));
+               btnCrearEvento.setText("CreateEvent");
+               btnCrearEvento.addActionListener(new ActionListener() {
+                       @Override
+                       public void actionPerformed(ActionEvent e) {
+                               Date date = UtilDate.trim(new Date(jCalendar1.getCalendar().getTime().getTime()));
+
+                               if (textEvento.getText().equals("")) {
+                                       JOptionPane.showMessageDialog(getContentPane(), "El evento no puede estar vacío", "Error",
+                                                       JOptionPane.ERROR_MESSAGE);
+                               } else {
+
+                                       Event ev = new Event(facade.getMaxIdInDB() + 1, textEvento.getText(), date);
+
+                                       boolean exist = facade.existEvent(ev);
+
+                                       if (exist == false) {
+
+                                               boolean ins = facade.insertEvent(ev);
+
+                                               if (ins) {
+                                                       JOptionPane.showMessageDialog(contentPane, "Evento añadido correctamente");
+
+                                               } else {
+                                                       JOptionPane.showMessageDialog(contentPane, "No se ha podido añadir el evento");
+
+                                               }
+
+                                               Frame gui = new MainAdminGUI(userlog);
+                                               gui.setAlwaysOnTop(true);
+                                               gui.setVisible(true);
+                                               close();
+                                       } else {
+                                               JOptionPane.showMessageDialog(contentPane, "Evento ya existente");
+                                       }
+                               }
+
+                       }
+               });
+               btnCrearEvento.setBounds(220, 310, 145, 23);
+               contentPane.add(btnCrearEvento);
+
+               btnAtras = new JButton();
+               btnAtras.setBackground(SystemColor.controlShadow);
+               btnAtras.setForeground(Color.WHITE);
+               btnAtras.setFont(new Font("Dialog", Font.BOLD, 14));
+//             btnAtras.setText(ResourceBundle.getBundle("Etiquetas").getString("Close"));
+               btnAtras.setText("Close");
+
+               btnAtras.addActionListener(new ActionListener() {
+                       @Override
+                       public void actionPerformed(ActionEvent arg0) {
+
+                               Frame fr = new MainAdminGUI(userlog);
+                               fr.setAlwaysOnTop(true);
+                               fr.setVisible(true);
+                               dispose();
+
+                       }
+               });
+               btnAtras.setBounds(12, 310, 113, 23);
+               contentPane.add(btnAtras);
+       }
+
+       public void close() {
+               this.setVisible(false);
+       }
+}