whistle 2.9.19 → 2.9.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitattributes +1 -0
- package/bin/use.js +3 -1
- package/biz/webui/cgi-bin/rules/add.js +11 -3
- package/biz/webui/cgi-bin/rules/move-to.js +1 -1
- package/biz/webui/cgi-bin/rules/project.js +23 -6
- package/biz/webui/cgi-bin/values/add.js +10 -1
- package/biz/webui/cgi-bin/values/move-to.js +1 -1
- package/biz/webui/htdocs/index.html +1 -1
- package/biz/webui/htdocs/js/index.js +23 -23
- package/lib/index.js +1 -0
- package/lib/plugins/index.js +6 -13
- package/lib/rules/index.js +19 -20
- package/lib/rules/rules.js +35 -19
- package/lib/rules/storage.js +75 -5
- package/lib/rules/util.js +70 -32
- package/lib/util/common.js +4 -0
- package/lib/util/http-mgr.js +77 -45
- package/lib/util/index.js +41 -16
- package/package.json +1 -1
- package/CHANGELOG.md +0 -2191
package/.gitattributes
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
biz/webui/htdocs/js/index.js diff=nodiff
|
package/bin/use.js
CHANGED
|
@@ -145,10 +145,12 @@ module.exports = function(filepath, storage, force) {
|
|
|
145
145
|
error('The rules cannot be empty and the size cannot exceed 256k.');
|
|
146
146
|
return;
|
|
147
147
|
}
|
|
148
|
+
var groupName = getString(result.groupName) || getString(result.group);
|
|
148
149
|
var setRules = function() {
|
|
149
150
|
var body = [
|
|
150
151
|
'name=' + encodeURIComponent(name),
|
|
151
|
-
'rules=' + encodeURIComponent(rules)
|
|
152
|
+
'rules=' + encodeURIComponent(rules),
|
|
153
|
+
'groupName=' + encodeURIComponent(groupName.trim())
|
|
152
154
|
].join('&');
|
|
153
155
|
request(body, function() {
|
|
154
156
|
info('Setting whistle (' + (options.host || '127.0.0.1') + ':' + port + ') rules successful.');
|
|
@@ -1,12 +1,20 @@
|
|
|
1
1
|
var rules = require('../../../../lib/rules/util').rules;
|
|
2
2
|
var recycleBin = require('../../../../lib/rules/util').rules.recycleBin;
|
|
3
|
+
var isGroup = require('../../../../lib/util/common').isGroup;
|
|
3
4
|
|
|
4
5
|
module.exports = function(req, res) {
|
|
5
6
|
var body = req.body;
|
|
6
7
|
var list;
|
|
7
|
-
rules.
|
|
8
|
-
if (body.
|
|
9
|
-
|
|
8
|
+
var exists = rules.exists(body.name);
|
|
9
|
+
if (rules.add(body.name, body.value, body.clientId) != null && !isGroup(body.name)) {
|
|
10
|
+
if (body.groupName) {
|
|
11
|
+
rules.moveToGroup(body.name, body.groupName, body.addToTop);
|
|
12
|
+
} else if (body.addToTop) {
|
|
13
|
+
rules.moveToTop(body.name, body.clientId);
|
|
14
|
+
} else if (!exists) {
|
|
15
|
+
var group = rules.getFirstGroup();
|
|
16
|
+
group && rules.moveTo(body.name, group.name, body.clientId);
|
|
17
|
+
}
|
|
10
18
|
}
|
|
11
19
|
if (req.body.recycleFilename) {
|
|
12
20
|
recycleBin.remove(req.body.recycleFilename);
|
|
@@ -2,6 +2,6 @@ var rules = require('../../../../lib/rules/util').rules;
|
|
|
2
2
|
|
|
3
3
|
module.exports = function(req, res) {
|
|
4
4
|
var body = req.body;
|
|
5
|
-
var result = rules.moveTo(body.from, body.to, body.clientId);
|
|
5
|
+
var result = rules.moveTo(body.from, body.to, body.clientId, body.group === 'true', body.toTop === 'true');
|
|
6
6
|
res.json({ec: result ? 0 : 2, em: 'success'});
|
|
7
7
|
};
|
|
@@ -1,20 +1,37 @@
|
|
|
1
1
|
var rules = require('../../../../lib/rules/util').rules;
|
|
2
2
|
|
|
3
|
+
var DEFAULT_GROUP = '\rothers';
|
|
4
|
+
|
|
3
5
|
module.exports = function(req, res) {
|
|
4
6
|
var body = req.body;
|
|
5
|
-
var name = body.name;
|
|
7
|
+
var name = typeof body.name === 'string' ? body.name.trim() : null;
|
|
8
|
+
if (!name) {
|
|
9
|
+
return res.json({ ec: 0 });
|
|
10
|
+
}
|
|
6
11
|
var rulesText = body.rules || body.value;
|
|
7
12
|
if (!rulesText || !name || typeof rulesText !== 'string') {
|
|
8
13
|
if (body.enable == 1) {
|
|
9
14
|
rules.select(name);
|
|
10
15
|
}
|
|
11
|
-
|
|
16
|
+
return res.json({ ec: 0, rules: !!rules.get(name) });
|
|
17
|
+
}
|
|
18
|
+
if (rules.add(name, rulesText) != null) {
|
|
19
|
+
var groupName = typeof body.groupName === 'string' ? body.groupName.trim() : '';
|
|
20
|
+
rules.select(name);
|
|
21
|
+
if (groupName) {
|
|
22
|
+
groupName = '\r' + groupName;
|
|
23
|
+
var group = rules.getFirstGroup();
|
|
24
|
+
if (rules.add(groupName) != null) {
|
|
25
|
+
if (!group && groupName !== DEFAULT_GROUP) {
|
|
26
|
+
rules.add(DEFAULT_GROUP);
|
|
27
|
+
rules.moveToTop(DEFAULT_GROUP);
|
|
28
|
+
}
|
|
29
|
+
rules.moveToGroup(name, groupName, true);
|
|
30
|
+
rules.moveGroupToTop(groupName);
|
|
31
|
+
}
|
|
32
|
+
} else {
|
|
12
33
|
rules.moveToTop(name);
|
|
13
34
|
}
|
|
14
|
-
return res.json({ ec: 0, rules: !!rules.get(name) });
|
|
15
35
|
}
|
|
16
|
-
rules.add(name, rulesText);
|
|
17
|
-
rules.select(name);
|
|
18
|
-
rules.moveToTop(name);
|
|
19
36
|
res.json({ ec: 0 });
|
|
20
37
|
};
|
|
@@ -1,10 +1,19 @@
|
|
|
1
1
|
var values = require('../../../../lib/rules/util').values;
|
|
2
2
|
var recycleBin = require('../../../../lib/rules/util').values.recycleBin;
|
|
3
|
+
var isGroup = require('../../../../lib/util/common').isGroup;
|
|
3
4
|
|
|
4
5
|
module.exports = function(req, res) {
|
|
5
6
|
var body = req.body;
|
|
6
7
|
var list;
|
|
7
|
-
values.
|
|
8
|
+
var exists = values.exists(body.name);
|
|
9
|
+
if (values.add(body.name, body.value, body.clientId) != null && !isGroup(body.name)) {
|
|
10
|
+
if (body.groupName) {
|
|
11
|
+
values.moveToGroup(body.name, body.groupName);
|
|
12
|
+
} else if (!exists) {
|
|
13
|
+
var group = values.getFirstGroup();
|
|
14
|
+
group && values.moveTo(body.name, group.name, body.clientId);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
8
17
|
if (req.body.recycleFilename) {
|
|
9
18
|
recycleBin.remove(req.body.recycleFilename);
|
|
10
19
|
list = recycleBin.list();
|
|
@@ -2,6 +2,6 @@ var values = require('../../../../lib/rules/util').values;
|
|
|
2
2
|
|
|
3
3
|
module.exports = function(req, res) {
|
|
4
4
|
var body = req.body;
|
|
5
|
-
var result = values.moveTo(body.from, body.to, body.clientId);
|
|
5
|
+
var result = values.moveTo(body.from, body.to, body.clientId, body.group === 'true');
|
|
6
6
|
res.json({ec: result ? 0 : 2, em: 'success'});
|
|
7
7
|
};
|