-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathenter.js
More file actions
87 lines (80 loc) · 3.25 KB
/
Copy pathenter.js
File metadata and controls
87 lines (80 loc) · 3.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
function showLogin(){
document.getElementById("loginPage").style.display="block";
document.getElementById("registerPage").style.display="none";
document.getElementById("loginTab").classList.add("active");
document.getElementById("registerTab").classList.remove("active");
}
function showRegister(){
document.getElementById("loginPage").style.display="none";
document.getElementById("registerPage").style.display="block";
document.getElementById("registerTab").classList.add("active");
document.getElementById("loginTab").classList.remove("active");
}
function register(){
let fname = document.getElementById("fname").value.trim();
let lname = document.getElementById("lname").value.trim();
let email = document.getElementById("email").value.trim();
let pass = document.getElementById("pass").value;
let pass2 = document.getElementById("pass2").value;
let valid = true;
// RESET ERRORS
document.getElementById("nameErr").innerText="";
document.getElementById("emailErr").innerText="";
document.getElementById("passErr").innerText="";
document.getElementById("pass2Err").innerText="";
// 🔹 NAME VALIDATION (ONLY ALPHABETS)
let nameRegex = /^[A-Za-z]+$/;
if(!nameRegex.test(fname) || !nameRegex.test(lname)){
document.getElementById("nameErr").innerText = "Only alphabets allowed";
valid = false;
}
// 🔹 EMAIL VALIDATION (PROPER FORMAT)
let emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
if(!emailRegex.test(email)){
document.getElementById("emailErr").innerText = "Invalid email format";
valid = false;
}
if(pass.length < 6){
document.getElementById("passErr").innerText = "Password must be at least 6 characters";
valid = false;
}
if(pass !== pass2){
document.getElementById("pass2Err").innerText = "Passwords do not match";
valid = false;
}
if(valid){
localStorage.setItem("email", email);
localStorage.setItem("password", pass);
showLogin();
}
}
function login(){
let email = document.getElementById("loginEmail").value.trim();
let pass = document.getElementById("loginPass").value;
let valid = true;
document.getElementById("loginEmailErr").innerText="";
document.getElementById("loginPassErr").innerText="";
let emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
if(!emailRegex.test(email)){
document.getElementById("loginEmailErr").innerText = "Invalid email format";
valid = false;
}
if(pass.length < 6){
document.getElementById("loginPassErr").innerText = "Password must be at least 6 characters";
valid = false;
}
if(!valid) return;
let storedEmail = localStorage.getItem("email");
let storedPass = localStorage.getItem("password");
if(email !== storedEmail){
document.getElementById("loginEmailErr").innerText = "Email not registered";
return;
}
if(pass !== storedPass){
document.getElementById("loginPassErr").innerText = "Incorrect password";
return;
}
let name = email.split("@")[0];
localStorage.setItem("username", name);
window.location.href = "dashboard.html";
}