booking-multistep.js
3.24 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
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
$(document).ready(function(){
// Phone masking
$('#phone').mask('(999) 999-9999', {placeholder:'x'});
/***************************************/
/* Datepicker */
/***************************************/
// Start date
function dateFrom(date_from, date_to) {
$( date_from ).datepicker({
dateFormat: 'mm/dd/yy',
prevText: '<i class="fa fa-caret-left"></i>',
nextText: '<i class="fa fa-caret-right"></i>',
onClose: function( selectedDate ) {
$( date_to ).datepicker( 'option', 'minDate', selectedDate );
}
});
}
// Finish date
function dateTo(date_from, date_to) {
$( date_to ).datepicker({
dateFormat: 'mm/dd/yy',
prevText: '<i class="fa fa-caret-left"></i>',
nextText: '<i class="fa fa-caret-right"></i>',
onClose: function( selectedDate ) {
$( date_from ).datepicker( 'option', 'maxDate', selectedDate );
}
});
}
// Destroy date
function destroyDate (date) {
$( date ).datepicker('destroy');
}
// Initialize date range
dateFrom('#date_from', '#date_to');
dateTo('#date_from', '#date_to');
/***************************************/
/* end datepicker */
/***************************************/
// Validation
$( "#j-pro" ).justFormsPro({
rules: {
name: {
required: true
},
email: {
required: true,
email: true
},
phone: {
required: true
},
adults: {
required: true,
integer: true,
minvalue: 0
},
children: {
required: true,
integer: true,
minvalue: 0
},
date_from: {
required: true
},
date_to: {
required: true
},
message: {
required: true
}
},
messages: {
name: {
required: "Add your name"
},
email: {
required: "Add your email",
email: "Incorrect email format"
},
phone: {
required: "Add your phone"
},
adults: {
required: "Field is required",
integer: "Only integer allowed",
minvalue: "Value not less than 0"
},
children: {
required: "Field is required",
integer: "Only integer allowed",
minvalue: "Value not less than 0"
},
date_from: {
required: "Select check-in date"
},
date_to: {
required: "Select check-out date"
},
message: {
required: "Enter your message"
}
},
formType: {
multistep: true
},
afterSubmitHandler: function() {
// Destroy date range
destroyDate("#date_from");
destroyDate("#date_to");
// Initialize date range
dateFrom("#date_from", "#date_to");
dateTo("#date_from", "#date_to");
return true;
}
});
});