PluginProbe
WP Directory Kit / 1.2.7
WP Directory Kit v1.2.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 1.4.0 1.4.1 All 35 releases
wpdirectorykit / elementor-elements / views / wdk-search.php

wdk-search.php in WP Directory Kit 1.2.7, at elementor-elements/views/wdk-search.php

208 lines 10.0 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 Element Listings Search Form.
4 * This is the template that elementor element, fields, search form
5 *
6 */
7
8 if ( ! defined( 'ABSPATH' ) ) {
9 exit; // Exit if accessed directly.
10 }
11
12 ?>
13
14 <?php
15 global $wdk_button_search_defined;
16 $wdk_button_search_defined=false;
17
18 global $wdk_enable_search_fields_toggle;
19 $wdk_enable_search_fields_toggle = true;
20
21 global $wdk_text_search_button;
22 $wdk_text_search_button = esc_html(wmvc_show_data('text_search_button', $settings));
23
24 global $wdk_text_more_button;
25 $wdk_text_more_button = esc_html(wmvc_show_data('text_more_button', $settings));
26
27 $current_url = '';
28
29 $results_page = wmvc_show_data('conf_link', $settings);
30 if(!is_array($results_page) && !empty($results_page)) {
31 $results_page = get_permalink($results_page);
32 } else {
33 $results_page = get_permalink(wdk_get_option('wdk_results_page'));
34
35 if (!wdk_get_option('wdk_is_results_page_require')) {
36 $obj_id = get_queried_object_id();
37 $current_url = get_permalink( $obj_id );
38 }
39 }
40
41 $form_opened = '';
42 if(isset($_GET['wdk_search_additional_opened']) && wmvc_xss_clean($_GET['wdk_search_additional_opened']) == 1) {
43 $form_opened = 'open-form';
44 }
45
46 ?>
47
48 <div class="wdk-element" id="wdk_el_<?php echo esc_html($id_element);?>">
49 <div class="wdk-search layout_<?php echo esc_attr(wmvc_show_data('design_layout', $settings));?>">
50 <form data-current-link="<?php echo esc_url($current_url);?>" data-scrollto="<?php echo esc_attr(wmvc_show_data('search_scroll', $settings));?>" class="wdk-search-form wdk-skip-empty <?php echo esc_html($form_opened);?> <?php if(!wdk_get_option('wdk_results_page')):?> wdk-result-page-notdefined <?php endif;?>" action="<?php echo esc_url($results_page);?>">
51
52 <?php
53 $field_id = $tab_field ;
54 $field_values = wdk_field_option ($field_id, 'values_list');
55 $values = array();
56 if(!empty($field_values)){
57 $values = explode(',', $field_values);
58 }
59 $field_value = false;
60 if(isset($_GET['field_'.$field_id])) {
61 $field_value = sanitize_text_field($_GET['field_'.$field_id]);
62 }
63
64 ?>
65 <?php if(!empty( $values )):?>
66 <div class="wdk-search-tabs">
67 <input type="radio" name="field_<?php echo esc_attr($field_id);?>" id="wdk_tab_field_any" value="" <?php if(empty($field_value)):?>checked="checked"<?php endif;?>>
68 <label for="wdk_tab_field_any"><?php echo esc_html__('Any', 'wpdirectorykit');?></label>
69 <?php foreach ($values as $key => $value):?>
70 <?php if(empty($value)) continue;?>
71 <input type="radio" name="field_<?php echo esc_attr($field_id);?>" id="<?php echo esc_html($id_element);?>_wdk_tab_field_<?php echo esc_attr($key);?>" value="<?php echo esc_attr($value);?>" <?php if($field_value == $value):?>checked="checked"<?php endif;?>>
72 <label for="<?php echo esc_html($id_element);?>_wdk_tab_field_<?php echo esc_attr($key);?>"><?php echo esc_html($value);?></label>
73 <?php endforeach;?>
74 </div>
75 <script>
76 jQuery(document).ready(function(){
77 jQuery('.wdk_search_field_<?php echo esc_attr($field_id);?>').remove();
78 });
79 </script>
80 <?php endif;?>
81
82 <?php if(wmvc_user_in_role('administrator')):?>
83 <div class="section-widget-control">
84 <a class="wdk-c-btn wdk-c-edit" href="<?php echo esc_url(admin_url('admin.php?page=wdk_searchform'));?>" title="<?php echo esc_attr_e('Edit search form', 'selio'); ?>" target="_blank"><span class="dashicons dashicons-edit"></span></a>
85 </div>
86 <?php endif;?>
87 <div class="wdk-row">
88 <?php wdk_generate_search_form(1, '', TRUE, $predefields_query); ?>
89 <?php if(!$wdk_button_search_defined): ?>
90 <div class="wdk-col wdk-col-btns">
91 <div class="wdk-field wdk-field-btn">
92 <div class="wdk-field-group wdk-field-group-reset">
93 <button id="wdk-start-primary" type="submit" class="wdk-search-start wdk-search-reset wdk-click-load-animation">&nbsp;&nbsp;<?php echo esc_html(wmvc_show_data('text_search_button', $settings)); ?>&nbsp;<i class="fa fa-spinner fa-spin fa-ajax-indicator" style="display: none;"></i>&nbsp;</button>
94 </div>
95 </div>
96 <div class="wdk-field wdk-field-btn">
97 <div class="wdk-field-group">
98 <button id="wdk-start-primary" type="submit" class="wdk-search-start wdk-click-load-animation">&nbsp;&nbsp;<?php echo esc_html(wmvc_show_data('text_search_button', $settings)); ?>&nbsp;<i class="fa fa-spinner fa-spin fa-ajax-indicator" style="display: none;"></i>&nbsp;</button>
99 <?php if(function_exists('run_wdk_save_search') && wdk_get_option('wdk_save_search_show_on_searchform')):?>
100 <div class="section-widget-control right">
101 <a class="wdk-c-btn wdk-c-edit wdk-save-search-button" href="#" data-url="<?php echo esc_url(admin_url('admin-ajax.php')); ?>" title="<?php echo esc_attr_e('Save Search', 'selio'); ?>" target="_blank">
102 <i class="fas fa-save" aria-hidden="true"></i>
103 <i class="fa fa-spinner fa-spin fa-ajax-indicator"></i>
104 </a>
105 </div>
106 <?php endif;?>
107 </div>
108 </div>
109 </div>
110 <?php else: ?>
111 </div>
112 </div>
113 <?php endif; ?>
114 </div>
115 </form>
116 </div>
117 <script>
118 jQuery(document).ready(function($) {
119 $('#wdk_el_<?php echo esc_html($id_element);?> #wdk-search-additional').on('click', function (e) {
120 e.preventDefault();
121 if ($('#wdk_el_<?php echo esc_html($id_element);?> #wdk-form-additional').length) {
122 var addition = $('#wdk_el_<?php echo esc_html($id_element);?> #wdk-form-additional');
123 var form = $(this).closest('.wdk-search-form ');
124 form.toggleClass('open-form');
125 if (form.hasClass('open-form')) {
126 form.find("[name='wdk_search_additional_opened']").prop('checked', 'checked');
127 addition.slideDown();
128 } else {
129 addition.slideUp();
130 form.find("[name='wdk_search_additional_opened']").prop('checked', false);
131 }
132 }
133 })
134
135 $("form.wdk-result-page-notdefined").on('submit', function() {
136 wdk_log_notify('<?php echo esc_js(__('Results page not found, please configure results page', 'wpdirectorykit')); ?>', 'error');
137 return false;
138 });
139
140 const search_highlight = (elem) =>
141 {
142 if(elem.is('select'))
143 {
144 if(elem.val() == '' || elem.val() == 0 || elem.val() == null)
145 {
146 // remove selector class
147 elem.closest('.select-item').removeClass('sel_class');
148 elem.parent().removeClass('sel_class');
149 elem.removeClass('sel_class');
150 }
151 else
152 {
153 // add selector class
154 elem.closest('.select-item').addClass('sel_class');
155 elem.parent().addClass('sel_class');
156 elem.addClass('sel_class');
157 }
158 }
159 else if(elem.attr('type') == 'text')
160 {
161 if(elem.parent().find('.wdk_dropdown_tree').length > 0) // For treefield
162 {
163 if(elem.val() != '' && elem.val() != 0 && elem.val() != null)
164 {
165 // add selector class
166 elem.closest('.wdk_dropdown_tree_style').find('.wdk_dropdown_tree').addClass('sel_class');
167 elem.parent().find('.btn-group:first-child').addClass('sel_class');
168 }
169 else
170 {
171 // remove selector class
172 elem.closest('.wdk_dropdown_tree_style').find('.wdk_dropdown_tree').removeClass('sel_class');
173 elem.parent().find('.btn-group:first-child').removeClass('sel_class');
174 }
175 }
176 else // For basic input
177 {
178 if(elem.val() != '' && elem.val() != 0 && elem.val() != null)
179 {
180 // add selector class
181 elem.addClass('sel_class');
182 }
183 else
184 {
185 // remove selector class
186 elem.removeClass('sel_class');
187 }
188 }
189 }
190 }
191
192 // On change value, change field style
193 $('#wdk_el_<?php echo esc_html($id_element);?>').find('input, select').each(function(i)
194 {
195 $(this).on('change', function(){search_highlight($(this))});
196 search_highlight($(this));
197 })
198 <?php if($is_edit_mode):?>
199 wdk_select_init();
200
201 if(typeof $.fn.fieldSliderRange == 'function' && typeof $.fn.ionRangeSlider == 'function') {
202 $('.wdk-slider-range-field').fieldSliderRange();
203 }
204 <?php endif;?>
205 });
206 </script>
207 </div>
208