import java.awt.Dimension; import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JPasswordField; import javax.swing.BorderFactory; import javax.swing.JOptionPane; import java.util.Properties; public class pmFormRegister extends pmAbstractFormGetAccount { private final String strScriptHandler = strBase + "profileMakerRegisterScript.pl"; private JLabel lblConfirmPass; private JPasswordField txtConfirmPass; public pmFormRegister (JFrame mainApp) { super(mainApp, "Register", new Dimension(200, 170)); cmdLogin.setText("Register"); lblConfirmPass = new JLabel("Confirm Pass: ", JLabel.RIGHT); txtConfirmPass = new JPasswordField("", 5); panGrid = new JPanel(new GridLayout(3, 2, 2, 2)); panRoot.add(panGrid, BorderLayout.NORTH); panGrid.add(lblAlias); panGrid.add(txtAlias); panGrid.add(lblPass); panGrid.add(txtPass); panGrid.add(lblConfirmPass); panGrid.add(txtConfirmPass); panGrid.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(clrTitledBorder), "Registeration Details")); } public void actionPerformed (ActionEvent e) { if (e.getSource() == cmdLogin) { String strAlias = txtAlias.getText(); String strPass = ""; String strConfirmPass = ""; try { strPass = new String(txtPass.getPassword()); strConfirmPass = new String(txtConfirmPass.getPassword()); } catch (NullPointerException ex) { strPass = new String(""); strConfirmPass = new String(""); } finally { txtPass.setText(""); txtConfirmPass.setText(""); } if (strAlias.equals("") || strPass.equals("") || strConfirmPass.equals("")) { JOptionPane.showMessageDialog(mainApp, "Not all fields were filled in", "Missing fields", JOptionPane.WARNING_MESSAGE); } else if (!strPass.equals(strConfirmPass)) { JOptionPane.showMessageDialog(mainApp, "Password and confirm password do not match", "Mismatch", JOptionPane.WARNING_MESSAGE); } else if (testpmValidData(strAlias, strPass)) { Properties props = null; try { props = performConnection(strScriptHandler, strAlias, strPass); } catch (dialogueException ex) { ex.displayError(mainApp); } if (props.getProperty("registerSuccess").equalsIgnoreCase("true")) { isLoggedIn = true; JOptionPane.showMessageDialog(mainApp, "Your account was successfully created\nYou have also been logged in", "Account created", JOptionPane.INFORMATION_MESSAGE); this.setVisible(false); } else { JOptionPane.showMessageDialog(mainApp, (String)props.getProperty("errorMsg"), (String)props.getProperty("errorMsgTitle"), JOptionPane.WARNING_MESSAGE); } } } else if (e.getSource() == cmdCancel) { this.setVisible(false); } } }