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 +232 -101 1.2.4 → 1.5.9 View file →
@@ -28,132 +28,263 @@
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 - <?php if(wmvc_show_data('field_group_icon_enable', $settings, false) && wmvc_show_data('icon_id', $field, false)):?>
43 - <span class="field_icon">
44 - <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">
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 + ">
48 + <?php if(wmvc_show_data('field_group_icon_enable', $settings, false) && wmvc_show_data('icon_id', $field, false)):?>
49 + <span class="field_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">
51 + </span>
52 + <?php endif;?>
53 + <span class="field_label">
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));?>
45 55 </span>
46 - <?php endif;?>
47 - <span class="field_label">
48 - <?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));?>
49 - </span>
50 - <span class="field_value">
51 - <span class='prefix'><?php echo esc_html(apply_filters( 'wpdirectorykit/listing/field/prefix',wmvc_show_data('prefix', $field), wmvc_show_data('idfield', $field)));?></span>
52 - <span class='value'>
53 - <?php
54 - if(!$is_edit_mode && !empty($wdk_listing_id)) {
55 - $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
56 - if(wmvc_show_data('field_type', $field) == "CHECKBOX") {
57 - if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id) == 1){
58 - $field_value = '<span class="field_checkbox_success">'.$this->generate_icon($settings['field_checkbox_icon_success']).'</span>';
59 - } else {
60 - $field_value = '<span class="field_checkbox_unsuccess">'.$this->generate_icon($settings['field_checkbox_icon_unsuccess']).'</span>';
56 + <span class="field_value">
57 + <span class='prefix'><?php echo esc_html(apply_filters( 'wpdirectorykit/listing/field/prefix',wmvc_show_data('prefix', $field), wmvc_show_data('idfield', $field)));?></span>
58 + <span class='value'>
59 + <?php
60 + if(!$is_edit_mode && !empty($wdk_listing_id)) {
61 + $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
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 +
66 + if(wmvc_show_data('field_type', $field) == "CHECKBOX") {
67 + if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id) == 1){
68 + $field_value = '<span class="field_checkbox_success">'.$this->generate_icon($settings['field_checkbox_icon_success']).'</span>';
69 + } else {
70 + $field_value = '<span class="field_checkbox_unsuccess">'.$this->generate_icon($settings['field_checkbox_icon_unsuccess']).'</span>';
71 + }
61 72 }
62 - } else if(wmvc_show_data('field_type', $field) == "INPUTBOX") {
63 - $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
73 + else if($field_value == '') {
74 + $field_value = '-';
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 + }
64 86
65 - if(strpos($field_value, 'vimeo.com') !== FALSE)
66 - {
67 - $field_value = wp_oembed_get($field_value, array("width"=>"800", "height"=>"450"));
87 + $field_value = implode(', ', $translated_value);
88 + }
89 +
68 90 }
69 - elseif(strpos($field_value, 'watch?v=') !== FALSE)
70 - {
71 - $embed_code = substr($field_value, strpos($field_value, 'watch?v=')+8);
72 - $field_value = wp_oembed_get('https://www.youtube.com/watch?v='.$embed_code, array("width"=>"800", "height"=>"455"));
91 + else if(wmvc_show_data('field_type', $field) == "INPUTBOX") {
92 + $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
93 +
94 + if(strpos($field_value, 'vimeo.com') !== FALSE)
95 + {
96 + $field_value = wp_oembed_get($field_value, array("width"=>"800", "height"=>"450"));
97 + }
98 + elseif(strpos($field_value, 'watch?v=') !== FALSE)
99 + {
100 + $embed_code = substr($field_value, strpos($field_value, 'watch?v=')+8);
101 + $field_value = wp_oembed_get('https://www.youtube.com/watch?v='.$embed_code, array("width"=>"800", "height"=>"800"));
102 + }
103 + elseif(strpos($field_value, 'youtube.com/shorts/') !== FALSE)
104 + {
105 + $embed_code = substr($field_value, strpos($field_value, 'shorts')+7);
106 + $field_value = wp_oembed_get('https://www.youtube.com/watch?v='.$embed_code,array("width"=>"800", "height"=>"455"));
107 + }
108 + elseif(strpos($field_value, 'youtu.be/') !== FALSE)
109 + {
110 + $embed_code = substr($field_value, strpos($field_value, 'youtu.be/')+9);
111 + $field_value = wp_oembed_get('https://www.youtube.com/watch?v='.$embed_code, array("width"=>"800", "height"=>"455"));
112 + }
113 + elseif(filter_var($field_value, FILTER_VALIDATE_URL) !== FALSE && preg_match('/\.(mp4|flv|wmw|ogv|webm|ogg)$/i', $field_value))
114 + {
115 + $field_value = '<video src="'.$field_value.'" controls></video> ';
116 + }
117 + elseif(filter_var($field_value , FILTER_VALIDATE_URL) !== FALSE) {
118 + $field_value = '<a target="_blank" href="'.$field_value .'">'.$field_value .'</a>';
119 + }
120 + elseif(filter_var($field_value , FILTER_VALIDATE_EMAIL) !== FALSE) {
121 + $field_value = '<a href="mailto:'.$field_value .'">'.$field_value .'</a>';
122 + }
123 + elseif(wdk_field_option (wmvc_show_data('idfield', $field), 'validation') == 'is_phone') {
124 + $field_value = '<a href="tel:'.wdk_filter_phone($field_value) .'">'.$field_value .'</a>';
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 + }
73 132 }
74 - elseif(strpos($field_value, 'youtu.be/') !== FALSE)
75 - {
76 - $embed_code = substr($field_value, strpos($field_value, 'youtu.be/')+9);
77 - $field_value = wp_oembed_get('https://www.youtube.com/watch?v='.$embed_code, array("width"=>"800", "height"=>"455"));
133 + elseif(wmvc_show_data('idfield', $field) == 'category_id') {
134 + if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id)){
135 + $this->WMVC->model('category_m');
136 + $tree_data = $this->WMVC->category_m->get(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id), TRUE);
137 + $field_value = wmvc_show_data('category_title', $tree_data);
138 + }
78 139 }
79 - elseif(filter_var($field_value, FILTER_VALIDATE_URL) !== FALSE && preg_match('/\.(mp4|flv|wmw|ogv|webm|ogg)$/i', $field_value))
80 - {
81 - $field_value = '<video src="'.$field_value.'" controls></video> ';
140 + elseif(wmvc_show_data('idfield', $field) == 'location_id') {
141 + if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id)){
142 + $this->WMVC->model('location_m');
143 + $tree_data = $this->WMVC->location_m->get(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id), TRUE);
144 + $field_value = wmvc_show_data('location_title', $tree_data);
145 + }
82 146 }
83 - elseif(filter_var($field_value , FILTER_VALIDATE_URL) !== FALSE) {
84 - $field_value = '<a href="'.$field_value .'">'.$field_value .'</a>';
85 - }
86 - elseif(filter_var($field_value , FILTER_VALIDATE_EMAIL) !== FALSE) {
87 - $field_value = '<a href="mailto:'.$field_value .'">'.$field_value .'</a>';
88 - }
89 - elseif(wdk_is_phone($field_value)) {
90 - $field_value = '<a href="tel:'.wdk_filter_phone($field_value) .'">'.$field_value .'</a>';
91 - }
92 - }
93 - elseif(wmvc_show_data('idfield', $field) == 'category_id') {
94 - if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id)){
95 - $this->WMVC->model('category_m');
96 - $tree_data = $this->WMVC->category_m->get(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id), TRUE);
97 - $field_value = wmvc_show_data('category_title', $tree_data);
98 - }
99 - }
100 - elseif(wmvc_show_data('idfield', $field) == 'location_id') {
101 - if(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id)){
102 - $this->WMVC->model('location_m');
103 - $tree_data = $this->WMVC->location_m->get(wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id), TRUE);
104 - $field_value = wmvc_show_data('location_title', $tree_data);
105 - }
106 - }
107 - elseif(wmvc_show_data('field_type', $field) == 'DATE') {
108 - $field_value = wdk_field_value (wmvc_show_data('idfield', $field), $wdk_listing_id);
109 - $field_value = wdk_get_date($field_value );
110 - } elseif(wmvc_show_data('field_type', $field) == 'NUMBER') {
147 + elseif(wmvc_show_data('field_type', $field) == 'DATE') {
148 + $field_value = wdk_generate_field_date(wmvc_show_data('idfield', $field), $wdk_listing_id);
149 + } elseif(wmvc_show_data('field_type', $field) == 'NUMBER') {
111 150
112 - /* price format implement */
113 - if(function_exists('run_wdk_currency_conversion') && wdk_currencies_is_price_field(wmvc_show_data('idfield', $field))) {
114 - /* if currency_conversion and field is price */
115 - $value = strip_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
116 - $field_value = esc_html(wdk_number_format_i18n($value));
117 - } elseif(wdk_field_option(wmvc_show_data('idfield', $field), 'is_price_format')) {
118 - /* if field enabled is_price_format and field type is number*/
119 - $value = strip_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
120 - $field_value = esc_html(wdk_number_format_i18n($value));
151 + /* price format implement */
152 + if(function_exists('run_wdk_currency_conversion') && wdk_currencies_is_price_field(wmvc_show_data('idfield', $field))) {
153 + /* if currency_conversion and field is price */
154 + $value = wp_strip_all_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
155 + $field_value = esc_html(wdk_number_format_i18n($value));
156 + } elseif(wdk_field_option(wmvc_show_data('idfield', $field), 'is_price_format')) {
157 + /* if field enabled is_price_format and field type is number*/
158 + $value = wp_strip_all_tags(apply_filters( 'wpdirectorykit/listing/field/value', wdk_filter_decimal($field_value), wmvc_show_data('idfield', $field), FALSE));
159 + $field_value = esc_html(wdk_number_format_i18n($value));
160 + } else {
161 + /* without number format */
162 + $field_value = apply_filters( 'wpdirectorykit/listing/field/value', $field_value, wmvc_show_data('idfield', $field));
163 + }
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 ));
121 255 } else {
122 - /* without number format */
123 256 $field_value = apply_filters( 'wpdirectorykit/listing/field/value', $field_value, wmvc_show_data('idfield', $field));
257 + }
258 + } else {
259 + if(wmvc_show_data('field_type', $field) == "CHECKBOX"){
260 + $field_value = '<span class="field_checkbox_success">'.$this->generate_icon($settings['field_checkbox_icon_success']).'</span>';
261 + } elseif(wmvc_show_data('idfield', $field) == 'post_title') {
262 + $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Title', 'wpdirectorykit');
263 + } elseif(wmvc_show_data('idfield', $field) == 'address') {
264 + $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Address', 'wpdirectorykit');
265 + } elseif(wmvc_show_data('idfield', $field) == 'post_content') {
266 + $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Content', 'wpdirectorykit');
267 + } elseif(wmvc_show_data('idfield', $field) == 'post_title') {
268 + $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Title', 'wpdirectorykit');
124 269 }
270 + else{
271 + $field_value = esc_html__('Example', 'wpdirectorykit') .' '. wdk_field_label(wmvc_show_data('idfield', $field));
272 + }
125 273
126 - } else {
127 - $field_value = apply_filters( 'wpdirectorykit/listing/field/value', $field_value, wmvc_show_data('idfield', $field));
128 - }
129 - } else {
130 - if(wmvc_show_data('field_type', $field) == "CHECKBOX"){
131 - $field_value = '<span class="field_checkbox_success">'.$this->generate_icon($settings['field_checkbox_icon_success']).'</span>';
132 - } elseif(wmvc_show_data('idfield', $field) == 'post_title') {
133 - $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Title', 'wpdirectorykit');
134 - } elseif(wmvc_show_data('idfield', $field) == 'address') {
135 - $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Address', 'wpdirectorykit');
136 - } elseif(wmvc_show_data('idfield', $field) == 'post_content') {
137 - $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Content', 'wpdirectorykit');
138 - } elseif(wmvc_show_data('idfield', $field) == 'post_title') {
139 - $field_value = esc_html__('Example', 'wpdirectorykit') .' '.esc_html__('Title', 'wpdirectorykit');
140 - }
141 - else{
142 - $field_value = esc_html__('Example', 'wpdirectorykit') .' '. wdk_field_label(wmvc_show_data('idfield', $field));
143 - }
274 + if(wmvc_show_data('is_visible_frontend', $field) != 1) {
275 + $field_value .= ' <span class="dashicons dashicons-hidden" style="color:red"></span>';
276 + }
277 +
278 + }
144 279
145 - if(wmvc_show_data('is_visible_frontend', $field) != 1) {
146 - $field_value .= ' <span class="dashicons dashicons-hidden" style="color:red"></span>';
147 - }
148 280
149 - }
150 -
151 - echo wp_kses_post(wdk_filter_decimal($field_value));
152 - ?>
281 + echo wp_kses_post(wdk_filter_decimal($field_value));
282 + ?>
283 + </span>
284 + <span class='suffix'><?php echo esc_html(apply_filters( 'wpdirectorykit/listing/field/suffix',wmvc_show_data('suffix', $field), wmvc_show_data('idfield', $field)));?></span>
153 285 </span>
154 - <span class='suffix'><?php echo esc_html(apply_filters( 'wpdirectorykit/listing/field/suffix',wmvc_show_data('suffix', $field), wmvc_show_data('idfield', $field)));?></span>
155 - </span>
286 + </div>
156 287 </div>
157 288 <?php endforeach;?>
158 289 </div>
159 290