-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
131 lines (119 loc) · 4.43 KB
/
index.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
const navbarHeight = 92;
// Expand/Collapse mobile menu in navbar on icon click
$("#navbar .toggler-icon").click(function() {
// if mobile menu is already expanded, collapse it
if ($("#navbar").outerHeight() > 92) {
$("#navbar").css({
height: navbarHeight -
parseInt($("#navbar").css("padding-top")) -
parseInt($("#navbar").css("padding-bottom")),
});
}
// if mobile menu is already collapsed, expand it
else {
$("#navbar").css({
height: $("#navbar .links").height() +
$("#navbar .toggler-icon-container").height() +
16
});
}
});
// Prevent mobile menu from being displayed when window width >= 768px
$(window).resize(function() {
if ($(window).width() > 767) {
$("#navbar").css({
height: navbarHeight -
parseInt($("#navbar").css("padding-top")) -
parseInt($("#navbar").css("padding-bottom")),
});
}
});
// Submission and input validation for contact form in Contact page
$("#contact-form form").submit(function() {
// Full Name (required)
if ($("#contact-full-name").val() == "") {
$("#contact-full-name").removeClass("is-valid");
$("#contact-full-name").addClass("is-invalid");
} else {
$("#contact-full-name").removeClass("is-invalid");
$("#contact-full-name").addClass("is-valid");
}
// Phone Number (optional)
if($("#contact-phone-number").val().length == 0){
$("#contact-phone-number").removeClass("is-invalid");
$("#contact-phone-number").removeClass("is-valid");
}
else if (
$("#contact-phone-number").val().replace(/\D/g,'').length != 10 ||
$("#contact-phone-number").val().length!=10
) {
$("#contact-phone-number").removeClass("is-valid");
$("#contact-phone-number").addClass("is-invalid");
} else {
$("#contact-phone-number").removeClass("is-invalid");
$("#contact-phone-number").addClass("is-valid");
}
// Email Address (required)
if ($("#contact-email-address").val() == "") {
$("#contact-email-address").removeClass("is-valid");
$("#contact-email-address").addClass("is-invalid");
} else {
$("#contact-email-address").removeClass("is-invalid");
$("#contact-email-address").addClass("is-valid");
}
// Subject (optional)
if ($("#contact-subject").val() === "default") {
$("#contact-subject").removeClass("is-valid");
$("#contact-subject").removeClass("is-invalid");
} else {
$("#contact-subject").removeClass("is-invalid");
$("#contact-subject").addClass("is-valid");
}
// How'd you hear about us? (optional)
if ($("#contact-referral").val() == "") {
$("#contact-referral").removeClass("is-valid");
} else {
$("#contact-referral").addClass("is-valid");
}
// Message (required)
if ($("#contact-message").val() == "") {
$("#contact-message").removeClass("is-valid");
$("#contact-message").addClass("is-invalid");
} else {
$("#contact-message").removeClass("is-invalid");
$("#contact-message").addClass("is-valid");
}
if ($("#contact-full-name").val() != "" &&
$("#contact-email-address").val() != "" &&
$("#contact-message").val() != "" &&
($("#contact-phone-number").val() == "" || ($("#contact-phone-number").val().length == 10 && $("#contact-phone-number").val().replace(/\D/g,'').length == 10)))
return true;
else
return false;
});
// Submission and input validation for email subscription form in Footer
$("#email-form").submit(function() {
// Email Address (required)
if ($("#email-form input").val() == "") {
$("#email-form input").removeClass("is-valid");
$("#email-form input").addClass("is-invalid");
return false;
} else {
$("#email-form input").removeClass("is-invalid");
$("#email-form input").addClass("is-valid");
return true;
}
});
// Remove form validity classes if a user edits the input
$("input").on('input', function() {
$(this).removeClass("is-valid");
$(this).removeClass("is-invalid");
});
$("textarea").on('input', function() {
$(this).removeClass("is-valid");
$(this).removeClass("is-invalid");
});
$("select").on('input', function() {
$(this).removeClass("is-valid");
$(this).removeClass("is-invalid");
});