PluginProbe
WP Directory Kit / 1.5.9
WP Directory Kit v1.5.9
1.5.9 1.5.7 1.5.6 1.5.5 1.5.4 1.5.3 trunk 1.1.0 1.1.6 1.1.8 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.8 All 37 releases
← All changes | elementor-elements/views/wdk-listing-fields-section.php +128 -10 1.3.0 → 1.5.9 View file →
@@ -28,22 +28,27 @@
28 28 if(wmvc_show_data('field_type', $field) == "CHECKBOX") {
29 29 if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id) != 1)
30 30 if(wmvc_show_data('hide_onempty_checkbox', $settings)) continue;
31 31 } else {
32 - if((empty(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id)) ||wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id) == '0.00' ) && wmvc_show_data('hide_onempty', $settings))
32 + if((empty(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id, wdk_field_option(wmvc_show_data('idfield', $field),'empty_value'))) ||wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id) == '0.00' ) && wmvc_show_data('hide_onempty', $settings))
33 33 continue;
34 34 }
35 +
35 36 }
36 37 ?>
37 38 <div class="wdk-col
38 39 <?php if(wmvc_show_data('field_group_icon_enable', $settings, false) && wmvc_show_data('icon_id', $field, false)):?> icon_group <?php endif;?>
39 40 <?php if(wmvc_show_data('field_label_hide', $settings, false) == 'none'):?> no_label <?php endif;?>
40 - <?php echo esc_html(wmvc_show_data('field_layout', $settings));?> <?php echo esc_html(wmvc_show_data('field_type', $field));?>
41 + <?php echo esc_html(wmvc_show_data('field_layout', $settings));?> <?php echo esc_html(wmvc_show_data('field_type', $field));?>
42 + <?php if(wmvc_show_data('field_type', $field) == "FILEUPLOAD"):?> wdk-col-full-always <?php endif;?>
41 43 ">
42 - <div class="field-group">
44 + <div class="field-group
45 + <?php if(wmvc_show_data('field_type', $field) == "FILEUPLOAD"):?> d-column <?php endif;?>
46 + fied_<?php echo esc_attr(wmvc_show_data('idfield', $field));?>
47 + ">
43 48 <?php if(wmvc_show_data('field_group_icon_enable', $settings, false) && wmvc_show_data('icon_id', $field, false)):?>
44 49 <span class="field_icon">
45 - <img src="<?php echo esc_url(wdk_image_src($field, 'full',NULL,'icon_id'));?>" alt="<?php echo wmvc_show_data('field_label', $value);?>" class="wdk-icon">
50 + <img src="<?php echo esc_url(wdk_image_src($field, 'full',NULL,'icon_id'));?>" alt="<?php echo esc_attr(wmvc_show_data('field_label', $value));?>" class="wdk-icon">
46 51 </span>
47 52 <?php endif;?>
48 53 <span class="field_label">
49 54 <?php echo esc_html(wmvc_show_data('label_prefix', $settings));?><?php echo esc_html(wmvc_show_data('field_label', $field));?><?php echo esc_html(wmvc_show_data('label_suffix', $settings));?>
@@ -54,8 +59,11 @@
54 59 <?php
55 60 if(!$is_edit_mode && !empty($wdk_listing_id)) {
56 61 $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
57 62
63 + if(empty($field_value) && !empty(wdk_field_option(wmvc_show_data('idfield', $field),'empty_value', false)))
64 + $field_value = wdk_field_option(wmvc_show_data('idfield', $field),'empty_value');
65 +
58 66 if(wmvc_show_data('field_type', $field) == "CHECKBOX") {
59 67 if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id) == 1){
60 68 $field_value = '<span class="field_checkbox_success">'.$this->generate_icon($settings['field_checkbox_icon_success']).'</span>';
61 69 } else {
@@ -64,8 +72,23 @@
64 72 }
65 73 else if($field_value == '') {
66 74 $field_value = '-';
67 75 }
76 + else if(wmvc_show_data('field_type', $field) == "DROPDOWNMULTIPLE") {
77 + if(strpos($field_value, ',') !== FALSE)
78 + {
79 + $translated_value = [];
80 + foreach(explode(',', $field_value) as $value)
81 + {
82 + // Dynamic field values are registered in the translation catalog separately.
83 +// phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText
84 + $translated_value []= esc_html__(trim($value), 'wpdirectorykit');
85 + }
86 +
87 + $field_value = implode(', ', $translated_value);
88 + }
89 +
90 + }
68 91 else if(wmvc_show_data('field_type', $field) == "INPUTBOX") {
69 92 $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
70 93
71 94 if(strpos($field_value, 'vimeo.com') !== FALSE)
@@ -91,16 +114,22 @@
91 114 {
92 115 $field_value = '<video src="'.$field_value.'" controls></video> ';
93 116 }
94 117 elseif(filter_var($field_value , FILTER_VALIDATE_URL) !== FALSE) {
95 - $field_value = '<a href="'.$field_value .'">'.$field_value .'</a>';
118 + $field_value = '<a target="_blank" href="'.$field_value .'">'.$field_value .'</a>';
96 119 }
97 120 elseif(filter_var($field_value , FILTER_VALIDATE_EMAIL) !== FALSE) {
98 121 $field_value = '<a href="mailto:'.$field_value .'">'.$field_value .'</a>';
99 122 }
100 - elseif(wdk_is_phone($field_value)) {
123 + elseif(wdk_field_option (wmvc_show_data('idfield', $field), 'validation') == 'is_phone') {
101 124 $field_value = '<a href="tel:'.wdk_filter_phone($field_value) .'">'.$field_value .'</a>';
102 125 }
126 + elseif(wdk_field_option (wmvc_show_data('idfield', $field), 'validation') == 'is_phone|wdk_viber') {
127 + $field_value = '<a href="viber://chat?number='.wdk_filter_viber_phone($field_value) .'">'.$field_value .'</a>';
128 + }
129 + elseif(wdk_field_option (wmvc_show_data('idfield', $field), 'validation') == 'is_phone|wdk_whatsapp') {
130 + $field_value = '<a target="_blank" href="//wa.me/'.wdk_filter_phone($field_value) .'">'.$field_value .'</a>';
131 + }
103 132 }
104 133 elseif(wmvc_show_data('idfield', $field) == 'category_id') {
105 134 if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id)){
106 135 $this->WMVC->model('category_m');
@@ -115,20 +144,19 @@
115 144 $field_value = wmvc_show_data('location_title', $tree_data);
116 145 }
117 146 }
118 147 elseif(wmvc_show_data('field_type', $field) == 'DATE') {
119 - $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
120 - $field_value = wdk_get_date($field_value );
148 + $field_value = wdk_generate_field_date(wmvc_show_data('idfield', $field), $wdk_listing_id);
121 149 } elseif(wmvc_show_data('field_type', $field) == 'NUMBER') {
122 150
123 151 /* price format implement */
124 152 if(function_exists('run_wdk_currency_conversion') && wdk_currencies_is_price_field(wmvc_show_data('idfield', $field))) {
125 153 /* if currency_conversion and field is price */
126 - $value = strip_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
154 + $value = wp_strip_all_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
127 155 $field_value = esc_html(wdk_number_format_i18n($value));
128 156 } elseif(wdk_field_option(wmvc_show_data('idfield', $field), 'is_price_format')) {
129 157 /* if field enabled is_price_format and field type is number*/
130 - $value = strip_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
158 + $value = wp_strip_all_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
131 159 $field_value = esc_html(wdk_number_format_i18n($value));
132 160 } else {
133 161 /* without number format */
134 162 $field_value = apply_filters( 'wpdirectorykit/listing/field/value', $field_value, wmvc_show_data('idfield', $field));
@@ -133,8 +161,98 @@
133 161 /* without number format */
134 162 $field_value = apply_filters( 'wpdirectorykit/listing/field/value', $field_value, wmvc_show_data('idfield', $field));
135 163 }
136 164
165 + } elseif(
166 + wdk_field_option(wmvc_show_data('idfield', $field), 'field_type') == "FILEUPLOAD"
167 + ) {
168 +
169 + $field_value = wdk_files_data ($field_value, 'full');
170 +
171 + wp_enqueue_style('wdk-field-files');
172 + wp_enqueue_style('blueimp-gallery');
173 + wp_enqueue_script('blueimp-gallery');
174 + wp_enqueue_script('wdk-blueimp-gallery');
175 + ?>
176 +
177 + <div class="wdk-field-files wdk_js_gallery">
178 + <?php if (is_array($field_value) && count($field_value) > 0): ?>
179 + <div class="wdk-row">
180 + <?php foreach ($field_value as $image): ?>
181 + <?php
182 + if ($is_edit_mode) {
183 + $src = $image;
184 + $image = array('src' => $src, 'title' => esc_html__('Image Title', 'wpdirectorykit'));
185 + } else {
186 + $src = $image['src'];
187 + }
188 + ?>
189 + <?php
190 + if (!in_array(wdk_file_extension($image['src']), array('jpg', 'jpeg', 'bmp', 'png', 'webp')))
191 + continue;
192 + ?>
193 +
194 + <div class="wdk-col">
195 + <figure>
196 + <a class="wdk-listing-image-card" href="<?php echo esc_url($image['src']); ?>">
197 + <img src="<?php echo esc_url($src); ?>" class="wdk-listing-image" alt="<?php echo esc_attr(wmvc_show_data('alt', $image, '', TRUE, TRUE)); ?>">
198 + </a>
199 + <?php if (false): ?>
200 + <figcaption>
201 + <a class="skip" href="<?php echo esc_url($image['src']); ?>" target="_blank">
202 + <?php echo esc_html(wmvc_show_data('title', $image, '', TRUE, TRUE)); ?>
203 + </a>
204 + </figcaption>
205 + <?php endif; ?>
206 + </figure>
207 + </div>
208 + <?php endforeach; ?>
209 + </div>
210 + <?php endif; ?>
211 +
212 + <?php if (is_array($field_value) && count($field_value) > 0): ?>
213 + <div class="files-row">
214 + <ul class="files">
215 + <?php foreach ($field_value as $image): ?>
216 + <?php
217 + if ($is_edit_mode) {
218 + $src = $image;
219 + $image = array('src' => $src, 'title' => esc_html__('Image Title', 'wpdirectorykit'));
220 + } else {
221 + $src = $image['src'];
222 + }
223 +
224 + if (in_array(wdk_file_extension($image['src']), array('jpg', 'jpeg', 'bmp', 'png', 'webp')))
225 + continue;
226 +
227 + if (file_exists(WPDIRECTORYKIT_PATH . '/public/img/filetype/' . wdk_file_extension($image['src']) . '.png')) {
228 + $src = WPDIRECTORYKIT_URL . 'public/img/filetype/' . wdk_file_extension($image['src']) . '.png';
229 + } else {
230 + $src = WPDIRECTORYKIT_URL . 'public/img/filetype/_blank.png';
231 + }
232 + ?>
233 +
234 + <li class="list-item">
235 + <a class="file-link" href="<?php echo esc_url($image['src']); ?>" target="_blank" title="<?php echo esc_attr(wmvc_show_data('title', $image, '', TRUE, TRUE)); ?>">
236 + <img src="<?php echo esc_url($src); ?>" class="wdk-listing-file-icon" alt="<?php echo esc_attr(wmvc_show_data('alt', $image, '', TRUE, TRUE)); ?>">
237 + <?php echo esc_html(wmvc_show_data('title', $image, '', TRUE, TRUE)); ?>
238 + </a>
239 + </li>
240 + <?php endforeach; ?>
241 + </ul>
242 + </div>
243 + <?php endif; ?>
244 + </div>
245 +
246 + <?php
247 + $field_value ='';
248 +
249 + } elseif(wmvc_show_data('field_type', $field) == 'TEXTAREA') {
250 + global $wp_embed;
251 + // Dynamic field values are registered in the translation catalog separately.
252 +// phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText
253 + $field_value = wpautop(__($field_value, 'wpdirectorykit' ));
254 + $field_value = html_entity_decode($wp_embed->autoembed($field_value ));
137 255 } else {
138 256 $field_value = apply_filters( 'wpdirectorykit/listing/field/value', $field_value, wmvc_show_data('idfield', $field));
139 257 }
140 258 } else {