PluginProbe
WP Directory Kit / 1.3.4
WP Directory Kit v1.3.4
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 1.4.0 1.4.1 All 35 releases
wpdirectorykit / application / views / search_fields / CATEGORY.php

CATEGORY.php in WP Directory Kit 1.3.4, at application/views/search_fields/CATEGORY.php

175 lines 7.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * The template for Search field CATEGORY.
4 *
5 * This is the template that field layout for search form
6 *
7 */
8
9 if ( ! defined( 'ABSPATH' ) ) {
10 exit; // Exit if accessed directly.
11 }
12 ?>
13 <?php
14 $field_key = 'search_category';
15 $field_attr_id = 'wdk_search_'.wmvc_show_data('idfield', $field_data);
16 $placeholder = wmvc_show_data('field_label', $field_data);
17 $field_value = '';
18 $placeholder = esc_html__($placeholder,'wpdirectorykit');
19
20 $filter_ids = array();
21 if(isset($predefinedfields_query) && !empty($predefinedfields_query[$field_key])) {
22 $field_value = intval($predefinedfields_query[$field_key]);
23 }
24
25 if(isset($_GET['category_root'])) {
26 $predefinedfields_query['custom_category_root'] = sanitize_text_field($_GET['category_root']);
27 }
28
29 if(isset($predefinedfields_query) && !empty($predefinedfields_query['custom_category_root'])) {
30 $custom_field_value = intval($predefinedfields_query['custom_category_root']);
31 global $Winter_MVC_WDK;
32 $Winter_MVC_WDK->load_helper('listing');
33 $Winter_MVC_WDK->model('category_m');
34 $category = $Winter_MVC_WDK->category_m->get($custom_field_value, TRUE);
35
36 /* if root search childs */
37 if($category) {
38 $filter_ids = wdk_category_get_all_childs($custom_field_value);
39 if(!empty($filter_ids)) {
40 if(in_array($field_value, $filter_ids) === FALSE) {
41 $field_value = $custom_field_value;
42 }
43 } else {
44 $filter_ids[] = $custom_field_value;
45 }
46 } else {
47 /* category missing */
48 $custom_field_value = null;
49 }
50 }
51
52 if(isset($_GET[$field_key])) {
53 $field_value = ($_GET[$field_key]);
54 }
55
56 $hide_fields = '';
57 if(wmvc_show_data('search_type_tree_hide', $field_data)) {
58 $hide_fields = wmvc_show_data('search_type_tree_hide', $field_data);
59 }
60 wdk_search_fields_toggle();
61 ?>
62 <?php if(isset($custom_field_value)):?>
63 <input type="hidden" name="search_category[]" value="<?php echo esc_attr($custom_field_value);?>">
64 <?php endif;?>
65 <?php if(wdk_get_option('wdk_multi_categories_search_field_type') == 'wdk_treefield_dropdown'):?>
66 <?php
67 global $Winter_MVC_WDK;
68 $Winter_MVC_WDK->load_helper('listing');
69 $Winter_MVC_WDK->model('category_m');
70
71 $categories = array();
72 if(!empty($field_value)) {
73 $categories[] = $field_value;
74 $category = $Winter_MVC_WDK->category_m->get($field_value, TRUE);
75
76 while(!empty($category->parent_id)) {
77 $category = $Winter_MVC_WDK->category_m->get($category->parent_id, TRUE);
78 $categories[] = $category->idcategory;
79 }
80 krsort($categories);
81 } else {
82 $categories[] = 0;
83 }
84
85 wp_enqueue_style('wdk-treefield-dropdown');
86 wp_enqueue_script('wdk-treefield-dropdown');
87 wp_enqueue_style( 'dashicons' );
88
89
90 $level_max = $Winter_MVC_WDK->category_m->get_max_level();
91
92 $placeholder = [
93 0 => esc_html__('Select Categories','wpdirectorykit'),
94 1 => esc_html__('Select Sub Categories','wpdirectorykit'),
95 2 => esc_html__('Select Sub Categories','wpdirectorykit'),
96 3 => esc_html__('Select Sub Categories','wpdirectorykit'),
97 4 => esc_html__('Select Sub Categories','wpdirectorykit'),
98 5 => esc_html__('Select Sub Categories','wpdirectorykit'),
99 ];
100
101
102 ?>
103
104 <input name="<?php echo esc_attr($field_key); ?>" type="hidden" value="<?php echo esc_attr($field_value); ?>">
105 <?php
106 $level = 0;
107 foreach ($categories as $category) {
108 $current = $Winter_MVC_WDK->category_m->get($category, TRUE);
109
110 $list = $Winter_MVC_WDK->category_m->get_by(array('parent_id = '.$current->parent_id => NULL));
111
112 if(isset($placeholder[$level])) {
113 $values_list = array(''=> $placeholder[$level]);
114 } else {
115 $values_list = array(''=> esc_html__('Select Sub Categories','wpdirectorykit'));
116 }
117
118 foreach ($list as $list_value) {
119 $values_list[$list_value->idcategory] = $list_value->category_title;
120 }
121 ?>
122
123 <div data-level="<?php echo esc_attr($level);?>" data-field="<?php echo esc_attr($field_key); ?>" class="wdk-field wdk-col wdk_treefield_dropdown <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?>
124 wdk_field_id_category">
125 <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label>
126 <div class="wdk-field-group">
127 <?php echo wmvc_select_option('category_'.$level, $values_list, $category, 'class="wdk-control"');?>
128 </div>
129 </div>
130
131 <?php
132 $level++;
133 }
134
135 if($level<$level_max ) {
136 for (; $level<$level_max;) {
137
138 if(isset($placeholder[$level])) {
139 $values_list = array(''=> $placeholder[$level]);
140 } else {
141 $values_list = array(''=> esc_html__('Select Sub Categories','wpdirectorykit'));
142 }
143
144 ?>
145
146 <div data-level="<?php echo esc_attr($level);?>" data-field="<?php echo esc_attr($field_key); ?>" class="wdk-field wdk-col wdk_treefield_dropdown <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?>">
147 <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label>
148 <div class="wdk-field-group">
149 <?php echo wmvc_select_option('category_'.$level, $values_list, NULL, 'class="wdk-control"');?>
150 </div>
151 </div>
152
153 <?php
154 $level++;
155 }
156 }
157 ?>
158 <?php else:?>
159 <div class="wdk-field wdk-col <?php echo esc_attr(wmvc_show_data('field_type', $field_data)); ?> <?php echo esc_attr(wmvc_show_data('class', $field_data)); ?>">
160 <label class="wdk-field-label"><?php echo esc_html(wmvc_show_data('field_label', $field_data)); ?></label>
161 <div class="wdk-field-group">
162 <?php if(wdk_get_option('wdk_multi_categories_search_field_type') == 'select2'):?>
163 <?php echo wdk_treefield_select_ajax ($field_key.'[]', 'category_m', $field_value, 'category_title','idcategory', '', __('All Categories', 'wpdirectorykit'), $filter_ids);?>
164 <?php elseif(wdk_get_option('wdk_multi_categories_search_field_type') == 'wdk_treefield_checkboxes'):?>
165 <?php
166 wp_enqueue_style( 'wdk-treefield-checkboxes');
167 wp_enqueue_script( 'wdk-treefield-checkboxes');
168 ?>
169 <?php echo wdk_treefield_option_checkboxes ('search_category', 'category_m', $field_value, 'category_title', '', __('All Categories', 'wpdirectorykit'), $filter_ids);?>
170 <?php else:?>
171 <?php echo wdk_treefield_option ('search_category', 'category_m', $field_value, 'category_title', '', __('All Categories', 'wpdirectorykit'), $filter_ids, FALSE, '', $hide_fields);?>
172 <?php endif;?>
173 </div>
174 </div>
175 <?php endif;?>