-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
211 lines (169 loc) · 7.52 KB
/
script.js
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
// scripts.js
// overlay script
document.addEventListener('DOMContentLoaded', (event) => {
const menuBar = document.querySelector('.menu-bar');
const overlay = document.getElementById('overlay');
const closeOverlay = document.getElementById('closeOverlay');
menuBar.addEventListener('click', function() {
overlay.style.display = 'block';
});
closeOverlay.addEventListener('click', function() {
overlay.style.display = 'none';
});
// Close the overlay when clicking outside of the overlay content
window.addEventListener('click', function(event) {
if (event.target == overlay) {
overlay.style.display = 'none';
}
});
});
// Login form script
document.addEventListener('DOMContentLoaded', function() {
document.getElementById('loginForm').addEventListener('submit', function(event) {
event.preventDefault();
let valid = true;
const username = document.getElementById('loginUsername');
const password = document.getElementById('loginPassword');
const userNameErrorMessage = document.getElementById("userNameErrorMessage");
const passwordErrorMessage = document.getElementById("passwordErrorMessage");
if (username.value.trim() === '' || username.value.trim().length < 5) {
username.style.border = '1px solid red';
userNameErrorMessage.style.display = "block"; // show error message when input is not valid
valid = false;
} else {
username.style.border = '1px solid green';
userNameErrorMessage.style.display = "none"; // Hide the error message when input is valid
}
if (password.value.trim() === '' || password.value.trim().length < 8) {
password.style.border = '1px solid red';
passwordErrorMessage.style.display = "block"; // show error message when input is not valid
valid = false;
} else {
password.style.border = '1px solid green';
passwordErrorMessage.style.display = "none"; // Hide the error message when input is valid
}
if (valid) {
console.log('Login form is valid');
}
});
})
// Signup form scripts
document.addEventListener('DOMContentLoaded', function() {
const signupForm = document.getElementById('signupForm');
if (signupForm) {
signupForm.addEventListener('submit', function(event) {
event.preventDefault();
let validation = true;
const user = document.getElementById('signupUsername');
const userNameError = document.getElementById('userNameError');
const email = document.getElementById('signupEmail');
const emailError = document.getElementById('emailError');
const password1 = document.getElementById('signupPassword1');
const password1Error = document.getElementById('password1Error');
const password2 = document.getElementById('signupPassword2');
const password2Error = document.getElementById('password2Error');
if (user.value.trim() === '' || user.value.trim().length < 5) {
user.style.border = '1px solid red';
userNameError.style.display = "block"; // show error message when input is not valid
validation = false;
} else {
user.style.border = '1px solid green';
userNameError.style.display = "none"; // Hide the error message when input is valid
}
const emailPattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
if (!emailPattern.test(email.value.trim())) {
email.style.border = '1px solid red';
emailError.style.display = "block"; // show error message when input is not valid
validation = false;
} else {
email.style.border = '1px solid green';
emailError.style.display = "none"; // Hide the error message when input is valid
}
if (password1.value.trim() === '' || password1.value.trim().length < 8) {
password1.style.border = '1px solid red';
password1Error.style.display = "block"; // show error message when input is not valid
validation = false;
} else {
password1.style.border = '1px solid green';
password1Error.style.display = "none"; // Hide the error message when input is valid
}
if (password2.value.trim() === '' || password2.value.trim().length < 8 || password1.value !== password2.value) {
password2.style.border = '1px solid red';
password2Error.style.display = "block"; // show error message when input is not valid
validation = false;
} else {
password2.style.border = '1px solid green';
password2Error.style.display = "none"; // Hide the error message when input is valid
}
if (validation) {
console.log('Signup form is valid');
// Submit the form or perform further actions
}
});
};
})
const form =document.getElementById("form");
const username =document.getElementById("username");
const email =document.getElementById("email");
const password =document.getElementById("password");
const passwordcheck =document.getElementById("passwordcheck");
form.addEventListener("submit", function(e){
e.preventDefault();
checkInput();
});
function checkInput(){
const usernameValue= username.value.trim();
const emailValue= email.value.trim();
const passwordValue= password.value.trim();
const passwordcheckValue= passwordcheck.value.trim();
if (usernameValue === ""){
setErrorfor(username, "Sorry! username field can not be empty");
}else if(usernameValue.length < 5){
setErrorfor(username, "Username must contain at least five characters");
}else{
setSuccessfor(username);
}
if (emailValue === ""){
setErrorfor(email, "Sorry! email field can not be empty");
}else if
(!isEmail(emailValue)){
setErrorfor(email, "Email is not valid!");
}
else{
setSuccessfor(email);
}
if (passwordValue === ""){
setErrorfor(password, "Sorry! password field can not be empty");
}else if
(passwordValue.length < 8){
setErrorfor(password, "password must contain at least 8 characters!");
}else{
setSuccessfor(password);
}
if (passwordcheckValue === ""){
setErrorfor(passwordcheck, "Sorry! password field can not be empty");
}else if
(passwordValue !== passwordcheckValue){
setErrorfor(passwordcheck, "Password do not match!");
}else if(passwordcheckValue.length<8){
setErrorfor(passwordcheck, "password must contain at least 8 characters!");
}else{
setSuccessfor(passwordcheck);
}
}
function isEmail(email) {
return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
}
function isValidPassword(password) {
return /^(?=.[a-z])(?=.[A-Z])(?=.\d)(?=.[@$!%?&])[A-Za-z\d@$!%?&]{8,}$/.test(password);
}
function setErrorfor(input, message){
const formControl = input.parentElement;
const small = formControl.querySelector("small");
small.innerText=message;
formControl.className = "form-control error";
}
function setSuccessfor(input){
const formControl = input.parentElement;
formControl.className = "form-control success";
}