-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
90 lines (79 loc) · 2.14 KB
/
Copy pathscript.js
File metadata and controls
90 lines (79 loc) · 2.14 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
88
89
90
const form = document.getElementById("form");
const username = document.getElementById("username");
const email = document.getElementById("email");
const message = document.getElementById("message");
//Main Functionn
form.addEventListener("submit", (event) => {
event.preventDefault();
checkingForm();
});
// Function for form validation
function checkingForm() {
//check username
if (username.value === "") {
showError(username, "Please input your name");
} else {
showSuccess(username);
}
//check email
if (email.value === "") {
showError(email, "Please input your email");
} else if (!isEmail(email.value)) {
showError(email, "Please check your e-mail address is correct");
} else {
showSuccess(email);
}
//check message
if (message.value === "") {
showError(message, "Please include a message");
} else {
showSuccess(message);
showToast();
}
//clear form when submitted
if (username.value && isEmail(email.value) && message.value) {
username.value = "";
email.value = "";
message.value = "";
}
}
// show error input
function showError(input, message) {
const subform = input.parentElement;
subform.className = "subForm error";
const small = subform.querySelector("small");
small.innerText = message;
}
// show success input
function showSuccess(input) {
const subform = input.parentElement;
subform.className = "subForm success";
}
// Funtion to check email (regex)
function isEmail(email) {
const valid =
/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/;
return valid.test(email);
}
// Navigation scrolling
document.addEventListener("scroll", () => {
const navbar = document.querySelector(".navbar");
if (window.scrollY > 0) {
navbar.classList.add("scrolling");
} else {
navbar.classList.remove("scrolling");
}
});
//diasplay an alert
function showToast() {
if (username.value !== "" && email.value !== "") {
Toastify({
text: "Your message was sent successfully",
duration: 2500,
gravity: "top",
singleToast: true,
className: "toastify",
backgroundColor: "#a9bd12",
}).showToast();
}
}