package praktek1;
/**
*
* @author user
*/
import praktek1.MenuDariJOption;
import javax.swing.JOptionPane;
import java.util.*;
public class data{
public ArrayList nameArray = new ArrayList();
public ArrayList genderArray = new ArrayList();
public ArrayList passArray = new ArrayList();
public int countSignIn;
public int nameLength;
public int genderLength;
public int passLength;
public void mainMenu() {
String[] menu = {"Sign Up", "Sign In"};
int pilihan = JOptionPane.showOptionDialog(null,
"Selamat Datang Di Program Ini",
"Menu",
JOptionPane.YES_NO_OPTION,
JOptionPane.PLAIN_MESSAGE,
null, menu, null);
switch (pilihan) {
case 0:
signUp();
break;
case 1:
signIn();
break;
default:
JOptionPane.showMessageDialog(null, "Tolong Sign In dulu ya");
mainMenu();
break;
}
}
public void signUp() {
Object nameSuit[] = nameArray.toArray();
Object passSuit[] = passArray.toArray();
String nama = inpNama();
int d;
for (d = 0; d < nameArray.size(); d++) {
if (nameSuit[d].equals(nama)) {
JOptionPane.showMessageDialog(null, "User sudah ada!!");
signUp();
}
}
if (d == nameArray.size()) {
nameArray.add(nama);
}
genderArray.add(inpGender());
int i = 0;
while (i < 2) {
String pass = inpPassword();
if (!pass.matches(".{6,}")) {
JOptionPane.showMessageDialog(null, "Maaf, password minimal 6 karakter");
} else if (pass.matches(".{6,}")) {
passArray.add(pass);
mainMenu();
} else if (i == 2) {
i = 0;
}
}
}
public String inpNama() {
String nama = JOptionPane.showInputDialog("Masukkan nama Anda : ");
try {
if (nama.isEmpty()) {
JOptionPane.showMessageDialog(null, "Maaf nama tidak boleh kosong");
inpNama();
} else if (!nama.matches("[a-z A-Z]+")) {
JOptionPane.showMessageDialog(null, "Maaf masukkan huruf saja");
inpNama();
}
} catch (NullPointerException npe) {
JOptionPane.showMessageDialog(null, "Maaf memasukkan nama anda terlebih dahulu");
inpNama();
}
return nama;
}
public String inpGender() {
String gender = "";
String[] opGender = {"cewek", "cowok"};
int pilihan = JOptionPane.showOptionDialog(null,
"Silahkan pilih jenis kelamin anda",
"Gender",
JOptionPane.YES_NO_OPTION,
JOptionPane.PLAIN_MESSAGE,
null, opGender, null);
switch (pilihan) {
case 0:
gender = "Sista";
break;
case 1:
gender = "Brader";
break;
default:
JOptionPane.showMessageDialog(null, "Maaf Anda harus memilih jenis kelamin Anda terlebih dahulu");
inpGender();
break;
}
return gender;
}
public String inpPassword() {
String password = JOptionPane.showInputDialog("Silahkan masukkan password Anda");
try {
if (password.isEmpty()) {
JOptionPane.showMessageDialog(null, "Maaf password tidak boleh kosong");
inpPassword();
}
} catch (NullPointerException npe) {
JOptionPane.showMessageDialog(null, "Maaf anda harus masukkan password Anda terlebih dahulu");
inpPassword();
}
return password;
}
public void signIn() {
Object nameSuit[] = nameArray.toArray();
Object passSuit[] = passArray.toArray();
Object genderSuit[] = genderArray.toArray();
String nama = inpNama();
String password = inpPassword();
String kesalahan = "";
String betul = "";
int i;
for (i = 0; i < nameArray.size(); i++) {
if (nameSuit[i].equals(nama) && passSuit[i].equals(password)) {
JOptionPane.showMessageDialog(null,
" Selamat datang " + genderSuit[i] + " " + nameSuit[i] + "");
menuJOption();
} else if (!nameSuit[i].equals(nama) && !passSuit[i].equals(password)) {
kesalahan = "nama dan password";
betul = "ada";
} else {
if (!passSuit[i].equals(password)) {
kesalahan = "password";
betul = "cocok dengan nama";
}
if (!nameSuit[i].equals(nama)) {
kesalahan = "nama";
betul = "cocok dengan password";
}
}
}
if (i == nameArray.size()) {
JOptionPane.showMessageDialog(null, "Maaf password yang anda masukkan tidak cocok"
+" atau mungkin anda belum terdaftar"+ betul + "\ncoba lagi");
mainMenu();
}
}
public void menuJOption() {
MenuDariJOption konv = new MenuDariJOption();
String[] pilihan = {"Biner", "Hexa", "Oktal", "Terbilang", "Pecahan", "Log Out", "Sign Out"};
while (true) {
int response = JOptionPane.showOptionDialog(
null, "Selamat Datang !"
+ "\nPilih Konversi Bilangan di bawah ini"// Pesan
, "Konversi Bilangan" // Judul di Tittlebar
, JOptionPane.YES_NO_OPTION // Tipe Option
, JOptionPane.PLAIN_MESSAGE // Tipe Pesan
, null, pilihan, null // Default button
);
switch (response) {
case 0:
konv.setPilih("Biner");
MenuDariJOption.outHasilBiner();
break;
case 1:
konv.setPilih("Hexadesimal");
MenuDariJOption.outHasilHexa();
break;
case 2:
konv.setPilih("Oktal");
MenuDariJOption.outHasilOktal();
break;
case 3:
konv.setPilih("Terbilang");
konv.outTerbilang();
break;
case 4:
konv.setPilih("Pecahan");
konv.hasilPecahan();
break;
case 5:
mainMenu();
break;
case 6:
default:
JOptionPane.showMessageDialog(null, "Terima Kasih :)");
System.exit(0);
}
}
}
}
terima kasih ilmunya.. :)
BalasHapussalam kenal..