106 lines
3.5 KiB
Java
106 lines
3.5 KiB
Java
![]() |
import java.awt.event.ActionEvent;
|
||
|
import java.awt.event.ActionListener;
|
||
|
import java.io.IOException;
|
||
|
import java.sql.Array;
|
||
|
import java.util.ArrayList;
|
||
|
import java.util.Objects;
|
||
|
import javax.swing.*;
|
||
|
|
||
|
public class LoginConnection extends BFrame implements ActionListener {
|
||
|
protected BInput inUser;
|
||
|
protected BInput inPasswd;
|
||
|
|
||
|
public LoginConnection(String title, int x, int y, int mode) throws IOException {
|
||
|
super(title, x, y, mode);
|
||
|
BImage logo = new BImage("src/assets/img/logo.png");
|
||
|
BLayout settings = new BLayout();
|
||
|
|
||
|
BLabel[] blank = {
|
||
|
new BLabel(" "),
|
||
|
new BLabel(" "),
|
||
|
new BLabel(" ")
|
||
|
};
|
||
|
|
||
|
settings.setPositionX(1);
|
||
|
this.add(logo.getImage(), settings);
|
||
|
|
||
|
settings.setPositionY(3);
|
||
|
this.add(blank[0], settings);
|
||
|
|
||
|
BLabel laUser = new BLabel("Utilisateur");
|
||
|
settings.setPositionY(4);
|
||
|
this.add(laUser, settings);
|
||
|
|
||
|
this.inUser = new BInput(300, 20);
|
||
|
settings.setPositionY(5);
|
||
|
this.add(inUser, settings);
|
||
|
|
||
|
settings.setPositionY(6);
|
||
|
this.add(blank[1], settings);
|
||
|
|
||
|
BLabel laPasswd = new BLabel("Mot de passe");
|
||
|
settings.setPositionY(7);
|
||
|
this.add(laPasswd, settings);
|
||
|
|
||
|
this.inPasswd = new BInput(300, 20);
|
||
|
settings.setPositionY(8);
|
||
|
this.add(inPasswd, settings);
|
||
|
|
||
|
settings.setPositionY(9);
|
||
|
this.add(blank[2], settings);
|
||
|
|
||
|
BButton login = new BButton("Connexion");
|
||
|
login.addActionListener(this);
|
||
|
settings.setPositionY(10);
|
||
|
this.add(login, settings);
|
||
|
|
||
|
this.openBFrame();
|
||
|
this.refreshBFrame();
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void actionPerformed(ActionEvent e) {
|
||
|
BDatabase init = new BDatabase();
|
||
|
String pass = inPasswd.getText();
|
||
|
String user = inUser.getText();
|
||
|
int grade = -1;
|
||
|
boolean canConnect = false;
|
||
|
|
||
|
if(init.fetchAll("SELECT utilisateur FROM Comptes WHERE utilisateur='" + user + "'").size() == 0) {
|
||
|
JOptionPane.showMessageDialog(this, "Utilisateur introuvable.");
|
||
|
} else {
|
||
|
String username = init.fetchAll("SELECT utilisateur FROM Comptes WHERE utilisateur='" + user + "'").get(0);
|
||
|
String passwd = init.fetchAll("SELECT pass FROM Comptes WHERE utilisateur='" + user + "'").get(0);
|
||
|
if(!Objects.equals(passwd, pass)) {
|
||
|
JOptionPane.showMessageDialog(this, "Mot de passe incorrect.");
|
||
|
} else {
|
||
|
canConnect = true;
|
||
|
|
||
|
grade = Integer.parseInt(
|
||
|
init.fetchAll(
|
||
|
"SELECT idGrade FROM Comptes WHERE utilisateur='" + user + "'").get(0)
|
||
|
);
|
||
|
|
||
|
init.current_user = Integer.parseInt(
|
||
|
init.fetchAll(
|
||
|
"SELECT idCompte FROM Comptes WHERE utilisateur='" + user + "'").get(0)
|
||
|
);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if(canConnect) {
|
||
|
String firstname = init.fetchAll(
|
||
|
"SELECT nom FROM Membres WHERE idCompte=" + init.current_user
|
||
|
).get(0);
|
||
|
|
||
|
String lastname = init.fetchAll(
|
||
|
"SELECT prenom FROM Membres WHERE idCompte=" + init.current_user
|
||
|
).get(0);
|
||
|
|
||
|
Home home = new Home(init, grade, firstname, lastname);
|
||
|
} else{
|
||
|
System.out.println("Erreur.");
|
||
|
}
|
||
|
}
|
||
|
}
|