1
0
Fork 0

front-end: added LIKE filter, issue: #1657

This commit is contained in:
hkernbach 2016-02-09 09:42:12 +01:00
parent 0e3ec4fa6a
commit 176bb36b15
2 changed files with 31 additions and 18 deletions

View File

@ -64,20 +64,30 @@
} }
var query = " FILTER", res = '', var query = " FILTER", res = '',
parts = _.map(this.filters, function(f, i) { parts = _.map(this.filters, function(f, i) {
if (f.op === 'LIKE') {
res = " " + f.op + "(x.`" + f.attr + "`, @param";
res += i;
res += ")";
}
else {
if (f.op === 'IN' || f.op === 'NOT IN') { if (f.op === 'IN' || f.op === 'NOT IN') {
res = ' '; res = ' ';
} }
else { else {
res = " x.`"; res = " x.`";
} }
res += f.attr; res += f.attr;
if (f.op === 'IN' || f.op === 'NOT IN') { if (f.op === 'IN' || f.op === 'NOT IN') {
res += " "; res += " ";
} }
else { else {
res += "` "; res += "` ";
} }
res += f.op; res += f.op;
if (f.op === 'IN' || f.op === 'NOT IN') { if (f.op === 'IN' || f.op === 'NOT IN') {
res += " x.@param"; res += " x.@param";
} }
@ -85,6 +95,8 @@
res += " @param"; res += " @param";
} }
res += i; res += i;
}
bindVars["param" + i] = f.val; bindVars["param" + i] = f.val;
return res; return res;
}); });

View File

@ -70,6 +70,7 @@
<option value="&lt;=">&lt;=</option> <option value="&lt;=">&lt;=</option>
<option value="&gt;">&gt;</option> <option value="&gt;">&gt;</option>
<option value="&gt;=">&gt;=</option> <option value="&gt;=">&gt;=</option>
<option value="LIKE">LIKE</option>
<option value="IN">IN</option> <option value="IN">IN</option>
<option value="NOT IN">NOT IN</option> <option value="NOT IN">NOT IN</option>
</select><input id="attribute_value0" type="text" placeholder="Attribute value" class="filterValue"> </select><input id="attribute_value0" type="text" placeholder="Attribute value" class="filterValue">