PluginProbe ʕ •ᴥ•ʔ
VikAppointments Services Booking Calendar / 1.2.21
VikAppointments Services Booking Calendar v1.2.21
1.2.21 1.2.20 trunk 1.2.17 1.2.18 1.2.19
vikappointments / admin / views / editconfig / tmpl / default_shop_packages.php
vikappointments / admin / views / editconfig / tmpl Last commit date
default.php 4 days ago default_currency.php 4 days ago default_currency_details.php 4 days ago default_currency_providers.php 4 days ago default_email.php 4 days ago default_email_attachments.php 4 days ago default_email_mail.php 4 days ago default_email_notifications.php 4 days ago default_email_template.php 4 days ago default_global.php 4 days ago default_global_calendars.php 4 days ago default_global_columns.php 4 days ago default_global_gdpr.php 4 days ago default_global_sync.php 4 days ago default_global_system.php 4 days ago default_global_timezone.php 4 days ago default_global_zip.php 4 days ago default_listings.php 4 days ago default_listings_employees.php 4 days ago default_listings_services.php 4 days ago default_shop.php 4 days ago default_shop_details.php 4 days ago default_shop_invoice.php 4 days ago default_shop_packages.php 4 days ago default_shop_recurrence.php 4 days ago default_shop_reviews.php 4 days ago default_shop_subscriptions.php 4 days ago default_shop_waitlist.php 4 days ago index.html 4 days ago
default_shop_packages.php
217 lines
1 <?php
2 /**
3 * @package VikAppointments
4 * @subpackage core
5 * @author E4J s.r.l.
6 * @copyright Copyright (C) 2021 E4J s.r.l. All Rights Reserved.
7 * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
8 * @link https://vikwp.com
9 */
10
11 // No direct access
12 defined('ABSPATH') or die('No script kiddies please!');
13
14 $params = $this->params;
15
16 $vik = VAPApplication::getInstance();
17
18 /**
19 * Trigger event to display custom HTML.
20 * In case it is needed to include any additional fields,
21 * it is possible to create a plugin and attach it to an event
22 * called "onDisplayViewConfigShopPackages". The event method
23 * receives the view instance as argument.
24 *
25 * @since 1.7
26 */
27 $forms = $this->onDisplayView('ShopPackages');
28
29 ?>
30
31 <div class="config-fieldset">
32
33 <div class="config-fieldset-body">
34
35 <!-- ENABLE PACKAGES - Checkbox -->
36
37 <?php
38 $yes = $vik->initRadioElement('', '', $params['enablepackages'] == "1", 'onClick="packagesValueChanged(1);"');
39 $no = $vik->initRadioElement('', '', $params['enablepackages'] == "0", 'onClick="packagesValueChanged(0);"');
40
41 $help = $vik->createPopover(array(
42 'title' => JText::translate('VAPMANAGECONFIG109'),
43 'content' => JText::translate('VAPMANAGECONFIG109_DESC'),
44 ));
45
46 echo $vik->openControl(JText::translate('VAPMANAGECONFIG109') . $help);
47 echo $vik->radioYesNo('enablepackages', $yes, $no);
48 echo $vik->closeControl();
49 ?>
50
51 <!-- PACKAGES PER ROW - Dropdown -->
52
53 <?php
54 $control = array();
55 $control['style'] = $params['enablepackages'] == 0 ? 'display:none;' : '';
56
57 $options = array();
58
59 for ($i = 1; $i <= 6; $i++)
60 {
61 $options[] = JHtml::fetch('select.option', $i, $i);
62 }
63
64 $help = $vik->createPopover(array(
65 'title' => JText::translate('VAPMANAGECONFIG106'),
66 'content' => JText::translate('VAPMANAGECONFIG106_DESC'),
67 ));
68
69 echo $vik->openControl(JText::translate('VAPMANAGECONFIG106') . $help, 'vappackagesrow', $control); ?>
70 <select name="packsperrow" class="short">
71 <?php echo JHtml::fetch('select.options', $options, 'value', 'text', $params['packsperrow']); ?>
72 </select>
73 <?php echo $vik->closeControl(); ?>
74
75 <!-- MAX PACKAGES IN CART - Number -->
76
77 <?php
78 $options = array(
79 JHtml::fetch('select.option', 1, 'VAPMANAGECONFIG47'),
80 JHtml::fetch('select.option', 2, 'VAPMANAGECONFIG97'),
81 );
82
83 echo $vik->openControl(JText::translate('VAPMANAGECONFIG107'), 'vappackagesrow', $control); ?>
84 <div class="inline-fields">
85 <select class="small-medium" id="vap-maxpackscart-sel" >
86 <?php echo JHtml::fetch('select.options', $options, 'value', 'text', $params['maxpackscart'] == -1 ? 1 : 2, true); ?>
87 </select>
88
89 <input type="number" name="maxpackscart" value="<?php echo $params['maxpackscart']; ?>" size="20" min="1" max="99999999" id="vapmaxpackscart" style="<?php echo ($params['maxpackscart'] == "-1" ? 'display: none;' : ''); ?>" />
90 </div>
91 <?php echo $vik->closeControl(); ?>
92
93 <!-- ALLOW USER REGISTRATION - Checkbox -->
94
95 <?php
96 $yes = $vik->initRadioElement('', '', $params['packsreguser'] == 1);
97 $no = $vik->initRadioElement('', '', $params['packsreguser'] == 0);
98
99 echo $vik->openControl(JText::translate('VAPMANAGECONFIG108'), 'vappackagesrow', $control);
100 echo $vik->radioYesNo('packsreguser', $yes, $no);
101 echo $vik->closeControl();
102 ?>
103
104 <!-- MANDATORY PACKAGES - Checkbox -->
105
106 <?php
107 $yes = $vik->initRadioElement('', '', $params['packsmandatory'] == 1);
108 $no = $vik->initRadioElement('', '', $params['packsmandatory'] == 0);
109
110 $help = $vik->createPopover(array(
111 'title' => JText::translate('VAPMANAGECONFIG121'),
112 'content' => JText::translate('VAPMANAGECONFIG121_DESC'),
113 ));
114
115 echo $vik->openControl(JText::translate('VAPMANAGECONFIG121') . $help, 'vappackagesrow', $control);
116 echo $vik->radioYesNo('packsmandatory', $yes, $no);
117 echo $vik->closeControl();
118 ?>
119
120 <!-- PACKAGES EMAIL TEMPLATE -->
121
122 <?php
123 $templates = JHtml::fetch('vaphtml.admin.mailtemplates');
124
125 echo $vik->openControl(JText::translate('VAPMANAGECONFIG102'), 'vappackagesrow', $control); ?>
126 <div class="inline-fields">
127 <select name="packmailtmpl" class="medium-large" id="vap-packemailtmpl-sel">
128 <?php echo JHtml::fetch('select.options', $templates, 'value', 'text', $params['packmailtmpl']); ?>
129 </select>
130
131 <div class="btn-group flex-auto">
132 <button type="button" class="btn" onclick="vapOpenMailTemplateModal('packmailtmpl', null, true); return false;">
133 <i class="fas fa-pen"></i>
134 </button>
135
136 <button type="button" class="btn" onclick="goToMailPreview('packmailtmpl', 'package');">
137 <i class="fas fa-eye"></i>
138 </button>
139 </div>
140 </div>
141 <?php echo $vik->closeControl(); ?>
142
143 <!-- Define role to detect the supported hook -->
144 <!-- {"rule":"customizer","event":"onDisplayViewConfigShopPackages","key":"basic","type":"field"} -->
145
146 <?php
147 /**
148 * Look for any additional fields to be pushed within
149 * the Shop > Packages > Details fieldset.
150 *
151 * @since 1.7
152 */
153 if (isset($forms['basic']))
154 {
155 echo $forms['basic'];
156
157 // unset details form to avoid displaying it twice
158 unset($forms['basic']);
159 }
160 ?>
161
162 </div>
163
164 </div>
165
166 <!-- Define role to detect the supported hook -->
167 <!-- {"rule":"customizer","event":"onDisplayViewConfigShopPackages","type":"fieldset"} -->
168
169 <?php
170 /**
171 * Iterate remaining forms to be displayed as new fieldsets
172 * within the Shop > Packages tab.
173 *
174 * @since 1.7
175 */
176 foreach ($forms as $formTitle => $formHtml)
177 {
178 ?>
179 <div class="config-fieldset">
180
181 <div class="config-fieldset-head">
182 <h3><?php echo JText::translate($formTitle); ?></h3>
183 </div>
184
185 <div class="config-fieldset-body">
186 <?php echo $formHtml; ?>
187 </div>
188
189 </div>
190 <?php
191 }
192 ?>
193
194 <script>
195
196 jQuery(function($) {
197 $('#vap-maxpackscart-sel').on('change', function() {
198 if ($(this).val() == 1) {
199 $('#vapmaxpackscart').val(-1);
200 $('#vapmaxpackscart').hide();
201 } else {
202 $('#vapmaxpackscart').val(1);
203 $('#vapmaxpackscart').show();
204 }
205 });
206 });
207
208 function packagesValueChanged(is) {
209 if (is) {
210 jQuery('.vappackagesrow').show();
211 } else {
212 jQuery('.vappackagesrow').hide();
213 }
214 }
215
216 </script>
217