queryBuilder.js
1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
var table;
var titles;
(function($) {
var $buildForm = $('.build-form');
// get all user meta keys
$.ajax({
type: 'GET',
url: window.ajaxurl,
data: {
action: 'get_meta_keys'
},
success: function(data) {
titles = data;
initQueryBuilder(JSON.parse(data));
},
error: function(jqXHR, error, errorThrown) {
if (jqXHR.status && jqXHR.status == 400) {
//alert(jqXHR.responseText);
} else {
alert("Something went wrong");
}
}
});
function initQueryBuilder(meta_keys) {
var filters = meta_keys;
//console.log(filters);
var rules_basic = {
rules: [{
id: 'givenName',
operator: 'contains',
value: ''
}]
};
$('#builder').queryBuilder({
plugins: [
'sortable',
'filter-description',
'unique-filter',
'bt-tooltip-errors',
'bt-selectpicker',
'bt-checkbox',
'invert',
'not-group'
],
filters: filters,
// rules: rules_basic
});
$('#btn-reset').on('click', function() {
$('#builder').queryBuilder('reset');
$(".json-parsed").empty();
});
$('#btn-set').on('click', function () {
event.preventDefault();
// JSON
var resJson = $('#builder').queryBuilder('getRules');
$(".json-parsed").html(JSON.stringify(resJson, null, 2));
// SQL
var resSql = $('#builder').queryBuilder('getSQL', false);
});
}
})(jQuery);