From afad7920eb585d5ea1a27cf6dfdd20ddb17c0ec1 Mon Sep 17 00:00:00 2001 From: Alex Tselegidis Date: Mon, 20 Dec 2021 09:38:37 +0100 Subject: [PATCH] The booking page will render based on the selected displayed/required fields. --- application/controllers/Booking.php | 42 +++++-- .../views/components/booking_info_step.php | 116 ++++++++++++------ assets/js/pages/frontend_book.js | 2 +- 3 files changed, 111 insertions(+), 49 deletions(-) diff --git a/application/controllers/Booking.php b/application/controllers/Booking.php index c681954a..91a89b49 100755 --- a/application/controllers/Booking.php +++ b/application/controllers/Booking.php @@ -80,12 +80,22 @@ class Booking extends EA_Controller { $date_format = setting('date_format'); $time_format = setting('time_format'); $first_weekday = setting('first_weekday'); + $display_first_name = setting('display_first_name'); + $require_first_name = setting('require_first_name'); + $display_last_name = setting('display_last_name'); + $require_last_name = setting('require_last_name'); + $display_email = setting('display_email'); + $require_email = setting('require_email'); + $display_phone_number = setting('display_phone_number'); $require_phone_number = setting('require_phone_number'); - $show_phone_number = setting('show_phone_number'); - $show_address = setting('show_address'); - $show_city = setting('show_city'); - $show_zip_code = setting('show_zip_code'); - $show_notes = setting('show_notes'); + $display_address = setting('display_address'); + $require_address = setting('require_address'); + $display_city = setting('display_city'); + $require_city = setting('require_city'); + $display_zip_code = setting('display_zip_code'); + $require_zip_code = setting('require_zip_code'); + $display_notes = setting('display_notes'); + $require_notes = setting('require_notes'); $display_cookie_notice = setting('display_cookie_notice'); $cookie_notice_content = setting('cookie_notice_content'); $display_terms_and_conditions = setting('display_terms_and_conditions'); @@ -182,18 +192,28 @@ class Booking extends EA_Controller { 'date_format' => $date_format, 'time_format' => $time_format, 'first_weekday' => $first_weekday, + 'display_first_name' => $display_first_name, + 'require_first_name' => $require_first_name, + 'display_last_name' => $display_last_name, + 'require_last_name' => $require_last_name, + 'display_email' => $display_email, + 'require_email' => $require_email, + 'display_phone_number' => $display_phone_number, + 'require_phone_number' => $require_phone_number, + 'display_address' => $display_address, + 'require_address' => $require_address, + 'display_city' => $display_city, + 'require_city' => $require_city, + 'display_zip_code' => $display_zip_code, + 'require_zip_code' => $require_zip_code, + 'display_notes' => $display_notes, + 'require_notes' => $require_notes, 'display_cookie_notice' => $display_cookie_notice, 'cookie_notice_content' => $cookie_notice_content, 'display_terms_and_conditions' => $display_terms_and_conditions, 'terms_and_conditions_content' => $terms_and_conditions_content, 'display_privacy_policy' => $display_privacy_policy, 'privacy_policy_content' => $privacy_policy_content, - 'require_phone_number' => $require_phone_number, - 'show_phone_number' => $show_phone_number, - 'show_address' => $show_address, - 'show_city' => $show_city, - 'show_zip_code' => $show_zip_code, - 'show_notes' => $show_notes, 'display_any_provider' => $display_any_provider, 'timezones' => $timezones, 'grouped_timezones' => $grouped_timezones, diff --git a/application/views/components/booking_info_step.php b/application/views/components/booking_info_step.php index 4633c18d..53096ab1 100644 --- a/application/views/components/booking_info_step.php +++ b/application/views/components/booking_info_step.php @@ -1,11 +1,21 @@
-
- - -
-
- - -
-
- - -
- + +
+ + +
+ + + +
+ + +
+ + + +
+ + +
+ + +
- +
- +
- +
- +
- +
- +
- +
- +
- +
diff --git a/assets/js/pages/frontend_book.js b/assets/js/pages/frontend_book.js index 60b01a53..e44f7e50 100644 --- a/assets/js/pages/frontend_book.js +++ b/assets/js/pages/frontend_book.js @@ -531,7 +531,7 @@ window.FrontendBook = window.FrontendBook || {}; } // Validate email address. - if (!GeneralFunctions.validateEmail($('#email').val())) { + if ($('#email').val() && !GeneralFunctions.validateEmail($('#email').val())) { $('#email').parents('.form-group').addClass('is-invalid'); throw new Error(App.Lang.invalid_email); }