| 185 |
185 |
if (!filterOptions) return;
|
| 186 |
186 |
var operators = operatorByType[filterOptions['type']];
|
| 187 |
187 |
var filterValues = filterOptions['values'];
|
| 188 |
|
var i, select;
|
|
188 |
var select;
|
| 189 |
189 |
|
| 190 |
190 |
var tr = $('<div class="filter">').attr('id', 'tr_'+fieldId).html(
|
| 191 |
191 |
'<div class="field"><input checked="checked" id="cb_'+fieldId+'" name="f[]" value="'+field+'" type="checkbox"><label for="cb_'+fieldId+'"> '+filterOptions['name']+'</label></div>' +
|
| ... | ... | |
| 195 |
195 |
filterTable.append(tr);
|
| 196 |
196 |
|
| 197 |
197 |
select = tr.find('.operator select');
|
| 198 |
|
for (i = 0; i < operators.length; i++) {
|
| 199 |
|
var option = $('<option>').val(operators[i]).text(operatorLabels[operators[i]]);
|
| 200 |
|
if (operators[i] == operator) { option.prop('selected', true); }
|
|
198 |
operators.forEach(function(op) {
|
|
199 |
var option = $('<option>').val(op).text(operatorLabels[op]);
|
|
200 |
if (op == operator) { option.prop('selected', true); }
|
| 201 |
201 |
select.append(option);
|
| 202 |
|
}
|
|
202 |
});
|
| 203 |
203 |
select.change(function(){ toggleOperator(field); });
|
| 204 |
204 |
|
| 205 |
205 |
switch (filterOptions['type']) {
|
| ... | ... | |
| 215 |
215 |
);
|
| 216 |
216 |
select = tr.find('.values select');
|
| 217 |
217 |
if (values.length > 1) { select.attr('multiple', true); }
|
| 218 |
|
for (i = 0; i < filterValues.length; i++) {
|
| 219 |
|
var filterValue = filterValues[i];
|
|
218 |
filterValues.forEach(function(filterValue) {
|
| 220 |
219 |
var option = $('<option>');
|
| 221 |
220 |
if ($.isArray(filterValue)) {
|
| 222 |
221 |
option.val(filterValue[1]).text(filterValue[0]);
|
| ... | ... | |
| 231 |
230 |
if ($.inArray(filterValue, values) > -1) {option.prop('selected', true);}
|
| 232 |
231 |
}
|
| 233 |
232 |
select.append(option);
|
| 234 |
|
}
|
|
233 |
});
|
| 235 |
234 |
break;
|
| 236 |
235 |
case "date":
|
| 237 |
236 |
case "date_past":
|
| ... | ... | |
| 259 |
258 |
);
|
| 260 |
259 |
$('#values_'+fieldId).val(values[0]);
|
| 261 |
260 |
select = tr.find('.values select');
|
| 262 |
|
for (i = 0; i < filterValues.length; i++) {
|
| 263 |
|
var filterValue = filterValues[i];
|
|
261 |
filterValues.forEach(function(filterValue) {
|
| 264 |
262 |
var option = $('<option>');
|
| 265 |
263 |
option.val(filterValue[1]).text(filterValue[0]);
|
| 266 |
264 |
if (values[0] == filterValue[1]) { option.prop('selected', true); }
|
| 267 |
265 |
select.append(option);
|
| 268 |
|
}
|
|
266 |
});
|
| 269 |
267 |
break;
|
| 270 |
268 |
case "integer":
|
| 271 |
269 |
case "float":
|