no warnings
[RRRRHHHH_Code] / ruralHouses / src / gui / LoginGUI.java
1 package gui;
2
3 import java.awt.Color;
4 import java.awt.Frame;
5 import java.awt.event.ActionEvent;
6 import java.awt.event.ActionListener;
7
8 import javax.swing.JButton;
9 import javax.swing.JFrame;
10 import javax.swing.JLabel;
11 import javax.swing.JPanel;
12 import javax.swing.JPasswordField;
13 import javax.swing.JTextField;
14 import javax.swing.SwingConstants;
15
16 import businessLogic.LoginManager;
17 import businessLogic.LoginManagerInterface;
18 import domain.Account;
19
20 public class LoginGUI extends JFrame {
21
22         private static final long serialVersionUID= 1L;
23         private JPanel jContentPane = null;
24         private JTextField usernameField;
25         private JPasswordField passwordField;
26         private LoginManagerInterface loginManager = new LoginManager();
27         private JLabel loginFeedback;
28         public LoginGUI() {
29                 super();
30                 initialize();
31         }
32
33         private void initialize() {
34                 this.setSize(449, 293);
35                 this.setContentPane(getJContentPane());
36                 this.setTitle("Login");
37
38         }
39
40         private JPanel getJContentPane() {
41                 if (jContentPane == null) {
42                         jContentPane = new JPanel();
43                         jContentPane.setLayout(null);
44                         
45                         JLabel usernameTag = new JLabel("Username:");
46                         usernameTag.setBounds(56, 67, 104, 20);
47                         jContentPane.add(usernameTag);
48                         
49                         JLabel passwordTag = new JLabel("Password:");
50                         passwordTag.setBounds(56, 132, 104, 15);
51                         jContentPane.add(passwordTag);
52                         
53                         usernameField = new JTextField();
54                         usernameField.setBounds(202, 65, 133, 25);
55                         jContentPane.add(usernameField);
56                         usernameField.setColumns(10);
57                         
58                         passwordField = new JPasswordField();
59                         passwordField.setBounds(202, 122, 133, 25);
60                         jContentPane.add(passwordField);
61                         
62                         JButton loginButton = new JButton("Login");
63                         loginButton.addActionListener(new ActionListener() {
64                                 public void actionPerformed(ActionEvent arg0) {
65
66                                 jButton_ActionPerformed(arg0);  
67                                 }                                       
68                         });
69                         loginButton.setBounds(164, 179, 117, 25);
70                         jContentPane.add(loginButton);
71                         
72                         loginFeedback = new JLabel("");
73                         loginFeedback.setForeground(Color.RED);
74                         loginFeedback.setHorizontalAlignment(SwingConstants.CENTER);
75                         loginFeedback.setBounds(83, 216, 269, 25);
76                         jContentPane.add(loginFeedback);
77                 }
78                 return jContentPane;
79         }
80         
81         private void jButton_ActionPerformed(ActionEvent e){
82                         
83                 Account acc = loginManager.checkCredentials(usernameField.getText(),new String(passwordField.getPassword()));
84                 if (acc.getAdmin()) {
85                         this.setVisible(false);
86                         Frame a = new AdminMenuGUI();
87                         a.setVisible(true);
88                 } else {
89                         if(acc.getOwner()==null){
90                                 loginFeedback.setText("Incorrect username or password");
91                         }else{
92                                 this.setVisible(false);
93                                 Frame a = new OwnerMenuGUI(acc.getOwner());
94                                 a.setVisible(true);             
95                         }
96                 }
97                 
98         }
99 }  // @jve:decl-index=0:visual-constraint="222,33"
100