PluginProbe
Booking Calendar / 11.9
Booking Calendar v11.9
11.9 11.8.4 11.8.3 11.8.2 11.8.1 11.8 11.7 11.6.1 11.6 11.5 11.4.3 11.4.2 11.4.1 11.4 11.3 11.2.1 11.2 11.1 11.0 10.15.7 10.15.6 10.1.3 10.10 10.10.1 10.10.2 All 205 releases
booking / includes / page-appointment-services / templates / catalog / catalog-wptpl.php

catalog-wptpl.php in Booking Calendar 11.9, at includes/page-appointment-services/templates/catalog/catalog-wptpl.php

67 lines 5.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Appointment Services catalog shell WP template.
4 *
5 * Renders allow-listed layout and column controls around the active Service
6 * template pack without containing Service queries or mutation behavior.
7 *
8 * @package Booking Calendar
9 * @since 11.6.0
10 */
11 if ( ! defined( 'ABSPATH' ) ) { exit; }
12 ?>
13 <script type="text/html" id="tmpl-wpbc-appointment-services-catalog">
14 <div class="wpbc_appointment_services__catalog wpbc_ui_catalog" data-wpbc-catalog-id="{{ data.catalog_id }}" data-wpbc-template-pack="{{ data.initial_request.template_pack }}">
15 <div data-wpbc-appointment-services-inline-bar-host></div>
16 <div class="wpbc_ui_listing__selection_summary wpbc_appointment_services__selection_summary" data-wpbc-ui-catalog-selection-summary data-wpbc-ui-catalog-selection-summary-sticky="1" hidden>
17 <div class="wpbc_ui_listing__selection_status">
18 <strong aria-live="polite" aria-atomic="true">{{ data.i18n.selected_services }} <span data-wpbc-ui-catalog-selection-count>0</span></strong>
19 <button type="button" class="button-link" data-wpbc-ui-catalog-selection-clear>{{ data.i18n.clear_selection }}</button>
20 </div>
21 <div class="wpbc_ui_listing__selection_actions wpbc_appointment_services__selection_actions wpbc_ui_catalog_selection_actions">
22 <button type="button" class="button button-primary wpbc_appointment_services__bulk_edit" data-wpbc-right-sidebar-keep-open="1"><span class="wpbc-bi-pencil-square" aria-hidden="true"></span>{{ data.i18n.edit_selected }}</button>
23 <button type="button" class="button wpbc_ui_catalog_selection_delete wpbc_appointment_services__bulk_delete" data-wpbc-right-sidebar-keep-open="1"><span class="wpbc-bi-trash3" aria-hidden="true"></span>{{ data.i18n.delete_selected }}</button>
24 </div>
25 </div>
26 <div class="wpbc_ui_listing wpbc_ui_listing--catalog" data-wpbc-ui-catalog-listing>
27 <div class="wpbc_ui_listing__display_toolbar" data-wpbc-ui-catalog-display-controls>
28 <div class="wpbc_ui_listing__toolbar_actions wpbc_ui_el__buttons_group">
29 <button type="button" class="button button-secondary wpbc_ui_catalog_inline_toggle wpbc_appointment_services__inline_toggle" data-wpbc-ui-catalog-inline-toggle aria-pressed="false" disabled>
30 <span class="wpbc-bi-pencil-square" aria-hidden="true"></span>
31 <span data-wpbc-appointment-services-inline-toggle-label data-wpbc-ui-catalog-inline-toggle-label>{{ data.i18n.edit_rows }}</span>
32 </button>
33 </div>
34 <div class="wpbc_ui_listing__view_control">
35 <label for="wpbc_appointment_services_layout">{{ data.i18n.layout_label }}</label>
36 <select id="wpbc_appointment_services_layout" data-wpbc-ui-catalog-template-pack autocomplete="off">
37 <# _.each( data.template_packs, function ( template_pack, template_pack_id ) { #>
38 <option value="{{ template_pack_id }}"<# if ( template_pack_id === data.initial_request.template_pack ) { #> selected<# } #>>{{ data.i18n[ 'layout_' + template_pack_id ] || template_pack_id }}</option>
39 <# } ); #>
40 </select>
41 </div>
42 <details class="wpbc_ui_listing__display_customizer has-viewport-positioning" data-wpbc-ui-catalog-display-customizer>
43 <summary class="button button-secondary"><span class="wpbc-bi-sliders" aria-hidden="true"></span>{{ data.i18n.customize_columns }}</summary>
44 <div class="wpbc_ui_listing__display_panel">
45 <button type="button" class="wpbc_ui_listing__display_close" aria-label="{{ data.i18n.close_columns }}" data-wpbc-ui-catalog-display-close><span class="wpbc-bi-x-lg" aria-hidden="true"></span></button>
46 <fieldset><legend>{{ data.i18n.columns_legend }}</legend><div class="wpbc_ui_listing__display_field_list" data-wpbc-ui-catalog-column-list>
47 <# _.each( data.initial_request.column_order, function ( column_id, column_index ) { var column = data.columns.definitions[ column_id ]; if ( ! column ) { return; } var is_visible = -1 !== data.initial_request.visible_columns.indexOf( column_id ); #>
48 <div class="wpbc_ui_listing__display_field_item<# if ( column.reorderable ) { #> is-reorderable<# } else { #> is-fixed<# } #>" data-wpbc-ui-catalog-column-item="{{ column_id }}" data-wpbc-ui-catalog-column-default-index="{{ column_index }}" data-wpbc-ui-catalog-column-reorderable="{{ column.reorderable ? '1' : '0' }}">
49 <# if ( column.reorderable ) { #><button type="button" class="wpbc_ui_listing__display_drag_handle" aria-label="{{ column.label }}" data-wpbc-ui-catalog-column-drag-handle><span class="wpbc-bi-grip-vertical" aria-hidden="true"></span></button><# } #>
50 <label class="wpbc_ui_listing__display_field" for="wpbc_service_column_{{ column_id }}"><input id="wpbc_service_column_{{ column_id }}" type="checkbox" value="{{ column_id }}" data-wpbc-ui-catalog-column-visible<# if ( is_visible ) { #> checked<# } #><# if ( column.required ) { #> disabled<# } #>><span>{{ column.label }}</span><# if ( column.required ) { #><small>{{ data.i18n.always_visible }}</small><# } #></label>
51 </div>
52 <# } ); #>
53 </div><p class="screen-reader-text" aria-live="polite" data-wpbc-ui-catalog-column-status></p></fieldset>
54 <div class="wpbc_ui_listing__display_actions"><button type="button" class="button-link" data-wpbc-ui-catalog-column-order-reset>{{ data.i18n.reset_order }}</button><button type="button" class="button-link" data-wpbc-ui-catalog-preferences-reset>{{ data.i18n.reset_preferences }}</button></div>
55 </div>
56 </details>
57 </div>
58 <div class="wpbc_appointment_services__catalog_content" data-wpbc-catalog-content aria-live="polite" aria-busy="true">
59 <div class="wpbc_appointment_services__loading is-visible" data-wpbc-ui-catalog-loading role="status">
60 <div class="wpbc_spins_loading_container"><div class="wpbc_booking_form_spin_loader" aria-hidden="true"><div class="wpbc_spins_loader_wrapper"><div class="wpbc_one_spin_loader_mini2"></div></div></div><span>{{ data.i18n.loading }}</span></div>
61 </div>
62 <div data-wpbc-ui-catalog-response></div>
63 </div>
64 </div>
65 </div>
66 </script>
67