| @@ -13,9 +13,16 @@ | ||
| 13 | 13 | <?php |
| 14 | 14 | |
| 15 | 15 | $field_key = 'field_'.wmvc_show_data('idfield',$field_data); |
| 16 | 16 | $field_attr_id = 'wdk_field_'.wmvc_show_data('idfield', $field_data); |
| 17 | + | |
| 17 | 18 | $placeholder = wmvc_show_data('field_label', $field_data); |
| 19 | +if(!empty(wmvc_show_data('placeholder', $field_data,''))) | |
| 20 | + $placeholder = wmvc_show_data('placeholder', $field_data); | |
| 21 | + | |
| 22 | +// Dynamic field values are registered in the translation catalog separately. | |
| 23 | +// phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText | |
| 24 | +$placeholder = esc_html__($placeholder,'wpdirectorykit'); | |
| 18 | 25 | $field_value = ''; |
| 19 | 26 | |
| 20 | 27 | $query_type = wmvc_show_data('query_type', $field_data, ''); |
| 21 | 28 | |
| @@ -26,11 +33,16 @@ | ||
| 26 | 33 | $field_value = sanitize_text_field($predefinedfields_query[$field_key]); |
| 27 | 34 | } |
| 28 | 35 | |
| 29 | 36 | if(isset($_GET[$field_key])) { |
| 30 | - $field_value = sanitize_text_field($_GET[$field_key]); | |
| 37 | + $field_value = sanitize_text_field(wp_unslash($_GET[$field_key])); | |
| 31 | 38 | } |
| 32 | 39 | |
| 40 | +$suffix = ''; | |
| 41 | +$prefix = ''; | |
| 42 | +$clear_prefix = $prefix = apply_filters( 'wpdirectorykit/listing/field/prefix', wmvc_show_data('prefix',$field_data), wmvc_show_data('idfield', $field_data)); | |
| 43 | +$clear_suffix = $suffix = apply_filters( 'wpdirectorykit/listing/field/suffix',wmvc_show_data('suffix',$field_data), wmvc_show_data('idfield', $field_data)); | |
| 44 | + | |
| 33 | 45 | if($query_type =='min') |
| 34 | 46 | $placeholder = esc_html__('Min','wpdirectorykit').' '.$placeholder; |
| 35 | 47 | |
| 36 | 48 | if($query_type =='max') |
| @@ -36,29 +48,42 @@ | ||
| 36 | 48 | if($query_type =='max') |
| 37 | 49 | $placeholder = esc_html__('Max','wpdirectorykit').' '.$placeholder; |
| 38 | 50 | |
| 39 | 51 | $values = array(); |
| 40 | -if(!empty(wmvc_show_data('values_list', $field_data))){ | |
| 52 | + | |
| 53 | +if(!empty(wmvc_show_data('values_list', $field_data)) && strpos(wmvc_show_data('values_list', $field_data), ',') !== FALSE){ | |
| 41 | 54 | $values = explode(',', wmvc_show_data('values_list', $field_data)); |
| 42 | - $values = array(''=> $placeholder) + array_combine($values, $values); | |
| 55 | + $values = array_combine($values, $values); | |
| 56 | + array_walk($values, function(&$item) use($clear_prefix, $clear_suffix) {$item = $clear_prefix.$item.$clear_suffix;}); | |
| 43 | 57 | } |
| 58 | + | |
| 44 | 59 | wdk_search_fields_toggle(); |
| 45 | 60 | ?> |
| 46 | 61 | |
| 47 | -<div class="wdk-field wdk-col <?php if($query_type == 'min_max'):?>min_max_wdk-field<?php endif;?> <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?>"> | |
| 48 | - <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label> | |
| 62 | +<div class="wdk-field wdk-col wdk_search_<?php echo esc_attr($field_key);?> <?php if($query_type == 'min_max'):?>min_max_wdk-field<?php endif;?> <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?> | |
| 63 | + wdk_field_id_<?php echo esc_attr(wmvc_show_data('idfield',$field_data));?>"> | |
| 64 | + <label class="wdk-field-label"><?php | |
| 65 | + // Dynamic field values are registered in the translation catalog separately. | |
| 66 | + // phpcs:ignore WordPress.WP.I18n.NonSingularStringLiteralText | |
| 67 | + echo esc_html__(wmvc_show_data('field_label', $field_data),'wpdirectorykit'); ?></label> | |
| 49 | 68 | <div class="wdk-field-group"> |
| 50 | 69 | <?php if($query_type == 'min_max'):?> |
| 51 | 70 | <div class="wdk-row min_max_row"> |
| 52 | - <div class="wdk-col-6"> | |
| 53 | - <?php echo wmvc_select_option($field_key.'_min' , array_merge($values, array(''=> esc_html__('Min','wpdirectorykit').' '.$placeholder)), (isset($_GET[$field_key.'_min'])) ? esc_attr($_GET[$field_key.'_min']) : '', 'class="wdk-control"'); ?> | |
| 71 | + <div class="wdk-col wdk-col-6"> | |
| 72 | + <?php | |
| 73 | + // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped, WordPress.WP.I18n.NonSingularStringLiteralText | |
| 74 | + echo wmvc_select_option($field_key.'_min' , (array(''=> __('Min', 'wpdirectorykit').' '.$placeholder) + $values), (isset($_GET[$field_key.'_min'])) ? esc_attr($_GET[$field_key.'_min']) : '', 'class="wdk-control"'); ?> | |
| 54 | 75 | </div> |
| 55 | - <div class="wdk-col-6"> | |
| 56 | - <?php echo wmvc_select_option($field_key.'_max', array_merge($values, array(''=> esc_html__('Max','wpdirectorykit').' '.$placeholder)), (isset($_GET[$field_key.'_max'])) ? esc_attr($_GET[$field_key.'_max']) : '', 'class="wdk-control"'); ?> | |
| 76 | + <div class="wdk-col wdk-col-6"> | |
| 77 | + <?php | |
| 78 | + // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped, WordPress.WP.I18n.NonSingularStringLiteralText | |
| 79 | + echo wmvc_select_option($field_key.'_max', (array(''=> __('Max', 'wpdirectorykit').' '.$placeholder) + $values), (isset($_GET[$field_key.'_max'])) ? esc_attr($_GET[$field_key.'_max']) : '', 'class="wdk-control"'); ?> | |
| 57 | 80 | </div> |
| 58 | 81 | </div> |
| 59 | 82 | <?php else:?> |
| 60 | - <?php echo wmvc_select_option($field_key , $values, $field_value, 'class="wdk-control"'); ?> | |
| 83 | + <?php | |
| 84 | + // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped, WordPress.WP.I18n.NonSingularStringLiteralText | |
| 85 | + echo wmvc_select_option($field_key , (array(''=> $placeholder) + $values), $field_value, 'class="wdk-control"'); ?> | |
| 61 | 86 | <?php endif;?> |
| 62 | 87 | </div> |
| 63 | 88 | </div> |
| 64 | 89 | |