PluginProbe
Booking Calendar / 10.10.2
Booking Calendar v10.10.2
11.9.1 11.9 11.8.4 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 All 206 releases
booking / includes / page-settings-all / all__page.php

all__page.php in Booking Calendar 10.10.2, at includes/page-settings-all/all__page.php

731 lines 38.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /*
3 * @package: Settings > General Page
4 * @category: Settings Page
5 * Author: wpdevelop, oplugins
6 * Version: 1.0
7 * @modified 2024-08-06
8 */
9 // FixIn: 10.4.0.2.
10 if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
11
12
13 /** Show Content
14 * Update Content
15 * Define Slug
16 * Define where to show
17 */
18 class WPBC_Page_Settings_All extends WPBC_Page_Structure {
19
20
21 public function __construct() {
22
23 parent::__construct();
24
25 //add_action( 'wpbc_toolbar_top_tabs_insert', array( $this, 'wpbc_toolbar_toolbar_tabs' ) );
26 add_action( 'wpbc_page_show_left_navigation_custom', array( $this, 'left_navigation_custom__settings_all' ) );
27 }
28
29
30 public function in_page() {
31 return 'wpbc-settings';
32 }
33
34
35 public function tabs() {
36
37 $tabs = array();
38 $tabs[ 'all' ] = array(
39 'title' => __( 'Settings', 'booking' ) // Title of TAB
40 , 'hint' => __( 'General Settings', 'booking' ) //. ' - ' . 'Booking Calendar' // Hint
41 , 'page_title' => __( 'General Settings', 'booking' ) // Title of Page
42 , 'link' => '' // Can be skiped, then generated link based on Page and Tab tags. Or can be extenral link
43 , 'position' => '' // 'left' || 'right' || ''
44 , 'css_classes' => '' // CSS class(es)
45 , 'icon' => '' // Icon - link to the real PNG img
46 , 'font_icon' => 'wpbc_icn_settings'//'wpbc_icn_free_cancellation' // CSS definition of forn Icon
47 , 'default' => !true // Is this tab activated by default or not: true || false.
48 , 'disabled' => false // Is this tab disbaled: true || false.
49 , 'hided' => false // Is this tab hided: true || false.
50 , 'subtabs' => array()
51 );
52 $subtabs = array();
53 $subtabs['search_form'] = array(
54 'type' => 'subtab' // Required| Possible values: 'subtab' | 'separator' | 'button' | 'goto-link' | 'html'
55 , 'title' => __( 'Search Form Layout', 'booking') // Title of TAB
56 , 'page_title'=> __( 'Search Settings', 'booking') // Title of Page
57 , 'hint' => __( 'Search Settings', 'booking') // Hint
58 , 'link' => '#wpbc_settings_search_availability_form_metabox' // link
59 , 'position' => '' // 'left' || 'right' || ''
60 , 'css_classes' => '' // CSS class(es)
61 //, 'icon' => 'http://.../icon.png' // Icon - link to the real PNG img
62 //, 'font_icon' => 'wpbc_icn_mail_outline' // CSS definition of Font Icon
63 , 'header_font_icon' => 'wpbc_icn_mail_outline' // CSS definition of Font Icon // FixIn: 9.6.1.4.
64 , 'default' => true // Is this sub tab activated by default or not: true || false.
65 , 'disabled' => false // Is this sub tab deactivated: true || false.
66 , 'checkbox' => false // or definition array for specific checkbox: array( 'checked' => true, 'name' => 'feature1_active_status' ) //, 'checkbox' => array( 'checked' => $is_checked, 'name' => 'enabled_active_status' )
67 , 'content' => 'content' // Function to load as conten of this TAB
68 , 'is_use_left_navigation' => true
69 , 'is_use_left_navigation_custom' => true
70 , 'show_checked_icon' => false
71 , 'is_use_navigation_path' => array(
72 'path' => array(
73 'all' => array(
74 'title' => __('Settings','booking'),
75 'hint' => __('Settings General','booking'),
76 'icon' => 'wpbc_icn_tune',
77 'url' => wpbc_get_settings_url() . '&tab=all'
78 ),
79 'next_all' => array( 'tag' => '>' ),
80 'calendar' => array(
81 'title' => __('Calendar','booking'),
82 'hint' => __('Calendar Settings','booking'),
83 'icon' => 'wpbc-bi-calendar2-range',
84 'url' => wpbc_get_settings_url() . '&tab=calendar',
85 ),
86 'next_cal' => array( 'tag' => '>' ),
87 'calendar_look' => array(
88 'title' => __('Calendar Look','booking'),
89 'hint' => __('Calendar Settings','booking'),
90 'icon' => 'wpbc-bi-calendar4-week',
91 'url' => wpbc_get_settings_url() . '&tab=calendar',
92 //'attr' => array()
93 //'tag' => 'a',
94 'class' => 'nav-tab-active'
95 ),
96 )
97 )
98 //, 'checked_data' => WPBC_EMAIL_NEW_ADMIN_PREFIX . WPBC_EMAIL_NEW_ADMIN_ID // This is where we get content
99 //, 'hint' => array( 'title' => __('Customization of email template, which is sending to Admin after new booking' ,'booking') , 'position' => 'right' )
100 );
101 $tabs[ 'all' ][ 'subtabs' ] = $subtabs;
102 return $tabs;
103 }
104
105
106
107 /**
108 * Show custom tabs for Toolbar at . - . R i g h t . s i d e.
109 *
110 * @param string $menu_in_page_tag - active page
111 */
112 public function left_navigation_custom__settings_all( $menu_in_page_tag ) {
113
114 if ( $this->in_page() == $menu_in_page_tag ) {
115
116 wpbc_page_show_left_navigation_custom__settings_all();
117 }
118
119 }
120
121
122 /**
123 * Show custom tabs for Toolbar at . - . R i g h t . s i d e.
124 *
125 * @param string $menu_in_page_tag - active page
126 */
127 public function wpbc_toolbar_toolbar_tabs( $menu_in_page_tag ) {
128
129 if ( $this->in_page() == $menu_in_page_tag ) {
130
131 // Just for get last saved default tab
132 $escaped_search_request_params = $this->get_cleaned_params__saved_requestvalue_default();
133
134 // Check if by some reason, user was saved request without this parameter, then get default value
135 if ( ! empty( $escaped_search_request_params['current_step'] ) ) {
136 $selected_tab = $escaped_search_request_params['current_step'];
137 } else {
138 $default_search_request_params = array();//WPBC_AJX__Setup_Plugin__Ajax_Request::request_rules_structure();
139 $selected_tab = $default_search_request_params ['current_step']['default'];
140 }
141
142 $current_step_page = explode( '_', $selected_tab ); // 'calendar_skin', 'calendar_size', 'calendar_dates_selection', 'calendar_weekdays_availability', 'calendar_additional', 'form_structure', ...
143
144 wpbc_bs_toolbar_tabs_html_container_start();
145
146 wpbc_bs_display_tab( array(
147 'title' => '1. '. __( 'Calendar', 'booking' )
148 , 'hint' => array( 'title' => __('Setup' ,'booking') , 'position' => 'top' )
149 , 'onclick' => "jQuery('.ui_container_toolbar').hide();" . "jQuery('.ui_container_calendar_skin').show();" . "jQuery('.wpbc_setup_plugin_support_tabs').removeClass('nav-tab-active');" . "jQuery(this).addClass('nav-tab-active');" . "jQuery('.nav-tab i.icon-white').removeClass('icon-white');" . "jQuery('.nav-tab-active i').addClass('icon-white');"
150 /**
151 * It will save such changes, and if we have selected bookings, then deselect them
152 */
153 . "wpbc_ajx_setup_plugin__send_request_with_params( { 'current_step': 'calendar_skin' });"
154 /**
155 * It will save changes with NEXT search request, but not immediately
156 * it is handy, in case if we have selected bookings,
157 * we will not lose selection.
158 */
159 // . "wpbc_ajx_setup_plugin.search_set_param( 'current_step', 'calendar_skin' );"
160 , 'font_icon' => 'wpbc-bi-calendar2-check'
161 , 'default' => ( 'calendar' == $current_step_page[0] ) ? true : false
162 //, 'position' => 'right'
163 , 'css_classes' => 'wpbc_setup_plugin_support_tabs'
164 ) );
165 wpbc_bs_display_tab( array(
166 'title' => '2. '. __('Booking Form', 'booking')
167 , 'hint' => array( 'title' => __('Setup' ,'booking') , 'position' => 'top' )
168 , 'onclick' => "jQuery('.ui_container_toolbar').hide();" . "jQuery('.ui_container_form_structure').show();" . "jQuery('.wpbc_setup_plugin_support_tabs').removeClass('nav-tab-active');" . "jQuery(this).addClass('nav-tab-active');" . "jQuery('.nav-tab i.icon-white').removeClass('icon-white');" . "jQuery('.nav-tab-active i').addClass('icon-white');"
169 /**
170 * It will save such changes, and if we have selected bookings, then deselect them
171 */
172 . "wpbc_ajx_setup_plugin__send_request_with_params( { 'current_step': 'form_structure' });"
173 /**
174 * It will save changes with NEXT search request, but not immediately
175 * it is handy, in case if we have selected bookings,
176 * we will not lose selection.
177 */
178 // . "wpbc_ajx_setup_plugin.search_set_param( 'current_step', 'calendar_skin' );"
179 , 'font_icon' => 'wpbc_icn_dashboard _customize dashboard rtt draw'
180 , 'default' => ( 'form' == $current_step_page[0] ) ? true : false
181 //, 'position' => 'right'
182 , 'css_classes' => 'wpbc_setup_plugin_support_tabs'
183 ) );
184 wpbc_bs_display_tab( array(
185 'title' => '3. '. __('Emails', 'booking')
186 , 'hint' => array( 'title' => __('Setup' ,'booking') , 'position' => 'top' )
187 , 'onclick' => "jQuery('.ui_container_toolbar').hide();" . "jQuery('.ui_container_emails_active').show();" . "jQuery('.wpbc_setup_plugin_support_tabs').removeClass('nav-tab-active');" . "jQuery(this).addClass('nav-tab-active');" . "jQuery('.nav-tab i.icon-white').removeClass('icon-white');" . "jQuery('.nav-tab-active i').addClass('icon-white');"
188 /**
189 * It will save such changes, and if we have selected bookings, then deselect them
190 */
191 . "wpbc_ajx_setup_plugin__send_request_with_params( { 'current_step': 'emails_active' });"
192 /**
193 * It will save changes with NEXT search request, but not immediately
194 * it is handy, in case if we have selected bookings,
195 * we will not lose selection.
196 */
197 // . "wpbc_ajx_setup_plugin.search_set_param( 'current_step', 'calendar_skin' );"
198 , 'font_icon' => 'wpbc_icn_mail_outline'
199 , 'default' => ( 'emails' == $current_step_page[0] ) ? true : false
200 //, 'position' => 'right'
201 , 'css_classes' => 'wpbc_setup_plugin_support_tabs'
202 ) );
203 wpbc_bs_display_tab( array(
204 'title' => '4. '. __('Payments', 'booking')
205 , 'hint' => array( 'title' => __('Setup' ,'booking') , 'position' => 'top' )
206 , 'onclick' => "jQuery('.ui_container_toolbar').hide();" . "jQuery('.ui_container_payments_active').show();" . "jQuery('.wpbc_setup_plugin_support_tabs').removeClass('nav-tab-active');" . "jQuery(this).addClass('nav-tab-active');" . "jQuery('.nav-tab i.icon-white').removeClass('icon-white');" . "jQuery('.nav-tab-active i').addClass('icon-white');"
207 /**
208 * It will save such changes, and if we have selected bookings, then deselect them
209 */
210 . "wpbc_ajx_setup_plugin__send_request_with_params( { 'current_step': 'payments_active' });"
211 /**
212 * It will save changes with NEXT search request, but not immediately
213 * it is handy, in case if we have selected bookings,
214 * we will not lose selection.
215 */
216 // . "wpbc_ajx_setup_plugin.search_set_param( 'current_step', 'calendar_skin' );"
217 , 'font_icon' => 'wpbc_icn_payment'
218 , 'default' => ( 'payments' == $current_step_page[0] ) ? true : false
219 //, 'position' => 'right'
220 , 'css_classes' => 'wpbc_setup_plugin_support_tabs'
221 ) );
222 wpbc_bs_display_tab( array(
223 'title' => '5. '. __('Publish Resources', 'booking')
224 , 'hint' => array( 'title' => __('Setup' ,'booking') , 'position' => 'top' )
225 , 'onclick' => "jQuery('.ui_container_toolbar').hide();" . "jQuery('.ui_container_publish_resource').show();" . "jQuery('.wpbc_setup_plugin_support_tabs').removeClass('nav-tab-active');" . "jQuery(this).addClass('nav-tab-active');" . "jQuery('.nav-tab i.icon-white').removeClass('icon-white');" . "jQuery('.nav-tab-active i').addClass('icon-white');"
226 /**
227 * It will save such changes, and if we have selected bookings, then deselect them
228 */
229 . "wpbc_ajx_setup_plugin__send_request_with_params( { 'current_step': 'publish_resource' });"
230
231 /**
232 * It will save changes with NEXT search request, but not immediately
233 * it is handy, in case if we have selected bookings,
234 * we will not lose selection.
235 */
236 // . "wpbc_ajx_setup_plugin.search_set_param( 'current_step', 'calendar_skin' );"
237 , 'font_icon' => 'wpbc_icn_checklist'
238 , 'default' => ( 'publish' == $current_step_page[0] ) ? true : false
239 //, 'position' => 'right'
240 , 'css_classes' => 'wpbc_setup_plugin_support_tabs'
241 ) );
242
243 wpbc_bs_toolbar_tabs_html_container_end();
244 }
245 }
246
247
248 /**
249 * Get sanitised request parameters. :: Firstly check if user saved it. :: Otherwise, check $_REQUEST. :: Otherwise get default.
250 *
251 * @return array|false
252 */
253 public function get_cleaned_params__saved_requestvalue_default(){
254
255 $user_request = new WPBC_AJX__REQUEST( array(
256 'db_option_name' => 'booking_setup_plugin_request_params',
257 'user_id' => wpbc_get_current_user_id(),
258 'request_rules_structure' => array()//WPBC_AJX__Setup_Plugin__Ajax_Request::request_rules_structure()
259 )
260 );
261 $escaped_request_params_arr = $user_request->get_sanitized__saved__user_request_params(); // Get Saved
262
263 if ( false === $escaped_request_params_arr ) { // This request was not saved before, then get sanitized direct parameters, like: $_REQUEST['resource_id']
264
265 $request_prefix = false;
266 $escaped_request_params_arr = $user_request->get_sanitized__in_request__value_or_default( $request_prefix ); // Direct: $_REQUEST['resource_id']
267 }
268
269
270 // Override parameters from DB by parameters from REQUEST! ----------------------------------------------
271 $request_key = 'current_step';
272 // phpcs:ignore WordPress.Security.NonceVerification.Recommended, WordPress.Security.NonceVerification.Missing
273 if ( isset( $_REQUEST[ $request_key ] ) ) {
274
275 // Get SANITIZED REQUEST parameters together with default values
276 $request_prefix = false;
277 $url_request_params_arr = $user_request->get_sanitized__in_request__value_or_default( $request_prefix ); // Direct: $_REQUEST['resource_id']
278
279 // Now get only SANITIZED values that exist in REQUEST.
280 // phpcs:ignore WordPress.Security.NonceVerification.Recommended, WordPress.Security.NonceVerification.Missing
281 $url_request_params_only_arr = array_intersect_key( $url_request_params_arr, $_REQUEST );
282
283 // And now override our DB $escaped_request_params_arr by SANITIZED $_REQUEST values
284 $escaped_request_params_arr = wp_parse_args( $url_request_params_only_arr, $escaped_request_params_arr );
285 }
286 // ---------------------------------------------------------------------------------------------------------
287
288 //MU
289 if ( class_exists( 'wpdev_bk_multiuser' ) ) {
290
291 // Check if this MU user activated or superadmin, otherwise show warning
292 if ( ! wpbc_is_mu_user_can_be_here('activated_user') )
293 return false;
294
295 // Check if this MU user owner of this resource or superadmin, otherwise show warning
296 if ( ! wpbc_is_mu_user_can_be_here( 'resource_owner', $escaped_request_params_arr['resource_id'] ) ) {
297 $default_values = $user_request->get_request_rules__default();
298 $escaped_request_params_arr['resource_id'] = $default_values['resource_id'];
299 }
300
301 }
302
303
304
305 return $escaped_request_params_arr;
306 }
307
308
309 public function content() {
310
311
312 do_action( 'wpbc_hook_settings_page_header', 'page_booking_setup_plugin'); // Define Notices Section and show some static messages, if needed.
313
314 if ( ! wpbc_is_mu_user_can_be_here( 'activated_user' ) ) { return false; } // Check if MU user activated, otherwise show Warning message.
315
316 // if ( ! wpbc_set_default_resource_to__get() ) return false; // Define default booking resources for $_GET and check if booking resource belong to user.
317
318
319 // Get and escape request parameters ////////////////////////////////////////////////////////////////////////
320 $escaped_request_params_arr = array();//$this->get_cleaned_params__saved_requestvalue_default();
321
322 // During initial load of the page, we need to reset 'dates_selection' value in our saved parameter
323 $escaped_request_params_arr['dates_selection'] = '';
324
325 // Submit /////////////////////////////////////////////////////////////
326 $submit_form_name = 'wpbc_ajx_setup_plugin_form'; // Define form name
327
328 ?><span class="wpdevelop"><?php // BS UI CSS Class
329
330 wpbc_js_for_bookings_page(); // JavaScript functions
331 /*
332 ?><div id="toolbar_booking_setup_plugin" class="wpbc_ajx_toolbar"><?php
333 ?><div class="wpbc_ajx_setup_plugin_toolbar_container"></div><?php //This Div Required for bottom border radius in container
334 ?></div><?php
335 */
336 // wpbc_ajx_setup_plugin__toolbar( $escaped_request_params_arr );
337
338 ?></span><?php
339
340 ?><div id="wpbc_log_screen" class="wpbc_log_screen"></div><?php
341
342 // Content ////////////////////////////////////////////////////////////
343 wpbc_clear_div();
344 ?>
345 <span class="metabox-holder">
346 <form name="<?php echo esc_attr( $submit_form_name ); ?>" id="<?php echo esc_attr( $submit_form_name ); ?>" action="" method="post" >
347 <?php
348 // N o n c e field, and key for checking S u b m i t
349 wp_nonce_field( 'wpbc_settings_page_' . $submit_form_name );
350 ?><input type="hidden" name="is_form_sbmitted_<?php echo esc_attr( $submit_form_name ); ?>" id="is_form_sbmitted_<?php echo esc_attr( $submit_form_name ); ?>" value="1" /><?php
351
352 //wpbc_ajx_booking_modify_container_show(); // Container for showing Edit ajx_booking and define Edit and Delete ajx_booking JavaScript vars.
353
354 wpbc_ui_settings__panel__statistic();
355
356 ?><div class="clear" style="margin-bottom:10px;"></div><?php
357
358
359
360 wpbc_settings_all__content_html();
361
362
363
364 //$this->ajx_setup_plugin_container__show( $escaped_request_params_arr );
365
366 wpbc_clear_div();
367
368 ?></form>
369 </span>
370 <?php
371
372 //wpbc_show_wpbc_footer(); // Rating
373
374 do_action( 'wpbc_hook_settings_page_footer', 'wpbc-ajx_booking_setup_plugin' );
375 }
376
377 private function ajx_setup_plugin_container__show( $escaped_request_params_arr ) {
378
379 $is_show_resource_unavailable_stripes = ( !true ) ? ' wpbc_ajx_availability_container' : '';
380 ?>
381 <div id="ajx_nonce_calendar_section"></div>
382 <div class="wpbc_listing_container wpbc_selectable_table wpbc_ajx_setup_plugin_container wpdevelop<?php echo esc_attr( $is_show_resource_unavailable_stripes ); ?>" wpbc_loaded="first_time">
383 <style type="text/css">
384 .wpbc_calendar_loading .wpbc_icn_autorenew::before{
385 font-size: 1.2em;
386 }
387 .wpbc_calendar_loading {
388 width:95%;
389 text-align: center;
390 margin:2em 0;
391 font-size: 1.2em;
392 font-weight: 600;
393 }
394 </style>
395 <div class="wpbc_calendar_loading"><span class="wpbc_icn_autorenew wpbc_spin"></span>&nbsp;&nbsp;<span><?php esc_html_e( 'Loading', 'booking' ); ?>...</span>
396 </div>
397 </div>
398 <script type="text/javascript">
399 jQuery( document ).ready( function (){
400
401 // Set Security - Nonce for Ajax - Listing
402 wpbc_ajx_setup_plugin.set_secure_param( 'nonce', '<?php echo esc_attr( wp_create_nonce( 'wpbc_ajx_setup_plugin_ajx' . '_wpbcnonce' ) ); ?>' );
403 wpbc_ajx_setup_plugin.set_secure_param( 'user_id', '<?php echo esc_attr( wpbc_get_current_user_id() ); ?>' );
404 wpbc_ajx_setup_plugin.set_secure_param( 'locale', '<?php echo esc_attr( get_user_locale() ); ?>' );
405
406 // Set other parameters
407 wpbc_ajx_setup_plugin.set_other_param( 'listing_container', '.wpbc_ajx_setup_plugin_container' );
408 wpbc_ajx_setup_plugin.set_other_param( 'toolbar_container', '.wpbc_ajx_setup_plugin_toolbar_container' );
409
410 // Send Ajax request and show listing after this.
411 wpbc_ajx_setup_plugin__send_request_with_params( <?php echo wp_json_encode( $escaped_request_params_arr ); ?> );
412 } );
413 </script>
414 <?php
415 }
416
417
418
419 }
420 add_action('wpbc_menu_created', array( new WPBC_Page_Settings_All() , '__construct') ); // Executed after creation of Menu
421
422
423
424
425
426 function wpbc_settings_all__content_html(){
427 ?>
428 <style type="text/css">
429
430 .wpbc_flex_settings_containers h4 {
431 font-size: 12px;
432 font-weight: 600;
433 margin: 8px 0 0.5em;
434 text-transform: uppercase !important;
435 letter-spacing: 0px;
436 text-shadow: none;
437 color: #9e9e9e;
438 }
439
440 .wpbc_flex_settings_containers .wpbc_settings_navigation_item {
441 flex: 0 1 auto;
442 flex: 1 1 20em;
443 padding: 0;
444 background: #fff;
445 border: 1px solid #d9d9d9;
446 /*! min-width: 200px; */
447 margin: 5px 5px;
448 border-radius: 2px;
449 /*! box-shadow: 0 1px 4px #eee; */
450 }
451 .wpbc_flex_settings_containers .wpbc_settings_navigation_item a:hover{
452 border-left: 4px solid #1E7BC7 !important;
453 }
454 .wpbc_flex_settings_containers .wpbc_settings_navigation_item a {
455 flex: 1 1 100%;
456 margin: 0;
457 padding: 10px 1em 10px 0;
458 padding-left: 1em;
459 border: none;
460 border-left-width: medium;
461 border-left-style: none;
462 border-left-color: currentcolor;
463 border-left: 4px solid transparent;
464 text-shadow: none;
465 color: #555;
466 font-size: 16px;
467 font-weight: 600;
468 /*! text-transform: capitalize; */
469 text-decoration: none;
470 outline: none;
471 display: flex;
472 flex-flow: row ;
473 align-items: flex-start;
474 justify-content: flex-start;
475 flex: 0 1 auto;
476 }
477 .wpbc_flex_settings_containers .wpbc_settings_navigation_item a .menu_icon:before {
478 font-size:22px !important;;
479 }
480 .wpbc_text_inside {
481 display: flex;
482 flex-flow: column;
483 align-items: stretch;
484 justify-content: center;
485 margin: 0 0 0 1em;
486 flex: 1 1 100%;
487 }
488 .wpbc_flex_settings_containers .wpbc_settings_navigation_item a .wpbc_text_inside .wpbc_flex_settings_title{
489 flex: 1 1 100%;
490 display: flex;
491 flex-flow: row nowrap;
492 color: #2271b1;
493 }
494 .wpbc_flex_settings_containers .wpbc_settings_navigation_item a .wpbc_text_inside .wpbc_flex_settings_title div:last-child{
495 margin-left:auto;
496 font-size:0.8em;
497 color: #717171;
498 }
499 .wpbc_flex_settings_containers .wpbc_settings_navigation_item a .wpbc_text_inside .wpbc_flex_settings_description {
500 font-weight:400 !important;;
501 margin:10px 0 0;
502 font-size: 12px;
503 line-height: 2;
504 color: #555;
505 }
506 </style>
507 <div class="wpbc_flex_settings_containers" style="display: flex;flex-flow: row wrap;justify-content: flex-start;align-items: stretch;margin: 0;/*! background: #fff; *//*! border: 1px solid #cecece; */border-radius: 5px;padding: 0 1em;margin-top: -10px;">
508
509 <div style="flex: 1 1 100%;/*! border-top: 1px solid #e3e3e3; */margin: -10px 20px 0 0;"><h4>Calendar Settings</h4></div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
510
511 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
512
513 <i class="menu_icon icon-1x wpbc-bi-calendar2-range"></i>
514 <div class="wpbc_text_inside">
515 <div class="wpbc_flex_settings_title"><div>Calendar Look</div><div>01</div></div><div class="wpbc_flex_settings_description">Set Calendar Skin, Max Months to Scroll, Calendar Legend</div></div>
516 </a>
517 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
518
519 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
520
521 <i class="menu_icon icon-1x wpbc-bi-calendar3-week"></i>
522 <div class="wpbc_text_inside">
523 <div class="wpbc_flex_settings_title"><div>Days Selection</div><div>02</div></div><div class="wpbc_flex_settings_description">Single Day, Multi Days or Range Days Selection (Min/Max days )</div></div>
524 </a>
525 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
526
527 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
528
529 <i class="menu_icon icon-1x wpbc_icn_flip"></i>
530 <div class="wpbc_text_inside">
531 <div class="wpbc_flex_settings_title"><div>Change Over Days</div><div><span class="wpbc_pro_label">Pro</span></div></div><div class="wpbc_flex_settings_description">Manage Split Days</div></div>
532 </a>
533 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
534
535 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
536
537 <i class="menu_icon icon-1x wpbc_icn_textsms mode_comment"></i>
538 <div class="wpbc_text_inside">
539 <div class="wpbc_flex_settings_title"><div>Tooltips in Days</div><div>03</div></div><div class="wpbc_flex_settings_description">Configure Tooltips</div></div>
540 </a>
541 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
542
543 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
544
545 <i class="menu_icon icon-1x wpbc-bi-calendar-check bi-calendar2-day"></i>
546 <div class="wpbc_text_inside">
547 <div class="wpbc_flex_settings_title"><div>General Availability</div><div>04</div></div><div class="wpbc_flex_settings_description">Set Unavailable Weekdays, Buffers for Bookings, Unavailable Days Options</div></div>
548 </a>
549 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
550
551 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
552
553 <i class="menu_icon icon-1x wpbc_icn_filter_none"></i>
554 <div class="wpbc_text_inside">
555 <div class="wpbc_flex_settings_title"><div>Capacity</div><div>05</div></div><div class="wpbc_flex_settings_description">Manage Receiving several bookings per same Date or Timeslot</div></div>
556 </a>
557 </div><div style="flex: 1 1 100%;/*! border-top: 1px solid #e3e3e3; */margin: 10px 0 0;"><h4>Booking Form</h4></div>
558 <div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
559
560 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
561
562 <i class="menu_icon icon-1x wpbc_icn_dashboard "></i>
563 <div class="wpbc_text_inside">
564 <div class="wpbc_flex_settings_title"><div>Form Fields</div><div>06</div></div><div class="wpbc_flex_settings_description">Configure Tooltips</div></div>
565 </a>
566 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
567
568 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
569
570 <i class="menu_icon icon-1x wpbc_icn_schedule"></i>
571 <div class="wpbc_text_inside">
572 <div class="wpbc_flex_settings_title"><div>Time Slots</div><div>07</div></div><div class="wpbc_flex_settings_description">Configure Tooltips</div></div>
573 </a>
574 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
575
576 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
577
578 <i class="menu_icon icon-1x wpbc-bi-toggle2-off"></i>
579 <div class="wpbc_text_inside">
580 <div class="wpbc_flex_settings_title"><div>Booking Form Options</div><div>08</div></div><div class="wpbc_flex_settings_description">Configure Tooltips</div></div>
581 </a>
582 </div><div style="flex: 1 1 100%;/*! border-top: 1px solid #e3e3e3; */margin: 10px 20px 0 0;"><h4>Notifications</h4></div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
583
584 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
585
586 <i class="menu_icon icon-1x wpbc_icn_mail_outline"></i>
587 <div class="wpbc_text_inside">
588 <div class="wpbc_flex_settings_title"><div>Emails</div><div>09</div></div><div class="wpbc_flex_settings_description">Configure Tooltips</div></div>
589 </a>
590 </div><div style="flex: 1 1 100%;/*! border-top: 1px solid #e3e3e3; */margin: 10px 20px 0 0;"><h4>Sync</h4></div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
591
592 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
593
594 <i class="menu_icon icon-1x wpbc_icn_sync_alt"></i>
595 <div class="wpbc_text_inside">
596 <div class="wpbc_flex_settings_title"><div>Import / Export Bookings</div><div>09</div></div><div class="wpbc_flex_settings_description">Configure Import events via .ics feeds, Set Export .ics feeds, Google Calendar API Import</div></div>
597 </a>
598 </div><div style="flex: 1 1 100%;/*! border-top: 1px solid #e3e3e3; */margin: 10px 20px 0 0;"><h4>Payments Setup</h4></div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
599
600 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
601
602 <i class="menu_icon icon-1x wpbc_icn_payment"></i>
603 <div class="wpbc_text_inside">
604 <div class="wpbc_flex_settings_title"><div>Payment Gateways</div><div>09</div></div><div class="wpbc_flex_settings_description">Stripe, PayPal, Authorize.net, iDeal, ...</div></div>
605 </a>
606 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
607
608 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
609
610 <i class="menu_icon icon-1x wpbc_icn_attach_money"></i>
611 <div class="wpbc_text_inside">
612 <div class="wpbc_flex_settings_title"><div>Currency</div><div>09</div></div><div class="wpbc_flex_settings_description">Configure Tooltips</div></div>
613 </a>
614 </div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
615
616 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
617
618 <i class="menu_icon icon-1x wpbc_icn_tune"></i>
619 <div class="wpbc_text_inside">
620 <div class="wpbc_flex_settings_title"><div>Payment Options</div><div>09</div></div><div class="wpbc_flex_settings_description">Configure Tooltips</div></div>
621 </a>
622 </div><div style="flex: 1 1 100%;/*! border-top: 1px solid #e3e3e3; */margin: 10px 20px 0 0;"><h4>Search</h4></div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
623
624 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
625
626 <i class="menu_icon icon-1x wpbc_icn_search"></i>
627 <div class="wpbc_text_inside">
628 <div class="wpbc_flex_settings_title"><div>Search Availability</div><div>09</div></div><div class="wpbc_flex_settings_description">Configure Search Availability Form, Search Results form</div></div>
629 </a>
630 </div><div style="flex: 1 1 100%;/*! border-top: 1px solid #e3e3e3; */margin: 10px 20px 0 0;"><h4>MultiUser</h4></div><div id="wpbc_general_settings_calendar_tab" class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active" style="">
631
632 <a class="" original-title="" onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );" href="javascript:void(0);">
633
634 <i class="menu_icon icon-1x wpbc_icn_people_alt"></i>
635 <div class="wpbc_text_inside">
636 <div class="wpbc_flex_settings_title"><div>Booking Admin Panels</div><div>09</div></div><div class="wpbc_flex_settings_description">Activate Booking Admin Panels for Regular Users, Set Super Booking Admin Users...</div></div>
637 </a>
638 </div>
639 </div>
640 <?php
641 }
642
643
644 function wpbc_page_show_left_navigation_custom__settings_all() {
645 ?>
646 <div id="wpbc_general_settings_calendar_tab"
647 class="wpbc_settings_navigation_item wpbc_settings_navigation_item_active">
648 <a class="" original-title=""
649 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_calendar_metabox' );"
650 href="javascript:void(0);">
651 <span>Calendar Settings</span>
652 <i class="wpbc_set_nav__right_icon menu_icon icon-1x wpbc-bi-calendar2-range"></i>
653 </a>
654 </div>
655
656
657 <div id="wpbc_settings__form_layout_tab" class="wpbc_settings_navigation_item">
658 <a onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_settings__form_layout_metabox', '.wpbc_container_hide__on_left_nav_click' );"
659 href="javascript:void(0);">
660 <span>Booking Form</span>
661 <i class="wpbc_set_nav__right_icon menu_icon icon-1x wpbc_icn_dashboard"></i>
662 </a>
663 </div>
664
665 <div id="wpbc_general_settings_time_slots_tab" class="wpbc_settings_navigation_item wpbc_navigation_sub_item">
666
667 </div>
668 <div id="wpbc_general_settings_booking_confirmation_tab" class="wpbc_settings_navigation_item">
669 <a class="" original-title=""
670 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_booking_confirmation_metabox,#wpbc_general_settings_booking_confirmation_left_metabox,#wpbc_general_settings_booking_confirmation_right_metabox,#wpbc_general_settings_booking_confirmation_help_metabox' );"
671 href="javascript:void(0);">
672 <span>Booking Confirmation</span>
673 </a>
674 </div>
675
676 <div id="wpbc_general_settings_booking_timeline_tab"
677 class="wpbc_settings_navigation_item wpbc_navigation_top_border0">
678 <a class="" original-title=""
679 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_booking_timeline_metabox' );"
680 href="javascript:void(0);">
681 <span>Notifications</span><i class="wpbc_set_nav__right_icon menu_icon icon-1x wpbc_icn_mail_outline"></i>
682 </a>
683 </div>
684 <div id="wpbc_general_settings_bookings_options_tab"
685 class="wpbc_settings_navigation_item wpbc_navigation_top_border">
686 <a class="" original-title=""
687 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_bookings_options_metabox' );"
688 href="javascript:void(0);">
689 <span>Sync</span><i class="wpbc_set_nav__right_icon menu_icon icon-1x wpbc_icn_sync_alt"></i>
690 </a>
691 </div>
692
693
694 <div id="wpbc_general_settings_multiuser_tab" class="wpbc_settings_navigation_item">
695 <a class="" original-title=""
696 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_multiuser_metabox' );"
697 href="javascript:void(0);">
698 <span>Payment Setup</span><i class="wpbc_set_nav__right_icon menu_icon icon-1x wpbc_icn_payment"></i>
699 </a>
700 </div>
701
702 <div id="wpbc_general_settings_booking_listing_tab"
703 class="wpbc_settings_navigation_item wpbc_navigation_top_border0">
704 <a class="" original-title=""
705 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_booking_listing_metabox' );"
706 href="javascript:void(0);">
707 <span>Search Availability</span><i class="wpbc_set_nav__right_icon menu_icon icon-1x wpbc_icn_search"></i>
708 </a>
709 </div>
710
711
712 <div id="wpbc_general_settings_advanced_tab" class="wpbc_settings_navigation_item">
713 <a class="" original-title=""
714 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_advanced_metabox' );"
715 href="javascript:void(0);">
716 <span>MultiUser Accounts</span><i
717 class="wpbc_set_nav__right_icon menu_icon icon-1x wpbc_icn_people_alt"></i>
718 </a>
719 </div>
720
721
722 <div id="wpbc_general_settings_help_tab" class="wpbc_settings_navigation_item wpbc_navigation_sub_item"
723 style="display: none;">
724 <a class="" original-title=""
725 onclick="javascript:wpbc_navigation_click_show_section(this,'#wpbc_general_settings_help_metabox' );"
726 href="javascript:void(0);">
727 <span>Tools</span>
728 </a>
729 </div>
730 <?php
731 }