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_currency_details.php
vikappointments / admin / views / editconfig / tmpl Last commit date
default.php 6 days ago default_currency.php 6 days ago default_currency_details.php 6 days ago default_currency_providers.php 6 days ago default_email.php 6 days ago default_email_attachments.php 6 days ago default_email_mail.php 6 days ago default_email_notifications.php 6 days ago default_email_template.php 6 days ago default_global.php 6 days ago default_global_calendars.php 6 days ago default_global_columns.php 6 days ago default_global_gdpr.php 6 days ago default_global_sync.php 6 days ago default_global_system.php 6 days ago default_global_timezone.php 6 days ago default_global_zip.php 6 days ago default_listings.php 6 days ago default_listings_employees.php 6 days ago default_listings_services.php 6 days ago default_shop.php 6 days ago default_shop_details.php 6 days ago default_shop_invoice.php 6 days ago default_shop_packages.php 6 days ago default_shop_recurrence.php 6 days ago default_shop_reviews.php 6 days ago default_shop_subscriptions.php 6 days ago default_shop_waitlist.php 6 days ago index.html 6 days ago
default_currency_details.php
177 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 "onDisplayViewConfigCurrencyDetails". The event method
23 * receives the view instance as argument.
24 *
25 * @since 1.7
26 */
27 $forms = $this->onDisplayView('CurrencyDetails');
28
29 ?>
30
31 <div class="config-fieldset">
32
33 <div class="config-fieldset-body">
34
35 <!-- CURRENCY SYMBOL - Text -->
36
37 <?php echo $vik->openControl(JText::translate('VAPMANAGECONFIG7')); ?>
38 <input type="text" name="currencysymb" value="<?php echo $params['currencysymb']?>" size="10" onchange="formatSamplePrice();">
39 <?php echo $vik->closeControl(); ?>
40
41
42 <!-- CURRENCY NAME - Text -->
43
44 <?php
45 $help = $vik->createPopover(array(
46 'title' => JText::translate('VAPMANAGECONFIG8'),
47 'content' => JText::translate('VAPMANAGECONFIG8_DESC'),
48 ));
49
50 echo $vik->openControl(JText::translate('VAPMANAGECONFIG8') . $help); ?>
51 <input type="text" name="currencyname" value="<?php echo $params['currencyname']?>" size="10">
52 <?php echo $vik->closeControl(); ?>
53
54
55 <!-- CURRENCY SYMBOL POSITION - Select -->
56 <?php
57 $elements = array(
58 JHtml::fetch('select.option', 1, JText::translate('VAPCONFIGSYMBPOSITION2')),
59 JHtml::fetch('select.option', -1, JText::translate('VAPCONFIGSYMBPOSITION4')),
60 JHtml::fetch('select.option', 2, JText::translate('VAPCONFIGSYMBPOSITION1')),
61 JHtml::fetch('select.option', -2, JText::translate('VAPCONFIGSYMBPOSITION3')),
62 );
63 ?>
64
65 <?php echo $vik->openControl(JText::translate('VAPMANAGECONFIG25')); ?>
66 <select name="currsymbpos" class="medium" onchange="formatSamplePrice();">
67 <?php echo JHtml::fetch('select.options', $elements, 'value', 'text', $params['currsymbpos']); ?>
68 </select>
69 <?php echo $vik->closeControl(); ?>
70
71
72 <!-- CURRENCY DECIMAL SEPARATOR - Text -->
73
74 <?php echo $vik->openControl(JText::translate('VAPMANAGECONFIG103')); ?>
75 <input type="text" name="currdecimalsep" value="<?php echo $params['currdecimalsep']?>" size="10" onchange="formatSamplePrice();">
76 <?php echo $vik->closeControl(); ?>
77
78 <!-- CURRENCY THOUSANDS SEPARATOR - Text -->
79
80 <?php echo $vik->openControl(JText::translate('VAPMANAGECONFIG104')); ?>
81 <input type="text" name="currthousandssep" value="<?php echo $params['currthousandssep']?>" size="10" onchange="formatSamplePrice();">
82 <?php echo $vik->closeControl(); ?>
83
84 <!-- CURRENCY NUMBER OF DECIMALS - Number -->
85
86 <?php echo $vik->openControl(JText::translate('VAPMANAGECONFIG105')); ?>
87 <input type="number" name="currdecimaldig" value="<?php echo $params['currdecimaldig']; ?>" min="0" max="9999" onchange="formatSamplePrice();"/>
88 <?php echo $vik->closeControl(); ?>
89
90 <!-- FINAL RESULT - LABEL -->
91
92 <?php echo $vik->openControl(JText::translate('VAPMANAGECONFIG116')); ?>
93 <span id="currency-sample-price">
94 <?php echo VAPFactory::getCurrency()->format(1234.56); ?>
95 </span>
96 <?php echo $vik->closeControl(); ?>
97
98 <!-- Define role to detect the supported hook -->
99 <!-- {"rule":"customizer","event":"onDisplayViewConfigCurrencyDetails","key":"basic","type":"field"} -->
100
101 <?php
102 /**
103 * Look for any additional fields to be pushed within
104 * the Currency > Currency > Details fieldset.
105 *
106 * @since 1.7
107 */
108 if (isset($forms['basic']))
109 {
110 echo $forms['basic'];
111
112 // unset details form to avoid displaying it twice
113 unset($forms['basic']);
114 }
115 ?>
116
117 </div>
118
119 </div>
120
121 <!-- Define role to detect the supported hook -->
122 <!-- {"rule":"customizer","event":"onDisplayViewConfigCurrencyDetails","type":"fieldset"} -->
123
124 <?php
125 /**
126 * Iterate remaining forms to be displayed as new fieldsets
127 * within the Currency > Currency tab.
128 *
129 * @since 1.7
130 */
131 foreach ($forms as $formTitle => $formHtml)
132 {
133 ?>
134 <div class="config-fieldset">
135
136 <div class="config-fieldset-head">
137 <h3><?php echo JText::translate($formTitle); ?></h3>
138 </div>
139
140 <div class="config-fieldset-body">
141 <?php echo $formHtml; ?>
142 </div>
143
144 </div>
145 <?php
146 }
147 ?>
148
149 <script>
150
151 jQuery(function($) {
152 // get currency instance
153 const currency = VAPCurrency.getInstance();
154
155 // create helper function to format the demo currency
156 const formatSamplePrice = () => {
157
158 // update currency configuration
159 currency.decimals = $('input[name="currdecimalsep"]').val();
160 currency.digits = parseInt($('input[name="currdecimaldig"]').val());
161 currency.position = parseInt($('select[name="currsymbpos"]').val());
162 currency.symbol = $('input[name="currencysymb"]').val();
163 currency.thousands = $('input[name="currthousandssep"]').val();
164
165 $('#currency-sample-price').html(currency.format(1234.56));
166 };
167
168 $('input[name="currencysymb"]')
169 .add('input[name="currdecimalsep"]')
170 .add('input[name="currthousandssep"]')
171 .add('input[name="currdecimaldig"]')
172 .add('select[name="currsymbpos"]')
173 .on('change', formatSamplePrice);
174 });
175
176 </script>
177