summaryrefslogtreecommitdiff
path: root/js/CommonFilters.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/CommonFilters.js')
-rw-r--r--js/CommonFilters.js55
1 files changed, 20 insertions, 35 deletions
diff --git a/js/CommonFilters.js b/js/CommonFilters.js
index 1538a3fb3..53573b365 100644
--- a/js/CommonFilters.js
+++ b/js/CommonFilters.js
@@ -2,24 +2,6 @@
/* global __, ngettext */
define(["dojo/_base/declare"], function (declare) {
Filters = {
- filterDlgCheckRegExp: function(sender) {
- const tooltip = dijit.byId("filterDlg_regExp_tip").domNode;
-
- try {
- sender.domNode.removeClassName("invalid");
- sender.domNode.removeClassName("valid");
-
- new RegExp("/" + sender.value + "/");
-
- sender.domNode.addClassName("valid");
- tooltip.innerText = __("Regular expression, without outer delimiters (i.e. slashes)");
-
- } catch (e) {
- sender.domNode.addClassName("invalid");
-
- tooltip.innerText = e.message;
- }
- },
filterDlgCheckAction: function(sender) {
const action = sender.value;
@@ -143,9 +125,6 @@ define(["dojo/_base/declare"], function (declare) {
if (dijit.byId("filterNewRuleDlg"))
dijit.byId("filterNewRuleDlg").destroyRecursive();
- const query = "backend.php?op=pref-filters&method=newrule&rule=" +
- encodeURIComponent(ruleStr);
-
const rule_dlg = new dijit.Dialog({
id: "filterNewRuleDlg",
title: ruleStr ? __("Edit rule") : __("Add rule"),
@@ -156,7 +135,15 @@ define(["dojo/_base/declare"], function (declare) {
this.hide();
}
},
- href: query
+ content: __('Loading, please wait...'),
+ });
+
+ const tmph = dojo.connect(rule_dlg, "onShow", null, function (e) {
+ dojo.disconnect(tmph);
+
+ xhrPost("backend.php", {op: 'pref-filters', method: 'newrule', rule: ruleStr}, (transport) => {
+ rule_dlg.attr('content', transport.responseText);
+ });
});
rule_dlg.show();
@@ -183,7 +170,7 @@ define(["dojo/_base/declare"], function (declare) {
rule_dlg.show();
},
- editFilterTest: function(query) {
+ editFilterTest: function(params) {
if (dijit.byId("filterTestDlg"))
dijit.byId("filterTestDlg").destroyRecursive();
@@ -195,12 +182,14 @@ define(["dojo/_base/declare"], function (declare) {
results: 0,
limit: 100,
max_offset: 10000,
- getTestResults: function (query, offset) {
- const updquery = query + "&offset=" + offset + "&limit=" + test_dlg.limit;
+ getTestResults: function (params, offset) {
+ params.method = 'testFilterDo';
+ params.offset = offset;
+ params.limit = test_dlg.limit;
console.log("getTestResults:" + offset);
- xhrPost("backend.php", updquery, (transport) => {
+ xhrPost("backend.php", params, (transport) => {
try {
const result = JSON.parse(transport.responseText);
@@ -216,9 +205,7 @@ define(["dojo/_base/declare"], function (declare) {
console.log(offset + " " + test_dlg.max_offset);
for (let i = 0; i < result.length; i++) {
- const tmp = new Element("table");
- tmp.innerHTML = result[i];
- dojo.parser.parse(tmp);
+ const tmp = dojo.create("table", { innerHTML: result[i]});
$("prefFilterTestResultList").innerHTML += tmp.innerHTML;
}
@@ -227,7 +214,7 @@ define(["dojo/_base/declare"], function (declare) {
// get the next batch
window.setTimeout(function () {
- test_dlg.getTestResults(query, offset + test_dlg.limit);
+ test_dlg.getTestResults(params, offset + test_dlg.limit);
}, 0);
} else {
@@ -262,11 +249,11 @@ define(["dojo/_base/declare"], function (declare) {
});
},
- href: query
+ href: "backend.php?op=pref-filters&method=testFilterDlg"
});
dojo.connect(test_dlg, "onLoad", null, function (e) {
- test_dlg.getTestResults(query, 0);
+ test_dlg.getTestResults(params, 0);
});
test_dlg.show();
@@ -296,9 +283,7 @@ define(["dojo/_base/declare"], function (declare) {
title: __("Create Filter"),
style: "width: 600px",
test: function () {
- const query = "backend.php?" + dojo.formToQuery("filter_new_form") + "&savemode=test";
-
- Filters.editFilterTest(query);
+ Filters.editFilterTest(dojo.formToObject("filter_new_form"));
},
selectRules: function (select) {
Lists.select("filterDlg_Matches", select);