Changeset 3730814
- Timestamp:
- 10/06/2026 12:49:16 PM (2 weeks ago)
- Location:
- booking-activities/trunk
- Files:
-
- 15 added
- 4 deleted
- 28 edited
-
booking-activities.php (modified) (4 diffs)
-
controller/controller-i18n.php (modified) (6 diffs)
-
css/backend.css (modified) (1 diff)
-
css/backend.min.css (modified) (1 diff)
-
css/forms.css (modified) (1 diff)
-
css/forms.min.css (modified) (1 diff)
-
css/global.css (modified) (2 diffs)
-
css/global.min.css (modified) (1 diff)
-
css/templates.css (modified) (4 diffs)
-
css/templates.min.css (modified) (1 diff)
-
css/woocommerce.css (modified) (1 diff)
-
css/woocommerce.min.css (modified) (1 diff)
-
functions/functions-forms.php (modified) (2 diffs)
-
functions/functions-global.php (modified) (3 diffs)
-
functions/functions-i18n.php (modified) (2 diffs)
-
functions/functions-settings.php (modified) (2 diffs)
-
functions/functions-templates.php (modified) (6 diffs)
-
js/booking-method-calendar.js (modified) (27 diffs)
-
js/booking-method-calendar.min.js (modified) (1 diff)
-
js/booking-system-functions.js (modified) (2 diffs)
-
js/booking-system-functions.min.js (modified) (1 diff)
-
js/form-editor.js (modified) (4 diffs)
-
js/form-editor.min.js (modified) (1 diff)
-
js/templates-functions.js (modified) (1 diff)
-
js/templates-functions.min.js (modified) (1 diff)
-
js/templates.js (modified) (16 diffs)
-
js/templates.min.js (modified) (1 diff)
-
lib/fullcalendar/fullcalendar.global.js (added)
-
lib/fullcalendar/fullcalendar.global.min.js (added)
-
lib/fullcalendar/index.global.js (deleted)
-
lib/fullcalendar/index.global.min.js (deleted)
-
lib/fullcalendar/locales-all (added)
-
lib/fullcalendar/locales-all.global.js (deleted)
-
lib/fullcalendar/locales-all.global.min.js (deleted)
-
lib/fullcalendar/locales-all/global.js (added)
-
lib/fullcalendar/locales-all/global.min.js (added)
-
lib/fullcalendar/skeleton.css (added)
-
lib/fullcalendar/skeleton.min.css (added)
-
lib/fullcalendar/themes (added)
-
lib/fullcalendar/themes/classic (added)
-
lib/fullcalendar/themes/classic/global.js (added)
-
lib/fullcalendar/themes/classic/global.min.js (added)
-
lib/fullcalendar/themes/classic/palette.css (added)
-
lib/fullcalendar/themes/classic/palette.min.css (added)
-
lib/fullcalendar/themes/classic/theme.css (added)
-
lib/fullcalendar/themes/classic/theme.min.css (added)
-
readme.txt (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
booking-activities/trunk/booking-activities.php
r3692086 r3730814 4 4 * Plugin URI: https://booking-activities.fr/en/?utm_source=plugin&utm_medium=plugin&utm_content=header 5 5 * Description: Booking system specialized in activities (sports, cultural, leisure, events...). Works great with WooCommerce. 6 * Version: 1.1 8.96 * Version: 1.19.0 7 7 * Author: Booking Activities Team 8 8 * Author URI: https://booking-activities.fr/en/?utm_source=plugin&utm_medium=plugin&utm_content=header … … 43 43 44 44 // GLOBALS AND CONSTANTS 45 if( ! defined( 'BOOKACTI_VERSION' ) ) { define( 'BOOKACTI_VERSION', '1.1 8.9' ); }45 if( ! defined( 'BOOKACTI_VERSION' ) ) { define( 'BOOKACTI_VERSION', '1.19.0' ); } 46 46 if( ! defined( 'BOOKACTI_PLUGIN_NAME' ) ) { define( 'BOOKACTI_PLUGIN_NAME', 'booking-activities' ); } 47 47 if( ! defined( 'BOOKACTI_PATH' ) ) { define( 'BOOKACTI_PATH', __DIR__ ); } … … 131 131 * Enqueue librairies (as high priority scripts) 132 132 * @since 1.11.3 (was part of bookacti_enqueue_high_priority_global_scripts) 133 * @version 1.1 8.5133 * @version 1.19.0 134 134 */ 135 135 function bookacti_enqueue_libraries_scripts() { … … 146 146 147 147 // FullCalendar 148 $fullcalendar_version = ' 6.1.21';148 $fullcalendar_version = '7.1.1'; 149 149 $registered_fc = wp_scripts()->query( 'fullcalendar', 'registered' ); 150 150 $registered_fc_version = $registered_fc && ! empty( $registered_fc->ver ) ? $registered_fc->ver : ''; 151 151 if( ! $registered_fc || ( $registered_fc_version && version_compare( $registered_fc_version, $fullcalendar_version, '<' ) ) ) { 152 wp_register_script( 'fullcalendar', plugins_url( 'lib/fullcalendar/ index.global.min.js', __FILE__ ), array(), $fullcalendar_version, true );152 wp_register_script( 'fullcalendar', plugins_url( 'lib/fullcalendar/fullcalendar.global.min.js', __FILE__ ), array(), $fullcalendar_version, true ); 153 153 } 154 154 if( ! wp_script_is( 'fullcalendar', 'enqueued' ) ) { wp_enqueue_script( 'fullcalendar' ); } 155 wp_enqueue_script( 'fullcalendar-locales-all', plugins_url( 'lib/fullcalendar/locales-all.global.min.js', __FILE__ ), array( 'fullcalendar' ), $fullcalendar_version, true ); 155 wp_enqueue_script( 'fullcalendar-locales-all', plugins_url( 'lib/fullcalendar/locales-all/global.min.js', __FILE__ ), array( 'fullcalendar' ), $fullcalendar_version, true ); 156 wp_enqueue_style( 'fullcalendar-skeleton', plugins_url( 'lib/fullcalendar/skeleton.min.css', __FILE__ ), array(), $fullcalendar_version ); 157 158 // FullCalendar Theme 159 wp_enqueue_script( 'fullcalendar-classic-theme', plugins_url( 'lib/fullcalendar/themes/classic/global.min.js', __FILE__ ), array( 'fullcalendar' ), $fullcalendar_version, true ); 160 wp_enqueue_style( 'fullcalendar-classic-theme', plugins_url( 'lib/fullcalendar/themes/classic/theme.min.css', __FILE__ ), array(), $fullcalendar_version ); 161 wp_enqueue_style( 'fullcalendar-classic-palette', plugins_url( 'lib/fullcalendar/themes/classic/palette.min.css', __FILE__ ), array(), $fullcalendar_version ); 156 162 157 163 // tipTip (alternative to jquery-ui-tooltip to avoid conflict with bootstrap tooltip) -
booking-activities/trunk/controller/controller-i18n.php
r3475786 r3730814 126 126 * Get current lang code with plugin 127 127 * @since 1.14.0 128 * @version 1.19.0 128 129 * @global string $bookacti_locale 129 130 * @global array $q_config … … 140 141 141 142 if( $plugin === 'wpml' ) { 142 $lang_code = apply_filters( 'wpml_current_language', '' ); 143 if( $lang_code && $with_locale ) { 143 $wpml_lang = apply_filters( 'wpml_current_language', '' ); 144 $lang_code = strpos( $wpml_lang, '-' ) ? substr( $wpml_lang, 0, strpos( $wpml_lang, '-' ) ) : $wpml_lang; 145 146 if( $wpml_lang && $with_locale ) { 144 147 $languages = apply_filters( 'wpml_active_languages', array() ); 145 if( ! empty( $languages[ $lang_code ][ 'default_locale' ] ) ) { $lang_code = $languages[ $lang_code ][ 'default_locale' ]; } 148 if( $languages && ! empty( $languages[ $wpml_lang ][ 'default_locale' ] ) ) { 149 $lang_code = $languages[ $wpml_lang ][ 'default_locale' ]; 150 } else if( strpos( $wpml_lang, '-' ) ) { 151 $country_code = strtoupper( substr( $wpml_lang, strpos( $wpml_lang, '-' ) + 1 ) ); 152 if( $country_code ) { 153 $lang_code .= '_' . $country_code; 154 } 155 } 146 156 } 147 157 } … … 150 160 if( $lang_code && $with_locale ) { 151 161 global $q_config; 152 if( isset( $q_config[ 'locale' ][ $lang_code ] ) ) { $lang_code = $q_config[ 'locale' ][ $lang_code ]; } 162 if( isset( $q_config[ 'locale' ][ $lang_code ] ) ) { 163 $lang_code = $q_config[ 'locale' ][ $lang_code ]; 164 } 153 165 } 154 166 } … … 162 174 * Get site default locale with WPML 163 175 * @since 1.14.0 176 * @version 1.19.0 164 177 * @global array $q_config 165 178 * @param string $locale … … 171 184 172 185 if( $plugin === 'wpml' ) { 173 $locale = apply_filters( 'wpml_default_language', '' ); 174 if( $with_locale && $locale ) { 186 $wpml_lang = apply_filters( 'wpml_default_language', '' ); 187 $locale = strpos( $wpml_lang, '-' ) ? substr( $wpml_lang, 0, strpos( $wpml_lang, '-' ) ) : $wpml_lang; 188 189 if( $wpml_lang && $with_locale ) { 175 190 $languages = apply_filters( 'wpml_active_languages', array() ); 176 if( $languages && ! empty( $languages[ $locale ][ 'default_locale' ] ) ) { $locale = $languages[ $locale ][ 'default_locale' ]; } 191 if( $languages && ! empty( $languages[ $wpml_lang ][ 'default_locale' ] ) ) { 192 $locale = $languages[ $wpml_lang ][ 'default_locale' ]; 193 } else if( strpos( $wpml_lang, '-' ) ) { 194 $country_code = strtoupper( substr( $wpml_lang, strpos( $wpml_lang, '-' ) + 1 ) ); 195 if( $country_code ) { 196 $locale .= '_' . $country_code; 197 } 198 } 177 199 } 178 200 } … … 182 204 $locale = $q_config[ 'default_language' ]; 183 205 if( $with_locale && $locale ) { 184 if( ! empty( $q_config[ 'locale' ][ $locale ] ) ) { $locale = $q_config[ 'locale' ][ $locale ]; } 206 if( ! empty( $q_config[ 'locale' ][ $locale ] ) ) { 207 $locale = $q_config[ 'locale' ][ $locale ]; 208 } 185 209 } 186 210 } -
booking-activities/trunk/css/backend.css
r3539441 r3730814 30 30 .bookacti-addon-promo .button { margin-top: 10px; } 31 31 32 #bookacti-fatal-error { margin: 1em; } 32 #bookacti-fatal-error { margin: 1em; } 33 .bookacti-error-details { padding-left: 1em; border-left: 1px dashed black; } 34 .rtl .bookacti-error-details { padding-right: 1em; border-right: 1px dashed black; padding-left: 0; border-left: none; } 33 35 34 36 .bookacti-help-list { list-style-type: disc; padding-inline-start: 20px; } -
booking-activities/trunk/css/backend.min.css
r3539441 r3730814 1 .bookacti-nav-tab-wrapper{margin-bottom:16px!important}.bookacti-tip.dashicons-editor-help:before{color:#565d61}.bookacti-disabled{cursor:auto;opacity:.5;pointer-events:none}.bookacti-hide-fields{display:none}.bookacti-show-fields{display:block}.wp-admin select.bookacti-select[multiple]:hover{color:initial}.wp-admin select.bookacti-select[multiple] option:hover{color:#007cba}ul[id$=-select-box-results] li[aria-disabled=true]{display:none}.bookacti-error>span,.bookacti-info>span,.bookacti-sos>span,.bookacti-warning>span{display:table-cell;vertical-align:middle}.bookacti-error>.dashicons,.bookacti-info>.dashicons,.bookacti-sos>.dashicons,.bookacti-warning>.dashicons{font-size:1.5em;padding-right:10px}.bookacti-error a,.bookacti-info a,.bookacti-sos a,.bookacti-warning a{color:#0073aa;text-decoration:none}.bookacti-error a:hover,.bookacti-info a:hover,.bookacti-sos a:hover,.bookacti-warning a:hover{color:#00a0d2}.bookacti-error>.dashicons{color:#b81c23}.bookacti-warning>.dashicons{color:#f89b2f}.bookacti-info>.dashicons{color:#00a0d2}.bookacti-sos{height:auto;width:auto}.bookacti-sos>.dashicons{color:#ca4a1f;max-width:50px;text-align:center;width:auto}.bookacti-sos>.dashicons:after{content:attr(data-label);display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.wp-core-ui .button.bookacti-delete-button{border-color:#a00;color:#a00}.wp-core-ui .button.bookacti-delete-button:hover{border-color:#dc3232;color:#dc3232}.wp-core-ui .button.bookacti-delete-button:focus{border-color:#dc3232;box-shadow:0 0 0 1px #dc3232;color:#dc3232}.bookacti-addon-promo{border:2px solid #52b7e9;border-radius:3px;padding:10px;text-align:center}.bookacti-addon-promo .button{margin-top:10px}#bookacti-fatal-error{margin:1em}.bookacti- help-list{list-style-type:disc;padding-inline-start:20px}.bookacti-help-list ul{list-style-type:circle;margin-top:3px;padding-inline-start:20px}.bookacti-add-ons-compatibility-notice li{list-style-type:disc;margin-left:30px}.column-date span[title]{text-underline-offset:3px}.bookacti-button-dashicons.button{padding:0 6px}.bookacti-button-dashicons .dashicons,.bookacti-button-dashicons-text.button,.bookacti-button-dashicons.button{vertical-align:middle}.bookacti-button-dashicons-text .dashicons,.bookacti-button-dashicons-text.button-secondary .dashicons{line-height:normal;vertical-align:middle}.bookacti-button-dashicons-text .dashicons+span{margin-left:4px;vertical-align:middle}.rtl .bookacti-button-dashicons-text .dashicons+span{margin-left:0;margin-right:4px}.bookacti-filter-container{display:inline-block;margin-right:10px;vertical-align:top}.bookacti-filter-container .button,.bookacti-filter-container button,.bookacti-filter-container input,.bookacti-filter-container select,.bookacti-filter-container textarea{width:150px}.bookacti-filter-title{font-weight:700;line-height:2.5em}.bookacti-filter-content select[multiple]{box-sizing:border-box;height:66px;margin:0;padding:0}.bookacti-filter-content select[multiple] option{box-sizing:border-box;height:22px;margin:0;padding:2px 4px}.bookacti-filter-container:first-of-type .select2.select2-container{z-index:50}.bookacti-filter-container:nth-of-type(2) .select2.select2-container{z-index:45}.bookacti-filter-container:nth-of-type(3) .select2.select2-container{z-index:40}.bookacti-filter-container:nth-of-type(4) .select2.select2-container{z-index:35}.bookacti-filter-container:nth-of-type(5) .select2.select2-container{z-index:30}.bookacti-filter-container:nth-of-type(6) .select2.select2-container{z-index:25}.bookacti-filter-container:nth-of-type(7) .select2.select2-container{z-index:20}.bookacti-filter-container:nth-of-type(8) .select2.select2-container{z-index:15}.bookacti-filter-container:nth-of-type(9) .select2.select2-container{z-index:10}.bookacti-list-table tr.hidden{display:none}.bookacti-list-table .alternate,.bookacti-list-table .striped>tbody>:nth-child(odd),.bookacti-list-table ul.striped>:nth-child(odd){-webkit-transition:background-color .4s linear;-ms-transition:background-color .4s linear;transition:background-color .4s linear}.bookacti-list-table th.sortable a,.bookacti-list-table th.sorted a{position:relative}.bookacti-list-table .sorting-indicators{position:absolute;right:0}.bookacti-list-table .sorting-indicator{display:none!important}.bookacti-list-table th.asc a:focus span.sorting-indicator,.bookacti-list-table th.asc:hover span.sorting-indicator,.bookacti-list-table th.desc a:focus span.sorting-indicator,.bookacti-list-table th.desc:hover span.sorting-indicator,.bookacti-list-table th.sorted .sorting-indicator{display:block!important}.bookacti-list-table .wp-list-table.widefat{border-collapse:collapse}.bookacti-list-table tbody td{vertical-align:middle}.bookacti-list-table .column-active .sorting-indicator,.bookacti-list-table .column-id .sorting-indicator{display:inline-block;float:none;vertical-align:top}.bookacti-list-table .column-id{text-align:center;white-space:nowrap;width:40px}.bookacti-list-table .column-active{text-align:center;white-space:nowrap;width:60px}.bookacti-list-table .dashicons-yes:before{color:#3cb371}.bookacti-list-table .dashicons-no:before{color:#cd5c5c}.bookacti-list-table .bookacti-primary-data-container{display:none;margin-left:10px}.bookacti-list-table .bookacti-primary-data{display:inline-block;margin-right:10px}.bookacti-list-table .bookacti-primary-data:last-child{margin-right:0}.bookacti-list-table .no-items td .button{vertical-align:middle}@media screen and (max-width:1280px){.bookacti-list-table .check-column,.bookacti-list-table .column-id{width:30px}}@media screen and (max-width:782px){.bookacti-list-table .bookacti-primary-data-container{display:inline-block}.bookacti-list-table .column-id,.bookacti-list-table .column-id.hidden~.column-primary .bookacti-column-id,.bookacti-list-table .is-expanded td.column-id{display:none!important}.bookacti-list-table .button{font-size:1em;padding:3px 6px}.bookacti-list-table .is-expanded td{text-align:left}.rtl .bookacti-list-table .is-expanded td{text-align:right}}.bookacti-hidden-event{display:none}#bookacti-template-calendar .bookacti-available-places.bookacti-booked,.bookacti-available-places.bookacti-booked,.bookacti-available-places.bookacti-full,.bookacti-available-places.bookacti-no-availability,.bookacti-available-places.bookacti-not-bookable,.bookacti-available-places.bookacti-not-booked{color:#fff}#bookacti-template-calendar .bookacti-available-places.bookacti-booked,#bookacti-template-calendar .bookacti-available-places.bookacti-not-booked{background-color:#4ead3b}#bookacti-template-calendar .bookacti-available-places.bookacti-full,#bookacti-template-calendar .bookacti-available-places.bookacti-no-availability,#bookacti-template-calendar .bookacti-available-places.bookacti-not-bookable{background-color:#ab3b3b}#bookacti-template-calendar .bookacti-available-places.bookacti-booked{background-color:#e39102}#bookacti-settings input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=button]):not([type=search]):not(.button):not(.bookacti-duration-field):not(.bookacti-date-interval-from):not(.bookacti-date-interval-to),#bookacti-settings select{display:inline-block;max-width:300px;min-width:300px;width:300px}#bookacti-settings textarea:not(.wp-editor-area){min-width:300px;width:300px}#bookacti-settings textarea{min-height:100px}#bookacti-settings .bookacti-message-setting textarea{min-height:0;resize:both}.bookacti-select[multiple]{max-height:none;max-width:none;resize:both}#bookacti_refund_actions{display:inline-block}.bookacti-settings-section-price,.bookacti-settings-tab-messages .form-table th{display:none}.bookacti-settings-tab-messages .form-table td{font-size:13px;padding:0 0 20px}.bookacti-message-setting{margin-bottom:20px}.bookacti-message-setting input{margin-top:6px}.bookacti_checkbox{box-sizing:border-box;display:inline-block;margin-right:20px;max-width:100px;min-width:100px;overflow:hidden;padding:1px;white-space:nowrap}#bookacti_refund_actions .bookacti_checkbox{max-width:none;overflow:visible}.bookacti-licenses-settings-description{margin-bottom:40px}.bookacti-licenses-settings-description strong{font-size:14px}.bookacti-licenses-settings-description+.submit{display:none}.bookacti-default-booking-status-wc-notice table{border-collapse:collapse;margin-top:10px}.bookacti-default-booking-status-wc-notice table td,.bookacti-default-booking-status-wc-notice table th{border:1px solid #ccc;padding:10px}@media screen and (max-width:782px){.bookacti-default-booking-status-wc-notice table{display:table}.bookacti-default-booking-status-wc-notice table td,.bookacti-default-booking-status-wc-notice table th{display:table-cell;font-size:small}}.bookacti-tabs .bookacti-tab-content .bookacti-display-inline-block{display:inline-block}.bookacti-duration-field-container{display:inline-block;margin-right:4px;vertical-align:middle}.bookacti-duration-field{width:60px}.bookacti-duration-field-label{display:block}.bookacti-date-intervals-container.bookacti-has-use-global{container-type:inline-size;display:grid;gap:3px;grid-template-columns:150px 1fr}.bookacti-date-intervals-container.bookacti-has-use-global .bookacti-date-intervals-table-container{grid-column:1/2}.bookacti-date-intervals-table-container{max-height:160px;overflow-y:auto;padding-inline-end:20px;width:fit-content}.bookacti-date-intervals-table-container th{text-align:center;width:unset}.bookacti-date-intervals-table-container td,.bookacti-date-intervals-table-container th{padding:1px}.bookacti-delete-date-interval{color:#565d61;cursor:pointer}.bookacti-add-date-interval{color:#418fb6;cursor:pointer;vertical-align:middle}@container (min-width: 540px){.bookacti-date-intervals-container.bookacti-has-use-global .bookacti-date-intervals-table-container{grid-column:2}}.bookacti-onoffswitch-knobs,.bookacti-onoffswitch-layer{bottom:0;left:0;position:absolute;right:0;top:0}.bookacti-onoffswitch{display:inline-block;height:22px;overflow:hidden;position:relative;vertical-align:middle;width:64px}.bookacti-onoffswitch,.bookacti-onoffswitch .bookacti-onoffswitch-layer{border-radius:2px}input[type=checkbox].bookacti-onoffswitch-checkbox{cursor:pointer;height:100%;margin:0;opacity:0;padding:0;position:relative;width:100%;z-index:3}.bookacti-onoffswitch-knobs{z-index:2}.bookacti-onoffswitch-layer{background-color:#f5f5f5;border:1px solid #8c8f94;box-sizing:border-box;transition:all .3s ease;width:100%;z-index:1}.bookacti-onoffswitch .bookacti-onoffswitch-knobs:before{background-color:#565d61;border-radius:2px;color:#fff;content:"OFF";font-size:10px;font-weight:700;left:0;line-height:1;padding:6px;position:absolute;text-align:center;top:0;transition:all .3s cubic-bezier(.18,.89,.35,1.15);width:20px}.bookacti-onoffswitch .bookacti-onoffswitch-checkbox:checked+.bookacti-onoffswitch-knobs:before{background-color:#418fb6;content:"ON";left:32px}.bookacti-onoffswitch .bookacti-onoffswitch-checkbox:checked~.bookacti-onoffswitch-layer{background-color:rgba(65,143,182,.12)}.bookacti-onoffswitch .bookacti-onoffswitch-knobs,.bookacti-onoffswitch .bookacti-onoffswitch-knobs:before,.bookacti-onoffswitch .bookacti-onoffswitch-layer{transition:all .3s ease}.rtl .bookacti-onoffswitch .bookacti-onoffswitch-knobs:before{left:32px}.rtl .bookacti-onoffswitch .bookacti-onoffswitch-checkbox:checked+.bookacti-onoffswitch-knobs:before{left:0}.bookacti-bawl-addon-promo .bookacti-promo-events-examples .fc-event{height:64px}.bookacti-bawl-addon-promo .bookacti-event-waitlist-container{background:#000;border-radius:0 0 0 3px;box-sizing:border-box;color:#fff;height:24px;padding:2px 3px;position:absolute;right:0;text-align:right;top:0;width:24px;z-index:6}.bookacti-bawl-addon-promo .bookacti-event-waitlist-text{font-size:.85em;line-height:1.2em;position:relative;right:-30px}.bookacti-bawl-addon-promo .bookacti-event-waitlist-container:before{content:"\0052";display:block;font-family:booking_activities_icons;font-size:14px;vertical-align:middle}.bookacti-bawl-addon-promo .bookacti-event-waitlistable .bookacti-event-waitlist-container,.bookacti-bawl-addon-promo .bookacti-event-waitlistable .bookacti-event-waitlist-text{transition:all .2s}.bookacti-bawl-addon-promo .bookacti-event-waitlistable:hover .bookacti-event-waitlist-container{border-radius:0;height:100%;opacity:1;transition:all .5s;width:100%}.bookacti-bawl-addon-promo .bookacti-event-waitlistable:hover .bookacti-event-waitlist-text{right:0;transition:all .5s}1 .bookacti-nav-tab-wrapper{margin-bottom:16px!important}.bookacti-tip.dashicons-editor-help:before{color:#565d61}.bookacti-disabled{cursor:auto;opacity:.5;pointer-events:none}.bookacti-hide-fields{display:none}.bookacti-show-fields{display:block}.wp-admin select.bookacti-select[multiple]:hover{color:initial}.wp-admin select.bookacti-select[multiple] option:hover{color:#007cba}ul[id$=-select-box-results] li[aria-disabled=true]{display:none}.bookacti-error>span,.bookacti-info>span,.bookacti-sos>span,.bookacti-warning>span{display:table-cell;vertical-align:middle}.bookacti-error>.dashicons,.bookacti-info>.dashicons,.bookacti-sos>.dashicons,.bookacti-warning>.dashicons{font-size:1.5em;padding-right:10px}.bookacti-error a,.bookacti-info a,.bookacti-sos a,.bookacti-warning a{color:#0073aa;text-decoration:none}.bookacti-error a:hover,.bookacti-info a:hover,.bookacti-sos a:hover,.bookacti-warning a:hover{color:#00a0d2}.bookacti-error>.dashicons{color:#b81c23}.bookacti-warning>.dashicons{color:#f89b2f}.bookacti-info>.dashicons{color:#00a0d2}.bookacti-sos{height:auto;width:auto}.bookacti-sos>.dashicons{color:#ca4a1f;max-width:50px;text-align:center;width:auto}.bookacti-sos>.dashicons:after{content:attr(data-label);display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.wp-core-ui .button.bookacti-delete-button{border-color:#a00;color:#a00}.wp-core-ui .button.bookacti-delete-button:hover{border-color:#dc3232;color:#dc3232}.wp-core-ui .button.bookacti-delete-button:focus{border-color:#dc3232;box-shadow:0 0 0 1px #dc3232;color:#dc3232}.bookacti-addon-promo{border:2px solid #52b7e9;border-radius:3px;padding:10px;text-align:center}.bookacti-addon-promo .button{margin-top:10px}#bookacti-fatal-error{margin:1em}.bookacti-error-details{border-left:1px dashed #000;padding-left:1em}.rtl .bookacti-error-details{border-left:none;border-right:1px dashed #000;padding-left:0;padding-right:1em}.bookacti-help-list{list-style-type:disc;padding-inline-start:20px}.bookacti-help-list ul{list-style-type:circle;margin-top:3px;padding-inline-start:20px}.bookacti-add-ons-compatibility-notice li{list-style-type:disc;margin-left:30px}.column-date span[title]{text-underline-offset:3px}.bookacti-button-dashicons.button{padding:0 6px}.bookacti-button-dashicons .dashicons,.bookacti-button-dashicons-text.button,.bookacti-button-dashicons.button{vertical-align:middle}.bookacti-button-dashicons-text .dashicons,.bookacti-button-dashicons-text.button-secondary .dashicons{line-height:normal;vertical-align:middle}.bookacti-button-dashicons-text .dashicons+span{margin-left:4px;vertical-align:middle}.rtl .bookacti-button-dashicons-text .dashicons+span{margin-left:0;margin-right:4px}.bookacti-filter-container{display:inline-block;margin-right:10px;vertical-align:top}.bookacti-filter-container .button,.bookacti-filter-container button,.bookacti-filter-container input,.bookacti-filter-container select,.bookacti-filter-container textarea{width:150px}.bookacti-filter-title{font-weight:700;line-height:2.5em}.bookacti-filter-content select[multiple]{box-sizing:border-box;height:66px;margin:0;padding:0}.bookacti-filter-content select[multiple] option{box-sizing:border-box;height:22px;margin:0;padding:2px 4px}.bookacti-filter-container:first-of-type .select2.select2-container{z-index:50}.bookacti-filter-container:nth-of-type(2) .select2.select2-container{z-index:45}.bookacti-filter-container:nth-of-type(3) .select2.select2-container{z-index:40}.bookacti-filter-container:nth-of-type(4) .select2.select2-container{z-index:35}.bookacti-filter-container:nth-of-type(5) .select2.select2-container{z-index:30}.bookacti-filter-container:nth-of-type(6) .select2.select2-container{z-index:25}.bookacti-filter-container:nth-of-type(7) .select2.select2-container{z-index:20}.bookacti-filter-container:nth-of-type(8) .select2.select2-container{z-index:15}.bookacti-filter-container:nth-of-type(9) .select2.select2-container{z-index:10}.bookacti-list-table tr.hidden{display:none}.bookacti-list-table .alternate,.bookacti-list-table .striped>tbody>:nth-child(odd),.bookacti-list-table ul.striped>:nth-child(odd){-webkit-transition:background-color .4s linear;-ms-transition:background-color .4s linear;transition:background-color .4s linear}.bookacti-list-table th.sortable a,.bookacti-list-table th.sorted a{position:relative}.bookacti-list-table .sorting-indicators{position:absolute;right:0}.bookacti-list-table .sorting-indicator{display:none!important}.bookacti-list-table th.asc a:focus span.sorting-indicator,.bookacti-list-table th.asc:hover span.sorting-indicator,.bookacti-list-table th.desc a:focus span.sorting-indicator,.bookacti-list-table th.desc:hover span.sorting-indicator,.bookacti-list-table th.sorted .sorting-indicator{display:block!important}.bookacti-list-table .wp-list-table.widefat{border-collapse:collapse}.bookacti-list-table tbody td{vertical-align:middle}.bookacti-list-table .column-active .sorting-indicator,.bookacti-list-table .column-id .sorting-indicator{display:inline-block;float:none;vertical-align:top}.bookacti-list-table .column-id{text-align:center;white-space:nowrap;width:40px}.bookacti-list-table .column-active{text-align:center;white-space:nowrap;width:60px}.bookacti-list-table .dashicons-yes:before{color:#3cb371}.bookacti-list-table .dashicons-no:before{color:#cd5c5c}.bookacti-list-table .bookacti-primary-data-container{display:none;margin-left:10px}.bookacti-list-table .bookacti-primary-data{display:inline-block;margin-right:10px}.bookacti-list-table .bookacti-primary-data:last-child{margin-right:0}.bookacti-list-table .no-items td .button{vertical-align:middle}@media screen and (max-width:1280px){.bookacti-list-table .check-column,.bookacti-list-table .column-id{width:30px}}@media screen and (max-width:782px){.bookacti-list-table .bookacti-primary-data-container{display:inline-block}.bookacti-list-table .column-id,.bookacti-list-table .column-id.hidden~.column-primary .bookacti-column-id,.bookacti-list-table .is-expanded td.column-id{display:none!important}.bookacti-list-table .button{font-size:1em;padding:3px 6px}.bookacti-list-table .is-expanded td{text-align:left}.rtl .bookacti-list-table .is-expanded td{text-align:right}}.bookacti-hidden-event{display:none}#bookacti-template-calendar .bookacti-available-places.bookacti-booked,.bookacti-available-places.bookacti-booked,.bookacti-available-places.bookacti-full,.bookacti-available-places.bookacti-no-availability,.bookacti-available-places.bookacti-not-bookable,.bookacti-available-places.bookacti-not-booked{color:#fff}#bookacti-template-calendar .bookacti-available-places.bookacti-booked,#bookacti-template-calendar .bookacti-available-places.bookacti-not-booked{background-color:#4ead3b}#bookacti-template-calendar .bookacti-available-places.bookacti-full,#bookacti-template-calendar .bookacti-available-places.bookacti-no-availability,#bookacti-template-calendar .bookacti-available-places.bookacti-not-bookable{background-color:#ab3b3b}#bookacti-template-calendar .bookacti-available-places.bookacti-booked{background-color:#e39102}#bookacti-settings input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=button]):not([type=search]):not(.button):not(.bookacti-duration-field):not(.bookacti-date-interval-from):not(.bookacti-date-interval-to),#bookacti-settings select{display:inline-block;max-width:300px;min-width:300px;width:300px}#bookacti-settings textarea:not(.wp-editor-area){min-width:300px;width:300px}#bookacti-settings textarea{min-height:100px}#bookacti-settings .bookacti-message-setting textarea{min-height:0;resize:both}.bookacti-select[multiple]{max-height:none;max-width:none;resize:both}#bookacti_refund_actions{display:inline-block}.bookacti-settings-section-price,.bookacti-settings-tab-messages .form-table th{display:none}.bookacti-settings-tab-messages .form-table td{font-size:13px;padding:0 0 20px}.bookacti-message-setting{margin-bottom:20px}.bookacti-message-setting input{margin-top:6px}.bookacti_checkbox{box-sizing:border-box;display:inline-block;margin-right:20px;max-width:100px;min-width:100px;overflow:hidden;padding:1px;white-space:nowrap}#bookacti_refund_actions .bookacti_checkbox{max-width:none;overflow:visible}.bookacti-licenses-settings-description{margin-bottom:40px}.bookacti-licenses-settings-description strong{font-size:14px}.bookacti-licenses-settings-description+.submit{display:none}.bookacti-default-booking-status-wc-notice table{border-collapse:collapse;margin-top:10px}.bookacti-default-booking-status-wc-notice table td,.bookacti-default-booking-status-wc-notice table th{border:1px solid #ccc;padding:10px}@media screen and (max-width:782px){.bookacti-default-booking-status-wc-notice table{display:table}.bookacti-default-booking-status-wc-notice table td,.bookacti-default-booking-status-wc-notice table th{display:table-cell;font-size:small}}.bookacti-tabs .bookacti-tab-content .bookacti-display-inline-block{display:inline-block}.bookacti-duration-field-container{display:inline-block;margin-right:4px;vertical-align:middle}.bookacti-duration-field{width:60px}.bookacti-duration-field-label{display:block}.bookacti-date-intervals-container.bookacti-has-use-global{container-type:inline-size;display:grid;gap:3px;grid-template-columns:150px 1fr}.bookacti-date-intervals-container.bookacti-has-use-global .bookacti-date-intervals-table-container{grid-column:1/2}.bookacti-date-intervals-table-container{max-height:160px;overflow-y:auto;padding-inline-end:20px;width:fit-content}.bookacti-date-intervals-table-container th{text-align:center;width:unset}.bookacti-date-intervals-table-container td,.bookacti-date-intervals-table-container th{padding:1px}.bookacti-delete-date-interval{color:#565d61;cursor:pointer}.bookacti-add-date-interval{color:#418fb6;cursor:pointer;vertical-align:middle}@container (min-width: 540px){.bookacti-date-intervals-container.bookacti-has-use-global .bookacti-date-intervals-table-container{grid-column:2}}.bookacti-onoffswitch-knobs,.bookacti-onoffswitch-layer{bottom:0;left:0;position:absolute;right:0;top:0}.bookacti-onoffswitch{display:inline-block;height:22px;overflow:hidden;position:relative;vertical-align:middle;width:64px}.bookacti-onoffswitch,.bookacti-onoffswitch .bookacti-onoffswitch-layer{border-radius:2px}input[type=checkbox].bookacti-onoffswitch-checkbox{cursor:pointer;height:100%;margin:0;opacity:0;padding:0;position:relative;width:100%;z-index:3}.bookacti-onoffswitch-knobs{z-index:2}.bookacti-onoffswitch-layer{background-color:#f5f5f5;border:1px solid #8c8f94;box-sizing:border-box;transition:all .3s ease;width:100%;z-index:1}.bookacti-onoffswitch .bookacti-onoffswitch-knobs:before{background-color:#565d61;border-radius:2px;color:#fff;content:"OFF";font-size:10px;font-weight:700;left:0;line-height:1;padding:6px;position:absolute;text-align:center;top:0;transition:all .3s cubic-bezier(.18,.89,.35,1.15);width:20px}.bookacti-onoffswitch .bookacti-onoffswitch-checkbox:checked+.bookacti-onoffswitch-knobs:before{background-color:#418fb6;content:"ON";left:32px}.bookacti-onoffswitch .bookacti-onoffswitch-checkbox:checked~.bookacti-onoffswitch-layer{background-color:rgba(65,143,182,.12)}.bookacti-onoffswitch .bookacti-onoffswitch-knobs,.bookacti-onoffswitch .bookacti-onoffswitch-knobs:before,.bookacti-onoffswitch .bookacti-onoffswitch-layer{transition:all .3s ease}.rtl .bookacti-onoffswitch .bookacti-onoffswitch-knobs:before{left:32px}.rtl .bookacti-onoffswitch .bookacti-onoffswitch-checkbox:checked+.bookacti-onoffswitch-knobs:before{left:0}.bookacti-bawl-addon-promo .bookacti-promo-events-examples .fc-event{height:64px}.bookacti-bawl-addon-promo .bookacti-event-waitlist-container{background:#000;border-radius:0 0 0 3px;box-sizing:border-box;color:#fff;height:24px;padding:2px 3px;position:absolute;right:0;text-align:right;top:0;width:24px;z-index:6}.bookacti-bawl-addon-promo .bookacti-event-waitlist-text{font-size:.85em;line-height:1.2em;position:relative;right:-30px}.bookacti-bawl-addon-promo .bookacti-event-waitlist-container:before{content:"\0052";display:block;font-family:booking_activities_icons;font-size:14px;vertical-align:middle}.bookacti-bawl-addon-promo .bookacti-event-waitlistable .bookacti-event-waitlist-container,.bookacti-bawl-addon-promo .bookacti-event-waitlistable .bookacti-event-waitlist-text{transition:all .2s}.bookacti-bawl-addon-promo .bookacti-event-waitlistable:hover .bookacti-event-waitlist-container{border-radius:0;height:100%;opacity:1;transition:all .5s;width:100%}.bookacti-bawl-addon-promo .bookacti-event-waitlistable:hover .bookacti-event-waitlist-text{right:0;transition:all .5s} -
booking-activities/trunk/css/forms.css
r3475786 r3730814 123 123 .bookacti-form-field-name-submit input { cursor: pointer; } 124 124 125 .bookacti-no-events { width: fit-content;margin: auto; font-style: italic; } 125 .bookacti-no-events { width: fit-content; margin: auto; } 126 .bookacti-no-events-row { display: flex; flex-direction: column; justify-content: center; align-items: center; background-color: rgba(0,0,0,.14); background-color: var(--fc-classic-muted); } 127 .bookacti-no-events-row .bookacti-no-events { padding-block: 60px; } 126 128 127 129 -
booking-activities/trunk/css/forms.min.css
r3475786 r3730814 1 #bookacti-form-list-container .column-active{text-align:center;white-space:nowrap;width:40px}#bookacti-form-list-container .column-author,#bookacti-form-list-container .column-date,#bookacti-form-list-container .column-status{width:10%}#bookacti-form-list-container .column-shortcode input{background:none;border:none;box-shadow:none;font-size:12px;margin:0;padding:0}body.booking-activities_page_bookacti_forms label[for=bookacti_form_publish-hide]{display:none}#bookacti-form-editor-container{background:#f5f5f5;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,.04);margin-top:20px}#bookacti-form-editor-header{background:#fff;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;padding:8px 12px}#bookacti-form-editor-title h2{display:inline-block;margin:0;padding:0;vertical-align:middle}#bookacti-form-editor-description{padding:1em}#bookacti-form-editor-description p{font-style:italic;margin:0;padding:0}.bookacti-wc-icon-not-supported{color:#cd5c5c;font-size:20px;font-style:normal;margin-right:13px;position:relative}.bookacti-wc-icon-not-supported:before{content:"\e03d";font-family:WooCommerce}.bookacti-wc-icon-not-supported:after{bottom:-4px;content:"\f158";font-family:dashicons;font-size:13px;position:absolute}#bookacti-form-editor{padding:1em}.bookacti-form-editor-field{background:#fff;border:1px solid #e5e5e5;box-sizing:border-box;margin-bottom:1em}.bookacti-form-editor-field-header{border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;transition:max-height .2s}.bookacti-form-editor-field-title{cursor:move;padding:1em 0 1em 1em;text-align:left;width:100%}.rtl .bookacti-form-editor-field-title{padding-left:0;padding-right:1em;text-align:right}.bookacti-form-editor-field-header h3{display:inline-block;margin:0;padding:0;vertical-align:middle}.bookacti-form-editor-field-actions{margin:1em;position:relative;white-space:nowrap}.bookacti-form-editor-field-body{padding:1em}.bookacti-form-editor-field-placeholder{border:1px dashed #b4b9be;display:block;margin:1em 0;min-height:47px;width:100%}#bookacti-form-editor-actions>*,.bookacti-form-editor-field-actions>*{color:#565d61;cursor:pointer;display:inline-block;vertical-align:middle}#bookacti-form-editor-actions svg,.bookacti-form-editor-field-actions svg{fill:currentColor}#bookacti-form-editor-actions>.button,.bookacti-form-editor-field-actions>.button{vertical-align:middle}#bookacti-form-editor-actions>.button-secondary,.bookacti-form-editor-field-actions>.button-secondary{color:#0071a1}.bookacti-display-help.bookacti-sos span.dashicons{display:block;padding-right:0}.bookacti-form-editor-field-header .bookacti-wc-icon-not-supported{display:inline-block;font-weight:400;margin-right:20px;vertical-align:middle}#bookacti-form-editor .bookacti-addon-promo{text-align:left}.bookacti-form-field-name-calendar .bookacti-edit-form-field:before{content:"\f111";font:400 20px dashicons;margin-right:4px;vertical-align:sub}#bookacti-form-editor-page-container #bookacti-form-shortcode{background:inherit;border:none;box-shadow:none;color:inherit;font-size:12px;margin:0;max-width:none;padding:4px 8px;width:100%}.bookacti-activities-actions-options-table,.bookacti-group-categories-actions-options-table{display:none;max-height:200px;overflow-y:auto}.bookacti-activities-actions-options-table h4,.bookacti-group-categories-actions-options-table h4{margin-bottom:.75em;text-decoration:underline}.bookacti-options-table{border-collapse:collapse}.bookacti-options-table th{text-align:left}.bookacti-options-table td,.bookacti-options-table th{padding:2px 5px}.bookacti-options-table .bookacti-column-activity,.bookacti-options-table .bookacti-column-group_category{max-width:130px;overflow:hidden;padding-right:20px;width:130px}#poststuff #bookacti_form_publish .inside{margin:0;padding:0}#bookacti-form-wc-integration-tuto img{max-width:720px;width:100%}#bookacti-form-author-container,.bookacti-form-field-container{margin-bottom:20px}.bookacti-form-field-label label{margin:0}.bookacti-form-field-content,.bookacti-form-field-label{display:inline-block;margin:0;vertical-align:middle}.bookacti-form-field-label{padding-right:10px;width:160px}.rtl .bookacti-form-field-label{padding-left:10px;padding-right:0}.bookacti-required-field-indicator:before{color:#cd5c5c;content:"*";font-size:small;margin:0 2px;vertical-align:top}.bookacti-form-field-name-calendar,.bookacti-form-field-name-calendar .bookacti-form-field-content{width:100%}.bookacti-form-field-login-field-container{display:block;margin-bottom:10px}.bookacti-form-field-login-field-container:last-child{margin-bottom:0}.bookacti-login-types-hidden{display:none}.bookacti-login-field-login-type{margin-bottom:10px}.bookacti-forgotten-password{font-size:.8em;font-style:italic}.forgotten-password-email{display:block;margin-top:10px}.bookacti-forgotten-password-email{min-height:30px;min-width:300px}.bookacti-login-field-submit-button{margin-top:20px}.bookacti-login-button{cursor:pointer}.bookacti-password-strength{display:inline-block}.bookacti-password-strength-meter{background-color:#eee;border:1px solid #ddd;box-sizing:border-box;color:#23282d;margin:-2px 5px 5px 1px;opacity:0;padding:3px 5px;text-align:center}.bookacti-password-strength-meter.short{background-color:#f1adad;border-color:#e35b5b;opacity:1}.bookacti-password-strength-meter.bad{background-color:#fbc5a9;border-color:#f78b53;opacity:1}.bookacti-password-strength-meter.good{background-color:#ffe399;border-color:#ffc733;opacity:1}.bookacti-password-strength-meter.strong{background-color:#c1e1b9;border-color:#83c373;opacity:1}.bookacti-password.short{border-color:#e35b5b}.bookacti-password.bad{border-color:#f78b53}.bookacti-password.good{border-color:#ffc733}.bookacti-password.strong{border-color:#83c373}.bookacti-register-fields{margin-top:10px}.bookacti-form-field-checkbox-input,.bookacti-form-field-checkbox-label{display:table-cell;vertical-align:top}.bookacti-form-field-checkbox-label{padding:0 10px}.bookacti-form-field-type-total_price label{font-weight:700}.bookacti-total-price-table{border-collapse:collapse}.bookacti-total-price-table td,.bookacti-total-price-table th{border:1px solid #ddd;padding:5px 10px;text-align:left;vertical-align:middle}.bookacti-total-price-table td+td,.bookacti-total-price-table th+th{text-align:right}.bookacti-total-price-table .bookacti-picked-group-of-events-list{margin-bottom:0}.bookacti-grand-total-price-container{font-size:1.25em;font-weight:700;padding-left:10px}.bookacti-form-field-name-submit{text-align:center}.bookacti-form-field-name-submit input{cursor:pointer}.bookacti-no-events{ font-style:italic;margin:auto;width:fit-content}.bookacti-booking-system,.bookacti-booking-system>div,.bookacti-notices{margin-bottom:20px}1 #bookacti-form-list-container .column-active{text-align:center;white-space:nowrap;width:40px}#bookacti-form-list-container .column-author,#bookacti-form-list-container .column-date,#bookacti-form-list-container .column-status{width:10%}#bookacti-form-list-container .column-shortcode input{background:none;border:none;box-shadow:none;font-size:12px;margin:0;padding:0}body.booking-activities_page_bookacti_forms label[for=bookacti_form_publish-hide]{display:none}#bookacti-form-editor-container{background:#f5f5f5;border:1px solid #e5e5e5;box-shadow:0 1px 1px rgba(0,0,0,.04);margin-top:20px}#bookacti-form-editor-header{background:#fff;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;padding:8px 12px}#bookacti-form-editor-title h2{display:inline-block;margin:0;padding:0;vertical-align:middle}#bookacti-form-editor-description{padding:1em}#bookacti-form-editor-description p{font-style:italic;margin:0;padding:0}.bookacti-wc-icon-not-supported{color:#cd5c5c;font-size:20px;font-style:normal;margin-right:13px;position:relative}.bookacti-wc-icon-not-supported:before{content:"\e03d";font-family:WooCommerce}.bookacti-wc-icon-not-supported:after{bottom:-4px;content:"\f158";font-family:dashicons;font-size:13px;position:absolute}#bookacti-form-editor{padding:1em}.bookacti-form-editor-field{background:#fff;border:1px solid #e5e5e5;box-sizing:border-box;margin-bottom:1em}.bookacti-form-editor-field-header{border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;transition:max-height .2s}.bookacti-form-editor-field-title{cursor:move;padding:1em 0 1em 1em;text-align:left;width:100%}.rtl .bookacti-form-editor-field-title{padding-left:0;padding-right:1em;text-align:right}.bookacti-form-editor-field-header h3{display:inline-block;margin:0;padding:0;vertical-align:middle}.bookacti-form-editor-field-actions{margin:1em;position:relative;white-space:nowrap}.bookacti-form-editor-field-body{padding:1em}.bookacti-form-editor-field-placeholder{border:1px dashed #b4b9be;display:block;margin:1em 0;min-height:47px;width:100%}#bookacti-form-editor-actions>*,.bookacti-form-editor-field-actions>*{color:#565d61;cursor:pointer;display:inline-block;vertical-align:middle}#bookacti-form-editor-actions svg,.bookacti-form-editor-field-actions svg{fill:currentColor}#bookacti-form-editor-actions>.button,.bookacti-form-editor-field-actions>.button{vertical-align:middle}#bookacti-form-editor-actions>.button-secondary,.bookacti-form-editor-field-actions>.button-secondary{color:#0071a1}.bookacti-display-help.bookacti-sos span.dashicons{display:block;padding-right:0}.bookacti-form-editor-field-header .bookacti-wc-icon-not-supported{display:inline-block;font-weight:400;margin-right:20px;vertical-align:middle}#bookacti-form-editor .bookacti-addon-promo{text-align:left}.bookacti-form-field-name-calendar .bookacti-edit-form-field:before{content:"\f111";font:400 20px dashicons;margin-right:4px;vertical-align:sub}#bookacti-form-editor-page-container #bookacti-form-shortcode{background:inherit;border:none;box-shadow:none;color:inherit;font-size:12px;margin:0;max-width:none;padding:4px 8px;width:100%}.bookacti-activities-actions-options-table,.bookacti-group-categories-actions-options-table{display:none;max-height:200px;overflow-y:auto}.bookacti-activities-actions-options-table h4,.bookacti-group-categories-actions-options-table h4{margin-bottom:.75em;text-decoration:underline}.bookacti-options-table{border-collapse:collapse}.bookacti-options-table th{text-align:left}.bookacti-options-table td,.bookacti-options-table th{padding:2px 5px}.bookacti-options-table .bookacti-column-activity,.bookacti-options-table .bookacti-column-group_category{max-width:130px;overflow:hidden;padding-right:20px;width:130px}#poststuff #bookacti_form_publish .inside{margin:0;padding:0}#bookacti-form-wc-integration-tuto img{max-width:720px;width:100%}#bookacti-form-author-container,.bookacti-form-field-container{margin-bottom:20px}.bookacti-form-field-label label{margin:0}.bookacti-form-field-content,.bookacti-form-field-label{display:inline-block;margin:0;vertical-align:middle}.bookacti-form-field-label{padding-right:10px;width:160px}.rtl .bookacti-form-field-label{padding-left:10px;padding-right:0}.bookacti-required-field-indicator:before{color:#cd5c5c;content:"*";font-size:small;margin:0 2px;vertical-align:top}.bookacti-form-field-name-calendar,.bookacti-form-field-name-calendar .bookacti-form-field-content{width:100%}.bookacti-form-field-login-field-container{display:block;margin-bottom:10px}.bookacti-form-field-login-field-container:last-child{margin-bottom:0}.bookacti-login-types-hidden{display:none}.bookacti-login-field-login-type{margin-bottom:10px}.bookacti-forgotten-password{font-size:.8em;font-style:italic}.forgotten-password-email{display:block;margin-top:10px}.bookacti-forgotten-password-email{min-height:30px;min-width:300px}.bookacti-login-field-submit-button{margin-top:20px}.bookacti-login-button{cursor:pointer}.bookacti-password-strength{display:inline-block}.bookacti-password-strength-meter{background-color:#eee;border:1px solid #ddd;box-sizing:border-box;color:#23282d;margin:-2px 5px 5px 1px;opacity:0;padding:3px 5px;text-align:center}.bookacti-password-strength-meter.short{background-color:#f1adad;border-color:#e35b5b;opacity:1}.bookacti-password-strength-meter.bad{background-color:#fbc5a9;border-color:#f78b53;opacity:1}.bookacti-password-strength-meter.good{background-color:#ffe399;border-color:#ffc733;opacity:1}.bookacti-password-strength-meter.strong{background-color:#c1e1b9;border-color:#83c373;opacity:1}.bookacti-password.short{border-color:#e35b5b}.bookacti-password.bad{border-color:#f78b53}.bookacti-password.good{border-color:#ffc733}.bookacti-password.strong{border-color:#83c373}.bookacti-register-fields{margin-top:10px}.bookacti-form-field-checkbox-input,.bookacti-form-field-checkbox-label{display:table-cell;vertical-align:top}.bookacti-form-field-checkbox-label{padding:0 10px}.bookacti-form-field-type-total_price label{font-weight:700}.bookacti-total-price-table{border-collapse:collapse}.bookacti-total-price-table td,.bookacti-total-price-table th{border:1px solid #ddd;padding:5px 10px;text-align:left;vertical-align:middle}.bookacti-total-price-table td+td,.bookacti-total-price-table th+th{text-align:right}.bookacti-total-price-table .bookacti-picked-group-of-events-list{margin-bottom:0}.bookacti-grand-total-price-container{font-size:1.25em;font-weight:700;padding-left:10px}.bookacti-form-field-name-submit{text-align:center}.bookacti-form-field-name-submit input{cursor:pointer}.bookacti-no-events{margin:auto;width:fit-content}.bookacti-no-events-row{align-items:center;background-color:rgba(0,0,0,.14);background-color:var(--fc-classic-muted);display:flex;flex-direction:column;justify-content:center}.bookacti-no-events-row .bookacti-no-events{padding-block:60px}.bookacti-booking-system,.bookacti-booking-system>div,.bookacti-notices{margin-bottom:20px} -
booking-activities/trunk/css/global.css
r3539441 r3730814 229 229 /** CALENDAR **/ 230 230 .bookacti-calendar { width: 100%; } 231 .bookacti-calendar table,232 .bookacti-calendar tr,233 .bookacti-calendar .fc-view.fc-timegrid th, .bookacti-calendar .fc-view.fc-daygrid th,234 .bookacti-calendar .fc-view.fc-timegrid td, .bookacti-calendar .fc-view.fc-daygrid td { margin: 0 !important; padding: 0 !important; overflow: visible !important; }235 231 .bookacti-calendar .fc-event-time, .bookacti-calendar .fc-timegrid-slot-label { text-transform: lowercase; } 236 232 237 233 .bookacti-calendar .bookacti-daygrid-week-empty:not(.bookacti-daygrid-week-month-start), 238 .bookacti-calendar .bookacti-daygrid-week-disabled { display: none ; }234 .bookacti-calendar .bookacti-daygrid-week-disabled { display: none !important; } 239 235 240 236 /* Header */ 241 237 .bookacti-picked-events-list-title { font-weight: bolder; } 242 .bookacti-calendar-narrow-width .fc-header-toolbar { flex-wrap: wrap; flex-direction: row; }243 .bookacti-calendar-narrow-width .fc-header-toolbar .fc-today-button { display: none; }244 .bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(2) { order: 1; flex: 0 1 100%; margin-bottom: 1.5em; text-align: center; }245 .bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(1) { order: 2; flex: 1 0 30%; text-align: left; }246 .bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(3) { order: 3; flex: 1 0 70%; text-align: right; }247 .rtl .bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(1) { text-align: right; }248 .rtl .bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(3) { text-align: left; }249 .bookacti-calendar-minimal-width .fc-header-toolbar { flex-wrap: wrap; flex-direction: column; }250 .bookacti-calendar-minimal-width .fc-header-toolbar > .fc-toolbar-chunk { text-align: center; margin-bottom: 1.5em; }251 .bookacti-calendar-minimal-width .fc-toolbar-chunk:nth-child(2) { order: 1; }252 .bookacti-calendar-minimal-width .fc-toolbar-chunk:nth-child(3) { order: 2; }253 .bookacti-calendar-minimal-width .fc-toolbar-chunk:nth-child(1) { order: 3; margin-bottom: 0; }254 238 255 239 /* Events */ 256 .bookacti-calendar .fc-event { overflow: hidden; } 240 .bookacti-fc-popover .fc-event, 241 .bookacti-calendar .fc-event { overflow: hidden; font-size: 13px; position: relative; } 242 .bookacti-fc-popover .fc-event:not(.bookacti-event-unavailable), 257 243 .bookacti-calendar .fc-event:not(.bookacti-event-unavailable) { cursor: pointer; } 244 .bookacti-fc-popover .fc-event .fc-event-main, 258 245 .bookacti-calendar .fc-event .fc-event-main { background: rgba( 255, 255, 255, 0.15 ); transition: background 0.2s; } 246 .bookacti-fc-popover .fc-event .fc-event-main, 247 .bookacti-calendar .fc-daygrid .fc-event .fc-event-main { flex-direction: column; align-items: start; padding: 0; padding-inline: 2px; } 248 .bookacti-fc-popover .fc-event-time, 259 249 .bookacti-calendar .fc-event-time, 260 .bookacti-calendar .fc-event-title-container { line-height: 1.3em; } 250 .bookacti-fc-popover .fc-event-title, 251 .bookacti-calendar .fc-event-title { line-height: 1.3em; } 252 .bookacti-fc-popover .bookacti-event-unavailable, 261 253 .bookacti-calendar .bookacti-event-unavailable { opacity: 0.5; } 262 .bookacti-calendar .fc-event.bookacti-picked-event { border-width: 2px; transition: border 0.2s; } 263 .bookacti-calendar .fc-event.bookacti-picked-event .fc-event-main { background: rgba( 255, 255, 255, 0.5 ); } 264 .bookacti-calendar .fc-timegrid-event.bookacti-event-hidden { display: none; } 265 .bookacti-calendar .fc-daygrid-event.bookacti-event-hidden { visibility: hidden; } 266 .bookacti-calendar .fc-daygrid-event .bookacti-availability-container { position: relative; width: fit-content; margin-left: auto; } 267 268 .bookacti-calendar .fc-view.fc-daygrid .fc-event .fc-event-title-container, 269 .bookacti-calendar .fc-view.fc-daygrid .fc-event .fc-event-title-container, 270 .bookacti-calendar .fc-popover .fc-event .fc-event-title, 271 .bookacti-calendar .fc-popover .fc-event .fc-event-title { display: block; } 272 .bookacti-calendar .fc-view.fc-daygrid .fc-daygrid-body tr, 273 .bookacti-calendar .fc-popover .fc-daygrid-body tr { background-color: transparent !important; } 274 275 .fc-popover .fc-widget-content { max-height: 300px; overflow-y: auto; } 254 .bookacti-fc-popover .fc-event.bookacti-event-hidden, 255 .bookacti-calendar .fc-event.bookacti-event-hidden { display: none !important; } 256 .bookacti-fc-popover .fc-event .bookacti-availability-container, 257 .bookacti-calendar .fc-daygrid .fc-event .bookacti-availability-container { position: relative; width: fit-content; margin-left: auto; right: -2px; } 258 .fc-event.bookacti-picked-event { border-width: 2px; transition: border 0.2s; } 259 .fc-event.bookacti-picked-event .fc-event-main { background: rgba( 255, 255, 255, 0.5 ); } 276 260 277 261 /* Tiny events */ 278 .bookacti-calendar .fc- view.fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places-unit-name,279 .bookacti-calendar .fc- view.fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places:not(.bookacti-not-bookable) .bookacti-available-places-avail-particle,262 .bookacti-calendar .fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places-unit-name, 263 .bookacti-calendar .fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places:not(.bookacti-not-bookable) .bookacti-available-places-avail-particle { display: none; } 280 264 281 265 /* Narrow events */ 282 .bookacti-calendar .fc- view.fc-timegrid .bookacti-narrow-event .bookacti-event-time-separator,283 .bookacti-calendar .fc- view.fc-timegrid .bookacti-narrow-event .bookacti-event-time-end,266 .bookacti-calendar .fc-timegrid .bookacti-narrow-event .bookacti-event-time-separator, 267 .bookacti-calendar .fc-timegrid .bookacti-narrow-event .bookacti-event-time-end, 284 268 .bookacti-calendar .bookacti-narrow-event .bookacti-available-places-unit-name, 285 269 .bookacti-calendar .bookacti-narrow-event .bookacti-available-places:not(.bookacti-not-bookable) .bookacti-available-places-avail-particle { display: none; } … … 306 290 .rtl .bookacti-available-places-unit-name.bookacti-has-unit-name, 307 291 .rtl .bookacti-available-places-avail-particle { margin-left: 0; margin-right: 2px; } 308 .rtl .bookacti-availability-container { right: auto; left: 0; }292 .rtl .bookacti-availability-container { right: auto; left: -2px; } 309 293 .rtl .bookacti-availability-container .bookacti-available-places { border-radius: 0 3px 0 0; } 310 294 -
booking-activities/trunk/css/global.min.css
r3539441 r3730814 1 1 .wp-admin .select2-container--default .bookacti-select2-selection .select2-selection__rendered 2 select.bookacti-select2-no-ajax,select.bookacti-select2-ajax{transition:none!important}.bookacti-user-selectbox{width:100%}.bookacti-select2-dropdown{z-index:3999999!important}.select2-container--default .bookacti-select2-selection{background-color:#fff;border:1px solid #949494;border-radius:2px;box-shadow:0 0 0 transparent;color:#1e1e1e}.bookacti-select2-selection.select2-selection--single{margin:0}.bookacti-select2-selection.select2-selection--multiple{height:66px;overflow-y:auto;resize:both}.bookacti-select2-selection.select2-selection--multiple li{line-height:1.4em;margin-bottom:0}.bookacti-select2-selection.select2-selection--multiple .select2-search,.bookacti-select2-selection.select2-selection--multiple .select2-search__field{max-width:none!important;min-height:0;width:100%!important}.bookacti-select2-selection .select2-selection__rendered{padding:0;position:relative}.bookacti-select2-selection.select2-selection--single,.bookacti-select2-selection.select2-selection--single .select2-selection__arrow,.bookacti-select2-selection.select2-selection--single .select2-selection__rendered{min-height:40px}.bookacti-select2-selection.select2-selection--single .select2-selection__rendered{padding:5px 24px 0 12px}.rtl .bookacti-select2-selection.select2-selection--single .select2-selection__rendered{padding:5px 12px 0 24px}.bookacti-select2-selection.select2-selection--multiple .select2-selection__clear{line-height:1em;margin:0!important;position:absolute;right:2px;top:0;z-index:15}.rtl .bookacti-select2-selection.select2-selection--multiple .select2-selection__clear{left:2px;right:auto}.bookacti-form-field-container .select2-container--default .select2-selection--single{border-radius:0}.bookacti-select2-dropdown .select2-results__option[aria-disabled=true]:not(.loading-results){display:none}select.select2-hidden-accessible[data-sortable="1"]+.select2-container .bookacti-select2-selection.select2-selection--multiple .select2-selection__choice{cursor:move}.bookacti-custom-radio-button-container{container-name:ba-login-type;container-type:inline-size}.bookacti-custom-radio-button input{display:none}.bookacti-custom-radio-button label{background:#f5f5f5;border:1px solid rgba(0,0,0,.1);border-radius:.25em;cursor:pointer;display:inline-block;padding:.8em 1em;transition:.3s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bookacti-custom-radio-button label:hover{background:#efefef;color:#101010}.bookacti-custom-radio-button input:checked+label{background:#52b7e9;color:#fff}.bookacti-custom-radio-button input:checked+label:hover{background:#1e8cbe}.bookacti-custom-radio-button:before{content:attr(data-separator);margin:0 10px}.bookacti-custom-radio-button:first-child,.bookacti-custom-radio-button:first-child:before,.bookacti-custom-radio-button[data-separator=""],.bookacti-custom-radio-button[data-separator=""]:before{content:none}.bookacti-custom-radio-button{display:inline-block;margin:10px 0}@container ba-login-type ( max-width: 782px ){.bookacti-custom-radio-button label{padding:.5em .75em}}@container ba-login-type ( max-width: 480px ){.bookacti-custom-radio-button-container{text-align:center}.bookacti-custom-radio-button:not(:first-child):not([data-separator=""]){display:block}.bookacti-custom-radio-button:not(:first-child):not([data-separator=""]):before{display:block;margin:0 0 10px}}.bookacti-tip-icon{margin:0;padding-left:5px}.rtl .bookacti-tip-icon{padding-right:5px}.bookacti-tip-icon:before{color:#565d61;content:"\0043";cursor:help;font-family:booking_activities_icons;font-size:14px;font-weight:400;vertical-align:middle}.bookacti-custom-scrollbar::-webkit-scrollbar,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar{cursor:default;height:4px;width:4px}.bookacti-custom-scrollbar::-webkit-scrollbar-track,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px}.bookacti-custom-scrollbar::-webkit-scrollbar-thumb,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar-thumb{background:#a5a5a5;border-radius:5px}.bookacti-custom-scrollbar::-webkit-scrollbar-thumb:hover,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar-thumb:hover{background:#418fb6}.bookacti-booking-system-container{width:100%}.bookacti-notices{display:none}.bookacti-notices>ul{background-color:hsla(0,0%,100%,.5);border-left:4px solid #1e90ff;border-radius:0 5px 5px 0;box-shadow:0 1px 1px 0 rgba(0,0,0,.1);margin:30px 0;padding:10px 30px}.bookacti-notices ul.bookacti-error-list{border-left-color:red}.bookacti-notices ul.bookacti-warning-list{border-left-color:#ffb900}.bookacti-notices ul.bookacti-success-list{border-left-color:green}.bookacti-picked-events-list,.bookacti-picked-events-list li:last-child{margin-bottom:0}.bookacti-booking-events-list.bookacti-custom-scrollbar,.bookacti-picked-events-list.bookacti-custom-scrollbar{max-height:200px;overflow:auto}.bookacti-picked-group-of-events-list{border-left:1px solid rgba(0,0,0,.2);list-style-type:none;margin:5px 2px 10px 1px;overflow:auto;padding-left:10px;white-space:nowrap}.rtl .bookacti-picked-group-of-events-list{border-left:none;border-right:1px solid rgba(0,0,0,.2);margin:5px 1px 10px 2px;padding-left:0;padding-right:10px}.bookacti-picked-group-of-events-list li:last-child{margin-bottom:0}.bookacti-unpick-event-icon:before{color:#a00;content:"\0044";cursor:pointer;font-family:booking_activities_icons;padding-left:5px;vertical-align:bottom}.bookacti-group-of-events-list{border-left:1px solid rgba(0,0,0,.2);display:none;font-size:small;list-style-type:none;margin:5px 2px 10px 25px;max-height:200px;overflow:auto;padding-left:10px;white-space:nowrap}.rtl .bookacti-group-of-events-list{border-left:none;border-right:1px solid rgba(0,0,0,.2);margin:5px 25px 10px 2px;padding-left:0;padding-right:10px}.bookacti-groups-of-events-list>div{margin-top:15px}.bookacti-group-of-events-option label{display:inline;margin:0;padding-left:10px}.rtl .bookacti-group-of-events-option label{padding-left:0;padding-right:10px}.bookacti-group-of-events-option input{display:inline-block;margin:0}.bookacti-group-of-events-option input[name=group_of_events][disabled]+label{opacity:.5}.bookacti-group-of-events-list .bookacti-booking-event-duration{font-size:smaller;font-style:italic}.bookacti-group-of-events-list .bookacti-booking-event-title{font-weight:600}.bookacti-group-availability-container{display:inline-block;vertical-align:middle}.bookacti-group-availability-container .bookacti-available-places{background-color:#000;border-radius:3px;color:#fff;font-size:.85em;line-height:1.2em;margin-left:10px;padding:4px 6px}.rtl .bookacti-group-availability-container .bookacti-available-places{margin-left:0;margin-right:10px}.bookacti-dialog .bookacti-tabs.ui-widget.ui-widget-content,.bookacti-dialog .ui-dialog-buttonpane .ui-dialog-buttonset,.bookacti-dialog .ui-dialog-buttonpane.ui-widget-content,.bookacti-dialog .ui-widget-header{border:none}.bookacti-dialog .ui-tabs .ui-tabs-nav,.bookacti-dialog .ui-widget-header{border-bottom:1px solid #a5a5a5}@media screen and (max-width:540px){.bookacti-dialog.ui-dialog.ui-widget{max-width:460px}}@media screen and (max-width:460px){.bookacti-dialog.ui-dialog.ui-widget{max-width:400px}.bookacti-dialog.ui-dialog .ui-dialog-content.ui-widget-content{padding:.5em}.bookacti-dialog.ui-dialog .ui-dialog-titlebar.ui-widget-header{padding:.4em}.bookacti-dialog.ui-dialog .ui-dialog-titlebar .ui-dialog-title{white-space:normal}.bookacti-group-of-events-list{margin:5px 0 10px 5px}}@media screen and (max-width:400px){.bookacti-dialog.ui-dialog.ui-widget{max-width:360px}}@media screen and (max-width:320px){.bookacti-dialog.ui-dialog.ui-widget{max-width:320px}}.bookacti-input-warning{border-color:#d80!important}.bookacti-input-error{border-color:red!important}.bookacti-form-error{color:red;font-style:italic}.bookacti-form-warning{color:orange;font-style:italic}.bookacti-backend-dialog{display:none}.bookacti-backend-dialog fieldset{border-top:1px solid #bbb;margin-bottom:10px;padding:10px}.bookacti-backend-dialog fieldset legend{font-weight:600;margin:auto}fieldset.bookacti-fieldset-no-css{border:none;border-top:1px solid #bbb;padding:0}.bookacti-tags-fieldset code{line-height:1.8em}.bookacti-backend-dialog .bookacti-field-container{position:relative}.bookacti-backend-dialog .bookacti-field-container,.bookacti-backend-dialog form fieldset>div,.bookacti-backend-dialog form>div,.bookacti-backend-dialog>div,.bookacti-tabs .bookacti-tab-content>div{margin-bottom:10px}.bookacti-backend-dialog .bookacti-field-container:last-child,.bookacti-backend-dialog form fieldset>div:last-child,.bookacti-backend-dialog form>div:last-child,.bookacti-backend-dialog>div:last-child,.bookacti-tabs .bookacti-tab-content>div:last-child{margin-bottom:0}.bookacti-backend-dialog input:not([type=submit]):not([type=checkbox]):not([type=file]):not([type=radio]):not([type=button]):not([type=number]):not([type=color]):not(.button),.bookacti-backend-dialog select{max-width:150px;width:150px}.bookacti-backend-dialog .bookacti-fullwidth-label+input:not([type=submit]):not([type=checkbox]):not([type=file]):not([type=radio]):not([type=button]):not([type=number]):not([type=color]):not(.button),.bookacti-backend-dialog .bookacti-fullwidth-label+input[type=hidden]+select,.bookacti-backend-dialog .bookacti-fullwidth-label+input[type=hidden]+select+.select2-container,.bookacti-backend-dialog .bookacti-fullwidth-label+select,.bookacti-backend-dialog .bookacti-fullwidth-label+select+.select2-container{display:block;max-width:none!important;width:100%!important}.bookacti-backend-dialog select+.select2-container,.bookacti-backend-dialog select[multiple]{max-width:none}.bookacti-backend-dialog textarea{height:50px;text-align:left;width:100%}.bookacti-backend-dialog input[type=number]:not(.bookacti-duration-field){max-width:80px;width:80px}.bookacti-backend-dialog .bookacti-multiple-select-container{margin-left:5px}.bookacti-backend-dialog .bookacti-multiple-select-container label{color:#565d61;display:inline-block;vertical-align:middle}.bookacti-hidden-field{display:none}.bookacti-show-hide-advanced-options{color:#0073aa;cursor:pointer;margin:auto;text-align:center}.bookacti-show-hide-advanced-options:hover{color:#00a0d2;text-decoration:none}.bookacti-show-hide-advanced-options:after{font-family:dashicons}.bookacti-show-hide-advanced-options.bookacti-show-advanced-options:after{content:"\f140"}.bookacti-show-hide-advanced-options.bookacti-hide-advanced-options:after{content:"\f142"}fieldset legend .bookacti-show-hide-advanced-options{color:#0073aa;cursor:pointer;font-weight:400;margin:0 5px 0 10px}.bookacti-lang-switcher{margin-bottom:10px}.bookacti-backend-dialog .bookacti_export_url{display:table;width:100%}.bookacti-backend-dialog .bookacti_export_url_field{display:table-cell;width:100%}.bookacti-backend-dialog .bookacti_export_button{display:table-cell;padding-left:10px;vertical-align:middle}.bookacti-backend-dialog #bookacti-login-form-shortcode,.bookacti-backend-dialog .bookacti_export_url_field input{max-width:none!important;padding:5px 10px;width:100%!important}.bookacti-backend-dialog div>label:not(.bookacti-onoffswitch-label):not(.bookacti-refund-option-label):not(.bookacti-fullwidth-label):not(.bookacti-duration-field-label){display:inline-block;font-weight:700;width:150px}.bookacti-backend-dialog div>label.bookacti-fullwidth-label{cursor:auto;display:block;font-weight:700;width:100%}.bookacti-backend-dialog div>input:not([type=hidden])+label:not(.bookacti-onoffswitch-label):not(.bookacti-refund-option-label):not(.bookacti-duration-field-label){display:inline;font-weight:400;width:auto}.bookacti-dialog~.ui-widget-overlay{background:#aaa;height:100%;left:0;opacity:.4;position:fixed;top:0;width:100%;z-index:1}.bookacti-dialog .ui-dialog-buttonpane{padding:.3em 1em .5em!important}.bookacti-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:none!important;text-align:right}.bookacti-dialog .ui-button.bookacti-dialog-left-button,.bookacti-dialog .ui-widget-content .ui-button.bookacti-dialog-left-button,.bookacti-dialog .ui-widget-header .ui-button.bookacti-dialog-left-button{float:left}.bookacti-dialog .ui-button.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-content .ui-button.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-header .ui-button.bookacti-dialog-delete-button{background:#fcf1f1;border:1px solid #a00;color:#a00}.bookacti-dialog .ui-state-hover.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-content .ui-state-hover.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-header .ui-state-hover.bookacti-dialog-delete-button{background:#fcf1f1;border:1px solid #dc3232;color:#dc3232}.bookacti-dialog .ui-state-focus.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-content .ui-state-focus.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-header .ui-state-focus.bookacti-dialog-delete-button{border-color:#dc3232;box-shadow:0 0 0 1px #dc3232;color:#dc3232;outline:2px solid transparent;outline-offset:0}.bookacti-calendar{width:100%}.bookacti-calendar .fc- view.fc-daygrid td,.bookacti-calendar .fc-view.fc-daygrid th,.bookacti-calendar .fc-view.fc-timegrid td,.bookacti-calendar .fc-view.fc-timegrid th,.bookacti-calendar table,.bookacti-calendar tr{margin:0!important;overflow:visible!important;padding:0!important}.bookacti-calendar .fc-event-time,.bookacti-calendar .fc-timegrid-slot-label{text-transform:lowercase}.bookacti-calendar .bookacti-daygrid-week-disabled,.bookacti-calendar .bookacti-daygrid-week-empty:not(.bookacti-daygrid-week-month-start){display:none}.bookacti-picked-events-list-title{font-weight:bolder}.bookacti-calendar-narrow-width .fc-header-toolbar{flex-direction:row;flex-wrap:wrap}.bookacti-calendar-narrow-width .fc-header-toolbar .fc-today-button{display:none}.bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(2){flex:0 1 100%;margin-bottom:1.5em;order:1;text-align:center}.bookacti-calendar-narrow-width .fc-toolbar-chunk:first-child{flex:1 0 30%;order:2;text-align:left}.bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(3){flex:1 0 70%;order:3;text-align:right}.rtl .bookacti-calendar-narrow-width .fc-toolbar-chunk:first-child{text-align:right}.rtl .bookacti-calendar-narrow-width .fc-toolbar-chunk:nth-child(3){text-align:left}.bookacti-calendar-minimal-width .fc-header-toolbar{flex-direction:column;flex-wrap:wrap}.bookacti-calendar-minimal-width .fc-header-toolbar>.fc-toolbar-chunk{margin-bottom:1.5em;text-align:center}.bookacti-calendar-minimal-width .fc-toolbar-chunk:nth-child(2){order:1}.bookacti-calendar-minimal-width .fc-toolbar-chunk:nth-child(3){order:2}.bookacti-calendar-minimal-width .fc-toolbar-chunk:first-child{margin-bottom:0;order:3}.bookacti-calendar .fc-event{overflow:hidden}.bookacti-calendar .fc-event:not(.bookacti-event-unavailable){cursor:pointer}.bookacti-calendar .fc-event .fc-event-main{background:hsla(0,0%,100%,.15);transition:background .2s}.bookacti-calendar .fc-event-time,.bookacti-calendar .fc-event-title-container{line-height:1.3em}.bookacti-calendar .bookacti-event-unavailable{opacity:.5}.bookacti-calendar .fc-event.bookacti-picked-event{border-width:2px;transition:border .2s}.bookacti-calendar .fc-event.bookacti-picked-event .fc-event-main{background:hsla(0,0%,100%,.5)}.bookacti-calendar .fc-timegrid-event.bookacti-event-hidden{display:none}.bookacti-calendar .fc-daygrid-event.bookacti-event-hidden{visibility:hidden}.bookacti-calendar .fc-daygrid-event .bookacti-availability-container{margin-left:auto;position:relative;width:fit-content}.bookacti-calendar .fc-popover .fc-event .fc-event-title,.bookacti-calendar .fc-view.fc-daygrid .fc-event .fc-event-title-container{display:block}.bookacti-calendar .fc-popover .fc-daygrid-body tr,.bookacti-calendar .fc-view.fc-daygrid .fc-daygrid-body tr{background-color:transparent!important}.fc-popover .fc-widget-content{max-height:300px;overflow-y:auto}.bookacti-calendar .bookacti-narrow-event .bookacti-available-places-unit-name,.bookacti-calendar .bookacti-narrow-event .bookacti-available-places:not(.bookacti-not-bookable) .bookacti-available-places-avail-particle,.bookacti-calendar .fc-view.fc-timegrid .bookacti-narrow-event .bookacti-event-time-end,.bookacti-calendar .fc-view.fc-timegrid .bookacti-narrow-event .bookacti-event-time-separator,.bookacti-calendar .fc-view.fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places-unit-name,.bookacti-calendar .fc-view.fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places:not(.bookacti-not-bookable) .bookacti-available-places-avail-particle{display:none}.bookacti-availability-container{bottom:0;display:block;overflow:hidden;position:absolute;right:0;white-space:nowrap;z-index:5}.bookacti-availability-container .bookacti-available-places{background-color:#000;border-radius:3px 0 0 0;color:#fff;font-size:.85em;height:100%;line-height:1.2em;padding:2px 3px;text-align:right}.bookacti-availability-container .bookacti-bookings{padding:1px 0 1px 1px}.bookacti-availability-container .bookacti-total-availability{padding:1px 1px 1px 0}.bookacti-active-bookings-number,.bookacti-available-places-number{font-size:larger;font-weight:700}.bookacti-availability-container.bookacti-hide-availability{display:none}.bookacti-available-places.bookacti-booked,.bookacti-available-places.bookacti-not-booked{background-color:rgba(0,0,0,.4)}.bookacti-available-places.bookacti-full,.bookacti-available-places.bookacti-no-availability,.bookacti-available-places.bookacti-not-bookable{background-color:rgba(255,0,0,.4)}.bookacti-available-places>span{display:inline-block}.bookacti-available-places-avail-particle,.bookacti-available-places-unit-name.bookacti-has-unit-name{margin-left:2px}.rtl .bookacti-available-places-avail-particle,.rtl .bookacti-available-places-unit-name.bookacti-has-unit-name{margin-left:0;margin-right:2px}.rtl .bookacti-availability-container{left:0;right:auto}.rtl .bookacti-availability-container .bookacti-available-places{border-radius:0 3px 0 0}.bookacti-loading-container{box-sizing:border-box;display:inline-block;padding:10px 20px;text-align:center;white-space:nowrap;width:100%}.bookacti-loading-image,.bookacti-loading-text{display:inline-block;vertical-align:middle}.bookacti-loading-text{margin-left:1em;text-transform:uppercase}.rtl .bookacti-loading-text{margin-left:0;margin-right:1em}.bookacti-loading-text:after{content:"\2026"}.bookacti-spinner{animation:bookacti-spinner-rotate 1.5s ease-in-out infinite;box-sizing:border-box;display:block;height:30px;position:relative;width:20px}.bookacti-spinner:after,.bookacti-spinner:before{animation:bookacti-spinner-pulse 1.5s ease-in-out infinite;background-color:rgba(82,183,233,.85);border-radius:10%;box-sizing:border-box;content:"";height:16px;left:0;position:absolute;top:0;transform:translateY(14px);width:16px;z-index:20}.bookacti-spinner:after{background-color:#565d61;transform:translate(4px);z-index:18}@keyframes bookacti-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes bookacti-spinner-pulse{50%{transform:scale(.75) translate(2px,50%)}}.bookacti-loading-overlay{background:rgba(0,0,0,.6);height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:10}.bookacti-loading-overlay-content{position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:100%;z-index:10}.bookacti-loading-overlay .bookacti-loading-container{background:rgba(0,0,0,.6);border-radius:3px}.bookacti-loading-overlay .bookacti-loading-text{color:#f5f5f5}.bookacti-loading-overlay .bookacti-spinner:after{background-color:#f5f5f5}.bookacti-form-field-name-submit .bookacti-loading-container{margin-bottom:0}@media screen and (max-width:480px){.bookacti-loading-container{white-space:normal}.bookacti-loading-image,.bookacti-loading-text{display:block;margin:auto}.bookacti-spinner{display:inline-block}}.bookacti-price-container{background-color:rgba(0,0,0,.3);border-radius:3px;box-sizing:border-box;color:#fff;display:block;font-size:1.2em;font-weight:bolder;line-height:1.2em;padding:5px;width:fit-content}.bookacti-price-container:not(.bookacti-has-price) .bookacti-price:not(.bookacti-promo){display:none!important}#bookacti-booking-list .bookacti-price-container,.bookacti-form-field-container:not(.bookacti-form-field-type-calendar) .bookacti-price-container{display:inline-block;margin:0 0 0 10px;vertical-align:middle}.rtl .bookacti-form-field-container:not(.bookacti-form-field-type-calendar) .bookacti-price-container{margin:0 10px 0 0}.bookacti-form-field-container .bookacti-form-field-checkbox-field-container .bookacti-price-container{display:table-cell}.bookacti-form-field-container:not(.bookacti-form-field-type-calendar) .bookacti-price-container:not(.bookacti-has-price){display:none}2 select.bookacti-select2-no-ajax,select.bookacti-select2-ajax{transition:none!important}.bookacti-user-selectbox{width:100%}.bookacti-select2-dropdown{z-index:3999999!important}.select2-container--default .bookacti-select2-selection{background-color:#fff;border:1px solid #949494;border-radius:2px;box-shadow:0 0 0 transparent;color:#1e1e1e}.bookacti-select2-selection.select2-selection--single{margin:0}.bookacti-select2-selection.select2-selection--multiple{height:66px;overflow-y:auto;resize:both}.bookacti-select2-selection.select2-selection--multiple li{line-height:1.4em;margin-bottom:0}.bookacti-select2-selection.select2-selection--multiple .select2-search,.bookacti-select2-selection.select2-selection--multiple .select2-search__field{max-width:none!important;min-height:0;width:100%!important}.bookacti-select2-selection .select2-selection__rendered{padding:0;position:relative}.bookacti-select2-selection.select2-selection--single,.bookacti-select2-selection.select2-selection--single .select2-selection__arrow,.bookacti-select2-selection.select2-selection--single .select2-selection__rendered{min-height:40px}.bookacti-select2-selection.select2-selection--single .select2-selection__rendered{padding:5px 24px 0 12px}.rtl .bookacti-select2-selection.select2-selection--single .select2-selection__rendered{padding:5px 12px 0 24px}.bookacti-select2-selection.select2-selection--multiple .select2-selection__clear{line-height:1em;margin:0!important;position:absolute;right:2px;top:0;z-index:15}.rtl .bookacti-select2-selection.select2-selection--multiple .select2-selection__clear{left:2px;right:auto}.bookacti-form-field-container .select2-container--default .select2-selection--single{border-radius:0}.bookacti-select2-dropdown .select2-results__option[aria-disabled=true]:not(.loading-results){display:none}select.select2-hidden-accessible[data-sortable="1"]+.select2-container .bookacti-select2-selection.select2-selection--multiple .select2-selection__choice{cursor:move}.bookacti-custom-radio-button-container{container-name:ba-login-type;container-type:inline-size}.bookacti-custom-radio-button input{display:none}.bookacti-custom-radio-button label{background:#f5f5f5;border:1px solid rgba(0,0,0,.1);border-radius:.25em;cursor:pointer;display:inline-block;padding:.8em 1em;transition:.3s;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bookacti-custom-radio-button label:hover{background:#efefef;color:#101010}.bookacti-custom-radio-button input:checked+label{background:#52b7e9;color:#fff}.bookacti-custom-radio-button input:checked+label:hover{background:#1e8cbe}.bookacti-custom-radio-button:before{content:attr(data-separator);margin:0 10px}.bookacti-custom-radio-button:first-child,.bookacti-custom-radio-button:first-child:before,.bookacti-custom-radio-button[data-separator=""],.bookacti-custom-radio-button[data-separator=""]:before{content:none}.bookacti-custom-radio-button{display:inline-block;margin:10px 0}@container ba-login-type ( max-width: 782px ){.bookacti-custom-radio-button label{padding:.5em .75em}}@container ba-login-type ( max-width: 480px ){.bookacti-custom-radio-button-container{text-align:center}.bookacti-custom-radio-button:not(:first-child):not([data-separator=""]){display:block}.bookacti-custom-radio-button:not(:first-child):not([data-separator=""]):before{display:block;margin:0 0 10px}}.bookacti-tip-icon{margin:0;padding-left:5px}.rtl .bookacti-tip-icon{padding-right:5px}.bookacti-tip-icon:before{color:#565d61;content:"\0043";cursor:help;font-family:booking_activities_icons;font-size:14px;font-weight:400;vertical-align:middle}.bookacti-custom-scrollbar::-webkit-scrollbar,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar{cursor:default;height:4px;width:4px}.bookacti-custom-scrollbar::-webkit-scrollbar-track,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar-track{background:#f1f1f1;border-radius:5px}.bookacti-custom-scrollbar::-webkit-scrollbar-thumb,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar-thumb{background:#a5a5a5;border-radius:5px}.bookacti-custom-scrollbar::-webkit-scrollbar-thumb:hover,.bookacti-select2-selection.select2-selection--multiple::-webkit-scrollbar-thumb:hover{background:#418fb6}.bookacti-booking-system-container{width:100%}.bookacti-notices{display:none}.bookacti-notices>ul{background-color:hsla(0,0%,100%,.5);border-left:4px solid #1e90ff;border-radius:0 5px 5px 0;box-shadow:0 1px 1px 0 rgba(0,0,0,.1);margin:30px 0;padding:10px 30px}.bookacti-notices ul.bookacti-error-list{border-left-color:red}.bookacti-notices ul.bookacti-warning-list{border-left-color:#ffb900}.bookacti-notices ul.bookacti-success-list{border-left-color:green}.bookacti-picked-events-list,.bookacti-picked-events-list li:last-child{margin-bottom:0}.bookacti-booking-events-list.bookacti-custom-scrollbar,.bookacti-picked-events-list.bookacti-custom-scrollbar{max-height:200px;overflow:auto}.bookacti-picked-group-of-events-list{border-left:1px solid rgba(0,0,0,.2);list-style-type:none;margin:5px 2px 10px 1px;overflow:auto;padding-left:10px;white-space:nowrap}.rtl .bookacti-picked-group-of-events-list{border-left:none;border-right:1px solid rgba(0,0,0,.2);margin:5px 1px 10px 2px;padding-left:0;padding-right:10px}.bookacti-picked-group-of-events-list li:last-child{margin-bottom:0}.bookacti-unpick-event-icon:before{color:#a00;content:"\0044";cursor:pointer;font-family:booking_activities_icons;padding-left:5px;vertical-align:bottom}.bookacti-group-of-events-list{border-left:1px solid rgba(0,0,0,.2);display:none;font-size:small;list-style-type:none;margin:5px 2px 10px 25px;max-height:200px;overflow:auto;padding-left:10px;white-space:nowrap}.rtl .bookacti-group-of-events-list{border-left:none;border-right:1px solid rgba(0,0,0,.2);margin:5px 25px 10px 2px;padding-left:0;padding-right:10px}.bookacti-groups-of-events-list>div{margin-top:15px}.bookacti-group-of-events-option label{display:inline;margin:0;padding-left:10px}.rtl .bookacti-group-of-events-option label{padding-left:0;padding-right:10px}.bookacti-group-of-events-option input{display:inline-block;margin:0}.bookacti-group-of-events-option input[name=group_of_events][disabled]+label{opacity:.5}.bookacti-group-of-events-list .bookacti-booking-event-duration{font-size:smaller;font-style:italic}.bookacti-group-of-events-list .bookacti-booking-event-title{font-weight:600}.bookacti-group-availability-container{display:inline-block;vertical-align:middle}.bookacti-group-availability-container .bookacti-available-places{background-color:#000;border-radius:3px;color:#fff;font-size:.85em;line-height:1.2em;margin-left:10px;padding:4px 6px}.rtl .bookacti-group-availability-container .bookacti-available-places{margin-left:0;margin-right:10px}.bookacti-dialog .bookacti-tabs.ui-widget.ui-widget-content,.bookacti-dialog .ui-dialog-buttonpane .ui-dialog-buttonset,.bookacti-dialog .ui-dialog-buttonpane.ui-widget-content,.bookacti-dialog .ui-widget-header{border:none}.bookacti-dialog .ui-tabs .ui-tabs-nav,.bookacti-dialog .ui-widget-header{border-bottom:1px solid #a5a5a5}@media screen and (max-width:540px){.bookacti-dialog.ui-dialog.ui-widget{max-width:460px}}@media screen and (max-width:460px){.bookacti-dialog.ui-dialog.ui-widget{max-width:400px}.bookacti-dialog.ui-dialog .ui-dialog-content.ui-widget-content{padding:.5em}.bookacti-dialog.ui-dialog .ui-dialog-titlebar.ui-widget-header{padding:.4em}.bookacti-dialog.ui-dialog .ui-dialog-titlebar .ui-dialog-title{white-space:normal}.bookacti-group-of-events-list{margin:5px 0 10px 5px}}@media screen and (max-width:400px){.bookacti-dialog.ui-dialog.ui-widget{max-width:360px}}@media screen and (max-width:320px){.bookacti-dialog.ui-dialog.ui-widget{max-width:320px}}.bookacti-input-warning{border-color:#d80!important}.bookacti-input-error{border-color:red!important}.bookacti-form-error{color:red;font-style:italic}.bookacti-form-warning{color:orange;font-style:italic}.bookacti-backend-dialog{display:none}.bookacti-backend-dialog fieldset{border-top:1px solid #bbb;margin-bottom:10px;padding:10px}.bookacti-backend-dialog fieldset legend{font-weight:600;margin:auto}fieldset.bookacti-fieldset-no-css{border:none;border-top:1px solid #bbb;padding:0}.bookacti-tags-fieldset code{line-height:1.8em}.bookacti-backend-dialog .bookacti-field-container{position:relative}.bookacti-backend-dialog .bookacti-field-container,.bookacti-backend-dialog form fieldset>div,.bookacti-backend-dialog form>div,.bookacti-backend-dialog>div,.bookacti-tabs .bookacti-tab-content>div{margin-bottom:10px}.bookacti-backend-dialog .bookacti-field-container:last-child,.bookacti-backend-dialog form fieldset>div:last-child,.bookacti-backend-dialog form>div:last-child,.bookacti-backend-dialog>div:last-child,.bookacti-tabs .bookacti-tab-content>div:last-child{margin-bottom:0}.bookacti-backend-dialog input:not([type=submit]):not([type=checkbox]):not([type=file]):not([type=radio]):not([type=button]):not([type=number]):not([type=color]):not(.button),.bookacti-backend-dialog select{max-width:150px;width:150px}.bookacti-backend-dialog .bookacti-fullwidth-label+input:not([type=submit]):not([type=checkbox]):not([type=file]):not([type=radio]):not([type=button]):not([type=number]):not([type=color]):not(.button),.bookacti-backend-dialog .bookacti-fullwidth-label+input[type=hidden]+select,.bookacti-backend-dialog .bookacti-fullwidth-label+input[type=hidden]+select+.select2-container,.bookacti-backend-dialog .bookacti-fullwidth-label+select,.bookacti-backend-dialog .bookacti-fullwidth-label+select+.select2-container{display:block;max-width:none!important;width:100%!important}.bookacti-backend-dialog select+.select2-container,.bookacti-backend-dialog select[multiple]{max-width:none}.bookacti-backend-dialog textarea{height:50px;text-align:left;width:100%}.bookacti-backend-dialog input[type=number]:not(.bookacti-duration-field){max-width:80px;width:80px}.bookacti-backend-dialog .bookacti-multiple-select-container{margin-left:5px}.bookacti-backend-dialog .bookacti-multiple-select-container label{color:#565d61;display:inline-block;vertical-align:middle}.bookacti-hidden-field{display:none}.bookacti-show-hide-advanced-options{color:#0073aa;cursor:pointer;margin:auto;text-align:center}.bookacti-show-hide-advanced-options:hover{color:#00a0d2;text-decoration:none}.bookacti-show-hide-advanced-options:after{font-family:dashicons}.bookacti-show-hide-advanced-options.bookacti-show-advanced-options:after{content:"\f140"}.bookacti-show-hide-advanced-options.bookacti-hide-advanced-options:after{content:"\f142"}fieldset legend .bookacti-show-hide-advanced-options{color:#0073aa;cursor:pointer;font-weight:400;margin:0 5px 0 10px}.bookacti-lang-switcher{margin-bottom:10px}.bookacti-backend-dialog .bookacti_export_url{display:table;width:100%}.bookacti-backend-dialog .bookacti_export_url_field{display:table-cell;width:100%}.bookacti-backend-dialog .bookacti_export_button{display:table-cell;padding-left:10px;vertical-align:middle}.bookacti-backend-dialog #bookacti-login-form-shortcode,.bookacti-backend-dialog .bookacti_export_url_field input{max-width:none!important;padding:5px 10px;width:100%!important}.bookacti-backend-dialog div>label:not(.bookacti-onoffswitch-label):not(.bookacti-refund-option-label):not(.bookacti-fullwidth-label):not(.bookacti-duration-field-label){display:inline-block;font-weight:700;width:150px}.bookacti-backend-dialog div>label.bookacti-fullwidth-label{cursor:auto;display:block;font-weight:700;width:100%}.bookacti-backend-dialog div>input:not([type=hidden])+label:not(.bookacti-onoffswitch-label):not(.bookacti-refund-option-label):not(.bookacti-duration-field-label){display:inline;font-weight:400;width:auto}.bookacti-dialog~.ui-widget-overlay{background:#aaa;height:100%;left:0;opacity:.4;position:fixed;top:0;width:100%;z-index:1}.bookacti-dialog .ui-dialog-buttonpane{padding:.3em 1em .5em!important}.bookacti-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:none!important;text-align:right}.bookacti-dialog .ui-button.bookacti-dialog-left-button,.bookacti-dialog .ui-widget-content .ui-button.bookacti-dialog-left-button,.bookacti-dialog .ui-widget-header .ui-button.bookacti-dialog-left-button{float:left}.bookacti-dialog .ui-button.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-content .ui-button.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-header .ui-button.bookacti-dialog-delete-button{background:#fcf1f1;border:1px solid #a00;color:#a00}.bookacti-dialog .ui-state-hover.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-content .ui-state-hover.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-header .ui-state-hover.bookacti-dialog-delete-button{background:#fcf1f1;border:1px solid #dc3232;color:#dc3232}.bookacti-dialog .ui-state-focus.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-content .ui-state-focus.bookacti-dialog-delete-button,.bookacti-dialog .ui-widget-header .ui-state-focus.bookacti-dialog-delete-button{border-color:#dc3232;box-shadow:0 0 0 1px #dc3232;color:#dc3232;outline:2px solid transparent;outline-offset:0}.bookacti-calendar{width:100%}.bookacti-calendar .fc-event-time,.bookacti-calendar .fc-timegrid-slot-label{text-transform:lowercase}.bookacti-calendar .bookacti-daygrid-week-disabled,.bookacti-calendar .bookacti-daygrid-week-empty:not(.bookacti-daygrid-week-month-start){display:none!important}.bookacti-picked-events-list-title{font-weight:bolder}.bookacti-calendar .fc-event,.bookacti-fc-popover .fc-event{font-size:13px;overflow:hidden;position:relative}.bookacti-calendar .fc-event:not(.bookacti-event-unavailable),.bookacti-fc-popover .fc-event:not(.bookacti-event-unavailable){cursor:pointer}.bookacti-calendar .fc-event .fc-event-main,.bookacti-fc-popover .fc-event .fc-event-main{background:hsla(0,0%,100%,.15);transition:background .2s}.bookacti-calendar .fc-daygrid .fc-event .fc-event-main,.bookacti-fc-popover .fc-event .fc-event-main{align-items:start;flex-direction:column;padding:0;padding-inline:2px}.bookacti-calendar .fc-event-time,.bookacti-calendar .fc-event-title,.bookacti-fc-popover .fc-event-time,.bookacti-fc-popover .fc-event-title{line-height:1.3em}.bookacti-calendar .bookacti-event-unavailable,.bookacti-fc-popover .bookacti-event-unavailable{opacity:.5}.bookacti-calendar .fc-event.bookacti-event-hidden,.bookacti-fc-popover .fc-event.bookacti-event-hidden{display:none!important}.bookacti-calendar .fc-daygrid .fc-event .bookacti-availability-container,.bookacti-fc-popover .fc-event .bookacti-availability-container{margin-left:auto;position:relative;right:-2px;width:fit-content}.fc-event.bookacti-picked-event{border-width:2px;transition:border .2s}.fc-event.bookacti-picked-event .fc-event-main{background:hsla(0,0%,100%,.5)}.bookacti-calendar .bookacti-narrow-event .bookacti-available-places-unit-name,.bookacti-calendar .bookacti-narrow-event .bookacti-available-places:not(.bookacti-not-bookable) .bookacti-available-places-avail-particle,.bookacti-calendar .fc-timegrid .bookacti-narrow-event .bookacti-event-time-end,.bookacti-calendar .fc-timegrid .bookacti-narrow-event .bookacti-event-time-separator,.bookacti-calendar .fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places-unit-name,.bookacti-calendar .fc-timegrid .bookacti-tiny-event:not(.bookacti-wide-event) .bookacti-available-places:not(.bookacti-not-bookable) .bookacti-available-places-avail-particle{display:none}.bookacti-availability-container{bottom:0;display:block;overflow:hidden;position:absolute;right:0;white-space:nowrap;z-index:5}.bookacti-availability-container .bookacti-available-places{background-color:#000;border-radius:3px 0 0 0;color:#fff;font-size:.85em;height:100%;line-height:1.2em;padding:2px 3px;text-align:right}.bookacti-availability-container .bookacti-bookings{padding:1px 0 1px 1px}.bookacti-availability-container .bookacti-total-availability{padding:1px 1px 1px 0}.bookacti-active-bookings-number,.bookacti-available-places-number{font-size:larger;font-weight:700}.bookacti-availability-container.bookacti-hide-availability{display:none}.bookacti-available-places.bookacti-booked,.bookacti-available-places.bookacti-not-booked{background-color:rgba(0,0,0,.4)}.bookacti-available-places.bookacti-full,.bookacti-available-places.bookacti-no-availability,.bookacti-available-places.bookacti-not-bookable{background-color:rgba(255,0,0,.4)}.bookacti-available-places>span{display:inline-block}.bookacti-available-places-avail-particle,.bookacti-available-places-unit-name.bookacti-has-unit-name{margin-left:2px}.rtl .bookacti-available-places-avail-particle,.rtl .bookacti-available-places-unit-name.bookacti-has-unit-name{margin-left:0;margin-right:2px}.rtl .bookacti-availability-container{left:-2px;right:auto}.rtl .bookacti-availability-container .bookacti-available-places{border-radius:0 3px 0 0}.bookacti-loading-container{box-sizing:border-box;display:inline-block;padding:10px 20px;text-align:center;white-space:nowrap;width:100%}.bookacti-loading-image,.bookacti-loading-text{display:inline-block;vertical-align:middle}.bookacti-loading-text{margin-left:1em;text-transform:uppercase}.rtl .bookacti-loading-text{margin-left:0;margin-right:1em}.bookacti-loading-text:after{content:"\2026"}.bookacti-spinner{animation:bookacti-spinner-rotate 1.5s ease-in-out infinite;box-sizing:border-box;display:block;height:30px;position:relative;width:20px}.bookacti-spinner:after,.bookacti-spinner:before{animation:bookacti-spinner-pulse 1.5s ease-in-out infinite;background-color:rgba(82,183,233,.85);border-radius:10%;box-sizing:border-box;content:"";height:16px;left:0;position:absolute;top:0;transform:translateY(14px);width:16px;z-index:20}.bookacti-spinner:after{background-color:#565d61;transform:translate(4px);z-index:18}@keyframes bookacti-spinner-rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes bookacti-spinner-pulse{50%{transform:scale(.75) translate(2px,50%)}}.bookacti-loading-overlay{background:rgba(0,0,0,.6);height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%;z-index:10}.bookacti-loading-overlay-content{position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:100%;z-index:10}.bookacti-loading-overlay .bookacti-loading-container{background:rgba(0,0,0,.6);border-radius:3px}.bookacti-loading-overlay .bookacti-loading-text{color:#f5f5f5}.bookacti-loading-overlay .bookacti-spinner:after{background-color:#f5f5f5}.bookacti-form-field-name-submit .bookacti-loading-container{margin-bottom:0}@media screen and (max-width:480px){.bookacti-loading-container{white-space:normal}.bookacti-loading-image,.bookacti-loading-text{display:block;margin:auto}.bookacti-spinner{display:inline-block}}.bookacti-price-container{background-color:rgba(0,0,0,.3);border-radius:3px;box-sizing:border-box;color:#fff;display:block;font-size:1.2em;font-weight:bolder;line-height:1.2em;padding:5px;width:fit-content}.bookacti-price-container:not(.bookacti-has-price) .bookacti-price:not(.bookacti-promo){display:none!important}#bookacti-booking-list .bookacti-price-container,.bookacti-form-field-container:not(.bookacti-form-field-type-calendar) .bookacti-price-container{display:inline-block;margin:0 0 0 10px;vertical-align:middle}.rtl .bookacti-form-field-container:not(.bookacti-form-field-type-calendar) .bookacti-price-container{margin:0 10px 0 0}.bookacti-form-field-container .bookacti-form-field-checkbox-field-container .bookacti-price-container{display:table-cell}.bookacti-form-field-container:not(.bookacti-form-field-type-calendar) .bookacti-price-container:not(.bookacti-has-price){display:none} -
booking-activities/trunk/css/templates.css
r3415569 r3730814 9 9 10 10 #bookacti-template-container .fc-toolbar-chunk { position: relative; } 11 .bookacti-go-to-datepicker { position: absolute; z-index: 10; height: 34px; } 11 .bookacti-go-to-datepicker { margin-left: 5px; } 12 .rtl .bookacti-go-to-datepicker { margin-left: 0; margin-right: 5px; } 12 13 .fc-goTo-button .bookacti-spinner { zoom: .5; display: inline-block; vertical-align: middle; margin-left: 15px; } 13 14 .rtl .fc-goTo-button .bookacti-spinner { margin-left: 0; margin-right: 15px; } … … 25 26 #bookacti-template-calendar .fc-event:hover .fc-event-main { background: linear-gradient( to bottom, rgba( 44,62,80,0.15 ) 0%, rgba( 0,0,0,0 ) 100% ); } 26 27 27 #bookacti-template-calendar .fc-timegrid -event .fc-event-resizer{ color: #fff; text-align: center; font-family: monospace; }28 #bookacti-template-calendar .fc-timegrid -event:hover .fc-event-resizer:after { content: "="; display: inline-block; vertical-align: top; line-height: 0px; }28 #bookacti-template-calendar .fc-timegrid .fc-event-resizer { color: #fff; text-align: center; font-family: monospace; } 29 #bookacti-template-calendar .fc-timegrid .fc-event:hover .fc-event-resizer:after { content: "="; display: inline-block; vertical-align: top; line-height: 0px; } 29 30 30 31 /* Event actions */ … … 48 49 .bookacti-event-action-select-checkbox::before { margin: -3px 0 0 -4px !important; font: 400 21px/1 dashicons !important; } 49 50 .rtl .bookacti-event-action-select-checkbox::before { margin: -3px -2px 0 0 !important; } 50 #bookacti-template-calendar .fc-timegrid -event-harness-inset .fc-timegrid-event.bookacti-selected-event,51 #bookacti-template-calendar .fc-timegrid .fc-event.bookacti-selected-event, 51 52 #bookacti-template-calendar .bookacti-selected-event { box-shadow: inset 0 0 1px #000, 0 0 0 1px #fff; } 52 53 #bookacti-template-calendar .bookacti-selected-event:not(.bookacti-picked-event) .fc-event-main { background: linear-gradient( to bottom, rgba( 255,255,255,0.15 ) 0%, rgba( 255,255,255,0 ) 75% ); transition: background 0.2s; } … … 150 151 .bookacti-promo-events-examples a.fc-event { position: relative; display: inline-block; width: 115px; height: 84px; text-align: left; cursor: auto; overflow: clip; } 151 152 .rtl .bookacti-promo-events-examples a.fc-event { text-align: right; } 152 .bookacti-promo-events-examples a.fc-event .fc-event-main { background: rgba(255,255,255,0.15); height: 100%; }153 .bookacti-promo-events-examples a.fc-event .bookacti-price-container { display: block; width: fit-content; white-space: nowrap; margin: 4px auto; padding: 5px; font-weight: bolder; font-size: 1.2em; border-radius: 3px; background-color: rgba(0,0,0,0.3); color: #fff; }153 .bookacti-promo-events-examples a.fc-event .fc-event-main { background: rgba(255,255,255,0.15); height: 100%; } 154 .bookacti-promo-events-examples a.fc-event .bookacti-price-container { display: block; width: fit-content; white-space: nowrap; margin: 4px auto; padding: 5px; font-weight: bolder; font-size: 1.2em; border-radius: 3px; background-color: rgba(0,0,0,0.3); color: #fff; } 154 155 .bookacti-promo-events-examples .fc-event-time, 155 .bookacti-promo-events-examples .fc-event-title -container{ line-height: 1.5em; }156 .bookacti-promo-events-examples .fc-event-title { line-height: 1.5em; } 156 157 .bookacti-promo-events-examples .bookacti-available-places > span { display: inline; } 157 158 .bookacti-promo-events-examples .bookacti-available-places-avail-particle { margin: 0; } -
booking-activities/trunk/css/templates.min.css
r3415569 r3730814 1 #bookacti-template-container *,#bookacti-template-container :after,#bookacti-template-container :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#bookacti-template-container{display:table;margin:20px auto}#bookacti-template-container:after{clear:both}#bookacti-template-container+hr{margin:30px auto}#bookacti-template-container .fc-toolbar-chunk{position:relative}.bookacti-go-to-datepicker{ height:34px;position:absolute;z-index:10}.fc-goTo-button .bookacti-spinner{display:inline-block;margin-left:15px;vertical-align:middle;zoom:.5}.rtl .fc-goTo-button .bookacti-spinner{margin-left:0;margin-right:15px}.fc-goTo-button .bookacti-spinner:after{background-color:#f5f5f5}#bookacti-template-container .bookacti-total-availability:before{content:"/"}#bookacti-template-container .fc-helper{cursor:move}#bookacti-template-container .fc-event.bookacti-duplicate-event,#bookacti-template-container .fc-helper.bookacti-duplicate-event{cursor:copy}#bookacti-template-container .fc-event.bookacti-event-dragged.bookacti-duplicate-event{visibility:visible!important}#bookacti-template-calendar .fc-event:hover .fc-event-main{background:linear-gradient(180deg,rgba(44,62,80,.15) 0,transparent)}#bookacti-template-calendar .fc-timegrid-event .fc-event-resizer{color:#fff;font-family:monospace;text-align:center}#bookacti-template-calendar .fc-timegrid-event:hover .fc-event-resizer:after{content:"=";display:inline-block;line-height:0px;vertical-align:top}.bookacti-event-actions{background:rgba(0,0,0,.4);border-radius:0 0 0 3px;color:#fff;height:24px;opacity:0;padding:2px 3px;pointer-events:none;position:absolute;right:0;top:-24px;transition:all .2s;white-space:nowrap;z-index:5}.rtl .bookacti-event-actions{border-radius:0 0 3px 0;left:0;right:auto}.bookacti-event-action{display:inline-block;margin-right:8px;max-width:16px;min-width:16px;text-align:center;vertical-align:middle}.rtl .bookacti-event-action{margin-left:8px;margin-right:0}.bookacti-event-action:last-child{margin-right:0}.rtl .bookacti-event-action:last-child{margin-left:0}#bookacti-template-calendar .bookacti-selected-event .bookacti-event-actions{opacity:1;pointer-events:auto;top:0}#bookacti-template-calendar .bookacti-selected-event .bookacti-event-action{display:none}#bookacti-template-calendar .bookacti-selected-event .bookacti-event-action-select{display:inline-block}#bookacti-template-calendar .fc-event:hover .bookacti-event-actions{opacity:1;pointer-events:auto;top:0}#bookacti-template-calendar .fc-event:hover .bookacti-event-action{display:inline-block}.bookacti-event-action-select{height:20px;width:20px}.bookacti-event-action-select-checkbox{border-radius:50%;height:16px!important;margin:0;max-height:16px!important;max-width:16px!important;min-height:16px!important;min-width:16px!important;width:16px!important}.bookacti-event-action-select-checkbox:not(:checked):hover:before{color:#aaa;content:"\f147";display:inline-block;float:left;font:400 21px/1 dashicons;margin:-3px 0 0 -4px;vertical-align:middle;width:16px!important;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bookacti-event-action-select-checkbox:before{font:400 21px/1 dashicons!important;margin:-3px 0 0 -4px!important}.rtl .bookacti-event-action-select-checkbox:before{margin:-3px -2px 0 0!important}#bookacti-template-calendar .bookacti-selected-event,#bookacti-template-calendar .fc-timegrid-event-harness-inset .fc-timegrid-event.bookacti-selected-event{box-shadow:inset 0 0 1px #000,0 0 0 1px #fff}#bookacti-template-calendar .bookacti-selected-event:not(.bookacti-picked-event) .fc-event-main{background:linear-gradient(180deg,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,0) 75%);transition:background .2s}.bookacti-event-action-edit-button{font-size:16px;padding-top:1px;transition:color .2s}.bookacti-event-action-edit-button:hover{color:#aaa;cursor:pointer}#bookacti-template-calendar .fc-event-selected:before,#bookacti-template-calendar .fc-event:focus:before{z-index:1}#bookacti-template-sidebar{border-right:1px dashed #aaa;min-width:240px;overflow:auto;padding-right:20px;resize:both;width:240px}.rtl #bookacti-template-sidebar{border-left:1px dashed #aaa;border-right:none;padding-left:20px;padding-right:0}#bookacti-template-sidebar .dashicons:before{color:#565d61}#bookacti-template-sidebar .dashicons:hover:before{color:#418fb6}.bookacti-templates-box{border-bottom:1px solid #bbb;margin-bottom:12px;padding:10px}.bookacti-template-box-title{font-size:1.2em;font-weight:700;margin-bottom:10px;width:100%}.bookacti-template-box-title h4{display:table-cell;vertical-align:middle;width:100%}.bookacti-insert-button{cursor:pointer;display:table-cell;padding-left:4px;vertical-align:middle}#bookacti-template-sidebar .dashicons.bookacti-insert-button:before{color:#418fb6}#bookacti-template-picker-container{display:table-cell;vertical-align:middle;width:100%}#bookacti-template-picker{width:100%}#bookacti-update-template{cursor:pointer;display:table-cell;padding-left:10px;vertical-align:middle}.rtl #bookacti-update-template{padding-left:0;padding-right:10px}.bookacti-activity{height:24px;width:100%}.bookacti-activity-container{display:table-cell;max-width:120px;overflow:hidden;vertical-align:middle;width:100%}.bookacti-activity-visibility{cursor:pointer;display:table-cell;padding-right:10px;vertical-align:middle}.rtl .bookacti-activity-visibility{padding-left:10px;padding-right:0}.bookacti-activity-settings{cursor:pointer;display:table-cell;padding-left:10px;vertical-align:middle}.rtl .bookacti-activity-settings{padding-left:0;padding-right:10px}.bookacti-activity-draggable{border-radius:3px;color:#fff;cursor:move;font-size:.85em;height:18px;max-height:18px;overflow:hidden;padding:0 5px;text-overflow:ellipsis;white-space:nowrap;width:100%}.bookacti-activity-disabled{opacity:.5}#bookacti-template-activities-container,#bookacti-template-groups-of-events-container{padding-right:6px}#bookacti-group-categories,#bookacti-template-activity-list{overflow-y:auto;padding:0 4px 12px 0;resize:vertical}.bookacti-group-category-title,.bookacti-group-category-title span,.bookacti-group-of-events-title,.bookacti-update-group-category,.bookacti-update-group-of-events{display:table-cell;vertical-align:middle}.bookacti-update-group-category{cursor:pointer;padding-left:10px}.rtl .bookacti-update-group-category{padding-left:0;padding-right:10px}.bookacti-update-group-of-events{cursor:pointer;padding-right:8px}.rtl .bookacti-update-group-of-events{padding-left:8px;padding-right:0}.bookacti-groups-of-events-editor-list{border-left:1px dotted rgba(0,0,0,.3);cursor:pointer;margin-left:8px;margin-top:8px;overflow-x:hidden;overflow-y:auto;padding-left:7px;resize:vertical}.rtl .bookacti-groups-of-events-editor-list{border-left:none;border-right:1px dotted rgba(0,0,0,.3);margin-left:0;margin-right:8px;padding-left:0;padding-right:7px}.bookacti-group-category-title{cursor:pointer;width:100%}.bookacti-group-category-title span{font-weight:600}.bookacti-group-category-title,.bookacti-group-of-events-title{max-width:120px;overflow:hidden;text-overflow:ellipsis;transition:all .2s;white-space:nowrap;width:100%}.bookacti-group-of-events-title:hover{cursor:pointer;padding-left:10px}.bookacti-group-category .bookacti-group-category-title:before{display:table-cell;font-family:sans-serif;font-size:.8em;min-width:16px;position:relative;text-align:left;vertical-align:middle}.bookacti-group-category[data-show-groups="0"] .bookacti-group-category-title:before{content:"\25B7 "}.bookacti-group-category[data-show-groups="1"] .bookacti-group-category-title:before{content:"\25E2 "}.bookacti-group-category .bookacti-group-category-title:before{padding-right:5px}.rtl .bookacti-group-category .bookacti-group-category-title:before{padding-left:5px;padding-right:0}#bookacti-insert-group-of-events{visibility:hidden}#bookacti-template-add-first-group-of-events-container,.bookacti-groups-of-events-editor-list{display:none}.bookacti-group-category:not(:last-child) .bookacti-groups-of-events-editor-list{margin-bottom:10px}.bookacti-group-of-events.bookacti-selected-group .bookacti-group-of-events-title{font-weight:600;padding-left:10px}#bookacti-template-shortcuts-container ul{font-size:.85em}.bookacti-calendar-editor-sortable-placeholder{border:1px dashed #b4b9be;display:block;margin:10px 0;min-height:20px;width:100%}#bookacti-template-content{display:table-cell;padding-left:20px;width:100%}.rtl #bookacti-template-content{padding-left:0;padding-right:20px}#bookacti-template-calendar{vertical-align:top;width:100%}#bookacti-calendar-integration-tuto-container.bookacti-no-template,#bookacti-template-sidebar.bookacti-no-template{display:none}#bookacti-first-template-container{height:300px}#bookacti-first-template-container,#bookacti-template-add-first-group-of-events-container,#bookacti-template-first-activity-container{text-align:center;vertical-align:middle;width:100%}#bookacti-add-first-template-button{cursor:pointer;font-size:100px;height:100px;width:100px}#bookacti-template-add-first-activity-button,#bookacti-template-add-first-group-of-events-button{cursor:pointer;font-size:60px;height:60px;width:60px}#bookacti-add-first-template-button:hover,#bookacti-template-add-first-group-of-events-button:hover{color:#418fb6}.bookacti-tabs .bookacti-tab-content .bookacti-promo-events-examples{margin:10px 0 0}.bookacti-tabs .bookacti-tab-content .bookacti-promo-events-examples div{margin-bottom:0}.bookacti-promo-events-examples a.fc-event{cursor:auto;display:inline-block;height:84px;overflow:clip;position:relative;text-align:left;width:115px}.rtl .bookacti-promo-events-examples a.fc-event{text-align:right}.bookacti-promo-events-examples a.fc-event .fc-event-main{background:hsla(0,0%,100%,.15);height:100%}.bookacti-promo-events-examples a.fc-event .bookacti-price-container{background-color:rgba(0,0,0,.3);border-radius:3px;color:#fff;display:block;font-size:1.2em;font-weight:bolder;margin:4px auto;padding:5px;white-space:nowrap;width:fit-content}.bookacti-promo-events-examples .fc-event-time,.bookacti-promo-events-examples .fc-event-title-container{line-height:1.5em}.bookacti-promo-events-examples .bookacti-available-places>span{display:inline}.bookacti-promo-events-examples .bookacti-available-places-avail-particle{margin:0}#bookacti-activity-import-dialog label{display:inline-block;font-weight:700;width:150px}#bookacti-delete-activity-options{margin-top:20px}.bookacti-roles-notice{display:none;margin-bottom:20px;margin-top:10px}#bookacti-display-activity-user-roles-container label,#bookacti-display-group-category-user-roles-container label{cursor:pointer;display:inline-block;vertical-align:middle;width:auto}#bookacti-activity-roles,#bookacti-group-category-roles{width:100%!important}#bookacti-event-repeat-freq-container,#bookacti-event-repeat-step-container,#bookacti-group-of-events-repeat-freq-container,#bookacti-group-of-events-repeat-step-container{display:inline-block;vertical-align:middle}#bookacti-event-repeat-step,#bookacti-group-of-events-repeat-step{width:50px}.bookacti-repeat-freq-start-of-week-notice{display:none;margin-top:10px}.bookacti-selected-event-dates{margin:25px 0}.bookacti-update-repeated-event-dates-warning{margin-top:25px}.bookacti-selected-event-end,.bookacti-selected-event-start{margin:0 2px}#bookacti-update-event-dates-end-container label,#bookacti-update-event-dates-start-container label{width:80px}.bookacti-bookings-nb:before,.bookacti-notifications-nb:before{content:" ("}.bookacti-bookings-nb:after,.bookacti-notifications-nb:after{content:") "}.bookacti-bookings-nb,.bookacti-notifications-nb{font-style:italic;margin:0 4px;vertical-align:middle}.bookacti-delete-booked-repeated-event-warning,.bookacti-update-booked-repeated-event-dates-warning{color:#b81c23}#bookacti-unbind-event-dialog .bookacti-selected-event-dates,#bookacti-unbind-group-of-events-dialog .bookacti-selected-group-of-events-container{margin:0 0 25px}#bookacti-unbind-event-dialog #bookacti-unbind-event-actions,#bookacti-unbind-group-of-events-dialog #bookacti-unbind-group-of-events-actions{padding:0 3em}#bookacti-unbind-event-dialog .bookacti-unbind-action,#bookacti-unbind-group-of-events-dialog .bookacti-unbind-action{padding-bottom:2em}#bookacti-unbind-event-dialog .bookacti-unbind-action small,#bookacti-unbind-group-of-events-dialog .bookacti-unbind-action small{display:inline-block;margin:1em 2em 0}#bookacti-group-of-events-category-title-field-container{display:none}#bookacti-group-of-events-summary-label-container{display:flex;justify-content:space-between}#bookacti-group-of-events-summary-label{padding:8px 0;width:220px}.bookacti-backend-dialog .bookacti-selected-events-list{max-width:100%;overflow:auto;resize:vertical;width:100%}#bookacti-group-of-events-summary-preview-notice{display:none;margin:10px 0}#bookacti-group-of-events-occurrences-navigation>.button{padding:0 6px;user-select:none}#bookacti-group-of-events-occurrences-navigation #bookacti-group-of-events-occurrences-undo{padding:0 12px}#bookacti-group-of-events-occurrences-navigation .dashicons{display:inline;font-size:1.2em;vertical-align:middle}@media screen and (max-width:1200px){#bookacti-template-container .fc-header-toolbar{flex-direction:row;flex-wrap:wrap}#bookacti-template-container .fc-header-toolbar .fc-today-button{display:none}#bookacti-template-container .fc-toolbar-chunk:nth-child(2){flex:0 1 100%;margin-bottom:1.5em;order:1;text-align:center}#bookacti-template-container .fc-toolbar-chunk:first-child{flex:1 0 50%;order:2;text-align:left}#bookacti-template-container .fc-toolbar-chunk:nth-child(3){flex:1 0 50%;order:3;text-align:right}.rtl #bookacti-template-container .fc-toolbar-chunk:first-child{text-align:right}.rtl #bookacti-template-container .fc-toolbar-chunk:nth-child(3){text-align:left}}@media screen and (max-width:960px){#bookacti-template-sidebar,.rtl #bookacti-template-sidebar{border:none;margin:0;padding:0;width:180px}#bookacti-template-content{padding-left:12px}.rtl #bookacti-template-content{padding-left:0;padding-right:12px}.bookacti-event-action{margin-left:2px}.rtl .bookacti-event-action{margin-left:0;margin-right:2px}.bookacti-group-category-title,.bookacti-group-of-events-title{max-width:82px}}@media screen and (max-width:820px){#bookacti-template-container .fc-header-toolbar{flex-direction:column}#bookacti-template-container .fc-toolbar-chunk{margin-bottom:1.5em;text-align:center}#bookacti-template-container .fc-toolbar-chunk:first-child,.rtl #bookacti-template-container .fc-toolbar-chunk:first-child{text-align:center}#bookacti-template-container .fc-toolbar-chunk:nth-child(3),.rtl #bookacti-template-container .fc-toolbar-chunk:nth-child(3){margin-bottom:0;text-align:center}}@media screen and (max-width:782px){input[type=checkbox].bookacti-event-action-select-checkbox:checked:before{height:20px;margin:-3px 0 0 -4px!important;width:20px}.rtl input[type=checkbox].bookacti-event-action-select-checkbox:checked:before{margin:-3px -2px 0 0!important}}@media screen and (max-width:564px){#bookacti-template-container{display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-moz-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}#bookacti-template-content,#bookacti-template-sidebar,.rtl #bookacti-template-content,.rtl #bookacti-template-sidebar{border:none;display:block;margin:20px 0 0;padding:0;width:100%}#bookacti-template-sidebar{margin-top:20px;-webkit-box-ordinal-group:2;-moz-box-ordinal-group:2;-ms-flex-order:2;-webkit-order:2;order:2}#bookacti-template-content{-webkit-box-ordinal-group:1;-moz-box-ordinal-group:1;-ms-flex-order:1;-webkit-order:1;order:1}}1 #bookacti-template-container *,#bookacti-template-container :after,#bookacti-template-container :before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#bookacti-template-container{display:table;margin:20px auto}#bookacti-template-container:after{clear:both}#bookacti-template-container+hr{margin:30px auto}#bookacti-template-container .fc-toolbar-chunk{position:relative}.bookacti-go-to-datepicker{margin-left:5px}.rtl .bookacti-go-to-datepicker{margin-left:0;margin-right:5px}.fc-goTo-button .bookacti-spinner{display:inline-block;margin-left:15px;vertical-align:middle;zoom:.5}.rtl .fc-goTo-button .bookacti-spinner{margin-left:0;margin-right:15px}.fc-goTo-button .bookacti-spinner:after{background-color:#f5f5f5}#bookacti-template-container .bookacti-total-availability:before{content:"/"}#bookacti-template-container .fc-helper{cursor:move}#bookacti-template-container .fc-event.bookacti-duplicate-event,#bookacti-template-container .fc-helper.bookacti-duplicate-event{cursor:copy}#bookacti-template-container .fc-event.bookacti-event-dragged.bookacti-duplicate-event{visibility:visible!important}#bookacti-template-calendar .fc-event:hover .fc-event-main{background:linear-gradient(180deg,rgba(44,62,80,.15) 0,transparent)}#bookacti-template-calendar .fc-timegrid .fc-event-resizer{color:#fff;font-family:monospace;text-align:center}#bookacti-template-calendar .fc-timegrid .fc-event:hover .fc-event-resizer:after{content:"=";display:inline-block;line-height:0px;vertical-align:top}.bookacti-event-actions{background:rgba(0,0,0,.4);border-radius:0 0 0 3px;color:#fff;height:24px;opacity:0;padding:2px 3px;pointer-events:none;position:absolute;right:0;top:-24px;transition:all .2s;white-space:nowrap;z-index:5}.rtl .bookacti-event-actions{border-radius:0 0 3px 0;left:0;right:auto}.bookacti-event-action{display:inline-block;margin-right:8px;max-width:16px;min-width:16px;text-align:center;vertical-align:middle}.rtl .bookacti-event-action{margin-left:8px;margin-right:0}.bookacti-event-action:last-child{margin-right:0}.rtl .bookacti-event-action:last-child{margin-left:0}#bookacti-template-calendar .bookacti-selected-event .bookacti-event-actions{opacity:1;pointer-events:auto;top:0}#bookacti-template-calendar .bookacti-selected-event .bookacti-event-action{display:none}#bookacti-template-calendar .bookacti-selected-event .bookacti-event-action-select{display:inline-block}#bookacti-template-calendar .fc-event:hover .bookacti-event-actions{opacity:1;pointer-events:auto;top:0}#bookacti-template-calendar .fc-event:hover .bookacti-event-action{display:inline-block}.bookacti-event-action-select{height:20px;width:20px}.bookacti-event-action-select-checkbox{border-radius:50%;height:16px!important;margin:0;max-height:16px!important;max-width:16px!important;min-height:16px!important;min-width:16px!important;width:16px!important}.bookacti-event-action-select-checkbox:not(:checked):hover:before{color:#aaa;content:"\f147";display:inline-block;float:left;font:400 21px/1 dashicons;margin:-3px 0 0 -4px;vertical-align:middle;width:16px!important;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.bookacti-event-action-select-checkbox:before{font:400 21px/1 dashicons!important;margin:-3px 0 0 -4px!important}.rtl .bookacti-event-action-select-checkbox:before{margin:-3px -2px 0 0!important}#bookacti-template-calendar .bookacti-selected-event,#bookacti-template-calendar .fc-timegrid .fc-event.bookacti-selected-event{box-shadow:inset 0 0 1px #000,0 0 0 1px #fff}#bookacti-template-calendar .bookacti-selected-event:not(.bookacti-picked-event) .fc-event-main{background:linear-gradient(180deg,hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,0) 75%);transition:background .2s}.bookacti-event-action-edit-button{font-size:16px;padding-top:1px;transition:color .2s}.bookacti-event-action-edit-button:hover{color:#aaa;cursor:pointer}#bookacti-template-calendar .fc-event-selected:before,#bookacti-template-calendar .fc-event:focus:before{z-index:1}#bookacti-template-sidebar{border-right:1px dashed #aaa;min-width:240px;overflow:auto;padding-right:20px;resize:both;width:240px}.rtl #bookacti-template-sidebar{border-left:1px dashed #aaa;border-right:none;padding-left:20px;padding-right:0}#bookacti-template-sidebar .dashicons:before{color:#565d61}#bookacti-template-sidebar .dashicons:hover:before{color:#418fb6}.bookacti-templates-box{border-bottom:1px solid #bbb;margin-bottom:12px;padding:10px}.bookacti-template-box-title{font-size:1.2em;font-weight:700;margin-bottom:10px;width:100%}.bookacti-template-box-title h4{display:table-cell;vertical-align:middle;width:100%}.bookacti-insert-button{cursor:pointer;display:table-cell;padding-left:4px;vertical-align:middle}#bookacti-template-sidebar .dashicons.bookacti-insert-button:before{color:#418fb6}#bookacti-template-picker-container{display:table-cell;vertical-align:middle;width:100%}#bookacti-template-picker{width:100%}#bookacti-update-template{cursor:pointer;display:table-cell;padding-left:10px;vertical-align:middle}.rtl #bookacti-update-template{padding-left:0;padding-right:10px}.bookacti-activity{height:24px;width:100%}.bookacti-activity-container{display:table-cell;max-width:120px;overflow:hidden;vertical-align:middle;width:100%}.bookacti-activity-visibility{cursor:pointer;display:table-cell;padding-right:10px;vertical-align:middle}.rtl .bookacti-activity-visibility{padding-left:10px;padding-right:0}.bookacti-activity-settings{cursor:pointer;display:table-cell;padding-left:10px;vertical-align:middle}.rtl .bookacti-activity-settings{padding-left:0;padding-right:10px}.bookacti-activity-draggable{border-radius:3px;color:#fff;cursor:move;font-size:.85em;height:18px;max-height:18px;overflow:hidden;padding:0 5px;text-overflow:ellipsis;white-space:nowrap;width:100%}.bookacti-activity-disabled{opacity:.5}#bookacti-template-activities-container,#bookacti-template-groups-of-events-container{padding-right:6px}#bookacti-group-categories,#bookacti-template-activity-list{overflow-y:auto;padding:0 4px 12px 0;resize:vertical}.bookacti-group-category-title,.bookacti-group-category-title span,.bookacti-group-of-events-title,.bookacti-update-group-category,.bookacti-update-group-of-events{display:table-cell;vertical-align:middle}.bookacti-update-group-category{cursor:pointer;padding-left:10px}.rtl .bookacti-update-group-category{padding-left:0;padding-right:10px}.bookacti-update-group-of-events{cursor:pointer;padding-right:8px}.rtl .bookacti-update-group-of-events{padding-left:8px;padding-right:0}.bookacti-groups-of-events-editor-list{border-left:1px dotted rgba(0,0,0,.3);cursor:pointer;margin-left:8px;margin-top:8px;overflow-x:hidden;overflow-y:auto;padding-left:7px;resize:vertical}.rtl .bookacti-groups-of-events-editor-list{border-left:none;border-right:1px dotted rgba(0,0,0,.3);margin-left:0;margin-right:8px;padding-left:0;padding-right:7px}.bookacti-group-category-title{cursor:pointer;width:100%}.bookacti-group-category-title span{font-weight:600}.bookacti-group-category-title,.bookacti-group-of-events-title{max-width:120px;overflow:hidden;text-overflow:ellipsis;transition:all .2s;white-space:nowrap;width:100%}.bookacti-group-of-events-title:hover{cursor:pointer;padding-left:10px}.bookacti-group-category .bookacti-group-category-title:before{display:table-cell;font-family:sans-serif;font-size:.8em;min-width:16px;position:relative;text-align:left;vertical-align:middle}.bookacti-group-category[data-show-groups="0"] .bookacti-group-category-title:before{content:"\25B7 "}.bookacti-group-category[data-show-groups="1"] .bookacti-group-category-title:before{content:"\25E2 "}.bookacti-group-category .bookacti-group-category-title:before{padding-right:5px}.rtl .bookacti-group-category .bookacti-group-category-title:before{padding-left:5px;padding-right:0}#bookacti-insert-group-of-events{visibility:hidden}#bookacti-template-add-first-group-of-events-container,.bookacti-groups-of-events-editor-list{display:none}.bookacti-group-category:not(:last-child) .bookacti-groups-of-events-editor-list{margin-bottom:10px}.bookacti-group-of-events.bookacti-selected-group .bookacti-group-of-events-title{font-weight:600;padding-left:10px}#bookacti-template-shortcuts-container ul{font-size:.85em}.bookacti-calendar-editor-sortable-placeholder{border:1px dashed #b4b9be;display:block;margin:10px 0;min-height:20px;width:100%}#bookacti-template-content{display:table-cell;padding-left:20px;width:100%}.rtl #bookacti-template-content{padding-left:0;padding-right:20px}#bookacti-template-calendar{vertical-align:top;width:100%}#bookacti-calendar-integration-tuto-container.bookacti-no-template,#bookacti-template-sidebar.bookacti-no-template{display:none}#bookacti-first-template-container{height:300px}#bookacti-first-template-container,#bookacti-template-add-first-group-of-events-container,#bookacti-template-first-activity-container{text-align:center;vertical-align:middle;width:100%}#bookacti-add-first-template-button{cursor:pointer;font-size:100px;height:100px;width:100px}#bookacti-template-add-first-activity-button,#bookacti-template-add-first-group-of-events-button{cursor:pointer;font-size:60px;height:60px;width:60px}#bookacti-add-first-template-button:hover,#bookacti-template-add-first-group-of-events-button:hover{color:#418fb6}.bookacti-tabs .bookacti-tab-content .bookacti-promo-events-examples{margin:10px 0 0}.bookacti-tabs .bookacti-tab-content .bookacti-promo-events-examples div{margin-bottom:0}.bookacti-promo-events-examples a.fc-event{cursor:auto;display:inline-block;height:84px;overflow:clip;position:relative;text-align:left;width:115px}.rtl .bookacti-promo-events-examples a.fc-event{text-align:right}.bookacti-promo-events-examples a.fc-event .fc-event-main{background:hsla(0,0%,100%,.15);height:100%}.bookacti-promo-events-examples a.fc-event .bookacti-price-container{background-color:rgba(0,0,0,.3);border-radius:3px;color:#fff;display:block;font-size:1.2em;font-weight:bolder;margin:4px auto;padding:5px;white-space:nowrap;width:fit-content}.bookacti-promo-events-examples .fc-event-time,.bookacti-promo-events-examples .fc-event-title{line-height:1.5em}.bookacti-promo-events-examples .bookacti-available-places>span{display:inline}.bookacti-promo-events-examples .bookacti-available-places-avail-particle{margin:0}#bookacti-activity-import-dialog label{display:inline-block;font-weight:700;width:150px}#bookacti-delete-activity-options{margin-top:20px}.bookacti-roles-notice{display:none;margin-bottom:20px;margin-top:10px}#bookacti-display-activity-user-roles-container label,#bookacti-display-group-category-user-roles-container label{cursor:pointer;display:inline-block;vertical-align:middle;width:auto}#bookacti-activity-roles,#bookacti-group-category-roles{width:100%!important}#bookacti-event-repeat-freq-container,#bookacti-event-repeat-step-container,#bookacti-group-of-events-repeat-freq-container,#bookacti-group-of-events-repeat-step-container{display:inline-block;vertical-align:middle}#bookacti-event-repeat-step,#bookacti-group-of-events-repeat-step{width:50px}.bookacti-repeat-freq-start-of-week-notice{display:none;margin-top:10px}.bookacti-selected-event-dates{margin:25px 0}.bookacti-update-repeated-event-dates-warning{margin-top:25px}.bookacti-selected-event-end,.bookacti-selected-event-start{margin:0 2px}#bookacti-update-event-dates-end-container label,#bookacti-update-event-dates-start-container label{width:80px}.bookacti-bookings-nb:before,.bookacti-notifications-nb:before{content:" ("}.bookacti-bookings-nb:after,.bookacti-notifications-nb:after{content:") "}.bookacti-bookings-nb,.bookacti-notifications-nb{font-style:italic;margin:0 4px;vertical-align:middle}.bookacti-delete-booked-repeated-event-warning,.bookacti-update-booked-repeated-event-dates-warning{color:#b81c23}#bookacti-unbind-event-dialog .bookacti-selected-event-dates,#bookacti-unbind-group-of-events-dialog .bookacti-selected-group-of-events-container{margin:0 0 25px}#bookacti-unbind-event-dialog #bookacti-unbind-event-actions,#bookacti-unbind-group-of-events-dialog #bookacti-unbind-group-of-events-actions{padding:0 3em}#bookacti-unbind-event-dialog .bookacti-unbind-action,#bookacti-unbind-group-of-events-dialog .bookacti-unbind-action{padding-bottom:2em}#bookacti-unbind-event-dialog .bookacti-unbind-action small,#bookacti-unbind-group-of-events-dialog .bookacti-unbind-action small{display:inline-block;margin:1em 2em 0}#bookacti-group-of-events-category-title-field-container{display:none}#bookacti-group-of-events-summary-label-container{display:flex;justify-content:space-between}#bookacti-group-of-events-summary-label{padding:8px 0;width:220px}.bookacti-backend-dialog .bookacti-selected-events-list{max-width:100%;overflow:auto;resize:vertical;width:100%}#bookacti-group-of-events-summary-preview-notice{display:none;margin:10px 0}#bookacti-group-of-events-occurrences-navigation>.button{padding:0 6px;user-select:none}#bookacti-group-of-events-occurrences-navigation #bookacti-group-of-events-occurrences-undo{padding:0 12px}#bookacti-group-of-events-occurrences-navigation .dashicons{display:inline;font-size:1.2em;vertical-align:middle}@media screen and (max-width:1200px){#bookacti-template-container .fc-header-toolbar{flex-direction:row;flex-wrap:wrap}#bookacti-template-container .fc-header-toolbar .fc-today-button{display:none}#bookacti-template-container .fc-toolbar-chunk:nth-child(2){flex:0 1 100%;margin-bottom:1.5em;order:1;text-align:center}#bookacti-template-container .fc-toolbar-chunk:first-child{flex:1 0 50%;order:2;text-align:left}#bookacti-template-container .fc-toolbar-chunk:nth-child(3){flex:1 0 50%;order:3;text-align:right}.rtl #bookacti-template-container .fc-toolbar-chunk:first-child{text-align:right}.rtl #bookacti-template-container .fc-toolbar-chunk:nth-child(3){text-align:left}}@media screen and (max-width:960px){#bookacti-template-sidebar,.rtl #bookacti-template-sidebar{border:none;margin:0;padding:0;width:180px}#bookacti-template-content{padding-left:12px}.rtl #bookacti-template-content{padding-left:0;padding-right:12px}.bookacti-event-action{margin-left:2px}.rtl .bookacti-event-action{margin-left:0;margin-right:2px}.bookacti-group-category-title,.bookacti-group-of-events-title{max-width:82px}}@media screen and (max-width:820px){#bookacti-template-container .fc-header-toolbar{flex-direction:column}#bookacti-template-container .fc-toolbar-chunk{margin-bottom:1.5em;text-align:center}#bookacti-template-container .fc-toolbar-chunk:first-child,.rtl #bookacti-template-container .fc-toolbar-chunk:first-child{text-align:center}#bookacti-template-container .fc-toolbar-chunk:nth-child(3),.rtl #bookacti-template-container .fc-toolbar-chunk:nth-child(3){margin-bottom:0;text-align:center}}@media screen and (max-width:782px){input[type=checkbox].bookacti-event-action-select-checkbox:checked:before{height:20px;margin:-3px 0 0 -4px!important;width:20px}.rtl input[type=checkbox].bookacti-event-action-select-checkbox:checked:before{margin:-3px -2px 0 0!important}}@media screen and (max-width:564px){#bookacti-template-container{display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-box-orient:vertical;-moz-box-orient:vertical;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-moz-box-align:start;-ms-flex-align:start;-webkit-align-items:flex-start;align-items:flex-start}#bookacti-template-content,#bookacti-template-sidebar,.rtl #bookacti-template-content,.rtl #bookacti-template-sidebar{border:none;display:block;margin:20px 0 0;padding:0;width:100%}#bookacti-template-sidebar{margin-top:20px;-webkit-box-ordinal-group:2;-moz-box-ordinal-group:2;-ms-flex-order:2;-webkit-order:2;order:2}#bookacti-template-content{-webkit-box-ordinal-group:1;-moz-box-ordinal-group:1;-ms-flex-order:1;-webkit-order:1;order:1}} -
booking-activities/trunk/css/woocommerce.css
r3692046 r3730814 29 29 .bookacti-success-list.woocommerce li:not(:first-child) a.button.wc-forward { display: none; } 30 30 .product form.cart table.bookacti-total-price-table td { padding-left: 10px !important; } 31 .product form.cart .bookacti-calendar table { border-width: 0; }32 .product form.cart .bookacti-calendar table.fc-scrollgrid { border-width: 1px 0 0 1px; }33 31 34 32 /* Single product page */ 35 33 .bookacti-wc-fullwidth-cart-form, 36 34 .bookacti-wc-fullwidth-cart-form form.cart { display: block; clear: both; width: 100%; } 37 .product.bookacti-activity form.cart table td.fc-axis { padding-left: 4px; }38 35 .woocommerce.single.single-product.bookacti-activity form.cart { width: 100%; } 39 36 -
booking-activities/trunk/css/woocommerce.min.css
r3494795 r3730814 1 #woocommerce-product-data ul.product_data_tabs li.activity_tab a:before{content:"\f508";font-family:dashicons}.bookacti-woo-title{padding:1em 0 .5em}p.form-field._bookacti_groups_field{margin-bottom:0}.bookacti-groups-options{margin-top:0}.bookacti-groups-options label,.form-row.bookacti-groups-options label{float:none;font-size:12px;margin:0 0 0 7px;width:auto}.bookacti-groups-options>span,.form-row.bookacti-groups-options>span{clear:both;display:block}.bookacti-groups-options>span>*,.form-row.bookacti-groups-options>span>*{display:table-cell;padding-right:8px}.bookacti-groups-options .woocommerce-help-tip,.form-row.bookacti-groups-options .woocommerce-help-tip{float:none}.woocommerce_options_panel .bookacti-multiple-select-container{display:inline-block;white-space:nowrap}.woocommerce_options_panel .bookacti-multiple-select-container label{display:inline-block;float:none;margin:0;width:auto}.bookacti-empty-product-price-notice{clear:both;color:#f89b2f}table.woocommerce_order_items ul.bookacti-booking-events-list{margin:0}.bookacti-success-list.woocommerce a.button,.product.bookacti-activity form.cart .bookacti-success-list.woocommerce .button{float:right}.bookacti-success-list.woocommerce li:not(:first-child) a.button.wc-forward{display:none}.product form.cart table.bookacti-total-price-table td{padding-left:10px!important}. product form.cart .bookacti-calendar table{border-width:0}.product form.cart .bookacti-calendar table.fc-scrollgrid{border-width:1px 0 0 1px}.bookacti-wc-fullwidth-cart-form,.bookacti-wc-fullwidth-cart-form form.cart{clear:both;display:block;width:100%}.product.bookacti-activity form.cart table td.fc-axis{padding-left:4px}.woocommerce.single.single-product.bookacti-activity form.cart{width:100%}.product.bookacti-activity.elementor form.cart.variations_form .woocommerce-variation-add-to-cart,.product.bookacti-activity.elementor form.cart:not(.grouped_form):not(.variations_form){display:block!important}.product.bookacti-activity #cpsw-payment-request-wrapper,.product.bookacti-activity #ppc-button-ppcp-gateway,.product.bookacti-activity #wc-stripe-express-checkout-element,.product.bookacti-activity #wc-stripe-payment-request-button-separator,.product.bookacti-activity #wc-stripe-payment-request-wrapper,.product.bookacti-activity #wcpay-payment-request-button-separator,.product.bookacti-activity #wcpay-payment-request-wrapper,.product.bookacti-activity .paypal-buttons,.product.bookacti-activity .wc-stripe-payment-request-button-separator,.product.bookacti-activity .wc-stripe-payment-request-wrapper,.product.bookacti-activity .wcpay-express-checkout-wrapper,.product.bookacti-activity .wcpay-payment-request-button-separator,.product.bookacti-activity .wcpay-payment-request-wrapper{display:none!important}.bookacti-cart-item-activity td.product-name dl.variation dt,.bookacti-cart-item-activity th.product-name dl.variation dt{display:block;float:none;font-weight:700}.wc-block-components-product-details__ .wc-block-components-product-details__value:before,.wc-block-components-product-details__nbsp-nbsp-nbsp-nbsp-bull .wc-block-components-product-details__value:before{content:"\a0\a0\a0\a0"}.bookacti-cart-item-activity td.product-name dl.variation dt.variation-nbspnbspnbspnbspbull,.bookacti-cart-item-activity th.product-name dl.variation dt.variation-,.bookacti-cart-item-activity th.product-name dl.variation dt.variation-nbspnbspnbspnbspbull,.wc-block-components-product-details__ .wc-block-components-product-details__name,.wc-block-components-product-details__nbsp-nbsp-nbsp-nbsp-bull .wc-block-components-product-details__name{display:none}.bookacti-cart-item-activity dd{margin:0}.bookacti-cart-item-activity dd>p:first-child{font-weight:400;margin:0}.wc-block-cart-items__row .bookacti-countdown-container:before,.wc-block-cart-items__row .bookacti-wc-cart-item-status:before{content:" - "}.wc-block-cart-items__row .bookacti-countdown-container,.wc-block-cart-items__row .bookacti-wc-cart-item-status{display:inline;font-size:.75em;font-style:italic}.wc-block-components-order-summary-item__description .bookacti-countdown-container,.wc-block-components-order-summary-item__description .bookacti-wc-cart-item-status{font-size:1em;font-style:italic;margin-top:8px}.woocommerce a.button.bookacti-booking-action,.woocommerce a.button.bookacti-booking-group-action{margin:5px}1 #woocommerce-product-data ul.product_data_tabs li.activity_tab a:before{content:"\f508";font-family:dashicons}.bookacti-woo-title{padding:1em 0 .5em}p.form-field._bookacti_groups_field{margin-bottom:0}.bookacti-groups-options{margin-top:0}.bookacti-groups-options label,.form-row.bookacti-groups-options label{float:none;font-size:12px;margin:0 0 0 7px;width:auto}.bookacti-groups-options>span,.form-row.bookacti-groups-options>span{clear:both;display:block}.bookacti-groups-options>span>*,.form-row.bookacti-groups-options>span>*{display:table-cell;padding-right:8px}.bookacti-groups-options .woocommerce-help-tip,.form-row.bookacti-groups-options .woocommerce-help-tip{float:none}.woocommerce_options_panel .bookacti-multiple-select-container{display:inline-block;white-space:nowrap}.woocommerce_options_panel .bookacti-multiple-select-container label{display:inline-block;float:none;margin:0;width:auto}.bookacti-empty-product-price-notice{clear:both;color:#f89b2f}table.woocommerce_order_items ul.bookacti-booking-events-list{margin:0}.bookacti-success-list.woocommerce a.button,.product.bookacti-activity form.cart .bookacti-success-list.woocommerce .button{float:right}.bookacti-success-list.woocommerce li:not(:first-child) a.button.wc-forward{display:none}.product form.cart table.bookacti-total-price-table td{padding-left:10px!important}.bookacti-wc-fullwidth-cart-form,.bookacti-wc-fullwidth-cart-form form.cart{clear:both;display:block;width:100%}.woocommerce.single.single-product.bookacti-activity form.cart{width:100%}.product.bookacti-activity.elementor form.cart.variations_form .woocommerce-variation-add-to-cart,.product.bookacti-activity.elementor form.cart:not(.grouped_form):not(.variations_form){display:block!important}.product.bookacti-activity #cpsw-payment-request-wrapper,.product.bookacti-activity #ppc-button-ppcp-gateway,.product.bookacti-activity #wc-stripe-express-checkout-element,.product.bookacti-activity #wc-stripe-payment-request-button-separator,.product.bookacti-activity #wc-stripe-payment-request-wrapper,.product.bookacti-activity #wcpay-payment-request-button-separator,.product.bookacti-activity #wcpay-payment-request-wrapper,.product.bookacti-activity .paypal-buttons,.product.bookacti-activity .wc-stripe-payment-request-button-separator,.product.bookacti-activity .wc-stripe-payment-request-wrapper,.product.bookacti-activity .wc-stripe-product-checkout-container,.product.bookacti-activity .wcpay-express-checkout-wrapper,.product.bookacti-activity .wcpay-payment-request-button-separator,.product.bookacti-activity .wcpay-payment-request-wrapper{display:none!important}.bookacti-cart-item-activity td.product-name dl.variation dt,.bookacti-cart-item-activity th.product-name dl.variation dt{display:block;float:none;font-weight:700}.wc-block-components-product-details__ .wc-block-components-product-details__value:before,.wc-block-components-product-details__nbsp-nbsp-nbsp-nbsp-bull .wc-block-components-product-details__value:before{content:"\a0\a0\a0\a0"}.bookacti-cart-item-activity td.product-name dl.variation dt.variation-nbspnbspnbspnbspbull,.bookacti-cart-item-activity th.product-name dl.variation dt.variation-,.bookacti-cart-item-activity th.product-name dl.variation dt.variation-nbspnbspnbspnbspbull,.wc-block-components-product-details__ .wc-block-components-product-details__name,.wc-block-components-product-details__nbsp-nbsp-nbsp-nbsp-bull .wc-block-components-product-details__name{display:none}.bookacti-cart-item-activity dd{margin:0}.bookacti-cart-item-activity dd>p:first-child{font-weight:400;margin:0}.wc-block-cart-items__row .bookacti-countdown-container:before,.wc-block-cart-items__row .bookacti-wc-cart-item-status:before{content:" - "}.wc-block-cart-items__row .bookacti-countdown-container,.wc-block-cart-items__row .bookacti-wc-cart-item-status{display:inline;font-size:.75em;font-style:italic}.wc-block-components-order-summary-item__description .bookacti-countdown-container,.wc-block-components-order-summary-item__description .bookacti-wc-cart-item-status{font-size:1em;font-style:italic;margin-top:8px}.woocommerce a.button.bookacti-booking-action,.woocommerce a.button.bookacti-booking-group-action{margin:5px} -
booking-activities/trunk/functions/functions-forms.php
r3692086 r3730814 1425 1425 * Register a new user through a booking form 1426 1426 * @since 1.5.0 1427 * @version 1.1 8.91427 * @version 1.19.0 1428 1428 * @param array $login_values 1429 1429 * @param array $login_data … … 1462 1462 'first_name' => ! empty( $login_values[ 'first_name' ] ) ? $login_values[ 'first_name' ] : '', 1463 1463 'last_name' => ! empty( $login_values[ 'last_name' ] ) ? $login_values[ 'last_name' ] : '', 1464 ), $login_values );1464 ), $login_values, $login_data ); 1465 1465 1466 1466 // Create the user -
booking-activities/trunk/functions/functions-global.php
r3692046 r3730814 628 628 * Get add-on data by prefix 629 629 * @since 1.7.14 630 * @version 1.1 8.7630 * @version 1.19.0 631 631 * @param string $prefix 632 632 * @param array $exclude … … 641 641 'end_of_life' => '', 642 642 'download_id' => 482, 643 'min_version' => '1. 5.15'643 'min_version' => '1.6.0' 644 644 ), 645 645 'banp' => array( … … 657 657 'end_of_life' => '', 658 658 'download_id' => 438, 659 'min_version' => '1.9. 0'659 'min_version' => '1.9.4' 660 660 ), 661 661 'baaf' => array( -
booking-activities/trunk/functions/functions-i18n.php
r3557724 r3730814 350 350 * WPML's function for restore_previous_locale 351 351 * @since 1.14.0 352 * @version 1.1 6.23352 * @version 1.19.0 353 353 * @return string 354 354 */ … … 359 359 $old_locale = $bookacti_wpml_stack ? array_pop( $bookacti_wpml_stack ) : null; 360 360 $lang_code = $old_locale && strpos( (string) $old_locale, '_' ) !== false ? substr( $old_locale, 0, strpos( $old_locale, '_' ) ) : $old_locale; 361 do_action( 'wpml_switch_language', $lang_code ); 361 362 $has_stack = defined( 'ICL_SITEPRESS_VERSION' ) && version_compare( ICL_SITEPRESS_VERSION, '5.0', '>=' ); 363 364 do_action( 'wpml_switch_language', $has_stack ? null : $lang_code ); 362 365 363 366 $new_locale = bookacti_get_current_lang_code( true ); -
booking-activities/trunk/functions/functions-settings.php
r3539441 r3730814 1442 1442 * Display a promotional area for Waiting List add-on 1443 1443 * @since 1.16.46 1444 * @since 1.19.0 1444 1445 */ 1445 1446 function bookacti_display_bawl_promo() { … … 1485 1486 1486 1487 <div class='bookacti-promo-events-examples'> 1487 <a class='fc- timegrid-event fc-v-event fc-event fc-event-start fc-event-end bookacti-narrow-event bookacti-event-unavailable bookacti-event-waitlistable'>1488 <a class='fc-event fc-event-start fc-event-end bookacti-narrow-event bookacti-event-unavailable bookacti-event-waitlistable'> 1488 1489 <div class='fc-event-main'> 1489 1490 <div class='fc-event-time'><span>7:00 - 8:30</span></div> 1490 <div class='fc-event-title -container'><div class='fc-event-title'><?php esc_html_e( 'My event', 'booking-activities' ); ?></div></div>1491 <div class='fc-event-title'><?php esc_html_e( 'My event', 'booking-activities' ); ?></div> 1491 1492 <div class='bookacti-availability-container'> 1492 1493 <span class='bookacti-available-places bookacti-booked bookacti-full'> -
booking-activities/trunk/functions/functions-templates.php
r3475786 r3730814 148 148 /** 149 149 * Retrieve template activities list 150 * @version 1.1 6.4150 * @version 1.19.0 151 151 * @param array $activities see bookacti_get_activities_by_template 152 152 * @param int $template_id … … 178 178 <div 179 179 class='bookacti-activity-draggable' 180 data-event='{"title": "<?php echo htmlentities( esc_attr( $title ), ENT_QUOTES ); ?>", "duration": "<?php echo esc_attr( $duration ); ?>", " textColor": "<?php echo esc_attr( $color ) ?>", "color": "<?php echo esc_attr( $activity[ 'color' ] ); ?>", "extendedProps": { "activity_id": <?php echo intval( $activity[ 'id' ] ); ?> } }'180 data-event='{"title": "<?php echo htmlentities( esc_attr( $title ), ENT_QUOTES ); ?>", "duration": "<?php echo esc_attr( $duration ); ?>", "contrastColor": "<?php echo esc_attr( $color ) ?>", "color": "<?php echo esc_attr( $activity[ 'color' ] ); ?>", "extendedProps": { "activity_id": <?php echo intval( $activity[ 'id' ] ); ?> } }' 181 181 data-activity-id='<?php echo esc_attr( $activity[ 'id' ] ); ?>' 182 182 data-duration='<?php echo esc_attr( $duration ); ?>' … … 891 891 /** 892 892 * Display a promo area of Prices and Credits add-on 893 * @version 1.1 6.46893 * @version 1.19.0 894 894 * @param string $type 895 895 */ … … 942 942 ?> 943 943 <div class='bookacti-promo-events-examples'> 944 <a class='fc- timegrid-event fc-v-event fc-event fc-event-start fc-event-end bookacti-narrow-event'>944 <a class='fc-event fc-event-start fc-event-end bookacti-narrow-event'> 945 945 <div class='fc-event-main'> 946 946 <div class='fc-event-time'><span>7:00 - 8:30</span></div> 947 <div class='fc-event-title -container'><div class='fc-event-title'><?php echo $event_name; ?></div></div>947 <div class='fc-event-title'><?php echo $event_name; ?></div> 948 948 <div class='bookacti-price-container'> 949 949 <span class='bookacti-price bookacti-promo'>$30</span> … … 958 958 </div> 959 959 </a> 960 <a class='fc- timegrid-event fc-v-event fc-event fc-event-start fc-event-end bookacti-narrow-event'>960 <a class='fc-event fc-event-start fc-event-end bookacti-narrow-event'> 961 961 <div class='fc-event-main'> 962 962 <div class='fc-event-time'><span>7:00 - 8:30</span></div> 963 <div class='fc-event-title -container'><div class='fc-event-title'><?php echo $event_name; ?></div></div>963 <div class='fc-event-title'><?php echo $event_name; ?></div> 964 964 965 965 <div class='bookacti-price-container'> … … 975 975 </div> 976 976 </a> 977 <a class='fc- timegrid-event fc-v-event fc-event fc-event-start fc-event-end bookacti-narrow-event'>977 <a class='fc-event fc-event-start fc-event-end bookacti-narrow-event'> 978 978 <div class='fc-event-main'> 979 979 <div class='fc-event-time'><span>7:00 - 8:30</span></div> 980 <div class='fc-event-title -container'><div class='fc-event-title'><?php echo $event_name; ?></div></div>980 <div class='fc-event-title'><?php echo $event_name; ?></div> 981 981 <div class='bookacti-price-container'> 982 982 <span class='bookacti-price bookacti-promo'> -
booking-activities/trunk/js/booking-method-calendar.js
r3494795 r3730814 174 174 * Go to a specific date in calendar 175 175 * @since 1.12.0 176 * @version 1.1 5.12176 * @version 1.19.0 177 177 */ 178 178 $j( 'body' ).on( 'change', '.bookacti-go-to-datepicker', function() { 179 var go_to_button = $j( this ). prev( '.fc-goTo-button' );179 var go_to_button = $j( this ).closest( '.fc-goTo-button' ); 180 180 if( ! go_to_button.find( '.bookacti-spinner' ).length ) { go_to_button.append( '<span class="bookacti-spinner"></span>' ); } 181 181 … … 187 187 var date = $j( this ).val(); 188 188 var booking_system_id = $j( this ).closest( '.bookacti-booking-system' ).length ? $j( this ).closest( '.bookacti-booking-system' ).attr( 'id' ) : 'bookacti-template-calendar'; 189 if( ! date || typeof bookacti.fc_calendar[ booking_system_id ] === 'undefined' ) { return; }190 if( date.length !== 10 || ! /^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/.test( date ) ) { return; }189 if( ! date || typeof bookacti.fc_calendar[ booking_system_id ] === 'undefined' ) { go_to_button.find( '.bookacti-spinner' ).remove(); return; } 190 if( date.length !== 10 || ! /^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/.test( date ) ) { go_to_button.find( '.bookacti-spinner' ).remove(); return; } 191 191 192 192 bookacti_go_to_date = setTimeout( function() { … … 273 273 /** 274 274 * Initialize the calendar 275 * @version 1.1 7.1275 * @version 1.19.0 276 276 * @param {HTMLElement} booking_system 277 277 * @param {boolean} reload_events … … 292 292 // See https://fullcalendar.io/docs/ 293 293 var init_data = { 294 className: 'fc', 294 295 locale: bookacti_localized.fullcalendar_locale, 295 296 timeZone: bookacti_localized.fullcalendar_timezone, … … 313 314 slotEventOverlap: false, 314 315 eventMinHeight: event_min_height, 316 dayNarrowWidth: bookacti_localized?.event_narrow_width ?? 70, 315 317 nextDayThreshold: next_day_threshold, 316 318 slotMinTime: slot_min_time, … … 326 328 center: 'title', 327 329 end: 'dayGridMonth,timeGridWeek,timeGridDay' 330 }, 331 332 toolbarClass: 'fc-toolbar', 333 headerToolbarClass: 'fc-header-toolbar', 334 toolbarSectionClass: 'fc-toolbar-chunk', 335 toolbarTitleClass: 'fc-toolbar-title', 336 buttonGroupClass: 'fc-button-group', 337 338 /** 339 * Add classes to toolbar buttons 340 * @since 1.19.0 341 * @param {Object} info { 342 * @type {String} name - the button’s name (e.g. prev, next, today, or a view name like dayGridMonth) 343 * @type {String} text - the button’s localized display text 344 * @type {Boolean} isPrimary - true if the button is styled as the primary action 345 * @type {Boolean} isSelected - true if the button is currently in the selected/active state 346 * @type {Boolean} isDisabled - true if the button is disabled 347 * @type {Boolean} isIconOnly - true if the button renders as an icon without accompanying text 348 * @type {Object|null} buttonGroup - info about the enclosing button group, or null if the button is not part of a group. When present, an object with a hasSelection boolean (see above) 349 * } 350 * @returns {String} 351 */ 352 buttonClass: function( info ) { 353 var return_object = { 'class_names': [ 'fc-button' ] }; 354 355 if( info.isSelected ) { 356 return_object.class_names.push( 'fc-button-active' ); 357 } 358 359 booking_system.trigger( 'bookacti_calendar_button_class_names', [ return_object, info ] ); 360 361 return return_object.class_names.join( ' ' ); 328 362 }, 329 363 … … 355 389 356 390 391 views: { 392 dayGrid: { 393 tableBodyClass: 'fc-daygrid-body', 394 dayCellInnerClass: 'fc-daygrid-day-events' 395 }, 396 timeGrid: { 397 tableBodyClass: 'fc-timegrid-body', 398 slotHeaderClass: 'fc-timegrid-slot fc-timegrid-slot-label', 399 slotLaneClass: 'fc-timegrid-slot', 400 dayLaneInnerClass: 'fc-timegrid-col-events' 401 } 402 }, 403 404 405 /** 406 * Add classes to the the header row (where day names appear) 407 * @since 1.19.0 408 * @param {Object} info { 409 * @type {Boolean} borderlessX - true when the table has no left or right outer borders 410 * @type {Boolean} borderlessTop - true when the table has no top outer border 411 * @type {Boolean} borderlessBottom - true when the table has no bottom outer border 412 * @type {Int} multiMonthColumns - in MultiMonth view, the number of month columns rendered per row. 0 in other views 413 * @type {Boolean} isSticky - true when the element is rendered in a sticky position (e.g. the header row stays pinned while scrolling). Only available in tableHeaderClass 414 * } 415 * @returns {String} 416 */ 417 tableHeaderClass: function( info ) { 418 var return_object = { 'class_names': [ 'fc-col-header' ] }; 419 420 if( info.isSticky ) { 421 return_object.class_names.push( 'fc-scrollgrid-section-sticky' ); 422 } 423 424 booking_system.trigger( 'bookacti_calendar_table_header_class_names', [ return_object, info ] ); 425 426 return return_object.class_names.join( ' ' ); 427 }, 428 429 357 430 /** 358 431 * Add classes to the view 359 432 * @since 1.15.0 360 * @version 1.1 5.4433 * @version 1.19.0 361 434 * @param {Object} info { 362 435 * @type {FullCalendar.ViewApi} view 363 436 * @type {HTMLElement} el 364 437 * } 365 * @returns {Array} 366 */ 367 viewClassNames: function( info ) { 368 var return_object = { 'class_names': [] }; 438 * @returns {String} 439 */ 440 viewClass: function( info ) { 441 var return_object = { 'class_names': [ 'fc-view', 'fc-' + info.view.type + '-view' ] }; 442 443 // Add legacy FC classes 444 if( info.view.type.indexOf( 'dayGrid' ) > -1 ) { 445 return_object.class_names.push( 'fc-daygrid' ); 446 } 447 if( info.view.type.indexOf( 'timeGrid' ) > -1 ) { 448 return_object.class_names.push( 'fc-timegrid' ); 449 } 369 450 370 451 // Always enable "Today" button, except on today's view … … 377 458 booking_system.trigger( 'bookacti_calendar_view_class_names', [ return_object, info ] ); 378 459 379 return return_object.class_names ;460 return return_object.class_names.join( ' ' ); 380 461 }, 381 462 … … 384 465 * Add classes to the day header 385 466 * @since 1.15.0 467 * @version 1.19.0 386 468 * @param {Object} info { 387 469 * @type {Date} date 388 * @type {String} dayNumberText470 * @type {String} text 389 471 * @type {Boolean} isPast 390 472 * @type {Boolean} isFuture 391 473 * @type {Boolean} isToday 392 474 * @type {Boolean} isOther 475 * @type {Boolean} inPopover 476 * @type {Boolean} hasNavLink 477 * @type {HTMLElement} el 478 * @type {Int} level 393 479 * } 394 * @returns {Array} 395 */ 396 dayHeaderClassNames: function( info ) { 397 var return_object = { 'class_names': [] }; 480 * @returns {String} 481 */ 482 dayHeaderClass: function( info ) { 483 var return_object = { 'class_names': [ 'fc-col-header-cell' ] }; 484 485 var day_names = { 0: 'sun', 1: 'mon', 2: 'tue', 3: 'wed', 4: 'thu', 5: 'fri', 6: 'sat' }; 486 return_object.class_names.push( 'fc-day-' + day_names[ info.date.getUTCDay() ] ); 487 488 if( info.inPopover ) { 489 return_object.class_names.push( 'fc-popover-header' ); 490 } 398 491 399 492 // Gray out days off … … 413 506 booking_system.trigger( 'bookacti_calendar_day_header_class_names', [ return_object, info ] ); 414 507 415 return return_object.class_names ;508 return return_object.class_names.join( ' ' ); 416 509 }, 417 510 … … 420 513 * Add classes to the day cell 421 514 * @since 1.15.0 515 * @version 1.19.0 422 516 * @param {Object} info { 423 517 * @type {Date} date 518 * @type {String} text 519 * @type {String} textParts 424 520 * @type {String} dayNumberText 521 * @type {String} weekdayText 522 * @type {String} monthText 523 * @type {Boolean} isDisabled 425 524 * @type {Boolean} isPast 426 525 * @type {Boolean} isFuture 427 526 * @type {Boolean} isToday 428 527 * @type {Boolean} isOther 528 * @type {Boolean} isMajor 529 * @type {Boolean} isNarrow 530 * @type {Boolean} inPopover 531 * @type {Boolean} hasNavLink 532 * @type {Object} options - the calendar options object, useful for reading settings like businessHours 533 * @type {Object} resource - if the date cell lives under a specific resource in vertical resource view, this value will be the Resource Object 534 * @type {HTMLElement} el 429 535 * } 430 * @returns {Array} 431 */ 432 dayCellClassNames: function( info ) { 433 var return_object = { 'class_names': [] }; 536 * @returns {String} 537 */ 538 dayCellClass: function( info ) { 539 var return_object = { 'class_names': [ 'fc-daygrid-day' ] }; 540 541 var day_names = { 0: 'sun', 1: 'mon', 2: 'tue', 3: 'wed', 4: 'thu', 5: 'fri', 6: 'sat' }; 542 return_object.class_names.push( 'fc-day-' + day_names[ info.date.getUTCDay() ] ); 543 544 if( info.isDisabled ) { 545 return_object.class_names.push( 'fc-day-disabled' ); 546 } 547 else { 548 if( info.isToday ) { 549 return_object.class_names.push( 'fc-day-today' ); 550 } 551 if( info.isPast ) { 552 return_object.class_names.push( 'fc-day-past' ); 553 } 554 if( info.isFuture ) { 555 return_object.class_names.push( 'fc-day-future' ); 556 } 557 if( info.isOther ) { 558 return_object.class_names.push( 'fc-day-other' ); 559 } 560 if( info.inPopover ) { 561 return_object.class_names.push( 'fc-popover-body' ); 562 } 563 } 434 564 435 565 // Gray out days off … … 449 579 booking_system.trigger( 'bookacti_calendar_day_cell_class_names', [ return_object, info ] ); 450 580 451 return return_object.class_names; 581 return return_object.class_names.join( ' ' ); 582 }, 583 584 585 /** 586 * Add classes to the Month text within the day cell 587 * @since 1.19.0 588 * @param {Object} info Same as dayCellClass 589 * @returns {String} 590 */ 591 dayCellTopInnerClass: function( info ) { 592 var return_object = { 'class_names': [] }; 593 594 return_object.class_names.push( info.text !== info.dayNumberText ? 'fc-daygrid-day-number' : 'fc-daygrid-month-start' ); 595 596 booking_system.trigger( 'bookacti_calendar_day_cell_top_inner_class_names', [ return_object, info ] ); 597 598 return return_object.class_names.join( ' ' ); 452 599 }, 453 600 … … 540 687 * It is called every time the associated event data changes 541 688 * @since 1.15.0 542 * @version 1.17.1 689 * @version 1.19.0 690 * @param {Object} info { 691 * @type {FullCalendar.EventApi} event 692 * @type {String} timeText 693 * @type {Boolean} isStart 694 * @type {Boolean} isEnd 695 * @type {Boolean} isMirror 696 * @type {Boolean} isPast 697 * @type {Boolean} isFuture 698 * @type {Boolean} isToday 699 * @type {String} color 700 * @type {String} contrastColor 701 * @type {Boolean} isInteractive 702 * @type {Boolean} isNarrow 703 * @type {Boolean} isShort 704 * @type {Int} level 705 * @type {String} timeClass 706 * @type {String} titleClass 707 * @type {Object} options - the calendar options object, useful for reading settings like eventOverlap 708 * @type {Object} resource - if the date cell lives under a specific resource in vertical resource view, this value will be the Resource Object 709 * @type {HTMLElement} el 710 * @type {FullCalendar.ViewApi} view The current View Object. 711 * } 712 * @returns {String} 713 */ 714 eventClass: function( info ) { 715 var return_object = { 'class_names': [ 'fc-event' ] }; 716 717 if( info.isSelected ) { 718 return_object.class_names.push( 'fc-event-selected' ); 719 } 720 if( info.isStart ) { 721 return_object.class_names.push( 'fc-event-start' ); 722 } 723 if( info.isEnd ) { 724 return_object.class_names.push( 'fc-event-end' ); 725 } 726 if( info.isPast ) { 727 return_object.class_names.push( 'fc-event-past' ); 728 } 729 if( info.isToday ) { 730 return_object.class_names.push( 'fc-event-today' ); 731 } 732 if( info.isFuture ) { 733 return_object.class_names.push( 'fc-event-future' ); 734 } 735 736 // Check if event exists 737 if( typeof info.event === 'undefined' ) { return return_object.class_names.join( ' ' ); } 738 var event_id = typeof info.event.groupId !== 'undefined' ? parseInt( info.event.groupId ) : parseInt( info.event.id ); 739 if( typeof bookacti.booking_system[ booking_system_id ][ 'events_data' ][ event_id ] === 'undefined' ) { return return_object.class_names; } 740 741 // Directly return if the event is hidden, or resizing or dragging to avoid overload 742 if( info.isMirror || info.event.display === 'none' ) { return return_object.class_names.join( ' ' ); } 743 744 // Display element as picked if they actually are 745 var event_start = moment.utc( info.event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' ); 746 $j.each( bookacti.booking_system[ booking_system_id ][ 'picked_events' ], function( i, picked_event ) { 747 var picked_event_start = moment.utc( picked_event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' ); 748 if( picked_event.id == event_id && event_start === picked_event_start ) { 749 return_object.class_names.push( 'bookacti-picked-event' ); 750 } 751 }); 752 753 // Add a class if the current user has booked this event 754 var event_start_formatted = moment.utc( info.event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' ); 755 if( typeof bookacti.booking_system[ booking_system_id ][ 'bookings' ][ event_id ] !== 'undefined' ) { 756 if( typeof bookacti.booking_system[ booking_system_id ][ 'bookings' ][ event_id ][ event_start_formatted ] !== 'undefined' ) { 757 var current_user_bookings = parseInt( bookacti.booking_system[ booking_system_id ][ 'bookings' ][ event_id ][ event_start_formatted ][ 'current_user_bookings' ] ); 758 if( current_user_bookings ) { return_object.class_names.push( 'bookacti-event-booked-by-current-user' ); } 759 } 760 } 761 762 // If the event or its group is not available, disable the event 763 var bookings_only = bookacti.booking_system[ booking_system_id ][ 'bookings_only' ] == 1 ? true : false; 764 if( ! bookings_only ) { 765 var is_reschedule = booking_system_id === 'bookacti-booking-system-reschedule'; 766 var is_available = bookacti_is_event_available( booking_system, info.event ); 767 var has_available_group = bookacti_is_event_in_available_group( booking_system, info.event ); 768 if( ! is_available && ( is_reschedule || ! has_available_group ) ) { 769 return_object.class_names.push( 'bookacti-event-unavailable' ); 770 } 771 } 772 773 // Add classes to the event according to its expected size 774 if( info.view.type.indexOf( 'dayGrid' ) > -1 || info.view.type.indexOf( 'timeGrid' ) > -1 ) { 775 var event_size_classes = bookacti_fc_get_event_size_classes( booking_system, info.event, info.view ); 776 if( event_size_classes.length ) { 777 return_object.class_names = $j.merge( return_object.class_names, event_size_classes ); 778 } 779 } 780 781 booking_system.trigger( 'bookacti_calendar_event_class_names', [ return_object, info ] ); 782 783 return return_object.class_names.join( ' ' ); 784 }, 785 786 787 /** 788 * Add classes to the the element before the "inner" wrapper of the event 789 * @since 1.19.0 790 * @param {Object} info Same as eventClass 791 * @returns {String} 792 */ 793 eventBeforeClass: function( info ) { 794 var return_object = { 'class_names': [] }; 795 796 booking_system.trigger( 'bookacti_calendar_event_before_class_names', [ return_object, info ] ); 797 798 return return_object.class_names.join( ' ' ); 799 }, 800 801 802 /** 803 * Add classes to the the element after the "inner" wrapper of the event 804 * @since 1.19.0 805 * @param {Object} info Same as eventClass 806 * @returns {String} 807 */ 808 eventAfterClass: function( info ) { 809 var return_object = { 'class_names': [] }; 810 811 booking_system.trigger( 'bookacti_calendar_event_after_class_names', [ return_object, info ] ); 812 813 return return_object.class_names.join( ' ' ); 814 }, 815 816 817 /** 818 * Add classes to the the "inner" wrapper of the event 819 * @since 1.19.0 820 * @param {Object} info Same as eventClass 821 * @returns {String} 822 */ 823 eventInnerClass: function( info ) { 824 var return_object = { 'class_names': [ 'fc-event-main' ] }; 825 826 booking_system.trigger( 'bookacti_calendar_event_inner_class_names', [ return_object, info ] ); 827 828 return return_object.class_names.join( ' ' ); 829 }, 830 831 832 /** 833 * Add classes to the time element within the "inner" 834 * @since 1.19.0 835 * @param {Object} info Same as eventClass 836 * @returns {String} 837 */ 838 eventTimeClass: function( info ) { 839 var return_object = { 'class_names': [ 'fc-event-time' ] }; 840 841 booking_system.trigger( 'bookacti_calendar_event_time_class_names', [ return_object, info ] ); 842 843 return return_object.class_names.join( ' ' ); 844 }, 845 846 847 /** 848 * Add classes to the title element within the "inner" 849 * @since 1.19.0 850 * @param {Object} info Same as eventClass 851 * @returns {String} 852 */ 853 eventTitleClass: function( info ) { 854 var return_object = { 'class_names': [ 'fc-event-title' ] }; 855 856 booking_system.trigger( 'bookacti_calendar_event_title_class_names', [ return_object, info ] ); 857 858 return return_object.class_names.join( ' ' ); 859 }, 860 861 862 /** 863 * Add classes to the more-link element 864 * @since 1.19.0 865 * @param {Object} info { 866 * @type {Integer} num - the number of hidden events 867 * @type {String} text - the localized text that would appear in the link by default 868 * @type {String} numericText - the numeric portion of the text (e.g. "+5") 869 * @type {String} longText - the full localized text (e.g. "+5 events") 870 * @type {Boolean} isNarrow 871 * } 872 * @returns {String} 873 */ 874 moreLinkClass: function( info ) { 875 var return_object = { 'class_names': [ 'fc-more-link' ] }; 876 877 booking_system.trigger( 'bookacti_calendar_more_link_class_names', [ return_object, info ] ); 878 879 return return_object.class_names.join( ' ' ); 880 }, 881 882 883 popoverClass: 'fc-popover bookacti-fc-popover bookacti-fc-popover-' + booking_system_id, 884 popoverCloseClass: 'fc-popover-close', 885 886 887 /** 888 * Add HTML elements in the event 889 * It is called every time the associated event data changes 890 * @since 1.15.0 891 * @version 1.19.0 543 892 * @param {Object} info { 544 893 * @type {FullCalendar.EventApi} event … … 554 903 * @returns {Array} 555 904 */ 556 eventClassNames: function( info ) {557 var return_object = { 'class_names': [] };558 559 // Check if event exists560 if( typeof info.event === 'undefined' ) { return return_object.class_names; }561 var event_id = typeof info.event.groupId !== 'undefined' ? parseInt( info.event.groupId ) : parseInt( info.event.id );562 if( typeof bookacti.booking_system[ booking_system_id ][ 'events_data' ][ event_id ] === 'undefined' ) { return return_object.class_names; }563 564 // Directly return if the event is hidden, or resizing or dragging to avoid overload565 if( info.isMirror || info.event.display === 'none' ) { return return_object.class_names; }566 567 // Display element as picked if they actually are568 var event_start = moment.utc( info.event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' );569 $j.each( bookacti.booking_system[ booking_system_id ][ 'picked_events' ], function( i, picked_event ) {570 var picked_event_start = moment.utc( picked_event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' );571 if( picked_event.id == event_id && event_start === picked_event_start ) {572 return_object.class_names.push( 'bookacti-picked-event' );573 }574 });575 576 // Add a class if the current user has booked this event577 var event_start_formatted = moment.utc( info.event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' );578 if( typeof bookacti.booking_system[ booking_system_id ][ 'bookings' ][ event_id ] !== 'undefined' ) {579 if( typeof bookacti.booking_system[ booking_system_id ][ 'bookings' ][ event_id ][ event_start_formatted ] !== 'undefined' ) {580 var current_user_bookings = parseInt( bookacti.booking_system[ booking_system_id ][ 'bookings' ][ event_id ][ event_start_formatted ][ 'current_user_bookings' ] );581 if( current_user_bookings ) { return_object.class_names.push( 'bookacti-event-booked-by-current-user' ); }582 }583 }584 585 // If the event or its group is not available, disable the event586 var bookings_only = bookacti.booking_system[ booking_system_id ][ 'bookings_only' ] == 1 ? true : false;587 if( ! bookings_only ) {588 var is_reschedule = booking_system_id === 'bookacti-booking-system-reschedule';589 var is_available = bookacti_is_event_available( booking_system, info.event );590 var has_available_group = bookacti_is_event_in_available_group( booking_system, info.event );591 if( ! is_available && ( is_reschedule || ! has_available_group ) ) {592 return_object.class_names.push( 'bookacti-event-unavailable' );593 }594 }595 596 // Add classes to the event according to its expected size597 if( info.view.type.indexOf( 'dayGrid' ) > -1 || info.view.type.indexOf( 'timeGrid' ) > -1 ) {598 var event_size_classes = bookacti_fc_get_event_size_classes( booking_system, info.event, info.view );599 if( event_size_classes.length ) {600 return_object.class_names = $j.merge( return_object.class_names, event_size_classes );601 }602 }603 604 booking_system.trigger( 'bookacti_calendar_event_class_names', [ return_object, info ] );605 606 return return_object.class_names;607 },608 609 610 /**611 * Add HTML elements in the event612 * It is called every time the associated event data changes613 * @since 1.15.0614 * @version 1.15.16615 * @param {Object} info {616 * @type {FullCalendar.EventApi} event617 * @type {String} timeText618 * @type {Boolean} isStart619 * @type {Boolean} isEnd620 * @type {Boolean} isMirror621 * @type {Boolean} isPast622 * @type {Boolean} isFuture623 * @type {Boolean} isToday624 * @type {FullCalendar.ViewApi} view The current View Object.625 * }626 * @returns {Array}627 */628 905 eventContent: function( info ) { 629 906 var return_object = { 'domNodes': [] }; … … 656 933 657 934 // Display event title 658 var title_div = $j( '<div></div>', { 'class': 'fc-event-title -container', 'html': '<div class="fc-event-title">' + info.event.title + '</div>'} );935 var title_div = $j( '<div></div>', { 'class': 'fc-event-title', 'html': info.event.title } ); 659 936 return_object.domNodes.push( title_div[ 0 ] ); 660 937 … … 726 1003 727 1004 if( bookacti_localized.calendar_localization === 'wp_settings' ) { 728 var fc_time_format_obj = bookacti_convert_php_datetime_format_to_fc_date_formatting_object( bookacti_localized.wp_time_format );729 init_data.firstDay = bookacti_localized.wp_start_of_week;730 init_data.slot LabelFormat = fc_time_format_obj;731 init_data.eventTimeFormat = fc_time_format_obj;1005 var fc_time_format_obj = bookacti_convert_php_datetime_format_to_fc_date_formatting_object( bookacti_localized.wp_time_format ); 1006 init_data.firstDay = bookacti_localized.wp_start_of_week; 1007 init_data.slotHeaderFormat = fc_time_format_obj; 1008 init_data.eventTimeFormat = fc_time_format_obj; 732 1009 } 733 1010 … … 838 1115 * Add CSS class to the picked events on calendar, remove it from the others 839 1116 * @since 1.8.9 840 * @version 1.1 7.01117 * @version 1.19.0 841 1118 * @param {HTMLElement} booking_system 842 1119 */ 843 1120 function bookacti_refresh_picked_events_on_calendar( booking_system ) { 844 1121 var booking_system_id = booking_system.attr( 'id' ); 845 var picked_events = bookacti.booking_system[ booking_system_id ][ 'picked_events' ];1122 var picked_events = bookacti.booking_system[ booking_system_id ][ 'picked_events' ]; 846 1123 847 1124 // Unpick all event on the calendar … … 853 1130 var picked_event_start = moment.utc( picked_event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' ); 854 1131 855 // Because of popover and long events (spreading on multiple days), 856 // the same event may appear twice, so we need to apply changes on each 857 var elements = booking_system.find( '.fc-event[data-event-id="' + picked_event.id + '"][data-event-start="' + picked_event_start + '"]' ); 858 elements.addClass( 'bookacti-picked-event' ); 1132 // Add class to calendar events 1133 booking_system.find( '.fc-event[data-event-id="' + picked_event.id + '"][data-event-start="' + picked_event_start + '"]' ).addClass( 'bookacti-picked-event' ); 1134 1135 // Add class to popover events 1136 $j( '.bookacti-fc-popover-' + booking_system_id + ' .fc-event[data-event-id="' + picked_event.id + '"][data-event-start="' + picked_event_start + '"]' ).addClass( 'bookacti-picked-event' ); 859 1137 }); 860 1138 } … … 866 1144 /** 867 1145 * Remove CSS class from all picked events on calendar 868 * @version 1.1 5.01146 * @version 1.19.0 869 1147 * @param {HTMLElement} booking_system 870 1148 */ 871 1149 function bookacti_unpick_all_events_on_calendar( booking_system ) { 1150 var booking_system_id = booking_system.attr( 'id' ); 1151 872 1152 booking_system.find( '.bookacti-picked-event' ).removeClass( 'bookacti-picked-event' ); 1153 $j( '.bookacti-fc-popover-' + booking_system_id + ' .bookacti-picked-event' ).removeClass( 'bookacti-picked-event' ); 1154 873 1155 booking_system.trigger( 'bookacti_unpick_all_events_on_calendar' ); 874 1156 } … … 878 1160 * Get CSS classes accoding to the event expected size on timeGrid or dayGrid view 879 1161 * @since 1.15.0 (was bookacti_add_class_according_to_event_size) 1162 * @version 1.19.0 880 1163 * @param {HTMLElement} booking_system 881 1164 * @param {FullCalendar.EventApi} fc_event … … 903 1186 var slot_minutes = ( parseInt( slot_duration.substr( 0, 2 ) ) * 60 ) + parseInt( slot_duration.substr( -2 ) ); 904 1187 var event_minutes = parseInt( moment.duration( moment.utc( fc_event.end ).diff( moment.utc( fc_event.start ) ) ).asMinutes() ); 905 var slot_height = booking_system.find( '.fc-timegrid-slot' ).length ? booking_system.find( '.fc-timegrid-slot' ). outerHeight() : 0;1188 var slot_height = booking_system.find( '.fc-timegrid-slot' ).length ? booking_system.find( '.fc-timegrid-slot' ).first().outerHeight() : 0; 906 1189 907 1190 // If the slot is not rendered, compute its expected height from the line-height … … 924 1207 925 1208 // Compute expected width 926 var column_width = booking_system.find( '.fc-col-header-cell .fc-day').innerWidth();1209 var column_width = booking_system.find( '.fc-col-header-cell' ).first().innerWidth(); 927 1210 928 1211 // Withdraw the margins (0 2.5% 0 2px) … … 938 1221 /** 939 1222 * Enter loading state and prevent user from doing anything else 940 * @version 1.1 5.41223 * @version 1.19.0 941 1224 * @param {HTMLElement} calendar 942 1225 */ … … 944 1227 calendar.find( '.fc-toolbar button:disabled' ).addClass( 'bookacti-was-disabled' ); 945 1228 calendar.find( '.fc-toolbar button' ).attr( 'disabled', true ); 946 calendar.find( '.fc-view -harness' ).append( '<div class="bookacti-loading-overlay"><div class="bookacti-loading-overlay-content">' + bookacti_get_loading_html() + '</div></div>' );1229 calendar.find( '.fc-view' ).after( '<div class="bookacti-loading-overlay"><div class="bookacti-loading-overlay-content">' + bookacti_get_loading_html() + '</div></div>' ); 947 1230 } 948 1231 … … 962 1245 /** 963 1246 * Hide rows without any events on Day Grid views 964 * @version 1.1 6.101247 * @version 1.19.0 965 1248 * @param {HTMLElement} booking_system 966 1249 */ … … 976 1259 var fc_events = bookacti.fc_calendar[ booking_system_id ].getEvents(); 977 1260 978 calendar.find( ' tr.bookacti-no-events-row' ).remove();979 calendar.find( '.fc-daygrid-body > table > tbody > tr' ).removeClass( 'bookacti-daygrid-week-month-start bookacti-daygrid-week-disabled bookacti-daygrid-week-empty' );980 981 calendar.find( '.fc-daygrid-body > table > tbody > tr' ).each( function() {1261 calendar.find( '[role="row"].bookacti-no-events-row' ).remove(); 1262 calendar.find( '.fc-daygrid-body [role="row"]' ).removeClass( 'bookacti-daygrid-week-month-start bookacti-daygrid-week-disabled bookacti-daygrid-week-empty' ); 1263 1264 calendar.find( '.fc-daygrid-body [role="row"]' ).each( function() { 982 1265 var are_days_empty = true; 983 1266 var are_days_disabled = true; 984 $j( this ).find( '> td' ).each( function() {1267 $j( this ).find( '> [role="gridcell"]' ).each( function() { 985 1268 var date = $j( this ).data( 'date' ); 986 1269 if( ! date ) { return true; } // continue … … 1016 1299 }); 1017 1300 1018 if( ! calendar.find( '.fc-daygrid-body > table > tbody > tr:visible' ).length ) { 1019 var colspan = calendar.find( '.fc-daygrid-body > table > tbody > tr:first > td' ).length; 1301 if( ! calendar.find( '.fc-daygrid-body [role="row"]:visible' ).length ) { 1020 1302 var no_events = typeof bookacti_localized.no_events !== 'undefined' ? bookacti_localized.no_events : 'No events.'; 1021 calendar.find( '.fc-daygrid-body > table > tbody' ).append( '<tr class="bookacti-no-events-row" colspan="' + colspan + '"><td><div class="bookacti-no-events">' + no_events + '</div></td></tr>' );1303 calendar.find( '.fc-daygrid-body [role="row"]:last' ).after( '<div role="row" class="bookacti-no-events-row"><div class="bookacti-no-events">' + no_events + '</div></div>' ); 1022 1304 } else { 1023 1305 bookacti_booking_method_rerender_events( booking_system ); -
booking-activities/trunk/js/booking-method-calendar.min.js
r3494795 r3730814 1 $j(document).ready(function(){$j("body").on("bookacti_booking_method_set_up",".bookacti-booking-system",function(a,d,b){d==="calendar"&&$j(this).find(".bookacti-calendar").length&&bookacti_set_calendar_up($j(this),b)});$j("body").on("bookacti_booking_method_update_display_period",".bookacti-booking-system",function(a,d,b){d==="calendar"&&$j(this).find(".bookacti-calendar").length&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&(b={start:b.start?moment.utc(b.start.substr(0,10)).format("YYYY-MM-DD"): 2 null,end:b.end?moment.utc(b.end.substr(0,10)).add(1,"days").format("YYYY-MM-DD"):null},bookacti.fc_calendar[a].setOption("validRange",b)))});$j("body").on("bookacti_booking_method_display_events",".bookacti-booking-system",function(a,d,b){d==="calendar"&&$j(this).find(".bookacti-calendar").length&&bookacti_fc_add_events($j(this),b)});$j("body").on("bookacti_fc_events_added",".bookacti-booking-system",function(){var a=$j(this).attr("id");parseInt(bookacti.booking_system?.[a]?.trim)&&bookacti_fc_hide_daygrid_empty_rows($j(this))}); 3 $j("body").on("bookacti_refetch_events",".bookacti-booking-system",function(a,d){d==="calendar"&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&bookacti.fc_calendar[a].removeAllEvents(),bookacti_get_booking_system_data_by_interval($j(this)))});$j("body").on("bookacti_rerender_events",".bookacti-booking-system",function(a,d){d==="calendar"&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&bookacti.fc_calendar[a].render())});$j("body").on("bookacti_clear_events", 4 ".bookacti-booking-system",function(a,d){d==="calendar"&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&bookacti.fc_calendar[a].removeAllEvents())});$j("body").on("bookacti_booking_system_reloaded",".bookacti-booking-system",function(a,d,b,f){$j(this).find(".bookacti-calendar").length&&bookacti_refresh_picked_events_on_calendar($j(this))});$j("body").on("bookacti_start_loading",".bookacti-booking-system, .bookacti-booking-system-editor",function(a,d){d==="calendar"&&(a=$j(this), 5 a.find(".bookacti-calendar.fc").length?(d=a.attr("id"),bookacti.booking_system[d].loading_number!==0&&a.find(".bookacti-loading-overlay").length||(bookacti_remove_loading_html(a),bookacti_enter_calendar_loading_state(a.find(".bookacti-calendar")))):a.find(".bookacti-loading-container").length||bookacti_add_loading_html(a))});$j("body").on("bookacti_exit_loading_state",".bookacti-booking-system, .bookacti-booking-system-editor",function(a,d){d==="calendar"&&(bookacti_remove_loading_html($j(this)), 6 $j(this).find(".bookacti-calendar").length&&bookacti_exit_calendar_loading_state($j(this).find(".bookacti-calendar")))});$j("body").on("change",".bookacti-go-to-datepicker",function(){var a=$j(this).prev(".fc-goTo-button");a.find(".bookacti-spinner").length||a.append('<span class="bookacti-spinner"></span>');typeof bookacti_go_to_date!=="undefined"&&bookacti_go_to_date&&clearTimeout(bookacti_go_to_date);var d=$j(this).val(),b=$j(this).closest(".bookacti-booking-system").length?$j(this).closest(".bookacti-booking-system").attr("id"): 7 "bookacti-template-calendar";d&&typeof bookacti.fc_calendar[b]!=="undefined"&&d.length===10&&/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/.test(d)&&(bookacti_go_to_date=setTimeout(function(){bookacti.fc_calendar[b].gotoDate(d);a.find(".bookacti-spinner").remove()},750))});$j("body").on("click",".bookacti-booking-system .bookacti-calendar .fc-more",function(){bookacti_refresh_picked_events_on_calendar(booking_system)});$j("body").on("touchstart touchmove touchend touchcancel",".bookacti-booking-system .bookacti-calendar .fc-event", 8 function(a){var d={touchstart:"bookacti_calendar_event_touch_start",touchmove:"bookacti_calendar_event_touch_move",touchend:"bookacti_calendar_event_touch_end",touchcancel:"bookacti_calendar_event_touch_cancel"};if(typeof d[a.type]!=="undefined"){var b=$j(this).closest(".bookacti-booking-system"),f=$j(this),h={id:parseInt(f.data("event-id")),start:moment.utc(f.data("event-start")),end:moment.utc(f.data("event-end"))};b.trigger(d[a.type],[{event:h,el:f,jsEvent:a}])}});$j("body").on("bookacti_pick_event", 9 ".bookacti-booking-system, #bookacti-template-calendar",function(a,d,b,f){$j(this).find(".bookacti-calendar").length&&bookacti_refresh_picked_events_on_calendar($j(this))});$j("body").on("bookacti_unpick_all_events",".bookacti-booking-system",function(){$j(this).find(".bookacti-calendar").length&&bookacti_unpick_all_events_on_calendar($j(this))});$j("body").on("bookacti_events_unpicked bookacti_unpick_all_events",".bookacti-booking-system",function(){$j(this).find(".bookacti-calendar, .bookacti-calendar-title").hasClass("bookacti-hidden-field")&& 10 ($j(this).find(".bookacti-calendar, .bookacti-calendar-title").removeClass("bookacti-hidden-field"),bookacti_booking_method_rerender_events($j(this)))})}); 11 function bookacti_set_calendar_up(a,d){d=d?1:0;var b=a.attr("id");bookacti.booking_system[b].load_events=!1;var f=bookacti_get_display_period(a),h=typeof bookacti.booking_system[b].display_data!=="undefined"?bookacti.booking_system[b].display_data:{},l=typeof bookacti_localized.event_tiny_height!=="undefined"?parseInt(bookacti_localized.event_tiny_height):32,q=typeof h.slotMinTime!=="undefined"?h.slotMinTime:"00:00";h=typeof h.slotMaxTime!=="undefined"?h.slotMaxTime:"24:00";var r=moment.utc("1992-12-26 "+ 12 q).add(1,"minutes").format("HH:mm");f={locale:bookacti_localized.fullcalendar_locale,timeZone:bookacti_localized.fullcalendar_timezone,now:new Date(bookacti_localized.current_time.substr(0,10)),initialView:a.find(".bookacti-calendar:first").width()<bookacti_localized.initial_view_threshold?"timeGridDay":"timeGridWeek",allDaySlot:!1,defaultAllDay:!1,fixedWeekCount:!1,height:"auto",contentHeight:"auto",editable:!1,droppable:!1,eventDurationEditable:!1,showNonCurrentDates:!1,dayMaxEvents:!1,moreLinkClick:"popover", 13 eventDisplay:"block",dragRevertDuration:0,eventShortHeight:0,slotDuration:"00:30",slotEventOverlap:!1,eventMinHeight:l,nextDayThreshold:r,slotMinTime:q,slotMaxTime:h,validRange:{start:f.start?moment.utc(f.start.substr(0,10)).format("YYYY-MM-DD"):null,end:f.end?moment.utc(f.end.substr(0,10)).add(1,"days").format("YYYY-MM-DD"):null},headerToolbar:{start:"prev,next today",center:"title",end:"dayGridMonth,timeGridWeek,timeGridDay"},events:function(c,e,g){e([])},eventDataTransform:function(c){a.trigger("bookacti_calendar_event_data_transform", 14 [c]);return c},viewClassNames:function(c){var e={class_names:[]};a.find(".fc-today-button").length&&!a.find(".fc-day-today").length&&(moment().isBetween(c.view.currentStart,c.view.currentEnd,"day","[)")||a.find(".fc-today-button").attr("disabled",!1));a.trigger("bookacti_calendar_view_class_names",[e,c]);return e.class_names},dayHeaderClassNames:function(c){var e={class_names:[]};if(typeof bookacti.booking_system[b].days_off!=="undefined"){var g=bookacti.booking_system[b].days_off,t=moment.utc(c.date); 15 $j.each(g,function(m,p){m=moment.utc(p.from+" 00:00:00");p=moment.utc(p.to+" 23:59:59");if(t.isBetween(m,p,"second","[]"))return e.class_names.push("fc-day-disabled"),!1})}a.trigger("bookacti_calendar_day_header_class_names",[e,c]);return e.class_names},dayCellClassNames:function(c){var e={class_names:[]};if(typeof bookacti.booking_system[b].days_off!=="undefined"){var g=bookacti.booking_system[b].days_off,t=moment.utc(c.date);$j.each(g,function(m,p){m=moment.utc(p.from+" 00:00:00");p=moment.utc(p.to+ 16 " 23:59:59");if(t.isBetween(m,p,"second","[]"))return e.class_names.push("fc-day-disabled"),!1})}a.trigger("bookacti_calendar_day_cell_class_names",[e,c]);return e.class_names},datesSet:function(c){var e={};bookacti.booking_system[b].load_events===!0&&(e={start:moment.utc(moment.utc(c.view.currentStart).clone().locale("en").format("YYYY-MM-DD")+" 00:00:00"),end:moment.utc(moment.utc(c.view.currentEnd).clone().subtract(1,"days").locale("en").format("YYYY-MM-DD")+" 23:59:59")},e=bookacti_get_interval_of_events(a, 17 e),$j.isEmptyObject(e)||bookacti_get_booking_system_data_by_interval(a,e));$j.isEmptyObject(e)&&parseInt(bookacti.booking_system?.[b]?.trim)&&bookacti_fc_hide_daygrid_empty_rows(a);a.trigger("bookacti_calendar_view_render",[c,e])},eventDidMount:function(c){if(!c.isMirror&&typeof c.event!=="undefined"){var e=typeof c.event.groupId!=="undefined"?parseInt(c.event.groupId):parseInt(c.event.id);if(typeof bookacti.booking_system[b].events_data[e]!=="undefined"){var g=moment.utc(c.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss"), 18 t=moment.utc(c.event.end).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");$j(c.el).data("event-id",e);$j(c.el).attr("data-event-id",e);$j(c.el).data("event-start",g);$j(c.el).attr("data-event-start",g);$j(c.el).data("event-end",t);$j(c.el).attr("data-event-end",t);e=bookacti.booking_system[b].events_data[e];typeof e.activity_id!=="undefined"&&($j(c.el).data("activity-id",e.activity_id),$j(c.el).attr("data-activity-id",e.activity_id));a.trigger("bookacti_calendar_event_did_mount",[c])}}},eventClassNames:function(c){var e= 19 {class_names:[]};if(typeof c.event==="undefined")return e.class_names;var g=typeof c.event.groupId!=="undefined"?parseInt(c.event.groupId):parseInt(c.event.id);if(typeof bookacti.booking_system[b].events_data[g]==="undefined"||c.isMirror||c.event.display==="none")return e.class_names;var t=moment.utc(c.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");$j.each(bookacti.booking_system[b].picked_events,function(u,v){u=moment.utc(v.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss"); 20 v.id==g&&t===u&&e.class_names.push("bookacti-picked-event")});var m=moment.utc(c.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");typeof bookacti.booking_system[b].bookings[g]!=="undefined"&&typeof bookacti.booking_system[b].bookings[g][m]!=="undefined"&&parseInt(bookacti.booking_system[b].bookings[g][m].current_user_bookings)&&e.class_names.push("bookacti-event-booked-by-current-user");if(bookacti.booking_system[b].bookings_only!=1){m=b==="bookacti-booking-system-reschedule";var p= 21 bookacti_is_event_available(a,c.event),w=bookacti_is_event_in_available_group(a,c.event);p||!m&&w||e.class_names.push("bookacti-event-unavailable")}if(c.view.type.indexOf("dayGrid")>-1||c.view.type.indexOf("timeGrid")>-1)m=bookacti_fc_get_event_size_classes(a,c.event,c.view),m.length&&(e.class_names=$j.merge(e.class_names,m));a.trigger("bookacti_calendar_event_class_names",[e,c]);return e.class_names},eventContent:function(c){var e={domNodes:[]};if(typeof c.event==="undefined")return e;var g=typeof c.event.groupId!== 22 "undefined"?parseInt(c.event.groupId):parseInt(c.event.id);if(typeof bookacti.booking_system[b].events_data[g]==="undefined"||c.event.display==="none")return e;g="LT";c.view.type.indexOf("timeGrid")>-1&&(g=moment.localeData().longDateFormat("LT").replace(/[aA]/g,""));bookacti_localized.calendar_localization==="wp_settings"&&(g=bookacti_convert_php_datetime_format_to_moment_js(bookacti_localized.wp_time_format));g=$j("<div></div>",{"class":"fc-event-time",html:'<span class="bookacti-event-time-start">'+ 23 moment.utc(c.event.start).format(g)+'</span><span class="bookacti-event-time-separator"> - </span><span class="bookacti-event-time-end">'+moment.utc(c.event.end).format(g)+"</span>"});e.domNodes.push(g[0]);g=$j("<div></div>",{"class":"fc-event-title-container",html:'<div class="fc-event-title">'+c.event.title+"</div>"});e.domNodes.push(g[0]);(g=bookacti.booking_system[b].bookings_only==1?bookacti_get_event_number_of_bookings_div(a,c.event):bookacti_get_event_availability_div(a,c.event))&&e.domNodes.push(g[0]); 24 a.trigger("bookacti_calendar_event_content",[e,c]);return e},eventClick:function(c){var e={click:!0};$j(c.el).hasClass("bookacti-event-unavailable")&&(e.click=!1);a.trigger("bookacti_trigger_event_click",[e,c]);e.click&&bookacti_event_click(a,c.event)},eventMouseEnter:function(c){bookacti.is_touch_device||a.trigger("bookacti_calendar_event_mouse_enter",[c])},eventMouseLeave:function(c){bookacti.is_touch_device||a.trigger("bookacti_calendar_event_mouse_leave",[c])}};bookacti_localized.calendar_localization=== 25 "wp_settings"&&(l=bookacti_convert_php_datetime_format_to_fc_date_formatting_object(bookacti_localized.wp_time_format),f.firstDay=bookacti_localized.wp_start_of_week,f.slotLabelFormat=l,f.eventTimeFormat=l);a.trigger("bookacti_calendar_init_data",[f]);bookacti.fc_calendar[b]=new FullCalendar.Calendar(a.find(".bookacti-calendar:first")[0],f);bookacti.fc_calendar[b].render();f=bookacti.fc_calendar[b].view;f={start:moment.utc(moment.utc(f.currentStart).clone().locale("en").format("YYYY-MM-DD")+" 00:00:00"), 26 end:moment.utc(moment.utc(f.currentEnd).clone().subtract(1,"days").locale("en").format("YYYY-MM-DD")+" 23:59:59")};l=!1;if(typeof bookacti.booking_system[b].events_interval!=="undefined"){q=moment.utc(bookacti.booking_system[b].events_interval.start);h=moment.utc(bookacti.booking_system[b].events_interval.end);r=bookacti.booking_system[b].past_events;var n=moment.utc(bookacti_localized.current_time.substr(0,10));if((r||q.isAfter(n))&&q.isAfter(f.start)||h.isBefore(f.end))l=!0}d&&!l||typeof bookacti.booking_system[b].events=== 27 "undefined"||bookacti_fc_add_events(a,bookacti.booking_system[b].events);if(d||l)d=bookacti_get_interval_of_events(a,f),$j.isEmptyObject(d)||bookacti_get_booking_system_data_by_interval(a,d);bookacti.booking_system[b].load_events=!0;d=bookacti.booking_system[b].picked_events;$j.isEmptyObject(bookacti.booking_system[b].picked_events)||bookacti.fc_calendar[b].gotoDate(d[0].start);d=bookacti_localized.calendar_width_classes;var k=a.find(".bookacti-calendar:first").width();$j.each(d,function(c,e){if(k<= 28 c)return a.find(".bookacti-calendar:first").addClass(e),!1});a.trigger("bookacti_calendar_after_set_up")}function bookacti_fc_get_events_by_groupId(a,d){a=a.attr("id");return $j.grep(bookacti.fc_calendar[a].getEvents(),function(b){return b.groupId==d})} 29 function bookacti_fc_add_events(a,d){if(d.length){var b=[];$j.each(d,function(h,l){h=$j.extend(!0,{},l);h.groupId=parseInt(l.id);h.id=l.id+"_"+l.start;b.push(h)});d=a.attr("id");var f={events:b,editable:d==="bookacti-template-calendar"};a.trigger("bookacti_fc_events",[f]);bookacti.fc_calendar[d].addEventSource(f);a.trigger("bookacti_fc_events_added",[f])}} 30 function bookacti_refresh_picked_events_on_calendar(a){var d=a.attr("id");d=bookacti.booking_system[d].picked_events;bookacti_unpick_all_events_on_calendar(a);d&&$j.each(d,function(b,f){b=moment.utc(f.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");a.find('.fc-event[data-event-id="'+f.id+'"][data-event-start="'+b+'"]').addClass("bookacti-picked-event")});a.trigger("bookacti_refresh_picked_events_on_calendar")} 31 function bookacti_unpick_all_events_on_calendar(a){a.find(".bookacti-picked-event").removeClass("bookacti-picked-event");a.trigger("bookacti_unpick_all_events_on_calendar")} 32 function bookacti_fc_get_event_size_classes(a,d,b){var f=[];if(b.type.indexOf("timeGrid")<0&&b.type.indexOf("dayGrid")<0)return f;var h=typeof bookacti_localized.event_tiny_height!=="undefined"?parseInt(bookacti_localized.event_tiny_height):32,l=typeof bookacti_localized.event_small_height!=="undefined"?parseInt(bookacti_localized.event_small_height):75,q=typeof bookacti_localized.event_narrow_width!=="undefined"?parseInt(bookacti_localized.event_narrow_width):70,r=typeof bookacti_localized.event_wide_width!== 33 "undefined"?parseInt(bookacti_localized.event_wide_width):250;if(b.type.indexOf("timeGrid")>-1){var n=a.attr("id");b=bookacti.fc_calendar[n].getOption("eventMinHeight");n=bookacti.fc_calendar[n].getOption("slotDuration");typeof b==="undefined"&&(b=0);typeof n==="undefined"&&(n="00:30");n=parseInt(n.substr(0,2))*60+parseInt(n.substr(-2));d=parseInt(moment.duration(moment.utc(d.end).diff(moment.utc(d.start))).asMinutes());var k=a.find(".fc-timegrid-slot").length?a.find(".fc-timegrid-slot").outerHeight(): 34 0;k||(k=a.css("line-height").replace("px",""),k=$j.isNumeric(k)?parseFloat(k):0,k||(k=a.css("font-size").replace("px",""),k=$j.isNumeric(k)?parseFloat(k)*1.5:0),k=k?k:20);b=Math.max(parseInt(b),k/n*d);b<=h?f.push("bookacti-tiny-event"):b<=l&&f.push("bookacti-small-event")}a=a.find(".fc-col-header-cell.fc-day").innerWidth();a=a-a*.025-2;a>=r?f.push("bookacti-wide-event"):a<=q&&f.push("bookacti-narrow-event");return f} 35 function bookacti_enter_calendar_loading_state(a){a.find(".fc-toolbar button:disabled").addClass("bookacti-was-disabled");a.find(".fc-toolbar button").attr("disabled",!0);a.find(".fc-view-harness").append('<div class="bookacti-loading-overlay"><div class="bookacti-loading-overlay-content">'+bookacti_get_loading_html()+"</div></div>")} 1 $j(document).ready(function(){$j("body").on("bookacti_booking_method_set_up",".bookacti-booking-system",function(a,e,d){e==="calendar"&&$j(this).find(".bookacti-calendar").length&&bookacti_set_calendar_up($j(this),d)});$j("body").on("bookacti_booking_method_update_display_period",".bookacti-booking-system",function(a,e,d){e==="calendar"&&$j(this).find(".bookacti-calendar").length&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&(d={start:d.start?moment.utc(d.start.substr(0,10)).format("YYYY-MM-DD"): 2 null,end:d.end?moment.utc(d.end.substr(0,10)).add(1,"days").format("YYYY-MM-DD"):null},bookacti.fc_calendar[a].setOption("validRange",d)))});$j("body").on("bookacti_booking_method_display_events",".bookacti-booking-system",function(a,e,d){e==="calendar"&&$j(this).find(".bookacti-calendar").length&&bookacti_fc_add_events($j(this),d)});$j("body").on("bookacti_fc_events_added",".bookacti-booking-system",function(){var a=$j(this).attr("id");parseInt(bookacti.booking_system?.[a]?.trim)&&bookacti_fc_hide_daygrid_empty_rows($j(this))}); 3 $j("body").on("bookacti_refetch_events",".bookacti-booking-system",function(a,e){e==="calendar"&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&bookacti.fc_calendar[a].removeAllEvents(),bookacti_get_booking_system_data_by_interval($j(this)))});$j("body").on("bookacti_rerender_events",".bookacti-booking-system",function(a,e){e==="calendar"&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&bookacti.fc_calendar[a].render())});$j("body").on("bookacti_clear_events", 4 ".bookacti-booking-system",function(a,e){e==="calendar"&&(a=$j(this).attr("id"),typeof bookacti.fc_calendar[a]!=="undefined"&&bookacti.fc_calendar[a].removeAllEvents())});$j("body").on("bookacti_booking_system_reloaded",".bookacti-booking-system",function(a,e,d,f){$j(this).find(".bookacti-calendar").length&&bookacti_refresh_picked_events_on_calendar($j(this))});$j("body").on("bookacti_start_loading",".bookacti-booking-system, .bookacti-booking-system-editor",function(a,e){e==="calendar"&&(a=$j(this), 5 a.find(".bookacti-calendar.fc").length?(e=a.attr("id"),bookacti.booking_system[e].loading_number!==0&&a.find(".bookacti-loading-overlay").length||(bookacti_remove_loading_html(a),bookacti_enter_calendar_loading_state(a.find(".bookacti-calendar")))):a.find(".bookacti-loading-container").length||bookacti_add_loading_html(a))});$j("body").on("bookacti_exit_loading_state",".bookacti-booking-system, .bookacti-booking-system-editor",function(a,e){e==="calendar"&&(bookacti_remove_loading_html($j(this)), 6 $j(this).find(".bookacti-calendar").length&&bookacti_exit_calendar_loading_state($j(this).find(".bookacti-calendar")))});$j("body").on("change",".bookacti-go-to-datepicker",function(){var a=$j(this).closest(".fc-goTo-button");a.find(".bookacti-spinner").length||a.append('<span class="bookacti-spinner"></span>');typeof bookacti_go_to_date!=="undefined"&&bookacti_go_to_date&&clearTimeout(bookacti_go_to_date);var e=$j(this).val(),d=$j(this).closest(".bookacti-booking-system").length?$j(this).closest(".bookacti-booking-system").attr("id"): 7 "bookacti-template-calendar";e&&typeof bookacti.fc_calendar[d]!=="undefined"?e.length===10&&/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/.test(e)?bookacti_go_to_date=setTimeout(function(){bookacti.fc_calendar[d].gotoDate(e);a.find(".bookacti-spinner").remove()},750):a.find(".bookacti-spinner").remove():a.find(".bookacti-spinner").remove()});$j("body").on("click",".bookacti-booking-system .bookacti-calendar .fc-more",function(){bookacti_refresh_picked_events_on_calendar(booking_system)});$j("body").on("touchstart touchmove touchend touchcancel", 8 ".bookacti-booking-system .bookacti-calendar .fc-event",function(a){var e={touchstart:"bookacti_calendar_event_touch_start",touchmove:"bookacti_calendar_event_touch_move",touchend:"bookacti_calendar_event_touch_end",touchcancel:"bookacti_calendar_event_touch_cancel"};if(typeof e[a.type]!=="undefined"){var d=$j(this).closest(".bookacti-booking-system"),f=$j(this),h={id:parseInt(f.data("event-id")),start:moment.utc(f.data("event-start")),end:moment.utc(f.data("event-end"))};d.trigger(e[a.type],[{event:h, 9 el:f,jsEvent:a}])}});$j("body").on("bookacti_pick_event",".bookacti-booking-system, #bookacti-template-calendar",function(a,e,d,f){$j(this).find(".bookacti-calendar").length&&bookacti_refresh_picked_events_on_calendar($j(this))});$j("body").on("bookacti_unpick_all_events",".bookacti-booking-system",function(){$j(this).find(".bookacti-calendar").length&&bookacti_unpick_all_events_on_calendar($j(this))});$j("body").on("bookacti_events_unpicked bookacti_unpick_all_events",".bookacti-booking-system", 10 function(){$j(this).find(".bookacti-calendar, .bookacti-calendar-title").hasClass("bookacti-hidden-field")&&($j(this).find(".bookacti-calendar, .bookacti-calendar-title").removeClass("bookacti-hidden-field"),bookacti_booking_method_rerender_events($j(this)))})}); 11 function bookacti_set_calendar_up(a,e){e=e?1:0;var d=a.attr("id");bookacti.booking_system[d].load_events=!1;var f=bookacti_get_display_period(a),h=typeof bookacti.booking_system[d].display_data!=="undefined"?bookacti.booking_system[d].display_data:{},l=typeof bookacti_localized.event_tiny_height!=="undefined"?parseInt(bookacti_localized.event_tiny_height):32,q=typeof h.slotMinTime!=="undefined"?h.slotMinTime:"00:00";h=typeof h.slotMaxTime!=="undefined"?h.slotMaxTime:"24:00";var r=moment.utc("1992-12-26 "+ 12 q).add(1,"minutes").format("HH:mm");f={className:"fc",locale:bookacti_localized.fullcalendar_locale,timeZone:bookacti_localized.fullcalendar_timezone,now:new Date(bookacti_localized.current_time.substr(0,10)),initialView:a.find(".bookacti-calendar:first").width()<bookacti_localized.initial_view_threshold?"timeGridDay":"timeGridWeek",allDaySlot:!1,defaultAllDay:!1,fixedWeekCount:!1,height:"auto",contentHeight:"auto",editable:!1,droppable:!1,eventDurationEditable:!1,showNonCurrentDates:!1,dayMaxEvents:!1, 13 moreLinkClick:"popover",eventDisplay:"block",dragRevertDuration:0,eventShortHeight:0,slotDuration:"00:30",slotEventOverlap:!1,eventMinHeight:l,dayNarrowWidth:bookacti_localized?.event_narrow_width??70,nextDayThreshold:r,slotMinTime:q,slotMaxTime:h,validRange:{start:f.start?moment.utc(f.start.substr(0,10)).format("YYYY-MM-DD"):null,end:f.end?moment.utc(f.end.substr(0,10)).add(1,"days").format("YYYY-MM-DD"):null},headerToolbar:{start:"prev,next today",center:"title",end:"dayGridMonth,timeGridWeek,timeGridDay"}, 14 toolbarClass:"fc-toolbar",headerToolbarClass:"fc-header-toolbar",toolbarSectionClass:"fc-toolbar-chunk",toolbarTitleClass:"fc-toolbar-title",buttonGroupClass:"fc-button-group",buttonClass:function(b){var c={class_names:["fc-button"]};b.isSelected&&c.class_names.push("fc-button-active");a.trigger("bookacti_calendar_button_class_names",[c,b]);return c.class_names.join(" ")},events:function(b,c,g){c([])},eventDataTransform:function(b){a.trigger("bookacti_calendar_event_data_transform",[b]);return b}, 15 views:{dayGrid:{tableBodyClass:"fc-daygrid-body",dayCellInnerClass:"fc-daygrid-day-events"},timeGrid:{tableBodyClass:"fc-timegrid-body",slotHeaderClass:"fc-timegrid-slot fc-timegrid-slot-label",slotLaneClass:"fc-timegrid-slot",dayLaneInnerClass:"fc-timegrid-col-events"}},tableHeaderClass:function(b){var c={class_names:["fc-col-header"]};b.isSticky&&c.class_names.push("fc-scrollgrid-section-sticky");a.trigger("bookacti_calendar_table_header_class_names",[c,b]);return c.class_names.join(" ")},viewClass:function(b){var c= 16 {class_names:["fc-view","fc-"+b.view.type+"-view"]};b.view.type.indexOf("dayGrid")>-1&&c.class_names.push("fc-daygrid");b.view.type.indexOf("timeGrid")>-1&&c.class_names.push("fc-timegrid");a.find(".fc-today-button").length&&!a.find(".fc-day-today").length&&(moment().isBetween(b.view.currentStart,b.view.currentEnd,"day","[)")||a.find(".fc-today-button").attr("disabled",!1));a.trigger("bookacti_calendar_view_class_names",[c,b]);return c.class_names.join(" ")},dayHeaderClass:function(b){var c={class_names:["fc-col-header-cell"]}; 17 c.class_names.push("fc-day-"+{0:"sun",1:"mon",2:"tue",3:"wed",4:"thu",5:"fri",6:"sat"}[b.date.getUTCDay()]);b.inPopover&&c.class_names.push("fc-popover-header");if(typeof bookacti.booking_system[d].days_off!=="undefined"){var g=bookacti.booking_system[d].days_off,t=moment.utc(b.date);$j.each(g,function(m,p){m=moment.utc(p.from+" 00:00:00");p=moment.utc(p.to+" 23:59:59");if(t.isBetween(m,p,"second","[]"))return c.class_names.push("fc-day-disabled"),!1})}a.trigger("bookacti_calendar_day_header_class_names", 18 [c,b]);return c.class_names.join(" ")},dayCellClass:function(b){var c={class_names:["fc-daygrid-day"]};c.class_names.push("fc-day-"+{0:"sun",1:"mon",2:"tue",3:"wed",4:"thu",5:"fri",6:"sat"}[b.date.getUTCDay()]);b.isDisabled?c.class_names.push("fc-day-disabled"):(b.isToday&&c.class_names.push("fc-day-today"),b.isPast&&c.class_names.push("fc-day-past"),b.isFuture&&c.class_names.push("fc-day-future"),b.isOther&&c.class_names.push("fc-day-other"),b.inPopover&&c.class_names.push("fc-popover-body"));if(typeof bookacti.booking_system[d].days_off!== 19 "undefined"){var g=bookacti.booking_system[d].days_off,t=moment.utc(b.date);$j.each(g,function(m,p){m=moment.utc(p.from+" 00:00:00");p=moment.utc(p.to+" 23:59:59");if(t.isBetween(m,p,"second","[]"))return c.class_names.push("fc-day-disabled"),!1})}a.trigger("bookacti_calendar_day_cell_class_names",[c,b]);return c.class_names.join(" ")},dayCellTopInnerClass:function(b){var c={class_names:[]};c.class_names.push(b.text!==b.dayNumberText?"fc-daygrid-day-number":"fc-daygrid-month-start");a.trigger("bookacti_calendar_day_cell_top_inner_class_names", 20 [c,b]);return c.class_names.join(" ")},datesSet:function(b){var c={};bookacti.booking_system[d].load_events===!0&&(c={start:moment.utc(moment.utc(b.view.currentStart).clone().locale("en").format("YYYY-MM-DD")+" 00:00:00"),end:moment.utc(moment.utc(b.view.currentEnd).clone().subtract(1,"days").locale("en").format("YYYY-MM-DD")+" 23:59:59")},c=bookacti_get_interval_of_events(a,c),$j.isEmptyObject(c)||bookacti_get_booking_system_data_by_interval(a,c));$j.isEmptyObject(c)&&parseInt(bookacti.booking_system?.[d]?.trim)&& 21 bookacti_fc_hide_daygrid_empty_rows(a);a.trigger("bookacti_calendar_view_render",[b,c])},eventDidMount:function(b){if(!b.isMirror&&typeof b.event!=="undefined"){var c=typeof b.event.groupId!=="undefined"?parseInt(b.event.groupId):parseInt(b.event.id);if(typeof bookacti.booking_system[d].events_data[c]!=="undefined"){var g=moment.utc(b.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss"),t=moment.utc(b.event.end).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");$j(b.el).data("event-id", 22 c);$j(b.el).attr("data-event-id",c);$j(b.el).data("event-start",g);$j(b.el).attr("data-event-start",g);$j(b.el).data("event-end",t);$j(b.el).attr("data-event-end",t);c=bookacti.booking_system[d].events_data[c];typeof c.activity_id!=="undefined"&&($j(b.el).data("activity-id",c.activity_id),$j(b.el).attr("data-activity-id",c.activity_id));a.trigger("bookacti_calendar_event_did_mount",[b])}}},eventClass:function(b){var c={class_names:["fc-event"]};b.isSelected&&c.class_names.push("fc-event-selected"); 23 b.isStart&&c.class_names.push("fc-event-start");b.isEnd&&c.class_names.push("fc-event-end");b.isPast&&c.class_names.push("fc-event-past");b.isToday&&c.class_names.push("fc-event-today");b.isFuture&&c.class_names.push("fc-event-future");if(typeof b.event==="undefined")return c.class_names.join(" ");var g=typeof b.event.groupId!=="undefined"?parseInt(b.event.groupId):parseInt(b.event.id);if(typeof bookacti.booking_system[d].events_data[g]==="undefined")return c.class_names;if(b.isMirror||b.event.display=== 24 "none")return c.class_names.join(" ");var t=moment.utc(b.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");$j.each(bookacti.booking_system[d].picked_events,function(u,v){u=moment.utc(v.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");v.id==g&&t===u&&c.class_names.push("bookacti-picked-event")});var m=moment.utc(b.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");typeof bookacti.booking_system[d].bookings[g]!=="undefined"&&typeof bookacti.booking_system[d].bookings[g][m]!== 25 "undefined"&&parseInt(bookacti.booking_system[d].bookings[g][m].current_user_bookings)&&c.class_names.push("bookacti-event-booked-by-current-user");if(bookacti.booking_system[d].bookings_only!=1){m=d==="bookacti-booking-system-reschedule";var p=bookacti_is_event_available(a,b.event),w=bookacti_is_event_in_available_group(a,b.event);p||!m&&w||c.class_names.push("bookacti-event-unavailable")}if(b.view.type.indexOf("dayGrid")>-1||b.view.type.indexOf("timeGrid")>-1)m=bookacti_fc_get_event_size_classes(a, 26 b.event,b.view),m.length&&(c.class_names=$j.merge(c.class_names,m));a.trigger("bookacti_calendar_event_class_names",[c,b]);return c.class_names.join(" ")},eventBeforeClass:function(b){var c={class_names:[]};a.trigger("bookacti_calendar_event_before_class_names",[c,b]);return c.class_names.join(" ")},eventAfterClass:function(b){var c={class_names:[]};a.trigger("bookacti_calendar_event_after_class_names",[c,b]);return c.class_names.join(" ")},eventInnerClass:function(b){var c={class_names:["fc-event-main"]}; 27 a.trigger("bookacti_calendar_event_inner_class_names",[c,b]);return c.class_names.join(" ")},eventTimeClass:function(b){var c={class_names:["fc-event-time"]};a.trigger("bookacti_calendar_event_time_class_names",[c,b]);return c.class_names.join(" ")},eventTitleClass:function(b){var c={class_names:["fc-event-title"]};a.trigger("bookacti_calendar_event_title_class_names",[c,b]);return c.class_names.join(" ")},moreLinkClass:function(b){var c={class_names:["fc-more-link"]};a.trigger("bookacti_calendar_more_link_class_names", 28 [c,b]);return c.class_names.join(" ")},popoverClass:"fc-popover bookacti-fc-popover bookacti-fc-popover-"+d,popoverCloseClass:"fc-popover-close",eventContent:function(b){var c={domNodes:[]};if(typeof b.event==="undefined")return c;var g=typeof b.event.groupId!=="undefined"?parseInt(b.event.groupId):parseInt(b.event.id);if(typeof bookacti.booking_system[d].events_data[g]==="undefined"||b.event.display==="none")return c;g="LT";b.view.type.indexOf("timeGrid")>-1&&(g=moment.localeData().longDateFormat("LT").replace(/[aA]/g, 29 ""));bookacti_localized.calendar_localization==="wp_settings"&&(g=bookacti_convert_php_datetime_format_to_moment_js(bookacti_localized.wp_time_format));g=$j("<div></div>",{"class":"fc-event-time",html:'<span class="bookacti-event-time-start">'+moment.utc(b.event.start).format(g)+'</span><span class="bookacti-event-time-separator"> - </span><span class="bookacti-event-time-end">'+moment.utc(b.event.end).format(g)+"</span>"});c.domNodes.push(g[0]);g=$j("<div></div>",{"class":"fc-event-title",html:b.event.title}); 30 c.domNodes.push(g[0]);(g=bookacti.booking_system[d].bookings_only==1?bookacti_get_event_number_of_bookings_div(a,b.event):bookacti_get_event_availability_div(a,b.event))&&c.domNodes.push(g[0]);a.trigger("bookacti_calendar_event_content",[c,b]);return c},eventClick:function(b){var c={click:!0};$j(b.el).hasClass("bookacti-event-unavailable")&&(c.click=!1);a.trigger("bookacti_trigger_event_click",[c,b]);c.click&&bookacti_event_click(a,b.event)},eventMouseEnter:function(b){bookacti.is_touch_device||a.trigger("bookacti_calendar_event_mouse_enter", 31 [b])},eventMouseLeave:function(b){bookacti.is_touch_device||a.trigger("bookacti_calendar_event_mouse_leave",[b])}};bookacti_localized.calendar_localization==="wp_settings"&&(l=bookacti_convert_php_datetime_format_to_fc_date_formatting_object(bookacti_localized.wp_time_format),f.firstDay=bookacti_localized.wp_start_of_week,f.slotHeaderFormat=l,f.eventTimeFormat=l);a.trigger("bookacti_calendar_init_data",[f]);bookacti.fc_calendar[d]=new FullCalendar.Calendar(a.find(".bookacti-calendar:first")[0],f); 32 bookacti.fc_calendar[d].render();f=bookacti.fc_calendar[d].view;f={start:moment.utc(moment.utc(f.currentStart).clone().locale("en").format("YYYY-MM-DD")+" 00:00:00"),end:moment.utc(moment.utc(f.currentEnd).clone().subtract(1,"days").locale("en").format("YYYY-MM-DD")+" 23:59:59")};l=!1;if(typeof bookacti.booking_system[d].events_interval!=="undefined"){q=moment.utc(bookacti.booking_system[d].events_interval.start);h=moment.utc(bookacti.booking_system[d].events_interval.end);r=bookacti.booking_system[d].past_events; 33 var n=moment.utc(bookacti_localized.current_time.substr(0,10));if((r||q.isAfter(n))&&q.isAfter(f.start)||h.isBefore(f.end))l=!0}e&&!l||typeof bookacti.booking_system[d].events==="undefined"||bookacti_fc_add_events(a,bookacti.booking_system[d].events);if(e||l)e=bookacti_get_interval_of_events(a,f),$j.isEmptyObject(e)||bookacti_get_booking_system_data_by_interval(a,e);bookacti.booking_system[d].load_events=!0;e=bookacti.booking_system[d].picked_events;$j.isEmptyObject(bookacti.booking_system[d].picked_events)|| 34 bookacti.fc_calendar[d].gotoDate(e[0].start);e=bookacti_localized.calendar_width_classes;var k=a.find(".bookacti-calendar:first").width();$j.each(e,function(b,c){if(k<=b)return a.find(".bookacti-calendar:first").addClass(c),!1});a.trigger("bookacti_calendar_after_set_up")}function bookacti_fc_get_events_by_groupId(a,e){a=a.attr("id");return $j.grep(bookacti.fc_calendar[a].getEvents(),function(d){return d.groupId==e})} 35 function bookacti_fc_add_events(a,e){if(e.length){var d=[];$j.each(e,function(h,l){h=$j.extend(!0,{},l);h.groupId=parseInt(l.id);h.id=l.id+"_"+l.start;d.push(h)});e=a.attr("id");var f={events:d,editable:e==="bookacti-template-calendar"};a.trigger("bookacti_fc_events",[f]);bookacti.fc_calendar[e].addEventSource(f);a.trigger("bookacti_fc_events_added",[f])}} 36 function bookacti_refresh_picked_events_on_calendar(a){var e=a.attr("id"),d=bookacti.booking_system[e].picked_events;bookacti_unpick_all_events_on_calendar(a);d&&$j.each(d,function(f,h){f=moment.utc(h.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");a.find('.fc-event[data-event-id="'+h.id+'"][data-event-start="'+f+'"]').addClass("bookacti-picked-event");$j(".bookacti-fc-popover-"+e+' .fc-event[data-event-id="'+h.id+'"][data-event-start="'+f+'"]').addClass("bookacti-picked-event")});a.trigger("bookacti_refresh_picked_events_on_calendar")} 37 function bookacti_unpick_all_events_on_calendar(a){var e=a.attr("id");a.find(".bookacti-picked-event").removeClass("bookacti-picked-event");$j(".bookacti-fc-popover-"+e+" .bookacti-picked-event").removeClass("bookacti-picked-event");a.trigger("bookacti_unpick_all_events_on_calendar")} 38 function bookacti_fc_get_event_size_classes(a,e,d){var f=[];if(d.type.indexOf("timeGrid")<0&&d.type.indexOf("dayGrid")<0)return f;var h=typeof bookacti_localized.event_tiny_height!=="undefined"?parseInt(bookacti_localized.event_tiny_height):32,l=typeof bookacti_localized.event_small_height!=="undefined"?parseInt(bookacti_localized.event_small_height):75,q=typeof bookacti_localized.event_narrow_width!=="undefined"?parseInt(bookacti_localized.event_narrow_width):70,r=typeof bookacti_localized.event_wide_width!== 39 "undefined"?parseInt(bookacti_localized.event_wide_width):250;if(d.type.indexOf("timeGrid")>-1){var n=a.attr("id");d=bookacti.fc_calendar[n].getOption("eventMinHeight");n=bookacti.fc_calendar[n].getOption("slotDuration");typeof d==="undefined"&&(d=0);typeof n==="undefined"&&(n="00:30");n=parseInt(n.substr(0,2))*60+parseInt(n.substr(-2));e=parseInt(moment.duration(moment.utc(e.end).diff(moment.utc(e.start))).asMinutes());var k=a.find(".fc-timegrid-slot").length?a.find(".fc-timegrid-slot").first().outerHeight(): 40 0;k||(k=a.css("line-height").replace("px",""),k=$j.isNumeric(k)?parseFloat(k):0,k||(k=a.css("font-size").replace("px",""),k=$j.isNumeric(k)?parseFloat(k)*1.5:0),k=k?k:20);d=Math.max(parseInt(d),k/n*e);d<=h?f.push("bookacti-tiny-event"):d<=l&&f.push("bookacti-small-event")}a=a.find(".fc-col-header-cell").first().innerWidth();a=a-a*.025-2;a>=r?f.push("bookacti-wide-event"):a<=q&&f.push("bookacti-narrow-event");return f} 41 function bookacti_enter_calendar_loading_state(a){a.find(".fc-toolbar button:disabled").addClass("bookacti-was-disabled");a.find(".fc-toolbar button").attr("disabled",!0);a.find(".fc-view").after('<div class="bookacti-loading-overlay"><div class="bookacti-loading-overlay-content">'+bookacti_get_loading_html()+"</div></div>")} 36 42 function bookacti_exit_calendar_loading_state(a){a.find(".fc-toolbar button:not(.bookacti-was-disabled)").attr("disabled",!1);a.find(".fc-toolbar button.bookacti-was-disabled").removeClass("bookacti-was-disabled");a.find(".bookacti-loading-overlay").remove()} 37 function bookacti_fc_hide_daygrid_empty_rows(a){var d=a.attr("id");if(typeof bookacti.fc_calendar[d]!=="undefined"&&!(typeof bookacti.fc_calendar[d].view.type.indexOf("dayGrid")<0)){var b=a.find(".bookacti-calendar");if(b.length&&b.find(".fc-daygrid-body").length){var f=bookacti.fc_calendar[d].getEvents();b.find("tr.bookacti-no-events-row").remove();b.find(".fc-daygrid-body > table > tbody > tr").removeClass("bookacti-daygrid-week-month-start bookacti-daygrid-week-disabled bookacti-daygrid-week-empty"); 38 b.find(".fc-daygrid-body > table > tbody > tr").each(function(){var h=!0,l=!0;$j(this).find("> td").each(function(){var q=$j(this).data("date");if(!q)return!0;var r=!1,n=moment.utc(q);$j.each(f,function(k,c){k=moment.utc(c.startStr.substr(0,10)+" 00:00:00");c=moment.utc(c.endStr.substr(0,10)+" 23:59:59");if(n.isBetween(k,c,"second","[]"))return r=!0,!1});$j(this).hasClass("fc-day-disabled")||(l=!1,r&&(h=!1))});$j(this).find(".fc-daygrid-month-start").length&&$j(this).addClass("bookacti-daygrid-week-month-start"); 39 l&&$j(this).addClass("bookacti-daygrid-week-disabled");h&&$j(this).addClass("bookacti-daygrid-week-empty")});b.find(".fc-daygrid-body > table > tbody > tr:visible").length?bookacti_booking_method_rerender_events(a):(a=b.find(".fc-daygrid-body > table > tbody > tr:first > td").length,d=typeof bookacti_localized.no_events!=="undefined"?bookacti_localized.no_events:"No events.",b.find(".fc-daygrid-body > table > tbody").append('<tr class="bookacti-no-events-row" colspan="'+a+'"><td><div class="bookacti-no-events">'+ 40 d+"</div></td></tr>"))}}}; 43 function bookacti_fc_hide_daygrid_empty_rows(a){var e=a.attr("id");if(typeof bookacti.fc_calendar[e]!=="undefined"&&!(typeof bookacti.fc_calendar[e].view.type.indexOf("dayGrid")<0)){var d=a.find(".bookacti-calendar");if(d.length&&d.find(".fc-daygrid-body").length){var f=bookacti.fc_calendar[e].getEvents();d.find('[role="row"].bookacti-no-events-row').remove();d.find('.fc-daygrid-body [role="row"]').removeClass("bookacti-daygrid-week-month-start bookacti-daygrid-week-disabled bookacti-daygrid-week-empty"); 44 d.find('.fc-daygrid-body [role="row"]').each(function(){var h=!0,l=!0;$j(this).find('> [role="gridcell"]').each(function(){var q=$j(this).data("date");if(!q)return!0;var r=!1,n=moment.utc(q);$j.each(f,function(k,b){k=moment.utc(b.startStr.substr(0,10)+" 00:00:00");b=moment.utc(b.endStr.substr(0,10)+" 23:59:59");if(n.isBetween(k,b,"second","[]"))return r=!0,!1});$j(this).hasClass("fc-day-disabled")||(l=!1,r&&(h=!1))});$j(this).find(".fc-daygrid-month-start").length&&$j(this).addClass("bookacti-daygrid-week-month-start"); 45 l&&$j(this).addClass("bookacti-daygrid-week-disabled");h&&$j(this).addClass("bookacti-daygrid-week-empty")});d.find('.fc-daygrid-body [role="row"]:visible').length?bookacti_booking_method_rerender_events(a):(a=typeof bookacti_localized.no_events!=="undefined"?bookacti_localized.no_events:"No events.",d.find('.fc-daygrid-body [role="row"]:last').after('<div role="row" class="bookacti-no-events-row"><div class="bookacti-no-events">'+a+"</div></div>"))}}}; -
booking-activities/trunk/js/booking-system-functions.js
r3539441 r3730814 116 116 /** 117 117 * Reload a booking system 118 * @version 1.1 6.0118 * @version 1.19.0 119 119 * @param {HTMLElement} booking_system 120 120 * @param {boolean} keep_picked_events … … 141 141 success: function( response ) { 142 142 if( response.status === 'success' ) { 143 // Update booking system data 144 bookacti.booking_system[ booking_system_id ] = response.booking_system_data; 145 143 146 // Clear booking system 144 147 booking_system.empty(); 145 148 bookacti_clear_booking_system_displayed_info( booking_system ); 146 147 // Update events and settings148 bookacti.booking_system[ booking_system_id ] = response.booking_system_data;149 149 150 150 // Specific data -
booking-activities/trunk/js/booking-system-functions.min.js
r3692046 r3730814 5 5 e.booking_system_data.booking_lists);if(e?.trimmed_period?.start||e?.trimmed_period?.end)e?.trimmed_period?.start&&(bookacti.booking_system[c].start=e.trimmed_period.start),e?.trimmed_period?.end&&(bookacti.booking_system[c].end=e.trimmed_period.end),bookacti_booking_method_update_display_period(b);e.booking_system_data.events.length&&bookacti_booking_method_display_events(b,e.booking_system_data.events);b.trigger("bookacti_booking_system_interval_data_loaded",[e,f,d,a])}else console.log(typeof e.message!== 6 6 "undefined"?e.message:bookacti_localized.error),console.log(e)},error:function(e){console.log("AJAX "+bookacti_localized.error);console.log(e)},complete:function(){bookacti_stop_loading_booking_system(b)}})} 7 function bookacti_reload_booking_system(b,a){a=a||!1;var c=b.attr("id"),f=$j.extend(!0,{},bookacti.booking_system[c]),d=bookacti_get_booking_system_attributes_without_data(b);a||delete d.picked_events;bookacti_start_loading_booking_system(b);$j.ajax({url:bookacti_localized.ajaxurl,type:"POST",data:{action:"bookactiReloadBookingSystem",attributes:JSON.stringify(d)},dataType:"json",success:function(e){e.status==="success"?(b .empty(),bookacti_clear_booking_system_displayed_info(b),bookacti.booking_system[c]=8 e.booking_system_data,typeof f.rescheduled_bookings_data!=="undefined"&&(bookacti.booking_system[c].rescheduled_bookings_data=$j.extend(!0,{},f.rescheduled_bookings_data)),typeof f.templates_per_activities!=="undefined"&&(bookacti.booking_system[c].templates_per_activities=$j.extend(!0,{},f.templates_per_activities)),b.append(e.html_elements),bookacti_booking_method_set_up(b),bookacti_fill_booking_system_fields(b),bookacti_fill_picked_events_list(b),b.trigger("bookacti_booking_system_reloaded",[e, 9 f,d])):(console.log(typeof e.message!=="undefined"?e.message:bookacti_localized.error),console.log(e))},error:function(e){console.log("AJAX "+bookacti_localized.error);console.log(e)},complete:function(){bookacti_stop_loading_booking_system(b)}})}7 function bookacti_reload_booking_system(b,a){a=a||!1;var c=b.attr("id"),f=$j.extend(!0,{},bookacti.booking_system[c]),d=bookacti_get_booking_system_attributes_without_data(b);a||delete d.picked_events;bookacti_start_loading_booking_system(b);$j.ajax({url:bookacti_localized.ajaxurl,type:"POST",data:{action:"bookactiReloadBookingSystem",attributes:JSON.stringify(d)},dataType:"json",success:function(e){e.status==="success"?(bookacti.booking_system[c]=e.booking_system_data,b.empty(),bookacti_clear_booking_system_displayed_info(b), 8 typeof f.rescheduled_bookings_data!=="undefined"&&(bookacti.booking_system[c].rescheduled_bookings_data=$j.extend(!0,{},f.rescheduled_bookings_data)),typeof f.templates_per_activities!=="undefined"&&(bookacti.booking_system[c].templates_per_activities=$j.extend(!0,{},f.templates_per_activities)),b.append(e.html_elements),bookacti_booking_method_set_up(b),bookacti_fill_booking_system_fields(b),bookacti_fill_picked_events_list(b),b.trigger("bookacti_booking_system_reloaded",[e,f,d])):(console.log(typeof e.message!== 9 "undefined"?e.message:bookacti_localized.error),console.log(e))},error:function(e){console.log("AJAX "+bookacti_localized.error);console.log(e)},complete:function(){bookacti_stop_loading_booking_system(b)}})} 10 10 function bookacti_get_booking_system_attributes_without_data(b){b=b.attr("id");var a=$j.extend(!0,{},bookacti.booking_system[b]),c=$j.extend(!0,{},bookacti.booking_system[b]),f=bookacti_localized.booking_system_attributes_keys;$j.each(a,function(d,e){$j.inArray(d,f)===-1&&delete c[d]});return c} 11 11 function bookacti_get_interval_of_events(b,a){var c=b.attr("id"),f=bookacti.booking_system[c].events_interval,d=bookacti_get_display_period(b);c=parseInt(bookacti_localized.event_load_interval);var e=d.start?moment.utc(d.start):!1;d=d.end?moment.utc(d.end):!1;var g=moment.utc(a.start).clone(),k=moment.utc(a.end).clone();e&&g.isBefore(e)&&(g=e.clone());d&&k.isAfter(d)&&(k=d.clone());var h={},p={start:g.clone(),end:k.clone()};if($j.isEmptyObject(f))h=bookacti_get_new_interval_of_events(b,p);else{var m= -
booking-activities/trunk/js/form-editor.js
r3539441 r3730814 226 226 * Rerender field HTML after settings update 227 227 * @since 1.5.0 228 * @version 1. 7.17228 * @version 1.19.0 229 229 * @param {Event} e 230 230 * @param {Int} field_id … … 240 240 booking_system.empty(); 241 241 bookacti_clear_booking_system_displayed_info( booking_system ); 242 242 243 243 // Reload booking system 244 bookacti.booking_system[ booking_system_id ] = response.booking_system_attributes ? response.booking_system_attributes : []; 245 244 bookacti.booking_system[ booking_system_id ] = $j.extend( bookacti.booking_system[ booking_system_id ], response.booking_system_attributes ? response.booking_system_attributes : {} ); 246 245 bookacti_reload_booking_system( booking_system ); 247 246 } … … 267 266 * If an error occurs, stop loading and allow every interactions 268 267 * @since 1.7.0 268 * @version 1.19.0 269 269 * @param {string} errorMsg 270 270 * @param {string} url … … 274 274 */ 275 275 window.onerror = function ( errorMsg, url, lineNumber, column, errorObj ) { 276 $j( '#bookacti-fatal-error' ).show(); 276 if( url && lineNumber && errorObj ) { 277 $j( '#bookacti-fatal-error .bookacti-error-details' ).remove(); 278 $j( '#bookacti-fatal-error .bookacti-error-list' ).append( '<li class="bookacti-error-details"><ul><li>' + errorMsg + '</li><li>URL: ' + url + '</li><li>Line: ' + lineNumber + '</li></ul></li>' ).show(); 279 $j( '#bookacti-fatal-error' ).show(); 280 } 277 281 }; 278 282 }); -
booking-activities/trunk/js/form-editor.min.js
r3692046 r3730814 11 11 function(){bookacti_toggle_form_calendar_settings_availability_fields()}),$j("#bookacti-form-field-dialog-calendar").on("change","#bookacti-availability_period_start-container .bookacti-duration-value, #bookacti-availability_period_end-container .bookacti-duration-value",function(){$j("#bookacti-availability_period_start-container .bookacti-form-error, #bookacti-availability_period_end-container .bookacti-form-error").remove();var a=parseInt($j("#bookacti-availability_period_start-container .bookacti-duration-value").val()), 12 12 b=parseInt($j("#bookacti-availability_period_end-container .bookacti-duration-value").val());a&&b&&a>b&&$j(this).parent().append("<div class='bookacti-form-error'>"+bookacti_localized.error_availability_period+"</div>")}),$j("#bookacti-form-field-dialog-calendar").on("change","#bookacti-start, #bookacti-end",function(){$j("#bookacti-start-container .bookacti-form-error, #bookacti-end-container .bookacti-form-error").remove();var a=$j("#bookacti-start").val(),b=$j("#bookacti-end").val();a&&b&&(a=moment.utc(a), 13 b=moment.utc(b),a.isAfter(b)&&$j(this).parent().append("<div class='bookacti-form-error'>"+bookacti_localized.error_closing_before_opening+"</div>"))}),$j("#bookacti-form-editor").on("bookacti_field_updated bookacti_field_reset",function(a,b,c,d){c==="calendar"?(a=$j("#bookacti-form-editor-field-"+b+" .bookacti-booking-system"),b=a.attr("id"),a.empty(),bookacti_clear_booking_system_displayed_info(a),bookacti.booking_system[b]=d.booking_system_attributes?d.booking_system_attributes:[],bookacti_reload_booking_system(a)): 14 c==="login"&&(d=$j("#bookacti-form-editor .bookacti-form-field-container.bookacti-form-field-type-login"),bookacti_show_hide_register_fields(d))}),$j(window).on("beforeunload",function(a){if($j("#major-publishing-actions").data("popup"))return!0}),window.onerror=function(a,b,c,d,e){$j("#bookacti-fatal-error").show()})}); 13 b=moment.utc(b),a.isAfter(b)&&$j(this).parent().append("<div class='bookacti-form-error'>"+bookacti_localized.error_closing_before_opening+"</div>"))}),$j("#bookacti-form-editor").on("bookacti_field_updated bookacti_field_reset",function(a,b,c,d){c==="calendar"?(a=$j("#bookacti-form-editor-field-"+b+" .bookacti-booking-system"),b=a.attr("id"),a.empty(),bookacti_clear_booking_system_displayed_info(a),bookacti.booking_system[b]=$j.extend(bookacti.booking_system[b],d.booking_system_attributes?d.booking_system_attributes: 14 {}),bookacti_reload_booking_system(a)):c==="login"&&(d=$j("#bookacti-form-editor .bookacti-form-field-container.bookacti-form-field-type-login"),bookacti_show_hide_register_fields(d))}),$j(window).on("beforeunload",function(a){if($j("#major-publishing-actions").data("popup"))return!0}),window.onerror=function(a,b,c,d,e){b&&c&&e&&($j("#bookacti-fatal-error .bookacti-error-details").remove(),$j("#bookacti-fatal-error .bookacti-error-list").append('<li class="bookacti-error-details"><ul><li>'+a+"</li><li>URL: "+ 15 b+"</li><li>Line: "+c+"</li></ul></li>").show(),$j("#bookacti-fatal-error").show())})}); 15 16 function bookacti_save_form(){$j("#bookacti-form-editor-container").appendTo("#bookacti-form-editor-page-container");var a=$j("form#bookacti-form-editor-page-form"),b=a.find('input[name="is_active"]').val(),c=a.serialize();$j("#bookacti-form-editor-container").appendTo("#postdivrich");$j("#publishing-action .spinner").css("visibility","visible");bookacti_form_editor_enter_loading_state();$j.ajax({url:ajaxurl,data:c,type:"POST",dataType:"json",success:function(d){$j(".bookacti-form-notice").remove(); 16 17 if(d.status==="success")$j("body").trigger("bookacti_form_updated"),b==0?($j("#major-publishing-actions").data("popup",0),window.location.replace(a.attr("action")+"¬ice=published")):$j("#bookacti-form-editor-page-container").before('<div class="notice notice-success is-dismissible bookacti-form-notice" ><p>'+d.message+"</p></div>");else if(d.status==="failed"){var e=typeof d.message!=="undefined"?d.message:bookacti_localized.error;$j("#bookacti-form-editor-page-container").before('<div class="notice notice-error is-dismissible bookacti-form-notice" ><p>'+ -
booking-activities/trunk/js/templates-functions.js
r3475786 r3730814 248 248 * Make activities draggable 249 249 * @since 1.15.0 250 * @version 1.19.0 250 251 */ 251 252 function bookacti_make_activities_draggable() { 252 new FullCalendar. Draggable(253 new FullCalendar.Interaction.Draggable( 253 254 document.getElementById( 'bookacti-template-activity-list' ), 254 255 { "itemSelector": '.bookacti-activity-draggable:not(.bookacti-activity-disabled)' } -
booking-activities/trunk/js/templates-functions.min.js
r3475786 r3730814 12 12 ($j(this).addClass("dashicons-visibility"),$j(this).removeClass("dashicons-hidden"),$j(this).data("activity-visible",1),$j(this).attr("data-activity-visible",1),b!==-1&&bookacti.hidden_activities.splice(b,1));typeof bookacti.fc_calendar["bookacti-template-calendar"]!=="undefined"&&bookacti.fc_calendar["bookacti-template-calendar"].render()})} 13 13 function bookacti_refresh_show_hide_activities_icons(){var a=$j("#bookacti-template-activity-list .bookacti-activity-visibility");a.addClass("dashicons-visibility");a.removeClass("dashicons-hidden");a.data("activity-visible",1);a.attr("data-activity-visible",1);$j.each(bookacti.hidden_activities,function(b,c){$j('#bookacti-template-activity-list .bookacti-activity[data-activity-id="'+c+'"] .bookacti-activity-visibility').length&&(b=$j('#bookacti-template-activity-list .bookacti-activity[data-activity-id="'+ 14 c+'"] .bookacti-activity-visibility'),b.removeClass("dashicons-visibility"),b.addClass("dashicons-hidden"),b.data("activity-visible",0),b.attr("data-activity-visible",0))})}function bookacti_make_activities_draggable(){new FullCalendar. Draggable(document.getElementById("bookacti-template-activity-list"),{itemSelector:".bookacti-activity-draggable:not(.bookacti-activity-disabled)"})}14 c+'"] .bookacti-activity-visibility'),b.removeClass("dashicons-visibility"),b.addClass("dashicons-hidden"),b.data("activity-visible",0),b.attr("data-activity-visible",0))})}function bookacti_make_activities_draggable(){new FullCalendar.Interaction.Draggable(document.getElementById("bookacti-template-activity-list"),{itemSelector:".bookacti-activity-draggable:not(.bookacti-activity-disabled)"})} 15 15 function bookacti_make_activities_sortable(){$j("#bookacti-template-activity-list").sortable({items:".bookacti-activity",handle:".bookacti-activity-visibility",placeholder:"bookacti-calendar-editor-sortable-placeholder",delay:300,update:function(a,b){bookacti_save_template_items_order("activities")}});$j("#bookacti-template-activity-list").disableSelection()} 16 16 function bookacti_save_template_items_order(a,b){a=typeof a!=="undefined"?a:"";b=typeof b!=="undefined"?parseInt(b):0;var c="";switch(a){case "activities":var d="#bookacti-template-activity-list .bookacti-activity";c="activity-id";break;case "group_categories":d="#bookacti-group-categories .bookacti-group-category";c="group-category-id";break;case "groups_of_events":d='.bookacti-group-category[data-group-category-id="'+b+'"] .bookacti-groups-of-events-editor-list .bookacti-group-of-events',c="group-id"}var e= -
booking-activities/trunk/js/templates.js
r3539441 r3730814 96 96 /** 97 97 * If an error occurs, stop loading and allow every interactions 98 * @version 1. 7.698 * @version 1.19.0 99 99 * @param {Event|String} errorMsg 100 100 * @param {String} url … … 104 104 */ 105 105 window.onerror = function ( errorMsg, url, lineNumber, column, errorObj ) { 106 $j( '#bookacti-fatal-error' ).show(); 106 if( url && lineNumber && errorObj ) { 107 $j( '#bookacti-fatal-error .bookacti-error-details' ).remove(); 108 $j( '#bookacti-fatal-error .bookacti-error-list' ).append( '<li class="bookacti-error-details"><ul><li>' + errorMsg + '</li><li>URL: ' + url + '</li><li>Line: ' + lineNumber + '</li></ul></li>' ).show(); 109 $j( '#bookacti-fatal-error' ).show(); 110 } 107 111 }; 108 112 }); … … 111 115 /** 112 116 * Initialize and display the template calendar 113 * @version 1.1 7.0117 * @version 1.19.0 114 118 */ 115 119 function bookacti_load_template_calendar() { 116 120 var booking_system = $j( '#bookacti-template-calendar' ); 117 121 118 122 // Get calendar settings 119 123 var display_period = bookacti_get_display_period( booking_system ); … … 133 137 eventShortHeight: 0, 134 138 eventMinHeight: event_min_height, 139 dayNarrowWidth: bookacti_localized?.event_narrow_width ?? 70, 135 140 nextDayThreshold: next_day_threshold, 136 141 slotMinTime: slot_min_time, … … 164 169 }, 165 170 166 customButtons: {171 buttons: { 167 172 goTo: { 168 173 text: bookacti_localized.go_to_button, 174 className: 'fc-goTo-button', 175 169 176 /** 170 177 * Toggle "Go to" date input - on click on "Go to" button 171 * @version 1.1 5.12178 * @version 1.19.0 172 179 */ 173 click: function() { 180 click: function( e ) { 181 // If click on date input, do nothing 182 if( $j( e.target ).hasClass( 'bookacti-go-to-datepicker' ) ) { 183 return; 184 } 185 174 186 if( ! $j( '.bookacti-go-to-datepicker' ).length ) { 175 $j( '.fc-goTo-button' ).a fter( '<input type="date" class="bookacti-go-to-datepicker"/>' );187 $j( '.fc-goTo-button' ).append( '<input type="date" class="bookacti-go-to-datepicker"/>' ); 176 188 $j( '.bookacti-go-to-datepicker' ).hide(); 177 189 } 190 178 191 $j( '.bookacti-go-to-datepicker' ).toggle( 200 ); 179 192 $j( '.fc-goTo-button .bookacti-spinner' ).remove(); … … 187 200 end: 'dayGridMonth,timeGridWeek,timeGridDay' 188 201 }, 189 202 203 toolbarClass: 'fc-toolbar', 204 headerToolbarClass: 'fc-header-toolbar', 205 toolbarSectionClass: 'fc-toolbar-chunk', 206 toolbarTitleClass: 'fc-toolbar-title', 207 buttonGroupClass: 'fc-button-group', 208 209 210 /** 211 * Add classes to toolbar buttons 212 * @since 1.19.0 213 * @param {Object} info { 214 * @type {String} name - the button’s name (e.g. prev, next, today, or a view name like dayGridMonth) 215 * @type {String} text - the button’s localized display text 216 * @type {Boolean} isPrimary - true if the button is styled as the primary action 217 * @type {Boolean} isSelected - true if the button is currently in the selected/active state 218 * @type {Boolean} isDisabled - true if the button is disabled 219 * @type {Boolean} isIconOnly - true if the button renders as an icon without accompanying text 220 * @type {Object|null} buttonGroup - info about the enclosing button group, or null if the button is not part of a group. When present, an object with a hasSelection boolean (see above) 221 * } 222 * @returns {String} 223 */ 224 buttonClass: function( info ) { 225 var return_object = { 'class_names': [ 'fc-button' ] }; 226 227 if( info.isSelected ) { 228 return_object.class_names.push( 'fc-button-active' ); 229 } 230 231 booking_system.trigger( 'bookacti_calendar_editor_button_class_names', [ return_object, info ] ); 232 233 return return_object.class_names.join( ' ' ); 234 }, 235 190 236 191 237 /** … … 202 248 203 249 250 views: { 251 dayGrid: { 252 tableBodyClass: 'fc-daygrid-body', 253 dayCellInnerClass: 'fc-daygrid-day-events' 254 }, 255 timeGrid: { 256 tableBodyClass: 'fc-timegrid-body', 257 slotHeaderClass: 'fc-timegrid-slot fc-timegrid-slot-label', 258 slotLaneClass: 'fc-timegrid-slot', 259 dayLaneInnerClass: 'fc-timegrid-col-events' 260 } 261 }, 262 263 264 /** 265 * Add classes to the the header row (where day names appear) 266 * @since 1.19.0 267 * @param {Object} info { 268 * @type {Boolean} borderlessX - true when the table has no left or right outer borders 269 * @type {Boolean} borderlessTop - true when the table has no top outer border 270 * @type {Boolean} borderlessBottom - true when the table has no bottom outer border 271 * @type {Int} multiMonthColumns - in MultiMonth view, the number of month columns rendered per row. 0 in other views 272 * @type {Boolean} isSticky - true when the element is rendered in a sticky position (e.g. the header row stays pinned while scrolling). Only available in tableHeaderClass 273 * } 274 * @returns {String} 275 */ 276 tableHeaderClass: function( info ) { 277 var return_object = { 'class_names': [ 'fc-col-header' ] }; 278 279 if( info.isSticky ) { 280 return_object.class_names.push( 'fc-scrollgrid-section-sticky' ); 281 } 282 283 booking_system.trigger( 'bookacti_calendar_table_header_class_names', [ return_object, info ] ); 284 285 return return_object.class_names.join( ' ' ); 286 }, 287 288 204 289 /** 205 290 * Add classes to the view 206 291 * @since 1.15.0 207 * @version 1.1 5.4292 * @version 1.19.0 208 293 * @param {Object} info { 209 294 * @type {FullCalendar.ViewApi} view 210 295 * @type {HTMLElement} el 211 296 * } 212 * @returns {Array} 213 */ 214 viewClassNames: function( info ) { 215 var return_object = { 'class_names': [] }; 297 * @returns {String} 298 */ 299 viewClass: function( info ) { 300 var return_object = { 'class_names': [ 'fc-view', 'fc-' + info.view.type + '-view' ] }; 301 302 // Add legacy FC classes 303 if( info.view.type.indexOf( 'dayGrid' ) > -1 ) { 304 return_object.class_names.push( 'fc-daygrid' ); 305 } 306 if( info.view.type.indexOf( 'timeGrid' ) > -1 ) { 307 return_object.class_names.push( 'fc-timegrid' ); 308 } 216 309 217 310 // Always enable "Today" button, except on today's view … … 224 317 booking_system.trigger( 'bookacti_calendar_editor_view_class_names', [ return_object, info ] ); 225 318 226 return return_object.class_names ;319 return return_object.class_names.join( ' ' ); 227 320 }, 228 321 … … 231 324 * Add classes to the day header 232 325 * @since 1.15.0 233 * @version 1.1 7.0326 * @version 1.19.0 234 327 * @param {Object} info { 235 328 * @type {Date} date 236 * @type {String} dayNumberText329 * @type {String} text 237 330 * @type {Boolean} isPast 238 331 * @type {Boolean} isFuture 239 332 * @type {Boolean} isToday 240 333 * @type {Boolean} isOther 241 * } 242 * @returns {Array} 243 */ 244 dayHeaderClassNames: function( info ) { 245 var return_object = { 'class_names': [] }; 334 * @type {Boolean} hasNavLink 335 * @type {HTMLElement} el 336 * @type {Int} level 337 * } 338 * @returns {String} 339 */ 340 dayHeaderClass: function( info ) { 341 var return_object = { 'class_names': [ 'fc-col-header-cell' ] }; 342 343 var day_names = { 0: 'sun', 1: 'mon', 2: 'tue', 3: 'wed', 4: 'thu', 5: 'fri', 6: 'sat' }; 344 return_object.class_names.push( 'fc-day-' + day_names[ info.date.getUTCDay() ] ); 345 346 if( info.inPopover ) { 347 return_object.class_names.push( 'fc-popover-header' ); 348 } 246 349 247 350 // Gray out days off … … 266 369 booking_system.trigger( 'bookacti_calendar_editor_day_header_class_names', [ return_object, info ] ); 267 370 268 return return_object.class_names ;371 return return_object.class_names.join( ' ' ); 269 372 }, 270 373 … … 273 376 * Add classes to the day cell 274 377 * @since 1.15.0 275 * @version 1.1 7.0378 * @version 1.19.0 276 379 * @param {Object} info { 277 380 * @type {Date} date 381 * @type {String} text 382 * @type {String} textParts 278 383 * @type {String} dayNumberText 384 * @type {String} weekdayText 385 * @type {String} monthText 279 386 * @type {Boolean} isPast 280 387 * @type {Boolean} isFuture 281 388 * @type {Boolean} isToday 282 389 * @type {Boolean} isOther 283 * } 284 * @returns {Array} 285 */ 286 dayCellClassNames: function( info ) { 287 var return_object = { 'class_names': [] }; 390 * @type {Boolean} isMajor 391 * @type {Boolean} isNarrow 392 * @type {Boolean} inPopover 393 * @type {Boolean} hasNavLink 394 * @type {Object} options - the calendar options object, useful for reading settings like businessHours 395 * @type {Object} resource - if the date cell lives under a specific resource in vertical resource view, this value will be the Resource Object 396 * @type {HTMLElement} el 397 * } 398 * @returns {String} 399 */ 400 dayCellClass: function( info ) { 401 var return_object = { 'class_names': [ 'fc-daygrid-day' ] }; 402 403 var day_names = { 0: 'sun', 1: 'mon', 2: 'tue', 3: 'wed', 4: 'thu', 5: 'fri', 6: 'sat' }; 404 return_object.class_names.push( 'fc-day-' + day_names[ info.date.getUTCDay() ] ); 405 406 if( info.isDisabled ) { 407 return_object.class_names.push( 'fc-day-disabled' ); 408 } 409 else { 410 if( info.isToday ) { 411 return_object.class_names.push( 'fc-day-today' ); 412 } 413 if( info.isPast ) { 414 return_object.class_names.push( 'fc-day-past' ); 415 } 416 if( info.isFuture ) { 417 return_object.class_names.push( 'fc-day-future' ); 418 } 419 if( info.isOther ) { 420 return_object.class_names.push( 'fc-day-other' ); 421 } 422 if( info.inPopover ) { 423 return_object.class_names.push( 'fc-popover-body' ); 424 } 425 } 288 426 289 427 // Gray out days off … … 308 446 booking_system.trigger( 'bookacti_calendar_editor_day_cell_class_names', [ return_object, info ] ); 309 447 310 return return_object.class_names; 448 return return_object.class_names.join( ' ' ); 449 }, 450 451 452 /** 453 * Add classes to the Month text within the day cell 454 * @since 1.19.0 455 * @param {Object} info Same as dayCellClass 456 * @returns {String} 457 */ 458 dayCellTopInnerClass: function( info ) { 459 var return_object = { 'class_names': [] }; 460 461 return_object.class_names.push( info.text !== info.dayNumberText ? 'fc-daygrid-day-number' : 'fc-daygrid-month-start' ); 462 463 booking_system.trigger( 'bookacti_calendar_editor_day_cell_top_inner_class_names', [ return_object, info ] ); 464 465 return return_object.class_names.join( ' ' ); 311 466 }, 312 467 … … 388 543 * It is called every time the associated event data changes 389 544 * @since 1.15.0 545 * @version 1.19.0 546 * @param {Object} info { 547 * @type {FullCalendar.EventApi} event 548 * @type {String} timeText 549 * @type {Boolean} isStart 550 * @type {Boolean} isEnd 551 * @type {Boolean} isMirror 552 * @type {Boolean} isPast 553 * @type {Boolean} isFuture 554 * @type {Boolean} isToday 555 * @type {String} color 556 * @type {String} contrastColor 557 * @type {Boolean} isInteractive 558 * @type {Boolean} isNarrow 559 * @type {Boolean} isShort 560 * @type {Boolean} level 561 * @type {String} timeClass 562 * @type {String} titleClass 563 * @type {Object} options - the calendar options object, useful for reading settings like eventOverlap 564 * @type {Object} resource - if the date cell lives under a specific resource in vertical resource view, this value will be the Resource Object 565 * @type {HTMLElement} el 566 * @type {FullCalendar.ViewApi} view The current View Object. 567 * } 568 * @returns {String} 569 */ 570 eventClass: function( info ) { 571 var return_object = { 'class_names': [ 'fc-event' ] }; 572 573 if( info.isMirror ) { 574 return_object.class_names.push( 'fc-event-mirror' ); 575 } 576 if( info.isDraggable ) { 577 return_object.class_names.push( 'fc-event-draggable' ); 578 } 579 if( info.isStartResizable || info.isEndResizable ) { 580 return_object.class_names.push( 'fc-event-resizable' ); 581 } 582 if( info.isDragging ) { 583 return_object.class_names.push( 'fc-event-dragging' ); 584 } 585 if( info.isResizing ) { 586 return_object.class_names.push( 'fc-event-resizing' ); 587 } 588 if( info.isSelected ) { 589 return_object.class_names.push( 'fc-event-selected' ); 590 } 591 if( info.isStart ) { 592 return_object.class_names.push( 'fc-event-start' ); 593 } 594 if( info.isEnd ) { 595 return_object.class_names.push( 'fc-event-end' ); 596 } 597 if( info.isPast ) { 598 return_object.class_names.push( 'fc-event-past' ); 599 } 600 if( info.isToday ) { 601 return_object.class_names.push( 'fc-event-today' ); 602 } 603 if( info.isFuture ) { 604 return_object.class_names.push( 'fc-event-future' ); 605 } 606 607 // Directly return if the event is hidden, or resizing or dragging to avoid overload 608 if( info.isMirror || info.event.display === 'none' ) { return return_object.class_names.join( ' ' ); } 609 610 // Check if the activity is hidden 611 var event_data = bookacti.booking_system[ 'bookacti-template-calendar' ][ 'events_data' ][ info.event.groupId ]; 612 var activity_id = typeof event_data !== 'undefined' ? parseInt( event_data.activity_id ) : 0; 613 if( bookacti.hidden_activities && activity_id ) { 614 if( $j.inArray( activity_id, bookacti.hidden_activities ) >= 0 ) { 615 return_object.class_names.push( 'bookacti-event-hidden' ); 616 } 617 } 618 619 // Display element as picked or selected if they actually are 620 var event_start = moment.utc( info.event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' ); 621 $j.each( bookacti.booking_system[ 'bookacti-template-calendar' ][ 'picked_events' ], function( i, picked_event ) { 622 var picked_event_start = moment.utc( picked_event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' ); 623 if( picked_event.id == info.event.groupId && event_start === picked_event_start ) { 624 return_object.class_names.push( 'bookacti-picked-event' ); 625 } 626 }); 627 628 // Make sure selected events appears as selected 629 $j.each( bookacti.booking_system[ 'bookacti-template-calendar' ][ 'selected_events' ], function( i, selected_event ) { 630 var selected_event_start = moment.utc( selected_event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' ); 631 if( selected_event.id == info.event.groupId && event_start === selected_event_start ) { 632 return_object.class_names.push( 'bookacti-selected-event' ); 633 } 634 }); 635 636 // Add classes to the event according to its expected size 637 if( info.view.type.indexOf( 'dayGrid' ) > -1 || info.view.type.indexOf( 'timeGrid' ) > -1 ) { 638 var event_size_classes = bookacti_fc_get_event_size_classes( booking_system, info.event, info.view ); 639 if( event_size_classes.length ) { 640 return_object.class_names = $j.merge( return_object.class_names, event_size_classes ); 641 } 642 } 643 644 booking_system.trigger( 'bookacti_calendar_editor_event_class_names', [ return_object, info ] ); 645 646 return return_object.class_names.join( ' ' ); 647 }, 648 649 650 /** 651 * Add classes to the the element before the "inner" wrapper of the event 652 * @since 1.19.0 653 * @param {Object} info Same as eventClass 654 * @returns {String} 655 */ 656 eventBeforeClass: function( info ) { 657 var return_object = { 'class_names': [] }; 658 659 if( info.isStartResizable ) { 660 return_object.class_names.push( 'fc-event-resizer' ); 661 return_object.class_names.push( 'fc-event-resizer-start' ); 662 } 663 664 booking_system.trigger( 'bookacti_calendar_editor_event_before_class_names', [ return_object, info ] ); 665 666 return return_object.class_names.join( ' ' ); 667 }, 668 669 670 /** 671 * Add classes to the the element after the "inner" wrapper of the event 672 * @since 1.19.0 673 * @param {Object} info Same as eventClass 674 * @returns {String} 675 */ 676 eventAfterClass: function( info ) { 677 var return_object = { 'class_names': [] }; 678 679 if( info.isEndResizable ) { 680 return_object.class_names.push( 'fc-event-resizer' ); 681 return_object.class_names.push( 'fc-event-resizer-end' ); 682 } 683 684 booking_system.trigger( 'bookacti_calendar_editor_event_after_class_names', [ return_object, info ] ); 685 686 return return_object.class_names.join( ' ' ); 687 }, 688 689 690 /** 691 * Add classes to the the "inner" wrapper of the event 692 * @since 1.19.0 693 * @param {Object} info Same as eventClass 694 * @returns {String} 695 */ 696 eventInnerClass: function( info ) { 697 var return_object = { 'class_names': [ 'fc-event-main' ] }; 698 699 booking_system.trigger( 'bookacti_calendar_editor_event_inner_class_names', [ return_object, info ] ); 700 701 return return_object.class_names.join( ' ' ); 702 }, 703 704 705 /** 706 * Add classes to the time element within the "inner" 707 * @since 1.19.0 708 * @param {Object} info Same as eventClass 709 * @returns {String} 710 */ 711 eventTimeClass: function( info ) { 712 var return_object = { 'class_names': [ 'fc-event-time' ] }; 713 714 booking_system.trigger( 'bookacti_calendar_editor_event_time_class_names', [ return_object, info ] ); 715 716 return return_object.class_names.join( ' ' ); 717 }, 718 719 720 /** 721 * Add classes to the title element within the "inner" 722 * @since 1.19.0 723 * @param {Object} info Same as eventClass 724 * @returns {String} 725 */ 726 eventTitleClass: function( info ) { 727 var return_object = { 'class_names': [ 'fc-event-title' ] }; 728 729 booking_system.trigger( 'bookacti_calendar_editor_event_title_class_names', [ return_object, info ] ); 730 731 return return_object.class_names.join( ' ' ); 732 }, 733 734 735 /** 736 * Add classes to the more-link element 737 * @since 1.19.0 738 * @param {Object} info { 739 * @type {Integer} num - the number of hidden events 740 * @type {String} text - the localized text that would appear in the link by default 741 * @type {String} numericText - the numeric portion of the text (e.g. "+5") 742 * @type {String} longText - the full localized text (e.g. "+5 events") 743 * @type {Boolean} isNarrow 744 * } 745 * @returns {String} 746 */ 747 moreLinkClass: function( info ) { 748 var return_object = { 'class_names': [ 'fc-more-link' ] }; 749 750 booking_system.trigger( 'bookacti_calendar_editor_more_link_class_names', [ return_object, info ] ); 751 752 return return_object.class_names.join( ' ' ); 753 }, 754 755 756 popoverClass: 'fc-popover bookacti-fc-popover bookacti-fc-popover-bookacti-template-calendar', 757 popoverCloseClass: 'fc-popover-close', 758 759 760 /** 761 * Add HTML elements in the event 762 * It is called every time the associated event data changes 763 * @since 1.15.0 390 764 * @param {Object} info { 391 765 * @type {FullCalendar.EventApi} event … … 401 775 * @returns {Array} 402 776 */ 403 eventClassNames: function( info ) {404 var return_object = { 'class_names': [] };405 406 // Directly return if the event is hidden, or resizing or dragging to avoid overload407 if( info.isMirror || info.event.display === 'none' ) { return return_object; }408 409 // Check if the activity is hidden410 var event_data = bookacti.booking_system[ 'bookacti-template-calendar' ][ 'events_data' ][ info.event.groupId ];411 var activity_id = typeof event_data !== 'undefined' ? parseInt( event_data.activity_id ) : 0;412 if( bookacti.hidden_activities && activity_id ) {413 if( $j.inArray( activity_id, bookacti.hidden_activities ) >= 0 ) {414 return_object.class_names.push( 'bookacti-event-hidden' );415 }416 }417 418 // Display element as picked or selected if they actually are419 var event_start = moment.utc( info.event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' );420 $j.each( bookacti.booking_system[ 'bookacti-template-calendar' ][ 'picked_events' ], function( i, picked_event ) {421 var picked_event_start = moment.utc( picked_event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' );422 if( picked_event.id == info.event.groupId && event_start === picked_event_start ) {423 return_object.class_names.push( 'bookacti-picked-event' );424 }425 });426 427 // Make sure selected events appears as selected428 $j.each( bookacti.booking_system[ 'bookacti-template-calendar' ][ 'selected_events' ], function( i, selected_event ) {429 var selected_event_start = moment.utc( selected_event.start ).clone().locale( 'en' ).format( 'YYYY-MM-DD HH:mm:ss' );430 if( selected_event.id == info.event.groupId && event_start === selected_event_start ) {431 return_object.class_names.push( 'bookacti-selected-event' );432 }433 });434 435 // Add classes to the event according to its expected size436 if( info.view.type.indexOf( 'dayGrid' ) > -1 || info.view.type.indexOf( 'timeGrid' ) > -1 ) {437 var event_size_classes = bookacti_fc_get_event_size_classes( booking_system, info.event, info.view );438 if( event_size_classes.length ) {439 return_object.class_names = $j.merge( return_object.class_names, event_size_classes );440 }441 }442 443 booking_system.trigger( 'bookacti_calendar_editor_event_class_names', [ return_object, info ] );444 445 return return_object.class_names;446 },447 448 449 /**450 * Add HTML elements in the event451 * It is called every time the associated event data changes452 * @since 1.15.0453 * @param {Object} info {454 * @type {FullCalendar.EventApi} event455 * @type {String} timeText456 * @type {Boolean} isStart457 * @type {Boolean} isEnd458 * @type {Boolean} isMirror459 * @type {Boolean} isPast460 * @type {Boolean} isFuture461 * @type {Boolean} isToday462 * @type {FullCalendar.ViewApi} view The current View Object.463 * }464 * @returns {Array}465 */466 777 eventContent: function( info ) { 467 778 var return_object = { 'domNodes': [] }; … … 499 810 500 811 // Display event title 501 var title_div = $j( '<div></div>', { 'class': 'fc-event-title -container', 'html': '<div class="fc-event-title">' + info.event.title + '</div>'} );812 var title_div = $j( '<div></div>', { 'class': 'fc-event-title', 'html': info.event.title } ); 502 813 return_object.domNodes.push( title_div[ 0 ] ); 503 814 … … 952 1263 953 1264 if( bookacti_localized.calendar_localization === 'wp_settings' ) { 954 var fc_time_format_obj = bookacti_convert_php_datetime_format_to_fc_date_formatting_object( bookacti_localized.wp_time_format );955 init_data.firstDay = bookacti_localized.wp_start_of_week;956 init_data.slot LabelFormat = fc_time_format_obj;957 init_data.eventTimeFormat = fc_time_format_obj;1265 var fc_time_format_obj = bookacti_convert_php_datetime_format_to_fc_date_formatting_object( bookacti_localized.wp_time_format ); 1266 init_data.firstDay = bookacti_localized.wp_start_of_week; 1267 init_data.slotHeaderFormat = fc_time_format_obj; 1268 init_data.eventTimeFormat = fc_time_format_obj; 958 1269 } 959 1270 -
booking-activities/trunk/js/templates.min.js
r3692046 r3730814 3 3 [],bookacti.booking_system["bookacti-template-calendar"].template_data=[],bookacti.booking_system["bookacti-template-calendar"].selected_events=[],bookacti.booking_system["bookacti-template-calendar"].picked_events=[],bookacti.booking_system["bookacti-template-calendar"].loading_number=0,bookacti.booking_system["bookacti-template-calendar"].method="calendar",bookacti.booking_system["bookacti-template-calendar"].out_of_period_events=!0,bookacti.booking_system["bookacti-template-calendar"].past_events= 4 4 !0,bookacti.booking_system["bookacti-template-calendar"].past_events_bookable=!0,bookacti_make_activities_draggable(),bookacti_make_activities_sortable(),bookacti_init_groups_of_events(),bookacti_init_show_hide_activities_switch(),bookacti_init_event_duplication_feedbacks(),bookacti_init_template_dialogs(),bookacti_bind_template_dialogs(),$j("body").on("change","#bookacti-template-picker",function(){bookacti_switch_template($j(this).val())}),bookacti.selected_template&&bookacti_switch_template(bookacti.selected_template), 5 $j("body").on("bookacti_init_booking_sytem","#bookacti-template-calendar",function(e,l,n){l.load=!1}),$j("body").on("dragstart","#bookacti-template-activities-container .fc-event",function(e,l){l.helper.css("maxWidth",$j(this).width())}),$j("body").on("bookacti_clear_events","#bookacti-template-calendar",function(e,l){bookacti_clear_events_on_calendar_editor()}),window.onerror=function(e,l,n,q,t){$j("#bookacti-fatal-error").show()})}); 6 function bookacti_load_template_calendar(){var e=$j("#bookacti-template-calendar"),l=bookacti_get_display_period(e),n=typeof bookacti.booking_system["bookacti-template-calendar"].display_data!=="undefined"?bookacti.booking_system["bookacti-template-calendar"].display_data:{},q=typeof bookacti_localized.event_tiny_height!=="undefined"?parseInt(bookacti_localized.event_tiny_height):32,t=typeof n.slotMinTime!=="undefined"?n.slotMinTime:"00:00",u=typeof n.slotMaxTime!=="undefined"?n.slotMaxTime:"24:00"; 7 n=typeof n.snapDuration!=="undefined"?n.snapDuration:"00:05";var v=moment.utc("1992-12-26 "+t).add(1,"minutes").format("HH:mm");l={locale:bookacti_localized.fullcalendar_locale,timeZone:bookacti_localized.fullcalendar_timezone,now:new Date(bookacti_localized.current_time.substr(0,10)),initialView:"timeGridWeek",eventShortHeight:0,eventMinHeight:q,nextDayThreshold:v,slotMinTime:t,slotMaxTime:u,slotDuration:"00:30",snapDuration:n,scrollTime:"00:00",height:"auto",contentHeight:"auto",nowIndicator:!1, 8 weekNumbers:!1,navLinks:!0,slotEventOverlap:!1,dayMaxEvents:!1,moreLinkClick:"popover",eventDisplay:"block",allDaySlot:!1,defaultAllDay:!1,fixedWeekCount:!1,showNonCurrentDates:!0,eventResizableFromStart:!1,editable:!0,droppable:!0,dropAccept:".fc-event, .bookacti-activity-draggable",eventDurationEditable:!0,dragRevertDuration:0,validRange:{start:l.start?moment.utc(l.start.substr(0,10)).format("YYYY-MM-DD"):null,end:l.end?moment.utc(l.end.substr(0,10)).add(1,"days").format("YYYY-MM-DD"):null},customButtons:{goTo:{text:bookacti_localized.go_to_button, 9 click:function(){$j(".bookacti-go-to-datepicker").length||($j(".fc-goTo-button").after('<input type="date" class="bookacti-go-to-datepicker"/>'),$j(".bookacti-go-to-datepicker").hide());$j(".bookacti-go-to-datepicker").toggle(200);$j(".fc-goTo-button .bookacti-spinner").remove()}}},headerToolbar:{start:"prevYear,prev,next,nextYear today goTo",center:"title",end:"dayGridMonth,timeGridWeek,timeGridDay"},events:function(a,d,b){d([])},viewClassNames:function(a){var d={class_names:[]};e.find(".fc-today-button").length&& 10 !e.find(".fc-day-today").length&&(moment().isBetween(a.view.currentStart,a.view.currentEnd,"day","[)")||e.find(".fc-today-button").attr("disabled",!1));e.trigger("bookacti_calendar_editor_view_class_names",[d,a]);return d.class_names},dayHeaderClassNames:function(a){var d={class_names:[]},b=bookacti.booking_system["bookacti-template-calendar"].template_data,c=parseInt(b?.settings?.use_global_days_off??0);b=b?.settings?.days_off??[];var f=bookacti_localized?.days_off??[];c=c>0?f:c<0?b.concat(f):b; 11 if(c.length){var g=moment.utc(a.date);$j.each(c,function(m,k){m=moment.utc(k.from+" 00:00:00");k=moment.utc(k.to+" 23:59:59");if(g.isBetween(m,k,"second","[]"))return d.class_names.push("fc-day-disabled"),!1})}e.trigger("bookacti_calendar_editor_day_header_class_names",[d,a]);return d.class_names},dayCellClassNames:function(a){var d={class_names:[]},b=bookacti.booking_system["bookacti-template-calendar"].template_data,c=parseInt(b?.settings?.use_global_days_off??0);b=b?.settings?.days_off??[];var f= 12 bookacti_localized?.days_off??[];c=c>0?f:c<0?b.concat(f):b;if(c.length){var g=moment.utc(a.date);$j.each(c,function(m,k){m=moment.utc(k.from+" 00:00:00");k=moment.utc(k.to+" 23:59:59");if(g.isBetween(m,k,"second","[]"))return d.class_names.push("fc-day-disabled"),!1})}e.trigger("bookacti_calendar_editor_day_cell_class_names",[d,a]);return d.class_names},datesSet:function(a){if(bookacti.load_events===!0){var d={start:moment.utc(moment.utc(a.view.currentStart).clone().locale("en").format("YYYY-MM-DD")+ 13 " 00:00:00"),end:moment.utc(moment.utc(a.view.currentEnd).clone().locale("en").subtract(1,"days").format("YYYY-MM-DD")+" 23:59:59")};d=bookacti_get_interval_of_events(e,d);$j.isEmptyObject(d)||bookacti_get_calendar_editor_data_by_interval(d)}e.trigger("bookacti_calendar_editor_view_render",[a])},eventDidMount:function(a){if(!a.isMirror){var d=a.event.groupId,b=bookacti.booking_system["bookacti-template-calendar"].events_data[d],c=0;typeof b!=="undefined"?c=parseInt(b.activity_id):typeof a.event.extendedProps.activity_id!== 14 "undefined"&&(c=parseInt(a.event.extendedProps.activity_id));b=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");var f=moment.utc(a.event.end).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");$j(a.el).data("event-id",d?d:"").attr("data-event-id",d?d:"");$j(a.el).data("event-start",b).attr("data-event-start",b);$j(a.el).data("event-end",f).attr("data-event-end",f);$j(a.el).data("activity-id",c?c:"").attr("data-activity-id",c?c:"");e.trigger("bookacti_calendar_editor_event_did_mount", 15 [a])}},eventClassNames:function(a){var d={class_names:[]};if(a.isMirror||a.event.display==="none")return d;var b=bookacti.booking_system["bookacti-template-calendar"].events_data[a.event.groupId];b=typeof b!=="undefined"?parseInt(b.activity_id):0;bookacti.hidden_activities&&b&&$j.inArray(b,bookacti.hidden_activities)>=0&&d.class_names.push("bookacti-event-hidden");var c=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");$j.each(bookacti.booking_system["bookacti-template-calendar"].picked_events, 16 function(f,g){f=moment.utc(g.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");g.id==a.event.groupId&&c===f&&d.class_names.push("bookacti-picked-event")});$j.each(bookacti.booking_system["bookacti-template-calendar"].selected_events,function(f,g){f=moment.utc(g.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");g.id==a.event.groupId&&c===f&&d.class_names.push("bookacti-selected-event")});if(a.view.type.indexOf("dayGrid")>-1||a.view.type.indexOf("timeGrid")>-1)b=bookacti_fc_get_event_size_classes(e, 17 a.event,a.view),b.length&&(d.class_names=$j.merge(d.class_names,b));e.trigger("bookacti_calendar_editor_event_class_names",[d,a]);return d.class_names},eventContent:function(a){var d={domNodes:[]};if(a.event.display==="none")return d;if(a.view.type.indexOf("dayGrid")>-1){var b=moment.utc(a.event.start).locale("en").format("YYYY-MM-DD")!==moment.utc(a.event.end).locale("en").format("YYYY-MM-DD"),c=bookacti.fc_calendar["bookacti-template-calendar"].getOption("eventDisplay");if(a.event.display==="list-item"|| 18 a.event.display==="auto"&&(c==="list-item"||c==="auto"&&!a.event.allDay&&!b))b=$j("<div></div>",{"class":"fc-daygrid-event-dot"}),d.domNodes.push(b[0])}b="LT";a.view.type.indexOf("timeGrid")>-1&&(b=moment.localeData().longDateFormat("LT").replace(/[aA]/g,""));bookacti_localized.calendar_localization==="wp_settings"&&(b=bookacti_convert_php_datetime_format_to_moment_js(bookacti_localized.wp_time_format));b=$j("<div></div>",{"class":"fc-event-time",html:'<span class="bookacti-event-time-start">'+moment.utc(a.event.start).format(b)+ 19 '</span><span class="bookacti-event-time-separator"> - </span><span class="bookacti-event-time-end">'+moment.utc(a.event.end).format(b)+"</span>"});d.domNodes.push(b[0]);b=$j("<div></div>",{"class":"fc-event-title-container",html:'<div class="fc-event-title">'+a.event.title+"</div>"});d.domNodes.push(b[0]);if(a.isMirror||a.event.display==="none")return d;b=bookacti.booking_system["bookacti-template-calendar"].events_data[a.event.groupId];c=typeof b!=="undefined"?parseInt(b.availability):0;var f=bookacti_get_event_number_of_bookings(e, 20 a.event);if(f!=null){var g="";c===0?g+="bookacti-no-availability":(g+=f>0?" bookacti-booked":" bookacti-not-booked",f>=c&&(g+=" bookacti-full"));b=$j("<div></div>",{"class":"bookacti-availability-container"});g=$j("<div></div>",{"class":"bookacti-available-places "+g});f=$j("<span></span>",{"class":"bookacti-bookings",html:f});c=$j("<span></span>",{"class":"bookacti-total-availability",html:c});g.append(f);g.append(c);b.append(g);d.domNodes.push(b[0])}var m=$j("<div></div>",{"class":"bookacti-event-actions"}); 21 b={actions:[]};c=$j("<div></div>",{"class":"bookacti-event-action bookacti-event-action-edit"});g=$j("<span></span>",{type:"checkbox","class":"dashicons dashicons-admin-generic bookacti-event-action-edit-button"});c.prepend(g);b.actions.push(c);var k=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD"),h=!1;$j.each(bookacti.booking_system["bookacti-template-calendar"].selected_events,function(p,r){if(r.id==a.event.groupId&&r.start.substr(0,10)===k)return h=!0,!1});c=$j("<div></div>", 22 {"class":"bookacti-event-action bookacti-event-action-select"});g=$j("<input/>",{type:"checkbox","class":"bookacti-event-action-select-checkbox",value:"0",checked:h});c.append(g);b.actions.push(c);e.trigger("bookacti_calendar_editor_event_actions",[b,a]);b.actions.length&&($j.each(b.actions,function(p,r){m.append(r)}),d.domNodes.push(m[0]));e.trigger("bookacti_calendar_editor_event_content",[d,a]);return d},eventAllow:function(a,d){var b=!0,c=bookacti.booking_system["bookacti-template-calendar"].template_data, 23 f=parseInt(c?.settings?.use_global_days_off??0);c=c?.settings?.days_off??[];var g=bookacti_localized?.days_off??[];f=f>0?g:f<0?c.concat(g):c;if(f.length){var m=moment.utc(a.start),k=moment.utc(a.end);bookacti.fc_calendar["bookacti-template-calendar"].view.type.substr(0,8)!=="timeGrid"&&(c=bookacti.fc_calendar["bookacti-template-calendar"].getOption("slotMinTime"),m.set({hours:c.substr(0,2),minutes:c.substr(3,2),seconds:0}),c=parseInt(d.extendedProps?.activity_id),c=bookacti.booking_system["bookacti-template-calendar"].activities_data?.[c], 24 c=c?.duration?c.duration:"000.01:00:00",k=m.clone().add(moment.duration(c)));$j.each(f,function(h,p){h=moment.utc(p.from+" 00:00:00");p=moment.utc(p.to+" 23:59:59");if(m.isBetween(h,p,"second","[]")||!parseInt(bookacti_localized.started_days_off_bookable)&&m.isBefore(h)&&k.isAfter(h))return b=!1})}e.trigger("bookacti_calendar_editor_allow_drop",[b,a,d]);return b},eventReceive:function(a){if(typeof a.event.extendedProps.activity_id==="undefined")a.revert();else{var d=parseInt(a.event.extendedProps.activity_id), 25 b=bookacti.booking_system["bookacti-template-calendar"].activities_data[d];if(b){var c=moment.utc(a.event.start);if(a.view.type.substr(0,8)!=="timeGrid"){var f=bookacti.fc_calendar["bookacti-template-calendar"].getOption("slotMinTime");c.set({hours:f.substr(0,2),minutes:f.substr(3,2),seconds:0})}f=b.duration?b.duration:"000.01:00:00";var g=c.clone();g.add(moment.duration(f));a.event.setDates(c.toDate(),g.toDate());var m=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss"); 26 c=moment.utc(a.event.end).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");var k={action:"bookactiInsertEvent",activity_id:d,template_id:bookacti.selected_template,title:b.multilingual_title,start:m,end:c,availability:b.availability,nonce:$j("#bookacti-edit-template-nonce").val()};e.trigger("bookacti_calendar_editor_event_before_insert",[a,k]);bookacti_start_template_loading();$j.ajax({url:ajaxurl,data:k,type:"POST",dataType:"json",success:function(h){if(h.status==="success")a.event.setProp("groupId", 27 h.event_id),$j('.fc-event[data-event-id=""][data-activity-id="'+d+'"][data-event-start="'+m+'"]').data("event-id",h.event_id).attr("data-event-id",h.event_id),bookacti.booking_system["bookacti-template-calendar"].events_data[h.event_id]=h.event_data,e.trigger("bookacti_calendar_editor_event_inserted",[a,h,k]),bookacti.fc_calendar["bookacti-template-calendar"].render();else{a.revert();var p=typeof h.message!=="undefined"?h.message:bookacti_localized.error;alert(p);console.log(p);console.log(h)}},error:function(h){a.revert(); 28 alert("AJAX "+bookacti_localized.error);console.log(h)},complete:function(){bookacti_stop_template_loading()}})}else a.revert()}},eventResize:function(a){bookacti_update_event_dates(a.event,a.oldEvent,a.revert)},eventDrop:function(a){a.jsEvent.altKey?(a.revert(),bookacti_duplicate_event(a.event,a.oldEvent)):bookacti_update_event_dates(a.event,a.oldEvent,a.revert)},eventDragStart:function(a){$j('.fc-event[data-event-id="'+a.event.groupId+'"]').addClass("bookacti-event-dragged");e.trigger("bookacti_calendar_editor_drag_start", 29 [a])},eventDragStop:function(a){$j('.fc-event.bookacti-event-dragged[data-event-id="'+a.event.groupId+'"]').removeClass("bookacti-event-dragged");e.trigger("bookacti_calendar_editor_drag_stop",[a])},eventResizeStart:function(a){e.trigger("bookacti_calendar_editor_resize_start",[a])},eventResizeStop:function(a){e.trigger("bookacti_calendar_editor_resize_stop",[a])},eventClick:function(a){bookacti.booking_system["bookacti-template-calendar"].picked_events=[];bookacti_unpick_all_events_on_calendar(e); 30 bookacti_pick_event(e,a.event);if($j(a.jsEvent.target).closest(".bookacti-event-actions").length)if($j(a.jsEvent.target).is(".bookacti-event-action-edit")||$j(a.jsEvent.target).closest(".bookacti-event-action-edit").length)a.event.editable!==!1&&bookacti_dialog_update_event(a.event);else if($j(a.jsEvent.target).is(".bookacti-event-action-select")||$j(a.jsEvent.target).closest(".bookacti-event-action-select").length)$j(a.el).find(".bookacti-event-action-select-checkbox").is(":checked")?bookacti_select_event(a.event): 31 (bookacti_unselect_event(a.event),$j(a.el).find(".bookacti-event-action-select").show());e.trigger("bookacti_calendar_editor_event_click",[a])},eventMouseEnter:function(a){bookacti.is_touch_device||e.trigger("bookacti_calendar_editor_event_mouse_enter",[a])},eventMouseLeave:function(a){bookacti.is_touch_device||e.trigger("bookacti_calendar_editor_event_mouse_leave",[a])},loading:function(a){!a&&bookacti.is_touch_device&&$j(".fc-event").each(function(){var d=$j.Event("mouseover",{target:this.firstChild, 32 _dummyCalledOnStartup:!0});$j(this).trigger(d)})}};bookacti_localized.calendar_localization==="wp_settings"&&(q=bookacti_convert_php_datetime_format_to_fc_date_formatting_object(bookacti_localized.wp_time_format),l.firstDay=bookacti_localized.wp_start_of_week,l.slotLabelFormat=q,l.eventTimeFormat=q);e.trigger("bookacti_calendar_editor_init_data",[l]);typeof bookacti.fc_calendar["bookacti-template-calendar"]!=="undefined"&&bookacti.fc_calendar["bookacti-template-calendar"].destroy();bookacti.fc_calendar["bookacti-template-calendar"]= 33 new FullCalendar.Calendar(e.find(".bookacti-calendar:first")[0],l);bookacti.fc_calendar["bookacti-template-calendar"].render();e.trigger("bookacti_calendar_editor_after_set_up")}; 5 $j("body").on("bookacti_init_booking_sytem","#bookacti-template-calendar",function(e,k,n){k.load=!1}),$j("body").on("dragstart","#bookacti-template-activities-container .fc-event",function(e,k){k.helper.css("maxWidth",$j(this).width())}),$j("body").on("bookacti_clear_events","#bookacti-template-calendar",function(e,k){bookacti_clear_events_on_calendar_editor()}),window.onerror=function(e,k,n,q,r){k&&n&&r&&($j("#bookacti-fatal-error .bookacti-error-details").remove(),$j("#bookacti-fatal-error .bookacti-error-list").append('<li class="bookacti-error-details"><ul><li>'+ 6 e+"</li><li>URL: "+k+"</li><li>Line: "+n+"</li></ul></li>").show(),$j("#bookacti-fatal-error").show())})}); 7 function bookacti_load_template_calendar(){var e=$j("#bookacti-template-calendar"),k=bookacti_get_display_period(e),n=typeof bookacti.booking_system["bookacti-template-calendar"].display_data!=="undefined"?bookacti.booking_system["bookacti-template-calendar"].display_data:{},q=typeof bookacti_localized.event_tiny_height!=="undefined"?parseInt(bookacti_localized.event_tiny_height):32,r=typeof n.slotMinTime!=="undefined"?n.slotMinTime:"00:00",u=typeof n.slotMaxTime!=="undefined"?n.slotMaxTime:"24:00"; 8 n=typeof n.snapDuration!=="undefined"?n.snapDuration:"00:05";var v=moment.utc("1992-12-26 "+r).add(1,"minutes").format("HH:mm");k={locale:bookacti_localized.fullcalendar_locale,timeZone:bookacti_localized.fullcalendar_timezone,now:new Date(bookacti_localized.current_time.substr(0,10)),initialView:"timeGridWeek",eventShortHeight:0,eventMinHeight:q,dayNarrowWidth:bookacti_localized?.event_narrow_width??70,nextDayThreshold:v,slotMinTime:r,slotMaxTime:u,slotDuration:"00:30",snapDuration:n,scrollTime:"00:00", 9 height:"auto",contentHeight:"auto",nowIndicator:!1,weekNumbers:!1,navLinks:!0,slotEventOverlap:!1,dayMaxEvents:!1,moreLinkClick:"popover",eventDisplay:"block",allDaySlot:!1,defaultAllDay:!1,fixedWeekCount:!1,showNonCurrentDates:!0,eventResizableFromStart:!1,editable:!0,droppable:!0,dropAccept:".fc-event, .bookacti-activity-draggable",eventDurationEditable:!0,dragRevertDuration:0,validRange:{start:k.start?moment.utc(k.start.substr(0,10)).format("YYYY-MM-DD"):null,end:k.end?moment.utc(k.end.substr(0, 10 10)).add(1,"days").format("YYYY-MM-DD"):null},buttons:{goTo:{text:bookacti_localized.go_to_button,className:"fc-goTo-button",click:function(a){$j(a.target).hasClass("bookacti-go-to-datepicker")||($j(".bookacti-go-to-datepicker").length||($j(".fc-goTo-button").append('<input type="date" class="bookacti-go-to-datepicker"/>'),$j(".bookacti-go-to-datepicker").hide()),$j(".bookacti-go-to-datepicker").toggle(200),$j(".fc-goTo-button .bookacti-spinner").remove())}}},headerToolbar:{start:"prevYear,prev,next,nextYear today goTo", 11 center:"title",end:"dayGridMonth,timeGridWeek,timeGridDay"},toolbarClass:"fc-toolbar",headerToolbarClass:"fc-header-toolbar",toolbarSectionClass:"fc-toolbar-chunk",toolbarTitleClass:"fc-toolbar-title",buttonGroupClass:"fc-button-group",buttonClass:function(a){var b={class_names:["fc-button"]};a.isSelected&&b.class_names.push("fc-button-active");e.trigger("bookacti_calendar_editor_button_class_names",[b,a]);return b.class_names.join(" ")},events:function(a,b,c){b([])},views:{dayGrid:{tableBodyClass:"fc-daygrid-body", 12 dayCellInnerClass:"fc-daygrid-day-events"},timeGrid:{tableBodyClass:"fc-timegrid-body",slotHeaderClass:"fc-timegrid-slot fc-timegrid-slot-label",slotLaneClass:"fc-timegrid-slot",dayLaneInnerClass:"fc-timegrid-col-events"}},tableHeaderClass:function(a){var b={class_names:["fc-col-header"]};a.isSticky&&b.class_names.push("fc-scrollgrid-section-sticky");e.trigger("bookacti_calendar_table_header_class_names",[b,a]);return b.class_names.join(" ")},viewClass:function(a){var b={class_names:["fc-view","fc-"+ 13 a.view.type+"-view"]};a.view.type.indexOf("dayGrid")>-1&&b.class_names.push("fc-daygrid");a.view.type.indexOf("timeGrid")>-1&&b.class_names.push("fc-timegrid");e.find(".fc-today-button").length&&!e.find(".fc-day-today").length&&(moment().isBetween(a.view.currentStart,a.view.currentEnd,"day","[)")||e.find(".fc-today-button").attr("disabled",!1));e.trigger("bookacti_calendar_editor_view_class_names",[b,a]);return b.class_names.join(" ")},dayHeaderClass:function(a){var b={class_names:["fc-col-header-cell"]}; 14 b.class_names.push("fc-day-"+{0:"sun",1:"mon",2:"tue",3:"wed",4:"thu",5:"fri",6:"sat"}[a.date.getUTCDay()]);a.inPopover&&b.class_names.push("fc-popover-header");var c=bookacti.booking_system["bookacti-template-calendar"].template_data,d=parseInt(c?.settings?.use_global_days_off??0);c=c?.settings?.days_off??[];var f=bookacti_localized?.days_off??[];d=d>0?f:d<0?c.concat(f):c;if(d.length){var g=moment.utc(a.date);$j.each(d,function(m,l){m=moment.utc(l.from+" 00:00:00");l=moment.utc(l.to+" 23:59:59"); 15 if(g.isBetween(m,l,"second","[]"))return b.class_names.push("fc-day-disabled"),!1})}e.trigger("bookacti_calendar_editor_day_header_class_names",[b,a]);return b.class_names.join(" ")},dayCellClass:function(a){var b={class_names:["fc-daygrid-day"]};b.class_names.push("fc-day-"+{0:"sun",1:"mon",2:"tue",3:"wed",4:"thu",5:"fri",6:"sat"}[a.date.getUTCDay()]);a.isDisabled?b.class_names.push("fc-day-disabled"):(a.isToday&&b.class_names.push("fc-day-today"),a.isPast&&b.class_names.push("fc-day-past"),a.isFuture&& 16 b.class_names.push("fc-day-future"),a.isOther&&b.class_names.push("fc-day-other"),a.inPopover&&b.class_names.push("fc-popover-body"));var c=bookacti.booking_system["bookacti-template-calendar"].template_data,d=parseInt(c?.settings?.use_global_days_off??0);c=c?.settings?.days_off??[];var f=bookacti_localized?.days_off??[];d=d>0?f:d<0?c.concat(f):c;if(d.length){var g=moment.utc(a.date);$j.each(d,function(m,l){m=moment.utc(l.from+" 00:00:00");l=moment.utc(l.to+" 23:59:59");if(g.isBetween(m,l,"second", 17 "[]"))return b.class_names.push("fc-day-disabled"),!1})}e.trigger("bookacti_calendar_editor_day_cell_class_names",[b,a]);return b.class_names.join(" ")},dayCellTopInnerClass:function(a){var b={class_names:[]};b.class_names.push(a.text!==a.dayNumberText?"fc-daygrid-day-number":"fc-daygrid-month-start");e.trigger("bookacti_calendar_editor_day_cell_top_inner_class_names",[b,a]);return b.class_names.join(" ")},datesSet:function(a){if(bookacti.load_events===!0){var b={start:moment.utc(moment.utc(a.view.currentStart).clone().locale("en").format("YYYY-MM-DD")+ 18 " 00:00:00"),end:moment.utc(moment.utc(a.view.currentEnd).clone().locale("en").subtract(1,"days").format("YYYY-MM-DD")+" 23:59:59")};b=bookacti_get_interval_of_events(e,b);$j.isEmptyObject(b)||bookacti_get_calendar_editor_data_by_interval(b)}e.trigger("bookacti_calendar_editor_view_render",[a])},eventDidMount:function(a){if(!a.isMirror){var b=a.event.groupId,c=bookacti.booking_system["bookacti-template-calendar"].events_data[b],d=0;typeof c!=="undefined"?d=parseInt(c.activity_id):typeof a.event.extendedProps.activity_id!== 19 "undefined"&&(d=parseInt(a.event.extendedProps.activity_id));c=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");var f=moment.utc(a.event.end).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");$j(a.el).data("event-id",b?b:"").attr("data-event-id",b?b:"");$j(a.el).data("event-start",c).attr("data-event-start",c);$j(a.el).data("event-end",f).attr("data-event-end",f);$j(a.el).data("activity-id",d?d:"").attr("data-activity-id",d?d:"");e.trigger("bookacti_calendar_editor_event_did_mount", 20 [a])}},eventClass:function(a){var b={class_names:["fc-event"]};a.isMirror&&b.class_names.push("fc-event-mirror");a.isDraggable&&b.class_names.push("fc-event-draggable");(a.isStartResizable||a.isEndResizable)&&b.class_names.push("fc-event-resizable");a.isDragging&&b.class_names.push("fc-event-dragging");a.isResizing&&b.class_names.push("fc-event-resizing");a.isSelected&&b.class_names.push("fc-event-selected");a.isStart&&b.class_names.push("fc-event-start");a.isEnd&&b.class_names.push("fc-event-end"); 21 a.isPast&&b.class_names.push("fc-event-past");a.isToday&&b.class_names.push("fc-event-today");a.isFuture&&b.class_names.push("fc-event-future");if(a.isMirror||a.event.display==="none")return b.class_names.join(" ");var c=bookacti.booking_system["bookacti-template-calendar"].events_data[a.event.groupId];c=typeof c!=="undefined"?parseInt(c.activity_id):0;bookacti.hidden_activities&&c&&$j.inArray(c,bookacti.hidden_activities)>=0&&b.class_names.push("bookacti-event-hidden");var d=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss"); 22 $j.each(bookacti.booking_system["bookacti-template-calendar"].picked_events,function(f,g){f=moment.utc(g.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");g.id==a.event.groupId&&d===f&&b.class_names.push("bookacti-picked-event")});$j.each(bookacti.booking_system["bookacti-template-calendar"].selected_events,function(f,g){f=moment.utc(g.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");g.id==a.event.groupId&&d===f&&b.class_names.push("bookacti-selected-event")});if(a.view.type.indexOf("dayGrid")> 23 -1||a.view.type.indexOf("timeGrid")>-1)c=bookacti_fc_get_event_size_classes(e,a.event,a.view),c.length&&(b.class_names=$j.merge(b.class_names,c));e.trigger("bookacti_calendar_editor_event_class_names",[b,a]);return b.class_names.join(" ")},eventBeforeClass:function(a){var b={class_names:[]};a.isStartResizable&&(b.class_names.push("fc-event-resizer"),b.class_names.push("fc-event-resizer-start"));e.trigger("bookacti_calendar_editor_event_before_class_names",[b,a]);return b.class_names.join(" ")},eventAfterClass:function(a){var b= 24 {class_names:[]};a.isEndResizable&&(b.class_names.push("fc-event-resizer"),b.class_names.push("fc-event-resizer-end"));e.trigger("bookacti_calendar_editor_event_after_class_names",[b,a]);return b.class_names.join(" ")},eventInnerClass:function(a){var b={class_names:["fc-event-main"]};e.trigger("bookacti_calendar_editor_event_inner_class_names",[b,a]);return b.class_names.join(" ")},eventTimeClass:function(a){var b={class_names:["fc-event-time"]};e.trigger("bookacti_calendar_editor_event_time_class_names", 25 [b,a]);return b.class_names.join(" ")},eventTitleClass:function(a){var b={class_names:["fc-event-title"]};e.trigger("bookacti_calendar_editor_event_title_class_names",[b,a]);return b.class_names.join(" ")},moreLinkClass:function(a){var b={class_names:["fc-more-link"]};e.trigger("bookacti_calendar_editor_more_link_class_names",[b,a]);return b.class_names.join(" ")},popoverClass:"fc-popover bookacti-fc-popover bookacti-fc-popover-bookacti-template-calendar",popoverCloseClass:"fc-popover-close",eventContent:function(a){var b= 26 {domNodes:[]};if(a.event.display==="none")return b;if(a.view.type.indexOf("dayGrid")>-1){var c=moment.utc(a.event.start).locale("en").format("YYYY-MM-DD")!==moment.utc(a.event.end).locale("en").format("YYYY-MM-DD"),d=bookacti.fc_calendar["bookacti-template-calendar"].getOption("eventDisplay");if(a.event.display==="list-item"||a.event.display==="auto"&&(d==="list-item"||d==="auto"&&!a.event.allDay&&!c))c=$j("<div></div>",{"class":"fc-daygrid-event-dot"}),b.domNodes.push(c[0])}c="LT";a.view.type.indexOf("timeGrid")> 27 -1&&(c=moment.localeData().longDateFormat("LT").replace(/[aA]/g,""));bookacti_localized.calendar_localization==="wp_settings"&&(c=bookacti_convert_php_datetime_format_to_moment_js(bookacti_localized.wp_time_format));c=$j("<div></div>",{"class":"fc-event-time",html:'<span class="bookacti-event-time-start">'+moment.utc(a.event.start).format(c)+'</span><span class="bookacti-event-time-separator"> - </span><span class="bookacti-event-time-end">'+moment.utc(a.event.end).format(c)+"</span>"});b.domNodes.push(c[0]); 28 c=$j("<div></div>",{"class":"fc-event-title",html:a.event.title});b.domNodes.push(c[0]);if(a.isMirror||a.event.display==="none")return b;c=bookacti.booking_system["bookacti-template-calendar"].events_data[a.event.groupId];d=typeof c!=="undefined"?parseInt(c.availability):0;var f=bookacti_get_event_number_of_bookings(e,a.event);if(f!=null){var g="";d===0?g+="bookacti-no-availability":(g+=f>0?" bookacti-booked":" bookacti-not-booked",f>=d&&(g+=" bookacti-full"));c=$j("<div></div>",{"class":"bookacti-availability-container"}); 29 g=$j("<div></div>",{"class":"bookacti-available-places "+g});f=$j("<span></span>",{"class":"bookacti-bookings",html:f});d=$j("<span></span>",{"class":"bookacti-total-availability",html:d});g.append(f);g.append(d);c.append(g);b.domNodes.push(c[0])}var m=$j("<div></div>",{"class":"bookacti-event-actions"});c={actions:[]};d=$j("<div></div>",{"class":"bookacti-event-action bookacti-event-action-edit"});g=$j("<span></span>",{type:"checkbox","class":"dashicons dashicons-admin-generic bookacti-event-action-edit-button"}); 30 d.prepend(g);c.actions.push(d);var l=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD"),h=!1;$j.each(bookacti.booking_system["bookacti-template-calendar"].selected_events,function(p,t){if(t.id==a.event.groupId&&t.start.substr(0,10)===l)return h=!0,!1});d=$j("<div></div>",{"class":"bookacti-event-action bookacti-event-action-select"});g=$j("<input/>",{type:"checkbox","class":"bookacti-event-action-select-checkbox",value:"0",checked:h});d.append(g);c.actions.push(d);e.trigger("bookacti_calendar_editor_event_actions", 31 [c,a]);c.actions.length&&($j.each(c.actions,function(p,t){m.append(t)}),b.domNodes.push(m[0]));e.trigger("bookacti_calendar_editor_event_content",[b,a]);return b},eventAllow:function(a,b){var c=!0,d=bookacti.booking_system["bookacti-template-calendar"].template_data,f=parseInt(d?.settings?.use_global_days_off??0);d=d?.settings?.days_off??[];var g=bookacti_localized?.days_off??[];f=f>0?g:f<0?d.concat(g):d;if(f.length){var m=moment.utc(a.start),l=moment.utc(a.end);bookacti.fc_calendar["bookacti-template-calendar"].view.type.substr(0, 32 8)!=="timeGrid"&&(d=bookacti.fc_calendar["bookacti-template-calendar"].getOption("slotMinTime"),m.set({hours:d.substr(0,2),minutes:d.substr(3,2),seconds:0}),d=parseInt(b.extendedProps?.activity_id),d=bookacti.booking_system["bookacti-template-calendar"].activities_data?.[d],d=d?.duration?d.duration:"000.01:00:00",l=m.clone().add(moment.duration(d)));$j.each(f,function(h,p){h=moment.utc(p.from+" 00:00:00");p=moment.utc(p.to+" 23:59:59");if(m.isBetween(h,p,"second","[]")||!parseInt(bookacti_localized.started_days_off_bookable)&& 33 m.isBefore(h)&&l.isAfter(h))return c=!1})}e.trigger("bookacti_calendar_editor_allow_drop",[c,a,b]);return c},eventReceive:function(a){if(typeof a.event.extendedProps.activity_id==="undefined")a.revert();else{var b=parseInt(a.event.extendedProps.activity_id),c=bookacti.booking_system["bookacti-template-calendar"].activities_data[b];if(c){var d=moment.utc(a.event.start);if(a.view.type.substr(0,8)!=="timeGrid"){var f=bookacti.fc_calendar["bookacti-template-calendar"].getOption("slotMinTime");d.set({hours:f.substr(0, 34 2),minutes:f.substr(3,2),seconds:0})}f=c.duration?c.duration:"000.01:00:00";var g=d.clone();g.add(moment.duration(f));a.event.setDates(d.toDate(),g.toDate());var m=moment.utc(a.event.start).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");d=moment.utc(a.event.end).clone().locale("en").format("YYYY-MM-DD HH:mm:ss");var l={action:"bookactiInsertEvent",activity_id:b,template_id:bookacti.selected_template,title:c.multilingual_title,start:m,end:d,availability:c.availability,nonce:$j("#bookacti-edit-template-nonce").val()}; 35 e.trigger("bookacti_calendar_editor_event_before_insert",[a,l]);bookacti_start_template_loading();$j.ajax({url:ajaxurl,data:l,type:"POST",dataType:"json",success:function(h){if(h.status==="success")a.event.setProp("groupId",h.event_id),$j('.fc-event[data-event-id=""][data-activity-id="'+b+'"][data-event-start="'+m+'"]').data("event-id",h.event_id).attr("data-event-id",h.event_id),bookacti.booking_system["bookacti-template-calendar"].events_data[h.event_id]=h.event_data,e.trigger("bookacti_calendar_editor_event_inserted", 36 [a,h,l]),bookacti.fc_calendar["bookacti-template-calendar"].render();else{a.revert();var p=typeof h.message!=="undefined"?h.message:bookacti_localized.error;alert(p);console.log(p);console.log(h)}},error:function(h){a.revert();alert("AJAX "+bookacti_localized.error);console.log(h)},complete:function(){bookacti_stop_template_loading()}})}else a.revert()}},eventResize:function(a){bookacti_update_event_dates(a.event,a.oldEvent,a.revert)},eventDrop:function(a){a.jsEvent.altKey?(a.revert(),bookacti_duplicate_event(a.event, 37 a.oldEvent)):bookacti_update_event_dates(a.event,a.oldEvent,a.revert)},eventDragStart:function(a){$j('.fc-event[data-event-id="'+a.event.groupId+'"]').addClass("bookacti-event-dragged");e.trigger("bookacti_calendar_editor_drag_start",[a])},eventDragStop:function(a){$j('.fc-event.bookacti-event-dragged[data-event-id="'+a.event.groupId+'"]').removeClass("bookacti-event-dragged");e.trigger("bookacti_calendar_editor_drag_stop",[a])},eventResizeStart:function(a){e.trigger("bookacti_calendar_editor_resize_start", 38 [a])},eventResizeStop:function(a){e.trigger("bookacti_calendar_editor_resize_stop",[a])},eventClick:function(a){bookacti.booking_system["bookacti-template-calendar"].picked_events=[];bookacti_unpick_all_events_on_calendar(e);bookacti_pick_event(e,a.event);if($j(a.jsEvent.target).closest(".bookacti-event-actions").length)if($j(a.jsEvent.target).is(".bookacti-event-action-edit")||$j(a.jsEvent.target).closest(".bookacti-event-action-edit").length)a.event.editable!==!1&&bookacti_dialog_update_event(a.event); 39 else if($j(a.jsEvent.target).is(".bookacti-event-action-select")||$j(a.jsEvent.target).closest(".bookacti-event-action-select").length)$j(a.el).find(".bookacti-event-action-select-checkbox").is(":checked")?bookacti_select_event(a.event):(bookacti_unselect_event(a.event),$j(a.el).find(".bookacti-event-action-select").show());e.trigger("bookacti_calendar_editor_event_click",[a])},eventMouseEnter:function(a){bookacti.is_touch_device||e.trigger("bookacti_calendar_editor_event_mouse_enter",[a])},eventMouseLeave:function(a){bookacti.is_touch_device|| 40 e.trigger("bookacti_calendar_editor_event_mouse_leave",[a])},loading:function(a){!a&&bookacti.is_touch_device&&$j(".fc-event").each(function(){var b=$j.Event("mouseover",{target:this.firstChild,_dummyCalledOnStartup:!0});$j(this).trigger(b)})}};bookacti_localized.calendar_localization==="wp_settings"&&(q=bookacti_convert_php_datetime_format_to_fc_date_formatting_object(bookacti_localized.wp_time_format),k.firstDay=bookacti_localized.wp_start_of_week,k.slotHeaderFormat=q,k.eventTimeFormat=q);e.trigger("bookacti_calendar_editor_init_data", 41 [k]);typeof bookacti.fc_calendar["bookacti-template-calendar"]!=="undefined"&&bookacti.fc_calendar["bookacti-template-calendar"].destroy();bookacti.fc_calendar["bookacti-template-calendar"]=new FullCalendar.Calendar(e.find(".bookacti-calendar:first")[0],k);bookacti.fc_calendar["bookacti-template-calendar"].render();e.trigger("bookacti_calendar_editor_after_set_up")}; -
booking-activities/trunk/readme.txt
r3692086 r3730814 4 4 Tags: booking, reservation, booking form, woocommerce booking, booking events 5 5 Tested up to: 7.1 6 Stable tag: 1.1 8.96 Stable tag: 1.19.0 7 7 License: GPLv3 or later 8 8 License URI: https://www.gnu.org/licenses/gpl-3.0.html … … 322 322 == Changelog == 323 323 324 = 1.19.0 - 2026/10/06 = 325 * FullCalendar v7 - **[See the user-friendly release note](https://booking-activities.fr/en/blog/booking-activities-1-19-fullcalendar-v7/?utm_source=wp-plugin-page&utm_medium=wordpress&utm_content=readme)** 326 * Dev - Update FullCalendar from v6 to v7 (7.1.1). Breaking change if you have custom CSS / JS for calendars. 327 * Dev - Add support for WPML 5.0 328 * Dev - Improve displayed feedback in case of jasvascript fatal error in calendar editor and form editor 329 324 330 = 1.18.9 - 2026/09/11 = 325 331 * Tweak - Security: Remove "New user role" option from "User data (login / registration)" form fields settings, use bookacti_register_user_data PHP hook instead … … 466 472 == Upgrade Notice == 467 473 474 = 1.19.0 = 475 Major changes in code: 476 * If you have custom javascript and CSS affecting the calendars, you will probably need to adapt them. No support can be provided for your custom code. 477 468 478 = 1.16.45 = 469 479 Major changes in code:
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)