PluginProbe
Booking Calendar / 10.15.6
Booking Calendar v10.15.6
11.8.3 11.8.2 11.8.1 11.8 11.7 11.6.1 11.6 11.5 11.4.3 11.4.2 11.4.1 11.4 11.3 11.2.1 11.2 11.1 11.0 10.15.7 10.15.6 10.1.3 10.10 10.10.1 10.10.2 10.11 10.11.2 All 203 releases
booking / core / class / welcome_current.php

welcome_current.php in Booking Calendar 10.15.6, at core/class/welcome_current.php

289 lines 20.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 // Exit if accessed directly
4 if ( !defined( 'ABSPATH' ) ) exit;
5
6 /**
7 * What's New section for Booking Calendar 11.0
8 *
9 * @param object $obj
10 *
11 * @return void
12 */
13 function wpbc_welcome_section_10_15( $obj ) {
14
15 $section_param_arr = array( 'version_num' => '10.15', 'show_expand' => false );
16
17 $obj->expand_section_start( $section_param_arr );
18
19 // $obj->asset_path = 'http://beta/assets/'; // TODO: comment this in production.
20 ?>
21 <div class="wpbc_wn_container">
22
23 <div class="wpbc_wn_section">
24 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'New Drag & Drop Booking Form Builder' ) ); ?></h2>
25
26 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
27 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
28 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wp_booking_calendar__form_builder_overview_02.png' ) ); ?>" style="margin:10px 0;width:98%;" />
29 </div>
30
31 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
32 <ul>
33 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **NEW / BETA**: Introduced the new **Drag & Drop Booking Form Builder** for visually creating booking forms without manually editing form code.' ) ); ?></li>
34 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Build forms visually**: Drag fields into the canvas, arrange the layout, and see the result instantly in the live preview.' ) ); ?></li>
35 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Faster and easier workflow**: Create modern booking forms without working with complex manual shortcodes.' ) ); ?></li>
36 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Available in all versions**: Booking Calendar now supports **multiple custom booking form configurations** in all versions, including the Free version.' ) ); ?></li>
37 </ul>
38 </div>
39 </div>
40
41
42 <div class="wpbc_wn_section">
43 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Create Booking Forms, Contact Forms, and Inquiry Forms' ) ); ?></h2>
44
45 <div class="wpbc_wn_col" style="flex: 1 1 48%;margin: 0 1% 0 0;">
46 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
47 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wp_booking_calendar_10_15_contact_inquiry_forms_05.png' ) ); ?>" style="margin:10px 0;width:98%;" />
48 </div>
49
50 <div class="wpbc_wn_col" style="flex: 1 1 48%;margin: 0 0 0 1%;">
51 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
52 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wp_booking_calendar_10_15_contact_form_preview_01.png' ) ); ?>" style="margin:10px 0;width:98%;" />
53 </div>
54
55 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
56 <ul>
57 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **NEW**: Added support for **Contact Forms / Inquiry Forms / Request Forms** — the calendar is now optional.' ) ); ?></li>
58 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Use Booking Calendar as a contact form alternative**: Create forms without booking dates and manage all submissions inside Booking Calendar.' ) ); ?></li>
59 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Ready-to-use templates**: Start faster with predefined templates for booking, contact, and inquiry forms.' ) ); ?></li>
60 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Flexible start**: Create a form from a template or begin with a blank canvas for full control.' ) ); ?></li>
61 </ul>
62 </div>
63 </div>
64
65
66 <div class="wpbc_wn_section">
67 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Powerful Visual Layout Builder' ) ); ?></h2>
68
69 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
70 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
71 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wp_booking_calendar__form_builder_02.gif' ) ); ?>" style="margin:10px 0;width:98%;" />
72 </div>
73
74 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
75 <ul>
76 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Drag & drop fields** from the Fields palette directly into the form canvas.' ) ); ?></li>
77 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Live visual preview** while building and editing the form.' ) ); ?></li>
78 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Rows and columns layout** for clean and structured form designs.' ) ); ?></li>
79 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Nested sections** (up to 5 levels) for advanced multi-row and multi-column layouts.' ) ); ?></li>
80 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Ready section layouts** with 1, 2, 3, or 4 columns.' ) ); ?></li>
81 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Column resizing with visual resizers** for precise control of layout widths.' ) ); ?></li>
82 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Multi-page forms** for creating step-by-step wizard-style booking forms.' ) ); ?></li>
83 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Drag & drop sorting of sections** plus **Move Up / Move Down controls** for faster layout management.' ) ); ?></li>
84 </ul>
85 </div>
86 </div>
87
88
89 <div class="wpbc_wn_section">
90 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Smart Editing and Form Controls' ) ); ?></h2>
91
92 <div class="wpbc_wn_col" style="flex: 1 1 48%;margin: 0 1% 0 0;">
93 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
94 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wp_booking_calendar_10_15_sidebar_inspector_02.png' ) ); ?>" style="margin:10px 0;width:98%;" />
95 </div>
96
97 <div class="wpbc_wn_col" style="flex: 1 1 48%;margin: 0 0 0 1%;">
98 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
99 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wp_booking_calendar_10_15_field_limits_02.png' ) ); ?>" style="margin:10px 0;width:98%;" />
100 </div>
101
102 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
103 <ul>
104 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Right sidebar inspector**: Easily edit field and section settings in a clear visual interface.' ) ); ?></li>
105 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Field usage limits**: The Builder automatically prevents adding one-time fields, such as the Calendar field, more than once.' ) ); ?></li>
106 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Responsive-friendly column width control** with layout protection for more stable form structure.' ) ); ?></li>
107 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Improved visual editing controls** for easier field, section, and layout management directly inside the canvas.' ) ); ?></li>
108 </ul>
109 </div>
110 </div>
111
112
113 <div class="wpbc_wn_section">
114 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Better Form Management and Reuse' ) ); ?></h2>
115
116 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
117 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
118 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wpbc_11_0_form_management_01.png' ) ); ?>" style="margin:10px 0;width:98%;" />
119 </div>
120
121 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
122 <ul>
123 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Predefined templates:** Start building your new booking form with ready-made templates.' ) ); ?></li>
124 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Save and restore complete form layouts** including pages, sections, columns, and fields.' ) ); ?></li>
125 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Duplicate existing form configurations** to create similar forms much faster.' ) ); ?></li>
126 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Save As workflow**: Create a new form based on an existing layout and settings.' ) ); ?></li>
127 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Flexible form configuration management** for creating, saving, loading, organizing, and previewing custom forms.' ) ); ?></li>
128 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Form details management**: Set a custom form title, slug, description, and image.' ) ); ?></li>
129 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Media library integration** for selecting a custom image for each form configuration.' ) ); ?></li>
130 </ul>
131 </div>
132 </div>
133
134
135 <div class="wpbc_wn_section">
136 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Preview, Import, and Flexible Workflow' ) ); ?></h2>
137
138 <div class="wpbc_wn_col" style="flex: 1 1 48%;margin: 0 1% 0 0;">
139 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
140 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wpbc_11_0_preview_page_01.png' ) ); ?>" style="margin:10px 0;width:98%;" />
141 </div>
142
143 <div class="wpbc_wn_col" style="flex: 1 1 48%;margin: 0 0 0 1%;">
144 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
145 <img src="<?php echo esc_attr( $obj->section_img_url( '10.15/wp_booking_calendar_10_15_advanced_mode.png' ) ); ?>" style="margin:10px 0;width:98%;" />
146 </div>
147
148 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
149 <ul>
150 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Preview page / live front-end preview**: Test how the form looks and works before publishing it on your website.' ) ); ?></li>
151 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Import existing legacy booking forms** into the new Builder for easier transition to the visual workflow.' ) ); ?></li>
152 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Builder mode and Advanced Form mode**: Work visually or keep manual form configuration when needed.' ) ); ?></li>
153 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Blank form creation in Builder mode** lets you start new forms immediately in the visual editor.' ) ); ?></li>
154 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Section presets** help you insert commonly used layout structures faster.' ) ); ?></li>
155 </ul>
156 </div>
157 </div>
158
159
160 <div class="wpbc_wn_section">
161 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Important Note About the Beta Builder' ) ); ?></h2>
162
163 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
164 <ul>
165 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **This feature is currently in Beta** and can still be disabled at any time.' ) ); ?></li>
166 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; To return to the previous legacy booking form configuration, go to **Form Builder > Settings** in the right sidebar and disable the **"Drag & Drop Form Builder"** option.' ) ); ?></li>
167 </ul>
168 </div>
169 </div>
170
171 </div>
172 <?php
173
174 $obj->expand_section_end( $section_param_arr );
175 }
176
177 function wpbc_welcome_section_10_14( $obj ){
178
179 $section_param_arr = array( 'version_num' => '10.14', 'show_expand' => true );
180
181 $obj->expand_section_start( $section_param_arr );
182
183
184 // $obj->asset_path = 'http://beta/assets/'; // TODO: 2024-06-01 comment this
185
186
187 // <editor-fold defaultstate="collapsed" desc=" = F R E E = " >
188 // -----------------------------------------------------------------------------------------------------------------
189 // = F R E E =
190 // -----------------------------------------------------------------------------------------------------------------
191 ?>
192 <div class="wpbc_wn_container">
193 <div class="wpbc_wn_section">
194 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Control start and end dates for booking and availability' ) ); ?></h2>
195 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
196 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
197 <img src="<?php echo esc_attr( $obj->section_img_url( '10.14/wp_booking_calendar_elementor_advanced_01.png' ) ); ?>" style="margin:10px 0;width:98%;" />
198 <span><span style="font-size: 0.9em;font-style: italic;"><?php //echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Available in the Booking Calendar Business Small or higher versions' ) ); ?></span></span>
199 </div>
200 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
201 <ul>
202 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Control which dates are shown!**: You can now control which dates are shown in the Booking Calendar by using two new shortcode parameters: **[booking resource_id=1 calendar_dates_start=\'2025-01-01\' calendar_dates_end=\'2025-12-31\']**' ) ); ?></li>
203 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **New**: Ability to **set the start and end dates for the calendar** using shortcode parameters. Example: [booking resource_id=1 calendar_dates_start=\'2025-01-01\' calendar_dates_end=\'2025-12-31\' startmonth=\'2025-3\']' ) ); ?></li>
204 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **New**: If startmonth is omitted, the calendar will now automatically use the month from calendar_dates_start as the initial display month. Example: [booking resource_id=1 calendar_dates_start=\'2025-01-01\' calendar_dates_end=\'2025-12-31\']' ) ); ?></li>
205 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **New**: New: You can now **allow users to submit bookings for past dates**, as long as those dates are within the visible range set by calendar_dates_start and calendar_dates_end in the shortcode. Useful for administrative or backdated bookings. Shortcode Example: [booking resource_id=1 calendar_dates_start=\'2025-01-01\' calendar_dates_end=\'2025-12-31\']' ) ); ?></li>
206 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **New**: Elementor native supports of these parameters calendar_dates_start=\'2025-01-01\' calendar_dates_end=\'2025-12-31\' in Advanced section.' ) ); ?></li>
207 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Improvement**: When calendar_dates_start and calendar_dates_end are defined in the shortcode, the system skips checking availability from today, and instead starts from the defined calendar_dates_start.' ) ); ?></li>
208 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Improvement**: To **enable the new Smart Phone Validation** feature introduced in the previous update, go to: WP Booking Calendar > Settings > Booking Form > Form Options and enable the "Smart Phone Validation" option. It is disabled by default.' ) ); ?></li>
209 </ul>
210 </div>
211 </div>
212 </div>
213 <?php
214
215 $obj->expand_section_end( $section_param_arr );
216 }
217
218 function wpbc_welcome_section_10_13( $obj ){
219
220 $section_param_arr = array( 'version_num' => '10.13', 'show_expand' => true );
221
222 $obj->expand_section_start( $section_param_arr );
223
224
225 // $obj->asset_path = 'http://beta/assets/'; // TODO: 2024-06-01 comment this
226
227
228 // <editor-fold defaultstate="collapsed" desc=" = F R E E = " >
229 // -----------------------------------------------------------------------------------------------------------------
230 // = F R E E =
231 // -----------------------------------------------------------------------------------------------------------------
232 ?>
233 <div class="wpbc_wn_container">
234 <div class="wpbc_wn_section">
235 <h2><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Smarter Bookings, Elementor Integration and Cleaner Interface' ) ); ?></h2>
236 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
237 <h3><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '**Booking Calendar meets Elementor!**' ) ); ?></h3>
238 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
239 <img src="<?php echo esc_attr( $obj->section_img_url( '10.13/wp_booking_calendar_elementor_01.png' ) ); ?>" style="margin:10px 0;width:98%;" />
240 <span><span style="font-size: 0.9em;font-style: italic;"><?php //echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Available in the Booking Calendar Business Small or higher versions' ) ); ?></span></span>
241 </div>
242 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
243 <ul>
244 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Full Elementor Support!**: Design and customize your booking forms directly inside the Elementor editor—with real-time form previews and a built-in skin selector. No more shortcode guesswork—just drag, configure, and save!' ) ); ?></li>
245 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Calendar Preloader:** We’ve added a smooth-loading preloader bar that prevents layout jumps on slower connections, ensuring a polished experience for your visitors.' ) ); ?></li>
246 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **New Booking Form Template – Service Selection Wizard (Pro):** Perfect for appointment-based bookings: this template features a left-side service selector with a streamlined date/time step for faster, easier bookings.' ) ); ?></li>
247 </ul>
248 </div>
249 </div>
250 <hr class="wpbc_hr_dots"><?php // ---------------------------------------------------------------------- ?>
251 <div class="wpbc_wn_section">
252 <div class="wpbc_wn_col" style="flex: 1 1 45%;margin: 10px 0;">
253 <h3><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '**Cleaner & More Intuitive Interface**' ) ); ?></h3>
254 <ul>
255 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Updated Sidebar Navigation:** All plugin menus now live in a single, collapsible sidebar—easier to navigate and quicker to access.' ) ); ?></li>
256 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Visual Polish & UX Tweaks:** We’ve made subtle design upgrades across the board: improved calendar styling, better visual hierarchy, smarter warnings (e.g., duplicate calendar IDs), and more compact menu visuals in compact mode.' ) ); ?></li>
257 </ul>
258 </div>
259 <div class="wpbc_wn_col" style="flex: 1 1 50%;margin: 0px 0;">
260 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
261 <img src="<?php echo esc_attr( $obj->section_img_url( '10.13/vertical_menu_01.png' ) ); ?>" style="margin:10px 0;width:98%;" />
262 <span><span style="font-size: 0.9em;font-style: italic;"><?php //echo wp_kses_post( wpbc_replace_to_strong_symbols( 'Available in the Booking Calendar Business Small or higher versions' ) ); ?></span></span>
263 </div>
264 </div>
265 <hr class="wpbc_hr_dots"><?php // ---------------------------------------------------------------------- ?>
266 <div class="wpbc_wn_section">
267 <div class="wpbc_wn_col" style="flex: 1 1 45%;margin: 10px 0;">
268 <h3><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '**Smart Phone Validation**' ) ); ?></h3>
269 <ul>
270 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Auto-Detect & Format Phone Fields:** Phone fields now automatically detect and format numbers based on the user’s input and locale. Start typing +1 and the field instantly formats to +1 000 000 0000 (USA); type +34 for Spain and get +34 000 000 0000.' ) ); ?></li>
271 </ul>
272 </div>
273 <div class="wpbc_wn_col" style="flex: 1 1 50%;margin: 0px 0;">
274 <?php // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage ?>
275 <img src="<?php echo esc_attr( $obj->section_img_url( '10.13/phone_validattion_01.png' ) ); ?>" style="margin:10px auto;max-width:600px;" />
276 </div>
277 <div class="wpbc_wn_col" style="flex: 1 1 100%;margin: 0;">
278 <ul>
279 <li><?php echo wp_kses_post( wpbc_replace_to_strong_symbols( '&bull; **Built-In Intelligence – No Setup Required** We intelligently detect phone fields by name (e.g., “phone”, “fone”, “tel”, “mobile”, “telefono”, etc.) and apply the right mask and placeholder automatically—no third-party APIs needed. Only valid digits are allowed; unsupported characters are blocked instantly.' ) ); ?></li>
280 </ul>
281 </div>
282 </div>
283
284 </div>
285 <?php
286
287 $obj->expand_section_end( $section_param_arr );
288 }
289